/* ============================================================
   nature.css, Pepiniere Les Jardins Idee O
   Adaptation "lumineuse et nature" du theme ruizarch (theme.css).
   Charge APRES theme.css : c'est la couche prioritaire.

   Direction : fonds creme/ivoire dominants, vert accent #A2BA48 et
   vert profond #1B3C2D plus presents, touches manuscrites Caveat,
   separateurs feuille discrets, coins adoucis sur les cartes.
   Signature : le calendrier colore des horaires + les traits de feuille.
   ============================================================ */

:root {
    --pep-cream: #F7F4EC;
    --pep-paper: #FBF9F3;
    --pep-ink: #2B2A24;
    --pep-ink-soft: #5F5C52;
    --pep-green: #1B3C2D;
    --pep-green-deep: #16241C;
    --pep-accent: #A2BA48;
    --pep-accent-dark: #8AA038;
    --pep-line: rgba(43, 42, 36, 0.12);
    --pep-line-strong: rgba(43, 42, 36, 0.22);
    --pep-radius: 10px;
    --pep-shadow: 0 18px 45px -30px rgba(27, 60, 45, 0.45);
}

/* ── Fonds et texte de base ───────────────────────────────── */
body {
    background-color: var(--pep-cream);
    color: var(--pep-ink);
}
p, li { color: var(--pep-ink); }
h1, h2, h3, h4, h5, h6 { color: var(--pep-green); }

/* Sections claires : creme et papier chaud (au lieu du blanc pur) */
.mil-soft-bg { background-color: var(--pep-paper) !important; }
.pep-cream-bg { background-color: var(--pep-cream); }
.pep-paper-bg { background-color: var(--pep-paper); }

