/* =========================================================
   Salon du Chocolat Tarbes : footer (maquette SC_Footer)
   Mobile d'abord : 1 colonne, 2 x 2 dès 768 px, 4 colonnes dès 1024 px.
   ========================================================= */

.sct-footer {
  background: var(--color-cacao-900); color: var(--color-creme-100);
  font-family: var(--font-body);
}
.sct-footer__inner {
  max-width: 1440px; margin-inline: auto;
  padding: 48px 20px calc(32px + env(safe-area-inset-bottom, 0px));
  display: flex; flex-direction: column; gap: 40px;
}
.sct-footer__grille { display: grid; grid-template-columns: 1fr; gap: 32px; }
.sct-footer__col { display: flex; flex-direction: column; gap: 10px; min-width: 0; }

/* Logo */
.sct-footer__logo { display: inline-block; align-self: flex-start; border-radius: var(--radius-sm); }
.sct-footer__logo img { display: block; width: 150px; height: auto; }

/* Titres de colonnes (h2 stylés) : prioritaires sur les titres du kit Elementor */
.sct-footer .sct-footer__titre {
  margin: 0; font-family: var(--font-info); font-weight: 700; font-size: 15px; line-height: 1.2;
  letter-spacing: .14em; text-transform: uppercase; color: var(--color-caramel-300);
}
.sct-footer .sct-footer__dates {
  margin: 0; font-family: var(--font-info); font-weight: 700; font-size: 24px; line-height: 1.1;
  text-transform: uppercase; color: var(--color-creme-100);
}
.sct-footer .sct-footer__texte { margin: 0; font-size: 15px; line-height: 1.6; color: var(--color-creme-300); text-wrap: pretty; }

/* Liens : crème, caramel au survol (prioritaires sur la couleur de lien du kit) */
body .sct-footer a { color: var(--color-creme-100); text-decoration: none; transition: color .15s ease; }
body .sct-footer a:hover { color: var(--color-caramel-300); }
.sct-footer :is(a, button):focus-visible { outline: 2px solid transparent; box-shadow: 0 0 0 2px var(--color-cacao-900), 0 0 0 4px var(--color-creme-100); border-radius: var(--radius-xs); }

.sct-footer__menu { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
body .sct-footer .sct-footer__menu a { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; }

body .sct-footer .sct-footer__facebook { display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; min-height: 44px; margin-top: 4px; font-size: 15px; }
.sct-footer__facebook svg { flex: none; }

/* Barre du bas */
.sct-footer__bas {
  display: flex; flex-direction: column; align-items: flex-start; gap: 4px;
  padding-top: 20px; border-top: 1px solid var(--color-lait-600);
  font-size: 13px; color: var(--color-creme-300);
}
.sct-footer__bas p { margin: 0; }
.sct-footer__legal { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
body .sct-footer .sct-footer__bas a,
body .sct-footer .sct-footer__cookies { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; color: var(--color-creme-300); }
body .sct-footer .sct-footer__bas a:hover,
body .sct-footer .sct-footer__cookies:hover { color: var(--color-caramel-300); }
/* Bouton « Gérer mes cookies » : aspect de lien (écrase le style des boutons du thème et du kit) */
body .sct-footer .sct-footer__cookies {
  min-width: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: none;
  font: 400 13px/1.4 var(--font-body); cursor: pointer; text-align: left;
}
body .sct-footer .sct-footer__cookies:hover, body .sct-footer .sct-footer__cookies:focus { background: none; }
body .sct-footer .sct-footer__credit a { display: inline; min-height: 0; text-decoration: underline; text-decoration-color: var(--color-lait-600); text-underline-offset: 3px; }

/* Tablette : 2 x 2 */
@media (min-width: 768px) {
  .sct-footer__inner { padding: 56px 32px 32px; }
  .sct-footer__grille { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 32px; }
  .sct-footer__bas { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px 24px; }
  .sct-footer__legal { flex-direction: row; flex-wrap: wrap; gap: 0 24px; }
  body .sct-footer .sct-footer__bas a, body .sct-footer .sct-footer__cookies { min-height: 32px; }
  .sct-footer__haut { margin-left: auto; }
}

/* Ordinateur : 4 colonnes (maquette 1,1 / 1 / 0,8 / 1,3) */
@media (min-width: 1024px) {
  .sct-footer__inner { padding: 64px 48px 32px; }
  .sct-footer__grille { grid-template-columns: 1.1fr 1fr .8fr 1.3fr; gap: 32px; }
  .sct-footer__logo img { width: 170px; }
  body .sct-footer .sct-footer__menu a { min-height: 32px; }
}

/* Image de fond très discrète (même image que les en-têtes, déjà en cache) :
   fondue en luminosité dans le cacao, invisible en haut, qui s'estompe avant la barre du bas.
   Intensité réglable dans le Personnaliseur (--sct-footer-opacite). */
.sct-footer { position: relative; isolation: isolate; }
.sct-footer::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: var(--sct-fond-entete-mobile, none) center / cover no-repeat;
  opacity: var(--sct-footer-opacite, .06);
}
/* Fondu haut et bas par un simple dégradé cacao (plus léger qu'un masque + mode de fusion) */
.sct-footer::after {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(180deg, var(--color-cacao-900) 0%, rgba(62, 23, 12, 0) 40%, rgba(62, 23, 12, 0) 68%, var(--color-cacao-900) 90%);
}
@media (min-width: 768px) { .sct-footer::before { background-image: var(--sct-fond-entete, none); } }