/*
 * BRUTALIST EDITORIAL DESIGN SYSTEM — CONCRETE + CADMIUM
 * Background: Concrete Grey #A8ACAB
 * Accent: Raw Cadmium Yellow #F5C800
 * Aggressive typography, asymmetric layouts, confrontational presence.
 * Light backgrounds, dark text, yellow accents — industrial studio walls.
 *
 * This file loads AFTER inline <style> blocks — overrides via specificity + !important.
 */

/* === ADDITIONAL TYPEFACES === */
@import url('https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400&display=swap');

/* === DESIGN TOKENS === */
:root {
    --void:        #1A1A1A !important;   /* Near-black — for text-on-accent, darkest text */
    --carbon:      #C8C4BC !important;   /* Alt section bg — slightly darker concrete */
    --concrete:    #BEB9B0 !important;   /* Form bg / darker areas */
    --steel:       #777777 !important;   /* Mid-tone text */
    --bone:        #555555 !important;   /* Body text, muted */
    --warm:        #F5C800 !important;   /* RAW CADMIUM YELLOW — loud, impossible to ignore */
    --text-light:  #2A2A2A !important;   /* Primary dark text on light bg */
    --text-muted:  #777777 !important;   /* Muted text */
    --white:       #f5f2ec !important;   /* Warm white — used on accent bg */
    --accent:      #F5C800;
    --accent-text: #8B6914;  /* Dark amber — readable yellow accent for text on light bg */
    --accent-glow: rgba(245, 200, 0, 0.15);
    --accent-dim:  rgba(245, 200, 0, 0.4);
    --border-hard: rgba(0, 0, 0, 0.12);
    --border-soft: rgba(0, 0, 0, 0.06);
}

/* === BASE OVERRIDES === */
html {
    scroll-behavior: auto !important;
}

body {
    background: #A8ACAB !important;
    color: #2A2A2A !important;
    font-family: 'Space Grotesk', 'Helvetica Neue', sans-serif !important;
    letter-spacing: 0.01em;
}

/* Keep the noise texture but tune for light bg */
body::after {
    opacity: 0.04 !important;
}

/* === SELECTION COLOR === */
::selection {
    background: var(--accent) !important;
    color: #1A1A1A !important;
}

::-moz-selection {
    background: var(--accent) !important;
    color: #1A1A1A !important;
}

/* =============================================================
   NAVIGATION — lean, sharp, brutalist on concrete
   ============================================================= */
nav {
    background: rgba(212, 208, 200, 0.92) !important;
    backdrop-filter: blur(24px) !important;
    -webkit-backdrop-filter: blur(24px) !important;
    border-bottom: 1px solid var(--border-hard) !important;
    box-shadow: none !important;
    padding: 1.2rem 3rem !important;
}

nav.scrolled {
    background: rgba(212, 208, 200, 0.95) !important;
    backdrop-filter: blur(24px) !important;
    -webkit-backdrop-filter: blur(24px) !important;
}

nav.visible {
    background: rgba(212, 208, 200, 0.95) !important;
    display: flex !important;
}

.nav-name {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
}

.nav-links a {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    color: #888888 !important;
    transition: color 0.15s ease !important;
}

.nav-links a:hover,
.nav-links a.active {
    color: #1A1A1A !important;
}

/* === HAMBURGER === */
.hamburger-fixed span,
.hamburger span {
    background: #1A1A1A !important;
    height: 1px !important;
}

/* === MOBILE MENU — full-screen, editorial === */
.mobile-menu {
    background: #A8ACAB !important;
}

.mobile-menu a {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(2rem, 6vw, 3.5rem) !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    position: relative !important;
    transition: color 0.15s ease !important;
}

.mobile-menu a:hover {
    color: var(--accent) !important;
}

.mobile-close {
    color: #888888 !important;
    font-size: 2rem !important;
}

/* =============================================================
   ARTIST NAMEPLATE — MASSIVE, shifted left
   ============================================================= */
.artist-nameplate {
    background: #A8ACAB !important;
    padding: 4rem 3rem 3rem !important;
    border-bottom: 2px solid var(--accent) !important;
}

.artist-nameplate h1 {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(4rem, 14vw, 12rem) !important;
    letter-spacing: -0.03em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    line-height: 0.88 !important;
    margin-left: -0.04em !important;
}

/* =============================================================
   HERO — full bleed, no apologies
   ============================================================= */
.hero {
    height: 100vh !important;
    min-height: 600px !important;
    position: relative !important;
}

.hero::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 30% !important;
    background: linear-gradient(to top, #A8ACAB 0%, transparent 100%) !important;
    pointer-events: none !important;
    z-index: 5 !important;
}

/* Sticker — keep but adjust for light bg */
.sticker-provincetown {
    z-index: 10 !important;
    mix-blend-mode: multiply !important;
    filter: none !important;
    width: clamp(120px, 16vw, 280px) !important;
}

/* =============================================================
   IMPACT ZONE — asymmetric, aggressive typography
   ============================================================= */
.impact-zone {
    background: #A8ACAB !important;
    padding: 8rem 3rem 10rem 8rem !important;
}

.tagline-line {
    font-family: 'Space Mono', monospace !important;
    font-size: clamp(0.85rem, 1.4vw, 1.1rem) !important;
    font-style: normal !important;
    color: #666666 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    line-height: 1.6 !important;
    margin-bottom: 6rem !important;
    max-width: 500px !important;
    border-left: 2px solid var(--accent) !important;
    padding-left: 1.5rem !important;
}

/* === DOORS — massive, minimal === */
.doors {
    border-top: 1px solid var(--border-hard) !important;
}

.door {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 2.5rem 0 !important;
    border-bottom: 1px solid var(--border-hard) !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(2rem, 5.5vw, 4.5rem) !important;
    letter-spacing: -0.02em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    position: relative !important;
}