/* Sections sombres : vert profond nature (au lieu du charbon #1b1b1b) */
.mil-dark-bg,
.pep-green-bg { background-color: var(--pep-green-deep) !important; }
.mil-dark-bg h1, .mil-dark-bg h2, .mil-dark-bg h3,
.pep-green-bg h1, .pep-green-bg h2, .pep-green-bg h3 { color: #fff; }
.pep-green-bg p, .pep-green-bg li { color: rgba(255,255,255,0.82); }

/* Accent et marqueur : on garde le vert du systeme */
.mil-accent { color: var(--pep-accent) !important; }
.mil-marker { background-color: var(--pep-accent); color: var(--pep-green-deep); }

/* Boutons : vert profond en primaire, accent au survol (reste anguleux comme le template) */
.mil-button { background-color: var(--pep-green) !important; color: #fff !important; }
.mil-button:hover { background-color: var(--pep-accent) !important; color: var(--pep-green-deep) !important; }
.pep-btn-accent { background-color: var(--pep-accent) !important; color: var(--pep-green-deep) !important; }
.pep-btn-accent:hover { background-color: var(--pep-green) !important; color: #fff !important; }
.mil-button.mil-transparent-button { background: transparent !important; border: 1px solid var(--pep-line-strong) !important; color: var(--pep-green) !important; }
.mil-button.mil-transparent-button:hover { background: var(--pep-green) !important; color: #fff !important; }

/* ── Ecriture manuscrite Caveat, un peu plus genereuse ────── */
.pep-hand {
    font-family: "Caveat", cursive;
    color: var(--pep-accent-dark);
    font-weight: 600;
}
.pep-hand-lg { font-size: clamp(1.6rem, 3vw, 2.4rem); line-height: 1.1; display: inline-block; }

/* ── Trait de feuille (separateur signature, SVG inline en masque) ── */
.pep-leaf-divider {
    display: flex; align-items: center; justify-content: center; gap: 14px;
    margin: 0 auto; max-width: 260px; color: var(--pep-accent);
}
.pep-leaf-divider::before,
.pep-leaf-divider::after {
    content: ""; flex: 1; height: 1px;
    background: linear-gradient(to right, transparent, var(--pep-line-strong), transparent);
}
.pep-leaf-divider svg { width: 26px; height: 26px; flex: none; }

/* ── En-tete de section commune ───────────────────────────── */
.pep-section { padding: clamp(64px, 9vw, 120px) 0; }
.pep-eyebrow {
    font-family: "Sora", sans-serif; font-size: 13px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 1.6px; color: var(--pep-accent-dark);
    display: inline-block; margin-bottom: 14px;
}
.pep-lead { font-size: 1.05rem; color: var(--pep-ink-soft); max-width: 620px; }

/* ── HERO ─────────────────────────────────────────────────── */
.pep-hero { position: relative; overflow: hidden; }
.pep-hero-media { position: absolute; inset: 0; }
.pep-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.pep-hero-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(105deg, rgba(22,36,28,0.86) 0%, rgba(22,36,28,0.62) 45%, rgba(22,36,28,0.28) 100%);
}
.pep-hero-inner {
    position: relative; z-index: 2;
    min-height: 82vh; display: flex; flex-direction: column; justify-content: center;
    /* 37px topbar + ~90px header fixes : la tagline doit respirer sous le chrome */
    padding: 210px 0 110px;
}
.pep-btn-ghost {
    background: rgba(255,255,255,0.08);
    border: 1.5px solid rgba(255,255,255,0.85);
    color: #fff !important;
    backdrop-filter: blur(2px);
}
.pep-btn-ghost:hover { background: #fff; color: var(--pep-green, #1B3C2D) !important; border-color: #fff; }
.pep-hero h1 {
    color: #fff; font-weight: 700; letter-spacing: -1.5px;
    font-size: clamp(2.8rem, 6.4vw, 5.2rem); line-height: 1.02; max-width: 15ch;
}
.pep-hero h1 .pep-hand-lg { color: var(--pep-accent); letter-spacing: 0; }
.pep-hero p { color: rgba(255,255,255,0.86); max-width: 46ch; font-size: 1.1rem; margin-top: 22px; }
.pep-hero-note { color: rgba(255,255,255,0.7) !important; }
.pep-hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 34px; }
.pep-hero-stats {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px;
    margin-top: 60px; border: 1px dashed rgba(255,255,255,0.28);
}
.pep-hero-stat { padding: 22px 20px; }
.pep-hero-stat b { display: block; font-size: 2rem; font-weight: 700; color: var(--pep-accent); line-height: 1; }
.pep-hero-stat span { display: block; margin-top: 8px; font-size: 0.82rem; color: rgba(255,255,255,0.72); }
@media (max-width: 767px) {
    .pep-hero-stats { grid-template-columns: repeat(2, 1fr); }
}

/* ── Boutons fleche (langage ruizarch) ────────────────────── */
.pep-arrow-btn {
    display: inline-flex; align-items: center; gap: 10px;
    font-family: "Sora", sans-serif; font-weight: 700; letter-spacing: .4px;
    padding: 15px 26px; text-transform: none; font-size: 0.92rem;
}
.pep-arrow-btn i { transition: transform .3s; }
.pep-arrow-btn:hover i { transform: translateX(5px); }

/* ── Cartes acces rapide ──────────────────────────────────── */
.pep-quick { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
@media (max-width: 900px) { .pep-quick { grid-template-columns: 1fr; } }
.pep-quick-card {
    background: var(--pep-paper); border: 1px dashed var(--pep-line-strong);
    border-radius: var(--pep-radius); padding: 34px 30px; transition: .35s;
    display: flex; flex-direction: column; height: 100%;
}
.pep-quick-card:hover { border-style: solid; border-color: var(--pep-accent); box-shadow: var(--pep-shadow); transform: translateY(-4px); }
.pep-icon-square {
    width: 54px; height: 54px; display: inline-flex; align-items: center; justify-content: center;
    background: var(--pep-accent); color: var(--pep-green-deep); font-size: 22px; margin-bottom: 20px;
}
.pep-quick-card h3 { font-size: 1.35rem; margin-bottom: 10px; }
.pep-quick-card p { color: var(--pep-ink-soft); font-size: 0.96rem; flex: 1; }
.pep-quick-card .pep-more { margin-top: 18px; color: var(--pep-green); font-weight: 700; display: inline-flex; align-items: center; gap: 8px; }
.pep-quick-card:hover .pep-more { color: var(--pep-accent-dark); }

/* ── Cartes categorie / produit (coins adoucis) ───────────── */
.pep-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
@media (max-width: 900px) { .pep-cards { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575px) { .pep-cards { grid-template-columns: 1fr; } }
.pep-card {
    background: var(--pep-paper); border: 1px solid var(--pep-line);
    border-radius: var(--pep-radius); overflow: hidden; transition: .35s; height: 100%;
    display: flex; flex-direction: column;
}
.pep-card:hover { box-shadow: var(--pep-shadow); transform: translateY(-4px); }
.pep-card-media { aspect-ratio: 4 / 3; overflow: hidden; }
.pep-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.pep-card:hover .pep-card-media img { transform: scale(1.05); }
.pep-card-body { padding: 22px 24px 26px; display: flex; flex-direction: column; flex: 1; }
.pep-card-body h3 { font-size: 1.25rem; margin-bottom: 8px; }
.pep-card-body p { color: var(--pep-ink-soft); font-size: 0.94rem; flex: 1; }
.pep-card-price {
    margin-top: 16px; font-family: "Sora", sans-serif; font-weight: 700; font-size: 0.85rem;
    color: var(--pep-green); background: rgba(162,186,72,0.14); align-self: flex-start;
    padding: 5px 12px; border-radius: 20px;
}

/* ── Banniere saisonniere ─────────────────────────────────── */
.pep-banner {
    background: linear-gradient(100deg, var(--pep-green) 0%, var(--pep-green-deep) 100%);
    color: #fff; border-radius: var(--pep-radius); padding: 26px 32px;
    display: flex; align-items: center; gap: 24px; flex-wrap: wrap;
    position: relative; overflow: hidden;
}
.pep-banner::after {
    content: ""; position: absolute; right: -30px; top: -30px; width: 160px; height: 160px;
    background: radial-gradient(circle, rgba(162,186,72,0.35), transparent 70%);
}
.pep-banner-icon { font-size: 28px; color: var(--pep-accent); flex: none; position: relative; z-index: 1; }
.pep-banner-text { flex: 1; min-width: 240px; position: relative; z-index: 1; }
.pep-banner-text strong { display: block; font-size: 1.15rem; color: #fff; margin-bottom: 4px; }
.pep-banner-text span { color: rgba(255,255,255,0.82); font-size: 0.95rem; }
.pep-banner .pep-hand { color: var(--pep-accent); }
.pep-banner a.pep-btn-accent { position: relative; z-index: 1; white-space: nowrap; }

/* ── Badge Avis Google (section avis de l'accueil) ────────── */
.pep-avis-google-badge {
    display: inline-flex; align-items: center; gap: 8px;
    margin-top: 14px; padding: 7px 16px;
    background: #fff; border: 1px solid var(--pep-line);
    border-radius: 999px; box-shadow: 0 6px 18px -12px rgba(27, 60, 45, 0.35);
    font-family: "Sora", sans-serif; font-size: 0.85rem; font-weight: 600;
    color: var(--pep-ink-soft);
}
.pep-avis-google-badge svg { flex: none; }

/* ── Encart horaires compact ──────────────────────────────── */
.pep-hours-box {
    background: var(--pep-paper); border: 1px solid var(--pep-line);
    border-radius: var(--pep-radius); padding: 26px 28px;
}
.pep-hours-box h3 { font-size: 1.2rem; margin-bottom: 4px; }
.pep-hours-box .pep-hours-sub { color: var(--pep-ink-soft); font-size: 0.88rem; margin-bottom: 16px; }
.pep-hours-compact { list-style: none; padding: 0; margin: 0; }
.pep-hours-row { display: flex; align-items: center; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--pep-line); }
.pep-hours-row:last-child { border-bottom: none; }
.pep-hours-dot { width: 11px; height: 11px; border-radius: 50%; flex: none; }
.pep-hours-day { flex: 1; font-size: 0.95rem; }
.pep-hours-today .pep-hours-day { font-weight: 700; color: var(--pep-green); }
.pep-hours-val { font-family: "Sora", sans-serif; font-weight: 600; font-size: 0.9rem; color: var(--pep-ink); }
.pep-hours-closed { color: var(--pep-ink-soft); font-weight: 500; }

/* ── Calendrier mensuel colore (signature) ────────────────── */
.pep-cal { max-width: 760px; margin: 0 auto; }
.pep-cal-head { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
.pep-cal-title { flex: 1; font-family: "Sora", sans-serif; font-weight: 700; font-size: 1.4rem; color: var(--pep-green); }
.pep-cal-nav, .pep-cal-today {
    font-family: "Sora", sans-serif; border: 1px solid var(--pep-line-strong);
    background: var(--pep-paper); color: var(--pep-green); cursor: pointer;
    padding: 8px 14px; border-radius: 8px; font-weight: 600; transition: .25s;
}
.pep-cal-nav:hover, .pep-cal-today:hover { background: var(--pep-green); color: #fff; border-color: var(--pep-green); }
.pep-cal-today { font-size: 0.85rem; }
.pep-cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 8px; }
.pep-cal-dow {
    text-align: center; font-family: "Sora", sans-serif; font-weight: 700; font-size: 0.72rem;
    letter-spacing: 1px; color: var(--pep-ink-soft); padding-bottom: 6px;
}
.pep-cal-cell {
    position: relative; border-radius: 8px; min-height: 74px; padding: 8px 8px 6px;
    border: 1px solid var(--pep-line);
    background:
        linear-gradient(0deg, color-mix(in srgb, var(--pep-day) 16%, var(--pep-paper)), color-mix(in srgb, var(--pep-day) 16%, var(--pep-paper)));
    border-left: 4px solid var(--pep-day);
    display: flex; flex-direction: column;
}
.pep-cal-empty { background: transparent; border: none; min-height: 0; }
.pep-cal-num { font-family: "Sora", sans-serif; font-weight: 700; font-size: 0.95rem; color: var(--pep-green); }
.pep-cal-time { margin-top: auto; font-size: 0.68rem; color: var(--pep-ink-soft); font-weight: 600; }
.pep-cal-closed .pep-cal-num { color: var(--pep-ink-soft); }
.pep-cal-is-today { outline: 2px solid var(--pep-green); outline-offset: 1px; }
.pep-cal-note { position: absolute; top: 6px; right: 8px; color: var(--pep-accent-dark); font-weight: 700; }
.pep-cal-legend { list-style: none; padding: 0; margin: 24px 0 0; display: flex; flex-wrap: wrap; gap: 18px; justify-content: center; }
.pep-cal-legend li { display: inline-flex; align-items: center; gap: 8px; font-size: 0.85rem; color: var(--pep-ink-soft); }
.pep-legend-dot { width: 12px; height: 12px; border-radius: 3px; flex: none; }
@media (max-width: 575px) {
    .pep-cal-cell { min-height: 58px; padding: 5px; }
    .pep-cal-time { font-size: 0.6rem; }
    .pep-cal-grid { gap: 5px; }
}

/* Fallback color-mix (navigateurs anciens) : teinte legere par transparence */
@supports not (background: color-mix(in srgb, red 10%, white)) {
    .pep-cal-cell { background: var(--pep-paper); }
}

/* ── Equipe ───────────────────────────────────────────────── */
.pep-team { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
@media (max-width: 900px) { .pep-team { grid-template-columns: 1fr; } }
.pep-team-card { background: var(--pep-paper); border: 1px solid var(--pep-line); border-radius: var(--pep-radius); overflow: hidden; }
.pep-team-media { aspect-ratio: 1 / 1; overflow: hidden; }
.pep-team-media img { width: 100%; height: 100%; object-fit: cover; }
.pep-team-body { padding: 24px 26px 28px; }
.pep-team-body h3 { font-size: 1.3rem; margin-bottom: 2px; }
.pep-team-role { font-family: "Caveat", cursive; font-size: 1.25rem; color: var(--pep-accent-dark); display: block; margin-bottom: 12px; }
.pep-team-body p { color: var(--pep-ink-soft); font-size: 0.95rem; }

/* ── Engagements ──────────────────────────────────────────── */
.pep-engagements { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 900px) { .pep-engagements { grid-template-columns: 1fr; } }
.pep-engagement { padding: 30px 28px; border: 1px dashed var(--pep-line-strong); border-radius: var(--pep-radius); background: var(--pep-paper); }
.pep-engagement .pep-icon-square { margin-bottom: 16px; }
.pep-engagement h3 { font-size: 1.2rem; margin-bottom: 8px; }
.pep-engagement p { color: var(--pep-ink-soft); font-size: 0.94rem; }

/* ── Liste complète des rayons (pages univers) ─────────────── */
.pep-rayons-full {
    margin-top: 36px; padding: 28px 30px;
    background: var(--pep-paper); border: 1px dashed var(--pep-line-strong);
    border-radius: var(--pep-radius);
}
.pep-rayons-title {
    font-family: "Sora", sans-serif; font-size: 0.88rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 1.4px; color: var(--pep-green);
    margin-bottom: 18px;
}
.pep-rayons-list {
    list-style: none; margin: 0; padding: 0;
    columns: 3; column-gap: 52px;
}
.pep-rayons-list li {
    break-inside: avoid; -webkit-column-break-inside: avoid; page-break-inside: avoid;
    position: relative; padding: 4px 0 4px 22px;
    font-size: 0.92rem; line-height: 1.6; color: var(--pep-ink-soft);
}
.pep-rayons-list li::before {
    content: "\f06c"; /* fa-leaf */
    font-family: "Font Awesome 6 Free"; font-weight: 900;
    position: absolute; left: 0; top: 8px;
    font-size: 0.66rem; color: var(--pep-accent-dark);
}
@media (max-width: 1100px) { .pep-rayons-list { columns: 2; column-gap: 38px; } }
@media (max-width: 640px) {
    .pep-rayons-list { columns: 1; }
    .pep-rayons-full { padding: 22px 20px; }
}

/* ── Avis Google ──────────────────────────────────────────── */
/* Carrousel d'avis : piste horizontale avec scroll-snap, fleches et hauteurs egalisees.
   Sans JavaScript, la piste reste scrollable nativement et les fleches restent masquees. */
.pep-avis-carousel { position: relative; }
.pep-avis-nav { display: none; }
.pep-avis-carousel.is-ready .pep-avis-nav {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-bottom: 24px;
}
.pep-avis-btn {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid var(--pep-line);
    color: var(--pep-green);
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: var(--pep-shadow);
    transition: background 0.25s ease, color 0.25s ease, opacity 0.25s ease;
}
.pep-avis-btn:hover:not(:disabled),
.pep-avis-btn:focus-visible { background: var(--pep-green); color: #fff; }
.pep-avis-btn:disabled { opacity: 0.35; cursor: default; box-shadow: none; }
.pep-avis {
    display: flex;
    align-items: stretch;
    gap: 24px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 4px 4px 14px;
    scrollbar-width: thin;
    scrollbar-color: var(--pep-line-strong) transparent;
}
@media (prefers-reduced-motion: no-preference) {
    .pep-avis { scroll-behavior: smooth; }
}
.pep-avis:focus-visible { outline: 2px solid var(--pep-accent); outline-offset: 4px; }
.pep-avis-card {
    flex: 0 0 auto;
    /* Environ 3 cartes visibles en desktop (~340px dans le conteneur standard) */
    width: calc((100% - 48px) / 3);
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    background: var(--pep-paper);
    border: 1px solid var(--pep-line);
    border-radius: var(--pep-radius);
    padding: 28px 26px;
}
@media (max-width: 1024px) {
    /* Tablette : 2 cartes visibles */
    .pep-avis-card { width: calc((100% - 24px) / 2); }
}
@media (max-width: 640px) {
    /* Mobile : une carte et un bout de la suivante pour inviter au geste */
    .pep-avis-card { width: 86%; }
}
.pep-avis-stars { color: #E6B800; letter-spacing: 2px; margin-bottom: 12px; }
.pep-avis-card p {
    color: var(--pep-ink);
    font-size: 0.98rem;
    font-style: italic;
    /* Coupure propre des tres longs avis */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 8;
    line-clamp: 8;
    overflow: hidden;
}
.pep-avis-author { margin-top: auto; padding-top: 16px; font-weight: 700; color: var(--pep-green); font-family: "Sora", sans-serif; font-size: 0.9rem; }

/* ── Pont bureau d'etudes ─────────────────────────────────── */
.pep-bridge {
    display: flex; align-items: center; gap: 28px; flex-wrap: wrap;
    background: var(--pep-green-deep); color: #fff; border-radius: var(--pep-radius);
    padding: 40px 44px; position: relative; overflow: hidden;
}
.pep-bridge-text { flex: 1; min-width: 260px; }
.pep-bridge-text .pep-eyebrow { color: var(--pep-accent); }
.pep-bridge-text h3 { color: #fff; font-size: 1.7rem; margin-bottom: 8px; }
.pep-bridge-text p { color: rgba(255,255,255,0.78); max-width: 52ch; }

/* ── Videos ───────────────────────────────────────────────── */
.pep-videos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
@media (max-width: 900px) { .pep-videos { grid-template-columns: 1fr; } }
.pep-video-card { background: var(--pep-paper); border: 1px solid var(--pep-line); border-radius: var(--pep-radius); overflow: hidden; }
.pep-video-embed { aspect-ratio: 16 / 9; background: var(--pep-green-deep); position: relative; }
.pep-video-embed iframe { width: 100%; height: 100%; border: 0; }
.pep-video-placeholder { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,0.6); font-size: 2rem; }
.pep-video-body { padding: 20px 22px 24px; }
.pep-video-cat { font-family: "Sora", sans-serif; font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--pep-accent-dark); }
.pep-video-body h3 { font-size: 1.15rem; margin: 6px 0 8px; }
.pep-video-body p { color: var(--pep-ink-soft); font-size: 0.92rem; }

/* ── Formulaires ──────────────────────────────────────────── */
.pep-form { background: var(--pep-paper); border: 1px solid var(--pep-line); border-radius: var(--pep-radius); padding: 34px 34px 38px; }
.pep-field { margin-bottom: 18px; }
.pep-field label { display: block; font-family: "Sora", sans-serif; font-weight: 600; font-size: 0.85rem; margin-bottom: 7px; color: var(--pep-green); }
.pep-field label .pep-req { color: var(--pep-accent-dark); }
.pep-field input, .pep-field select, .pep-field textarea {
    width: 100%; padding: 12px 14px; border: 1px solid var(--pep-line-strong);
    border-radius: 8px; background: #fff; font-family: "Sora", sans-serif; font-size: 0.95rem; color: var(--pep-ink);
}
.pep-field input:focus, .pep-field select:focus, .pep-field textarea:focus {
    outline: none; border-color: var(--pep-accent); box-shadow: 0 0 0 3px rgba(162,186,72,0.18);
}
.pep-field textarea { min-height: 130px; resize: vertical; }
.pep-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 575px) { .pep-form-row { grid-template-columns: 1fr; } }
.pep-form-msg { margin-top: 16px; padding: 12px 16px; border-radius: 8px; font-size: 0.92rem; display: none; }
.pep-form-msg.pep-ok { display: block; background: rgba(162,186,72,0.16); color: var(--pep-green); }
.pep-form-msg.pep-err { display: block; background: rgba(192,85,59,0.12); color: #9A3B27; }

/* ── Newsletter (footer) ──────────────────────────────────── */
.pep-news-form { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.pep-news-form input {
    flex: 1; min-width: 200px; padding: 12px 16px; border: 1px solid rgba(255,255,255,0.25);
    background: rgba(255,255,255,0.06); color: #fff; border-radius: 8px; font-family: "Sora", sans-serif;
}
.pep-news-form input::placeholder { color: rgba(255,255,255,0.5); }
.pep-news-form input:focus { outline: none; border-color: var(--pep-accent); }
.pep-news-msg { margin-top: 10px; font-size: 0.85rem; color: var(--pep-accent); min-height: 1em; }

/* ── Catalogue boutique (vitrine poterie) ─────────────────── */
.pep-shop-grid {
    display: grid; gap: 26px;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}
.pep-shop-card {
    background: #fff; border: 1px solid rgba(27,60,45,0.1); border-radius: 12px;
    overflow: hidden; display: flex; flex-direction: column;
    transition: transform .3s ease, box-shadow .3s ease;
}
.pep-shop-card:hover { transform: translateY(-4px); box-shadow: 0 24px 40px -30px rgba(27,60,45,0.45); }
.pep-shop-media { position: relative; aspect-ratio: 1 / 1; overflow: hidden; }
.pep-shop-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.pep-shop-card:hover .pep-shop-media img { transform: scale(1.05); }
.pep-shop-badge {
    position: absolute; top: 12px; left: 12px; z-index: 2;
    background: var(--pep-green, #1B3C2D); color: #fff;
    font-size: 0.68rem; letter-spacing: 0.04em; text-transform: uppercase;
    padding: 6px 10px; border-radius: 6px;
}
.pep-shop-badge-alt { background: #8a6d3b; }
.pep-shop-body { padding: 18px 18px 20px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.pep-shop-body h3 { font-size: 1.02rem; margin: 0; }
.pep-shop-meta { font-size: 0.84rem; color: rgba(0,0,0,0.55); margin: 0; }
.pep-shop-cta {
    margin-top: auto; padding-top: 12px; font-weight: 700; font-size: 0.88rem;
    color: var(--pep-green); display: inline-flex; align-items: center; gap: 8px; text-decoration: none;
}
.pep-shop-cta:hover { color: #A2BA48; }

/* ── Marque partenaire (Semailles) ────────────────────────── */
.pep-marque-card {
    background: #fff; border: 1px solid var(--pep-line, rgba(27,60,45,0.1));
    border-radius: 14px; padding: clamp(24px, 4vw, 48px);
    box-shadow: 0 20px 50px -40px rgba(27,60,45,0.35);
}
.pep-marque-produit {
    height: 100%; padding: 20px; border: 1px dashed rgba(27,60,45,0.22);
    border-radius: 10px; background: rgba(247,244,236,0.6);
}
.pep-marque-produit i { color: var(--pep-green); font-size: 1.1rem; margin-bottom: 10px; display: block; }
.pep-marque-produit h3 { font-size: 1rem; margin-bottom: 6px; }
.pep-marque-produit p { font-size: 0.88rem; margin: 0; color: rgba(0,0,0,0.62); }

/* ── Topbar coordonnées (fine, au-dessus du header) ───────── */
.pep-topbar {
    position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
    background: #1B3C2D; color: rgba(255,255,255,0.85);
    font-size: 0.78rem; line-height: 1;
}
.pep-topbar-inner {
    display: flex; align-items: center; justify-content: flex-end;
    gap: 26px; padding: 10px 0; flex-wrap: nowrap;
}
.pep-topbar-item { display: inline-flex; align-items: center; gap: 8px; color: rgba(255,255,255,0.85); white-space: nowrap; }
a.pep-topbar-item:hover { color: #fff; }
.pep-topbar-item i {
    display: inline-flex; align-items: center; justify-content: center;
    width: 20px; height: 20px; border-radius: 50%;
    background: rgba(226,201,160,0.9); color: #1B3C2D; font-size: 0.6rem;
}
.pep-topbar-socials { display: inline-flex; align-items: center; gap: 14px; margin-left: 6px; padding-left: 20px; border-left: 1px solid rgba(255,255,255,0.18); }
.pep-topbar-socials a { color: rgba(255,255,255,0.85); font-size: 0.85rem; }
.pep-topbar-socials a:hover { color: #A2BA48; }
@media (max-width: 768px) {
    .pep-topbar-loc { display: none; }
    .pep-topbar-inner { justify-content: center; gap: 18px; }
}

/* ── Header ajustements clairs ────────────────────────────── */
/* Fond clair permanent : le texte de navigation est foncé, un header
   transparent le rendait illisible sur le hero sombre. */
.mil-top-panel {
    background: rgba(247,244,236,0.92);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border-bottom: 1px solid rgba(27,60,45,0.08);
    top: 37px;
}
.mil-top-panel.mil-active { background: rgba(247,244,236,0.97); backdrop-filter: blur(6px); box-shadow: 0 4px 24px -18px rgba(0,0,0,0.4); }
.pep-header-pill {
    display: inline-flex; align-items: center; gap: 6px; font-size: 0.8rem;
    border: 1px solid var(--pep-line-strong); padding: 7px 14px; border-radius: 20px;
    color: var(--pep-green); transition: .25s;
}
.pep-header-pill:hover { background: var(--pep-green); color: #fff; border-color: var(--pep-green); }

/* ── Contact infos ────────────────────────────────────────── */
.pep-contact-info { list-style: none; padding: 0; margin: 0; }
.pep-contact-info li { display: flex; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--pep-line); }
.pep-contact-info li:last-child { border-bottom: none; }
.pep-contact-info i { color: var(--pep-accent-dark); font-size: 1.1rem; margin-top: 3px; width: 22px; text-align: center; }
.pep-contact-info b { display: block; color: var(--pep-green); font-family: "Sora", sans-serif; font-size: 0.85rem; }
.pep-contact-info span, .pep-contact-info a { color: var(--pep-ink-soft); }

/* ── Pages univers : contenu editorial ────────────────────── */
.pep-univers-body p { color: var(--pep-ink-soft); font-size: 1.02rem; line-height: 1.8; margin-bottom: 18px; }
.pep-univers-body p:last-child { margin-bottom: 0; }

/* Exemples et prix indicatifs */
.pep-prix-list { list-style: none; padding: 0; margin: 24px 0 0; }
.pep-prix-list li {
    display: flex; justify-content: space-between; align-items: baseline; gap: 18px;
    padding: 14px 0; border-bottom: 1px solid var(--pep-line);
}
.pep-prix-list li:last-child { border-bottom: none; }
.pep-prix-name { color: var(--pep-ink); font-size: 0.98rem; }
.pep-prix-name em { color: var(--pep-ink-soft); font-style: italic; }
.pep-prix-val {
    font-family: "Sora", sans-serif; font-weight: 700; font-size: 0.88rem;
    color: var(--pep-green); white-space: nowrap; text-align: right;
}
.pep-prix-note { margin-top: 16px; font-size: 0.85rem; color: var(--pep-ink-soft); }
.pep-prix-note i { color: var(--pep-accent-dark); margin-right: 6px; }

/* Conseil de saison (encart) */
.pep-conseil {
    display: flex; gap: 20px; background: var(--pep-paper);
    border: 1px solid var(--pep-line); border-left: 4px solid var(--pep-accent);
    border-radius: var(--pep-radius); padding: 28px 30px; height: 100%;
}
.pep-conseil i { color: var(--pep-accent-dark); font-size: 26px; flex: none; margin-top: 2px; }
.pep-conseil h3 { font-size: 1.2rem; margin-bottom: 8px; }
.pep-conseil p { color: var(--pep-ink-soft); font-size: 0.96rem; margin: 0; }

/* Liste de liens (maillage conseils) */
.pep-links-list { list-style: none; padding: 0; margin: 22px 0 0; }
.pep-links-list li { border-bottom: 1px solid var(--pep-line); }
.pep-links-list li:last-child { border-bottom: none; }
.pep-links-list a {
    display: flex; align-items: center; gap: 12px; padding: 15px 4px;
    color: var(--pep-green); font-weight: 600; font-size: 0.98rem; transition: .25s;
}
.pep-links-list a i { color: var(--pep-accent-dark); transition: transform .3s; }
.pep-links-list a:hover { color: var(--pep-accent-dark); }
.pep-links-list a:hover i { transform: translateX(5px); }

/* FAQ (alignee sur le schema FAQPage) */
.pep-faq { max-width: 820px; margin: 0 auto; }
.pep-faq-item {
    background: var(--pep-paper); border: 1px solid var(--pep-line);
    border-radius: var(--pep-radius); padding: 24px 28px; margin-bottom: 14px;
}
.pep-faq-item:last-child { margin-bottom: 0; }
.pep-faq-item h3 { font-size: 1.12rem; margin-bottom: 8px; color: var(--pep-green); }
.pep-faq-item p { color: var(--pep-ink-soft); font-size: 0.96rem; margin: 0; line-height: 1.7; }

/* ── Bande univers dans le footer ─────────────────────────── */
.pep-footer-univers { border-bottom: 1px solid rgba(255,255,255,0.14); padding-bottom: 26px; margin-bottom: 20px; }
.pep-footer-univers .pep-eyebrow { color: var(--pep-accent); }
.pep-footer-univers-list { list-style: none; padding: 0; margin: 12px 0 0; display: flex; flex-wrap: wrap; gap: 8px 22px; }
.pep-footer-univers-list a { color: rgba(255,255,255,0.82); font-size: 0.92rem; display: inline-flex; align-items: center; gap: 7px; }
.pep-footer-univers-list a:hover { color: var(--pep-accent); }
.pep-footer-univers-list a i { color: var(--pep-accent); font-size: 0.7rem; }

/* Sous-menu de navigation (univers), teinte claire coherente */
.mil-navigation nav ul li.mil-has-children ul { border-radius: 10px; }
@media screen and (min-width: 1400px) {
    .mil-navigation nav ul li.mil-has-children ul { padding: 20px 24px; min-width: 240px; }
    .mil-navigation nav ul li.mil-has-children ul li { margin-bottom: 12px; }
    .mil-navigation nav ul li.mil-has-children ul li a { font-size: 0.92rem; white-space: nowrap; }
}

/* Utilitaires d'espacement doux */
.pep-mt-40 { margin-top: 40px; }
.pep-mt-60 { margin-top: 60px; }
.pep-mb-14 { margin-bottom: 14px; }
.pep-mb-40 { margin-bottom: 40px; }
.pep-center { text-align: center; }

/* ── Modules editoriaux (conseils, articles, evenements, fiches) ──────────── */

/* Badge (brouillon, a confirmer) */
.pep-badge {
    display: inline-block; font-family: "Sora", sans-serif; font-size: 0.68rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.6px; padding: 3px 9px; border-radius: 20px;
    background: rgba(192,85,59,0.14); color: #9A3B27; vertical-align: middle; margin-left: 8px;
}
.pep-badge.pep-badge-soft { background: rgba(91,138,166,0.16); color: #2F5D72; }

/* Filtres de categorie */
.pep-filters { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin-bottom: 34px; }
.pep-filter-btn {
    font-family: "Sora", sans-serif; font-size: 0.86rem; font-weight: 600; cursor: pointer;
    padding: 8px 18px; border-radius: 30px; border: 1px solid var(--pep-line-strong);
    background: #fff; color: var(--pep-green); transition: all .2s ease;
}
.pep-filter-btn:hover { border-color: var(--pep-accent); }
.pep-filter-btn.is-active { background: var(--pep-green); color: #fff; border-color: var(--pep-green); }

/* Meta ligne de carte article */
.pep-card-meta { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 6px; }
.pep-card-date { font-size: 0.8rem; color: var(--pep-ink-soft); }
.pep-card a.pep-card-link { text-decoration: none; color: inherit; display: block; }
.pep-card a.pep-card-link:hover h3 { color: var(--pep-accent-dark); }

/* Corps d'article */
.pep-article-body { max-width: 760px; margin: 0 auto; font-size: 1.04rem; line-height: 1.8; color: var(--pep-ink); }
.pep-article-body .reponse-directe {
    font-size: 1.14rem; line-height: 1.7; font-weight: 500; color: var(--pep-green);
    background: rgba(162,186,72,0.1); border-left: 4px solid var(--pep-accent);
    padding: 20px 24px; border-radius: 0 10px 10px 0; margin-bottom: 34px;
}
.pep-article-body h2 { font-size: clamp(1.5rem, 2.6vw, 2rem); margin: 40px 0 14px; }
.pep-article-body h3 { font-size: 1.2rem; margin: 28px 0 10px; }
.pep-article-body p { margin: 0 0 18px; }
.pep-article-body ul, .pep-article-body ol { margin: 0 0 20px; padding-left: 24px; }
.pep-article-body li { margin-bottom: 8px; }
.pep-article-body a { color: var(--pep-accent-dark); text-decoration: underline; text-underline-offset: 3px; }
.pep-article-body a:hover { color: var(--pep-green); }
.pep-article-body table { width: 100%; border-collapse: collapse; margin: 10px 0 26px; font-size: 0.95rem; }
.pep-article-body th, .pep-article-body td { border: 1px solid var(--pep-line-strong); padding: 10px 12px; text-align: left; vertical-align: top; }
.pep-article-body th { background: var(--pep-paper); color: var(--pep-green); font-family: "Sora", sans-serif; }
.pep-article-body img { max-width: 100%; height: auto; border-radius: 10px; margin: 10px 0 24px; }

/* FAQ accordeon (native details/summary) */
.pep-faq { max-width: 760px; margin: 0 auto; }
.pep-faq-item { border: 1px solid var(--pep-line); border-radius: 10px; background: var(--pep-paper); margin-bottom: 12px; overflow: hidden; }
.pep-faq-item > summary {
    list-style: none; cursor: pointer; padding: 18px 22px; font-family: "Sora", sans-serif;
    font-weight: 600; color: var(--pep-green); display: flex; justify-content: space-between; align-items: center; gap: 12px;
}
.pep-faq-item > summary::-webkit-details-marker { display: none; }
.pep-faq-item > summary::after { content: "\002B"; font-size: 1.3rem; color: var(--pep-accent-dark); transition: transform .2s ease; }
.pep-faq-item[open] > summary::after { content: "\2212"; }
.pep-faq-answer { padding: 0 22px 20px; color: var(--pep-ink-soft); line-height: 1.75; }

/* Encart aimant a leads (fiche) */
.pep-lead-magnet {
    background: var(--pep-green-deep); color: #fff; border-radius: var(--pep-radius);
    padding: 34px 34px 38px; box-shadow: var(--pep-shadow);
}
.pep-lead-magnet h3 { color: #fff; font-size: 1.4rem; margin: 0 0 8px; }
.pep-lead-magnet p { color: rgba(255,255,255,0.82); margin: 0 0 18px; }
.pep-fiche-form { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; }
.pep-fiche-form input[type=email], .pep-fiche-form select {
    flex: 1; min-width: 200px; padding: 12px 15px; border-radius: 8px; border: 1px solid rgba(255,255,255,0.25);
    background: rgba(255,255,255,0.08); color: #fff; font-family: "Sora", sans-serif; font-size: 0.95rem;
}
.pep-fiche-form input[type=email]::placeholder { color: rgba(255,255,255,0.5); }
.pep-fiche-form select option { color: var(--pep-ink); }
.pep-fiche-form input:focus, .pep-fiche-form select:focus { outline: none; border-color: var(--pep-accent); }
.pep-fiche-check { display: flex; align-items: flex-start; gap: 8px; margin-top: 12px; font-size: 0.82rem; color: rgba(255,255,255,0.75); }
.pep-fiche-check input { margin-top: 3px; }
.pep-fiche-msg { width: 100%; margin-top: 12px; font-size: 0.9rem; min-height: 1em; }
.pep-fiche-msg.pep-ok { color: var(--pep-accent); }
.pep-fiche-msg.pep-err { color: #F0B3A2; }
.pep-fiche-link { color: #fff; font-weight: 600; text-decoration: underline; }

/* Encart fiche clair (page fiches, sous chaque fiche) */
.pep-fiche-card-form { background: var(--pep-paper); border: 1px solid var(--pep-line); border-radius: var(--pep-radius); padding: 22px 24px; }
.pep-fiche-card-form h3 { font-size: 1.15rem; margin: 0 0 6px; }
.pep-fiche-card-form p { color: var(--pep-ink-soft); font-size: 0.92rem; margin: 0 0 14px; }
.pep-fiche-card-form .pep-fiche-form input[type=email] { background: #fff; color: var(--pep-ink); border-color: var(--pep-line-strong); }
.pep-fiche-card-form .pep-fiche-form input[type=email]::placeholder { color: #9a978d; }
.pep-fiche-card-form .pep-fiche-check { color: var(--pep-ink-soft); }
.pep-fiche-card-form .pep-fiche-msg.pep-ok { color: var(--pep-green); }
.pep-fiche-card-form .pep-fiche-msg.pep-err { color: #9A3B27; }
.pep-fiche-card-form .pep-fiche-link { color: var(--pep-accent-dark); }

/* Evenements */
.pep-events { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 26px; }
.pep-event-card { background: #fff; border: 1px solid var(--pep-line); border-radius: var(--pep-radius); overflow: hidden; box-shadow: var(--pep-shadow); display: flex; flex-direction: column; }
.pep-event-media { position: relative; aspect-ratio: 16 / 10; overflow: hidden; }
.pep-event-media img { width: 100%; height: 100%; object-fit: cover; }
.pep-event-date-chip {
    position: absolute; top: 14px; left: 14px; background: var(--pep-green); color: #fff;
    border-radius: 10px; text-align: center; padding: 8px 12px; line-height: 1.1; font-family: "Sora", sans-serif;
}
.pep-event-date-chip .d { font-size: 1.4rem; font-weight: 700; display: block; }
.pep-event-date-chip .m { font-size: 0.72rem; text-transform: uppercase; letter-spacing: 1px; }
.pep-event-body { padding: 22px 24px 26px; display: flex; flex-direction: column; flex: 1; }
.pep-event-body h3 { font-size: 1.25rem; margin: 0 0 8px; }
.pep-event-body p { color: var(--pep-ink-soft); font-size: 0.94rem; margin: 0 0 14px; }
.pep-event-meta { font-size: 0.85rem; color: var(--pep-ink-soft); margin-bottom: 14px; }
.pep-event-meta i { color: var(--pep-accent-dark); width: 18px; }
.pep-event-past { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }
.pep-event-past-card { border-radius: var(--pep-radius); overflow: hidden; position: relative; aspect-ratio: 4 / 3; }
.pep-event-past-card img { width: 100%; height: 100%; object-fit: cover; }
.pep-event-past-cap { position: absolute; inset: auto 0 0 0; background: linear-gradient(to top, rgba(22,36,28,0.9), transparent); color: #fff; padding: 30px 16px 14px; }
.pep-event-past-cap strong { display: block; font-size: 1rem; }
.pep-event-past-cap span { font-size: 0.82rem; color: rgba(255,255,255,0.8); }

/* Fiche : entete et liens (page publique et bibliotheque) */
.pep-fiche-tag { font-family: "Sora", sans-serif; font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--pep-accent-dark); }

/* --------------------------------------------------------------------------
   Lisibilite des sous-menus (retour Aurore, aout 2026)
   Le sous-menu etait en noir sur vert clair, difficile a lire.
   On passe sur le vert profond de la marque avec un texte clair.
   -------------------------------------------------------------------------- */
.mil-navigation nav ul li.mil-has-children ul {
    background-color: var(--pep-green) !important;
    border-radius: 10px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.18);
    min-width: 260px;
    padding: 22px 26px;
}
.mil-navigation nav ul li.mil-has-children ul li a {
    color: rgba(255, 255, 255, 0.92) !important;
    font-weight: 500;
    letter-spacing: 0.01em;
    transition: color 0.25s ease, transform 0.25s ease;
}
.mil-navigation nav ul li.mil-has-children ul li a:hover {
    color: var(--pep-accent) !important;
}

/* --------------------------------------------------------------------------
   Barre de navigation, equilibre a trois paliers (retour Hamza, aout 2026)
   Le menu compte huit entrees depuis l'ajout de Services et Substrats & engrais.
   En dessous de 1200px le theme bascule deja sur le menu burger : la zone a
   traiter est donc la bande 1201px - 1500px, ou la barre debordait et poussait
   le bouton "Bureau d'etudes" sur deux lignes.
   -------------------------------------------------------------------------- */

/* Le bouton bureau d'etudes ne se coupe jamais et ne se comprime pas. */
.pep-header-pill {
    white-space: nowrap;
    flex-shrink: 0;
}

/* Le logo garde sa taille, la navigation absorbe la contrainte. */
.mil-top-panel .mil-logo { flex-shrink: 0; }
.mil-navigation { min-width: 0; }

/* Palier intermediaire : 1201px a 1500px. On resserre le rythme plutot que
   de reduire le nombre d'entrees. */

/* --------------------------------------------------------------------------
   Titre du hero, remise a l'echelle
   L'ancien titre faisait cinq mots, celui d'Aurore en fait douze. La grille
   typographique calibree pour une accroche courte produisait quatre lignes
   demesurees, et l'accent manuscrit tombait seul sur sa propre ligne.
   On redescend l'echelle, on elargit la justification et on remet l'accent
   dans le fil de la phrase : la voix change sur les deux derniers mots.
   -------------------------------------------------------------------------- */
.pep-hero h1 {
    font-size: clamp(2rem, 4.2vw, 3.6rem);
    line-height: 1.06;
    letter-spacing: -0.02em;
    max-width: 20ch;
    text-wrap: balance;
}
.pep-hero h1 .pep-hand-lg {
    display: inline;
    font-size: 1.08em;
    line-height: inherit;
    letter-spacing: 0;
    white-space: nowrap;
}
.pep-hero-inner { padding: 190px 0 96px; }
.pep-hero p { max-width: 52ch; }

@media screen and (max-width: 767px) {
    .pep-hero h1 { max-width: 17ch; }
    .pep-hero-inner { padding: 150px 0 72px; }
}

/* --------------------------------------------------------------------------
   Le renvoi vers le bureau d'etudes passe dans la barre utilitaire
   Ce lien pointe vers un site frere : ce n'est pas une section de ce site,
   sa place est avec les coordonnees, pas dans la navigation principale.
   Il libere au passage la largeur qui manquait a la barre de navigation.
   -------------------------------------------------------------------------- */
.pep-topbar-inner { justify-content: space-between; }
.pep-topbar-right { display: inline-flex; align-items: center; gap: 26px; flex-wrap: nowrap; }

.pep-topbar-cross {
    display: inline-flex; align-items: center; gap: 9px;
    color: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 20px;
    padding: 5px 14px;
    white-space: nowrap;
    flex-shrink: 0;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}
.pep-topbar-cross i { color: var(--pep-accent); font-size: 0.72rem; }
.pep-topbar-cross-arrow { opacity: 0.7; }
.pep-topbar-cross:hover {
    background: var(--pep-accent);
    border-color: var(--pep-accent);
    color: var(--pep-green);
}
.pep-topbar-cross:hover i, .pep-topbar-cross:hover .pep-topbar-cross-arrow { color: var(--pep-green); opacity: 1; }

/* Deux paliers de bureau seulement. Mesures faites sur le rendu reel : a
   1201px, huit entrees ne laissaient que 8px de marge, et il fallait
   descendre la police a 10,5px pour respirer, ce qui n'est plus lisible.
   Le basculement vers le menu burger est donc remonte de 1200 a 1399px
   dans theme.css, et les deux paliers ci-dessous couvrent le vrai bureau. */
@media screen and (min-width: 1400px) and (max-width: 1599px) {
    .mil-navigation nav ul li { margin-right: 14px; }
    .mil-navigation nav ul li a { font-size: 11.5px; padding: 0 8px; }
}
@media screen and (min-width: 1600px) {
    .mil-navigation nav ul li { margin-right: 18px; }
    .mil-navigation nav ul li a { padding: 0 9px; }
}

/* Sous 900px la barre utilitaire se resserre : on garde le lien, on raccourcit. */
@media (max-width: 900px) {
    .pep-topbar-cross span:not(.pep-topbar-cross-arrow) { display: none; }
    .pep-topbar-cross { padding: 5px 10px; gap: 6px; }
    .pep-topbar-right { gap: 16px; }
}
