@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@700;900&family=Lato:wght@400;700&display=swap";:root{--navy:#2a4268;--navy-deep:#172f51;--teal:#67a2a4;--teal-light:#ebf4f4;--grey:#b4bcbf;--grey-light:#f5f6f7;--white:#fff;--text-primary:#2a4268;--text-body:#374151;--text-muted:#6b7280;--text-on-navy:#fff;--text-on-teal:#fff;--link:#67a2a4;--link-hover:#2a4268;--focus-ring:#67a2a4;--border:#e5e7eb;--border-strong:#b4bcbf;--warning-bg:#fffbeb;--warning-text:#92400e;--info-bg:#ebf4f4;--info-text:#2a4268;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:40px;--space-6:64px;--space-7:48px;--space-8:96px;--max-width:1200px;--max-width-content:740px;--gutter:40px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:18px}body{color:var(--text-body);background:var(--white);-webkit-font-smoothing:antialiased;font-family:Lato,sans-serif;font-size:18px;font-weight:400;line-height:1.7}img{max-width:100%;display:block}h1{color:var(--text-primary);font-family:Montserrat,sans-serif;font-size:clamp(32px,5vw,52px);font-weight:900;line-height:1.15}h2{color:var(--text-primary);font-family:Montserrat,sans-serif;font-size:clamp(24px,3.5vw,34px);font-weight:700;line-height:1.2}h3{color:var(--text-primary);font-family:Montserrat,sans-serif;font-size:clamp(20px,2.5vw,26px);font-weight:700;line-height:1.25}p,li{color:var(--text-body);font-family:Lato,sans-serif;font-size:18px;font-weight:400;line-height:1.7}a{color:var(--link);text-decoration:underline;transition:color .2s}a:hover{color:var(--link-hover)}a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:2px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-family:Montserrat,sans-serif;font-size:13px;font-weight:700}.btn-primary{background-color:var(--teal);color:var(--white);letter-spacing:.04em;cursor:pointer;border:none;border-radius:8px;min-height:44px;padding:14px 28px;font-family:Montserrat,sans-serif;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .2s;display:inline-block}.btn-primary:hover{background-color:var(--navy);color:var(--white)}.btn-primary:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.btn-secondary{color:var(--navy);letter-spacing:.04em;border:2px solid var(--navy);cursor:pointer;background-color:#0000;border-radius:8px;min-height:44px;padding:13px 27px;font-family:Montserrat,sans-serif;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:all .2s;display:inline-block}.btn-secondary:hover{background-color:var(--navy);color:var(--white)}.btn-ghost{color:var(--white);cursor:pointer;background-color:#0000;border:2px solid #fff9;border-radius:8px;min-height:44px;padding:13px 27px;font-family:Montserrat,sans-serif;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;transition:all .2s;display:inline-block}.btn-ghost:hover{border-color:var(--white);color:var(--white);background-color:#ffffff26}.card{background:var(--white);border:1px solid var(--border);border-top:4px solid var(--teal);padding:var(--space-4);border-radius:12px;transition:box-shadow .2s}.card:hover{box-shadow:0 4px 16px #00000014}.badge{letter-spacing:.08em;text-transform:uppercase;border-radius:100px;padding:3px 10px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:700;text-decoration:none;display:inline-block}.badge-govt{background:var(--teal-light);color:var(--navy)}.badge-free{color:#166534;background:#f0fdf4}.badge-guide{background:var(--grey-light);color:var(--text-body)}.badge-partner{color:#1e40af;background:#eff6ff}.badge-affiliate{background:var(--warning-bg);color:var(--warning-text)}.badge-pro{color:#991b1b;background:#fef2f2}.callout{background:var(--teal-light);border-left:4px solid var(--teal);border-radius:0 8px 8px 0;margin:32px 0;padding:20px 24px}.callout-warning{background:var(--warning-bg);border-left:4px solid #d97706;border-radius:0 8px 8px 0;margin:32px 0;padding:20px 24px}.container{max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.section{padding:var(--space-6) 0}.section--alt{background:var(--grey-light)}@media (width<=768px){:root{--gutter:24px}body,p,li{font-size:17px}.section{padding:var(--space-7) 0}}
