:root {
    /* Couleurs */
    --color-primary: #1B887B;
    --color-text: #1a1a1a;
    --color-text-muted: #4B5563;
    --color-text-light: #666;
    --color-bg: #fdfdfd;
    --color-card-bg: #ffffff;
    --color-card-border: #D1D5DB;
    --color-surface: #F0F2F2;
    --color-surface-hover: #e8ebea;

    /* Espacements sections */
    --spacing-section: 8rem;
    --spacing-section-sm: 4rem;

    /* Rythme vertical entre sections / blocs (responsive plus bas) */
    --section-gap: 5rem;   /* gap entre grandes sections (page produit) */
    --block-gap: 2.5rem;   /* gap entre blocs rapprochés (page département) */

    /* Typographie fluide */
    --fs-hero: clamp(2rem, 5vw, 3.5rem);
    --fs-section-title: clamp(1.6rem, 3.5vw, 2.5rem);
    --fs-section-title-lg: clamp(1.8rem, 4vw, 2.8rem);
    --fs-card-title: clamp(1.1rem, 2vw, 1.3rem);
    --fs-body: 1rem;
    --fs-small: 0.95rem;

    /* Radius */
    --radius-card: 24px;
    --radius-card-sm: 12px;
    --radius-icon: 0.8rem;

    /* Ombres */
    --shadow-card: 0 10px 20px rgba(0, 0, 0, 0.1);
    --shadow-card-hover: 0 8px 16px rgba(0, 0, 0, 0.12);
    --shadow-form: 0 10px 40px rgba(0, 0, 0, 0.06);

    /* Transitions */
    --transition-base: 0.3s ease;
    --transition-card: max-height 0.35s ease-in-out, opacity 0.35s ease-in-out;

    /* Max widths */
    --max-width-content: 1200px;
    --max-width-wide: 1400px;
}

/* ── 4K & très grands écrans ── */
@media (min-width: 2560px) {
    :root {
        --spacing-section: 12rem;
        --spacing-section-sm: 6rem;
        --section-gap: 6rem;
        --block-gap: 3rem;
        --max-width-content: 1600px;
        --max-width-wide: 1900px;
    }
}

/* ── Rythme vertical responsive ── */
@media (max-width: 1280px) {
    :root {
        --section-gap: 4rem;
        --block-gap: 2rem;
    }
}

@media (max-width: 1024px) {
    :root {
        --section-gap: 3.5rem;
        --block-gap: 2rem;
    }
}

@media (max-width: 768px) {
    :root {
        --section-gap: 2.5rem;
        --block-gap: 1.5rem;
    }
}

@media (max-width: 480px) {
    :root {
        --section-gap: 2rem;
        --block-gap: 1.25rem;
    }
}
