/* Final editorial refinements. Content stays visible if JavaScript is unavailable. */
html{scroll-padding-top:100px}
.site-brand,.site-header.is-scrolled .site-brand{width:190px;height:48px}
.site-header{grid-template-columns:200px 1fr auto;animation:none}
.site-header:focus-within{transform:none;opacity:1;pointer-events:auto}
.site-header.is-scrolled{background:rgba(8,9,9,.62)}
.mobile-menu{visibility:hidden}.mobile-menu.is-open{visibility:visible}
.about-title{max-width:1080px;margin:0 0 70px;font-size:clamp(40px,5.3vw,80px)}
.about-layout{grid-template-columns:1.15fr 1fr;gap:7vw}
.about-media{min-height:540px}.about-copy{padding:0}
.about-copy .copy{font-size:clamp(17px,1.45vw,22px)}
.value-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.value-item{padding:30px 22px;border-bottom:0!important;border-right:1px solid var(--line)!important}
.value-item:last-child{border-right:0!important}.value-item:before{background:#fff}
.value-item:focus-visible:before{transform:none}.value-item:focus-visible h3{color:#111}.value-item:focus-visible p{color:#555}
.value-item h3{font-size:clamp(19px,2vw,29px)}
.lightbox:not(.is-open){visibility:hidden}.lightbox.is-open{visibility:visible}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.gallery-card:focus-visible{outline-offset:-5px}
.loader__word{letter-spacing:.025em;font-weight:400}.loader__subtitle{letter-spacing:.35em}
.hero__scroll{bottom:18px}.hero__headline{line-height:.88}
@media(max-width:1100px) and (min-width:981px){.site-nav{gap:15px;padding:0}.site-header{grid-template-columns:170px 1fr auto}.site-brand{width:160px}.header-cta{padding:0 15px}}
@media(max-width:980px){.site-header{grid-template-columns:1fr auto}.site-brand,.site-header.is-scrolled .site-brand{width:165px;height:44px}.about-layout{grid-template-columns:1fr}.about-media{order:0}.about-copy{order:1}.value-grid{overflow-x:auto;grid-template-columns:repeat(5,minmax(190px,1fr))}.value-item{min-height:310px}.about-title{margin-bottom:40px}}
@media(max-width:650px){.hero__headline{font-size:clamp(48px,13.7vw,82px);line-height:.94;letter-spacing:-.065em}.hero__content{padding-top:145px;justify-content:center;min-height:100svh}.hero__eyebrow{font-size:8px;line-height:1.8;max-width:290px}.hero__intro{font-size:14px}.hero__signature{font-size:8px;line-height:1.6}.about-media{min-height:440px}.about-title{font-size:39px}.team-head{gap:15px;flex-wrap:wrap}.team-pause{margin-top:20px}.project-hero h1{font-size:clamp(40px,12vw,70px);overflow-wrap:anywhere}.project-meta-row strong{overflow-wrap:anywhere}.contact-title{font-size:clamp(38px,11vw,62px)}.value-item h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.team-viewport{overflow-x:auto;mask-image:none}.person--clone,.team-pause{display:none}.hero__scroll span{animation:none}.gallery-card:before{animation:none}}

/* A quieter film opening, with masked word entrances and room to see the interior. */
.hero__media{transform:none;background:#202321 url('../assets/editorial/interior-poster.jpg') center/cover no-repeat}
.hero__film{width:100%;height:100%;object-fit:cover;object-position:center}
.hero__veil{background:linear-gradient(90deg,rgba(8,13,12,.56),rgba(8,13,12,.12) 75%),linear-gradient(0deg,rgba(8,13,12,.74),transparent 70%)}
.hero__content{justify-content:flex-end;padding-top:180px;padding-bottom:64px}
.hero__headline{font-size:clamp(64px,7.25vw,116px);line-height:1.05;font-weight:400;letter-spacing:-.055em;max-width:1320px;margin-bottom:24px}
.hero__headline .line{padding:.02em 0 .15em;margin-bottom:-.08em}
.hero__headline .line>.hero__word{display:inline-block;transform-origin:0 100%;will-change:transform,opacity}
.hero__line--serif{font-family:var(--serif);font-style:italic;font-size:1.1em;letter-spacing:-.05em}
.hero__rule{height:1px;background:rgba(255,255,255,.42);width:90px;transform-origin:left;margin:18px 0 27px}
.hero__bottom{border-top:0;padding-top:0;grid-template-columns:minmax(300px,570px) auto}
.hero__eyebrow{margin-bottom:32px;letter-spacing:.25em}
.hero__intro{font-size:15px;line-height:1.65;max-width:570px}
.featured-grid{gap:64px 40px}
.featured-card__image{aspect-ratio:1.45}
.featured-card__image img,.archive-card__image img{transition:filter .65s ease;will-change:transform}
.featured-card__image:after{border-radius:50%;width:42px;height:42px}
.featured-card__name{font-family:var(--serif);font-weight:400;letter-spacing:-.015em;font-size:clamp(23px,2.1vw,34px);line-height:1.18}
.featured-card__meta{grid-template-columns:35px 1fr;gap:12px;padding-top:22px}
.featured-card__category{grid-column:2;text-align:left;padding-top:0}
.gallery-card .gallery-photo{transition:opacity .5s ease}
.workshop__bg img{object-position:center}
@media(max-width:980px){.hero__headline{font-size:clamp(54px,8vw,84px)}.hero__bottom{grid-template-columns:1fr}.hero__signature{display:none}.featured-grid{gap:50px 24px}}
@media(max-width:650px){
  .hero__content{padding:140px 22px 55px;justify-content:flex-end}
  .hero__headline{font-size:clamp(45px,12.4vw,76px);line-height:1.05;letter-spacing:-.045em}
  .hero__headline .line{max-width:100%}.hero__word{white-space:nowrap}
  .hero__eyebrow{font-size:8px;line-height:1.8;margin-bottom:24px;max-width:300px}
  .hero__intro{font-size:13px;line-height:1.7}.hero__rule{margin:19px 0 22px}
  .hero__film{object-position:45% center}.hero__veil{background:linear-gradient(0deg,rgba(6,12,10,.82),rgba(6,12,10,.18))}
  .featured-grid{gap:48px}.featured-card__image{aspect-ratio:1.22}.featured-card__name{font-size:28px}
}
@media(prefers-reduced-motion:reduce){.hero__film{display:none}.hero__word{will-change:auto}}
/* Scroll choreography finishing touches. */
body{overflow-x:clip}
.about-media figure{transform-origin:50% 65%}
.services-media{transform-origin:center}
.project-hero__bg,.hero__media{will-change:transform}
.project-hero h1{line-height:.98;text-wrap:balance}
.about-title,.contact-title,.project-story p{text-wrap:balance}
.featured-card__image img,.archive-card__image img,.gallery-card .gallery-photo{transition:opacity .5s ease,filter .65s ease}
.service,.value-item,.process-step{transform-origin:50% 100%}
@media(prefers-reduced-motion:reduce){
  .project-hero__bg,.hero__media{will-change:auto}
  .gallery-card .gallery-photo{transform:none!important;transition:none}
}

/* Compact contact ending: footer follows the form directly. */
.contact{min-height:0}
