/* =========================================================
   AIKLORE - aiklore-sections.css
   Sections specifiques Aiklore : methode, 'pret a commencer', signature, 'pourquoi nous' (bento + 3 cartes), prise de RDV (Cal.com).
   Ordre de chargement : apres sections.css (NE PAS reordonner : cascade CSS).
   ========================================================= */
/* ========================================================= */
/* =============== ADAPTATIONS AIKLORE ===================== */
/* (mêmes codes visuels Revolut : pills, cartes, alternance) */
/* ========================================================= */

/* méthode : cartes claires aérées + fil conducteur (vraie séquence en 3 temps) */
.method__head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:60px;flex-wrap:wrap;}
.method__head .eyebrow{display:block;margin-bottom:18px;}
.method__head h2{font-size:clamp(32px,4vw,48px);letter-spacing:-0.48px;max-width:660px;text-wrap:balance;}
.method__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.mcard{position:relative;background:var(--white);border:1px solid #e6e6e8;border-radius:22px;padding:34px 30px 30px;
  display:flex;flex-direction:column;transition:transform .4s var(--ease),border-color .4s ease,box-shadow .4s var(--ease);}
.mcard:hover{transform:translateY(-6px);border-color:rgba(0,168,126,.45);}
.mcard__top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:26px;}
.mcard__ico{width:56px;height:56px;border-radius:16px;background:var(--surface);display:flex;align-items:center;justify-content:center;
  color:var(--dark);transition:background .35s var(--ease),color .35s ease,transform .35s var(--ease);}
