/* Theme override: global page background (keep header/footer as-is) */
:root{
  --bg-900: #1F2328;
  --bg-800: #23272E;   /* slightly lighter panel tint if needed */
}

/* Global page background */
body{
  background: var(--bg-900, #1F2328);
}

/* Optional polish: harmonize frosted panel tint a touch without affecting header/footer */
.card.frosted,
.frosted{
  background-color: rgba(35, 39, 46, 0.40);
}

/* Optional: ensure default sections read well on new bg */
.section.container{
  color: inherit;
}
/* Labels inside header icons */
.header-actions .icon-btn span {
  margin-left: 0.25rem;
  font-size: 0.9rem;
}

/* Hide labels on smaller screens */
@media (max-width: 768px) {
  .header-actions .icon-btn span {
    display: none;
  }
}
/* --- Join panel polish ----------------------------------------------- */
.join-section-pro .hero-quote__frame.join-frame {
  /* already using your quote-style card — keep it, just refine spacing */
  max-width: 1100px;
  margin: 0 auto;
  padding: 48px 30px;
}

/* 1) Make the GET INVOLVED pill a branded yellow */
.join-section-pro .join-head .eyebrow {
  display: inline-block;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: .85rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: #FFD84D;           /* yellow */
  color: #122033;                 /* dark ink */
  box-shadow: 0 8px 22px rgba(255,216,77,.25), inset 0 -2px 0 rgba(0,0,0,.12);
}
@media (hover:hover){
  .join-section-pro .join-head .eyebrow:hover {
    filter: brightness(0.98);
  }
}

/* 2) Stronger, cleaner heading */
.join-section-pro .join-title {
  margin: 16px 0 10px;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: #F5F9FF;
  text-shadow: 0 1px 0 rgba(0,0,0,.25);
  position: relative;
}
.join-section-pro .join-title::after {
  content: "";
  display: block;
  width: 68px;
  height: 3px;
  border-radius: 3px;
  margin-top: 12px;
  background: linear-gradient(90deg,#22d3ee,#60a5fa); /* cyan→blue accent */
  opacity: .9;
}

/* 3) Friendlier lead line */
.join-section-pro .join-lead {
  margin: 14px 0 8px;
  color: #C9D6E5;
  line-height: 1.7;
  max-width: 70ch;
}

/* ===== AHVA DRAWER — FINAL LOCKED STYLES ===== */
/* Hard stop: ignore any .nav/* or other site rules. */
.ahva-nav,
.ahva-nav * { box-sizing: border-box; }

/* Drawer tokens */
.ahva-nav {
  --drawer-width: 220px;
  --panel-bg: #1b2127;
  --panel-border: rgba(255,255,255,.08);
  --ink: #b8c9db;
  --ink-hover: #d3e2f2;
  --focus-bg: rgba(142,193,255,.06);
  --weight: 800;
  --size: 14px;
  --lh: 1.25;
  --track: .08em;
}

/* Kill any old overlay */
.ahva-nav__overlay { display:none !important; opacity:0 !important; pointer-events:none !important; }

/* Drawer panel (always a right-side drawer) */
.ahva-nav__list,
.nav.ahva-nav .ahva-nav__list {            /* beat .nav ul rules */
  position: fixed !important;
  top: 0; right: 0; bottom: 0;
  width: var(--drawer-width) !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;                        /* no transparent stripes */
  background: var(--panel-bg) !important;   /* opaque charcoal */
  border-left: 1px solid var(--panel-border) !important;
  transform: translateX(100%) !important;
  transition: transform .25s ease !important;
  z-index: 4001 !important;
  box-shadow: none !important;              /* no “disabled” look */
}

/* Open state */
.ahva-nav.ahva-nav--open .ahva-nav__list { transform: translateX(0) !important; }

/* Items + separators */
.ahva-nav__item { border-top: 1px solid rgba(255,255,255,.06) !important; }
.ahva-nav__item:first-child { border-top: 0 !important; }

/* Links, triggers, logout — identical boxes, bold, uppercase */
.ahva-nav__link,
.ahva-nav__trigger,
.ahva-nav__logout {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  padding: 16px 18px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 6px !important;
  text-decoration: none !important;
  text-align: left !important;

  font: var(--weight) var(--size)/var(--lh) inherit !important;
  letter-spacing: var(--track) !important;
  text-transform: uppercase !important;

  color: var(--ink) !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent;
}
.ahva-nav__trigger,
.ahva-nav__logout { appearance: none !important; -webkit-appearance: none !important; }

.ahva-nav__link:hover,
.ahva-nav__trigger:hover,
.ahva-nav__logout:hover { color: var(--ink-hover) !important; }

.ahva-nav__link:focus,
.ahva-nav__trigger:focus,
.ahva-nav__logout:focus { outline: 2px solid #8ec1ff !important; outline-offset: 2px !important; background: var(--focus-bg) !important; }

/* Arrow on the far right; right ▸ vs down ▾ */
.ahva-nav__arrow { margin-left: auto !important; width: 1.1em !important; text-align: center !important; opacity: .9 !important; transform: translateY(1px) !important; }
.ahva-nav__trigger[aria-expanded="false"] .ahva-nav__arrow::before { content: "›"; }
.ahva-nav__trigger[aria-expanded="true"]  .ahva-nav__arrow::before { content: "▾"; }

/* Submenus: inline + collapsible */
.ahva-nav__item--has-sub > .ahva-nav__sub {
  display: none !important;
  padding: 0 !important; margin: 0 !important; border: 0 !important; background: transparent !important;
}
.ahva-nav__item--open > .ahva-nav__sub { display: block !important; }
.ahva-nav__sub a {
  display: block !important;
  padding: 12px 18px 12px 32px !important;   /* indent children */
  color: var(--ink) !important;
  text-decoration: none !important;
  border-radius: 6px !important;
  font-weight: var(--weight) !important;
  letter-spacing: var(--track) !important;
  text-transform: uppercase !important;
}
.ahva-nav__sub a:hover { background: var(--focus-bg) !important; color: var(--ink-hover) !important; }

/* Neutralize any legacy site rules that hit generic .nav/.nav ul/.nav a */
.nav.ahva-nav,
.nav.ahva-nav ul,
.nav.ahva-nav li,
.nav.ahva-nav a { all: unset; display: revert; } /* keeps our namespaced rules intact */
/* Fix "ghost space" above hero and remove any shadow pushing content */
.site-header { margin-bottom: 0 !important; box-shadow: none !important; }
.hero { margin-top: 0 !important; }

/* TEMP: hide Login / Join in header site-wide (easy to revert later) */
.header-actions { display: none !important; }

/* Safety: legacy mobile menu artifacts */
.nav-overlay { display: none !important; opacity: 0 !important; pointer-events: none !important; }
.nav.open { transform: none !important; position: static !important; background: transparent !important; box-shadow: none !important; }
