/*!
 * ADVIZSTUDIO · charte 2026 (validée par Florian le 07/10/2026, réf. plaquette.advizstudio.com)
 * Appliquée par-dessus le build Next de refonte.advizstudio.com le 11/10/2026.
 * Bleu nuit #161C33 · violet #4B2E83 · crème #FBE8C4 · corail #FF5A5F · blanc cassé #FAFAF8
 * Typographie de diadao.fr (Montserrat 500, casse normale) ; animations de la plaquette (adviz-anim-2026.js).
 * Retour arrière : retirer les deux balises <link> « adviz-da-2026 » des pages.
 */

/* ---------- 1. Jetons : les utilitaires du site lisent ces variables ---------- */
:root{
  --color-violet-night:#161C33;   /* fonds sombres (ancien #1d0f29) */
  --color-violet-deep:#232B4A;    /* second ton du dégradé nuit */
  --color-violet:#4B2E83;         /* accent sur fond clair */
  --color-violet-soft:#FBE8C4;    /* accent sur fond sombre = CRÈME, comme la plaquette (jamais de lavande) */
  --color-ink:#0F1226;            /* encre */
  --color-ink-soft:#232B4A;
  --color-mist:#B4B8C8;           /* texte secondaire sur sombre */
  --color-chalk:#FAFAF8;          /* blanc cassé */
  --color-chalk-deep:#F2F2ED;
  --adviz-coral:#FF5A5F;
  --adviz-cream:#FBE8C4;
  --adviz-grey:#5F6272;
}

/* ---------- 2. Typographie : celle de diadao.fr (demande de Florian, 11/10/2026) ---------- */
/* Montserrat (police d'origine du site), graisse 500 pour les titres, casse normale,
   interlettrage resserré (-0,05 em), tailles proportionnelles à la largeur d'écran,
   relevées sur diadao.fr à 1440 px et 390 px. */
body{font-weight:400;letter-spacing:-.035em}
strong,b{font-weight:600}
/* Texte courant : 15 px à 1440, 14 px sur mobile */
body,main p:not(.font-display){font-size:clamp(14px,1.0417vw,19px);line-height:1.6}
/* Texte d'introduction sous les titres : 22,5 px à 1440, 16 px sur mobile */
main section p.max-w-2xl,main section p.max-w-xl:not([data-hero-lede]){font-size:calc(16px + (100vw - 390px) * .0083);line-height:1.6;letter-spacing:-.05em}
@media (min-width:775px){main section p.max-w-2xl,main section p.max-w-xl:not([data-hero-lede]){font-size:calc(19.25px + (100vw - 775px) * .007)}}
@media (min-width:1025px){main section p.max-w-2xl,main section p.max-w-xl:not([data-hero-lede]){font-size:calc(21px + (100vw - 1024px) * .0036)}}
@media (min-width:1440px){main section p.max-w-2xl,main section p.max-w-xl:not([data-hero-lede]){font-size:calc(22.5px + (100vw - 1440px) * .00625)}}
/* Grands titres : paliers mesurés sur diadao.fr (titre « Votre partenaire… »)
   1920 → 76,5 px · 1440 → 67,5 px · 775-1024 → 45,5 px · 390 → 31,5 px */
h1.font-display,h2.font-display,h3.font-display[class*="5.5rem"],p[data-manifest]{
  --av-t:calc(31.5px + (100vw - 390px) * .037);
  font-size:var(--av-t) !important;
  font-weight:500 !important;line-height:1.2 !important;letter-spacing:-.05em !important;text-transform:none !important;
}
@media (min-width:768px){h1.font-display,h2.font-display,h3.font-display[class*="5.5rem"],p[data-manifest]{--av-t:45.5px}}
@media (min-width:1025px){h1.font-display,h2.font-display,h3.font-display[class*="5.5rem"],p[data-manifest]{--av-t:calc(45.5px + (100vw - 1024px) * .0529)}}
@media (min-width:1440px){h1.font-display,h2.font-display,h3.font-display[class*="5.5rem"],p[data-manifest]{--av-t:calc(67.5px + (100vw - 1440px) * .01875)}}
/* Titres de cartes et sous-titres : 39,4 px à 1440, 25,5 px sur mobile */
h3.font-display:not([class*="5.5rem"]){font-size:clamp(25.5px,2.734vw,52px) !important;font-weight:500 !important;line-height:1.4 !important;letter-spacing:-.05em !important}
/* Gros chiffres (cartes de preuves) : 41 px à 1440 */
main p.font-display.tabular-nums,p[data-av-count]{font-size:clamp(38.5px,2.865vw,54px) !important;font-weight:500 !important;line-height:1.2 !important;letter-spacing:-.05em !important}
/* Sur-titres, liens « en savoir plus », boutons : 12,75 px, capitales grasses */
.eyebrow{font-size:clamp(11.9px,.885vw,15px) !important;font-weight:700 !important;letter-spacing:.075em !important;text-transform:uppercase}

