/*
 * Jazz in New York City — site skin.
 * Night-sky ink with brass: the palette of a late set, not a SaaS dashboard.
 * html:root beats the :root block in blocks.css, which the theme prints after
 * wp_head (header.php), so these tokens win regardless of load order.
 */

html:root {
    --jnyc-ink: #0F1D3A;
    --jnyc-deep: #172A52;
    --jnyc-brass: #E2A33B;
    --jnyc-paper: #F2ECE1;
    --jnyc-slate: #8C9BB8;
    --jnyc-signal: #E0614A;
    --jnyc-rule: rgba(242, 236, 225, .12);
    --jnyc-display: 'Big Shoulders Display', 'Arial Narrow', sans-serif;
    --jnyc-body: 'Instrument Sans', system-ui, sans-serif;

    --sb-primary: var(--jnyc-brass);
    --sb-accent: var(--jnyc-brass);
    --sb-text: var(--jnyc-paper);
    --sb-text-light: var(--jnyc-slate);
    --sb-bg: var(--jnyc-ink);
    --sb-bg-alt: var(--jnyc-deep);
    --sb-border: var(--jnyc-rule);
    --sb-radius: 3px;
    --sb-body-font: var(--jnyc-body);
    --sb-heading-font: var(--jnyc-display);
}

html, body { background: var(--jnyc-ink); }
body { color: var(--jnyc-paper); font-family: var(--jnyc-body); -webkit-font-smoothing: antialiased; }
::selection { background: var(--jnyc-brass); color: var(--jnyc-ink); }
:focus-visible { outline: 2px solid var(--jnyc-brass); outline-offset: 3px; }

a { color: var(--jnyc-brass); }

body h1, body h2, body h3, body .entry-title { font-family: var(--jnyc-display); color: var(--jnyc-paper); font-weight: 800; letter-spacing: .005em; }
body .sb-section, body .sb-page { color: var(--jnyc-paper); }

/* Header */
body .sb-header { background: var(--jnyc-ink); border-bottom: 1px solid var(--jnyc-rule); }
body .sb-header__logo-text {
    font-family: var(--jnyc-display); font-weight: 800; font-size: 26px; line-height: 1;
    text-transform: uppercase; letter-spacing: .02em; color: var(--jnyc-paper);
}
body .sb-header__menu-link { color: var(--jnyc-paper); font-weight: 500; }
body .sb-header__menu-link:hover { color: var(--jnyc-brass); }

/* Buttons the theme renders (hero CTAs etc.) */
body .sb-btn--primary { background: var(--jnyc-brass); border-color: var(--jnyc-brass); color: var(--jnyc-ink); }
body .sb-btn--primary:hover { background: var(--jnyc-paper); border-color: var(--jnyc-paper); color: var(--jnyc-ink); }
body .sb-btn--secondary { background: transparent; border-color: var(--jnyc-paper); color: var(--jnyc-paper); }

/* Footer */
body .site-footer { background: var(--jnyc-deep); color: var(--jnyc-slate); border-top: 1px solid var(--jnyc-rule); }
body .site-footer .footer-logo { font-family: var(--jnyc-display); font-weight: 800; font-size: 28px; text-transform: uppercase; color: var(--jnyc-paper); }
body .site-footer .footer-tagline, body .site-footer .copyright { color: var(--jnyc-slate); }

/* Plain text sections on venue pages (listing blocks color their own text) */
body .sb-section:not(.jnyc-listings):not(.jnyc-marquee) p,
body .sb-section:not(.jnyc-listings):not(.jnyc-marquee) li { color: var(--jnyc-paper); }
body .sb-section:not(.jnyc-listings):not(.jnyc-marquee) strong { color: var(--jnyc-slate); font-weight: 500; }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition: none !important; }
}