.mcard:hover .mcard__ico{background:var(--dark);color:#fff;transform:scale(1.05);}
.mcard__ico svg{width:26px;height:26px;}
.mcard__ix{font-family:var(--display);font-weight:500;font-size:34px;line-height:1;color:#dcdce0;letter-spacing:-1px;}
.mcard h3{font-size:22px;letter-spacing:-0.24px;margin-bottom:12px;}
.mcard p{font-size:15px;color:var(--slate);line-height:1.58;flex:1;margin-bottom:24px;max-width:34ch;}
.mcard__rule{height:2px;width:36px;background:var(--teal);border-radius:2px;transition:width .45s var(--ease);}
.mcard:hover .mcard__rule{width:64px;}
/* fil conducteur : chevron teal entre les cartes (desktop) */
.mcard:not(:last-child)::after{content:"";position:absolute;top:60px;right:-15px;width:10px;height:10px;z-index:2;
  border-top:1.5px solid var(--teal);border-right:1.5px solid var(--teal);transform:rotate(45deg);opacity:.55;}
.method__note{margin-top:32px;display:flex;align-items:center;gap:12px;font-size:15px;color:var(--slate);line-height:1.5;}
.method__note .pt{flex:none;width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 10px rgba(0,168,126,.55);}
.method__note strong{color:var(--dark);font-weight:600;}

/* ===== Section « Prêt à commencer » : bulles outils + agents ===== */
/* même blanc que « Méthode » ; un simple filet marque la séparation */
.pret{--s:1;background:var(--white);min-height:106vh;display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;padding:var(--vpad) var(--pad);}
.pret-field{position:absolute;inset:0;z-index:1;pointer-events:none;}
/* .bubble = couche de POSITION (groupé -> écarté) ; .bubble__circle = cercle visible (flotte) */
.bubble{position:absolute;left:50%;top:50%;width:var(--d,84px);height:var(--d,84px);pointer-events:auto;
  transform:translate(calc(-50% + var(--x) * var(--s)), calc(-50% + var(--y) * var(--s)));}
.bubble__circle{width:100%;height:100%;border-radius:50%;overflow:hidden;background:#fff;border:1px solid #e6e6e8;
  display:flex;align-items:center;justify-content:center;transition:box-shadow .3s var(--ease);}
.bubble__circle img{width:100%;height:100%;display:block;}
.bubble--logo .bubble__circle img{object-fit:contain;padding:22%;}
.bubble--agent .bubble__circle img{object-fit:cover;}
.bubble__circle:hover{box-shadow:0 0 0 2px rgba(0,0,0,.22);}   /* liseré gris discret au survol */
/* écartement LENT ; sans JS / reduced-motion : tout reste visible */
.pret.anim .bubble{opacity:0;transition:transform 1.7s var(--ease), opacity 1s var(--ease);
  transform:translate(calc(-50% + var(--x) * var(--s) * .12), calc(-50% + var(--y) * var(--s) * .12)) scale(.38);}
.pret.anim .bubble.show{opacity:1;transform:translate(calc(-50% + var(--x) * var(--s)), calc(-50% + var(--y) * var(--s))) scale(1);}
/* flottement perpétuel après l'écartement (sur le cercle : n'affecte pas la position) */
.pret.in .bubble.show .bubble__circle{animation:bubbleFloat var(--ft,6s) ease-in-out var(--fd,2s) infinite;}
@keyframes bubbleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.pret-inner{position:relative;z-index:2;text-align:center;max-width:560px;margin:0 auto;}
.pret-inner h2{font-size:clamp(40px,5.5vw,68px);letter-spacing:-0.7px;margin-bottom:20px;}
.pret-inner p{font-size:clamp(16px,1.5vw,19px);color:var(--slate);line-height:1.6;max-width:34ch;margin:0 auto 34px;}
.pret-inner .pill{gap:8px;}
.pret-inner .pill svg{width:18px;height:18px;transition:transform .3s var(--ease);}
.pret-inner .pill:hover svg{transform:translateX(4px);}
.pret.anim .pret-inner > *{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease);}
.pret.anim.in .pret-inner > *{opacity:1;transform:none;}
.pret.anim.in .pret-inner h2{transition-delay:.1s;}
.pret.anim.in .pret-inner p{transition-delay:.22s;}
.pret.anim.in .pret-inner .pret-cta{transition-delay:.34s;}
@media(max-width:1200px){.pret{--s:.82;}}
@media(max-width:980px){.pret{--s:.66;}}
@media(max-width:900px){
  .pret{flex-direction:column;min-height:auto;}
  .pret-field{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:430px;margin:0 auto 44px;}
  .bubble{position:static;width:64px!important;height:64px!important;transform:none!important;opacity:1!important;}
  .pret.anim .bubble,.pret.anim .bubble.show{transform:none!important;opacity:1!important;}
  .pret-inner{max-width:none;}
}
@media(prefers-reduced-motion:reduce){ .pret.in .bubble.show .bubble__circle{animation:none;} }

/* ===== Section « signature » (grand bloc sombre pleine largeur) ===== */
.signature{position:relative;min-height:110vh;overflow:hidden;display:flex;align-items:center;
  padding:var(--vpad) var(--pad);background:#0A0A0B;color:#f5f6f5;}
/* image surdimensionnée verticalement : elle défile en parallaxe sans révéler de bord */
.signature__bg{position:absolute;left:0;top:-20%;width:100%;height:140%;object-fit:cover;z-index:0;will-change:transform;}
/* voile sombre, plus dense à gauche (lisibilité du texte blanc), sans flou */
.signature::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg, rgba(10,10,11,.9) 0%, rgba(10,10,11,.7) 42%, rgba(10,10,11,.34) 74%, rgba(10,10,11,.16) 100%);}
.signature__inner{position:relative;z-index:2;max-width:600px;}
.signature h2{font-size:clamp(32px,4vw,54px);font-weight:500;letter-spacing:-0.6px;line-height:1.16;text-wrap:balance;}
/* fin soulignement teal sous « chaque semaine » seulement (n'altère pas l'interligne) */
.sig-ul{text-decoration-line:underline;text-decoration-color:var(--teal);text-decoration-thickness:3px;text-underline-offset:7px;}
.signature p{margin-top:26px;font-size:clamp(16px,1.4vw,18px);color:rgba(245,246,245,.66);max-width:480px;line-height:1.65;}
@media(max-width:900px){
  .signature{min-height:auto;}
  .signature::after{background:linear-gradient(180deg, rgba(10,10,11,.66), rgba(10,10,11,.86));}
  .signature__inner{max-width:none;}
}

