.av-page{background:var(--ice);color:var(--ink)}
.av-shell{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:32px 0 72px}
.av-audiences{display:flex;gap:12px;flex-wrap:wrap;font-size:.9rem}.av-audiences a{padding:10px 12px;border:1px solid var(--line);border-radius:5px;text-decoration:none}.av-audiences a[aria-current]{background:var(--navy-950);color:white}
.av-intro{max-width:790px;padding:48px 0 32px}.av-intro h1{font-size:clamp(2.25rem,6vw,4rem);line-height:1.08;letter-spacing:-.04em;margin:14px 0 24px}.av-intro>p:not(.eyebrow){max-width:670px}.av-intro #av-lead{font-size:1.2rem}.av-effective{border-left:4px solid var(--cyan-500);padding:8px 16px;font-weight:700}
.av-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.av-card{background:var(--paper);padding:28px;border:1px solid var(--line);border-radius:6px;min-width:0}.av-card h2{font-size:1.6rem;line-height:1.2;margin:0 0 18px}.av-card p{margin:12px 0}.av-result-column{display:grid;gap:24px;min-width:0}.av-trust{margin-top:24px}.av-small{font-size:.9rem;line-height:1.6;color:#526478}.av-page fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}.av-page legend{font-size:1.1rem;font-weight:800;padding:0;margin-bottom:20px}.av-page legend span{color:#007b8c;margin-right:10px}.av-page label{display:block;font-size:.95rem;font-weight:700;margin-top:18px}.av-page input,.av-page select,.av-page textarea{width:100%;max-width:100%;min-width:0;min-height:48px;padding:12px;border:1px solid #9aabb6;border-radius:5px;background:white;color:var(--ink);font:inherit;margin-top:7px}.av-page select{font-size:16px}.av-page #contribution{font-size:1.65rem;font-weight:800}.av-contribution{display:grid;grid-template-columns:1fr 145px;gap:12px}.av-contribution label{margin:0}.av-presets{display:flex;flex-wrap:wrap;gap:8px}.av-presets button{min-height:44px;padding:9px 12px;background:var(--ice);color:var(--ink);border:1px solid var(--line);border-radius:5px;cursor:pointer}.av-page .button{white-space:normal;min-height:48px;margin-top:16px}.av-page details{padding:14px;margin:16px 0;border:1px solid var(--line);border-radius:5px}.av-page summary{cursor:pointer;font-weight:700;min-height:28px}.av-page [hidden]{display:none!important}.av-rows{margin:20px 0}.av-rows>div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:12px 0}.av-rows dt{min-width:0}.av-rows dd{margin:0;text-align:right;font-weight:800;flex-shrink:0}.av-total{padding:22px;background:var(--navy-950);color:white;border-radius:5px}.av-total strong{display:block;font-size:2.25rem;letter-spacing:-.03em}.av-total p{color:inherit!important;margin:0}.av-notice{border-left:4px solid var(--cyan-500);padding-left:14px}.av-skip{position:absolute;top:-100px}.av-skip:focus{top:8px;left:8px;background:white;color:#061c3d;padding:16px;z-index:10000}.av-page #sources a{overflow-wrap:anywhere}.av-page a:not(.button){text-underline-offset:3px}.av-page textarea{font-size:.9rem}.av-result [tabindex]{scroll-margin-top:110px}
html[data-theme=dark] .av-page{background:var(--dark-page);color:var(--dark-text)}html[data-theme=dark] .av-card{background:var(--dark-surface);border-color:var(--dark-line)}html[data-theme=dark] .av-page input,html[data-theme=dark] .av-page select,html[data-theme=dark] .av-page textarea{background:var(--dark-field);color:var(--dark-text);border-color:var(--dark-line)}html[data-theme=dark] .av-presets button{background:var(--dark-surface-2);color:var(--dark-text);border-color:var(--dark-line)}html[data-theme=dark] .av-small{color:var(--dark-muted)}html[data-theme=dark] .av-rows>div{border-color:var(--dark-line)}html[data-theme=dark] .av-page legend span{color:var(--cyan-400)}
@media(max-width:760px){.av-layout{grid-template-columns:1fr}.av-shell{width:calc(100% - 28px);padding-top:22px}.av-card{padding:20px}.av-intro{padding:32px 0 20px}.av-contribution{grid-template-columns:minmax(0,1fr) 124px}.av-page .button{width:100%}.av-rows>div{font-size:.95rem}.av-total strong{font-size:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Long legal terms and contact labels must wrap on narrow screens. */
.av-shell{overflow-wrap:anywhere}
.av-contribution>label{min-width:0}
@media(max-width:400px){.av-contribution{grid-template-columns:minmax(0,1fr)}.av-rows>div{flex-wrap:wrap}.av-rows dd{margin-left:auto}}
