/* ASCENSION — shared visual language. Functional modules own visibility and state. */
:root{--brand-paper:#F4F2EB;--brand-surface:#FCFBF7;--brand-ink:#17232D;--brand-muted:#626A70;--brand-blue:#2454D8;--brand-lime:#DFFF83;--brand-clay:#B85836;--brand-line:#DADDD7;--bg:var(--brand-paper);--surface:var(--brand-surface);--ink:var(--brand-ink);--muted:var(--brand-muted);--line:var(--brand-line);--green:var(--brand-blue);--green-soft:#E9EEF9;--sidebar:var(--brand-ink);--red:var(--brand-clay);--orange:#8C5C21;--radius:8px;--shadow:none;--visual-mint:var(--brand-lime);--visual-focus:var(--brand-blue);font-family:"Segoe UI",Arial,sans-serif;color:var(--brand-ink);background:var(--brand-paper);font-synthesis:none;scroll-padding-top:96px;scroll-behavior:smooth}
*{box-sizing:border-box}body.ascension-design{margin:0;background:var(--brand-paper);color:var(--brand-ink);font-family:"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.55}body.ascension-design [hidden]{display:none!important}body.ascension-design :is(button,input,select,textarea){font:inherit}body.ascension-design :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--brand-blue);outline-offset:4px}body.ascension-design button{cursor:pointer}body.ascension-design button:disabled{cursor:not-allowed;opacity:.55}body.ascension-design a{color:inherit}body.ascension-design .button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:11px 20px;border-radius:6px;font-size:14px;font-weight:600;text-decoration:none;box-shadow:none;line-height:1.45;border:1px solid transparent;transition:background .16s,border-color .16s}body.ascension-design .button-primary{background:var(--brand-blue);color:white;border-color:var(--brand-blue)}body.ascension-design .button-primary:hover{background:#193FAE;border-color:#193FAE}body.ascension-design .button-outline{background:transparent;color:var(--brand-ink);border-color:#B8BEBF;min-width:0}body.ascension-design .button-outline:hover{background:#E8E7DF;border-color:var(--brand-ink)}body.ascension-design .eyebrow{font-size:11px;letter-spacing:.15em;font-weight:650;color:var(--brand-muted);line-height:1.6}body.ascension-design :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea){border-radius:6px;border-color:#B9C0C3;background:var(--brand-surface);color:var(--brand-ink);min-height:44px}body.ascension-design :is(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--brand-blue)}body.ascension-design .error-box{background:#FAEDE5;border:1px solid #D5A28C;color:#823E26;border-radius:6px;font-size:14px}body.ascension-design .text-button{color:var(--brand-blue);min-height:44px;font-size:13px}body.ascension-design .quiet-tag{background:#E9EEF9;color:#244392;border-color:#CFD8EF;font-size:12px;border-radius:4px;padding:6px 10px;letter-spacing:0}body.ascension-design .green{color:var(--brand-blue)}
.brand-header{max-width:1440px;margin:auto;min-height:88px;padding:16px 48px;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--brand-line)}.brand-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.brand-logo img{width:30px;height:34px}.brand-logo strong{font-size:18px;letter-spacing:.14em;font-weight:750}.brand-nav{display:flex;gap:8px;align-items:center;margin:auto}.brand-nav a{padding:10px 12px;border-radius:5px;font-size:13px;text-decoration:none;color:var(--brand-muted)}.brand-nav a[aria-current=page],.brand-nav a:hover{color:var(--brand-blue);background:#E9EEF9}.brand-resident{font-size:13px;text-decoration:none;white-space:nowrap;padding:10px 0;border-bottom:1px solid var(--brand-ink)}.brand-footer{max-width:1344px;margin:0 auto;padding:30px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;border-top:1px solid var(--brand-line);color:var(--brand-muted);font-size:12px}.brand-footer a{text-underline-offset:5px}.brand-footer .brand-logo{color:var(--brand-ink)}.brand-footer .brand-logo strong{font-size:14px}.brand-footer .brand-logo img{width:23px;height:25px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:18px;top:-90px;z-index:2000;padding:12px 18px;background:var(--brand-surface);color:var(--brand-blue);border:2px solid var(--brand-blue);text-decoration:none}.skip-link:focus{top:12px}
@media(max-width:1120px){.brand-header{padding:16px 28px;gap:22px}.brand-nav{gap:2px}.brand-nav a{padding:10px 8px}.brand-logo strong{font-size:16px}.brand-footer{margin:0 28px}}@media(max-width:820px){.brand-header{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px 20px 0}.brand-nav{grid-column:1/-1;grid-row:2;overflow-x:auto;max-width:100%;width:100%;margin:0;white-space:nowrap;padding-bottom:12px;scrollbar-width:thin}.brand-nav a{flex:1;text-align:center;padding:9px}.brand-resident{font-size:12px}.brand-footer{margin:0 20px}.brand-logo strong{font-size:15px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}body.ascension-design *,body.ascension-design *::before,body.ascension-design *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
