/* OpensPlace — Harmonisation site-wide 2026
 * Charge APRÈS site.min.css et header-modern.css.
 * Aligne palette + typo sur le design system de la home (corail #D85A30,
 * crème #FAF7F2, ink #1A1A1A, Inter + Fraunces).
 */

:root {
    /* Tokens de marque */
    --op-brand:       #D85A30;
    --op-brand-deep:  #B8431F;
    --op-brand-soft:  #FBE9E1;
    --op-ink:         #1A1A1A;
    --op-ink-soft:    #2C2C2C;
    --op-ink-muted:   #6B6B6B;
    --op-line:        rgba(0, 0, 0, 0.1);
    --op-bg:          #FFFFFF;
    --op-bg-cream:    #FAF7F2;
    --op-white:       #FFFFFF;

    /* Typographies */
    --op-serif:  "Fraunces", "Cormorant Garamond", Georgia, "Times New Roman", serif;
    --op-sans:   "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;

    /* Compatibilité avec les variables legacy (header-modern.css, etc.) */
    --brand:     #D85A30;
    --brand2:    #B8431F;
    --primary:   #D85A30;
    --accent:    #D85A30;
    --text:      #1A1A1A;
    --muted:     #6B6B6B;
    --sand:      #FAF7F2;
    --sand2:     #FAF7F2;
    --border:    rgba(0, 0, 0, 0.1);
}

/* ── Typographie globale ──────────────────────────────────────────── */
html, body {
    font-family: var(--op-sans);
    color: var(--op-ink-soft);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body :where(h1, h2, h3, h4) {
    font-family: var(--op-serif);
    color: var(--op-ink);
    font-weight: 500;
    letter-spacing: -0.01em;
    line-height: 1.15;
}
body :where(h1, h2) em {
    font-style: italic;
    color: var(--op-brand);
    font-weight: 500;
}

/* ── Liens ─────────────────────────────────────────────────────────── */
body a:not(.button):not(.btn):not([class*="hp-"]):not(#btn-inscription):not(#btn-connexion):not(.nav-modern > a):not(.nav-dropdown-trigger) {
    transition: color .18s ease;
}
body a:not(.button):not(.btn):not([class*="hp-"]):not(#btn-inscription):not(#btn-connexion):not(.nav-modern > a):not(.nav-dropdown-trigger):hover {
    color: var(--op-brand);
}

/* ── Boutons Bulma .button.is-primary → corail ────────────────────── */
.button.is-primary,
.button.is-link {
    background-color: var(--op-brand) !important;
    border-color: var(--op-brand) !important;
    color: var(--op-white) !important;
    font-family: var(--op-sans);
    font-weight: 500;
    border-radius: 999px;
    transition: background-color .18s ease, transform .18s ease;
}
.button.is-primary:hover,
.button.is-link:hover {
    background-color: var(--op-brand-deep) !important;
    border-color: var(--op-brand-deep) !important;
    transform: translateY(-2px);
}
.button.is-primary.is-outlined,
.button.is-link.is-outlined {
    background-color: transparent !important;
    color: var(--op-brand) !important;
}

.button.is-info,
.button.is-success {
    border-radius: 999px;
}

/* Tag Bulma “is-primary” */
.tag.is-primary,
.tag.is-link {
    background-color: var(--op-brand-soft) !important;
    color: var(--op-brand-deep) !important;
}

/* ── Generic .btn (legacy custom) → harmonisation corail ──────────── */
.btn-primary,
.btn-hero-primary {
    background: var(--op-brand) !important;
    border-color: var(--op-brand) !important;
    color: var(--op-white) !important;
    border-radius: 999px;
    font-weight: 500;
    transition: background .18s ease, transform .18s ease;
}
.btn-primary:hover,
.btn-hero-primary:hover {
    background: var(--op-brand-deep) !important;
    border-color: var(--op-brand-deep) !important;
    transform: translateY(-2px);
}

/* ── Inputs : focus ring corail ───────────────────────────────────── */
.input:focus,
.textarea:focus,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
    border-color: var(--op-brand) !important;
    box-shadow: 0 0 0 3px rgba(216, 90, 48, 0.18) !important;
    outline: none;
}

/* ── Header sticky : fond blanc opaque + ombre douce au scroll ────── */
.header-modern {
    background: rgba(255, 255, 255, 0.92);
}
.header-modern.is-scrolled {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
    border-bottom-color: var(--op-line) !important;
}

/* ── Nav active / hover legacy → corail ──────────────────────────── */
.nav-modern > a:hover,
.nav-modern > a.is-active,
.nav-dropdown-trigger:hover {
    color: var(--op-brand) !important;
    background: var(--op-brand-soft) !important;
}
.nav-modern > a::after,
.nav-dropdown-trigger::after {
    background: var(--op-brand) !important;
}

/* ── Selection ────────────────────────────────────────────────────── */
::selection { background: var(--op-brand-soft); color: var(--op-ink); }