.door::after {
    content: '\2192' !important;
    font-family: 'Space Mono', monospace !important;
    font-size: 0.7em !important;
    font-weight: 400 !important;
    color: #AAAAAA !important;
    transition: all 0.2s ease !important;
}

.door:hover {
    color: var(--accent) !important;
    padding-left: 1.5rem !important;
}

.door:hover::after {
    color: var(--accent) !important;
    transform: translateX(0.5rem) !important;
}

/* =============================================================
   BREATHING ROOM — bigger
   ============================================================= */
.breathing-room {
    height: 15vh !important;
    min-height: 80px !important;
    background: #A8ACAB !important;
}

/* =============================================================
   EMAIL CAPTURE — editorial split, cadmium yellow takeover
   ============================================================= */
.email-capture {
    background: var(--accent) !important;
    border-top: none !important;
    border-bottom: none !important;
    position: relative !important;
    overflow: hidden !important;
}

.email-capture::before {
    content: 'JOIN' !important;
    position: absolute !important;
    top: -0.15em !important;
    right: -0.02em !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(15rem, 30vw, 35rem) !important;
    text-transform: uppercase !important;
    color: rgba(0, 0, 0, 0.06) !important;
    line-height: 1 !important;
    pointer-events: none !important;
    z-index: 0 !important;
    letter-spacing: -0.04em !important;
}

.email-capture-inner {
    padding: 6rem 4rem !important;
    position: relative !important;
    z-index: 1 !important;
}

.email-capture-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.25em !important;
    text-transform: uppercase !important;
    color: rgba(0, 0, 0, 0.5) !important;
    margin-bottom: 1.5rem !important;
}

.email-capture-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(3.5rem, 8vw, 7rem) !important;
    letter-spacing: -0.04em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    line-height: 0.9 !important;
}

.email-capture-subhead {
    font-family: 'Space Grotesk', sans-serif !important;
    font-style: normal !important;
    font-size: clamp(0.9rem, 1.2vw, 1.05rem) !important;
    line-height: 1.7 !important;
    color: rgba(0, 0, 0, 0.55) !important;
    font-weight: 300 !important;
}

.email-capture-input-row {
    border: 2px solid rgba(0, 0, 0, 0.25) !important;
    background: rgba(255, 255, 255, 0.15) !important;
}

.email-capture-input-row:focus-within {
    border-color: #1A1A1A !important;
}

.email-capture-input {
    color: #1A1A1A !important;
    font-family: 'Space Mono', monospace !important;
    font-size: 0.85rem !important;
    background: transparent !important;
}

.email-capture-input::placeholder {
    color: rgba(0, 0, 0, 0.35) !important;
    font-style: normal !important;
}

.email-capture-btn {
    background: #1A1A1A !important;
    color: #FFFFFF !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: 0.7rem !important;
    letter-spacing: 0.18em !important;
    padding: 1.25rem 2.5rem !important;
    transition: all 0.15s ease !important;
}

.email-capture-btn:hover {
    background: #333333 !important;
}

.email-capture-notice {
    color: rgba(0, 0, 0, 0.4) !important;
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
}

.email-capture-msg.success { color: #1A1A1A !important; }
.email-capture-msg.error { color: #CC0000 !important; }

/* =============================================================
   PRESS SECTION — stark, editorial layout
   ============================================================= */
.press-section {
    background: #CBC7BF !important;
    padding: 8rem 4rem !important;
    border-top: 1px solid var(--border-hard) !important;
}

.press-inner {
    max-width: 800px !important;
}

.press-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.4em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    margin-bottom: 3rem !important;
}

.press-pub {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
    letter-spacing: 0.12em !important;
    color: #888888 !important;
}

.press-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
    color: #1A1A1A !important;
    letter-spacing: -0.02em !important;
}

.press-quote {
    font-family: 'Instrument Serif', serif !important;
    font-size: clamp(1.1rem, 1.8vw, 1.4rem) !important;
    color: #666666 !important;
    border-left: 2px solid var(--accent) !important;
    padding-left: 1.5rem !important;
    margin-left: 0 !important;
}

.press-link {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
    letter-spacing: 0.18em !important;
    color: var(--accent) !important;
    border-bottom: 1px solid var(--accent-dim) !important;
}

.press-link:hover {
    color: #1A1A1A !important;
    border-color: #1A1A1A !important;
}

/* =============================================================
   FOOTER — minimal, technical
   ============================================================= */
.footer,
footer {
    background: #A8ACAB !important;
    border-top: 1px solid var(--border-hard) !important;
    padding: 2.5rem 3rem !important;
}

.footer-inner {
    max-width: none !important;
}

.footer-text {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #999999 !important;
}

.footer-left {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
    color: #999999 !important;
}

.social-link {
    color: #999999 !important;
    transition: color 0.15s ease !important;
}

.social-link:hover {
    color: var(--accent) !important;
}

.footer-right a {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
    color: #999999 !important;
}

.footer-right a:hover {
    color: #1A1A1A !important;
}

/* Footer secondary links */
.footer-secondary-links,
.footer-secondary-links a,
[style*="rgba(255,255,255,0.4)"] {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    color: #AAAAAA !important;
}

.footer-secondary-links a:hover {
    color: var(--accent) !important;
}

.footer-secondary-links {
    border-top: 1px solid var(--border-hard) !important;
}

/* =============================================================
   PAGE HEROES — DOMINATING
   ============================================================= */
.page-hero {
    padding: clamp(140px, 20vh, 220px) 3rem 5rem !important;
    background: #A8ACAB !important;
    position: relative !important;
    overflow: hidden !important;
}

.page-hero::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 1px !important;
    background: var(--border-hard) !important;
}

.page-hero-label,
.series-label,
.section-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    margin-bottom: 1.5rem !important;
}

.page-hero-title,
.page-title,
.page-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(4rem, 12vw, 10rem) !important;
    letter-spacing: -0.04em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    line-height: 0.88 !important;
    margin-left: -0.04em !important;
}

