:root{color-scheme:light;--stone:#f6f2ec;--paper:#fcfaf7;--ink:#201c18;--muted:#5a534b;--rust:#93542b;--warm:#eadfd3;--line:rgba(32,28,24,.18);--serif:Jost,"Arial Narrow",sans-serif;--sans:"Nunito Sans",Arial,sans-serif;--gutter:clamp(22px,5vw,84px);--measure:1480px;scroll-behavior:smooth;scroll-padding-top:88px}
*{box-sizing:border-box}html{overflow-x:clip}body{margin:0;background:var(--stone);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65;overflow-x:clip}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.band:focus-visible,.rail-track:focus-visible{outline:2px solid var(--rust);outline-offset:4px}.skip{position:fixed;top:10px;left:10px;z-index:1000;padding:12px 18px;background:var(--paper);transform:translateY(-160%)}.skip:focus{transform:none}.mock-label{position:fixed;z-index:50;top:0;left:50%;transform:translateX(-50%);background:var(--rust);color:white;padding:2px 12px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;border-radius:0 0 3px 3px}.topbar{height:88px;position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:16px var(--gutter);color:white;transition:background .35s,color .35s,box-shadow .35s}.topbar.scrolled,.topbar.menu-open{background:rgba(246,242,236,.95);color:var(--ink);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}.brand{display:grid;grid-template-columns:22px auto;align-items:center;column-gap:9px;font:500 22px/1 var(--serif);white-space:nowrap}.brand b{font-weight:300}.brand small{grid-column:2;font:700 9px/1.4 var(--sans);letter-spacing:.19em;color:currentColor;opacity:.76}.tile{width:20px;height:20px;background:var(--rust);display:block;position:relative}.tile:after{content:"";position:absolute;inset:50% 0 auto;height:1px;background:#fff8}.topbar nav{display:flex;align-items:center;gap:clamp(18px,3vw,46px);font-size:13px}.topbar nav a,.top-phone{transition:opacity .2s}.topbar nav a:hover,.top-phone:hover{opacity:.7}.top-phone{font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px}.menu-toggle,.mobile-nav{display:none}
.hero{min-height:780px;height:min(100svh,1000px);position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#554f45;color:white;padding:0 var(--gutter) clamp(68px,8vh,104px)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,15,13,.56),rgba(16,15,13,.08) 78%),linear-gradient(0deg,rgba(16,15,13,.55),transparent 55%);pointer-events:none}.hero-image{position:absolute;inset:0;object-position:center 55%;transform:scale(1.06);animation:hero-settle 1.5s cubic-bezier(.2,.7,.15,1) forwards}.hero-grid,.quote-grid{position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(to right,rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.22) 1px,transparent 1px);background-size:clamp(75px,12vw,180px) clamp(75px,12vw,180px);mask-image:linear-gradient(90deg,#000,transparent 90%);opacity:0;animation:grid-draw 1.7s ease-out .1s forwards}.hero-copy{position:relative;z-index:2;max-width:1050px}.eyebrow,.section-index{font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.16em;text-transform:uppercase;color:var(--rust)}.eyebrow.light{color:#fff}.hero h1{font:300 clamp(55px,8vw,136px)/.98 var(--serif);letter-spacing:-.035em;margin:26px 0 25px;max-width:1100px}.hero h1 span{display:block;overflow:hidden;animation:rise-in .9s both}.hero h1 span:nth-child(2){animation-delay:.12s}.hero h1 span:nth-child(3){animation-delay:.24s}.hero h1 em,.manifesto h2 em,.section-intro h2 em,.gallery h2 em,.format-copy h2 em,.team-copy h2 em,.faq h2 em,.contact h2 em{font-style:normal;font-weight:500}.hero-copy>p:not(.eyebrow){max-width:520px;font-size:18px;line-height:1.5}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 25px;border:1px solid transparent;font-size:12px;font-weight:700;letter-spacing:.04em;transition:background .2s,color .2s,transform .2s}.button:active{transform:translateY(1px)}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:white}.text-link,.under-link{display:inline-flex;align-items:center;gap:12px;font-size:12px;font-weight:700}.text-link svg,.under-link svg,.band svg,.vw-reviews-all svg,.footer-bottom svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.light-link{color:white}.hero-note{position:absolute;z-index:2;left:var(--gutter);right:var(--gutter);bottom:22px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.scroll-cue{position:absolute;z-index:3;right:var(--gutter);bottom:68px;width:36px;height:36px;border:1px solid #ffffff88;border-radius:50%;display:grid;place-items:center}.scroll-cue span{height:9px;width:1px;background:white;animation:cue 1.5s infinite}.section-pad{padding:clamp(84px,11vw,168px) var(--gutter)}.manifesto{position:relative;display:grid;grid-template-columns:.8fr 1.3fr .8fr;gap:5vw;align-items:start;max-width:1600px;margin:auto;min-height:760px}.section-index{display:flex;gap:13px;align-items:center}.section-index span:first-child{color:var(--rust)}.section-index span:last-child{color:var(--muted);font-size:10px}.manifesto-body h2,.section-intro h2,.gallery h2,.format-copy h2,.team-copy h2,.faq h2,.contact h2{font:300 clamp(44px,5vw,84px)/1.03 var(--serif);letter-spacing:-.035em;margin:0}.manifesto-body>p{max-width:500px;color:var(--muted);margin:30px 0}.under-link{border-bottom:1px solid var(--rust);padding-bottom:8px;color:var(--rust)}.manifesto-detail{margin:108px 0 0;position:relative;z-index:1}.manifesto-detail img{aspect-ratio:4/5}.manifesto-detail figcaption,.format-photo figcaption{font-size:11px;color:var(--muted);padding-top:12px}.joint-mark{position:absolute;right:13%;bottom:8%;width:22vw;height:22vw;border:1px solid rgba(147,84,43,.28);background:linear-gradient(to right,transparent 49.8%,rgba(147,84,43,.3) 50%,transparent 50.2%),linear-gradient(to bottom,transparent 49.8%,rgba(147,84,43,.3) 50%,transparent 50.2%);transform:rotate(45deg);opacity:.5}.joint-mark i{position:absolute;inset:25%;border:1px solid rgba(147,84,43,.25)}.joint-mark i:nth-child(2){inset:37.5%}.joint-mark i:nth-child(3){inset:0 50%}.joint-mark i:nth-child(4){inset:50% 0}
.rooms{background:var(--paper)}.section-intro{max-width:var(--measure);margin:0 auto 70px;display:grid;grid-template-columns:1fr 1.3fr;column-gap:6vw;align-items:start}.section-intro .section-index{grid-column:1;grid-row:1}.section-intro h2{grid-column:2;grid-row:1/span 2}.section-intro>p{grid-column:1;max-width:360px;color:var(--muted);margin:26px 0 0}.bands{max-width:var(--measure);margin:auto;display:flex;flex-direction:column;gap:12px}.band{min-height:112px;padding:26px 30px;display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:22px;background:var(--stone);border:1px solid transparent;position:relative;overflow:hidden;transition:min-height .48s cubic-bezier(.2,.75,.2,1),background .3s,border-color .3s;cursor:pointer}.band.is-active{min-height:224px;background:var(--warm);border-color:#d9c9ba}.band-no{font-size:11px;color:var(--rust);align-self:start}.band-content h3{font:300 clamp(25px,3.2vw,45px)/1.05 var(--serif);letter-spacing:-.02em;margin:0}.band-content p,.band-content a{display:none}.band.is-active .band-content p{display:block;margin:16px 0 12px;color:var(--muted);font-size:14px}.band.is-active .band-content a{display:inline-flex;align-items:center;gap:8px;color:var(--rust);font-size:12px;font-weight:700}.band-word{font:300 clamp(23px,3vw,40px)/1 var(--serif);letter-spacing:.04em;color:#b9a99b;transition:opacity .2s}.band.is-active .band-word{opacity:.42}
.gallery{background:var(--stone);overflow:hidden}.gallery-heading{max-width:var(--measure);margin:0 auto 58px;display:grid;grid-template-columns:1fr 1fr auto;gap:5vw;align-items:end}.gallery-heading h2{margin-top:28px}.gallery-heading>p{max-width:350px;color:var(--muted);font-size:15px}.rail-controls{display:flex;gap:8px}.rail-controls button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;display:grid;place-items:center}.rail-controls button:hover{background:var(--warm)}.rail-controls svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.rail-outer{overflow:hidden;max-width:1600px;margin:auto}.rail-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;touch-action:pan-x;scroll-behavior:smooth;padding:2px 0 24px}.rail-track::-webkit-scrollbar{display:none}.rail-card{flex:0 0 min(32vw,450px);scroll-snap-align:start;margin:0}.rail-card-large{flex-basis:min(52vw,720px)}.rail-card img{height:auto;aspect-ratio:4/5;object-fit:cover}.rail-card-large img{aspect-ratio:1.34}.rail-card figcaption{padding-top:14px;display:flex;flex-direction:column;gap:2px}.rail-card figcaption span{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--rust)}.rail-card figcaption strong{font:400 19px/1.3 var(--serif)}.rail-progress{height:1px;background:var(--line);margin-top:20px}.rail-progress span{display:block;width:15%;height:2px;background:var(--rust);transform-origin:left;transform:scaleX(.1)}
.quote-break{min-height:620px;position:relative;background:var(--warm);display:grid;place-items:center;text-align:center;overflow:hidden;padding:80px var(--gutter)}.quote-grid{inset:8% 12%;opacity:.38;background-image:linear-gradient(to right,rgba(147,84,43,.16) 1px,transparent 1px),linear-gradient(to bottom,rgba(147,84,43,.16) 1px,transparent 1px);background-size:clamp(64px,9vw,130px);mask-image:none}.quote-inner{position:relative;z-index:2;max-width:1000px}.quote-inner .eyebrow{margin-bottom:28px}.quote-inner h2{font:300 clamp(48px,7.3vw,108px)/1.04 var(--serif);letter-spacing:-.035em;margin:0}.quote-inner h2 em{font-weight:500}.quote-credit{font-size:12px;color:var(--muted);margin-top:34px}
.large-format{display:grid;grid-template-columns:.55fr 1fr 1fr;gap:5vw;align-items:start}.format-copy h2{margin:0 0 28px}.format-copy>p{max-width:480px;color:var(--muted)}.format-copy ul{margin:30px 0 0;padding:0;list-style:none;border-top:1px solid var(--line);max-width:440px}.format-copy li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;display:flex;gap:20px}.format-copy li span{font-size:11px;color:var(--rust)}.format-photo{margin:80px 0 0}.format-photo img{aspect-ratio:4/5}.fullbleed{height:min(78vw,920px);min-height:420px;position:relative;overflow:hidden;clip-path:inset(0 7% round 0);transition:clip-path .9s cubic-bezier(.2,.7,.2,1)}.fullbleed img{transform:scale(1.08);transition:transform 1s}.fullbleed.is-wide{clip-path:inset(0 round 0)}.fullbleed.is-wide img{transform:scale(1)}.fullbleed:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(15,15,14,.48))}.fullbleed-caption{position:absolute;z-index:1;left:var(--gutter);right:var(--gutter);bottom:26px;color:white;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.method{background:var(--paper)}.method .section-intro{margin-bottom:45px}.method-layout{max-width:1120px;margin:0 auto;position:relative}.method-line{position:absolute;left:50%;top:18px;bottom:18px;width:1px;background:var(--line);transform:translateX(-50%)}.method-line span{display:block;width:100%;height:0;background:var(--rust);transition:height .12s}.method-list{list-style:none;padding:0;margin:0}.method-list li{min-height:230px;display:grid;grid-template-columns:1fr 70px 1fr;gap:30px;align-items:center;position:relative;border-bottom:1px solid var(--line)}.method-list li>div{grid-column:1}.method-list li:nth-child(even)>div{grid-column:3}.method-list li>figure{grid-column:3;grid-row:1;margin:22px 0;width:min(100%,300px);justify-self:start}.method-list li:nth-child(even)>figure{grid-column:1;justify-self:end}.method-list img{aspect-ratio:1.25}.method-no{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:40px;height:40px;border:1px solid var(--rust);border-radius:50%;display:grid;place-items:center;background:var(--paper);color:var(--rust);font-size:11px;z-index:2}.method-list h3{font:400 31px/1.15 var(--serif);margin:0 0 10px}.method-list p{font-size:14px;color:var(--muted);max-width:370px;margin:0}.method-note{grid-column:3;grid-row:1;font-size:12px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--rust)!important}.method-list li:nth-child(even) .method-note{grid-column:1;text-align:right}
.avis-section{background:var(--paper);padding:80px 0 100px}.vw-section{padding:0 var(--gutter)}.vw-wrap{max-width:var(--measure);margin:auto}.vw-heading-split{display:flex;justify-content:space-between;align-items:end;gap:30px}.vw-heading h2{font:300 clamp(44px,5vw,78px)/1.03 var(--serif);letter-spacing:-.035em;margin:0}.vw-reviews-all{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid var(--rust);padding-bottom:8px;color:var(--rust);font-size:12px;font-weight:700}.reviews-score{display:flex;align-items:baseline;gap:12px;margin:30px 0}.reviews-score strong{font:300 58px/1 var(--serif)}.reviews-score span{font-size:13px;color:var(--muted)}.vw-reviews{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.vw-review{padding:24px 22px;border-right:1px solid var(--line);min-width:0}.vw-review:first-child{padding-left:0}.vw-review:last-child{border-right:0;padding-right:0}.vw-review-head{display:flex;gap:11px;align-items:center}.vw-review-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:var(--warm);display:grid;place-items:center;color:var(--rust);font:500 16px var(--serif)}.vw-review-head p{display:flex;flex-direction:column;line-height:1.3;margin:0;min-width:0}.vw-review-head strong{font-size:12px}.vw-review-head p span{font-size:10px;color:var(--muted)}.vw-review-source{margin-left:auto;color:#4285f4;font-weight:700;font-family:Arial}.vw-review-stars{color:#aa6a31;font-size:13px;letter-spacing:1px;margin:17px 0 9px}.vw-review-text{font-size:13px;line-height:1.6;margin:0;min-height:150px}.vw-review-more{display:inline-block;margin-top:15px;font-size:11px;text-decoration:underline;text-underline-offset:3px}
.team{display:grid;grid-template-columns:.55fr 1.2fr .45fr;gap:5vw;align-items:start;background:var(--stone)}.team-copy .eyebrow{margin:0 0 22px}.team-copy h2{margin:0 0 26px}.team-copy>p:not(.eyebrow){max-width:570px;color:var(--muted)}.team-copy .under-link{margin-top:12px}.team-aside{display:flex;flex-direction:column;gap:9px;align-items:flex-start;margin-top:80px;color:var(--muted);font-size:12px}.team-year{font:300 64px/1 var(--serif);color:var(--rust)}.tile-small{width:44px;height:44px;margin-top:34px}
.faq{background:var(--paper);display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.faq .section-intro{display:block;margin:0}.faq .section-intro .section-index{margin-bottom:35px}.faq h2{margin-top:0}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;padding:21px 34px 21px 0;font:400 22px/1.35 var(--serif);position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span:before,.faq-list summary span:after{content:"";position:absolute;right:4px;top:50%;width:14px;height:1px;background:var(--rust)}.faq-list summary span:after{transform:rotate(90deg);transition:transform .2s}.faq-list details[open] summary span:after{transform:rotate(0)}.faq-list details p{max-width:620px;margin:0;padding:0 34px 22px 0;font-size:14px;color:var(--muted)}.faq-list details p a{color:var(--rust);text-decoration:underline}
.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;background:var(--warm)}.contact-info .section-index{margin-bottom:58px}.contact-info .eyebrow{margin-bottom:20px}.contact-info h2{margin-bottom:24px}.contact-info>p:not(.eyebrow){max-width:380px;color:var(--muted);margin-bottom:28px}.button-rust{background:var(--rust);color:white}.button-rust:hover{background:#75401f}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px;align-content:center}.contact-form label{font-size:11px;font-weight:700;letter-spacing:.04em;display:grid;gap:7px}.contact-form .wide{grid-column:1/-1}.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:48px;border:0;border-bottom:1px solid rgba(32,28,24,.35);border-radius:0;background:transparent;padding:10px 4px;color:var(--ink);font-size:15px}.contact-form textarea{resize:vertical}.contact-form button{justify-self:start;margin-top:4px;cursor:pointer}.form-status{align-self:center;font-size:11px;color:var(--muted);margin:4px 0}.footer{background:var(--ink);color:var(--paper);padding:52px var(--gutter) 22px}.footer-top,.footer-bottom{max-width:var(--measure);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand-footer{font-size:24px}.footer-top>p{font-size:12px;color:#d1c9c1}.footer-phone{font:300 clamp(22px,4vw,44px)/1 var(--serif)}.footer-bottom{margin-top:58px;padding-top:18px;border-top:1px solid #ffffff38;font-size:10px;color:#d1c9c1}.footer-bottom>a{display:flex;align-items:center;gap:8px}.footer-bottom svg{width:14px;height:14px}
.reveal-image{overflow:hidden}.reveal-image img{transform:scale(1.06);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.js .reveal-image img{clip-path:inset(0 100% 0 0);transition:clip-path 1s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.2,.7,.2,1)}.js .reveal-image.in-view img{clip-path:inset(0);transform:scale(1)}@keyframes rise-in{from{transform:translateY(110%);opacity:.25}to{transform:translateY(0);opacity:1}}@keyframes hero-settle{to{transform:scale(1)}}@keyframes grid-draw{0%{opacity:0;clip-path:inset(0 100% 0 0)}35%{opacity:.72}100%{opacity:0;clip-path:inset(0)}}@keyframes cue{50%{transform:translateY(5px)}}
@media(max-width:900px){.topbar nav,.top-phone{display:none}.topbar{height:76px}.menu-toggle{width:44px;height:44px;border:1px solid currentColor;background:transparent;color:inherit;border-radius:50%;display:grid;align-content:center;justify-content:center;gap:6px;cursor:pointer}.menu-toggle span{width:17px;height:1px;background:currentColor}.mobile-nav{display:flex;position:fixed;z-index:39;inset:0;background:var(--stone);padding:110px var(--gutter) 50px;flex-direction:column;gap:0;transform:translateY(-105%);transition:transform .45s cubic-bezier(.2,.7,.2,1)}.mobile-nav.open{transform:none}.mobile-nav a{font:300 clamp(30px,8vw,52px)/1.2 var(--serif);padding:14px 0;border-bottom:1px solid var(--line)}.mobile-nav a:last-child{margin-top:25px;border:0;color:var(--rust);font-size:21px}.hero{min-height:720px;height:100svh;padding-bottom:92px}.hero-copy{max-width:790px}.hero h1{font-size:clamp(58px,10vw,96px)}.manifesto{grid-template-columns:.55fr 1.2fr;min-height:auto}.manifesto-detail{grid-column:2;width:min(80%,400px);margin:48px 0 0 auto}.joint-mark{width:34vw;height:34vw;right:4%;bottom:3%}.section-intro{grid-template-columns:1fr 1.3fr}.band{grid-template-columns:40px 1fr auto}.gallery-heading{grid-template-columns:1fr 1fr;align-items:end}.rail-controls{grid-column:2;justify-self:end}.rail-card{flex-basis:42vw}.rail-card-large{flex-basis:62vw}.large-format{grid-template-columns:.5fr 1fr 1fr}.method-list li{grid-template-columns:1fr 60px 1fr}.vw-reviews{grid-template-columns:repeat(2,minmax(0,1fr))}.vw-review:nth-child(2){border-right:0;padding-right:0}.vw-review:nth-child(3){padding-left:0}.vw-review:nth-child(n+3){border-top:1px solid var(--line)}.vw-review-text{min-height:110px}.team{grid-template-columns:.5fr 1.4fr}.team-aside{grid-column:2;flex-direction:row;align-items:center;margin:10px 0 0}.tile-small{margin:0 0 0 24px}.faq{grid-template-columns:1fr;gap:50px}}
@media(max-width:600px){:root{--gutter:22px;scroll-padding-top:72px}body{font-size:16px}.brand{font-size:19px}.brand small{font-size:8px}.topbar{height:72px;padding-inline:var(--gutter)}.mock-label{font-size:9px}.hero{min-height:700px;height:100svh;padding:0 var(--gutter) 100px}.hero-image{object-position:55% center}.hero:after{background:linear-gradient(90deg,rgba(16,15,13,.35),rgba(16,15,13,.05)),linear-gradient(0deg,rgba(16,15,13,.62),transparent 72%)}.hero h1{font-size:clamp(51px,12.3vw,72px);margin:22px 0;letter-spacing:-.04em}.hero-copy>p:not(.eyebrow){font-size:16px;max-width:360px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px;margin-top:26px}.hero-note{left:var(--gutter);right:var(--gutter);font-size:8px;gap:15px}.hero-note span:last-child{text-align:right}.scroll-cue{display:none}.section-pad{padding:88px var(--gutter)}.manifesto{display:flex;flex-direction:column;gap:40px;min-height:0}.manifesto-body h2,.section-intro h2,.gallery h2,.format-copy h2,.team-copy h2,.faq h2,.contact h2{font-size:clamp(45px,11vw,64px)}.manifesto-body>p{font-size:15px;margin:22px 0}.manifesto-detail{width:86%;margin:0 0 0 auto}.joint-mark{width:48vw;height:48vw;right:auto;left:-8%;bottom:4%}.section-intro{display:block;margin-bottom:42px}.section-intro h2{margin-top:32px}.section-intro>p{font-size:14px;margin-top:18px}.bands{gap:8px}.band{min-height:82px;padding:17px 14px;grid-template-columns:30px minmax(0,1fr) auto;gap:12px}.band.is-active{min-height:180px}.band-content h3{font-size:29px}.band-content p{font-size:12px!important;line-height:1.45}.band-word{font-size:17px;writing-mode:vertical-rl;letter-spacing:.1em}.gallery-heading{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:32px}.gallery-heading h2{margin-top:25px}.gallery-heading>p{font-size:14px;margin:0;max-width:330px}.rail-controls{grid-column:1;justify-self:start}.rail-controls button{width:42px;height:42px}.rail-track{gap:14px;margin-right:calc(-1 * var(--gutter));padding-right:var(--gutter)}.rail-card,.rail-card-large{flex-basis:78vw}.rail-card img,.rail-card-large img{aspect-ratio:4/5}.rail-card figcaption strong{font-size:18px}.quote-break{min-height:490px;padding:70px 20px}.quote-grid{inset:7% 5%;background-size:68px}.quote-inner h2{font-size:clamp(43px,10.5vw,62px)}.quote-credit{font-size:11px}.large-format{display:flex;flex-direction:column;gap:32px}.large-format>.section-index{margin-bottom:10px}.format-copy h2{font-size:55px}.format-copy>p{font-size:15px}.format-photo{margin:0 0 0 auto;width:86%}.fullbleed{height:112vw;min-height:390px;clip-path:none!important}.fullbleed img{transform:none!important;object-position:55% center}.fullbleed-caption{left:var(--gutter);right:var(--gutter);bottom:18px;flex-direction:column;gap:5px;font-size:9px}.method .section-intro{margin-bottom:30px}.method-line{left:10px;transform:none}.method-list li,.method-list li:nth-child(even){display:flex;flex-direction:column;align-items:stretch;gap:15px;min-height:0;padding:10px 0 32px 38px}.method-no{left:10px;top:11px;width:22px;height:22px;transform:translateX(-50%);font-size:9px}.method-list h3{font-size:27px}.method-list p{font-size:13px}.method-list li>figure,.method-list li:nth-child(even)>figure{width:100%;margin:4px 0 0;justify-self:auto}.method-note,.method-list li:nth-child(even) .method-note{font-size:10px!important;text-align:left}.avis-section{padding:72px 0}.vw-heading-split{display:block}.vw-heading h2{font-size:49px}.vw-heading-split>p{margin:22px 0 0}.reviews-score{margin:24px 0}.reviews-score strong{font-size:50px}.vw-reviews{grid-template-columns:1fr}.vw-review,.vw-review:first-child,.vw-review:nth-child(2),.vw-review:nth-child(3),.vw-review:last-child{padding:22px 0;border-right:0;border-top:1px solid var(--line)}.vw-review:first-child{border-top:0}.vw-review-text{min-height:0;font-size:14px}.team{display:flex;flex-direction:column;gap:38px}.team-copy .eyebrow{margin-bottom:17px}.team-copy>p:not(.eyebrow){font-size:15px}.team-aside{margin:0;gap:12px}.team-year{font-size:52px}.tile-small{margin-left:auto}.faq{display:block}.faq .section-intro{margin:0 0 38px}.faq .section-intro .section-index{margin-bottom:27px}.faq-list summary{font-size:19px;padding:19px 28px 19px 0}.faq-list details p{font-size:13px}.contact{display:flex;flex-direction:column;gap:45px}.contact-info .section-index{margin-bottom:42px}.contact-info>p:not(.eyebrow){font-size:14px}.contact-form{grid-template-columns:1fr;gap:15px}.contact-form .wide{grid-column:auto}.contact-form button{width:100%}.form-status{margin:0}.footer{padding:42px var(--gutter) 20px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:24px}.brand-footer{grid-column:1/-1}.footer-top>p{margin:0}.footer-phone{font-size:27px}.footer-bottom{margin-top:36px;align-items:flex-start;flex-direction:column;gap:12px;font-size:9px}.footer-bottom>a{margin-top:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-grid{display:none}.hero-image{transform:none}.hero h1 span{animation:none}.reveal-image img,.js .reveal-image img,.js .reveal-image.in-view img{clip-path:none;transform:none}.fullbleed,.fullbleed img{clip-path:none!important;transform:none!important}.mobile-nav{transition:none}}
.contact-photo{grid-column:2;grid-row:1;margin:0}.contact-photo img{aspect-ratio:1.7}.contact-photo figcaption{font-size:10px;color:var(--muted);padding-top:7px}.contact-info{grid-column:1;grid-row:1/span 2}.contact-form{grid-column:2;grid-row:2}.exterior-duo{display:grid;grid-template-columns:1.12fr .76fr;gap:10vw;align-items:start;max-width:1320px;margin:auto}.exterior-duo figure{margin:0;will-change:transform}.exterior-duo figure:nth-child(2){margin-top:150px}.exterior-duo img{aspect-ratio:4/5}.exterior-duo figcaption{padding-top:13px;color:var(--muted);font-size:11px}
@media(max-width:600px){.contact{display:flex;flex-direction:column;gap:34px}.contact-info .section-index{margin-bottom:42px}.contact-form{grid-template-columns:1fr;gap:15px}.contact-form .wide{grid-column:auto}.contact-form button{width:100%}.exterior-duo{display:flex;flex-direction:column;gap:38px}.exterior-duo figure,.exterior-duo figure:nth-child(2){width:88%;margin:0}.exterior-duo figure:nth-child(2){align-self:flex-end}.exterior-duo img{aspect-ratio:4/5}}
html.js .quote-word{opacity:.08;transition:opacity .25s linear}@media(prefers-reduced-motion:reduce){html.js .quote-word{opacity:1!important}}
:root{--rust:#874522;--muted:#4e4841}
.manifesto{min-height:0;grid-template-columns:.7fr 1.3fr .8fr;padding-top:clamp(82px,9vw,132px);padding-bottom:clamp(82px,9vw,132px)}
.manifesto-detail{margin-top:24px}.manifesto-detail img{aspect-ratio:4/5}.manifesto-detail figcaption,.format-photo figcaption,.band-photo figcaption,.mosaic-art figcaption{color:#4e4841}
.rooms .section-intro h2,.gallery-heading h2,.method .section-intro h2,.faq h2{font-size:clamp(42px,5vw,78px);max-width:760px}
.bands{gap:10px}.band{grid-template-columns:34px minmax(110px,.72fr) minmax(0,1.3fr);gap:clamp(14px,2vw,30px);min-height:190px;padding:20px 24px;cursor:pointer;align-items:center;background:#f0e8de;border-color:#d9c9ba}.band.is-active{min-height:210px;background:#eadfd3}.band-photo{grid-column:2;grid-row:1;margin:0;width:100%;height:148px;overflow:hidden}.band-photo img{width:100%;height:100%;object-fit:cover}.band-content{grid-column:3}.band-content h3{font-size:clamp(24px,2.8vw,39px)}.band-content p{display:block;margin:10px 0;color:#4e4841;font-size:14px}.band-content a{display:inline-flex;align-items:center;gap:8px;color:var(--rust);font-size:12px;font-weight:700}.band-word{display:none!important}
.gallery{padding-right:0;padding-left:0}.gallery-heading{padding:0 var(--gutter);grid-template-columns:1fr auto;align-items:end}.gallery-heading h2{margin-top:25px}.gallery-heading>p{max-width:330px}.marquee-gallery{display:grid;gap:18px;overflow:hidden}.marquee-row{overflow-x:auto;scrollbar-width:none;overscroll-behavior-inline:contain;touch-action:pan-x;cursor:grab}.marquee-row:active{cursor:grabbing}.marquee-row::-webkit-scrollbar{display:none}.marquee-track{width:max-content;display:flex;gap:14px;padding:2px 14px}.gallery-card{display:block;flex:0 0 clamp(155px,21vw,320px);width:clamp(155px,21vw,320px);height:clamp(150px,18vw,250px);padding:0;border:0;background:#ded5cb;overflow:hidden;cursor:zoom-in}.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.gallery-card:hover img,.gallery-card:focus-visible img{transform:scale(1.035)}.marquee-row-two .marquee-track{direction:ltr}
.lightbox{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;border:0;padding:70px 78px;background:rgba(25,22,19,.96);color:#fff;place-items:center;overflow:hidden}.lightbox[open]{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:18px}.lightbox::backdrop{background:transparent}.lightbox figure{margin:0;display:grid;place-items:center;min-width:0;min-height:0;height:100%;width:100%;gap:14px}.lightbox figure img{width:auto;height:auto;max-width:100%;max-height:calc(100vh - 126px);object-fit:contain}.lightbox-count{font-size:13px;color:#fff}.lightbox-close,.lightbox-prev,.lightbox-next{border:1px solid #ffffff72;color:white;background:#322e2a;border-radius:50%;display:grid;place-items:center;cursor:pointer}.lightbox-close{position:absolute;top:20px;right:22px;width:48px;height:48px;font-size:25px}.lightbox-prev,.lightbox-next{width:48px;height:48px}.lightbox-prev svg,.lightbox-next svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}.lightbox button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.quote-break{background:#eadfd3;color:#201c18}.quote-inner h2,.quote-credit,.quote-inner .eyebrow{color:#201c18}.quote-credit{font-weight:700}.quote-word{color:#201c18}
.mosaic-feature{display:grid;grid-template-columns:.55fr 1fr 1fr;gap:5vw;align-items:start;background:var(--paper)}.mosaic-copy h2{font:300 clamp(42px,5vw,78px)/1.03 var(--serif);letter-spacing:-.035em;margin:0}.mosaic-copy p{max-width:420px;color:var(--muted)}.mosaic-art{position:relative;grid-column:3;margin:0;aspect-ratio:3/3.58;overflow:hidden;background:#d9d3cb}.mosaic-art>img{width:100%;height:100%;object-fit:cover}.mosaic-art figcaption{position:absolute;left:12px;bottom:10px;background:#fcfaf7e8;padding:4px 8px;font-size:11px}.mosaic-tiles{position:absolute;inset:0;display:grid;grid-template-columns:repeat(24,minmax(0,1fr));grid-template-rows:repeat(32,minmax(0,1fr));overflow:hidden}.mosaic-tile{background-repeat:no-repeat;opacity:0;transform:scale(.82);animation:mosaic-tile-in .42s cubic-bezier(.18,.72,.25,1) forwards;animation-delay:var(--delay)}@keyframes mosaic-tile-in{to{opacity:1;transform:scale(1)}}.mosaic-art.is-mosaicking>img{opacity:0}.method-list li{min-height:185px}.method-list li>figure{width:min(100%,290px)}.method-list li>figure img{aspect-ratio:1.3;object-fit:cover}.method-list li>div{padding:30px 0}.team{min-height:0}.team-copy h2{font-size:clamp(42px,5vw,78px)}.contact h2{font-size:clamp(42px,5vw,78px)}
@media(max-width:900px){.manifesto{grid-template-columns:1fr 1.5fr;gap:28px}.manifesto-detail{grid-column:2;margin:0}.mosaic-feature{grid-template-columns:1fr 1fr;gap:28px}.mosaic-feature>.section-index{grid-column:1/-1}.mosaic-art{grid-column:2;grid-row:2}.mosaic-copy{grid-column:1;grid-row:2}.lightbox{padding:70px 12px}.lightbox[open]{grid-template-columns:42px minmax(0,1fr) 42px;gap:5px}.lightbox-prev,.lightbox-next{width:40px;height:40px}.lightbox figure img{max-height:calc(100vh - 144px)}}
@media(max-width:600px){.manifesto{grid-template-columns:1fr;gap:22px}.manifesto-body,.manifesto-detail{grid-column:1}.manifesto-detail{width:78%;justify-self:end}.section-intro{grid-template-columns:1fr;gap:20px}.section-intro .section-index,.section-intro h2,.section-intro>p{grid-column:1;grid-row:auto}.section-intro h2{font-size:46px}.band{grid-template-columns:26px minmax(92px,.85fr) minmax(0,1.25fr);gap:10px;padding:12px;min-height:142px}.band.is-active{min-height:154px}.band-photo{height:112px}.band-content h3{font-size:clamp(17px,5vw,23px);line-height:1.08}.band-content p{font-size:11px;line-height:1.4;margin:6px 0}.band-content a{font-size:11px}.gallery-heading{grid-template-columns:1fr;gap:6px}.gallery-heading h2{font-size:46px}.gallery-heading>p{margin:0}.marquee-gallery{gap:10px}.marquee-track{gap:9px;padding-inline:9px}.gallery-card{flex-basis:clamp(148px,46vw,220px);width:clamp(148px,46vw,220px);height:clamp(148px,42vw,190px)}.lightbox{padding:70px 7px 24px}.lightbox[open]{grid-template-columns:34px minmax(0,1fr) 34px;gap:3px}.lightbox-prev,.lightbox-next{width:32px;height:32px}.lightbox-prev svg,.lightbox-next svg{width:18px;height:18px}.lightbox-close{top:12px;right:12px;width:42px;height:42px}.lightbox figure img{max-width:100%;max-height:calc(100vh - 148px)}.lightbox-count{font-size:12px}.mosaic-feature{grid-template-columns:1fr;gap:18px}.mosaic-feature>.section-index,.mosaic-copy,.mosaic-art{grid-column:1;grid-row:auto}.mosaic-art{width:100%;aspect-ratio:3/3.6}.method .section-intro{display:block}.method .section-intro h2{margin-top:20px}.method-list li{grid-template-columns:42px 1fr;gap:8px;min-height:0;padding:18px 0}.method-list li>div,.method-list li:nth-child(even)>div{grid-column:2;grid-row:auto;padding:8px 0}.method-list li>figure,.method-list li:nth-child(even)>figure{grid-column:2;grid-row:auto;width:100%;justify-self:start;margin:0 0 8px}.method-no{left:20px;top:28px;width:36px;height:36px}.method-line{left:20px}.method-list h3{font-size:26px}.team{grid-template-columns:1fr;gap:24px}.team-aside{margin:0}.quote-break{min-height:430px;padding:60px 22px}.quote-inner h2{font-size:clamp(40px,11vw,64px)}}
@media(max-width:360px){.band{grid-template-columns:22px 82px minmax(0,1fr);gap:7px;padding:10px}.band-photo{height:98px}.band-content h3{font-size:17px}.band-content p{font-size:10px}.band-content a{font-size:10px}.gallery-card{flex-basis:144px;width:144px;height:146px}.lightbox[open]{grid-template-columns:28px minmax(0,1fr) 28px}.lightbox-prev,.lightbox-next{width:28px;height:28px}}
@media(prefers-reduced-motion:reduce){.gallery-card img,.mosaic-tile{animation:none!important;transition:none!important}.mosaic-tile{opacity:1;transform:none}.mosaic-art.is-mosaicking>img{opacity:1}.reveal-image img{clip-path:none!important;transform:none!important}.fullbleed,.fullbleed img{transition:none!important}}
/* Direct readable quote text; fade-in remains tied to the existing scroll reveal. */
.js .quote-word{opacity:1!important;color:#201c18!important}
@media(max-width:600px){.hero h1{font-size:clamp(46px,13vw,72px)}.marquee-row-two .marquee-track{direction:ltr}}
