@charset "UTF-8";
/* SBS 숏뉴스 랜딩(/news/shortnews.do) 전용 스타일. 전부 .snlp 스코프(사이트 공통CSS 미간섭).
   인라인 <style>에서 분리한 파일. 수정 후 캐시버전(system.properties property.css.date) 갱신. */
.snlp{box-sizing:border-box;width:100vw;max-width:100vw;min-width:1140px;margin-left:calc(50% - 50vw)}
.snlp{
    --bg:#ECEEF2;
    --surface:#FFFFFF;
    --surface-2:#F4F5F8;
    --ink:#14151A;
    --ink-soft:#3B3E47;
    --muted:#71747E;
    --line:#E2E4EA;
    --brand:#8B5CF6;
    --brand-ink:#6D28D9;
    --brand-soft:#EDE9FE;
    --live:#FF3B30;
    --display:"Pretendard Variable","Pretendard",-apple-system,sans-serif;
    --body:"Pretendard Variable","Pretendard",-apple-system,sans-serif;
    --mono:"Space Mono",monospace;
  }
.snlp *{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:17.5px;min-width:1140px}
/* === SBS 뉴스 데스크톱 템플릿 오버라이드 (shortnews 전용) ===
   고정폭(1140) 유지 + 창폭이 1140 미만이면 좌측 고정·하단 가로 스크롤(반응형 없음). shortnews.css 가 news_style.css 보다 후행 로드되어 성립.
   (b) SBS 최상위 래퍼 .w_sbsnews 의 overflow:hidden 탓에 넘친 콘텐츠가 가로스크롤 없이 잘림 → visible 로 해제.
   (a) 핵심: 위 4행 base 규칙 .snlp{width:100vw;margin-left:calc(50% - 50vw)} 는 뷰포트<1140 일 때
       margin 이 양수가 되어 콘텐츠를 오른쪽으로 밀어 왼쪽 여백을 만든다(+ width:100vw 는 세로 스크롤바 폭만큼 가로 넘침).
       → margin 을 min(0px, …) 으로 0 이하 클램프하고 width:auto 로 바꿔 밀림/넘침 제거(1140 이상에서는 음수 마진 유지 → 풀블리드 그대로). */
html,body{overflow-x:visible!important}
body{min-width:1140px;margin:0}
.w_sbsnews{overflow:visible!important;min-width:1140px!important}
.w_sbsnews .w_contents,#container.w_contents{overflow:visible!important;min-width:1140px}
.snlp{width:auto!important;max-width:none!important;min-width:1140px!important;margin-left:min(0px,calc(50% - 50vw))!important;margin-right:min(0px,calc(50% - 50vw))!important}
/* SBS 전역 푸터의 margin-top:50px(news_style.css .w_footer) 이 보라 CTA(.final) 아래 여백으로 보임 → 이 페이지에서만 제거 */
.w_footer{margin-top:0!important}
.snlp{
    background:#fff;color:var(--ink);font-family:var(--body);
    line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;
  }