.page-hero-subtitle {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(0.9rem, 1.3vw, 1.05rem) !important;
    font-weight: 300 !important;
    color: #777777 !important;
    margin-top: 2rem !important;
    max-width: 480px !important;
    line-height: 1.7 !important;
}

.page-intro {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 300 !important;
    color: #666666 !important;
    line-height: 1.8 !important;
}

/* =============================================================
   GALLERY / WORKS — dramatic presentation
   ============================================================= */
.page-header {
    padding: clamp(140px, 18vh, 200px) 3rem 5rem !important;
}

.works-sequence {
    padding-bottom: 10rem !important;
}

.work-single {
    max-width: 1200px !important;
    margin-bottom: 8rem !important;
}

.work-pair {
    gap: 3px !important;
    margin-bottom: 8rem !important;
}

.work-figure {
    background: #CBC7BF !important;
    overflow: hidden !important;
    position: relative !important;
}

.work-figure img {
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.work-figure:hover img {
    transform: scale(1.02) !important;
}

.work-caption {
    padding-top: 1.25rem !important;
}

.wc-title {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
    letter-spacing: 0.15em !important;
    color: #666666 !important;
}

.wc-meta {
    font-family: 'Space Mono', monospace !important;
    font-style: normal !important;
    font-size: 0.6rem !important;
    color: #999999 !important;
}

/* =============================================================
   INQUIRY / FORMS — sharp, technical
   ============================================================= */
.inquiry-strip {
    background: #CBC7BF !important;
    border-top: 1px solid var(--border-hard) !important;
}

.inquiry-text h2 {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(2rem, 4vw, 3.5rem) !important;
    letter-spacing: -0.03em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
}

.form-group label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.18em !important;
    color: #888888 !important;
}

.form-group input,
.form-group textarea,
.form-group select {
    background: #E8E5DE !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    color: #2A2A2A !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 0.88rem !important;
    font-weight: 300 !important;
    padding: 0.9rem 1.1rem !important;
    transition: border-color 0.15s ease !important;
    border-radius: 0 !important;
}

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
    border-color: var(--accent) !important;
    outline: none !important;
    box-shadow: 0 0 0 1px var(--accent-dim) !important;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
    color: #999999 !important;
    font-style: normal !important;
}

/* Generic input/textarea selectors (contact page) */
input, textarea, select {
    color: #2A2A2A !important;
    border-color: rgba(0, 0, 0, 0.1) !important;
}

input::placeholder,
textarea::placeholder {
    color: #999999 !important;
}

/* === CTA BUTTONS — cadmium yellow, confrontational === */
.btn-primary,
.btn-inquire,
.btn-acquire,
.cta-btn,
a[href*="inquire"],
a.btn {
    background: var(--accent) !important;
    color: #1A1A1A !important;
    border-color: var(--accent) !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: 0.72rem !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    padding: 1.1rem 2.5rem !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
}

.btn-primary:hover,
.btn-inquire:hover,
.btn-acquire:hover,
.cta-btn:hover,
a[href*="inquire"]:hover,
a.btn:hover {
    background: #D4AA00 !important;
    border-color: #D4AA00 !important;
}

button[type="submit"],
input[type="submit"] {
    background: var(--accent) !important;
    color: #1A1A1A !important;
    border-color: var(--accent) !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: 0.15em !important;
    border: none !important;
    transition: all 0.15s ease !important;
}

button[type="submit"]:hover,
input[type="submit"]:hover {
    background: #D4AA00 !important;
}

.form-success {
    background: rgba(245, 200, 0, 0.08) !important;
    border: 1px solid rgba(245, 200, 0, 0.3) !important;
    color: #1A1A1A !important;
}

/* =============================================================
   LIGHTBOX — KEEP DARK for artwork viewing
   ============================================================= */
.lightbox {
    background: rgba(5, 5, 5, 0.97) !important;
}

.lightbox-close {
    color: #888888 !important;
}

.lightbox-close:hover {
    color: #FFFFFF !important;
}

.lightbox-caption .lc-title {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.65rem !important;
    letter-spacing: 0.18em !important;
    color: #CCCCCC !important;
}

.lightbox-caption .lc-series {
    font-family: 'Space Mono', monospace !important;
    font-style: normal !important;
    font-size: 0.6rem !important;
    color: #888888 !important;
}

.lightbox-inquire {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    color: var(--accent) !important;
    border-bottom-color: var(--accent-dim) !important;
}

.lightbox-inquire:hover {
    border-color: var(--accent) !important;
}

/* =============================================================
   BIO / ABOUT SECTION — editorial layout
   ============================================================= */
.bio-section {
    background: #A8ACAB !important;
}

.bio-section-inner {
    max-width: 1200px !important;
}

.bio-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
}

.bio-heading {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(2.5rem, 5vw, 4rem) !important;
    letter-spacing: -0.03em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    line-height: 0.95 !important;
}

.bio-text {
    font-weight: 300 !important;
    line-height: 1.85 !important;
    color: #555555 !important;
}

.bio-text p {
    margin-bottom: 1.2rem !important;
}

.bio-portrait-caption {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.12em !important;
    color: #888888 !important;
}

.concrete-winter-block {
    border-left-color: var(--accent) !important;
}

/* =============================================================
   CREDENTIALS — grid, technical feel
   ============================================================= */
.credentials-section {
    background: #CBC7BF !important;
}

.credentials-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
}

.credential-key {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.15em !important;
    text-transform: uppercase !important;
    color: #888888 !important;
}

.credential-value {
    font-family: 'Syne', sans-serif !important;
    font-weight: 700 !important;
    font-size: clamp(1rem, 1.8vw, 1.3rem) !important;
    color: #1A1A1A !important;
    letter-spacing: -0.01em !important;
}

.credential-note {
    font-size: 0.82rem !important;
    font-weight: 300 !important;
    color: #777777 !important;
    line-height: 1.65 !important;
}

.credential-note span[style*="color:var(--warm)"] {
    color: var(--accent) !important;
}

