/**
 * Theme Name: Swebetech
 * Template:   twentytwentyfour
 * Description: Ce thème est 100% sur-mesure. Il est donc entièrement compatible avec l'éditeur Gutenberg et la technologie Full Site Editing (FSE), technologie intégrée nativement à WordPress et permettant la construction de sites Internet sur-mesure, performants et qualitatifs.
 * Author: Swebetech
 * Author URI: https://swebetech.com
 */


html {
    scroll-behavior: smooth;
    scroll-padding: 75px;
}

.is-position-sticky {
    position: sticky !important;
    top: 0px;
}

html>body {
    overflow-x: hidden !important;
    transition: 0.3s ease;
    scroll-padding: 75px;
}

.simple-popup--show {
    z-index: 99999;
}

:root :where(body) {
    --wp--style--root--padding-right: var(--wp--preset--spacing--20) !important;
    --wp--style--root--padding-left: var(--wp--preset--spacing--20) !important;
}

:where(.wp-site-blocks *:focus) {
    outline-width: inherit !important;
    outline-style: inherit !important;
}

.hide {
    display: none !important;
}

.no-scroll {
    overflow: hidden;
    height: 100%;
}

.horizontal-center {
    justify-content: center;
    margin-left: auto !important;
    margin-right: auto !important;
}

.width-50pct {
    width: 50%!important;
}
.width-100pct {
    width: 100%!important;
}
.max-width-100px {
    max-width: 100px!important;
}
.max-width-200px {
    max-width: 200px!important;
}
.margin-left-0 {
    margin-left: 0px!important;
}

/**
 * Transitions ciblées pour de meilleures performances
 * Évite la transition globale sur tous les éléments (*)
 */
a,
button,
input,
select,
textarea,
.wp-block-button__link {
    transition: all 0.3s ease;
}

h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    text-decoration: none;
    color: var(--wp--preset--color--main-0);
    transition: 0.3s ease;
}

h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
    color: var(--wp--preset--color--main-500);
    text-decoration: none;
}

/**
 * Gestion du Responsive
 */
@media screen and (max-width: 780px) {
    .column-inverse {
        display: flex;
        flex-direction: column-reverse;
    }
    .wrap-on-mobile {
        flex-wrap: wrap!important;
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
      align-items: flex-end!important;
      padding: 32px 12px!important;
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container {
      align-items: flex-end!important;
      gap: 10px!important;
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
      padding: 8px 16px!important;
    }
}

@media screen and (max-width:780px) {
    .hide-on-tablet {
        display: none !important;
    }

    .alignfull>.has-global-padding {
        padding-right: var(--wp--style--root--padding-right) !important;
        padding-left: var(--wp--style--root--padding-left) !important;
    }
}

@media screen and (min-width:781px) {
    .display-on-mobile {
        display: none !important;
    }
}

@media screen and (max-width:600px) {
    .hide-on-mobile {
        display: none !important;
    }

    .center-on-mobile {
        justify-content: center;
        text-align: center;
    }
}

/* =========================================================
   BOUTONS – Front (Gutenberg core/button)
   Variations : .primary-button + .primary-*
                .secondary-button + .secondary-*
   Objectif : moderne, dynamique, accessible
   ========================================================= */

/* --- Variables & base --- */
.wp-block-button.primary-button,
.wp-block-button.secondary-button {
    --btn-bg: var(--wp--preset--color--background);
    --btn-fg: var(--wp--preset--color--text);
    --btn-border: currentColor;

    --btn-shadow: 0 10px 25px rgba(0, 0, 0, .10);
    --btn-shadow-hover: 0 18px 45px rgba(0, 0, 0, .14);
    --btn-ring: 0 0 0 4px rgba(0, 0, 0, .10);

    --btn-translate-hover: -2px;
    --btn-translate-active: 0px;

    --btn-ease: cubic-bezier(.2, .8, .2, 1);
}

/* IMPORTANT : on clippe les pseudo-éléments AU NIVEAU DU LIEN */
.wp-block-button.primary-button>.wp-block-button__link,
.wp-block-button.secondary-button>.wp-block-button__link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;

    padding: .85rem 1.15rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: .01em;

    border-radius: 100rem;
    border-style: solid;
    border-width: 1px;

    background: var(--btn-bg) !important;
    color: var(--btn-fg) !important;
    border-color: var(--btn-border) !important;

    box-shadow: var(--btn-shadow);
    transform: translateY(0);
    transition:
        transform .22s var(--btn-ease),
        box-shadow .22s var(--btn-ease),
        filter .22s var(--btn-ease),
        background-color .22s var(--btn-ease),
        color .22s var(--btn-ease),
        border-color .22s var(--btn-ease);

    will-change: transform, box-shadow;
    text-decoration: none;
    overflow: hidden;
    isolation: isolate;
}

