/* ============================================================
   LE SÉJOUR PARFAIT — style « vitrine animée » (11/10/2026)
   Fond blanc, photos mises en avant, bannières en scènes CSS avec podiums, pastilles 3D,
   coupons, cartes sans bordure, apparition au défilement, barre d'onglets mobile.
   Chargé APRÈS sp.css, uniquement sur les pages <body class="vitrine"> (et l'accueil pour .vt-hero).
   Accent #0174D0 (bleu du logo) · secondaire #29B6F6 (ciel) · rouge promo #e5322d.
   ============================================================ */
.vitrine, .vt-zone{
  --vt-accent:#0174d0; --vt-accent-f:#0a3d91; --vt-ciel:#29b6f6; --vt-nuit:#0b2447; --vt-rouge:#e5322d;
  --vt-gris:#f4f6f9; --vt-texte:#33415c; --vt-doux:#7a8499;
  --vt-ombre:0 14px 34px -16px rgba(1,116,208,.45); --vt-ombre-l:0 8px 22px -14px rgba(11,36,71,.35);
}
body.vitrine{background:#fff;font-size:14px;padding-bottom:0}
.vitrine h1,.vitrine h2,.vitrine h3,.vitrine h4{font-family:"Poppins",system-ui,sans-serif;color:var(--vt-nuit)}
.vitrine .bloc{padding:34px 0}

/* ---------------- EN-TÊTE ---------------- */
.vt-tete{position:fixed;top:0;left:0;right:0;z-index:60;padding-top:env(safe-area-inset-top);transition:background .25s,box-shadow .25s;color:#fff}
.vt-ligne{display:flex;align-items:center;gap:10px;height:56px;padding:0 16px;max-width:1240px;margin:0 auto}
.vt-logo{display:flex;align-items:center;flex-shrink:0}
.vt-logo img{height:40px;width:auto}
.vt-logo .logo-fonce{display:none}
.vt-recherche{flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:999px;background:rgba(255,255,255,.22);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;text-decoration:none;font-size:12.5px;border:1px solid rgba(255,255,255,.35)}
.vt-recherche svg{width:16px;height:16px;flex-shrink:0}
.vt-recherche span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vt-liens{display:none}
.vt-panier{display:none}
.vt-icones{display:flex;gap:4px}
.vt-icones a{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:inherit}
.vt-icones svg{width:21px;height:21px}
.vt-univers{display:flex;gap:18px;padding:2px 16px 10px;overflow-x:auto;scrollbar-width:none;max-width:1240px;margin:0 auto;align-items:flex-end}
.vt-univers::-webkit-scrollbar{display:none}
.vt-univers a{color:rgba(255,255,255,.88);text-decoration:none;font:600 13px/1.2 "Poppins",sans-serif;white-space:nowrap;transition:font-size .2s,color .2s}
.vt-univers a.actif{font-size:16px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.25)}
.vt-univers a.actif::after{content:"";display:block;height:3px;border-radius:3px;background:#ffd23f;margin-top:4px}
.vt-arguments{display:none}
/* au défilement : blanc, une seule ligne */
.vt-tete.defile{background:#fff;color:var(--vt-nuit);box-shadow:0 6px 20px -14px rgba(11,36,71,.45)}
.vt-tete.defile .vt-univers{display:none}
.vt-tete.defile .logo-clair{display:none}
.vt-tete.defile .logo-fonce{display:block}
.vt-tete.defile .vt-recherche{background:var(--vt-gris);color:var(--vt-texte);border-color:transparent}

/* ---------------- BANNIÈRES EN SCÈNES ---------------- */
.vt-hero{position:relative;height:370px;overflow:hidden;background:#eaf6ff;touch-action:pan-y}
.vt-piste{position:absolute;inset:0}
.vt-scene{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s}
.vt-scene.actif{opacity:1;visibility:visible;transition:opacity .6s ease}
.sc-voile{position:absolute;inset:0 0 auto;height:44%;background:linear-gradient(180deg,rgba(6,28,64,.55),rgba(6,28,64,0));z-index:3;pointer-events:none}
.sc-sol{position:absolute;left:0;right:0;bottom:0;height:36%;background:linear-gradient(180deg,#f7fbff,#fff);z-index:1}
.sc-sol::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(11,36,71,.08)}
/* thèmes */
.s-ciel{background:linear-gradient(180deg,#5cc2ff 0%,#a9dcff 45%,#eaf6ff 64%)}
.s-ciel::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.0) 0 38px,rgba(255,255,255,.22) 38px 42px);-webkit-mask:linear-gradient(180deg,#000 10%,transparent 62%);mask:linear-gradient(180deg,#000 10%,transparent 62%)}
.s-ciel::after{content:"";position:absolute;width:220px;height:220px;right:-40px;top:40px;border-radius:50%;background:radial-gradient(circle,rgba(255,244,200,.95),rgba(255,244,200,0) 68%)}
.s-sable{background:linear-gradient(180deg,#e9925f 0%,#f4c49b 40%,#fbeee0 64%)}
.s-sable::before{content:"";position:absolute;left:50%;top:18%;width:340px;height:340px;margin-left:-60px;border-radius:50% 50% 0 0;border:22px solid rgba(255,255,255,.28);border-bottom:0}
.s-sable::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,0) 40%,rgba(255,250,235,.35) 52%,rgba(255,255,255,0) 64%)}
.s-studio{background:linear-gradient(180deg,#9fb6d1 0%,#cfdbe9 45%,#eef3f8 64%)}
.s-studio::before{content:"";position:absolute;left:44%;top:22%;width:260px;height:150px;border-radius:50%;background:rgba(11,36,71,.10);filter:blur(18px)}
.sc-anneau{position:absolute;right:6%;top:12%;width:230px;height:230px;border-radius:50%;border:2px solid rgba(255,255,255,.7)}
.s-menthe{background:linear-gradient(180deg,#38c9a7 0%,#9fe7d2 42%,#ecfbf6 64%)}
.sc-nuages{position:absolute;left:58%;top:16%;width:60px;height:22px;border-radius:30px;background:#fff;box-shadow:40px -8px 0 6px #fff,86px 4px 0 2px #fff,-150px 34px 0 -2px rgba(255,255,255,.85),-112px 28px 0 4px rgba(255,255,255,.85);opacity:.9;z-index:0}
.s-lilas{background:linear-gradient(180deg,#8f7cf0 0%,#c6b9ff 42%,#f3f0ff 64%)}
.s-lilas::before{content:"";position:absolute;right:-60px;top:-30px;width:300px;height:300px;border-radius:50%;border:34px solid rgba(255,255,255,.22)}
.sc-etoiles{position:absolute;inset:0;background-image:radial-gradient(2px 2px at 20% 30%,#fff 50%,transparent 51%),radial-gradient(2px 2px at 70% 18%,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 85% 40%,#fff 50%,transparent 51%),radial-gradient(1.5px 1.5px at 45% 12%,#fff 50%,transparent 51%),radial-gradient(2px 2px at 60% 44%,rgba(255,255,255,.8) 50%,transparent 51%)}
/* texte */
.sc-texte{position:absolute;left:16px;top:118px;width:46%;z-index:4}
.sc-date{display:inline-block;font:700 10.5px/1 "DM Sans",sans-serif;letter-spacing:.6px;text-transform:uppercase;color:#fff;background:rgba(11,36,71,.35);padding:5px 9px;border-radius:999px;margin-bottom:8px}
.sc-texte h2{font:800 20px/1.12 "Poppins",sans-serif;color:var(--vt-nuit);margin:0 0 12px;letter-spacing:-.2px}
.sc-cta{display:inline-flex;align-items:center;height:30px;padding:0 13px;border-radius:999px;border:1.5px solid var(--vt-nuit);color:var(--vt-nuit);text-decoration:none;font:700 11.5px/1 "DM Sans",sans-serif;background:rgba(255,255,255,.55)}
/* produits sur podiums */
.sc-produits{position:absolute;right:0;bottom:0;width:58%;height:100%;z-index:2}
.pr{position:absolute;margin:0;border-radius:16px;overflow:hidden;background:#fff;border:4px solid #fff;filter:drop-shadow(0 16px 18px rgba(11,36,71,.28))}
.pr img{width:100%;height:100%;object-fit:cover}
.pr-g{width:62%;aspect-ratio:4/5;right:30%;bottom:27%;z-index:2;transform:rotate(-4deg)}
.pr-d{width:46%;aspect-ratio:1;right:4%;bottom:24%;z-index:3;transform:rotate(5deg)}
.pr-emoji{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:linear-gradient(160deg,#fff,#eef9f5);font-size:38px;line-height:1}
.pr-car{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:linear-gradient(170deg,#fff,#e8f3fd);padding:10px}
.pr-car .car-ico{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(160deg,#29b6f6,#0174d0);color:#fff;margin-bottom:4px;box-shadow:0 10px 18px -10px #0174d0}
.pr-car .car-ico svg{width:30px;height:30px}
.pr-car b{font:700 12px/1.3 "Poppins",sans-serif;color:var(--vt-nuit)}
.podium{position:absolute;bottom:13%;height:34px;border-radius:0 0 50% 50%/0 0 14px 14px;background:linear-gradient(90deg,#e9eef5,#fff 30%,#cfd8e4 70%,#eef2f7);box-shadow:0 18px 22px -14px rgba(11,36,71,.45);z-index:1}
.podium::before{content:"";position:absolute;left:0;right:0;top:-10px;height:20px;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#fff,#eef2f7 75%);box-shadow:inset 0 -2px 4px rgba(11,36,71,.08)}
.p-g{width:60%;right:31%;height:40px}
.p-d{width:48%;right:3%;bottom:11%}
/* animations de la scène active */
.vt-scene.actif .sc-texte{animation:vt-monte .7s ease both}
.vt-scene.actif .pr-g{animation:vt-entre .8s .1s ease both,vt-flotte 5s 1s ease-in-out infinite}
.vt-scene.actif .pr-d{animation:vt-entre-d .8s .25s ease both,vt-flotte-d 5s 1.2s ease-in-out infinite}
@keyframes vt-monte{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes vt-entre{from{opacity:0;transform:translateY(40px) rotate(-4deg)}to{opacity:1;transform:rotate(-4deg)}}
@keyframes vt-entre-d{from{opacity:0;transform:translateY(40px) rotate(5deg)}to{opacity:1;transform:rotate(5deg)}}
@keyframes vt-flotte{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-7px)}}
@keyframes vt-flotte-d{0%,100%{transform:rotate(5deg) translateY(0)}50%{transform:rotate(5deg) translateY(-7px)}}
.vt-points{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:6px;z-index:5}
.vt-points button{width:7px;height:7px;padding:0;border:0;border-radius:99px;background:rgba(11,36,71,.22);cursor:pointer;transition:width .3s,background .3s}
.vt-points button.actif{width:22px;background:var(--vt-accent)}
.vt-fleche{display:none;position:absolute;top:50%;z-index:6;width:42px;height:42px;margin-top:-21px;border:0;border-radius:50%;background:rgba(255,255,255,.85);color:var(--vt-nuit);font-size:26px;line-height:1;cursor:pointer;box-shadow:var(--vt-ombre-l)}
.vt-fleche.prec{left:14px}.vt-fleche.suiv{right:14px}

/* ---------------- PASTILLES ---------------- */
.vt-pastilles{display:grid;grid-template-columns:repeat(5,1fr);gap:14px 4px;padding:18px 0 6px}
.vt-pastilles a{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--vt-texte);text-align:center}
.vt-pastilles small{font-size:11px;line-height:1.2;margin-top:6px;max-width:68px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pa{width:54px;height:54px;display:grid;place-items:center;position:relative}
.vt-pastilles a{animation:vt-pop .45s ease both}
.vt-pastilles a:nth-child(2){animation-delay:.04s}.vt-pastilles a:nth-child(3){animation-delay:.08s}.vt-pastilles a:nth-child(4){animation-delay:.12s}.vt-pastilles a:nth-child(5){animation-delay:.16s}.vt-pastilles a:nth-child(6){animation-delay:.2s}.vt-pastilles a:nth-child(7){animation-delay:.24s}.vt-pastilles a:nth-child(8){animation-delay:.28s}.vt-pastilles a:nth-child(9){animation-delay:.32s}.vt-pastilles a:nth-child(10){animation-delay:.36s}
@keyframes vt-pop{from{opacity:0;transform:scale(.4)}70%{transform:scale(1.08)}to{opacity:1;transform:none}}
.pa i{font-style:normal}
.pa-new{background:#fff;border-radius:9px;transform:rotate(-8deg);box-shadow:0 8px 16px -8px rgba(11,36,71,.5);overflow:hidden;width:48px;height:48px;border:1px solid #eef1f6}
.pa-new::before{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:var(--vt-accent)}
.pa-new i{font:900 15px/1 "Poppins",sans-serif;color:var(--vt-rouge);margin-top:10px}
.pa-hot{width:50px;height:50px;border-radius:50% 50% 50% 8px;transform:rotate(-45deg);background:radial-gradient(circle at 30% 30%,#ff7a6b,#e5322d 60%,#b71c1c);box-shadow:0 10px 18px -8px rgba(229,50,45,.8),inset 0 2px 4px rgba(255,255,255,.5)}
.pa-hot i{transform:rotate(45deg);font:italic 900 13px/1 "Poppins",sans-serif;color:#fff}
.pa-pct{background:radial-gradient(circle at 35% 30%,#ff6b5e,#e5322d 65%);-webkit-mask:radial-gradient(circle,#000 62%,transparent 63%),repeating-conic-gradient(#000 0 7.5deg,transparent 7.5deg 15deg);-webkit-mask-composite:source-over;mask:radial-gradient(circle,#000 62%,transparent 63%),repeating-conic-gradient(#000 0 7.5deg,transparent 7.5deg 15deg);border-radius:50%}
.pa-pct i{font:900 22px/1 "Poppins",sans-serif;color:#fff}
.pa-photo{border-radius:50%;overflow:hidden;box-shadow:0 10px 18px -10px rgba(11,36,71,.55);border:2px solid #fff}
.pa-photo img{width:100%;height:100%;object-fit:cover}
.pa-emoji{border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#e3f2fd);font-size:28px;box-shadow:0 10px 18px -10px rgba(1,116,208,.6)}
.pa-emoji-2{background:radial-gradient(circle at 35% 30%,#fff,#fde7f3)}
.pa-suivi{border-radius:14px;background:linear-gradient(160deg,#ffb04a,#f57c00);color:#fff;box-shadow:0 10px 18px -8px rgba(245,124,0,.75),inset 0 2px 3px rgba(255,255,255,.45)}
.pa-wa{border-radius:50%;background:linear-gradient(160deg,#4ee07f,#1fa855);color:#fff;box-shadow:0 10px 18px -8px rgba(31,168,85,.75),inset 0 2px 3px rgba(255,255,255,.45)}
.pa-suivi svg,.pa-wa svg{width:26px;height:26px}

/* ---------------- COUPONS ---------------- */
.vt-coupons{position:relative;overflow:hidden;display:flex;gap:10px;align-items:stretch;padding:12px;border-radius:16px;background:linear-gradient(120deg,#0a5fb0,#0174d0 55%,#29b6f6);margin:14px 0 6px;box-shadow:var(--vt-ombre)}
.vt-coupons::after{content:"";position:absolute;top:0;bottom:0;width:60px;left:-80px;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-18deg);animation:vt-reflet 4.5s ease-in-out infinite}
@keyframes vt-reflet{0%,60%{left:-80px}100%{left:110%}}
.cp-tickets{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;min-width:0}
.cp{background:#fff8ec;border-radius:10px;padding:9px 6px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;-webkit-mask:radial-gradient(circle 6px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 6px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat;mask:radial-gradient(circle 6px at 0 50%,transparent 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 6px at 100% 50%,transparent 98%,#000) right/51% 100% no-repeat}
.cp b{font:800 14px/1.1 "Poppins",sans-serif;color:var(--vt-rouge);white-space:nowrap}
.cp>span{font-size:11px;font-weight:700;color:var(--vt-nuit);margin-top:2px}
.cp small{font-size:9.5px;color:var(--vt-doux);line-height:1.2}
.cp-promo{width:86px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center}
.cp-promo small{font-size:10px;opacity:.9}
.cp-promo b{font:900 22px/1 "Poppins",sans-serif;margin:2px 0 6px}
.cp-promo a{background:#fff;color:var(--vt-accent);border-radius:999px;padding:6px 9px;font-size:10.5px;font-weight:700;text-decoration:none;white-space:nowrap}

/* ---------------- SECTIONS & CARTES ---------------- */
.vt-section{padding:26px 0 6px;scroll-margin-top:70px}
.vitrine section{scroll-margin-top:70px}
.vt-titre{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}
.vt-titre h2{font-size:16px;margin:0}
.vt-titre a{font-size:12.5px;font-weight:700;color:var(--vt-accent);text-decoration:none}
.vt-sous{font-size:12px;color:var(--vt-doux)}
.vt-intro{font-size:13px;color:var(--vt-texte);margin:0 0 14px;max-width:720px}
.vt-grille{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 12px}
.vt-carte{min-width:0}
.vt-carte .ph{position:relative;aspect-ratio:1;border-radius:12px;background:var(--vt-gris);overflow:hidden;display:grid;place-items:center;transition:transform .3s}
.vt-carte .ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.ph-bus{background:linear-gradient(160deg,#e3f2fd,#f4f6f9)}
.ph-bus svg{width:64px;height:64px;color:var(--vt-accent)}
.ph-art{background:linear-gradient(160deg,#fde7f3,#fff6dc)}
.ph-art .emo{font-size:62px}
.pl{position:absolute;left:8px;top:8px;z-index:2;background:var(--vt-rouge);color:#fff;font:800 10.5px/1 "DM Sans",sans-serif;padding:5px 7px;border-radius:6px;letter-spacing:.2px}
.pl-bleu{background:var(--vt-accent)}
.vt-carte h3{font:600 12.5px/1.35 "DM Sans",sans-serif;color:var(--vt-nuit);margin:8px 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vt-carte ul,.vt-tarif ul{list-style:none;padding:0;margin:0 0 6px}
.vt-carte li,.vt-tarif li{font-size:11px;color:var(--vt-doux);display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.7}
.vt-carte li::before,.vt-tarif li::before{content:"✓";flex-shrink:0;width:12px;height:12px;border-radius:50%;background:var(--vt-nuit);color:#fff;font-size:8px;display:grid;place-items:center;line-height:12px;text-align:center}
.vt-carte .px b{font:800 14.5px/1.2 "Poppins",sans-serif;color:var(--vt-accent)}
.vt-carte .ry{font-size:11px;color:var(--vt-doux);margin-top:2px}
.vt-vedette{color:var(--vt-rouge);font-weight:700;display:inline-flex;align-items:center;gap:2px}
.vt-vedette svg{width:11px;height:11px}
@media (hover:hover){.vt-carte:hover .ph{transform:translateY(-4px);box-shadow:var(--vt-ombre-l)}.vt-carte:hover .ph img{transform:scale(1.05)}}
/* apparition au défilement (visible par défaut si le script ne tourne pas) */
.js-vt .vt-revele{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.js-vt .vt-revele.vu{opacity:1;transform:none}

/* tarifs */
.vt-tarifs{display:grid;grid-template-columns:1fr;gap:14px}
.vt-tarif{display:flex;gap:12px;align-items:stretch;background:#fff;border-radius:16px;box-shadow:0 10px 30px -18px rgba(11,36,71,.45);padding:10px}
.vt-tarif .ph{position:relative;width:38%;flex-shrink:0;border-radius:12px;overflow:hidden;background:var(--vt-gris)}
.vt-tarif .ph img{width:100%;height:100%;object-fit:cover;min-height:150px}
.vt-tarif .corps{flex:1;min-width:0;display:flex;flex-direction:column}
.vt-tarif h3{font-size:16px;margin:2px 0 4px}
.vt-tarif .px{margin:auto 0 8px}
.vt-tarif .px b{font:800 20px/1.1 "Poppins",sans-serif;color:var(--vt-accent);margin-right:6px}
.vt-tarif .px s{font-size:12px;color:var(--vt-doux)}
.vt-tarif .px small{display:block;font-size:11px;color:var(--vt-doux)}
.vt-tarif .btns{display:flex;gap:6px;flex-wrap:wrap}
.vt-tarif .btn-sm{padding:9px 12px;font-size:12.5px}

/* départs (reprend les styles de sp.css, en plus compact) */
.vitrine .trajet{margin-top:4px}
.vitrine .etapes h4{font-size:14px}
.vitrine .etapes p,.vitrine .depart p{font-size:12.5px}

/* vidéos */
.vt-videos{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 12px;scrollbar-width:thin}
.vt-video{margin:0;flex-shrink:0;scroll-snap-align:start;border-radius:16px;overflow:hidden;background:var(--vt-gris);box-shadow:var(--vt-ombre-l);position:relative}
.vt-video.portrait{width:58%;max-width:250px}
.vt-video.paysage{width:86%;max-width:440px;align-self:center}
.vt-video video{display:block;width:100%;height:auto;background:#dfe7f1}
.vt-video.portrait video{aspect-ratio:9/16;object-fit:cover}
.vt-video.paysage video{aspect-ratio:16/9;object-fit:cover}
.vt-video figcaption{position:absolute;left:8px;top:8px;background:rgba(255,255,255,.9);color:var(--vt-nuit);font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;pointer-events:none}
.vt-mosaique{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:10px}
.vt-mosaique img{width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}
.vt-mosaique .m-large{grid-column:span 2;aspect-ratio:16/9}

/* réservation */
.vitrine .vt-resa{background:linear-gradient(180deg,#f2f8ff,#fff);margin-top:24px}
.vitrine .carte,.vitrine .recap{border:0;box-shadow:0 14px 40px -24px rgba(11,36,71,.5);border-radius:16px}
/* récapitulatif clair (pas de fond sombre) */
.vitrine .recap{background:#fff;color:var(--vt-nuit);top:130px;border:2px solid #e3eefb}
.vitrine .recap h3{color:var(--vt-nuit)}
.vitrine .recap li{color:var(--vt-texte)}
.vitrine .recap li.vide{color:var(--vt-doux)}
.vitrine .recap .total{border-top-color:#e3eefb}
.vitrine .recap .total b{font-weight:800;color:var(--vt-accent)}
.vitrine .recap .note{color:var(--vt-doux)}

/* étapes */
.vt-etapes{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.vt-etapes div{background:var(--vt-gris);border-radius:14px;padding:12px}
.vt-etapes span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(160deg,#29b6f6,#0174d0);color:#fff;font:800 12px/1 "Poppins",sans-serif;margin-bottom:6px}
.vt-etapes h4{margin:0 0 2px;font-size:13px}
.vt-etapes p{margin:0;font-size:11.5px;color:var(--vt-doux)}

/* partage */
.vt-partage{display:flex;gap:16px;align-items:center;flex-wrap:wrap;background:var(--vt-gris);border-radius:16px;padding:16px}
.vt-partage img{width:132px;height:132px;border-radius:12px;background:#fff;padding:6px;image-rendering:pixelated}
.vt-partage h3{font-size:15px;margin:4px 0}
.vt-partage p{font-size:12.5px;margin:0 0 10px}
.vt-partage>div{flex:1;min-width:220px}

/* pied */
.vt-pied{background:#f7f9fc;color:var(--vt-texte);padding:26px 0 96px;margin-top:30px;font-size:12.5px}
.vt-pied .wrap{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.vt-pied img{height:54px;width:auto}
.vt-pied b{color:var(--vt-nuit)}
.vt-pied a{color:var(--vt-accent);font-weight:600}

/* autocollant fixe + haut de page */
.vt-sticker{position:fixed;right:-6px;top:58%;z-index:45;display:flex;flex-direction:column;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff6b5e,#e5322d 65%);color:#fff;text-decoration:none;box-shadow:0 10px 20px -8px rgba(229,50,45,.8);animation:vt-oscille 3s ease-in-out infinite;transform-origin:100% 50%}
.vt-sticker small{font-size:8px;font-weight:800;letter-spacing:.5px}
.vt-sticker b{font:900 14px/1 "Poppins",sans-serif}
@keyframes vt-oscille{0%,100%{transform:rotate(-6deg) translateX(0)}50%{transform:rotate(6deg) translateX(-4px)}}
.vt-haut{position:fixed;right:14px;bottom:84px;z-index:46;width:42px;height:42px;border-radius:50%;border:0;background:#fff;color:var(--vt-nuit);box-shadow:var(--vt-ombre-l);display:grid;place-items:center;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .25s,transform .25s}
.vt-haut.on{opacity:1;pointer-events:auto;transform:none}
.vt-haut svg{width:20px;height:20px}

/* barre d'onglets mobile */
.vt-onglets{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(255,255,255,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 -6px 20px -14px rgba(11,36,71,.5);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
.vt-onglets a{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:var(--vt-doux);font-size:10.5px;font-weight:600}
.vt-onglets svg{width:22px;height:22px}
.vt-onglets .centre{color:var(--vt-accent)}
.vt-badge{position:absolute;top:-4px;right:calc(50% - 22px);min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--vt-rouge);color:#fff;font:800 10.5px/18px "DM Sans",sans-serif;text-align:center}
.vt-badge.saute{animation:vt-saute .45s ease}
@keyframes vt-saute{0%{transform:scale(1)}40%{transform:scale(1.45)}70%{transform:scale(.9)}100%{transform:scale(1)}}
.vitrine .barre-mobile{display:none!important}

/* ---------------- TABLETTE ---------------- */
@media (min-width:640px){
  .vt-grille{grid-template-columns:repeat(3,1fr)}
  .vt-tarifs{grid-template-columns:1fr 1fr}
  .vt-mosaique{grid-template-columns:repeat(4,1fr)}
  .vt-etapes{grid-template-columns:repeat(4,1fr)}
  .vt-video.portrait{width:220px}
}

/* ---------------- ORDINATEUR ---------------- */
@media (min-width:1024px){
  body.vitrine{font-size:15.5px}
  .vt-tete{background:rgba(255,255,255,.82);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);color:var(--vt-nuit);box-shadow:0 1px 0 rgba(11,36,71,.06)}
  .vt-tete .logo-clair{display:none}.vt-tete .logo-fonce{display:block}
  .vt-ligne{height:70px;gap:22px}
  .vt-logo img{height:50px}
  .vt-recherche{max-width:420px;height:42px;background:var(--vt-gris);color:var(--vt-texte);border-color:transparent;font-size:13.5px}
  .vt-liens{display:flex;gap:20px;font:600 14px/1 "Poppins",sans-serif}
  .vt-liens a{text-decoration:none;color:var(--vt-texte)}
  .vt-liens a:hover{color:var(--vt-accent)}
  .vt-panier{display:inline-flex;position:relative;align-items:center;gap:8px;height:42px;padding:0 18px;border-radius:999px;background:linear-gradient(160deg,#29b6f6,#0174d0);color:#fff;text-decoration:none;font:700 14px/1 "Poppins",sans-serif;box-shadow:var(--vt-ombre)}
  .vt-panier svg{width:18px;height:18px}
  .vt-panier .vt-badge{top:-6px;right:-6px}
  .vt-icones{display:none}
  .vt-univers{display:flex!important;gap:8px;padding:0 16px 10px;align-items:center}
  .vt-univers a{color:var(--vt-texte);background:var(--vt-gris);padding:8px 16px;border-radius:999px;font-size:13px}
  .vt-univers a.actif{font-size:13px;background:var(--vt-accent);color:#fff;text-shadow:none}
  .vt-univers a.actif::after{display:none}
  .vt-arguments{display:flex;gap:18px;margin-left:auto;font-size:12.5px;color:var(--vt-doux);position:absolute;right:max(16px,calc(50% - 604px));top:calc(70px + env(safe-area-inset-top))}
  .vt-arguments span{line-height:36px}
  .vt-tete.defile{background:rgba(255,255,255,.92)}
  .vt-tete.defile .vt-univers{display:flex!important}
  .vt-hero{height:430px;max-width:1208px;margin:128px auto 0;border-radius:24px}
  .sc-voile{display:none}
  .sc-texte{left:6%;top:auto;bottom:40%;width:40%}
  .sc-texte h2{font-size:40px;margin-bottom:18px}
  .sc-date{font-size:12px;background:var(--vt-accent)}
  .sc-cta{height:40px;padding:0 20px;font-size:14px}
  .sc-produits{width:52%;right:3%}
  .pr-g{width:50%;aspect-ratio:4/3.4;right:38%}
  .pr-d{width:36%;right:6%}
  .p-g{width:48%;right:39%}.p-d{width:38%;right:5%}
  .vt-fleche{display:block}
  .vt-pastilles{grid-template-columns:repeat(10,1fr);padding-top:26px}
  .pa{width:70px;height:70px}
  .pa-new,.pa-hot{width:62px;height:62px}
  .pa-new i{font-size:19px}.pa-hot i{font-size:16px}.pa-pct i{font-size:28px}
  .pa-emoji{font-size:36px}
  .pa-suivi svg,.pa-wa svg{width:32px;height:32px}
  .vt-pastilles small{font-size:12.5px;max-width:96px}
  .vt-coupons{padding:16px 20px;gap:18px}
  .cp b{font-size:20px}.cp span{font-size:13px}.cp small{font-size:11px}
  .cp-promo{width:150px}.cp-promo b{font-size:32px}.cp-promo a{font-size:13px;padding:8px 14px}
  .vt-titre h2{font-size:20px}
  .vt-intro{font-size:15px}
  .vt-grille{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:22px 16px}
  .vt-carte h3{font-size:14px}.vt-carte li{font-size:12.5px}.vt-carte .px b{font-size:16.5px}
  .vt-tarif .px b{font-size:24px}
  .vt-video.portrait{width:250px}.vt-video.paysage{width:440px}
  .vt-mosaique{grid-template-columns:repeat(4,1fr)}
  .vt-mosaique .m-large{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
  .vt-onglets{display:none}
  .vt-pied{padding-bottom:30px}
  .vt-haut{bottom:24px}
}

/* ---------------- ACCUEIL (vitrine sous l'en-tête du site) ---------------- */
.vt-accueil{padding:10px 0 4px}
.vt-accueil .vt-hero{height:340px;margin:0 16px;border-radius:20px}
.vt-accueil .sc-texte{top:34px}
.vt-accueil .sc-date{background:var(--vt-accent)}
.vt-accueil .vt-pastilles{grid-template-columns:repeat(5,1fr);padding:16px 0 4px}
@media (min-width:1024px){
  .vt-accueil .vt-hero{height:430px;max-width:1200px;margin:6px auto 0}
  .vt-accueil .vt-pastilles{grid-template-columns:repeat(5,1fr);max-width:760px}
}

/* ============================================================
   PLEINE LARGEUR, SANS VIDES (11/10/2026, soir — demande client)
   ============================================================ */
.vitrine .wrap{width:min(1440px,100% - 32px)}
/* scènes : sol réduit, photos plus grandes → plus de bande blanche sous les podiums */
.sc-sol{height:24%}
.pr-g{width:66%;bottom:19%}
.pr-d{width:50%;bottom:16%}
.podium{bottom:6%}
.p-g{width:64%}.p-d{width:52%;bottom:4%}
.vt-points{bottom:8px}
.vt-accueil .vt-hero{height:300px}
.vt-accueil .sc-texte{top:26px}
.vt-accueil .vt-pastilles{grid-template-columns:repeat(5,1fr)}
/* cartes du programme : 2 col. téléphone, 5 col. dès la tablette (10 cartes = rangées pleines) */
@media (min-width:768px){.vt-grille{grid-template-columns:repeat(5,1fr)}}
/* vidéos : même hauteur, toute la largeur (largeur proportionnelle au format) */
@media (min-width:768px){
  .vt-videos{display:flex;overflow:visible;gap:14px}
  .vt-video.portrait,.vt-video.paysage{width:auto;max-width:none;flex-basis:0;align-self:stretch}
  .vt-video.portrait{flex-grow:.5625}.vt-video.paysage{flex-grow:1.7778}
  .vt-video video{height:100%}
}
/* questions + suivi côte à côte sur ordinateur */
@media (min-width:1024px){
  #faq{display:grid;grid-template-columns:1.25fr 1fr;gap:10px 28px;align-items:start}
  #faq .vt-titre{grid-column:1/-1}
  #faq .faq{max-width:none}
  #faq>.carte{margin-top:0!important;max-width:none!important}
  /* bannières : toute la largeur utile */
  .vt-hero{max-width:none;width:calc(100% - 48px);margin:128px 24px 0;height:460px}
  .vt-accueil .vt-hero{width:min(1440px,100% - 40px);margin:6px auto 0;height:440px}
  .vt-accueil .vt-pastilles{grid-template-columns:repeat(10,1fr);max-width:none}
  .sc-produits{width:58%}
  .pr-g{width:48%;right:40%;bottom:18%}
  .pr-d{width:36%;right:5%;bottom:15%}
  .p-g{width:46%;right:41%}.p-d{width:38%;right:4%}
  .vitrine .resa{gap:24px}
}
@media (min-width:640px) and (max-width:1023px){.vt-accueil .vt-pastilles{grid-template-columns:repeat(10,1fr)}}
