:root{--ink:#232822;--muted:#747871;--paper:#fafbf8;--line:#dce0d7;--lime:#c5f467;--dark:#222a22;--radius:3px;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.35;cursor:default}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #80ac35;outline-offset:5px}button{color:inherit}img{display:block;width:100%;object-fit:cover}.skip{position:fixed;left:20px;top:-100px;z-index:99;background:white;padding:15px}.skip:focus{top:10px}.header{height:98px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:var(--paper)}.logo{display:flex;align-items:center;font-size:37px;letter-spacing:-2px;font-weight:800}.logo-period{color:#81a642}.mark{display:flex;gap:4px;border:2px solid var(--ink);padding:4px;margin-right:12px;width:37px;height:30px;transform:skewY(-6deg)}.mark i{border-left:2px solid;flex:1}.header nav{display:flex;gap:37px;font-size:14px;font-weight:600}.header nav a{padding:12px 0;border-bottom:1px solid transparent}.header nav a.active{border-color:var(--ink)}.cart-link{display:flex;align-items:center;gap:11px;font-size:14px}.cart-link svg{width:21px}.cart-link span{display:grid;place-items:center;background:#e9ede3;border-radius:50%;width:23px;height:23px;font-size:12px}.hero{height:650px;min-height:570px;position:relative;background:#3a493c;overflow:hidden;margin:0 20px;color:white;background-size:cover;background-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,22,15,.76),rgba(9,20,13,.3) 53%,rgba(9,20,13,.07)),linear-gradient(0deg,rgba(9,20,13,.45),transparent 25%)}.hero-content{position:relative;padding:95px 4.4% 0;max-width:850px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;display:block;margin-bottom:24px}.hero h1{font-size:clamp(42px,5.8vw,83px);letter-spacing:-4px;line-height:1.08;font-weight:500;margin:0 0 28px}.hero h1 em{color:var(--lime);font-style:normal}.hero p{font-size:16px;line-height:1.8;color:#e5e7e1;margin-bottom:32px}.button{border:1px solid var(--ink);padding:19px 24px;display:inline-flex;gap:35px;justify-content:space-between;align-items:center;font-size:14px;font-weight:650;background:transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px);background:#e6ebde}.button.lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button.lime:hover{background:#d4ff86}.button span{font-size:21px;line-height:1}.hero-bottom{position:absolute;bottom:34px;left:4.4%;right:4.4%;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1px}.hero-bottom a{letter-spacing:0}.hero-caption{position:absolute;right:22px;bottom:10px;font-size:12px;color:#e6e9e0}.intro-strip{margin:0 4.5%;padding:38px 0;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:25px;border-bottom:1px solid var(--line);align-items:center}.intro-strip p{margin:0;font-size:21px;line-height:1.5;letter-spacing:-.7px;font-weight:500}.intro-strip strong{font-weight:500;color:var(--muted)}.intro-strip>span{border-left:1px solid var(--line);padding-left:28px;font-size:13px;line-height:1.8}.section{padding:94px 4.5%}.section-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px;gap:24px}.section-top .eyebrow{color:var(--muted);margin-bottom:18px}h2{font-size:clamp(30px,3.3vw,48px);font-weight:500;letter-spacing:-2px;line-height:1.18;margin:0}h3{font-weight:600}.text-link{font-size:14px;border-bottom:1px solid;padding-bottom:7px;white-space:nowrap}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card-image{position:relative;aspect-ratio:1.4;background:#d5ddcf;overflow:hidden}.card-image img{height:100%;transition:transform .5s}.card:hover img{transform:scale(1.035)}.card-tag{position:absolute;top:16px;left:16px;padding:8px 10px;background:var(--paper);font-size:12px;font-weight:600}.card-body{padding:23px 0 0}.card-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.card-heading h3{font-size:24px;margin:0;letter-spacing:-1px}.card-heading>span{font-size:21px}.card-subtitle{font-size:13px;color:var(--muted);margin:7px 0 19px}.specs{display:flex;gap:16px;font-size:12px;padding-bottom:22px;border-bottom:1px solid var(--line)}.card-price{padding-top:19px;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.card-price strong{font-size:21px;font-weight:650}.card-price span{display:block;font-size:12px;color:var(--muted);margin-top:6px}.cost{text-align:right;font-size:13px;line-height:1.8}.cost small{display:block;color:var(--muted);font-size:12px}.muted{color:var(--muted)}.note{font-size:12px;line-height:1.8;color:var(--muted);margin-top:25px;max-width:880px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);padding:15px 23px;background:var(--ink);color:white;font-size:14px;z-index:20;opacity:0;pointer-events:none;transition:.2s;max-width:90vw}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:1700px){body{max-width:1800px;margin:auto}.hero{height:760px}}@media(max-width:900px){.header{height:85px}.header nav{gap:20px}.hero{height:630px}.hero h1{letter-spacing:-2.5px}.intro-strip{grid-template-columns:1fr 1fr;row-gap:25px}.intro-strip>span:nth-child(3){border:0;padding:0}.project-grid{gap:17px}.card-heading h3{font-size:21px}.specs{gap:8px;flex-wrap:wrap}.card-price{display:block}.cost{text-align:left;margin-top:10px}.section{padding-top:70px;padding-bottom:70px}}@media(max-width:600px){.header{padding:17px 5%;height:auto;flex-wrap:wrap;gap:15px}.logo{font-size:30px}.mark{width:30px;height:25px;gap:3px}.header nav{order:3;width:100%;justify-content:space-between;gap:10px}.header nav a{padding:8px 0}.cart-link{font-size:12px}.hero{margin:0 10px;height:620px;background-position:62% center}.hero-content{padding:67px 6% 0}.hero h1{font-size:45px;letter-spacing:-2.5px}.hero .eyebrow{font-size:12px;letter-spacing:1.5px}.hero p{font-size:14px}.hero-bottom{bottom:42px;left:6%;font-size:12px}.hero-bottom>span{max-width:130px;line-height:1.6}.hero-caption{font-size:12px;right:6%;bottom:16px}.intro-strip{padding:28px 0;gap:22px}.intro-strip p{font-size:18px}.intro-strip>span{font-size:12px;padding-left:18px}.section{padding:58px 5%}.section-top{align-items:flex-start;gap:18px}.section-top h2{font-size:32px;letter-spacing:-1.4px}.section-top .text-link{font-size:12px;margin-top:32px}.project-grid{grid-template-columns:1fr}.card{margin-bottom:20px}.card-price{display:flex}.cost{text-align:right;margin-top:0}.eyebrow{font-size:12px;letter-spacing:1.4px}.button{padding:17px 20px}}
.hero{background-image:url(/assets/houses/meadow-lodge/exterior-01-v2.jpg);background-position:center 55%}
.carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:25px}.carousel::-webkit-scrollbar{display:none}.carousel .card{flex:0 0 36%;scroll-snap-align:start}.carousel-footer{display:flex;justify-content:space-between;align-items:center;margin-top:32px;font-size:12px;letter-spacing:1.5px;color:var(--muted)}.carousel-buttons{display:flex;gap:10px}.carousel-buttons button{border:1px solid var(--line);background:transparent;border-radius:50%;width:45px;height:45px;font-size:22px}.carousel-buttons button:not(:disabled):hover{background:var(--lime)}.center{text-align:center;margin-top:20px}.about-band{background:#e9ede4;display:grid;grid-template-columns:repeat(6,1fr);gap:65px 35px}.about-band>div:first-child{grid-column:span 3}.about-copy{grid-column:span 3;max-width:540px;padding-left:30px}.about-copy p{font-size:16px;line-height:1.9;margin:0 0 25px}.benefit{grid-column:span 2;border-top:1px solid #bdc5b4;padding-top:22px}.benefit>span{font-size:12px;letter-spacing:1.2px;color:#68725e}.benefit h3{font-size:23px;letter-spacing:-.8px;margin:24px 0 13px}.benefit p{font-size:14px;line-height:1.85;color:#5f6658;max-width:330px}.spotlight{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:start;padding-top:110px;padding-bottom:110px}.spot-photo{position:relative;align-self:stretch;min-height:650px;overflow:hidden}.spot-photo img{height:100%;position:absolute;object-position:52% center}.photo-credit{position:absolute;bottom:16px;left:16px;font-size:12px;color:white;background:#17221888;padding:8px 12px}.spot-copy>.eyebrow{color:var(--muted)}.spot-copy h2{font-size:39px;letter-spacing:-1.8px;line-height:1.3}.spot-copy>p{font-size:14px;line-height:1.9;color:var(--muted);max-width:470px}.spot-specs{display:flex;gap:40px;padding:23px 0 26px}.spot-specs strong{display:block;font-size:34px;font-weight:500;letter-spacing:-1px}.spot-specs span{display:block;font-size:12px;color:var(--muted);margin-top:5px}.plan{padding:27px 26px 18px;background:#f1f3ec;margin-bottom:27px;color:#45523f}.plan-dim{font-size:12px;letter-spacing:1.3px;margin-bottom:19px}.plan-rooms{border:3px solid #536149;display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-template-rows:100px 70px;background:#fafbf8}.room{border:1px solid #718066;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;text-align:center;padding:6px;min-width:0}.room span{font-size:12px;color:#788270;margin-top:7px}.room.living{grid-row:span 2}.room.bath{font-size:12px}.room.entry{font-size:12px}.plan-terrace{border:1px solid #aebaa5;border-top:0;font-size:12px;text-align:center;padding:14px}.plan>p{font-size:12px;color:#788270;margin:12px 0 0}.spot-copy .button{width:100%}.inspiration{padding-top:0}.inspiration .section-top>p{font-size:14px;line-height:1.8;max-width:300px}.interior{position:relative;height:530px}.interior img{height:100%;object-position:50% 53%}.reviews{background:var(--dark);color:#f8faef;position:relative;overflow:hidden;padding-top:80px;padding-bottom:80px}.reviews .eyebrow{color:var(--lime)}.reviews h2{font-size:44px}.reviews p{font-size:15px;line-height:1.9;color:#c1c8bb;max-width:490px;margin:27px 0}.reviews .text-link{color:var(--lime)}.quote-mark{position:absolute;right:8%;top:15px;font-size:300px;line-height:1;color:#c5f46722;font-family:Georgia,serif}#footer{padding:65px 4.5% 0;background:#f1f3ec}.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1.3fr;gap:40px;padding-bottom:55px}.footer-main .logo{font-size:43px}.footer-main p{font-size:14px;line-height:1.8;color:var(--muted)}.footer-main>div:nth-child(2) a{display:block;font-size:14px;margin-bottom:16px}.footer-main .eyebrow{font-size:12px;margin-top:10px;margin-bottom:23px}.footer-cta{font-size:22px;letter-spacing:-.7px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:25px 0;gap:20px;font-size:12px;color:var(--muted)}.payments{display:flex;align-items:center;gap:14px}.payments>span{font-weight:800;font-size:14px;color:#666e60}.payments>span:first-child{font-style:italic}.payments small{font-size:12px;max-width:95px}.page-top{padding:85px 4.5% 70px;background:#e9ede4}.page-top h1{font-size:clamp(40px,5.8vw,78px);font-weight:500;line-height:1.1;letter-spacing:-3.5px;margin:0 0 30px}.page-top h1 em{font-style:normal;color:#647a4c}.page-top p{font-size:16px;line-height:1.8;color:#646e5c;max-width:850px}.catalog-section{padding-top:50px}.catalog-label{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:30px;font-size:13px}.breadcrumbs{padding:30px 4.5% 0;font-size:12px;color:var(--muted);display:flex;gap:15px}.detail{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;padding-top:30px}.tabs{display:flex;gap:23px;border-bottom:1px solid var(--line);margin-bottom:22px}.tabs button{font-size:12px;background:transparent;border:0;border-bottom:2px solid transparent;padding:14px 0}.tabs [aria-selected=true]{border-color:var(--ink)}.detail-media img{height:520px}.detail-media .plan{margin-top:0;padding:50px 30px}.detail-media .plan-rooms{grid-template-rows:180px 110px}.detail-media .room{font-size:13px}.detail-media .room span{font-size:12px}.detail-info{padding-top:14px}.detail-info h1{font-size:62px;letter-spacing:-3px;font-weight:500;margin:0 0 16px}.detail-info h1 span{color:var(--muted)}.detail-info>p{font-size:14px;color:var(--muted)}.purchase-box{border-top:1px solid var(--line);padding-top:25px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px}.purchase-box>span{font-size:14px}.purchase-box>strong{font-size:30px;font-weight:600}.purchase-box .button{grid-column:span 2;width:100%}.purchase-box small{grid-column:span 2;font-size:12px;color:var(--muted);text-align:center}.build-estimate{margin-top:30px;background:#e9ede4;padding:24px}.build-estimate>span{font-size:12px;display:block}.build-estimate>strong{display:block;font-size:24px;margin:12px 0}.build-estimate p{font-size:12px;line-height:1.8;color:#64705a;margin-bottom:0}.details-accordions{grid-column:span 2;max-width:860px;width:100%}.details-accordions details{border-top:1px solid var(--line);padding:22px 0}.details-accordions details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:16px;font-weight:600}details p{font-size:14px;line-height:1.9;max-width:750px;color:var(--muted)}.related{padding-top:15px}.related .project-grid{grid-template-columns:repeat(2,1fr);max-width:950px}.principles .principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.principle-grid h3{font-size:21px;letter-spacing:-.5px}.principle-grid p,.sources>p,.sources li{font-size:14px;line-height:1.9;color:var(--muted)}.sources{background:#eef1e8}.sources>p{max-width:870px}.sources h3{margin-top:40px}.sources ul{padding-left:20px;max-width:850px}.sources li{margin-bottom:10px}.sources a,.principles .note a{text-decoration:underline;text-underline-offset:3px}.cart-top{padding-bottom:45px}.cart-top h1{margin-bottom:0}.cart-section{padding-top:50px;display:grid;grid-template-columns:1.4fr 1fr;gap:65px;min-height:430px}.cart-item{display:grid;grid-template-columns:155px 1fr auto;gap:25px;align-items:center;border-bottom:1px solid var(--line);padding:0 0 25px;margin-bottom:25px}.cart-item img{height:125px}.cart-item h3{margin:0 0 10px;font-size:21px}.cart-item p{font-size:12px;color:var(--muted)}.cart-item>strong{font-size:20px}.remove{background:none;border:0;padding:5px 0;color:var(--muted);font-size:12px;text-decoration:underline}.order-summary{background:#e9ede4;padding:30px;height:max-content}.order-summary>div:first-of-type{display:flex;align-items:center;justify-content:space-between;font-size:16px}.order-summary>div>strong{font-size:24px}.order-summary>p{font-size:12px;line-height:1.8;color:var(--muted)}.order-summary .button{width:100%;margin:17px 0 5px;gap:12px}.checkout-message{border-top:1px solid #bac4b0;padding-top:20px;margin-top:22px}.checkout-message>strong{font-size:16px!important}.checkout-message p{font-size:13px;line-height:1.8}.empty{grid-column:1/-1;padding:25px 0 60px}.empty p{color:var(--muted);font-size:15px;line-height:1.8;margin:25px 0 30px}[hidden]{display:none!important}
@media(max-width:1000px){.about-band{gap:40px 25px}.about-band h2{font-size:35px}.about-copy{padding-left:0}.spotlight{gap:35px}.spot-copy h2{font-size:30px}.spot-photo{min-height:650px}.spot-specs{gap:25px}.plan{padding:20px 15px}.footer-main .eyebrow{line-height:1.8}.detail{gap:30px}.detail-info h1{font-size:48px}.detail-media img{height:450px}.cart-section{gap:30px}.cart-item{grid-template-columns:100px 1fr auto;gap:15px}.cart-item img{height:95px}.payments{flex-wrap:wrap;gap:8px}.principles .principle-grid{gap:20px}}
@media(max-width:700px){.carousel .card{flex-basis:78%}.about-band{grid-template-columns:1fr;gap:30px}.about-band>div{grid-column:1!important}.benefit p{max-width:none}.benefit h3{margin-top:18px}.spotlight{grid-template-columns:1fr;padding-top:65px;padding-bottom:55px;gap:32px}.spot-photo{min-height:380px}.spot-copy h2{font-size:34px}.spot-specs{gap:40px}.plan-rooms{grid-template-rows:105px 70px}.inspiration .section-top{display:block}.inspiration .section-top>p{margin-top:22px}.interior{height:350px}.reviews h2{font-size:35px}.quote-mark{right:0;top:100px;font-size:200px}.reviews p,.reviews .text-link{position:relative;z-index:1}.footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-main>div:last-child{grid-column:span 2;border-top:1px solid var(--line);padding-top:20px}.footer-bottom{align-items:flex-start;flex-wrap:wrap;font-size:12px}.payments{width:100%;margin-top:8px}.payments small{max-width:none;margin-left:auto}.page-top{padding:55px 5% 45px}.page-top h1{letter-spacing:-2px;font-size:42px}.page-top p{font-size:14px}.detail{grid-template-columns:1fr;gap:28px;padding-top:18px}.detail-media img{height:370px}.detail-info h1{font-size:48px}.details-accordions{grid-column:1}.related .project-grid{grid-template-columns:1fr}.principles .principle-grid{grid-template-columns:1fr;margin-top:25px}.sources h2{font-size:30px}.cart-section{grid-template-columns:1fr;gap:15px}.cart-item{grid-template-columns:90px 1fr auto;gap:15px}.cart-item img{height:100px}.cart-item h3{font-size:18px}.cart-item>strong{font-size:17px}.order-summary{padding:25px}.tabs{gap:18px}.tabs button{font-size:12px}.detail-media .plan{padding:35px 15px}.detail-media .plan-rooms{grid-template-rows:130px 100px}.detail-media .room{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}} 
@media(max-width:760px){.header{padding:17px 5%;height:auto;flex-wrap:wrap;gap:15px}.header nav{order:3;width:100%;justify-content:space-between;gap:10px}.header nav a{padding:8px 0;white-space:nowrap}}@media(max-width:600px){.hero h1{font-size:clamp(32px,9.2vw,45px);letter-spacing:-1.8px}.hero .eyebrow{font-size:12px;line-height:1.6;max-width:260px}.hero-bottom{gap:18px}.hero-bottom a{max-width:145px;line-height:1.6}.hero-caption{left:6%;right:6%;font-size:12px;line-height:1.5;bottom:13px}.hero-bottom{bottom:65px}.hero{min-height:640px}.intro-strip>span{font-size:12px}}
.package-card{margin:7px 0 30px;padding:22px 24px;background:#f2f4ed;color:var(--ink);border:1px solid var(--line);border-left:3px solid #a5c866}
.package-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:17px;border-bottom:1px solid #d7dcd2}
.package-kicker{display:block;color:#68725f;font-size:11px;font-weight:700;letter-spacing:1.4px;margin-bottom:7px}
.package-head h2{font-size:20px;line-height:1.25;letter-spacing:-.6px}
.package-formats{display:flex;gap:7px;flex-shrink:0}
.package-formats span{min-width:59px;padding:8px;border:1px solid #ccd2c5;background:#fafbf8;text-align:center}
.package-formats b{display:block;font-size:12px;letter-spacing:.7px;color:#526047}
.package-formats small{display:block;margin-top:3px;color:#858b81;font-size:10px;white-space:nowrap}
.package-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;list-style:none;margin:17px 0;padding:0}
.package-list li{position:relative;padding-left:17px;font-size:12px;line-height:1.45;color:#555b52}
.package-list li:before{content:'✓';position:absolute;left:0;top:0;color:#7f9c4a;font-weight:800}
.package-meta{display:flex;align-items:center;gap:14px;padding-top:14px;border-top:1px solid #d7dcd2}
.package-meta>span{display:grid;place-items:center;min-width:81px;height:31px;border:1px solid #c5cdc0;border-radius:16px;color:#596452;font-size:10px;font-weight:800;letter-spacing:1px}
.package-meta p{margin:0;color:#777d73;font-size:11px;line-height:1.5}
@media(max-width:1000px){.package-head{display:block}.package-formats{margin-top:16px}.package-formats span{flex:1}.package-list{grid-template-columns:1fr}.package-card{padding:22px}}
@media(max-width:700px){.package-head{display:flex}.package-formats{margin-top:0}.package-list{grid-template-columns:1fr 1fr}}
@media(max-width:450px){.package-head{display:block}.package-formats{margin-top:16px}.package-list{grid-template-columns:1fr}.package-meta{align-items:flex-start;flex-direction:column;gap:9px}}

/* Archive projects and their ordered image galleries. */
.archive-detail{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:40px}
.archive-detail .detail-media,.archive-detail .detail-info{min-width:0}
.archive-detail .detail-info h1{font-size:clamp(34px,4vw,56px);line-height:1.12;overflow-wrap:break-word}
.archive-detail .spot-specs{gap:30px;margin:26px 0}
.archive-detail .archive-description{font-size:14px;line-height:1.85;color:#596152}
.project-features{padding-left:18px;margin:18px 0 28px;font-size:13px;line-height:1.9;color:#596152}
.project-configuration{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.project-configuration span{padding:6px 9px;border:1px solid var(--line);font-size:11px;color:#596152}
.project-specifications{margin:22px 0 5px;max-width:600px;font-size:13px}.project-specifications>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line)}.project-specifications dt{color:var(--muted)}.project-specifications dd{margin:0;text-align:right;font-weight:600}
.package-digital-note{margin:16px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:11px;line-height:1.7;color:var(--muted)}
.archive-card .card-subtitle{min-height:38px;line-height:1.6}
.archive-card .card-tag{font-size:10px;letter-spacing:.65px;max-width:calc(100% - 32px)}
.archive-related .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
.project-gallery{width:100%;min-width:0;outline-offset:5px}
.gallery-stage{position:relative;aspect-ratio:3/2;background:#f0f2ec;border:1px solid var(--line);overflow:hidden}
.gallery-open{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.project-gallery .gallery-stage img{width:100%;height:100%;object-fit:contain}
.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid #dce0d7;border-radius:50%;background:#fafbf8ed;font-size:23px;box-shadow:0 2px 10px #23282212}
.gallery-arrow.previous{left:12px}.gallery-arrow.next{right:12px}
.gallery-arrow:hover,.gallery-expand:hover{background:var(--lime)}
.gallery-expand{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid var(--line);background:#fafbf8ed;font-size:23px;display:grid;place-items:center}
.gallery-counter{position:absolute;bottom:12px;right:12px;padding:6px 10px;background:#fafbf8ed;font-size:12px;font-variant-numeric:tabular-nums;border:1px solid var(--line);pointer-events:none}
.gallery-caption{display:flex;justify-content:space-between;gap:15px;align-items:baseline;margin:14px 0}
.gallery-caption p{font-size:12px;line-height:1.6;margin:0;overflow-wrap:anywhere}
.gallery-caption>span{font-size:10px;color:var(--muted);text-align:right;flex-shrink:0}
.gallery-thumbnails{position:relative;display:flex;gap:8px;overflow-x:auto;max-width:100%;padding:5px 3px 13px;scrollbar-width:thin;scrollbar-color:#a8b39d transparent;overscroll-behavior-x:contain}
.gallery-thumbnails button{flex:0 0 84px;height:60px;padding:3px;border:1px solid var(--line);background:#fff}
.gallery-thumbnails button[aria-current=true]{border:2px solid #65833f;padding:2px;background:#eaf2dd}
.project-gallery .gallery-thumbnails img{height:100%;width:100%;object-fit:contain}
.gallery-dialog{width:96vw;max-width:1600px;height:94dvh;max-height:94dvh;margin:auto;padding:18px 22px;border:1px solid var(--line);background:var(--paper);color:var(--ink)}
.gallery-dialog::backdrop{background:#11180fec;backdrop-filter:blur(3px)}
.gallery-dialog-toolbar{height:42px;display:flex;align-items:center;gap:20px;font-size:12px}
.gallery-dialog-toolbar a{margin-left:auto;text-decoration:underline;text-underline-offset:3px}
.gallery-dialog-toolbar button{padding:9px 13px;border:1px solid var(--line);background:var(--paper)}
.gallery-dialog-stage{position:relative;height:calc(100% - 92px);min-height:0}
.project-gallery .gallery-dialog-stage img{width:100%;height:100%;object-fit:contain}
.gallery-dialog>p{font-size:12px;text-align:center;margin:12px 50px;line-height:1.5}
@media(max-width:1000px){.archive-detail{gap:25px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.gallery-caption>span{display:none}.archive-related .project-grid{gap:18px}.archive-related .card-price{display:block}.archive-related .cost{text-align:left;margin-top:8px}}
@media(max-width:700px){.archive-detail{grid-template-columns:minmax(0,1fr)}.gallery-stage{aspect-ratio:3/2}.gallery-arrow{width:38px;height:38px}.gallery-arrow.previous{left:8px}.gallery-arrow.next{right:8px}.gallery-caption p{font-size:11px}.gallery-thumbnails button{flex-basis:74px;height:54px}.archive-detail .detail-info{padding-top:8px}.archive-detail .spot-specs{gap:38px}.archive-related .project-grid{grid-template-columns:1fr}.archive-related .card-price{display:flex}.archive-related .cost{text-align:right;margin-top:0}.gallery-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:12px 8px}.gallery-dialog-toolbar{gap:8px;font-size:10px}.gallery-dialog-toolbar button{padding:9px}.gallery-dialog-stage{height:calc(100% - 102px)}.gallery-dialog>p{margin:12px 10px;font-size:11px}}

.collection-spotlight .spot-photo{min-height:0;aspect-ratio:3/2;align-self:start;background:#e9ede4}.collection-spotlight .spot-photo img{object-fit:contain}.spot-plan{margin:25px 0;border:1px solid var(--line);background:white}.spot-plan img{height:auto;object-fit:contain}

.gallery-arrow,.carousel-buttons button{display:grid;place-items:center;padding:0;line-height:0;font-size:0}.navigation-arrow-icon{display:block;width:22px;height:22px;flex:none;pointer-events:none}

/* PDF base package with optional editable source files. */
/* Original wide interior layout with automatically changing Terrace House views. */
.interior-slides{overflow:hidden;background:#e9e7df}
.interior-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility .6s ease}
.interior-slide.is-active{opacity:1;visibility:visible}
.interior-slide img{height:100%;width:100%;object-fit:cover}
.interior-playback{position:absolute;right:16px;bottom:16px;padding:8px 12px;border:0;background:#17221888;color:white;font-size:12px;opacity:0;transition:opacity .2s}
.interior-slides:hover .interior-playback,.interior-playback:focus-visible{opacity:1}
@media(hover:none){.interior-playback{opacity:1}}
@media(prefers-reduced-motion:reduce){.interior-slide{transition:none}}
.archive-card .card-price{display:flex;align-items:center;justify-content:space-between;gap:18px}
.card-package-price{min-width:0}
.card-price>.card-plan-link{display:inline-block;flex-shrink:0;margin:0;padding:3px 0;color:var(--muted);font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap;text-underline-offset:4px;transition:color .2s}
.archive-card:hover .card-plan-link,.archive-card>a:focus-visible .card-plan-link{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px}
.archive-card .specs{flex-wrap:wrap;row-gap:8px;align-items:baseline}
.archive-detail .spot-specs,.collection-spotlight .spot-specs{flex-wrap:wrap;row-gap:20px}
.archive-detail .spot-specs span,.collection-spotlight .spot-specs span{max-width:180px;line-height:1.5}
.price-from{font-size:12px;font-weight:500;color:var(--muted)}
.package-includes-heading{display:block;margin:18px 0 0;font-size:11px;color:#68725f;font-weight:650}
.package-card .package-list{margin-top:12px}
.package-formats .format-included,.package-formats .format-selected{background:#e5eed8;border-color:#a4bc80}
.package-options{margin:20px 0 0;padding:0;border:0;min-width:0}
.package-options legend{font-size:15px;font-weight:650;letter-spacing:-.2px;margin-bottom:12px;padding:0}
.package-option{display:flex;align-items:center;gap:12px;min-width:0;padding:15px 12px;margin-top:8px;border:1px solid #d4dbcd;background:#fafbf8;transition:background .15s,border-color .15s}
label.package-option{cursor:pointer}
.package-option:has(input:checked){background:#e8f1dd;border-color:#91ad6a}
.package-option:has(input:focus-visible){outline:3px solid #80ac35;outline-offset:3px}
.package-option input{width:19px;height:19px;margin:0;flex:0 0 19px;accent-color:#637e3d;cursor:pointer}
.included-check{display:grid;place-items:center;width:19px;height:19px;flex:0 0 19px;background:#687f49;color:white;border-radius:2px;font-size:13px}
.package-option-copy{min-width:0;flex:1}
.package-option-copy b{display:block;font-size:13px;font-weight:650;line-height:1.5}
.package-option-copy small{display:block;margin-top:2px;font-size:10px;color:#727a6a;line-height:1.6}
.package-option-price{white-space:nowrap;font-size:15px;font-weight:650;font-variant-numeric:tabular-nums;text-align:right}
.package-option-price small{display:block;font-size:9px;font-weight:500;color:#68725f;margin-top:3px}
.purchase-box [data-package-total]{font-variant-numeric:tabular-nums}
.purchase-box .package-total-breakdown{grid-column:1/-1;margin:-8px 0 0;font-size:12px;color:var(--muted);line-height:1.6}
.cart-item .cart-selected-formats{color:#52643b;font-weight:650;font-size:11px}
.cart-configuration{grid-column:2/-1;width:100%}
.cart-configuration .package-options{margin-top:0}
.cart-configuration .package-options legend{font-size:12px;margin-bottom:5px}
.cart-configuration .package-option{padding:12px 10px}
.cart-configuration .package-option-copy b{font-size:12px}
.cart-configuration .package-option-price{font-size:13px}
@media(max-width:1000px){.package-card .package-option{padding:13px 10px;gap:9px}.cart-configuration{grid-column:1/-1}}
@media(max-width:450px){.package-option-copy b{font-size:12px}.package-option-copy small{font-size:9px}.package-option-price{font-size:14px}.package-card .package-option{gap:9px}.purchase-box{gap:16px}.purchase-box>span{font-size:13px}}

/* Container Plan wordmark and discreet owner entry. */
.header .logo{font-size:30px;letter-spacing:-1.5px;white-space:nowrap}.footer-main .logo{font-size:34px;letter-spacing:-1.5px}.footer-admin,.footer-admin:hover{color:inherit;text-decoration:none;font-weight:inherit}.privacy-copy{max-width:850px;margin:auto;font-size:15px;line-height:1.9}.privacy-copy h2{font-size:27px;margin:35px 0 12px;letter-spacing:-.8px}.privacy-copy button{margin:15px 0}.privacy-status{font-size:13px;color:#647a4c}@media(max-width:600px){.header .logo{font-size:25px}.header .mark{margin-right:8px;width:26px}.footer-main .logo{font-size:31px}}

.delivery-email{display:block;margin-top:24px;font-size:14px;font-weight:600}.delivery-email input{display:block;box-sizing:border-box;width:100%;margin-top:10px;border:1px solid #aab59f;border-radius:4px;padding:14px;background:#fff;font:inherit;font-size:16px}.delivery-email input:focus{outline:2px solid #647a4c;outline-offset:2px}.delivery-email-note a{text-decoration:underline}
