@font-face{font-family:PJS;src:url(fonts/pjs-500.woff2) format("woff2");font-weight:400 600;font-display:swap}
@font-face{font-family:PJS;src:url(fonts/pjs-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:PJS;src:url(fonts/pjs-800.woff2) format("woff2");font-weight:800 900;font-display:swap}

:root{
  --nuit:#141518;--carbone:#1E2024;--trait:#2A2C31;--trait2:#3A3D44;
  --creme:#F2EDE4;--lin:#F7F3EC;--ligne:#DDD7CB;
  --ble:#D9A84E;--ble-fonce:#B9852B;
  --pierre:#8A8F98;--encre:#1B1D21;--doux:#5A5F67;--sur-nuit:#C9C4BA;
  --large:1680px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{font-family:PJS,Arial,sans-serif;font-weight:500;color:var(--encre);background:var(--creme);line-height:1.6;font-size:17px;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
::selection{background:var(--ble);color:var(--nuit)}
.cadre{max-width:var(--large);margin:0 auto;padding:0 clamp(24px,5.5vw,96px)}
h1,h2,h3,h4{font-weight:800;line-height:1.04;letter-spacing:-.04em}
h3{letter-spacing:-.025em;line-height:1.2}
.nuit{background:var(--nuit);color:var(--creme)}
.lin{background:var(--lin)}
.pt{color:var(--ble)}
.creme .pt,.lin .pt,main>section:not(.nuit) .pt{color:var(--ble-fonce)}
.nuit .pt{color:var(--ble)}

/* Sur-titre : numéro + trait */
.sur{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ble-fonce);margin-bottom:22px}
.sur::before{content:"";width:34px;height:1.5px;background:currentColor}
.nuit .sur{color:var(--ble)}
.intro-txt{font-size:19px;color:var(--doux);max-width:640px;margin-top:22px}
.nuit .intro-txt{color:var(--sur-nuit)}
.bloc{padding:clamp(80px,9vw,150px) 0}
.h2{font-size:clamp(34px,4.6vw,58px)}

/* Liens et boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:17px 28px;border-radius:6px;font-weight:700;font-size:16.5px;text-decoration:none;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}
.btn svg{width:18px;height:18px;flex:none}
.btn-ble{background:var(--ble);color:var(--nuit)}
.btn-ble:hover{background:#E6B962}
.btn-clair{border:1.5px solid var(--trait2);color:var(--creme)}
.btn-clair:hover{border-color:var(--creme)}
.btn-nuit{background:var(--nuit);color:var(--creme)}
.btn-nuit:hover{background:#26282D}
.btn-contour{border:1.5px solid var(--encre);color:var(--encre)}
.btn-contour:hover{background:var(--encre);color:var(--creme)}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}
.lien{display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:3px}
.lien svg{width:16px;height:16px;transition:transform .2s}
.lien:hover svg{transform:translateX(4px)}

/* En-tête */
.entete{position:sticky;top:0;z-index:50;background:rgba(20,21,24,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--trait)}
.entete .cadre{display:flex;align-items:center;gap:40px;height:76px}
.entete .logo{display:block;flex:none}
.entete .logo img{height:31px;width:auto}
.menu{display:flex;align-items:center;gap:30px;margin-left:auto}
.menu a{color:var(--sur-nuit);text-decoration:none;font-size:15px;font-weight:600;position:relative;padding:6px 0}
.menu a:hover,.menu a[aria-current]{color:var(--creme)}
.menu a.btn,.menu a.btn:hover{color:var(--nuit);padding:11px 18px}
.menu a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--ble)}
.entete .btn{padding:11px 18px;font-size:15px}
.burger{display:none;margin-left:auto;background:none;border:0;color:var(--creme);width:44px;height:44px;cursor:pointer}
.burger svg{width:26px;height:26px}

