:root {
  /* ── Anchors ──────────────────────────────────────────────── */
  --wwmc-primary:           #7F00F0;
  --wwmc-primary-rgb:       127, 0, 240;
  --wwmc-cyan:              #00FFFF;
  --wwmc-footer:            #2A0050;

  /* ── White: used on all dark sections ────────────────────── */
  --wwmc-white:             #FFFFFF;
  --wwmc-white-soft:        rgba(255, 255, 255, 0.78);
  --wwmc-white-muted:       rgba(255, 255, 255, 0.50);

  /* ── Section backgrounds ──────────────────────────────────── */
  --wwmc-bg-about:          #6200C4;
  --wwmc-bg-initiatives:    #0096D6;
  --wwmc-bg-editions:       #7F00F0;
  --wwmc-bg-videos:         #2A0050;
  --wwmc-bg-publications:   #B03A10;
  --wwmc-bg-committee:      #A83510;
  --wwmc-bg-speakers:       #5A00B0;
  --wwmc-bg-programme:      #4A0096;
  --wwmc-bg-newsletter:     #7F00F0;
  --wwmc-bg-donate:         #6200c4;

  /* ── Card surfaces inside sections ───────────────────────── */
  --wwmc-card-about:        #5200A8;
  --wwmc-card-initiatives:  #007AB8;
  --wwmc-card-editions:     #6800C4;
  --wwmc-card-speakers:     #4A0096;
  --wwmc-card-programme:    #3D0070;
  --wwmc-card-publications: #922E0C;
  --wwmc-card-committee:    #8E2A0A;
  --wwmc-card-videos:       #3D0070;
  /*--wwmc-card-newsletter:   #621340; */

  /* ── Links ────────────────────────────────────────────────── */
  --wwmc-link-light:        #7F00F0;
  --wwmc-link-dark:         #00FFFF;

  /* ── Borders / Dividers ───────────────────────────────────── */
  --wwmc-divider-light:     rgba(255, 255, 255, 0.12);
  --wwmc-divider-dark:      rgba(255, 255, 255, 0.12);

  /* ── Shadows / Radius ─────────────────────────────────────── */
  --wwmc-radius:            12px;
  --wwmc-radius-sm:         8px;
  --wwmc-shadow:            0 8px 32px rgba(0, 0, 0, 0.30);
  --wwmc-shadow-soft:       0 4px 16px rgba(0, 0, 0, 0.20);
}


/* ================================================================
   BASE
   ================================================================ */

body {
  background-color: var(--wwmc-primary);
  color: var(--wwmc-white);
}

h1, h2, h3, h4, h5, h6 {
  color: var(--wwmc-white);
}

p, li {
  color: var(--wwmc-white-soft);
}

small, .small, .muted {
  color: var(--wwmc-white-muted);
}

.text-muted {
  color: var(--wwmc-white-muted) !important;
}


/* ================================================================
   LINKS
   ================================================================ */

a {
  color: var(--wwmc-link-dark);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-thickness: 1px;
}

a:hover, a:focus {
  color: var(--wwmc-cyan);
  opacity: 0.85;
}

a.text-decoration-none {
  text-decoration: none;
}

a.text-decoration-none:hover {
  text-decoration: none;
  opacity: 0.85;
}

a.link-dark {
  color: var(--wwmc-white) !important;
  text-decoration: none;
}

a.link-dark:hover {
  color: var(--wwmc-cyan) !important;
}


/* ================================================================
   BOOTSTRAP COLOUR OVERRIDES
   ================================================================ */

.bg-primary {
  background-color: var(--wwmc-primary) !important;
}

.btn-primary {
  background-color: var(--wwmc-primary) !important;
  border-color: var(--wwmc-primary) !important;
  color: #fff !important;
}

.btn-primary:hover, .btn-primary:focus {
  background-color: #6800c4 !important;
  border-color: #6800c4 !important;
}

.btn-outline-light {
  border-color: rgba(255, 255, 255, 0.55);
  color: #fff;
}

