/* AMM 348 - cinematic intro with lazy media, replay, and fallback without competing autoplay. */
html.amm-logo-intro-active,html.amm-logo-intro-active body{overflow:auto!important;overscroll-behavior:auto!important}
#ammLogoIntro.amm-logo-intro{display:none!important}
html.amm-logo-intro-active #ammLogoIntro.amm-logo-intro{display:flex!important;position:fixed!important;inset:0!important;z-index:2147483640!important;width:100%!important;height:100vh!important;height:100dvh!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;isolation:isolate;color:#f7fbff;background:radial-gradient(ellipse 78% 48% at 50% 46%,rgba(28,105,149,.20),transparent 75%),linear-gradient(145deg,#040b1a 10%,#081a2c 54%,#030d1e 100%)!important;opacity:1!important;visibility:visible!important;pointer-events:none;animation:ammIntroFailsafe 8s linear both}
html.amm-logo-intro-active #ammLogoIntro.amm-logo-intro.amm-intro-exiting{opacity:0!important;transition:opacity .3s ease-in;visibility:hidden!important}
#ammLogoIntro .amm-intro-atmosphere{position:absolute;inset:-20%;pointer-events:none;opacity:.83}
#ammLogoIntro .amm-intro-atmosphere span{position:absolute;border:1px solid rgba(92,180,246,.1);border-radius:50%;width:min(95vw,670px);aspect-ratio:1;top:50%;left:50%;transform:translate(-50%,-50%) scale(1.12);box-shadow:0 0 180px rgba(44,143,231,.12);animation:ammIntroBreathe 3.5s ease-in-out infinite alternate}
#ammLogoIntro .amm-intro-atmosphere span+span{width:min(130vw,890px);opacity:.4;animation-delay:-1.4s}
#ammLogoIntro .amm-intro-stage{position:relative;width:min(100% - 36px,660px);padding:clamp(44px,8vh,76px) 15px 58px;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;z-index:1}
#ammLogoIntro .amm-intro-eyebrow{margin:0;color:#8ebcda;font:600 clamp(8px,1.5vw,10px)/1.8 -apple-system,BlinkMacSystemFont,Arial,sans-serif;letter-spacing:.19em;white-space:normal}
#ammLogoIntro .amm-intro-eyebrow span{color:#59cdf4;padding:0 .25em}
#ammLogoIntro .amm-intro-visual{position:relative;width:clamp(218px,70vw,400px);height:clamp(218px,70vw,400px);max-height:43dvh;max-width:43dvh;min-width:190px;min-height:190px;margin:clamp(18px,4vh,34px) 0 8px;display:grid;place-items:center;filter:drop-shadow(0 0 28px rgba(29,142,245,.15))}
#ammLogoIntro .amm-intro-halo{position:absolute;inset:4%;border-radius:50%;border:1px solid rgba(125,208,250,.13);box-shadow:0 0 0 20px rgba(19,104,185,.025),0 0 95px rgba(0,154,231,.2);animation:ammIntroHalo 3.2s cubic-bezier(.2,.8,.2,1) both}
#ammLogoIntro .amm-intro-logo{position:relative;display:block;z-index:1;width:100%;height:100%;object-fit:contain;opacity:1;animation:amm348IntroLogo 1.25s cubic-bezier(.18,.85,.2,1) both}
#ammLogoIntro #ammLogoIntroFilm{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;opacity:0!important;visibility:hidden!important;pointer-events:none;background:transparent!important;border:0;z-index:2;transition:opacity .22s ease-out}
#ammLogoIntro.amm-intro-video-playing #ammLogoIntroFilm{opacity:1!important;visibility:visible!important}
#ammLogoIntro.amm-intro-video-playing .amm-intro-logo{opacity:0}
#ammLogoIntro .amm-intro-title{font:700 clamp(16px,3.5vw,27px)/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;letter-spacing:.26em;padding-left:.26em;text-shadow:0 0 25px rgba(90,173,239,.2)}
#ammLogoIntro .amm-intro-title span{color:#87d6ff;font-weight:450}
#ammLogoIntro .amm-intro-tagline{font:450 clamp(15px,3vw,19px)/1.45 -apple-system,BlinkMacSystemFont,Arial,sans-serif;letter-spacing:.015em;color:#caddef;margin:9px 0 0}
#ammLogoIntro #ammIntroSkip{position:absolute!important;top:calc(max(16px, env(safe-area-inset-top)) + 8px)!important;right:calc(max(16px, env(safe-area-inset-right)) + 6px)!important;z-index:5!important;border:1px solid rgba(165,215,254,.3)!important;background:rgba(12,34,58,.8)!important;box-shadow:0 8px 30px rgba(0,5,12,.18);color:#f2f7ff!important;padding:12px 15px!important;font:600 13px/1.2 -apple-system,BlinkMacSystemFont,Arial,sans-serif!important;border-radius:999px!important;min-height:44px;cursor:pointer;pointer-events:auto;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#ammLogoIntro #ammIntroSkip span{color:#86d9ff;margin-left:8px}
#ammLogoIntro #ammIntroSkip:focus-visible{outline:2px solid #96e2ff;outline-offset:3px}
#ammLogoIntro .amm-intro-bottom{position:absolute;left:clamp(16px,5vw,64px);right:clamp(16px,5vw,64px);bottom:calc(max(18px, env(safe-area-inset-bottom)) + 14px);display:flex;align-items:center;justify-content:space-between;gap:16px;color:#7da7c5;font:600 9px/1.2 -apple-system,BlinkMacSystemFont,Arial,sans-serif;letter-spacing:.1em}
#ammLogoIntro .amm-intro-progress{flex:1;max-width:140px;height:2px;border-radius:3px;background:rgba(132,197,244,.22);overflow:hidden}
#ammLogoIntro .amm-intro-progress i{display:block;height:100%;width:0;background:#7fd5ff;box-shadow:0 0 10px #7fd5ff;animation:ammIntroProgress 2.65s linear forwards}
#ammLogoIntro.amm-intro-video-playing .amm-intro-progress i{animation-duration:5.4s}
#ammLogoIntro video::-webkit-media-controls{display:none!important}
@keyframes ammIntroLogo{0%{opacity:0;transform:translateY(14px) scale(.78);filter:blur(15px)}28%{opacity:.85;filter:blur(1px)}75%{opacity:1;transform:translateY(0) scale(1.025);filter:blur(0)}100%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes ammIntroHalo{0%{opacity:0;transform:scale(.6)}45%{opacity:.8}100%{opacity:1;transform:scale(1)}}
@keyframes ammIntroBreathe{0%{opacity:.35;filter:blur(1px)}100%{opacity:.75;filter:blur(0)}}
@keyframes ammIntroProgress{to{width:100%}}
/* If JavaScript fails, fade the layer and leave the homepage scrollable. */
@keyframes ammIntroFailsafe{0%,92%{opacity:1}100%{opacity:0}}
@media(max-width:520px){#ammLogoIntro .amm-intro-eyebrow{font-size:8px;letter-spacing:.1em}#ammLogoIntro .amm-intro-visual{width:min(72vw,33dvh);height:min(72vw,33dvh);min-width:185px;min-height:185px;margin:22px 0 12px}#ammLogoIntro .amm-intro-title{font-size:17px;letter-spacing:.15em;padding-left:.15em}#ammLogoIntro .amm-intro-bottom{justify-content:center}#ammLogoIntro .amm-intro-bottom .amm-intro-label{display:none}#ammLogoIntro .amm-intro-progress{max-width:160px}}
@media(max-height:590px){#ammLogoIntro .amm-intro-stage{padding:20px 12px 16px}#ammLogoIntro .amm-intro-visual{width:min(36vh,240px);height:min(36vh,240px);min-width:100px;min-height:100px;margin:8px}#ammLogoIntro .amm-intro-title{font-size:15px}#ammLogoIntro .amm-intro-tagline{font-size:13px}}
@media(prefers-reduced-motion:reduce){html #ammLogoIntro.amm-logo-intro{display:none!important}html.amm-logo-intro-active,html.amm-logo-intro-active body{overflow:auto!important}#ammLogoIntro *{animation:none!important;transition:none!important}}

/* Keep the actual logo crisp on mobile, and offer a discreet deliberate replay path. */
@keyframes amm348IntroLogo{0%{opacity:.22;transform:translateY(8px) scale(.93)}65%{opacity:1;transform:translateY(0) scale(1.015)}100%{opacity:1;transform:translateY(0) scale(1)}}
#home .amm348-replay-hero{margin-top:16px;display:inline-flex;gap:9px;align-items:center;color:#d3e9ff;border:1px solid rgba(118,183,247,.34);background:rgba(14,38,67,.66);padding:12px 15px;min-height:44px;border-radius:999px;font:700 12px/1.2 -apple-system,BlinkMacSystemFont,Arial,sans-serif;letter-spacing:.02em;cursor:pointer;box-shadow:0 6px 25px rgba(0,0,0,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .18s ease,border-color .18s ease}
#home .amm348-replay-hero:hover{background:rgba(32,91,145,.67);border-color:#80c5fc}
#home .amm348-replay-hero:focus-visible,#home #ammIntroReplayFallback:focus-visible{outline:3px solid #92dbff;outline-offset:3px}
#home .amm348-replay-hero small{opacity:.68;margin-left:5px;font-size:10px}
#home .amm348-fallback-film{display:flex;min-height:240px;align-items:center;justify-content:center;flex-direction:column;gap:14px;background:radial-gradient(ellipse at center,rgba(57,147,222,.18),transparent 67%),#061322;border-radius:20px;border:1px solid rgba(132,194,255,.3);padding:18px}
#home .amm348-fallback-film img{display:block;width:min(200px,50vw);height:auto;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 0 26px rgba(72,164,231,.23))}
#home .amm348-fallback-film button{min-height:44px;border:1px solid rgba(149,201,242,.47);color:#e4f6ff;background:rgba(15,48,79,.83);padding:11px 17px;border-radius:999px;font-weight:700;cursor:pointer}
@media(prefers-reduced-motion:reduce){#home .amm348-replay-hero{display:none!important}#home .amm348-fallback-film button{display:none!important}}