/* Hero accueil */
.hero{position:relative;overflow:hidden;padding:96px 0 0}
.hero .sillons-fond{position:absolute;right:-120px;top:40px;width:760px;opacity:.9;pointer-events:none}
.hero h1{font-size:clamp(46px,7.6vw,124px);letter-spacing:-.055em;line-height:.96;max-width:1180px;position:relative}
.hero-bas{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(60px,8vw,140px);align-items:center;margin-top:64px;position:relative}
.hero-bas p{font-size:20px;color:var(--sur-nuit);max-width:470px}
.hero-bas .actions{margin-top:32px}
.preuves{display:flex;gap:30px;margin-top:40px;padding-top:26px;border-top:1px solid var(--trait);color:var(--pierre);font-size:14.5px;flex-wrap:wrap}
.preuves b{display:block;color:var(--creme);font-size:15.5px}

/* Bandeau communes */
.defile{border-top:1px solid var(--trait);border-bottom:1px solid var(--trait);overflow:hidden;padding:22px 0;margin-top:90px;white-space:nowrap}
.defile .piste{display:inline-flex;gap:46px;animation:defile 60s linear infinite;color:var(--pierre);font-weight:700;font-size:18px;letter-spacing:-.01em}
.defile .piste span::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--ble);margin-left:46px;vertical-align:middle}
@keyframes defile{to{transform:translateX(-50%)}}

/* Constat chiffré */
.constat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:clamp(60px,8vw,140px);align-items:start}
.chiffres{border-top:1.5px solid var(--encre)}
.chiffre{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1fr);gap:30px;align-items:baseline;padding:30px 0;border-bottom:1px solid var(--ligne)}
.chiffre b{font-size:68px;font-weight:800;letter-spacing:-.05em;line-height:1}
.chiffre b small{font-size:28px;color:var(--ble-fonce)}
.chiffre p{color:var(--doux);font-size:16.5px}
.chiffre p strong{color:var(--encre)}
.source{color:var(--pierre);font-size:13.5px;margin-top:18px}

/* Liste numérotée de services */
.liste-num{margin-top:60px;border-top:1.5px solid var(--encre)}
.liste-num a,.liste-num div.ligne{display:grid;grid-template-columns:90px 1fr 1.2fr 40px;gap:30px;align-items:center;padding:34px 0;border-bottom:1px solid var(--ligne);text-decoration:none;transition:padding .25s}
.liste-num a:hover{padding-left:12px}
.liste-num .n{font-weight:800;color:var(--ble-fonce);font-size:15px;letter-spacing:.08em}
.liste-num h3{font-size:26px}
.liste-num p{color:var(--doux);font-size:16px}
.liste-num svg{width:22px;height:22px;color:var(--ble-fonce)}

/* Étapes en frise */
.frise{display:grid;grid-template-columns:repeat(4,1fr);margin-top:64px;position:relative}
.frise::before{content:"";position:absolute;left:0;right:0;top:15px;height:1.5px;background:var(--trait2)}
.frise .pas{position:relative;padding-right:30px}
.frise .pas i{display:block;width:32px;height:32px;border-radius:50%;background:var(--nuit);border:1.5px solid var(--ble);margin-bottom:28px;position:relative}
.frise .pas i::after{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--ble)}
.frise .quand{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--pierre)}
.frise h3{font-size:22px;margin-top:8px}
.frise p{color:var(--sur-nuit);font-size:15.5px;margin-top:10px}

/* Duo texte + visuel */
.duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(60px,8vw,140px);align-items:center}
.duo.inverse>:first-child{order:2}