/* ---------- 3. Fonds sombres en dégradé bleu nuit ---------- */
.bg-violet-night{background:linear-gradient(160deg,#161C33 55%,#232B4A) !important}

/* ---------- 4. Appels à l'action en corail ---------- */
/* Bouton d'en-tête « Parlons de votre lieu » */
header a.eyebrow.border{border-radius:40px;border-color:var(--adviz-coral) !important;background:var(--adviz-coral);color:#fff !important}
header a.eyebrow.border:hover{background:#fff;border-color:#fff !important;color:var(--color-ink) !important}
/* Grand bouton « Réserver un échange » */
a.group.relative.inline-flex.border.border-chalk{background:var(--adviz-coral);border-color:var(--adviz-coral) !important;border-radius:999px;color:#fff}
a.group.relative.inline-flex.border.border-chalk:hover{background:#fff;color:var(--color-ink)}
/* Pastilles rondes (flèches, lecture vidéo) : violet sur clair, corail au survol */
.rounded-full.bg-violet:hover,.group:hover .rounded-full.bg-violet{background:var(--adviz-coral) !important}
/* Barre de progression de lecture : violet vers corail */
.fixed.top-0.h-0\.5.bg-violet{background:linear-gradient(90deg,#4B2E83,var(--adviz-coral)) !important}

/* ---------- 5. Contraste : textes secondaires lisibles (WCAG AA) ---------- */
.text-ink\/45,.text-ink\/50,.text-ink\/55{color:var(--adviz-grey) !important}
.text-chalk\/30,.text-chalk\/40,.text-chalk\/45{color:#A9ADBD !important}
.text-chalk\/50,.text-chalk\/55{color:#B4B8C8 !important}

/* ---------- 6. Mots en valeur : crème sur sombre ---------- */
.bg-violet-night em,.text-chalk em{font-style:normal;color:var(--adviz-cream)}

/* ---------- 7. Bouton flottant de contact en corail (esprit Diadao) ---------- */
div.fixed.z-30 a > span.rounded-full.relative{background:var(--adviz-coral) !important;background-image:none !important;color:#fff !important;box-shadow:0 16px 36px -12px rgba(255,90,95,.65) !important}
div.fixed.z-30 a:hover > span.rounded-full.relative{background:#E84A50 !important}
div.fixed.z-30 .border-violet\/30{border-color:rgba(255,90,95,.35) !important}

/* ---------- 8. Animations de la plaquette (posées par adviz-anim-2026.js) ---------- */
[data-av-on] [data-av="titre"]{clip-path:inset(0 0 100% 0);transform:translateY(.35em);transition:clip-path 1.1s cubic-bezier(.2,.8,.2,1),transform 1.1s cubic-bezier(.2,.8,.2,1)}
[data-av-on] [data-av="logo"]{clip-path:inset(0 100% 0 0);transition:clip-path 2.4s cubic-bezier(.6,0,.2,1)}
[data-av-on] [data-av="chiffre"]{opacity:.15;transition:opacity .6s}
[data-av-on] [data-av="in"]{clip-path:inset(-.2em -.2em -.3em -.2em);transform:none;opacity:1}
/* Photos des réalisations : zoom doux au survol */
main article img,main a img{transition:transform .8s cubic-bezier(.2,.8,.2,1)}
main article:hover img,main a:hover>img,main a:hover figure img{transform:scale(1.04)}
@media (prefers-reduced-motion:reduce){[data-av]{clip-path:none!important;transform:none!important;opacity:1!important;transition:none!important}}

/* ---------- 9. Accueil : fondu de la vidéo dans le blanc, timing de diadao.fr ---------- */
/* Mesuré sur diadao.fr (11/10/2026) : l'écran est quasi blanc après ~2/3 d'écran de
   défilement. La vidéo du hero est fixée en fond ; un voile blanc cassé posé dessus
   monte de 0 à 94 % selon --av-fade (adviz-anim-2026.js), puis le contenu défile sur
   ce fond clair, la vidéo restant à peine perceptible. */
main:has(> #studio) > section:first-child{background:transparent !important}
main:has(> #studio) > section:first-child > div.absolute.inset-0{position:fixed !important;inset:0 !important;z-index:0}
main:has(> #studio) > section:first-child > div.absolute.inset-0::after{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:50;
  background:#FAFAF8;opacity:calc(var(--av-fade,0) * .94);
}
main:has(> #studio) > section:first-child > div.relative,
main:has(> #studio) > section:first-child > div.absolute.bottom-8{z-index:2}
main:has(> #studio) > section:not(:first-child){position:relative;z-index:1}
main > #studio{background:transparent !important}
main:has(> #studio) > #realisations{background:linear-gradient(180deg,rgba(250,250,248,0) 0%,#FAFAF8 40%) !important}
/* Titre « Votre partenaire… » en bleu nuit plein, comme chez Diadao */
main > #studio p[data-manifest]{color:#161C33}

/* ---------- 10. Fidélité à la plaquette : aucun violet sur fond sombre ni sur les photos ---------- */
/* Voiles colorés posés sur la vidéo et les photos : bleu nuit neutre au lieu de violet */
.bg-violet\/20{background-color:rgba(22,28,51,.28) !important}
.bg-violet\/8,.bg-violet\/15{background-color:transparent !important}
/* Halos décoratifs : supprimés, la plaquette n'en a pas (fonds bleu nuit unis) */
[class*="bg-[radial-gradient"]{background-image:none !important}
/* Sur fond sombre, les mots en valeur passent en crème */
.text-chalk .text-violet,.bg-violet-night .text-violet{color:var(--adviz-cream) !important}

/* ---------- 11. Fonds colorés par le script du site au défilement ---------- */
/* Le site pose lui-même un background-color en ligne sur certaines sections pendant le
   défilement (ex. #contact passait en violet #4B2E83). La plaquette n'a jamais de fond
   violet : on impose le dégradé bleu nuit. */
main > section#contact,
main > section[style*="rgb(75, 46, 131)"],
main > section[style*="rgb(86, 35, 123)"]{background:linear-gradient(160deg,#161C33 55%,#232B4A) !important}
@media (prefers-reduced-motion:reduce){main > #studio{background:#FAFAF8 !important}}

/* ---------- 12. Pied de page ---------- */
/* Au-dessus de la vidéo fixée de l'accueil (sinon elle le recouvrait, texte blanc sur blanc) */
body > footer, footer.bg-ink{position:relative;z-index:2}
/* Bloc « Parlons de votre lieu · Trente minutes suffisent pour savoir quoi corriger. » retiré
   (Florian, 11/10/2026 ; phrase jugée condescendante par René) */
footer.bg-ink .grid > div.col-span-12:first-child{display:none}

/* ---------- 13. Hero de la page Contact : fond violet en ligne → bleu nuit de la plaquette ---------- */
section[style*="background-color:var(--color-violet)"],
section[style*="background-color: var(--color-violet)"]{background:linear-gradient(160deg,#161C33 55%,#232B4A) !important}
section[style*="var(--color-violet)"] [data-hero-glow]{opacity:.35 !important}

/* ---------- 14. Menu principal plus gras et plus visible (Florian, 11/10/2026) ---------- */
header a.text-sm,header button.text-sm,header button[aria-expanded],header button[aria-haspopup]{
  font-weight:600 !important;font-size:15px !important;opacity:1 !important;letter-spacing:-.02em !important;
}
/* Sur la vidéo : voile sombre en haut d'écran + légère ombre portée sous les mots */
header.border-transparent{background:linear-gradient(180deg,rgba(15,18,38,.62) 0%,rgba(15,18,38,0) 100%) border-box no-repeat}   /* no-repeat + border-box : sinon le dégradé se répète sous la bordure de 1 px et dessine un trait sombre */
header.border-transparent a.text-sm,header.border-transparent button{text-shadow:0 1px 10px rgba(15,18,38,.55)}
/* Barre blanche au défilement : texte bleu nuit plein */
header a.text-sm,header button.text-sm,header a.eyebrow{white-space:nowrap}
@media (max-width:1439px){header a.text-sm,header button.text-sm,header button[aria-expanded],header button[aria-haspopup]{font-size:13px !important;white-space:nowrap}header a.eyebrow{white-space:nowrap;padding-left:1rem !important;padding-right:1rem !important}header nav ul,header nav{gap:1.1rem !important;column-gap:1.1rem !important}}
@media (max-width:1100px){header a.eyebrow{font-size:11px !important;padding-left:.8rem !important;padding-right:.8rem !important}header nav ul,header nav{gap:.85rem !important;column-gap:.85rem !important}}
header:not(.border-transparent) a.text-sm,header:not(.border-transparent) button.text-sm,
header:not(.border-transparent) button[aria-expanded],header:not(.border-transparent) button[aria-haspopup]{color:#161C33 !important}

/* ---------- 15. Bloc « Votre partenaire… » : largeur et retour à la ligne de diadao.fr ---------- */
main > #studio p[data-manifest]{max-width:min(100%,47vw) !important}
@media (max-width:1024px){main > #studio p[data-manifest]{max-width:585px !important}}
@media (min-width:1025px){
  main > #studio > div > div{margin-left:36.8% !important;max-width:51vw !important}
  main > #studio p[data-manifest]{max-width:100% !important}
}

/* ---------- 16. Accueil, Réalisations : titre « Des maisons dont on se souvient. » et son texte retirés (Florian, 11/10/2026) ---------- */
main > #realisations [data-head] > div > h2,
main > #realisations [data-head] > div > p.mt-7{display:none}
main > #realisations [data-head] > div > p.eyebrow{margin-bottom:0}

/* ---------- 17. Page Contact : bloc « Voyez ce que nous avons fait pour des lieux comme le vôtre » retiré (Florian, 11/10/2026) ---------- */
main section:has([data-teaser-body]){display:none !important}

/* ---------- 18. Hero de l'accueil : « Générez de la désirabilité pour : Mariage / Séminaire / Événements privés » (Florian, 11/10/2026) ---------- */
h1 [data-desir]{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;color:var(--adviz-coral);letter-spacing:-.02em}
/* Mot qui tourne, repris des offres : visibilité → désirabilité → projection */
.av-rw{display:inline-block;position:relative;overflow:hidden;vertical-align:top;height:1.2em;line-height:1.2}
.av-w{position:absolute;left:0;top:0;white-space:nowrap;padding-right:.06em;line-height:1.2;transform:translateY(100%);opacity:0;transition:transform .55s cubic-bezier(.2,.7,.2,1),opacity .55s}
.av-w.on{position:relative;display:inline-block;transform:none;opacity:1}
.av-w.out{transform:translateY(-100%);opacity:0}
main > section:first-child h1.font-display{max-width:22ch !important}
/* Les mots qui défilaient deviennent une liste fixe à tirets corail */
[data-hero-rotator]{font-size:clamp(18px,1.7vw,28px) !important;margin-top:.9em !important}
[data-hero-rotator] > span:first-child{display:none !important}
[data-hero-rotator] > span.relative{color:#fff !important;line-height:1.5 !important}
[data-hero-rotator] > span.relative > span.absolute{display:none !important}
[data-hero-rotator] > span.relative > span.invisible{visibility:visible !important;display:flex !important;flex-direction:column;gap:.2em}
[data-hero-rotator] > span.relative > span.invisible > span{grid-area:auto !important}
[data-hero-rotator] > span.relative > span.invisible > span::before{content:"- ";color:var(--adviz-coral)}

/* 12/10/2026 : page Secteurs masquée (Florian : « on y reviendra plus tard »). Supprimer ce bloc pour la réafficher. */
a[href^="/secteurs"]{display:none !important}


/* Pied de page 2026 calqué sur diadao.fr (bloc .avf injecté par adviz-anim-2026.js) */
footer.bg-ink.avf-on{background:#1E2541!important;border:0!important}
/* Le bas du bloc contact fond vers le bleu du pied de page : aucun raccord visible, quelle que soit la largeur */
main > section#contact,section#avp-contact{position:relative}
main > section#contact::after,section#avp-contact::after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;background:linear-gradient(to bottom,rgba(30,37,65,0),#1E2541);pointer-events:none;z-index:1}
footer.bg-ink.avf-on>:not(.avf){display:none!important}
.avf{color:#C7CCD8;font-family:var(--font-montserrat),Montserrat,sans-serif;font-size:15px;line-height:30px;font-weight:400}
.avf-in{max-width:1170px;margin:0 auto;padding:150px 0 110px}
.avf a{color:inherit;text-decoration:none}
.avf-m{font-weight:500}
.avf-l{color:#F4F4F4!important;transition:opacity .3s}
.avf-l:hover{opacity:.7}
.avf-sp{margin-top:26px}
.avf-grid{display:grid;grid-template-columns:296px 297px 1fr;align-items:start}
.avf-c2 nav{display:flex;flex-direction:column;align-items:flex-start}
.avf-logo{display:block;width:190px;aspect-ratio:1007/200;margin:74px 0 0 auto;background:#F4F4F4;-webkit-mask:url(/logo.svg) center/contain no-repeat;mask:url(/logo.svg) center/contain no-repeat}
@media (max-width:1240px){.avf-in{padding:120px 40px 90px}}
@media (max-width:767px){
.avf{font-size:14px;line-height:28px;text-align:center}
.avf-in{padding:72px 14px 64px;display:flex;flex-direction:column}
.avf-logo{order:-1;width:170px;margin:0 auto 48px}
.avf-grid{grid-template-columns:1fr;gap:34px}
.avf-c2 nav{flex-direction:row;flex-wrap:wrap;justify-content:center;column-gap:14px}
.avf-sp{margin-top:20px}}
/* Bouton flottant « Nous contacter » : toujours visible, même sur le bloc contact et le pied de page (Florian 20/10) */
.fixed:has(> a[aria-label="Nous contacter"]){opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
/* Pied de page : pages du menu en blanc, dans la 3e colonne */
.avf-c3{display:flex;flex-direction:column;align-items:flex-start}
@media (max-width:767px){.avf-c3{flex-direction:row;flex-wrap:wrap;justify-content:center;column-gap:14px}}
/* ---------- Pages cas clients /realisations/<slug>/ : calque de diadao.fr (fond clair), charte AdvizStudio ---------- */
.cs{position:relative;background:#FAFAF8;color:#4A4F63;font-family:var(--font-montserrat),Montserrat,sans-serif}
.cs a{color:inherit;text-decoration:none}
.cs-in{max-width:1170px;margin:0 auto;padding:180px 24px 140px}
.cs-hero{max-width:1000px;margin-left:100px}
.cs-h1{font-size:clamp(2.4rem,4.7vw,4.22rem);font-weight:500;line-height:1.08;letter-spacing:-.05em;color:#0F1226;margin:0}
.cs-h1s{display:block;margin-top:18px;font-size:clamp(1rem,1.4vw,1.25rem);font-weight:400;line-height:1.5;letter-spacing:-.01em;color:#5F6272;max-width:40ch}
.cs-pin{width:18px;height:18px;flex:none;color:#4B2E83}
.cs-loc{display:flex;align-items:center;gap:8px;margin:34px 0 0;font-size:15px;color:#4A4F63}
.cs-top{display:grid;grid-template-columns:minmax(0,580px) minmax(0,1fr);gap:110px;margin-top:40px;align-items:start}
.cs-intro{font-size:15px;line-height:1.6;margin:0}
.cs-meta{padding-top:4px}
.cs-mh{font-size:15px!important;font-weight:600!important;letter-spacing:0!important;color:#0F1226!important;margin:0 0 12px!important;max-width:none!important;line-height:1.4!important}
.cs-mission{list-style:none;margin:0 0 28px;padding:0;font-size:15px;line-height:1.9;color:#4A4F63}
.cs-chip{display:inline-block;border:1px solid rgba(15,18,38,.25);border-radius:8px;padding:3px 14px;font-size:13px;margin:0;color:#0F1226}
.cs-go{display:inline-flex;align-items:center;gap:14px;margin-top:70px;color:#C42F35!important;font-weight:600;font-size:14.5px}
.cs-go svg{width:20px;height:20px;transition:transform .3s}
.cs-go:hover svg{transform:translateX(5px)}
.cs-cover{margin:120px 0 0;border-radius:15px;overflow:hidden;aspect-ratio:1170/700;background:#E8E8E4}
.cs-cover img{width:100%;height:100%;object-fit:cover;display:block}
.cs-ac{margin:150px 0 0 100px;max-width:1000px;display:flex;flex-direction:column;gap:110px}
.cs-ac-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:40px;align-items:start}
.cs-eb{font-size:12.75px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#4B2E83;margin:8px 0 0}
.cs-lead{font-size:clamp(1.25rem,1.9vw,1.72rem);line-height:1.45;color:#0F1226;margin:0;letter-spacing:-.02em;font-weight:500}
.cs-txt{font-size:clamp(1.05rem,1.45vw,1.4rem);line-height:1.6;color:#4A4F63;margin:28px 0 0;letter-spacing:-.01em}
.cs-shots{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:150px;align-items:start}
.cs-col{display:flex;flex-direction:column;gap:15px}
.cs-col-2{margin-top:180px}
.cs-shot{margin:0;border-radius:15px;overflow:hidden;background:#fff;box-shadow:0 18px 50px -24px rgba(15,18,38,.35)}
.cs-shot img{display:block;width:100%;height:auto}
.cs-mobs{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.cs-film{margin-top:150px}
.cs-vids{display:grid;gap:15px}
.cs-vids-2{grid-template-columns:1fr 1fr}
.cs-v{position:relative;aspect-ratio:16/9;border-radius:15px;overflow:hidden;background:#0F1226}
.cs-v iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.cs-stats{list-style:none;margin:150px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center}
.cs-stats strong{display:block;font-size:clamp(2.4rem,4.7vw,4.2rem);font-weight:500;letter-spacing:-.05em;color:#0F1226;line-height:1.1}
.cs-stats span{display:block;margin-top:12px;font-size:clamp(1rem,1.5vw,1.4rem);color:#5F6272;line-height:1.4}
.cs-more{margin-top:170px}
.cs-more-h{font-size:clamp(1.6rem,2.7vw,2.45rem)!important;font-weight:500!important;letter-spacing:-.04em!important;color:#0F1226!important;margin:0 0 50px!important;max-width:none!important}
.cs-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cs-card{display:flex;flex-direction:column}
.cs-card-img{display:block;aspect-ratio:905/543;border-radius:15px;overflow:hidden;background:#E8E8E4}
.cs-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.cs-card:hover .cs-card-img img{transform:scale(1.04)}
.cs-card-t{margin:40px 0 0 34px;font-size:clamp(1.6rem,2.4vw,2.1rem);font-weight:500;letter-spacing:-.04em;color:#0F1226}
.cs-card-l{display:flex;align-items:center;gap:8px;margin:14px 0 0 34px;font-size:clamp(1rem,1.4vw,1.25rem);color:#5F6272}
/* Bouton retour rond bleu nuit, comme diadao.fr (fixe sur grand écran, en haut de page ailleurs) */
.cs-back{position:absolute;top:96px;left:16px;z-index:20;width:52px;height:52px;border-radius:50%;background:#161C33;display:flex;align-items:center;justify-content:center;color:#F4F4F4!important;transition:background .3s,transform .3s}
.cs-back:hover{background:#2A3866;transform:translateX(-2px)}
.cs-back svg{width:22px;height:22px}
@media (min-width:1300px){.cs-back{position:fixed;top:120px;left:50px;width:72px;height:72px}.cs-back svg{width:26px;height:26px}}
@media (max-width:1100px){.cs-hero,.cs-ac{margin-left:0}}
@media (max-width:900px){.cs-top{grid-template-columns:1fr;gap:40px}.cs-go{margin-top:30px}.cs-ac-row{grid-template-columns:1fr;gap:14px}.cs-vids-2{grid-template-columns:1fr}}
@media (max-width:640px){.cs-in{padding:164px 16px 90px}.cs-cover{margin-top:60px;border-radius:12px;aspect-ratio:4/3}.cs-ac{margin-top:80px;gap:60px}.cs-shots{grid-template-columns:1fr;margin-top:80px}.cs-col-2{margin-top:0}.cs-film,.cs-stats{margin-top:80px}.cs-stats{grid-template-columns:1fr;gap:34px}.cs-more{margin-top:90px}.cs-cards{grid-template-columns:1fr;gap:40px}.cs-card-t,.cs-card-l{margin-left:4px}.cs-card-t{margin-top:20px}}
/* Menu du haut lisible sur fond clair (le site le met en blanc en haut de page) */
html:has(.cs) body > header.fixed,html:has(.cs) header.fixed.inset-x-0{background:rgba(250,250,248,.88)!important;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
html:has(.cs) header.fixed.inset-x-0 .text-chalk,html:has(.cs) header.fixed.inset-x-0 [class*="text-chalk/"]{color:#0F1226!important}
html:has(.cs) header.fixed.inset-x-0 *{text-shadow:none!important}
html:has(.cs) header.fixed.inset-x-0 svg{filter:none!important}
/* Galerie du shooting photo (mosaïque standard ADVIZ : 4 colonnes, 4:3, 10 px) */
.cs-gal{margin-top:150px}
.cs-gal-h{font-size:clamp(1.6rem,2.7vw,2.45rem)!important;font-weight:500!important;letter-spacing:-.04em!important;color:#0F1226!important;margin:0 0 40px!important;max-width:none!important}
.cs-gal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.cs-gal-grid figure{margin:0;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#E8E8E4}
.cs-gal-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.cs-gal-grid figure:hover img{transform:scale(1.04)}
@media (max-width:900px){.cs-gal-grid{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.cs-gal{margin-top:80px}}
/* Mosaïque à la place de la grande photo (pages avec shooting photo) */
.cs-gal-top{margin-top:120px}
@media (max-width:640px){.cs-gal-top{margin-top:60px}}
/* Mission : liens vers les pages services */
.cs-mission a{color:#0F1226;text-decoration:underline;text-decoration-color:rgba(75,46,131,.35);text-underline-offset:3px}
.cs-mission a:hover{text-decoration-color:#4B2E83}
/* ---------- Pages services /services/<slug>/ (même charte que les pages cas clients) ---------- */
.sv-in{padding-top:170px}
.sv-bc{font-size:13px;color:#5F6272;display:flex;gap:10px;margin-bottom:30px}
.sv-bc a{color:#0F1226;font-weight:500}
.sv-hero{max-width:900px}
.sv-h1{font-size:clamp(2.1rem,4.2vw,3.7rem);font-weight:500;line-height:1.1;letter-spacing:-.045em;color:#0F1226;margin:0}
.sv-lead{font-size:clamp(1.05rem,1.45vw,1.3rem);line-height:1.65;color:#3D4256;margin:28px 0 0;max-width:62ch}
.sv-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}
.sv-btn{display:inline-flex;align-items:center;gap:12px;background:#FF5A5F;color:#0F1226!important;font-weight:700;font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;padding:17px 28px;border-radius:999px;transition:background .3s}
.sv-btn:hover{background:#FF7478}
.sv-btn svg,.sv-other svg{width:13px;height:13px}
.sv-btn2{display:inline-flex;align-items:center;padding:16px 26px;border-radius:999px;border:1px solid rgba(15,18,38,.3);color:#0F1226!important;font-weight:600;font-size:13.5px;letter-spacing:.1em;text-transform:uppercase}
.sv-btn2:hover{border-color:#0F1226}
.sv-hero-media{margin-top:70px}
.sv-v{position:relative;aspect-ratio:16/9;border-radius:15px;overflow:hidden;background:#0F1226}
.sv-v iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sv-img{margin:0;border-radius:15px;overflow:hidden;background:#E8E8E4}
.sv-img img{display:block;width:100%;height:auto}
.sv-hero-media .sv-img{aspect-ratio:16/8}
.sv-hero-media .sv-img img{height:100%;object-fit:cover;object-position:50% 0}
.sv-img-logo{background:#2E5B3F;display:flex;align-items:center;justify-content:center}
.sv-hero-media .sv-img-logo img,.sv-why .sv-img-logo img{object-fit:contain;width:80%;height:auto}
.sv-body{display:grid;grid-template-columns:230px minmax(0,1fr);gap:70px;margin-top:110px;align-items:start}
.sv-toc{position:sticky;top:120px}
.sv-toc p{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#4B2E83;margin:0 0 14px}
.sv-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid rgba(15,18,38,.15)}
.sv-toc a{display:block;padding:8px 0 8px 16px;font-size:14px;line-height:1.4;color:#3D4256}
.sv-toc a:hover{color:#0F1226}
.sv-sec{scroll-margin-top:110px}
.sv-sec+.sv-sec{margin-top:110px}
.sv-sec h2{font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:500;letter-spacing:-.035em;line-height:1.18;color:#0F1226;margin:0 0 34px;max-width:28ch}
.sv-why{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:44px;align-items:start}
.sv-txt p{font-size:16px;line-height:1.8;margin:0 0 18px;color:#3D4256}
.sv-why .sv-img img{aspect-ratio:4/3;object-fit:cover;object-position:50% 0}
.sv-why .sv-img-logo{aspect-ratio:4/3}
.sv-livr{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.sv-livr li{background:#fff;border:1px solid rgba(15,18,38,.09);border-radius:14px;padding:28px}
.sv-n{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.08em;color:#4B2E83}
.sv-livr h3,.sv-steps h3,.sv-devis h3{font-size:18px;font-weight:600;color:#0F1226;margin:12px 0 10px;letter-spacing:-.01em}
.sv-livr p,.sv-steps p,.sv-devis p{margin:0;font-size:15px;line-height:1.7;color:#3D4256}
.sv-steps{list-style:none;margin:0;padding:0;counter-reset:s}
.sv-steps li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;padding:22px 0;border-top:1px solid rgba(15,18,38,.12)}
.sv-steps li:last-child{border-bottom:1px solid rgba(15,18,38,.12)}
.sv-steps .sv-n{width:40px;height:40px;border-radius:50%;background:#161C33;color:#F4F4F4;display:flex;align-items:center;justify-content:center;font-size:15px}
.sv-steps h3{margin-top:6px}
.sv-devis{margin-top:30px;padding:26px 28px;border-radius:14px;background:#F0EEE8}
.sv-devis h3{margin-top:0}
.sv-intro{font-size:15px;color:#4A4F63;margin:-18px 0 28px}
.sv-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sv-card{display:flex;flex-direction:column}
.sv-card-img{display:block;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#E8E8E4}
.sv-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.sv-card:hover .sv-card-img img{transform:scale(1.04)}
.sv-card-t{margin-top:14px;font-size:17px;font-weight:600;color:#0F1226}
.sv-card-l{font-size:13.5px;color:#5F6272;margin-top:3px}
.sv-faq details{border-top:1px solid rgba(15,18,38,.12);padding:20px 0}
.sv-faq details:last-child{border-bottom:1px solid rgba(15,18,38,.12)}
.sv-faq summary{cursor:pointer;font-size:17px;font-weight:600;color:#0F1226;list-style:none;display:flex;justify-content:space-between;gap:20px}
.sv-faq summary::-webkit-details-marker{display:none}
.sv-faq summary::after{content:"+";font-weight:400;font-size:22px;line-height:1;color:#4B2E83}
.sv-faq details[open] summary::after{content:"−"}
.sv-faq p{margin:14px 0 0;font-size:15.5px;line-height:1.75;color:#3D4256;max-width:70ch}
.sv-cta{margin-top:130px;padding:64px 56px;border-radius:18px;background:#161C33;text-align:center}
.sv-cta h2{font-size:clamp(1.7rem,2.8vw,2.5rem);font-weight:500;letter-spacing:-.035em;color:#F4F4F4;margin:0 0 16px}
.sv-cta p{max-width:56ch;margin:0 auto 30px;line-height:1.75;font-size:16px;color:#C7CCD8}
.sv-other{margin-top:80px}
.sv-other p{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#4B2E83;margin:0 0 16px}
.sv-other ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.sv-other a{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;border:1px solid rgba(15,18,38,.2);border-radius:999px;font-size:14.5px;font-weight:500;color:#0F1226}
.sv-other a:hover{border-color:#0F1226}
@media (max-width:1100px){.sv-body{grid-template-columns:1fr;gap:50px}.sv-toc{position:static}.sv-cards{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.sv-in{padding-top:140px}.sv-why,.sv-livr{grid-template-columns:1fr}.sv-hero-media{margin-top:44px}.sv-hero-media .sv-img{aspect-ratio:4/3}.sv-body{margin-top:70px}.sv-sec+.sv-sec{margin-top:80px}.sv-cards{grid-template-columns:1fr}.sv-cta{padding:44px 22px;margin-top:90px}}
/* Pied de page : 4e colonne « Services » */
.avf-grid{grid-template-columns:270px 260px 200px 1fr!important}
.avf-c4{display:flex;flex-direction:column;align-items:flex-start}
@media (max-width:767px){.avf-grid{grid-template-columns:1fr!important}.avf-c4{flex-direction:row;flex-wrap:wrap;justify-content:center;column-gap:14px}}
/* Plan du site */
.pl{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 40px;margin-top:70px}
.pl-g h2{font-size:13px!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase;color:#4B2E83!important;margin:0 0 16px!important}
.pl-g ul{list-style:none;margin:0;padding:0}
.pl-g li{padding:6px 0}
.pl-g a{font-size:16px;color:#0F1226;text-decoration:underline;text-decoration-color:rgba(75,46,131,.3);text-underline-offset:3px}
@media (max-width:900px){.pl{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.pl{grid-template-columns:1fr}}

/* 21/10 : carte chiffres (21 lieux / 18 vidéos) retirée du carrousel d avis (demande Florian) */
li[data-card="true"]:has(> article .tabular-nums){display:none !important}

/* 21/10 : Réseaux sociaux et Identité visuelle en brouillon (demande Florian), masqués aussi dans le pied de page */
.avf-c4 a[href="/services/reseaux-sociaux/"],.avf-c4 a[href="/services/design-image-de-marque/"]{display:none !important}

/* 21/10 : « on ne parle plus de réseaux sociaux » (Florian) : liens vers le service masqués partout (listes de services, plan du site) */
li:has(> a[href^="/services/reseaux-sociaux"]){display:none !important}
/* ---------- Page L'agence /agence/ (22/10/2026) : reprend la charte des pages services (sv-*) ---------- */
.ag-ico{width:30px;height:30px;color:#4B2E83;flex:none}
.ag-types{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.ag-type-img{display:block;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:#E8E8E4}
.ag-type-img img{width:100%;height:100%;object-fit:cover}
.ag-type h3{font-size:17px;font-weight:600;color:#0F1226;margin:14px 0 6px}
.ag-type p{margin:0;font-size:14.5px;line-height:1.6;color:#3D4256}
.ag-lien{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:14px;font-weight:600;color:#4B2E83!important}
.ag-lien svg{width:12px;height:12px}
.ag-fondateur{display:grid;grid-template-columns:120px minmax(0,1fr);gap:24px;align-items:start;padding:30px;border-radius:14px;background:#F0EEE8;margin-bottom:22px}
.ag-mono{width:120px;height:120px;border-radius:50%;background:#161C33 url(/equipe/florian-guillaume.webp) center/cover no-repeat;color:transparent;font-size:0;display:block}
.ag-fondateur h3,.ag-poles h3{font-size:18px;font-weight:600;color:#0F1226;margin:4px 0 10px;letter-spacing:-.01em}
.ag-fondateur p,.ag-poles p,.ag-bureau p{margin:0;font-size:15px;line-height:1.7;color:#3D4256}
.ag-poles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ag-poles li{background:#fff;border:1px solid rgba(15,18,38,.09);border-radius:14px;padding:28px}
.ag-poles h3{margin-top:16px}
.ag-bureau{display:grid;grid-template-columns:30px minmax(0,1fr);gap:20px;padding:30px;border-radius:14px;border:1px solid rgba(15,18,38,.12)}
.ag-bureau .ag-adr{font-size:18px;font-weight:600;color:#0F1226;line-height:1.5;margin-bottom:12px}
.ag-bureau .ag-tel{margin-top:14px}
.ag-bureau a{color:#4B2E83;font-weight:600}
.ag-plus{margin:30px 0 0}
@media (max-width:1100px){.ag-types{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.ag-types{grid-template-columns:1fr 1fr}.ag-poles{grid-template-columns:1fr}.ag-fondateur{grid-template-columns:1fr}}
/* 22/10/2026 : sommaire, section en cours en gras */
.sv-toc a{transition:color .2s;border-left:2px solid transparent;margin-left:-1px}
.sv-toc a.is-active{font-weight:700;color:#0F1226;border-left-color:#4B2E83}
/* 22/10/2026 : pages Mentions légales et Confidentialité (classes lg-*, gabarit sv-*) */
.lg-maj{margin:22px 0 0;font-size:13.5px;color:#5F6272}
.lg-in .sv-body{margin-top:80px}
.lg-sec+.lg-sec{margin-top:64px}
.lg-sec h2{font-size:clamp(1.35rem,2vw,1.7rem)!important;margin-bottom:20px!important}
.lg-txt p,.lg-txt li{font-size:16px;line-height:1.8;color:#3D4256}
.lg-txt p{margin:0 0 14px}
.lg-txt ul{margin:0 0 14px;padding-left:20px}
.lg-txt li{margin:4px 0}
.lg-txt a{color:#4B2E83;text-decoration:underline;text-underline-offset:3px}
.lg-txt strong{color:#0F1226;font-weight:600}
.lg-txt ul{list-style:disc!important}.lg-txt li::marker{color:#4B2E83}
/* 22/10/2026 : mosaïque de 4 lieux sous le hero de /agence/ */
.ag-mos{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ag-mos figure{margin:0;aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#E8E8E4}.ag-mos img{width:100%;height:100%;object-fit:cover;display:block}@media (max-width:900px){.ag-mos{grid-template-columns:1fr 1fr}}
/* 22/10/2026 : formulaire contact, objectifs de remplissage en cases à cocher (Florian) */
#contact h2.max-w-\[14ch\]{max-width:22ch}
.av-obj{border:0;margin:6px 0 4px;padding:0;min-width:0}
.av-obj legend{padding:0;margin:0 0 14px;font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#3D4256}
.av-obj-l{display:flex;flex-wrap:wrap;gap:10px}
.av-obj label{position:relative;display:inline-flex;align-items:center;gap:0;padding:13px 20px 13px 16px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px rgba(15,18,38,.14);font-size:.9375rem;line-height:1.3;color:#0F1226;cursor:pointer;transition:background-color .25s,box-shadow .25s,color .25s}
.av-obj label:hover{box-shadow:inset 0 0 0 1px rgba(75,46,131,.55)}
.av-obj input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.av-obj label span::before{content:"";display:inline-block;width:16px;height:16px;margin-right:10px;vertical-align:-3px;border-radius:5px;box-shadow:inset 0 0 0 1.5px rgba(15,18,38,.3);background:#fff no-repeat center/10px}
.av-obj label.av-on,.av-obj label:has(input:checked){background:#4B2E83;color:#fff;box-shadow:inset 0 0 0 1px #4B2E83}
.av-obj label.av-on span::before,.av-obj label:has(input:checked) span::before{box-shadow:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2.5 8.5l3.5 3.5 7.5-8' fill='none' stroke='%234B2E83' stroke-width='2'/%3E%3C/svg%3E")}
.av-obj label:has(input:focus-visible){outline:2px solid #4B2E83;outline-offset:3px}
@media (max-width:640px){.av-obj label{padding:11px 16px 11px 13px;font-size:.875rem}}
.av-obj-err{display:flex;gap:8px;margin:12px 0 0 4px;font-size:.8125rem;line-height:1.6;color:#0F1226}
.av-obj-err::before{content:"";flex:none;width:6px;height:6px;margin-top:.5rem;border-radius:50%;background:var(--stage-accent,#FF5A5F)}
/* ---------- Page /services/ unique (22/10/2026) : hero et pôles façon diadao.fr/expertises, solutions A à H, agenda de la plaquette ---------- */
.sp{background:#FAFAF8;color:#0F1226;overflow-x:clip} /* pas overflow:hidden : il casse le sommaire collant (position:sticky) */
.sp-hero{position:relative;background:radial-gradient(120% 80% at 85% 0%,#2A2F57 0%,rgba(42,47,87,0) 60%),linear-gradient(180deg,#161C33 0%,#1E2541 100%);color:#F4F4F4;padding:190px 0 120px}
.sp-hero-in{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,40px)}
.sp-hero .sv-bc,.sp-hero .sv-bc a{color:#C7CCD8}
.sp-eye{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#FBE8C4;margin:0 0 22px}
.sp-hero h1{font-size:clamp(2.2rem,5vw,4.2rem);font-weight:500;line-height:1.08;letter-spacing:-.05em;margin:0;max-width:18ch;color:#fff}
.sp-lead{font-size:clamp(1.05rem,1.45vw,1.3rem);line-height:1.65;color:#DADDE6;margin:30px 0 0;max-width:62ch}
.sp-btn2{display:inline-flex;align-items:center;padding:16px 26px;border-radius:999px;border:1px solid rgba(244,244,244,.45);color:#F4F4F4!important;font-weight:600;font-size:13.5px;letter-spacing:.1em;text-transform:uppercase}
.sp-btn2:hover{border-color:#fff}
.sp-poles{list-style:none;margin:90px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:18px;scroll-margin-top:110px}
.sp-pole{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:36px 34px}
.sp-pole-c{grid-column:1/-1;background:linear-gradient(120deg,rgba(75,46,131,.55),rgba(255,255,255,.05) 70%)}
.sp-pole h3{font-size:clamp(1.7rem,2.6vw,2.4rem);font-weight:500;letter-spacing:-.04em;margin:0;color:#fff}
.sp-pole>p{font-size:18px;color:#DADDE6;margin:6px 0 24px}
.sp-pole ul{list-style:none;margin:0;padding:0}
.sp-pole-c ul{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}
.sp-pole li a{display:flex;align-items:center;gap:14px;padding:8px 0;font-size:16px;color:#F4F4F4}
.sp-pole li a:hover{color:#FBE8C4}
.sp-chev{width:8px;height:12px;flex:none;color:#FF5A5F}
.sp-in{padding-top:110px}
.sp-in .sv-body{margin-top:0}
.sp-sol{scroll-margin-top:110px}
.sp-sol+.sp-sol,.sp-sol+.sv-sec{margin-top:130px}
.sp-sol-h{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.sp-l{width:38px;height:38px;border-radius:50%;background:#161C33;color:#FBE8C4;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700}
.sp-sol .sp-eye{color:#4B2E83;margin:0}
.sp-sol h2{font-size:clamp(1.6rem,2.6vw,2.3rem);font-weight:500;letter-spacing:-.035em;line-height:1.18;color:#0F1226;margin:0 0 34px;max-width:28ch}
.sp-sol-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:44px;align-items:start}
.sp-q{font-size:19px!important;line-height:1.55!important;font-weight:500;color:#0F1226!important;margin:0 0 18px!important}
.sp-txt p{font-size:16px;line-height:1.8;margin:0 0 16px;color:#3D4256}
.sp-img{margin:0;border-radius:15px;overflow:hidden;background:#E8E8E4;aspect-ratio:4/3}
.sp-img img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.sp-img-logo{background:#2E5B3F;display:flex;align-items:center;justify-content:center}
.sp-img-logo img{object-fit:contain;width:72%;height:auto}
.sp-v{position:relative;aspect-ratio:16/9;border-radius:15px;overflow:hidden;background:#0F1226}
.sp-v iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.sp-items{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sp-items li{background:#fff;border:1px solid rgba(15,18,38,.09);border-radius:14px;padding:24px 26px}
.sp-items h4{font-size:16.5px;font-weight:600;color:#0F1226;margin:0 0 8px;letter-spacing:-.01em}
.sp-items p{margin:0;font-size:14.5px;line-height:1.7;color:#3D4256}
.sp-proof{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:24px 0 0}
.sp-proof span{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#4B2E83;margin-right:6px}
.sp-proof a{padding:7px 14px;border-radius:999px;border:1px solid rgba(15,18,38,.18);font-size:13.5px;font-weight:500;color:#0F1226}
.sp-proof a:hover{border-color:#0F1226}
.sp-chat{background:#161C33;border-radius:15px;padding:26px;color:#F4F4F4}
.sp-chat-h{display:flex;align-items:center;gap:12px;font-weight:600;margin:0 0 18px;font-size:15px}
.sp-chat-h b{width:34px;height:34px;border-radius:50%;background:#FF5A5F;color:#0F1226;display:flex;align-items:center;justify-content:center}
.sp-chat-h span{font-weight:400;font-size:12.5px;color:#C7CCD8;margin-left:auto}
.sp-chat .m{max-width:85%;padding:12px 16px;border-radius:14px;font-size:14.5px;line-height:1.55;margin:0 0 10px}
.sp-chat .u{margin-left:auto;background:#4B2E83;color:#fff;border-bottom-right-radius:4px}
.sp-chat .b{background:rgba(255,255,255,.08);border-bottom-left-radius:4px}
.sp-serp{background:#fff;border:1px solid rgba(15,18,38,.1);border-radius:15px;padding:24px;box-shadow:0 18px 40px -26px rgba(15,18,38,.35)}
.sp-serp-q{display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:12px 16px;border-radius:999px;border:1px solid rgba(15,18,38,.14);font-size:15px;color:#0F1226}
.sp-serp-q b{color:#4B2E83;font-size:18px}
.sp-serp .r{position:relative;padding:14px 0;border-top:1px solid rgba(15,18,38,.08);opacity:.5}
.sp-serp .r.on{opacity:1}
.sp-serp .r small{display:block;font-size:12.5px;color:#5F6272}
.sp-serp .r b{display:block;font-size:16px;font-weight:600;color:#3B2A8C;margin:3px 0}
.sp-serp .r span{font-size:14px;color:#3D4256;line-height:1.55}
.sp-serp .r i{position:absolute;top:14px;right:0;font-style:normal;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:#FF5A5F;color:#0F1226;padding:4px 10px;border-radius:999px}
/* Agenda de la plaquette, pleine largeur */
.sp-ag{background:#1E2541;color:#F4F4F4;padding:20px 0 120px;scroll-margin-top:80px}
.sp-ag-in{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4vw,40px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px;align-items:center}
.sp-ag h2{font-size:clamp(1.8rem,3.2vw,2.8rem);font-weight:500;letter-spacing:-.04em;line-height:1.12;margin:0;color:#fff}
.sp-ag-k{margin:30px 0 0;font-size:16px;line-height:1.7;color:#C7CCD8}
.sp-ag-k b{display:block;font-size:clamp(2rem,3.4vw,2.8rem);font-weight:600;letter-spacing:-.03em;color:#FBE8C4;margin-bottom:4px}
.sp-cal{display:grid;grid-template-columns:repeat(12,1fr);gap:6px}
.sp-mo{display:flex;flex-direction:column;gap:6px}
.sp-mo small{font-size:11px;color:#C7CCD8;text-align:center;margin-bottom:2px}
.sp-mo i{display:block;aspect-ratio:1;border-radius:5px;background:rgba(255,255,255,.08);transition:background .5s}
.sp-mo i.f.x-m,.sp-leg i.m{background:#FF5A5F}
.sp-mo i.f.x-s,.sp-leg i.s{background:#FBE8C4}
.sp-mo i.f:not(.x-m):not(.x-s){background:#FF5A5F}
.sp-gauge{display:flex;align-items:center;gap:14px;margin-top:26px;font-size:14px;color:#DADDE6}
.sp-gl{min-width:150px}
.sp-gb{flex:1;height:6px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden}
.sp-gb b{display:block;height:100%;width:13%;background:#FF5A5F;transition:width .3s}
.sp-gv{font-weight:700;min-width:48px;text-align:right;color:#fff}
.sp-leg{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0 0;font-size:13px;color:#C7CCD8}
.sp-leg span{display:inline-flex;align-items:center;gap:8px}
.sp-leg i{width:12px;height:12px;border-radius:3px;background:rgba(255,255,255,.08)}
@media (max-width:900px){.sp-poles,.sp-pole-c ul,.sp-sol-g,.sp-ag-in{grid-template-columns:1fr}.sp-ag-in{gap:40px}}
@media (max-width:760px){.sp-hero{padding:150px 0 80px}.sp-poles{margin-top:60px}.sp-pole{padding:28px 24px}.sp-items{grid-template-columns:1fr}.sp-sol+.sp-sol,.sp-sol+.sv-sec{margin-top:90px}.sp-ag{padding:10px 0 80px}.sp-cal{gap:4px}.sp-mo{gap:4px}.sp-mo small{font-size:9.5px}.sp-in{padding-top:80px}}
.sp-img-raw img{object-position:50% 0}
.sp-logos{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.sp-logos figure{margin:0;min-width:0;aspect-ratio:3/4;border-radius:15px;background:#F0EEE8;display:flex;align-items:center;justify-content:center;padding:26px 20px}
.sp-logos img{width:100%;height:auto;max-height:80%;object-fit:contain}
.sp-items-c li{padding:18px 22px}
.sp-items-c h4{margin:0}
.sp-more{margin:26px 0 0}
.sp-more .sv-btn2{gap:10px}
.sp-more svg{width:13px;height:13px}
