/* =========================================================
   Europbots Academy — thème clair + vert luxe
   Chargé après les styles Webflow : il redéfinit leurs variables.
   ========================================================= */

:root {
  /* --- Palette verte (remplace le doré) --- */
  --eb-green: #ADF74F;          /* vert du logo */
  --eb-green-mid: #8ED83A;
  --eb-green-deep: #5FA622;     /* accents lisibles sur fond clair */
  --eb-green-ink: #3B6E12;      /* texte vert foncé */

  --brand--gold-lt: var(--eb-green);
  --brand--gold-dk: var(--eb-green-deep);
  --brand-alpha--gold-dk-5: #5fa6220d;
  --brand-alpha--gold-dk-8: #5fa62214;
  --brand-alpha--gold-dk-10: #5fa6221a;
  --brand-alpha--gold-dk-20: #5fa62233;
  --brand-alpha--gold-dk-35: #5fa62259;
  --brand-alpha--gold-dk-40: #5fa62266;
  --brand-alpha--gold-dk-50: #5fa62280;
  --brand-alpha--gold-lt-10: #adf74f1a;
  --brand-alpha--gold-lt-20: #adf74f33;

  /* --- Thème clair : on inverse les neutres --- */
  --eb-bg: #F3F4F1;             /* fond blanc/gris */
  --eb-surface: #FFFFFF;
  --eb-ink: #10140C;            /* texte principal */

  --neutral--dark: var(--eb-bg);
  --neutral--white: var(--eb-ink);
  --neutral--black: var(--eb-ink);

  --alpha--white-2: #10140c05;
  --alpha--white-4: #10140c0a;
  --alpha--white-5: #10140c14;
  --alpha--white-6: #10140c0f;
  --alpha--white-7: #10140c17;
  --alpha--white-10: #10140c1a;
  --alpha--white-12: #10140c1f;
  --alpha--white-15: #10140c26;
  --alpha--white-20: #10140c33;
  --alpha--white-30: #10140c4d;
  --alpha--white-50: #10140c80;
  --alpha--white-60: #10140c99;
  --alpha--white-73: #10140cb3;

  --alpha--dark-2: #ffffff05;
  --alpha--dark-5: #ffffff0d;
  --alpha--dark-8: #ffffff14;
  --alpha--dark-10: #ffffff1a;
  --alpha--dark-12: #ffffff1f;
  --alpha--dark-15: #ffffff26;
  --alpha--dark-73: #ffffffba;

  /* --- Dégradé « métal » vert, même construction que le doré --- */
  --bg-gold:
    linear-gradient(339deg, transparent 52.79%, #ffffffa6 95.95%),
    linear-gradient(77deg, #82CC30 11.6%, #B6FA62 25.31%, #DDFFA8 38%, #ADF74F 48.06%, #93DC3D 55.72%, #93DC3D 77.23%, #C2FB78 85.34%, #93DC3D 91.31%);
  --bg-gold-blend: normal, normal;

  /* --- Cartes blanches sur fond gris --- */
  --bg-big-card: linear-gradient(180deg, #ffffff 0%, #fafbf8 100%);
  --bg-small-card: linear-gradient(180deg, #ffffff 0%, #fbfcfa 100%);

  --shadow-glass: 0 1px 2px #10140c0a, 0 4px 16px #10140c0a;
  --shadow-glass-100: var(--shadow-glass);
  --shadow-glass-card: 0 1px 2px #10140c0d, 0 8px 28px #10140c0f;
  --shadow-btn: 0 2px 15px #5fa62440, 0 6px 27px #adf74f40, inset 0 1px 0 #ffffff80, inset 0 1px 4px #ffffff66;
  --shadow-section-hard: 0 -10px 40px #10140c0f, 0 -2px 6px #10140c08;
  --shadow-section-soft: 0 -10px 35px #10140c08, 0 -2px 2.5px #10140c05;
  --border: 1px solid var(--alpha--white-7);
}

body.bg-dark {
  background-color: var(--eb-bg);
  color: var(--alpha--white-73);
}

/* --- Texte en dégradé vert (titres) --- */
.text-gradient {
  background: linear-gradient(100deg, #2F5A0E 0%, #4A8A16 35%, #63AC24 50%, #4A8A16 65%, #2F5A0E 100%);
  background-clip: text;
  -webkit-background-clip: text;
}
.text-gold { color: var(--eb-green-deep); }

/* --- Boutons verts : texte sombre comme sur le logo --- */
.button-inner { color: var(--eb-ink); }
.button[data-style="gold"] .button-text { color: var(--eb-ink); font-weight: 600; }
.button[data-style="gold"]:hover .button-inner {
  box-shadow: 0 2px 18px #5fa62466, 0 0 32px #adf74f4d, inset 0 1px 0 #ffffffb3, inset 0 1px 4px #ffffffcc;
}
.button[data-style="gold"] .button-inner::after,
.box_icon::before { border-color: #ffffff80; }
.button[data-style="white"] .button-inner { background: var(--eb-ink); }
.button[data-style="white"] .button-text { color: #fff; }
.button[data-style="white"] .button-border::after {
  background: conic-gradient(from 5deg at 50% 50%, transparent 260deg, var(--eb-green) 360deg, transparent 361deg), var(--brand-alpha--gold-lt-20);
}

/* Icônes posées sur le vert : sombres */
.box_icon, .video_play-inner, .calendar_button { color: var(--eb-ink); }
.box_icon svg, .video_play svg { filter: drop-shadow(0 1px 1px #ffffff80); }

/* --- Navbar en verre clair --- */
.navbar-component { background-color: #f3f4f1cc; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.navlink:hover { color: var(--eb-green-ink); }

/* --- Bloc CTA vert --- */
.cta_wrap { box-shadow: 0 0 45px #adf74f59, 0 8px 20px #5fa62426, 0 4px 10px #10140c14, inset 0 1px #ffffff99; color: var(--eb-ink); }

/* --- Ombres pensées pour le sombre --- */
[data-sh="text"] { text-shadow: none; }
.heading_img, .board_picture, .board_user, .case_img { box-shadow: 0 4px 15px #10140c1f; }
.benef_people-img { border-color: var(--eb-surface); }
.dropdown_toggle.w--open .dropdown_icon svg { filter: none; }

/* --- Pointillés et repères du fond : vert léger --- */
:root { --eb-dash: #5fa62266; }
.divider svg path,
.stroke_v svg path { fill: var(--eb-dash); }
.footer_divider svg path { stroke: var(--eb-dash); stroke-opacity: 1; }
.dot { border-color: #5fa62259; background-color: #adf74f40; }

/* --- Logo Europbots Academy --- */
.nav-logo.eb-logo,
.footer_logo.eb-logo { width: auto; gap: 10px; justify-content: flex-start; }
.eb-logo-mark { display: flex; width: 40px; height: 36px; flex: none; }
.eb-logo-mark svg { width: 100%; height: 100%; }
.eb-logo-text {
  font-family: var(--font--heading);
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1;
  color: var(--eb-ink);
  white-space: nowrap;
}
.eb-logo-text span { font-weight: 500; color: inherit; }
.logo_pricing { width: auto; }
.logo_pricing .eb-logo-text { font-size: 20px; }

/* --- Encoches : texture pointillée du fond + trait sous la navbar ---
   Formes en dégradé blanc vues à travers un masque à pois :
   on passe le blanc en vert pour qu'elles ressortent sur fond clair. */
.bg_container stop[stop-color="white"],
.bg_container-copy stop[stop-color="white"],
.mask_bg stop[stop-color="white"],
.navbar_line stop[stop-color="white"] { stop-color: var(--eb-green-deep); }
.bg_container svg path,
.bg_container-copy svg path,
.mask_bg svg path { fill-opacity: .45; stroke-opacity: .8; }
.navbar_line svg path { stroke-opacity: .55; }

/* --- Hero : cadre rectangulaire (remplace le chevron) ---
   Sur mobile le fond fait 1440 px de large : le cadre traverserait le texte. */
@media screen and (max-width: 767px) {
  .hero_arrow { display: none; }
}

/* --- Encoche de séparation entre sections (même tracé que sous la navbar) --- */
.eb-notch {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  min-width: 1000px;
  max-width: 1440px;
  height: 23px;
  z-index: 2;
  pointer-events: none;
}
.eb-notch svg { display: block; width: 100%; height: 100%; }
/* L'encoche remplace les bordures droites d'origine */
.section.is-revenue, .section.is-faq { border-top: none; }

/* --- Fil lumineux autour des boutons verts : plus épais et plus foncé --- */
.button[data-style="gold"] .button-border { padding: 2px; }
.button[data-style="gold"] .button-border::after {
  background:
    conic-gradient(from 5deg at 50% 50%, transparent 220deg, #8ED83A 290deg, #3B6E12 355deg, transparent 361deg),
    #5fa62233;
}

/* --- Fil lumineux qui parcourt la forme du hero --- */
.hero_arrow-mask .svg_mask-stroke { stroke-width: 3; }
.hero_arrow-mask linearGradient stop { stop-color: var(--eb-green-deep); }

/* --- Hero : titre sans icône --- */
#home-hero .heading_anim .box_icon { display: none; }

/* --- Vidéo de présentation dans le hero (à la place de l'image du modèle) --- */
.eb-player { position: relative; display: block; aspect-ratio: 16 / 9; background: var(--eb-ink); }
.eb-player_media { display: block; width: 100%; height: 100%; object-fit: cover; }
.eb-player .video_play { cursor: pointer; transition: opacity .25s ease; }
.eb-player .video_play:focus-visible { outline: 3px solid var(--eb-green); outline-offset: 4px; border-radius: 999px; }
.eb-player.is-playing .video_play { opacity: 0; pointer-events: none; }
/* Sur mobile, le bouton rond du modèle est réduit et glissé entre le titre et le graphique de la miniature (il cachait le titre) */
@media screen and (max-width: 767px) {
  .eb-player .video_play { left: 52.5%; padding: 6px; }
  .eb-player .video_play-inner { width: 36px; height: 36px; }
  .eb-player .video_play .icon-24 { width: 14px; height: 14px; }
}
/* Pendant la lecture, le lecteur passe devant l'encoche de la section suivante : la barre de commandes reste accessible */
.hero_video-wrap.is-playing { position: relative; z-index: 2; }

/* --- Pas de badge « Made in Webflow » (le site n'est plus hébergé chez Webflow) --- */
.w-webflow-badge { display: none !important; }

/* --- Modules de la formation : visuels fixes à la place des vidéos du modèle --- */
.video_module-wrap.eb-module-visual {
  aspect-ratio: 972 / 1120;
  border-radius: 24px;
  border: 1px solid rgba(16, 20, 12, .08);
  box-shadow: 0 30px 70px rgba(16, 20, 12, .12), 0 6px 18px rgba(16, 20, 12, .06);
}
.video_module-wrap.eb-module-visual img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* --- Portraits des formateurs : les photos sont carrées, on les arrondit (les images du modèle étaient détourées) --- */
img[src*="images/formateur-"] { border-radius: 50%; object-fit: cover; }

/* --- Pied de page complet : contact, formateurs, CTA, liens, certifications --- */
.eb-footer .footer-inner { display: flex; flex-direction: column; gap: 56px; }
.eb-footer_top { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.eb-footer_tagline { color: var(--eb-ink); font-size: 18px; letter-spacing: -.01em; }
.eb-footer_main { display: grid; grid-template-columns: minmax(280px, 1fr) 2fr; gap: 64px; }
.eb-footer_left { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.eb-footer_contact { display: inline-flex; align-items: center; gap: 12px; color: rgba(16, 20, 12, .7); font-size: 17px; text-decoration: none; transition: color .2s ease; }
a.eb-footer_contact:hover { color: var(--eb-ink); }
.eb-footer_icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: rgba(95, 166, 34, .12); color: var(--eb-green-deep); flex: none; }
.eb-footer_icon svg { width: 18px; height: 18px; }
.eb-footer_team { display: flex; align-items: center; gap: 14px; margin-top: 24px; }
.eb-footer_faces { display: flex; }
.eb-footer_faces img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; border: 3px solid var(--eb-surface); box-shadow: 0 6px 16px rgba(16, 20, 12, .14); }
.eb-footer_faces img + img { margin-left: -14px; }
.eb-footer_team-text { color: rgba(16, 20, 12, .7); font-size: 15px; }
.eb-footer_cta { margin-top: 12px; }
.eb-footer_social { display: flex; gap: 10px; margin-top: 20px; }
.eb-footer_social-link { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: rgba(95, 166, 34, .12); color: var(--eb-green-deep); transition: background .2s ease, transform .2s ease; }
.eb-footer_social-link:hover { background: rgba(95, 166, 34, .22); transform: translateY(-2px); }
.eb-footer_social-link svg { width: 22px; height: 22px; }
.eb-footer_cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.eb-footer_col { display: flex; flex-direction: column; gap: 14px; }
.eb-footer_col-title { color: var(--eb-ink); font-size: 19px; font-weight: 600; letter-spacing: -.02em; margin-bottom: 6px; }
.eb-footer_link { color: rgba(16, 20, 12, .7); font-size: 16px; text-decoration: none; transition: color .2s ease; }
.eb-footer_link:hover { color: var(--eb-green-ink); }
.eb-footer_certifs { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.eb-footer_certif { display: flex; align-items: center; gap: 24px; padding: 22px 26px; border-radius: 20px; background: var(--eb-surface); border: 1px solid rgba(16, 20, 12, .08); box-shadow: 0 10px 30px rgba(16, 20, 12, .06); }
.eb-footer_qualiopi { width: 150px; flex: none; }
.eb-footer_fc { width: 170px; flex: none; }
.eb-footer_mention { margin: 0; color: rgba(16, 20, 12, .7); font-size: 14px; line-height: 1.45; }
.eb-footer_mention strong { color: var(--eb-ink); font-weight: 600; }
.eb-footer_bottom { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; color: rgba(16, 20, 12, .55); font-size: 15px; }
.eb-footer_legal { display: flex; align-items: center; gap: 12px; }
.eb-footer_legal .eb-footer_link { font-size: 15px; }
@media screen and (max-width: 991px) {
  .eb-footer_main { grid-template-columns: 1fr; gap: 48px; }
  .eb-footer_certifs { grid-template-columns: 1fr; }
}
@media screen and (max-width: 767px) {
  .eb-footer .footer-inner { gap: 40px; }
  .eb-footer_cols { grid-template-columns: 1fr 1fr; gap: 32px 20px; }
  .eb-footer_certif { flex-direction: column; align-items: flex-start; gap: 14px; }
  .eb-footer_bottom { flex-direction: column; align-items: flex-start; }
  .eb-footer_tagline { font-size: 16px; }
}

/* --- Boutons secondaires : pilule encre + pastille verte (remplace l'ancien bouton blanc) --- */
:root {
  --eb-ico-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --eb-ico-play: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8 5.6v12.8c0 .8.9 1.3 1.6.9l10-6.4c.6-.4.6-1.3 0-1.7l-10-6.4C8.9 4.3 8 4.8 8 5.6z'/%3E%3C/svg%3E");
  --eb-ico-calc: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='18' rx='2.5'/%3E%3Cpath d='M8.5 7.5h7M8.5 12h.01M12 12h.01M15.5 12h.01M8.5 16h.01M12 16h.01M15.5 16h.01'/%3E%3C/svg%3E");
}
.button[data-style="dark"] {
  padding: 5px 5px 5px 22px;
  background: radial-gradient(60% 120% at 50% 0%, #ffffff1a 0%, transparent 70%), var(--eb-ink);
  box-shadow: inset 0 1px 0 #ffffff26, 0 10px 24px -12px #10140ccc, 0 1px 2px #10140c40;
}
.button[data-style="dark"]::after { border-color: #ffffff1f; }
.button[data-style="dark"] .button-inner { gap: 14px; }
.button[data-style="dark"] .button-text { color: #fff; font-weight: 500; }
.button[data-style="dark"] .button-inner::after {
  content: ""; flex: none; width: 34px; height: 34px; border-radius: 50%;
  background: var(--eb-green);
  box-shadow: inset 0 1px 0 #ffffffb3, 0 0 0 4px #adf74f1f;
  -webkit-mask: none;
  transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s;
}
.button[data-style="dark"] .button-inner::before {
  content: ""; position: absolute; right: 9px; top: 50%; width: 16px; height: 16px; margin-top: -8px; z-index: 1;
  background: var(--eb-ink);
  -webkit-mask: var(--eb-ico-arrow) center / contain no-repeat; mask: var(--eb-ico-arrow) center / contain no-repeat;
  transition: transform .35s cubic-bezier(.2,.8,.2,1);
}
.button[data-style="dark"]:hover { box-shadow: inset 0 1px 0 #ffffff33, 0 14px 30px -12px #10140ce6, 0 0 0 1px #adf74f40; }
.button[data-style="dark"]:hover .button-inner::after { transform: scale(1.06); box-shadow: inset 0 1px 0 #ffffffb3, 0 0 0 6px #adf74f2e; }
.button[data-style="dark"]:hover .button-inner::before { transform: translateX(2px) rotate(-45deg); }
/* Vidéo : pastille lecture à gauche */
.button[data-style="dark"][data-eb-play] { padding: 5px 22px 5px 5px; }
.button[data-style="dark"][data-eb-play] .button-inner::after { order: -1; }
.button[data-style="dark"][data-eb-play] .button-inner::before { right: auto; left: 9px; -webkit-mask-image: var(--eb-ico-play); mask-image: var(--eb-ico-play); }
.button[data-style="dark"][data-eb-play]:hover .button-inner::before { transform: scale(1.12); }
/* Simulateur : pastille calculette */
.button[data-style="dark"][data-eb-icon="calc"] .button-inner::before { -webkit-mask-image: var(--eb-ico-calc); mask-image: var(--eb-ico-calc); }
.button[data-style="dark"][data-eb-icon="calc"]:hover .button-inner::before { transform: rotate(-8deg) scale(1.08); }
/* Navbar : version compacte */
.navbar-component .button[data-style="dark"] { padding: 4px 4px 4px 16px !important; }
.navbar-component .button[data-style="dark"] .button-inner { gap: 10px; }
.navbar-component .button[data-style="dark"] .button-inner::after { width: 28px; height: 28px; box-shadow: inset 0 1px 0 #ffffffb3; }
.navbar-component .button[data-style="dark"] .button-inner::before { right: 7px; width: 14px; height: 14px; margin-top: -7px; }
.navbar-component .button[data-style="dark"] .button-text { font-size: 14px; }

/* --- Boutons verts : flèche qui glisse au survol --- */
.button[data-style="gold"] .button-inner { gap: 10px; }
.button[data-style="gold"] .button-inner .button-text::after {
  content: ""; display: inline-block; width: 16px; height: 16px; margin-left: 10px; vertical-align: -3px;
  background: currentColor;
  -webkit-mask: var(--eb-ico-arrow) center / contain no-repeat; mask: var(--eb-ico-arrow) center / contain no-repeat;
  transition: transform .35s cubic-bezier(.2,.8,.2,1);
}
.button[data-style="gold"]:hover .button-text::after { transform: translateX(4px); }
.button[data-style="dark"] .button-text, .button[data-style="gold"] .button-text { white-space: nowrap; }

/* --- Section de réservation (iClosed) : titre centré, calendrier pleine largeur --- */
.eb-book { position: relative; }
.eb-book .padding-section { padding-top: 120px; padding-bottom: 110px; }
.eb-book_stack { display: grid; gap: 48px; }
.eb-book_head { display: grid; gap: 18px; justify-items: center; text-align: center; max-width: 820px; margin: 0 auto; }
.eb-book_title { font-size: 56px; line-height: 1.05; letter-spacing: -.045em; color: var(--eb-ink); margin: 0; }
.eb-book_lead { font-size: 19px; line-height: 1.55; color: rgba(16, 20, 12, .72); margin: 0; max-width: 620px; }
.eb-book_list { list-style: none; padding: 0; margin: 6px 0 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.eb-book_list li { display: flex; gap: 10px; align-items: center; padding: 8px 16px 8px 8px; border-radius: 999px; background: var(--eb-surface); border: 1px solid rgba(16, 20, 12, .08); font-size: 15px; line-height: 1.35; color: var(--eb-ink); text-align: left; }
.eb-book_check { flex: none; width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--eb-green); color: var(--eb-ink); box-shadow: inset 0 1px 0 #ffffffb3; }
.eb-book_check svg { width: 14px; height: 14px; }
.eb-book_team { display: flex; align-items: center; gap: 14px; text-align: left; }
.eb-book_faces { display: flex; }
.eb-book_faces img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; border: 3px solid var(--eb-bg); }
.eb-book_faces img + img { margin-left: -12px; }
.eb-book_team strong { display: block; font-size: 15px; color: var(--eb-ink); }
.eb-book_team span { font-size: 13px; color: rgba(16, 20, 12, .55); }
.eb-book_side { display: grid; gap: 16px; }
.eb-book_card { width: 100%; }
.eb-book_widget { display: block; width: 100%; height: 620px; overflow: hidden; }
.eb-book_widget iframe { width: 100% !important; height: 100% !important; border: 0; }
.eb-book_links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 28px; }
.eb-book_sim, .eb-book_fallback { font-size: 14px; text-decoration: underline; text-underline-offset: 3px; }
.eb-book_sim { color: var(--eb-green-ink); text-decoration-color: rgba(95, 166, 34, .4); }
.eb-book_fallback { color: rgba(16, 20, 12, .6); text-decoration-color: rgba(16, 20, 12, .25); }
.eb-book_fallback:hover { color: var(--eb-green-ink); }
@media screen and (max-width: 991px) {
  .eb-book .padding-section { padding-top: 80px; }
  .eb-book_stack { gap: 32px; }
  .eb-book_title { font-size: 40px; }
}
@media screen and (max-width: 767px) {
  .eb-book_title { font-size: 34px; }
  .eb-book_lead { font-size: 17px; }
  .eb-book_list { justify-content: flex-start; }
  .eb-book_list li { width: 100%; }
  .eb-book_widget { height: 680px !important; }
  .eb-book_links { flex-direction: column; align-items: center; text-align: center; }
}

/* --- Liens de la navbar et du pied de page : jamais en bleu (page en cours, lien visité, focus) --- */
.navlink.w--current, .w-nav-link.w--current { color: var(--eb-ink); font-weight: 500; }
.navlink:visited, .navlink:focus { color: rgba(16, 20, 12, .7); }
.navlink:hover, .navlink:focus-visible { color: var(--eb-green-ink); }
.eb-footer_link:visited, .eb-footer_link:focus, .eb-footer_link.w--current { color: rgba(16, 20, 12, .7); }
.eb-footer_link:hover { color: var(--eb-green-ink); }
.navbar-component a, .eb-footer a { -webkit-tap-highlight-color: transparent; }

/* --- Hero : logos de certification sous les boutons --- */
.eb-hero_certs {
  display: flex; align-items: center; gap: 22px; width: fit-content; margin: 28px auto 0; padding: 8px 20px;
  background: #fff; border-radius: 16px; box-shadow: 0 1px 2px #10140c14, 0 8px 24px -14px #10140c40;
}
.eb-hero_certs img { display: block; width: auto; height: 62px; }
.eb-hero_certs img + img { height: 46px; }
@media screen and (max-width: 767px) {
  /* Les deux boutons côte à côte */
  #home-hero .button-group { flex-direction: row; flex-wrap: nowrap; gap: 8px; }
  #home-hero .button-group .button { flex: 1 1 0; min-width: 0; }
  #home-hero .button-group .button-inner { justify-content: center; }
  #home-hero .button-group .button-text { font-size: 14px; }
  #home-hero .button[data-style="gold"] .button-inner { padding-left: 12px; padding-right: 12px; }
  #home-hero .button[data-style="dark"] { padding: 4px 14px 4px 4px; }
  #home-hero .button[data-style="dark"] .button-inner { gap: 8px; }
  #home-hero .button[data-style="dark"] .button-inner::after { width: 30px; height: 30px; }
  #home-hero .button[data-style="dark"] .button-inner::before { left: 8px; width: 14px; height: 14px; margin-top: -7px; }
  .eb-hero_certs { gap: 16px; margin-top: 22px; padding: 6px 16px; }
  .eb-hero_certs img { height: 56px; }
  .eb-hero_certs img + img { height: 42px; }
}

/* --- CTA final : tablette et mobile --- */
@media screen and (max-width: 991px) {
  #home-cta .container-1200 { padding-left: 24px; padding-right: 24px; }
  #home-cta .cta_wrap { border-radius: 28px; overflow: hidden; }
}
@media screen and (max-width: 767px) {
  #home-cta .container-1200 { padding-left: 16px; padding-right: 16px; }
  #home-cta .cta_wrap { border-radius: 24px; }
  #home-cta .cta_inner { padding-top: 48px; padding-bottom: 48px; }
  #home-cta .button-group { flex-direction: column; align-items: center; gap: 12px; }
}

/* Trois formateurs dans la carte « 8 participants » : photos et nom qui défilent */
.benef_people-wrap[data-active] { width: 136px; }
.benef_people-wrap[data-active] .benef_people-img.is-2 { left: 38px; right: auto; }
.benef_people-wrap[data-active] .benef_people-img.is-3 { top: 0; right: 0; overflow: hidden; }
.benef_people-wrap[data-active] .benef_people-img { opacity: .5; transform: translateY(8px); z-index: 0; }
.benef_people-wrap[data-active="1"] .benef_people-img.is-1,
.benef_people-wrap[data-active="2"] .benef_people-img.is-2,
.benef_people-wrap[data-active="3"] .benef_people-img.is-3 { opacity: 1; transform: translateY(0); z-index: 2; }
.benef_people-wrap[data-active="1"] .benefit_pill { left: 0; }
.benef_people-wrap[data-active="2"] .benefit_pill { left: calc(50% - 27px); }
.benef_people-wrap[data-active="3"] .benefit_pill { left: calc(100% - 54px); }
.benef_people-wrap[data-active] .benefit_pill-text { position: absolute; transform: translateY(28px); opacity: 0; }
.benef_people-wrap[data-active="2"] .benefit_pill-text.is-1,
.benef_people-wrap[data-active="3"] .benefit_pill-text.is-1,
.benef_people-wrap[data-active="3"] .benefit_pill-text.is-2 { transform: translateY(-28px); }
.benef_people-wrap[data-active="1"] .benefit_pill-text.is-1,
.benef_people-wrap[data-active="2"] .benefit_pill-text.is-2,
.benef_people-wrap[data-active="3"] .benefit_pill-text.is-3 { transform: translateY(0); opacity: 1; }

/* Badge au-dessus du titre de l'accueil */
.eb-hero_badge {
  display: inline-flex; align-items: center; gap: 10px;
  margin-bottom: 24px; padding: 7px 16px 7px 12px;
  border-radius: 999px; border: 1px solid var(--brand-alpha--gold-dk-20);
  background: linear-gradient(180deg, #fff, #f7fbf1);
  box-shadow: 0 6px 18px rgba(16, 20, 12, .06), inset 0 1px 0 #fff;
  color: var(--eb-green-ink); font-size: 14px; font-weight: 500; line-height: 1.2; letter-spacing: .01em;
}
.eb-hero_badge-dot { position: relative; flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--eb-green-deep); }
.eb-hero_badge-dot::after {
  content: ""; position: absolute; inset: -4px; border-radius: 50%;
  background: var(--brand-alpha--gold-dk-35); animation: eb-badge-pulse 2s ease-out infinite;
}
@keyframes eb-badge-pulse { 0% { transform: scale(.5); opacity: 1; } 100% { transform: scale(1.6); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .eb-hero_badge-dot::after { animation: none; } }
@media screen and (max-width: 479px) {
  .eb-hero_badge { margin-bottom: 18px; padding: 6px 14px 6px 10px; font-size: 13px; gap: 8px; }
}

/* Pastille des boutons sombres : l'icône est dessinée dans le rond lui-même,
   elle reste donc centrée quelle que soit la taille du bouton (mobile, navbar) */
:root {
  --eb-ico-arrow-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310140C' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --eb-ico-play-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2310140C' d='M7 5.6v12.8c0 .8.9 1.3 1.6.9l10-6.4c.6-.4.6-1.3 0-1.7l-10-6.4C7.9 4.3 7 4.8 7 5.6z'/%3E%3C/svg%3E");
  --eb-ico-calc-ink: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310140C' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='18' rx='2.5'/%3E%3Cpath d='M8.5 7.5h7M8.5 12h.01M12 12h.01M15.5 12h.01M8.5 16h.01M12 16h.01M15.5 16h.01'/%3E%3C/svg%3E");
  --eb-ico-size: 16px;
}
.button[data-style="dark"] .button-inner::before { content: none; }
.button[data-style="dark"] .button-inner::after {
  background: var(--eb-ico-arrow-ink) center / var(--eb-ico-size) var(--eb-ico-size) no-repeat, var(--eb-green);
}
.button[data-style="dark"][data-eb-play] .button-inner::after { background-image: var(--eb-ico-play-ink); }
.button[data-style="dark"][data-eb-icon="calc"] .button-inner::after { background-image: var(--eb-ico-calc-ink); }
.button[data-style="dark"]:hover .button-inner::after { transform: rotate(-45deg) scale(1.06); }
.button[data-style="dark"][data-eb-play]:hover .button-inner::after { transform: scale(1.1); }
.button[data-style="dark"][data-eb-icon="calc"]:hover .button-inner::after { transform: rotate(-8deg) scale(1.06); }
.navbar-component .button[data-style="dark"] { --eb-ico-size: 14px; }
@media screen and (max-width: 767px) {
  #home-hero .button[data-style="dark"] { --eb-ico-size: 14px; }
  #home-hero .button[data-style="dark"] .button-inner::after { box-shadow: inset 0 1px 0 #ffffffb3, 0 0 0 3px #adf74f1f; }
}
/* Écrans tactiles : un appui déclenche :hover et le laisse actif, la pastille restait penchée */
@media (hover: none) {
  .button[data-style="dark"]:hover .button-inner::after,
  .button[data-style="dark"][data-eb-play]:hover .button-inner::after,
  .button[data-style="dark"][data-eb-icon="calc"]:hover .button-inner::after { transform: none; }
}

/* Modules de l'accueil sur tablette et mobile : tous à la suite, barre d'onglets collée en haut */
#home-module .tabs.is-flow .w-tab-pane { display: block !important; opacity: 1 !important; transform: none !important; }
#home-module .tabs.is-flow .tab_pane + .tab_pane { margin-top: 48px; padding-top: 48px; border-top: 1px dashed rgba(16, 20, 12, .14); }
#home-module .tabs.is-flow .tabs_menu {
  position: sticky; top: 74px; z-index: 5; display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; justify-content: flex-start; align-items: center; padding: 6px; border-radius: 999px;
  overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
  background-color: rgba(255, 255, 255, .86); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
}
#home-module .tabs.is-flow .tabs_menu::-webkit-scrollbar { display: none; }
#home-module .tabs.is-flow .tab_link { flex: none; width: auto !important; white-space: nowrap; padding: 8px 14px; font-size: 14px; }

/* Titre du dernier CTA : un seul H1 par page (celui du hero), même rendu qu'avant */
#home-cta .eb-cta_title { margin: 0; font-size: 70px; line-height: 1.1; letter-spacing: -.05em; font-weight: 600; }
@media screen and (max-width: 767px) { #home-cta .eb-cta_title { font-size: 38px; line-height: 1.08; } }
