/**
 * Store Locator — Layout
 *
 * Réplique le padding horizontal et les backgrounds de section
 * que le template Elementor (post-19958) applique aux fiches-agences FA.
 *
 * Valeurs extraites du kit Elementor (post-18572.css) :
 *   Desktop  (>1440px) : padding-h 120px
 *   1440px              : 40px
 *   1279px              : 44px
 *   1023px              : 36px
 *   767px               : 40px
 *   639px               : 16px
 *
 * Backgrounds extraits du template FA (post-19958.css) :
 *   --e-global-color-a9ad81c : #F6AC94 (peach — section agences)
 *   --e-global-color-9035172: #92E9D1 (mint  — section avis)
 */

/* ============================================================
   1. CSS custom properties — alignées sur le kit Elementor
   ============================================================ */
.store-locator-page {
    --sl-padding-h:  120px;
    --sl-spacer:     80px;
    --sl-max-width:  1200px;
    --sl-bg-peach:   #F6AC94;
    --sl-bg-mint:    #92E9D1;
}

@media (max-width: 1440px) {
    .store-locator-page { --sl-padding-h: 40px; }
}
@media (max-width: 1279px) {
    .store-locator-page { --sl-padding-h: 44px; --sl-spacer: 60px; }
}
@media (max-width: 1023px) {
    .store-locator-page { --sl-padding-h: 36px; }
}
@media (max-width: 767px) {
    .store-locator-page { --sl-padding-h: 40px; --sl-spacer: 40px; }
}
@media (max-width: 639px) {
    .store-locator-page { --sl-padding-h: 16px; }
}

/* ============================================================
   2. Padding horizontal — inner containers de chaque bloc
      Correspond à .e-con-boxed > .e-con-inner sur les pages FA
   ============================================================ */

/* Petit mot
   NB : .store-locator-page ne couvre que le chemin PageForge (agence pas encore
   synchronisée en CPT). Sur le chemin live (template Elementor Theme Builder,
   cas courant), le seul wrapper fiable est le body class .single-sl-agence. */
.store-locator-page .title-petit-mot,
.store-locator-page .fiche-agence-petit-mot-texte,
.single-sl-agence .title-petit-mot,
.single-sl-agence .fiche-agence-petit-mot-texte {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
    padding-left:  var(--sl-padding-h);
    padding-right: var(--sl-padding-h);
}

/* Réplique .single-nos-agences .nos-agences .title-petit-mot (fiche-agence/assets/style/styles.css) */
.store-locator-page .title-petit-mot,
.single-sl-agence .title-petit-mot {
    color: #11191e;
    font-weight: 600;
}


/* Équipe */
.store-locator-page .team-wrapper {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
    padding-left:  var(--sl-padding-h);
    padding-right: var(--sl-padding-h);
}

/* Certifications */
.store-locator-page .certif-wrapper {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
    padding-left:  var(--sl-padding-h);
    padding-right: var(--sl-padding-h);
}

/* Interventions */
.store-locator-page .intervention-wrapper {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
}

/* Étapes CCM */
.store-locator-page .etape-inner-container {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
    padding-left:  var(--sl-padding-h);
    padding-right: var(--sl-padding-h);
}

/* Offres d'emploi */
.store-locator-page .jobs-inner-container {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
    padding-left:  var(--sl-padding-h);
    padding-right: var(--sl-padding-h);
}

/* ============================================================
   3. Backgrounds de section pleine largeur
   ============================================================ */

/* Section avis — mint (#92E9D1), réplique container 0ce1bbf du template FA */
.store-locator-page .list-avis {
    background-color: var(--sl-bg-mint);
}

/* Section agences voisines — peach (#F6AC94), réplique container 7b60e9c du template FA */
.store-locator-page .more-agencies-wrapper {
    background-color: var(--sl-bg-peach);
}

/* ============================================================
   4. Espacement vertical entre blocs — réplique spacers Elementor (80px)
   ============================================================ */
.store-locator-page .title-petit-mot {
    margin-top: var(--sl-spacer);
}

.store-locator-page .team-wrapper {
    margin-top: var(--sl-spacer);
}

.store-locator-page .list-avis {
    margin-top: var(--sl-spacer);
    padding-top: var(--sl-spacer);
    padding-bottom: var(--sl-spacer);
}

.store-locator-page .certif-wrapper {
    margin-top: var(--sl-spacer);
}

.store-locator-page .intervention-wrapper {
    margin-top: var(--sl-spacer);
}

.store-locator-page .etape-container {
    margin-top: var(--sl-spacer);
}

.store-locator-page .more-agencies-wrapper {
    margin-top: var(--sl-spacer);
    padding-top: var(--sl-spacer);
    padding-bottom: var(--sl-spacer);
}

.store-locator-page .jobs-container {
    margin-top: var(--sl-spacer);
    margin-bottom: var(--sl-spacer);
}

/* ============================================================
   5. Padding interne de la section agences (max-width centré)
   ============================================================ */
.store-locator-page .more-agencies-wrapper > *:not(.more-agencies-list) {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
    padding-left:  var(--sl-padding-h);
    padding-right: var(--sl-padding-h);
}

.store-locator-page .more-agencies-list {
    box-sizing:    border-box;
    max-width:     var(--sl-max-width);
    margin-left:   auto;
    margin-right:  auto;
    padding-left:  var(--sl-padding-h);
    padding-right: var(--sl-padding-h);
}
