/* Opening sequence: welcome → film → first steps. Base editorial system is unchanged. */
.hero-art img{object-position:center center;transform-origin:75% 50%}
.hero::after{background:linear-gradient(0deg,var(--bg),transparent 16%)}
.hero-layout{padding-block:64px 80px}
.hero-copy{width:560px;max-width:46%}
.hero h1{font-size:clamp(2.8rem,4.85vw,4.65rem);line-height:1.4;letter-spacing:0}
.hero h1 span{white-space:nowrap}
.hero-lead{color:var(--text);font-size:1.08rem;margin-top:28px}
.hero-world{font-size:.91rem;margin-top:34px;padding-top:24px;position:relative;line-height:2}
.hero-world::before{content:"";position:absolute;top:0;left:0;width:42px;height:1px;background:var(--muted)}
.trailer{padding-top:64px;padding-bottom:104px}
.trailer-heading{text-align:center;margin-bottom:38px}
.trailer-heading .section-lead{margin-top:16px}
.trailer-preview{display:block}
.trailer-image{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:8px;background:#03070d}
.trailer-image>img{width:100%;height:100%;object-fit:contain;transition:transform .7s cubic-bezier(.2,.65,.2,1)}
.trailer-image .play-circle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:88px;height:88px;border-width:2px;background:#070e1c99;backdrop-filter:blur(4px)}
.trailer-image .play-circle svg{width:35px;height:35px}
.trailer-preview:hover .play-circle{background:#102c39cc;transform:translate(-50%,-50%) scale(1.08)}
.trailer-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;padding-top:12px;font-size:.86rem;color:var(--text)}
.trailer-caption>span:last-child{color:var(--muted);font-size:.78rem;white-space:nowrap}
.tutorial-layout{grid-template-columns:1fr 1.5fr;gap:80px}
.tutorial-copy h2{font-size:clamp(2rem,3.1vw,3rem);line-height:1.5}
.tutorial-copy .section-lead br{display:block}
.learning-companions{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}
.learning-companion{display:flex;align-items:center;gap:14px;min-width:0}
.companion-portrait{display:block;width:88px;height:120px;flex-shrink:0;overflow:hidden;mask-image:linear-gradient(#000 88%,transparent)}
.companion-portrait>img{width:100%;height:auto;max-width:none}
.portrait-noa>img{width:165%;transform:translateX(-20%);margin-top:-4px}
.learning-companion h3{font-family:inherit;font-size:1rem;font-weight:600;color:var(--mint);margin-bottom:7px}
.learning-companion p{font-size:.8rem;line-height:1.85;color:var(--muted)}
.tutorial-copy .tabs{margin-top:24px}
.tutorial-copy .tab-panel{min-height:160px}
@media(min-width:1600px){.hero-copy{max-width:46%}}
@media(max-width:1199px){.hero-copy{max-width:46%}.hero h1{font-size:4.7vw}.hero-lead{font-size:1rem}.hero-world{font-size:.83rem}.tutorial-layout{gap:50px}.learning-companions{gap:12px}.learning-companion{gap:9px}.companion-portrait{width:66px;height:100px}.learning-companion p{font-size:.73rem}.tutorial-copy h2{font-size:2.2rem}}
@media(min-width:761px) and (max-width:1000px){.hero,.hero-layout{min-height:590px}.hero-art img{object-position:center center}.hero::after{background:linear-gradient(90deg,#070e1c99,transparent 47%),linear-gradient(0deg,var(--bg),transparent 16%)}.hero h1{font-size:4.55vw}.hero-copy{max-width:45%}.hero-world{font-size:.78rem;max-width:255px}.hero-world br{display:none}.hero-lead{font-size:.92rem}.tutorial-layout{grid-template-columns:1fr 1.4fr;gap:32px}.learning-companions{gap:16px}.learning-companion{flex-direction:column;align-items:flex-start;gap:8px}.companion-portrait{width:75px;height:96px}.learning-companion p br{display:none}.tutorial-copy h2{font-size:1.75rem}}
@media(max-width:760px){
  .hero{padding-bottom:24px}.hero-art{height:340px}.hero-art img{object-position:right center;object-fit:cover;transform-origin:75% 45%}
  .hero::after{height:355px;background:linear-gradient(0deg,var(--bg),transparent 25%)}
  .hero-layout{padding:324px 0 0}.hero-copy{width:100%;max-width:none}
  .hero h1{font-size:clamp(2.2rem,9.8vw,4.3rem);line-height:1.38}.hero-lead{font-size:.9rem;margin-top:20px}
  .hero-actions{margin-top:23px}.hero-world{font-size:.8rem;margin-top:25px;padding-top:18px}.hero-world br{display:block}
  .trailer{padding-block:50px 64px}.trailer-heading{margin-bottom:24px}.trailer-heading h2{font-size:clamp(1.6rem,6.5vw,2.5rem)}.trailer-heading .section-lead{font-size:.81rem;margin-top:12px}
  .trailer-image{width:calc(100% + 48px);max-width:none;margin-left:-24px;border-radius:0}.trailer-image .play-circle{width:58px;height:58px;border-width:1px}.trailer-image .play-circle svg{width:25px;height:25px}.trailer-caption{min-height:50px;font-size:.77rem;padding-top:8px;gap:12px}.trailer-caption>span:last-child{font-size:.68rem}
  .tutorial-layout{gap:32px}.tutorial-copy h2{font-size:clamp(1.63rem,6.7vw,2.6rem)}.tutorial-copy .section-lead{font-size:.9rem}
  .voyage-copy h2{font-size:clamp(1.75rem,8vw,2.13rem)}
  .learning-companions{gap:16px;margin-top:24px}.learning-companion{display:block}.companion-portrait{width:96px;height:110px;margin-bottom:10px}.learning-companion h3{font-size:.95rem;margin-bottom:5px}.learning-companion p{font-size:.73rem}.learning-companion p br{display:none}.tutorial-copy .tab-panel{min-height:180px}
}
@media(max-width:360px){.hero h1{font-size:2rem}.hero-world{font-size:.75rem}.hero-world br{display:none}.tutorial-copy h2{font-size:1.49rem}.trailer-heading h2{font-size:1.45rem}.learning-companion p{font-size:.69rem}}