.btn-outline-light:hover {
  background-color: rgba(255, 255, 255, 0.12);
  border-color: #fff;
  color: #fff;
}

.badge.bg-primary {
  background-color: var(--wwmc-primary) !important;
  background-image: none !important;
  background: var(--wwmc-primary) !important;
  color: #fff;
}

.bg-primary.bg-gradient {
  background-image: none !important;
  background: var(--wwmc-primary) !important;
}


/* ================================================================
   CARDS (global defaults)
   ================================================================ */

.card {
  border-radius: var(--wwmc-radius);
  box-shadow: var(--wwmc-shadow-soft);
  border: none;
}

.card-footer.bg-transparent {
  background-color: transparent !important;
}


/* ================================================================
   NAVBAR
   ================================================================ */

.navbar.bg-primary {
  background-color: var(--wwmc-primary) !important;
}

.navbar-brand {
  color: #fff !important;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.navbar-dark .nav-link {
  color: rgba(255, 255, 255, 0.80) !important;
  font-size: 0.83rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}

.navbar-dark .nav-link:hover,
.navbar-dark .nav-link:focus,
.navbar-dark .nav-link.active {
  color: var(--wwmc-cyan) !important;
}

.navbar-dark .dropdown-menu {
  background-color: #5800c0;
  border: none;
}

.navbar-dark .dropdown-item {
  color: rgba(255, 255, 255, 0.80);
  font-size: 0.83rem;
}

.navbar-dark .dropdown-item:hover {
  background-color: rgba(255, 255, 255, 0.10);
  color: var(--wwmc-cyan);
}

.btn-cyan {
  background-color: var(--wwmc-cyan) !important;
  border-color: var(--wwmc-cyan) !important;
  color: #7F00F0 !important;
  font-weight: bold;
}

.btn-cyan:hover {
  background-color: #00cccc !important;
  border-color: #00cccc !important;
  color: var(--wwmc-primary) !important;
}

.navbar {
  border: none !important;
  box-shadow: none !important;
}

.navbar-collapse {
  border: none !important;
}

.navbar-toggler {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.navbar-toggler:focus {
  box-shadow: none !important;
}

@media (max-width: 991.98px) {
  #wwmcNavbar {
    padding: 1rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    margin-top: 0.5rem;
  }

  #wwmcNavbar .nav-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  #wwmcNavbar .nav-item:last-child {
    border-bottom: none;
  }

  #wwmcNavbar .nav-link {
    padding: 0.75rem 0 !important;
    font-size: 1rem !important;
    letter-spacing: 0.06em;
  }

  #wwmcNavbar .nav-item.ms-lg-2 {
    padding-top: 1rem;
    border-bottom: none;
  }

  #wwmcNavbar .btn-cyan {
    width: 100%;
    text-align: center;
    padding: 0.6rem 0;
  }
}

.navbar-collapse.collapsing {
  transition: none !important;
}


/* ================================================================
   SECONDARY NAVBAR
   ================================================================ */

.wwmc-subnav {
  background-color: #6800C4;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  top: 56px;
}

.wwmc-subnav .nav-link {
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.04em;
}

.wwmc-subnav .nav-link:hover,
.wwmc-subnav .nav-link.active {
  color: var(--wwmc-cyan);
  background-color: transparent;
}

