.navrow,.site-header.scrolled .navrow{height:var(--nav-h)!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.navrow .shell{height:100%}
.brand-logo{width:148px!important;max-height:54px!important;object-fit:contain}
.main-nav{height:100%;align-items:center}
.nav-item{height:100%;display:flex;align-items:center}
.nav-link{height:100%;padding:0 10px!important;font-size:.72rem!important;font-weight:600;letter-spacing:.005em;line-height:1;align-items:center}
.header-cta{min-height:42px!important;height:42px;padding-inline:16px!important;font-size:.74rem!important;margin-left:12px!important}
.header-cta .icon,.btn .icon{width:16px;height:16px;align-self:center}
.menu-btn{width:42px;height:42px}

/* Hover menus sit directly under the header; no dead cursor gap */
.mega-menu{top:calc(var(--nav-h) - 1px)!important;transform:translate(-50%,6px)!important;transition:opacity .18s ease,transform .22s ease,visibility 0s .22s!important}
.nav-item:hover .mega-menu,.nav-item:focus-within .mega-menu,.dropdown-trigger[aria-expanded='true'] + .mega-menu{transform:translate(-50%,0)!important;transition:opacity .18s ease,transform .22s ease,visibility 0s!important}
.mega-inner{min-height:350px}
.mega-intro{padding:28px}
.mega-intro h3{font-size:1.78rem!important;line-height:1.03;margin:12px 0 14px}
.mega-intro p{font-size:.78rem}
.mega-links{padding:18px 16px}
.mega-links a{min-height:66px;padding:12px 13px;font-size:.79rem}
.mega-feature{min-height:350px}
.simple-dropdown{top:calc(100% - 1px)!important;margin-top:0!important}

/* Buttons: mechanically centered */
.btn{min-height:46px;height:auto;padding:0 18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;white-space:nowrap}
.btn>*{display:inline-flex;align-items:center}
.icon-btn{display:inline-grid;place-items:center;line-height:1}

/* More disciplined homepage scale and alignment */
.hero-editorial h1{font-size:clamp(3.15rem,6.25vw,6.15rem)!important;line-height:.93!important;max-width:1000px}
.hero-editorial .hero-content{max-width:1050px}
.hero-editorial .hero-copy{max-width:600px;font-size:clamp(.96rem,1.05vw,1.05rem)}
.hero .shell{width:min(100%,var(--max))!important;padding-bottom:clamp(48px,6vw,78px)}
.hero-scroll{right:var(--pad)}
.proof-grid{padding-inline:0!important}
.proof-cell{padding:34px 24px}
.proof-cell strong{font-size:clamp(2.7rem,4.9vw,5rem)}

/* True scroll-linked muted → black text reveal */
.scroll-fill-section{position:relative;min-height:168vh;padding:0!important}
.who-inner{position:sticky;top:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:calc(var(--nav-h) + 54px);padding-bottom:72px}
.who-inner>.eyebrow{margin-bottom:28px}
.scroll-fill-text{font-size:clamp(2.8rem,5.35vw,6rem);max-width:1120px;font-weight:500;letter-spacing:-.055em;line-height:.99;margin:0;color:#a4abb2}
.scroll-fill-word{display:inline;color:#a4abb2;will-change:color}
.who-copy{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,84px);max-width:930px;margin-top:44px;opacity:.35;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}
.scroll-fill-section.copy-ready .who-copy{opacity:1;transform:none}
.who-copy p{color:#59636d;font-size:.92rem}
.who-action{margin-top:30px;opacity:.35;transform:translateY(10px);transition:opacity .4s .05s ease,transform .4s .05s ease}
.scroll-fill-section.copy-ready .who-action{opacity:1;transform:none}

/* On-reveal language across the site */
.reveal{opacity:0;transform:translateY(22px);filter:blur(5px);transition:opacity .72s cubic-bezier(.2,.75,.2,1),transform .72s cubic-bezier(.2,.75,.2,1),filter .72s ease;transition-delay:var(--reveal-delay,0ms)}
.reveal.in{opacity:1;transform:none;filter:blur(0)}
.reveal-media{clip-path:inset(8% 0 0 0);transform:scale(1.025);transition:clip-path .9s cubic-bezier(.2,.75,.2,1),transform 1s cubic-bezier(.2,.75,.2,1)}
.reveal-media.in{clip-path:inset(0);transform:scale(1)}
.section-head,.section-kicker-row,.industries-head,.process-top,.project-feature-head{align-items:start}

/* body section refinement */
.cap-showcase,.section-paper,.industries-editorial,.process-editorial{overflow:clip}
.section-kicker-row h2,.industries-head h2,.process-top h2{font-size:clamp(2.1rem,3.55vw,3.9rem)}
.cap-split{min-height:620px}
.cap-media-stage{height:min(67vh,690px)}
.cap-accordion-item{padding:26px 24px;min-height:80px}
.cap-main strong{font-size:clamp(1.25rem,1.8vw,1.9rem)}
.project-stage{height:min(68vh,720px)}
.project-slide-copy h3{font-size:clamp(2.5rem,4.7vw,5.6rem)}
.industry-preview{height:580px}
.industry-row{min-height:108px;padding:24px 20px}
.process-node{min-height:235px}

/* Complete inner pages share the same editorial art direction */
.page-hero{min-height:70vh;padding-top:calc(var(--nav-h) + 90px)!important;padding-bottom:70px;display:flex;align-items:flex-end}
.page-hero .shell{width:min(100%,var(--max));position:relative;z-index:2}
.page-hero h1{font-size:clamp(2.75rem,5vw,5rem)!important;max-width:950px}
.page-hero p{max-width:680px;margin-top:22px}
.page-actions{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap}
.page-hero .bg{transform:scale(1.02);transition:transform 1.2s ease}
.page-hero:hover .bg{transform:scale(1.035)}
.page-prose .big-statement{font-size:clamp(2.15rem,3.8vw,4rem)}
.sticky-index{top:calc(var(--nav-h) + 32px)}

/* About page */
.about-intro{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(34px,7vw,110px);align-items:start}
.about-intro .big-statement{margin-top:0}
.about-principles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark);margin-top:60px}
.about-principle{padding:26px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);min-height:220px}
.about-principle .icon{color:#185fc2;margin-bottom:70px}
.about-principle strong{display:block;font-size:1rem;margin-bottom:8px}
.about-principle p{font-size:.8rem;color:#67717b}
.about-office-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-dark);margin-top:46px;border:1px solid var(--line-dark)}
.about-office{background:#f3f5f7;padding:32px}
.about-office h3{margin:12px 0 8px}

/* Footer and layout alignment */
.footer .shell,.footer-bottom .shell{width:min(100%,var(--max));padding-inline:var(--pad)}
.footer-project-grid{align-items:start}
.footer-main{align-items:start}
.footer-wordmark{font-size:clamp(4.5rem,14vw,14rem);line-height:.78}

/* mobile */
@media(max-width:1080px){
  .main-nav,.header-cta{display:none!important}.menu-btn{display:inline-flex!important}
  .brand-logo{width:138px!important}
}
@media(max-width:780px){
  :root{--pad:20px}
  .site-header{--nav-h:70px}.site-header.scrolled{--nav-h:64px}
  .hero .shell{padding-top:118px}
  .hero-editorial h1{font-size:clamp(2.85rem,13vw,4.9rem)!important}
  .scroll-fill-section{min-height:150vh}
  .who-inner{padding-top:100px;justify-content:flex-start}
  .scroll-fill-text{font-size:clamp(2.35rem,10.5vw,4.1rem)}
  .who-copy{grid-template-columns:1fr;gap:16px;margin-top:32px}
  .proof-cell{padding:24px 14px}
  .about-intro{grid-template-columns:1fr}
  .about-principles{grid-template-columns:1fr 1fr}
  .about-office-grid{grid-template-columns:1fr}
  .mobile-links-primary a{font-size:clamp(2rem,9vw,3.3rem)!important}
  .mobile-menu-head{height:76px}
  .page-hero{min-height:62vh;padding-top:110px!important;padding-bottom:48px}
}
@media(max-width:520px){
  .about-principles{grid-template-columns:1fr}
  .proof-grid{grid-template-columns:1fr 1fr}
  .proof-cell strong{font-size:2.45rem}
  .project-feature-head{align-items:flex-end}
}
@media(prefers-reduced-motion:reduce){
  .scroll-fill-word{color:#0a1118!important}.who-copy,.who-action{opacity:1!important;transform:none!important}
  .reveal,.reveal-media{opacity:1!important;transform:none!important;filter:none!important;clip-path:none!important}
}


/* V5 complete project archive + Eclipse Space-inspired engineering footer */
.project-index-intro{padding:64px 0;border-bottom:1px solid var(--line-light)}
.project-archive-summary{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,8vw,120px);align-items:end}.project-archive-summary>div{display:grid;grid-template-columns:auto 1fr;column-gap:18px;align-items:end}.project-archive-summary .eyebrow{grid-column:1/-1;margin-bottom:18px}.project-archive-summary strong{font-size:clamp(5rem,11vw,10rem);line-height:.7;letter-spacing:-.08em;font-weight:520}.project-archive-summary span{font-size:.82rem;max-width:150px;padding-bottom:4px;text-transform:uppercase;letter-spacing:.1em;color:#53616d}.project-archive-summary>p{max-width:650px;color:#45515d;font-size:1rem}