.credential-item {
    border-color: var(--border-hard) !important;
}

/* =============================================================
   STUDIO PHOTO BREAK — full bleed, dramatic
   ============================================================= */
.studio-photo-break {
    background: #A8ACAB !important;
}

/* =============================================================
   PRESS STRIP — editorial
   ============================================================= */
.press-strip {
    background: #CBC7BF !important;
    border-top: 1px solid var(--border-hard) !important;
}

.press-strip-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
}

.press-pub-name {
    font-family: 'Space Mono', monospace !important;
    color: #888888 !important;
}

.press-pub-section,
.press-pub-date {
    font-family: 'Space Mono', monospace !important;
    color: #999999 !important;
}

.press-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    color: #1A1A1A !important;
}

.press-quote {
    font-family: 'Instrument Serif', serif !important;
    color: #666666 !important;
}

.press-read-link {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    color: var(--accent) !important;
    border-bottom: 1px solid var(--accent-dim) !important;
}

.press-read-link:hover {
    color: #1A1A1A !important;
    border-color: #1A1A1A !important;
}

/* =============================================================
   EVENTS / GATHERINGS
   ============================================================= */
.event-date {
    color: var(--accent) !important;
    font-family: 'Space Mono', monospace !important;
}

/* =============================================================
   SECTION HEADERS (generic patterns)
   ============================================================= */
.section-title,
.section-heading {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.02em !important;
    color: #1A1A1A !important;
}

/* =============================================================
   HORIZONTAL RULES
   ============================================================= */
hr {
    border-color: var(--border-hard) !important;
}

/* =============================================================
   LINKS — accent on hover
   ============================================================= */
a {
    transition: color 0.15s ease !important;
}

/* Links within body text */
.bio-text a,
.credential-note a,
p a {
    color: #1A1A1A !important;
    text-decoration: none !important;
    border-bottom: 1px solid var(--accent) !important;
}

.bio-text a:hover,
.credential-note a:hover,
p a:hover {
    color: var(--accent) !important;
    border-color: var(--accent) !important;
}

/* =============================================================
   SCROLL REVEAL ANIMATIONS — sharper
   ============================================================= */
.scroll-reveal,
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1),
                transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.scroll-reveal.visible,
.reveal.visible {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* =============================================================
   CONCRETE WINTER SERIES PAGE — special treatment
   ============================================================= */
/* The series hero should feel monumental */

/* =============================================================
   CV PAGE
   ============================================================= */
.cv-section,
.cv-item {
    border-color: var(--border-hard) !important;
}

.cv-year {
    font-family: 'Space Mono', monospace !important;
    color: #888888 !important;
}

.cv-title {
    color: #1A1A1A !important;
}

.cv-detail {
    color: #666666 !important;
}

/* =============================================================
   RESPONSIVE — mobile aggression
   ============================================================= */
@media (max-width: 900px) {
    .artist-nameplate {
        padding: 3rem 1.5rem 2rem !important;
    }

    .artist-nameplate h1 {
        font-size: clamp(3rem, 14vw, 8rem) !important;
    }

    .impact-zone {
        padding: 5rem 1.5rem 7rem 1.5rem !important;
    }

    .tagline-line {
        margin-bottom: 4rem !important;
    }

    .door {
        font-size: clamp(1.6rem, 6vw, 3rem) !important;
        padding: 2rem 0 !important;
    }

    .email-capture-inner {
        grid-template-columns: 1fr !important;
        gap: 2.5rem !important;
        padding: 5rem 1.5rem !important;
    }

    .email-capture::before {
        font-size: clamp(8rem, 40vw, 20rem) !important;
        top: -0.1em !important;
    }

    .press-section {
        padding: 5rem 1.5rem !important;
    }

    .footer,
    footer {
        padding: 2rem 1.5rem !important;
    }

    .footer-inner {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.75rem !important;
    }

    .page-hero {
        padding: clamp(120px, 15vh, 180px) 1.5rem 4rem !important;
    }

    .page-hero-title,
    .page-title {
        font-size: clamp(3rem, 12vw, 7rem) !important;
    }

    .page-header {
        padding: clamp(120px, 15vh, 180px) 1.5rem 4rem !important;
    }

    .nav-links { display: none !important; }

    .work-pair {
        grid-template-columns: 1fr !important;
    }

    .inquiry-inner {
        grid-template-columns: 1fr !important;
        gap: 3rem !important;
    }
}

@media (max-width: 480px) {
    .artist-nameplate {
        padding: 2.5rem 1rem 1.5rem !important;
    }

    .artist-nameplate h1 {
        font-size: clamp(2.2rem, 12vw, 5rem) !important;
    }

    .impact-zone {
        padding: 3.5rem 1rem 5rem !important;
    }

    .door {
        font-size: clamp(1.2rem, 5.5vw, 2.2rem) !important;
        padding: 1.5rem 0 !important;
    }

    .door::after {
        font-size: 0.5em !important;
    }

    .email-capture-headline {
        font-size: clamp(1.8rem, 8vw, 4.5rem) !important;
    }

    .page-hero-title,
    .page-title {
        font-size: clamp(2rem, 9vw, 5rem) !important;
    }

    .press-section {
        padding: 3.5rem 1rem !important;
    }

    .footer,
    footer {
        padding: 2rem 1rem !important;
    }
}

/* =============================================================
   MOBILE TYPOGRAPHY FIX — headlines MUST fit one line
   Targeting 375px–430px viewports aggressively
   ============================================================= */
@media (max-width: 430px) {
    /* Artist nameplate — "TADHG SLATER" must fit one line */
    .artist-nameplate h1 {
        font-size: clamp(2rem, 11vw, 4.5rem) !important;
    }

    /* Page hero titles — single words like "GALLERY", "PRESS" + "CONCRETE WINTER" */
    .page-hero-title,
    .page-title,
    .page-headline {
        font-size: clamp(1.8rem, 8.5vw, 4rem) !important;
    }

    /* Email capture headline — "GET ON THE LIST" */
    .email-capture-headline {
        font-size: clamp(1.6rem, 7vw, 3.5rem) !important;
    }

    /* Hero titles on event/series pages */
    .hero-title,
    .hero-headline {
        font-size: clamp(1.8rem, 8vw, 4rem) !important;
    }

    /* Section headings — sentence-length, scale down harder */
    .built-headline,
    .come-headline,
    .contact-left-headline,
    .inquiry-text h2,
    .bio-heading {
        font-size: clamp(1.3rem, 5vw, 2.5rem) !important;
    }

    /* Doors — nav items must stay single line */
    .door {
        font-size: clamp(1rem, 5vw, 2rem) !important;
        padding: 1.2rem 0 !important;
    }

    /* Exhaust wordmark */
    .exhaust-wordmark {
        font-size: clamp(3rem, 16vw, 6rem) !important;
    }
}

/* Extra safety net at 375px */
@media (max-width: 375px) {
    .artist-nameplate h1 {
        font-size: clamp(1.8rem, 10vw, 3.5rem) !important;
    }

    .page-hero-title,
    .page-title,
    .page-headline {
        font-size: clamp(1.6rem, 8vw, 3rem) !important;
    }

    .hero-title,
    .hero-headline {
        font-size: clamp(1.6rem, 7.5vw, 3rem) !important;
    }

    .email-capture-headline {
        font-size: clamp(1.4rem, 6.5vw, 3rem) !important;
    }

    .door {
        font-size: clamp(0.9rem, 4.5vw, 1.8rem) !important;
    }

    .built-headline,
    .come-headline,
    .contact-left-headline {
        font-size: clamp(1.1rem, 4.5vw, 2rem) !important;
    }
}

/* =============================================================
   NOISE TEXTURE — keep it alive
   ============================================================= */
body::after {
    opacity: 0.04 !important;
}

/* =============================================================
   SCROLLBAR — minimal, concrete-themed
   ============================================================= */
::-webkit-scrollbar {
    width: 4px;
}

::-webkit-scrollbar-track {
    background: #A8ACAB;
}

::-webkit-scrollbar-thumb {
    background: #AAAAAA;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--accent);
}

/* =============================================================
   OPEN STUDIO / RESIDENCIES / FOR ARTISTS — section overrides
   ============================================================= */

/* Ensure all section backgrounds are concrete */
section {
    background-color: #A8ACAB;
}

/* Any alt-bg sections */
.alt-bg,
.section-alt {
    background: #CBC7BF !important;
}

/* =============================================================
   FOR ARTISTS PAGE — confrontational
   ============================================================= */
.hero-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
}

