/* GTLIKE visitor-to-player journey; scoped to the pages that use it. */
.funnel-hero .funnel-eyebrow { color:#b6a0fa; font-size:11px; font-weight:850; letter-spacing:.12em; margin:0 0 15px; }
.hero.funnel-hero .hero-copy>h1 { margin-bottom:18px; }
.hero.funnel-hero .funnel-intro { color:#c2d0de; font-size:17px; line-height:1.7; margin:0 0 22px; max-width:55ch; }
.hero.funnel-hero .actions { margin:0; gap:10px; }
.funnel-trust { display:flex; flex-wrap:wrap; gap:8px 18px; list-style:none; padding:0; margin:20px 0 0; color:#b9c9dc; font-size:13px; font-weight:750; }
.funnel-trust li { display:flex; gap:7px; align-items:center; }
.funnel-trust li::before { content:'✓'; color:#b6a0fa; font-weight:900; }
.hero.funnel-hero .price-note { margin:10px 0 0; color:#a9bbcf; font-size:12px; line-height:1.6; }
.hero.funnel-hero .hero-badge-table { margin-top:24px; margin-bottom:0; }
.funnel-how, .funnel-final { padding:clamp(22px,4vw,40px); border:1px solid #33445e; border-radius:16px; background:#0d1824; }
.funnel-how>header { max-width:680px; }
.funnel-how h2, .funnel-final h2 { font-size:clamp(25px,3.2vw,36px); line-height:1.2; letter-spacing:-.025em; margin:0 0 12px; color:#f5f9ff; }
.funnel-how header>p, .funnel-final>p { color:#b9c9dc; line-height:1.7; margin:0; }
.funnel-how .funnel-step-list { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding:0; margin:28px 0 0; counter-reset:journey; }
.funnel-step-list>li { counter-increment:journey; min-width:0; padding-top:20px; border-top:1px solid #33445e; }
.funnel-step-list>li::before { content:'0' counter(journey); display:block; color:#b6a0fa; font-weight:900; font-size:13px; margin-bottom:12px; }
.funnel-step-list h3 { margin:0 0 9px; font-size:19px; color:#f5f9ff; line-height:1.35; }
.funnel-step-list p { color:#b9c9dc; font-size:14px; line-height:1.65; margin:0; }
.funnel-how .funnel-section-actions { margin:26px 0 0; }
.funnel-final { text-align:center; background:linear-gradient(115deg,#131e33,#1b1531); }
.funnel-final>p { max-width:610px; margin-inline:auto; }
.funnel-final .actions { margin:24px 0 0; justify-content:center; }
.funnel-final .funnel-trust { justify-content:center; }
.funnel-final .funnel-existing { margin:18px 0 0; font-size:14px; }
.funnel-existing a { color:#c4b5fd; text-underline-offset:4px; }
.funnel-home :is(.actions,.funnel-section-actions) .btn:focus-visible,
.funnel-auth a:focus-visible, .funnel-welcome a:focus-visible,
.funnel-welcome button:focus-visible { outline:3px solid #c4b5fd; outline-offset:4px; }
.funnel-auth .funnel-auth-title { font-size:clamp(25px,5vw,32px); line-height:1.2; text-align:center; margin:0 0 22px; color:#f5f9ff; letter-spacing:-.025em; }
.funnel-progress { display:flex; align-items:flex-start; justify-content:center; list-style:none; gap:8px; padding:0; margin:0 0 26px; counter-reset:signup; }
.funnel-progress>li { flex:1; min-width:0; text-align:center; color:#a9bbcf; font-size:12px; line-height:1.45; counter-increment:signup; }
.funnel-progress>li::before { content:counter(signup); display:grid; place-items:center; width:29px; height:29px; margin:0 auto 8px; border:1px solid #53637d; border-radius:50%; font-weight:850; }
.funnel-progress>li[aria-current=step] { color:#e2d8ff; font-weight:850; }
.funnel-progress>li[aria-current=step]::before { color:#fff; background:#6d28d9; border-color:#9b6cff; }
.funnel-auth .card .hint { margin-top:0; line-height:1.7; }
.funnel-auth .funnel-form-note { font-size:12px; color:#b9c9dc; line-height:1.6; margin:14px 0 0; }
.funnel-auth .auth-submit:disabled { cursor:wait; opacity:.75; }
.funnel-welcome .card { border-radius:16px; }
.funnel-welcome .code { user-select:all; -webkit-user-select:all; }
.funnel-welcome .funnel-copy { display:block; min-height:44px; margin:10px auto 0; padding:10px 16px; border:1px solid #66758d; border-radius:10px; background:#17283c; color:#f5f9ff; font:750 14px system-ui,Arial; cursor:pointer; }
.funnel-welcome .funnel-copy-status { min-height:1.5em; font-size:12px; margin:10px 0 0; }
.funnel-welcome .funnel-choose { font-size:13px; line-height:1.6; margin:12px 0 0; }
.funnel-welcome .funnel-email { overflow-wrap:anywhere; }
.funnel-welcome [hidden] { display:none!important; }
@media(max-width:920px) {
    .funnel-hero .funnel-trust { justify-content:center; }
    .hero.funnel-hero .funnel-intro { margin-inline:auto; }
}
@media(max-width:680px) {
    .funnel-how .funnel-step-list { grid-template-columns:minmax(0,1fr); gap:20px; margin-top:24px; }
    .funnel-step-list>li { padding-top:16px; }
    .funnel-step-list>li::before { margin-bottom:8px; }
    .funnel-how .funnel-section-actions .btn { width:100%; }
    .funnel-trust { font-size:12px; gap:8px 14px; }
    .hero.funnel-hero .funnel-intro { font-size:15px; }
    .funnel-final .actions { display:grid; grid-template-columns:minmax(0,1fr); }
    .funnel-final .actions .btn { width:100%; min-width:0; }
}
