/* Adaptation controls complement native keyboard, zoom and platform preferences. */
html[data-text-size="125"]{font-size:125%}
html[data-text-size="150"]{font-size:150%}
html[data-text-size="200"]{font-size:200%}
html[data-contrast="high"]{--navy:#001a2d;--muted:#213b4a;--teal:#00565b;--teal-dark:#003a40;--line:#536975;--mint:#fff;--blue:#fff}
html[data-contrast="high"] :is(input,select,textarea,button,.button,dialog){border-color:currentColor}
html[data-links="underline"] a{text-decoration:underline;text-underline-offset:.2em}
html[data-spacing="spacious"] *{line-height:1.5!important;letter-spacing:.12em!important;word-spacing:.16em!important}
html[data-spacing="spacious"] p{margin-bottom:2em!important}
html[data-spacing="spacious"] :is(h1,h2,h3,a,button,label,summary){overflow-wrap:anywhere;min-width:0;white-space:normal}
html[data-spacing="spacious"] .nav-row{flex-wrap:wrap}
html[data-spacing="spacious"] .nav-row nav{flex-wrap:wrap;gap:16px;padding-bottom:16px}
html[data-motion="reduce"],html[data-motion="reduce"] *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){html,html *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
:focus-visible{outline:3px solid #8d5700;outline-offset:3px;box-shadow:0 0 0 2px white}
h1,h2,h3,h4{overflow-wrap:anywhere}
html{scroll-padding-top:calc(var(--header-height,80px) + 20px)}
section[id]{scroll-margin-top:0}
input:not([type=checkbox]),select,textarea{border-color:#607f89}
input[type=checkbox]{outline:1px solid #607f89;outline-offset:-1px}
input[type=checkbox]:focus-visible{outline:3px solid #8d5700;outline-offset:3px}
.button.secondary,.amount-options button,.guide-suggestions button,.nav-toggle{border-color:#607f89}
input::placeholder,textarea::placeholder{color:#526a7b;opacity:1}
.floating-accessibility{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));left:84px;z-index:10;width:54px;height:54px;border:1px solid #607f89;border-radius:50%;background:white;color:var(--teal);display:grid;place-items:center;box-shadow:0 4px 22px #14334b18}
.footer-accessibility{font:inherit;font-size:.85rem;min-height:44px;border:0;background:transparent;color:var(--teal);padding:0;text-align:left;text-decoration:underline;text-underline-offset:4px}
.display-settings{width:min(32rem,calc(100% - 24px));overflow:auto;scroll-padding-block:6rem 2rem}
.display-settings .dialog-header{position:static;align-items:flex-start}
.display-settings .dialog-header h2{font-size:1.3rem;line-height:1.4;min-width:0;overflow-wrap:anywhere}
.display-settings .icon-button{flex-shrink:0}
.display-settings .preference{margin:0;padding-block:18px;border-bottom:1px solid var(--line);align-items:flex-start}
.preference strong,.preference small{display:block;font-size:1rem}
.preference small{font-size:.88rem;color:var(--muted);margin-top:4px}
.display-settings .fine{margin-block:20px 0}
.display-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-top:20px}
.display-actions .text-button{text-align:left}
.display-settings :is(select,input,button){min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.display-settings .dialog-header{gap:12px}.display-settings .dialog-body{min-width:0}
dialog :is(h2,h3,p,label,summary){overflow-wrap:anywhere}
body:has(dialog[open]) .floating-accessibility{visibility:hidden}
.film-bottom{display:flex;flex-direction:column;align-items:stretch;gap:4px}
.film-bottom>span{font-size:.85rem;color:var(--muted)}
.film-links{display:flex;align-items:center;justify-content:space-between;gap:8px 18px;flex-wrap:wrap}
.film-links :is(a,button){display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.85rem;line-height:1.4;margin:0;max-width:100%;text-underline-offset:4px}
.film-links button{border:0;background:transparent;padding:0;color:var(--teal);font-family:inherit;text-decoration:underline;text-align:left}
.film-links .icon{width:18px;height:18px;flex-shrink:0}
.footer-utilities{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 22px;margin-left:auto}
.footer-base .footer-utilities :is(a,button){display:inline-flex;align-items:center;gap:8px;font-size:.85rem;min-height:44px;line-height:1.5;text-underline-offset:4px;white-space:normal}
.footer-utilities .icon{width:18px;height:18px;flex-shrink:0}
.transcript-dialog{width:min(48rem,calc(100% - 24px));height:min(46rem,calc(100dvh - 24px));max-height:calc(100dvh - 24px);overflow:hidden}
.transcript-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}
.transcript-dialog .dialog-header{position:static;align-items:center;padding:18px 24px;gap:12px}
.transcript-dialog .dialog-header h2{display:flex;align-items:center;gap:12px;font-size:1.3rem;line-height:1.4;min-width:0}
.transcript-dialog .dialog-header h2 .icon{flex-shrink:0;width:23px;height:23px}
.transcript-dialog .icon-button{flex-shrink:0}
.transcript-scroll{overflow:auto;overscroll-behavior:contain;padding:22px 28px;scroll-padding-block:20px}
.transcript-scroll:focus-visible{outline-offset:-5px}
.transcript-intro{color:var(--muted);margin-bottom:22px}
[data-transcript-content] section{padding-block:22px;border-top:1px solid var(--line)}
[data-transcript-content] section:last-child{padding-bottom:0}
[data-transcript-content] h3{font-size:1.1rem;line-height:1.5;margin-bottom:14px}
[data-transcript-content] p{font-size:1rem;line-height:1.65;margin-bottom:12px}
[data-transcript-content] p:last-child{color:var(--muted);margin:0}
.display-settings #display-title{display:flex;align-items:flex-start;gap:12px}
.display-settings #display-title>.icon{width:24px;height:24px;flex-shrink:0;margin-top:3px;color:var(--teal)}
.display-actions :is(button,a){display:inline-flex;align-items:center;justify-content:center;gap:9px}
.display-actions .icon{width:20px;height:20px;flex-shrink:0}
@media(max-width:40rem){.footer-utilities{width:100%;gap:6px 20px}.transcript-dialog .dialog-header{padding:14px 16px}.transcript-scroll{padding:18px}.film-links{column-gap:12px}.film-links :is(a,button){gap:6px;font-size:.8125rem}}
.transcript-copy{max-width:48rem}.transcript-copy h2{font-size:1.4rem;margin-top:2rem}
.contact-layout{grid-template-areas:"intro form" "help form";grid-template-rows:auto 1fr;row-gap:32px}
.contact-intro{grid-area:intro}.contact-form-card{grid-area:form}.contact-options{grid-area:help;padding-bottom:0}
.contact-options>h2{font-size:1.15rem;margin-bottom:16px}
.contact-options-grid{grid-template-columns:1fr;gap:0}
.contact-options-grid>a{border:0;border-top:1px solid var(--line);border-radius:0;padding:18px 0 18px 44px;position:relative}
.contact-options-grid>a>[data-icon]{position:absolute;left:0;top:19px}
.contact-options-grid h3{font-size:1rem;margin-bottom:5px}.contact-options-grid p{font-size:.94rem;margin-bottom:6px}
.contact-options-grid .text-link{font-size:.875rem}
@media(max-width:64rem){.contact-layout{grid-template-areas:"intro" "form" "help";grid-template-rows:auto}.contact-options{margin-top:12px}}
@media(max-width:64rem){.floating-accessibility{left:78px;bottom:calc(16px + env(safe-area-inset-bottom))}}
/* Large text gets the same uncomplicated layout as a narrow screen. */
html:is([data-text-size="150"],[data-text-size="200"]) :is(.hero,.contact-layout,.signup-layout,.volunteer-layout,.support-hero,.vision-layout,.transparency,.founder,.section-heading,.use-grid,.timeline,.closing-links,.contact-options-grid,.field-pair,.footer-grid){display:grid;grid-template-columns:1fr;gap:1.5rem}
html:is([data-text-size="150"],[data-text-size="200"]) .contact-layout{grid-template-areas:"intro" "form" "help";grid-template-rows:auto}
html:is([data-text-size="150"],[data-text-size="200"]) .nav-toggle{display:flex;gap:10px;align-items:center;min-height:44px;border:1px solid #607f89;background:white;padding:8px 12px;border-radius:7px}
html:is([data-text-size="150"],[data-text-size="200"]) .nav-row{flex-wrap:wrap}
html:is([data-text-size="150"],[data-text-size="200"]) .nav-row nav{display:none;width:100%;padding-bottom:16px}
html:is([data-text-size="150"],[data-text-size="200"]) .nav-row nav.open{display:flex;flex-direction:column;align-items:stretch;gap:10px}
html:is([data-text-size="150"],[data-text-size="200"]) .nav-row nav>a:not(.button){white-space:normal;font-size:1rem}
html:is([data-text-size="150"],[data-text-size="200"]) .hero .actions{display:flex;flex-wrap:wrap;max-width:none}
html:is([data-text-size="150"],[data-text-size="200"]) .hero .actions .button{white-space:normal}
html:is([data-text-size="150"],[data-text-size="200"]) :is(.section-navigator,.floating-guide,.floating-contact,.floating-accessibility){font-size:1rem}
html:is([data-text-size="150"],[data-text-size="200"]) .guide-dialog{width:min(40rem,calc(100vw - 24px))}
@media(forced-colors:active){button,.button,input,select,textarea,dialog{border:1px solid ButtonText}select{appearance:auto;background-image:none;padding-right:12px}.icon{color:ButtonText}.status-pill>span,.timeline-dot{background:CanvasText}a{color:LinkText}:focus-visible{outline:3px solid Highlight;box-shadow:none}}
@media print{.floating-accessibility,.display-settings{display:none!important}}