.snlp .wrap{max-width:1140px;margin:0 auto;padding:0 24px}
.snlp a{color:inherit;text-decoration:none}
.snlp .mono{font-family:var(--mono)}
.snlp .sbs-header{position:sticky;top:0;z-index:60;width:100%;font-family:var(--body)}
.snlp .sbsh-inner{width:100%;max-width:1140px;margin:0 auto;padding:0 24px}
.snlp .sbsh-issue{background:#12287d}
.snlp .sbsh-issue-row{display:flex;align-items:center;gap:10px;height:40px}
.snlp .sbsh-badge{flex:none;display:inline-flex;align-items:center;justify-content:center;background:#ef1c42;color:#fff;font-weight:700;font-size:12px;line-height:16px;padding:2px 8px;border-radius:100px}
.snlp .sbsh-issue-text{flex:1 1 0;min-width:0;color:#fff;font-size:14px;line-height:16px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.snlp .sbsh-issue-close{flex:none;display:inline-flex;width:20px;height:20px;background:none;border:none;cursor:pointer;padding:0}
.snlp .sbsh-issue-close img{width:20px;height:20px;filter:brightness(0) invert(1)}
.snlp .sbsh-main{background:#fff;border-bottom:1px solid #ededed}
.snlp .sbsh-main-row{display:flex;align-items:center;justify-content:space-between;height:60px}
.snlp .sbsh-left{display:flex;align-items:center;gap:24px;flex:1 1 0;min-width:0}
.snlp .sbsh-brand{display:flex;align-items:center;gap:20px;flex:none}
.snlp .sbsh-iconbtn{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;border-radius:4px;padding:0}
.snlp .sbsh-menu{width:40px;height:40px}
.snlp .sbsh-menu img{width:24px;height:24px;display:block}
.snlp .sbsh-logo{display:block;width:98px;height:16px;flex:none}
.snlp .sbsh-logo img{width:98px;height:16px;display:block}
.snlp .sbsh-nav{display:flex;align-items:center;gap:20px;flex:1 1 0;min-width:0;justify-content:center}
.snlp .sbsh-nav a{font-size:16px;line-height:24px;color:#1e1e1e;font-weight:400;white-space:nowrap;transition:color .15s}
.snlp .sbsh-nav a.is-active{font-weight:700}
.snlp .sbsh-nav a:hover{color:#12287d}
.snlp .sbsh-right{display:flex;align-items:center;gap:10px;flex:none}
.snlp .sbsh-report{font-size:14px;line-height:16px;font-weight:700;color:#666;white-space:nowrap}
.snlp .sbsh-live{font-size:14px;line-height:16px;font-weight:700;color:#ef1c42;white-space:nowrap}
.snlp .sbsh-div{width:1px;height:10px;background:#ededed;flex:none}
.snlp .sbsh-search{width:24px;height:24px}
.snlp .sbsh-search img{width:18px;height:18px;display:block}
.snlp .btn{font-family:var(--body);font-weight:700;border:none;cursor:pointer;border-radius:12px;transition:transform .18s,box-shadow .18s,background .18s}
.snlp .btn-brand{background:var(--brand);color:#fff;padding:11px 20px;font-size:.9rem}
.snlp .btn-brand:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(139,92,246,.34);background:var(--brand-ink)}
.snlp .btn-lg{padding:16px 30px;font-size:1.02rem;border-radius:14px}
.snlp .btn-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line);padding:15px 28px;font-size:1.02rem;border-radius:14px}
.snlp .btn-ghost:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-2px)}
.snlp .nav-cta{display:block}
.snlp .hero{padding:74px 0 56px;background:radial-gradient(48% 50% at 90% 16%,rgba(236,72,153,.20),transparent 60%),radial-gradient(62% 60% at 98% 44%,rgba(139,92,246,.30),transparent 62%),radial-gradient(56% 58% at 82% 74%,rgba(56,120,246,.20),transparent 62%),linear-gradient(165deg,#150D29 0%,#0C0918 60%,#110A22 100%);position:relative;overflow:hidden;min-height:calc(100vh - 88px);min-height:calc(100svh - 88px);display:flex;align-items:center}
.snlp .hero::after{content:"";position:absolute;right:-90px;top:-130px;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}
.snlp .hero-deco{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.snlp .hc{position:absolute;border-radius:50%;display:block;animation:snlp-floaty 9s ease-in-out infinite;will-change:transform}
.snlp .hc.ring{border:1px solid rgba(255,255,255,.16)}
.snlp .hc.fill{background:rgba(255,255,255,.05)}
@keyframes snlp-floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(var(--amp,-16px))}}
.snlp .orb{position:absolute;right:-3%;top:50%;transform:translateY(-50%);width:540px;height:540px;border-radius:50%;background:radial-gradient(circle at 38% 34%,#b88bff 0%,#7c3aed 42%,#5b21b6 68%,#2a0f5e 100%);box-shadow:0 0 150px 40px rgba(124,58,237,.45);animation:snlp-orbfloat 12s ease-in-out infinite;will-change:transform}
@keyframes snlp-orbfloat{0%,100%{transform:translateY(-50%)}50%{transform:translateY(-56%)}}
.snlp .hpill{position:absolute;font-family:var(--mono);font-size:.78rem;font-weight:700;color:#fff;padding:8px 15px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px);white-space:nowrap;animation:snlp-drift 10s ease-in-out infinite;will-change:transform}
.snlp .hpill.c1{background:rgba(124,58,237,.92);border-color:transparent}
.snlp .hpill.c2{background:rgba(236,72,153,.85);border-color:transparent}
.snlp .hpill.c3{background:rgba(56,189,248,.82);border-color:transparent}
.snlp .hpill.c4{background:rgba(79,249,205,.82);border-color:transparent;color:#08251d}
.snlp .hpill:nth-of-type(1){animation-duration:10s;animation-delay:-1s}
.snlp .hpill:nth-of-type(2){animation-duration:12s;animation-delay:-3s}
.snlp .hpill:nth-of-type(3){animation-duration:9s;animation-delay:-5s}
.snlp .hpill:nth-of-type(4){animation-duration:13s;animation-delay:-2s}
.snlp .hpill:nth-of-type(5){animation-duration:11s;animation-delay:-4s}
.snlp .hpill:nth-of-type(6){animation-duration:14s;animation-delay:-6s}
.snlp .hero-stats{display:flex;margin:12px auto 2px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:18px;backdrop-filter:blur(8px);overflow:hidden}
.snlp .hero-stats>div{padding:18px 28px;border-right:1px solid rgba(255,255,255,.1)}
.snlp .hero-stats>div:last-child{border-right:none}
.snlp .hero-stats b{display:block;font-family:var(--display);font-weight:800;font-size:1.7rem;color:#fff;line-height:1}
.snlp .hero-stats span{font-family:var(--mono);font-size:.72rem;color:rgba(255,255,255,.62);margin-top:8px;display:block}
@keyframes snlp-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}
.snlp .hero .eyebrow{background:rgba(255,255,255,.16);color:#fff}
.snlp .hero h1.head{color:#fff}
.snlp .hero h1.head .hl{color:#fff}
.snlp .hero .subhead{color:rgba(255,255,255,.86)}
.snlp .hero .btn-brand{background:#fff;color:var(--brand-ink)}
.snlp .hero .btn-brand:hover{background:#fff;box-shadow:0 12px 28px rgba(0,0,0,.24)}
.snlp .hero .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.snlp .hero .btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff;border-color:#fff}
.snlp .hero .hnum b{color:#fff}
.snlp .hero .hnum span{color:rgba(255,255,255,.7)}
.snlp .hero .hnum .u{color:#AFC0FF}
.snlp .hero .wrap{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:18px;padding-bottom:18px;width:100%}
.snlp .scroll-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;color:rgba(255,255,255,.72);font-family:var(--mono);font-size:.64rem;letter-spacing:.22em;animation:snlp-bob 2s ease-in-out infinite;z-index:2}
.snlp .scroll-cue svg{width:18px;height:18px;fill:currentColor}
.snlp .scroll-cue:hover{color:#fff}
@keyframes snlp-bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(7px)}}
.snlp .hero .hero-copy{max-width:720px}
.snlp .hero .subhead{margin-left:auto;margin-right:auto}
.snlp .hero-logo{margin:0 auto 26px;display:flex;justify-content:center}
.snlp .hero-logo svg{width:200px;height:auto;display:block;filter:drop-shadow(0 8px 22px rgba(0,0,0,.18))}
/* 히어로 하단 이벤트 배너(1140x74). 좌우 여백은 배너 엣지색(#5a3bdf)으로 채워 이음매 없이 풀폭 처리 */
.snlp .hero-cta-banner{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;justify-content:center;align-items:center;background:#5a3bdf;overflow:hidden;cursor:pointer;line-height:0}
.snlp .hero-cta-banner img{display:block;width:1140px;max-width:100%;height:auto}
/* 스크롤 아이콘은 배너 위로 올림(배너 높이 74px + 여백) */
.snlp .scroll-dock{position:absolute;left:0;right:0;bottom:96px;display:flex;justify-content:center;z-index:2;pointer-events:none}
.snlp .scroll-dock .scroll-graphic{pointer-events:auto}
.snlp .scroll-graphic{display:inline-flex;flex-direction:column;align-items:center;gap:11px;color:rgba(255,255,255,.82);text-decoration:none}
.snlp .scroll-graphic:hover{color:#fff}
.snlp .scroll-graphic .mouse{width:28px;height:46px;border:2px solid currentColor;border-radius:16px;display:flex;justify-content:center;padding-top:7px}
.snlp .scroll-graphic .wheel{width:4px;height:9px;border-radius:3px;background:currentColor;animation:snlp-wheel 1.7s ease-in-out infinite}
.snlp .scroll-graphic .sg-text{font-family:var(--body);font-weight:700;font-size:.72rem;letter-spacing:.18em}
@keyframes snlp-wheel{0%{transform:translateY(0);opacity:1}60%{transform:translateY(13px);opacity:0}100%{transform:translateY(0);opacity:0}}
.snlp .hero .hero-actions{justify-content:center;margin-bottom:0}
.snlp .eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:.76rem;letter-spacing:.04em;color:var(--brand-ink);background:var(--brand-soft);padding:8px 14px;border-radius:999px;margin-bottom:24px;font-weight:700}
.snlp .eyebrow .sp{font-size:.7rem;color:var(--live)}
.snlp h1.head{font-family:var(--display);font-weight:700;font-size:3.6rem;line-height:1.32;letter-spacing:-.02em;margin-bottom:22px}
.snlp h1.head .hl{color:var(--brand)}
.snlp .subhead{font-size:1.12rem;color:var(--ink-soft);max-width:30ch;margin-bottom:30px}
.snlp .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px}
.snlp .hero-nums{display:flex;gap:26px}
.snlp .hnum{display:flex;flex-direction:column;gap:2px}
.snlp .hnum b{font-family:var(--display);font-weight:800;font-size:1.7rem;letter-spacing:-.02em;line-height:1}
.snlp .hnum span{font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.snlp .hnum .u{color:var(--brand);font-size:1rem}
.snlp .stage{display:flex;justify-content:center;align-items:center;perspective:1300px}
.snlp .device{position:relative;width:252px;aspect-ratio:9/19;border-radius:32px;background:#0E0F13;border:6px solid #20222B;box-shadow:0 32px 70px -26px rgba(20,30,90,.45);overflow:hidden}
.snlp .device.float{animation:snlp-float 7s ease-in-out infinite}
@keyframes snlp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.snlp .scr{position:absolute;inset:0;background:linear-gradient(160deg,#27324a,#3d4a66 60%,#223047)}
.snlp .scr img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.snlp .scr img.fit-w, .snlp .front2 .m2scr img.fit-w{object-fit:contain}
.snlp .scr::after{content:"";position:absolute;inset:0;pointer-events:none;
    background:
      linear-gradient(180deg,rgba(8,11,22,.72) 0%,rgba(8,11,22,.28) 28%,rgba(8,11,22,.28) 55%,rgba(8,11,22,.86) 100%),
      radial-gradient(120% 85% at 50% 40%,rgba(8,11,22,.1) 42%,rgba(8,11,22,.55) 100%);
    mix-blend-mode:multiply}
.snlp .scr.alt{background:linear-gradient(160deg,#3a2f4f,#4a3a64)}
.snlp .scr.alt2{background:linear-gradient(160deg,#21424a,#2c5a64)}
.snlp .playpause{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;display:flex;align-items:center;justify-content:center}
.snlp .playpause svg{width:64px;height:64px;fill:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.55))}
.snlp .vbar{position:absolute;left:14px;right:14px;bottom:46px;height:4px;border-radius:4px;background:rgba(255,255,255,.28)}
.snlp .vbar i{display:block;height:100%;width:42%;border-radius:4px;background:var(--live);animation:snlp-grow 6s linear infinite}
@keyframes snlp-grow{0%{width:8%}100%{width:96%}}
.snlp .vtime{position:absolute;right:16px;bottom:18px;font-family:var(--body);font-weight:600;font-variant-numeric:tabular-nums;font-size:.72rem;color:rgba(255,255,255,.9);background:rgba(0,0,0,.35);padding:2px 7px;border-radius:5px}
.snlp .vlabel{position:absolute;left:16px;bottom:16px;color:#fff;font-weight:700;font-size:.86rem;display:flex;align-items:center;gap:7px}
.snlp .vlabel .av{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#1F3BF0,#7aa0ff)}
.snlp .vchips{position:absolute;left:14px;right:14px;bottom:14px}
.snlp .vchips .tags{font-family:var(--mono);font-size:.66rem;color:#cdd6ff;margin-bottom:8px}
.snlp .vchips .row{display:flex;gap:6px;flex-wrap:wrap}
.snlp .vchips .row b{font-size:.66rem;font-weight:600;color:#fff;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.22);padding:5px 9px;border-radius:8px}
.snlp .device.back{position:absolute;width:212px;border-radius:28px;background:#fff;border:6px solid #E7E9F0;box-shadow:0 26px 50px -22px rgba(20,30,90,.4)}
.snlp .gridscr{position:absolute;inset:0;background:#fff;padding:18px 14px}
.snlp .gridscr .gt{font-weight:700;font-size:.8rem;color:var(--ink);margin-bottom:12px}
.snlp .gridscr .gg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.snlp .gridscr .gg i{aspect-ratio:1;border-radius:6px;background:var(--surface-2)}
.snlp .ai{position:absolute;left:14px;right:14px;top:54px;background:rgba(255,255,255,.95);border-radius:12px;padding:12px 12px 13px;box-shadow:0 8px 22px rgba(0,0,0,.22)}
.snlp .ai .ah{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.snlp .ai .ah b{font-size:.74rem;font-weight:700;color:var(--brand);display:inline-flex;align-items:center;gap:6px}
.snlp .ai .ah b::before{content:"AI";font-family:var(--mono);font-size:.6rem;background:var(--brand);color:#fff;padding:2px 5px;border-radius:4px}
.snlp .ai .ah .x{width:16px;height:16px;border-radius:50%;background:var(--surface-2);color:var(--muted);font-size:.7rem;display:flex;align-items:center;justify-content:center}
.snlp .ai .l{height:7px;border-radius:4px;background:var(--surface-2);margin-bottom:6px}
.snlp .ai .l.s{width:62%}
.snlp .ai-overlay{position:absolute;left:14px;right:14px;bottom:16px;background:linear-gradient(135deg,#1f3f9e 0%,#3a6bcf 55%,#274f9f 100%);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:13px 14px 12px;box-shadow:0 12px 26px rgba(0,0,0,.32)}
.snlp .ai-head{display:flex;align-items:center;gap:7px;font-size:.74rem;font-weight:700;color:#fff;margin-bottom:9px}
.snlp .ai-spark{display:inline-flex}
.snlp .ai-spark svg{width:15px;height:15px;fill:#bfe0ff}
.snlp .ai-x{position:absolute;top:11px;right:12px;width:18px;height:18px;border-radius:50%;background:rgba(255,255,255,.22);color:#fff;font-size:.58rem;display:flex;align-items:center;justify-content:center;line-height:1}
.snlp .ai-bar{height:8px;border-radius:5px;background:rgba(255,255,255,.32);margin-bottom:7px}
.snlp .ai-bar:last-child{margin-bottom:0}
.snlp .ai-bar.short{width:55%;background:rgba(255,255,255,.22)}
.snlp .ring{position:absolute;top:18px;right:14px;width:54px;height:54px}
.snlp .ring svg{transform:rotate(-90deg)}
.snlp .ring .rc{fill:none;stroke:rgba(255,255,255,.25);stroke-width:5}
.snlp .ring .rp{fill:none;stroke:var(--live);stroke-width:5;stroke-linecap:round;stroke-dasharray:138;stroke-dashoffset:124}
.snlp .ring .rt{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:.68rem;font-weight:700;color:#fff}
.snlp .mission-badge{position:absolute;right:14px;bottom:80px;width:52px;height:auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.32))}
.snlp .mission-toast{position:absolute;right:14px;bottom:18px;width:50%;background:#fff;color:#1c1c2b;border-radius:14px;padding:11px 12px;font-size:.74rem;font-weight:700;line-height:1.35;text-align:center;box-shadow:0 8px 20px rgba(0,0,0,.3);opacity:0;transform-origin:78% 0}
.snlp .mission-toast::after{content:"";position:absolute;top:-7px;right:22px;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #fff}
.snlp .feat-media.in .mission-toast{animation:snlp-toastPop .55s cubic-bezier(.22,.9,.32,1.5) 1s both}
@keyframes snlp-toastPop{from{opacity:0;transform:translateY(10px) scale(.82)}60%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}
.snlp section.block{padding-top:54px;padding-bottom:54px}
.snlp .sec-divider{border:none;border-top:1px solid var(--line);margin:0}
.snlp .kick{font-family:var(--body);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);font-weight:700;margin-bottom:14px}
.snlp h2{font-family:var(--display);font-weight:800;font-size:2.5rem;line-height:1.16;letter-spacing:-.025em}
.snlp .sec-head{max-width:48ch;margin-bottom:8px}
.snlp .sec-head p{color:var(--muted);margin-top:16px;font-size:1.05rem}
.snlp .numstrip{background:var(--ink);color:#fff}
.snlp .numstrip .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:0}
.snlp .numstrip .n{padding:40px 26px;border-right:1px solid rgba(255,255,255,.1)}
.snlp .numstrip .n:last-child{border-right:none}
.snlp .numstrip .n b{font-family:var(--display);font-weight:800;font-size:2.6rem;letter-spacing:-.03em;line-height:1;display:block}
.snlp .numstrip .n b em{font-style:normal;color:#8aa0ff;font-size:1.3rem}
.snlp .numstrip .n span{font-family:var(--mono);font-size:.78rem;color:rgba(255,255,255,.6);margin-top:10px;display:block}
.snlp .feat{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:34px 0}
.snlp .feat:first-of-type{border-top:none}
.snlp .feat.flip .feat-media{order:-1}
.snlp .feat-no{font-family:var(--mono);font-size:.82rem;font-weight:700;color:var(--brand);letter-spacing:.06em;margin-bottom:14px;display:inline-flex;align-items:center;gap:10px}
.snlp .feat-no::before{content:"";width:30px;height:2px;background:var(--brand)}
.snlp .feat h3{font-family:var(--display);font-weight:800;font-size:1.6rem;letter-spacing:-.02em;margin-bottom:12px}
.snlp .feat p{color:var(--ink-soft);font-size:1.04rem}
.snlp .feat .extra{margin-top:14px;font-size:.92rem;color:var(--brand-ink);font-weight:600}
.snlp .feat-media{display:flex;justify-content:center;align-items:center;min-height:300px;position:relative}
.snlp .stack{position:relative;width:252px;height:430px}
.snlp .stack .device{position:absolute;width:200px;left:0;top:30px;z-index:2}
.snlp .stack .device.back{position:absolute;left:auto;right:-8px;top:0;z-index:1}
.snlp .m2stack{position:relative;width:400px;height:500px;margin:0 auto}
.snlp .m2stack .m2-dev{position:absolute;width:210px}
.snlp .m2stack .back2{right:0;top:0;z-index:1}
.snlp .m2stack .front2{left:0;top:48px;z-index:2}
.snlp .m2scr{position:absolute;inset:0;overflow:hidden}
.snlp .front2 .m2scr{background:linear-gradient(160deg,#2a3550 0%,#34425f 46%,#1b2438 100%);display:flex;flex-direction:column}
.snlp .front2 .m2scr img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.snlp .front2 .m2scr::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;
    background:linear-gradient(180deg,rgba(8,11,22,.5) 0%,rgba(8,11,22,.18) 30%,rgba(8,11,22,.42) 68%,rgba(8,11,22,.88) 100%);
    mix-blend-mode:multiply}
.snlp .back2 .m2scr{background:#161B27;padding:18px 14px;display:flex;flex-direction:column}
.snlp .m2-video{position:absolute;top:47%;left:50%;transform:translate(-50%,-50%);z-index:2;background:transparent;display:flex;align-items:center;justify-content:center}
.snlp .m2-video svg{width:54px;height:54px;fill:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.55))}
.snlp .m2-bars{position:relative;z-index:2;padding:16px 14px 0;margin-top:auto}
.snlp .m2-bars span{display:block;height:8px;border-radius:5px;background:rgba(255,255,255,.28);margin-bottom:7px}
.snlp .m2-bars span:last-child{width:60%}
.snlp .m2-tags{position:relative;z-index:2;padding:10px 14px 0;color:#cdbcff;font-weight:600;font-size:.78rem;text-shadow:0 1px 4px rgba(0,0,0,.5)}
.snlp .m2-chips{position:relative;z-index:2;display:flex;gap:6px;padding:12px 14px 18px;white-space:nowrap}
.snlp .m2-chips b{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:600;color:#fff;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.32);border-radius:8px;padding:7px 10px;white-space:nowrap;flex:none}
.snlp .m2-chips b svg{width:13px;height:13px;fill:none;stroke:currentColor;flex:none}
.snlp .m2-gt{color:#b79bff;font-weight:700;font-size:.82rem;margin-bottom:14px}
.snlp .m2-grid-vp{flex:1;min-height:0;overflow:hidden}
.snlp .m2-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding-bottom:8px;animation:snlp-m2grid-scroll 8s infinite;will-change:transform}
.snlp .back2 .m2scr:hover .m2-grid{animation-play-state:paused}
@keyframes snlp-m2grid-scroll{
    0%  {transform:translateY(0);      animation-timing-function:cubic-bezier(.18,.7,.3,1)}   
    15% {transform:translateY(-14%)}
    24% {transform:translateY(-14%);   animation-timing-function:cubic-bezier(.5,0,.5,1)}     
    43% {transform:translateY(-22%)}
    51% {transform:translateY(-22%);   animation-timing-function:cubic-bezier(.18,.7,.3,1)}   
    65% {transform:translateY(-38%)}
    75% {transform:translateY(-38%);   animation-timing-function:cubic-bezier(.3,.2,.2,1)}    
    93% {transform:translateY(-50%)}
    100%{transform:translateY(-50%)}                                                          
  }
.snlp .m2-grid i{position:relative;overflow:hidden;aspect-ratio:1;border-radius:6px;background:rgba(255,255,255,.1)}
.snlp .m2-grid i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.snlp .m2-grid i::after{content:"";position:absolute;inset:0;pointer-events:none;background:rgba(10,13,24,.34)}
.snlp .event{background:#fff}
.snlp .sec-divider{border:0;border-top:1px solid var(--line);width:auto;margin:24px 0 84px}
.snlp .event .grid{display:grid;grid-template-columns:1fr;gap:30px;align-items:start}
.snlp .steps{display:flex;align-items:stretch;gap:0;margin-top:8px}
.snlp .step-arrow{display:flex;align-items:center;justify-content:center;flex:none;padding:0 6px}
.snlp .step-arrow svg{width:24px;height:24px;fill:var(--brand);opacity:.85;transform:rotate(-90deg)}
.snlp .step{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;border:1.5px solid rgba(139,92,246,.3);border-radius:18px;padding:44px 36px 58px;min-height:0;box-shadow:0 3px 10px rgba(139,92,246,.1);transition:transform .2s,box-shadow .2s,border-color .2s}
.snlp .step:hover{transform:translateY(-3px);border-color:var(--brand);box-shadow:0 8px 18px rgba(139,92,246,.18)}
.snlp .step .step-badge{display:inline-block;background:var(--brand);color:#fff;font-family:var(--body);font-weight:700;font-size:.8rem;letter-spacing:.05em;word-spacing:normal;padding:7px 15px;border-radius:999px;margin-bottom:14px}
.snlp .step .step-badge .sl{font-family:var(--body);font-weight:700;letter-spacing:.04em}
.snlp .step .step-desc{color:var(--ink);font-size:1.14rem;font-weight:500;line-height:1.6}
.snlp .step .step-desc strong{font-weight:800;color:var(--ink)}
.snlp .reward{margin-top:10px;background:#F5F6F8;border:1px solid #E6E8EC;border-radius:16px;padding:24px 28px}
.snlp .reward h4{font-size:1.02rem;font-weight:800;margin-bottom:13px;display:flex;align-items:center;gap:9px}
.snlp .reward h4::before{content:"🎁"}
.snlp .reward ul{list-style:none;display:flex;flex-direction:column;gap:7px}
.snlp .reward li{display:flex;gap:10px;font-size:.88rem;line-height:1.4;color:var(--ink-soft)}
.snlp .reward li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--brand);margin-top:7px}
.snlp .reward .tip{color:var(--brand-ink);font-weight:600}
.snlp .disclaimer{margin-top:14px;font-size:.8rem;color:var(--muted);line-height:1.5}
.snlp .final{background:linear-gradient(140deg,#8B5CF6 0%,#6D28D9 58%,#4c1d95 100%);color:#fff;margin-top:72px;padding:78px 24px;text-align:center;position:relative;overflow:hidden}
.snlp .final .box{max-width:760px;margin:0 auto;position:relative;z-index:1}
.snlp .final::after{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.12)}
.snlp .final h2{color:#fff;margin-bottom:26px;position:relative}
.snlp .cta-logo{display:inline-block;line-height:0;margin:0 .12em;vertical-align:middle;transform:translateY(-10px)}
.snlp .cta-logo svg{height:1.5em;width:auto;display:inline-block;vertical-align:middle;filter:drop-shadow(0 5px 14px rgba(0,0,0,.2))}
.snlp .final .btn-white{background:#fff;color:var(--brand-ink);position:relative}
.snlp .final .btn-white:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.25)}
.snlp footer.site-foot{background:#130C24;padding:46px 0;color:rgba(255,255,255,.55);font-size:.85rem}
.snlp .site-foot .wrap{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;text-align:center}
.snlp .site-foot .fl{display:flex;gap:20px}
.snlp .site-foot .fl a:hover{color:#fff}
.snlp .reveal{opacity:0;transform:translateY(48px)}
.snlp .reveal.in{animation:snlp-reveal-in .72s cubic-bezier(.22,.61,.36,1) both}
@keyframes snlp-reveal-in{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
.snlp .hero-copy{transform:translateY(var(--par,0))}
.snlp .hero-deco{transform:translateY(var(--par,0));will-change:transform}
.snlp .feat-media.par-done{transform:translateY(var(--par,0))!important;will-change:transform}
.snlp h1.head{white-space:nowrap;font-size:3.6rem}
.snlp .hero .hero-copy{max-width:none}
@media(prefers-reduced-motion:reduce){.snlp *{animation:none!important;transition:none!important}
.snlp .reveal{opacity:1;transform:none}
.snlp .mission-toast{opacity:1}}