/* ===== Section « Pourquoi nous » (bento, repro fidèle « Why Us? ») ===== */
.why{background:#ffffff;color:var(--dark);padding:var(--vpad) var(--pad);position:relative;}
.why__grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);
  grid-template-rows:repeat(3,224px);gap:22px;
  grid-template-areas:
    "orb orb e1 e2"
    "orb orb pho phone"
    "e3 e3 pho phone";}
.a-orb{grid-area:orb;} .a-per{grid-area:pho;}
.a-mat{grid-area:e1;} .a-nin{grid-area:e2;} .a-con{grid-area:e3;} .a-plat{grid-area:phone;}

.btile{position:relative;border-radius:24px;overflow:hidden;background:#fafafa;padding:30px;
  display:flex;flex-direction:column;border:1px solid #ececec;
  transition:transform .4s var(--ease),border-color .4s ease,box-shadow .4s var(--ease);}
/* lueur teal qui suit le curseur (effet « cybernetic », version claire) */
.btile::before{content:"";position:absolute;inset:-1px;z-index:0;border-radius:inherit;opacity:0;transition:opacity .45s var(--ease);
  background:radial-gradient(240px circle at var(--mouse-x,50%) var(--mouse-y,50%), rgba(13,148,136,.14), transparent 62%);}
.btile:hover::before{opacity:1;}
.btile:hover{transform:translateY(-4px);border-color:rgba(13,148,136,.4);box-shadow:0 18px 40px rgba(16,24,32,.08);}
.btile > *{position:relative;z-index:1;}
/* ===== Bloc « Pourquoi nous » format 3 cartes (repris de la v3 « Votre argent est protégé ») ===== */
.proof{text-align:center;}
.proof h2{font-size:clamp(32px,4vw,48px);letter-spacing:-0.48px;margin-bottom:18px;}
.proof>p{font-size:16px;color:var(--slate);max-width:620px;margin:0 auto 28px;line-height:1.56;}
.proof-cards{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:48px;flex-wrap:nowrap;}
.proof-card{position:relative;width:300px;height:404px;border-radius:20px;overflow:hidden;
  box-shadow:0 16px 40px rgba(0,0,0,.16);transition:transform .35s var(--ease),box-shadow .35s var(--ease);}
