:root { color-scheme:dark; font:16px/1.7 system-ui,sans-serif; color:#dce8ed; background:#081219; }
* { box-sizing:border-box; }
body { margin:0; }
header, main, footer { width:min(100% - 40px, 1040px); margin:auto; }
header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:24px 0; border-bottom:1px solid #24424e; }
.wordmark { color:#fff; font-weight:800; letter-spacing:.1em; text-decoration:none; white-space:nowrap; }
nav { display:flex; flex-wrap:wrap; gap:12px 22px; }
nav a { font-size:14px; text-decoration:none; }
main { padding:48px 0 56px; }
h1 { max-width:860px; margin:12px 0 20px; font-size:clamp(36px,6vw,64px); line-height:1.08; letter-spacing:-.035em; color:#fff; }
h2 { margin:0 0 12px; font-size:clamp(24px,3vw,32px); line-height:1.25; color:#fff; }
h3 { margin:0 0 10px; font-size:20px; line-height:1.35; color:#fff; }
p { margin:12px 0; }
a { color:#86dfef; }
a:hover { color:#fff; }
:focus-visible { outline:3px solid #edb46e; outline-offset:5px; }
.eyebrow { color:#86dfef; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.lead { max-width:800px; font-size:19px; color:#bfd4dd; }
.actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin:26px 0; }
.play { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; border:1px solid #86dfef; border-radius:5px; color:#081219; background:#86dfef; font-weight:750; line-height:1.3; text-decoration:none; }
.play:hover { color:#081219; background:#b3f2ff; }
figure { margin:34px 0 44px; }
figure img { display:block; width:100%; height:auto; border:1px solid #345761; border-radius:10px; background:#0e232e; }
figcaption, .muted { color:#a5bcc7; font-size:14px; }
figcaption { margin-top:10px; }
section { margin-top:44px; }
.features { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:28px; }
.card { padding:24px; border:1px solid #345761; border-radius:10px; background:#0e232e; }
.card p { margin-bottom:0; }
.reading { max-width:800px; }
li { padding-left:5px; margin:12px 0; }
table { width:100%; border-collapse:collapse; margin:24px 0; text-align:left; }
caption { margin-bottom:14px; text-align:left; font-weight:700; color:#fff; }
th, td { padding:14px 16px; border:1px solid #345761; vertical-align:top; }
thead { color:#fff; background:#0e232e; }
tbody th { width:23%; }
.table-scroll { max-width:100%; overflow-x:auto; }
.comparison { min-width:620px; }
details { padding:18px 0; border-bottom:1px solid #24424e; }
summary { cursor:pointer; font-weight:700; color:#fff; }
details p { margin-bottom:0; }
footer { padding:24px 0 36px; border-top:1px solid #24424e; }
footer p { margin:16px 0 0; color:#a5bcc7; font-size:14px; }
@media(max-width:700px) {
  header { align-items:flex-start; flex-direction:column; gap:14px; }
  header, main, footer { width:calc(100% - 32px); }
  main { padding-top:32px; }
  .features { grid-template-columns:1fr; gap:14px; }
  .lead { font-size:17px; }
  .card { padding:20px; }
  th, td { padding:12px; }
}
