.menu-toggle{display:none}
#mobile-menu{background:#241a16;color:#efe5d3;border:1px solid #ccae8540;padding:28px;width:calc(100% - 32px);max-width:480px;max-height:calc(100svh - 32px);overflow:auto}
#mobile-menu .menu-close{display:block;margin-left:auto;min-height:48px;min-width:48px;background:none;border:1px solid #ccae8560;color:inherit}
#mobile-menu h2{font-size:42px;margin:22px 0}
#mobile-menu nav{display:grid;gap:8px}
#mobile-menu a{display:flex;align-items:center;min-height:56px;border-bottom:1px solid #ccae8540;font-size:21px}
body.menu-open{overflow:hidden}
@media(max-width:760px){
 :root{--pad:clamp(20px,5vw,32px);--mobile-header:calc(76px + env(safe-area-inset-top,0px))}
 html{scroll-padding-top:calc(var(--mobile-header) + 16px)}
 .site-header{position:fixed;z-index:60;height:var(--mobile-header);padding:env(safe-area-inset-top,0px) max(var(--pad),env(safe-area-inset-right)) 0 max(var(--pad),env(safe-area-inset-left));background:#241a16f5;border-bottom:1px solid #ccae8538;gap:12px}
 .site-header>nav{display:none}.site-header .brand{min-height:48px}.site-header .brand img{width:30px;height:40px}.site-header .brand>span{font-size:16px}
 .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;margin-left:auto;width:48px;height:48px;background:transparent;border:1px solid #ccae8560;padding:12px}.menu-toggle span{height:2px;width:22px;background:#efe5d3}
 .video-story,.video-story .story-stage{height:100svh!important;min-height:620px}
 .story-media{top:var(--mobile-header);bottom:200px;background:#170e09}
 .story-film,.story-media .story-end-hold{object-fit:contain;background:#170e09}
 .ground-placeholder{background-size:contain!important}
 .story-shade{background:linear-gradient(transparent 55%,#170e09 78%)}
 .video-story .opening-copy{padding:0}
 .opening-copy>.eyebrow,.opening-bottom{display:none}
 .opening-copy h1.story-title{left:var(--pad);right:var(--pad);bottom:163px;font-family:var(--display);font-size:clamp(28px,8vw,42px);line-height:1;letter-spacing:0;text-align:center;margin:0}
 .opening-copy .motion-toggle{top:auto;bottom:80px;min-height:56px;width:calc(100% - 2*var(--pad));max-width:360px;font-size:12px;padding:16px;gap:12px}
 .video-story .fracture-copy{display:none!important}
 .video-story .reveal-copy{padding:0 var(--pad) 76px;align-items:center;text-align:center;justify-content:flex-end}
 .reveal-copy h2{font-size:clamp(27px,7.5vw,36px);line-height:1;max-width:100%;margin:8px 0}
 .reveal-copy>.eyebrow{font-size:10px}.reveal-copy>p:not(.eyebrow){display:none}.reveal-copy .text-link{min-height:44px;padding:8px 0;font-size:14px}
 .story-controls{bottom:max(12px,env(safe-area-inset-bottom));font-size:10px}.skip-story,.film-control{min-height:44px;display:inline-flex;align-items:center}.film-control[hidden]{display:none}
 .film-loading{bottom:230px;max-width:calc(100% - 40px);width:max-content;font-size:13px}
 .section-meta{margin-bottom:28px}.light-section,.approach-section,.services-section{padding:56px var(--pad)}
 .studio-intro h2{font-size:clamp(44px,13.5vw,90px)}.intro-bottom{margin-top:32px;gap:20px}.intro-bottom>p{font-size:18px}
 .sector summary{gap:12px;min-height:76px}.sector summary h3{font-size:clamp(38px,12vw,70px)}.sector-body{padding-left:0}.sector-enquiry{min-height:44px}
 .services-heading h2,.approach-section h2{font-size:clamp(40px,12vw,78px)}.services-heading>p{font-size:16px}
 .service summary{grid-template-columns:22px minmax(0,1fr) 32px;gap:10px}.service h3{font-size:clamp(19px,5.5vw,25px);overflow-wrap:anywhere}.service-body{padding-left:0}
 #approach-content{margin-top:36px;gap:32px}.contact-bottom{flex-direction:column;align-items:flex-start}.contact-bottom p{font-size:17px}.round-cta{width:132px;height:132px}
 footer{display:grid;grid-template-columns:1fr;gap:24px;padding-bottom:calc(32px + env(safe-area-inset-bottom))}footer>span{order:4}.contact-email{overflow-wrap:anywhere}footer a{min-height:44px;display:inline-flex;align-items:center}
 #brief-dialog{max-height:calc(100svh - 24px);padding:32px 20px}input,select,textarea{font-size:16px;min-height:44px}.dialog-close{min-width:44px;min-height:44px}
}
@media(prefers-reduced-motion:reduce){.film-finished .story-end-hold{animation:none!important}.film-started .story-copy{transition:none!important}}

/* Portrait artwork fills the hero; copy occupies its reserved lower third. */
@media(max-width:760px){
 .story-media{top:0;bottom:0}
 .story-film,.story-media .story-end-hold{object-fit:cover}
 .ground-placeholder{background-image:url('/media/earth-mobile-start-20260930.webp')!important;background-size:cover!important}
 .story-shade{background:linear-gradient(transparent 60%,#170e0980 100%)}
 .video-story .reveal-copy{padding-bottom:76px}
 .still-story .opening-copy h1.story-title{bottom:100px}
}

@media(max-width:760px){.video-story,.video-story .story-stage{height:max(600px,177.778vw)!important;min-height:0}.still-story .opening-copy h1.story-title{bottom:100px}}

@media(max-width:760px){.still-story .opening-copy h1.story-title{bottom:163px}}

/* The visitor explicitly started the desktop cinematic experience. */
@media(min-width:761px){.story-motion-selected .film-finished .story-end-hold{animation:smooth-logo-hover 8s ease-in-out infinite!important}}
