/* Shared header: approved October 22, 2026. Keep images below the navigation. */
.campaign-notice { position:relative; inset:auto; box-shadow:none; }
.sk_header { position:relative; top:auto; width:100%; grid-template-rows:96px 48px; z-index:10; }
.sk_header_top {
  width:100%; background:#fffaf5; color:#15304f;
  padding:0 max(28px,calc((100vw - 1240px)/2));
  grid-template-columns:auto 1fr auto auto;
  grid-template-areas:"logo . vol donate"; gap:28px;
  border-bottom:1px solid #eee1d7;
}
.sk_header .logoimg { width:157px; max-width:157px; max-height:68px; }
.sk_hdr_top_vol { display:flex; align-items:center; gap:8px; margin:0; }
.sk_hdr_top_vol .btn-vola { width:auto; height:auto; margin:0; padding:0; font-size:26px; }
.sk_hdr_top_vol .btn-volb {
  display:block; width:auto; height:auto; margin:0; padding:0;
  font-size:12px; line-height:1.4; font-weight:600; color:#15304f; max-width:110px;
}
.sk_hdr_top_donate { margin:0; }
.sk_hdr_top_donate .donlink {
  margin:0; padding:12px 25px; font-size:14px; font-weight:600;
  box-shadow:none; background:#008d67; border-radius:7px;
}
.sk_header_bot {
  display:grid; width:100%; background:#be1d2d;
  grid-template-columns:minmax(0,1fr) 44px;
  grid-template-areas:"nav social"; align-items:center; column-gap:16px;
  padding:0 max(28px,calc((100vw - 1240px)/2));
}
.sk_hdr_bot_nav { min-width:0; max-width:none; width:100%; margin:0; }
.sk_header nav.navigation { height:48px; }
.sk_header .nav-menu { height:48px; background:none; }
.sk_header .nav-menu li { padding:0; }
.sk_header .nav-menu li a {
  height:48px; line-height:48px; padding:0 24px;
  font-size:13px; font-weight:600; color:#fff;
}
.sk_header .nav-menu li a.active { background:#971626; box-shadow:inset 0 -3px #ff9a55; }
.sk_header .nav-menu li a:hover { background:#a51829; color:#fff; }
.sk_header .sk_hdr_bot_social {
  display:flex; grid-area:social; align-self:center; justify-self:end;
  width:44px; height:44px; padding:0; margin:0; position:relative; z-index:3;
}
.sk_header .sk_hdr_bot_social a {
  display:grid; place-items:center; width:44px; height:44px; color:#fff; font-size:24px; line-height:1;
}
.sk_header .sk_hdr_bot_social a:focus-visible { outline:2px solid #fff; outline-offset:-5px; }
#hero.hero_needs, #hero.hero_donate { padding-top:0; }
.hero_needs .hero_media, .hero_donate .hero_media { width:100%; }
.hero_needs img, .hero_donate img { border-radius:0; box-shadow:none; }
/* The campaign keeps its split hero; its old overlaid-header offset is obsolete. */
.campaign-hero__panel { padding-top:48px; }
.noheader, .grid404 { margin-top:clamp(28px,4vw,56px); }
@media (min-width:761px) and (max-width:980px) {
  .campaign-hero__panel { padding-top:38px; }
}
@media (max-width:767px) {
  html, body, .maincont { overflow-x:clip; max-width:100%; }
  .sk_header { grid-template-rows:78px 44px; }
  .sk_header_top { padding:0 18px; grid-template-columns:auto 1fr auto; grid-template-areas:"logo . donate"; gap:12px; }
  .sk_header .logoimg { width:126px; max-height:58px; }
  .sk_hdr_top_vol { display:none; }
  .sk_hdr_top_donate .donlink { padding:10px 17px; font-size:12px; }
  .sk_header_bot { padding:0 14px; column-gap:10px; }
  .sk_header nav.navigation { height:44px; }
  .sk_header .nav-toggle { display:block; height:44px; width:auto; padding:0 4px; left:0; font-size:12px; letter-spacing:.07em; }
  .sk_header .nav-menu {
    display:block; position:absolute; top:44px; left:-14px;
    width:100vw; height:0; overflow:hidden; background:#be1d2d;
  }
  .sk_header .nav-menu.active { height:auto; }
  .sk_header .nav-menu li { display:block; float:none; width:100%; }
  .sk_header .nav-menu li a { display:block; float:none; padding:0 20px; }
  .sk_header .nav-overlay { position:fixed; inset:0; height:100vh; }
}
@media (max-width:760px) { .campaign-hero__panel { padding-top:34px; } }
@media (max-width:460px) { .campaign-hero__panel { padding-top:30px; } }
