/* Mobile layout: content determines height; decorative scenes never overlap controls. */
:where(.section-head,.split-feature,.foundation,.three-grid,.capability-grid,.project-grid,.directory-grid,.outcome-grid,.reading-split,.related-feature,.company-record,.article-layout,.case-heading,.case-layout,.contact-grid,.footer-top,.founders,.explorer-panel)>*{min-width:0}
:where(h1,h2,h3,h4,p,.btn,.text-link,.company-record dd){overflow-wrap:anywhere}
@media(max-width:1100px){
  .site-header .nav{gap:12px 20px}
  .menu-toggle:not([hidden]){display:inline-flex;align-items:center;gap:10px;min-height:44px;flex-shrink:0}
  .site-menu{flex:0 0 100%;min-width:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .mega-column,.mega-intro{min-width:0}
  .enterprise-hero{height:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);justify-content:normal}
  .enterprise-hero .hero-content{grid-row:1;padding-top:44px;padding-bottom:24px}
  .enterprise-hero #hero-scene{position:relative;inset:auto;grid-row:2;width:100%;height:clamp(300px,60vw,460px);margin:0 auto;touch-action:pan-y}
  .enterprise-hero .hero-bottom{position:relative;inset:auto;transform:none;grid-row:3;padding-block:12px 22px;min-width:0}
  .enterprise-hero .hero-visual{inset:40% 0 0}
  .enterprise-hero:after{background:linear-gradient(180deg,var(--bone) 20%,rgba(237,233,227,.85) 50%,transparent)}
  .css-signal{top:4%;width:min(64%,340px);left:50%;transform:translateX(-50%)}
  .hero-story-controls{flex-wrap:wrap}
  .hero-story-controls button{min-width:44px;min-height:44px}
  .enterprise-hero h1{font-size:clamp(40px,8vw,65px)}
}
@media(min-width:651px) and (max-width:900px){
  .three-grid,.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section-head{grid-template-columns:1fr;gap:24px}
  .section-head>p{max-width:640px}
  .approach-layout,.foundation{grid-template-columns:1fr;gap:35px}
  .approach-sticky{position:static}
  .founders{grid-template-columns:repeat(2,minmax(0,1fr))}
  .founders>div{grid-column:1/-1}
  .case-heading,.case-layout{grid-template-columns:1fr;gap:32px}
  .case-heading h1{font-size:clamp(42px,7vw,64px)}
}
@media(max-width:700px){
  :root{--gutter:clamp(18px,5vw,28px)}
  .site-header .nav{min-height:70px;padding-block:12px}
  .site-menu{max-height:calc(100svh - 112px);padding-right:2px}
  .site-menu a,.mega summary{min-height:44px}
  .utility-bar{flex-wrap:wrap;gap:4px 12px;padding-block:5px;font-size:9px}
  .utility-bar>div{gap:14px}
  .brand{gap:8px;min-width:0}
  .brand>span{font-size:28px}
  .brand img{width:34px;height:auto}
  .menu-toggle{padding:8px 11px;font-size:14px}
  .enterprise-hero .hero-content{padding-top:32px;padding-bottom:12px}
  .enterprise-hero h1{font-size:clamp(38px,10.5vw,62px);line-height:1.08}
  .enterprise-hero .hero-content .eyebrow{font-size:9px;max-width:100%;margin-bottom:22px}
  .enterprise-hero .hero-content>p:not(.eyebrow){max-width:100%;font-size:15px;margin-top:24px}
  .enterprise-hero h1 em{text-underline-offset:8px;text-decoration-thickness:4px}
  .hero-actions{flex-wrap:wrap;gap:12px 22px}
  .hero-actions .btn,.hero-actions .text-link{min-height:44px;font-size:13px}
  .hero-story-controls{gap:6px;margin-top:22px}
  .hero-story-controls button{padding:7px 8px}
  .hero-story-controls .story-play{font-size:11px}
  .enterprise-hero #hero-scene{height:clamp(290px,84vw,390px)}
  .enterprise-hero .hero-bottom{font-size:9px}
  .section{padding-block:52px}
  .page-mast{padding-block:38px}
  .page-mast h1,.contact-section h1,.contact-section h2,.search-page h1{font-size:clamp(36px,10vw,48px)}
  h2,.feature-copy h2,.closing-cta h2{font-size:clamp(32px,9vw,43px)}
  .case-heading h1,.legalpage h1{font-size:clamp(36px,10vw,48px)}
  .directory-grid,.three-grid,.project-grid,.split-feature,.foundation,.reading-split,.related-feature,.contact-grid{grid-template-columns:minmax(0,1fr)}
  .explorer-controls{gap:12px;flex-wrap:wrap}
  .explorer-controls button{font-size:15px;min-height:44px;padding:12px 4px}
  .explorer-panel>a{font-size:18px}
  .work-filters button{min-height:44px}
  .project-meta{flex-wrap:wrap;gap:5px 12px}
  .feature-image{height:clamp(240px,75vw,380px)}
  .footer-top a,.case-contact{overflow-wrap:anywhere}
  .footer-signal{font-size:clamp(27px,7vw,40px)}
  .company-record dd{font-size:20px}
  .page-tools{right:max(12px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom))}
  .global-motion,.back-top{min-height:44px}
  .footer-bottom{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .search-dialog{max-height:calc(100dvh - 24px)}
  .search-options input,.search-options select{font-size:16px}
}
@media(max-width:359px){
  .utility-bar{font-size:8px}
  .utility-bar>div{gap:10px}
  .hero-actions{align-items:stretch;flex-direction:column}
  .hero-actions .text-link{align-self:flex-start}
  .hero-story-controls .story-play{flex-basis:auto}
  .capability{grid-template-columns:80px minmax(0,1fr)}
  .capability img{width:80px}
}
@media(max-height:500px) and (orientation:landscape){
  .site-header{position:relative}
  .site-menu{max-height:70svh}
  .page-tools{bottom:8px}
}
