:root{color-scheme:dark;--bg:#101114;--panel:#1b1d22;--text:#f6f4f2;--muted:#b8b9c0;--red:#ff4564}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:18px/1.65 system-ui,sans-serif}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #fff;outline-offset:5px}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}header,footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0}nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}nav a{text-decoration:none}.logo{object-fit:contain;max-width:100%}.button,button[data-choice]{display:inline-block;padding:14px 24px;border:0;border-radius:10px;background:#e60023;color:white;text-decoration:none;font-weight:650}.small{padding:8px 16px}.hero,.feature{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:center;padding:85px 0}.hero h1{font-size:clamp(48px,7vw,86px);line-height:1.03;letter-spacing:-.055em;margin:20px 0}.eyebrow{color:var(--red);font-size:13px;font-weight:750;letter-spacing:.16em}.lede{font-size:28px;line-height:1.35}.muted{color:var(--muted);font-size:14px}.shot{display:block;max-width:100%;width:330px;height:auto;border-radius:24px;box-shadow:0 24px 65px #0007;margin:auto}.hero .shot{transform:rotate(3deg)}h2{font-size:clamp(30px,4vw,48px);line-height:1.13;letter-spacing:-.035em}p{max-width:60ch}.intro{padding:80px 0 0;border-top:1px solid #35363c}.feature{grid-template-columns:1fr 1fr}.reverse .shot{order:2;width:440px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:60px 0}.cards>div{padding:32px;background:var(--panel);border-radius:20px}.pro{border-top:3px solid #e60023}.closing{padding:70px 0 100px}footer{border-top:1px solid #35363c;color:var(--muted);font-size:14px}footer button{border:0;padding:0;background:none;color:inherit;text-decoration:underline}.prose{max-width:780px;padding:60px 0 100px}.prose h1{font-size:clamp(44px,7vw,64px);line-height:1.1}.prose h2{font-size:28px;margin-top:48px}.prose a{color:#ff879a}.skip{position:absolute;left:16px;top:-100px}.skip:focus{top:10px;background:#111;padding:16px;z-index:4}#consent{position:fixed;bottom:20px;left:20px;right:20px;margin:auto;max-width:650px;padding:24px;background:#262830;border:1px solid #777;border-radius:16px;box-shadow:0 8px 40px #0008;z-index:3}#consent h2{font-size:23px;margin:0}#consent p{font-size:15px}#consent div{display:flex;gap:16px;flex-wrap:wrap}button[data-choice]{background:#f4f4f5;color:#151515}[hidden]{display:none!important}@media(max-width:700px){header,footer{align-items:flex-start;flex-direction:column}nav{gap:18px}.hero,.feature,.cards{grid-template-columns:1fr;gap:40px;padding:45px 0}.hero .shot{transform:none}.feature .shot{order:2}.shot{width:280px}.intro{padding-top:40px}.cards>div{padding:24px}.closing{padding:35px 0 60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:where(.hero,.feature,.cards)>*{min-width:0}.store-badge{display:inline-block;margin:10px 0}.store-badge img{display:block;width:180px;height:60px}

/* Keep intermediate tablet widths from squeezing two columns of copy. */
.hero,.feature{gap:clamp(32px,6vw,90px)}
header nav a,footer nav a,footer button{min-height:44px;display:inline-flex;align-items:center}
.prose{overflow-wrap:anywhere}
#consent{max-height:calc(100dvh - 40px);overflow-y:auto}
@media(max-width:900px){
  .hero,.feature{grid-template-columns:1fr;gap:32px;padding:48px 0}
  .hero{text-align:center}
  .hero p{margin-left:auto;margin-right:auto}
  .hero h1{font-size:clamp(44px,8vw,64px)}
  .hero .shot{transform:none}
  .feature .shot{order:2}
  .feature>div{max-width:60ch}
  .cards{gap:24px}
  .cards>div{padding:24px}
}
@media(max-width:700px){
  .wrap{width:calc(100% - 40px)}
  header{gap:8px;padding:16px 0}
  header>a{line-height:0}
  header .logo{width:168px;height:38px}
  header nav{width:100%;justify-content:space-between;gap:8px;font-size:15px}
  header .small{padding:8px 12px}
  .hero{padding:24px 0 48px}
  .hero h1{margin:12px 0 20px}
  .hero .eyebrow{margin-top:0}
  .hero .lede{font-size:22px;margin-top:0;margin-bottom:16px}
  .hero p:not([class]){font-size:16px;line-height:1.6;margin-top:0;margin-bottom:16px}
  .hero .muted{font-size:13px;margin-top:12px;margin-bottom:0}
  .hero .shot{width:260px}
  .intro{padding-top:40px}
  h2{margin-top:16px;margin-bottom:20px}
  .feature{padding:36px 0;gap:24px}
  .feature .shot{width:280px}
  .reverse .shot{width:440px;border-radius:16px}
  .cards{padding:36px 0;gap:20px}
  footer{gap:12px;padding:24px 0}
  footer nav{gap:8px 24px}
  .prose{padding:24px 0 60px}
  .prose h1{font-size:40px}
  #consent{left:12px;right:12px;bottom:12px;padding:20px;max-height:calc(100dvh - 24px)}
  #consent div{gap:12px}
  button[data-choice]{flex:1;padding:12px;font-size:16px}
}
