:root{--ink:#252a23;--cream:#f1eee5;--gold:#c0aa78;--muted:#65695d;--line:rgba(37,42,35,.21);--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6}body.locked{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0;background:none}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h2{font:400 clamp(44px,5vw,78px)/1.03 var(--serif);letter-spacing:-.04em}em{font-family:var(--serif);font-weight:400;color:inherit}p{white-space:pre-line}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:7px}.skip{position:fixed;top:-100px;z-index:100;background:var(--cream);padding:15px}.skip:focus{top:10px}header{position:absolute;inset:0 0 auto;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:32px 4.5%;color:var(--cream);border-bottom:1px solid #ffffff30;gap:30px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-symbol{letter-spacing:-.14em;padding-right:.12em;font-family:Georgia,serif;font-size:3.4rem;font-weight:400;line-height:1}.brand-symbol span{color:#a48257;font-size:2rem;position:relative;top:-.37em;left:.05em}.brand-name{letter-spacing:.26em;font-size:.86rem;font-weight:700;line-height:1.25}.brand-name small{letter-spacing:.37em;margin-top:5px;font-size:.55rem;font-weight:500;display:block}.desktop-nav,.nav-right{display:flex;align-items:center;gap:35px}.desktop-nav a{font-size:12px;position:relative}.desktop-nav a:after{content:'';height:1px;background:currentColor;position:absolute;bottom:-5px;left:0;width:0;transition:width .3s}.desktop-nav a:hover:after{width:100%}.nav-right{gap:28px}#language{font-size:11px;padding:12px 4px}.menu-toggle{display:flex;align-items:center;gap:16px;font-size:12px;padding:10px 0}.menu-icon{width:25px;display:grid;gap:6px}.menu-icon i{display:block;height:1px;background:currentColor}.hero{height:100svh;min-height:680px;max-height:1250px;position:relative;color:var(--cream);isolation:isolate;overflow:hidden}.hero-img,.hero-shade{position:absolute;inset:0;height:100%;z-index:-2}.hero-img{object-position:center 60%;filter:saturate(.55);animation:heroZoom 2s ease-out both}.hero-shade{z-index:-1;background:linear-gradient(180deg,rgba(17,25,16,.5),rgba(17,25,16,.24) 30%,rgba(17,25,16,.62) 100%)}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:500}.hero-top{position:absolute;top:27%;left:5%}.hero-copy{position:absolute;left:5%;right:5%;top:36%;display:flex;align-items:flex-end;justify-content:space-between;gap:25px}h1{font:400 clamp(86px,9.7vw,158px)/.87 var(--serif);letter-spacing:-.045em;animation:rise 1.1s .15s both}h1 em{display:inline-block;margin-top:10px}.hero-aside{width:270px;max-width:25%;padding-bottom:12px;font-size:13px;line-height:1.8;animation:rise 1s .45s both}.small-line{display:block;width:35px;height:1px;background:var(--gold);margin-bottom:23px}.text-link{display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid currentColor;padding:14px 0 9px;width:max-content;max-width:100%;font-size:12px}.text-link span:last-child{font-size:22px;line-height:1;transition:transform .3s}.text-link:hover span:last-child{transform:translate(4px,-4px)}.hero-aside .text-link{margin-top:27px;width:100%}.hero-bottom{position:absolute;bottom:32px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff50;padding-top:25px}.hero-bottom .eyebrow{font-size:8px}.scroll-link{display:flex;align-items:center;gap:45px;font-size:8px;letter-spacing:1.5px}.scroll-link span:last-child{font-size:25px}.edition{font-size:9px;letter-spacing:2px}.section-pad{padding:110px 6%}.section-label{display:flex;gap:23px;font-size:9px;letter-spacing:1.7px;line-height:1.5;margin-bottom:32px}.section-label>span:first-child{color:var(--muted)}.philosophy{display:grid;grid-template-columns:27% 1fr;gap:5%;padding-top:130px;padding-bottom:130px}.philosophy .section-label{padding-top:13px}.statement{font-size:clamp(46px,5.7vw,86px)}.statement em{color:#777960}.philosophy-bottom{display:flex;gap:55px;justify-content:space-between;align-items:center;margin-top:50px}.philosophy-bottom p{max-width:370px;font-size:13px;color:var(--muted)}.seal{font:italic 72px var(--serif);width:90px;height:90px;border:1px solid #b9b39e;border-radius:50%;display:grid;place-content:center;position:relative}.seal span{font-size:25px;position:absolute;right:13px;top:15px}.projects{background:#e7e5da;padding-top:95px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:60px}.section-note{font-size:12px;color:var(--muted);max-width:240px}.project-grid{display:grid;grid-template-columns:1.17fr 1fr;gap:7%;align-items:start}.project{padding:0;text-align:left;width:100%}.project-two{margin-top:130px}.project-image{position:relative;overflow:hidden;isolation:isolate}.project-one .project-image{aspect-ratio:1/1.08}.project-two .project-image{aspect-ratio:1/1.1}.project-image img{height:100%;transition:transform 1s;filter:saturate(.6)}.project-image:after{content:'';position:absolute;inset:0;background:linear-gradient(#0003,transparent 40%);pointer-events:none}.project:hover img{transform:scale(1.035)}.project-tag{position:absolute;left:23px;top:22px;color:white;font-size:9px;letter-spacing:1.8px;z-index:1}.round-arrow{position:absolute;bottom:20px;right:20px;display:grid;place-items:center;width:49px;height:49px;border:1px solid #fff8;border-radius:50%;font-size:25px;color:white;transition:background .3s}.project:hover .round-arrow{background:var(--cream);color:var(--ink)}.project-caption{border-bottom:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:16px}.project-caption h3{font:36px var(--serif);letter-spacing:-1px}.project-caption>span{font-size:9px;color:var(--muted)}.expertise{display:grid;grid-template-columns:1fr 1.03fr;gap:9%;padding-top:135px;padding-bottom:135px}.expertise-visual{position:relative;min-height:560px}.expertise-visual img{height:100%;filter:saturate(.4)}.image-caption{position:absolute;bottom:24px;left:25px;right:25px;font-size:8px;letter-spacing:2px;color:white;text-shadow:0 1px 4px black}.expertise h2{font-size:clamp(46px,4.8vw,70px);margin-bottom:42px}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:17px;cursor:pointer;padding:23px 0}summary::-webkit-details-marker{display:none}summary .index{font-size:9px;color:var(--muted)}summary h3{font:29px var(--serif)}.plus{margin-left:auto;font-size:20px;transition:transform .3s}details[open] .plus{transform:rotate(45deg)}details p{font-size:12px;color:var(--muted);padding:0 15px 25px 34px;max-width:440px}.expertise .text-link{margin-top:28px}.international{background:var(--ink);color:var(--cream);padding-top:100px;padding-bottom:95px}.international .section-label>span:first-child{color:var(--gold)}.international h2 em{color:var(--gold)}.international-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:8%;align-items:center}.map-wrap{position:relative}#world-map{width:100%;overflow:visible}#land{fill:#53594a}.map-lines{stroke:#ffffff0e;stroke-width:1}.map-pin{fill:var(--gold);stroke:var(--ink);stroke-width:2}.map-pin.active{fill:#fff}.pin-ring{fill:none;stroke:var(--gold);stroke-width:1}.map-key{display:flex;align-items:center;gap:12px;font-size:9px;color:#b6b9a9;margin:15px 0}.map-key i{width:5px;height:5px;background:var(--gold);border-radius:50%}.country-buttons{display:flex;flex-direction:column}.country-buttons button{text-align:left;border-bottom:1px solid #ffffff25;font:29px var(--serif);padding:11px 0;color:#c2c5b7;display:flex;justify-content:space-between}.country-buttons button:after{content:'↗';font:18px var(--sans);opacity:0}.country-buttons button.active{color:var(--gold)}.country-buttons button.active:after{opacity:1}.country-detail{padding-top:28px;min-height:150px}.country-detail .eyebrow{font-size:8px;color:var(--gold)}.country-detail p{font-size:12px;margin-top:12px;color:#c2c5b7}.about{padding-top:120px;padding-bottom:120px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.founder-monogram{height:360px;display:flex;align-items:center;justify-content:center;font:240px/.8 var(--serif);letter-spacing:-.15em;color:#757b5c;position:relative;border:1px solid #b9bca7;background:repeating-linear-gradient(0deg,transparent 0 44px,#74795c12 44px 45px)}.founder-monogram:before{content:'';position:absolute;width:240px;height:240px;border:1px solid #a9ae96;border-radius:50%}.founder-monogram>span{font-style:italic;margin-top:70px}.founder-monogram small{position:absolute;bottom:20px;font:8px var(--sans);letter-spacing:2px}.about h2{margin:12px 0 22px}.about-lead{font:29px/1.2 var(--serif);margin-bottom:24px}.about p:not(.about-lead){font-size:13px;color:var(--muted)}.about .text-link{margin-top:22px}.contact{background:#dcdccf;padding-bottom:65px}.contact-main{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #252a2340;padding-bottom:45px}.contact h2{font-size:clamp(88px,12vw,180px);line-height:.88}.contact h2 em{color:#767b60}.contact-arrow{border:1px solid #252a2360;width:110px;height:110px;display:grid;place-items:center;border-radius:50%;font-size:50px;transition:background .3s,color .3s}.contact-main:hover .contact-arrow{background:var(--ink);color:var(--cream)}.contact-bottom{display:flex;justify-content:space-between;margin-top:30px;gap:25px;font-size:12px}.contact-bottom div{display:flex;flex-direction:column;gap:7px}footer{background:var(--ink);color:var(--cream);padding:65px 5% 30px;overflow:hidden}.footer-brand{display:block;font-size:clamp(70px,15.4vw,240px);letter-spacing:-.065em;font-weight:500;line-height:1.1;margin-bottom:40px}.footer-bottom{border-top:1px solid #ffffff30;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:8px;letter-spacing:1px}.footer-bottom button{font-size:9px;padding:0;text-decoration:underline}dialog{border:0;color:var(--ink);background:var(--cream);padding:0}dialog::backdrop{background:#0b120cbb;backdrop-filter:blur(6px)}.close-button{display:flex;align-items:center;justify-content:center;gap:20px;font-size:25px;padding:10px 0}.close-button>span{font-size:11px}.menu-dialog{width:100vw;max-width:100vw;height:100svh;max-height:100svh;margin:0;padding:32px 5%;background:var(--ink);color:var(--cream)}.menu-top{display:flex;align-items:center;justify-content:space-between}.menu-dialog nav{padding:8vh 10%;display:grid}.menu-dialog nav a{font:clamp(36px,5vw,72px)/1.3 var(--serif);display:flex;align-items:center;gap:35px}.menu-dialog nav a:hover{color:var(--gold)}.menu-dialog small{font:10px var(--sans);color:var(--gold)}.menu-email{display:block;margin-left:10%;font-size:12px;color:var(--gold)}.project-dialog{width:min(960px,93vw);max-height:92svh}.project-dialog>.close-button{position:sticky;top:0;z-index:2;background:var(--cream);width:100%;justify-content:flex-end;padding:14px 25px}.project-dialog>img{height:360px}.modal-content{padding:40px 6% 50px}.modal-content h2{margin:12px 0 24px}.modal-content p{font-size:14px;max-width:650px;color:var(--muted)}#milestones{display:flex;gap:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin:30px 0}#milestones div{flex:1}#milestones strong{font:36px var(--serif)}#milestones span{display:block;font-size:10px;color:var(--muted)}.credits-dialog{width:min(600px,92vw);padding:25px 40px 45px;max-height:90svh}.credits-dialog .close-button{margin-left:auto}.credits-dialog h2{font-size:46px;margin:15px 0 25px}.credits-dialog p{font-size:13px;margin:20px 0}.credits-dialog a{font-size:12px;text-decoration:underline}.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .85s,transform .85s}.js .reveal.visible{opacity:1;transform:translateY(0)}@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes heroZoom{from{transform:scale(1.055)}to{transform:scale(1)}}
@media(min-width:1600px){.section-pad{padding-left:max(6%,calc((100vw - 1440px)/2));padding-right:max(6%,calc((100vw - 1440px)/2))}}@media(max-width:1050px){.desktop-nav{gap:22px}.hero-copy{top:38%}h1{font-size:12vw}.hero-aside{max-width:29%}.project-caption{align-items:flex-start;flex-direction:column;gap:4px}.expertise{gap:5%}.expertise-visual{min-height:490px}.section-pad{padding-top:85px;padding-bottom:85px}.philosophy{grid-template-columns:23% 1fr}.international-grid{gap:5%}.footer-bottom{flex-wrap:wrap}}@media(max-width:700px){html{scroll-padding-top:20px}header{padding:22px 6%;gap:10px}.brand{gap:10px}.brand-symbol{font-size:2.8rem}.brand-name{font-size:.7rem}.desktop-nav{display:none}.nav-right{gap:20px}.menu-toggle>span:first-child{display:none}.hero{min-height:730px;height:100svh;max-height:1000px}.hero-top{left:7%;top:25%;font-size:8px;letter-spacing:1.5px}.hero-copy{left:7%;right:7%;top:34%;display:block}h1{font-size:clamp(68px,15vw,105px);line-height:.92}.hero-aside{max-width:100%;width:255px;margin-top:35px;font-size:11px}.hero-aside .small-line{display:none}.hero-aside .text-link{margin-top:14px;font-size:11px;padding-top:6px}.hero-bottom{left:7%;right:7%;bottom:23px;padding-top:17px}.hero-bottom .eyebrow{font-size:6px;max-width:155px}.scroll-link{font-size:6px;gap:10px}.edition{display:none}.hero-img{object-position:55% center}.section-pad{padding:70px 7%}.section-label{font-size:8px;gap:15px;margin-bottom:26px}.philosophy{display:block}.statement{font-size:clamp(41px,9.8vw,66px)}.philosophy-bottom{gap:25px;margin-top:30px}.seal{flex-shrink:0;width:66px;height:66px;font-size:55px}.seal span{font-size:18px;right:9px;top:12px}.philosophy-bottom p{font-size:11px}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:44px}.section-note{margin-top:22px;font-size:11px}.project-grid{display:block}.project-one .project-image{aspect-ratio:1/1.08}.project-two{margin-top:40px}.project-two .project-image{aspect-ratio:1.15/1}.project-caption{flex-direction:row;align-items:center}.project-caption h3{font-size:31px}.project-caption>span{font-size:8px;max-width:130px;text-align:right}.project-tag{font-size:8px}.expertise{display:flex;flex-direction:column-reverse;gap:35px}.expertise h2{font-size:44px}.expertise-visual{min-height:0;height:360px}.expertise-visual img{height:360px}summary h3{font-size:27px}.international-grid{display:flex;flex-direction:column;gap:30px}.map-wrap{width:100%}.countries{width:100%}.country-buttons{display:flex;flex-wrap:wrap;flex-direction:row;gap:0 18px}.country-buttons button{font-size:24px;gap:20px}.country-detail{min-height:120px}.map-key{font-size:8px}.about-grid{display:flex;flex-direction:column;gap:35px;align-items:stretch}.founder-monogram{height:270px;font-size:175px}.founder-monogram:before{width:185px;height:185px}.about h2{font-size:52px}.about .eyebrow{font-size:8px}.contact h2{font-size:clamp(67px,14vw,99px)}.contact-arrow{width:60px;height:60px;font-size:29px;flex-shrink:0}.contact-main{gap:10px;padding-bottom:30px}.contact-bottom{display:block;font-size:11px}.contact-bottom div{margin-top:25px}.footer-brand{font-size:15.1vw;letter-spacing:-.065em;margin-bottom:30px}footer{padding:40px 7% 30px}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;gap:22px;font-size:6px}.footer-bottom button{text-align:left;font-size:8px}.menu-dialog nav{padding:10vh 0}.menu-dialog nav a{font-size:40px;gap:20px;padding:5px 0}.menu-email{margin-left:0}.project-dialog>img{height:240px}.modal-content{padding:30px 7%}.modal-content h2{font-size:48px}#milestones{gap:20px}.credits-dialog{padding:20px 25px 35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}