/* Citation interlocuteur */
.interlocuteur{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(60px,8vw,140px);align-items:center}
.interlocuteur blockquote{font-size:clamp(28px,3.4vw,42px);font-weight:800;letter-spacing:-.035em;line-height:1.15}
.fiche-contact{background:var(--nuit);color:var(--creme);border-radius:10px;padding:34px}
.fiche-contact small{display:block;color:var(--pierre);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.fiche-contact .prenom{font-size:36px;font-weight:800;letter-spacing:-.04em;margin-top:12px}
.fiche-contact p{color:var(--sur-nuit);font-size:15px;margin-top:4px}
.fiche-contact a{display:flex;align-items:center;gap:10px;margin-top:22px;font-weight:800;font-size:21px;color:var(--ble);text-decoration:none}
.fiche-contact a svg{width:20px;height:20px}

/* Bande d'appel finale */
.appel{padding:130px 0;position:relative;overflow:hidden}
.appel .sillons-fond{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(1000px,120vw);opacity:.55;pointer-events:none}
.appel .cadre{position:relative;text-align:center}
.appel h2{font-size:clamp(38px,6vw,78px);max-width:900px;margin:0 auto}
.appel p{color:var(--sur-nuit);font-size:19px;max-width:560px;margin:22px auto 0}
.appel .actions{justify-content:center}

/* En-tête de page intérieure */
.tete-page{padding:clamp(70px,8vw,130px) 0 clamp(64px,7vw,120px);position:relative;overflow:hidden}
.tete-page .sillons-fond{position:absolute;right:-90px;top:50%;transform:translateY(-50%);width:min(560px,48vw);opacity:.8;pointer-events:none}
.tete-page h1{font-size:clamp(44px,6.6vw,100px);max-width:1100px;position:relative}
.tete-page .intro-txt{font-size:20px;position:relative}
.fil{display:flex;gap:10px;color:var(--pierre);font-size:14px;margin-bottom:30px;position:relative}
.fil a{text-decoration:none}
.fil a:hover{color:var(--creme)}

/* Sections de services détaillées */
.service{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,2fr);gap:clamp(50px,7vw,120px);padding:80px 0;border-top:1px solid var(--ligne)}
.service:first-child{border-top:0;padding-top:0}
.service .n{font-weight:800;color:var(--ble-fonce);font-size:15px;letter-spacing:.08em}
.service h2{font-size:clamp(30px,3.4vw,42px);margin-top:12px}
.service .corps>p{font-size:18px;color:var(--doux);max-width:640px}
.service .corps>p+p{margin-top:14px}
.points{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:30px;list-style:none;border-top:1px solid var(--ligne)}
.points li{padding:15px 0 15px 30px;border-bottom:1px solid var(--ligne);position:relative;font-size:16px}
.points li::before{content:"";position:absolute;left:0;top:25px;width:14px;height:1.5px;background:var(--ble-fonce)}
.encart{margin-top:30px;background:#fff;border-left:3px solid var(--ble);padding:20px 24px;font-size:16px;color:var(--doux);border-radius:0 6px 6px 0}
.encart b{color:var(--encre)}
.pages-site{margin-top:30px;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.pages-site div{background:#fff;border:1px solid var(--ligne);border-radius:6px;padding:16px 14px}
.pages-site b{display:block;font-size:15px}
.pages-site span{color:var(--doux);font-size:13.5px;line-height:1.45;display:block;margin-top:6px}

/* Ce qu'on ne fait pas */
.non-liste{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:56px;border-top:1px solid var(--trait)}
.non-liste div{padding:30px 30px 30px 0;border-bottom:1px solid var(--trait)}
.non-liste div+div{padding-left:30px;border-left:1px solid var(--trait)}
.non-liste h3{font-size:20px}
.non-liste p{color:var(--sur-nuit);font-size:15.5px;margin-top:10px}

/* Méthode détaillée */
.etapes-v{margin-top:20px}
.etape-v{display:grid;grid-template-columns:120px 1fr 1fr;gap:50px;padding:56px 0;border-top:1px solid var(--ligne)}
.etape-v .num{font-size:84px;font-weight:800;letter-spacing:-.06em;line-height:.85;color:transparent;-webkit-text-stroke:1.5px var(--ble-fonce)}
.etape-v h2{font-size:32px}
.etape-v .quand{display:inline-block;margin-top:14px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ble-fonce)}
.etape-v p{color:var(--doux);font-size:17px}
.etape-v p+p{margin-top:12px}
.besoins{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px}
.besoins>div{border:1px solid var(--trait);border-radius:10px;padding:36px}
.besoins h3{font-size:22px}
.besoins ul{list-style:none;margin-top:18px}
.besoins li{padding:12px 0;border-top:1px solid var(--trait);color:var(--sur-nuit);font-size:16px}

/* Tarifs */
.offres{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:60px}
.offre{background:var(--carbone);border:1px solid var(--trait);border-radius:10px;padding:44px 42px;display:flex;flex-direction:column;position:relative}
.offre.mise{border-color:var(--ble)}
.offre .tag{position:absolute;top:-13px;left:42px;background:var(--ble);color:var(--nuit);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:4px}
.offre h3{font-size:24px}
.offre .pour{color:var(--pierre);font-size:15px;margin-top:6px}
.offre .prix{display:flex;align-items:baseline;gap:8px;margin-top:34px}
.offre .prix b{font-size:72px;font-weight:800;letter-spacing:-.05em;line-height:1}
.offre .prix span{color:var(--sur-nuit);font-weight:600}
.offre .depart{margin-top:12px;color:var(--sur-nuit);font-size:16.5px}
.offre .depart b{color:var(--creme)}
.offre ul{list-style:none;margin:30px 0 34px;border-top:1px solid var(--trait)}
.offre li{padding:13px 0;border-bottom:1px solid var(--trait);color:var(--sur-nuit);font-size:15.5px;display:flex;justify-content:space-between;gap:20px}
.offre li b{color:var(--creme);font-weight:700;text-align:right}
.offre .btn{margin-top:auto}
.htva{color:var(--pierre);font-size:14px;margin-top:24px}
table.compare{width:100%;border-collapse:collapse;margin-top:44px;font-size:16px}
.compare th,.compare td{padding:18px 16px;text-align:left;border-bottom:1px solid var(--ligne)}
.compare thead th{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--pierre);border-bottom:1.5px solid var(--encre)}
.compare td:not(:first-child),.compare th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}
.compare tbody td:first-child{font-weight:700}
.compare .fort td{background:#fff;font-weight:800}
.inclus-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:0 50px;margin-top:40px;list-style:none;border-top:1px solid var(--ligne)}
.inclus-grille li{padding:16px 0 16px 30px;border-bottom:1px solid var(--ligne);position:relative}
.inclus-grille li::before{content:"";position:absolute;left:0;top:26px;width:14px;height:1.5px;background:var(--ble-fonce)}