.hero-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(4rem, 10vw, 9rem) !important;
    letter-spacing: -0.04em !important;
    color: #1A1A1A !important;
    line-height: 0.9 !important;
}

.hero-subhead {
    font-family: 'Space Grotesk', sans-serif !important;
    font-style: normal !important;
    font-weight: 300 !important;
    color: #666666 !important;
    font-size: clamp(1rem, 1.8vw, 1.3rem) !important;
    line-height: 1.7 !important;
}

.hero-rule {
    background: var(--accent) !important;
    height: 2px !important;
    width: 80px !important;
}

/* Statement section */
.statement-section {
    background: #CBC7BF !important;
    border-top: 1px solid var(--border-hard) !important;
}

.statement-aside {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    color: #1A1A1A !important;
    letter-spacing: -0.03em !important;
}

.statement-body p {
    color: #666666 !important;
    font-weight: 300 !important;
}

.statement-body p strong {
    color: #2A2A2A !important;
}

/* Built section */
.built-section {
    background: #A8ACAB !important;
}

.built-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.03em !important;
    color: #1A1A1A !important;
}

.built-grid {
    border-color: var(--border-hard) !important;
}

.built-item {
    border-color: var(--border-hard) !important;
}

.built-item-num {
    font-family: 'Space Mono', monospace !important;
    color: var(--accent) !important;
}

.built-item-title {
    font-family: 'Syne', sans-serif !important;
    color: #1A1A1A !important;
}

.built-item-text {
    color: #666666 !important;
    font-weight: 300 !important;
}

/* Come section */
.come-section {
    background: #BEB9B0 !important;
    border-color: var(--border-hard) !important;
}

.come-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.03em !important;
    color: #1A1A1A !important;
}

.come-body p {
    color: #666666 !important;
    font-weight: 300 !important;
}

.come-body p strong {
    color: #2A2A2A !important;
}

.requirement-list li {
    border-color: var(--border-hard) !important;
    color: #666666 !important;
}

.requirement-list li strong {
    color: #2A2A2A !important;
}

.req-mark {
    color: var(--accent) !important;
}

/* Contact sections */
.contact-section {
    background: #A8ACAB !important;
}

.contact-left-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
}

.contact-left-headline {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.03em !important;
    color: #1A1A1A !important;
}

.contact-left-body {
    color: #666666 !important;
    font-weight: 300 !important;
}

.direct-contact {
    border-color: var(--border-hard) !important;
}

.direct-contact-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    color: #888888 !important;
}

.direct-contact-num {
    font-family: 'Syne', sans-serif !important;
    color: #1A1A1A !important;
}

.direct-contact-num:hover {
    color: var(--accent) !important;
}

.direct-contact-note {
    color: #888888 !important;
}

.contact-info-block {
    border-color: var(--border-hard) !important;
}

.alt-contact-grid {
    border-color: var(--border-hard) !important;
}

/* =============================================================
   GATHERINGS PAGE — editorial event layout
   ============================================================= */
.gatherings-hero {
    background-color: #A8ACAB !important;
}

.gatherings-hero .hero-overlay {
    background: linear-gradient(to bottom, rgba(212,208,200,0.4) 0%, rgba(212,208,200,0.85) 50%, rgba(212,208,200,0.98) 100%) !important;
}

