.hero::before,.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity 1.8s var(--ease)}
.hero::before{background:radial-gradient(54rem 30rem at 50% 16%,rgba(255,31,122,.10),transparent 70%),radial-gradient(34rem 24rem at 92% 78%,rgba(122,92,255,.06),transparent 70%),radial-gradient(30rem 22rem at 6% 70%,rgba(255,92,157,.06),transparent 70%)}
.hero::after{background-image:radial-gradient(rgba(22,19,26,.13) 1px,transparent 1.2px);background-size:28px 28px;-webkit-mask-image:radial-gradient(70% 60% at 50% 45%,#000 20%,transparent 78%);mask-image:radial-gradient(70% 60% at 50% 45%,#000 20%,transparent 78%)}
.hero.intro-done::before{opacity:1}
.hero.intro-done::after{opacity:.7}

.home-ticker{position:relative;z-index:3;margin-top:calc(var(--tk-pull,0px) * -1);padding-top:var(--tk-gap,1.25rem);transition:opacity .8s var(--ease)}
body.intro .home-ticker{opacity:0;pointer-events:none}
.tk-row{height:3.25rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.tk-track{display:flex;width:max-content;gap:.625rem;padding:.1875rem 0;animation:tk 120s linear infinite}
.tk-row:hover .tk-track{animation-play-state:paused}
.tk-chip{display:inline-flex;align-items:center;gap:.5rem;height:2.875rem;padding:0 1rem 0 .875rem;border:1px solid var(--line);border-radius:var(--r-pill);background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font:560 .875rem/1 var(--sans);letter-spacing:-.01em;color:var(--fg);white-space:nowrap;transition:border-color var(--d2),box-shadow var(--d2),transform var(--d2)}
.tk-chip:hover{border-color:var(--pink-line);box-shadow:0 .5rem 1.25rem -.75rem rgba(255,31,122,.45);transform:translateY(-1px)}
.tk-chip img{display:block}
@keyframes tk{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tk-track{animation:none}.tk-row{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}

.home-nums{padding:calc(var(--sec) * .9) 0 calc(var(--sec) * .6);border-top:0!important}
.nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.nums>.num{display:flex;flex-direction:column;gap:.75rem;padding:clamp(1.5rem,2.6vw,2.5rem) clamp(1rem,2vw,2rem)}
.nums>.num+.num{border-left:1px solid var(--line-2)}
.nums>.num:first-child{padding-left:0}
.num-v{font:700 clamp(2.5rem,1.4rem + 3.6vw,4.75rem)/1 var(--sans);letter-spacing:var(--ls-display);font-variant-numeric:tabular-nums;color:var(--fg);background:linear-gradient(180deg,var(--fg) 40%,#4a4350);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.nums>.num span{max-width:15rem;font:var(--t-small);color:var(--muted)}

.home-ways .roads{border-top:0;gap:1.5rem}
.home-ways .road,.home-ways .road+.road{padding:clamp(1.5rem,2.4vw,2.5rem);border:1px solid var(--line);border-radius:1.5rem;background:linear-gradient(180deg,#fff,#fbfafc);box-shadow:var(--sh1);min-width:0}
.home-ways .road-t{margin-top:-.25rem}
.home-ways .road-a{padding-top:1rem}
.home-ways .road-kv{max-width:none}

.mock{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:1rem;background:#fff;box-shadow:var(--sh2);overflow:hidden;margin-top:.5rem}
.mk-bar{display:flex;align-items:center;gap:.75rem;height:2.75rem;padding:0 .875rem;border-bottom:1px solid var(--line-2);background:var(--surface-2)}
.term-dots{display:inline-flex;gap:.375rem}
.term-dots i{width:.5625rem;height:.5625rem;border-radius:50%;background:#d9d5de}
.mk-model{display:inline-flex;align-items:center;gap:.4375rem;margin-left:auto;height:1.75rem;padding:0 .625rem;border:1px solid var(--line);border-radius:.5rem;background:#fff;font:560 .8125rem/1 var(--sans);color:var(--fg)}
.mk-model em{font-style:normal;font-size:.6875rem;color:var(--faint)}
.mk-body{display:flex;flex-direction:column;gap:.875rem;padding:1.125rem 1rem 1rem;min-height:13.5rem}
.mk-u{align-self:flex-end;max-width:82%;padding:.6875rem .9375rem;border-radius:1rem 1rem .25rem 1rem;background:var(--fg);color:#fff;font:var(--t-small)}
.mk-a{display:flex;flex-direction:column;gap:.5rem;max-width:92%}
.mk-r{font:var(--t-small);color:var(--fg-2)}
.mk-r b{font-weight:640;color:var(--fg)}
.mk-cur{display:inline-block;width:.5rem;height:1em;margin-left:.1875rem;vertical-align:-.15em;border-radius:1px;background:var(--pink);animation:blink 1.1s steps(2,start) infinite}
@keyframes blink{50%{opacity:0}}
.mk-in{display:flex;align-items:center;justify-content:space-between;margin:0 .75rem .75rem;height:2.75rem;padding:0 .5rem 0 .875rem;border:1px solid var(--line);border-radius:.875rem;background:var(--surface-2);font:var(--t-small);color:var(--faint)}
.mk-in em{display:grid;place-items:center;width:1.875rem;height:1.875rem;border-radius:.5625rem;background:var(--pink);font-style:normal;font-weight:700;color:#fff}
.road.in .mk-u{animation:mk-rise .6s var(--ease) .15s both}
.road.in .mk-r{animation:mk-rise .6s var(--ease) both}
.road.in .mk-r:nth-child(1){animation-delay:.55s}
.road.in .mk-r:nth-child(2){animation-delay:.95s}
.road.in .mk-r:nth-child(3){animation-delay:1.35s}
@keyframes mk-rise{from{opacity:0;transform:translateY(.5rem)}}

.term{margin-top:.5rem;border:1px solid rgba(255,255,255,.08);border-radius:1rem;background:#15121b;box-shadow:0 1.5rem 2.5rem -1.75rem rgba(22,19,26,.6)}
.term-head{display:flex;align-items:center;gap:.75rem;height:2.75rem;padding:0 .5rem 0 .875rem;border-bottom:1px solid rgba(255,255,255,.07);background:#1b1722}
.term .term-dots i{background:rgba(255,255,255,.2)}
.term .term-dots i:first-child{background:var(--pink)}
.term-tabs{display:flex;gap:.25rem;margin-left:.375rem}
.term-tab{height:1.75rem;padding:0 .625rem;border-radius:.5rem;font:600 .75rem/1 var(--sans);color:rgba(255,255,255,.52);transition:color var(--d2),background var(--d2)}
.term-tab:hover{color:#fff}
.term-tab[aria-selected=true]{background:rgba(255,255,255,.09);color:#fff}
.term .copy{margin-left:auto;color:rgba(255,255,255,.55)}
.term .copy:hover{color:#fff;background:rgba(255,255,255,.08)}
.term .copy.done{color:var(--pink-2)}
.term pre{min-height:12.5rem;color:#e9e5ee;background:none}
.term .k{color:#ff7ab0}.term .s{color:#7ee0b0}.term .c{color:#8a8494}.term .n{color:#ffc26b}

.home-models .mgroups{border-top:0;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}
.home-models .mgroup,.home-models .mgroup+.mgroup,.home-models .mgroup:last-child{padding:1.25rem 1rem 1.375rem 1.25rem;border:1px solid var(--line);border-radius:1.25rem;background:#fff;transition:border-color var(--d2),box-shadow var(--d2)}
.home-models .mgroup:hover{border-color:var(--pink-line);box-shadow:var(--sh2)}
.mg-h{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.eyebrow.mg-h b.mg-n{display:inline-grid;place-items:center;min-width:1.5rem;height:1.375rem;padding:0 .4375rem;border-radius:var(--r-pill);background:var(--pink-soft);font:600 .6875rem/1 var(--mono);letter-spacing:0;color:var(--pink-deep)}
.home-models .mgroup a:hover{background:var(--surface-2)}

.home-gate{position:relative;margin-top:0;border-top:0!important;background:#14111a;color:#fff;overflow:hidden;isolation:isolate}
.home-gate::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(52rem 26rem at 88% -8%,rgba(255,31,122,.26),transparent 62%),radial-gradient(38rem 24rem at -4% 112%,rgba(255,92,157,.13),transparent 64%)}
.home-gate::after{content:"";position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1.2px);background-size:26px 26px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,transparent);mask-image:linear-gradient(180deg,transparent,#000 30%,transparent)}
.home-gate .eyebrow{color:rgba(255,255,255,.55)}
.home-gate .h2{color:#fff}
.home-gate .sec-head>p{color:rgba(255,255,255,.62)}
.flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0 0 clamp(2rem,3vw,3rem);padding:0;list-style:none}
.flow li{position:relative;display:flex;flex-direction:column;gap:.375rem;padding:1.125rem 1rem 1.125rem 1.125rem;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035)}
.flow li:first-child{border-radius:1rem 0 0 1rem}
.flow li:last-child{border-radius:0 1rem 1rem 0}
.flow li+li{margin-left:-1px}
.flow li.hot{border-color:rgba(255,31,122,.55);background:linear-gradient(180deg,rgba(255,31,122,.16),rgba(255,31,122,.05));z-index:1}
.flow li span{font:var(--t-meta);letter-spacing:var(--ls-meta);color:rgba(255,255,255,.4)}
.flow li.hot span{color:var(--pink-2)}
.flow li b{font:var(--t-h3);letter-spacing:var(--ls-h3);color:#fff}
.flow li small{font:var(--t-small);color:rgba(255,255,255,.58)}
.flow li+li::before{content:"";position:absolute;left:-.4375rem;top:1.5rem;width:.875rem;height:.875rem;border-radius:50%;background:#14111a;border:2px solid var(--pink);box-shadow:0 0 0 .25rem rgba(255,31,122,.16);z-index:2;animation:pulse-dot 2.4s ease-in-out infinite}
.flow li:nth-child(3)::before{animation-delay:.4s}.flow li:nth-child(4)::before{animation-delay:.8s}.flow li:nth-child(5)::before{animation-delay:1.2s}
@keyframes pulse-dot{50%{box-shadow:0 0 0 .5rem rgba(255,31,122,0)}}
.home-gate .gate{border-top:1px solid rgba(255,255,255,.1)}
.home-gate .gate-i+.gate-i{border-left-color:rgba(255,255,255,.08)}
.home-gate .gate-code{background:rgba(255,255,255,.07);color:var(--pink-2)}
.home-gate .gate-i .h3{color:#fff}
.home-gate .gate-i p:not(.gate-code){color:rgba(255,255,255,.6)}
.home-gate+.home-cta{padding-top:var(--sec)}

.home-cta .cta-in{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--pink-soft),#fff 55%,var(--surface-2));border:1px solid var(--pink-line)}
.home-cta .cta-in::after{content:"";position:absolute;right:-3rem;bottom:-4rem;width:22rem;height:13rem;background:url(/assets/mark.svg) center/contain no-repeat;opacity:.07;pointer-events:none}
.home-cta .cta-in>*{position:relative;z-index:1}

@media (max-width:62rem){
  .flow{grid-template-columns:1fr;gap:0}
  .flow li,.flow li:first-child,.flow li:last-child{border-radius:0}
  .flow li:first-child{border-radius:1rem 1rem 0 0}
  .flow li:last-child{border-radius:0 0 1rem 1rem}
  .flow li+li{margin-left:0;margin-top:-1px}
  .flow li+li::before{left:1.125rem;top:-.4375rem}
}
@media (max-width:44rem){
  .nums{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nums>.num,.nums>.num:first-child{padding:1.5rem 1rem 1.5rem 0}
  .nums>.num+.num{border-left:0}
  .nums>.num:nth-child(2n){padding-left:1rem;border-left:1px solid var(--line-2)}
  .nums>.num:nth-child(n+3){border-top:1px solid var(--line-2)}
  .home-ways .road,.home-ways .road+.road{padding:1.25rem;border:1px solid var(--line)}
  .home-models .mgroup,.home-models .mgroup+.mgroup,.home-models .mgroup:last-child{padding:1.125rem 1rem}
  .mk-body{min-height:0}
  .term .term-dots{display:none}
  .term-head{padding-left:.5rem}
  .term-tabs{margin-left:0}
  .term-tab{padding:0 .5rem}
}
@media (prefers-reduced-motion:reduce){
  .flow li+li::before,.mk-cur{animation:none}
  .road.in .mk-u,.road.in .mk-r{animation:none}
}
