:root{
  --white:#fff;--bg:#f8fafc;--bg-alt:#f1f5f9;--border:#e2e8f0;
  --text:#0f172a;--text-mid:#334155;--text-muted:#64748b;--text-light:#6b7280;
  --primary:#2563eb;--primary-dark:#1d4ed8;--primary-light:#eff6ff;--primary-mid:#bfdbfe;
  --accent:#0891b2;--gradient:linear-gradient(135deg,#2563eb 0%,#0891b2 100%);
  --shadow-sm:0 1px 3px rgba(0,0,0,.07),0 1px 2px rgba(0,0,0,.04);
  --shadow:0 4px 6px -1px rgba(0,0,0,.07),0 2px 4px -2px rgba(0,0,0,.04);
  --shadow-md:0 10px 15px -3px rgba(0,0,0,.08),0 4px 6px -4px rgba(0,0,0,.04);
  --radius:12px;--radius-lg:20px;--radius-full:9999px;
  --bar:1200px;       /* = homepage content width (.wrap max-width) */
  --read:1200px;      /* secondary pages match homepage width exactly */
}
*{box-sizing:border-box;margin:0;padding:0}
html{font-size:17px}/* +1px overall vs browser default for better readability on wide layout */
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--white);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
.skip-link{position:absolute;top:-100%;left:1rem;z-index:9999;background:var(--primary);color:#fff;padding:.5rem 1.1rem;border-radius:0 0 8px 8px;font-size:.875rem;font-weight:600}
.skip-link:focus{top:0}

/* ===== HEADER (matches main site navbar) ===== */
header.site{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm)}
header.site .bar{max-width:var(--bar);margin:0 auto;padding:0 5%;height:68px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:1.08rem;letter-spacing:-.03em;color:var(--text)}
.brand span{color:var(--primary)}
.brand:hover{text-decoration:none}
nav.top{display:flex;gap:2rem;align-items:center}
nav.top a{color:var(--text-muted);font-size:.875rem;font-weight:500}
nav.top a:hover{color:var(--primary);text-decoration:none}

/* ===== CONTENT (boxed, centered reading column) ===== */
main{max-width:var(--bar);margin:0 auto;padding:3rem 5% 4.5rem}
.breadcrumb{font-size:.84rem;color:var(--text-muted);margin-bottom:1.5rem}
.breadcrumb a{color:var(--text-muted)}
.eyebrow{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary);background:var(--primary-light);border:1px solid var(--primary-mid);padding:.32rem .75rem;border-radius:var(--radius-full);margin-bottom:1.1rem}
h1{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:2.4rem;line-height:1.15;letter-spacing:-.025em;margin-bottom:.85rem}
h2{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:1.55rem;line-height:1.25;margin:2.5rem 0 .85rem;letter-spacing:-.015em}
h3{font-weight:700;font-size:1.18rem;margin:1.6rem 0 .55rem}
p{margin-bottom:1.15rem;color:var(--text-mid);font-size:1.0625rem;line-height:1.78}
ul,ol{margin:0 0 1.2rem 1.3rem;color:var(--text-mid);font-size:1.0625rem;line-height:1.75}
li{margin-bottom:.5rem}
strong{color:var(--text)}
.lead{font-size:1.25rem;line-height:1.6;color:var(--text-muted);margin-bottom:1.9rem}
.meta{font-size:.9rem;color:var(--text-muted);margin-bottom:2.1rem;padding-bottom:1.6rem;border-bottom:1px solid var(--border)}
.meta a{font-weight:600}
.callout{background:var(--bg);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius);padding:1.1rem 1.35rem;margin:1.75rem 0}
.callout p{margin-bottom:0}

/* ===== FAQ ===== */
.faq{margin-top:2.75rem}
.faq details{border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.2rem;margin-bottom:.65rem;background:var(--bg)}
.faq summary{font-weight:600;cursor:pointer;color:var(--text);font-size:1.02rem}
.faq details p{margin:.75rem 0 0;font-size:1rem}

/* ===== HUB CARDS ===== */
.cards{display:grid;grid-template-columns:1fr;gap:1.1rem;margin-top:1.75rem}
.card{display:block;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .15s}
.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);text-decoration:none}
.card .tag{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}
.card h3{margin:.55rem 0 .4rem;color:var(--text)}
.card p{font-size:.96rem;margin:0;color:var(--text-muted);line-height:1.6}

/* ===== CTA ===== */
.cta{background:var(--gradient);color:#fff;border-radius:var(--radius-lg);padding:2rem;margin-top:3.25rem;text-align:center}
.cta h2{color:#fff;margin:0 0 .5rem}
.cta p{color:rgba(255,255,255,.92);font-size:1.05rem}
.cta a{display:inline-block;background:#fff;color:var(--primary);font-weight:700;padding:.75rem 1.6rem;border-radius:var(--radius-full);margin-top:.85rem}
.cta a:hover{text-decoration:none;opacity:.92}

/* ===== FOOTER ===== */
footer.site{border-top:1px solid var(--border);color:var(--text-muted);font-size:.86rem;margin-top:1rem}
footer.site .bar{max-width:var(--bar);margin:0 auto;padding:1.5rem 5%;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
footer.site a{color:var(--text-muted)}

@media(max-width:640px){
  h1{font-size:1.95rem}h2{font-size:1.35rem}
  nav.top{gap:1.1rem}
  main{padding:2.25rem 1.25rem 3.5rem}
  .cards{grid-template-columns:1fr}
}
@media(min-width:640px){.cards{grid-template-columns:1fr 1fr}}
@media(min-width:920px){.cards{grid-template-columns:1fr 1fr 1fr}}

/* self-hosted fonts (shared with main site) */
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url('/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url('/fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600 800;font-display:swap;src:url('/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600 800;font-display:swap;src:url('/fonts/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
