/* Phone controls stay readable and tappable, including short landscape screens. */
@media(max-width:800px){
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
 .site-header{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
 .mobile-menu{min-width:76px;min-height:44px;font-size:12px}
 nav{padding:16px 24px;max-height:calc(100svh - 78px);overflow-y:auto}
 nav a{display:flex;align-items:center;min-height:44px;font-size:14px}
 .btn{min-height:48px;font-size:14px;gap:20px}
 .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
 .hero-bottom{flex-wrap:wrap;gap:12px 22px}
 .hero-copy p,.page-top p,.film-card p,.editorial p,.founder .editorial p,.process p,.enquiry-aside p{font-size:16px;line-height:1.75}
 .hero-copy p{max-width:340px}
 .page-top h1,.editorial h1{font-size:clamp(30px,9vw,42px);line-height:1.2}
 .head-note{bottom:-34px;right:0;left:0;text-align:center}
 .head-stage{margin-bottom:52px}
 .head-note:before{display:none}
 .tab-row button,.film-preview .play,.dialog-top button,footer button{min-height:44px;font-size:12px}
 .film-card-top{gap:12px;flex-wrap:wrap;line-height:1.5}
 .film-card h2{font-size:22px;overflow-wrap:anywhere}
 .split>*,.enquiry-layout>*,.form-grid>*{min-width:0}
 input,textarea,select{font-size:16px;min-width:0;max-width:100%;min-height:48px}
 input[type=checkbox]{min-height:20px;min-width:20px}
 .field label,.consent,.notice,.form-status,.enquiry-aside .text-link{font-size:14px;line-height:1.65}
 .field small{font-size:12px}
 .notice{overflow-wrap:anywhere}
 footer{flex-wrap:wrap;gap:8px;font-size:9px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
 footer>a{display:inline-flex;align-items:center;min-height:44px}
 dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100svh - 24px);padding:12px}
 .dialog-top{align-items:flex-start;gap:12px}
 .dialog-top h2{min-width:0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
 .dialog-top button{flex:none;padding:10px}
 dialog video{display:block;max-height:calc(100svh - 130px)}
}
@media(max-width:359px){
 .page-shell{padding-inline:18px}.hero-top{padding-inline:18px}.hero-bottom{flex-direction:column}
 .hero-copy h2{font-size:22px}.head-stage{height:310px}.founder .editorial p.founder-lead{font-size:24px}
}
@media(max-height:500px) and (orientation:landscape){
 dialog{padding:12px;max-height:calc(100svh - 24px)}
 .dialog-top{gap:12px;margin-bottom:8px;align-items:center}
 .dialog-top h2{font-size:14px;line-height:1.4;margin:4px 0;min-width:0;overflow-wrap:anywhere}
 .dialog-top button{flex:none;min-height:44px;padding:10px}
 dialog video{display:block;max-height:calc(100svh - 130px)}
}
