/* Footer "Style 2" (backoffice > Paramètres > Style du footer, footer_style=2)
   — reconstruit façon Maquette_Utah.html (.footer/.footer-grid/.socials/
   .address/.copyright), classes préfixées .uw-footer- pour ne pas toucher
   aux styles 1 et 3 (toujours dans includes/footer_1.inc.php, non migrés).
   Grille à 5 colonnes comme la maquette (About | Col1 | Col2 | Col3 |
   Address) : les 3 colonnes de liens viennent de la table page (secteur=
   'menu'), réparties par page.colonne (1/2/3, choisi en backoffice > Menu &
   Pages), titres éditables dans backoffice > Paramètres > Footer. Le fond
   reste piloté par le backoffice (var(--couleur*) via $footer_bg_color,
   calculé en PHP dans footer_1.inc.php) plutôt que fixé à var(--night)
   comme dans la maquette. */

.uw-footer {
    padding: 28px 0 0;
}

/* Sans la bande newsletter (désactivée dans Paramètres du footer) : le logo + slogan
   s'affichent au-dessus de la grille (.uw-footer-brand--top), les colonnes gardent donc
   la même position qu'avec la bande ; un peu plus d'espace en haut (45px, comme la bande). */
.uw-footer.uw-footer--no-newsletter {
    padding-top: 45px;
}

.uw-footer-brand--top {
    display: inline-block;
    margin-bottom: 30px;
}

.uw-footer-brand--top .footer-logo {
    margin: 0;
}

.uw-footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr .8fr 1.2fr;
    gap: 40px;
}

@media (max-width: 1150px) {
    .uw-footer-grid {
        gap: 22px;
    }
}

@media (max-width: 800px) {
    .uw-footer-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }

    .uw-footer-about,
    .uw-footer-address {
        grid-column: span 2;
    }
}

@media (max-width: 480px) {
    .uw-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
    }

    .uw-footer-about,
    .uw-footer-address {
        grid-column: span 2;
    }

    .uw-footer-address {
        padding: 13px;
    }
}

.uw-footer-brand {
    display: inline-block;
    margin-bottom: 15px;
}

.uw-footer-brand strong {
    font-size: 21px;
}

.uw-footer p {
    margin-top: 20px;
    color: #aeb6c3;
    font-size: 15px; /* = footer style 3 (taille du texte du site) — avant : 12px */
    line-height: 1.9;
}

/* Description sous le logo (colonne « about ») : pas de marge haute (demande client 2026-09-30) */
.uw-footer .uw-footer-about p {
    margin-top: 0;
}

/* color:inherit : la règle globale h1-h6{color:var(--couleur2)} (uw-core.css/
   css.inc.php) cible directement <h3> et gagne contre l'héritage naturel
   depuis <footer style="color:$footer_text_color">, sans ça les titres de
   colonnes ignorent la couleur de texte choisie en backoffice. */
.uw-footer h3 {
    margin: 0 0 18px;
    color: inherit;
    font-size: 14px;
    letter-spacing: 0;
    text-transform: uppercase;
    font-weight: 700;
}

.uw-footer ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.uw-footer li {
    margin-bottom: 8px;
    font-size: 15px; /* = footer style 3 — avant : 12px */
}

/* color:inherit (et non une couleur fixe comme dans la maquette) pour que les
   liens suivent la couleur de texte choisie en backoffice (posée en style
   inline sur <footer>, voir footer_1.inc.php) au lieu du bleu par défaut du
   navigateur, qui gagnerait sinon contre la couleur héritée. */
.uw-footer a {
    color: inherit;
    text-decoration: none;
}

.uw-footer a:hover {
    color: var(--red, #ff4348);
}

.uw-footer-socials {
    display: flex !important;
    gap: 10px;
    margin-top: 20px !important;
}

/* Ronds agrandis le 2026-09-30 (avant : 30px / icône 14px) */
.uw-footer-socials a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;

    border: 1px solid #394251;
    border-radius: 50%;

    color: inherit;
    text-decoration: none;
    font-size: 16px;
}

.uw-footer-socials li {
    margin: 0;
}

/* Choix de langue (3 styles) : « FR » / « EN » dans les mêmes ronds fins que les réseaux,
   langue affichée mise en avant (contour + texte plus clairs) */
.uw-footer-lang {
    display: inline-flex;
    justify-content: center;
    gap: 10px;
    margin: 15px 0;
    padding: 0;
    list-style: none;
}

.uw-footer-lang li { margin: 0; }