/* À propos */
.principes{display:grid;grid-template-columns:1fr 1fr;gap:0 70px;margin-top:60px}
.principe{padding:34px 0;border-top:1px solid var(--ligne)}
.principe .n{font-weight:800;color:var(--ble-fonce);font-size:14px;letter-spacing:.08em}
.principe h3{font-size:24px;margin-top:10px}
.principe p{color:var(--doux);margin-top:10px;font-size:16.5px}
.nom-sillon{font-size:clamp(28px,3.2vw,40px);font-weight:800;letter-spacing:-.035em;line-height:1.2;max-width:900px}
.nom-sillon em{font-style:normal;color:var(--ble)}

/* FAQ */
.faq-groupe{display:grid;grid-template-columns:280px 1fr;gap:60px;padding:56px 0;border-top:1px solid var(--ligne)}
.faq-groupe:first-child{border-top:0;padding-top:0}
.faq-groupe h2{font-size:28px;position:sticky;top:110px}
details{border-bottom:1px solid var(--ligne)}
details:first-child{border-top:1.5px solid var(--encre)}
summary{list-style:none;cursor:pointer;padding:24px 50px 24px 0;font-weight:700;font-size:18.5px;letter-spacing:-.015em;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:28px;font-weight:500;color:var(--ble-fonce);transition:transform .2s}
details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
details p{color:var(--doux);padding:0 40px 26px 0;font-size:16.5px}

