/* Connect Music Events v21 - general brand palette only.
   Exact primary colour: #10BA26, with light-green surfaces and dark-green depth.
   Included ONLY by general website pages; all five event pages are untouched.
   No dimensions, fonts, content, images, links, or event-card styles are changed.
   Event cards and ticket rows deliberately retain their existing palettes. */
@media screen {
  body[data-theme="connect-green"] {
    --connect-green: #10BA26;
    --connect-light: #D8F5DF;
    --connect-soft: #EFFAF1;
    --connect-pale: #F8FDF9;
    --connect-deep: #0A3818;
    --connect-dark: #082611;
    --connect-link: #08751C;
    --connect-line: #CDEAD3;
    background:
      radial-gradient(circle at top right, rgba(16,186,38,.05), transparent 24%),
      radial-gradient(circle at top left, rgba(16,186,38,.035), transparent 28%),
      var(--connect-pale);
    accent-color: var(--connect-green);
  }

  /* Keyboard feedback and navigation. The supplied logos are unchanged. */
  body[data-theme="connect-green"] :is(a,button,input,select,textarea,summary):not(.event-card *, .ticket-row *):focus-visible {
    outline-color: var(--connect-green);
  }
  body[data-theme="connect-green"] ::selection {
    background: var(--connect-light);
    color: #151515;
  }
  body[data-theme="connect-green"] .skip {
    background: var(--connect-light);
  }
  body[data-theme="connect-green"] .topbar {
    background: linear-gradient(90deg, var(--connect-dark) 0%, var(--connect-deep) 48%, #08751C 100%);
    color: #fff;
  }
  body[data-theme="connect-green"] .topbar a { color: var(--connect-light); }
  body[data-theme="connect-green"] .header { border-bottom-color: rgba(16,186,38,.12); }
  body[data-theme="connect-green"] .header :is(.nav a:not(.btn):hover,.nav a:not(.btn)[aria-current="page"],.dropdown>summary:hover,.dropdown.is-current>summary) {
    color: var(--connect-link);
  }
  body[data-theme="connect-green"] .header .dropdown-panel {
    border-color: var(--connect-line);
    box-shadow: 0 18px 60px rgba(8,38,17,.10);
  }
  body[data-theme="connect-green"] .header .dropdown-panel a:hover {
    background: var(--connect-soft);
  }
  body[data-theme="connect-green"] .menu-toggle {
    background: var(--connect-green);
    color: #fff;
  }

  /* Primary actions and secondary light-green accents outside event cards. */
  body[data-theme="connect-green"] .btn-primary:not(.event-card *, .ticket-row *),
  body[data-theme="connect-green"] .btn-primary:not(.event-card *, .ticket-row *):is(:hover,:focus-visible,:active) {
    background: var(--connect-green);
    color: #fff;
    border-color: var(--connect-green);
  }
  body[data-theme="connect-green"] .btn-lime:not(.event-card *, .ticket-row *) {
    background: linear-gradient(100deg, #E8FAEC, #D8F5DF);
  }
  body[data-theme="connect-green"] .btn-lime:not(.event-card *, .ticket-row *):is(:hover,:focus-visible,:active) {
    background: #C4EDCD;
  }
  body[data-theme="connect-green"] .btn-outline:not(.event-card *, .ticket-row *):hover {
    border-color: var(--connect-green);
  }
  body[data-theme="connect-green"] .text-link:not(.event-card *, .ticket-row *):hover {
    color: var(--connect-link);
  }
  body[data-theme="connect-green"] .filter-btn { border-color: var(--connect-line); }
  body[data-theme="connect-green"] .filter-btn[aria-pressed="true"] {
    background: var(--connect-green);
    border-color: var(--connect-green);
  }

  /* Homepage hero: white copy stays legible on a dark-green photographic wash. */
  body.home-page[data-theme="connect-green"] .home-hero {
    background: linear-gradient(135deg, var(--connect-dark), var(--connect-deep));
  }
  body.home-page[data-theme="connect-green"] .hero-shade {
    background:
      linear-gradient(90deg, rgba(5,30,12,.93) 0%, rgba(8,61,22,.77) 42%, rgba(16,83,30,.20) 100%),
      radial-gradient(circle at 80% 10%, rgba(16,186,38,.26), transparent 30%),
      linear-gradient(0deg, rgba(5,28,12,.55), transparent 45%);
  }
  body.home-page[data-theme="connect-green"] .hero-copy h1 span,
  body.home-page[data-theme="connect-green"] .hero-stamp strong,
  body[data-theme="connect-green"] .hero-luxe-card .eyebrow,
  body[data-theme="connect-green"] .hero-luxe-list strong,
  body[data-theme="connect-green"] .hero-luxe-card .text-link:hover {
    color: var(--connect-light);
  }
  body.home-page[data-theme="connect-green"] .hero-copy .lead,
  body.home-page[data-theme="connect-green"] .hero-copy .eyebrow,
  body.home-page[data-theme="connect-green"] .hero-bottom,
  body[data-theme="connect-green"] .hero-luxe-list li {
    color: #F0FAF2;
  }
  body[data-theme="connect-green"] .hero-luxe-card {
    box-shadow: 0 18px 50px rgba(5,28,12,.35);
  }
  body[data-theme="connect-green"] .ticker {
    background: linear-gradient(95deg, #085B19 0%, #0A8120 50%, var(--connect-green) 100%);
  }

  /* Existing information panels: identical layout, a softer green palette. */
  body[data-theme="connect-green"] .luxury-shell {
    border-color: rgba(16,186,38,.12);
    background: linear-gradient(135deg, #fff 0%, #F4FCF6 55%, #E5F7E9 100%);
    box-shadow: 0 24px 70px rgba(8,56,20,.08);
  }
  body[data-theme="connect-green"] .luxury-pills span {
    background: linear-gradient(90deg, #fff, #DEF5E4);
    border-color: var(--connect-line);
    color: #285736;
  }
  body[data-theme="connect-green"] .luxury-metric {
    background: linear-gradient(135deg, var(--connect-deep) 0%, #0C7020 68%, var(--connect-green) 100%);
    box-shadow: 0 22px 40px rgba(8,56,20,.18);
  }
  body[data-theme="connect-green"] .luxury-metric small { color: #E7F8EB; }
  body[data-theme="connect-green"] .join-card {
    background: linear-gradient(145deg, #fff 0%, #D8F5DF 100%);
    border-color: var(--connect-line);
    box-shadow: 0 18px 36px rgba(8,56,20,.08);
  }
  body[data-theme="connect-green"] .join-card .join-mark { color: var(--connect-green); }
  body[data-theme="connect-green"] .join-card p { color: #47664F; }
  body[data-theme="connect-green"] .intro-band {
    background: linear-gradient(130deg, var(--connect-dark) 0%, #095620 55%, #0A9625 100%);
    box-shadow: 0 28px 70px rgba(8,56,20,.18);
  }
  body[data-theme="connect-green"] .intro-copy h2 span { color: var(--connect-light); }
  body[data-theme="connect-green"] .intro-copy p { color: #EDF8F0; }
  body[data-theme="connect-green"] .intro-image .photo-credit { background: rgba(8,38,17,.65); }
  body[data-theme="connect-green"] .image-sticker {
    background: var(--connect-light);
    color: #172F1F;
  }
  body[data-theme="connect-green"] .steps-grid .step { border-top-color: var(--connect-line); }
  body[data-theme="connect-green"] .step-num { background: var(--connect-soft); color: var(--connect-link); border-color: var(--connect-line); }
  body[data-theme="connect-green"] .cta-band {
    background: linear-gradient(105deg, #09541C 0%, #0B8723 64%, var(--connect-green) 100%);
    box-shadow: 0 24px 64px rgba(8,56,20,.16);
  }
  body[data-theme="connect-green"] .cta-band p { color: #EDF9F0; }

  /* General page headers, forms and explanatory sections. */
  body[data-theme="connect-green"] .page-top {
    background: linear-gradient(115deg, #EFFAF1 0%, #D8F5DF 100%);
  }
  body[data-theme="connect-green"] .related { background: #EFF8F1; }
  body[data-theme="connect-green"] .notice {
    background: var(--connect-soft);
    border-left-color: var(--connect-green);
    color: #3D5844;
  }
  body[data-theme="connect-green"] :is(.contact-form,.value-card,.admin-box,.registration-card) {
    border-color: var(--connect-line);
  }
  body[data-theme="connect-green"] :is(.value-card,.registration-card) > .icon,
  body[data-theme="connect-green"] .contact-route a { color: var(--connect-link); }
  body[data-theme="connect-green"] .faq-item > summary::after { color: var(--connect-link); }
  body[data-theme="connect-green"] .field :is(input,select,textarea) {
    border-color: var(--connect-line);
    background: var(--connect-pale);
  }
  body[data-theme="connect-green"] .field textarea[readonly] { background: var(--connect-soft); }
  body[data-theme="connect-green"] .check-field input { accent-color: var(--connect-green); }
  body[data-theme="connect-green"] [data-js-help] { background: var(--connect-soft); }
  body[data-theme="connect-green"] .admin-actions { background: var(--connect-deep); }

  /* Footer colours only; logo, spacing and link destinations are preserved. */
  body[data-theme="connect-green"] .footer {
    background: linear-gradient(135deg, #061D0D 0%, #0A3417 60%, #0C4820 100%);
    color: #E4F5E9;
  }
  body[data-theme="connect-green"] .footer :is(.footer-about p,.footer-contact span,.footer-contact a,.footer-links a,.footer-bottom,.footer-legal) {
    color: #EFF9F2;
  }
  body[data-theme="connect-green"] .footer h3 { color: #fff; }
  body[data-theme="connect-green"] .footer :is(a:hover,.text-link) { color: var(--connect-light); }
}
@media screen {
  body[data-theme="connect-green"] .header .dropdown-panel { background: #fff; }
  body[data-theme="connect-green"] .intro-tags span { color: #E6F7EA; }
  body[data-theme="connect-green"] :is(.faq-item,.contact-route) { border-color: var(--connect-line); }
}
@media screen and (max-width: 900px) {
  body[data-theme="connect-green"] .header .dropdown-panel {
    background: var(--connect-soft);
    box-shadow: none;
  }
}
