.mobile-toggle,.mobile-opening{display:none}
#mobile-menu{background:#071822;color:#e9e4dc;border:1px solid #ffffff20;width:min(90vw,440px);padding:60px 28px 28px;border-radius:12px;max-height:90dvh}#mobile-menu::backdrop{background:#02080ddd}#mobile-menu nav{display:flex;flex-direction:column;gap:4px}#mobile-menu a{display:block;padding:10px 8px;font-size:22px;min-height:44px}#mobile-menu .mobile-close{position:absolute;right:10px;top:8px;width:44px;height:44px;font-size:30px}
@media(max-width:700px){
html{scroll-padding-top:90px}body{overflow-x:clip}body>header{position:fixed!important;display:flex!important;inset:0 0 auto;height:calc(68px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 20px 0;background:#071822;z-index:10000!important}body>header>nav{display:none!important}body>header .wordmark{display:flex;align-items:center;min-height:44px}body>header .aleko-nav-logo{max-height:38px;width:auto}body>header .wordmark:after{content:'ALEKO';font-size:16px;letter-spacing:.12em;margin-left:12px}.mobile-toggle{display:block;width:44px;height:44px;font-size:25px}.stage{height:100svh}#intro{height:280svh}#intro-caption{display:none}.mobile-opening{display:block;position:absolute;left:24px;right:24px;bottom:24%;transition:opacity .2s}.mobile-opening h2{font-size:36px;max-width:260px;margin-bottom:20px}.mobile-opening a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid #ffffff70;border-radius:24px;color:#fff}#chapter{display:none}#play{display:none}.intro-bottom{bottom:calc(24px + env(safe-area-inset-bottom));justify-content:flex-end}#skip{min-height:44px;display:flex;align-items:center}#scroll-hint{bottom:80px;font-size:9px;letter-spacing:.1em}.identity p{text-align:center;max-width:280px}.section{padding:72px 24px}.world{gap:16px}.brand-features{grid-template-columns:1fr!important}.section-detail{padding-left:24px!important;padding-right:24px!important}#case-view{padding-top:95px!important}.email{overflow-wrap:anywhere}.footer-bottom div{flex-wrap:wrap}a,button{touch-action:manipulation}
}
body.reduced #intro{height:100svh!important}body.reduced #cinema{display:none}body.reduced #poster{opacity:1!important}body.reduced #intro-caption{display:none!important}
@media(max-width:700px){.mobile-opening{top:calc(100px + env(safe-area-inset-top));bottom:auto;right:auto;width:185px}.mobile-opening h2{font-size:30px;max-width:180px}.mobile-opening a{font-size:13px;padding:8px 12px}}

@media(max-width:700px){#world-list>.world{display:flex;flex-direction:column;align-items:stretch}#world-list>.world>*{min-width:0;width:100%}#world-list>.world>.number{width:auto}#design .brand-features{display:grid;grid-template-columns:minmax(0,1fr)!important;width:100%;margin-top:24px}.brand-feature{min-width:0}.brand-art{width:100%}body.reduced #play{display:block!important;min-height:44px;background:#071822;border-color:#ffffff80}.intro-bottom{gap:12px;justify-content:space-between}body.reduced #play{font-size:12px}.mobile-opening{z-index:3}}

@media(max-width:700px){body #play{display:none!important}}
@media(max-width:700px){
#design .brand-features,.section-detail .brand-features{gap:12px!important}
#design .brand-feature,.section-detail .brand-feature{display:grid;grid-template-columns:92px minmax(0,1fr);grid-template-rows:66px 30px;overflow:hidden;border-radius:12px;background:var(--brand-tone);min-height:96px}
#design .brand-feature .brand-art,.section-detail .brand-feature .brand-art{grid-row:1/3;width:92px;height:96px;aspect-ratio:auto;border-radius:0}
#design .brand-feature .brand-art img,.section-detail .brand-feature .brand-art img{border-radius:0;object-fit:cover}
#design .brand-feature .brand-caption,.section-detail .brand-feature .brand-caption{height:66px;min-height:0;padding:16px 18px 4px;border-radius:0;gap:12px}
#design .brand-feature .home-brand-logo,.section-detail .brand-feature .home-brand-logo{width:125px;max-width:calc(100% - 25px);height:38px;flex:0 1 125px}
#design .brand-feature .home-logo-bernard-cassiere,.section-detail .brand-feature .home-logo-bernard-cassiere{max-width:100px;height:40px}
#design .brand-feature .brand-action,.section-detail .brand-feature .brand-action{grid-column:2;margin:0;padding:0 18px 10px;font-size:11px;line-height:20px;color:#2f3433}
}
@media(max-width:700px){
#intro-caption{display:block;left:24px;right:24px;top:calc(100px + env(safe-area-inset-top));bottom:auto;width:auto;max-width:290px}
#intro-caption small{font-size:8px;letter-spacing:.18em;margin-bottom:12px}
#intro-caption h2{font-size:clamp(24px,6.5vw,30px);line-height:1.12;letter-spacing:-.025em;max-width:270px;margin-bottom:12px}
#intro-caption p{font-size:13px;line-height:1.5;max-width:255px;color:#f1eee8}
}
@media(max-width:700px){
  #mobile-menu{
    position:fixed;
    margin:auto;
    width:min(90vw,440px);
    max-width:90vw;
    max-height:90dvh;
    overflow:auto;
  }

  #mobile-menu nav{
    position:static;
    left:auto;
    right:auto;
    top:auto;
    display:flex;
    flex-direction:column;
    gap:4px;
    width:auto;
    padding:0;
    margin:0;
    overflow:visible;
    white-space:normal;
    font-size:16px;
  }

  #mobile-menu nav a{
    display:block;
    width:100%;
    padding:10px 8px;
    min-height:44px;
  }
}