/* FSTS Visual Recovery v38 — approved logo-inspired shared design system.
   Centralized palette + consistent shared shell. Preserve all program artwork,
   copy, layouts, approved logos, and the unique PEARLS/EVOLVED/ReSet tones. */
:root{
 --fsts-blue:#0F75BB;
 --fsts-berry:#B31E52;
 --fsts-grass:#52843F;
 --fsts-gold:#FCB041;
 --fsts-ink:#25243B;
 --fsts-ivory:#FAF8F5;
 --fsts-white:#FFFFFF;
 --fsts-border:#E4E5E4;
 --fsts-muted:#515566;
 --fsts-teal:#1D6472;
}
html{scroll-behavior:smooth}
body{color:var(--fsts-ink);background:var(--fsts-ivory)}
:where(body) :focus-visible{outline:3px solid var(--fsts-blue)!important;outline-offset:3px}
/* Sitewide navigation: one white header, familiar logo, four-color brand line. */
body nav[aria-label="Main navigation"]{
 background:#fff!important;color:var(--fsts-ink)!important;
 border-bottom:0!important;box-shadow:0 2px 12px rgba(37,36,59,.07)!important;
 position:sticky;isolation:isolate;
}
body nav[aria-label="Main navigation"]::after{
 content:"";position:absolute;bottom:0;left:0;right:0;height:4px;
 background:linear-gradient(90deg,var(--fsts-blue) 0 25%,var(--fsts-berry) 25% 50%,var(--fsts-grass) 50% 75%,var(--fsts-gold) 75% 100%);
 pointer-events:none;z-index:1;
}
body nav[aria-label="Main navigation"] .nav-links>a:not(.fsts-donate-nav){color:var(--fsts-ink)!important;font-weight:600!important}
body nav[aria-label="Main navigation"] .nav-links>a:not(.fsts-donate-nav):hover{color:var(--fsts-blue)!important}
body nav[aria-label="Main navigation"] .nav-links>a.active:not(.fsts-donate-nav),
body nav[aria-label="Main navigation"] .nav-links>a[aria-current="page"]:not(.fsts-donate-nav){color:var(--fsts-blue)!important;border-bottom-color:var(--fsts-berry)!important}
body nav[aria-label="Main navigation"] .nav-links>a.fsts-donate-nav{background:var(--fsts-blue)!important;color:#fff!important;border-radius:7px!important;min-height:42px}
body nav[aria-label="Main navigation"] .nav-links>a.fsts-donate-nav:hover{background:#095783!important;color:#fff!important}
body .mobile-nav{background:#fff!important}
body .mobile-nav .mobile-nav-links>a{color:var(--fsts-ink)!important}
body .mobile-nav .mobile-nav-links>a:hover,
body .mobile-nav .mobile-nav-links>a.active{color:var(--fsts-blue)!important}
body .mobile-nav .mobile-nav-links>a.fsts-donate-nav{color:var(--fsts-blue)!important;font-weight:700!important}
/* Same footer on every page, replacing the old purple-heavy background. */
body footer.fsts-compact-footer{background:var(--fsts-ink)!important;color:#fff!important}
body footer.fsts-compact-footer .footer-brand p,
body footer.fsts-compact-footer .fsts-footer-support p span,
body footer.fsts-compact-footer .fsts-access-assist{color:#e5e5ea!important}
body footer.fsts-compact-footer .fsts-footer-links a,
body footer.fsts-compact-footer .fsts-footer-contact a,
body footer.fsts-compact-footer .fsts-legal-links a,
body footer.fsts-compact-footer .fsts-access-assist a{color:#f8f9ff!important}
body footer.fsts-compact-footer .fsts-footer-links a:hover,
body footer.fsts-compact-footer .fsts-footer-contact a:hover,
body footer.fsts-compact-footer .fsts-legal-links a:hover,
body footer.fsts-compact-footer .fsts-access-assist a:hover{color:#ffce75!important}
body footer.fsts-compact-footer .fsts-footer-support{
 background:rgba(255,255,255,.07)!important;
 border-color:rgba(255,255,255,.22)!important;
}
body footer.fsts-compact-footer .fsts-footer-support a.fsts-footer-support-link{
 background:var(--fsts-gold)!important;color:#30242a!important;
 font-weight:700!important;
}
body footer.fsts-compact-footer .fsts-footer-support a.fsts-footer-support-link:hover{
 background:#ffd082!important;color:#25243B!important;
}
body footer.fsts-compact-footer .fsts-footer-bottom{color:#e3e1e7!important}
body footer.fsts-compact-footer .fsts-legal-links span{color:#d9d9de!important}
/* Homepage: preserve original hero imagery and section architecture. */
body .hero-left{background:linear-gradient(105deg,#FAF8F5 0%,#f7f8f8 100%)!important}
body .hero-h1{color:var(--fsts-ink)!important}
body .hero-h1 .dancing{color:var(--fsts-blue)!important}
body .hero-eyebrow,body .section-eyebrow{color:var(--fsts-berry)!important}
body .hero-quote-box{background:var(--fsts-ink)!important;border-radius:9px!important}
body .hero-quote-box p{color:#fff!important}
body a.btn-primary{background:var(--fsts-blue)!important;color:#fff!important}
body a.btn-primary:hover{background:#095783!important}
body a.btn-outline{color:var(--fsts-berry)!important;border-color:var(--fsts-berry)!important}
body a.btn-outline:hover{background:#fff0f4!important}
body .fsts-home-overview{background:var(--fsts-ivory)!important}
body .fsts-home-section-title{color:var(--fsts-ink)!important}
body .fsts-home-next{background:var(--fsts-ink)!important}
body .fsts-home-next .fsts-home-kicker{color:#b4dde9!important}
body .fsts-home-next-link{background:var(--fsts-gold)!important;color:#282238!important;border-color:transparent!important}
body .fsts-home-next-link:hover{background:#ffcf82!important;color:#282238!important}
/* About and Contact use the same background/text palette, while preserving
   approved mission, leadership portrait, internship graphic and program cards. */
body .fsts-about-page{background:var(--fsts-ivory)!important;color:var(--fsts-ink)!important}
body .fsts-about-hero{background:linear-gradient(115deg,#faf8f5 0%,#f6fafb 100%)!important;border-bottom-color:var(--fsts-border)!important}
body .fsts-about-eyebrow,body .fsts-about-section-label{color:var(--fsts-berry)!important}
body .fsts-about-mission{background:#f3f8f4!important;border-left-color:var(--fsts-grass)!important}
body .fsts-wp-page-content h1,body .fsts-wp-page-content h2{color:var(--fsts-ink)!important}
body .fsts-contact-cards-v4>.fsts-contact-card{background:#fff!important;border-color:var(--fsts-border)!important}
body .fsts-contact-cards-v4 a.fsts-contact-email,
body .fsts-contact-cards-v4 a.fsts-contact-phone,
body .fsts-initiatives-crosslink a{color:#076298!important}
body .fsts-contact-cta{background:var(--fsts-blue)!important;color:#fff!important}
body .fsts-contact-cta:hover{background:#095783!important}
body .fsts-contact-community-strip{background:#f2f7f3!important}
/* Ecosystem shares heading accents but retains collage and initiative imagery. */
body .fsts-ecosystem-hero-v6{background:var(--fsts-ivory)!important}
body .evolved-section.framework-intro{background:#f5f9fb!important}
/* EVOLVED and PEARLS retain their program-specific bright and blush palettes;
   a warm neutral canvas ties the pages to the organization. */
body .ev-page{background:var(--fsts-ivory)!important}
/* ReSet: keep its approved slate/teal while normalizing the outer canvas. */
body .reset-page{background:var(--fsts-ivory)!important}
/* Support FSTS: the main corporate page uses blue/berry/grass/gold. */
body .fsts-giving-page{background:var(--fsts-ivory)!important;color:var(--fsts-ink)!important}
body .fsts-giving-hero h1{color:var(--fsts-ink)!important}
body .fsts-giving-hero h1 em{color:var(--fsts-blue)!important}
body .fsts-giving-eyebrow,body .fsts-giving-kicker{color:var(--fsts-berry)!important}
body .fsts-giving-section-intro h2,body .fsts-giving-stewardship h2,
body .fsts-giving-way-card h3,body .fsts-giving-program-card h3{color:var(--fsts-ink)!important}
body .fsts-giving-hero-copy>p:not(.fsts-giving-note),
body .fsts-giving-section-intro p{color:#444553!important}
body .fsts-giving-ask-link,body .fsts-giving-disclosure a{color:#08669b!important}
body .fsts-giving-paypal-pending{background:#e9edf1!important;border:1px solid #b9c9d3!important;color:#2b4659!important}
body .fsts-giving-note{color:#4a5262!important}
body .fsts-giving-how,body .fsts-giving-stewardship{background:#fff!important}
body .fsts-giving-ways-grid .fsts-giving-way-card{background:#f9f6f6!important;border-color:#e5d7dc!important}
body .fsts-giving-ways-grid .fsts-giving-way-card-sage{background:#f2f7f0!important;border-color:#d2e4d4!important}
body .fsts-giving-programs{background:#f4f7f7!important}
body .fsts-giving-program-card{border-color:#dfe4e8!important;border-top-color:var(--fsts-berry)!important}
body .fsts-giving-program-card.accent-evolved{border-top-color:var(--fsts-blue)!important}
body .fsts-giving-program-card.accent-reset{border-top-color:var(--fsts-teal)!important}
body .fsts-giving-program-card.accent-street{border-top-color:var(--fsts-grass)!important}
body .fsts-giving-program-card.accent-community{border-top-color:var(--fsts-gold)!important}
body .fsts-giving-close{background:var(--fsts-ink)!important}
body .fsts-giving-close h2,body .fsts-giving-close .fsts-giving-contact-cta{color:var(--fsts-ink)!important}
body .fsts-giving-close .fsts-giving-contact-cta{background:var(--fsts-gold)!important}
body .fsts-giving-close .fsts-giving-contact-cta:hover{background:#ffd082!important}
body .fsts-giving-close .fsts-giving-kicker{color:#ffc56f!important}
body .fsts-giving-disclosure{background:#f4f8f2!important;border-left-color:var(--fsts-grass)!important}
/* Legal pages adopt the shared site design without changing the text. */
body .fsts-legal-page{background:var(--fsts-ivory)!important;color:var(--fsts-ink)!important}
body .fsts-legal-container{border-color:var(--fsts-border)!important}
body .fsts-legal-container h1,body .fsts-legal-content h2{color:var(--fsts-ink)!important}
body .fsts-legal-eyebrow{color:var(--fsts-berry)!important}
body .fsts-legal-content a{color:#0b628f!important}
body .fsts-legal-preview-notice{color:#2f4d66!important;background:#edf5f8!important;border-left-color:var(--fsts-blue)!important}
@media(max-width:1040px){body nav[aria-label="Main navigation"]::after{height:3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
