/* Movatif est lue sur le Mac en version démo. Elle n'est pas dans le dépôt : acheter la licence et ajouter les fichiers avant toute mise en ligne.
   Sans elle, les titres s'affichent en Archivo. */
@font-face{font-family:"Movatif";font-weight:400;src:local("FONTSPRINGDEMO-MovatifRgRegular"),local("FONTSPRING DEMO - Movatif Rg")}
@font-face{font-family:"Movatif Hv";font-weight:400;src:local("FONTSPRINGDEMO-MovatifHvRegular"),local("FONTSPRING DEMO - Movatif Hv")}

:root{
  --bleu:#2447FF;--encre:#0A0D1A;--gris:#5B6172;--fond:#F4F5F8;--filet:#E4E6EC;--blanc:#fff;
  --titre:"Movatif","Archivo",Arial,sans-serif;--chiffre:"Movatif Hv","Archivo",Arial,sans-serif;
  --texte:"Archivo",-apple-system,Arial,sans-serif;--ui:"Geist","Archivo",Arial,sans-serif;
  --courbe:cubic-bezier(.22,1,.36,1);--largeur:1200px;
}
*{box-sizing:border-box;margin:0}
html{scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{font-family:var(--texte);font-size:17px;line-height:1.45;letter-spacing:-.01em;color:var(--encre);background:var(--blanc);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 15%}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none;padding:0}
figure{margin:0}
button,input{font:inherit;color:inherit;letter-spacing:inherit}
button{cursor:pointer;border:0;background:none}
svg{display:block}
:focus-visible{outline:2px solid var(--bleu);outline-offset:3px;border-radius:6px}
.masque{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
h1,h2{font-family:var(--titre);font-weight:400;letter-spacing:-.03em;line-height:1.06;text-wrap:balance}
h1{font-size:clamp(42px,5.7vw,84px)}
h1 span,h1 em{display:block}
h1 em,.fin em{font-style:normal;color:#BFD0FF}
h2{font-size:clamp(36px,4.5vw,64px)}
h3{font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.25}

/* Navigation */
.nav{position:fixed;z-index:30;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:20px max(24px,calc((100% - var(--largeur))/2));color:#fff;transition:background-color .35s var(--courbe),color .35s var(--courbe),box-shadow .35s var(--courbe),padding .35s var(--courbe)}
.nav.claire{color:var(--encre);background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 1px 0 rgba(10,13,26,.07);padding-top:12px;padding-bottom:12px}
.logo{display:inline-flex;align-items:center;gap:9px;font-family:var(--titre);font-weight:600;font-size:26px;letter-spacing:-.03em;line-height:1}
.logo svg{width:22px;height:26px;flex:none}
.logo-haut,.logo-bas{fill:currentColor}
.nav.claire .logo-haut,.pied .logo-haut{fill:var(--bleu)}
.pilule{position:relative;display:flex;gap:4px;padding:5px 6px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-family:var(--ui);font-size:14px;font-weight:500}
.nav.claire .pilule{border-color:rgba(10,13,26,.08);background:rgba(10,13,26,.02)}
.pilule a{position:relative;z-index:1;padding:8px 16px;border-radius:999px;opacity:.85;transition:opacity .2s}
.pilule a:hover,.pilule a.actif{opacity:1}
.pilule-fond{position:absolute;left:0;top:5px;bottom:5px;border-radius:999px;opacity:0;background:linear-gradient(180deg,rgba(255,255,255,.2),rgba(255,255,255,.06));box-shadow:inset 0 0 0 1px rgba(255,255,255,.26),inset 0 1px 1px rgba(255,255,255,.3);transition:transform .5s var(--courbe),width .5s var(--courbe),opacity .25s,background-color .3s}
.nav.claire .pilule-fond{background:#fff;box-shadow:0 0 0 1px rgba(10,13,26,.07),0 1px 3px rgba(10,13,26,.07)}
.btn-nav{justify-self:end;display:inline-flex;align-items:center;gap:6px;padding:11px 18px;border-radius:999px;background:#fff;color:var(--encre);font-family:var(--ui);font-size:14px;font-weight:500;transition:transform .15s var(--courbe),background-color .2s}
.btn-nav svg{width:16px;height:16px}
.btn-nav:hover{background:#E7ECFF}
.btn-nav:active{transform:scale(.96)}
.nav.claire .btn-nav{background:var(--encre);color:#fff}
.nav.claire .btn-nav:hover{background:#262B40}
.burger{display:none;justify-self:end;width:44px;height:44px;place-items:center;border-radius:12px}
.burger svg{width:26px;height:26px}
.menu-mobile{position:fixed;z-index:29;inset:0;padding:96px 24px;background:#fff;display:flex;flex-direction:column;gap:8px;font-size:28px;font-weight:500;letter-spacing:-.02em}
.menu-mobile[hidden]{display:none}
.menu-mobile a{padding:12px 0;border-bottom:1px solid var(--filet)}

/* Héros */
.hero{position:relative;overflow:hidden;padding:156px 24px 0;text-align:center;color:#fff;background:linear-gradient(180deg,#030616 0%,#0C1A8C 52%,#3D63FF 84%,#C6D2FF 100%)}
.stries{position:absolute;inset:0 -40px;pointer-events:none;animation:stries 36s linear infinite;background:repeating-linear-gradient(90deg,rgba(255,255,255,0) 0,rgba(255,255,255,.02) 32px,rgba(255,255,255,.1) 40px);-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.3),#000);mask-image:linear-gradient(180deg,rgba(0,0,0,.3),#000)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff);pointer-events:none}
.hero-texte{position:relative;z-index:1;max-width:var(--largeur);margin:auto;display:flex;flex-direction:column;align-items:center}
.annonce{display:inline-flex;align-items:center;gap:10px;padding:5px 16px 5px 6px;border-radius:999px;font-family:var(--ui);font-size:13px;font-weight:500;background:linear-gradient(180deg,rgba(255,255,255,.2),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.3)}
.annonce b{font-weight:500;padding:3px 10px;border-radius:999px;background:#fff;color:#030616}
.hero h1{margin-top:30px}
.hero-texte>p:not(.retour){margin-top:24px;font-size:19px;opacity:.82}
.champ{display:flex;align-items:center;gap:12px;width:min(470px,100%);margin-top:36px;padding:6px 6px 6px 24px;border-radius:999px;background:#fff;box-shadow:0 12px 36px rgba(3,6,22,.26),0 0 0 5px rgba(255,255,255,.1);color:var(--encre);transition:box-shadow .35s var(--courbe),width .5s var(--courbe)}
.champ:hover{box-shadow:0 14px 40px rgba(3,6,22,.3),0 0 0 5px rgba(255,255,255,.18)}
.champ:focus-within{width:min(530px,100%);box-shadow:0 16px 44px rgba(3,6,22,.32),0 0 0 5px rgba(255,255,255,.34)}
.champ input{flex:1;min-width:0;border:0;outline:0;background:none;font-family:var(--ui);font-size:16px;color:var(--encre)}
.champ input::placeholder{color:var(--gris);opacity:1}
.champ button{flex:none;display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;background:var(--bleu);color:#fff;font-family:var(--ui);font-size:15px;font-weight:500;transition:background-color .2s,transform .15s var(--courbe)}
.champ button svg{width:16px;height:16px}
.champ button:hover{background:#1A38D6}
.champ button:active{transform:scale(.96)}
.champ button:disabled{opacity:.6;cursor:default}
.champ input[hidden]{display:none}
.retour{min-height:22px;margin-top:10px;font-family:var(--ui);font-size:14px}
.curseur{position:absolute;display:flex;align-items:flex-start;pointer-events:none}
.curseur svg{width:20px;height:20px;fill:#fff;flex:none}
.curseur span{margin-top:18px;padding:5px 10px;border-radius:8px;font-family:var(--ui);font-size:13px;background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.1));border:1px solid rgba(255,255,255,.3);white-space:nowrap}
.c1,.c3{flex-direction:row-reverse}
.c1 span,.c3 span{margin-right:-6px}
.c2 span{margin-left:-6px}
.c1{right:calc(50% + 385px);top:62px}
.c2{left:calc(50% + 395px);top:118px}
.c3{right:calc(50% + 425px);top:232px}
.hero-videos{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);gap:20px;max-width:var(--largeur);margin:44px auto -120px}
.video{position:relative;overflow:hidden;border-radius:20px;aspect-ratio:9/16;background:#141827}
.video>svg{position:absolute;top:16px;left:16px;width:18px;height:18px;color:#fff}
.video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.65));pointer-events:none}
.video figcaption{position:absolute;z-index:1;left:12px;bottom:10px;right:12px;color:#fff;font-size:14px;font-weight:500}

/* Bande de réseaux */
.bande{overflow:hidden;padding:40px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent);mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent)}
.bande-piste{display:flex;width:max-content;gap:128px;animation:defile 40s linear infinite}
.bande-piste span{display:inline-flex;align-items:center;gap:12px;font-size:24px;font-weight:500;letter-spacing:-.02em;white-space:nowrap}
.bande-piste svg{width:30px;height:30px}
@keyframes defile{to{transform:translateX(calc(-50% - 64px))}}

/* Sections */
.sec{padding:88px max(24px,calc((100% - var(--largeur))/2))}
.fond{background:var(--fond)}
.tete{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;margin-bottom:48px}
.tete p{color:var(--gris);font-size:19px;max-width:680px}
.etiquette{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--fond);font-size:13px;font-weight:500}
.etiquette.blanche{background:#fff}
.badge{position:absolute;z-index:2;top:16px;left:16px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.95);color:var(--encre);font-size:13px;font-weight:500;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.coches{display:grid;gap:10px}
.coches li{position:relative;padding-left:28px}
.coches li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' fill='none' stroke='%23000' stroke-width='2.200' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6L9 17l-5-5' fill='none' stroke='%23000' stroke-width='2.200' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.coches.sombres li::before{background:var(--bleu)}
.sous{color:var(--gris);font-size:19px;margin-top:16px;max-width:500px}

/* Tout passe par nous */
.grille-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.carte{padding:24px;border-radius:24px;background:var(--fond)}
.carte h3{display:flex;align-items:center;gap:12px;margin-top:20px}
.carte>p{margin-top:12px;color:var(--gris);font-size:16px}
.pastille{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:12px;background:var(--encre);color:#fff}
.pastille svg{width:22px;height:22px}
.visuel{height:216px;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--filet);overflow:hidden}
.visuel small{font-size:12px;color:var(--gris)}
.ligne-haut{display:flex;justify-content:space-between;align-items:center;font-size:15px}
.ligne-haut small{padding:3px 10px;border-radius:999px;background:var(--fond);color:var(--encre);font-weight:500}
.discret{display:block;margin:10px 0 8px}
.barre{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:8px;font-size:13px;margin-bottom:8px}
.barre i{display:block;height:8px;border-radius:4px;background:#C9CDD8}
.barre.moi{color:var(--bleu);font-weight:600}
.barre.moi i{background:var(--bleu)}
.angle{display:inline-block;margin-top:4px;padding:5px 12px;border-radius:999px;background:var(--bleu);color:#fff;font-size:12px;font-weight:500}
.visuel-scripts{display:grid;gap:12px;align-content:center}
.visuel-scripts div{padding:14px 14px;border-radius:12px;background:var(--fond)}
.visuel-scripts strong{display:block;font-size:15px;font-weight:500}
.ok{color:var(--bleu)!important;font-weight:500}
.visuel-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.visuel-photos img{border-radius:10px}

/* Bento */
.bento{display:grid;grid-template-columns:590fr 285fr 285fr;grid-template-rows:260px 260px;gap:20px}
.bento figure{position:relative;overflow:hidden;border-radius:24px}
.b-photo{grid-row:1/3}
.b-photo img{object-position:50% 42%}
.b-studio img{object-position:40% 40%}
.b-studio::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.72))}
.b-studio strong{position:absolute;z-index:1;left:20px;right:20px;bottom:18px;color:#fff;font-size:24px;font-weight:600;letter-spacing:-.02em;line-height:1.2}
.b-post,.b-semaine{padding:18px 20px;border-radius:24px;background:#fff;box-shadow:inset 0 0 0 1px var(--filet)}
.b-post>strong{font-size:15px;font-weight:500}
.post{margin-top:10px;padding:12px;border-radius:14px;background:var(--fond)}
.post-haut{display:grid;grid-template-columns:56px 1fr;gap:10px}
.post-haut img{height:76px;border-radius:8px}
.post small{color:var(--gris);font-size:12px}
.post p{font-size:13px;font-weight:500;line-height:1.35}
.tags{display:flex;gap:6px;margin-top:10px}
.tags span{padding:3px 10px;border-radius:999px;background:#fff;color:var(--bleu);font-size:12px;font-weight:500}
.reseaux{display:flex;gap:10px;margin-top:10px}
.reseaux svg{width:18px;height:18px}
.b-semaine{grid-column:2/4}
.b-semaine>strong{font-size:22px;font-weight:600;letter-spacing:-.02em}
.jours{display:flex;gap:6px;margin-top:12px;height:172px}
.jour{--i:0;position:relative;flex:1 1 0;min-width:0;overflow:hidden;border-radius:14px;background:#141827;color:#fff;text-align:left;transition:flex-grow .65s var(--courbe),opacity .7s var(--courbe) calc(var(--d,0s) + .3s + var(--i)*70ms),transform .8s var(--courbe) calc(var(--d,0s) + .3s + var(--i)*70ms)}
.jour:nth-child(2){--i:1}.jour:nth-child(3){--i:2}.jour:nth-child(4){--i:3}.jour:nth-child(5){--i:4}.jour:nth-child(6){--i:5}.jour:nth-child(7){--i:6}
.jour[aria-expanded=true]{flex-grow:7}
.jour img{position:absolute;inset:0;filter:saturate(.75) brightness(.72);transition:filter .5s var(--courbe),transform .9s var(--courbe)}
.jour:hover img{filter:saturate(.95) brightness(.88)}
.jour[aria-expanded=true] img{filter:none}
.jour::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.72));pointer-events:none}
.jour-nom{position:absolute;z-index:1;left:0;right:0;bottom:10px;text-align:center;font-size:13px;font-weight:500;transition:left .55s var(--courbe),right .55s var(--courbe)}
.jour[aria-expanded=true] .jour-nom{left:14px;right:auto;bottom:32px}
.jour-titre{position:absolute;z-index:1;left:14px;bottom:10px;font-size:15px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;opacity:0;translate:0 8px;transition:opacity .2s,translate .3s var(--courbe)}
.jour[aria-expanded=true] .jour-titre{opacity:1;translate:0 0;transition:opacity .45s ease .22s,translate .6s var(--courbe) .22s}
.jour[aria-expanded=false] .jour-nom{bottom:10px}

/* Script */
.script-bloc{position:relative;display:grid;grid-template-columns:1fr 290px;gap:56px;align-items:stretch}
.script{padding:24px 32px;border-radius:24px;background:#fff;border:1px solid var(--filet)}
.script header{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px}
.script header strong{font-size:20px;font-weight:600}
.statut{padding:5px 12px;border-radius:999px;background:var(--fond);font-size:13px;font-weight:500}
.script header small{flex-basis:100%;color:var(--gris);font-size:15px}
.script li{display:grid;grid-template-columns:72px 172px 1fr;gap:0;align-items:baseline;padding:20px 0;border-top:1px solid var(--filet);margin-top:0}
.script ol{margin-top:20px}
.script time{font-family:"Geist Mono",monospace;font-size:14px;color:var(--gris)}
.script li span{font-size:14px;font-weight:500;color:var(--gris)}
.script li p{font-size:17px}
.script .fort time,.script .fort span{color:var(--bleu)}
.script .fort p{font-size:22px;font-weight:600;letter-spacing:-.02em}
.script footer{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:16px;border-top:1px solid var(--filet)}
.script footer small{color:var(--gris);font-size:13px}
.script footer p{font-size:15px;font-weight:500}
.relais{position:absolute;z-index:2;right:268px;top:50%;display:grid;place-items:center;width:44px;height:44px;margin-top:-22px;border-radius:50%;background:var(--bleu);color:#fff;box-shadow:0 0 0 6px var(--fond)}
.relais::before{content:"";position:absolute;right:100%;top:50%;width:34px;height:2px;margin-top:-1px;background:rgba(36,71,255,.28);overflow:hidden}
.relais svg{width:22px;height:22px}
.script-video{position:relative;overflow:hidden;border-radius:28px;background:#141827}
.script-video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,0) 25%,rgba(0,0,0,0) 55%,rgba(0,0,0,.75))}
.script-video time{position:absolute;z-index:1;top:18px;left:18px;color:#fff;font-family:"Geist Mono",monospace;font-size:13px}
.script-video figcaption{position:absolute;z-index:1;left:18px;right:18px;bottom:36px;color:#fff;font-size:20px;font-weight:600;line-height:1.3}
.script-video time{font-variant-numeric:tabular-nums}
.script-video i{position:absolute;z-index:1;left:18px;right:18px;bottom:18px;height:3px;border-radius:2px;overflow:hidden;background:rgba(255,255,255,.4)}
.script-video i::before{content:"";display:block;height:100%;background:#fff;transform-origin:left;animation:lecture 30s linear infinite}

/* Onglets */
.onglets{position:relative;display:flex;width:max-content;max-width:100%;margin:-24px auto 24px;padding:6px;gap:4px;border-radius:999px;background:var(--fond);overflow-x:auto;scrollbar-width:none}
.onglets button{position:relative;z-index:1;padding:10px 22px;border-radius:999px;font-size:15px;font-weight:500;white-space:nowrap;transition:color .3s var(--courbe)}
.onglets button[aria-selected=true]{color:#fff}
.panneaux{display:grid;border-radius:28px;background:var(--encre);overflow:hidden}
.panneau{grid-area:1/1;display:grid;grid-template-columns:440fr 660fr;gap:48px;min-height:500px;padding:44px 32px 32px 48px;color:#fff;visibility:hidden}
.panneau.actif,.panneau.sort{visibility:visible}
.panneau.sort{pointer-events:none}
.panneau h3{font-size:34px;line-height:1.22}
.panneau>div:first-child>p{margin-top:16px;font-size:18px;opacity:.75}
.panneau .coches{margin-top:24px}
.panneau .coches li::before{background:#7F9BFF}
.p-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.p-photos .video{aspect-ratio:auto;height:100%;min-height:380px;border-radius:18px}
.p-liste{display:grid;gap:12px;align-content:center}
.p-liste div{display:flex;align-items:center;gap:16px;padding:22px 24px;border-radius:16px;background:#161A2E;font-size:18px;font-weight:500}
.p-liste b{flex:none;min-width:70px;font-family:"Geist Mono",monospace;font-size:13px;font-weight:400;color:#7F9BFF}
.p-doc{padding:28px;border-radius:18px;background:#fff;color:var(--encre);align-self:center}
.p-doc strong{font-size:20px;font-weight:600}
.p-doc>i{display:block;height:8px;margin-top:12px;border-radius:4px;background:var(--filet)}
.p-doc>i.court{width:55%}
.p-doc div{display:grid;grid-template-columns:72px 1fr;margin-top:18px;padding-top:14px;border-top:1px solid var(--filet)}
.p-doc b{font-weight:500;color:var(--bleu);font-size:14px}

/* Deux colonnes */
.deux{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.deux h2{margin-top:14px}
.deux .coches{margin-top:24px}
.ecran{padding:32px;border-radius:28px;background:var(--fond)}
.ecran-int{padding:20px 16px 16px;border-radius:18px;background:#fff;border:1px solid var(--filet)}
.ecran-haut{display:flex;justify-content:space-between;align-items:baseline;padding:0 8px}
.ecran-haut strong{font-size:18px;font-weight:600}
.ecran-haut small{font-size:14px;color:var(--gris)}
.rail{height:6px;margin:12px 8px;border-radius:3px;background:var(--filet)}
.rail i{display:block;height:6px;border-radius:3px;background:var(--bleu)}
.ligne-script{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px;border-radius:14px;background:var(--fond)}
.ligne-script img{flex:none;width:64px;height:64px;border-radius:10px}
.ligne-script>div{flex:1;min-width:0}
.ligne-script strong{display:block;font-size:16px;font-weight:500}
.ligne-script small{font-size:13px;font-weight:500;color:var(--gris)}
.ligne-script>svg{flex:none;width:20px;height:20px;margin-right:10px;color:var(--bleu)}
.mini{flex:none;padding:8px 14px;border-radius:999px;background:var(--encre);color:#fff;font-size:13px;font-weight:500}

/* Étapes */
.etapes{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.etapes>li{position:relative;z-index:1;display:flex;flex-direction:column;padding:20px;border-radius:24px;background:#fff}
.etapes>li:not(:last-child)::after{content:"";position:absolute;z-index:2;right:-28px;top:266px;width:36px;height:36px;border-radius:50%;background:var(--encre) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat}
.etapes>li:nth-child(1){z-index:4}.etapes>li:nth-child(2){z-index:3}.etapes>li:nth-child(3){z-index:2}
.etapes header{display:flex;align-items:center;gap:10px}
.etapes b{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--encre);color:#fff;font-size:18px;font-weight:600}
.etapes header span{padding:6px 12px;border-radius:999px;background:var(--fond);font-size:13px;font-weight:500}
.etapes h3{margin-top:20px;font-size:26px;min-height:64px}
.etapes>li>p{margin-top:6px;color:var(--gris);font-size:16px;min-height:70px}
.etapes .bleue{background:var(--bleu);color:#fff}
.etapes .bleue b{background:#fff;color:var(--bleu)}
.etapes .bleue header span{background:#4D69FF}
.etapes .bleue>p{color:#fff;opacity:.85}
.etapes>li>div{height:290px;margin-top:16px;border-radius:16px;overflow:hidden}
.v-contrat{position:relative;padding:18px;background:var(--fond)}
.v-contrat strong,.v-dossier strong{font-size:16px;font-weight:600}
.v-contrat i,.v-dossier>i{display:block;height:7px;margin-top:13px;border-radius:4px;background:#DDE0E8}
.v-contrat i.court,.v-dossier>i.court{width:55%}
.v-contrat svg{position:absolute;left:40px;top:172px;width:150px;height:60px}
.v-contrat small{position:absolute;left:18px;bottom:18px;color:var(--bleu);font-size:13px;font-weight:500}
.v-dossier{padding:14px 16px;background:#fff;color:var(--encre)}
.v-dossier>i{background:var(--filet);margin-top:10px}
.v-dossier div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.v-dossier img{height:90px;border-radius:10px}
.v-prod img{height:140px;border-radius:16px}
.v-prod span{display:block;width:max-content;margin-top:8px;padding:9px 12px;border-radius:10px;font-size:13px;font-weight:500}
.p1{background:var(--encre);color:#fff}
.p2{margin-left:32px;background:var(--bleu);color:#fff}
.p3{margin-left:88px;background:var(--fond)}
.v-semaine{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v-semaine .video{aspect-ratio:auto;height:140px;border-radius:12px}

/* Projets */
.projets .video{aspect-ratio:386/440;border-radius:24px}
.projets .video>svg{left:auto;right:20px;top:22px;width:22px;height:22px}
.projets figcaption{left:20px;right:20px;bottom:20px;font-size:15px;font-weight:400}
.projets figcaption strong{display:block;font-size:24px;font-weight:600;letter-spacing:-.02em}

/* Formules */
.bascule{position:relative;display:flex;padding:5px;gap:2px;border-radius:999px;background:var(--fond)}
.bascule button{position:relative;z-index:1;padding:8px 18px;border-radius:999px;font-size:14px;font-weight:500;transition:color .3s var(--courbe)}
.bascule button[aria-pressed=true]{color:#fff}
.remise{margin-left:4px;padding:2px 7px;border-radius:999px;background:var(--bleu);color:#fff;font-size:12px}
.note-annee{font-size:15px!important}
.prix{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.prix article{display:flex;flex-direction:column;padding:24px;border-radius:24px;border:1px solid var(--filet)}
.prix h3{font-size:18px}
.montant{display:flex;align-items:baseline;gap:6px;margin-top:14px}
.montant b{font-variant-numeric:tabular-nums;font-family:var(--chiffre);font-weight:400;font-size:clamp(44px,4.700vw,68px);line-height:1.05;letter-spacing:-.03em;white-space:nowrap}
.montant span{font-size:34px;font-weight:600}
.prix small{font-size:15px;opacity:.8}
.prix .coches{margin:20px 0 28px;padding-top:20px;border-top:1px solid var(--filet);font-size:16px}
.prix .coches li::before{background:var(--bleu)}
.choisir{align-self:flex-start;margin-top:auto;padding:12px 20px;border-radius:999px;background:var(--encre);color:#fff;font-size:15px;font-weight:500;transition:transform .15s var(--courbe),background-color .2s}
.choisir:hover{background:#262B40}
.choisir:active{transform:scale(.96)}
.mis-en-avant{background:var(--bleu);border-color:var(--bleu)!important;color:#fff}
.mis-en-avant .coches{border-color:rgba(255,255,255,.3)}
.mis-en-avant .coches li::before{background:#fff}
.mis-en-avant .choisir{background:#fff;color:var(--bleu)}
.mis-en-avant .choisir:hover{background:#E7ECFF}
.hors-taxes{margin-top:16px;text-align:center;color:var(--gris);font-size:14px}

/* Boutons */
.boutons{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 28px;border-radius:999px;font-family:var(--ui);font-size:17px;font-weight:500;transition:transform .15s var(--courbe),background-color .2s,border-color .2s}
.btn svg{width:20px;height:20px}
.btn:active{transform:scale(.96)}
.plein{background:var(--encre);color:#fff}
.plein:hover{background:#262B40}
.contour{border:1.500px solid #C9CDD8}
.contour:hover{border-color:var(--encre)}
.verre{color:#fff;background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,.1));border:1px solid rgba(255,255,255,.6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:inset 0 1px 1px rgba(255,255,255,.5),0 10px 28px rgba(0,0,50,.25)}
.verre:hover{background:linear-gradient(180deg,rgba(255,255,255,.36),rgba(255,255,255,.16))}
.contour-clair{color:#fff;border:1.500px solid rgba(255,255,255,.4)}
.contour-clair:hover{border-color:#fff}

/* Équipe */
.equipe{grid-template-columns:1fr 590fr;gap:50px}
.equipe .boutons{margin-top:32px}
.equipe-photo{height:500px;border-radius:24px;overflow:hidden;background:#0A0908}
.equipe-photo img{object-position:50% 50%}

/* Engagements */
.engagements{display:grid;grid-template-columns:340px 1fr;gap:60px;align-items:center}
.engagements>.video{aspect-ratio:auto;height:560px;border-radius:28px}
.engagements h2{margin-top:14px}
.grille-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:32px}
.grille-2 article{min-height:176px;padding:22px;border-radius:20px;background:#fff}
.grille-2 p{margin-top:10px;color:var(--gris);font-size:15px}

/* Questions */
.questions{grid-template-columns:500fr 700fr;align-items:start;gap:40px}
.contacts{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.contacts a{padding:10px 18px;border-radius:999px;background:var(--fond);font-size:15px;font-weight:500;transition:background-color .2s}
.contacts a:hover{background:#E6E8EF}
.studio-photo{position:relative;height:210px;margin-top:8px;border-radius:20px;overflow:hidden;background:#0A0908}
.studio-photo img{object-position:50% 40%}
.faq{display:grid;gap:12px}
.faq details{border-radius:18px;background:var(--fond);overflow:hidden}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:27px 24px;font-size:19px;font-weight:500;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{flex:none;width:20px;height:20px;transition:transform .4s var(--courbe)}
.faq details.ouvert summary svg{transform:rotate(45deg)}
.faq details p{padding:0 24px 24px;color:var(--gris)}

/* Fin */
.fin{position:relative;overflow:hidden;padding:120px 24px;text-align:center;color:#fff;background:linear-gradient(180deg,#030616,#0D1A8C 65%,#2447FF)}
.fin h2{position:relative;font-size:clamp(40px,6.100vw,88px)}
.fin p{position:relative;margin-top:20px;font-size:20px}
.fin .boutons{position:relative;justify-content:center;margin-top:32px}

/* Pied de page */
.pied{display:grid;grid-template-columns:2.5fr 1fr 1fr 1fr;gap:32px;padding:64px max(24px,calc((100% - var(--largeur))/2));background:var(--encre);color:#fff}
.pied p{margin-top:16px;max-width:300px;opacity:.7}
.pied small{display:block;margin-top:40px;opacity:.6;font-size:14px}
.pied nav{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:16px}
.pied nav strong{font-size:14px;font-weight:500;opacity:.6}
.pied nav a:hover{opacity:.7}

/* Animations */
@keyframes monte{from{opacity:0;translate:0 22px}to{opacity:1;translate:0 0}}
@keyframes monte-flou{from{opacity:0;translate:0 26px;filter:blur(8px)}to{opacity:1;translate:0 0;filter:blur(0)}}
@keyframes parait{from{opacity:0}to{opacity:1}}
@keyframes flotte1{0%,100%{transform:translate(0,0)}22%{transform:translate(9px,-6px)}38%{transform:translate(9px,-6px)}66%{transform:translate(-5px,5px)}80%{transform:translate(-5px,5px)}}
@keyframes flotte2{0%,100%{transform:translate(0,0)}14%{transform:translate(0,0)}42%{transform:translate(-8px,7px)}58%{transform:translate(-8px,7px)}84%{transform:translate(6px,-4px)}}
@keyframes flotte3{0%,100%{transform:translate(0,0)}30%{transform:translate(7px,6px)}46%{transform:translate(7px,6px)}74%{transform:translate(-7px,-3px)}}
@keyframes stries{to{transform:translateX(40px)}}
@keyframes lueur{from{transform:translate(-10%,-6%) scale(1);opacity:.7}to{transform:translate(10%,8%) scale(1.15);opacity:1}}
@keyframes lecture{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes pousse{0%,100%{translate:0 0}50%{translate:4px 0}}

/* Héros : entrée en douceur, lueur lente, flèches qui flottent chacune à son rythme */
.hero::before,.fin::before{content:"";position:absolute;left:50%;top:6%;width:1100px;height:560px;margin-left:-550px;background:radial-gradient(closest-side,rgba(92,124,255,.42),rgba(92,124,255,0));pointer-events:none;animation:lueur 15s ease-in-out infinite alternate}
.annonce{animation:monte .8s var(--courbe) both .05s}
.hero h1 span{animation:monte-flou 1s var(--courbe) both .12s}
.hero h1 em{animation:monte-flou 1s var(--courbe) both .22s}
.hero-texte>p:not(.retour){animation:monte .8s var(--courbe) both .34s}
.champ{animation:monte .8s var(--courbe) both .44s}
.hero-videos .video{--i:0;animation:monte 1s var(--courbe) both calc(.54s + var(--i)*70ms);box-shadow:0 24px 60px rgba(3,6,40,.26);transition:transform .5s var(--courbe),box-shadow .5s var(--courbe)}
.hero-videos .video:nth-child(2){--i:1}.hero-videos .video:nth-child(3){--i:2}.hero-videos .video:nth-child(4){--i:3}.hero-videos .video:nth-child(5){--i:4}
.hero-videos .video:hover{transform:translateY(-8px);box-shadow:0 32px 70px rgba(3,6,40,.34)}
.curseur{will-change:transform;animation:parait 1s ease both 1s,flotte1 13s ease-in-out -2s infinite}
.c2{animation:parait 1s ease both 1.25s,flotte2 17s ease-in-out -9s infinite}
.c3{animation:parait 1s ease both 1.5s,flotte3 11s ease-in-out -5s infinite}
.annonce span{display:inline-block}
.annonce span,.btn svg,.btn-nav svg,.champ button svg{transition:transform .35s var(--courbe)}
.annonce:hover span,.btn:hover svg,.champ button:hover svg{transform:translateX(4px)}
.btn-nav:hover svg{transform:translate(2px,-2px)}

/* Curseurs glissants : navigation, onglets, au mois ou à l'année */
.glisse{position:absolute;left:0;top:6px;bottom:6px;border-radius:999px;background:var(--encre);transition:transform .5s var(--courbe),width .5s var(--courbe)}
.bascule .glisse{top:5px;bottom:5px}
.note-annee:not([hidden]){animation:monte .5s var(--courbe) both}

/* Apparitions au défilement */
.apparait{transition:opacity .8s var(--courbe) var(--d,0s),translate .9s var(--courbe) var(--d,0s),transform .45s var(--courbe),box-shadow .45s var(--courbe)}
.js .apparait:not(.vu){opacity:0;translate:0 28px}
.carte:hover,.prix article:hover,.grille-2 article:hover,.etapes>li:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(10,13,26,.09)}
.projets .video:hover{transform:translateY(-5px);box-shadow:0 22px 48px rgba(10,13,26,.18)}
.projets .video img,.bento figure img,.script-video img,.engagements>.video img,.equipe-photo img,.studio-photo img,.p-photos .video img{transition:transform .9s var(--courbe)}
.projets .video:hover img,.bento figure:hover img,.script-video:hover img,.engagements>.video:hover img,.equipe-photo:hover img,.studio-photo:hover img,.p-photos .video:hover img{transform:scale(1.04)}
.bande-piste span{transition:color .3s}
.bande-piste span:hover{color:var(--bleu)}

/* Détails qui s'animent quand leur carte apparaît */
.barre i,.v-contrat i{transform-origin:left;transition:transform 1.1s var(--courbe) calc(var(--d,0s) + .25s + var(--i,0)*90ms)}
.barre:nth-of-type(2){--i:1}.barre.moi{--i:2}
.v-contrat i:nth-of-type(2){--i:1}.v-contrat i:nth-of-type(3){--i:2}.v-contrat i:nth-of-type(4){--i:3}.v-contrat i:nth-of-type(5){--i:4}
.js .carte:not(.vu) .barre i,.js li:not(.vu) .v-contrat i{transform:scaleX(0)}
.v-contrat path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1.4s ease-in-out calc(var(--d,0s) + .75s)}
.js li:not(.vu) .v-contrat path{stroke-dashoffset:1}
.v-contrat small{transition:opacity .5s ease calc(var(--d,0s) + 2s)}
.js li:not(.vu) .v-contrat small{opacity:0}
.visuel-photos img,.visuel-scripts div,.v-dossier img,.v-prod img,.v-prod span,.v-semaine .video,.post{transition:opacity .7s var(--courbe) calc(var(--d,0s) + .3s + var(--i,0)*90ms),transform .8s var(--courbe) calc(var(--d,0s) + .3s + var(--i,0)*90ms)}
:is(.visuel-photos,.v-dossier>div,.v-semaine,.visuel-scripts,.v-prod) :nth-child(2){--i:1}
:is(.visuel-photos,.v-dossier>div,.v-semaine,.v-prod) :nth-child(3){--i:2}
:is(.visuel-photos,.v-dossier>div,.v-semaine,.v-prod) :nth-child(4){--i:3}
.js :is(.carte,li,.b-semaine,.b-post):not(.vu) :is(.visuel-photos img,.visuel-scripts div,.v-dossier img,.v-prod img,.v-semaine .video,.jour,.post){opacity:0;transform:scale(.9)}
.js li:not(.vu) .v-prod span{opacity:0;transform:translateX(-18px)}
.etapes>li:not(:last-child)::after{animation:pousse 2.6s ease-in-out infinite}
.script li{transition:opacity .7s var(--courbe) calc(var(--d,0s) + var(--i,0)*110ms + .1s),translate .8s var(--courbe) calc(var(--d,0s) + var(--i,0)*110ms + .1s)}
.script li:nth-child(2){--i:1}.script li:nth-child(3){--i:2}.script li:nth-child(4){--i:3}
.js .script:not(.vu) li{opacity:0;translate:0 14px}
.rail i{transition:width .9s var(--courbe)}
.js .ecran:not(.vu) .rail i{width:0!important}
.ligne-script>svg.arrive{animation:monte .5s var(--courbe) both}
.mini{transition:opacity .25s,transform .25s var(--courbe)}
.mini.part{opacity:0;transform:scale(.8)}

/* Menu mobile */
.menu-mobile:not([hidden]){animation:parait .25s ease both}
.menu-mobile:not([hidden]) a{animation:monte .55s var(--courbe) both}
.menu-mobile a:nth-child(2){animation-delay:.05s!important}.menu-mobile a:nth-child(3){animation-delay:.1s!important}.menu-mobile a:nth-child(4){animation-delay:.15s!important}.menu-mobile a:nth-child(5){animation-delay:.2s!important}

/* Mentions légales */
.legal{max-width:720px;margin:auto;padding:48px 24px 96px}
.legal h1{margin-top:48px;font-size:clamp(36px,6vw,56px)}
.legal h2{margin-top:40px;font-size:24px;letter-spacing:-.02em}
.legal p{margin-top:12px;color:var(--gris)}
.legal strong{color:var(--encre);font-weight:600}
.legal p a{color:var(--bleu);text-decoration:underline}
.legal .logo{color:var(--encre)}
.legal .logo-haut{fill:var(--bleu)}
.legal .maj{font-size:15px}
.legal .retour-accueil{margin-top:48px}

/* Tablette */
@media (max-width:1100px){
  .nav{grid-template-columns:auto 1fr auto auto;gap:10px}
  .pilule{display:none}
  .btn-nav{grid-column:3}
  .burger{display:grid;grid-column:4}
  .curseur{display:none}
  .hero-videos{grid-template-columns:repeat(5,minmax(180px,1fr));overflow-x:auto;margin-left:-24px;margin-right:-24px;padding:0 24px;scrollbar-width:none}
  .etapes{grid-template-columns:repeat(2,1fr)}
  .etapes>li::after{display:none}
  .deux,.equipe,.questions,.engagements{grid-template-columns:1fr}
  .engagements>.video{height:440px;max-width:340px}
  .panneau{grid-template-columns:1fr}
  .script-bloc{grid-template-columns:1fr}
  .relais{display:none}
  .script-video{height:520px;max-width:320px;margin:auto;width:100%}
  .bento{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .b-photo{grid-column:1/3;grid-row:auto;height:460px}
  .b-studio{height:280px}
  .b-semaine{grid-column:1/3}
}
/* Téléphone */
@media (max-width:640px){
  .sec{padding-top:64px;padding-bottom:64px}
  .hero{padding-top:120px}
  .hero-videos{margin-bottom:-90px}
  .hero-texte>p:not(.retour),.fin p{font-size:18px}
  .annonce{font-size:12px;white-space:nowrap}
  .annonce span{display:none}
  .champ{padding-left:20px}
  .champ input{font-size:16px}
  .bande-piste{gap:72px;animation-duration:28s}
  .bande-piste span{font-size:20px}
  @keyframes defile{to{transform:translateX(calc(-50% - 36px))}}
  .grille-3,.prix,.etapes,.grille-2{grid-template-columns:1fr}
  .prix,.etapes,.projets{display:flex;gap:12px;overflow-x:auto;margin:0 -24px;padding:0 24px;scroll-snap-type:x mandatory;scroll-padding:0 24px;scrollbar-width:none}
  .prix>*,.etapes>*,.projets>*{flex:0 0 84%;scroll-snap-align:start}
  .bento{grid-template-columns:1fr}
  .b-photo,.b-semaine,.b-studio,.b-post{grid-column:1}
  .b-photo{height:400px}
  .jours{flex-direction:column;height:500px}
  .jour img{object-position:50% 28%}
  .jour-nom{left:14px;right:auto;top:50%;bottom:auto;translate:0 -50%}
  .jour[aria-expanded=true] .jour-nom{top:auto;bottom:32px;translate:0 0}
  .jour[aria-expanded=false] .jour-nom{bottom:auto}
  .script{padding:20px}
  .script li{grid-template-columns:60px 1fr;gap:4px 8px}
  .script li p{grid-column:1/3}
  .script footer{grid-template-columns:1fr}
  .panneaux{border-radius:24px}
  .panneau{padding:28px 20px 20px;min-height:0}
  .panneau h3{font-size:26px}
  .p-photos .video{min-height:230px}
  .p-liste div{padding:16px;font-size:16px}
  .onglets{margin-top:-16px;justify-content:flex-start}
  .ecran{padding:12px}
  .ligne-script strong{font-size:14px}
  .etapes h3,.etapes>li>p{min-height:0}
  .boutons .btn{width:100%}
  .equipe-photo{height:320px}
  .fin{padding:88px 24px}
  .pied{grid-template-columns:1fr 1fr}
  .pied>div{grid-column:1/3}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation:none!important;transition:none!important}
}