/* Liseré subtil (shine) — reste contenu grâce à overflow:hidden */
.wp-block-button.primary-button>.wp-block-button__link::before,
.wp-block-button.secondary-button>.wp-block-button__link::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;

    background: linear-gradient(135deg, rgba(255, 255, 255, .40), rgba(255, 255, 255, 0) 45%);
    opacity: .35;
    mix-blend-mode: overlay;

    transition: opacity .22s var(--btn-ease);
}

/* =========================================================
   Hover animation – Sheen moderne (slide diagonal)
   ========================================================= */

.wp-block-button.primary-button>.wp-block-button__link::after,
.wp-block-button.secondary-button>.wp-block-button__link::after {
    content: "";
    position: absolute;
    top: -60%;
    left: -140%;

    width: 120%;
    height: 220%;

    pointer-events: none;

    background: linear-gradient(120deg,
            transparent 0%,
            rgba(255, 255, 255, 0) 22%,
            rgba(255, 255, 255, .18) 35%,
            rgba(255, 255, 255, .55) 50%,
            rgba(255, 255, 255, .18) 65%,
            rgba(255, 255, 255, 0) 78%,
            transparent 100%);

    transform: translateX(0) skewX(-20deg);
    opacity: 0;

    filter: blur(0.2px);
}

/* Déclenchement au hover */
.wp-block-button.primary-button>.wp-block-button__link:hover::after,
.wp-block-button.secondary-button>.wp-block-button__link:hover::after {
    opacity: 1;
    animation: btn-sheen 1.5s var(--btn-ease);
}

@keyframes btn-sheen {
    0% {
        transform: translateX(0) skewX(-20deg);
    }

    100% {
        transform: translateX(260%) skewX(-20deg);
    }
}

/* Hover */
.wp-block-button.primary-button>.wp-block-button__link:hover,
.wp-block-button.secondary-button>.wp-block-button__link:hover {
    transform: translateY(var(--btn-translate-hover));
    box-shadow: var(--btn-shadow-hover);
    filter: saturate(1.05);
}

.wp-block-button.primary-button>.wp-block-button__link:hover::before,
.wp-block-button.secondary-button>.wp-block-button__link:hover::before {
    opacity: .55;
}

/* Active (pression) */
.wp-block-button.primary-button>.wp-block-button__link:active,
.wp-block-button.secondary-button>.wp-block-button__link:active {
    transform: translateY(var(--btn-translate-active)) scale(.99);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .12);
    filter: saturate(1.0);
}

/* Focus accessible */
.wp-block-button.primary-button>.wp-block-button__link:focus,
.wp-block-button.secondary-button>.wp-block-button__link:focus {
    outline: none;
}

.wp-block-button.primary-button>.wp-block-button__link:focus-visible,
.wp-block-button.secondary-button>.wp-block-button__link:focus-visible {
    box-shadow: var(--btn-shadow), var(--btn-ring);
}

/* Disabled si jamais tu ajoutes aria-disabled / disabled */
.wp-block-button__link[aria-disabled="true"],
.wp-block-button__link:disabled {
    opacity: .55;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none;
}

/* --- Largeur Gutenberg --- */
.wp-block-button.has-custom-width .wp-block-button__link {
    width: 100%;
}

/* =========================================================
   PRIMARY – Couleurs (on pilote avec des variables)
   ========================================================= */

/* Base primary (fallback) */
.wp-block-button.primary-button {
    --btn-bg: var(--wp--preset--color--text);
    --btn-fg: var(--wp--preset--color--background);
    --btn-border: var(--wp--preset--color--text);
    --btn-ring: 0 0 0 4px rgba(40, 40, 40, .18);
}