/* Editorial refinement: persistent navigation, project stories and architectural detail. */
:root{--muted:#5f6456}
html{scroll-padding-top:104px}
[id]{scroll-margin-top:15px}
::selection{background:#b9ad83;color:#20251e}
.reading-progress{position:fixed;inset:0 0 auto;height:2px;z-index:25;pointer-events:none}
.reading-progress span{display:block;width:100%;height:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}
header{position:fixed;padding:24px 4.5%;transition:padding .4s,background .4s,color .4s,border-color .4s;isolation:isolate}
header.scrolled{padding-top:12px;padding-bottom:12px;background:rgba(241,238,229,.97);color:var(--ink);border-color:#252a2326;box-shadow:0 4px 20px #20251e08}
header .brand{transition:transform .3s}
header.scrolled .brand-symbol{font-size:2.7rem}
header.scrolled .brand-symbol span{font-size:1.7rem}
.desktop-nav{gap:28px}.desktop-nav a.active:after{width:100%}
.nav-right{gap:19px}
.header-contact{display:flex;align-items:center;gap:16px;padding:10px 16px;border:1px solid #ffffff60;border-radius:2px;font-size:11px;transition:background .3s,border-color .3s}
.header-contact>span:last-child{font-size:18px}
.header-contact:hover{background:#ffffff18}
.scrolled .header-contact{border-color:#252a2335}.scrolled .header-contact:hover{background:#252a230a}
#language,.menu-toggle{min-width:44px;min-height:44px}
.hero-img{height:115%;top:-5%;will-change:translate}
.hero-top{font-size:10px}.hero-bottom .eyebrow{font-size:10px}.scroll-link{font-size:9px}.edition{font-size:10px}
.hero-copy{right:6%}.hero-aside{font-size:14px;width:285px}
.hero-aside .text-link{font-size:13px}
.section-label{font-size:10px;letter-spacing:1.4px}
.philosophy{position:relative;padding-top:145px;padding-bottom:135px}
.philosophy:after{content:'';position:absolute;bottom:0;left:6%;right:6%;height:1px;background:var(--line)}
.philosophy-aside{display:flex;flex-direction:column;justify-content:space-between}
.terroir-note{display:grid;gap:12px;max-width:185px;padding-bottom:10px;font:25px/1.15 var(--serif)}
.terroir-note .eyebrow{font:9px/1.6 var(--sans);letter-spacing:1.4px;max-width:145px;color:var(--muted)}
.terroir-rule{width:42px;height:1px;background:var(--muted);margin-bottom:8px}
.statement{font-size:clamp(46px,6vw,90px);line-height:1.03}
.philosophy-bottom{gap:40px;justify-content:flex-start}
.philosophy-bottom p{max-width:395px;font-size:14px;line-height:1.8}
.philosophy-mark{font:90px/.8 Georgia,serif;letter-spacing:-.14em;position:relative;color:#83856b;flex-shrink:0;width:100px}
.philosophy-mark>span{font-size:50px;position:relative;top:-.45em;left:.05em;color:#a48257}
.projects{background:#e8e7de;padding-top:115px;padding-bottom:125px}
.project-grid{gap:8%;grid-template-columns:1.13fr 1fr}
.project-one .project-image{aspect-ratio:1/1.13}.project-two .project-image{aspect-ratio:1/1.09}
.project-image img{transition:transform 1.3s cubic-bezier(.2,.6,.2,1),filter .8s;filter:saturate(.65)}
.project-image:after{background:linear-gradient(#0004,transparent 45%,#0007)}
.project:hover img{transform:scale(1.055);filter:saturate(.9)}
.project-open{position:absolute;left:24px;bottom:35px;z-index:1;color:white;font-size:11px;letter-spacing:.3px}
.round-arrow{z-index:1}.project-caption{padding-top:23px;padding-bottom:23px}.project-caption>span{font-size:11px;max-width:170px;text-align:right}
.expertise{padding-top:135px;padding-bottom:135px}
.expertise-visual{overflow:hidden}.expertise-visual img{transition:filter .5s}.image-caption{font-size:10px;letter-spacing:1.2px}
summary{min-height:72px}summary .index{font-size:11px}details p{font-size:14px;line-height:1.8}
.design-feature{background:#e7e2d5;display:grid;grid-template-columns:1fr 1.15fr;gap:7%;align-items:center;border-top:1px solid #252a2318;border-bottom:1px solid #252a2318}
.design-copy h2{font-size:clamp(43px,4.8vw,70px);line-height:1.06}
.design-copy h2 em{color:#6f745b}
.design-copy>p{font-size:14px;color:var(--muted);line-height:1.8;max-width:365px;margin-top:30px}
.design-principles{display:grid;margin-top:30px;max-width:365px;font-size:11px;letter-spacing:.4px}
.design-principles span{padding:11px 0;border-bottom:1px solid var(--line)}
.design-copy .text-link{margin-top:25px}
.design-drawing{margin:0;min-width:0;transform:rotate(2deg)}
.drawing-frame{background:#faf9f5;box-shadow:0 20px 60px #302c2512;padding:15px;border:1px solid #cfcabb}
.drawing-frame img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;filter:saturate(.55)}
.design-drawing figcaption{display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:1px;margin-top:20px;color:#5c6153}
.international{padding-top:115px;padding-bottom:100px}
.map-wrap{padding-top:30px}.map-key{font-size:10px}.map-lines{stroke:#ffffff12}
.map-point{cursor:pointer;outline:none}.map-point .map-pin{transition:r .2s,fill .2s}
.map-point:hover .map-pin,.map-point:focus-visible .map-pin{r:8;fill:#fff}
.map-point.active .map-pin{fill:#fff}.pin-ring{pointer-events:none;transition:cx .6s,cy .6s}
.country-buttons button{font-size:31px;padding:10px 0}.country-detail{min-height:177px}
.country-detail p{font-size:14px}.country-detail .eyebrow{font-size:10px}
.country-link{font-size:11px;color:var(--gold);display:inline-block;border-bottom:1px solid #c0aa7850;margin-top:20px;padding-bottom:5px}
.about{padding-top:130px;padding-bottom:130px}
.about-grid{grid-template-columns:1fr 1fr;gap:12%}
.founder-portrait{margin:0;position:relative;max-width:550px}
.founder-portrait img{aspect-ratio:.88;height:auto;object-position:center;filter:saturate(.65)}
.founder-portrait figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:18px;font-size:9px;letter-spacing:1px;color:var(--muted)}
.about p:not(.about-lead){font-size:14px;line-height:1.8}.about .about-lead{font-size:33px}
.contact-main{padding-bottom:55px}.contact-bottom{font-size:14px}
.contact-bottom>div{gap:6px}.contact-bottom .email-row{flex-direction:row;align-items:center;gap:18px;flex-wrap:wrap}
#copy-email{font-size:10px;text-transform:uppercase;letter-spacing:1px;border:1px solid #252a2345;min-height:34px;padding:5px 10px}
#copy-email:hover{background:#252a2310}.copy-status{font-size:11px;min-height:1.3em;color:var(--muted)}
.footer-bottom{font-size:10px;line-height:1.7;letter-spacing:.5px}.footer-bottom button{font-size:10px;min-height:36px}
.menu-dialog{overflow:auto}.menu-dialog nav{padding:5vh 0 4vh 6%;position:relative;z-index:1;width:66%}
.menu-dialog nav a{font-size:clamp(34px,4.4vw,66px);line-height:1.3;padding:4px 0}
.menu-dialog nav a span{transition:transform .35s}.menu-dialog nav a:hover span{transform:translateX(9px)}
.menu-email{margin-left:6%;position:relative;z-index:1;font-size:14px;padding-bottom:20px}
.menu-visual{position:absolute;right:5%;top:24%;width:28%;height:55%;max-height:470px}
.menu-visual img{height:100%;filter:saturate(.35)}.menu-visual>span{position:absolute;bottom:20px;left:20px;right:20px;font-size:8px;letter-spacing:1.3px}
.project-dialog{width:min(1100px,94vw);max-height:94svh}
.project-dialog>.close-button{box-shadow:0 1px 0 var(--line);padding:10px 26px}
.project-gallery{position:relative;background:#20251e}
.project-gallery>img{height:min(56vh,550px);width:100%;object-fit:cover}
.project-gallery>img.is-plan{object-fit:contain;background:#faf9f5}
.gallery-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 5%;gap:20px;background:var(--ink);color:var(--cream)}
#gallery-caption{font-size:12px}.gallery-controls{display:flex;align-items:center;gap:14px;flex-shrink:0}
.gallery-controls button{border:1px solid #ffffff50;border-radius:50%;width:44px;height:44px;font-size:20px}
.gallery-controls button:hover{background:var(--cream);color:var(--ink)}#gallery-count{font-size:10px;letter-spacing:1px}
.gallery-thumbnails{display:flex;gap:10px;padding:18px 5% 0}
.gallery-thumbnails button{width:78px;height:56px;padding:3px;border:1px solid transparent;opacity:.55}
.gallery-thumbnails button.active{border-color:var(--ink);opacity:1}.gallery-thumbnails button:hover{opacity:1}.gallery-thumbnails img{width:100%;height:100%}
.modal-content{padding:30px 5% 50px}.modal-content p{font-size:15px;line-height:1.8}
#milestones span{font-size:12px}.close-button{min-height:44px;min-width:44px}
.plan-dialog{width:min(1200px,95vw);max-height:94svh;padding:0 30px 35px}
.plan-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:17px 0;background:var(--cream);position:sticky;top:0;z-index:1}
.plan-top h2{font-size:32px;letter-spacing:-.03em}.plan-dialog>img{height:auto;object-fit:contain;width:100%;background:white}.plan-dialog>.text-link{margin-top:15px}
@media(min-width:701px){.menu-dialog[open]{animation:menuOpen .45s cubic-bezier(.2,.6,.2,1)}.project-dialog[open],.plan-dialog[open]{animation:dialogOpen .4s cubic-bezier(.2,.6,.2,1)}}
@keyframes menuOpen{from{opacity:.6;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0)}}
@keyframes dialogOpen{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
@media(max-width:1100px){.header-contact{display:none}.hero-aside{font-size:13px}.philosophy{gap:6%}.design-feature{gap:5%}.design-copy h2{font-size:49px}.design-copy>p{font-size:13px}.project-caption>span{font-size:10px;text-align:left}.about-grid{gap:8%}.footer-bottom{font-size:9px}}
@media(max-width:700px){
 html{scroll-padding-top:90px}
 header{padding:17px 6%;min-height:84px}header.scrolled{padding:12px 6%;min-height:74px}
 header.scrolled .brand-symbol{font-size:2.8rem}header.scrolled .brand-symbol span{font-size:2rem}
 .nav-right{gap:4px}#language{font-size:12px}.menu-toggle{justify-content:flex-end}
 .hero{min-height:740px}.hero-copy{left:7%;right:7%;top:32%}.hero-top{font-size:10px;top:24%;letter-spacing:1px;max-width:285px}
 .hero-aside{font-size:13px;max-width:285px;width:100%;margin-top:32px}.hero-aside .text-link{font-size:12px;margin-top:18px}
 .hero-bottom{align-items:flex-end;gap:16px;bottom:25px}.hero-bottom .eyebrow{font-size:9px;line-height:1.8;letter-spacing:1px;max-width:180px}
 .scroll-link{font-size:9px;letter-spacing:.7px;gap:12px;max-width:135px}.scroll-link span:first-child{max-width:95px}.scroll-link span:last-child{font-size:23px}
 .section-label{font-size:10px;letter-spacing:1px}.section-pad{padding:76px 7%}
 .philosophy-aside{display:block}.terroir-note{display:none}.statement{font-size:clamp(39px,9.8vw,68px);line-height:1.07}
 .philosophy-bottom{gap:25px;margin-top:34px}.philosophy-mark{font-size:64px;width:70px}.philosophy-mark>span{font-size:38px}
 .philosophy-bottom p{font-size:13px;line-height:1.75}.philosophy:after{left:7%;right:7%}
 .section-note{font-size:13px}.project-one .project-image{aspect-ratio:1/1.06}.project-two .project-image{aspect-ratio:1.03/1}
 .project-tag{font-size:10px;left:19px;top:20px;letter-spacing:1px}.project-open{font-size:11px;left:19px;bottom:35px}
 .project-caption{align-items:flex-start;flex-direction:column;gap:8px;padding:19px 0}.project-caption>span{font-size:11px;max-width:100%;text-align:left}
 .project-two{margin-top:44px}.project-caption h3{font-size:37px}
 .expertise{gap:35px}.expertise h2{font-size:47px}summary h3{font-size:28px}details p{font-size:13px;padding-left:32px}
 .expertise-visual{height:360px}.expertise-visual img{height:360px}.image-caption{font-size:9px}
 .design-feature{display:flex;flex-direction:column;gap:40px}.design-copy h2{font-size:45px}.design-copy>p{font-size:14px;max-width:100%}.design-principles{font-size:12px}.design-drawing{width:100%;transform:none}.drawing-frame{padding:8px}.design-drawing figcaption{font-size:8px;letter-spacing:.3px;gap:10px}
 .map-wrap{padding-top:0}.map-key{font-size:10px}.country-buttons{gap:0 20px}.country-buttons button{font-size:25px}.country-detail{min-height:165px}.country-detail p{font-size:13px}.country-link{font-size:12px}
 .about-grid{gap:36px}.founder-portrait{width:100%}.founder-portrait img{aspect-ratio:.94}.founder-portrait figcaption{font-size:9px;letter-spacing:.4px}.about .eyebrow{font-size:10px}.about h2{font-size:55px}.about .about-lead{font-size:29px}
 .contact-main{position:relative;display:block;padding-bottom:32px}.contact h2{font-size:clamp(54px,13vw,88px);line-height:.95}.contact-arrow{position:absolute;right:0;bottom:30px;width:54px;height:54px;font-size:27px}
 .contact-bottom{font-size:13px}.contact-bottom .email-row{margin-top:0;gap:12px}.contact-bottom>div{margin-top:25px}.contact-bottom .email-row a{font-size:13px;overflow-wrap:anywhere}#copy-email{font-size:10px;min-height:44px}.copy-status{margin-bottom:5px}
 .footer-bottom{font-size:9px;gap:17px}.footer-bottom button{font-size:10px}.footer-bottom a{font-size:10px}
 .menu-dialog{padding:20px 6% 35px}.menu-dialog nav{padding:6vh 0 4vh;width:100%}.menu-dialog nav a{font-size:clamp(32px,8.4vw,46px);padding:7px 0;gap:18px}.menu-visual{display:none}.menu-email{margin-left:0;font-size:13px}.menu-top .close-button{gap:9px}.menu-top .brand{gap:8px}
 .project-dialog{width:100vw;max-width:100vw;height:100svh;max-height:100svh;margin:0}.project-dialog>.close-button{padding-right:22px}.project-gallery>img{height:38svh;min-height:230px}.gallery-bar{padding:12px 6%;gap:12px}#gallery-caption{font-size:11px;max-width:140px}.gallery-controls{gap:9px}.gallery-controls button{width:44px;height:44px}#gallery-count{font-size:9px}.gallery-thumbnails{padding-left:6%;padding-top:14px}.modal-content{padding:25px 6% 40px}.modal-content p{font-size:14px}#milestones{gap:18px}#milestones strong{font-size:31px}#milestones span{font-size:10px}
 .plan-dialog{padding:0 15px 25px;width:96vw}.plan-top{gap:15px}.plan-top h2{font-size:25px}.plan-top .close-button{gap:8px}.plan-top .close-button span{display:none}
}
@media(prefers-reduced-motion:reduce){.hero-img{will-change:auto;translate:none!important}.pin-ring{transition:none}.js .reveal{opacity:1;transform:none}}
@media(min-width:701px) and (max-width:950px){.desktop-nav{display:none}.nav-right{gap:22px}}

/* Four-language flag selector. */
.language-switcher{display:flex;align-items:center;gap:2px;flex-shrink:0}
.language-option{display:grid;place-items:center;width:44px;height:44px;padding:8px;border:1px solid transparent;border-radius:3px;opacity:.7;transition:opacity .2s,border-color .2s,background .2s}
.language-option img{display:block;width:27px;height:18px;object-fit:cover;border-radius:1px;box-shadow:0 0 0 1px #00000012}
.language-option:hover,.language-option.active{opacity:1;background:#ffffff12}
.language-option.active{border-color:currentColor}
.scrolled .language-option:hover,.scrolled .language-option.active{background:#252a2308}
html[lang="zh-Hans"]{--serif:"Songti SC","Noto Serif CJK SC","SimSun",serif;--sans:"PingFang SC","Microsoft YaHei",sans-serif}
html[lang="zh-Hans"] h1{font-size:clamp(68px,8vw,125px);line-height:1.17;letter-spacing:.02em}
html[lang="zh-Hans"] h2{line-height:1.28;letter-spacing:.01em}
html[lang="zh-Hans"] em{font-style:normal}
html[lang="zh-Hans"] .statement{font-size:clamp(43px,4.6vw,70px)}
html[lang="zh-Hans"] .contact h2{font-size:clamp(74px,8vw,126px)}
html[lang="zh-Hans"] .menu-dialog nav a{font-size:clamp(32px,3.4vw,51px);line-height:1.5}
html[lang="zh-Hans"] .section-label,html[lang="zh-Hans"] .eyebrow{letter-spacing:1px}
html[lang="zh-Hans"] p{line-height:1.9}
@media(max-width:1320px){.header-contact{display:none}}
@media(max-width:700px){
 html{scroll-padding-top:138px}
 header,header.scrolled{min-height:128px;padding-top:14px;padding-bottom:60px;align-items:center}
 .language-switcher{position:absolute;right:6%;bottom:6px;gap:5px}
 .nav-right{gap:0}.language-option{width:44px;height:44px}
 .hero-top{top:26%;max-width:88%}.hero-copy{top:35%}
 html[lang="zh-Hans"] h1{font-size:clamp(51px,12.5vw,83px);line-height:1.18}
 html[lang="zh-Hans"] .statement{font-size:clamp(30px,7.5vw,46px);line-height:1.5}
 html[lang="zh-Hans"] .contact h2{font-size:clamp(48px,11.5vw,76px)}
 html[lang="zh-Hans"] .menu-dialog nav a{font-size:34px}
 html[lang="it"] .contact h2{font-size:clamp(48px,11.4vw,76px)}
 html[lang="it"] .hero-top{font-size:9px;letter-spacing:.6px}
}

/* Footer uses the same brand lockup as the header. */
.footer-logo{width:fit-content;margin-bottom:40px}
@media(max-width:700px){.footer-logo{margin-bottom:30px}}

.instagram-band{padding:65px 0 30px;background:var(--cream)}
.instagram-heading{padding:0 5%;display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.instagram-heading h2{font-size:clamp(32px,4vw,54px);margin-top:12px}.instagram-heading .eyebrow{font-size:9px;overflow-wrap:anywhere}.instagram-heading .text-link{flex-shrink:0}
.instagram-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:0 5% 14px;scroll-padding:5%}.instagram-photo{position:relative;flex:0 0 calc((100% - 36px)/4);aspect-ratio:1;overflow:hidden;scroll-snap-align:start;background:#dcdccf}.instagram-photo img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.instagram-photo:hover img{transform:scale(1.04)}.instagram-photo>span{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--cream);color:var(--ink)}.instagram-photo:focus-visible{outline:3px solid var(--gold);outline-offset:-4px}
.instagram-navigation{display:flex;justify-content:flex-end;gap:10px;padding:10px 5% 0}.instagram-navigation button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;font-size:22px}.instagram-navigation button:hover{background:var(--ink);color:var(--cream)}
@media(max-width:700px){.instagram-band{padding-top:40px}.instagram-heading{padding:0 7%;display:block}.instagram-heading .text-link{margin-top:15px}.instagram-strip{padding-left:7%;padding-right:7%;scroll-padding:7%}.instagram-photo{flex-basis:72%}.instagram-navigation{padding-right:7%}}

.about .estate-role{margin-top:20px;color:var(--ink);font-weight:500}.estate-feature{margin-top:65px;padding-top:38px;border-top:1px solid var(--line)}.estate-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.estate-heading h3{font:clamp(29px,3.4vw,46px)/1.15 var(--serif);margin-top:12px}.estate-heading .text-link{flex-shrink:0}.estate-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.estate-photos figure{margin:0}.estate-photos img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}.estate-photos figcaption{display:flex;justify-content:space-between;gap:10px;padding-top:12px;font-size:12px}.estate-url{display:inline-block;font-size:12px;margin-top:25px;border-bottom:1px solid var(--line)}
@media(max-width:700px){.estate-feature{margin-top:40px;padding-top:28px}.estate-heading{display:block}.estate-heading .text-link{margin-top:15px}.estate-photos{grid-template-columns:1fr;gap:25px}}