.hero-ongoing,
.type-eyebrow,
.section-eyebrow {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
}

.hero-title {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(4rem, 10vw, 9rem) !important;
    letter-spacing: -0.04em !important;
    color: #1A1A1A !important;
    line-height: 0.9 !important;
}

.hero-desc {
    font-family: 'Space Grotesk', sans-serif !important;
    font-style: normal !important;
    font-weight: 300 !important;
    color: #555555 !important;
}

.hero-meta .meta-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.18em !important;
    color: #888888 !important;
}

.hero-meta .meta-value {
    font-family: 'Syne', sans-serif !important;
    color: #1A1A1A !important;
}

.meta-divider {
    background: var(--border-hard) !important;
}

/* Types grid */
.gatherings-types {
    background: #CBC7BF !important;
    border-color: var(--border-hard) !important;
}

.type-block {
    border-color: var(--border-hard) !important;
}

.type-title {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: -0.02em !important;
    color: #1A1A1A !important;
}

.type-meta-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    color: #888888 !important;
}

.type-meta-val {
    font-family: 'Syne', sans-serif !important;
    color: #1A1A1A !important;
}

.type-meta-strip {
    border-color: var(--border-hard) !important;
}

.type-body p {
    color: #666666 !important;
    font-weight: 300 !important;
}

.type-body p strong {
    color: #2A2A2A !important;
}

.type-cta {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    color: #1A1A1A !important;
    border-color: rgba(0, 0, 0, 0.2) !important;
}

.type-cta:hover {
    color: var(--accent) !important;
    border-color: var(--accent) !important;
}

/* Salon dates */
.salon-dates {
    background: #A8ACAB !important;
    border-color: var(--border-hard) !important;
}

.dates-grid {
    border-color: var(--border-hard) !important;
}

.dates-month {
    border-color: var(--border-hard) !important;
}

/* =============================================================
   EXHAUST PAGE — studio brutalism
   ============================================================= */
.exhaust-hero {
    background-color: #A8ACAB !important;
}

.exhaust-hero .hero-overlay {
    background: linear-gradient(to bottom, rgba(212,208,200,0.3) 0%, rgba(212,208,200,0.8) 60%, rgba(212,208,200,0.98) 100%) !important;
}

.hero-location {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #777777 !important;
}

.body-section {
    background: #A8ACAB !important;
}

.body-section-inner {
    max-width: 1200px !important;
}

.inquiry-section {
    background: #CBC7BF !important;
    border-top: 1px solid var(--border-hard) !important;
}

/* =============================================================
   CONCRETE WINTER — monumental treatment
   ============================================================= */
.residency-statement-grid {
    border-color: var(--border-hard) !important;
}

