/* IM MEDIA — cinematic material and editorial typography. */
#opening .hero-stage{background:#070910;isolation:isolate}
#opening .hero-stage:before{content:'';position:absolute;inset:0;z-index:-4;pointer-events:none;background:radial-gradient(ellipse at 78% 48%,#25163c50,transparent 50%),#070910}
#opening .hero-shade{background:linear-gradient(90deg,#070910db 0%,#0709108f 25%,#07091012 53%,transparent 67%),linear-gradient(0deg,#070910d9,transparent 25%);z-index:2}
#opening .scene-kicker{top:132px;font-size:9px;letter-spacing:2.5px;color:#aaa5be}
#opening .hero-copy{top:27%;left:6%;bottom:auto;max-width:57%;z-index:6}
#opening .hero-copy h1{font-family:Arial,Helvetica,sans-serif;font-weight:600;font-size:clamp(72px,7.1vw,128px);line-height:.91;letter-spacing:-.055em;color:#f0eef7;text-shadow:none}
#opening .hero-copy h1 em{font-family:inherit;font-style:normal;font-weight:600;color:#e6e4f1}
#opening .hero-copy .hero-services{font-family:Arial,'PingFang SC','Microsoft YaHei',sans-serif;font-size:14px;font-weight:400;line-height:1.8;letter-spacing:.3px;color:#c5bdd6;margin-top:31px;max-width:490px}
#opening .hero-copy p[data-t=heroSub]{max-width:410px;font-size:12px;line-height:1.8;letter-spacing:.2px;color:#8f859f;margin-top:8px}
#opening .hero-action{left:6%;bottom:15%;gap:17px;color:#eee8f7}
#opening .round-play{width:52px;height:52px;border-radius:50%;background:#6be0cf;color:#071411;border:1px solid #a4f0e44d;box-shadow:0 0 0 7px #69daca06;font-size:11px;backdrop-filter:none}
#opening .round-play:hover{transform:translateY(-2px);background:#98f0e0;color:#071411}
#opening .hero-action>div{font-size:12px;line-height:1.7;color:#ddd4ea}
#opening .hero-action small{font-size:9px;line-height:1.6;letter-spacing:.3px;color:#7e718f;margin-top:5px}
#opening .hero-signal{right:7%;bottom:15%;color:#9c8eae;font-size:7px;letter-spacing:1.4px;gap:13px}
#opening .hero-signal i{width:30px;background:#9e81c52a}
#opening .hero-footer{padding-top:18px;border-top:1px solid #a076ff22;bottom:26px;align-items:center;color:#756981;font-size:7px;letter-spacing:1.2px}
#opening .hero-footer>span:first-child,#opening .hero-footer>span:last-child{display:none}
#opening .hero-footer .pointer-note{font-size:8px;color:#8c7d9e}
#challenge .challenge-copy{top:25%;left:6%;width:35%;max-width:35%;z-index:6}
#challenge .challenge-copy h2{font-family:Arial,'PingFang SC','Microsoft YaHei',sans-serif;font-size:clamp(44px,4.4vw,68px);font-weight:500;line-height:1.16;letter-spacing:-3px;color:#eee9f7}
#challenge .challenge-copy h2.challenge-question{font-size:clamp(42px,4.0vw,64px);color:#b6a1d6;margin-top:13px;line-height:1.2;letter-spacing:-2.5px}
#challenge .challenge-copy p{font-size:13px;line-height:1.9;margin-top:26px;color:#a197af;max-width:330px}
#challenge .scene-bottom-note{color:#857393;font-size:9px}
@media(min-width:761px) and (max-height:800px){
 #opening .scene-kicker{top:115px}#opening .hero-copy{top:27%}#opening .hero-copy h1{font-size:clamp(66px,7.1vw,105px)}#opening .hero-copy .hero-services{font-size:12px;margin-top:24px}#opening .hero-copy p[data-t=heroSub]{font-size:10px;max-width:370px;margin-top:6px}
 #opening .hero-action{bottom:14%}#opening .hero-action>div{font-size:11px}#opening .hero-action small{font-size:8px}#opening .hero-signal{bottom:14%;font-size:6px}#opening .hero-footer{bottom:20px;padding-top:14px}
 #challenge .challenge-copy{top:27%}#challenge .challenge-copy h2{font-size:52px}#challenge .challenge-copy h2.challenge-question{font-size:49px;margin-top:11px}#challenge .challenge-copy p{font-size:11px;line-height:1.85;margin-top:21px}
}
@media(max-width:1050px) and (min-width:761px){#opening .hero-copy{max-width:54%}#opening .hero-copy h1{font-size:7.1vw}#opening .hero-copy .hero-services{font-size:11px}#opening .hero-signal{font-size:5px;gap:8px}#opening .hero-signal i{width:18px}#challenge .challenge-copy h2{font-size:49px}#challenge .challenge-copy h2.challenge-question{font-size:46px}#challenge .challenge-copy p{font-size:11px}}
@media(max-width:760px){
 #opening .hero-stage{min-height:740px}
 #opening .hero-shade{background:linear-gradient(180deg,#070910 0%,#07091088 34%,transparent 59%),linear-gradient(0deg,#070910cc,transparent 25%)}
 #opening .scene-kicker{top:auto;font-size:6px;letter-spacing:1.2px}
 #opening .hero-copy{position:absolute;top:22%;left:6%;bottom:auto;max-width:88%;margin:0}
 #opening .hero-copy h1{font-size:clamp(42px,12.1vw,74px);line-height:.97;letter-spacing:-.055em}
 #opening .hero-copy .hero-services{font-size:10px;line-height:1.75;margin-top:20px;letter-spacing:0;max-width:285px}
 #opening .hero-copy p[data-t=heroSub]{font-size:9px;line-height:1.8;margin-top:7px;letter-spacing:0;max-width:265px}
 #opening .hero-action{left:6%;bottom:11%;gap:13px}#opening .round-play{width:44px;height:44px;font-size:9px}#opening .hero-action>div{font-size:10px}#opening .hero-action small{font-size:7px;margin-top:4px}
 #opening .hero-footer{bottom:23px;padding-top:14px;font-size:6px;gap:10px}#opening .hero-footer .pointer-note{font-size:6px;max-width:50%;text-align:right}#opening .hero-signal{display:none}
 #challenge .challenge-copy{position:relative;top:auto;left:auto;width:auto;max-width:none;margin-top:35px}
 #challenge .challenge-copy h2{font-size:39px;letter-spacing:-2px;line-height:1.16}#challenge .challenge-copy h2.challenge-question{font-size:36px;letter-spacing:-1.7px;line-height:1.2;margin-top:6px}
 #challenge .challenge-copy p{font-size:11px;line-height:1.8;max-width:none;margin-top:20px}
}
