/* ==========================================================================
   White Apple Institute — consistency layer.
   Loaded after every plugin stylesheet. Delete the <link> in layouts/app to revert.
   ========================================================================== */
:root {
  --wa-navy: #003161; --wa-navy-2: #06427f; --wa-red: #b5121b; --wa-red-2: #94101a;
  --wa-blue: #005da5; --wa-sky: #4a7fd5; --wa-ink: #1a2233; --wa-body: #38455a; --wa-muted: #6b7a90;
  --wa-soft: #f4f7fb; --wa-line: #dfe6ef; --wa-radius: 8px;
  --wa-head: "Montserrat", Arial, Helvetica, sans-serif;
  --wa-section-y: 72px;
}

/* ---------- Buttons ---------- */
.wa-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 14px 28px; border-radius: 6px;
  font: 700 14px/1.1 var(--wa-head); text-transform: uppercase; letter-spacing: .04em; text-decoration: none !important;
  border: 2px solid transparent; transition: background .2s, color .2s, border-color .2s, transform .2s; cursor: pointer; }
.wa-btn:hover { transform: translateY(-1px); }
.wa-btn--primary { background: var(--wa-red); color: #fff !important; }
.wa-btn--primary:hover { background: var(--wa-red-2); }
.wa-btn--secondary { background: var(--wa-navy); color: #fff !important; }
.wa-btn--secondary:hover { background: var(--wa-navy-2); }
.wa-btn--light { background: transparent; color: #fff !important; border-color: rgba(255,255,255,.75); }
.wa-btn--light:hover { background: #fff; color: var(--wa-navy) !important; }

/* Plugin buttons → same shape/type */
.waim-card-btn, .waisp-card-btn, .waiw-sidebar-btn, .waiw-card-btn, .wai-net-events-banner-btn, .wai-net-zoom-btn,
.wai-net-video-btn, .waic-submit, .waipay-mf-submit, .wai-rail__cta, .waicr-search-btn, .waim-banner-btn, .waisp-banner-btn,
.wai-ui-btn, .wai-ui-btn--ghost {
  border-radius: 6px !important; font-family: var(--wa-head) !important; font-weight: 700 !important;
  text-transform: uppercase !important; letter-spacing: .04em !important; font-size: 13px !important; box-shadow: none !important;
}
/* Primary (red): the one main action on a page/card */
.waiw-sidebar-btn, .wai-net-events-banner-btn, .waic-submit, .waipay-mf-submit:not(:disabled), .wai-rail__cta,
.waim-card-featured .waim-card-btn, .waisp-card-featured .waisp-card-btn, .waim-banner-btn, .waisp-banner-btn {
  background: var(--wa-red) !important; color: #fff !important; border-color: var(--wa-red) !important;
}
.waiw-sidebar-btn:hover, .wai-net-events-banner-btn:hover, .waic-submit:hover, .waipay-mf-submit:not(:disabled):hover, .wai-rail__cta:hover,
.waim-card-featured .waim-card-btn:hover, .waisp-card-featured .waisp-card-btn:hover { background: var(--wa-red-2) !important; }
/* Secondary (navy) */
.waim-card-btn, .waisp-card-btn, .waiw-card-btn, .wai-net-zoom-btn, .waicr-search-btn, .wai-net-video-btn {
  background: var(--wa-navy) !important; color: #fff !important; border-color: var(--wa-navy) !important;
}
.waim-card-btn:hover, .waisp-card-btn:hover, .waiw-card-btn:hover, .wai-net-zoom-btn:hover, .waicr-search-btn:hover { background: var(--wa-navy-2) !important; }

/* "Recommended" cards: red accent to match the primary button */
.waim-card-featured, .waisp-card-featured { border-color: var(--wa-red) !important; box-shadow: 0 10px 30px rgba(181,18,27,.12) !important; }
.waim-badge, .waisp-badge { background: var(--wa-red) !important; }

/* ---------- Page hero ---------- */
.wa-hero { position: relative; color: #fff; min-height: 340px; display: flex; align-items: center; padding: 64px 40px;
  background: var(--wa-navy); background-image: linear-gradient(100deg, rgba(0,49,97,.97) 0%, rgba(0,49,97,.88) 50%, rgba(0,49,97,.55) 100%), var(--wa-hero-img, none);
  background-size: cover; background-position: center; border-bottom: 4px solid var(--wa-red); box-sizing: border-box; }
.wa-hero--compact { min-height: 220px; padding: 44px 40px; }
.wa-hero__inner { width: 100%; max-width: 1200px; margin: 0 auto; }
.wa-hero__eyebrow { margin: 0 0 12px; font: 700 13px/1.2 var(--wa-head); letter-spacing: .14em; text-transform: uppercase; color: #9cc0ff; }
.wa-hero__title { margin: 0; font: 800 clamp(32px, 4.2vw, 52px)/1.1 var(--wa-head); color: #fff; letter-spacing: -.01em; max-width: 820px; }
.wa-hero--compact .wa-hero__title { font-size: clamp(28px, 3.4vw, 40px); }
.wa-hero__sub { margin: 16px 0 0; max-width: 660px; font-size: 18px; line-height: 1.6; color: rgba(255,255,255,.9); }
.wa-hero__actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 28px; }
@media (max-width: 767px) { .wa-hero { padding: 48px 22px; min-height: 0; } .wa-hero__sub { font-size: 16px; } }

/* ---------- Section headings: one style everywhere ---------- */
.waic-heading, .wait-heading, .waiw-heading, .waim-heading, .waisp-heading, .waim-benefits-heading, .waisp-benefits-heading,
.wais-heading, .waiv-heading, .wai-net-page-heading, .waic-form-heading, .wait-founder-title, .waiw-intro-heading {
  font-family: var(--wa-head) !important; font-weight: 800 !important; color: var(--wa-navy) !important;
  letter-spacing: -.01em !important; text-transform: none !important;
}
.waic-heading, .wait-heading, .waiw-heading, .waim-heading, .waisp-heading, .waim-benefits-heading, .waisp-benefits-heading, .wais-heading, .waiv-heading {
  font-size: clamp(26px, 2.6vw, 34px) !important; line-height: 1.2 !important; text-align: center;
}
.waic-section-dark .waic-heading { color: var(--wa-navy) !important; }
.wai-net-page-heading { font-size: 24px !important; }
/* The small uppercase titles above plan grids become eyebrows (no more doubled headings) */
.waim-section-title, .waisp-section-title {
  font: 700 13px/1.2 var(--wa-head) !important; letter-spacing: .14em !important; text-transform: uppercase !important;
  color: var(--wa-red) !important; text-align: center; border: 0 !important; padding: 0 !important; margin: 0 0 10px !important;
}
.waim-section-title::after, .waisp-section-title::after { display: none !important; }
.waim-subtext, .waisp-subtext, .waiw-subtext, .wait-subtext, .waic-subtext { color: var(--wa-body) !important; font-size: 17px !important; line-height: 1.65 !important; }

/* ---------- Vertical rhythm ---------- */
.wait-section, .waiw-section, .waim-section, .waisp-section, .waim-benefits-section, .waisp-benefits-section, .wais-section, .waic-section, .waiv-section {
  padding-top: var(--wa-section-y) !important; padding-bottom: var(--wa-section-y) !important;
}
.wai-net-page-wrap { padding-top: 56px !important; padding-bottom: var(--wa-section-y) !important; }
.wait-founder-section { padding-top: var(--wa-section-y) !important; }
/* Alternate soft background on benefit rows so long pages read in chunks */
.waim-benefits-section, .waisp-benefits-section { background: var(--wa-soft); max-width: none !important; }
.waim-benefits-section > *, .waisp-benefits-section > * { max-width: 1100px; margin-left: auto; margin-right: auto; }
.home .htmlslider { margin-bottom: 0; }

/* ---------- Job board: hero replaces the boxed banner ---------- */
.waicr-board { max-width: 1200px; margin: 0 auto; padding: 40px 20px var(--wa-section-y); box-sizing: border-box; }

/* ---------- Contact page layout ---------- */
.wa-contact { max-width: 1200px; margin: 0 auto; padding: 56px 20px var(--wa-section-y); display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 48px; align-items: start; box-sizing: border-box; }
.wa-contact .waic-form-inner { max-width: none; }
.wa-contact .waic-form-section { padding: 0 !important; }
.wa-card { background: #fff; border: 1px solid var(--wa-line); border-radius: var(--wa-radius); padding: 26px 26px 22px; box-shadow: 0 2px 10px rgba(0,49,97,.05); }
.wa-card + .wa-card { margin-top: 20px; }
.wa-card h3 { margin: 0 0 14px; font: 800 20px/1.25 var(--wa-head); color: var(--wa-navy); }
.wa-info { list-style: none; margin: 0; padding: 0; }
.wa-info li { display: flex; gap: 14px; padding: 12px 0; border-top: 1px solid var(--wa-line); }
.wa-info li:first-child { border-top: 0; padding-top: 0; }
.wa-info__icon { flex: 0 0 38px; height: 38px; border-radius: 50%; background: #eaf1fb; color: var(--wa-navy); display: flex; align-items: center; justify-content: center; }
.wa-info__icon svg { width: 18px; height: 18px; }
.wa-info__label { display: block; font: 700 12px/1.2 var(--wa-head); letter-spacing: .08em; text-transform: uppercase; color: var(--wa-muted); margin-bottom: 4px; }
.wa-info a, .wa-info strong { color: var(--wa-ink); font-weight: 700; text-decoration: none; font-size: 16px; }
.wa-info a:hover { color: var(--wa-red); }
.wa-card--crisis { background: #fff6f6; border-color: #f2c9cc; }
.wa-card--crisis h3 { color: var(--wa-red); }
.wa-card--crisis p { margin: 0 0 14px; color: var(--wa-body); line-height: 1.6; }
.wa-contact .wai-contact-map-wrap { margin: 6px 0 0; padding: 0; max-width: none; }
@media (max-width: 960px) { .wa-contact { grid-template-columns: 1fr; } }

/* ---------- Form pages ---------- */
.wai-split { padding-top: 56px; padding-bottom: var(--wa-section-y); }

/* ---------- Closing CTA band ---------- */
.wa-cta { background: #eaf2fb; border-top: 1px solid #d6e3f3; padding: 56px 40px; }
.wa-cta__inner { max-width: 1200px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.wa-cta__title { margin: 0; font: 800 clamp(24px, 2.4vw, 30px)/1.2 var(--wa-head); color: var(--wa-navy); }
.wa-cta__title em { font-style: normal; color: var(--wa-red); }
.wa-cta__sub { margin: 8px 0 0; color: var(--wa-body); font-size: 17px; max-width: 640px; line-height: 1.6; }
.wa-cta__actions { display: flex; gap: 12px; flex-wrap: wrap; }
@media (max-width: 767px) { .wa-cta { padding: 44px 22px; } }

/* ---------- Misc tidy-ups ---------- */
.waiw-intro { padding-top: var(--wa-section-y) !important; padding-bottom: 24px !important; }
.wai-narrow { padding-top: 56px; }

/* ---------- Payment method choice ---------- */
.wa-paymethod { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.wa-paymethod__opt { position: relative; cursor: pointer; margin: 0; }
.wa-paymethod__opt input { position: absolute; opacity: 0; pointer-events: none; }
.wa-paymethod__box { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border: 2px solid var(--wa-line); border-radius: 8px; background: #fff; color: var(--wa-navy); transition: border-color .15s, box-shadow .15s; }
.wa-paymethod__box strong { display: block; font: 700 15px/1.2 var(--wa-head); color: var(--wa-ink); }
.wa-paymethod__box small { display: block; font-size: 12px; color: var(--wa-muted); margin-top: 3px; line-height: 1.35; }
.wa-paymethod__opt input:checked + .wa-paymethod__box { border-color: var(--wa-navy); box-shadow: 0 0 0 3px rgba(0,49,97,.12); }
.wa-paymethod__opt input:focus-visible + .wa-paymethod__box { outline: 2px solid var(--wa-sky); outline-offset: 2px; }
@media (max-width: 520px) { .wa-paymethod { grid-template-columns: 1fr; } }

/* ---------- Sticky header ---------- */
.site-header.wai-header { position: sticky; top: 0; z-index: 1000; }
body.admin-bar .site-header.wai-header { top: 32px; }

/* ---------- Section tabs under the hero ---------- */
.wa-subnav { background: #fff; border-bottom: 1px solid var(--wa-line); box-shadow: 0 2px 8px rgba(0,49,97,.04); }
.wa-subnav__inner { max-width: 1200px; margin: 0 auto; padding: 0 40px; display: flex; align-items: center; gap: 24px; overflow-x: auto; scrollbar-width: none; }
.wa-subnav__inner::-webkit-scrollbar { display: none; }
.wa-subnav__label { flex: 0 0 auto; font: 700 12px/1 var(--wa-head); letter-spacing: .12em; text-transform: uppercase; color: var(--wa-muted); padding-right: 20px; border-right: 1px solid var(--wa-line); }
.wa-subnav__links { display: flex; gap: 4px; }
.wa-subnav__link { flex: 0 0 auto; padding: 18px 14px 15px; font: 700 14px/1 var(--wa-head); color: var(--wa-navy) !important; border-bottom: 3px solid transparent; white-space: nowrap; }
.wa-subnav__link:hover { border-bottom-color: #c7d6ea; }
.wa-subnav__link.is-current { color: var(--wa-red) !important; border-bottom-color: var(--wa-red); }
@media (max-width: 767px) { .wa-subnav__inner { padding: 0 16px; } .wa-subnav__label { display: none; } }

/* ---------- Previous / next ---------- */
.wa-pager { border-top: 1px solid var(--wa-line); background: #fff; }
.wa-pager__inner { max-width: 1200px; margin: 0 auto; padding: 28px 40px; display: flex; justify-content: space-between; gap: 16px; }
.wa-pager__link { display: flex; flex-direction: column; gap: 4px; padding: 14px 20px; border: 1px solid var(--wa-line); border-radius: 8px; min-width: 220px; transition: border-color .15s, box-shadow .15s; }
.wa-pager__link:hover { border-color: var(--wa-navy); box-shadow: 0 4px 14px rgba(0,49,97,.08); }
.wa-pager__link small { font: 700 11px/1 var(--wa-head); letter-spacing: .12em; text-transform: uppercase; color: var(--wa-muted); }
.wa-pager__link span { font: 800 17px/1.2 var(--wa-head); color: var(--wa-navy); }
.wa-pager__link--next { text-align: right; margin-left: auto; }
@media (max-width: 600px) { .wa-pager__inner { padding: 20px 16px; } .wa-pager__link { min-width: 0; flex: 1; } }

/* ---------- Home stats strip ---------- */
.wa-stats { background: var(--wa-navy); color: #fff; border-bottom: 4px solid var(--wa-red); }
.wa-stats__inner { max-width: 1200px; margin: 0 auto; padding: 28px 40px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.wa-stat { display: flex; flex-direction: column; gap: 6px; padding-left: 18px; border-left: 3px solid var(--wa-sky); }
.wa-stat__value { font: 800 28px/1 var(--wa-head); }
.wa-stat__label { font-size: 14px; line-height: 1.4; color: rgba(255,255,255,.82); }
@media (max-width: 900px) { .wa-stats__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 24px 22px; } }

/* ---------- What We Do: sidebar buttons → quick-links list ---------- */
.waiw-intro-sidebar { background: #fff; border: 1px solid var(--wa-line); border-radius: var(--wa-radius); padding: 10px 0 0; box-shadow: 0 2px 10px rgba(0,49,97,.05); align-self: start; }
.waiw-intro-sidebar .waiw-sidebar-btn { display: flex !important; justify-content: space-between; align-items: center; background: transparent !important; color: var(--wa-navy) !important;
  border: 0 !important; border-bottom: 1px solid var(--wa-line) !important; border-radius: 0 !important; margin: 0 !important; padding: 15px 22px !important; text-align: left !important; width: 100%; box-sizing: border-box; }
.waiw-intro-sidebar .waiw-sidebar-btn::after { content: "→"; color: var(--wa-red); font-size: 16px; }
.waiw-intro-sidebar .waiw-sidebar-btn:hover { background: var(--wa-soft) !important; }
.waiw-intro-sidebar .waiw-support-box { margin: 0 !important; border: 0 !important; box-shadow: none !important; background: var(--wa-soft) !important; border-radius: 0 0 var(--wa-radius) var(--wa-radius); }

/* ---------- Alternate backgrounds so long pages read in chunks ---------- */
.waiw-items, .waiw-resources, .waim-section + .waisp-section { background: var(--wa-soft); max-width: none !important; }
.waiw-items > *, .waiw-resources > * { max-width: 1200px; margin-left: auto; margin-right: auto; }
.waiw-partners, .waiw-faq { background: #fff; }
.waiv-section { background: var(--wa-soft); max-width: none !important; }
.waiv-section > * { max-width: 1100px; margin-left: auto; margin-right: auto; }

/* Unified card look */
.waiw-card, .waim-card, .waisp-card, .wait-card, .waiw-testimonial-card, .wai-net-event-block { border-radius: var(--wa-radius) !important; }
.waiw-card, .waim-card, .waisp-card, .wait-card { border: 1px solid var(--wa-line) !important; box-shadow: 0 2px 12px rgba(0,49,97,.06) !important; overflow: hidden; background: #fff; }
.waim-card-featured, .waisp-card-featured { border: 2px solid var(--wa-red) !important; overflow: visible; }

/* ==========================================================================
   Main menu (replaces the theme's nav)
   ========================================================================== */
.wa-header { background: #fff; box-shadow: 0 2px 10px rgba(0,49,97,.08); }
.wa-header__bar { max-width: 1320px; margin: 0 auto; padding: 0 32px; min-height: 76px; display: flex; align-items: center; gap: 24px; position: relative; }
.wa-brand { display: flex; align-items: center; gap: 12px; text-decoration: none !important; flex: 0 0 auto; }
.wa-brand__logo { width: 50px; height: 50px; display: block; }
.wa-brand__name { font: 800 18px/1.1 var(--wa-head); color: var(--wa-navy); text-transform: uppercase; white-space: nowrap; letter-spacing: .01em; }

.wa-nav { flex: 1 1 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.wa-nav__list { list-style: none; margin: 0 auto; padding: 0; display: flex; align-items: stretch; gap: 4px; }
.wa-nav__item { position: relative; display: flex; }
.wa-nav__top { display: inline-flex; align-items: center; gap: 6px; padding: 28px 14px 25px; background: none; border: 0; border-bottom: 3px solid transparent; cursor: pointer;
  font: 700 15px/1 var(--wa-head); color: var(--wa-navy) !important; text-decoration: none !important; white-space: nowrap; }
.wa-nav__top:hover, .wa-nav__item.is-open > .wa-nav__top { color: var(--wa-red) !important; }
.wa-nav__item.is-active > .wa-nav__top { border-bottom-color: var(--wa-red); }
.wa-nav__chev { transition: transform .2s; }
.wa-nav__item.is-open .wa-nav__chev { transform: rotate(180deg); }
.wa-nav__top:focus-visible { outline: 2px solid var(--wa-sky); outline-offset: -4px; border-radius: 4px; }
.wa-nav__cta { display: flex; gap: 10px; flex: 0 0 auto; }
.wa-nav__cta .wa-btn, .wa-header__donate { padding: 12px 22px; font-size: 13px; }
.wa-btn--outline { background: #fff; color: var(--wa-navy) !important; border-color: var(--wa-navy); }
.wa-btn--outline:hover { background: var(--wa-navy); color: #fff !important; }
.wa-header__donate, .wa-burger { display: none; }

/* Dropdown panel */
.wa-panel { position: absolute; top: 100%; left: 50%; transform: translate(-50%, 8px); width: 680px; max-width: calc(100vw - 40px);
  display: grid; grid-template-columns: 220px 1fr; background: #fff; border-radius: 12px; border: 1px solid var(--wa-line);
  box-shadow: 0 18px 50px rgba(0,30,70,.18); overflow: hidden; opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .18s ease, transform .18s ease, visibility .18s; z-index: 1001; }
.wa-nav__item.is-open .wa-panel { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0); }
.wa-nav__item:first-child .wa-panel { left: 0; transform: translate(0, 8px); }
.wa-nav__item:first-child.is-open .wa-panel { transform: translate(0, 0); }
.wa-panel__intro { background: var(--wa-navy); color: #fff; padding: 26px 24px; }
.wa-panel__eyebrow { margin: 0 0 10px; font: 700 11px/1 var(--wa-head); letter-spacing: .14em; text-transform: uppercase; color: #9cc0ff; }
.wa-panel__title { margin: 0 0 8px; font: 800 19px/1.25 var(--wa-head); }
.wa-panel__text { margin: 0; font-size: 14px; line-height: 1.55; color: rgba(255,255,255,.85); }
.wa-panel__links { list-style: none; margin: 0; padding: 12px; display: grid; grid-template-columns: 1fr 1fr; gap: 2px; align-content: start; }
.wa-panel__links a { display: block; padding: 12px 14px; border-radius: 8px; text-decoration: none !important; transition: background .15s; }
.wa-panel__links a:hover, .wa-panel__links a:focus-visible { background: var(--wa-soft); }
.wa-panel__links a.is-current { background: #fdf0f1; }
.wa-panel__name { display: block; font: 700 15px/1.25 var(--wa-head); color: var(--wa-navy); }
.wa-panel__links a:hover .wa-panel__name, .wa-panel__links a.is-current .wa-panel__name { color: var(--wa-red); }
.wa-panel__desc { display: block; margin-top: 3px; font-size: 13px; line-height: 1.4; color: var(--wa-muted); }

/* Mid widths: tighten */
@media (max-width: 1280px) {
  .wa-brand__name { font-size: 16px; }
  .wa-nav__top { padding-left: 10px; padding-right: 10px; font-size: 14px; }
  .wa-nav__cta .wa-btn--outline { display: none; }
}

/* Mobile menu */
@media (max-width: 1099px) {
  .wa-header__bar { min-height: 68px; padding: 0 18px; gap: 12px; }
  .wa-header__donate { display: inline-flex; margin-left: auto; padding: 10px 16px; }
  .wa-burger { display: inline-flex; flex-direction: column; justify-content: center; gap: 5px; width: 44px; height: 44px; padding: 10px; border: 0; background: none; cursor: pointer; }
  .wa-burger span { display: block; height: 2px; background: var(--wa-navy); border-radius: 2px; transition: transform .2s, opacity .2s; }
  .wa-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .wa-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .wa-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .wa-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 0;
    background: #fff; border-top: 1px solid var(--wa-line); box-shadow: 0 18px 40px rgba(0,30,70,.18); max-height: calc(100vh - 110px); overflow-y: auto; }
  .wa-nav.is-open { display: flex; }
  .wa-nav__list { flex-direction: column; margin: 0; gap: 0; }
  .wa-nav__item { flex-direction: column; border-bottom: 1px solid var(--wa-line); }
  .wa-nav__top { justify-content: space-between; width: 100%; padding: 18px 20px; border-bottom: 0; font-size: 16px; }
  .wa-nav__item.is-active > .wa-nav__top { border-bottom: 0; box-shadow: inset 4px 0 0 var(--wa-red); }
  .wa-panel { position: static; transform: none !important; width: auto; max-width: none; display: none; grid-template-columns: 1fr;
    border: 0; border-radius: 0; box-shadow: none; opacity: 1; visibility: visible; pointer-events: auto; background: var(--wa-soft); }
  .wa-nav__item.is-open .wa-panel { display: block; }
  .wa-panel__intro { display: none; }
  .wa-panel__links { grid-template-columns: 1fr; padding: 6px 12px 12px; }
  .wa-nav__cta { padding: 18px 20px 22px; }
  .wa-nav__cta .wa-btn { flex: 1; }
  .wa-nav__cta .wa-btn--outline { display: inline-flex; }
  body.wa-nav-open { overflow: hidden; }
  .wai-utility-message { display: none !important; }
}
@media (max-width: 480px) { .wa-brand__name { font-size: 14px; white-space: normal; max-width: 140px; } }
.wa-nav__top:focus:not(:focus-visible), .wa-burger:focus:not(:focus-visible) { outline: none; box-shadow: none; }
@media (max-width: 1099px) { .wa-nav__item.is-active > .wa-nav__top:focus:not(:focus-visible) { box-shadow: inset 4px 0 0 var(--wa-red); } }

/* Branches band: no gap under the GoFundMe bar */
.waib-outer { padding-bottom: 0 !important; }
.waib-outer > .waib-section:last-child { padding-bottom: 40px; }

/* ==========================================================================
   Home hero (restyles the slider; slide HTML in Admin → Hero Slides is unchanged)
   ========================================================================== */
.wa-home-hero { position: relative; }
.home .htmlslider__viewport { height: 620px !important; min-height: 620px !important; }
.home .wai-slide-1 { min-height: 620px !important; }
.home .wai-slide-1 .wai-bg::after {
  background: linear-gradient(90deg, rgba(0,26,56,.94) 0%, rgba(0,40,82,.86) 34%, rgba(0,49,97,.45) 62%, rgba(0,49,97,.05) 85%),
              linear-gradient(0deg, rgba(0,20,45,.45) 0%, rgba(0,20,45,0) 35%) !important;
  opacity: 1 !important;
}
.home .htmlslider__slide.is-active .wai-bg img { animation: wa-kenburns 14s ease-out both; }
@keyframes wa-kenburns { from { transform: scale(1.08); } to { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .home .htmlslider__slide.is-active .wai-bg img { animation: none; } }
.home .wai-slide-1 .wai-container { max-width: 1260px !important; padding: 60px 40px 90px !important; }
.home .wai-slide-1 .wai-inner { max-width: 620px !important; }
.home .wai-slide-1 .wai-eyebrow, .home .wai-slide-1 .wai-headline, .home .wai-slide-1 .wai-body, .home .wai-slide-1 .wai-btn-outline { text-shadow: none !important; }
.home .wai-slide-1 .wai-eyebrow { display: inline-block !important; background: var(--wa-red) !important; color: #fff !important; padding: 7px 12px !important;
  border-radius: 4px !important; font: 700 12px/1 var(--wa-head) !important; letter-spacing: .12em !important; margin: 0 0 22px !important; }
.home .wai-slide-1 .wai-headline { color: #fff !important; font: 800 clamp(34px, 4.4vw, 56px)/1.08 var(--wa-head) !important; letter-spacing: -.015em !important; margin: 0 0 20px !important; }
.home .wai-slide-1 .wai-body { color: rgba(255,255,255,.9) !important; font-size: 19px !important; line-height: 1.6 !important; max-width: 560px; margin: 0 0 30px !important; }
.home .wai-slide-1 .wai-body a { color: #fff !important; border-bottom: 2px solid var(--wa-red); }
.home .wai-slide-1 .wai-buttons { gap: 14px !important; }
.home .wai-slide-1 .wai-btn { border-radius: 6px !important; padding: 15px 28px !important; font: 700 14px/1 var(--wa-head) !important; text-transform: uppercase !important; letter-spacing: .04em !important; box-shadow: none !important; }
.home .wai-slide-1 .wai-btn-primary { background: var(--wa-red) !important; color: #fff !important; border: 2px solid var(--wa-red) !important; }
.home .wai-slide-1 .wai-btn-primary:hover { background: var(--wa-red-2) !important; border-color: var(--wa-red-2) !important; }
.home .wai-slide-1 .wai-btn-outline { background: transparent !important; color: #fff !important; border: 2px solid rgba(255,255,255,.8) !important; }
.home .wai-slide-1 .wai-btn-outline:hover { background: #fff !important; color: var(--wa-navy) !important; }
/* dots + pause: bottom-left, under the copy */
.home .htmlslider__controls { left: max(40px, calc((100% - 1260px) / 2 + 40px)) !important; transform: none !important; bottom: 34px !important; }
.home .htmlslider__arrow { display: none !important; }

/* Next-meeting card on the hero */
.wa-meet { position: absolute; right: max(40px, calc((100% - 1260px) / 2 + 40px)); bottom: 70px; z-index: 30; width: 320px;
  background: rgba(255,255,255,.97); border-radius: 12px; padding: 22px 24px; box-shadow: 0 20px 50px rgba(0,20,45,.35); border-top: 4px solid var(--wa-red); }
.wa-meet p { margin: 0; }
.wa-meet__eyebrow { font: 700 11px/1 var(--wa-head); letter-spacing: .14em; text-transform: uppercase; color: var(--wa-red); margin-bottom: 14px !important; }
.wa-meet__date { display: flex; align-items: center; gap: 12px; margin-bottom: 12px !important; }
.wa-meet__day { font: 800 44px/1 var(--wa-head); color: var(--wa-navy); }
.wa-meet__mon { font: 700 13px/1.3 var(--wa-head); color: var(--wa-muted); text-transform: uppercase; letter-spacing: .06em; }
.wa-meet__title { font: 800 18px/1.3 var(--wa-head); color: var(--wa-ink); margin-bottom: 6px !important; }
.wa-meet__time { font-size: 14px; color: var(--wa-muted); margin-bottom: 16px !important; }
.wa-meet__actions { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.wa-meet__actions .wa-btn { padding: 11px 18px; font-size: 12px; }
.wa-meet__link { font: 700 13px/1 var(--wa-head); color: var(--wa-navy) !important; }
.wa-meet__link:hover { color: var(--wa-red) !important; }
@media (max-width: 1099px) {
  .wa-meet { position: static; width: auto; border-radius: 0; box-shadow: none; border-top: 0; border-bottom: 1px solid var(--wa-line); padding: 22px; }
  .home .htmlslider__viewport, .home .wai-slide-1 { height: auto !important; min-height: 540px !important; }
  .home .wai-slide-1 .wai-container { padding: 48px 22px 80px !important; }
  .home .htmlslider__controls { left: 22px !important; }
}

/* Founder band */
.wai-founder { padding: var(--wa-section-y) 40px !important; }
.wai-founder-title { text-transform: none !important; font-size: clamp(26px, 2.6vw, 34px) !important; }
.wai-founder-eyebrow { color: var(--wa-red) !important; letter-spacing: .14em !important; }
.wa-founder-actions { display: flex; gap: 12px; flex-wrap: wrap; margin: 6px 0 22px; }
.wai-founder-fine-print { text-transform: none; }

/* Partner links as chips */
.wais-partner-row { gap: 12px !important; }
.wais-partner-link { display: inline-block; padding: 10px 18px !important; border: 1px solid var(--wa-line) !important; border-radius: 999px !important; background: #fff; color: var(--wa-navy) !important; font-weight: 700; }
.wais-partner-link:hover { border-color: var(--wa-navy) !important; background: var(--wa-soft); }
@media (max-width: 1099px) {
  .home .wai-slide-1 .wai-bg::after { background: linear-gradient(180deg, rgba(0,26,56,.82) 0%, rgba(0,40,82,.9) 100%) !important; }
}