.studio-photo-grid img {
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.studio-photo-grid img:hover {
    transform: scale(1.015) !important;
}

/* =============================================================
   JOURNAL / TURPENTINE — editorial text
   ============================================================= */
.journal-entry,
.journal-item {
    border-color: var(--border-hard) !important;
}

.journal-date,
.journal-meta {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    color: #888888 !important;
}

.journal-title {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    color: #1A1A1A !important;
}

.journal-excerpt {
    color: #666666 !important;
    font-weight: 300 !important;
}

/* =============================================================
   OPEN STUDIO / WEDNESDAY SALON
   ============================================================= */
.rsvp-btn,
.rsvp-button {
    background: var(--accent) !important;
    color: #1A1A1A !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: 0.15em !important;
}

.rsvp-btn:hover,
.rsvp-button:hover {
    background: #D4AA00 !important;
}

/* =============================================================
   RESIDENCIES PAGE
   ============================================================= */
.residency-card {
    border-color: var(--border-hard) !important;
    background: #CBC7BF !important;
}

.residency-name {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    color: #1A1A1A !important;
}

.residency-dates {
    font-family: 'Space Mono', monospace !important;
    color: var(--accent) !important;
}

.residency-location {
    color: #777777 !important;
}

/* =============================================================
   ADMIN / ANALYTICS (preserve functionality)
   ============================================================= */
.admin-analytics {
    background: #A8ACAB !important;
}

/* =============================================================
   GLOBAL ACCENT HELPERS — override any remaining warm/accent refs
   ============================================================= */
[style*="color:var(--warm)"],
[style*="color: var(--warm)"],
[style*="color:#F5C800"],
[style*="color: #F5C800"],
[style*="color:#f5c800"],
[style*="color: #f5c800"] {
    color: var(--accent-text) !important;
}

[style*="background:var(--warm)"],
[style*="background: var(--warm)"],
[style*="background-color:var(--warm)"],
[style*="background-color: var(--warm)"] {
    background: var(--accent) !important;
    background-color: var(--accent) !important;
}

[style*="border-color:var(--warm)"],
[style*="border-color: var(--warm)"] {
    border-color: var(--accent) !important;
}

/* Override any remaining inline border-left warm accents */
[style*="border-left: 3px solid var(--warm)"],
[style*="border-left:3px solid var(--warm)"] {
    border-left-color: var(--accent) !important;
}

/* =============================================================
   INLINE STYLE OVERRIDES — catch inline bg/text colors from HTML
   ============================================================= */

/* Override inline background references to old dark vars */
[style*="background:var(--void)"],
[style*="background: var(--void)"],
[style*="background-color:var(--void)"] {
    background: #A8ACAB !important;
    background-color: #A8ACAB !important;
}

[style*="background:var(--carbon)"],
[style*="background: var(--carbon)"],
[style*="background-color:var(--carbon)"] {
    background: #CBC7BF !important;
    background-color: #CBC7BF !important;
}

[style*="background:var(--concrete)"],
[style*="background: var(--concrete)"],
[style*="background-color:var(--concrete)"] {
    background: #BEB9B0 !important;
    background-color: #BEB9B0 !important;
}

/* Override rgba(212,208,200,0.06) borders from HTML to new dark borders */
[style*="rgba(212,208,200,0.06)"] {
    border-color: rgba(0, 0, 0, 0.08) !important;
}

/* Override rgba(255,255,255 borders from HTML */
[style*="rgba(255,255,255,0.06)"] {
    border-color: rgba(0, 0, 0, 0.08) !important;
}

/* Catch inline white text that should now be dark */
[style*="color:#fff"],
[style*="color: #fff"],
[style*="color:#FFF"],
[style*="color: #FFF"],
[style*="color:white"],
[style*="color: white"] {
    color: #1A1A1A !important;
}

/* Inline elements that use var(--void) as text color on accent bg — keep dark */
[style*="color:var(--void)"],
[style*="color: var(--void)"] {
    color: #1A1A1A !important;
}

/* =============================================================
   NAV — COLLECT item: cadmium yellow, stands alone
   ============================================================= */
.nav-links a[href="/collector-preview"],
.nav-links a.nav-collect {
    color: var(--accent) !important;
    font-weight: 700 !important;
}

.nav-links a[href="/collector-preview"]:hover,
.nav-links a.nav-collect:hover {
    color: #1A1A1A !important;
}

/* Mobile menu collect link */
.mobile-menu a[href="/collector-preview"],
.mobile-menu a.nav-collect {
    color: var(--accent) !important;
}

/* =============================================================
   INDEPENDENCE LINE — hero tagline moment
   ============================================================= */
.independence-line {
    font-family: 'Space Mono', monospace !important;
    font-size: clamp(0.7rem, 1.1vw, 0.9rem) !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    margin-top: -4rem !important;
    margin-bottom: 5rem !important;
    font-weight: 400 !important;
}

/* =============================================================
   CURRENT SECTION — bold typographic treatment
   ============================================================= */
.current-section {
    background: #CBC7BF !important;
    border-top: 1px solid var(--border-hard) !important;
    padding: 6rem 8rem 7rem !important;
    position: relative !important;
    overflow: hidden !important;
}

.current-section::before {
    content: 'NOW' !important;
    position: absolute !important;
    top: -0.1em !important;
    right: -0.02em !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(12rem, 25vw, 28rem) !important;
    text-transform: uppercase !important;
    color: rgba(0, 0, 0, 0.04) !important;
    line-height: 1 !important;
    pointer-events: none !important;
    z-index: 0 !important;
    letter-spacing: -0.04em !important;
}

.current-inner {
    position: relative !important;
    z-index: 1 !important;
}

.current-eyebrow {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    display: block !important;
    margin-bottom: 1.5rem !important;
}

.current-heading {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(5rem, 16vw, 14rem) !important;
    letter-spacing: -0.04em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    line-height: 0.85 !important;
    margin-bottom: 4rem !important;
    margin-left: -0.04em !important;
}

.current-listings {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    border-top: 1px solid var(--border-hard) !important;
    margin-bottom: 3rem !important;
}

.current-listing {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    padding: 1.75rem 0 !important;
    border-bottom: 1px solid var(--border-hard) !important;
    gap: 2rem !important;
}

.current-listing-status {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.25em !important;
    text-transform: uppercase !important;
    color: #888888 !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    width: 160px !important;
}

.current-listing-details {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(1.2rem, 2.5vw, 1.8rem) !important;
    letter-spacing: -0.02em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    line-height: 1 !important;
    flex: 1 !important;
    text-align: right !important;
}

.current-listing--featured .current-listing-details {
    font-size: clamp(1.4rem, 3vw, 2.2rem) !important;
}

/* Cadmium yellow accent on specific text */
.accent-yellow {
    color: var(--accent) !important;
}

.current-collector-note {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(0.85rem, 1.2vw, 1rem) !important;
    font-weight: 300 !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    max-width: 600px !important;
}

.current-preview-link {
    color: var(--accent) !important;
    font-weight: 700 !important;
    font-family: 'Space Mono', monospace !important;
    font-size: 0.75em !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    border-bottom: 1px solid var(--accent-dim) !important;
    transition: all 0.15s ease !important;
    margin-left: 0.5em !important;
}

.current-preview-link:hover {
    color: #1A1A1A !important;
    border-color: #1A1A1A !important;
}

@media (max-width: 900px) {
    .current-section {
        padding: 5rem 1.5rem 6rem !important;
    }

    .current-heading {
        font-size: clamp(4rem, 18vw, 10rem) !important;
        margin-bottom: 3rem !important;
    }

    .current-listing {
        flex-direction: column !important;
        gap: 0.5rem !important;
        align-items: flex-start !important;
        padding: 1.5rem 0 !important;
    }

    .current-listing-status {
        width: auto !important;
    }

    .current-listing-details {
        text-align: left !important;
        font-size: clamp(1rem, 4vw, 1.5rem) !important;
    }

    .current-listing--featured .current-listing-details {
        font-size: clamp(1.1rem, 4.5vw, 1.6rem) !important;
    }
}

@media (max-width: 480px) {
    .current-section {
        padding: 4rem 1rem 5rem !important;
    }

    .current-heading {
        font-size: clamp(3rem, 16vw, 7rem) !important;
    }

    .independence-line {
        margin-top: -3rem !important;
        margin-bottom: 4rem !important;
        font-size: 0.65rem !important;
    }
}

/* =============================================================
   COLLECTOR PREVIEW PAGE — exclusive, private invitation feel
   ============================================================= */
.collector-preview-hero {
    padding: clamp(140px, 20vh, 220px) 3rem 5rem !important;
    background: #A8ACAB !important;
    position: relative !important;
    overflow: hidden !important;
    border-bottom: 2px solid var(--accent) !important;
}

.collector-preview-hero::before {
    content: 'PREVIEW' !important;
    position: absolute !important;
    bottom: -0.15em !important;
    right: -0.02em !important;
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(8rem, 20vw, 22rem) !important;
    text-transform: uppercase !important;
    color: rgba(0, 0, 0, 0.04) !important;
    line-height: 1 !important;
    pointer-events: none !important;
    z-index: 0 !important;
    letter-spacing: -0.04em !important;
}

.collector-preview-hero-inner {
    position: relative !important;
    z-index: 1 !important;
}

.collector-preview-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    display: block !important;
    margin-bottom: 1.5rem !important;
}