.uw-footer-lang a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid #394251;
    border-radius: 50%;
    color: #aeb6c3;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .05em;
    text-decoration: none;
    transition: border-color .25s ease, color .25s ease;
}

.uw-footer-lang a[aria-current] {
    border-color: currentColor;
    color: #fff;
}

.uw-footer-lang a:hover {
    border-color: currentColor;
    color: var(--red, #ff4348);
    text-decoration: none;
}

/* Icônes réseaux (includes/page_reseau_footer.inc.php, partagé avec les styles
   1/3) : neutralise la pastille legacy .icon-circle-md/.icon-bg (fond blanc
   48px, css.inc.php + style.css) pour garder le rond fin 30px de la maquette. */
.uw-footer-socials i {
    width: auto;
    height: auto;
    padding: 0;
    background: none !important;
    color: inherit;
    font-size: 16px;
    line-height: 1;
}

/* .icon::before legacy (style.css) décale le glyphe via top/left 50% +
   translate(-50%,-50%) : on le remet dans le flux pour qu'il soit centré. */
.uw-footer-socials i::before {
    position: static;
    top: auto;
    left: auto;
    transform: none;
    display: inline;
}

.uw-footer-socials a:hover {
    border-color: currentColor;
}

/* Style 2 : couleur de survol explicite (color:inherit ci-dessus, déclaré après
   .uw-footer a:hover, l'annulerait sinon) */
.uw-footer .uw-footer-socials a:hover {
    color: var(--red, #ff4348);
}

/* Style 1 (minimaliste) : mêmes ronds que le style 2, centrés, couleur héritée du <ul> */
.footer-minimal .uw-footer-socials {
    justify-content: center;
    padding-left: 0;
    list-style: none;
}

.footer-minimal .uw-footer-socials {
    gap: 16px;
}

/* Plus gros que le style 2 (30px / 14px) : le footer minimaliste est centré et aéré */
.footer-minimal .uw-footer-socials a {
    width: 44px;
    height: 44px;
    color: inherit;
    text-decoration: none;
}

.footer-minimal .uw-footer-socials i {
    font-size: 18px;
}

/* Style 3 : logo aligné à gauche sur la colonne « CONTACT » (il était centré dans son
   tiers de largeur par .footer-logo{margin:0 auto}, et décalé de 15px car ce bloc
   n'est pas dans une .row) — visible quand la bande newsletter est désactivée */
.footer-multicolumn .footer-multicolumn-brand {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 30px;
}

.footer-multicolumn .footer-multicolumn-brand .footer-logo {
    margin: 0 0 10px;
}

/* Style 3 (multi-colonnes) : mêmes ronds, centrés sous le titre « SUIVEZ-NOUS » */
.footer-multicolumn .uw-footer-socials {
    justify-content: center;
    padding-left: 0;
    list-style: none;
}

.uw-footer-address {
    padding: 20px;
    border: 1px solid #354050;
    border-radius: 10px;
}

/* E-mail et téléphone rapprochés (avant : 28px entre les deux), l'espace est
   reporté au-dessus du bouton « Demander un devis » */
.uw-footer-address p {
    margin: 4px 0 0 !important;
}

.uw-footer-address p:first-of-type {
    margin-top: 8px !important;
}

.uw-footer-address .uw-btn {
    margin-top: 20px;
}

/* color:#fff explicite (normal + hover) : .uw-footer a/.uw-footer a:hover
   (plus haut dans ce fichier) ont la même spécificité que
   .uw-btn-primary/-primary:hover{color:#fff} de uw-core.css et gagnent car
   chargées après — sans ça le texte du bouton hériterait de la couleur de
   texte du footer, et passerait en rouge au survol au lieu de rester blanc
   comme les autres .uw-btn-primary du site. */
.uw-footer-address .uw-btn {
    padding: 12px;
    gap: 12px;

    background: var(--couleur2);
    border-color: var(--couleur2);
    color: #fff;

    font-size: 11px;
}

.uw-footer-address .uw-btn:hover {
    color: #fff;
}

.uw-footer-copyright {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;

    margin-top: 25px;
    padding: 17px 0;

    border-top: 1px solid rgba(255, 255, 255, .075);

    color: #929ba9;
    font-size: 13px; /* = barre du bas des footers style 1 et 3 — avant : 11px */
}

.uw-footer-copyright a {
    color: inherit;
}

@media (max-width: 480px) {
    .uw-footer-copyright {
        flex-direction: column;
        align-items: flex-start;
        gap: 7px;
    }
}

/* ══════════════════════════════════════════════════════════
   Footers "Style 1" (minimal) et "Style 3" (multi-colonnes) —
   repris de css/style.css (2026-09-29), valeurs inchangées. Les couleurs
   restent dans includes/css.inc.php (pilotées par var(--couleur*)).
   ══════════════════════════════════════════════════════════ */

/* Réseaux sociaux */
.social-links-footer {
    display: flex;
    margin-left: -10px;
}

.social-links-footer>* {
    margin-left: 20px;
}

@media (min-width: 768px) {
    .social-links-footer {
        margin-left: -40px;
        display: flex;
        justify-content: left;
    }

    .social-links-footer>* {
        margin-left: 40px;
    }
}

.footer-multicolumn .social-links-footer {
    margin-left: -15px;
}

.footer-multicolumn .social-links-footer>* {
    margin-left: 15px;
    font-size: 0.75em;
}

/* Style 1 : réseaux sociaux centrés en PC et responsive */
.footer-minimal .social-links-footer {
    justify-content: center;
    gap: 40px;
    margin-left: 0;
    padding-left: 0;
}

/* Écart géré par gap : sans ça, la marge gauche de 40px de chaque icône (règle
   générale ci-dessus) décalait tout le groupe d'environ 20px vers la droite */
.footer-minimal .social-links-footer > * {
    margin-left: 0;
}

@media (max-width: 480px) {
    .social-links-footer {
        justify-content: center;
        color: #e5ddd2;
    }
}

/* Style 1 — minimal */
.footer-minimal {
    padding: 60px 0;
    text-align: center;
    background: #343333;
}

@media (min-width: 992px) {
    .footer-minimal {
        padding: 100px 0px 0px 0px;
    }
}

.footer-minimal-nav {
    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 20px;
}

.footer-minimal-nav li {
    padding: 0 20px;
}

@media (min-width: 768px) {
    .footer-minimal-nav li {
        display: inline-block;
    }
}

/* Mobile uniquement : en ≥768px, includes/css.inc.php remet margin-top:0
   (avec une bordure couleur) — ce fichier étant chargé après css.inc.php,
   la marge est limitée au mobile pour ne pas écraser ce réglage. */
@media (max-width: 767.98px) {
    .footer-minimal-nav li+li {
        margin-top: 10px;
    }
}

.footer-links .sep {
    margin: 0 15px;
    display: inline-block;
}

.footer-logo {
    max-height: 180px;
    width: auto;
    display: block;
    margin: 0 auto 20px;
}

.footer-site-name h2 {
    font-size: clamp(28px, 2vw + 1rem, 52px);
    font-weight: 700;
    text-transform: uppercase;
    display: block;
    text-align: center;
}

.footer-site-name p {
    margin: 0px 250px 0px 0px;
}

@media (max-width: 480px) {
    .footer-site-name p {
        margin: 0 auto;
    }
}

/* Style 3 — multi-colonnes */
.row-40 {
    margin-bottom: -40px;
}

.row-40:empty {
    margin-bottom: 0;
}

.row-40>* {
    margin-bottom: 40px;
}

.footer-multicolumn .rd-dropdown-link {
    position: relative;
    display: inline-block;
    transition: padding-left 0.25s ease;
    padding-left: 0;
}

.footer-multicolumn .rd-dropdown-link::before {
    content: '';
    position: absolute;
    left: -7px;
    width: 2px;
    height: 100%;
    background-color: currentColor;
    opacity: 0;
    transition: opacity 0.25s ease;
    top: 0;
}

.footer-multicolumn .rd-dropdown-link:hover {
    padding-left: 12px;
}

.footer-multicolumn .rd-dropdown-link:hover::before {
    opacity: 1;
}

/* Responsive : texte et layout (styles 1 et 3) */
@media (max-width: 767px) {
    /* (display:block d'origine retiré : il était déjà écrasé par le
       display:flex de .footer-minimal-nav, déclaré après dans style.css) */
    .footer-minimal-nav {
        text-align: center;
    }

    .footer-minimal-nav li {
        display: block !important;
        margin: 0 0 10px 0 !important;
        padding: 0 !important;
        border-left: none !important;
        width: 100% !important;
    }

    .footer-minimal-nav li a {
        display: inline-block !important;
    }

    .footer-text-content {
        margin: 10px auto !important;
    }

    .footer-multicolumn .row.row-40 {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .footer-multicolumn .col-md-3.col-sm-6.col-xs-12 {
        width: 100%;
        max-width: 350px;
        text-align: left;
    }

    .footer-multicolumn .social-links-footer {
        justify-content: center !important;
    }
}