/* Primary Coral */
.wp-block-button.primary-button.primary-coral {
    --btn-bg: var(--wp--preset--color--brand-coral);
    --btn-fg: var(--wp--preset--color--background);
    --btn-border: var(--wp--preset--color--brand-coral);
    --btn-ring: 0 0 0 4px rgba(255, 107, 89, .28);
}

/* Primary Blue */
.wp-block-button.primary-button.primary-blue {
    --btn-bg: var(--wp--preset--color--brand-blue);
    --btn-fg: var(--wp--preset--color--background);
    --btn-border: var(--wp--preset--color--brand-blue);
    --btn-ring: 0 0 0 4px rgba(89, 156, 255, .28);
}

/* Primary Electric */
.wp-block-button.primary-button.primary-electric {
    --btn-bg: var(--wp--preset--color--brand-electric);
    --btn-fg: var(--wp--preset--color--text);
    --btn-border: var(--wp--preset--color--brand-electric);
    --btn-ring: 0 0 0 4px rgba(216, 255, 89, .35);
}

/* Primary Danger */
.wp-block-button.primary-button.primary-danger {
    --btn-bg: var(--wp--preset--color--danger);
    --btn-fg: var(--wp--preset--color--background);
    --btn-border: var(--wp--preset--color--danger);
    --btn-ring: 0 0 0 4px rgba(220, 53, 69, .25);
}

/* Primary Success */
.wp-block-button.primary-button.primary-success {
    --btn-bg: var(--wp--preset--color--success);
    --btn-fg: var(--wp--preset--color--background);
    --btn-border: var(--wp--preset--color--success);
    --btn-ring: 0 0 0 4px rgba(25, 135, 84, .25);
}

/* Petit “glow” coloré au hover */
.wp-block-button.primary-button.primary-coral>.wp-block-button__link:hover {
    box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(255, 107, 89, .20), 0 18px 50px rgba(255, 107, 89, .18);
}

.wp-block-button.primary-button.primary-blue>.wp-block-button__link:hover {
    box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(89, 156, 255, .20), 0 18px 50px rgba(89, 156, 255, .18);
}

.wp-block-button.primary-button.primary-electric>.wp-block-button__link:hover {
    box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(216, 255, 89, .20), 0 18px 50px rgba(216, 255, 89, .20);
}

.wp-block-button.primary-button.primary-danger>.wp-block-button__link:hover {
    box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(220, 53, 69, .20), 0 18px 50px rgba(220, 53, 69, .16);
}

.wp-block-button.primary-button.primary-success>.wp-block-button__link:hover {
    box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(25, 135, 84, .20), 0 18px 50px rgba(25, 135, 84, .16);
}

/* =========================================================
   SECONDARY – Styles (clair / foncé)
   ========================================================= */

.wp-block-button.secondary-button {
    --btn-shadow: 0 8px 20px rgba(0, 0, 0, .06);
    --btn-shadow-hover: 0 14px 36px rgba(0, 0, 0, .10);
}

/* Secondary Clear */
.wp-block-button.secondary-button.secondary-clear {
    --btn-bg: var(--wp--preset--color--background);
    --btn-fg: var(--wp--preset--color--text);
    --btn-border: var(--wp--preset--color--text);
    --btn-ring: 0 0 0 4px rgba(40, 40, 40, .14);
}

.wp-block-button.secondary-button.secondary-clear>.wp-block-button__link::after {
    background: linear-gradient(120deg,
            transparent 0%,
            rgba(40, 40, 40, 0) 22%,
            rgba(40, 40, 40, .12) 35%,
            rgba(40, 40, 40, .35) 50%,
            rgba(40, 40, 40, .12) 65%,
            rgba(40, 40, 40, 0) 78%,
            transparent 100%);
}

/* Secondary Dark */
.wp-block-button.secondary-button.secondary-dark {
    --btn-bg: var(--wp--preset--color--text);
    --btn-fg: var(--wp--preset--color--background);
    --btn-border: var(--wp--preset--color--background);
    --btn-ring: 0 0 0 4px rgba(255, 255, 255, .22);
}