/* Contact */
.contact-grille{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(60px,8vw,140px)}
.gros-tel{display:block;font-size:clamp(40px,6vw,76px);font-weight:800;letter-spacing:-.05em;text-decoration:none;line-height:1;margin-top:10px}
.gros-tel:hover{color:var(--ble-fonce)}
.gros-mail{display:inline-block;font-size:clamp(22px,2.6vw,30px);font-weight:800;letter-spacing:-.03em;margin-top:14px;text-decoration:none;border-bottom:2px solid var(--ble)}
.canal{padding:40px 0;border-top:1px solid var(--ligne)}
.canal:first-child{border-top:1.5px solid var(--encre)}
.canal small{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--pierre)}
.canal p{color:var(--doux);margin-top:12px}
.aide{background:var(--nuit);color:var(--creme);border-radius:10px;padding:40px}
.aide h2{font-size:28px}
.aide ol{list-style:none;counter-reset:a;margin-top:22px}
.aide li{counter-increment:a;padding:16px 0 16px 44px;border-top:1px solid var(--trait);position:relative;color:var(--sur-nuit)}
.aide li::before{content:counter(a);position:absolute;left:0;top:14px;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--ble);color:var(--ble);font-weight:800;font-size:13px;display:grid;place-items:center}
.aide li b{color:var(--creme)}
.zone-liste{columns:3;margin-top:22px;color:var(--doux);font-size:15.5px;list-style:none}
.zone-liste li{padding:4px 0}

/* Pages légales */
.legal{padding:90px 0 110px}
.legal .cadre{max-width:860px}
.legal h2{font-size:24px;letter-spacing:-.02em;margin:46px 0 12px}
.legal p,.legal li{color:#33363C;font-size:16.5px}
.legal p+p{margin-top:10px}
.legal table{width:100%;border-collapse:collapse;margin-top:10px;font-size:15.5px;background:#fff}
.legal th,.legal td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--ligne);vertical-align:top}
.legal th{width:38%;font-weight:700}

