/* Option B — Modern Community (scoped to body.theme-community) */

body.theme-community {
  font-family: "DM Sans", system-ui, sans-serif;
  background: var(--surface);
  --community-radius: 20px;
  --community-shadow: 0 16px 48px rgba(0, 40, 104, 0.1);
}

body.theme-community h1,
body.theme-community h2,
body.theme-community h3,
body.theme-community .section-title,
body.theme-community .page-hero h1,
body.theme-community .home-hero h1 {
  font-family: "Fraunces", Georgia, serif;
  letter-spacing: -0.03em;
}

/* —— Nav: light, friendly —— */
body.theme-community nav.site-nav {
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--border-strong);
  box-shadow: 0 4px 28px rgba(0, 40, 104, 0.06);
}
body.theme-community .nav-name .org {
  color: var(--navy);
}
body.theme-community .nav-name .chapter {
  color: var(--muted);
  opacity: 1;
}
body.theme-community .nav-links a,
body.theme-community .nav-dropdown-toggle {
  color: var(--ink-soft, var(--text));
}
body.theme-community .nav-links a:hover,
body.theme-community .nav-links a.active,
body.theme-community .nav-dropdown.is-active .nav-dropdown-toggle,
body.theme-community .nav-dropdown.open .nav-dropdown-toggle {
  color: var(--navy);
  border-bottom-color: var(--gold);
}
body.theme-community .nav-logo {
  border-color: rgba(0, 40, 104, 0.12);
  box-shadow: 0 6px 18px rgba(0, 40, 104, 0.1);
}
body.theme-community .nav-dropdown-menu {
  border-radius: var(--radius-lg);
  box-shadow: var(--community-shadow);
}
body.theme-community .nav-toggle {
  color: var(--navy);
}
@media (max-width: 900px) {
  body.theme-community .nav-toggle {
    border-color: var(--border-strong);
    background: var(--surface-soft);
    color: var(--navy);
  }
  body.theme-community .nav-links.open {
    background: #fff;
    border-top: 1px solid var(--border-strong);
    box-shadow: 0 12px 32px rgba(0, 40, 104, 0.08);
  }
  body.theme-community .nav-links a,
  body.theme-community .nav-dropdown-toggle {
    color: var(--navy);
  }
  body.theme-community .nav-links.open a {
    border-bottom-color: var(--border-strong);
  }
  body.theme-community .nav-dropdown.open .nav-dropdown-menu,
  body.theme-community .nav-flyout.open > .nav-flyout-menu {
    background: var(--surface-soft);
  }
  body.theme-community .nav-dropdown-menu a,
  body.theme-community .nav-flyout-menu a,
  body.theme-community .nav-submenu-link {
    color: var(--navy) !important;
  }
  body.theme-community .nav-submenu-label {
    color: var(--muted);
  }
}
body.theme-community .reg-btn {
  color: #fff;
  background: var(--navy);
}
body.theme-community .reg-btn:hover {
  color: #fff;
  background: var(--gold);
}

/* —— Home hero: light split + colored visual card —— */
body.theme-community .home-hero {
  padding-top: clamp(2.5rem, 5vw, 4rem);
  color: var(--text);
  background: linear-gradient(180deg, #ffffff 0%, var(--surface-soft) 62%, var(--surface-blue) 100%);
  animation: none;
  background-size: auto;
}
body.theme-community .home-hero .hero-bg-pattern {
  opacity: 0.04;
  filter: invert(1);
}
body.theme-community .home-hero h1 {
  color: var(--navy);
}
body.theme-community .home-hero h1 span:not(.hero-gradient-text) {
  color: var(--gold);
}
body.theme-community .home-hero-summary {
  color: var(--muted);
}
body.theme-community .hero-kicker {
  color: var(--navy);
}
body.theme-community .hero-kicker span {
  background: var(--gold);
}
body.theme-community .home-hero .btn-outline {
  border-color: var(--navy);
  color: var(--navy);
  background: #fff;
}
body.theme-community .home-hero .btn-outline:hover {
  background: var(--surface-blue);
  border-color: var(--navy);
  color: var(--navy);
}
body.theme-community .home-hero-visual:not(.home-hero-visual--globe) {
  background: linear-gradient(145deg, var(--navy) 0%, #1e5099 55%, #2d6bb5 100%);
  border: none;
  box-shadow: var(--community-shadow);
}
body.theme-community .home-hero .hero-stats {
  border-top: none;
  margin-top: 0.5rem;
  padding: 1.25rem 1.5rem;
  border-radius: var(--community-radius);
  background: #fff;
  box-shadow: var(--community-shadow);
  border: 1px solid var(--border-strong);
}
body.theme-community .home-hero .stat-item {
  border-left-color: var(--border-strong);
}
body.theme-community .home-hero .stat-item .num {
  color: var(--navy);
}
body.theme-community .home-hero .stat-item .lbl {
  color: var(--muted);
}

body.theme-community .community-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 1.5rem;
  padding: 0;
  list-style: none;
}
body.theme-community .community-pills li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: var(--radius-pill);
  background: #fff;
  border: 1px solid var(--border-strong);
  color: var(--navy);
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 4px 14px rgba(0, 40, 104, 0.06);
}
body.theme-community .community-pills li i {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--surface-blue);
  color: var(--navy);
  font-size: 15px;
}
body.theme-community .community-pills li:nth-child(2) i {
  background: var(--surface-red);
  color: var(--gold-dark);
}
body.theme-community .community-pills li:nth-child(3) i {
  background: var(--gold-light);
  color: var(--gold-dark);
}

