/* Scanner landing page (what non-members see at /scanner/). Dark-first, full-bleed sections, phone-framed screenshots. */
.txk-sl { --sl-red: #DC2626; --sl-ink: #fff; --sl-muted: rgba(255,255,255,.72); --sl-line: rgba(255,255,255,.12); --sl-card: rgba(255,255,255,.06);
  color: var(--sl-ink); margin: 0; font-family: 'Instrument Sans', -apple-system, system-ui, sans-serif; }
.txk-sl * { box-sizing: border-box; }
.txk-sl ul, .txk-sl li { list-style: none !important; margin-left: 0; }
.txk-sl li::marker { content: ""; }
.txk-sl .sl-bleed { width: 100vw; margin-left: calc(50% - 50vw); }
.txk-sl .sl-wrap { max-width: 1080px; margin: 0 auto; padding: 0 20px; }
.txk-sl .sl-kicker { margin: 0 0 .6rem; font-size: .78rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--sl-red); }
.txk-sl h1, .txk-sl h2, .txk-sl h3 { color: var(--sl-ink); margin: 0; }
.txk-sl .sl-lede { color: var(--sl-muted); font-size: 1.12rem; line-height: 1.55; max-width: 60ch; margin: 0; }
.txk-sl .sl-btn { display: inline-flex; align-items: center; gap: .4rem; padding: .85rem 1.3rem; border-radius: 10px; font-weight: 700; font-size: 1rem; text-decoration: none !important; line-height: 1.1; border: 1px solid transparent; }
.txk-sl .sl-btn--primary { background: var(--sl-red); color: #fff !important; box-shadow: 0 8px 24px rgba(220,38,38,.3); }
.txk-sl .sl-btn--primary:hover { background: #b91c1c; }
.txk-sl .sl-btn--ghost { background: rgba(255,255,255,.08); color: #fff !important; border-color: rgba(255,255,255,.25); }
.txk-sl .sl-btn--ghost:hover { background: rgba(255,255,255,.14); }
.txk-sl .sl-btn small { font-weight: 500; opacity: .85; }
.txk-sl .sl-actions { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; margin-top: 1.4rem; }
.txk-sl .sl-fine { color: var(--sl-muted); font-size: .9rem; margin: .9rem 0 0; }
.txk-sl .sl-fine a { color: #fff; }

/* Hero */
.txk-sl .sl-hero { position: relative; overflow: hidden; background: #0d0d0d center 45% / cover no-repeat; min-height: 560px; display: flex; align-items: center; padding: 72px 0 64px; }
.txk-sl .sl-hero::before { content: ""; position: absolute; inset: 0; background:
  linear-gradient(90deg, rgba(8,8,10,.92) 0%, rgba(8,8,10,.78) 42%, rgba(8,8,10,.35) 75%, rgba(8,8,10,.15) 100%),
  linear-gradient(180deg, rgba(8,8,10,.35) 0%, rgba(8,8,10,0) 30%, rgba(8,8,10,0) 65%, rgba(13,13,13,1) 100%); }
.txk-sl .sl-hero .sl-wrap { position: relative; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 2.5rem; align-items: center; }
.txk-sl .sl-hero h1 { font-family: 'Archivo Black', Impact, sans-serif; font-size: clamp(2.4rem, 5.6vw, 4.4rem); line-height: .98; text-transform: uppercase; letter-spacing: .005em; text-shadow: 0 3px 18px rgba(0,0,0,.55); margin: 0 0 1rem; }
.txk-sl .sl-hero .sl-lede { text-shadow: 0 2px 10px rgba(0,0,0,.6); font-size: 1.18rem; }
.txk-sl .sl-live { background: rgba(10,10,12,.72); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border: 1px solid var(--sl-line); border-left: 5px solid var(--sl-red); border-radius: 16px; padding: 1.25rem 1.3rem; box-shadow: 0 30px 60px rgba(0,0,0,.45); }
.txk-sl .sl-live .sl-kicker { display: flex; align-items: center; gap: .5rem; }
.txk-sl .sl-live .sl-dot { width: 9px; height: 9px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 0 rgba(34,197,94,.6); animation: sl-pulse 1.8s infinite; }
@keyframes sl-pulse { 0% { box-shadow: 0 0 0 0 rgba(34,197,94,.6); } 70% { box-shadow: 0 0 0 9px rgba(34,197,94,0); } 100% { box-shadow: 0 0 0 0 rgba(34,197,94,0); } }
.txk-sl .sl-live h2 { font-family: 'Libre Baskerville', Georgia, serif; font-size: 1.3rem; line-height: 1.3; }
.txk-sl .sl-live .sl-time { color: var(--sl-muted); font-size: .9rem; margin: .5rem 0 0; }
.txk-sl .sl-live .sl-lock { margin: .9rem 0 0; padding-top: .8rem; border-top: 1px solid var(--sl-line); color: var(--sl-muted); font-size: .92rem; }
.txk-sl .sl-live .sl-lock a { color: #fff; font-weight: 600; }

/* Coverage chips */
.txk-sl .sl-coverage { padding: 1.6rem 0; border-bottom: 1px solid var(--sl-line); }
.txk-sl .sl-coverage .sl-wrap { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .6rem; }
.txk-sl .sl-coverage span { color: var(--sl-muted); font-size: .9rem; margin-right: .4rem; }
.txk-sl .sl-chip { font-size: .85rem; font-weight: 600; padding: .35rem .75rem; border-radius: 999px; border: 1px solid var(--sl-line); background: var(--sl-card); }

/* Features */
.txk-sl .sl-features { padding: 3.5rem 0 1rem; }
.txk-sl .sl-feature { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.5rem 4rem; align-items: center; padding: 2.4rem 0; border-bottom: 1px solid var(--sl-line); }
.txk-sl .sl-feature:last-child { border-bottom: 0; }
.txk-sl .sl-feature--flip .sl-feature__media { order: -1; }
.txk-sl .sl-feature h2 { font-family: 'Libre Baskerville', Georgia, serif; font-size: clamp(1.5rem, 2.6vw, 2.1rem); line-height: 1.2; margin: 0 0 .8rem; }
.txk-sl .sl-feature p { color: var(--sl-muted); font-size: 1.05rem; line-height: 1.6; margin: 0; }
.txk-sl .sl-feature ul { margin: .9rem 0 0; padding: 0; list-style: none; display: grid; gap: .4rem; }
.txk-sl .sl-feature li { color: var(--sl-muted); font-size: .98rem; padding-left: 1.4rem; position: relative; }
.txk-sl .sl-feature li::before { content: "✓"; position: absolute; left: 0; color: var(--sl-red); font-weight: 700; }
.txk-sl .sl-feature__media { display: flex; justify-content: center; }
.txk-sl .sl-phone { width: min(330px, 100%); aspect-ratio: 780 / 1150; border-radius: 40px; border: 9px solid #1b1b1e; background: #0b0b0c; overflow: hidden; box-shadow: 0 30px 70px rgba(0,0,0,.6), 0 0 0 1px rgba(255,255,255,.08); position: relative; }
.txk-sl .sl-phone::after { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 110px; height: 26px; background: #000; border-radius: 0 0 16px 16px; }
.txk-sl .sl-phone img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; }
.txk-sl .sl-phone--short { aspect-ratio: 780 / 1080; }
.txk-sl .sl-browser { width: min(520px, 100%); border-radius: 14px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); box-shadow: 0 30px 70px rgba(0,0,0,.6); background: #F3F4F6; }
.txk-sl .sl-browser__bar { height: 30px; background: #1b1b1e; display: flex; align-items: center; gap: 6px; padding: 0 12px; }
.txk-sl .sl-browser__bar i { width: 10px; height: 10px; border-radius: 50%; background: #3a3a3f; display: block; }
.txk-sl .sl-browser__bar i:nth-child(1) { background: #ff5f57; } .txk-sl .sl-browser__bar i:nth-child(2) { background: #febc2e; } .txk-sl .sl-browser__bar i:nth-child(3) { background: #28c840; }
.txk-sl .sl-browser img { width: 100%; height: auto; display: block; max-height: 560px; object-fit: cover; object-position: top; }

/* Trust */
.txk-sl .sl-trust { padding: 2.5rem 0 3rem; }
.txk-sl .sl-trust .sl-wrap { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.txk-sl .sl-trust h2 { grid-column: 1 / -1; font-family: 'Libre Baskerville', Georgia, serif; font-size: 1.5rem; margin-bottom: .4rem; }
.txk-sl .sl-trust article { background: var(--sl-card); border: 1px solid var(--sl-line); border-radius: 14px; padding: 1.1rem 1.15rem; }
.txk-sl .sl-trust h3 { font-size: 1rem; margin: 0 0 .35rem; }
.txk-sl .sl-trust p { color: var(--sl-muted); font-size: .93rem; line-height: 1.5; margin: 0; }

/* Tiers */
.txk-sl .sl-tiers { position: relative; padding: 4rem 0; background: #0d0d0d center / cover no-repeat; }
.txk-sl .sl-tiers::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(13,13,13,1) 0%, rgba(8,8,10,.78) 25%, rgba(8,8,10,.78) 75%, rgba(13,13,13,1) 100%); }
.txk-sl .sl-tiers .sl-wrap { position: relative; }
.txk-sl .sl-tiers h2 { font-family: 'Archivo Black', Impact, sans-serif; text-transform: uppercase; font-size: clamp(1.8rem, 3.6vw, 2.6rem); line-height: 1; margin: 0 0 .6rem; text-shadow: 0 3px 18px rgba(0,0,0,.55); }
.txk-sl .sl-tiers .sl-lede { margin-bottom: 2rem; }
.txk-sl .sl-tier-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.txk-sl .sl-tier { background: rgba(10,10,12,.78); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border: 1px solid var(--sl-line); border-radius: 16px; padding: 1.4rem 1.3rem; display: flex; flex-direction: column; position: relative; }
.txk-sl .sl-tier--featured { border-color: var(--sl-red); box-shadow: 0 20px 50px rgba(220,38,38,.18); }
.txk-sl .sl-tier__flag { position: absolute; top: -12px; left: 1.2rem; background: var(--sl-red); color: #fff; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: .25rem .6rem; border-radius: 999px; }
.txk-sl .sl-tier h3 { font-size: 1.25rem; margin: 0 0 .15rem; }
.txk-sl .sl-tier .sl-price { font-family: 'Archivo Black', Impact, sans-serif; font-size: 2.1rem; line-height: 1; margin: .5rem 0 .2rem; }
.txk-sl .sl-tier .sl-price small { font-family: 'Instrument Sans', sans-serif; font-weight: 500; font-size: .95rem; color: var(--sl-muted); }
.txk-sl .sl-tier .sl-yearly { color: var(--sl-muted); font-size: .85rem; margin: 0 0 .9rem; }
.txk-sl .sl-tier ul { list-style: none; margin: 0 0 1.2rem; padding: 0; display: grid; gap: .45rem; flex: 1; }
.txk-sl .sl-tier li { padding-left: 1.4rem; position: relative; font-size: .95rem; color: rgba(255,255,255,.88); }
.txk-sl .sl-tier li::before { content: "✓"; position: absolute; left: 0; color: var(--sl-red); font-weight: 700; }
.txk-sl .sl-tier li.sl-dim { color: var(--sl-muted); }
.txk-sl .sl-tier li.sl-dim::before { content: "+"; }
.txk-sl .sl-tier .sl-btn { justify-content: center; }

/* Final CTA */
.txk-sl .sl-cta { position: relative; padding: 4.5rem 0; background: #0d0d0d center 40% / cover no-repeat; text-align: center; }
.txk-sl .sl-cta::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(13,13,13,1) 0%, rgba(8,8,10,.6) 30%, rgba(8,8,10,.6) 70%, rgba(13,13,13,1) 100%); }
.txk-sl .sl-cta .sl-wrap { position: relative; max-width: 720px; }
.txk-sl .sl-cta h2 { font-family: 'Archivo Black', Impact, sans-serif; text-transform: uppercase; font-size: clamp(1.8rem, 4vw, 2.8rem); line-height: 1; text-shadow: 0 3px 18px rgba(0,0,0,.6); margin: 0 0 .8rem; }
.txk-sl .sl-cta .sl-lede { margin: 0 auto; text-shadow: 0 2px 10px rgba(0,0,0,.6); }
.txk-sl .sl-cta .sl-actions { justify-content: center; }

@media (max-width: 860px) {
  .txk-sl .sl-hero { min-height: 0; padding: 56px 0 48px; background-position: 62% 45%; }
  .txk-sl .sl-hero .sl-wrap { grid-template-columns: 1fr; gap: 1.6rem; }
  .txk-sl .sl-feature { grid-template-columns: 1fr; gap: 1.6rem; padding: 2rem 0; }
  .txk-sl .sl-feature--flip .sl-feature__media { order: 0; }
  .txk-sl .sl-trust .sl-wrap { grid-template-columns: 1fr 1fr; }
  .txk-sl .sl-tier-grid { grid-template-columns: 1fr; }
  .txk-sl .sl-phone { width: min(290px, 100%); }
}
@media (max-width: 520px) {
  .txk-sl .sl-trust .sl-wrap { grid-template-columns: 1fr; }
  .txk-sl .sl-actions .sl-btn { width: 100%; justify-content: center; }
}
@media (prefers-reduced-motion: reduce) { .txk-sl .sl-live .sl-dot { animation: none; } }
