/* Shared public-page identity and legibility. */
:root{--primary:#291568;--primary-light:#493084;--primary-dark:#180d3b;--primary-color:#291568;--secondary:#c92c29;--secondary-color:#c92c29;--accent:#c92c29;--accent-color:#c92c29}
body>header,body>header.scrolled{background:#fff!important;border-top:4px solid #291568;border-bottom:1px solid #e9e4ef;box-shadow:0 4px 24px #2410440a;padding:14px 4%!important;min-height:104px}
body>header .logo img,body>header.scrolled .logo img{display:block!important;visibility:visible!important;opacity:1!important;height:74px!important;width:auto!important;object-fit:contain;border-radius:0;box-shadow:none}
body>header .logo{gap:14px}
body>header .logo-divider,body>header .site-name{display:none!important}
body>header .logo img.official-wordmark,body>header.scrolled .logo img.official-wordmark{width:210px!important;height:auto!important;max-height:76px;object-fit:contain}
body>header nav>ul>li>a{color:#291568!important;font-size:11px!important;letter-spacing:.07em;padding:12px 10px!important}
body>header nav>ul>li.active>a{background:#f2eef8!important;color:#291568!important}
body>header nav>ul>li.nav-cta>a{background:#291568!important;color:#fff!important;border-radius:5px;box-shadow:none;padding:14px 20px!important}
body>header #menu-toggle{color:#291568!important}
body>header #menu-toggle .menu-toggle-line{background:#291568!important}
body>header nav .dropdown-content{background:#fff!important;border:1px solid #e9e4ef}
body>header nav .dropdown-content a{color:#291568!important}
body>header nav .dropdown-content a:hover,body>header nav .dropdown-content a:focus-visible{background:#f2eef8!important}
body .section-kicker{color:#84221e}
body :is(a,button,input,select,textarea):focus-visible{outline:3px solid #c92c29;outline-offset:3px}
body .btn-primary{background:#291568!important;border-color:#291568!important;color:#fff!important}
body main>.hero,body main>.register-hero,body>section.hero,body>section.register-hero{background:linear-gradient(135deg,#1d113c 0%,#332071 58%,#4b3184 100%)!important;color:#fff}
body main>.hero .hero-overlay,body>section.hero .hero-overlay{background:linear-gradient(90deg,#1d113cc7,#29156877)!important}
body main>.hero :is(h1,p),body>section.hero :is(h1,p),body .register-hero :is(h1,p){color:#fff!important}
body .hero .hero-actions a:first-child{background:#fff;color:#291568}
body #back-to-top{background:#291568!important;color:#fff!important}
body #pp-chatbot .pp-toggle{background:#291568!important;box-shadow:0 8px 24px #1d123c40!important}
.giving-location{max-width:1200px;margin:64px auto;padding:24px;display:grid;grid-template-columns:minmax(240px,.8fr) minmax(320px,1.2fr);gap:32px;align-items:center;background:#f7f4fb;border:1px solid #e7e0ee;border-radius:14px}
.giving-location-copy{padding:20px;color:#291568}
.giving-location-kicker{display:block;color:#a52d28;font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px}
.giving-location h2{color:#291568;font:400 clamp(28px,3vw,42px)/1.15 Georgia,serif;margin:0 0 14px}
.giving-location p{color:#4b4160;line-height:1.6;margin:0 0 24px}
.giving-location a{display:inline-flex;padding:13px 20px;background:#291568;color:#fff!important;border-radius:6px;text-decoration:none;font-weight:700}
.giving-location a:hover{background:#493084}
.giving-location iframe{width:100%;height:320px;border:0;border-radius:10px;background:#e6e0ed}
.giving-map-frame{position:relative;min-height:320px;background:linear-gradient(135deg,#e6e0ed,#d6cde3);border-radius:10px;overflow:hidden}
.giving-map-caption{position:absolute;left:16px;bottom:16px;padding:9px 12px;background:#291568;color:#fff;border-radius:5px;font-size:12px;font-weight:700;pointer-events:none;box-shadow:0 3px 12px #0002}
@media(max-width:767px){.giving-location{grid-template-columns:1fr;margin:40px 16px;padding:12px;gap:6px}.giving-location-copy{padding:14px}.giving-location iframe{height:260px}}
body footer{background:#1c1037!important;color:#fff}
@media(max-width:1100px){body>header,body>header.scrolled{min-height:86px!important}body>header .logo img,body>header.scrolled .logo img{height:58px!important}body>header #menu-toggle{display:flex!important;color:#291568!important;background:#f2eef8!important;opacity:1!important;visibility:visible!important;min-width:44px;min-height:44px}body #main-nav{background:#fff!important}body #main-nav a{color:#291568!important}body #main-nav .nav-cta a{color:#fff!important}}
@media(max-width:767px){body>header .logo img.official-wordmark,body>header.scrolled .logo img.official-wordmark{width:175px!important;height:auto!important}}
/* Keep primary calls to action usable by touch and keyboard. */
body :is(.btn,.btn-primary,.btn-outline,.hero-button,.source-btn,.range-chip,button[type="submit"]){min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center}
body :is(.btn,.btn-primary,.btn-outline,.hero-button,.source-btn,.range-chip,button[type="submit"]):focus-visible{outline:3px solid #c92c29!important;outline-offset:3px}
@media(max-width:767px){body :is(.hero-actions,.hero-buttons,.cta-actions){gap:12px}body :is(.hero-actions,.hero-buttons,.cta-actions)>a{max-width:100%}}
