/*
 * LéopardsTech.cd — UI Override v2
 * Modernisation visuelle : Plus Jakarta Sans, design aéré, palette orange/terracotta exacte
 * Ne modifie aucun contenu ni aucune structure — uniquement le style.
 * ============================================================ */

/* ── 1. TYPOGRAPHIE — Plus Jakarta Sans ───────────────────────
   Remplace DM Sans par Plus Jakarta Sans (plus moderne, plus propre)
   DM Serif Display conservé pour les titres éditoriaux
   ─────────────────────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');

:root {
    /* Couleurs exactes extraites de l'UI actuelle */
    --orange:      #e05a2b;   /* orange terracotta du logo + bouton Référencer */
    --orange-2:    #f06b38;   /* orange hover */
    --orange-p:    rgba(224, 90, 43, .08);
    --orange-m:    rgba(224, 90, 43, .18);

    /* Surfaces */
    --white:       #ffffff;
    --off:         #f8f7f5;   /* fond global — légèrement plus chaud */
    --sand:        #f2f0ec;
    --sand-2:      #e9e6e0;
    --sand-3:      #dbd7cf;

    /* Texte */
    --ink:         #111111;
    --ink-2:       #333333;
    --ink-3:       #767676;
    --ink-4:       #aaaaaa;

    /* Bords */
    --border:      rgba(0, 0, 0, .08);
    --border-2:    rgba(0, 0, 0, .14);

    /* Ombres — légères et nettes, pas de flou excessif */
    --shadow:      0 1px 3px rgba(0,0,0,.05), 0 4px 12px rgba(0,0,0,.06);
    --shadow-lg:   0 4px 16px rgba(0,0,0,.08), 0 16px 40px rgba(0,0,0,.07);
    --shadow-card: 0 2px 8px rgba(0,0,0,.06);

    /* Rayons — plus généreux, style moderne */
    --r:           8px;
    --r-lg:        14px;
    --r-xl:        20px;

    /* Transitions */
    --tr:          .22s cubic-bezier(.4, 0, .2, 1);
}

/* Police de base */
body,
.site-nav,
.filters-bar,
.acteur-card,
.modal,
.btn-add,
button,
input,
select,
textarea {
    font-family: 'Plus Jakarta Sans', 'DM Sans', sans-serif !important;
}


/* ── 2. NAV — Épuré, blanc pur, plus aéré ────────────────────
   ─────────────────────────────────────────────────────────── */
.site-nav {
    background: rgba(255, 255, 255, .97) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border-bottom: 1px solid var(--border) !important;
    height: 68px !important;
    box-shadow: 0 1px 0 rgba(0,0,0,.05) !important;
}

.nav-inner {
    padding: 0 56px !important;
}

/* Logo — plus affirmé */
.nav-brand-logo {
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    letter-spacing: -.3px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    color: var(--ink) !important;
}
.nav-brand-logo span:first-child { color: var(--orange) !important; }
.nav-brand-logo span:last-child  { color: var(--orange) !important; font-weight: 400 !important; }

/* Compteur acteurs */
.nav-count {
    font-size: .75rem !important;
    font-weight: 500 !important;
    background: var(--sand) !important;
    border: 1.5px solid var(--border) !important;
    border-radius: 100px !important;
    padding: 5px 14px !important;
    color: var(--ink-3) !important;
    letter-spacing: -.1px !important;
}
.nav-count span {
    color: var(--orange) !important;
    font-weight: 700 !important;
}

/* Bouton Référencer */
.btn-add {
    background: var(--orange) !important;
    color: #fff !important;
    font-size: .78rem !important;
    font-weight: 600 !important;
    padding: 9px 20px !important;
    border-radius: 100px !important;      /* full pill */
    letter-spacing: -.1px !important;
    border: none !important;
    gap: 7px !important;
    transition: var(--tr) !important;
    box-shadow: 0 2px 8px rgba(224, 90, 43, .25) !important;
}
.btn-add:hover {
    background: var(--orange-2) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 16px rgba(224, 90, 43, .32) !important;
}
.btn-add svg { fill: #fff !important; width: 14px !important; height: 14px !important; }


/* ── 3. HERO — Fond foncé, typographie grande, épuré ─────────
   ─────────────────────────────────────────────────────────── */
.hero {
    padding: 110px 0 80px !important;
    background: #0f0e0d !important;   /* légèrement plus chaud que pur noir */
}

.hero::before {
    background:
        radial-gradient(ellipse 55% 70% at 85% 40%, rgba(224, 90, 43, .14), transparent 65%),
        radial-gradient(ellipse 40% 50% at 5% 90%,  rgba(224, 90, 43, .05), transparent 60%)
    !important;
}

/* Grille de fond — plus subtile */
.hero-grid-deco {
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px)
    !important;
    background-size: 80px 80px !important;
}