/* —— Ticker —— */
body.theme-community .ticker {
  background: var(--navy);
  border-radius: 0;
}
body.theme-community .ticker-label {
  border-radius: var(--radius-pill);
}

/* —— Section bands —— */
body.theme-community .home-section--soft {
  background: var(--surface-soft);
}
body.theme-community .home-section--blue {
  background: linear-gradient(180deg, var(--surface-blue) 0%, #fff 100%);
}
body.theme-community .home-section--warm {
  background: var(--surface-warm);
}
body.theme-community .home-section--red {
  background: linear-gradient(180deg, var(--surface-red) 0%, var(--surface-warm) 100%);
}
body.theme-community .sponsors-strip {
  border-top: 1px solid var(--border-strong);
}
body.theme-community .sponsors-strip:not(.home-section--red) {
  background: #fff;
}

body.theme-community .home-value-grid article {
  border: none;
  border-radius: var(--community-radius);
  box-shadow: var(--community-shadow);
  background: #fff;
}
body.theme-community .home-value-grid i {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  font-size: 24px;
}

/* —— Inner page heroes —— */
body.theme-community .page-hero {
  text-align: center;
  color: var(--navy);
  background: linear-gradient(180deg, var(--surface-blue) 0%, #fff 100%);
  border-radius: 0 0 clamp(24px, 4vw, 40px) clamp(24px, 4vw, 40px);
  padding-bottom: clamp(3rem, 6vw, 4.5rem);
  margin-bottom: -2rem;
}
body.theme-community .page-hero--listing {
  margin-bottom: 0;
  padding-bottom: clamp(2rem, 4vw, 3rem);
}
body.theme-community .page-hero::after {
  display: none;
}
body.theme-community .page-hero::before {
  height: 5px;
}
body.theme-community .page-hero h1,
body.theme-community .page-hero p,
body.theme-community .page-hero-subtitle {
  color: var(--navy);
}
body.theme-community .page-hero-eyebrow {
  color: var(--gold-dark) !important;
  letter-spacing: 0.16em;
}
body.theme-community .page-hero--member {
  background: linear-gradient(180deg, var(--surface-red) 0%, var(--surface-soft) 100%);
}

/* —— Listing / inner bodies —— */
body.theme-community .page-body.section-bg,
body.theme-community .page-body.member-page.section-bg {
  background: var(--surface-soft);
}
body.theme-community .listing-page {
  background: transparent;
  padding-top: 0.5rem;
}
body.theme-community .filter-bar {
  border-radius: var(--community-radius);
  box-shadow: var(--community-shadow);
}

/* —— Cards —— */
body.theme-community .event-card,
body.theme-community .event-card--home,
body.theme-community .listing-event-card,
body.theme-community .news-featured,
body.theme-community .news-item,
body.theme-community .gallery-card,
body.theme-community .benefit-card,
body.theme-community .public-form,
body.theme-community .contact-list > a,
body.theme-community .contact-list > div {
  border-radius: var(--community-radius);
  border: 1px solid rgba(0, 40, 104, 0.08);
}
body.theme-community .tag,
body.theme-community .tag-free,
body.theme-community .tag-paid {
  border-radius: var(--radius-pill);
  font-weight: 700;
  padding: 6px 12px;
}
body.theme-community .tag-free {
  background: var(--surface-blue);
  color: var(--navy);
}
body.theme-community .tag-paid {
  background: var(--surface-red);
  color: var(--gold-dark);
}
body.theme-community .result-count {
  background: #fff;
  border: 1px solid var(--border-strong);
}

body.theme-community .empty-state {
  padding: 2rem;
  border-radius: var(--community-radius);
  background: #fff;
  border: 2px dashed var(--border-strong);
}
body.theme-community .empty-state-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--surface-blue);
  color: var(--navy);
  display: grid;
  place-items: center;
  font-size: 28px;
}
body.theme-community .empty-state--events .empty-state-icon {
  background: var(--surface-red);
  color: var(--gold-dark);
}

/* —— Buttons —— */
body.theme-community .btn-primary {
  border-radius: var(--radius-pill);
  padding-left: 28px;
  padding-right: 28px;
}
body.theme-community .btn-secondary {
  border-radius: var(--radius-pill);
  background: var(--navy);
}
body.theme-community .view-all,
body.theme-community .text-link {
  font-weight: 700;
}

/* —— Footer: softer community block —— */
body.theme-community footer {
  background: linear-gradient(180deg, var(--navy) 0%, #041428 100%);
  border-top: 4px solid var(--gold);
}

/* —— Membership area —— */
body.theme-community .member-page-nav {
  border-radius: var(--radius-pill);
  box-shadow: var(--community-shadow);
  background: #fff;
}
body.theme-community .member-page-nav a.active {
  background: var(--surface-blue);
  border-radius: var(--radius-pill);
}
body.theme-community .member-login-page {
  background: linear-gradient(180deg, var(--surface-blue) 0%, var(--surface-soft) 50%, #fff 100%) !important;
}
body.theme-community .member-login-card {
  border-radius: var(--community-radius);
  box-shadow: var(--community-shadow);
}
body.theme-community .member-cta-banner {
  border-radius: var(--community-radius);
  overflow: hidden;
}
body.theme-community .benefit-card-icon {
  width: 56px;
  height: 56px;
}

@media (max-width: 820px) {
  body.theme-community .home-hero-copy {
    text-align: left;
  }
  body.theme-community .home-hero--showcase .home-hero-copy--lead,
  body.theme-community .home-hero--showcase .home-hero-copy--actions {
    text-align: center;
  }
  body.theme-community .community-pills {
    justify-content: flex-start;
  }
  body.theme-community .home-hero--showcase .community-pills {
    justify-content: center;
  }
}