/* Secondary : hover un peu plus “flat” */
.wp-block-button.secondary-button>.wp-block-button__link:hover {
    filter: brightness(1.03) saturate(1.02);
}

/* =========================================================
   Responsive : un peu plus confortable sur mobile
   ========================================================= */
@media (max-width: 600px) {

    .wp-block-button.primary-button>.wp-block-button__link,
    .wp-block-button.secondary-button>.wp-block-button__link {
        padding: .95rem 1.15rem;
    }
}

/* Option perf/UX : désactiver l’animation sheen sur devices sans hover */
@media (hover: none) {

    .wp-block-button.primary-button>.wp-block-button__link::after,
    .wp-block-button.secondary-button>.wp-block-button__link::after {
        display: none;
    }
}

/* =========================================================
   EXTENSION – Même design system pour :
   1) .wp-block-read-more.primary-coral
   2) .header-cta .wp-block-navigation-item__content
   ========================================================= */

/* --- Base commune (read more + nav CTA) --- */
a.wp-block-read-more.primary-coral,
.header-cta > a.wp-block-navigation-item__content{
  /* mêmes variables que tes boutons */
  --btn-bg: var(--wp--preset--color--background);
  --btn-fg: var(--wp--preset--color--text);
  --btn-border: currentColor;

  --btn-shadow: 0 10px 25px rgba(0,0,0,.10);
  --btn-shadow-hover: 0 18px 45px rgba(0,0,0,.14);
  --btn-ring: 0 0 0 4px rgba(0,0,0,.10);

  --btn-translate-hover: -2px;
  --btn-translate-active: 0px;
  --btn-ease: cubic-bezier(.2,.8,.2,1);

  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .85rem 1.15rem;

  line-height: 1;
  font-weight: 600;
  letter-spacing: .01em;

  border-radius: 100rem;
  border-style: solid;
  border-width: 1px;

  background: var(--btn-bg);
  color: var(--btn-fg);
  border-color: var(--btn-border);

  box-shadow: var(--btn-shadow);
  transform: translateY(0);
  transition:
    transform .22s var(--btn-ease),
    box-shadow .22s var(--btn-ease),
    filter .22s var(--btn-ease),
    background-color .22s var(--btn-ease),
    color .22s var(--btn-ease),
    border-color .22s var(--btn-ease);

  will-change: transform, box-shadow;
  text-decoration: none;

  overflow: hidden;
  isolation: isolate;
}

/* Focus accessible */
a.wp-block-read-more.primary-coral:focus,
.header-cta > a.wp-block-navigation-item__content:focus{
  outline: none;
}
a.wp-block-read-more.primary-coral:focus-visible,
.header-cta > a.wp-block-navigation-item__content:focus-visible{
  box-shadow: var(--btn-shadow), var(--btn-ring);
}

/* Shine subtil (before) */
a.wp-block-read-more.primary-coral::before,
.header-cta > a.wp-block-navigation-item__content::before{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;

  background: linear-gradient(135deg, rgba(255,255,255,.40), rgba(255,255,255,0) 45%);
  opacity: .35;
  mix-blend-mode: overlay;

  transition: opacity .22s var(--btn-ease);
}

/* Sheen animé (after) */
a.wp-block-read-more.primary-coral::after,
.header-cta > a.wp-block-navigation-item__content::after{
  content: "";
  position: absolute;
  top: -60%;
  left: -140%;
  width: 120%;
  height: 220%;
  pointer-events: none;

  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255,255,255,0) 22%,
    rgba(255,255,255,.18) 35%,
    rgba(255,255,255,.55) 50%,
    rgba(255,255,255,.18) 65%,
    rgba(255,255,255,0) 78%,
    transparent 100%
  );

  transform: translateX(0) skewX(-20deg);
  opacity: 0;
  filter: blur(0.2px);
}

/* Hover */
a.wp-block-read-more.primary-coral:hover,
.header-cta > a.wp-block-navigation-item__content:hover{
  transform: translateY(var(--btn-translate-hover));
  box-shadow: var(--btn-shadow-hover);
  filter: saturate(1.05);
}

a.wp-block-read-more.primary-coral:hover::before,
.header-cta > a.wp-block-navigation-item__content:hover::before{
  opacity: .55;
}