/* Kicker */
.hero-kicker {
    font-size: .65rem !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: rgba(255,255,255,.35) !important;
    margin-bottom: 24px !important;
}
.kicker-dot {
    background: var(--orange) !important;
    width: 5px !important;
    height: 5px !important;
}

/* Titre hero */
.hero-title {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: clamp(2.8rem, 5.5vw, 4.8rem) !important;
    font-weight: 700 !important;
    line-height: 1.03 !important;
    letter-spacing: -1.5px !important;
    color: #fff !important;
    margin-bottom: 22px !important;
    max-width: 780px !important;
}
.hero-title em {
    font-style: italic !important;
    color: var(--orange) !important;
    font-weight: 300 !important;
}

/* Description */
.hero-desc {
    font-size: 1rem !important;
    line-height: 1.8 !important;
    color: rgba(255,255,255,.45) !important;
    max-width: 520px !important;
    margin-bottom: 52px !important;
    font-weight: 300 !important;
}

/* Pills de groupes dans le hero */
.hero-group-pill {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(255,255,255,.09) !important;
    border-radius: 100px !important;
    padding: 10px 18px !important;
    gap: 10px !important;
    backdrop-filter: blur(4px) !important;
    transition: var(--tr) !important;
}
.hero-group-pill:hover {
    background: rgba(255,255,255,.09) !important;
    border-color: rgba(255,255,255,.15) !important;
}
.hero-group-label {
    font-size: .75rem !important;
    font-weight: 500 !important;
    color: rgba(255,255,255,.55) !important;
    letter-spacing: -.1px !important;
}
.hero-group-count {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: .95rem !important;
    color: #fff !important;
}


/* ── 4. BARRE DE FILTRES — Blanc, structurée ─────────────────
   ─────────────────────────────────────────────────────────── */
.filters-bar {
    background: var(--white) !important;
    border-bottom: 1px solid var(--border) !important;
    padding: 12px 0 !important;
    top: 68px !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.04) !important;
}

/* Champ recherche */
#searchInput {
    background: var(--off) !important;
    border: 1.5px solid var(--border) !important;
    border-radius: 100px !important;
    font-size: .84rem !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    padding: 9px 14px 9px 36px !important;
    color: var(--ink) !important;
    transition: var(--tr) !important;
}
#searchInput:focus {
    border-color: var(--orange) !important;
    background: var(--white) !important;
    box-shadow: 0 0 0 3px var(--orange-p) !important;
    outline: none !important;
}
#searchInput::placeholder { color: var(--ink-4) !important; }

/* Label de section filtre */
.filter-label {
    font-size: .62rem !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: var(--ink-4) !important;
}

/* Chips groupe */
.chip {
    font-size: .74rem !important;
    font-weight: 500 !important;
    padding: 6px 16px !important;
    border-radius: 100px !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    color: var(--ink-3) !important;
    transition: var(--tr) !important;
    letter-spacing: -.1px !important;
}
.chip:hover {
    border-color: var(--orange) !important;
    color: var(--orange) !important;
}
/* Chip actif — Tous */
.chip.on-all {
    background: var(--orange) !important;
    border-color: var(--orange) !important;
    color: #fff !important;
    font-weight: 600 !important;
}

/* Dropdown villes */
#villeFilter {
    font-size: .78rem !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    padding: 7px 14px !important;
    border-radius: 100px !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    color: var(--ink-2) !important;
    cursor: pointer !important;
    transition: var(--tr) !important;
    outline: none !important;
}
#villeFilter:focus { border-color: var(--orange) !important; }