/* Pied de page */
.pied{background:var(--nuit);color:var(--pierre);border-top:1px solid var(--trait);padding:80px 0 40px;font-size:15px}
.pied .haut{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.pied img{height:30px;width:auto}
.pied .accroche{color:var(--sur-nuit);margin-top:20px;max-width:300px}
.pied h4{color:var(--creme);font-size:14px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-bottom:18px}
.pied ul{list-style:none;display:grid;gap:10px}
.pied a{text-decoration:none;color:var(--sur-nuit)}
.pied a:hover{color:var(--creme)}
.pied .bas{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:70px;padding-top:26px;border-top:1px solid var(--trait);font-size:13.5px}

/* Barre d'appel mobile */
.barre-mobile{display:none}

@media (prefers-reduced-motion:reduce){.defile .piste{animation:none}}

@media (max-width:1060px){
  .menu{display:none}
  .burger{display:grid;place-items:center}
  .entete.ouvert .menu{display:flex;position:fixed;top:76px;left:0;right:0;bottom:0;background:var(--nuit);flex-direction:column;align-items:stretch;gap:0;padding:20px 32px;margin:0;overflow:auto}
  .entete.ouvert .menu a{font-size:26px;font-weight:800;letter-spacing:-.03em;color:var(--creme);padding:18px 0;border-bottom:1px solid var(--trait)}
  .entete.ouvert .menu a[aria-current]::after{display:none}
  .entete.ouvert .menu a[aria-current]{color:var(--ble)}
  .entete.ouvert .menu .btn{margin-top:30px;border:0;font-size:18px;padding:18px;color:var(--nuit)}
  .hero-bas,.constat,.duo,.interlocuteur,.contact-grille{grid-template-columns:minmax(0,1fr);gap:56px}
  .duo.inverse>:first-child{order:0}
  .liste-num a,.liste-num div.ligne{grid-template-columns:60px 1fr 30px}
  .liste-num p{grid-column:2}
  .liste-num a{row-gap:8px}
  .liste-num svg{grid-row:1;grid-column:3}
  .frise{grid-template-columns:1fr 1fr;row-gap:50px}
  .frise::before{display:none}
  .service{grid-template-columns:1fr;gap:26px}
  .pages-site{grid-template-columns:1fr 1fr 1fr}
  .etape-v{grid-template-columns:90px 1fr;gap:30px}
  .etape-v>div:last-child{grid-column:2}
  .offres{grid-template-columns:1fr}
  .pied .haut{grid-template-columns:1fr 1fr}
  .faq-groupe{grid-template-columns:1fr;gap:24px}
  .faq-groupe h2{position:static}
  .inclus-grille{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  body{font-size:16px}
  .cadre{padding:0 20px}
  .bloc{padding:80px 0}
  .entete .cadre{height:66px}
  .entete.ouvert .menu{top:66px;padding:10px 20px}
  .entete .logo img{height:27px}
  .hero{padding-top:56px}
  .hero .sillons-fond{width:420px;right:-210px;top:30px}
  .tete-page .sillons-fond{width:300px;right:-120px;opacity:.5}
  .hero-bas{margin-top:34px}
  .hero-bas p{font-size:18px}
  .actions .btn{width:100%}
  .defile{margin-top:60px}
  .chiffre{grid-template-columns:1fr;gap:6px;padding:24px 0}
  .chiffre b{font-size:56px}
  .liste-num h3{font-size:22px}
  .frise{grid-template-columns:1fr}
  .points,.besoins,.principes,.inclus-grille{grid-template-columns:1fr}
  .pages-site{grid-template-columns:1fr 1fr}
  .non-liste{grid-template-columns:1fr}
  .non-liste div+div{padding-left:0;border-left:0}
  .etape-v{grid-template-columns:1fr;gap:14px;padding:44px 0}
  .etape-v>div:last-child{grid-column:1}
  .etape-v .num{font-size:60px}
  .offre{padding:38px 26px}
  .offre .prix b{font-size:60px}
  .compare{font-size:14px}
  .compare th,.compare td{padding:14px 8px}
  .tete-page{padding:64px 0 60px}
  .tete-page .intro-txt{font-size:18px}
  .zone-liste{columns:2}
  .aide,.fiche-contact{padding:30px 24px}
  .appel{padding:96px 0 110px}
  .pied{padding-bottom:110px}
  .pied .haut{grid-template-columns:1fr}
  .barre-mobile{display:flex;gap:8px;position:fixed;left:10px;right:10px;bottom:10px;z-index:40;background:rgba(20,21,24,.95);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--trait);border-radius:10px;padding:6px}
  .barre-mobile .btn{flex:1;padding:14px 10px;font-size:15.5px}
  .entete .cadre>.btn{display:none}
}
.nuit+.appel{border-top:1px solid var(--trait)}
.hero .cadre,.tete-page .cadre,.appel .cadre{position:relative;z-index:1}

/* Visuel du hero : une recherche locale */
.scene{position:relative;max-width:470px;margin-left:auto;padding:30px 0 40px}
.maquette{width:min(330px,100%);margin:0 auto;background:#fff;color:#1B1D21;border-radius:40px;padding:18px 16px 22px;border:9px solid #0B0C0E;box-shadow:0 0 0 1px #34373D,0 40px 90px -30px rgba(0,0,0,.85)}
.m-statut{display:flex;justify-content:space-between;font-size:12px;font-weight:700;padding:0 8px 12px}
.m-recherche{display:flex;align-items:center;gap:10px;background:#F1F2F4;border-radius:999px;padding:11px 16px;font-size:14.5px;font-weight:600}
.m-recherche svg{width:16px;height:16px;color:#5A5F67;flex:none}
.m-onglets{display:flex;gap:16px;font-size:12.5px;color:#6B7079;padding:14px 6px 10px;border-bottom:1px solid #ECEDEF}
.m-onglets b{color:#1B1D21;border-bottom:2px solid #1B1D21;padding-bottom:8px;margin-bottom:-11px}
.r{padding:16px 6px;border-bottom:1px solid #ECEDEF}
.r.vous{background:#FBF6EC;border:1.5px solid var(--ble);border-radius:14px;padding:14px 13px;margin:14px 0 4px}
.r-haut{display:flex;flex-direction:column}
.r-nom{font-weight:800;font-size:16.5px;letter-spacing:-.02em}
.r-site{font-size:11.5px;color:#2E6B45;font-weight:600}
.r-note{font-size:12.5px;color:#5A5F67;margin-top:6px}
.r-note b{color:#1B1D21}
.r-note .etoiles{color:#E0A417;letter-spacing:1px}
.r-info{font-size:12.5px;color:#5A5F67;margin-top:2px}
.r-info em{font-style:normal;color:#2E6B45;font-weight:700}
.r-btns{display:flex;gap:6px;margin-top:12px}
.r-btns span{display:inline-flex;align-items:center;gap:5px;border:1px solid #D7D9DD;border-radius:999px;padding:6px 10px;font-size:11.5px;font-weight:700;color:#1B1D21}
.r-btns span.plein{background:var(--nuit);border-color:var(--nuit);color:var(--creme)}
.r-btns svg{width:12px;height:12px}
.r.fantome i{display:block;height:9px;border-radius:5px;background:#ECEDEF;margin:7px 0}
.r.fantome i:first-child{height:12px;background:#E2E4E7}
.bulle{position:absolute;display:flex;align-items:center;gap:12px;background:rgba(30,32,36,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--trait2);border-radius:14px;padding:13px 18px 13px 13px;box-shadow:0 20px 40px -15px rgba(0,0,0,.7);color:var(--creme)}
.bulle b{display:block;font-size:14.5px}
.bulle small{color:var(--pierre);font-size:12.5px}
.pastille-ble{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--ble);color:var(--nuit);flex:none}
.pastille-ble svg{width:18px;height:18px}
.b1{left:-70px;top:57%}
.b2{right:-40px;bottom:6%}

/* Sans site / avec un site */
.avant-apres{display:grid;grid-template-columns:1fr 1fr;margin-top:64px;border-top:1.5px solid var(--encre)}
.colonne{padding:40px clamp(24px,4vw,60px) 10px 0}
.colonne+.colonne{padding-left:clamp(24px,4vw,60px);border-left:1px solid var(--ligne)}
.colonne h3{font-size:24px}
.colonne ul{list-style:none;margin-top:20px}
.colonne li{padding:16px 0 16px 34px;border-top:1px solid var(--ligne);position:relative;font-size:16.5px}
.sans li{color:var(--pierre)}
.sans li::before,.avec li::before{position:absolute;left:0;top:15px;font-weight:800}
.sans li::before{content:"×";color:#B4553F;font-size:20px;top:11px}
.avec li::before{content:"";width:16px;height:1.5px;background:var(--ble-fonce);top:27px}
.avec h3 .pt{color:var(--ble-fonce)}

@media (max-width:1060px){
  .scene{margin:0 auto}
  .b1{left:0}
  .b2{right:0}
}
@media (max-width:680px){
  .scene{padding:10px 0 30px}
  .bulle{padding:10px 14px 10px 10px}
  .bulle b{font-size:13.5px}
  .bulle small{font-size:11.5px}
  .pastille-ble{width:32px;height:32px}
  .b1{left:-6px;top:58%}
  .b2{right:-6px;bottom:3%}
  .avant-apres{grid-template-columns:1fr}
  .colonne{padding:30px 0 0}
  .colonne+.colonne{padding-left:0;border-left:0;margin-top:20px}
}
.legal th,.legal td{overflow-wrap:anywhere}
@media (max-width:680px){.legal table,.legal tbody,.legal tr,.legal th,.legal td{display:block;width:100%}.legal th{border-bottom:0;padding-bottom:2px}.legal td{padding-top:0}}
.r-btns{flex-wrap:wrap}.scene,.maquette{min-width:0}
