:root{
  --bg:#EEEDEA;
  --ink:#111111;
  --dark:#141311;
  --white:#FFFFFF;
  --line:rgba(17,17,17,.45);
  --line-light:rgba(238,237,234,.45);
}
*{margin:0;padding:0;box-sizing:border-box}
body{
  background:var(--bg);color:var(--ink);
  font-family:"Instrument Sans",-apple-system,"Segoe UI",Arial,sans-serif;
  font-size:1.0625rem;font-weight:500;line-height:1.6;
}
h1,h2,h3{font-weight:500;line-height:1.08;letter-spacing:-.01em}
h1{font-size:clamp(2.7rem,6.4vw,4.8rem);line-height:1.04}
h2{font-size:clamp(2.1rem,4.6vw,3.2rem)}
h3{font-size:1.5rem;font-weight:600}
em{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:500}
p{max-width:64ch}
a{color:var(--ink);text-underline-offset:3px}
.shell{max-width:1240px;margin:0 auto;padding:0 24px}
/* bouton aligne sur le gabarit ArchScale : 48 px de haut, graisse 500,
   fond brun fonce plutot que noir pur */
.btn{display:inline-flex;align-items:center;gap:10px;background:#413936;color:var(--bg);font-weight:500;font-size:1rem;line-height:1.2;text-decoration:none;border-radius:1600px;padding:14px 22px;transition:background .25s ease}
.btn::after{content:"→";font-size:.92em;opacity:.8}
.btn:hover{background:#2E2724}
.btn.dark{background:#413936;color:var(--bg)}
.btn.light{background:var(--bg);color:#141311}
.btn.light:hover{background:#fff}
nav.main .btn{padding:11px 18px;font-size:.95rem}
.btn::after{content:"→"}
.btn.dark{background:var(--ink);color:var(--bg)}
.btn:hover{transform:translateY(-1px)}
.kicker{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.9rem;font-weight:600;letter-spacing:.02em;
  border:1px solid var(--line);border-radius:100px;padding:7px 18px;
}
.hero{
  position:relative;min-height:100vh;display:flex;flex-direction:column;
  background:var(--dark) url('https://images.unsplash.com/photo-1639162906614-0603b0ae95fd?q=80&w=2000&auto=format&fit=crop') center/cover;
}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(10,9,7,.55),rgba(10,9,7,.28) 45%,rgba(10,9,7,.6))}
header.site{position:relative;z-index:2;padding:22px 0}
header.site .shell{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.logo{font-weight:700;font-size:1.3rem;color:var(--bg);text-decoration:none;letter-spacing:-.01em}
.logo sup{font-size:.6em}
nav.main{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
nav.main a{color:var(--bg);text-decoration:none;font-weight:600;font-size:1rem}
nav.main a:hover{opacity:.85}
nav.main a.btn{color:var(--ink)}
.hero .center{
  position:relative;z-index:1;flex:1;display:flex;flex-direction:column;
  align-items:center;justify-content:flex-end;text-align:center;
  padding:0 24px 88px;gap:28px;
}
.hero .tagchip{
  background:rgba(238,237,234,.16);border:1px solid var(--line-light);
  color:var(--bg);border-radius:100px;padding:8px 20px;font-weight:600;font-size:.95rem;
  backdrop-filter:blur(4px);
}
.hero h1{color:var(--bg);max-width:17ch}
.hero p.lead{color:var(--bg);font-size:1.15rem;max-width:52ch}
section{padding:120px 0}
.intro .shell{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;align-items:start}
.intro h2{margin-top:18px}
.intro .right p{font-size:1.35rem;line-height:1.45;max-width:30em}
.intro .right p + p{font-size:1.0625rem;margin-top:20px;max-width:60ch}
.intro .right .btn{margin-top:30px}
.stats{padding-top:0}
.stats .shell{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;border-top:1px solid var(--line)}
.stat{padding:36px 28px;border-bottom:1px solid var(--line)}
.stat b{display:block;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:600;letter-spacing:-.02em}
.stat span{font-size:1rem}
.stat + .stat{border-left:1px solid var(--line)}
.sec-head{display:flex;flex-direction:column;gap:18px;margin-bottom:56px;align-items:flex-start}
.list{border-top:1px solid var(--line)}
.row{
  display:grid;grid-template-columns:80px 1.2fr 1.6fr auto;gap:28px;align-items:center;
  padding:40px 8px;border-bottom:1px solid var(--line);
}
.row .num{font-family:Lora,serif;font-style:italic;font-size:1.6rem}
.row h3{font-size:1.7rem;font-weight:500}
.row p{font-size:1.05rem}
.row .go{font-weight:600;white-space:nowrap}
.coverage{background:var(--dark);color:var(--bg)}
.coverage h2,.coverage p{color:var(--bg)}
.coverage .kicker{border-color:var(--line-light);color:var(--bg)}
.coverage .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.cov{
  position:relative;border-radius:20px;overflow:hidden;min-height:300px;
  display:flex;align-items:flex-end;padding:24px;
}
.cov::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(10,9,7,0) 40%,rgba(10,9,7,.72))}
.cov b{position:relative;font-size:1.25rem;font-weight:600;color:var(--white)}
.cov.c1{background:url('https://images.unsplash.com/photo-1588193263421-389147656e41?q=80&w=1200&auto=format&fit=crop') center/cover}
.cov.c2{background:url('https://images.unsplash.com/photo-1647378507803-10590ec03a8e?q=80&w=1200&auto=format&fit=crop') center/cover}
.cov.c3{background:url('https://images.unsplash.com/photo-1544161515-4ab6ce6db874?q=80&w=1200&auto=format&fit=crop') center/cover}
.cov.c4{background:url('https://images.unsplash.com/photo-1519823551278-64ac92734fb1?q=80&w=1200&auto=format&fit=crop') center/cover}
.coverage .zones{margin-top:34px;display:flex;gap:12px;flex-wrap:wrap}
.coverage .zones span{border:1px solid var(--line-light);border-radius:100px;padding:8px 20px;font-weight:600;font-size:.95rem}
.note{padding:140px 0;text-align:center}
.note .shell{max-width:900px;display:flex;flex-direction:column;align-items:center;gap:26px}
.note blockquote{font-size:clamp(1.5rem,3.2vw,2.2rem);line-height:1.3;font-weight:500}
.note blockquote em{font-size:1em}
.note .src{font-weight:600;font-size:1rem}
.rates .card{
  background:var(--white);border-radius:24px;padding:8px 36px;max-width:720px;
}
.rates table{width:100%;border-collapse:collapse;font-size:1.05rem}
.rates td{padding:22px 4px;border-bottom:1px solid var(--line)}
.rates tr:last-child td{border-bottom:0}
.rates td:last-child{text-align:right;font-weight:700;white-space:nowrap}
.rates .fine{margin-top:22px;font-size:.975rem}
.cases .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.c-card{background:var(--white);border-radius:20px;padding:30px 32px}
.c-card h3{margin-bottom:10px}
.c-card p{font-size:1rem}
.who .shell{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;align-items:start}
.who .panel{background:var(--white);border-radius:24px;padding:38px 40px}
.who .panel p + p{margin-top:16px}
.who .panel .btn{margin-top:26px}
.faq .item{border-bottom:1px solid var(--line)}
.faq .item:first-of-type{border-top:1px solid var(--line)}
.faq details{padding:26px 8px}
.faq summary{font-size:1.3rem;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq summary::after{content:"+";font-weight:500;font-size:1.5rem}
.faq details[open] summary::after{content:"−"}
.faq details p{margin-top:16px;font-size:1.05rem}
.final{
  position:relative;min-height:70vh;display:flex;align-items:center;justify-content:center;
  background:var(--dark) url('https://images.unsplash.com/photo-1696841212541-449ca29397cc?q=80&w=2000&auto=format&fit=crop') center/cover;
  text-align:center;padding:100px 24px;
}
.final::before{content:"";position:absolute;inset:0;background:rgba(10,9,7,.62)}
.final .inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:28px}
.final h2{color:var(--bg);max-width:18ch}
.final p{color:var(--bg);font-size:1.1rem}
footer{background:var(--dark);color:var(--bg);padding:72px 0 40px}
footer a{color:var(--bg)}
footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
footer h3{font-size:1.05rem;font-weight:600;margin-bottom:14px}
footer p{font-size:.975rem}
footer ul{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:.975rem}
footer .bottom{border-top:1px solid var(--line-light);margin-top:48px;padding-top:22px;font-size:.9rem;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
@media (max-width:900px){
  .intro .shell,.who .shell{grid-template-columns:1fr}
  .row{grid-template-columns:1fr;gap:10px}
  .stat + .stat{border-left:0}
  footer .cols{grid-template-columns:1fr}
  section{padding:80px 0}
}



/* logo MMM */
.logo{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-weight:700;letter-spacing:-.01em}
.logo .mark{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:42px;height:34px;border-radius:10px;
  background:var(--bg);color:var(--dark);
  font-size:.86rem;font-weight:700;letter-spacing:.1em;line-height:1;padding:0 9px;
}
.logo .word{font-size:.97rem;font-weight:600;letter-spacing:-.01em}
header.site.clair .logo .mark{background:var(--ink);color:var(--bg)}
@media (max-width:600px){.logo .word{display:none}}

.logo{display:inline-flex;align-items:center;gap:13px;text-decoration:none;color:inherit}
.logo .m{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;font-size:2.4rem;line-height:.78}
.logo .barre{width:1px;height:32px;background:currentColor;opacity:.42}
.logo .nom{font-family:"Cormorant Garamond",Georgia,serif;font-size:.98rem;letter-spacing:.17em;text-transform:uppercase;line-height:1.3;font-weight:500}
@media (max-width:700px){.logo .barre,.logo .nom{display:none}}

.hero .logo .nom{font-weight:600;text-shadow:0 1px 10px rgba(10,9,7,.55)}
.hero .logo .m{text-shadow:0 1px 10px rgba(10,9,7,.5)}
.hero::before{background:linear-gradient(rgba(10,9,7,.66),rgba(10,9,7,.3) 45%,rgba(10,9,7,.62))}

section{padding:152px 0}
.sec-head{margin-bottom:68px}
.kicker{font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;opacity:.75}
.card,.c-card,.vcard,.rates .card,.cov,.m-card{border-radius:6px}
.stat b{font-weight:500;letter-spacing:-.03em;font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(2.8rem,5vw,4rem)}
.stat span{opacity:.82}
.hero .center{gap:30px}
.hero p.lead{font-size:1.18rem;line-height:1.55;opacity:.92}
.sec-head p{opacity:.86;font-size:1.06rem}
@media (max-width:860px){section{padding:92px 0}.sec-head{margin-bottom:44px}}

/* ===============================================================
   Ajouts propres aux pages françaises
   =============================================================== */

/* en-tête sur fond clair, pour les pages intérieures */
header.site.clair{position:sticky;top:0;z-index:50;background:rgba(238,237,234,.94);backdrop-filter:blur(10px)}
header.site.clair .logo,header.site.clair nav.main a{color:var(--ink)}
header.site.clair nav.main a.btn{background:#413936;color:var(--bg)}

/* hero clair : pas de photo, pas de voile, texte à gauche */
.hero.clair{min-height:auto;background:none;padding:72px 0 0;display:block}
.hero.clair::before{display:none}
.hero.clair h1,.hero.clair p.lead{color:var(--ink)}

/* cartes cliquables */
.cov[href],.c-card[href],.row[href]{text-decoration:none;color:inherit}
.c-card[href]{display:block}

/* grilles : jamais de colonne plus large que l'écran */
.grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}
footer .cols{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr))}

/* liste à puces */
.plain{list-style:none;display:flex;flex-direction:column;gap:13px}
.plain li{display:flex;gap:13px;align-items:flex-start;max-width:64ch}
.plain li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.5;margin-top:10px}
.coverage .plain li::before{background:var(--bg)}


/* ---- titres en Cormorant Garamond, et passe haut de gamme ---- */
h1,h2,h3,h4{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;letter-spacing:-.005em}
h1{font-size:clamp(2.7rem,6.4vw,4.8rem);line-height:1.03}
h2{font-size:clamp(2.1rem,4.6vw,3.2rem);line-height:1.06}
h3{font-size:1.5rem;line-height:1.18;font-weight:600}
em{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:500}
h1,h2{text-wrap:balance}

/* de l'air, premier marqueur du haut de gamme */
section{padding:148px 0}
.sec-head{margin-bottom:64px}
.kicker{font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;opacity:.75}
.card,.c-card,.vcard,.rates .card,.cov,.m-card{border-radius:6px}
.stat b{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:clamp(2.8rem,5vw,4rem);letter-spacing:-.02em}
.stat span{opacity:.82}
.hero p.lead{font-size:1.18rem;line-height:1.55}
.sec-head p{opacity:.86;font-size:1.06rem}
@media (max-width:860px){section{padding:88px 0}.sec-head{margin-bottom:42px}}


/* ---------------------------------------------------------------
   En-tête propre : sticky, fond flouté, filet d'un cheveu
   --------------------------------------------------------------- */
header.site,header.site.clair{
  position:sticky;top:0;z-index:60;
  background:rgba(238,237,234,.78);
  backdrop-filter:blur(18px) saturate(150%);
  -webkit-backdrop-filter:blur(18px) saturate(150%);
  border-bottom:1px solid rgba(17,17,17,.1);
  padding:16px 0;
}
header.site .logo,header.site nav.main a,
header.site.clair .logo,header.site.clair nav.main a{color:var(--ink)}
header.site .logo .nom,header.site .logo .m{text-shadow:none}
nav.main{gap:32px}
nav.main a{font-size:.95rem;font-weight:600}

/* le hero commence sous l'en-tête, plus derrière */
.hero{min-height:88vh}
.hero .center{padding:0 24px 96px}

/* ---------------------------------------------------------------
   Bouton d'appel à l'action : blanc
   --------------------------------------------------------------- */
.btn,.btn.dark{
  background:#FFFFFF;color:#141311;
  font-weight:500;font-size:1rem;
  border-radius:1600px;padding:14px 22px;
  box-shadow:0 1px 2px rgba(18,16,15,.1);
}
.btn:hover,.btn.dark:hover{background:#F6F4F1}
.btn.light{background:#FFFFFF;color:#141311}

/* ---------------------------------------------------------------
   Widget WhatsApp flottant : pastille ronde, vert profond
   --------------------------------------------------------------- */
.wa-float{
  position:fixed;right:24px;bottom:24px;z-index:200;
  width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:#0E5A4A;color:#fff;text-decoration:none;
  box-shadow:0 6px 20px rgba(18,16,15,.22);
  transition:transform .2s ease, box-shadow .2s ease;
}
.wa-float:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(18,16,15,.3)}
.wa-float svg{flex:none}
.wa-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:600px){.wa-float{right:18px;bottom:18px;width:52px;height:52px}}


/* bascule de langue avec drapeau */
.langue{display:inline-flex;align-items:center;gap:7px}
.langue svg{border-radius:2px;display:block;box-shadow:0 0 0 1px rgba(17,17,17,.12)}
.langue span{font-size:.9rem;font-weight:600;letter-spacing:.04em}

/* accroche sous le titre */
.hero .accroche{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-style:italic;font-weight:500;
  font-size:clamp(1.3rem,2.4vw,1.7rem);
  line-height:1.3;color:var(--bg);max-width:30ch;margin:0;
}
.hero.clair .accroche{color:var(--ink)}
