:root {
  --cs-bg:#080f20;
  --cs-panel:#101c38;
  --cs-panel-2:#0b1730;
  --cs-line:#2a3c69;
  --cs-line-strong:#3779aa;
  --cs-text:#eef5ff;
  --cs-muted:#b5c4df;
  --cs-brand:#52b5d9;
  --cs-brand-deep:#1768a4;
  --cs-accent:#ffd76a;
  --cs-ok:#62e2b1;
  --cs-warn:#ffca73;
  --cs-shadow:0 18px 44px rgba(0,0,0,.3);
  --cs-radius:16px;
  --cs-max:1160px;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:105px; }
html,body { margin:0; padding:0; }
body {
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Inter,Arial,sans-serif;
  background:
    radial-gradient(820px 280px at 10% -3%,rgba(47,147,194,.18),transparent 62%),
    radial-gradient(700px 260px at 94% 2%,rgba(98,226,177,.08),transparent 62%),
    linear-gradient(180deg,#070e1e,#0b1530 72%,#080f21);
  color:var(--cs-text);
  line-height:1.62;
}
a { color:#d2e9ff; }
a:hover { color:#fff; }
a:focus-visible,button:focus-visible,summary:focus-visible {
  outline:3px solid var(--cs-accent);
  outline-offset:3px;
  border-radius:8px;
}
img { max-width:100%; height:auto; }
.skip-link {
  position:fixed;
  left:12px;
  top:10px;
  z-index:10000;
  transform:translateY(-160%);
  padding:10px 14px;
  border-radius:10px;
  background:#fff;
  color:#10162c;
  font-weight:900;
  text-decoration:none;
}
.skip-link:focus { transform:translateY(0); }
#header { min-height:72px; }
#header .topbar-announcement { display:none!important; }
.critical-fallback-nav {
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px 14px;
  padding:12px 20px;
  border-bottom:1px solid #26365f;
  background:#081126;
}
.critical-fallback-nav a { color:#dce6ff; font-weight:800; text-decoration:none; }
.critical-fallback-footer { margin:0; padding:18px 20px; color:#aebce1; text-align:center; }
.wrap { width:min(var(--cs-max),calc(100% - 32px)); margin:0 auto; padding:22px 0 40px; }
.breadcrumb { margin:0 0 14px; color:var(--cs-muted); font-size:14px; }
.breadcrumb a { color:#d4e9ff; }
.breadcrumb span { color:#fff; }
.hero {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:18px;
  align-items:stretch;
}
.hero-main,.hero-side,.panel,.course-card,.question,.coupon-card {
  min-width:0;
  border:1px solid var(--cs-line);
  border-radius:var(--cs-radius);
  background:linear-gradient(180deg,rgba(17,31,61,.98),rgba(8,20,43,.99));
  box-shadow:var(--cs-shadow);
}
.hero-main {
  padding:clamp(21px,3.2vw,34px);
  border-color:var(--cs-line-strong);
  background:
    radial-gradient(620px 250px at 8% 0%,rgba(53,169,215,.2),transparent 62%),
    linear-gradient(160deg,#11254a,#08152e);
}
.hero-side { padding:clamp(18px,2.6vw,25px); }
.eyebrow {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border:1px solid #3a89a9;
  border-radius:999px;
  background:#0d2940;
  color:#dff7ff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.35px;
  text-transform:uppercase;
}
.eyebrow::before {
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--cs-ok);
  box-shadow:0 0 0 5px rgba(98,226,177,.12);
}
h1 { max-width:19ch; margin:14px 0 0; color:#fff; font-size:clamp(38px,5.1vw,62px); line-height:1.04; letter-spacing:-.7px; }
h2 { margin:0 0 12px; color:#fff; font-size:clamp(23px,2.7vw,31px); line-height:1.2; }
h3 { margin:0 0 8px; color:#fff; font-size:19px; line-height:1.35; }
p { margin:0 0 12px; }
.lead { max-width:74ch; margin-top:17px; color:#dce9ff; font-size:clamp(16px,1.8vw,19px); }
.muted { color:var(--cs-muted); }
.micro { color:#a9bbd8; font-size:12.5px; }
.byline { margin:14px 0 0; color:#aebfdb; font-size:13px; }
.byline a { font-weight:800; }
.actions,.cta-row { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:11px 16px;
  border:1px solid #4387b3;
  border-radius:11px;
  background:#12345d;
  color:#f7fbff;
  font-weight:850;
  text-align:center;
  text-decoration:none;
}
.btn:hover { background:#194775; color:#fff; text-decoration:none; }
.btn.primary { border-color:transparent; background:linear-gradient(180deg,#167ba9,#0e5789); box-shadow:0 12px 24px rgba(14,93,144,.32); }
.btn.primary:hover { background:linear-gradient(180deg,#126f9c,#0b4d7b); }
.btn.ghost { background:transparent; }
.btn.full { width:100%; }
.jump-nav { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.jump-nav a {
  padding:7px 10px;
  border:1px solid #3e608e;
  border-radius:999px;
  background:#0b1832;
  color:#dbeaff;
  font-size:13px;
  font-weight:750;
  text-decoration:none;
}
.panel { margin-top:18px; padding:clamp(19px,2.8vw,27px); }
.section-kicker { display:block; margin-bottom:7px; color:#8ddcf5; font-size:12px; font-weight:900; letter-spacing:.55px; text-transform:uppercase; }
.stat-list { margin:0; padding:0; list-style:none; }
.stat-list li { display:grid; grid-template-columns:112px minmax(0,1fr); gap:10px; padding:10px 0; border-bottom:1px solid rgba(78,111,159,.38); }
.stat-list li:last-child { border-bottom:0; }
.stat-list strong { color:#fff; }
.alert {
  margin-top:14px;
  padding:13px 14px;
  border:1px solid #8f6a2a;
  border-radius:11px;
  background:#30230e;
  color:#ffe8b2;
}
.grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.grid.two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.course-card { padding:18px; display:flex; flex-direction:column; }
.course-card p { color:var(--cs-muted); }
.course-card .cta-row { margin-top:auto; padding-top:8px; }
.tag {
  display:inline-flex;
  align-self:flex-start;
  margin-bottom:10px;
  padding:4px 8px;
  border:1px solid #39799d;
  border-radius:999px;
  background:#0c2940;
  color:#ccefff;
  font-size:12px;
  font-weight:850;
}
.comparison-scroll { overflow-x:auto; border:1px solid var(--cs-line); border-radius:12px; }
table { width:100%; border-collapse:collapse; min-width:760px; background:#09162f; }
caption { padding:13px; color:#c3d2ec; font-weight:800; text-align:left; }
th,td { padding:12px 13px; border-top:1px solid #273b67; text-align:left; vertical-align:top; }
th { color:#fff; background:#102044; }
td { color:#d8e4f8; }
.domain-list { display:grid; gap:10px; margin-top:14px; }
.domain {
  display:grid;
  grid-template-columns:52px minmax(0,1fr) 66px;
  gap:12px;
  align-items:start;
  padding:13px;
  border:1px solid #2c4c70;
  border-radius:12px;
  background:#0a1932;
}
.domain-number { color:#8ddcf5; font-weight:900; }
.domain strong { display:block; color:#fff; }
.domain-weight { color:#b9cae4; font-weight:800; text-align:right; }
.coupon-card { padding:20px; border-color:#3e8c9c; background:radial-gradient(430px 170px at 10% 0%,rgba(69,182,197,.17),transparent 70%),linear-gradient(180deg,#102b47,#0a1932); }
.coupon-code { display:inline-block; margin:0 6px; padding:7px 10px; border:1px dashed var(--cs-accent); border-radius:9px; color:#ffe99d; background:#17203b; font:900 18px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; }
.copy-coupon { min-height:44px; padding:8px 11px; border:1px solid #58a9c7; border-radius:9px; background:transparent; color:#fff; font-weight:850; cursor:pointer; }
.copy-coupon:disabled { opacity:.68; cursor:not-allowed; }
.coupon-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; margin:15px 0; counter-reset:steps; }
.coupon-step { padding:14px; border:1px solid #315c78; border-radius:11px; background:#0a1a33; counter-increment:steps; }
.coupon-step::before { content:counter(steps); display:grid; place-items:center; width:27px; height:27px; margin-bottom:8px; border-radius:50%; background:#176b91; color:#fff; font-weight:900; }
.question { margin-top:16px; padding:clamp(18px,2.7vw,25px); }
.options { margin:12px 0; padding-left:26px; }
.options li { margin:8px 0; padding-left:4px; }
details.answer { margin-top:14px; padding-top:14px; border-top:1px solid rgba(78,111,159,.42); }
details.answer summary,.faq summary { cursor:pointer; color:#fff; font-weight:850; }
.answer-box { margin-top:11px; padding:15px; border:1px solid #377466; border-radius:11px; background:#0b2929; }
.answer-box strong { color:#b8f7dc; }
.question-progress { position:sticky; top:82px; z-index:12; margin-top:18px; padding:10px 13px; border:1px solid #39776d; border-radius:11px; background:rgba(8,35,37,.96); color:#d9fff0; font-weight:800; box-shadow:0 10px 25px rgba(0,0,0,.22); }
.faq details { padding:13px 0; border-top:1px solid rgba(78,111,159,.38); }
.faq details:first-of-type { border-top:0; }
.faq details p { margin:10px 0 0; }
.link-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.link-card { display:block; padding:14px; border:1px solid #2b4b75; border-radius:11px; background:#0a1730; color:#e8f2ff; font-weight:800; text-decoration:none; }
.link-card small { display:block; margin-top:5px; color:var(--cs-muted); font-weight:500; }
.sticky-cta { display:none; }
.disclaimer { margin-top:18px; padding:14px; border-left:4px solid #4c8eae; background:#0a1932; color:#becde5; }
@media(max-width:980px) {
  #header,.critical-fallback-nav { min-height:120px; }
  .hero { grid-template-columns:1fr; }
  h1 { max-width:100%; }
  .grid,.link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  html { scroll-padding-top:135px; }
  .wrap { width:min(calc(100% - 24px),var(--cs-max)); padding-top:16px; }
  .grid,.grid.two,.link-grid,.coupon-steps { grid-template-columns:1fr; }
  .domain { grid-template-columns:46px minmax(0,1fr); }
  .domain-weight { grid-column:2; text-align:left; }
  .actions .btn,.cta-row .btn { width:100%; }
  .question-progress { top:126px; }
  body { padding-bottom:0!important; }
  .cs-mobile-community { display:none!important; }
  .sticky-cta {
    display:flex;
    position:fixed;
    left:12px;
    right:12px;
    bottom:12px;
    z-index:9997;
    max-width:560px;
    margin:0 auto;
    padding:11px 12px;
    border:1px solid #3d7894;
    border-radius:13px;
    background:rgba(8,18,38,.95);
    box-shadow:0 15px 35px rgba(0,0,0,.4);
    backdrop-filter:blur(10px);
    opacity:0;
    visibility:hidden;
    transform:translateY(18px);
    pointer-events:none;
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
  }
  .sticky-cta.is-visible { opacity:1; visibility:visible; transform:translateY(0); pointer-events:auto; }
  .sticky-cta .btn { width:100%; }
  .stat-list li { grid-template-columns:96px minmax(0,1fr); }
}
@media(max-width:480px) {
  .hero-main,.hero-side,.panel,.course-card,.question,.coupon-card { padding:16px; }
  h1 { font-size:36px; }
  .coupon-code { margin:5px 4px 5px 0; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}
