/* Mars 2: all layers share the original 1920 × 2160 coordinates. */
.warrior-home{background:#271e12}
.warrior-home .site-header{--menu-ink:#fff;--menu-shadow:0 1px 2px #0f0903f2,0 2px 6px #0f0903cc;--metal-opacity:var(--menu-opacity,0);position:fixed;inset:0 0 auto;z-index:50;max-width:none;min-height:72px;padding-block:12px;backdrop-filter:none;border:0;color:var(--menu-ink)}
.warrior-home .site-header a,.warrior-home .brand-tagline,.warrior-home .site-header .language-nav>span,.warrior-home .site-header .mobile-nav summary>span{color:var(--menu-ink)}
.warrior-home .site-header a:hover{color:var(--menu-ink)}
.warrior-home .site-header>.desktop-nav,.warrior-home .site-header>.account-nav,.warrior-home .site-header>.language-nav,.warrior-home .site-header .mobile-nav summary,.warrior-home .brand-tagline{text-shadow:var(--menu-shadow)}
.warrior-home .brand-tagline{font-size:9px;font-weight:750;letter-spacing:.025em}
.warrior-home .brand-mark{filter:drop-shadow(0 1px 2px #1a100bcc)}
.warrior-home .site-header .language-nav>a[aria-current=true]{color:var(--mars-rune-red);border-color:var(--mars-rune-red)}
.warrior-home .site-header .mobile-nav nav{--menu-opacity:1;border-color:#ffffff40;box-shadow:0 12px 40px #1113}
/* The menu darkens over 3360px on desktop and 1680px on mobile. */
.warrior-home .site-header,.warrior-home .site-header .mobile-nav nav{background:rgba(22,23,19,calc(var(--menu-opacity,0)*.8745));backdrop-filter:blur(calc(var(--menu-opacity,0)*10px))}
.warrior-home .site-header .mobile-nav nav a{color:var(--menu-ink);text-shadow:var(--menu-shadow)}
.warrior-home .site-header .desktop-nav a[aria-current=page],.warrior-home .site-header .mobile-nav nav a[aria-current=page],.warrior-home .site-header .account-nav a[aria-current=page]{color:var(--mars-rune-red)}
.warrior-home .site-header .mobile-nav nav a+a{border-color:#1112}
.warrior-home .site-header .mobile-nav nav a:hover,.warrior-home .site-header .mobile-nav nav a[aria-current=page]{background:#ffffff26}
@media(max-width:800px){.warrior-home .site-header{min-height:64px;padding-block:10px}}
@media(max-width:560px){.warrior-home .brand-tagline{font-size:8.5px}}
.warrior-home .site-footer{position:relative;max-width:none;padding-inline:max(32px,calc((100% - 1240px)/2));background:#17140f;border-color:#655537;color:#fff2d4}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.warrior-story{position:relative;isolation:isolate;background:#6e542f}
.warrior-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;pointer-events:none;z-index:0;background:#6e542f}
.warrior-scene,.warrior-camera,.warrior-layer,.warrior-poster,.warrior-details,.warrior-head,.warrior-eyelids,.warrior-smoke-drift,.warrior-transition,.warrior-shade{position:absolute;inset:0;width:100%;height:100%}
.warrior-scene{overflow:hidden}
.warrior-scene-feet{opacity:0;visibility:hidden}
.warrior-poster{max-width:none;object-fit:cover;object-position:center;opacity:1;transition:opacity .3s,visibility 0s .3s}
.warrior-details{opacity:0;visibility:hidden;transition:opacity .3s}
.warrior-scene.is-layered .warrior-poster{opacity:0;visibility:hidden}
.warrior-scene.is-layered .warrior-details{opacity:1;visibility:visible}
.warrior-camera{height:max(100%,112.5vw);transform:translate3d(0,-18%,0) scale(1.15);transform-origin:50% 0;will-change:transform;animation:warrior-camera-drift 16s ease-in-out infinite alternate;animation-play-state:paused}
.warrior-scene-feet .warrior-camera{transform:translate3d(0,-5%,0) scale(1.15)}
.warrior-scene-feet .warrior-camera{animation:none}
.warrior-weapon,.warrior-relic{animation:warrior-accessory-drift 9s ease-in-out infinite alternate;animation-play-state:paused}
/* The neck stays aligned: head and torso share one subtle vertical breath. */
.warrior-scene-face .warrior-subject,.warrior-head{animation:warrior-breathe 3s ease-in-out infinite alternate;animation-play-state:paused}
.warrior-story.is-in-view .warrior-camera,.warrior-story.is-in-view .warrior-subject,.warrior-story.is-in-view .warrior-head,.warrior-story.is-in-view .warrior-weapon,.warrior-story.is-in-view .warrior-relic{animation-play-state:running}
.warrior-layer{max-width:none;object-fit:cover;object-position:center;will-change:transform}
.warrior-eyelids{max-width:none;object-fit:cover;object-position:center;opacity:0;clip-path:inset(43.518519% 0 56.481481% 0);pointer-events:none}
.warrior-decor{transform:scale(1.06)}
.warrior-smoke{opacity:.88}
.warrior-scene-feet .warrior-smoke{opacity:1}
.warrior-scene-feet .warrior-smoke,.warrior-scene-feet .warrior-smoke-drift{transform-origin:50% 0}
.warrior-smoke-drift{animation:warrior-smoke-drift 12s ease-in-out infinite alternate;animation-play-state:paused}
.warrior-story.is-in-view .warrior-smoke-drift{animation-play-state:running}
.warrior-transition{z-index:3;opacity:0;visibility:hidden;background:#d5aa4e;will-change:opacity,transform}
.warrior-transition img{width:100%;height:100%;max-width:none;object-fit:cover}
.warrior-shade{z-index:4;background:linear-gradient(180deg,#17120e10 35%,#17120e24 100%)}
.warrior-content{position:relative;z-index:2;margin-top:-100vh;margin-top:-100svh;padding-top:135vh;padding-top:135svh;padding-bottom:75vh;padding-bottom:75svh;pointer-events:none}
.warrior-card-slot{min-height:165vh;min-height:165svh;display:flex;justify-content:center;align-items:center;padding:48px 24px}
.warrior-card-slot-music{min-height:205vh;min-height:205svh}
.warrior-card{width:min(540px,100%);min-height:280px;align-items:center;text-align:center;gap:22px;padding:42px 36px;background:#161713df;border:1px solid #e4c98075;box-shadow:0 20px 70px #21190e60;backdrop-filter:blur(10px);color:#fff4dc;pointer-events:auto}
.warrior-card .section-index{color:#e3c989}
.warrior-card h2{font-size:clamp(32px,4vw,48px);letter-spacing:-.02em}
.warrior-card p{color:#e3ddce;line-height:1.8;max-width:380px}
.warrior-card .category-arrow{color:var(--mars-rune-red)}
.warrior-card:hover{border-color:#ffe3a3;box-shadow:0 24px 80px #21190e90}
.warrior-card:focus-visible{outline-color:#ffdc82}
.warrior-card#sections{scroll-margin-top:max(100px,calc(50svh - 145px))}
.warrior-scroll-cue{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:calc(50% - 22px);z-index:40;width:44px;height:44px;border:1px solid #fff;border-radius:50%;display:grid;place-items:center;background:#271e12cc;backdrop-filter:blur(8px);color:#fff;font-size:23px}
.warrior-scroll-cue:hover{background:#271e12aa}
@keyframes warrior-camera-drift{from{translate:-.8% .5%;scale:1.025}to{translate:.8% -.8%;scale:1.05}}
@keyframes warrior-accessory-drift{from{translate:-.2% .15%}to{translate:.25% -.25%}}
@keyframes warrior-breathe{from{translate:0 0}to{translate:0 -.15%}}
@keyframes warrior-smoke-drift{from{transform:translate3d(-2%,1.5%,0) scale(1.08)}to{transform:translate3d(2.5%,-2.5%,0) scale(1.15)}}
/* Both scenes use the same full-height cover framing on portrait screens. */
@media(max-aspect-ratio:1/1){
  .warrior-card{padding:32px 24px;min-height:250px}
  .warrior-card-slot{padding-inline:20px}
}
@media(max-width:800px) and (max-aspect-ratio:1/1){.warrior-scene-feet .warrior-layer,.warrior-scene-feet .warrior-poster{object-position:var(--scene-position-x,50%) center}}
@media(prefers-reduced-motion:reduce){html:has(.warrior-home){scroll-behavior:auto}.warrior-camera,.warrior-layer{will-change:auto}.warrior-story .warrior-camera,.warrior-story .warrior-layer,.warrior-story .warrior-head,.warrior-story .warrior-smoke-drift{animation:none}.warrior-transition{will-change:auto}}
@media(prefers-reduced-motion:reduce){.warrior-poster,.warrior-details{transition:none}}
/* Without JavaScript, both scenes and all links remain available. */
.warrior-story:not(.is-enhanced) .warrior-stage{position:absolute;height:100%}
.warrior-story:not(.is-enhanced) .warrior-scene{height:50%}
.warrior-story:not(.is-enhanced) .warrior-scene-feet{top:50%;opacity:1;visibility:visible}
@media print{.warrior-stage,.warrior-scroll-cue{display:none}.warrior-content{margin:0;padding:20px}.warrior-card-slot,.warrior-card-slot-music{min-height:0;padding:20px}.warrior-card{background:white;color:black;box-shadow:none}.warrior-card p{color:black}.warrior-home .site-header{position:static}}
