:root{--ink:#182f4c;--blue:#b1d3f0;--orange:#f6a01e;--paper:#f8f8f8;--line:#182f4c30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:6px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bc5c00}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;line-height:1.12;letter-spacing:-.055em}h1{font-size:clamp(42px,6.2vw,96px)}h2{font-size:clamp(32px,4vw,60px)}h3{font-size:23px;letter-spacing:-.03em}h1 span,h2 span{color:#a84d00}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:600;line-height:1.8;text-transform:uppercase}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:sticky;top:0;background:#f8f8f8f5;z-index:20;border-bottom:1px solid var(--line)}header img{width:155px;height:auto}nav{display:flex;gap:42px;font-size:12px}nav a:hover,.text-link:hover{color:#a84d00}nav span{padding-left:22px}.menu-toggle{display:none}.progress{position:fixed;top:86px;left:0;height:2px;background:var(--orange);width:0;z-index:30}.skip{position:fixed;top:-90px;background:white;z-index:40;padding:12px}.skip:focus{top:0}.chapters{position:fixed;right:20px;top:43%;z-index:15;display:flex;flex-direction:column;gap:17px}.chapters a{font-size:9px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.chapters a span{opacity:0;background:var(--paper);padding:2px 5px}.chapters a:hover span,.chapters a.active span{opacity:1}.chapters a:after{content:'';width:5px;height:5px;border:1px solid var(--ink);border-radius:50%}.chapters a.active:after{background:var(--ink)}.home-hero{position:relative;display:grid;grid-template-columns:48% 52%;min-height:calc(100svh - 88px);padding-bottom:52px;background:var(--blue)}.hero-copy{padding:9vh 0 5vh 12.5%;position:relative;z-index:2}.hero-copy h1{font-size:clamp(48px,6.6vw,102px);position:relative;width:125%;margin:45px 0 75px}.hero-copy h1 span{font-size:17px;vertical-align:top;margin-left:10px;color:var(--ink)}.hero-bottom{display:flex;align-items:center;gap:40px;font-size:12px}.round-link{display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;width:58px;height:58px;font-size:26px;flex-shrink:0}.round-link:hover{background:var(--orange)}.hero-photo{padding:40px 8% 0 9%;position:relative}.hero-photo img{height:100%;max-height:66vh;min-height:400px;width:100%;object-fit:cover}.hero-photo>span{display:block;font-size:8px;letter-spacing:.15em;margin-top:12px}.hero-strip{position:absolute;bottom:0;width:100%;height:52px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 6%;font-size:9px;letter-spacing:.14em}.intro{padding:140px 9% 140px 6%;display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:40px;align-items:start}.intro h2{font-size:clamp(36px,4vw,65px)}.lead{font-size:22px;line-height:1.5;letter-spacing:-.025em}.text-link{display:inline-block;border-bottom:1px solid;padding:10px 0;font-size:12px}.work,.catalog{padding:100px 8% 100px 6%}.work{background:#eeefed}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:45px}.section-head h2{margin-bottom:0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px 35px}.project:nth-child(even){padding-top:80px}.photo{overflow:hidden;position:relative}.photo img{width:100%;aspect-ratio:1.45;object-fit:cover;transition:transform .7s}.photo:hover img{transform:scale(1.035)}.circle{position:absolute;right:20px;bottom:20px;display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:var(--paper);font-size:23px}.project-meta{padding-top:20px;display:flex;justify-content:space-between;gap:15px}.project-meta h3{max-width:70%;margin:0}.project-meta>span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding-top:5px;white-space:nowrap}.story{background:var(--ink);color:var(--blue);display:grid;grid-template-columns:1fr 1fr;padding:0 9% 0 6%;gap:12%}.sticky-visual{position:sticky;top:130px;height:70vh;padding-top:50px}.sticky-visual svg{height:45vh;width:100%;transition:transform 1s}.sticky-visual[data-state="1"] svg{transform:rotate(-5deg)}.sticky-visual[data-state="2"] .plan-detail{fill:var(--orange);fill-opacity:.25}.sticky-visual>p:last-child{font-size:12px}.story-steps article{min-height:80vh;display:flex;flex-direction:column;justify-content:center}.story-steps p{max-width:360px}.button{border:0;background:var(--ink);color:white;padding:18px 26px;display:inline-block;width:fit-content;font-size:12px;transition:background .2s}.button:hover{background:#345777}.story .button{background:var(--blue);color:var(--ink)}.contact{background:var(--blue);padding:110px 9% 110px 6%;display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:60px}.contact .text-link{display:block;width:fit-content;margin-top:20px}.contact h2{margin:0}.contact>div>p{max-width:350px}footer{padding:55px 6% 22px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:35px}footer img{width:170px;height:auto}footer>div{display:flex;gap:30px;font-size:11px}footer p{width:100%;border-top:1px solid var(--line);padding-top:25px;font-size:10px;margin:0}.catalog{padding-top:70px}.catalog h1{max-width:1000px}.filters{display:flex;flex-wrap:wrap;gap:12px;margin:40px 0 55px}.filters button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:8px 20px;font-size:11px;color:var(--ink)}.filters button[aria-pressed="true"]{background:var(--ink);color:white}.project[hidden]{display:none}.project-hero{display:grid;grid-template-columns:45% 55%;padding:55px 6% 70px;background:var(--blue);gap:30px;align-items:center;min-height:80vh}.project-hero h1{font-size:clamp(40px,5vw,74px);margin:35px 0}.project-hero>img{width:100%;height:60vh;object-fit:cover}.project-intro{display:grid;grid-template-columns:.7fr 1.3fr 1fr;padding:110px 8% 110px 6%;gap:40px}.project-intro h2{font-size:40px}.gallery{padding:50px 8% 100px 6%}.gallery .section-head p{font-size:11px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.gallery-item{margin:0}.gallery-item:nth-child(5n+1){grid-column:1/-1}.gallery-item img{width:100%;max-height:760px;object-fit:contain;background:#eceeeb}.gallery-item a{cursor:zoom-in}.gallery-item figcaption{font-size:9px;letter-spacing:.07em;margin-top:10px}.next{padding:80px 6%;border-top:1px solid var(--line)}.next h2{max-width:80%}.contact-page{padding:70px 8% 100px 6%;display:grid;grid-template-columns:1.25fr 1fr;gap:10%}.contact-page h1{font-size:clamp(40px,5vw,78px)}.contact-details{margin-top:50px}.contact-details a{display:block;padding:20px 0;border-bottom:1px solid var(--line);font-size:17px;overflow-wrap:anywhere}.contact-details small{display:block;font-size:9px;letter-spacing:.14em;margin-bottom:5px}form{padding:35px;background:var(--blue);align-self:start}form h2{font-size:32px}label{display:block;font-size:11px;margin:20px 0}input,textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid var(--ink);padding:10px 0;border-radius:0;color:var(--ink)}form p{font-size:11px}dialog{border:0;padding:50px 20px 20px;background:var(--paper);max-width:95vw;max-height:95vh}dialog::backdrop{background:#142437e8}dialog img{max-height:78vh;margin:auto;object-fit:contain}.close{position:absolute;top:10px;right:15px;border:0;background:transparent}.reveal{animation:appear .8s both}@keyframes appear{from{opacity:.5;transform:translateY(20px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:800px){header{height:74px;padding:0 6%}.progress{top:72px}.menu-toggle{display:block;border:0;background:none;color:var(--ink)}nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:25px 6%;flex-direction:column;gap:20px}nav.open{display:flex}.chapters{display:none}.home-hero{display:flex;flex-direction:column;padding-bottom:65px}.hero-copy{padding:45px 6% 25px}.hero-copy h1{width:100%;font-size:clamp(45px,10vw,75px);margin:30px 0}.hero-bottom{justify-content:space-between}.hero-photo{padding:0 6% 35px}.hero-photo img{height:45vh;min-height:250px;max-height:none}.hero-strip{font-size:7px;gap:20px;height:60px}.intro,.project-intro{grid-template-columns:1fr;padding:70px 6%;gap:20px}.intro h2{font-size:45px}.work,.catalog{padding:60px 6%}.section-head{display:block}.section-head .text-link{margin-top:20px}.project-grid{gap:40px 20px}.project:nth-child(even){padding-top:0}.project-meta{display:block}.project-meta h3{max-width:100%;font-size:19px;margin-bottom:10px}.project-meta>span{font-size:8px}.photo img{aspect-ratio:1}.circle{width:30px;height:30px;right:10px;bottom:10px;font-size:18px}.story{display:block;padding:45px 6%}.sticky-visual{position:relative;top:0;height:auto;padding:0}.sticky-visual svg{height:260px}.story-steps article{min-height:0;padding:50px 0;border-top:1px solid #b1d3f050}.contact{grid-template-columns:1fr;padding:70px 6%;gap:35px}.project-hero{display:flex;flex-direction:column;align-items:stretch;padding:40px 6%}.project-hero>img{height:40vh}.gallery{padding:20px 6% 60px}.gallery-grid{gap:25px}.gallery-item:nth-child(n){grid-column:1/-1}.contact-page{grid-template-columns:1fr;padding:45px 6%;gap:45px}form{padding:25px}.next{padding:55px 6%}.next h2{max-width:100%}footer>div{gap:22px}footer p{line-height:1.8}}@media(max-width:450px){.project-grid{grid-template-columns:1fr}.photo img{aspect-ratio:1.4}.project-meta{display:flex}.project-meta h3{max-width:70%}}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/montserrat-0.woff2) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/montserrat-1.woff2) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/montserrat-2.woff2) format('truetype');
}

header>a,footer>a{background:var(--ink);padding:12px 18px;}header img{width:140px} @supports(animation-timeline:view()){.reveal{animation:appear linear both;animation-timeline:view();animation-range:entry 0% entry 30%}} @view-transition{navigation:auto}
/* Shared hero/header canvas across all pages. */
header{position:fixed;inset:0 0 auto;background:transparent;border-bottom-color:transparent;transition:background .25s,border-color .25s,box-shadow .25s}
header>a{background:transparent;padding:12px 0}
header img{filter:brightness(.28) saturate(.8)}
header.is-scrolled{background:var(--paper);border-bottom-color:var(--line);box-shadow:0 4px 20px #182f4c08}
.home-hero{min-height:100svh;padding-top:88px}
.project-hero{padding-top:143px;min-height:calc(80vh + 88px)}
.catalog,.contact-page{padding-top:158px}
@media(max-width:800px){.home-hero{padding-top:74px}.project-hero{padding-top:114px;min-height:0}.catalog{padding-top:134px}.contact-page{padding-top:119px}nav{background:var(--paper);border-bottom:1px solid var(--line)}}
