.footer{background:var(--color-gray-900);color:var(--color-white);padding:var(--space-m) var(--space-s)}@media (min-width:768px){.footer{padding:var(--space-m) var(--container-padding)}}.footer__columns{display:flex;flex-direction:column;gap:var(--space-s)}.footer__column{flex:0 1 auto}.footer__brand{margin-bottom:var(--space-l)}@media (min-width:768px){.footer__columns{flex-direction:row;flex-wrap:wrap;gap:var(--space-m)}}.footer__column--newsletter{max-width:250px}@media (min-width:1024px){.footer__columns{flex-wrap:nowrap;gap:var(--space-l)}}.footer__logo{display:block}.footer__logo:hover{opacity:.8}.footer__logo-image{height:40px;width:auto}.footer__nav{display:flex;flex-wrap:wrap;gap:var(--space-m) var(--space-xl);margin-bottom:var(--space-xl)}.footer__nav-link{color:var(--color-gray-300);text-decoration:none;font-size:var(--text-small)}.footer__nav-link:hover{color:var(--color-white)}.footer__heading{color:var(--color-brand);margin-bottom:var(--space-s)}.footer__links{list-style:none;padding:0;margin:0}.footer__link{color:var(--color-white);text-decoration:none}.footer__link:hover{text-decoration:underline}.footer__contact{font-style:normal;color:var(--color-white)}.footer__copyright{font-size:var(--text-small);color:var(--color-white)}.footer__bottom{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-m);margin-top:var(--space-l);padding-top:var(--space-m);border-top:1px solid var(--color-gray-700)}@media (min-width:768px){.footer__bottom{flex-direction:row;align-items:center;justify-content:space-between}}.footer__actions{display:flex;gap:var(--space-m)}.footer__action-link{color:var(--color-white);text-decoration:none;font-size:var(--text-small)}.footer__action-link:hover{opacity:.8}.footer__language-link{color:var(--color-white);text-decoration:none;font-size:var(--text-small)}.footer__language-link:hover{opacity:.8}.footer__newsletter-intro{margin-bottom:var(--space-s);color:var(--color-gray-300)}.footer__newsletter-form{display:flex;flex-direction:column;gap:var(--space-s)}.footer__newsletter-privacy{font-size:var(--text-small);color:var(--color-gray-500);line-height:var(--leading-normal)}.footer__newsletter-button{align-self:flex-start}.footer__newsletter-button:disabled{opacity:.6;cursor:not-allowed}.footer__newsletter-success{font-weight:var(--weight-semibold);color:var(--color-white)}.footer__newsletter-error{color:var(--color-brand);font-size:var(--text-small)}.header{position:fixed;top:calc(var(--banner-height, 0px) + 1rem);left:1rem;right:1rem;z-index:100;background:var(--color-white);border-radius:8px;box-shadow:0 2px 12px rgba(0,0,0,.08);transition:top .3s ease,left .3s ease,right .3s ease,border-radius .3s ease,box-shadow .3s ease}.header--docked{top:var(--banner-height,0);left:0;right:0;border-radius:0;box-shadow:0 1px 8px rgba(0,0,0,.06)}.header__top{padding:var(--space-xs) var(--space-s)}.header__brand,.header__top{display:flex;align-items:center}.header__brand{flex-shrink:0;margin-right:var(--space-s)}.header__logo{font-size:var(--text-h4);font-weight:var(--weight-bold);color:var(--color-text);text-decoration:none}.header__logo:hover{color:var(--color-primary)}.header__logo-image{height:24px;width:auto}@media (min-width:768px){.header__logo-image{height:32px}}.header__actions{display:flex;margin-left:auto;align-items:center;gap:var(--space-xs)}.header__action-link{display:none}.header__action-link--cta{display:inline-flex}@media (min-width:1024px){.header__action-link{display:inline-flex}}.header__action-link--primary+.header__action-link--cta{margin-left:calc(-1 * var(--space-xs))}.header__action-link{font-size:var(--text-small);font-weight:var(--weight-medium);color:var(--color-gray-500);text-decoration:none;white-space:nowrap;padding:var(--space-xs) var(--space-xs);transition:color .2s ease}.header__action-link:hover{color:var(--color-primary)}.header__action-link--primary{color:var(--color-text);background:var(--color-gray-100);border:none;font-size:var(--text-body);font-weight:var(--weight-medium);padding:.35em 1.4em;border-radius:2px 0 0 2px;margin-right:0}.header__action-link--primary:hover{color:var(--color-text);background:var(--color-gray-200)}.header__action-link--cta{color:var(--color-white);background:var(--color-brand);border:none;font-size:var(--text-body);font-weight:var(--weight-medium);padding:.35em 1.4em;border-radius:0 2px 2px 0}.header__action-link--cta:hover{color:var(--color-white);opacity:.85}.header__nav{display:none;align-items:center}.header__nav-link{font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--color-text);text-decoration:none;padding:var(--space-xs) var(--space-xs);white-space:nowrap;cursor:pointer;transition:color .2s ease}.header__nav-link--active,.header__nav-link:hover{color:var(--color-brand)}.header__panel{position:absolute;top:100%;background:rgba(255,255,255,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:101;padding:var(--space-s) var(--space-m) var(--space-m) var(--space-m);margin-left:calc(-1 * (var(--space-m) - var(--space-xs)));overflow:hidden;transition:height .25s ease;animation:panelFadeIn .2s ease;border-radius:0 0 8px 8px;white-space:nowrap}@keyframes panelFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.header__panel--closing{animation:panelFadeOut .2s ease forwards}@keyframes panelFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.header__panel-inner{display:flex;flex-direction:column}.header__panel-link{font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--color-text);text-decoration:none;padding:.4em 0;white-space:nowrap;transition:color .15s ease;animation:linkSlideIn .25s ease both}.header__panel-link:first-child{animation-delay:0s}.header__panel-link:nth-child(2){animation-delay:.03s}.header__panel-link:nth-child(3){animation-delay:.06s}.header__panel-link:nth-child(4){animation-delay:.09s}.header__panel-link:nth-child(5){animation-delay:.12s}.header__panel-link:nth-child(6){animation-delay:.15s}.header__panel-link:nth-child(7){animation-delay:.18s}.header__panel-link:nth-child(8){animation-delay:.21s}.header__panel-link:nth-child(9){animation-delay:.24s}.header__panel-link:nth-child(10){animation-delay:.27s}@keyframes linkSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.header__panel-link--parent{font-weight:var(--weight-bold)}.header__panel-link:hover{color:var(--color-brand)}.header__overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.header__overlay--closing{animation:fadeOut .2s ease forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.header__hamburger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:4px;margin-left:var(--space-xs);background:none;border:none;cursor:pointer}.header__hamburger-line{display:block;width:100%;height:2px;background:var(--color-text);transition:transform .3s ease,opacity .3s ease}.header__hamburger--open .header__hamburger-line:first-child{transform:translateY(7px) rotate(45deg)}.header__hamburger--open .header__hamburger-line:nth-child(2){opacity:0}.header__hamburger--open .header__hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.header__mobile-menu{position:fixed;top:calc(var(--banner-height, 0px) + var(--header-height));left:0;right:0;bottom:0;background:var(--color-white);z-index:99;padding:0;transform:translateX(100%);transition:transform .3s ease;overflow:hidden}.header__mobile-menu--open{transform:translateX(0)}.header__mobile-nav{display:flex;flex-direction:column}.header__mobile-nav .header__nav-link{display:flex;align-items:center;justify-content:space-between;padding:var(--space-s) var(--container-padding);border-bottom:1px solid var(--color-gray-200);font-size:var(--text-body);font-weight:var(--weight-medium);cursor:pointer}.header__mobile-actions{display:none}.header__mobile-actions .header__action-link--primary{margin-left:auto}.header__mobile-actions .header__action-link{font-size:var(--text-small)}.header__mobile-sub{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-white);animation:slideInRight .25s ease;overflow-y:auto}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.header__mobile-sub--closing{animation:slideOutRight .25s ease forwards}@keyframes slideOutRight{0%{transform:translateX(0)}to{transform:translateX(100%)}}.header__mobile-back{display:flex;align-items:center;gap:.25em;width:100%;padding:var(--space-s) var(--container-padding);background:none;border:none;border-bottom:1px solid var(--color-gray-200);font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--color-gray-500);text-align:left;cursor:pointer}.header__mobile-sub-links{display:flex;flex-direction:column}.header__mobile-sub-link{display:block;padding:var(--space-s) var(--container-padding);font-size:var(--text-body);font-weight:var(--weight-medium);color:var(--color-text);text-decoration:none;border-bottom:1px solid var(--color-gray-200)}.header__mobile-sub-link:hover{color:var(--color-brand)}.header__mobile-sub-link--parent{font-weight:var(--weight-bold)}@media (min-width:1024px){.header__nav{display:flex}.header__hamburger,.header__mobile-menu{display:none}}.site-banner{position:fixed;top:0;left:0;right:0;z-index:101;background:#f0e040;color:var(--color-text);padding:var(--space-xs) var(--space-s)}.site-banner,.site-banner__content{display:flex;align-items:center;justify-content:space-between}.site-banner__content{width:100%;gap:var(--space-s)}.site-banner__link,.site-banner__text{font-size:var(--text-small);font-weight:var(--weight-semibold)}.site-banner__link{color:var(--color-white);background:var(--color-text);padding:.3em 1em;border-radius:2px;text-decoration:none;white-space:nowrap}.site-banner__link:hover{opacity:.85}@media (min-width:768px){.site-banner__link,.site-banner__text{font-size:var(--text-body)}}.sticky-donate{position:fixed;bottom:var(--space-s);right:var(--space-s);z-index:1000;display:none;align-items:center;gap:.4em;padding:.65em 1.1em;background:var(--color-brand);color:var(--color-white);border-radius:100px;font-size:var(--text-body);font-weight:var(--weight-bold);text-decoration:none;box-shadow:0 2px 12px rgba(0,0,0,.25);transition:transform .15s ease,box-shadow .15s ease}.sticky-donate:hover{transform:scale(1.05);box-shadow:0 4px 16px rgba(0,0,0,.3)}.sticky-donate__icon{width:1.2em;height:1.2em;flex-shrink:0}.sticky-donate__label{line-height:1}@media (min-width:1024px){.sticky-donate{display:flex}}