/*
 * AnimyJob — refonte structurelle des univers locaux.
 * Le préfixe .aj-local-v6 isole intégralement ces règles des interfaces métier.
 */
.aj-local-v6 {
    --aj-local-ink: #083f58;
    --aj-local-muted: #526b78;
    --aj-local-blue: #1976a3;
    --aj-local-blue-dark: #0d5877;
    --aj-local-blue-soft: #eef7fa;
    --aj-local-orange: #f47c1c;
    --aj-local-cream: #fff6ed;
    --aj-local-line: #d7e3e8;
    --aj-local-card: #ffffff;
    --aj-local-shadow: 0 18px 50px rgba(20, 43, 74, .09);
    --aj-local-radius: 26px;
    color: var(--aj-local-ink);
    background: #f7fafb;
    isolation: isolate;
}

/* LIVE11 — refonte cohérente de toute la famille des pages ville Activités.
   Le ciblage repose sur le DOM réellement rendu et non sur le nom de l'action
   CakePHP, qui varie entre ville, territoire et rendu unifié. */
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-container {
    width: min(1260px, calc(100% - 40px));
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-layout {
    grid-template-columns: minmax(0, 1fr) 350px !important;
    gap: 30px !important;
    align-items: start;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero {
    position: relative;
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    overflow: hidden;
    padding: clamp(34px, 4vw, 52px) !important;
    border: 1px solid rgba(25,118,163,.18) !important;
    border-radius: 30px !important;
    background:
        radial-gradient(circle at 96% 5%, rgba(244,124,28,.15), transparent 27%),
        linear-gradient(135deg, #fff 0%, #eef7fa 72%, #fff5eb 100%) !important;
    box-shadow: 0 22px 60px rgba(8,63,88,.10) !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: clamp(34px, 4vw, 52px);
    width: 64px;
    height: 4px;
    border-radius: 0 0 6px 6px;
    background: var(--aj-local-orange);
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero__art {
    display: none !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero h1 {
    width: 100% !important;
    max-width: 820px !important;
    margin: 10px 0 18px !important;
    color: var(--aj-local-ink) !important;
    font-size: clamp(40px, 4.25vw, 58px) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero p {
    max-width: 790px !important;
    color: var(--aj-local-muted) !important;
    font-size: 17px !important;
    line-height: 1.7 !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__facts {
    gap: 12px !important;
    margin: 20px 0 22px !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__fact {
    border: 1px solid var(--aj-local-line) !important;
    border-radius: 18px !important;
    background: #fff !important;
    box-shadow: 0 8px 24px rgba(20,43,74,.055) !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-filter-strip {
    padding: 12px !important;
    border: 1px solid var(--aj-local-line) !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 8px 26px rgba(20,43,74,.05) !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-sidebar {
    position: sticky;
    top: 18px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-nearby-card {
    order: -2;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-selection-card {
    order: -1;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-sidebar-card {
    border: 1px solid var(--aj-local-line) !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 14px 38px rgba(20,43,74,.075) !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-mini-map--interactive {
    min-height: 330px !important;
    border-radius: 17px !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-content-section {
    border-radius: 24px !important;
    box-shadow: 0 12px 36px rgba(20,43,74,.055) !important;
}

@media (max-width: 1050px) {
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-layout {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-sidebar {
        position: static;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 680px) {
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-container {
        width: min(100% - 22px, 1260px);
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero {
        padding: 30px 21px !important;
        border-radius: 22px !important;
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero::before {
        left: 21px;
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero h1 {
        font-size: clamp(32px, 10vw, 42px) !important;
        line-height: 1.06 !important;
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-hero p {
        font-size: 15px !important;
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-local-sidebar {
        grid-template-columns: minmax(0, 1fr);
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .ajx-mini-map--interactive {
        min-height: 280px !important;
    }
}

/* LIVE10 — correctifs ciblés après contrôle en préproduction. */
body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero,
body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 42px 40px !important;
}
body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero__art,
body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero__art {
    display: none !important;
}
body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero h1,
body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero h1 {
    width: 100% !important;
    max-width: 780px !important;
    margin: 8px 0 14px !important;
    font-size: clamp(38px, 4.1vw, 52px) !important;
    line-height: 1.05 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}

.aj-local-v6--outings .ajx-hub-hero .ajx-department-search {
    border: 1px solid var(--aj-local-line) !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(15,44,61,.08) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-department-search label {
    color: var(--aj-local-blue-dark) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-department-search select {
    min-height: 48px !important;
    border: 1px solid var(--aj-local-line) !important;
    background: #fff !important;
    color: var(--aj-local-ink) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-department-search button {
    min-height: 48px !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel {
    border: 1px solid var(--aj-local-line) !important;
    background: #fff !important;
    box-shadow: 0 18px 48px rgba(15,44,61,.10) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel > strong {
    color: var(--aj-local-blue-dark) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel > span {
    color: var(--aj-local-muted) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel__grid > div {
    background: var(--aj-local-blue-soft) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel__grid b {
    color: var(--aj-local-ink) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel__grid small {
    color: var(--aj-local-muted) !important;
}

@media (max-width: 680px) {
    body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero,
    body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero {
        padding: 26px 20px !important;
    }
    body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero h1,
    body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero h1 {
        font-size: clamp(32px, 9.5vw, 40px) !important;
        line-height: 1.07 !important;
    }
}

/* LIVE11 cascade lock */
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: clamp(34px, 4vw, 52px) !important;
    border-radius: 30px !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero__art { display: none !important; }
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero h1 {
    width: 100% !important;
    max-width: 820px !important;
    font-size: clamp(40px, 4.25vw, 58px) !important;
    line-height: 1.02 !important;
    word-break: normal !important;
    hyphens: none !important;
}
@media (max-width: 680px) {
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero { padding: 30px 21px !important; border-radius: 22px !important; }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero h1 { font-size: clamp(32px, 10vw, 42px) !important; line-height: 1.06 !important; }
}

/* LIVE11 final : garantit le même hero pour toutes les villes, quel que soit
   le chemin interne (ville, territoire ou rendu unifié issu de la BDD). */
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: clamp(34px, 4vw, 52px) !important;
    border-radius: 30px !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero__art {
    display: none !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero h1 {
    width: 100% !important;
    max-width: 820px !important;
    font-size: clamp(40px, 4.25vw, 58px) !important;
    line-height: 1.02 !important;
    word-break: normal !important;
    hyphens: none !important;
}
@media (max-width: 680px) {
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero {
        padding: 30px 21px !important;
        border-radius: 22px !important;
    }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero h1 {
        font-size: clamp(32px, 10vw, 42px) !important;
        line-height: 1.06 !important;
    }
}

.aj-local-v6 *,
.aj-local-v6 *::before,
.aj-local-v6 *::after { box-sizing: border-box; }

.aj-local-v6 a { text-underline-offset: 3px; }

.aj-local-v6 .aj-local-v6__shell,
.aj-local-v6.aj-local-v6__shell {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.aj-local-v6 .aj-local-v6__breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    padding: 22px 0 14px;
    color: var(--aj-local-muted);
    font-size: 13px;
}

.aj-local-v6 .aj-local-v6__hero,
.aj-local-v6.aj-local-v6__detail .aj-local-v6__hero {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(25, 118, 163, .18);
    border-radius: 32px;
    background:
        radial-gradient(circle at 87% 18%, rgba(244, 124, 28, .16), transparent 26%),
        radial-gradient(circle at 70% 110%, rgba(25, 118, 163, .14), transparent 33%),
        linear-gradient(135deg, #ffffff 0%, #eef7fa 100%);
    box-shadow: 0 24px 70px rgba(20, 80, 145, .10);
}

.aj-local-v6 .aj-local-v6__hero::after {
    content: "";
    position: absolute;
    width: 190px;
    height: 190px;
    right: -58px;
    top: -72px;
    border: 30px solid rgba(255,255,255,.55);
    border-radius: 50%;
    pointer-events: none;
}

.aj-local-v6 .aj-local-v6__hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(280px, .75fr);
    align-items: stretch;
    gap: 28px;
    padding: clamp(30px, 5vw, 64px);
}

.aj-local-v6 .aj-local-v6__hero-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
}

.aj-local-v6 .aj-local-v6__hero-copy h1,
.aj-local-v6.aj-local-v6__detail .aj-local-v6__hero h1 {
    max-width: 820px;
    margin: 9px 0 18px;
    color: var(--aj-local-ink);
    font-family: "Manrope", "Nunito", system-ui, sans-serif;
    font-size: clamp(38px, 5.4vw, 68px);
    font-weight: 700;
    letter-spacing: -.045em;
    line-height: 1.01;
}

.aj-local-v6 .aj-local-v6__hero-copy > p,
.aj-local-v6.aj-local-v6__detail .aj-local-v6__hero p {
    max-width: 720px;
    margin: 0;
    color: var(--aj-local-muted);
    font-size: clamp(16px, 1.7vw, 19px);
    line-height: 1.7;
}

.aj-local-v6 .aj-local-v6__hero-aside {
    position: relative;
    z-index: 2;
    align-self: stretch;
    border: 1px solid rgba(255,255,255,.82);
    border-radius: 24px;
    background: rgba(255,255,255,.88);
    box-shadow: 0 18px 46px rgba(20, 80, 145, .12);
    backdrop-filter: blur(8px);
}

.aj-local-v6 .aj-local-v6__facts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 18px 0 34px;
}

.aj-local-v6 .aj-local-v6__fact {
    min-width: 0;
    padding: 18px 20px;
    border: 1px solid var(--aj-local-line);
    border-radius: 18px;
    background: var(--aj-local-card);
    box-shadow: 0 9px 28px rgba(20, 43, 74, .055);
}

.aj-local-v6 .aj-local-v6__fact strong,
.aj-local-v6 .aj-local-v6__fact b {
    display: block;
    overflow-wrap: anywhere;
    color: var(--aj-local-ink);
    font-size: 17px;
    line-height: 1.3;
}

.aj-local-v6 .aj-local-v6__fact span,
.aj-local-v6 .aj-local-v6__fact small {
    display: block;
    margin-top: 5px;
    color: var(--aj-local-muted);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .07em;
    line-height: 1.35;
    text-transform: uppercase;
}

.aj-local-v6 .aj-local-v6__content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    align-items: start;
    gap: 28px;
}

.aj-local-v6 .aj-local-v6__primary,
.aj-local-v6 .aj-local-v6__sidebar { min-width: 0; }

.aj-local-v6 .aj-local-v6__sidebar {
    position: sticky;
    top: 24px;
    display: grid;
    gap: 18px;
}

.aj-local-v6 .aj-local-v6__panel,
.aj-local-v6 .aj-local-v6__sidebar > section {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--aj-local-line);
    border-radius: var(--aj-local-radius);
    background: var(--aj-local-card);
    box-shadow: var(--aj-local-shadow);
}

.aj-local-v6 .aj-local-v6__section {
    margin-block: 28px;
    padding: clamp(24px, 3vw, 38px);
    border: 1px solid var(--aj-local-line);
    border-radius: var(--aj-local-radius);
    background: var(--aj-local-card);
    box-shadow: 0 14px 42px rgba(20, 43, 74, .06);
}

.aj-local-v6 .aj-local-v6__section--soft {
    border-color: transparent;
    background: linear-gradient(145deg, #eef7fa 0%, #f7fafb 100%);
}

.aj-local-v6 .aj-local-v6__section h2,
.aj-local-v6 .aj-local-v6__panel h2 {
    color: var(--aj-local-ink);
    letter-spacing: -.025em;
    line-height: 1.15;
}

.aj-local-v6 .aj-local-v6__cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.aj-local-v6 .aj-local-v6__cards > article,
.aj-local-v6 .aj-local-v6__cards > a,
.aj-local-v6 .aj-local-v6__cards > div {
    min-width: 0;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.aj-local-v6 .aj-local-v6__cards > article:hover,
.aj-local-v6 .aj-local-v6__cards > a:hover {
    transform: translateY(-3px);
    border-color: rgba(18, 104, 232, .35);
    box-shadow: 0 18px 44px rgba(20, 80, 145, .13);
}

/* Activités : les classes historiques restent les contrats du JS et des Elements. */
.aj-local-v6--activities .ae-hero { border-bottom: 0; background: transparent; }
.aj-local-v6--activities .ae-hero-panel { padding: 26px; }
.aj-local-v6--activities .ae-hero-panel > strong { color: var(--aj-local-blue); font-size: clamp(38px, 5vw, 58px); }
.aj-local-v6--activities .ae-hero-panel-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 20px; }
.aj-local-v6--activities .ae-hero-panel-grid > div { padding: 13px; border-radius: 15px; background: var(--aj-local-blue-soft); }
.aj-local-v6--activities .ae-search { max-width: 650px; margin-top: 26px; padding: 8px; border: 1px solid rgba(18,104,232,.18); border-radius: 18px; background: #fff; box-shadow: 0 12px 34px rgba(20,80,145,.10); }
.aj-local-v6--activities .ae-search > label { display: block; padding: 4px 8px 7px; color: var(--aj-local-muted); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.aj-local-v6--activities .ae-search-row { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.aj-local-v6--activities .ae-search-row input { min-width: 0; }
.aj-local-v6--activities .ajx-local-hero { margin-bottom: 18px; }
.aj-local-v6--activities .ajx-local-main > .ajx-content-section,
.aj-local-v6--activities .ajx-subdivision-section,
.aj-local-v6--activities .ajx-geo-scope,
.aj-local-v6--activities .ajx-clubs-bridge { border-radius: var(--aj-local-radius); }
.aj-local-v6--activities .ajx-place-grid,
.aj-local-v6--activities .ajx-idea-grid,
.aj-local-v6--activities .ajx-resource-grid { gap: 18px; }

/* Sorties : profondeur éditoriale et lecture main/aside. */
.aj-local-v6--outings .ajx-hub-hero,
.aj-local-v6--outings .ajx-local-hero,
.aj-local-v6--outings .sorties-place-hero { border-radius: 32px; }
.aj-local-v6--outings .sorties-main,
.aj-local-v6--outings .ajx-local-container { width: min(1180px, calc(100% - 40px)); }
.aj-local-v6--outings .sorties-results-section,
.aj-local-v6--outings .sorties-seo-rich-section,
.aj-local-v6--outings .sorties-enrichment-section { border-radius: var(--aj-local-radius); }
.aj-local-v6--outings .sorties-grid { gap: 18px; }
.aj-local-v6--outings .sorties-card,
.aj-local-v6--outings .sorties-nearby-place-card { border-color: var(--aj-local-line); border-radius: 20px; box-shadow: 0 10px 30px rgba(20,43,74,.065); }
.aj-local-v6--outings .sorties-filters,
.aj-local-v6--outings .ajx-selection-card { border-radius: 22px; background: #fff; }

/* Clubs : uniformise les pages très denses sans modifier les formulaires/cartes. */
.aj-local-v6--clubs .aj7-shell { width: min(1180px, calc(100% - 40px)); }
.aj-local-v6--clubs .aj6-shell { width: min(1180px, calc(100% - 40px)); }
.aj-local-v6--clubs .aj-local-v6__hero > .aj8-hero { border: 0; border-radius: inherit; background: transparent; box-shadow: none; }
.aj-local-v6--clubs .aj8-hero,
.aj-local-v6--clubs .aj7f-hero { border: 1px solid rgba(25,118,163,.18); border-radius: 32px; background: linear-gradient(135deg,#fff,#eef7fa); box-shadow: 0 24px 70px rgba(8,63,88,.10); }
.aj-local-v6--clubs .aj8-hero-grid { padding: clamp(28px,4vw,52px); }
.aj-local-v6--clubs .aj8-hero-copy h1,
.aj-local-v6--clubs .aj7f-ident-copy h1 { font-family: "Manrope","Nunito",system-ui,sans-serif; font-size: clamp(36px,4.8vw,62px); letter-spacing: -.045em; line-height: 1.02; }
.aj-local-v6--clubs .aj8-search-card,
.aj-local-v6--clubs .aj7f-map-wrap { border-radius: 24px; background: rgba(255,255,255,.9); box-shadow: 0 16px 42px rgba(20,80,145,.11); }
.aj-local-v6--clubs .aj8-filterbar { border: 1px solid var(--aj-local-line); border-radius: 18px; background: #fff; box-shadow: 0 8px 28px rgba(20,43,74,.055); }
.aj-local-v6--clubs .aj6-section,
.aj-local-v6--clubs .aj6-magazine,
.aj-local-v6--clubs .ajseo-section,
.aj-local-v6--clubs .ajseo-related,
.aj-local-v6--clubs .ajseo-faq { margin-block: 26px; padding: clamp(23px,3vw,36px); border: 1px solid var(--aj-local-line); border-radius: var(--aj-local-radius); background: #fff; box-shadow: 0 13px 40px rgba(20,43,74,.055); }
.aj-local-v6--clubs .aj6-sport-grid,
.aj-local-v6--clubs .aj6-city-grid,
.aj-local-v6--clubs .aj6-club-list,
.aj-local-v6--clubs .aj6-mag-grid,
.aj-local-v6--clubs .ajseo-grid { gap: 18px; }
.aj-local-v6--clubs .aj6-sport-card,
.aj-local-v6--clubs .aj6-city-card,
.aj-local-v6--clubs .ajseo-card { border-radius: 20px; }

@media (max-width: 980px) {
    .aj-local-v6 .aj-local-v6__hero-grid,
    .aj-local-v6 .aj-local-v6__content-grid { grid-template-columns: 1fr; }
    .aj-local-v6 .aj-local-v6__sidebar { position: static; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .aj-local-v6 .aj-local-v6__facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .aj-local-v6 .aj-local-v6__cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 680px) {
    .aj-local-v6 .aj-local-v6__shell,
    .aj-local-v6.aj-local-v6__shell,
    .aj-local-v6--outings .sorties-main,
    .aj-local-v6--outings .ajx-local-container,
    .aj-local-v6--clubs .aj6-shell,
    .aj-local-v6--clubs .aj7-shell { width: min(100% - 24px, 1180px); }
    .aj-local-v6 .aj-local-v6__hero-grid { gap: 20px; padding: 26px 20px; }
    .aj-local-v6 .aj-local-v6__hero-copy h1,
    .aj-local-v6.aj-local-v6__detail .aj-local-v6__hero h1,
    .aj-local-v6--clubs .aj8-hero-copy h1,
    .aj-local-v6--clubs .aj7f-ident-copy h1 { font-size: clamp(34px,10vw,46px); }
    .aj-local-v6 .aj-local-v6__facts,
    .aj-local-v6 .aj-local-v6__cards,
    .aj-local-v6 .aj-local-v6__sidebar { grid-template-columns: 1fr; }
    .aj-local-v6 .aj-local-v6__section { padding: 22px 18px; }
    .aj-local-v6--activities .ae-search-row { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
    .aj-local-v6 .aj-local-v6__cards > article,
    .aj-local-v6 .aj-local-v6__cards > a { transition: none; }
}

/* Harmonisation marque 2026 : aplats francs, contours fins, aucun relief inférieur. */
.aj-local-v6 :where(button, .btn, .ae-button-secondary, .ae-category-button, .ae2-button, .aeav-button, .aj7f-btn, .ajx-clubs-bridge__cta, .sorties-primary-button, .sorties-secondary-button) {
    min-height: 44px;
    border: 1px solid var(--aj-local-blue);
    border-radius: 12px;
    background: var(--aj-local-blue);
    color: #fff !important;
    box-shadow: none;
    font-weight: 800;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}
.aj-local-v6 :where(button, .btn, .ae-button-secondary, .ae-category-button, .ae2-button, .aeav-button, .aj7f-btn, .ajx-clubs-bridge__cta, .sorties-primary-button, .sorties-secondary-button):hover {
    border-color: var(--aj-local-blue-dark);
    background: var(--aj-local-blue-dark);
    color: #fff !important;
    box-shadow: none;
    transform: translateY(-1px);
}
.aj-local-v6 :where(.sorties-secondary-button, .ae-button-secondary, .ae2-button--ghost, .aeav-button-secondary, .ae-local-button--ghost, .aj7f-btn--ghost, .aj7f-btn--outline, .btn-secondary, .btn-outline) {
    border: 1px solid var(--aj-local-blue);
    background: #fff;
    color: var(--aj-local-blue-dark) !important;
    box-shadow: none;
}
.aj-local-v6 :where(.sorties-secondary-button, .ae-button-secondary, .ae2-button--ghost, .aeav-button-secondary, .ae-local-button--ghost, .aj7f-btn--ghost, .aj7f-btn--outline, .btn-secondary, .btn-outline):hover {
    border-color: var(--aj-local-blue-dark);
    background: var(--aj-local-blue-soft);
    color: var(--aj-local-blue-dark) !important;
}
.aj-local-v6 :where(.ae-kicker, .ajx-kicker, .sorties-kicker, .ajseo-head > span, .ajseo-pagination-context > span) { color: var(--aj-local-orange); }
.aj-local-v6 :where(.ae-kicker, .ajx-kicker, .sorties-kicker)::before { background: var(--aj-local-orange); }
.aj-local-v6 :where(.ae-card-label, .sorties-type-badge, .sorties-partner, .aj6-badge, .aj7f-badge) {
    background: var(--aj-local-cream);
    color: var(--aj-local-ink);
}
.aj-local-v6 :where(.ae-search input, .ae-search select, .ajx-department-search select, input, select, textarea):focus {
    border-color: var(--aj-local-blue);
    box-shadow: 0 0 0 3px rgba(25, 118, 163, .13);
    outline: 0;
}

/* Reprise des composants historiques chargés avant ce bundle. */
.aj-local-v6--activities :where(.ae-hero-home, .ae-local-hero-card) {
    border-color: var(--aj-local-line);
    background: linear-gradient(135deg, #fff 0%, #eef7fa 72%, #fff6ed 100%);
}
.aj-local-v6--activities :where(.ae-visual-counter, .ae-local-hero) {
    background: linear-gradient(135deg, var(--aj-local-blue-dark), var(--aj-local-blue));
}
.aj-local-v6--activities :where(.ae-new-item div small, .ae-card-label) { color: var(--aj-local-blue-dark); }
.aj-local-v6--activities .ae-card-label { background: var(--aj-local-blue-soft); }
.aj-local-v6--activities .ae-notice {
    border-color: rgba(244, 124, 28, .35);
    background: var(--aj-local-cream);
    color: var(--aj-local-ink);
}
.aj-local-v6--outings :where(.sorties-detail-hero, .ajx-hub-hero) {
    border: 1px solid rgba(25, 118, 163, .18);
    background: linear-gradient(135deg, var(--aj-local-blue-dark), var(--aj-local-blue));
    color: #fff;
}
.aj-local-v6--outings :where(.sorties-badges span, .sorties-detail-categories .sorties-chip) {
    border-color: rgba(25, 118, 163, .18);
    background: var(--aj-local-blue-soft);
    color: var(--aj-local-blue-dark);
}
.aj-local-v6--clubs :where(.aj8-hero, .aj7f-hero) {
    border-color: rgba(25, 118, 163, .18);
    background: linear-gradient(135deg, #fff 0%, #eef7fa 72%, #fff6ed 100%);
}
.aj-local-v6--clubs :where(.aj8-hero-copy, .aj8-hero-copy h1, .aj7f-ident-copy, .aj7f-ident-copy h1) { color: var(--aj-local-ink); }
.aj-local-v6--clubs :where(.aj8-filterbar a:hover, .aj8-filterbar a.is-active) {
    border-color: var(--aj-local-blue);
    background: var(--aj-local-blue);
    color: #fff;
}

/* LIVE2 — compatibilité finale avec les feuilles historiques locales.
   Les sélecteurs sont volontairement limités au wrapper V6 : aucun hook JS,
   formulaire ou composant Leaflet n'est affecté. */
.aj-local-v6 :where(.aj-local-v6__hero-grid, .aj-local-v6__content-grid, .aj-local-v6__facts, .aj-local-v6__cards, .ajx-place-grid, .ajx-idea-grid, .ajx-resource-grid, .ajx-department-grid, .sorties-grid, .sorties-modern-path-grid)::before,
.aj-local-v6 :where(.aj-local-v6__hero-grid, .aj-local-v6__content-grid, .aj-local-v6__facts, .aj-local-v6__cards, .ajx-place-grid, .ajx-idea-grid, .ajx-resource-grid, .ajx-department-grid, .sorties-grid, .sorties-modern-path-grid)::after {
    content: none !important;
    display: none !important;
}
.aj-local-v6 :where(.aj-local-v6__hero-grid, .aj-local-v6__content-grid, .aj-local-v6__cards, .ajx-place-grid, .ajx-idea-grid, .ajx-resource-grid, .ajx-department-grid, .sorties-grid, .sorties-modern-path-grid) > * { min-width: 0; }
.aj-local-v6 :where(.aj-local-v6__breadcrumb, .ae-breadcrumb, .ajx-breadcrumb) { color: var(--aj-local-muted) !important; }
.aj-local-v6 :where(.aj-local-v6__breadcrumb, .ae-breadcrumb, .ajx-breadcrumb) a { color: var(--aj-local-blue-dark) !important; }
.aj-local-v6 :where(.aj-local-v6__breadcrumb, .ae-breadcrumb, .ajx-breadcrumb) a:hover { color: var(--aj-local-orange-dark) !important; }
.aj-local-v6 :where(.aj-local-v6__hero-copy, .ae-hero-copy, .ae-local-hero-copy, .ajx-hub-hero__copy, .ajx-local-hero__copy) { color: var(--aj-local-ink) !important; }
.aj-local-v6 :where(.aj-local-v6__hero-copy, .ae-hero-copy, .ae-local-hero-copy, .ajx-hub-hero__copy, .ajx-local-hero__copy) h1 { color: var(--aj-local-ink) !important; }
.aj-local-v6 :where(.aj-local-v6__hero-copy, .ae-hero-copy, .ae-local-hero-copy, .ajx-hub-hero__copy, .ajx-local-hero__copy) p { color: var(--aj-local-muted) !important; }
.aj-local-v6 :where(.ajx-kicker--light, .sorties-kicker, .ae-kicker) { color: var(--aj-local-orange-dark) !important; }
.aj-local-v6 :where(.aj-local-v6__hero-aside, .ajx-hub-hero__aside, .ajx-local-hero__art) { color: var(--aj-local-ink); }
.aj-local-v6 :where(.aj-local-v6__hero-aside, .ajx-hub-hero__aside) strong { color: var(--aj-local-blue-dark) !important; }
.aj-local-v6 :where(.aj-local-v6__hero-aside, .ajx-hub-hero__aside) span,
.aj-local-v6 :where(.aj-local-v6__hero-aside, .ajx-hub-hero__aside) p { color: var(--aj-local-muted) !important; }
.aj-local-v6 :where(.ae-hero-panel-grid, .ajx-hub-stat-panel__grid) b {
    color: var(--aj-local-ink) !important;
}
.aj-local-v6 :where(.ae-hero-panel-grid, .ajx-hub-stat-panel__grid) small {
    color: var(--aj-local-muted) !important;
}

.aj-local-v6--activities :where(.ae-hero-home, .ae-local-hero-card, .ajx-local-hero) {
    border: 1px solid rgba(25,118,163,.18) !important;
    background: linear-gradient(135deg,#fff 0%,#eef7fa 74%,#fff6ed 100%) !important;
    color: var(--aj-local-ink) !important;
}
.aj-local-v6--activities :where(.ae-hero-home, .ae-local-hero-card, .ajx-local-hero) :where(h1,h2,h3) { color: var(--aj-local-ink) !important; }
.aj-local-v6--activities :where(.ae-hero-home, .ae-local-hero-card, .ajx-local-hero) p { color: var(--aj-local-muted) !important; }
.aj-local-v6--activities .ajx-highlight {
    background: none !important;
    color: var(--aj-local-blue-dark) !important;
    -webkit-text-fill-color: currentColor !important;
}
.aj-local-v6--activities .ajx-leaflet-marker span {
    background: linear-gradient(135deg, var(--aj-local-blue), var(--aj-local-blue-dark)) !important;
    box-shadow: 0 5px 13px rgba(13,88,119,.28) !important;
}
.aj-local-v6--activities .ajx-mini-map--interactive .leaflet-popup-content a {
    color: var(--aj-local-blue-dark) !important;
}
.aj-local-v6--activities :where(.ae-visual-tile--one, .ae-local-hero-card__art) { background-color: var(--aj-local-blue-soft) !important; }
.aj-local-v6--activities .ae-visual-tile--two { background: #fff0e4 !important; }
.aj-local-v6--activities .ae-visual-tile--three { background: #fff !important; }

.aj-local-v6--outings :where(.ajx-hub-hero, .ajx-local-hero, .sorties-place-hero) {
    border: 1px solid rgba(25,118,163,.18) !important;
    background: linear-gradient(135deg,#fff 0%,#eef7fa 74%,#fff6ed 100%) !important;
    color: var(--aj-local-ink) !important;
}
.aj-local-v6--outings :where(.ajx-hub-hero, .ajx-local-hero, .sorties-place-hero) :where(h1,h2,h3) { color: var(--aj-local-ink) !important; }
.aj-local-v6--outings :where(.ajx-hub-hero, .ajx-local-hero, .sorties-place-hero) p { color: var(--aj-local-muted) !important; }
.aj-local-v6--outings :where(.sorties-type-badge, .sorties-partner, .sorties-chip, .ajx-badge) {
    border-color: rgba(25,118,163,.18) !important;
    background: var(--aj-local-blue-soft) !important;
    color: var(--aj-local-blue-dark) !important;
}
.aj-local-v6--outings .ajx-department-search button {
    border-color: var(--aj-local-blue) !important;
    background: var(--aj-local-blue) !important;
    color: #fff !important;
    box-shadow: none !important;
}
.aj-local-v6--outings .ajx-department-search button:hover,
.aj-local-v6--outings .ajx-department-search button:focus {
    border-color: var(--aj-local-blue-dark) !important;
    background: var(--aj-local-blue-dark) !important;
}

@media (max-width: 760px) {
    .aj-local-v6 :where(.ajx-place-grid, .ajx-idea-grid, .ajx-resource-grid, .ajx-department-grid, .sorties-grid, .sorties-modern-path-grid) {
        grid-template-columns: 1fr !important;
    }
}

/* LIVE5 — correction ciblée des héros locaux observés en préproduction.
   Les règles restent limitées aux contrôleurs/actions concernés et ne touchent
   ni aux cartes Leaflet, ni aux formulaires, ni aux données SEO. */
body.ajp-controller-sorties_enfants.ajp-action-territoire .aj-local-v6 .sorties-page-head {
    grid-template-columns: minmax(0, 1fr) minmax(260px, .48fr) !important;
    min-height: 230px;
    padding: 36px 38px !important;
    background: linear-gradient(135deg, #fff 0%, #edf7fb 72%, #fff4e9 100%) !important;
    color: var(--aj-local-ink) !important;
}
body.ajp-controller-sorties_enfants.ajp-action-territoire .aj-local-v6 .sorties-page-head h1 {
    margin: 8px 0 12px !important;
    color: var(--aj-local-ink) !important;
    font-size: clamp(38px, 4.2vw, 54px) !important;
    line-height: 1.04 !important;
}
body.ajp-controller-sorties_enfants.ajp-action-territoire .aj-local-v6 .sorties-page-head p {
    color: var(--aj-local-muted) !important;
}

body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-hero {
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr) !important;
    gap: 30px !important;
    padding: 40px !important;
}
body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-hero h1 {
    max-width: 760px !important;
    font-size: clamp(38px, 4.1vw, 54px) !important;
    line-height: 1.04 !important;
}
body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-placeholder {
    min-height: 260px !important;
    border: 1px solid rgba(25, 118, 163, .18) !important;
    background:
        radial-gradient(circle at 88% 14%, rgba(244,124,28,.18), transparent 28%),
        linear-gradient(145deg, #f7fbff, #e8f4f9) !important;
    color: var(--aj-local-ink) !important;
}
body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-placeholder strong {
    color: var(--aj-local-ink) !important;
}
body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-placeholder small {
    color: var(--aj-local-muted) !important;
}

body.ajp-controller-activites_enfants.ajp-action-ville .aj-local-v6 .ajx-local-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 42px 40px !important;
}
body.ajp-controller-activites_enfants.ajp-action-ville .aj-local-v6 .ajx-local-hero__art {
    display: none !important;
}
body.ajp-controller-activites_enfants.ajp-action-ville .aj-local-v6 .ajx-local-hero h1 {
    max-width: 720px !important;
    margin: 8px 0 14px !important;
    font-size: clamp(38px, 4.1vw, 52px) !important;
    line-height: 1.05 !important;
}

body.ajp-controller-activites_enfants.ajp-action-ficheunifiee .aj-local-v6 .ae2-place-hero {
    grid-template-columns: minmax(0, 1.5fr) minmax(250px, .5fr) !important;
    gap: 28px !important;
    padding: 40px !important;
}
body.ajp-controller-activites_enfants.ajp-action-ficheunifiee .aj-local-v6 .ae2-place-hero h1 {
    max-width: 760px !important;
    margin: 8px 0 14px !important;
    font-size: clamp(38px, 4vw, 52px) !important;
    line-height: 1.045 !important;
}
body.ajp-controller-activites_enfants.ajp-action-ficheunifiee .aj-local-v6 .ae2-place-score {
    min-height: 210px !important;
    align-self: stretch !important;
    justify-content: center !important;
}

@media (max-width: 900px) {
    body.ajp-controller-sorties_enfants.ajp-action-territoire .aj-local-v6 .sorties-page-head,
    body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-hero,
    body.ajp-controller-activites_enfants.ajp-action-ficheunifiee .aj-local-v6 .ae2-place-hero {
        grid-template-columns: minmax(0, 1fr) !important;
    }
}

@media (max-width: 680px) {
    body.ajp-controller-sorties_enfants.ajp-action-territoire .aj-local-v6 .sorties-page-head,
    body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-hero,
    body.ajp-controller-activites_enfants.ajp-action-ville .aj-local-v6 .ajx-local-hero,
    body.ajp-controller-activites_enfants.ajp-action-ficheunifiee .aj-local-v6 .ae2-place-hero {
        padding: 26px 20px !important;
        border-radius: 22px !important;
    }
    body.ajp-controller-sorties_enfants.ajp-action-territoire .aj-local-v6 .sorties-page-head h1,
    body.ajp-controller-sorties_enfants.ajp-action-fiche .aj-local-v6 .sorties-detail-hero h1,
    body.ajp-controller-activites_enfants.ajp-action-ville .aj-local-v6 .ajx-local-hero h1,
body.ajp-controller-activites_enfants.ajp-action-ficheunifiee .aj-local-v6 .ae2-place-hero h1 {
        font-size: clamp(32px, 9.5vw, 40px) !important;
        line-height: 1.07 !important;
        letter-spacing: -.035em !important;
    }
}

/* LIVE10 final override — placé en fin de cascade. */
body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero,
body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: 42px 40px !important;
}
body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero__art,
body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero__art { display: none !important; }
body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero h1,
body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero h1 {
    width: 100% !important;
    max-width: 780px !important;
    margin: 8px 0 14px !important;
    font-size: clamp(38px, 4.1vw, 52px) !important;
    line-height: 1.05 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-department-search {
    border: 1px solid var(--aj-local-line) !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(15,44,61,.08) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-department-search label { color: var(--aj-local-blue-dark) !important; }
.aj-local-v6--outings .ajx-hub-hero .ajx-department-search select {
    min-height: 48px !important;
    border: 1px solid var(--aj-local-line) !important;
    background: #fff !important;
    color: var(--aj-local-ink) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-department-search button { min-height: 48px !important; }
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel {
    border: 1px solid var(--aj-local-line) !important;
    background: #fff !important;
    box-shadow: 0 18px 48px rgba(15,44,61,.10) !important;
}
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel > strong { color: var(--aj-local-blue-dark) !important; }
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel > span { color: var(--aj-local-muted) !important; }
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel__grid > div { background: var(--aj-local-blue-soft) !important; }
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel__grid b { color: var(--aj-local-ink) !important; }
.aj-local-v6--outings .ajx-hub-hero .ajx-hub-stat-panel__grid small { color: var(--aj-local-muted) !important; }
@media (max-width: 680px) {
    body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero,
    body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero { padding: 26px 20px !important; }
    body.ajp-controller-activites_enfants.ajp-action-territoire .aj-local-v6 .ajx-local-hero h1,
    body.ajp-controller-activites_enfants.ajp-action-territoiredepartement .aj-local-v6 .ajx-local-hero h1 {
        font-size: clamp(32px, 9.5vw, 40px) !important;
        line-height: 1.07 !important;
    }
}

/* LIVE11 final cascade lock */
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    min-height: 0 !important;
    padding: clamp(34px, 4vw, 52px) !important;
    border-radius: 30px !important;
}
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero__art { display: none !important; }
body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero h1 {
    width: 100% !important;
    max-width: 820px !important;
    font-size: clamp(40px, 4.25vw, 58px) !important;
    line-height: 1.02 !important;
    word-break: normal !important;
    hyphens: none !important;
}
@media (max-width: 680px) {
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero { padding: 30px 21px !important; border-radius: 22px !important; }
    body.ajp-controller-activites_enfants .aj-local-v6--activities.ajx-local .aj-local-v6__content-grid .ajx-local-hero h1 { font-size: clamp(32px, 10vw, 42px) !important; line-height: 1.06 !important; }
}
