/* Theme: Warm – editorial, 2-column, serif headings, gold accent */
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Source+Sans+3:wght@400;600&display=swap');

body.theme-warm {
    background: #1a1614;
    color: #f5f0eb;
    font-family: 'Source Sans 3', -apple-system, sans-serif;
}

body.theme-warm .site-header,
body.theme-warm header.site-header {
    background: #2c2622;
    border-bottom: 2px solid #78716c;
    padding: 1rem 0;
}

/* Custom logo with black background: match header to black so logo doesn’t show a visible box */
body.theme-warm .site-header.site-header--custom-logo {
    background: #000000;
    border-bottom-color: #333;
}

/* Tonight's Performances CTA bar + next performance date bar – Warm gold */
body.theme-warm .tonight-cta-bar {
    background: linear-gradient(90deg, rgba(251, 191, 36, 0.12) 0%, rgba(251, 191, 36, 0.06) 100%);
    border-bottom-color: rgba(251, 191, 36, 0.4);
    color: #fbbf24;
}
body.theme-warm .tonight-cta-bar:hover {
    background: rgba(251, 191, 36, 0.18);
}
body.theme-warm .tonight-cta-bar-btn {
    border-color: #fbbf24;
}
body.theme-warm .tonight-cta-bar:hover .tonight-cta-bar-btn {
    background: rgba(251, 191, 36, 0.2);
}
/* Show subsite next-performance CTA – Warm gold */
body.theme-warm .show-subsite-next-cta {
    background: linear-gradient(90deg, rgba(251, 191, 36, 0.12) 0%, rgba(251, 191, 36, 0.06) 100%);
    border-bottom-color: rgba(251, 191, 36, 0.4);
    color: #fbbf24;
}
body.theme-warm .show-subsite-next-cta:hover {
    background: rgba(251, 191, 36, 0.18);
}
body.theme-warm .show-subsite-next-cta-btn {
    border-color: #fbbf24;
}
body.theme-warm .show-subsite-next-cta:hover .show-subsite-next-cta-btn {
    background: rgba(251, 191, 36, 0.2);
}
/* Show hero: event date buttons on overlay – Warm gold */
body.theme-warm .hero-date-btn {
    background: rgba(44, 38, 34, 0.95);
    color: #fbbf24;
    border-color: rgba(251, 191, 36, 0.5);
}
body.theme-warm .hero-date-btn:hover {
    background: rgba(44, 38, 34, 0.98);
    border-color: #fbbf24;
    box-shadow: 0 0 12px rgba(251, 191, 36, 0.2);
}
body.theme-warm .hero-more-dates {
    color: #fbbf24;
    border-bottom-color: rgba(251, 191, 36, 0.6);
}
body.theme-warm .hero-more-dates:hover {
    color: #fcd34d;
    border-bottom-color: #fcd34d;
}
body.theme-warm .show-hero-overlay .starting-price {
    color: #fef3c7;
}
body.theme-warm .show-card-next-performance {
    background: rgba(251, 191, 36, 0.1);
    color: #fbbf24;
    border-bottom-color: rgba(251, 191, 36, 0.3);
}
/* Cycle CTA colors – Warm template gold/amber */
body.theme-warm .shows-grid .show-card:nth-child(4n+1) .card-cta-text,
body.theme-warm .venue-sidebar-shows .venue-sidebar-show-card:nth-child(4n+1) .venue-sidebar-show-cta-text { color: #fbbf24; }
body.theme-warm .shows-grid .show-card:nth-child(4n+2) .card-cta-text,
body.theme-warm .venue-sidebar-shows .venue-sidebar-show-card:nth-child(4n+2) .venue-sidebar-show-cta-text { color: #fcd34d; }
body.theme-warm .shows-grid .show-card:nth-child(4n+3) .card-cta-text,
body.theme-warm .venue-sidebar-shows .venue-sidebar-show-card:nth-child(4n+3) .venue-sidebar-show-cta-text { color: #d97706; }
body.theme-warm .shows-grid .show-card:nth-child(4n+4) .card-cta-text,
body.theme-warm .venue-sidebar-shows .venue-sidebar-show-card:nth-child(4n+4) .venue-sidebar-show-cta-text { color: #fef3c7; }
body.theme-warm .card-cta-highlight--sold-out { color: #fbbf24; }
body.theme-warm .card-cta-highlight--available { color: #fcd34d; }
body.theme-warm .card-cta-highlight--accent { color: #d97706; }

body.theme-warm .site-header .hamburger,
body.theme-warm .logo-hero .hamburger-hero {
    color: #f5f0eb;
}

body.theme-warm .site-header .hamburger:hover,
body.theme-warm .logo-hero .hamburger-hero:hover {
    color: #fbbf24;
}

/* Mobile menu – match Warm template */
body.theme-warm .mobile-menu {
    background: #2c2622;
    border-right: 2px solid #78716c;
}

body.theme-warm .mobile-menu a,
body.theme-warm .mobile-menu .mobile-menu-section-label {
    color: #f5f0eb;
    font-family: 'Source Sans 3', sans-serif;
}

body.theme-warm .mobile-menu a:hover {
    color: #fbbf24;
}

body.theme-warm .mobile-menu .mobile-submenu {
    border-left-color: #78716c;
}

body.theme-warm .mobile-menu .mobile-submenu a,
body.theme-warm .mobile-menu .nav-dropdown-item {
    color: #d6d3d1;
}

body.theme-warm .mobile-menu .mobile-submenu a:hover,
body.theme-warm .mobile-menu .nav-dropdown-item:hover {
    color: #fbbf24;
}

body.theme-warm .mobile-menu .nav-dropdown-loading {
    color: #a8a29e;
}

body.theme-warm .menu-overlay {
    background: rgba(26, 22, 20, 0.8);
}

body.theme-warm .container {
    max-width: 900px;
}

body.theme-warm .logo-hero,
body.theme-warm .page-home .logo-hero {
    background: #2c2622;
    padding: 2.5rem 2rem;
}

body.theme-warm .section-title {
    font-family: 'Libre Baskerville', Georgia, serif;
    font-weight: 700;
    font-size: 2.25rem;
    letter-spacing: 0.04em;
    text-transform: none;
    border-bottom: 3px solid #d97706;
    color: #fef3c7;
    margin-bottom: 2.5rem;
    padding-bottom: 0.75rem;
}

body.theme-warm .nav-links {
    font-family: 'Source Sans 3', sans-serif;
    font-weight: 600;
    font-size: 1rem;
    text-transform: none;
    letter-spacing: 0.03em;
}

body.theme-warm .nav-links a,
body.theme-warm .shows-contact-link a {
    color: #e7e5e4;
}

body.theme-warm .nav-links a:hover,
body.theme-warm .nav-links a.active,
body.theme-warm .shows-contact-link a:hover {
    color: #fbbf24;
    border-color: #fbbf24;
    text-shadow: 0 0 12px rgba(251, 191, 36, 0.4);
}

/* 2-column grid: desktop only; mobile uses same layout as normal SCS (home.css) */
@media (min-width: 769px) {
    body.theme-warm .shows-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }

    body.theme-warm .card-title {
        font-family: 'Libre Baskerville', Georgia, serif;
        font-size: 1.35rem;
    }

    body.theme-warm .card-description {
        font-family: 'Source Sans 3', sans-serif;
        font-size: 1rem;
        line-height: 1.5;
    }

    body.theme-warm .card-price {
        font-family: 'Libre Baskerville', serif;
        font-size: 1.5rem;
    }
}

@media (min-width: 1025px) {
    body.theme-warm .shows-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

body.theme-warm .show-card {
    background: #2c2622;
    border: 2px solid #57534e;
    border-radius: 4px;
}

body.theme-warm .show-card:hover {
    border-color: #d97706;
    box-shadow: 0 8px 32px rgba(217, 119, 6, 0.2);
}

body.theme-warm .card-title {
    font-weight: 700;
    color: #fef3c7;
}

body.theme-warm .card-venue {
    color: #a8a29e;
}

body.theme-warm .card-description {
    color: #e7e5e4;
}

body.theme-warm .card-price {
    color: #fbbf24;
    text-shadow: 0 0 12px rgba(251, 191, 36, 0.4);
}

body.theme-warm .why-book-section {
    background: #2c2622;
    padding: 3rem 0;
    border-top: 1px solid #57534e;
}

body.theme-warm .why-book-section .section-title {
    font-size: 2rem;
}

body.theme-warm .why-book-list {
    font-size: 1.05rem;
    line-height: 1.8;
    color: #e7e5e4;
}

body.theme-warm .trust-section {
    background: rgba(44, 38, 34, 0.8);
    padding: 2.5rem 2rem;
}

body.theme-warm .trust-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

body.theme-warm .trust-item h3 {
    font-family: 'Libre Baskerville', serif;
    font-size: 1.2rem;
    color: #fef3c7;
}

body.theme-warm .trust-item p {
    color: #d6d3d1;
}

body.theme-warm .cta-section {
    background: #2c2622;
    border-top: 2px solid #d97706;
    border-bottom: 2px solid #d97706;
    padding: 3rem 2rem;
}

body.theme-warm .cta-section-content {
    font-size: 1.05rem;
    color: #e7e5e4;
}

body.theme-warm .cta-section-content a {
    color: #fbbf24;
}

body.theme-warm .cta-section-content a:hover {
    color: #fcd34d;
}

body.theme-warm .hero-cta,
body.theme-warm .btn.primary {
    background: #b45309 !important;
    color: #fffbeb !important;
    border: none !important;
    font-family: 'Source Sans 3', sans-serif;
    font-weight: 600;
}

body.theme-warm .hero-cta:hover,
body.theme-warm .btn.primary:hover {
    background: #d97706 !important;
}

body.theme-warm .card-button {
    background: transparent !important;
    color: #fbbf24 !important;
    border: 2px solid #fbbf24 !important;
    font-family: 'Source Sans 3', sans-serif;
    font-weight: 600;
}

body.theme-warm .show-card-link:hover .card-button {
    background: #d97706 !important;
    color: #fffbeb !important;
    border-color: #d97706 !important;
}

body.theme-warm .show-card-link:hover .card-title,
body.theme-warm .show-card-link:hover .card-description,
body.theme-warm .show-card-link:hover .card-price,
body.theme-warm .show-card-link:hover .card-venue {
    color: inherit;
    text-shadow: none;
}

body.theme-warm footer {
    background: #1a1614;
    border-top: 2px solid #57534e;
    padding: 3rem 2rem;
}

body.theme-warm footer a:hover {
    color: #fbbf24;
}

body.theme-warm .footer-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
}

body.theme-warm .footer-grid h4 {
    font-family: 'Libre Baskerville', serif;
    font-weight: 700;
    font-size: 1rem;
    color: #fef3c7;
}

body.theme-warm .footer-grid p,
body.theme-warm .footer-grid a {
    color: #d6d3d1;
}

body.theme-warm .footer-bottom {
    color: #a8a29e;
}

body.theme-warm .footer-legal {
    color: #78716c;
}

body.theme-warm .nav-dropdown-menu a {
    color: #e7e5e4;
}

body.theme-warm .nav-dropdown-menu {
    background: #2c2622;
    border: 2px solid #57534e;
}

body.theme-warm .preview-banner {
    background: #422006;
    border-bottom-color: #78350f;
    color: #fef3c7;
}

body.theme-warm .preview-banner-exit {
    color: #fcd34d;
}

/* Show page: match theme card and text colors */
body.theme-warm .section-card {
    background: #2c2622;
    border-color: #57534e;
}

body.theme-warm .section-card h2 {
    color: #fbbf24;
}

body.theme-warm .about-content p,
body.theme-warm .about-content ul,
body.theme-warm .about-content ol {
    color: #e7e5e4;
}

body.theme-warm .about-content a,
body.theme-warm .read-more {
    color: #fbbf24;
}

/* Follow section icons */
body.theme-warm .show-social-links.social-links--icons a {
    background: #57534e;
    color: #fef3c7;
}

body.theme-warm .show-social-links.social-links--icons a:hover {
    background: #fbbf24;
    color: #000;
}

/* Hero social: ensure visible on show page (AllMotown / themed sites) */
body.theme-warm .show-hero-social {
    position: absolute;
    top: 1rem;
    right: 1rem;
    left: auto;
    bottom: auto;
    display: flex;
    justify-content: flex-end;
    z-index: 20;
}

body.theme-warm .show-hero-social-links.social-links--icons a {
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
}

body.theme-warm .show-hero-social-links.social-links--icons a:hover {
    background: #fbbf24;
    color: #000;
}

@media (max-width: 768px) {
    body.theme-warm .show-hero-social {
        display: none;
    }
}

/* ===== MOBILE OPTIMIZATION (all theme templates) ===== */
@media (max-width: 768px) {
    body.theme-warm {
        overflow-x: hidden;
        max-width: 100%;
    }

    body.theme-warm .container {
        padding-left: 1rem;
        padding-right: 1rem;
        width: 100%;
        max-width: 100%;
    }

    body.theme-warm footer {
        padding: 2rem 1rem;
        width: 100%;
        max-width: 100%;
    }

    body.theme-warm .footer-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    body.theme-warm .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        padding-top: 1.5rem;
        margin-top: 1.5rem;
    }

    /* Show layout on mobile = same as normal SCS (home.css); theme only changes colors above */

    body.theme-warm .trust-grid {
        grid-template-columns: 1fr;
    }

}
