/* CrikTracker marketing site — shared by every page. */
:root{
    --red:#C8102E; --red2:#8E0B20; --live:#FF4D4D; --green:#00B16A;
    --ink:#101014; --paper:#FFFFFF; --wash:#F2EEEA; --muted:#6A625C; --line:#E0D8D1;
    --sans:"Helvetica Neue",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  }
  @media(prefers-color-scheme:dark){
    :root{--ink:#F5F2EF;--paper:#111116;--wash:#191920;--muted:#9C948D;--line:#2C2C35}
  }
  *{box-sizing:border-box}
  body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
       font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  .wrap{max-width:1140px;margin:0 auto;padding:0 24px}
  h1,h2,h3{margin:0;line-height:.94;text-wrap:balance}
  h1{font-size:clamp(3rem,11vw,8rem);font-weight:900;letter-spacing:-.045em;text-transform:uppercase}
  h2{font-size:clamp(2rem,5.5vw,4rem);font-weight:900;letter-spacing:-.04em;text-transform:uppercase}
  h3{font-size:1.05rem;font-weight:800;letter-spacing:-.01em;text-transform:uppercase}
  p{margin:0}
  a{color:inherit}

  /* Broadcast ticker */
  .ticker{background:var(--ink);color:var(--paper);overflow:hidden;white-space:nowrap;
          font-size:.76rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;padding:9px 0}
  .tk{display:inline-block;animation:slide 26s linear infinite}
  .tk span{padding:0 26px;opacity:.85}
  .tk b{color:var(--live)}
  @keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media(prefers-reduced-motion:reduce){.tk{animation:none}}

  /* Sticky header. Needs an explicit background: the rule had none, so the page
   would scroll visibly THROUGH it. z-index clears the hero's skewed ::after
   (z-index 2) and the scoreboard slab (3). */
header{position:sticky;top:0;z-index:50;background:var(--paper);
border-bottom:3px solid var(--ink)}
/* So an anchor target is not hidden under the sticky bar. */
html{scroll-padding-top:84px}
  .bar{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
  .logo{font-weight:900;font-size:1.35rem;letter-spacing:-.04em;text-transform:uppercase;text-decoration:none}
  .logo em{color:var(--red);font-style:normal}
  nav{display:flex;gap:26px;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
  nav a{color:var(--muted);text-decoration:none}
  nav a:hover{color:var(--red)}
  @media(max-width:760px){nav{display:none}}

  /* Diagonal hero block — the broadcast lower-third, blown up. */
  .hero{position:relative;background:var(--red);color:#fff;overflow:hidden;
        padding:76px 0 130px;margin-bottom:-70px}
  .hero::after{content:"";position:absolute;left:-5%;right:-5%;bottom:-1px;height:110px;
    background:var(--paper);transform:skewY(-2.6deg);transform-origin:bottom left}
  .hero::before{content:"";position:absolute;inset:0;opacity:.16;
    background:repeating-linear-gradient(115deg,transparent 0 34px,rgba(255,255,255,.55) 34px 36px)}
  .hero .wrap{position:relative;z-index:2}
  .kb{display:inline-block;background:var(--ink);color:#fff;padding:7px 15px;
      font-size:.72rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
  .lede{font-size:1.2rem;max-width:50ch;margin-top:24px;opacity:.95}
  .cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
  .btn{padding:16px 28px;text-decoration:none;font-weight:900;font-size:.86rem;
       letter-spacing:.1em;text-transform:uppercase;border:3px solid #fff;transition:.15s}
  .b1{background:#fff;color:var(--red)}
  .b1:hover{background:var(--ink);border-color:var(--ink);color:#fff}
  .b2{color:#fff}
  .b2:hover{background:rgba(255,255,255,.16)}

  /* Scoreboard slab */
  .board{position:relative;z-index:3;background:var(--ink);color:#fff;
         border-radius:4px;box-shadow:0 30px 70px rgba(16,16,20,.35);overflow:hidden}
  .bhead{display:flex;justify-content:space-between;align-items:center;padding:13px 22px;
         background:rgba(255,255,255,.07);font-size:.7rem;font-weight:900;
         letter-spacing:.16em;text-transform:uppercase}
  .lv{display:flex;align-items:center;gap:8px;color:var(--live)}
  .dot{width:8px;height:8px;background:var(--live);border-radius:50%;
       box-shadow:0 0 0 0 rgba(255,77,77,.7);animation:pulse 1.8s infinite}
  @keyframes pulse{70%{box-shadow:0 0 0 10px rgba(255,77,77,0)}100%{box-shadow:0 0 0 0 rgba(255,77,77,0)}}
  @media(prefers-reduced-motion:reduce){.dot{animation:none}}
  .rows{display:grid;grid-template-columns:1fr 1fr}
  @media(max-width:720px){.rows{grid-template-columns:1fr}}
  .sd{padding:24px 22px;border-right:1px solid rgba(255,255,255,.1)}
  .sd:last-child{border-right:0}
  .sd.bat{background:linear-gradient(90deg,rgba(200,16,46,.28),transparent)}
  .tn{font-size:.76rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase;opacity:.75}
  .sc{font-size:clamp(2.2rem,6vw,3.2rem);font-weight:900;letter-spacing:-.045em;
      font-variant-numeric:tabular-nums;line-height:1.05;margin-top:6px}
  .ov{font-size:.85rem;opacity:.65;font-variant-numeric:tabular-nums}
  .bfoot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
         padding:16px 22px;background:rgba(255,255,255,.05)}
  .over{display:flex;gap:7px}
  .bl{width:32px;height:32px;display:grid;place-items:center;font-weight:900;font-size:.85rem;
      background:rgba(255,255,255,.1);font-variant-numeric:tabular-nums}
  .bl.w{background:var(--red)}
  .bl.s{background:var(--green)}
  .need{font-size:.86rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.85}

  section{padding:86px 0;border-top:1px solid var(--line)}
  .eyebrow{display:inline-block;background:var(--ink);color:var(--paper);padding:6px 13px;
           font-size:.68rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
  .kick{color:var(--muted);max-width:60ch;margin-top:18px;font-size:1.05rem}
  .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:44px;
        background:var(--line);border:1px solid var(--line)}
  @media(max-width:880px){.grid{grid-template-columns:1fr}}
  .cell{background:var(--paper);padding:30px 26px;transition:background .18s}
  .cell:hover{background:var(--wash)}
  .num{font-size:.7rem;font-weight:900;letter-spacing:.16em;color:var(--red);margin-bottom:12px}
  .cell p{color:var(--muted);font-size:.96rem;margin-top:10px}

  .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
  .price{font-size:2.6rem;font-weight:900;letter-spacing:-.05em;margin-top:10px;
         font-variant-numeric:tabular-nums;line-height:1}
  .per{font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
  .save{display:inline-block;margin-top:8px;background:var(--green);color:#fff;padding:4px 10px;
        font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
  .pbtn{display:block;text-align:center;margin-top:20px;padding:14px;text-decoration:none;
        font-weight:900;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;
        background:var(--ink);color:var(--paper);border:3px solid var(--ink)}
  .pbtn.alt{background:transparent;color:var(--ink)}
  .pbtn:hover{background:var(--red);border-color:var(--red);color:#fff}
  @media(max-width:880px){.plans{grid-template-columns:1fr}}
  .plan{border:3px solid var(--ink);padding:30px}
  .plan.hot{border-color:var(--green)}
  .plan ul{margin:18px 0 0;padding-left:19px;color:var(--muted);font-size:.95rem}
  .plan li{margin-bottom:9px}
  .ptag{font-size:.68rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--green)}
  footer{background:var(--ink);color:#fff;padding:48px 0;font-size:.9rem}
  .fl{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:16px;font-weight:800;
      font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}
  .fl a{text-decoration:none;opacity:.75}.fl a:hover{opacity:1;color:var(--live)}
  footer p{opacity:.6}

/* Feature pages: inline code in the notation table, and a nav that survives
   more than four items. */
code{background:var(--wash);padding:2px 6px;font-size:.88em;font-weight:700}
.cell h3{margin-bottom:0}
.kick a{text-decoration:underline}

/* Header auth buttons — the diagonal echoes the hero's cut. */
.auth{display:flex;gap:2px}
.ab{padding:10px 18px;text-decoration:none;font-weight:900;font-size:.7rem;
letter-spacing:.1em;text-transform:uppercase;background:var(--wash);color:var(--ink);
transform:skewX(-12deg)}
.ab span,.ab{display:inline-block}
.ab.pri{background:var(--red);color:#fff}
.ab:hover{background:var(--ink);color:var(--paper)}
.ab.pri:hover{background:var(--ink)}
@media(max-width:900px){.auth .ab{padding:9px 12px}}
@media(max-width:640px){.ab:not(.pri){display:none}}

/* Pricing: four plans, and the comparison matrix. */
.plans{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.plans{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.plans{grid-template-columns:1fr}}
.plan.free{border-color:var(--line)}
table.matrix td:first-child{width:52%}
table.matrix td.c,table.matrix th.c{text-align:center}
table.matrix tr.grp td{background:var(--ink);color:var(--paper);font-weight:900;
font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}
.yes{color:var(--green);font-weight:900;font-size:1.15rem}
.no{color:var(--muted);font-weight:900;font-size:1.15rem}

/* Signup: form beside a reassurance panel. */
.signup{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:start}
@media(max-width:860px){.signup{grid-template-columns:1fr;gap:28px}}
.fl-label{display:block;font-size:.7rem;font-weight:900;letter-spacing:.14em;
text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.fi{width:100%;padding:15px 16px;font-size:1.05rem;font-family:inherit;
color:var(--ink);background:var(--paper);border:3px solid var(--ink);border-radius:0}
.fi:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(200,16,46,.18)}
.fi[aria-invalid="true"]{border-color:var(--red)}
.err{color:var(--red);font-size:.86rem;font-weight:700;margin-top:8px}
.plans-pick{border:0;padding:0;margin:28px 0 0}
.opt{display:flex;gap:12px;align-items:flex-start;padding:14px;margin-top:10px;
border:1px solid var(--line);cursor:pointer}
.opt:hover{background:var(--wash)}
.opt input{margin-top:3px;accent-color:var(--red);width:18px;height:18px;flex:none}
.opt span{font-size:.96rem;color:var(--muted)}
.opt strong{color:var(--ink)}
.opt:has(input:checked){border-color:var(--red);background:var(--wash)}
form .pbtn{margin-top:24px}
.fineprint{color:var(--muted);font-size:.86rem;margin-top:14px;line-height:1.5}
.fineprint a{text-decoration:underline}
.aside{background:var(--wash);padding:26px;border:1px solid var(--line)}
.aside h3{margin-bottom:12px}
.aside ul{margin:0;padding-left:20px;color:var(--muted);font-size:.95rem}
.aside li{margin-bottom:9px}