.wwmc-subnav-list {
  flex-wrap: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.wwmc-subnav-list::-webkit-scrollbar {
  display: none;
}

.wwmc-subnav .nav-link {
  white-space: nowrap;
}


/* ================================================================
   HERO / HEADER
   ================================================================ */

header .my-5 {
  margin-top: 2.5rem !important;
}

header .mb-2 {
  margin-bottom: 0.8rem !important;
}

header.bg-primary {
  background-color: var(--wwmc-primary) !important;
}

header.bg-primary h1,
header.bg-primary h2 {
  color: #fff;
}

header.bg-primary p,
header.bg-primary .lead {
  color: rgba(255, 255, 255, 0.78);
}

header.bg-primary .text-white-50 {
  color: rgba(255, 255, 255, 0.78) !important;
}


/* ================================================================
   ABOUT  (#6200C4)
   ================================================================ */

section#about,
section.wwmc-about {
  background-color: var(--wwmc-bg-about) !important;
}

section#about h1,
section#about h2,
section#about h3,
section#about h4,
section#about h5,
section.wwmc-about h1,
section.wwmc-about h2,
section.wwmc-about h3 {
  color: var(--wwmc-white);
}

section#about p,
section.wwmc-about p {
  color: var(--wwmc-white-soft);
}

section#about .text-muted,
section.wwmc-about .text-muted {
  color: var(--wwmc-white-muted) !important;
}

section#about a,
section.wwmc-about a {
  color: var(--wwmc-cyan);
}

section#about .card,
section.wwmc-about .card {
  background-color: var(--wwmc-card-about) !important;
  border: none;
  box-shadow: none;
}

section#about .card h2,
section#about .card h3,
section#about .card h4,
section#about .card h5,
section.wwmc-about .card h2,
section.wwmc-about .card h3 {
  color: var(--wwmc-white);
}

section#about .card p,
section.wwmc-about .card p {
  color: var(--wwmc-white-soft);
}

section#about .small,
section.wwmc-about .small {
  color: var(--wwmc-white-muted);
}

section#about .badge.bg-primary,
section.wwmc-about .badge.bg-primary {
  background-color: rgba(255, 255, 255, 0.20) !important;
  color: #fff !important;
  border: none;
}

/* Partner logos on about section */
.wwmc-partner-logo {
  opacity: 0.80;
  transition: opacity 0.2s ease;
}
.wwmc-partner-logo:hover {
  opacity: 1;
}


/* ================================================================
   SPEAKERS  (#5A00B0)
   ================================================================ */

section.wwmc-speakers {
  background-color: var(--wwmc-bg-speakers) !important;
}

section.wwmc-speakers h1,
section.wwmc-speakers h2,
section.wwmc-speakers h3,
section.wwmc-speakers h4,
section.wwmc-speakers h5,
section.wwmc-speakers .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-speakers p,
section.wwmc-speakers .lead,
section.wwmc-speakers li {
  color: var(--wwmc-white-soft);
}

section.wwmc-speakers .text-muted,
section.wwmc-speakers .small {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-speakers h5 {
  color: var(--wwmc-cyan);
}

section.wwmc-speakers .card {
  background-color: var(--wwmc-card-speakers) !important;
  border: none;
  box-shadow: none;
}


/* ================================================================
   PROGRAMME  (#4A0096)
   ================================================================ */

section.wwmc-programme {
  background-color: var(--wwmc-bg-programme) !important;
}

section.wwmc-programme h1,
section.wwmc-programme h2,
section.wwmc-programme h3,
section.wwmc-programme h4,
section.wwmc-programme h5,
section.wwmc-programme .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-programme p,
section.wwmc-programme .lead,
section.wwmc-programme li {
  color: var(--wwmc-white-soft);
}

section.wwmc-programme .text-muted {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-programme a {
  color: var(--wwmc-cyan);
}

/* Programme table */
section.wwmc-programme .table {
  color: var(--wwmc-white);
  --bs-table-bg: transparent;
  --bs-table-border-color: rgba(255, 255, 255, 0.12);
}

section.wwmc-programme .table thead th {
  color: var(--wwmc-white-muted);
  border-bottom: 1px solid rgba(255, 255, 255, 0.20);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}

section.wwmc-programme .table tbody tr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

section.wwmc-programme .table tbody th {
  color: var(--wwmc-cyan);
  font-weight: 600;
  vertical-align: top;
  padding-top: 0.85rem;
}

section.wwmc-programme .table td {
  color: var(--wwmc-white-soft);
  vertical-align: top;
  padding-top: 0.85rem;
}

section.wwmc-programme .table td strong {
  color: var(--wwmc-white);
}

/* Programme entry grid layout */
.wwmc-prog-entry {
  border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

.wwmc-prog-time {
  color: var(--wwmc-cyan);
  font-weight: 600;
}

.wwmc-prog-name {
  color: var(--wwmc-white);
  font-weight: 700;
}

.wwmc-prog-affil {
  color: var(--wwmc-white-muted);
}

.wwmc-prog-title {
  color: var(--wwmc-white-soft);
}

.wwmc-prog-role {
  color: rgba(255, 255, 255, 0.45);
}

.wwmc-prog-session {
  color: var(--wwmc-cyan);
  opacity: 0.75;
}

/* Day header */
.wwmc-prog-day {
  background-color: var(--wwmc-primary);
  color: var(--wwmc-white);
  font-weight: 700;
  border-radius: var(--wwmc-radius-sm);
  padding: 0.75rem 1.25rem;
  margin-bottom: 1.5rem;
}

/* Roundtable block */
.wwmc-prog-roundtable {
  background-color: rgba(255, 255, 255, 0.06);
  border-left: 3px solid rgba(255, 255, 255, 0.20);
  border-radius: 0 var(--wwmc-radius-sm) var(--wwmc-radius-sm) 0;
  padding: 1.25rem 1.5rem;
}

.wwmc-prog-roundtable-org {
  color: var(--wwmc-cyan);
  opacity: 0.80;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.wwmc-prog-roundtable-title {
  color: var(--wwmc-white);
  font-weight: 700;
}

.wwmc-prog-roundtable-speakers {
  color: var(--wwmc-white);
  font-weight: 600;
}

.wwmc-rt-affil {
  color: var(--wwmc-white-muted);
  font-weight: 400;
}

.wwmc-rt-section-label {
  color: rgba(255, 255, 255, 0.45);
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.09em;
}

section.wwmc-programme .card {
  background-color: var(--wwmc-card-programme) !important;
  border: none;
  box-shadow: none;
}


/* ================================================================
   INITIATIVES SECTION  (#0096D6)
   ================================================================ */

section.wwmc-initiatives {
  background-color: var(--wwmc-bg-initiatives);
}

section.wwmc-initiatives h1,
section.wwmc-initiatives h2,
section.wwmc-initiatives h3,
section.wwmc-initiatives h4,
section.wwmc-initiatives h5,
section.wwmc-initiatives .h2,
section.wwmc-initiatives .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-initiatives p,
section.wwmc-initiatives li {
  color: var(--wwmc-white-soft);
}

section.wwmc-initiatives small,
section.wwmc-initiatives .small,
section.wwmc-initiatives .text-muted {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-initiatives a {
  color: var(--wwmc-link-dark);
  text-decoration: underline;
  text-underline-offset: 2px;
}

section.wwmc-initiatives .card,
section.wwmc-initiatives .card-body {
  background-color: var(--wwmc-card-initiatives) !important;
  border: none;
  box-shadow: none;
}

section.wwmc-initiatives .card h1,
section.wwmc-initiatives .card h2,
section.wwmc-initiatives .card h3,
section.wwmc-initiatives .card h4,
section.wwmc-initiatives .card h5,
section.wwmc-initiatives .card .h2,
section.wwmc-initiatives .card .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-initiatives .card p,
section.wwmc-initiatives .card li {
  color: var(--wwmc-white-soft);
}

section.wwmc-initiatives .badge.bg-primary {
  background-color: rgba(0, 255, 255, 0.15) !important;
  color: var(--wwmc-cyan) !important;
  border: 1px solid rgba(0, 255, 255, 0.30);
}


/* ================================================================
   EDITIONS SECTION  (#7F00F0)
   ================================================================ */

section.wwmc-editions {
  background-color: var(--wwmc-bg-editions);
}

section.wwmc-editions h2,
section.wwmc-editions h3,
section.wwmc-editions .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-editions .lead,
section.wwmc-editions .text-muted {
  color: var(--wwmc-white-soft) !important;
}

section.wwmc-editions .card {
  background-color: var(--wwmc-card-editions) !important;
  box-shadow: none;
  border: none;
}

section.wwmc-editions .card p,
section.wwmc-editions .card .card-text {
  color: var(--wwmc-white-soft);
}

section.wwmc-editions .card .text-muted {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-editions .card .badge.bg-primary {
  background-color: rgba(255, 255, 255, 0.20) !important;
  color: #fff !important;
}

section.wwmc-editions .card a.link-dark {
  color: var(--wwmc-white) !important;
  text-decoration: none;
}

section.wwmc-editions .card a.link-dark:hover {
  color: var(--wwmc-cyan) !important;
}

section.wwmc-editions .card-footer {
  background-color: transparent !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

section.wwmc-editions .card img.rounded-circle {
  opacity: 0.55;
}

section.wwmc-editions .card .wwmc-card-title-cyan {
  color: var(--wwmc-cyan) !important;
}

section.wwmc-editions .card .wwmc-card-title-cyan:hover {
  color: rgba(0, 255, 255, 0.75) !important;
}


/* ================================================================
   VIDEOS SECTION  (#2A0050)
   ================================================================ */

section.wwmc-videos {
  background-color: var(--wwmc-bg-videos);
}

section.wwmc-videos h1,
section.wwmc-videos h2,
section.wwmc-videos h3,
section.wwmc-videos .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-videos p,
section.wwmc-videos .lead,
section.wwmc-videos li {
  color: var(--wwmc-white-soft);
}

section.wwmc-videos .text-muted {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-videos a {
  color: var(--wwmc-cyan);
}

.wwmc-video {
  border-radius: var(--wwmc-radius-sm);
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.40);
}


/* ================================================================
   PUBLICATIONS SECTION  (#B03A10)
   ================================================================ */

section.wwmc-publications {
  background-color: var(--wwmc-bg-publications) !important;
}

section.wwmc-publications h1,
section.wwmc-publications h2,
section.wwmc-publications h3,
section.wwmc-publications .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-publications p,
section.wwmc-publications .lead {
  color: var(--wwmc-white-soft);
}

section.wwmc-publications .text-muted {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-publications a {
  color: var(--wwmc-cyan);
}

section.wwmc-publications .card {
  background-color: var(--wwmc-card-publications) !important;
  box-shadow: none;
  border: none;
}

section.wwmc-publications .card h2,
section.wwmc-publications .card h3,
section.wwmc-publications .card .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-publications .card p,
section.wwmc-publications .card .lead {
  color: var(--wwmc-white-soft);
}

section.wwmc-publications .card .text-muted,
section.wwmc-publications .card .small {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-publications .badge.bg-primary {
  background-color: rgba(255, 255, 255, 0.20) !important;
  color: #fff !important;
  border: none;
}


/* ================================================================
   SCIENTIFIC COMMITTEE  (#A83510)
   ================================================================ */

section.wwmc-committee {
  background-color: var(--wwmc-bg-committee) !important;
}

section.wwmc-committee h1,
section.wwmc-committee h2,
section.wwmc-committee h3,
section.wwmc-committee h4,
section.wwmc-committee h5,
section.wwmc-committee .fw-bolder {
  color: var(--wwmc-white);
}

section.wwmc-committee p,
section.wwmc-committee .lead,
section.wwmc-committee li {
  color: var(--wwmc-white-soft);
}

section.wwmc-committee .text-muted,
section.wwmc-committee .small {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-committee a {
  color: var(--wwmc-cyan);
}

section.wwmc-committee .card {
  background-color: var(--wwmc-card-committee) !important;
  border: none;
  box-shadow: none;
}

section.wwmc-committee blockquote {
  border-left: 3px solid rgba(255, 255, 255, 0.30);
  padding: 1rem 1.5rem;
  color: var(--wwmc-white-soft);
  font-style: italic;
}


/* ================================================================
   NEWSLETTER
   ================================================================ */

section.wwmc-contact {
  background-color: var(--wwmc-bg-newsletter) !important;
  padding: 5rem 0;
}

section.wwmc-contact h1,
section.wwmc-contact h2,
section.wwmc-contact h3,
section.wwmc-contact .fw-bolder,
section.wwmc-contact .fs-3 {
  color: var(--wwmc-white);
}

section.wwmc-contact p,
section.wwmc-contact .lead,
section.wwmc-contact .small {
  color: var(--wwmc-white-soft);
}

section.wwmc-contact .text-muted {
  color: var(--wwmc-white-muted) !important;
}

section.wwmc-contact .card {
  background-color: var(--wwmc-card-newsletter) !important;
  border: none;
  box-shadow: none;
}

section.wwmc-contact .card h2,
section.wwmc-contact .card h3,
section.wwmc-contact .card h4,
section.wwmc-contact .card h5 {
  color: var(--wwmc-white);
}

section.wwmc-contact .card p,
section.wwmc-contact .card .small {
  color: var(--wwmc-white-soft);
}

section.wwmc-contact .form-control {
  background-color: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.20);
  color: var(--wwmc-white);
  border-radius: var(--wwmc-radius-sm);
}

section.wwmc-contact .form-control::placeholder {
  color: rgba(255, 255, 255, 0.40);
}

section.wwmc-contact .form-control:focus {
  background-color: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.40);
  color: var(--wwmc-white);
  box-shadow: none;
}

section.wwmc-contact .btn-primary {
  background-color: var(--wwmc-cyan) !important;
  border-color: var(--wwmc-cyan) !important;
  color: var(--wwmc-bg-newsletter) !important;
  font-weight: 700;
}

section.wwmc-contact .btn-primary:hover {
  background-color: #00cccc !important;
  border-color: #00cccc !important;
}

section.wwmc-contact a {
  color: var(--wwmc-cyan);
}

/* Contact info icon colour */
section.wwmc-contact .bi {
  color: var(--wwmc-cyan);
}












.newsletter-form-row {
  display: flex;
  gap: 0.5rem;
  align-items: stretch;
}

.newsletter-form-row input {
  flex: 1 1 0;
  min-width: 0;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 8px;
  color: #fff;
  font-size: 0.88rem;
  padding: 0.65rem 1rem;
  outline: none;
  transition: border-color 0.2s ease, background 0.2s ease;
}

.newsletter-form-row input::placeholder {
  color: rgba(255,255,255,0.40);
}

.newsletter-form-row input:focus {
  background: rgba(255,255,255,0.18);
  border-color: rgba(255,255,255,0.55);
}

.newsletter-form-row button {
  flex: 0 0 auto;
  background-color: #00FFFF;
  border: none;
  border-radius: 8px;
  color: #7F00F0;
  font-size: 0.88rem;
  font-weight: 700;
  padding: 0.65rem 1.5rem;
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 0.2s ease;
}

.newsletter-form-row button:hover:not(:disabled) {
  background-color: #00CCCC;
}

.newsletter-form-row button:disabled {
  opacity: 0.65;
  cursor: not-allowed;
}

#newsletter-message {
  font-size: 0.80rem;
  color: rgba(255,255,255,0.65);
  margin-top: 0.5rem;
}

.newsletter-success {
  color: rgba(255,255,255,0.85);
  font-size: 0.92rem;
  padding: 0.65rem 0;
  margin: 0;
}

@media (max-width: 600px) {
  .newsletter-form-row {
    flex-wrap: wrap;
  }
  .newsletter-form-row input,
  .newsletter-form-row button {
    width: 100%;
    flex: 1 1 100%;
  }
}



/* ================================================================
   DONATE SECTION
   ================================================================ */

section#donate {
  background-color: ##6200c4 !important;
}
section#donate h2,
section#donate .fw-bolder {
  color: var(--wwmc-white) !important;
}
section#donate p,
section#donate .lead {
  color: rgba(255, 255, 255, 0.75) !important;
}


/* ================================================================
   FOOTER  (#2A0050)
   ================================================================ */

body > footer {
  background-color: var(--wwmc-footer) !important;
}

footer,
footer h1, footer h2, footer h3, footer h4, footer h5 {
  color: rgba(255, 255, 255, 0.88);
}

footer p,
footer li {
  color: rgba(255, 255, 255, 0.55);
}

footer small,
footer .small {
  color: rgba(255, 255, 255, 0.55);
}

footer .text-white {
  color: rgba(255, 255, 255, 0.88) !important;
}

footer a,
footer a.link-light {
  color: rgba(255, 255, 255, 0.55) !important;
  text-decoration: none;
}

footer a:hover,
footer a.link-light:hover {
  color: var(--wwmc-cyan) !important;
}

footer .text-white-50 {
  color: rgba(255, 255, 255, 0.55) !important;
}

.wwmc-social-link {
  transition: color 0.2s ease;
}

.wwmc-social-link:hover {
  color: #ffffff !important;
}


/* ================================================================
   FEATURED BLOG / IMAGE PANEL
   ================================================================ */

.bg-featured-blog {
  height: 100%;
  min-height: 260px;
  background-size: cover;
  background-position: center;
}


/* ================================================================
   CARD HOVER LIFT
   ================================================================ */

.wwmc-card-hover {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.wwmc-card-hover:hover {
  transform: translateY(-6px);
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.25) !important;
}


/* ================================================================
   CARD TITLE CYAN
   ================================================================ */

.wwmc-card-title-cyan {
  color: var(--wwmc-cyan);
  transition: color 0.2s ease;
}

.wwmc-card-title-cyan:hover {
  color: rgba(0, 255, 255, 0.75);
}


/* ================================================================
   UTILITY — section-dark
   Apply to any dark section not covered by a named class above.
   ================================================================ */

.section-dark {
  color: var(--wwmc-white);
}

.section-dark h1, .section-dark h2, .section-dark h3,
.section-dark h4, .section-dark h5, .section-dark h6 {
  color: var(--wwmc-white);
}

.section-dark p, .section-dark li {
  color: var(--wwmc-white-soft);
}

.section-dark small, .section-dark .small, .section-dark .text-muted {
  color: var(--wwmc-white-muted) !important;
}

.section-dark a {
  color: var(--wwmc-cyan);
}

.section-dark a:hover {
  color: var(--wwmc-cyan);
  opacity: 0.75;
}



/* ADDITIONAL */

.btn-outline-primary {
  border-color: var(--wwmc-cyan) !important;
  color: var(--wwmc-cyan) !important;
  text-decoration: none !important;
}
.btn-outline-primary:hover {
  background-color: var(--wwmc-cyan) !important;
  border-color: var(--wwmc-cyan) !important;
  color: var(--wwmc-primary) !important;
}



.text-primary {
  color: var(--wwmc-cyan) !important;
}

















/* ================================================================
YOUTUBE FACADE
================================================================ */
.wwmc-video-facade {
position: relative;
width: 100%;
aspect-ratio: 16 / 9;
background-color: #000;
border-radius: var(--wwmc-radius-sm);
overflow: hidden;
cursor: pointer;
box-shadow: 0 8px 32px rgba(0,0,0,0.45);
}
.wwmc-video-facade img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
opacity: 0.75;
transition: opacity 0.2s ease;
}
.wwmc-video-facade:hover img {
opacity: 0.90;
}
.wwmc-video-facade .wwmc-video-play-btn {
position: absolute;
inset: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 0.75rem;
background: none;
border: none;
cursor: pointer;
padding: 0;
}
.wwmc-video-facade .play-icon {
width: 64px;
height: 64px;
background-color: rgba(255,0,0,0.85);
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
transition: background-color 0.2s ease, transform 0.2s ease;
}
.wwmc-video-facade:hover .play-icon {
background-color: rgb(255,0,0);
transform: scale(1.08);
}
.wwmc-video-facade .play-icon i {
color: #fff;
font-size: 1.6rem;
margin-left: 4px;
}
.wwmc-video-facade .play-label {
color: rgba(255,255,255,0.85);
font-size: 0.78rem;
font-weight: 600;
letter-spacing: 0.04em;
background-color: rgba(0,0,0,0.50);
padding: 0.25rem 0.75rem;
border-radius: 50rem;
}
.wwmc-video-facade .wwmc-video-consent-note {
position: absolute;
left: 0;
right: 0;
text-align: center;
font-size: 0.68rem;
color: rgba(255,255,255,0.45);
}
/* ================================================================
GOOGLE MAPS FACADE
================================================================ */
.wwmc-map-facade {
position: relative;
width: 100%;
aspect-ratio: 16 / 9;
background-color: #1a1a2e;
border-radius: var(--wwmc-radius);
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
gap: 1rem;
box-shadow: 0 16px 48px rgba(0,0,0,0.35);
}
.wwmc-map-facade .map-placeholder-icon {
font-size: 2.5rem;
color: rgba(255,255,255,0.30);
}
.wwmc-map-facade .map-placeholder-text {
color: rgba(255,255,255,0.55);
font-size: 0.88rem;
text-align: center;
line-height: 1.5;
}
.wwmc-map-facade .wwmc-map-load-btn {
  background-color: transparent;
  border: 1px solid #00FFFF;
  color: #00FFFF;
  font-size: 0.85rem;
  font-weight: 600;
  padding: 0.5rem 1.5rem;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.wwmc-map-facade .wwmc-map-load-btn:hover {
  background-color: rgba(0,255,255,0.10);
  border-color: #00FFFF;
  color: #00FFFF;
}

.wwmc-map-facade .map-consent-note {
font-size: 0.68rem;
color: rgba(255,255,255,0.35);
text-align: center;
padding: 0 2rem;
}






/* COOKIES BANNER */


/* Hide credit logo */
.silktide-consent-manager__credit,
.silktide-logo,
a[href*="silktide.com"] {
  display: none !important;
}

/* Hide credit link in modal */
#silktide-modal footer a {
  display: none !important;
}




/* Silktide banner button overrides */
.silktide-consent-banner__button--primary {
  background-color: #00FFFF !important;
  color: #7F00F0 !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.silktide-consent-banner__button--secondary {
  border-color: rgba(255,255,255,0.40) !important;
  color: #fff !important;
  box-shadow: none !important;
  outline: none !important;
}




.st-button--primary {
  background-color: #00FFFF !important;
  color: #7F00F0 !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.st-button--primary:hover {
  background-color: #00CCCC !important;
  color: #7F00F0 !important;
}



/* Fix X close button */
#silktide-modal .modal-close {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}




/* Fix modal footer background */
#silktide-modal footer {
  background-color: transparent !important;
  border-top: 1px solid rgba(255,255,255,0.12) !important;
}







.wwmc-video-facade {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background-color: #000;
  border-radius: var(--wwmc-radius-sm);
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 8px 32px rgba(0,0,0,0.45);
  margin-bottom: 0.9rem;
}

/* No dark overlay — image shows at full brightness */
.wwmc-video-facade img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 1;
  transition: opacity 0.2s ease;
}

.wwmc-video-facade:hover img {
  opacity: 0.90;
}

.wwmc-video-facade .wwmc-video-play-btn {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

/* YouTube-shaped button — rounded rectangle, red */
.wwmc-video-facade .play-icon {
  width: 68px;
  height: 48px;
  background-color: #FF0000;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease, transform 0.2s ease;
  box-shadow: 0 4px 16px rgba(0,0,0,0.40);
}

.wwmc-video-facade:hover .play-icon {
  background-color: #CC0000;
  transform: scale(1.08);
}

.wwmc-video-facade .play-icon i {
  color: #fff;
  font-size: 1.5rem;
  margin-left: 4px;
}

/* Hide "Load video" text — not legally required */
.wwmc-video-facade .play-label {
  display: none;
}

/* Disclosure note — purple background with opacity */
.wwmc-video-consent-note {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 0.68rem;
  color: rgba(255,255,255,0.75);
  background-color: rgba(127,0,240,0.75);
  padding: 0.35rem 1rem;
  line-height: 1.1;
}