a.wp-block-read-more.primary-coral:hover::after,
.header-cta > a.wp-block-navigation-item__content:hover::after{
  opacity: 1;
  animation: btn-sheen 1.5s var(--btn-ease);
}

/* Active */
a.wp-block-read-more.primary-coral:active,
.header-cta > a.wp-block-navigation-item__content:active{
  transform: translateY(var(--btn-translate-active)) scale(.99);
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
  filter: saturate(1.0);
}

/* Réutilise EXACTEMENT la même animation que tes boutons */
@keyframes btn-sheen{
  0%{ transform: translateX(0) skewX(-20deg); }
  100%{ transform: translateX(260%) skewX(-20deg); }
}

/* =========================================================
   Variantes couleurs ciblées via classes existantes
   ========================================================= */

/* Read more : primary-coral */
a.wp-block-read-more.primary-coral{
  --btn-bg: var(--wp--preset--color--brand-coral);
  --btn-fg: var(--wp--preset--color--background);
  --btn-border: var(--wp--preset--color--brand-coral);
  --btn-ring: 0 0 0 4px rgba(255,107,89,.28);
}
a.wp-block-read-more.primary-coral:hover{
  box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(255,107,89,.20), 0 18px 50px rgba(255,107,89,.18);
}

/* Nav : CTA “Adhérer” (header-cta) — style primary-coral par défaut
   (si tu veux une autre couleur, on ajuste la classe .header-cta) */
.header-cta > a.wp-block-navigation-item__content{
  --btn-bg: var(--wp--preset--color--brand-coral);
  --btn-fg: var(--wp--preset--color--background);
  --btn-border: var(--wp--preset--color--brand-coral);
  --btn-ring: 0 0 0 4px rgba(255,107,89,.28);
}
.header-cta > a.wp-block-navigation-item__content:hover{
  box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(255,107,89,.20), 0 18px 50px rgba(255,107,89,.18);
}

/* =========================================================
   Responsive + Perf (comme ton bloc)
   ========================================================= */
@media (max-width: 600px){
  a.wp-block-read-more.primary-coral,
  .header-cta > a.wp-block-navigation-item__content{
    padding: .95rem 1.15rem;
  }
}

@media (hover: none){
  a.wp-block-read-more.primary-coral::after,
  .header-cta > a.wp-block-navigation-item__content::after{
    display: none;
  }
}


/* ---------- Buttons (reprend EXACTEMENT la logique des boutons thème) ---------- */
.lei-btn {
  /* variables proches de .primary-button */
  --btn-bg: var(--lei-coral);
  --btn-fg: var(--lei-bg);
  --btn-border: var(--lei-coral);

  --btn-shadow: 0 10px 25px rgba(0, 0, 0, .10);
  --btn-shadow-hover: 0 18px 45px rgba(0, 0, 0, .14);
  --btn-ring: 0 0 0 4px rgba(255, 107, 89, .28);

  --btn-translate-hover: -2px;
  --btn-translate-active: 0px;

  --btn-ease: cubic-bezier(.2, .8, .2, 1);

  width: 100%;
  margin-top: var(--wp--preset--spacing--30);

  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;

  min-height: 52px;
  padding: .9rem 1.15rem;

  line-height: 1;
  font-weight: 700;
  letter-spacing: .01em;

  border-radius: var(--lei-radius-pill);
  border-style: solid;
  border-width: 1px;

  background: var(--btn-bg);
  color: var(--btn-fg);
  border-color: var(--btn-border);

  box-shadow: var(--btn-shadow);
  transform: translateY(0);

  transition:
    transform .22s var(--btn-ease),
    box-shadow .22s var(--btn-ease),
    filter .22s var(--btn-ease),
    background-color .22s var(--btn-ease),
    color .22s var(--btn-ease),
    border-color .22s var(--btn-ease);

  will-change: transform, box-shadow;
  text-decoration: none;
  overflow: hidden;
  isolation: isolate;

  cursor: pointer;
}

/* Shine subtil */
.lei-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255, 255, 255, .40), rgba(255, 255, 255, 0) 45%);
  opacity: .35;
  mix-blend-mode: overlay;
  transition: opacity .22s var(--btn-ease);
}

