@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=Manrope:wght@300;400;500;600;700&display=swap');
:root{--paper:#edece6;--cream:#f7f6f1;--white:#fff;--ink:#20251f;--forest:#1b261f;--forest2:#28382c;--muted:#6a7068;--line:#cfcfc5;--accent:#ad9a77;--sans:'Manrope','DM Sans',Arial,sans-serif;--display:'DM Sans','Helvetica Neue',Arial,sans-serif;--width:1304px;--margin:clamp(22px,5.2vw,94px);--nav:78px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--cream);color:var(--ink);font:400 14px/1.75 var(--sans);-webkit-font-smoothing:antialiased}body.lock{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;width:100%;height:auto}p{margin:0}h1,h2,h3,h4{font-family:var(--display);font-weight:300;letter-spacing:-.047em;line-height:1.1;margin:0}h1{font-size:clamp(56px,7.75vw,126px)}h2{font-size:clamp(40px,5.1vw,78px)}h3{font-size:clamp(28px,3.15vw,48px)}h4{font-size:clamp(22px,2.3vw,33px)}small,.eyebrow{font-size:10px;line-height:1.4;letter-spacing:.22em;text-transform:uppercase;font-weight:600}.muted{color:var(--muted)}.white{color:#f8f7f2}.container{width:min(calc(100% - var(--margin) - var(--margin)),var(--width));margin:auto}.wide-container{width:min(calc(100% - 64px),1600px);margin:auto}.section{padding:clamp(80px,10vw,150px) 0;position:relative}.section-tight{padding:clamp(58px,7vw,104px) 0}.section-dark{background:var(--forest);color:var(--cream)}.section-beige{background:var(--paper)}.section-label{display:flex;align-items:center;gap:16px;margin-bottom:34px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:700}.section-label:before{content:'';display:block;width:29px;height:1px;background:currentColor;opacity:.5}.section-intro{max-width:690px}.section-intro p{margin-top:25px;color:var(--muted);font-size:15px;line-height:1.9}.section-dark .section-intro p{color:#bcbfb8}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:14px 25px;background:var(--forest);color:#f4f1e9;border:1px solid var(--forest);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:background .2s,color .2s,transform .2s;text-align:center}.btn:hover{background:#3c4b3d;transform:translateY(-1px)}.btn.light{background:#f1eee5;color:#1e2922;border-color:#f1eee5}.btn.light:hover{background:white}.btn.outline{background:transparent;border-color:currentColor;color:inherit}.btn.outline:hover{background:rgba(255,255,255,.08)}.btn.arrow:after,.text-link:after{content:'↗';font-size:18px;line-height:1;font-weight:300;letter-spacing:0}.text-link{display:inline-flex;align-items:center;gap:25px;border-bottom:1px solid currentColor;padding-bottom:10px;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;transition:gap .2s}.text-link:hover{gap:34px}.caption{font-size:11px;line-height:1.7;color:#777f76}.section-dark .caption{color:#b2bab1}.delimit{border-top:1px solid var(--line)}.inline-badge{border:1px solid #bcbeb5;padding:7px 10px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.img-cover{width:100%;height:100%;object-fit:cover}.img-wrap{overflow:hidden;position:relative}.img-wrap img{transition:transform .65s ease}.img-wrap:hover img{transform:scale(1.02)}.img-caption{font-size:10px;color:var(--muted);margin-top:12px;letter-spacing:.035em}.placehold{display:grid;place-items:center;min-height:280px;background:linear-gradient(145deg,#deddd4,#e9e8e1);border:1px solid #d1d1c6;color:#71766c;text-align:center;padding:24px}.placehold strong{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;color:#4b554c}.placehold:before{content:'+';display:block;font-size:34px;font-weight:300;margin-bottom:15px}
/* navigation */
.site-header{height:var(--nav);position:fixed;z-index:1100;inset:0 0 auto;background:rgba(246,245,239,.97);border-bottom:1px solid rgba(20,30,20,.1);transition:background .2s,color .2s;color:#202820}.site-header.overlay:not(.scrolled):not(.menu-open){background:linear-gradient(to bottom,rgba(5,15,9,.35),transparent);color:#fff;border-bottom-color:rgba(255,255,255,.18)}.header-inner{height:100%;width:min(calc(100% - var(--margin) - var(--margin)),1600px);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;flex-direction:column;align-items:flex-start;line-height:1;white-space:nowrap}.brand-main{font-weight:500;letter-spacing:.17em;font-size:20px}.brand-sub{font-size:8px;letter-spacing:.33em;margin-top:7px;opacity:.7}.nav{display:flex;align-items:center;gap:clamp(15px,1.7vw,31px)}.nav a{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;white-space:nowrap;transition:opacity .2s}.nav a:hover{opacity:.56}.nav .nav-cta{border:1px solid currentColor;padding:14px 17px}.mobile-toggle{display:none;border:0;background:transparent;color:inherit;align-items:center;gap:10px;text-transform:uppercase;font-size:10px;letter-spacing:.14em}.burger{position:relative;width:23px;height:15px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.burger:after{content:'';position:absolute;left:0;top:6px;width:23px;border-top:1px solid currentColor}.mobile-menu{display:none}
/* hero */
.hero{position:relative;min-height:700px;height:100svh;max-height:1100px;background:#1c3024;overflow:hidden;color:#fff;display:flex;align-items:end}.hero img.poster,.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero img.poster{z-index:0}.hero-video{z-index:1;opacity:0;transition:opacity 1s}.hero-video.playing{opacity:1}.hero:before{content:'';position:absolute;z-index:2;inset:0;background:linear-gradient(90deg,rgba(8,17,11,.49) 0%,rgba(8,17,11,.18) 60%,rgba(8,17,11,.06) 100%),linear-gradient(0deg,rgba(8,17,11,.65),transparent 60%)}.hero-inner{z-index:3;position:relative;width:100%;padding:190px 0 94px}.hero .eyebrow{color:#e1e6d8;letter-spacing:.25em;margin-bottom:25px}.hero h1{max-width:920px;font-size:clamp(59px,7.5vw,118px);letter-spacing:-.064em}.hero-lead{max-width:570px;margin:25px 0 36px;color:#edece4;font-size:clamp(14px,1.3vw,17px);font-weight:300;line-height:1.8}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-foot{position:absolute;z-index:3;bottom:25px;left:var(--margin);right:var(--margin);display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#dedfd6}.sound-button{background:transparent;color:#fff;border:0;padding:10px 2px;font:inherit;letter-spacing:inherit;text-transform:inherit}.scroll-note{display:flex;align-items:center;gap:12px}.scroll-note:before{content:'';width:44px;height:1px;background:currentColor}
/* overview */
.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,9vw,155px);align-items:center}.intro-grid h2{max-width:710px}.intro-side{font-size:17px;line-height:1.9;font-weight:300;color:#536052;max-width:450px;padding-top:34px}.stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat{padding:31px 20px 31px 0;border-right:1px solid var(--line);margin-right:25px}.stat:last-child{border-right:0}.stat .val{font:300 clamp(34px,4vw,60px)/1 var(--display);letter-spacing:-.04em}.stat .unit{font-size:clamp(17px,1.6vw,25px);color:var(--muted)}.stat .label{font-size:11px;letter-spacing:.03em;margin-top:14px;color:var(--muted)}
/* landscape */
.mosaic{display:grid;grid-template-columns:1.22fr .78fr;gap:18px;margin-top:58px}.mosaic-left{aspect-ratio:1.3}.mosaic-right{display:grid;gap:18px;grid-template-rows:1fr 1fr}.mosaic-right .img-wrap{min-height:0}.landscape-title{max-width:780px}.landscape-text{max-width:550px;margin-left:auto;color:#c0c9bd;line-height:2;font-size:15px;margin-top:38px}
/* land */
.land-grid{display:grid;grid-template-columns:1fr 1.13fr;gap:clamp(50px,8vw,120px);align-items:start}.land-copy{max-width:490px}.land-copy>p{margin:27px 0 36px;color:var(--muted);font-size:15px}.terrain-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.terrain-list li{padding:16px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:15px}.terrain-list strong{font-weight:600}.terrain-list span{color:var(--muted)}.land-visual{position:relative}.land-visual .img-wrap{aspect-ratio:1/1.05;background:#cbc9b9}.switcher{display:flex;gap:20px;margin-bottom:17px}.switcher button{border:0;background:none;padding:0 0 7px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#717d72;border-bottom:1px solid transparent}.switcher button.active{color:var(--ink);border-bottom:1px solid var(--ink)}.land-visual img{height:100%;object-fit:cover}
/* video */
.film-shell{position:relative;aspect-ratio:16/9;background:#233125;overflow:hidden;margin-top:55px}.film-shell img{height:100%;object-fit:cover;filter:brightness(.76)}.film-shell:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(3,13,7,.48),transparent 45%)}.play-video{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:19px;background:none;border:0;color:#fff;width:100%}.play-video .round{height:84px;width:84px;border-radius:50%;border:1px solid rgba(255,255,255,.8);display:grid;place-items:center;font-size:20px;transition:transform .2s,background .2s}.play-video:hover .round{background:rgba(255,255,255,.18);transform:scale(1.06)}.play-video span:last-child{font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:700}.film-shell video,.film-shell iframe{position:absolute;z-index:4;inset:0;height:100%;width:100%;border:0;background:#000}.film-meta{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:15px;color:#b0baad;font-size:11px}
/* house */
.house-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(45px,7vw,115px);align-items:center}.house-copy>p{font-size:15px;color:var(--muted);line-height:2;max-width:470px;margin:28px 0 35px}.house-gallery{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:240px 240px;gap:13px}.house-gallery .first{grid-row:span 2}.house-gallery .img-wrap{height:100%}.status-note{display:inline-flex;align-items:center;gap:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;font-size:12px}.status-note:before{content:'';width:7px;height:7px;border-radius:100%;background:#a3956f}.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.floor-tabs{display:flex;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:39px}.floor-tabs button{border:0;flex:1;background:transparent;padding:16px 10px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;border-bottom:2px solid transparent}.floor-tabs button.active{border-bottom-color:var(--forest);color:var(--forest);font-weight:700}.floor-panel{display:none}.floor-panel.active{display:block}.floor-panel .floor-desc{margin-top:26px;color:var(--muted);font-size:14px;line-height:2}.floor-panel .floor-features{margin-top:25px;display:grid;gap:10px}.floor-panel .floor-features span:before{content:'—';color:var(--accent);margin-right:12px}.plans-image{background:#eceae5;padding:26px;display:grid;place-items:center;min-height:380px}.plans-image img{object-fit:contain;max-height:560px}
/* vision */
.vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.vision-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:54px}.vision-pair .img-wrap{aspect-ratio:1.35}.vision-pair figcaption{font-size:10px;color:var(--muted);letter-spacing:.03em;margin-top:12px}.vision-copy p{max-width:500px;margin:26px 0 22px;color:var(--muted);font-size:15px;line-height:1.9}.vision-gallery-main{aspect-ratio:1.1;overflow:hidden}.vision-gallery-main img{height:100%;object-fit:cover}.vision-tabs{display:flex;gap:10px;margin-top:22px}.vision-tabs button{border:1px solid #b9bdb4;background:transparent;color:var(--ink);font-size:10px;text-transform:uppercase;letter-spacing:.09em;padding:10px 13px}.vision-tabs button.active{background:var(--forest);color:white;border-color:var(--forest)}.vision-low{display:grid;grid-template-columns:1.25fr .75fr;gap:35px;align-items:center;margin-top:125px}.vision-low .img-wrap{aspect-ratio:1.6}.vision-low p{margin-top:23px;color:var(--muted);max-width:330px}
/* use cases */
.usecases{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:57px}.usecase{position:relative;background:#303d33;min-height:405px;overflow:hidden;display:flex;align-items:end}.usecase img{position:absolute;inset:0;height:100%;object-fit:cover;filter:brightness(.67);transition:transform .8s}.usecase:hover img{transform:scale(1.05)}.usecase:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,16,9,.86),transparent 70%)}.usecase-content{position:relative;z-index:1;padding:30px}.usecase-content h4{margin-bottom:14px;color:#fff}.usecase-content p{color:#e3e7df;font-size:12px;line-height:1.85}.usecase-content .index{font-size:11px;letter-spacing:.13em;color:#d2d7cd;display:block;margin-bottom:25px}
/* finish costs */
.finishing-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,100px);align-items:start}.finishing-grid .left-copy p{font-size:15px;color:var(--muted);line-height:1.95;margin:30px 0}.steps{counter-reset:works;list-style:none;padding:0;margin:0}.steps li{counter-increment:works;border-top:1px solid var(--line);padding:13px 0;display:flex;gap:20px;align-items:start}.steps li:before{content:counter(works,decimal-leading-zero);font-size:11px;color:#a1a89a;font-weight:700;letter-spacing:.05em}.steps li strong{display:block;font-size:12px;font-weight:700}.steps li span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.budget-panel{background:#26362b;color:white;padding:clamp(25px,4vw,52px)}.budget-panel .eyebrow{color:#aeb8ab}.budget-panel .amount{font-size:clamp(45px,5vw,72px);line-height:1.1;font-weight:300;letter-spacing:-.04em;margin:17px 0}.budget-panel .amount small{font-size:19px;letter-spacing:0}.budget-other{border-top:1px solid #667369;margin-top:32px;padding-top:21px;display:flex;justify-content:space-between;gap:10px;color:#d2dacf;font-size:13px}.budget-other+.budget-other{margin-top:0;border-color:#667369}.budget-panel .caption{color:#aeb9ac;margin-top:24px}
/* location */
.loc-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:center}.distance-list{border-top:1px solid var(--line);margin:40px 0}.distance-list div{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);font-size:13px;gap:10px}.distance-list b{font-weight:600}.map-img{background:#e6e6dc;aspect-ratio:1.25;overflow:hidden}.map-img img{height:100%;object-fit:contain}
/* media preview and docs */
.gallery-preview{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:12px;margin-top:50px}.gallery-preview .img-wrap{aspect-ratio:1}.gallery-preview .img-wrap:first-child{aspect-ratio:1.5;grid-row:span 2}.gallery-preview .img-wrap:first-child img{height:100%;object-fit:cover}.gallery-preview .img-wrap{overflow:hidden}.gallery-preview .img-wrap img{height:100%;object-fit:cover}.gallery-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap;margin-top:35px}.document-teaser{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}.document-teaser p{max-width:540px;color:#cbd1c8;font-size:15px;line-height:1.9;margin:30px 0}.doc-mini{padding:12px 0;border-top:1px solid rgba(255,255,255,.24);display:flex;gap:17px;align-items:center;font-size:13px;color:#f0f0e9}.doc-mini span{font-size:11px;color:#adb9aa}.doc-mini:last-child{border-bottom:1px solid rgba(255,255,255,.24)}
/* CTA */
.contact-section{position:relative;color:white;background:var(--forest);padding:clamp(100px,13vw,180px) 0;isolation:isolate;overflow:hidden}.contact-section:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(4,15,8,.87),rgba(4,15,8,.35)),url('images/aerial-end.webp') center / cover}.contact-section h2{max-width:900px}.contact-section p{color:#d9e1d7;max-width:620px;font-size:16px;line-height:1.9;margin:30px 0 37px}.contact-actions{display:flex;gap:14px;flex-wrap:wrap}.contact-numbers{display:flex;align-items:center;gap:32px;flex-wrap:wrap;margin-top:42px}.contact-numbers span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#bbc4b9}.contact-numbers a{font-size:16px;font-weight:500;letter-spacing:.02em}.contact-numbers a:hover{text-decoration:underline}
/* footer */
.footer{background:#141e18;color:#f0eee6;padding:70px 0 30px}.footer-main{display:grid;grid-template-columns:1.3fr .7fr .8fr 1fr;gap:50px;padding-bottom:75px}.footer .brand-main{font-size:24px}.footer-heading{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#a0aca0;font-weight:700;margin-bottom:20px}.footer ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}.footer li a{color:#e3e6dc;font-size:12px}.footer li a:hover{text-decoration:underline}.footer-address{color:#bbc4b9;font-size:13px;line-height:1.9;margin-top:25px}.footer-contact{display:grid;gap:8px}.footer-contact a{font-size:14px}.footer-bottom{padding-top:25px;border-top:1px solid #465147;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:10px;color:#8e9a8f}.footer-bottom a{color:#c2cdc3}
/* pages */
.page-head{padding:190px 0 75px;background:var(--paper)}.page-head h1{font-size:clamp(55px,6vw,92px);max-width:920px}.page-head p{max-width:720px;margin:25px 0 0;color:#636d64;font-size:16px}.page-head .section-label{margin-bottom:20px}.filterbar{display:flex;gap:18px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:35px}.filterbar button{padding:9px 0;border:0;background:transparent;color:#777e77;font-size:11px;letter-spacing:.07em}.filterbar button.active{color:var(--ink);font-weight:700;border-bottom:1px solid var(--ink)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 17px}.gallery-card{margin:0;cursor:pointer}.gallery-card.hidden{display:none}.gallery-card img{aspect-ratio:1.37;object-fit:cover;transition:transform .6s}.gallery-card .img-wrap{overflow:hidden}.gallery-card h4{font-size:15px;letter-spacing:0;font-weight:600;margin-top:12px}.gallery-card figcaption{font-size:10px;color:var(--muted);margin-top:5px}.gallery-card button{display:block;padding:0;text-align:left;border:0;background:none;width:100%;color:inherit}.gallery-card .badge-small{position:absolute;left:11px;top:11px;z-index:2;padding:4px 8px;background:rgba(14,27,16,.73);color:#fff;font-size:9px;letter-spacing:.08em}.gallery-video{position:relative;display:block;cursor:pointer;width:100%;text-align:left;border:0;padding:0;background:none;color:inherit}.gallery-video .playmini{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);height:50px;width:50px;border:1px solid #fff;border-radius:100%;color:#fff;display:grid;place-items:center;font-size:19px;background:rgba(0,0,0,.18)}
.lightbox{display:none;position:fixed;z-index:3000;inset:0;background:rgba(8,12,9,.97);color:white;align-items:center;justify-content:center;flex-direction:column;padding:65px 7vw 40px}.lightbox.open{display:flex}.lightbox img{width:auto;max-width:100%;max-height:76vh;object-fit:contain}.lightbox-caption{color:#dce2db;font-size:12px;text-align:center;margin-top:16px}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);width:45px;height:45px;display:grid;place-items:center;font-size:23px}.lightbox-close{top:23px;right:29px}.lightbox-prev{left:25px;top:50%}.lightbox-next{right:25px;top:50%}.lightbox-download{color:#d4d9d1;font-size:11px;text-decoration:underline;margin-top:10px}
.doc-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:65px}.doc-info{background:var(--paper);padding:35px}.doc-info p{color:var(--muted);font-size:13px}.doc-info strong{display:block;margin-bottom:10px;font-size:15px}.doc-controls{display:flex;gap:20px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin-bottom:30px}.search{padding:13px 15px;border:1px solid #c8ccc4;min-width:220px;background:#fff;max-width:100%}.doc-group{margin-top:45px}.doc-group h3{font-size:27px;letter-spacing:-.035em;margin-bottom:20px}.doc-row{display:grid;grid-template-columns:32px 1fr 130px 128px;gap:20px;align-items:center;padding:18px 3px;border-top:1px solid #cbd0c7}.doc-row:last-child{border-bottom:1px solid #cbd0c7}.doc-row .doc-ico{font-size:22px;color:#76857a}.doc-row h4{font:600 13px/1.5 var(--sans);letter-spacing:0}.doc-row p{font-size:11px;color:var(--muted);margin-top:4px}.doc-row .status{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#627465}.doc-row.unavailable .status{color:#9b8b77}.doc-row a{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px}.doc-row .na{font-size:10px;color:#9a9f96}.doc-row.hidden{display:none}.doc-group.hidden{display:none}.access-box{background:#26362b;color:white;display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:center;padding:60px;margin-top:90px}.access-box h3{margin-top:16px}.access-box p{color:#bac8bc;margin-top:22px;max-width:600px}.access-box .btn{justify-self:end}
/* privacy and contact modal */
.modal-backdrop{display:none;position:fixed;inset:0;z-index:2900;background:rgba(8,18,12,.83);align-items:center;justify-content:center;padding:18px}.modal-backdrop.open{display:flex}.contact-modal{background:#f5f4ee;color:var(--ink);width:min(100%,620px);padding:clamp(24px,5vw,48px);position:relative;max-height:92vh;overflow:auto}.contact-modal h3{margin:12px 0 18px}.contact-modal .modal-close{position:absolute;right:15px;top:15px;width:36px;height:36px;background:transparent;border:1px solid #bac0b6;font-size:25px;line-height:1}.contact-modal p{color:var(--muted);font-size:13px;margin-bottom:25px}.contact-modal label{display:block;font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;margin:17px 0 5px}.contact-modal input,.contact-modal textarea{width:100%;padding:12px;background:white;border:1px solid #bcc5bb;outline-color:#637f66}.contact-modal textarea{resize:vertical;min-height:115px}.contact-modal .checks{font-size:11px;color:var(--muted);line-height:1.6;margin:16px 0}.contact-modal .modal-actions{display:flex;gap:10px;flex-wrap:wrap}.contact-modal .small-call{font-size:12px;margin-top:12px}
[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}[data-reveal].visible{opacity:1;transform:none}
@media(max-width:1150px){.nav{gap:17px}.nav a{font-size:9px}.footer-main{grid-template-columns:1fr 1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:span 3}.plans-grid,.loc-grid{gap:35px}}@media(max-width:920px){:root{--nav:70px}.nav{display:none}.mobile-toggle{display:flex}.mobile-menu{position:fixed;inset:var(--nav) 0 auto;background:var(--cream);color:var(--forest);padding:20px var(--margin) 35px;display:none;flex-direction:column;gap:0;max-height:calc(100svh - var(--nav));overflow:auto;box-shadow:0 20px 30px rgba(0,0,0,.12)}.site-header.menu-open .mobile-menu{display:flex}.mobile-menu a{padding:15px 0;border-bottom:1px solid var(--line);text-transform:uppercase;font-weight:700;letter-spacing:.12em;font-size:12px}.mobile-menu a:last-child{margin-top:20px;text-align:center;color:#fff;background:var(--forest);padding:15px}.site-header.overlay.menu-open{background:var(--cream);color:var(--forest)}.intro-grid,.land-grid,.house-grid,.plans-grid,.vision-grid,.finishing-grid,.loc-grid,.document-teaser{grid-template-columns:1fr;gap:38px}.intro-side{padding-top:0}.vision-grid .vision-gallery-main{max-height:680px}.mosaic{grid-template-columns:1fr 1fr}.mosaic-left{aspect-ratio:1}.mosaic-right .img-wrap{height:100%}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:span 2}.stat-row{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(3),.stat:nth-child(4){border-top:1px solid var(--line)}.usecases{grid-template-columns:1fr 1fr}.usecase:last-child{grid-column:span 2;min-height:330px}.doc-intro{gap:30px}}
@media(max-width:640px){:root{--margin:22px}.wide-container{width:calc(100% - 32px)}.brand-main{font-size:17px}.brand-sub{font-size:7px}.hero{min-height:650px}.hero-inner{padding:160px 0 110px}.hero h1{font-size:clamp(54px,13vw,75px)}.hero-lead{font-size:14px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .btn{width:min(100%,290px)}.hero-foot{font-size:9px;gap:5px;bottom:17px}.scroll-note{display:none}.section{padding:75px 0}.section-tight{padding:55px 0}.section-intro p{font-size:14px}.stat-row{margin-top:45px}.stat{margin-right:12px;padding:23px 9px 23px 0}.stat .val{font-size:39px}.stat .label{font-size:10px}.mosaic{display:block}.mosaic-left{aspect-ratio:1.25;margin-bottom:12px}.mosaic-right{display:grid;grid-template-columns:1fr 1fr;gap:12px;grid-template-rows:190px}.mosaic-right .img-wrap{min-height:0}.land-visual .img-wrap{aspect-ratio:1}.film-shell{margin-top:35px}.film-meta{font-size:10px}.house-gallery{grid-template-rows:170px 170px;gap:8px}.house-copy>p{font-size:14px}.plans-image{min-height:260px;padding:15px}.vision-pair{gap:9px;grid-template-columns:1fr 1fr;margin-top:25px}.vision-pair figcaption{font-size:9px}.vision-low{grid-template-columns:1fr;margin-top:65px;gap:20px}.usecases{grid-template-columns:1fr}.usecase,.usecase:last-child{grid-column:span 1;min-height:360px}.budget-panel{padding:25px}.gallery-preview{grid-template-columns:1fr 1fr}.gallery-preview .img-wrap:first-child{grid-column:span 2;grid-row:auto;aspect-ratio:1.45}.gallery-preview .img-wrap{aspect-ratio:1.1}.footer-main{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-main>div:first-child{grid-column:span 2}.footer-main>div:last-child{grid-column:span 2}.footer{padding:55px 0 24px}.footer-bottom{gap:12px}.gallery-grid{grid-template-columns:1fr 1fr;gap:20px 10px}.gallery-card img{aspect-ratio:1}.gallery-card h4{font-size:13px}.gallery-card figcaption{font-size:9px}.gallery-card .badge-small{font-size:8px}.page-head{padding:135px 0 55px}.page-head h1{font-size:51px}.page-head p{font-size:14px}.doc-intro{grid-template-columns:1fr}.doc-info{padding:24px}.doc-row{grid-template-columns:26px 1fr 85px;gap:9px}.doc-row .status{display:none}.doc-row h4{font-size:11px}.doc-row p{font-size:10px}.doc-row a{font-size:9px}.access-box{grid-template-columns:1fr;padding:26px;gap:25px}.access-box .btn{justify-self:start}.contact-section{padding:100px 0}.contact-numbers{gap:12px;flex-direction:column;align-items:flex-start}.lightbox{padding:60px 9px}.lightbox-prev,.lightbox-next{bottom:16px;top:auto}.lightbox-prev{left:16px}.lightbox-next{right:16px}.lightbox-close{right:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}[data-reveal]{opacity:1;transform:none}}
