/* ============================================================
   IACCELERATOR — couche v22 (22/09/2026, Alfred)
   1. Hero : le duo avec la nouvelle photo de Taoufik + punchline
   2. Garanties : le dépliant ne fait plus bouger la structure
   3. Duo (bas de page) : habillage de la carte Yannick, photo Taoufik
   Chargée APRÈS ia-apple.css / ia-carousel-v19.css / ia-garanties-v21.css.
   Retour arrière : retirer le <link> et remettre ia-apple-v21.js.
   ============================================================ */

/* ---------- 1. HERO : la carte du duo ---------- */
html.ia .hero .hero-art.ia-art.ia-art-compose{background:radial-gradient(80% 70% at 62% 32%,#1a2a66 0%,#0b1130 48%,#060814 82%)}
html.ia .hero.ia-hero .ia-art-compose .ia-art-halo{inset:-10% -10% auto;height:110%;background:radial-gradient(42% 42% at 66% 30%,rgba(36,86,240,.85),rgba(36,86,240,.18) 55%,transparent 72%)}
html.ia .hero.ia-hero .ia-art-compose .ia-art-ring{top:50%;left:60%;width:78%;border-color:rgba(255,217,138,.42);box-shadow:0 0 60px rgba(255,217,138,.12),inset 0 0 60px rgba(127,160,255,.08)}
html.ia .hero.ia-hero .ia-art-compose .ia-art-ring2{width:104%;border-color:rgba(127,160,255,.22);box-shadow:none}
html.ia .hero.ia-hero .ia-art-compose .ia-art-or{left:auto;right:-18%;bottom:-26%;width:82%;opacity:.9}
html.ia .hero.ia-hero .ia-art-compose .ia-art-eq{display:flex;left:5%;right:auto;top:auto;bottom:6%;opacity:.7}
/* v22c : le visuel du duo fourni par Yannick (halo doré inclus), en une seule image */
html.ia .hero .hero-art.ia-art .ia-art-duo img.duo{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 0;opacity:0;transform:translate(var(--px,0px),var(--py,0px)) scale(1.02);transition:opacity 1s,transform .6s cubic-bezier(.2,.8,.2,1);mix-blend-mode:normal;-webkit-mask-image:none;mask-image:none;filter:none;border-radius:0!important;will-change:transform}
html.ia .hero .hero-art.ia-art.ia-art-compose.duo-vu .ia-art-duo img.duo{opacity:1}
/* la photo vit : entrée en douceur, puis une respiration lente (zoom imperceptible) */
html.ia .hero .hero-art.ia-art.ia-art-compose.duo-vu .ia-art-duo{animation:v22In 1.6s var(--ia-ease) both,v22Breathe 16s ease-in-out 1.6s infinite alternate;transform-origin:55% 35%}
@keyframes v22In{from{transform:scale(1.08) translateY(12px)}to{transform:scale(1) translateY(0)}}
@keyframes v22Breathe{from{transform:scale(1)}to{transform:scale(1.045) translate(-4px,-3px)}}
/* un rai de lumière qui passe sur le duo, toutes les 9 s */
html.ia .ia-art-duo::before{content:'';position:absolute;top:-20%;bottom:-20%;left:-40%;width:34%;z-index:2;background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,230,168,.22) 45%,rgba(255,255,255,.34) 50%,rgba(255,230,168,.22) 55%,rgba(255,255,255,0) 100%);transform:skewX(-14deg) translateX(-120%);mix-blend-mode:screen;pointer-events:none;animation:v22Sweep 9s cubic-bezier(.4,0,.2,1) 2.4s infinite}
@keyframes v22Sweep{0%{transform:skewX(-14deg) translateX(-120%)}22%{transform:skewX(-14deg) translateX(520%)}100%{transform:skewX(-14deg) translateX(520%)}}
/* poussière d'or qui monte devant la photo */
html.ia .ia-art-part{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
html.ia .ia-art-part i{position:absolute;bottom:-4%;width:5px;height:5px;border-radius:50%;background:radial-gradient(circle,#fff 0 30%,#ffd98a 35% 70%,transparent 72%);opacity:0;filter:blur(.3px);animation:v22Rise var(--d,9s) linear var(--dl,0s) infinite}
html.ia .ia-art-part i.b{width:3px;height:3px;background:radial-gradient(circle,#fff 0 30%,#7fa0ff 35% 70%,transparent 72%)}
@keyframes v22Rise{0%{transform:translate(0,0) scale(.6);opacity:0}12%{opacity:.9}60%{opacity:.7}100%{transform:translate(var(--x,0px),-115%) scale(1.1);opacity:0}}
/* le halo doré derrière respire aussi */
html.ia .hero.ia-hero .ia-art-compose .ia-art-or{animation:v22Glow 6s ease-in-out infinite alternate}
@keyframes v22Glow{from{opacity:.6}to{opacity:1}}
@media (prefers-reduced-motion:reduce){
 html.ia .hero .hero-art.ia-art.ia-art-compose.duo-vu .ia-art-duo,html.ia .ia-art-duo::before,html.ia .ia-art-part i,html.ia .hero.ia-hero .ia-art-compose .ia-art-or{animation:none!important}
 html.ia .hero .hero-art.ia-art .ia-art-duo img.duo{opacity:1;transform:none;transition:none}
}
html.ia .hero.ia-hero .ia-art-compose .ia-art-eq{display:none}
/* (anciens réglages des deux découpes, conservés pour retour arrière) */
html.ia .hero .hero-art.ia-art .ia-art-duo img.y{left:2%;height:94%;bottom:0;z-index:2;filter:drop-shadow(18px 24px 34px rgba(0,0,0,.72))}
html.ia .hero .hero-art.ia-art .ia-art-duo img.t{right:0;height:80%;bottom:9%;z-index:1;transition-delay:.18s;filter:contrast(1.04) saturate(1.02) drop-shadow(0 24px 34px rgba(0,0,0,.6))}
/* fondu du bas : la coupe des photos disparaît dans la carte */
html.ia .ia-art-duo::after{content:'';position:absolute;left:0;right:0;bottom:0;height:42%;z-index:3;background:linear-gradient(180deg,rgba(6,8,20,0) 0%,rgba(6,8,20,.5) 45%,rgba(6,8,20,.94) 100%);pointer-events:none}
/* la punchline en haut de la carte */
html.ia .hero.ia-hero .ia-art-compose .ia-art-tag{left:50%;top:auto;bottom:clamp(18px,2.4vw,30px);transform:translateX(-50%);gap:7px;white-space:nowrap;text-align:center;align-items:center;z-index:4}
html.ia .hero.ia-hero .ia-art-compose .ia-art-tag span{font:700 10px/1 Poppins,sans-serif;letter-spacing:.24em;color:#ffd98a;text-transform:uppercase;opacity:.95}
html.ia .hero.ia-hero .ia-art-compose .ia-art-tag span i{font-style:normal;color:#7fa0ff;margin:0 5px}
html.ia .hero.ia-hero .ia-art-compose .ia-art-tag b{font:700 clamp(20px,1.9vw,29px)/1.05 Poppins,sans-serif;letter-spacing:-.035em;color:#fff;text-transform:none;text-shadow:0 4px 24px rgba(0,0,0,.55)}
html.ia .hero.ia-hero .ia-art-compose .ia-art-tag b i{font-style:normal;margin:0;background:linear-gradient(90deg,#ffe6a8,#ffd98a 60%,#ffcf5a);-webkit-background-clip:text;background-clip:text;color:transparent}
html.ia .hero.ia-hero .ia-art-compose .ia-art-tag em{display:block;font:500 12px/1.3 "DM Sans",sans-serif;letter-spacing:.02em;color:#c7d0ee;font-style:normal;text-transform:none;opacity:0;transform:translateY(6px);transition:opacity .8s .9s,transform .8s .9s}
html.ia .hero .hero-art.ia-art.ia-art-compose.duo-vu .ia-art-tag em{opacity:1;transform:none}
@media (max-width:760px){
 html.ia .hero .hero-art.ia-art .ia-art-duo img.y{left:-2%;height:88%}
 html.ia .hero .hero-art.ia-art .ia-art-duo img.t{right:-3%;height:74%;bottom:10%}
 html.ia .hero.ia-hero .ia-art-compose .ia-art-eq{display:none}
 html.ia .hero.ia-hero .ia-art-compose .ia-art-tag{white-space:normal;width:92%}
 html.ia .hero.ia-hero .ia-art-compose .ia-art-tag b{font-size:clamp(18px,5.6vw,24px)}
}

/* ---------- 2. GARANTIES : le dépliant sans secousse ---------- */
/* plus de « align-items:flex-start » qui faisait rétrécir la carte d'intro */
#sans .ia-c-track:has(.ia-c-deep[open]){align-items:stretch}
/* la carte garde sa hauteur : c'est la photo qui se réduit, en douceur */
#sans .ia-c-slide.v22-lock{height:var(--v22-h);transition:height .55s cubic-bezier(.2,.8,.2,1)}
#sans .ia-c-slide .ia-c-photo{max-height:var(--v22-ph,none);transition:max-height .6s cubic-bezier(.2,.8,.2,1);flex:none}
#sans .ia-c-slide .ia-c-photo img{transition:object-position .6s cubic-bezier(.2,.8,.2,1)}
#sans .ia-c-slide.v22-open .ia-c-photo img{object-position:50% 36%}
#sans .ia-c-freedom.v22-open .ia-c-photo img{object-position:50% 40%}
#sans .ia-c-mastery.v22-open .ia-c-photo img{object-position:50% 30%}
#sans .ia-c-slide.v22-open .ia-c-photo-caption{font-size:18px;bottom:12px}
/* le texte déplié apparaît en fondu, dans l'espace libéré */
#sans .ia-c-deep>div{opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .45s cubic-bezier(.2,.8,.2,1)}
#sans .ia-c-slide.v22-open .ia-c-deep>div{opacity:1;transform:none;transition-delay:.18s}
#sans .ia-c-slide.v22-closing .ia-c-deep>div{opacity:0;transform:translateY(6px);transition-delay:0s}
#sans .ia-c-copy{transition:padding .5s cubic-bezier(.2,.8,.2,1)}
#sans .ia-c-slide.v22-open .ia-c-copy{padding-top:18px}
#sans .ia-c-slide.v22-open .ia-c-copy h3{margin:8px 0 10px;font-size:30px}
#sans .ia-c-copy h3{transition:font-size .5s cubic-bezier(.2,.8,.2,1),margin .5s cubic-bezier(.2,.8,.2,1)}
#sans .ia-c-slide.v22-open .ia-c-copy>p:not(.ia-c-small){margin-bottom:14px}
#sans .ia-c-copy>p:not(.ia-c-small){transition:margin .5s cubic-bezier(.2,.8,.2,1)}
#sans .ia-c-deep>summary{transition:color .3s}
#sans .ia-c-slide.v22-open .ia-c-deep>summary{color:#ffd98a}
#sans .ia-c-mastery.v22-open .ia-c-deep>summary{color:#9db6ff}
@media (prefers-reduced-motion:reduce){
 #sans .ia-c-slide.v22-lock,#sans .ia-c-slide .ia-c-photo,#sans .ia-c-deep>div,#sans .ia-c-copy,#sans .ia-c-copy h3{transition:none!important}
}

/* ---------- 3. DUO en bas de page ---------- */
/* Taoufik : nouvelle photo, en couleur, même chaleur que le hero */
.ia-studio-t img{filter:contrast(1.04) drop-shadow(0 30px 40px rgba(0,0,0,.6));right:-2%;max-width:46%;height:92%}
.ia-studio-t .ia-disque.ia-or:not(.ia-d3){right:-7%;top:-12%}
.ia-studio-t .ia-platine{right:34%;top:-8%}
/* Yannick : habillage en haut à gauche — stratégie + humain + singularité */
.ia-studio .ia-badge{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;padding:6px 10px 6px 8px;border-radius:999px;border:1px solid rgba(255,217,138,.42);background:linear-gradient(90deg,rgba(255,217,138,.16),rgba(255,217,138,.04));font:700 10px/1 Poppins,sans-serif;font-size:10px!important;line-height:1!important;letter-spacing:.09em;max-width:100%;color:#ffd98a!important;text-transform:uppercase;color:#ffd98a;opacity:0;transform:translateY(8px);transition:opacity .7s .1s,transform .7s .1s}
.ia-studio.vu .ia-badge{opacity:1;transform:none}
.ia-studio .ia-badge i{flex:none;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle,#fff 0 25%,#ffd98a 30% 65%,#c8971d 70%);box-shadow:0 0 0 0 rgba(255,217,138,.6);animation:v22Pulse 2.4s ease-out infinite}
.ia-studio .ia-badge em{font-style:normal;color:#fff;letter-spacing:.09em}
.ia-studio .ia-badge span{white-space:nowrap}
@keyframes v22Pulse{0%{box-shadow:0 0 0 0 rgba(255,217,138,.55)}70%{box-shadow:0 0 0 9px rgba(255,217,138,0)}100%{box-shadow:0 0 0 0 rgba(255,217,138,0)}}
.ia-studio-y .ia-studio-k{color:#ffd98a}
.ia-studio-y .ia-studio-promesse{max-width:440px}
/* petit repère visuel « il voit l'or » : une cible dorée derrière le texte */
.ia-studio-y .ia-cible{position:absolute;left:-40px;top:-40px;width:220px;height:220px;border-radius:50%;border:1px dashed rgba(255,217,138,.28);pointer-events:none;animation:v22Spin 60s linear infinite}
.ia-studio-y .ia-cible::before{content:'';position:absolute;inset:34px;border-radius:50%;border:1px solid rgba(255,217,138,.18)}
.ia-studio-y .ia-cible::after{content:'';position:absolute;inset:80px;border-radius:50%;background:radial-gradient(circle,rgba(255,217,138,.35),transparent 70%)}
@keyframes v22Spin{to{transform:rotate(360deg)}}
@media (max-width:760px){
 .ia-studio-t img,.ia-studio-t.vu img{max-width:86%;height:64%}
 .ia-studio-y .ia-cible{display:none}
}
@media (prefers-reduced-motion:reduce){.ia-studio .ia-badge i,.ia-studio-y .ia-cible{animation:none}.ia-studio .ia-badge{opacity:1;transform:none}}

/* ---------- v22e : les deux cartes du duo alignent leur texte en haut, au même niveau ---------- */
@media (min-width:761px){
 .ia-studio{align-items:flex-start}
 .ia-studio-y .ia-studio-txt,.ia-studio-t .ia-studio-txt{padding-top:clamp(22px,3vw,38px)}
 /* l'égaliseur descend en bas à gauche, sous le bouton du trailer, pour laisser la place au texte */
 .ia-studio-t .ia-eq{top:auto;bottom:clamp(20px,2.6vw,30px);left:clamp(22px,3vw,38px);height:34px;opacity:.85}
 .ia-studio-t .ia-studio-txt{padding-bottom:clamp(64px,6vw,80px)}
 /* le disque de platine quitte le haut (il mordait sur le titre) et va derrière Taoufik, en bas */
 .ia-studio-t .ia-platine{right:26%;top:auto;bottom:-14%}
}
/* v22f : même badge, même hauteur, même marge des deux côtés → les kickers et les prénoms s'alignent */
.ia-studio .ia-badge{height:24px;box-sizing:border-box;white-space:nowrap}
.ia-studio .ia-studio-k{min-height:24px}