.collector-preview-title {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(3.5rem, 10vw, 9rem) !important;
    letter-spacing: -0.04em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    line-height: 0.88 !important;
    margin-bottom: 2rem !important;
    margin-left: -0.04em !important;
}

.collector-preview-subtitle {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(0.9rem, 1.3vw, 1.05rem) !important;
    font-weight: 300 !important;
    color: #777777 !important;
    max-width: 520px !important;
    line-height: 1.7 !important;
}

.collector-preview-section {
    background: #A8ACAB !important;
    padding: 6rem 3rem !important;
}

.collector-preview-grid {
    display: grid !important;
    grid-template-columns: 1fr 1.4fr !important;
    gap: 6rem !important;
    align-items: start !important;
    max-width: 1100px !important;
}

.collector-preview-info-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.35em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    display: block !important;
    margin-bottom: 1.5rem !important;
}

.collector-preview-info-heading {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(2rem, 4vw, 3.5rem) !important;
    letter-spacing: -0.03em !important;
    text-transform: uppercase !important;
    color: #1A1A1A !important;
    line-height: 0.95 !important;
    margin-bottom: 2rem !important;
}

.collector-preview-info-text {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 300 !important;
    color: #555555 !important;
    line-height: 1.85 !important;
    margin-bottom: 1.2rem !important;
}

.collector-preview-cta-heading {
    font-family: 'Syne', sans-serif !important;
    font-weight: 800 !important;
    font-size: clamp(1.2rem, 2.5vw, 2rem) !important;
    letter-spacing: -0.02em !important;
    text-transform: uppercase !important;
    color: var(--accent) !important;
    line-height: 1 !important;
    margin-bottom: 1.5rem !important;
}

.collector-preview-details {
    border-top: 1px solid var(--border-hard) !important;
    margin-top: 2rem !important;
    padding-top: 2rem !important;
}

.collector-preview-detail-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    padding: 0.75rem 0 !important;
    border-bottom: 1px solid var(--border-hard) !important;
    gap: 2rem !important;
}

.collector-preview-detail-label {
    font-family: 'Space Mono', monospace !important;
    font-size: 0.6rem !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #888888 !important;
    white-space: nowrap !important;
}

.collector-preview-detail-value {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: #1A1A1A !important;
    text-align: right !important;
}

@media (max-width: 768px) {
    .collector-preview-hero {
        padding: clamp(120px, 15vh, 180px) 1.5rem 4rem !important;
    }

    .collector-preview-section {
        padding: 4rem 1.5rem !important;
    }

    .collector-preview-grid {
        grid-template-columns: 1fr !important;
        gap: 3rem !important;
    }
}

/* =============================================================
   CONTRAST FIX — Yellow text (#F5C800) → Dark Amber (#8B6914)
   Cadmium yellow is unreadable on beige/concrete backgrounds.
   Dark amber preserves the gold accent identity while being legible.
   Yellow STAYS for: backgrounds, borders, selection, lightbox text.
   ============================================================= */

/* --- Labels, eyebrows, section markers --- */
.press-label,
.press-strip-label,
.page-hero-label,
.series-label,
.section-label,
.bio-label,
.credentials-label,
.hero-label,
.hero-ongoing,
.hero-eyebrow,
.type-eyebrow,
.section-eyebrow,
.current-eyebrow,
.contact-left-label,
.contact-heading-label,
.collector-preview-label,
.collector-preview-info-label,
.preview-info-label,
.preview-form-heading,
.cv-label,
.cv-item-label,
.fact-label,
.statement-label,
.inquiry-eyebrow,
.inquiry-heading-label,
.appointment-eyebrow,
.rsvp-block-label,
.invite-block-label,
.practice-label,
.form-group-label,
.residency-banner-label,
.residency-statement-label,
.residencies-context-label,
.residencies-cards-label,
.journal-page-eyebrow,
.week-label,
.current-label,
.current-item-label,
.current-cta-label {
    color: var(--accent-text) !important;
}

/* --- Links and interactive text on light bg --- */
.press-link,
.press-read-link,
.current-preview-link,
.nav-links a[href="/collector-preview"],
.nav-links a.nav-collect,
.mobile-menu a[href="/collector-preview"],
.mobile-menu a.nav-collect,
.contact-detail-value a,
.residency-banner-item-note a,
.residency-statement-item-note a,
.residency-card-note a,
.detail-note a,
.inquiry-detail-value a,
.post-content a,
.journal-post-link,
.btn-submit {
    color: var(--accent-text) !important;
}

/* --- Headings and display text on light bg --- */
.collector-preview-title,
.collector-preview-cta-heading {
    color: var(--accent-text) !important;
}

/* --- Accent utility, numbers, marks, dates --- */
.accent-yellow,
.built-item-num,
.req-mark,
.event-date,
.residency-dates,
.independence-line,
.statement-quote em,
.expect-num,
.post-eyebrow,
.journal-post-date,
.residency-banner-item-date,
.residency-statement-item-date,
.residency-card-date {
    color: var(--accent-text) !important;
}

/* --- Credential note inline warm references --- */
.credential-note span[style*="color:var(--warm)"] {
    color: var(--accent-text) !important;
}

/* --- Hover states on light backgrounds --- */
.mobile-menu a:hover,
.door:hover,
.door:hover::after,
.social-link:hover,
.footer-secondary-links a:hover,
.bio-text a:hover,
.credential-note a:hover,
p a:hover,
.direct-contact-num:hover,
.type-cta:hover,
.alt-contact-value a:hover,
.inquiry-link:hover,
.post-back:hover,
.post-content a:hover,
.residency-card-note a:hover {
    color: var(--accent-text) !important;
}
