:root{
  --navy:#1f2a44;
  --slate:#4a6fa5;
  --bg:#fafaf8;
  --card:#f1f3f5;
  --cta:#2f7f7a;
  --ctaHover:#256965;
  --text:#111827;
  --muted:#4b5563;
  --border:rgba(31,42,68,.12);
  --max:820px;
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Georgia,"Times New Roman",Times,serif;
  font-size:18px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

a{color:var(--slate);text-decoration:none}
a:hover{text-decoration:underline}
small{color:var(--muted)}
svg{display:block}

.container{max-width:var(--max);margin:0 auto;padding:0 18px}
.stack > * + *{margin-top:16px}
.hr{height:1px;background:var(--border);margin:22px 0}

header{
  background:#fff;
  border-bottom:1px solid var(--border);
}

.nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:14px 0;
}

.logo-link{
  display:inline-flex;
  align-items:center;
  flex-shrink:0;
}

.logo-link:hover{text-decoration:none}

.logo-link svg{
  width:250px;
  max-width:100%;
  height:auto;
}

.nav-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:14px;
}

.nav-links a{color:var(--navy);opacity:.9}
.nav-links a:hover{opacity:1}

main{padding:34px 0 44px}

h1,h2,h3{
  margin:0;
  color:var(--navy);
  line-height:1.2;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

h1{font-size:36px;letter-spacing:-.2px}
h2{font-size:26px;margin-top:26px}
h3{font-size:20px;margin-top:18px}
p{margin:0 0 14px}

.lede{
  max-width:70ch;
  color:var(--muted);
  font-size:19px;
}

.card-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.card{
  padding:16px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
}

.card h3{margin-top:0}
.card p:last-child{margin-bottom:0}

.feature{
  padding:18px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:14px;
}

.feature a{font-weight:600}
.feature-title{margin-top:8px}
.feature-lede{margin-top:10px}
.feature-link{margin-top:12px}

.cta{
  padding:18px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
}

.cta-title{
  margin:0 0 8px;
  color:var(--navy);
  font-weight:700;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

.btn{
  display:inline-block;
  margin-top:10px;
  padding:12px 16px;
  background:var(--cta);
  color:#fff !important;
  border-radius:10px;
  font-weight:700;
  letter-spacing:.2px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

.btn:hover{
  background:var(--ctaHover);
  text-decoration:none;
}

.disclaimer{
  padding-left:12px;
  color:var(--muted);
  font-size:14px;
  border-left:3px solid rgba(74,111,165,.35);
}

.kicker{
  color:var(--muted);
  font-size:13px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

.article p,.legal-page p{margin:0 0 14px}
.article ul,.legal-page ul{margin:0 0 16px 20px}
.article li,.legal-page li{margin:6px 0}

.article-figure{
  margin:24px 0 28px;
}

.article-figure img{
  display:block;
  width:100%;
  height:auto;
  border-radius:14px;
}

.article-figure figcaption{
  margin-top:10px;
  color:var(--muted);
  font-size:15px;
}

.page-intro{margin-bottom:18px}
.section-gap{margin-top:12px}

footer{
  background:var(--navy);
  color:#fff;
  padding:26px 0;
}

.footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  font-size:14px;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

.footer-links a{color:#fff;opacity:.9}
.footer-links a:hover{opacity:1}
.footer-note{margin-top:12px;font-size:13px;opacity:.85}

.sticky-cta{
  position:fixed;
  right:0;
  bottom:0;
  left:0;
  display:none;
  padding:10px 14px;
  background:#fff;
  border-top:1px solid var(--border);
}

.sticky-cta .wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  max-width:var(--max);
  margin:0 auto;
}

.sticky-cta .label{
  color:var(--navy);
  font-size:14px;
  font-weight:700;
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}

.sticky-cta .sub{color:var(--muted);font-size:12px}

@media (max-width:900px){
  .card-grid{grid-template-columns:1fr}
  h1{font-size:32px}
}

@media (max-width:720px){
  .nav{
    flex-direction:column;
    align-items:flex-start;
  }

  .logo-link svg{width:220px}

  .sticky-cta{display:block}
  main{padding-bottom:84px}
}