/* Boutons vue grille/liste */
.view-btn {
    width: 34px !important;
    height: 34px !important;
    border-radius: var(--r) !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    transition: var(--tr) !important;
}
.view-btn svg { fill: var(--ink-4) !important; }
.view-btn.active {
    background: var(--orange) !important;
    border-color: var(--orange) !important;
}
.view-btn.active svg { fill: #fff !important; }


/* ── 5. CORPS PRINCIPAL — Fond off-white, aéré ───────────────
   ─────────────────────────────────────────────────────────── */
.site-main {
    background: var(--off) !important;
    padding: 48px 0 96px !important;
}

/* Titre de section */
.sec-header {
    padding: 28px 0 18px !important;
    margin-bottom: 24px !important;
    margin-top: 60px !important;
    border-bottom: 1.5px solid var(--border) !important;
}
.sec-title {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 1.3rem !important;
    font-weight: 700 !important;
    letter-spacing: -.3px !important;
    color: var(--ink) !important;
}
.sec-badge {
    font-size: .62rem !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    padding: 4px 10px !important;
    border-radius: 100px !important;
    text-transform: uppercase !important;
}
.sec-pages {
    font-size: .72rem !important;
    color: var(--ink-4) !important;
    margin-left: auto !important;
    font-weight: 500 !important;
}

/* Onglets catégories */
.cat-tab {
    font-size: .72rem !important;
    font-weight: 500 !important;
    padding: 5px 13px !important;
    border-radius: 100px !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    color: var(--ink-3) !important;
    transition: var(--tr) !important;
    letter-spacing: -.05px !important;
}
.cat-tab:hover {
    border-color: var(--orange) !important;
    color: var(--orange) !important;
}
.cat-tab.on.startup,
.cat-tab.on.accomp,
.cat-tab.on.finance,
.cat-tab.on.international {
    border-color: var(--orange) !important;
    color: var(--orange) !important;
    background: var(--orange-p) !important;
    font-weight: 600 !important;
}


/* ── 6. CARTES ACTEURS — Blanches, légères, aérées ───────────
   Moins d'ombre, coins plus ronds, barre couleur plus subtile
   ─────────────────────────────────────────────────────────── */
.acteur-card {
    background: var(--white) !important;
    border: 1.5px solid var(--border) !important;
    border-radius: var(--r-lg) !important;
    padding: 22px !important;
    box-shadow: none !important;
    transition: box-shadow var(--tr), transform var(--tr), border-color var(--tr) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* Barre couleur gauche — plus fine et subtile */
.acteur-card::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 16px !important;
    bottom: 16px !important;
    width: 2.5px !important;
    border-radius: 0 2px 2px 0 !important;
    opacity: 0 !important;
    transition: opacity var(--tr) !important;
}

.acteur-card:hover {
    box-shadow: var(--shadow-card) !important;
    transform: translateY(-3px) !important;
    border-color: rgba(0,0,0,.12) !important;
}
.acteur-card:hover::before { opacity: 1 !important; }

/* Logo / initiale */
.card-logo {
    width: 42px !important;
    height: 42px !important;
    border-radius: 10px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    border: 1.5px solid var(--border) !important;
}
.card-logo img {
    border-radius: 9px !important;
    object-fit: contain !important;
}

/* Nom de l'acteur */
.card-name {
    font-size: .92rem !important;
    font-weight: 600 !important;
    color: var(--ink) !important;
    letter-spacing: -.1px !important;
    line-height: 1.25 !important;
}

/* Badge catégorie */
.card-cat {
    font-size: .6rem !important;
    font-weight: 700 !important;
    letter-spacing: .8px !important;
    text-transform: uppercase !important;
    padding: 3px 8px !important;
    border-radius: 100px !important;
}
.card-cat-detail {
    font-size: .6rem !important;
    padding: 3px 8px !important;
    border-radius: 100px !important;
    background: var(--sand) !important;
    color: var(--ink-3) !important;
}

/* Description */
.card-desc {
    font-size: .82rem !important;
    line-height: 1.7 !important;
    color: var(--ink-3) !important;
    margin-bottom: 14px !important;
}

/* Ville + fondateurs */
.card-city  { font-size: .72rem !important; color: var(--ink-4) !important; }
.card-founders { font-size: .76rem !important; color: var(--ink-2) !important; }

/* Liens de contact */
.card-link {
    font-size: .7rem !important;
    font-weight: 500 !important;
    padding: 5px 11px !important;
    border-radius: 100px !important;
    background: var(--off) !important;
    border: 1px solid var(--border) !important;
    color: var(--ink-3) !important;
    transition: var(--tr) !important;
}
.card-link:hover {
    color: var(--orange) !important;
    background: var(--orange-p) !important;
    border-color: var(--orange-m) !important;
}

/* Badge vérifié */
.card-verified {
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    top: 12px !important;
    right: 12px !important;
}

/* Badge Majeur (étoile) */
.card-majeur-badge {
    top: 12px !important;
    right: 38px !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
}

/* Lien sur la tête de carte */
.card-head-link:hover .card-name { color: var(--orange) !important; }


/* ── 7. PAGINATION ────────────────────────────────────────────
   ─────────────────────────────────────────────────────────── */
.pagination-wrap {
    margin-top: 32px !important;
    padding-top: 24px !important;
    border-top: 1.5px solid var(--border) !important;
}
.page-btn {
    min-width: 36px !important;
    height: 36px !important;
    border-radius: var(--r) !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: .8rem !important;
    font-weight: 500 !important;
    color: var(--ink-3) !important;
    transition: var(--tr) !important;
}
.page-btn:hover:not(.disabled):not(.current) {
    border-color: var(--orange) !important;
    color: var(--orange) !important;
}
.page-btn.current {
    background: var(--orange) !important;
    border-color: var(--orange) !important;
    color: #fff !important;
    font-weight: 700 !important;
}
.pagination-info {
    font-size: .74rem !important;
    color: var(--ink-4) !important;
    font-weight: 400 !important;
}
.pagination-info strong { color: var(--ink-2) !important; font-weight: 600 !important; }


/* ── 8. SECTION CARTE + 5 MAJEURS ────────────────────────────
   ─────────────────────────────────────────────────────────── */
.map-sec {
    background: var(--white) !important;
    padding: 60px 0 !important;
    border-bottom: 1px solid var(--border) !important;
    border-top: 1px solid var(--border) !important;
}

/* Kickers et titres de section */
.kicker {
    font-size: .62rem !important;
    font-weight: 700 !important;
    letter-spacing: 2.5px !important;
    text-transform: uppercase !important;
    color: var(--orange) !important;
}
.headline-md {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    letter-spacing: -.4px !important;
    color: var(--ink) !important;
    line-height: 1.15 !important;
}

/* Carte SVG */
.map-svg-holder {
    background: var(--off) !important;
    border: 1.5px solid var(--border) !important;
    border-radius: var(--r-lg) !important;
}
.rdc-shape {
    fill: var(--sand-2) !important;
    stroke: var(--sand-3) !important;
    stroke-width: 1.5 !important;
}
.map-point-dot {
    fill: var(--orange) !important;
}
.map-point-halo { fill: var(--orange) !important; opacity: .08 !important; }
.map-point:hover .map-point-halo { opacity: .18 !important; }
.map-point-label { fill: var(--ink-2) !important; font-family: 'Plus Jakarta Sans', sans-serif !important; }

/* Légende carte */
.map-legend-item {
    font-size: .78rem !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 500 !important;
    border-radius: var(--r) !important;
    padding: 9px 14px !important;
    border: 1.5px solid var(--border) !important;
    background: var(--off) !important;
    transition: var(--tr) !important;
}
.map-legend-item:hover {
    border-color: var(--orange) !important;
    background: var(--orange-p) !important;
}
.map-legend-item strong { color: var(--orange) !important; font-weight: 700 !important; }
.map-legend-dot { background: var(--orange) !important; }

/* 5 Majeurs sidebar */
.majeurs-sidebar .kicker { margin-bottom: 10px !important; }
.majeurs-title {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -.5px !important;
    color: var(--ink) !important;
}
.majeurs-sub {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-style: italic !important;
    font-size: .88rem !important;
    color: var(--ink-3) !important;
}

.majeur-item {
    border-radius: var(--r) !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    padding: 10px 12px !important;
    transition: var(--tr) !important;
}
.majeur-item:hover {
    border-color: var(--orange) !important;
    background: var(--orange-p) !important;
    transform: translateX(3px) !important;
}
.majeur-rank {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    font-size: .75rem !important;
    color: var(--orange) !important;
}
.majeur-logo { border-radius: 8px !important; border: 1.5px solid var(--border) !important; }
.majeur-name { font-size: .78rem !important; font-weight: 600 !important; color: var(--ink) !important; }
.majeur-cat  { font-size: .65rem !important; color: var(--ink-4) !important; }


/* ── 9. MODAL SOUMISSION ──────────────────────────────────────
   ─────────────────────────────────────────────────────────── */
.modal {
    border-radius: var(--r-xl) !important;
    box-shadow: 0 24px 64px rgba(0,0,0,.18) !important;
    padding: 40px !important;
}
.modal-title {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    letter-spacing: -.3px !important;
    color: var(--ink) !important;
}
.modal-sub {
    font-size: .84rem !important;
    color: var(--ink-3) !important;
    line-height: 1.65 !important;
}
.modal-close {
    border-radius: 50% !important;
    background: var(--off) !important;
    border: 1.5px solid var(--border) !important;
}

/* Champs du formulaire */
.fg label {
    font-size: .62rem !important;
    font-weight: 700 !important;
    letter-spacing: 1.8px !important;
    text-transform: uppercase !important;
    color: var(--ink-2) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
}
.fg input, .fg textarea, .fg select {
    background: var(--off) !important;
    border: 1.5px solid var(--border) !important;
    border-radius: var(--r) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: .88rem !important;
    color: var(--ink) !important;
}
.fg input:focus, .fg textarea:focus, .fg select:focus {
    border-color: var(--orange) !important;
    background: var(--white) !important;
    box-shadow: 0 0 0 3px var(--orange-p) !important;
}

/* Bouton Soumettre */
.btn-submit {
    background: var(--orange) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .84rem !important;
    padding: 12px 28px !important;
    border-radius: 100px !important;
    box-shadow: 0 2px 8px rgba(224, 90, 43, .25) !important;
    transition: var(--tr) !important;
}
.btn-submit:hover {
    background: var(--orange-2) !important;
    box-shadow: 0 4px 16px rgba(224, 90, 43, .32) !important;
    transform: translateY(-1px) !important;
}
.btn-cancel {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 500 !important;
    border-radius: 100px !important;
    border: 1.5px solid var(--border) !important;
}

/* Upload logo */
.logo-upload-wrap {
    border-radius: var(--r) !important;
    border: 1.5px dashed var(--border-2) !important;
    background: var(--off) !important;
}
.logo-upload-btn {
    border-radius: 100px !important;
    background: var(--ink) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: .74rem !important;
}


/* ── 10. TOAST ────────────────────────────────────────────────
   ─────────────────────────────────────────────────────────── */
.toast {
    border-radius: var(--r-lg) !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: .82rem !important;
    font-weight: 500 !important;
    padding: 14px 22px !important;
    background: var(--ink) !important;
    box-shadow: 0 8px 32px rgba(0,0,0,.2) !important;
}
.toast.success { background: #1a6b3a !important; }
.toast.error   { background: #c0392b !important; }


/* ── 11. FOOTER ───────────────────────────────────────────────
   ─────────────────────────────────────────────────────────── */
.site-footer {
    background: #0f0e0d !important;
    padding: 36px 0 !important;
    border-top: none !important;
}
.footer-copy {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: .72rem !important;
    color: rgba(255,255,255,.25) !important;
    font-weight: 400 !important;
    letter-spacing: .3px !important;
}
.footer-links a {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: .72rem !important;
    font-weight: 500 !important;
    color: rgba(255,255,255,.3) !important;
    transition: color var(--tr) !important;
}
.footer-links a:hover { color: rgba(255,255,255,.75) !important; }
.footer-attribution {
    font-style: italic !important;
    opacity: .65 !important;
}


/* ── 12. PAGE DÉTAIL ACTEUR (single-acteur.php) ───────────────
   ─────────────────────────────────────────────────────────── */
.actor-hero {
    padding: 110px 0 60px !important;
    background: #0f0e0d !important;
}
.actor-title {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -.5px !important;
}
.actor-back {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: .74rem !important;
    font-weight: 600 !important;
    letter-spacing: .5px !important;
}
.actor-card-info,
.actor-card-contact {
    border-radius: var(--r-lg) !important;
    border: 1.5px solid var(--border) !important;
    background: var(--off) !important;
}
.actor-card-title {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    font-size: .65rem !important;
}
.actor-contact-btn {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 500 !important;
    border-radius: var(--r) !important;
    border: 1.5px solid var(--border) !important;
}
.actor-contact-btn--primary {
    background: var(--orange) !important;
    border-color: var(--orange) !important;
    border-radius: 100px !important;
    font-weight: 600 !important;
}
.actor-contact-btn--primary:hover {
    background: var(--orange-2) !important;
    color: #fff !important;
}

/* Badge stade de financement */
.card-stage-badge {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    border-radius: 100px !important;
    font-size: .64rem !important;
}
.card-funding-amt {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    border-radius: 100px !important;
    font-size: .68rem !important;
    color: #1a6b3a !important;
    background: rgba(26,107,58,.08) !important;
    border-color: rgba(26,107,58,.18) !important;
}


/* ── 13. SPINNER & ÉTATS ──────────────────────────────────────
   ─────────────────────────────────────────────────────────── */
.spinner {
    border: 2.5px solid var(--sand-3) !important;
    border-top-color: var(--orange) !important;
}
.empty-state h3 {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    color: var(--ink-2) !important;
}


/* ── 14. RESPONSIVE ───────────────────────────────────────────
   ─────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
    .nav-inner { padding: 0 20px !important; }
    .hero-title { letter-spacing: -.8px !important; }
    .wrap { padding: 0 20px !important; }
}

@media (max-width: 600px) {
    .btn-add { padding: 8px 16px !important; font-size: .74rem !important; }
    .modal { padding: 24px !important; border-radius: var(--r-lg) !important; }
    .hero-group-pill { padding: 8px 14px !important; }
}
