/* Motion and expanded editorial chapters. */
.wordmark{font-size:2.55rem;letter-spacing:-.085em}.nav-links{gap:27px}.section{padding-top:125px;padding-bottom:125px}.studio{padding-top:135px;padding-bottom:135px}.work{padding-top:120px}.hero-content>*{animation:intro-rise 800ms var(--ease) both}.hero-content>:nth-child(2){animation-delay:60ms}.hero-content>:nth-child(3){animation-delay:120ms}.hero-content>:nth-child(4){animation-delay:180ms}.nav{animation:intro-rise 700ms var(--ease) both}.hero-bottom{animation:intro-rise 800ms 240ms var(--ease) both}.hero-image{animation:hero-settle 1500ms var(--ease) both}@keyframes intro-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-settle{from{transform:scale(1.065)}to{transform:scale(1)}}
.reveal{transition:opacity 650ms var(--ease),transform 650ms var(--ease)}.reveal.pending{opacity:0;transform:translateY(32px)}.pill,.nav-contact{position:relative;overflow:hidden}.pill:before,.nav-contact:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,#ffffff38 50%,transparent 80%);transform:translateX(-150%);pointer-events:none;transition:transform 500ms var(--ease)}.circle-icon,.round-arrow,.teaser-arrow,.nav-contact>span{transition:transform 220ms var(--ease),background-color 220ms ease}.text-button{position:relative;border-bottom:1px solid #26332e40}.text-button:after{content:'';height:1px;position:absolute;bottom:-1px;left:0;right:0;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--ease)}
.cinematic{height:250svh;position:relative;background:#25352e;color:white}.cinematic-stage{position:sticky;top:0;height:100svh;min-height:590px;overflow:hidden;isolation:isolate}.cinematic-poster,#drone-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}#drone-film{opacity:0;transition:opacity 300ms ease}.cinematic.ready #drone-film{opacity:1}.film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#14272085,transparent 85%),linear-gradient(0deg,#10292355,transparent 45%);z-index:-1}.film-top{position:absolute;top:45px;left:6.2%;right:6.2%;display:flex;justify-content:space-between;align-items:center;gap:20px}.film-skip{font-size:.8125rem;padding:10px 0}.film-title{position:absolute;left:6.2%;top:23%;will-change:opacity,transform}.film-title h2{font-size:clamp(4rem,7.8vw,8.2rem);line-height:1.04;margin:22px 0}.film-title>p:last-child{font-size:1rem;line-height:1.6}.film-controls{position:absolute;left:6.2%;right:6.2%;bottom:40px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px 35px;padding:25px 28px;border-radius:20px;background-color:#203c2d30}.film-control-copy{display:flex;flex-direction:column;gap:5px}.film-control-copy strong{font-weight:400;font-size:1rem}.film-control-copy .eyebrow{font-size:.625rem;opacity:.8}#film-play{background:#ffffffeb;color:var(--ink);border-radius:30px;padding:12px 20px;display:flex;align-items:center;gap:25px;font-size:.875rem}#film-progress{grid-column:1;appearance:none;-webkit-appearance:none;height:3px;padding:0;margin:0;border:0;border-radius:2px;background:#ffffff55;cursor:pointer;width:100%;accent-color:white;min-height:3px;outline-offset:10px}#film-progress::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:14px;height:14px;background:white;border-radius:50%;box-shadow:0 0 0 6px #ffffff20}#film-progress::-moz-range-thumb{width:14px;height:14px;background:white;border:0;border-radius:50%}#film-position{font-variant-numeric:tabular-nums;font-size:.75rem;text-align:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cinematic.unavailable{height:100svh}.cinematic.unavailable #film-progress,.cinematic.unavailable #film-play,.cinematic.unavailable #film-position{display:none}
.interiors{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center;padding-top:45px}.interior-photo{position:relative;overflow:hidden;border-radius:16px;height:650px}.interior-photo img{height:100%;object-position:45% center}.interior-caption{position:absolute;left:20px;right:20px;bottom:20px;color:white;padding:17px 22px;font-size:.8125rem;border-radius:13px;background-color:#20302825}.interior-copy h2{font-size:clamp(2.9rem,4.5vw,4.7rem);margin:24px 0 30px}.interior-copy>p:not(.eyebrow){color:var(--muted);margin-bottom:20px}.interior-copy .text-button{margin-top:15px}.materials{background:#e5e8e1;max-width:none}.materials-heading,.material-grid{max-width:1400px;margin:auto}.materials-heading{display:grid;grid-template-columns:1fr 2fr;gap:20px;align-items:start}.materials-heading h2{font-size:clamp(2.8rem,4.4vw,4.5rem)}.materials-heading>p:last-child{grid-column:2;color:var(--muted)}.material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:60px}.material-image{height:340px;overflow:hidden;border-radius:13px;position:relative}.material-image img{position:absolute;width:100%;height:100%;object-fit:cover;max-width:none}.stone img{width:480%;height:400%;left:-65%;top:-20%}.wood img{width:620%;height:360%;left:-15%;top:-16%}.glass-material img{width:400%;height:280%;left:-260%;top:-75%}.material-number{position:absolute;top:18px;left:18px;display:grid;place-items:center;width:41px;height:41px;border-radius:50%;color:white;font-size:.75rem;background-color:#22382c25}.material-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:25px 0 14px}.material-caption h3{font:400 1.8rem 'Manrope',sans-serif;letter-spacing:-.04em}.material-caption span{font-size:.75rem;color:var(--muted)}.material-card>p{color:var(--muted);font-size:.9375rem;max-width:360px}.approach{border-top:0}.process{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;border-top:1px solid var(--line)}.process h2{font-size:clamp(2.7rem,3.7vw,4rem);margin-top:25px}.process details{border-bottom:1px solid var(--line)}.process summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:25px;padding:25px 0}.process summary::-webkit-details-marker{display:none}.process summary>span:first-child{font-size:.75rem;color:var(--muted)}.process h3{font-size:1.2rem;font-weight:450;letter-spacing:-.025em}.disclosure-icon{margin-left:auto;font-size:1.5rem;font-weight:300;transition:transform 180ms var(--ease)}details[open] .disclosure-icon{transform:rotate(45deg)}.process-content{padding:0 0 27px 43px}.process-content p{font-size:.9375rem;color:var(--muted);max-width:460px}.process-content>span{display:block;margin-top:22px;font-size:.6875rem;letter-spacing:.035em}.process summary:focus-visible{outline:2px solid #829d80;outline-offset:6px;border-radius:4px}.contact{padding-top:95px;padding-bottom:95px}.contact-inner{padding:85px 65px}.contact h2{font-size:clamp(3rem,5.6vw,5.8rem)}footer .wordmark{font-size:2.4rem}
@media(hover:hover) and (pointer:fine){.pill:hover:before,.nav-contact:hover:before{transform:translateX(150%)}.pill:hover .circle-icon,.featured-work:hover .round-arrow{transform:rotate(45deg)}.project-teaser:hover .teaser-arrow,.nav-contact:hover>span{transform:translate(3px,-3px)}.text-button:hover:after{transform:scaleX(1)}.text-button:hover{opacity:1}}
@media(max-width:1000px){.nav-links{gap:18px;font-size:.8125rem}.interiors{gap:6%}.interior-photo{height:530px}.material-image{height:280px}.material-caption{align-items:flex-start;flex-direction:column;gap:7px}.process{gap:6%}}
@media(max-width:700px){.wordmark{font-size:2.2rem}.section,.studio{padding-top:78px;padding-bottom:78px}.work{padding-top:80px}.cinematic{height:200svh}.cinematic-stage{min-height:640px}.film-top{top:26px;left:7%;right:7%;align-items:flex-start}.film-top .eyebrow{font-size:.625rem;max-width:200px}.film-skip{white-space:nowrap;font-size:.75rem;padding:0}.film-title{left:7%;top:24%;right:7%}.film-title .eyebrow{font-size:.625rem}.film-title h2{font-size:3.8rem}.film-controls{left:5%;right:5%;bottom:26px;padding:21px 19px;gap:20px 12px}.film-control-copy strong{font-size:.8125rem;max-width:180px;line-height:1.5}#film-play{padding:11px 14px;gap:10px;font-size:.75rem}.interiors{display:flex;flex-direction:column;padding-top:15px;gap:38px}.interior-photo{height:450px;width:100%}.interior-copy h2{font-size:3.2rem}.materials-heading{display:block}.materials-heading h2{font-size:2.7rem;margin:22px 0}.material-grid{grid-template-columns:1fr;margin-top:36px;gap:38px}.material-image{height:330px}.material-caption{flex-direction:row;align-items:center;padding-top:19px}.material-card>p{max-width:none}.process{display:block}.process h2{font-size:2.7rem}.process-list{margin-top:35px}.process summary{gap:18px}.process h3{font-size:1.05rem}.process-content{padding-left:36px}.contact{padding:28px 5%}.contact-inner{padding:42px 25px}.contact h2{font-size:2.7rem}footer .wordmark{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.cinematic{height:100svh}.film-title{transform:none!important;opacity:1!important}.reveal.pending{opacity:1;transform:none}.hero-content>*,.hero-image,.nav,.hero-bottom{animation:none!important}.reveal,.circle-icon,.round-arrow,.teaser-arrow,.pill:before,.nav-contact:before,.text-button:after,.disclosure-icon{transition:none!important}}

/* The opening unfolds as a layered scene, then returns to natural page scrolling. */
.opening-sequence{position:relative;isolation:isolate}
.opening-sequence .hero{position:sticky;top:0;z-index:0}
.opening-sequence .studio{position:relative;z-index:1;margin-top:-32px;max-width:none;min-height:88svh;align-items:center;border-radius:32px 32px 0 0;background:rgba(243,243,239,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 -18px 70px #16282212;padding-top:140px;padding-bottom:140px}
.opening-sequence .section-label{align-self:start;padding-top:12px}
.hero-content,.hero-bottom{will-change:opacity,transform}
.hero-content .pill{animation-fill-mode:backwards}
.reveal{transition:opacity 800ms var(--ease),transform 800ms var(--ease),filter 800ms var(--ease)}
.reveal.pending{opacity:0;transform:translateY(42px);filter:blur(7px)}
.reveal-heading .reveal-word{display:inline-block;opacity:1;filter:blur(0);transform:translateY(0);transition:opacity 850ms var(--ease),transform 850ms var(--ease),filter 850ms var(--ease)}
.reveal-heading.pending .reveal-word{opacity:0;filter:blur(10px);transform:translateY(38px)}
.pill,.nav-contact,.text-button,.project-teaser,.close-dialog{transition:transform 220ms var(--ease),background-color 180ms ease,box-shadow 220ms ease}
.text-button{transform-origin:left center}
.process-content{padding-left:0}
.principles article{gap:0}
@media(hover:hover) and (pointer:fine){
  .pill:hover,.nav-contact:hover{transform:scale(1.075);box-shadow:0 10px 30px #10281c26}
  .text-button:hover{transform:scale(1.055)}
  .project-teaser:hover{transform:scale(1.035);box-shadow:0 12px 35px #10281c25}
  .close-dialog:hover{transform:scale(1.1)}
  .pill:active,.nav-contact:active,.text-button:active,.project-teaser:active,.close-dialog:active{transform:scale(.97)}
}
@media(max-width:700px){
  .opening-sequence .studio{min-height:85svh;padding-top:85px;padding-bottom:95px;border-radius:25px 25px 0 0;margin-top:-25px}
  .opening-sequence .section-label{padding-top:0}
  .reveal-heading.pending .reveal-word{transform:translateY(26px)}
  .process-content{padding-left:0}
}
@media(prefers-reduced-motion:reduce){
  .opening-sequence .hero{position:relative}
  .reveal.pending,.reveal-heading.pending .reveal-word{opacity:1;filter:none;transform:none}
  .reveal,.reveal-heading .reveal-word{transition:none!important}
  .hero-content,.hero-bottom{opacity:1!important;transform:none!important}
  .hero-image{scale:1!important}
  .pill:hover,.nav-contact:hover,.text-button:hover,.project-teaser:hover,.close-dialog:hover{transform:none!important}
}
.keyboard-mode .reveal.pending,.keyboard-mode .reveal-heading.pending .reveal-word{opacity:1;filter:none;transform:none}

.hero-bottom{animation-fill-mode:backwards}
