/* MultiLink 랜딩 홈 전용 스타일 (레거시 web/index.html 인라인 <style> 이식) */
.hero{position:relative;padding-top:64px;padding-bottom:72px;display:grid;grid-template-columns:1.06fr .94fr;gap:56px;align-items:center;z-index:2}
.hero .g1{width:560px;height:560px;background:#7C5CFC;opacity:.5;top:-140px;left:-160px;animation:float1 14s ease-in-out infinite}
.hero .g2{width:480px;height:480px;background:#FF3D8A;opacity:.34;top:20px;right:-140px;animation:float2 16s ease-in-out infinite}
.hero .g3{width:300px;height:300px;background:#FF5A4D;opacity:.22;bottom:-80px;left:40%;animation:float1 18s ease-in-out infinite}
@keyframes float1{0%,100%{transform:translate(0,0)}50%{transform:translate(30px,-24px)}}
@keyframes float2{0%,100%{transform:translate(0,0)}50%{transform:translate(-26px,28px)}}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:700;color:var(--ink);border:1px solid var(--line);background:rgba(124,92,252,.13);padding:8px 16px;border-radius:100px;margin-bottom:32px}
.eyebrow .l{width:7px;height:7px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px rgba(255,90,77,.22);animation:pulse 1.8s infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 3px rgba(255,90,77,.28)}50%{box-shadow:0 0 0 7px rgba(255,90,77,0)}}
.hero h1{font-size:66px;line-height:1.1}
.hero h1 .u{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .sub{margin-top:30px;font-size:19.5px;color:var(--ink2);max-width:520px;line-height:1.78}
.cta-row{margin-top:42px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.play{display:flex;align-items:center;gap:11px;color:var(--ink);font-weight:600;font-size:15px;cursor:pointer;text-decoration:none}
.play .ic{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;background:var(--bg2);transition:.2s}
.play:hover .ic{border-color:var(--coral);color:var(--coral)}
.stats{margin-top:54px;display:flex;gap:44px;flex-wrap:wrap}
.stat b{font-family:'Archivo';font-size:32px;font-weight:800;display:block;letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat span{font-size:13px;color:var(--ink2)}
.stage{position:relative;justify-self:center;perspective:1200px}
.phone{width:300px;height:608px;border-radius:42px;background:linear-gradient(160deg,#171722,#0B0B13);border:1px solid #2C2C3D;box-shadow:0 50px 100px -30px rgba(124,92,252,.6);position:relative;overflow:hidden;padding:14px;transform:rotateY(-11deg) rotateX(3deg);animation:tilt 8s ease-in-out infinite}
@keyframes tilt{0%,100%{transform:rotateY(-11deg) rotateX(3deg)}50%{transform:rotateY(-4deg) rotateX(1deg)}}
.screen{width:100%;height:100%;border-radius:30px;overflow:hidden;position:relative;background:#0E0E18}
.vidbg{position:absolute;inset:0;background:radial-gradient(120% 78% at 50% 12%,rgba(177,92,255,.55),transparent 60%),linear-gradient(180deg,#38215C,#12121E)}
.vidbg::after{content:"";position:absolute;inset:0;background:radial-gradient(60% 40% at 50% 42%,rgba(255,90,77,.25),transparent 70%)}
.ptop{position:absolute;top:15px;left:14px;right:14px;display:flex;justify-content:space-between;align-items:center;z-index:4}
.pav{display:flex;align-items:center;gap:9px}.pav .c{width:32px;height:32px;border-radius:50%;background:var(--grad)}
.pav .t{font-size:12.5px;font-weight:700}.pav .s{font-size:10px;color:#CFC9E6}
.plive{font-size:10px;font-weight:800;background:var(--coral);padding:5px 9px;border-radius:7px;display:flex;gap:5px;align-items:center;box-shadow:0 6px 18px -6px rgba(255,90,77,.8)}
.plive::before{content:"";width:5px;height:5px;border-radius:50%;background:#fff;animation:pulse2 1.4s infinite}
@keyframes pulse2{50%{opacity:.3}}
.rail{position:absolute;right:12px;bottom:172px;display:flex;flex-direction:column;gap:15px;z-index:4;align-items:center}
.rail i{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-size:16px;font-style:normal}
.rail i.h{color:var(--coral)}
.coupon{position:absolute;left:14px;bottom:176px;background:var(--grad);font-size:10px;font-weight:800;padding:8px 12px;border-radius:10px;z-index:4;animation:bob 3s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-6px)}}
.buyalert{position:absolute;left:14px;bottom:214px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-size:10px;font-weight:600;padding:7px 11px;border-radius:9px;z-index:4;color:#fff}
.chat{position:absolute;left:14px;right:70px;bottom:96px;z-index:4;display:flex;flex-direction:column;gap:7px}
.msg{font-size:10.5px;color:#EDE9FA;opacity:0;animation:msgin .5s forwards}.msg b{color:#C3B4FF}
.msg:nth-child(1){animation-delay:.6s}.msg:nth-child(2){animation-delay:1.4s}.msg:nth-child(3){animation-delay:2.2s}
@keyframes msgin{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
.prodbar{position:absolute;left:12px;right:12px;bottom:14px;background:#fff;border-radius:14px;padding:10px;display:flex;align-items:center;gap:10px;z-index:4;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.prodbar .im{width:40px;height:40px;border-radius:9px;background:linear-gradient(135deg,#FFD1E4,#E7D8FF)}
.prodbar .t{font-size:11px;font-weight:700;color:#111}.prodbar .pr{font-size:12.5px;font-weight:800;color:#111}
.prodbar .buy{margin-left:auto;font-size:10px;font-weight:800;color:#fff;background:var(--coral);padding:8px 13px;border-radius:9px}
.float-badge{position:absolute;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px 15px;z-index:5;box-shadow:0 18px 40px -18px rgba(0,0,0,.7)}
.fb1{top:52px;left:-46px;animation:bob 4s ease-in-out infinite}.fb2{bottom:88px;right:-52px;animation:bob 5s ease-in-out infinite .5s}
.float-badge .k{font-size:10px;color:var(--ink2)}.float-badge .val{font-family:'Archivo';font-size:16px;font-weight:800;margin-top:2px}.float-badge .val.c{color:var(--coral)}
.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
/* 그라데이션 끝값은 토큰(--panel2)을 쓴다. 어두운 값을 박아 두면
   라이트 모드에서 카드만 검게 남아 그 위 글자가 안 보인다. */
.v{border:1px solid var(--line);border-radius:20px;padding:30px;background:linear-gradient(180deg,var(--panel),var(--panel2));position:relative;overflow:hidden;transition:.25s}
.v:hover{transform:translateY(-4px);border-color:var(--v)}
.v::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s}
.v:hover::before{transform:scaleX(1)}
.v .vico{width:50px;height:50px;border-radius:14px;background:rgba(124,92,252,.15);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:#B7A8FF;font-size:22px;margin-bottom:20px}
.v h3{font-size:21px;font-weight:800;letter-spacing:-.02em}.v p{color:var(--ink2);font-size:15px;margin-top:13px;line-height:1.75}
.showcase{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.scpanel{border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,var(--panel),var(--field));padding:30px;position:relative;overflow:hidden}
.scpanel .gg{width:340px;height:340px;background:#FF3D8A;opacity:.18;top:-80px;right:-80px}
.flow{display:flex;flex-direction:column;gap:14px;position:relative;z-index:2}
/* 흰색 반투명은 밝은 배경에서 사실상 투명이라 카드가 사라진다. */
.step{display:flex;gap:15px;align-items:flex-start;padding:19px;border:1px solid var(--line);border-radius:14px;background:var(--bg2)}
.step .n{font-family:'Archivo';font-weight:800;font-size:13px;color:#fff;background:var(--grad);width:28px;height:28px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:none}
.step .t{font-size:15px;font-weight:700}.step .d{font-size:13px;color:var(--ink2);margin-top:5px;line-height:1.6}
.feat{list-style:none;margin-top:26px;display:flex;flex-direction:column;gap:18px}
.feat li{display:flex;gap:14px;align-items:flex-start}
.feat .ck{width:26px;height:26px;border-radius:8px;background:rgba(255,90,77,.14);color:var(--coral);display:flex;align-items:center;justify-content:center;flex:none;font-weight:800;font-size:13px}
.feat .t{font-size:16px;font-weight:700}.feat .d{font-size:14px;color:var(--ink2);margin-top:4px;line-height:1.65}
.final{text-align:center;position:relative;padding-top:96px;padding-bottom:96px}
.final .gg{width:680px;height:340px;background:#7C5CFC;left:50%;top:10%;transform:translateX(-50%);opacity:.32}
.final h2{font-size:52px}.final .cta-row{justify-content:center}
@media(max-width:960px){.hero{grid-template-columns:1fr;gap:50px}.hero h1{font-size:44px}.showcase{grid-template-columns:1fr}.vgrid{grid-template-columns:1fr}.stage{margin-top:6px}.final h2{font-size:34px}}
