:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3eef9;--bg-2:#ece4f6;--surface:#fbf8ff;--surface-2:#f1ebfa;--ink:#1c1430;--ink-soft:#4b4166;--ink-faint:#6b608a;--line:#ddd2ee;--accent:#6d3bf5;--accent-strong:#5326d6;--accent-ink:#fff;--accent-wash:#ece3ff;--focus:#1d3fd8;--ok:#0d6b47;--ok-wash:#d7f5e6;--warn:#8a4300;--warn-wash:#ffe6cc;--alert:#9c1129;--alert-wash:#ffdde3;--clay-money:#ffd8ab;--clay-money-ink:#5a3200;--clay-school:#bfe1ff;--clay-school-ink:#103a5e;--clay-commute:#c4f0d7;--clay-commute-ink:#0e4529;--clay-life:#ffd2e7;--clay-life-ink:#6c1341;--clay-local:#ded1ff;--clay-local-ink:#35206c;--clay:0 12px 24px -10px #32196459, inset 0 3px 6px #ffffffe6, inset 0 -6px 12px #653fad24;--clay-sm:0 6px 14px -8px #32196459, inset 0 2px 4px #ffffffd9, inset 0 -4px 8px #653fad1f;--clay-press:inset 0 4px 10px #4628823d, inset 0 -2px 4px #ffffff8c;--radius:28px;--radius-sm:18px;--radius-pill:999px;--step:8px;--wrap:1160px;--sans:ui-rounded, "SF Pro Rounded", "Segoe UI Variable Display", "Nunito", "Segoe UI", system-ui, -apple-system, sans-serif;--mono:ui-monospace, "Cascadia Mono", "SFMono-Regular", Menlo, Consolas, monospace}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#14101f;--bg-2:#1a1528;--surface:#221b33;--surface-2:#2b2240;--ink:#f4f0fb;--ink-soft:#c9c0e0;--ink-faint:#a396c2;--line:#3a2f54;--accent:#b49bff;--accent-strong:#cdbcff;--accent-ink:#1b1030;--accent-wash:#2f2450;--focus:#9ec1ff;--ok:#6ee7b0;--ok-wash:#17372a;--warn:#ffc27a;--warn-wash:#3d2810;--alert:#ff9aab;--alert-wash:#43151f;--clay-money:#4d3517;--clay-money-ink:#ffdcae;--clay-school:#16344f;--clay-school-ink:#bfe1ff;--clay-commute:#123a26;--clay-commute-ink:#c4f0d7;--clay-life:#4a1631;--clay-life-ink:#ffd2e7;--clay-local:#2e2158;--clay-local-ink:#ded1ff;--clay:0 14px 28px -12px #000000b3, inset 0 3px 6px #ffffff14, inset 0 -6px 12px #0006;--clay-sm:0 8px 16px -10px #000000b3, inset 0 2px 4px #ffffff12, inset 0 -4px 8px #00000059;--clay-press:inset 0 4px 10px #0000008c, inset 0 -2px 4px #ffffff0f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#14101f;--bg-2:#1a1528;--surface:#221b33;--surface-2:#2b2240;--ink:#f4f0fb;--ink-soft:#c9c0e0;--ink-faint:#a396c2;--line:#3a2f54;--accent:#b49bff;--accent-strong:#cdbcff;--accent-ink:#1b1030;--accent-wash:#2f2450;--focus:#9ec1ff;--ok:#6ee7b0;--ok-wash:#17372a;--warn:#ffc27a;--warn-wash:#3d2810;--alert:#ff9aab;--alert-wash:#43151f;--clay-money:#4d3517;--clay-money-ink:#ffdcae;--clay-school:#16344f;--clay-school-ink:#bfe1ff;--clay-commute:#123a26;--clay-commute-ink:#c4f0d7;--clay-life:#4a1631;--clay-life-ink:#ffd2e7;--clay-local:#2e2158;--clay-local-ink:#ded1ff;--clay:0 14px 28px -12px #000000b3, inset 0 3px 6px #ffffff14, inset 0 -6px 12px #0006;--clay-sm:0 8px 16px -10px #000000b3, inset 0 2px 4px #ffffff12, inset 0 -4px 8px #00000059;--clay-press:inset 0 4px 10px #0000008c, inset 0 -2px 4px #ffffff0f}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}body{background:radial-gradient(120% 90% at 12% -10%, var(--accent-wash) 0%, transparent 55%), radial-gradient(100% 80% at 100% 0%, var(--bg-2) 0%, transparent 60%), var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}h1,h2,h3,h4{margin:0 0 calc(var(--step) * 1.5);letter-spacing:-.02em;font-weight:800;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.1rem)}h2{font-size:clamp(1.4rem,3vw,2rem)}h3{font-size:1.15rem}p{margin:0 0 calc(var(--step) * 2)}a{color:var(--accent-strong);text-underline-offset:3px}a:hover{color:var(--accent)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}.wrap{width:min(100% - calc(var(--step) * 4), var(--wrap));margin-inline:auto}.stack>*+*{margin-top:calc(var(--step) * 2)}.grid{gap:calc(var(--step) * 2);display:grid}@media (min-width:720px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-side{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start}}@media (min-width:1000px){.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}}main{padding:calc(var(--step) * 4) 0 calc(var(--step) * 10)}section+section{margin-top:calc(var(--step) * 6)}.skip{left:var(--step);top:calc(var(--step) * -12);z-index:60;background:var(--accent);color:var(--accent-ink);padding:calc(var(--step) * 1.5) calc(var(--step) * 3);border-radius:var(--radius-pill);font-weight:700;transition:top .15s;position:absolute}.skip:focus{top:var(--step);color:var(--accent-ink)}.progress{z-index:55;background:0 0;height:4px;position:fixed;inset:0 0 auto}.progress>i{background:linear-gradient(90deg, var(--accent), var(--clay-life-ink));border-radius:0 var(--radius-pill) var(--radius-pill) 0;width:0;height:100%;display:block}.header{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb, var(--bg) 82%, transparent);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{align-items:center;gap:calc(var(--step) * 2);padding:calc(var(--step) * 1.5) 0;display:flex}.brand{align-items:center;gap:var(--step);letter-spacing:-.03em;color:var(--ink);font-size:1.25rem;font-weight:900;text-decoration:none;display:inline-flex}.brand-mark{background:var(--accent);width:34px;height:34px;color:var(--accent-ink);box-shadow:var(--clay-sm);border-radius:12px;place-items:center;font-size:1rem;display:grid}.nav{gap:calc(var(--step) * .5);align-items:center;margin-inline-start:auto;display:none}@media (min-width:1000px){.nav{display:flex}.menu-button{display:none}}.nav a,.nav button{font:inherit;color:var(--ink-soft);padding:calc(var(--step) * 1) calc(var(--step) * 1.6);border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:0;font-size:.94rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,transform .15s}.nav a:hover,.nav button:hover{background:var(--surface);color:var(--ink);transform:translateY(-1px)}.nav a[aria-current=page]{background:var(--accent-wash);color:var(--accent-strong);box-shadow:var(--clay-press)}.menu-button{margin-inline-start:auto}.mobile-menu{gap:var(--step);padding:calc(var(--step) * 2) 0 calc(var(--step) * 3);border-top:1px solid var(--line);display:grid}.mobile-menu a{padding:calc(var(--step) * 1.5) calc(var(--step) * 2);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--clay-sm);color:var(--ink);font-weight:700;text-decoration:none}.mobile-menu a:hover{background:var(--surface-2)}@media (min-width:1000px){.mobile-menu{display:none}}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--clay);padding:calc(var(--step) * 3)}.card-tight{padding:calc(var(--step) * 2);border-radius:var(--radius-sm);box-shadow:var(--clay-sm);background:var(--surface)}.card-hover{color:inherit;text-decoration:none;transition:transform .18s,box-shadow .18s;display:block}.card-hover:hover{color:inherit;transform:translateY(-3px);box-shadow:0 18px 34px -12px #32196473,inset 0 3px 6px #ffffffe6,inset 0 -6px 12px #653fad24}.tone{border-radius:var(--radius);padding:calc(var(--step) * 3);box-shadow:var(--clay)}.tone-money{background:var(--clay-money);color:var(--clay-money-ink)}.tone-school{background:var(--clay-school);color:var(--clay-school-ink)}.tone-commute{background:var(--clay-commute);color:var(--clay-commute-ink)}.tone-life{background:var(--clay-life);color:var(--clay-life-ink)}.tone-local{background:var(--clay-local);color:var(--clay-local-ink)}.tone h2,.tone h3,.tone a{color:inherit}.glyph{width:46px;height:46px;box-shadow:var(--clay-sm);margin-bottom:calc(var(--step) * 1.5);background:#ffffff8c;border-radius:16px;place-items:center;font-size:1.3rem;display:grid}:root[data-theme=dark] .glyph,:root:not([data-theme=light]) .glyph{background:#ffffff1a}.btn{justify-content:center;align-items:center;gap:var(--step);font:inherit;cursor:pointer;border-radius:var(--radius-pill);padding:calc(var(--step) * 1.5) calc(var(--step) * 3);background:var(--surface);color:var(--ink);box-shadow:var(--clay-sm);border:0;min-height:44px;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.btn:hover{background:var(--surface-2);color:var(--ink);transform:translateY(-2px)}.btn:active{box-shadow:var(--clay-press);transform:translateY(1px)}.btn[disabled]{opacity:.65;cursor:progress;transform:none}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--accent-strong);color:var(--accent-ink)}.btn-danger{background:var(--alert-wash);color:var(--alert)}.btn-small{padding:calc(var(--step) * .9) calc(var(--step) * 1.8);min-height:38px;font-size:.88rem}.field{gap:calc(var(--step) * .75);margin-bottom:calc(var(--step) * 2);display:grid}.field>label{font-size:.92rem;font-weight:700}.hint{color:var(--ink-faint);font-size:.85rem}input,select,textarea{font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:calc(var(--step) * 1.4) calc(var(--step) * 1.8);box-shadow:var(--clay-press);width:100%;min-height:44px}textarea{resize:vertical;min-height:120px}input::placeholder,textarea::placeholder{color:var(--ink-faint)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--alert);background:var(--alert-wash)}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.field-error{color:var(--alert);font-size:.86rem;font-weight:700}.password-wrap{position:relative}.password-wrap input{padding-inline-end:84px}.password-wrap button{font:inherit;cursor:pointer;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink-soft);box-shadow:var(--clay-sm);border:0;min-height:32px;padding:6px 12px;font-size:.82rem;font-weight:700;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-wrap button:hover{color:var(--ink)}.form-note{border-radius:var(--radius-sm);padding:calc(var(--step) * 1.5) calc(var(--step) * 2);margin-bottom:calc(var(--step) * 2);font-weight:600}.form-note-ok{background:var(--ok-wash);color:var(--ok)}.form-note-bad{background:var(--alert-wash);color:var(--alert)}.row{gap:calc(var(--step) * 1.5);display:grid}@media (min-width:620px){.row-2{grid-template-columns:repeat(2,minmax(0,1fr))}.row-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.list{gap:calc(var(--step) * 1.5);margin:0;padding:0;list-style:none;display:grid}.item{gap:var(--step) calc(var(--step) * 2);background:var(--surface-2);border-radius:var(--radius-sm);padding:calc(var(--step) * 1.8) calc(var(--step) * 2);box-shadow:var(--clay-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.item-main{flex:260px;min-width:0}.item-title{font-weight:700}.item-meta{color:var(--ink-faint);font-size:.88rem}.badge{border-radius:var(--radius-pill);letter-spacing:.02em;background:var(--accent-wash);color:var(--accent-strong);align-items:center;gap:6px;padding:4px 12px;font-size:.78rem;font-weight:800;display:inline-flex}.badge-ok{background:var(--ok-wash);color:var(--ok)}.badge-warn{background:var(--warn-wash);color:var(--warn)}.badge-alert{background:var(--alert-wash);color:var(--alert)}.meter{border-radius:var(--radius-pill);background:var(--surface-2);height:12px;box-shadow:var(--clay-press);overflow:hidden}.meter>i{border-radius:var(--radius-pill);background:var(--accent);height:100%;display:block}.meter-over>i{background:var(--alert)}.stat{letter-spacing:-.03em;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:900}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:520px}th,td{text-align:left;padding:calc(var(--step) * 1.2) calc(var(--step) * 1.5);border-bottom:1px solid var(--line)}th{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-size:.82rem}.num{text-align:right;font-variant-numeric:tabular-nums}.mono{font-family:var(--mono);font-size:.86rem}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface) 50%, var(--surface-2) 75%);background-size:200% 100%;min-height:18px;animation:1.3s linear infinite shimmer}.skeleton-card{border-radius:var(--radius);box-shadow:var(--clay);min-height:150px}@keyframes shimmer{to{background-position:-200% 0}}.spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}details.faq{background:var(--surface);border-radius:var(--radius-sm);box-shadow:var(--clay-sm);padding:calc(var(--step) * 2)}details.faq+details.faq{margin-top:calc(var(--step) * 1.5)}details.faq>summary{cursor:pointer;justify-content:space-between;gap:var(--step);align-items:center;font-weight:800;list-style:none;display:flex}details.faq>summary::-webkit-details-marker{display:none}details.faq>summary:after{content:"+";color:var(--accent-strong);font-size:1.3rem;line-height:1}details.faq[open]>summary:after{content:"−"}details.faq>summary:hover{color:var(--accent-strong)}details.faq>div{padding-top:var(--step);color:var(--ink-soft)}.floats{right:calc(var(--step) * 2);bottom:calc(var(--step) * 2);z-index:45;gap:var(--step);justify-items:end;display:grid;position:fixed}.float-btn{cursor:pointer;font:inherit;border-radius:var(--radius-pill);padding:calc(var(--step) * 1.4) calc(var(--step) * 2.2);background:var(--accent);color:var(--accent-ink);box-shadow:var(--clay);align-items:center;gap:var(--step);border:0;min-height:48px;font-weight:700;text-decoration:none;transition:transform .15s;display:inline-flex}.float-btn:hover{color:var(--accent-ink);transform:translateY(-2px)}.float-btn-quiet{background:var(--surface);color:var(--ink)}.float-btn-quiet:hover{color:var(--ink)}dialog{border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:var(--clay);padding:calc(var(--step) * 3);border:0;max-width:min(92vw,460px)}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#180c308c}.banner{left:calc(var(--step) * 2);right:calc(var(--step) * 2);bottom:calc(var(--step) * 2);z-index:46;background:var(--surface);border-radius:var(--radius);box-shadow:var(--clay);padding:calc(var(--step) * 2.5);gap:calc(var(--step) * 1.5);display:grid;position:fixed}@media (min-width:860px){.banner{grid-template-columns:minmax(0,1fr) auto;align-items:center;max-width:900px;margin-inline:auto}}.banner-actions{gap:var(--step);flex-wrap:wrap;display:flex}.search-form{gap:var(--step);align-items:center;display:flex}.search-form input{min-width:0}.hero{padding:calc(var(--step) * 6) 0 calc(var(--step) * 4)}.hero p.lede{color:var(--ink-soft);max-width:62ch;font-size:clamp(1.05rem,2.4vw,1.3rem)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent-strong);margin-bottom:var(--step);font-size:.78rem;font-weight:800}.cta-row{gap:calc(var(--step) * 1.5);margin-top:calc(var(--step) * 3);flex-wrap:wrap;display:flex}.footer{border-top:1px solid var(--line);padding:calc(var(--step) * 5) 0 calc(var(--step) * 4);color:var(--ink-soft);font-size:.92rem}.footer-grid{gap:calc(var(--step) * 3);display:grid}@media (min-width:720px){.footer-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.footer h3{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);font-size:.82rem}.footer ul{gap:calc(var(--step) * .75);margin:0;padding:0;list-style:none;display:grid}.footer a{color:var(--ink-soft);text-decoration:none}.footer a:hover{color:var(--accent-strong);text-decoration:underline}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media print{:root{--surface:#fff;--surface-2:#fff;--bg:#fff;--ink:#000;--ink-soft:#222;--ink-faint:#444;--clay:none;--clay-sm:none;--clay-press:none}body{color:#000;background:#fff;font-size:12pt}.header,.floats,.banner,.progress,.skip,.footer,.no-print,form,dialog{display:none!important}main{padding:0}.card,.tone,.item,.card-tight{box-shadow:none;break-inside:avoid;color:#000;background:#fff;border:1px solid #999}a[href^=http]:after{content:" (" attr(href) ")";color:#444;font-size:10pt}}