.proof-card.mid{width:322px;height:444px;}
.proof-card:hover{transform:translateY(-5px);box-shadow:0 26px 56px rgba(0,0,0,.22);}
.proof-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.proof-card.is-teal{background:#0c4a44;}
.proof-card.is-phone{background:radial-gradient(120% 90% at 50% 0%, #14322d, #0a1714);}
/* scrim lisibilite du texte blanc, en bas */
.proof-card::after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(0deg, rgba(8,15,13,.6) 0%, rgba(8,15,13,.18) 42%, rgba(8,15,13,0) 72%);}
.proof-card.is-teal::after{background:linear-gradient(150deg, rgba(12,95,86,.5), rgba(7,55,50,.82));}
/* lueur teal qui suit le curseur (reprise du bento) */
.proof-card::before{content:"";position:absolute;inset:-1px;z-index:2;border-radius:inherit;opacity:0;pointer-events:none;
  transition:opacity .45s var(--ease);
  background:radial-gradient(260px circle at var(--mouse-x,50%) var(--mouse-y,50%), rgba(13,148,136,.32), transparent 60%);}
.proof-card:hover::before{opacity:1;}
/* legende en bas-gauche */
.proof-card .cap{position:absolute;left:22px;bottom:22px;top:auto;right:22px;z-index:3;text-align:left;color:#fff;}
.proof-card .cap h3{font-size:26px;line-height:1.16;letter-spacing:-0.3px;}
/* sous-titre masqué par défaut, révélé au survol (le titre remonte avec la croissance de la légende) */
.proof-card .cap p{margin-top:0;max-height:0;opacity:0;overflow:hidden;transform:translateY(8px);
  font-size:15px;line-height:1.5;color:rgba(255,255,255,.9);
  transition:max-height .5s var(--ease),opacity .4s var(--ease),margin-top .5s var(--ease),transform .5s var(--ease);}
.proof-card:hover .cap p,.proof-card:focus-within .cap p{max-height:320px;opacity:1;margin-top:10px;transform:translateY(0);}
@media (hover:none){
  .proof-card .cap p{max-height:320px;opacity:1;margin-top:10px;transform:none;}
}
@media (max-width:860px){
  .proof-cards{flex-direction:column;gap:18px;}
  .proof-card,.proof-card.mid{width:100%;max-width:340px;height:auto;aspect-ratio:300/404;}
}

/* en-tête centré au-dessus du bento (façon « Core Features ») */
.why-head{max-width:780px;margin:0 auto 56px;text-align:center;}
.why-head .eyebrow{display:inline-block;margin-bottom:16px;}
.why-head h2{font-size:clamp(30px,3.4vw,48px);letter-spacing:-0.6px;line-height:1.06;text-wrap:balance;}

/* tuiles teal texturées (engagements) */
.bt-teal{color:#fff;background:#0c4a44;}
.bt-tex{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.bt-teal::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(150deg, rgba(12,95,86,.55), rgba(7,55,50,.84));}
.bt-teal > *:not(.bt-tex){position:relative;z-index:2;}
.bt-eng{justify-content:flex-end;}
.bt-eng .bico{width:48px;height:48px;border-radius:13px;border:1px solid rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:auto;}
.bt-eng .bico svg{width:24px;height:24px;}
.bt-eng h3{font-size:20px;letter-spacing:-0.2px;color:#fff;line-height:1.22;}
.bt-eng .desc{font-size:14.5px;line-height:1.5;margin-top:10px;color:rgba(255,255,255,.85);opacity:0;transform:translateY(6px);
  transition:opacity .4s var(--ease),transform .4s var(--ease);}
.bt-eng:hover .desc{opacity:1;transform:none;}
.bt-eng .mtxt{display:flex;flex-direction:column;}
/* e3 « accompagnement » : tuile large horizontale (icône + texte côte à côte) */
.a-con{flex-direction:row;align-items:center;justify-content:flex-start;gap:20px;align-self:start;padding:30px;}
.a-con .bico{margin-bottom:0;flex:none;}
.a-con .mtxt{transition:transform .4s var(--ease);}
.a-con:hover .mtxt{transform:translateY(-3px);}
.a-con .desc{opacity:0;max-height:0;overflow:hidden;transform:none;margin-top:0;
  transition:opacity .4s var(--ease),max-height .4s var(--ease),margin-top .4s var(--ease);}
.a-con:hover .desc{opacity:1;max-height:60px;margin-top:8px;}

/* tuile orbites (claire) */
.a-orb{overflow:hidden;}
.orbit-meta{position:relative;z-index:3;}
.orbit-num{font-family:var(--display);font-weight:500;font-size:clamp(36px,3.4vw,54px);line-height:1;color:var(--dark);letter-spacing:-1.5px;}
.orbit-num u{text-decoration:none;border-bottom:3px solid var(--teal);padding-bottom:3px;}
.orbit-lab{font-size:15px;color:var(--slate);margin-top:9px;}
.orbit-plus{position:absolute;left:24px;bottom:22px;z-index:3;width:34px;height:34px;border-radius:50%;border:1px solid #d8d8da;color:var(--slate);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:22px;line-height:0;}
.orbit-rings{position:absolute;z-index:1;height:96%;width:auto;left:57%;top:55%;transform:translate(-50%,-50%);pointer-events:none;}
.orbit-stage{position:absolute;inset:0;z-index:2;pointer-events:none;}
.orbit-rotor{position:absolute;left:57%;top:58%;width:0;height:0;animation:orbitSpin 55s linear infinite;}
.orbit-slot{position:absolute;left:0;top:0;transform:rotate(var(--a)) translateX(var(--r)) rotate(calc(-1 * var(--a)));}
.orbit-logo{position:absolute;left:0;top:0;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:#fff;
  border:1px solid #e6e6e8;box-shadow:0 4px 14px rgba(0,0,0,.10);overflow:hidden;display:flex;align-items:center;justify-content:center;
  animation:orbitSpin 55s linear infinite reverse;}
.orbit-logo.sm{width:38px;height:38px;margin:-19px 0 0 -19px;}
.orbit-logo img{width:100%;height:100%;object-fit:contain;padding:20%;}
@keyframes orbitSpin{to{transform:rotate(360deg)}}

/* tuile photo (Chloé) */
.a-per{padding:0;}
.a-per .cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 14%;z-index:0;}
.a-per .grad{position:absolute;inset:0;z-index:1;background:linear-gradient(to top, rgba(0,0,0,.72) 0%, rgba(0,0,0,.1) 44%, transparent 66%);}
.a-per .chip{position:absolute;top:16px;right:16px;z-index:3;display:flex;gap:5px;align-items:center;padding:8px 11px;border-radius:9999px;background:rgba(255,255,255,.16);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.a-per .chip i{width:7px;height:7px;border-radius:50%;background:#fff;opacity:.9;display:block;}
.a-per .cap{position:relative;z-index:2;margin-top:auto;padding:24px;color:#fff;}
.a-per .cap{margin-top:auto;padding:28px;}
.a-per .cap h3{color:#fff;font-size:21px;letter-spacing:-0.2px;line-height:1.2;}
/* titre bas au repos ; au survol le sous-texte apparaît et fait remonter le titre */
.a-per .cap .desc{color:rgba(255,255,255,.86);font-size:14px;line-height:1.5;opacity:0;max-height:0;overflow:hidden;margin-top:0;
  transition:opacity .45s var(--ease),max-height .45s var(--ease),margin-top .45s var(--ease);}
.a-per:hover .cap .desc{opacity:1;max-height:90px;margin-top:9px;}

/* tuile « plateforme » (texte + téléphone) */
/* tuile téléphone : verticale, téléphone agrandi + titre en bas */
.a-plat{padding:0;overflow:hidden;}
.a-plat .plat-phone{position:absolute;left:50%;bottom:0;top:auto;transform:translateX(-50%);height:106%;width:auto;z-index:1;filter:drop-shadow(0 18px 34px rgba(0,0,0,.22));}
.a-plat .plat-txt{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:16px 18px 18px;text-align:center;background:linear-gradient(to top, #fafafa 30%, rgba(250,250,250,0));}
.a-plat .plat-txt .eyebrow{display:none;}
.a-plat .plat-txt h3{font-size:16px;letter-spacing:-0.2px;line-height:1.22;max-width:none;}

/* repli tactile : descriptions visibles sans survol */
@media(hover:none){
  .bt-eng .desc,.a-per .cap .desc{opacity:1!important;transform:none!important;}
}
/* repli mobile : tuiles empilées */
@media(max-width:760px){
  .why__grid{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:none;}
  .btile{grid-area:auto!important;min-height:160px;}
  .a-head{min-height:0;}
  .a-orb{min-height:300px;} .a-per{min-height:360px;}
  .a-mat,.a-nin,.a-con{min-height:150px;}
  .a-plat{flex-direction:column;align-items:flex-start;min-height:auto;}
  .a-plat .plat-phone{align-self:center;height:auto;max-height:280px;margin-top:10px;}
}

/* bénéfices : liste à coches (dans le split clair .pockets) */
.benlist{list-style:none;display:flex;flex-direction:column;gap:24px;margin-top:6px;}
.benlist li{display:flex;gap:16px;align-items:flex-start;}
.benlist .ck{flex:none;width:30px;height:30px;border-radius:9999px;border:2px solid var(--teal);color:var(--teal);display:flex;align-items:center;justify-content:center;margin-top:2px;}
.benlist .ck svg{width:15px;height:15px;}
.benlist h3{font-family:var(--display);font-weight:500;font-size:19px;letter-spacing:-.2px;margin-bottom:4px;line-height:1.2;}
.benlist p{font-size:15px;color:var(--slate);line-height:1.5;max-width:430px;margin:0;}

/* pourquoi : réutilise .plan (cartes sombres) avec icône */
.pillars-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.plan .picon{width:48px;height:48px;border-radius:13px;border:1px solid rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;color:var(--teal);margin-bottom:22px;transition:transform .35s var(--ease),border-color .35s ease;}
.plan:hover .picon{transform:scale(1.06);border-color:rgba(0,168,126,.5);}
.plan .picon svg{width:24px;height:24px;}

/* FAQ — section sombre, accordéon en cartes (se distingue des blocs sombres voisins) */
.faq{background:#111312;color:#f5f6f5;}
.faq-wrap{max-width:840px;margin:0 auto;width:100%;}
.faq-head{text-align:center;margin-bottom:48px;}
.faq-head h2{color:#fff;}
.faq-item{border:1px solid rgba(245,246,245,.09);background:rgba(245,246,245,.025);border-radius:16px;margin-bottom:14px;overflow:hidden;
  transition:border-color .3s var(--ease),background .3s var(--ease);}
.faq-item:hover{border-color:rgba(245,246,245,.18);}
.faq-item.open{border-color:rgba(245,246,245,.24);background:rgba(245,246,245,.05);}
.faq-q{width:100%;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:24px 26px;text-align:left;font-family:var(--display);font-weight:500;font-size:clamp(17px,1.9vw,20px);color:#f5f6f5;transition:color .25s;}
.faq-q:hover{color:#fff;}
.faq-q .pm{flex:none;width:30px;height:30px;border-radius:9999px;border:1px solid rgba(245,246,245,.24);display:flex;align-items:center;justify-content:center;position:relative;color:#f5f6f5;transition:border-color .25s;}
.faq-q:hover .pm,.faq-item.open .faq-q .pm{border-color:rgba(245,246,245,.5);}
.faq-q .pm::before,.faq-q .pm::after{content:"";position:absolute;background:currentColor;border-radius:2px;}
.faq-q .pm::before{width:12px;height:2px;}
.faq-q .pm::after{width:2px;height:12px;transition:transform .3s var(--ease);}
.faq-item.open .faq-q .pm::after{transform:scaleY(0);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease);}
.faq-a p{padding:0 26px 24px;font-size:15.5px;line-height:1.62;color:rgba(245,246,245,.64);max-width:70ch;}

/* CTA final + formulaire (section claire, halos teal/indigo + carte verre) */
.cta{background:#f3f4f6;color:var(--dark);min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;
  padding:var(--vpad) var(--pad);position:relative;overflow:hidden;}
/* halos lumineux flous : teal dominant + indigo doux (DA, pas d'arc-en-ciel) */
.cta__halo{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0;}
.cta__halo--1{width:560px;height:560px;background:radial-gradient(circle,rgba(13,148,136,.32),transparent 70%);top:auto;bottom:-10%;left:-7%;animation:ctaFloat1 24s ease-in-out infinite;}
.cta__halo--2{width:560px;height:560px;background:radial-gradient(circle,rgba(73,79,223,.20),transparent 70%);bottom:-6%;right:4%;animation:ctaFloat2 28s ease-in-out infinite;}
.cta__halo--3{width:380px;height:380px;background:radial-gradient(circle,rgba(13,148,136,.15),transparent 70%);top:34%;right:32%;animation:ctaFloat1 32s ease-in-out infinite;}
@keyframes ctaFloat1{0%,100%{transform:translate(0,0)}50%{transform:translate(38px,26px)}}
@keyframes ctaFloat2{0%,100%{transform:translate(0,0)}50%{transform:translate(-40px,-28px)}}
.cta__head{position:relative;z-index:1;text-align:center;max-width:680px;margin:0 auto 38px;}
.cta__head .eyebrow{display:inline-block;margin-bottom:14px;}
.cta__head h2{font-size:clamp(34px,4.6vw,58px);letter-spacing:-.6px;line-height:1.04;}
.cta__head .lead{margin:18px auto 0;font-size:clamp(16px,1.5vw,18px);color:var(--slate);max-width:54ch;line-height:1.6;}
/* carte formulaire : verre semi-transparent, flou d'arrière-plan, fine bordure */
.formcard{position:relative;z-index:1;width:100%;max-width:720px;margin:0 auto;border-radius:24px;padding:36px;
  background:rgba(255,255,255,.6);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%);
  border:1px solid rgba(255,255,255,.75);box-shadow:0 30px 80px rgba(16,24,32,.10);}
.formrow{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.fld{margin-bottom:16px;}
.fld--full{grid-column:1 / -1;}
.fld label{display:block;font-size:13px;font-weight:600;color:var(--slate);margin-bottom:7px;font-family:var(--display);}
.fld label .req{color:var(--teal);margin-left:2px;}
.fld input,.fld select,.fld textarea{width:100%;background:rgba(255,255,255,.72);border:1px solid rgba(16,24,32,.12);border-radius:12px;padding:13px 15px;color:var(--dark);font-family:var(--body);font-size:15px;transition:border-color .25s,box-shadow .25s,background .25s;}
.fld textarea{resize:vertical;min-height:96px;}
.fld input::placeholder,.fld textarea::placeholder{color:rgba(80,90,99,.5);}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px rgba(13,148,136,.16);}
.fld select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23505a63' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;}
.formcard .pill{width:100%;margin-top:8px;}
.formcard .pill[aria-busy="true"]{opacity:.7;cursor:progress;}
.form-foot{margin-top:18px;display:flex;align-items:center;justify-content:center;gap:10px 20px;font-size:12.5px;color:var(--slate);flex-wrap:wrap;}
.form-foot span{display:inline-flex;align-items:center;gap:7px;}
.form-foot svg{width:14px;height:14px;color:var(--teal);flex:none;}
.form-err{display:none;margin-top:14px;padding:12px 14px;border-radius:12px;background:rgba(226,59,74,.08);border:1px solid rgba(226,59,74,.25);font-size:13.5px;color:#b3261e;text-align:center;}
.form-err.show{display:block;}
.form-success{display:none;text-align:center;padding:20px 8px;}
.form-success.show{display:block;animation:heroIn .6s var(--ease) both;}
.form-success .ok{width:64px;height:64px;border-radius:9999px;border:2px solid var(--teal);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;color:var(--teal);}
.form-success .ok svg{width:30px;height:30px;}
.form-success h3{font-size:24px;color:var(--dark);margin-bottom:10px;}
.form-success p{font-size:15px;color:var(--slate);max-width:40ch;margin:0 auto;}
/* ===== Prise de RDV (Cal.com) : 2 colonnes, panneau verre + calendrier ===== */
.book__grid{position:relative;z-index:1;width:100%;max-width:1080px;margin:0 auto;display:grid;grid-template-columns:0.92fr 1.08fr;gap:36px;align-items:start;}
.book__intro{display:flex;flex-direction:column;}
.book__intro h2{font-size:clamp(30px,3.3vw,46px);line-height:1.1;letter-spacing:-0.5px;text-align:left;margin:0;color:var(--dark);}
/* bulle fondatrice facon Jump : avatar rond en debord sur le bord gauche de la bulle */
.book__founder{position:relative;margin-top:clamp(32px,5vh,56px);padding-left:58px;}
.book__photo{position:absolute;left:0;top:50%;transform:translateY(-50%);width:98px;height:98px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:3px solid #fff;box-shadow:0 10px 26px rgba(16,24,32,.18);z-index:2;filter:saturate(1.4) brightness(1.0) contrast(1.08) sepia(0.24) hue-rotate(-6deg);}
.book__bubble{background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border:1px solid rgba(255,255,255,.8);border-radius:26px;padding:30px 34px 30px 64px;box-shadow:0 20px 54px rgba(16,24,32,.12);}
.book__bubble p{font-size:17px;line-height:1.62;color:var(--dark);margin:0;}
.book__msg{font-size:16px;line-height:1.62;color:var(--dark);margin-bottom:24px;}
.book__points{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:auto;}
.book__points li{display:flex;align-items:center;gap:11px;font-size:14.5px;font-weight:500;color:var(--dark);font-family:var(--display);}
.book__points svg{width:18px;height:18px;flex:none;color:var(--teal);}
.book__cal{background:#fff;border:1px solid rgba(16,24,32,.08);border-radius:24px;overflow:hidden;box-shadow:0 20px 60px rgba(16,24,32,.08);min-height:560px;display:flex;}
.book__calframe{width:100%;min-height:560px;display:flex;align-items:center;justify-content:center;padding:28px;}
/* apercu "widget de reservation" tant que Cal.com n'est pas connecte */
.cal-ph{width:100%;max-width:420px;text-align:center;}
.cal-ph__icon{width:60px;height:60px;border-radius:18px;background:rgba(13,148,136,.1);color:#0D9488;display:grid;place-items:center;margin:0 auto 18px;}
.cal-ph__icon svg{width:28px;height:28px;}
.cal-ph__title{font-family:var(--display);font-weight:600;font-size:21px;color:var(--dark);margin-bottom:8px;}
.cal-ph__sub{font-size:14px;color:var(--slate);line-height:1.55;margin:0 auto 22px;max-width:34ch;}
.cal-ph__slots{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:22px;}
.cal-ph__slots span{font-size:13px;font-weight:500;color:var(--slate);padding:9px 14px;border-radius:10px;background:rgba(16,24,32,.05);border:1px solid rgba(16,24,32,.06);font-variant-numeric:tabular-nums;}
.cal-ph__slots span.more{background:rgba(13,148,136,.1);color:#0D9488;border-color:transparent;}
.cal-ph__note{font-size:12px;color:rgba(80,90,99,.65);}
.cal-ph__note code{background:rgba(16,24,32,.06);padding:2px 6px;border-radius:5px;}
@media(max-width:880px){
  .book__grid{grid-template-columns:1fr;}
  .book__cal,.book__calframe{min-height:520px;}
  .book__panel{padding:26px;}
}

/* footer Aiklore */
.foot-aiklore{display:grid;grid-template-columns:1.5fr 1fr 1.2fr;gap:40px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.12);}
.foot-aiklore .fb img{height:44px;margin-bottom:16px;}
.foot-aiklore .fb p{font-size:14px;color:rgba(255,255,255,.6);max-width:34ch;line-height:1.55;}
.foot-aiklore h4{font-family:var(--display);font-weight:500;font-size:16px;color:#fff;margin-bottom:14px;}
.foot-aiklore a{display:block;width:fit-content;font-size:14px;color:rgba(255,255,255,.65);padding:7px 0;transition:color .2s,transform .2s var(--ease);}
.foot-aiklore a:hover{color:#fff;transform:translateX(3px);}