/* Sheen animé */
.lei-btn::after {
  content: "";
  position: absolute;
  top: -60%;
  left: -140%;
  width: 120%;
  height: 220%;
  pointer-events: none;

  background: linear-gradient(120deg,
      transparent 0%,
      rgba(255, 255, 255, 0) 22%,
      rgba(255, 255, 255, .18) 35%,
      rgba(255, 255, 255, .55) 50%,
      rgba(255, 255, 255, .18) 65%,
      rgba(255, 255, 255, 0) 78%,
      transparent 100%);

  transform: translateX(0) skewX(-20deg);
  opacity: 0;
  filter: blur(0.2px);
}

.lei-btn:hover {
  transform: translateY(var(--btn-translate-hover));
  box-shadow: var(--btn-shadow-hover), 0 0 0 1px rgba(255, 107, 89, .20), 0 18px 50px rgba(255, 107, 89, .18);
  filter: saturate(1.05);
}

.lei-btn:hover::before {
  opacity: .55;
}

.lei-btn:hover::after {
  opacity: 1;
  animation: lei-btn-sheen 1.5s var(--btn-ease);
}

@keyframes lei-btn-sheen {
  0% {
    transform: translateX(0) skewX(-20deg);
  }

  100% {
    transform: translateX(260%) skewX(-20deg);
  }
}

.lei-btn:active {
  transform: translateY(var(--btn-translate-active)) scale(.99);
  box-shadow: 0 8px 18px rgba(0, 0, 0, .12);
  filter: saturate(1.0);
}

.lei-btn:focus {
  outline: none;
}

.lei-btn:focus-visible {
  box-shadow: var(--btn-shadow), var(--btn-ring);
}

/* Loader/text */
.lei-btn__loader {
  font-weight: 800;
}

/* Disabled */
.lei-btn:disabled,
.lei-btn[aria-disabled="true"] {
  opacity: .55;
  cursor: not-allowed;
  transform: none !important;
  box-shadow: none;
}

.lei-btn:disabled::after {
  display: none;
}

/* Ghost */
.lei-btn--ghost {
  --btn-bg: var(--lei-bg);
  --btn-fg: var(--lei-text);
  --btn-border: rgba(0, 0, 0, .20);

  box-shadow: 0 8px 20px rgba(0, 0, 0, .06);
}

.lei-btn--ghost::after {
  background: linear-gradient(120deg,
      transparent 0%,
      rgba(40, 40, 40, 0) 22%,
      rgba(40, 40, 40, .12) 35%,
      rgba(40, 40, 40, .35) 50%,
      rgba(40, 40, 40, .12) 65%,
      rgba(40, 40, 40, 0) 78%,
      transparent 100%);
}

.lei-btn--ghost:hover {
  box-shadow: 0 14px 36px rgba(0, 0, 0, .10);
  filter: brightness(1.03) saturate(1.02);
}

/* Désactive sheen si pas de hover (perf) */
@media (hover: none) {
  .lei-btn::after {
    display: none;
  }
}




.loop-card.member {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}



/* =========================================================
   LOGOS MEMBRES – Carrousel horizontal mobile (CSS only)
   ========================================================= */

.logo-membres-horizontal {
  display: flex;
  flex-wrap: nowrap;
  gap: var(--wp--preset--spacing--40);
}

/* Mobile uniquement */
@media (max-width: 781px) {

  .logo-membres-horizontal {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch; /* inertie iOS */
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    justify-content: flex-start;
    padding-left: var(--wp--preset--spacing--40);
    padding-right: var(--wp--preset--spacing--40);


    padding-bottom: var(--wp--preset--spacing--20);
  }

  /* Masque la scrollbar (optionnel mais propre) */
  .logo-membres-horizontal::-webkit-scrollbar {
    display: none;
  }

  .logo-membres-horizontal {
    scrollbar-width: none; /* Firefox */
  }

  /* Chaque logo */
  .logo-membres-horizontal > figure {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    scroll-snap-align: center;
  }

  /* Taille homogène des logos */
  .logo-membres-horizontal img {
    max-height: 60px;
    width: auto;
    object-fit: contain;
  }
}
