.elementor-1406 .elementor-element.elementor-element-e7547fe{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for shortcode, class: .elementor-element-1bda919 *//* =====================================================
   CSS — PAGE DÉCOUVRIR ERRE [erre_decouvrir]
   Dépendances : erre_couleur_css.php (--bg --text --h1 --h2-h5 --accent-h1)
                 erre_typo_css.php    (.eyebrow, h1, h2…h5, p — pas de font-size ici)
   Nouvelles couleurs héraldiques : #29450C (vert) · #FDCC06 (or) · #DC0303 (rouge)
   ===================================================== */

/* ── GLOBAL SVG icons dans le shortcode */
.erre-de-page svg { display:inline-block; vertical-align:middle; }

/* ── Wrappers communs */
.erre-de-hero-inner,
.erre-de-intro-inner,
.erre-de-chiffres-inner,
.erre-de-loca-inner,
.erre-de-pnr-inner,
.erre-de-patrimoine-inner,
.erre-de-galerie-inner,
.erre-de-asso-inner,
.erre-de-venir-inner,
.erre-de-cta-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
}

/* ── Bloc shared : eyebrow + h2 + subtitle ── */
.erre-de-section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: color-mix(in srgb, var(--h2-h5, #29450C) 12%, white);
    color: var(--h2-h5, #29450C);
    border-radius: 20px;
    padding: 5px 14px;
    margin-bottom: 14px;
}
.erre-de-section-eyebrow svg { width: 14px; height: 14px; stroke: var(--h2-h5, #29450C); }
.erre-de-eyebrow--light {
    background: rgba(255,255,255,.15);
    color: #fff;
}
.erre-de-eyebrow--light svg { stroke: #FDCC06; }

.erre-de-section-title { color: var(--h2-h5, #29450C); margin-bottom: 12px; }
.erre-de-section-title--light { color: #fff !important; }
.erre-de-section-subtitle { color: var(--text, #3d4a3f); margin-top: 4px; }

/* ══════════════════════════════════════════════════════
   1. HERO
══════════════════════════════════════════════════════ */

.erre-de-hero {
    position: relative;
    min-height: 520px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: var(--bg, #29450C);
}
.erre-de-hero-landscape {
    position: absolute;
    inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
}
.erre-de-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        135deg,
        rgba(41,69,12,.75) 0%,
        rgba(41,69,12,.45) 60%,
        rgba(253,204,6,.12) 100%
    );
}
.erre-de-hero-content {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    padding: 80px 24px 60px;
    width: 100%;
}
/* Tag hero */
.erre-de-hero-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(253,204,6,.18);
    border: 1.5px solid rgba(253,204,6,.5);
    color: #FDCC06;
    border-radius: 24px;
    padding: 6px 18px;
    margin-bottom: 20px;
}
.erre-de-hero-tag svg { width: 14px; height: 14px; stroke: #FDCC06; }
/* H1 : pas de font-size — hérité de erre_typo_css.php rôle H1 */
.erre-de-hero-title { color: #fff; margin-bottom: 16px; }
/* Desc : pas de font-size — hérité typo corps */
.erre-de-hero-desc  { color: rgba(255,255,255,.82); max-width: 640px; margin-bottom: 36px; }

/* Chiffres hero */
.erre-de-hero-chiffres {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    margin-top: 40px;
    padding-top: 32px;
    border-top: 1px solid rgba(255,255,255,.15);
}
.erre-de-hero-chiffre {
    flex: 1 1 140px;
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(6px);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 12px;
    padding: 18px 20px;
    text-align: center;
}
/* Chiffre num — interface, taille fixe assumée */
.erre-de-hero-chiffre-num {
    display: block;
    font-size: 28px;
    font-weight: 800;
    color: #FDCC06;
    line-height: 1;
    margin-bottom: 6px;
}
.erre-de-hero-chiffre-label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: rgba(255,255,255,.65);
}

/* ══════════════════════════════════════════════════════
   2. PRÉSENTATION & BLASON
══════════════════════════════════════════════════════ */

.erre-de-intro { background: var(--bg, #fff); padding: 80px 0; }
.erre-de-intro-inner { display: grid; grid-template-columns: 1fr 340px; gap: 72px; align-items: start; }
/* Texte — pas de font-size/font-family sur les p */
.erre-de-intro-body { color: var(--text, #3d4a3f); line-height: 1.8; margin-top: 16px; }
.erre-de-intro-body + .erre-de-intro-body { margin-top: 12px; }

/* Blason */
.erre-de-blason-side { text-align: center; }
.erre-de-blason-frame {
    background: #f7f5f0;
    border-radius: 16px;
    padding: 32px;
    border: 2px solid rgba(41,69,12,.1);
    display: inline-block;
    margin-bottom: 16px;
}
.erre-de-blason-svg { width: 120px; height: auto; display: block; margin: 0 auto; }
.erre-de-blason-title  { font-weight: 700; color: #29450C; font-size: 13px; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px; }
.erre-de-blason-legend { font-style: italic; color: #555; font-size: 13px; display: block; margin-bottom: 4px; }
.erre-de-blason-devise { font-size: 11px; color: #999; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }

/* ══════════════════════════════════════════════════════
   3. CHIFFRES CLÉS
══════════════════════════════════════════════════════ */

.erre-de-chiffres { background: var(--bg, #29450C); padding: 72px 0; }
/* Eyebrow en version light (au-dessus du fond vert) */
.erre-de-chiffres .erre-de-chiffres-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(253,204,6,.18);
    border: 1.5px solid rgba(253,204,6,.4);
    color: #FDCC06;
    border-radius: 20px;
    padding: 5px 16px;
    margin-bottom: 32px;
}
.erre-de-chiffres-eyebrow svg { width: 14px; height: 14px; stroke: #FDCC06; }
.erre-de-chiffres-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}
.erre-de-chiffre-card {
    background: rgba(255,255,255,.08);
    border: 1.5px solid rgba(255,255,255,.12);
    border-radius: 16px;
    padding: 28px 20px;
    text-align: center;
    transition: transform .2s, background .2s;
}
.erre-de-chiffre-card:hover { transform: translateY(-4px); background: rgba(255,255,255,.13); }
.erre-de-chiffre-icon { margin-bottom: 12px; }
.erre-de-chiffre-icon svg { width: 28px; height: 28px; stroke: #FDCC06; }
/* Chiffre numéro — interface, taille fixe */
.erre-de-chiffre-num { display: block; font-size: 30px; font-weight: 800; color: #FDCC06; line-height: 1; margin-bottom: 8px; }
/* Label chiffre — interface, taille fixe */
.erre-de-chiffre-label { font-size: 12px; font-weight: 600; color: rgba(255,255,255,.7); line-height: 1.4; }

/* ══════════════════════════════════════════════════════
   4. LOCALISATION
══════════════════════════════════════════════════════ */

.erre-de-loca { background: var(--bg, #F4F4EF); padding: 80px 0; }
.erre-de-loca-layout { display: grid; grid-template-columns: 1.2fr 1fr; gap: 52px; align-items: start; margin-bottom: 32px; }

/* Carte Leaflet */
.erre-de-map-wrap { position: relative; border-radius: 18px; overflow: hidden; box-shadow: 0 8px 40px rgba(41,69,12,.18); }
#erre-de-map { height: 400px; width: 100%; background: #e8f0e8; }
.erre-de-map-legend {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: rgba(255,255,255,.95);
    border-radius: 10px;
    padding: 10px 14px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    box-shadow: 0 2px 10px rgba(0,0,0,.12);
    z-index: 500;
}
.erre-de-map-legend-item { display: flex; align-items: center; gap: 8px; font-size: 11px; font-weight: 700; color: #333; }
.erre-de-map-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }

/* Texte loca */
.erre-de-loca-text { padding-top: 8px; }
.erre-de-loca-body { color: var(--text, #3d4a3f); line-height: 1.8; margin-top: 12px; }

/* Chips */
.erre-de-loca-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.erre-de-chip {
    display: inline-flex; align-items: center; gap: 6px;
    background: color-mix(in srgb, #29450C 10%, white);
    color: #29450C;
    border-radius: 20px;
    padding: 5px 12px;
    font-size: 12px;
    font-weight: 800;
}
.erre-de-chip svg { width: 12px; height: 12px; stroke: #29450C; }
.erre-de-chip--orange { background: #fff4f0; color: #DC0303; }
.erre-de-chip--orange svg { stroke: #DC0303; }

/* 3 cards horizontales */
.erre-de-loca-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.erre-de-loca-card {
    background: #fff;
    border-radius: 14px;
    padding: 22px 22px 20px;
    border-left: 4px solid #29450C;
    box-shadow: 0 2px 16px rgba(41,69,12,.1);
    transition: transform .2s, box-shadow .2s;
}
.erre-de-loca-card:hover { transform: translateY(-3px); box-shadow: 0 8px 28px rgba(41,69,12,.15); }
.erre-de-loca-card--orange { border-left-color: #DC0303; }
.erre-de-loca-card--bleu   { border-left-color: #1d4ed8; }
.erre-de-loca-card-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.erre-de-loca-icon {
    width: 38px; height: 38px;
    background: color-mix(in srgb, #29450C 10%, white);
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.erre-de-loca-icon svg { width: 18px; height: 18px; stroke: #29450C; }
.erre-de-loca-icon--orange { background: #fff0ee; }
.erre-de-loca-icon--orange svg { stroke: #DC0303; }
.erre-de-loca-icon--bleu   { background: #eff6ff; }
.erre-de-loca-icon--bleu svg   { stroke: #1d4ed8; }
/* Card title — interface micro-texte, taille fixe assumée */
.erre-de-loca-card-title { font-size: 15px; font-weight: 800; color: #1e2a22; margin: 0; }
.erre-de-loca-items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.erre-de-loca-items li { display: flex; align-items: flex-start; gap: 8px; font-size: 13px; color: #444; line-height: 1.5; }
.erre-de-loca-items li svg { width: 14px; height: 14px; stroke: #29450C; flex-shrink: 0; margin-top: 2px; }

/* ══════════════════════════════════════════════════════
   5. PNR SCARPE-ESCAUT
══════════════════════════════════════════════════════ */

.erre-de-pnr {
    background: var(--bg, #0e2418);
    padding: 88px 0;
    position: relative;
    overflow: hidden;
}
/* Motif subtil en fond */
.erre-de-pnr::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle at 80% 50%, rgba(253,204,6,.06) 0%, transparent 60%);
    pointer-events: none;
}
.erre-de-pnr-layout { display: grid; grid-template-columns: 1fr 280px; gap: 64px; align-items: start; position: relative; }
.erre-de-pnr-desc { color: rgba(255,255,255,.78); line-height: 1.8; margin-top: 12px; margin-bottom: 32px; }

/* Atouts PNR */
.erre-de-pnr-atouts { display: flex; flex-direction: column; gap: 20px; }
.erre-de-pnr-atout { display: flex; align-items: flex-start; gap: 14px; }
.erre-de-pnr-atout-icon {
    width: 44px; height: 44px; border-radius: 12px;
    background: rgba(253,204,6,.15);
    border: 1px solid rgba(253,204,6,.25);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.erre-de-pnr-atout-icon svg { width: 20px; height: 20px; stroke: #FDCC06; }
.erre-de-pnr-atout-title { display: block; font-weight: 800; font-size: 14px; color: #fff; margin-bottom: 3px; }
.erre-de-pnr-atout-desc  { font-size: 13px; color: rgba(255,255,255,.65); margin: 0; line-height: 1.55; }

/* Logo zone */
.erre-de-pnr-logo-zone { display: flex; flex-direction: column; align-items: center; gap: 24px; }
.erre-de-pnr-logo {
    width: 200px; height: 200px;
    border-radius: 50%;
    border: 2px solid rgba(253,204,6,.3);
    background: rgba(253,204,6,.08);
    display: flex; align-items: center; justify-content: center;
}
.erre-de-pnr-logo-inner { text-align: center; }
.erre-de-pnr-logo-inner svg { width: 40px; height: 40px; stroke: #FDCC06; display: block; margin: 0 auto 10px; }
.erre-de-pnr-logo-text { font-size: 12px; color: rgba(255,255,255,.7); line-height: 1.5; font-weight: 600; }

/* Facts */
.erre-de-pnr-facts { display: flex; flex-direction: column; gap: 12px; width: 100%; }
.erre-de-pnr-fact {
    background: rgba(255,255,255,.06);
    border-radius: 10px;
    padding: 14px 18px;
    text-align: center;
    border: 1px solid rgba(255,255,255,.08);
}
.erre-de-pnr-fact-num   { display: block; font-size: 24px; font-weight: 800; color: #FDCC06; line-height: 1; }
.erre-de-pnr-fact-label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: rgba(255,255,255,.55); margin-top: 4px; }

/* ══════════════════════════════════════════════════════
   6. PATRIMOINE
══════════════════════════════════════════════════════ */

.erre-de-patrimoine { background: var(--bg, #fff); padding: 80px 0; }
.erre-de-patrimoine-head { margin-bottom: 40px; }
.erre-de-patrimoine-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.erre-de-pat-card {
    display: block; border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 2px 20px rgba(41,69,12,.1);
    transition: transform .25s, box-shadow .25s;
    text-decoration: none !important;
    color: inherit;
    background: #fff;
}
.erre-de-pat-card:hover { transform: translateY(-5px); box-shadow: 0 12px 36px rgba(41,69,12,.18); }
.erre-de-pat-img {
    position: relative;
    height: 200px;
    background: linear-gradient(135deg, #D4D9CE, #f0ede6);
    display: flex; align-items: center; justify-content: center;
    overflow: hidden;
}
.erre-de-pat-img img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.erre-de-pat-img > svg { width: 48px; height: 48px; stroke: #29450C; opacity: .5; }
.erre-de-pat-img-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(41,69,12,.6) 0%, transparent 50%); }
.erre-de-pat-img-label {
    position: absolute; bottom: 12px; left: 12px;
    display: inline-flex; align-items: center; gap: 6px;
    background: rgba(41,69,12,.85);
    color: #FDCC06;
    font-size: 11px; font-weight: 800;
    text-transform: uppercase; letter-spacing: .06em;
    padding: 4px 10px; border-radius: 20px;
    backdrop-filter: blur(4px);
}
.erre-de-pat-img-label svg { width: 12px; height: 12px; stroke: #FDCC06; }
.erre-de-pat-body { padding: 20px; }
/* Card titles — pas de font-size : héritage H3 typo */
.erre-de-pat-title { color: #1e2a22; margin-bottom: 8px; }
.erre-de-pat-desc  { color: #666; margin-bottom: 14px; line-height: 1.6; }
.erre-de-pat-lire  {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 13px; font-weight: 800; color: #29450C;
    transition: gap .15s;
}
.erre-de-pat-lire svg { width: 14px; height: 14px; stroke: #29450C; }
.erre-de-pat-card:hover .erre-de-pat-lire { gap: 10px; }
.erre-de-patrimoine-empty { color: #888; padding: 24px 0; }

/* ══════════════════════════════════════════════════════
   7. GALERIE
══════════════════════════════════════════════════════ */

.erre-de-galerie { background: var(--bg, #F4F4EF); padding: 80px 0; }
.erre-de-galerie-inner > .erre-de-section-eyebrow,
.erre-de-galerie-inner > .erre-de-section-title { text-align: center; display: block; }
.erre-de-galerie-inner > .erre-de-section-eyebrow { display: inline-flex; }
.erre-de-galerie-inner > .erre-de-section-title { margin-bottom: 32px; }
.erre-de-gal-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 220px 220px;
    gap: 12px;
}
/* Items 1 et 4 : grand format */
.erre-de-gal-item:nth-child(1),
.erre-de-gal-item:nth-child(4) { grid-column: span 2; }
.erre-de-gal-item {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    background: linear-gradient(135deg, #D4D9CE, #c8d0c2);
    cursor: pointer;
}
.erre-de-gal-item img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; display: block; }
.erre-de-gal-item:hover img { transform: scale(1.06); }
.erre-de-gal-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(41,69,12,.5) 0%, transparent 40%);
    transition: opacity .3s;
}
.erre-de-gal-item:hover .erre-de-gal-overlay { opacity: 1.4; }
.erre-de-gal-tag {
    position: absolute; top: 12px; left: 12px;
    background: rgba(41,69,12,.85);
    color: #FDCC06;
    font-size: 10px; font-weight: 800;
    text-transform: uppercase; letter-spacing: .06em;
    padding: 4px 10px; border-radius: 20px;
    backdrop-filter: blur(4px);
}

/* ══════════════════════════════════════════════════════
   8. ASSOCIATIONS
══════════════════════════════════════════════════════ */

.erre-de-asso { background: var(--bg, #EEF2EB); padding: 80px 0; }
.erre-de-asso-head { margin-bottom: 40px; }
.erre-de-asso-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-bottom: 32px; }
.erre-de-asso-card {
    background: #fff;
    border-radius: 14px;
    padding: 24px 18px;
    text-align: center;
    box-shadow: 0 2px 14px rgba(41,69,12,.07);
    transition: transform .2s, box-shadow .2s;
}
.erre-de-asso-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(41,69,12,.13); }
.erre-de-asso-icon {
    width: 52px; height: 52px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 14px;
}
.erre-de-asso-icon svg { width: 24px; height: 24px; }

/* Variantes couleurs icône asso — interface, taille fixe */
.erre-de-asso-ico--vert   { background: #e8f0e4; } .erre-de-asso-ico--vert   svg { stroke: #29450C; }
.erre-de-asso-ico--orange { background: #fff0ee; } .erre-de-asso-ico--orange svg { stroke: #DC0303; }
.erre-de-asso-ico--bleu   { background: #eff6ff; } .erre-de-asso-ico--bleu   svg { stroke: #1d4ed8; }
.erre-de-asso-ico--violet { background: #f3e8ff; } .erre-de-asso-ico--violet svg { stroke: #7c3aed; }
.erre-de-asso-ico--jaune  { background: #fffbeb; } .erre-de-asso-ico--jaune  svg { stroke: #d97706; }

/* Card names — pas de font-size : H3 typo */
.erre-de-asso-name { color: #1e2a22; margin-bottom: 4px; }
.erre-de-asso-type { font-size: 12px; font-weight: 600; color: #888; margin: 0; }

/* Card "+" */
.erre-de-asso-card--plus { border: 2px dashed rgba(41,69,12,.25); background: transparent; }
.erre-de-asso-plus-icon {
    width: 52px; height: 52px; border-radius: 14px;
    background: rgba(41,69,12,.08);
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto 14px;
}
.erre-de-asso-plus-icon svg { width: 22px; height: 22px; stroke: #29450C; }

/* CTA associations */
.erre-de-asso-cta { text-align: center; }
.erre-de-asso-btn {
    display: inline-flex; align-items: center; gap: 10px;
    background: #29450C; color: #FDCC06;
    padding: 14px 28px; border-radius: 10px;
    font-size: 14px; font-weight: 800;
    text-decoration: none !important;
    transition: background .2s, transform .2s;
}
.erre-de-asso-btn svg { width: 18px; height: 18px; stroke: #FDCC06; }
.erre-de-asso-btn:hover { background: #1e2f08; transform: translateY(-2px); }

/* ══════════════════════════════════════════════════════
   9. VENIR À ERRE
══════════════════════════════════════════════════════ */

.erre-de-venir { background: var(--bg, #fff); padding: 80px 0; }
.erre-de-venir-head { margin-bottom: 40px; }
.erre-de-venir-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.erre-de-venir-card {
    background: #f8f6f0;
    border-radius: 16px;
    padding: 28px 24px;
    border-top: 4px solid #29450C;
    transition: transform .2s, box-shadow .2s;
}
.erre-de-venir-card:hover { transform: translateY(-3px); box-shadow: 0 8px 28px rgba(41,69,12,.12); }
.erre-de-venir-card--orange { border-top-color: #DC0303; background: #fff8f8; }
.erre-de-venir-card--vert   { border-top-color: #29450C; background: #f0f5ec; }
.erre-de-venir-icon {
    width: 48px; height: 48px; border-radius: 12px;
    background: rgba(41,69,12,.1);
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 16px;
}
.erre-de-venir-icon svg { width: 22px; height: 22px; stroke: #29450C; }
.erre-de-venir-icon--orange { background: rgba(220,3,3,.1); }
.erre-de-venir-icon--orange svg { stroke: #DC0303; }
.erre-de-venir-icon--vert   { background: rgba(41,69,12,.12); }
.erre-de-venir-icon--vert svg   { stroke: #29450C; }
/* Card title — interface, taille fixe */
.erre-de-venir-card-title { font-size: 17px; font-weight: 800; color: #1e2a22; margin-bottom: 16px; }
.erre-de-venir-items { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.erre-de-venir-items li { display: flex; align-items: flex-start; gap: 8px; font-size: 13px; color: #444; line-height: 1.55; }
.erre-de-venir-items li svg { width: 14px; height: 14px; stroke: #29450C; flex-shrink: 0; margin-top: 2px; }

/* ══════════════════════════════════════════════════════
   10. CTA FINAL
══════════════════════════════════════════════════════ */

.erre-de-cta-final { background: #FEF7D9; padding: 80px 0; }
.erre-de-cta-head { margin-bottom: 40px; }
.erre-de-cta-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.erre-de-cta-card {
    background: #fff;
    border-radius: 16px;
    border-top: 4px solid #29450C;
    padding: 28px 24px;
    text-decoration: none !important;
    color: inherit;
    display: block;
    box-shadow: 0 2px 16px rgba(41,69,12,.08);
    transition: transform .25s, box-shadow .25s;
}
.erre-de-cta-card:hover { transform: translateY(-5px); box-shadow: 0 12px 36px rgba(41,69,12,.15); }
.erre-de-cta-card-icon {
    width: 48px; height: 48px; border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 18px;
}
.erre-de-cta-card-icon svg { width: 22px; height: 22px; stroke: currentColor; }
/* Card title — pas de font-size : H3 typo */
.erre-de-cta-card-title { margin-bottom: 10px; }
.erre-de-cta-card-desc  { color: #666; line-height: 1.7; margin-bottom: 18px; }
.erre-de-cta-card-link  {
    display: inline-flex; align-items: center; gap: 6px;
    font-size: 13px; font-weight: 800;
    transition: gap .15s;
}
.erre-de-cta-card-link svg { width: 14px; height: 14px; }
.erre-de-cta-card:hover .erre-de-cta-card-link { gap: 10px; }

/* ══════════════════════════════════════════════════════
   RESPONSIVE — TABLETTE (≤ 1024px)
══════════════════════════════════════════════════════ */

@media (max-width: 1024px) {
    .erre-de-intro-inner     { grid-template-columns: 1fr; gap: 40px; }
    .erre-de-blason-side     { order: -1; }
    .erre-de-chiffres-grid   { grid-template-columns: repeat(3, 1fr); }
    .erre-de-loca-layout     { grid-template-columns: 1fr; gap: 36px; }
    .erre-de-loca-cards      { grid-template-columns: repeat(2, 1fr); }
    .erre-de-pnr-layout      { grid-template-columns: 1fr; }
    .erre-de-pnr-logo-zone   { display: none; }
    .erre-de-patrimoine-grid { grid-template-columns: repeat(2, 1fr); }
    .erre-de-asso-grid       { grid-template-columns: repeat(3, 1fr); }
    .erre-de-venir-grid      { grid-template-columns: 1fr 1fr; gap: 16px; }
    .erre-de-cta-grid        { grid-template-columns: 1fr 1fr; }
}

/* ══════════════════════════════════════════════════════
   RESPONSIVE — MOBILE (≤ 768px)
══════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    /* Hero */
    .erre-de-hero { min-height: 420px; }
    .erre-de-hero-content { padding: 60px 20px 40px; }
    .erre-de-hero-chiffres { gap: 8px; }
    .erre-de-hero-chiffre { flex: 1 1 120px; padding: 14px 16px; }
    .erre-de-hero-chiffre-num { font-size: 22px; }

    /* Chiffres */
    .erre-de-chiffres-grid   { grid-template-columns: repeat(2, 1fr); }

    /* Loca */
    .erre-de-loca-cards      { grid-template-columns: 1fr; }
    #erre-de-map             { height: 280px; }

    /* Patrimoine */
    .erre-de-patrimoine-grid { grid-template-columns: 1fr; }

    /* Galerie */
    .erre-de-gal-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 160px 160px 160px;
    }
    .erre-de-gal-item:nth-child(1),
    .erre-de-gal-item:nth-child(4) { grid-column: span 1; }

    /* Asso */
    .erre-de-asso-grid       { grid-template-columns: repeat(2, 1fr); }

    /* Venir */
    .erre-de-venir-grid      { grid-template-columns: 1fr; }

    /* CTA */
    .erre-de-cta-grid        { grid-template-columns: 1fr; }

    /* Paddings globaux */
    .erre-de-hero,
    .erre-de-intro, .erre-de-chiffres, .erre-de-loca,
    .erre-de-pnr, .erre-de-patrimoine, .erre-de-galerie,
    .erre-de-asso, .erre-de-venir, .erre-de-cta-final {
        padding-top: 56px;
        padding-bottom: 56px;
    }
    .erre-de-hero-inner,
    .erre-de-intro-inner, .erre-de-chiffres-inner, .erre-de-loca-inner,
    .erre-de-pnr-inner, .erre-de-patrimoine-inner, .erre-de-galerie-inner,
    .erre-de-asso-inner, .erre-de-venir-inner, .erre-de-cta-inner {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* ══════════════════════════════════════════════════════
   RESPONSIVE — TRÈS PETIT (≤ 480px)
══════════════════════════════════════════════════════ */

@media (max-width: 480px) {
    .erre-de-hero-chiffres   { grid-template-columns: 1fr 1fr; display: grid; }
    .erre-de-chiffres-grid   { grid-template-columns: 1fr 1fr; }
    .erre-de-asso-grid       { grid-template-columns: 1fr 1fr; }
    .erre-de-gal-grid {
        display: flex; flex-direction: column;
    }
    .erre-de-gal-item        { height: 200px; }
    .erre-de-loca-cards      { grid-template-columns: 1fr; }
}/* End custom CSS */