/* SAMANA — habillage « Studio framboise » posé sur le socle EstheMed (site.css).
   Blanc majoritaire, rose tendre, fuchsia franc pour les actions, prune pour les textes. Aucune texture chrome. */
:root{--titre:#321827;--texte:#3d2733;--second:#66525D;--rose:#FCE7F0;--rose2:#F9D8E7;--f:#C60063;--f-fonce:#9E004F;--f-vif:#E00078;--chrome:#F3D3E1;--trait:#F3D3E1;
 --serif:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;--sans:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;--r:20px;--ombre:0 12px 32px -18px rgba(50,24,39,.35)}
body{font-size:17.5px;line-height:1.6}
h1,h2,h3,h4{font-weight:800;letter-spacing:-.02em;line-height:1.1}
h1{font-size:clamp(32px,4.4vw,54px)}
.surtitre{letter-spacing:.01em}
.btn{font-weight:700}
.bandeau-test{background:#321827}
.logo img{width:200px}
.nav-bouton{display:inline-flex;align-items:center;gap:.35em;padding:12px 10px;background:none;border:0;font:500 16px var(--sans);color:var(--titre);cursor:pointer;white-space:nowrap}
.nav-bouton:hover{color:var(--f)}
.nav-bouton .ico{width:.9em;height:.9em}
/* cadres des images à générer (version de test seulement) */
.emplacement-image{display:flex;align-items:flex-end;justify-content:flex-start;width:100%;height:100%;min-height:120px;background:linear-gradient(135deg,#FDE4EF,#F9C6DC 55%,#F4A3C6);border-radius:inherit}
.emplacement-image>span{font:600 11px/1.3 ui-monospace,Menlo,monospace;color:var(--f-fonce);background:rgba(255,255,255,.85);padding:3px 7px;border-radius:6px;margin:10px}
figure.emplacement-image{margin:0}
.carte-article .emplacement-image,.carte-hub .emplacement-image{aspect-ratio:4/3;height:auto}

/* ---------- Accueil ---------- */
.sa-hero{background:linear-gradient(180deg,#FFF6FA,#fff 72%);padding:20px 0 8px}
.sa-hero-grille{display:grid;grid-template-columns:1.3fr 1fr .82fr;gap:18px;align-items:stretch}
.sa-hero-texte{background:var(--rose);border-radius:24px;padding:clamp(22px,2.8vw,40px);display:flex;flex-direction:column;justify-content:center}
.sa-hero-titre{font-size:clamp(30px,3.2vw,46px);margin:0 0 .35em;line-height:1.06;letter-spacing:-.03em;text-wrap:balance}
.sa-hero-chapo{color:var(--second);font-size:18px;max-width:44ch;margin:0}
.sa-hero-media{position:relative;border-radius:24px;overflow:hidden;min-height:clamp(300px,29vw,400px);background:var(--rose)}
.sa-diapo{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease}
.sa-diapo.active{opacity:1}
.sa-diapo-img,.sa-diapo .emplacement-image{width:100%;height:100%;object-fit:cover;border-radius:0}
.sa-diapo.active img{animation:sa-kb 9s ease-out both}
@keyframes sa-kb{from{transform:scale(1.02)}to{transform:scale(1.12) translate(-2%,-1.5%)}}
.sa-video{position:absolute;inset:0}.sa-video video{width:100%;height:100%;object-fit:cover}
.sa-points{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:6px}
.sa-points span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.65);transition:width .3s}
.sa-points span.on{width:22px;border-radius:5px;background:#fff}
.sa-carte-rdv{background:var(--f);color:#fff;border-radius:24px;padding:clamp(22px,2.4vw,34px);display:flex;flex-direction:column;justify-content:center;gap:.5rem;position:relative;overflow:hidden}
.sa-carte-rdv::after{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:var(--f-vif);opacity:.55}
.sa-carte-rdv>*{position:relative;z-index:1}
.sa-carte-rdv h2{color:#fff;font-size:clamp(24px,2.1vw,30px);margin:0}
.sa-carte-rdv p{margin:0 0 .4em;color:#ffe9f3}
.sa-carte-rdv .btn{align-self:flex-start}
.sa-tel{color:#fff;font-weight:600}
@media (max-width:980px){.sa-hero-grille{grid-template-columns:1fr 1fr}.sa-hero-texte{grid-column:1/-1}}
@media (max-width:640px){.sa-hero-grille{grid-template-columns:1fr}.sa-hero-media{order:3;min-height:230px}}
.sa-carrousel{background:linear-gradient(180deg,#fff,#FFF6FA)}
.sa-sous{color:var(--second);margin:.2em 0 0}
.sa-mention{color:var(--second);font-size:15px}
.sa-portes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-block:clamp(28px,4vw,56px)}
.sa-porte{position:relative;border-radius:24px;overflow:hidden;min-height:370px;display:flex;flex-direction:column;justify-content:flex-end;text-decoration:none;color:var(--titre);background:var(--rose)}
.sa-porte-img,.sa-porte>.emplacement-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .22s}
.sa-porte:hover .sa-porte-img{transform:scale(1.03)}
.sa-porte-corps{position:relative;z-index:1;margin:14px;background:rgba(255,255,255,.95);border-radius:16px;padding:18px 20px;display:flex;flex-direction:column;gap:.35rem;align-items:flex-start}
.sa-porte-t{font-size:24px;font-weight:800;margin:0;color:inherit}
.sa-porte-x{margin:0 0 .4rem;font-size:16px;color:var(--second)}
.sa-porte-cadeau .sa-porte-corps{background:var(--f);color:#fff}.sa-porte-cadeau .sa-porte-x{color:#ffe3f0}
.sa-porte-jeux .sa-porte-corps{background:#321827;color:#fff}.sa-porte-jeux .sa-porte-x{color:#f3dbe7}
@media (max-width:900px){.sa-portes{grid-template-columns:1fr}.sa-porte{min-height:290px}}
.sa-ruban{background:var(--f);color:#fff;overflow:hidden;padding:15px 0}
.sa-ruban-piste{display:flex;width:max-content;animation:sa-defile 60s linear infinite}
.sa-ruban:hover .sa-ruban-piste,.sa-ruban:focus-within .sa-ruban-piste{animation-play-state:paused}
.sa-ruban-liste{list-style:none;display:flex;margin:0;padding:0}
.sa-ruban-liste li{font-weight:800;font-size:clamp(16px,1.5vw,20px);white-space:nowrap;padding-inline:1.1rem;display:flex;align-items:center}
.sa-ruban-liste li::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff;opacity:.5;margin-left:2.2rem}
.sa-ruban a{color:#fff;text-decoration:none}.sa-ruban a:hover{text-decoration:underline;color:#fff}
@keyframes sa-defile{to{transform:translateX(-50%)}}
.sa-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:start;margin-block:clamp(40px,6vw,80px)}
.sa-intro p{max-width:62ch}
.sa-citation{margin:1.4rem 0 0;padding:1.1rem 1.3rem;border-left:5px solid var(--f);background:#FFF6FA;border-radius:0 16px 16px 0;font-weight:600}
.sa-mosaique{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sa-mos{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3.4;display:block;text-decoration:none;background:var(--rose)}
.sa-mos-img,.sa-mos>.emplacement-image{width:100%;height:100%;object-fit:cover;transition:transform .22s}
.sa-mos:hover .sa-mos-img{transform:scale(1.04)}
.sa-mos>span:last-child{position:absolute;left:10px;bottom:10px;background:#fff;color:var(--titre);font-weight:800;padding:.4em .9em;border-radius:999px}
@media (max-width:900px){.sa-intro{grid-template-columns:1fr}}
.sa-jeux{background:radial-gradient(circle at 12% 20%,rgba(224,0,120,.45),transparent 42%),radial-gradient(circle at 88% 85%,rgba(198,0,99,.5),transparent 45%),#321827;color:#fff;padding:clamp(44px,6vw,84px) 0}
.sa-jeux-grille{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:center}
.sa-jeux-titre{font-size:clamp(34px,4.4vw,56px);color:#fff;margin:0 0 .3em}
.sa-jeux-chapo{font-size:18px;color:#f6dbe8;max-width:46ch}
.sa-jeux-regles{list-style:none;padding:0;margin:1.2rem 0 1.4rem;display:grid;gap:.6rem}
.sa-jeux-regles li{display:flex;align-items:center;gap:.7rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:.7em 1em}
.sa-jeux-regles li::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--f-vif);box-shadow:0 0 0 4px rgba(224,0,120,.3)}
.sa-jeux-liste{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:clamp(20px,3vw,32px)}
.sa-jeux-liste-t{font-weight:800;margin:0 0 .6rem;color:#fff}
.sa-jeux-liste ul{list-style:none;padding:0;margin:0 0 1.2rem;display:flex;flex-wrap:wrap;gap:.5rem}
.sa-jeux-liste li a{display:inline-block;padding:.5em 1.1em;border-radius:999px;background:#fff;color:var(--f);font-weight:700;text-decoration:none}
.sa-jeux-liste li.vedette a{background:var(--f-vif);color:#fff}
.sa-bientot li{padding:.4em 1em;border-radius:999px;border:1.5px dashed rgba(255,255,255,.4);font-weight:600;font-size:14px;color:#f6dbe8}
.sa-note-claire{font-size:14px;color:#f6dbe8;background:rgba(255,255,255,.1);border:1px dashed rgba(255,255,255,.35);border-radius:12px;padding:.6em .9em;margin-top:1rem}
@media (max-width:900px){.sa-jeux-grille{grid-template-columns:1fr}}
.sa-offerts{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-block:clamp(40px,6vw,80px)}
.sa-nl{background:#321827;color:#fff;border-radius:24px;padding:clamp(26px,3.5vw,46px)}
.sa-nl h2{color:#fff}
.sa-nl-sous{color:#ff9fcb;font-weight:800}
.sa-nl-img,.sa-offerts>.emplacement-image{border-radius:24px;width:100%;height:100%;min-height:260px;object-fit:cover}
@media (max-width:900px){.sa-offerts{grid-template-columns:1fr}}
.acces{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px);align-items:center}
.sa-acces-img,.acces>.emplacement-image{border-radius:24px;width:100%;aspect-ratio:16/10;object-fit:cover;height:auto}
@media (max-width:900px){.acces{grid-template-columns:1fr}}
.cats-blog{margin-bottom:1.4rem}
.cats-blog a[aria-current]{background:var(--f);color:#fff}
@media (prefers-reduced-motion:reduce){.sa-ruban-piste{animation:none;width:auto;flex-wrap:wrap}.sa-ruban-liste[aria-hidden]{display:none}.sa-ruban-liste{flex-wrap:wrap;justify-content:center}.sa-diapo.active img{animation:none}}
/* ---------- Pages internes ---------- */
.tete-page.avec-image{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.tete-page h1.h1-long{font-size:clamp(28px,2.9vw,40px);line-height:1.12}
.tete-page h1.h1-tres-long{font-size:clamp(24px,2.3vw,32px);line-height:1.18}
.tete-image.emplacement-image{aspect-ratio:1/1;height:auto;min-height:0}
@media (max-width:760px){.tete-page.avec-image{grid-template-columns:1fr}}
/* ---------- Accueil v2 : diaporama plein cadre, texte humain ---------- */
.sa-hero{padding:0;background:none}
.sa-hero .sa-hero-media{position:relative;min-height:clamp(460px,72vh,680px);border-radius:0;display:flex;align-items:flex-end}
.sa-hero-voile{position:absolute;inset:0;background:linear-gradient(90deg,rgba(50,24,39,.72) 0%,rgba(50,24,39,.35) 45%,rgba(50,24,39,0) 75%),linear-gradient(0deg,rgba(50,24,39,.45),transparent 40%);pointer-events:none}
.sa-hero .sa-hero-texte{position:relative;z-index:2;background:none;border-radius:0;padding:0 0 clamp(40px,7vh,80px);display:block}
.sa-hero .sa-hero-titre{color:#fff;font-size:clamp(34px,4.6vw,62px);max-width:14ch}
.sa-hero .sa-hero-chapo{color:#ffe9f3;font-size:clamp(17px,1.5vw,20px);max-width:42ch}
.sa-hero .sa-points{bottom:18px;right:24px;left:auto;transform:none;z-index:3}
.sa-hero .emplacement-image{position:absolute;inset:0}
.sa-humain{padding:clamp(48px,7vw,96px) 0;background:#fff}
.sa-humain-grille{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,5vw,72px);align-items:start}
.sa-humain-texte p{font-size:18px;max-width:62ch}
.sa-humain h2{max-width:22ch}
.sa-engagements{list-style:none;margin:0;padding:0;display:grid;gap:12px;position:sticky;top:120px}
.sa-engagements li{background:var(--rose);border-radius:18px;padding:18px 20px;border-left:6px solid var(--f)}
.sa-engagements strong{display:block;font-size:18px;color:var(--titre)}
.sa-engagements span{color:var(--second);font-size:15.5px}
.sa-note{font-size:14px;color:var(--second);background:#FFF6FA;border:1px dashed var(--trait);border-radius:12px;padding:.6em .9em}
@media (max-width:900px){.sa-humain-grille{grid-template-columns:1fr}.sa-engagements{position:static}.sa-hero-voile{background:linear-gradient(0deg,rgba(50,24,39,.8) 10%,rgba(50,24,39,.2) 70%)}}
.sa-humain .titre-section,.sa-carrousel .titre-section,.sa-intro .titre-section{text-align:left}
.sa-humain .titre-section::after,.sa-carrousel .titre-section::after{margin-left:0}

/* =====================================================================
   SAMANA-07 — identité propre des pages intérieures (rien de commun avec l'allure d'EstheMed)
   Aplats fuchsia, images en arche, cartes de couleur, étiquettes de prix.
   ===================================================================== */
/* En-tête : bandeau prune, navigation en pastilles */
.barre-haut{background:#321827;color:#f6dbe8}
.barre-haut .bh-tel{color:#fff}
.barre-haut .ico{color:#ff9fcb}
.entete{border-bottom:0;box-shadow:0 6px 24px -18px rgba(50,24,39,.5)}
.nav-el>a,.nav-bouton{border-radius:999px;padding:8px 13px;font-weight:600}
.nav-el>a:hover,.nav-bouton:hover{background:var(--rose);color:var(--f)}
.nav-el.actif>a,.nav-el>a[aria-current]{background:var(--f);color:#fff}
.nav-liste{padding-bottom:10px}
.sous-menu{border-radius:22px;border:0;box-shadow:0 24px 48px -24px rgba(50,24,39,.45);border-top:5px solid var(--f)}
.sous-menu a{border-radius:10px}
.sous-menu a:hover{background:var(--rose)}

/* Tête de page : aplat fuchsia + image en arche qui déborde */
.sa-bandeau{background:radial-gradient(circle at 85% 20%,rgba(255,159,203,.35),transparent 40%),linear-gradient(120deg,#C60063 0%,#A8005A 55%,#7E0046 100%);color:#fff;position:relative;overflow:hidden}
.sa-bandeau::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.07);left:-140px;bottom:-220px}
.sa-bandeau .fil ol{color:#ffd3e6}.sa-bandeau .fil a{color:#ffd3e6}.sa-bandeau .fil a:hover{color:#fff}
.sa-bandeau .fil li:not(:last-child)::after{color:#ff9fcb}
.sa-bandeau .tete-page{padding:26px 0 56px;position:relative;z-index:1}
.sa-bandeau h1{color:#fff}
.sa-bandeau .surtitre{color:#ffd3e6}
.sa-bandeau .btn-plein{background:#fff;color:var(--f)}.sa-bandeau .btn-plein:hover{background:var(--rose);color:var(--f-fonce)}
.sa-bandeau .btn-ligne{background:transparent;border-color:rgba(255,255,255,.8);color:#fff}.sa-bandeau .btn-ligne:hover{background:rgba(255,255,255,.14);color:#fff}
.sa-bandeau .lien-tarifs,.sa-bandeau .lien-tarifs a{color:#ffe3f0}
.sa-bandeau .tete-image{border-radius:999px 999px 28px 28px;border:8px solid #fff;box-shadow:0 30px 60px -30px rgba(0,0,0,.55);aspect-ratio:4/4.6;max-width:460px;justify-self:end;width:100%;background-color:var(--rose)}
.sa-bandeau .tete-image img{border-radius:inherit}
.sa-bandeau .emplacement-image{border-radius:999px 999px 28px 28px}
@media (max-width:760px){.sa-bandeau .tete-image{justify-self:center;max-width:320px;aspect-ratio:4/4.4}.sa-bandeau .tete-page{padding-bottom:36px}}
.p-contenu .mise-contenu{padding-top:48px}

/* Texte : titres soulignés d'un trait framboise */
.texte h2{position:relative;padding-top:18px}
.texte h2::before{content:"";position:absolute;top:0;left:0;width:56px;height:6px;border-radius:6px;background:var(--f)}
.texte h3{color:var(--f)}
.texte a{font-weight:600;text-decoration-thickness:2px;text-underline-offset:3px}

/* En bref : cartes de couleur */
.en-bref{background:none;padding:0}
.en-bref-titre{font-weight:800;font-size:20px}
.en-bref dl{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.en-bref dl>div{background:var(--rose);border-radius:16px;padding:14px 16px}
.en-bref dl>div:nth-child(3n+2){background:#FFE0EE}
.en-bref dl>div:last-child{background:var(--f)}.en-bref dl>div:last-child dt,.en-bref dl>div:last-child dd{color:#fff}
.en-bref dt{text-transform:none;letter-spacing:0;font-weight:700}

/* « Est-ce le bon soin ? » : carte prune */
.adapte{background:#321827;color:#f6dbe8;border-left:0;border-radius:22px;box-shadow:none;padding:24px 26px}
.adapte-titre{color:#fff;font-weight:800}
.adapte .lien-fort{color:#ff9fcb}

/* Tarifs : étiquettes */
.bloc-tarifs{background:#FFF6FA;border:2px solid var(--rose);border-radius:24px;padding:26px}
.liste-tarifs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.tarif{grid-template-columns:1fr;gap:6px;background:#fff;border:0;border-radius:18px;padding:16px 18px;box-shadow:0 10px 24px -18px rgba(50,24,39,.45);position:relative}
.tarif:last-child{border:0}
.tarif-nom{font-weight:600;font-size:15.5px;line-height:1.35}
.tarif-prix{text-align:left}.tarif-prix strong{font-size:26px;font-weight:800;color:var(--f)}
.tarif-resa{justify-self:start;background:var(--f);color:#fff;border-color:var(--f)}.tarif-resa:hover{background:var(--f-fonce)}
.tarifs-note{font-size:15px;background:#fff;border-radius:14px;padding:12px 14px;margin-top:16px;border-left:5px solid var(--f)}

/* Colonne de réservation */
.carte-rdv{background:#fff;box-shadow:0 24px 50px -30px rgba(50,24,39,.55);border-radius:26px;overflow:hidden;padding:0 22px 22px;top:150px}
.carte-rdv-titre{margin:0 -22px 6px;padding:18px 22px;background:var(--f);color:#fff;font-weight:800;font-size:21px}
.carte-rdv-soin{margin:6px 0 0}
.carte-rdv .horaires{font-size:14px}
.voisins{border:0;background:var(--rose);border-radius:22px}
.voisins-titre{font-weight:800}
.voisins ul{display:flex;flex-wrap:wrap;gap:6px}
.voisins a{display:inline-block;padding:6px 12px;border-radius:999px;background:#fff;font-size:14.5px;font-weight:600}
.voisins a:hover{background:var(--f);color:#fff}

/* Cartes des rubriques et articles : images en arche */
.hub-soins .titre-section,.articles-lies .titre-section{text-align:left}
.carte-hub{border:0;background:none;border-radius:0;overflow:visible}
.carte-hub:hover{transform:none;box-shadow:none}
.carte-hub img,.carte-hub .emplacement-image{border-radius:999px 999px 18px 18px;aspect-ratio:3/3.6;transition:transform .25s}
.carte-hub:hover img{transform:translateY(-4px)}
.carte-hub span{padding:10px 4px 0;font-weight:700}
.carte-hub:hover span{color:var(--f)}
.carte-article{border:0;background:#FFF6FA;border-radius:26px}
.carte-article img,.carte-article .emplacement-image{border-radius:26px 26px 0 0;aspect-ratio:4/3}
.carte-article-titre{font-weight:700;font-size:18px}

/* Bande de rendez-vous : prune, bulles framboise */
.bande-rdv{background:radial-gradient(circle at 90% 10%,rgba(224,0,120,.55),transparent 35%),radial-gradient(circle at 5% 100%,rgba(198,0,99,.5),transparent 40%),#321827}
.bande-rdv .btn-blanc{color:var(--f)}

/* Pied de page : grand mot SAMANA en filigrane */
.pied{background:linear-gradient(160deg,#4a1c35 0%,#321827 60%);position:relative;overflow:hidden}
.pied::before{content:"SAMANA";position:absolute;right:-20px;bottom:40px;font-weight:800;font-size:clamp(90px,16vw,220px);letter-spacing:.08em;color:rgba(255,255,255,.04);pointer-events:none;line-height:1}
.pied-titre{font-weight:800}
.pied-grille,.pied-bas{position:relative}

/* Barre d'actions mobile */
@media (max-width:760px){.barre-mobile{border-top:0;box-shadow:0 -10px 30px -20px rgba(50,24,39,.5);border-radius:22px 22px 0 0}.barre-mobile-rdv{border-radius:16px}}

/* Blog et boutique */
.p-blog .titre-liste,.p-boutique h1{font-weight:800}
.cats-blog a{background:#fff;border:1.5px solid var(--f);border-radius:999px}
.produit{border-radius:22px!important}
.nav-el>a,.nav-bouton{padding:7px 9px;font-size:15px}
@media (min-width:1101px){.nav-liste{flex-wrap:nowrap}}
.texte h1{font-size:clamp(26px,2.6vw,34px);line-height:1.15;margin:1.4em 0 .5em}
@media (max-width:760px){.sa-bandeau .tete-image{order:2;max-width:230px;margin-top:6px}}

/* Pages spéciales (jeux, tarifs, blog, boutique, carte cadeau, réservation, légales) */
.hero-rubrique{background:linear-gradient(120deg,#C60063 0%,#A8005A 55%,#7E0046 100%);min-height:0}
.hero-rubrique::after{display:none}
.hero-rubrique .hero-in{padding:56px 0}
.hero-rubrique h1,.hero-rubrique .chapo{color:#fff}.hero-rubrique .surtitre{color:#ffd3e6}
.p-blog main,.p-boutique main,.p-carte main,.p-resa main,.p-produit main,.p-legal main,.p-avenir main,.p-panier main,.p-commande main,.p-confirmee main{background:linear-gradient(180deg,#FFF6FA 0,#fff 420px)}
.titre-liste,.p-boutique h1,.p-carte h1,.p-resa h1,.p-produit h1,.p-legal h1,.p-avenir h1,.p-panier h1{position:relative;padding-top:22px}
.titre-liste::before,.p-boutique h1::before,.p-carte h1::before,.p-resa h1::before,.p-produit h1::before,.p-legal h1::before,.p-avenir h1::before,.p-panier h1::before{content:"";position:absolute;top:0;left:0;width:64px;height:7px;border-radius:7px;background:var(--f)}
.p-legal h2{position:relative;padding-top:14px}
/* Orienteur */
.orienteur{background:#321827;color:#fff;border-radius:26px}
.orienteur-titre{color:#fff;font-weight:800}
.or-choix{border-radius:999px!important}
.or-resultat a{color:#ff9fcb}
.or-retour{color:#f6dbe8}
/* Motifs graphiques en attendant les photos (même famille que les images : arches, cercles, aplats) */
.sa-motif{background-color:#FCE7F0;background-repeat:no-repeat;position:relative;overflow:hidden}
.sa-motif-0{background-image:radial-gradient(circle at 78% 24%,#C60063 0 13%,transparent 13.5%),radial-gradient(ellipse 46% 62% at 38% 100%,#F7B6D2 0 99%,transparent 100%),linear-gradient(180deg,#FCE7F0,#FCE7F0)}
.sa-motif-1{background-image:radial-gradient(ellipse 34% 48% at 50% 100%,#321827 0 99%,transparent 100%),radial-gradient(ellipse 52% 72% at 50% 100%,#C60063 0 99%,transparent 100%),linear-gradient(180deg,#FFE0EE,#FFE0EE)}
.sa-motif-2{background-image:radial-gradient(circle at 26% 30%,#fff 0 9%,transparent 9.5%),linear-gradient(125deg,#C60063 0 42%,#F7B6D2 42% 70%,#FCE7F0 70%)}
.sa-motif-3{background-image:radial-gradient(circle at 70% 70%,#E00078 0 16%,transparent 16.5%),radial-gradient(circle at 70% 70%,#F7B6D2 0 30%,transparent 30.5%),radial-gradient(circle at 70% 70%,#FFE0EE 0 46%,transparent 46.5%),linear-gradient(180deg,#FFF6FA,#FFF6FA)}
.sa-motif::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 82%,rgba(255,255,255,.35) 0 6%,transparent 6.5%)}
.sa-motif>span{position:relative;z-index:1}
.sa-bandeau .tete-image.sa-motif-0{background-image:radial-gradient(circle at 74% 26%,#C60063 0 13%,transparent 13.5%),radial-gradient(ellipse 46% 62% at 38% 100%,#F7B6D2 0 99%,transparent 100%)}
.sa-bandeau .tete-image.sa-motif-1{background-image:radial-gradient(ellipse 34% 48% at 50% 100%,#321827 0 99%,transparent 100%),radial-gradient(ellipse 52% 72% at 50% 100%,#C60063 0 99%,transparent 100%)}
.sa-bandeau .tete-image.sa-motif-2{background-image:radial-gradient(circle at 26% 30%,#fff 0 9%,transparent 9.5%),linear-gradient(125deg,#C60063 0 42%,#F7B6D2 42% 70%,#FCE7F0 70%)}
.sa-bandeau .tete-image.sa-motif-3{background-image:radial-gradient(circle at 70% 70%,#E00078 0 16%,transparent 16.5%),radial-gradient(circle at 70% 70%,#F7B6D2 0 30%,transparent 30.5%),radial-gradient(circle at 70% 70%,#FFE0EE 0 46%,transparent 46.5%)}
/* ---------- Accueil v3 : texte sur aplat fuchsia, vidéo dans une grande arche ---------- */
.sa-hero2{background:radial-gradient(circle at 12% 85%,rgba(255,255,255,.08) 0 18%,transparent 18.5%),linear-gradient(120deg,#C60063 0%,#A8005A 55%,#7E0046 100%);color:#fff;overflow:hidden}
.sa-hero2-grille{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,5vw,72px);align-items:end;padding-top:clamp(28px,4vw,56px)}
.sa-hero2-texte{padding-bottom:clamp(36px,6vw,80px);align-self:center}
.sa-hero2 .sa-hero-titre{color:#fff;font-size:clamp(34px,4.4vw,60px);max-width:14ch;margin:0 0 .35em}
.sa-hero2 .sa-hero-chapo{color:#ffe3f0;font-size:clamp(17px,1.4vw,20px);max-width:42ch}
.sa-hero2 .boutons{margin-top:1.4rem}
.sa-hero2 .btn-plein{background:#fff;color:var(--f)}.sa-hero2 .btn-plein:hover{background:var(--rose)}
.sa-hero2 .btn-ligne{border-color:rgba(255,255,255,.85);color:#fff;background:transparent}.sa-hero2 .btn-ligne:hover{background:rgba(255,255,255,.14);color:#fff}
.sa-hero2-arche{position:relative;aspect-ratio:3/4;max-height:640px;width:100%;max-width:480px;justify-self:end;border-radius:999px 999px 0 0;overflow:hidden;border:8px solid #fff;border-bottom:0;background:var(--rose);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.sa-hero2-arche .sa-video,.sa-hero2-arche .sa-diapo{position:absolute;inset:0}
.sa-hero2-arche video,.sa-hero2-arche img,.sa-hero2-arche .emplacement-image{width:100%;height:100%;object-fit:cover}
.sa-hero2-arche .sa-points{bottom:16px;left:50%;right:auto;transform:translateX(-50%)}
@media (max-width:820px){.sa-hero2-grille{grid-template-columns:1fr}.sa-hero2-texte{padding-bottom:8px}.sa-hero2-arche{justify-self:center;max-width:340px}}
.sa-arche-video{background:var(--rose)}
.sa-arche-video .sa-video{position:absolute;inset:0}.sa-arche-video{position:relative}
.sa-arche-video video{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.cc-visuel .sa-video video{width:100%;border-radius:22px;display:block}
.sa-mos .emplacement-image>span,.carte-hub .emplacement-image>span{position:absolute;top:0;left:0}
/* ---------- Appli Samana ---------- */
.sa-appli .sa-nl h2{margin:.1em 0 .4em}
.sa-appli-liste{list-style:none;padding:0;margin:1rem 0 1.4rem;display:grid;gap:.6rem}
.sa-appli-liste li{padding-left:28px;position:relative;color:#f6dbe8}
.sa-appli-liste li::before{content:"";position:absolute;left:0;top:.45em;width:14px;height:14px;border-radius:50%;background:var(--f-vif);box-shadow:0 0 0 4px rgba(224,0,120,.3)}
.sa-appli-liste strong{color:#fff}
.sa-appli .boutons{display:flex;flex-wrap:wrap;gap:.6rem}
.sa-ios-nl{font-size:15px;color:#f6dbe8;margin-top:1rem}
.sa-appli-visuel{display:block;border-radius:24px;overflow:hidden}
.sa-appli-visuel img{transition:transform .3s}.sa-appli-visuel:hover img{transform:scale(1.02)}
.bh-compte{font-weight:700;color:#fff;text-decoration:none;background:rgba(255,255,255,.12);padding:4px 12px;border-radius:999px}
.bh-compte:hover{background:var(--f);color:#fff}
.sa-compte-tete{padding:30px 0 40px;position:relative;z-index:1}
.sa-compte-tete h1{color:#fff;margin:.1em 0 .3em}
.sa-compte-chapo{color:#ffe3f0;max-width:56ch;font-size:18px}
.sa-installer,.sa-ios{margin-top:1rem;color:#fff}
.sa-compte{padding-block:36px 60px}
.sa-compte-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.sa-carte-c{background:#fff;border-radius:24px;padding:24px;box-shadow:0 18px 40px -26px rgba(50,24,39,.5);border-top:6px solid var(--f)}
.sa-carte-c h2{font-size:24px;margin:0 0 .7em}
.sa-carte-c form{display:grid;gap:12px}
.sa-carte-c label{display:grid;gap:4px;font-weight:600;font-size:15px}
.sa-carte-c input:not([type=checkbox]),.sa-carte-c select{padding:12px 14px;border:1.5px solid var(--trait);border-radius:12px;font:inherit;background:#FFF6FA}
.sa-carte-c .deux{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sa-carte-c .btn{justify-self:start}
.sa-case{display:flex!important;align-items:center;gap:10px;font-weight:500!important}
.sa-case input{width:20px;height:20px;accent-color:var(--f)}
.sa-petit{font-size:14px;color:var(--second)}
.sa-oubli{margin-top:14px}.sa-oubli summary{cursor:pointer;color:var(--f);font-weight:600}
.sa-oubli form{margin-top:10px}
.sa-msg{border-radius:14px;padding:12px 16px;margin:0 0 18px;font-weight:600}
.sa-msg.ok{background:#E9F7EE;color:#1d6b3a}.sa-msg.erreur{background:#FDE8EC;color:#9E004F}
.sa-raccourcis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}
.sa-raccourci{display:flex;align-items:center;justify-content:center;gap:8px;min-height:64px;border-radius:18px;background:var(--rose);color:var(--f);font-weight:800;text-decoration:none;text-align:center;padding:10px}
.sa-raccourci:first-child{background:var(--f);color:#fff}
.sa-raccourci:hover{filter:brightness(.97)}
.sa-rdv{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:8px}
.sa-rdv li{display:grid;background:#FFF6FA;border-radius:12px;padding:10px 14px}.sa-rdv span{font-size:14px;color:var(--second)}
.piege{position:absolute!important;left:-9999px}
@media (max-width:560px){.sa-carte-c .deux{grid-template-columns:1fr}}
html.appli-installee .barre-test{display:none}
.sa-carte-c label,.sa-carte-c .deux>*{min-width:0}
.sa-carte-c input:not([type=checkbox]){width:100%;box-sizing:border-box}
/* ---------- Arches de tête : plus larges, vidéo bien rognée dans l'arche ---------- */
.sa-bandeau .tete-page.avec-image{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center}
.sa-bandeau .tete-image,.sa-tete2 .tete-image{max-width:640px;width:100%;aspect-ratio:4/4.3;justify-self:end;overflow:hidden;isolation:isolate;-webkit-mask-image:-webkit-radial-gradient(white,black);position:relative}
.sa-arche-video .sa-video,.sa-arche-video>.emplacement-image,.sa-arche-video>img{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;overflow:hidden}
.sa-arche-video video,.sa-arche-video img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.sa-tete2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(24px,4vw,56px);align-items:center;padding:34px 0 56px;position:relative;z-index:1}
.sa-tete2 h1{color:#fff;margin:.15em 0 .35em}
.sa-tete2 .surtitre{color:#ffd3e6}
.sa-tete2-chapo{color:#ffe3f0;font-size:18px;max-width:46ch}
.sa-tete2 .tete-image{border-radius:999px 999px 28px 28px;border:8px solid #fff;box-shadow:0 30px 60px -30px rgba(0,0,0,.55);background-color:var(--rose);margin:0}
.p-blog .sa-tete2 .titre-liste::before,.p-boutique .sa-tete2 h1::before,.p-resa .sa-tete2 h1::before{display:none}
.p-blog .sa-tete2 .titre-liste,.p-boutique .sa-tete2 h1,.p-resa .sa-tete2 h1{padding-top:0}
@media (max-width:860px){.sa-tete2,.sa-bandeau .tete-page.avec-image{grid-template-columns:1fr}.sa-bandeau .tete-image,.sa-tete2 .tete-image{justify-self:center;max-width:360px}}
.sa-bandeau .tete-image,.sa-tete2 .tete-image{max-height:68vh}
/* Photos glissées dans les longs textes */
.sa-photo{margin:28px 0 30px;border-radius:999px 999px 24px 24px;overflow:hidden;max-width:520px;box-shadow:0 20px 44px -28px rgba(50,24,39,.55);background:var(--rose)}
.sa-photo-d{margin-left:auto}
.sa-photo-img,.sa-photo .emplacement-image{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.sa-photo figcaption{padding:12px 18px 14px;font-size:15px;font-weight:600;color:var(--f-fonce);background:#FFF6FA}
/* Tarifs en volets */
.tarifs-volet{background:#fff;border-radius:18px;margin:0 0 12px;box-shadow:0 10px 24px -20px rgba(50,24,39,.45);overflow:hidden}
.tarifs-volet summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;cursor:pointer;font-weight:800;font-size:18px;list-style:none}
.tarifs-volet summary::-webkit-details-marker{display:none}
.tarifs-volet summary::after{content:"+";font-size:26px;color:var(--f);line-height:1}
.tarifs-volet[open] summary::after{content:"–"}
.tv-info{margin-left:auto;font-size:14px;font-weight:600;color:var(--f)}
.tarifs-volet .liste-tarifs{padding:0 16px 16px}
.tarifs-volet .liste-tarifs{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
.tarifs-volet .tarif{padding:12px 14px}
.tarifs-volet .tarif-prix strong{font-size:22px}
/* Zones d'épilation en photos + parcours */
.sa-zones{margin:8px 0 34px}
.sa-zones h2,.sa-parcours h2{margin-top:0}
.sa-zones-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.sa-zone{position:relative;display:block;border-radius:999px 999px 18px 18px;overflow:hidden;aspect-ratio:3/4;text-decoration:none;background:var(--rose);box-shadow:0 12px 26px -20px rgba(50,24,39,.6)}
.sa-zone-img,.sa-zone>.emplacement-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .25s}
.sa-zone:hover .sa-zone-img{transform:scale(1.05)}
.sa-zone-t{position:absolute;left:8px;right:8px;bottom:8px;background:rgba(255,255,255,.95);border-radius:12px;padding:8px 10px;font-weight:800;color:var(--titre);font-size:15px;line-height:1.2}
.sa-zone-t small{display:block;font-weight:600;color:var(--f);font-size:13px;margin-top:2px}
.sa-parcours{background:#321827;color:#f6dbe8;border-radius:24px;padding:26px 28px;margin:0 0 34px}
.sa-parcours h2{color:#fff}
.sa-parcours ol{list-style:none;counter-reset:etape;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.sa-parcours li{counter-increment:etape;background:rgba(255,255,255,.07);border-radius:18px;padding:16px 16px 18px;position:relative}
.sa-parcours li::before{content:counter(etape);display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--f);color:#fff;font-weight:800;margin-bottom:10px}
.sa-parcours strong{display:block;color:#fff;margin-bottom:4px}
.sa-parcours span{font-size:15px}
.sa-zone>.emplacement-image>span{position:absolute;top:0;left:0}
.sa-parcours ol{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
@media (min-width:1000px){.sa-parcours ol{grid-template-columns:repeat(4,1fr)}}
.sa-a-retenir{background:#FFF6FA;border-left:5px solid var(--f);border-radius:0 16px 16px 0;padding:12px 16px;font-weight:600;color:var(--titre)}
.sa-a-retenir span{margin-right:4px}
/* « Une question ? Contactez-nous ! » */
.sa-question{position:relative}
.sa-question>summary{list-style:none;cursor:pointer;width:100%}
.sa-question>summary::-webkit-details-marker{display:none}
.sa-question-choix{display:grid;gap:6px;margin-top:8px;background:#fff;border-radius:16px;padding:8px;box-shadow:0 18px 40px -24px rgba(50,24,39,.55);border:1px solid var(--trait)}
.sa-question-choix a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;text-decoration:none;color:var(--titre)}
.sa-question-choix a:hover{background:var(--rose)}
.sa-question-choix .ico{flex:none;width:22px;height:22px;color:var(--f)}
.sa-question-choix span{display:grid;line-height:1.25}
.sa-question-choix small{color:var(--second);font-size:13px;word-break:break-all}
.bande-rdv .sa-question{display:inline-block}
.bande-rdv .sa-question-choix,.acces .sa-question-choix{position:absolute;z-index:20;min-width:270px;left:0}
.acces .sa-question{display:inline-block}
.sa-question>summary{box-sizing:border-box;max-width:100%;white-space:normal;text-align:center}
.carte-rdv .sa-question>summary{width:100%}
/* ---------- La panthère de Samana ---------- */
.sa-logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.sa-logo-panthere{width:60px;height:60px;object-fit:contain;flex:none}
.logo.sa-logo img:not(.sa-logo-panthere){width:180px}
.pied .sa-logo-panthere{width:72px;height:72px;background:#fff;border-radius:50%;padding:4px}
@media (max-width:560px){.sa-logo-panthere{width:46px;height:46px}.logo.sa-logo img:not(.sa-logo-panthere){width:140px}}
.sa-panthere-bande{width:84px;height:84px;object-fit:contain;opacity:.9;flex:none}
.bande-rdv-in{gap:22px}
@media (max-width:760px){.sa-panthere-bande{width:60px;height:60px}}
.sa-humain{position:relative;overflow:hidden}
.sa-panthere-filigrane{position:absolute;right:-60px;bottom:-40px;width:340px;height:auto;opacity:.08;pointer-events:none}
.sa-humain .enveloppe{position:relative;z-index:1}
.sa-panthere-compte{width:72px;height:72px;margin-bottom:6px;opacity:.95}
.sa-panthere-404{width:140px;height:140px;margin:0 auto 10px;display:block}
.logo.sa-logo .sa-logo-panthere,.pied .sa-logo .sa-logo-panthere{width:60px!important;height:60px!important;max-width:none}
.pied .sa-logo .sa-logo-panthere{width:68px!important;height:68px!important}
@media (max-width:560px){.logo.sa-logo .sa-logo-panthere{width:44px!important;height:44px!important}.logo.sa-logo img:not(.sa-logo-panthere){width:132px!important}}
img[src*="contact-accueil-hotesse"]{object-position:66% 30%}
/* Comparateur avant / après */
.sa-avap{margin:30px 0 32px;max-width:640px}
.sa-avap-cadre{position:relative;aspect-ratio:4/3;border-radius:24px;overflow:hidden;box-shadow:0 22px 46px -28px rgba(50,24,39,.6);background:var(--rose);touch-action:pan-y}
.sa-avap-img,.sa-avap .emplacement-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sa-avap-avant{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.sa-avap-ligne{position:absolute;top:0;bottom:0;left:var(--pos);width:4px;margin-left:-2px;background:#fff;box-shadow:0 0 12px rgba(0,0,0,.25);pointer-events:none}
.sa-avap-ligne span{position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px;border-radius:50%;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.sa-avap-ligne span::before,.sa-avap-ligne span::after{content:"";position:absolute;top:50%;width:0;height:0;margin-top:-7px;border:7px solid transparent}
.sa-avap-ligne span::before{left:6px;border-right-color:var(--f)}.sa-avap-ligne span::after{right:6px;border-left-color:var(--f)}
.sa-avap-etiq{position:absolute;top:14px;background:rgba(255,255,255,.92);color:var(--titre);font-weight:700;font-size:13px;padding:5px 10px;border-radius:999px;pointer-events:none}
.sa-avap-g{left:14px}.sa-avap-d{right:14px;background:var(--f);color:#fff}
.sa-avap-curseur{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.sa-avap figcaption{font-size:13.5px;color:var(--second);margin-top:10px;font-style:italic}
/* Laser quadribande certifié MDR */
.sa-mdr{background:linear-gradient(135deg,#FFF6FA,#FCE7F0);border-radius:26px;padding:26px 28px;margin:0 0 34px;border:2px solid #F7B6D2}
.sa-mdr h2{margin-top:0}
.sa-mdr-grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:16px}
.sa-mdr-grille>div{background:#fff;border-radius:18px;padding:16px 18px;box-shadow:0 10px 24px -20px rgba(50,24,39,.45)}
.sa-mdr-grille h3{font-size:17px;margin:0 0 6px;color:var(--f)}
.sa-mdr-grille p{font-size:15px;margin:0}
.sa-mdr-court{padding:16px 20px}.sa-mdr-court p{margin:0;font-size:15.5px}
.sa-mdr-test{font-size:13px;color:#9E004F;background:#fff;border-radius:999px;display:inline-block;padding:4px 12px;margin:0 0 10px;font-weight:700}
.sa-mdr-consult{margin-top:16px;background:#321827;color:#f6dbe8;border-radius:20px;padding:18px 22px}
.sa-mdr-consult h3{color:#fff;margin:0 0 6px;font-size:18px}
.sa-mdr-consult p{margin:0 0 10px}.sa-mdr-consult .btn-plein{background:#fff;color:var(--f)}
.produit-consult{display:block;font-size:12.5px;font-weight:700;color:var(--f);padding:0 14px 6px}
.sa-consult-encart{background:#FFF6FA;border-left:5px solid var(--f);border-radius:0 14px 14px 0;padding:12px 16px;font-size:15px}
.sa-mdr-court{padding:22px 26px}
.sa-mdr-court .sa-mdr-titre{margin:0 0 10px;font-size:21px;color:var(--titre)}
.sa-mdr-court p{margin:0 0 10px}
.sa-mdr-signature{font-weight:800;color:var(--f)}
.sa-mdr-intro{font-size:17px}
.sa-mdr-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:12px 0 14px}
.sa-mdr-points p{background:#fff;border-radius:16px;padding:14px 16px;margin:0;font-size:15px;box-shadow:0 10px 24px -20px rgba(50,24,39,.45)}
.sa-mdr-points strong{display:block;color:var(--f);margin-bottom:4px}
.sa-mdr-court h2.sa-mdr-titre{font-size:clamp(24px,2.4vw,30px)}
/* Enchères */
.sa-ench{padding-block:34px 56px}
.sa-ench-grille{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start}
.sa-ench-img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:24px;margin-bottom:14px}
.sa-ench-chiffres{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0}
.sa-ench-chiffres div{background:var(--rose);border-radius:16px;padding:12px}
.sa-ench-chiffres div.fort{background:var(--f)}.sa-ench-chiffres div.fort dt,.sa-ench-chiffres div.fort dd{color:#fff}
.sa-ench-chiffres dt{font-size:13px;font-weight:600}.sa-ench-chiffres dd{margin:2px 0 0;font-size:20px;font-weight:800}
.sa-ench-offres{list-style:none;padding:0;display:grid;gap:6px}.sa-ench-offres li{background:#FFF6FA;border-radius:10px;padding:8px 12px}
@media (max-width:860px){.sa-ench-grille{grid-template-columns:1fr}.sa-ench-chiffres{grid-template-columns:repeat(2,1fr)}}
.produit-accroche{display:block;font-size:13.5px;font-weight:600;color:var(--f);padding:0 14px 4px;line-height:1.3}
.sa-archive{background:#FFF6FA;border:1.5px dashed var(--f);border-radius:16px;padding:12px 16px;margin:0 0 22px;font-size:15px}
/* Programme des forfaits */
.sa-programme{background:#FFF6FA;border-radius:26px;padding:24px 26px;margin:26px 0 30px}
.sa-programme h2{margin-top:0}
.sa-prog{list-style:none;counter-reset:visite;margin:0;padding:0;display:grid;gap:12px}
.sa-prog>li{counter-increment:visite;background:#fff;border-radius:18px;padding:14px 18px 14px 64px;position:relative;box-shadow:0 10px 24px -20px rgba(50,24,39,.45)}
.sa-prog>li::before{content:counter(visite);position:absolute;left:16px;top:14px;width:34px;height:34px;border-radius:50%;background:var(--f);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
.sa-prog-quand{margin:0 0 4px;font-weight:800;font-style:italic;color:var(--f)}
.sa-prog ul{margin:0;padding-left:18px}.sa-prog ul li{margin:2px 0}
.sa-prog-total{margin:14px 0 0;font-size:15px}
.sa-encart-decouverte{background:var(--f);color:#fff;border-radius:18px;padding:14px 18px;margin:0 0 22px}.sa-encart-decouverte p{margin:0}
/* Qui vous reçoit */
.sa-equipe{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:clamp(20px,4vw,48px);align-items:center;padding-block:40px}
.sa-equipe-photo{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:999px 999px 24px 24px;border:8px solid #fff;box-shadow:0 26px 50px -30px rgba(50,24,39,.6)}
.sa-equipe-role{color:var(--f);font-weight:700;margin-top:-6px}
@media (max-width:760px){.sa-equipe{grid-template-columns:1fr}.sa-equipe-photo{max-width:280px;margin:0 auto}}
.sa-offres-laser{margin:0 0 34px}.sa-offres-laser .grille-produits{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
/* Assistant (bot) */
.bot-bouton{position:fixed;right:18px;bottom:18px;z-index:70;background:var(--f);color:#fff;border:0;border-radius:999px;padding:12px 18px;font:700 15px var(--sans);box-shadow:0 12px 30px -12px rgba(198,0,99,.7);cursor:pointer;min-height:48px}
.bot-panneau{position:fixed;right:18px;bottom:78px;z-index:71;width:min(380px,calc(100vw - 24px));height:min(560px,calc(100vh - 110px));background:#fff;border-radius:22px;box-shadow:0 30px 60px -20px rgba(50,24,39,.5);display:flex;flex-direction:column;overflow:hidden}
.bot-panneau[hidden]{display:none}
.bot-tete{display:flex;align-items:center;gap:8px;background:var(--f);color:#fff;padding:12px 14px}
.bot-tete strong{flex:1}
.bot-humain-lien{background:#fff;color:var(--f);border:0;border-radius:999px;padding:6px 12px;font:700 13px var(--sans);cursor:pointer}
.bot-fermer{background:none;border:0;color:#fff;font-size:26px;line-height:1;cursor:pointer;padding:0 4px}
.bot-fil{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:#FFF6FA}
.bot-msg{max-width:88%;border-radius:16px;padding:10px 12px;font-size:15px;line-height:1.45}
.bot-msg p{margin:0 0 6px}.bot-msg p:last-child{margin:0}
.bot-u{align-self:flex-end;background:var(--f);color:#fff;border-bottom-right-radius:4px}
.bot-a{align-self:flex-start;background:#fff;border-bottom-left-radius:4px;box-shadow:0 6px 16px -12px rgba(50,24,39,.4)}
.bot-lien{color:var(--f);font-weight:700}
.bot-sugg{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.bot-chip{background:var(--rose);color:var(--f);border:0;border-radius:999px;padding:6px 10px;font:600 13px var(--sans);cursor:pointer;text-align:left}
.bot-humain{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.bot-btn{display:inline-block;background:var(--f);color:#fff;border-radius:999px;padding:8px 14px;font-weight:700;text-decoration:none;font-size:14px}
.bot-wa{background:#1fa855}
.bot-form{display:flex;gap:6px;padding:10px;border-top:1px solid var(--trait);background:#fff}
.bot-form input{flex:1;border:1.5px solid var(--trait);border-radius:999px;padding:10px 14px;font:inherit;min-width:0}
.bot-form button{background:var(--f);color:#fff;border:0;border-radius:999px;padding:0 16px;font:700 14px var(--sans);cursor:pointer}
@media (max-width:760px){.bot-bouton{bottom:calc(84px + env(safe-area-inset-bottom,0px));right:12px;padding:10px 14px;font-size:14px}.bot-panneau{right:12px;bottom:calc(140px + env(safe-area-inset-bottom,0px));height:min(520px,calc(100vh - 170px))}}
.sa-flash-bandeau{background:var(--f);color:#fff;border-radius:16px;padding:12px 16px;font-weight:700;margin:0 0 18px}
