
:root{
  --bg:#f7fbff;--bg2:#eef6ff;--panel:#ffffff;--panel2:#f8fbff;--text:#12304a;
  --muted:#5f7690;--line:#d9e6f3;--accent:#2c9fe6;--accent2:#7fdcc6;--warn:#f2c14d;
  --soft-blue:#eef7ff;--soft-cyan:#edfdfa;--soft-mint:#f1fcf7;--soft-sky:#f4f8ff;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:
linear-gradient(180deg,#fbfdff 0%,#f5f9fe 30%,#eef5fc 100%);color:var(--text);line-height:1.6}
a{color:#157cbf;text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.wrap{width:min(1160px,calc(100% - 28px));margin:0 auto}
.topbar{background:linear-gradient(90deg,#f1f8ff 0%,#eefaf7 100%);border-bottom:1px solid var(--line);font-size:14px}
.topbar .wrap{display:flex;justify-content:space-between;gap:16px;padding:9px 0;color:var(--muted);flex-wrap:wrap}
.topbar strong{color:var(--text)}
.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(90deg,rgba(232,243,255,.98) 0%,rgba(239,248,255,.98) 52%,rgba(232,248,242,.98) 100%);backdrop-filter:blur(14px);border-bottom:1px solid #cfe0ee;box-shadow:0 12px 34px rgba(18,48,74,.06)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px;color:var(--text)}
.brand-badge{width:50px;height:50px;border-radius:16px;background:linear-gradient(135deg,var(--accent),var(--accent2));
display:grid;place-items:center;color:#ffffff;font-weight:800;box-shadow:0 14px 34px rgba(26,160,232,.18)}
.brand strong{display:block;font-size:18px;letter-spacing:.3px}
.brand small{display:block;color:var(--muted);font-size:12px}
.nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 10px;border-radius:18px;background:linear-gradient(135deg,#deefff 0%,#eaf6ff 48%,#e5f8f1 100%);border:1px solid #cfe1ef;box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 8px 22px rgba(18,48,74,.05)}
.nav a{font-size:14px;font-weight:700;color:var(--text);padding:10px 13px;border-radius:12px;background:linear-gradient(180deg,#ffffff 0%,#f1f8ff 100%);border:1px solid #d2e2ef;box-shadow:0 4px 12px rgba(18,48,74,.04)}
.nav a:hover{text-decoration:none;background:linear-gradient(180deg,#ffffff 0%,#edf7ff 100%);border-color:#bfd5e7}
.nav-toggle{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:15px;
background:linear-gradient(135deg,var(--accent),#54bdf2);color:#fff;font-weight:800;border:none;box-shadow:0 14px 34px rgba(26,160,232,.18)}
.btn:hover{text-decoration:none;filter:brightness(1.03)}
.btn.outline{background:#fff;color:var(--text);border:1px solid #bdd2e5;box-shadow:none}
.hero{padding:68px 0 34px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:stretch}
.eyebrow{display:inline-block;padding:7px 11px;border-radius:999px;border:1px solid #c8def0;background:#f3f9ff;color:#157cbf;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}
h1{font-size:58px;line-height:1.03;margin:18px 0 16px;max-width:12ch;color:#0f2f48}
.hero p.lead{font-size:20px;color:#38556f;max-width:58ch}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0 20px}
.trust-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.trust-chip{padding:10px 12px;border-radius:14px;background:#ffffff;border:1px solid #d8e5f1;color:#33506a;box-shadow:0 8px 22px rgba(18,48,74,.04)}
.panel,.card,.step,.info-block,.cta-box{background:linear-gradient(180deg,var(--panel),var(--panel2));border:1px solid #d7e6f1;border-radius:24px;box-shadow:0 16px 36px rgba(18,48,74,.06), inset 0 1px 0 rgba(255,255,255,.9)}
.panel{padding:26px;background:linear-gradient(180deg,#f7fbff 0%,#eef8ff 100%)}
.panel h2{font-size:30px}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}
.stat{padding:16px;border-radius:18px;background:#fbfdff;border:1px solid #e1ebf5}
.stat strong{display:block;font-size:24px}
.site-header + main section{padding:30px 0}
section{padding:26px 0}
section + section{margin-top:8px}
h2{font-size:36px;line-height:1.12;margin:0 0 14px;color:#12304a}
h3{font-size:22px;margin:0 0 10px;color:#12304a}
p{margin:0 0 14px}
.grid-2,.grid-3,.grid-4,.steps,.city-grid,.footer-grid{display:grid;gap:18px}
.grid-2{grid-template-columns:repeat(2,1fr)} .grid-3{grid-template-columns:repeat(3,1fr)} .grid-4,.steps{grid-template-columns:repeat(4,1fr)}
.card,.step,.info-block,.cta-box{padding:24px}
.card ul,.check-list,.bullet-list{padding-left:20px;margin:0}
.section-alt{background:linear-gradient(180deg,rgba(255,255,255,.72) 0%,rgba(246,251,255,.78) 100%);border-top:1px solid #dfeaf3;border-bottom:1px solid #dfeaf3}
.icon{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;color:#fff;font-weight:800;margin-bottom:12px}
.step .num{width:42px;height:42px;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;color:#fff;font-weight:800;margin-bottom:12px}
.cta-box{display:flex;justify-content:space-between;gap:20px;align-items:center;background:linear-gradient(180deg,#f3faff 0%,#edf8ff 70%,#effcf9 100%)}
.notice{padding:14px 16px;border-left:4px solid var(--warn);background:#fff8e7;border-radius:0 18px 18px 0;color:#6b5200}
.table-like{display:grid;gap:10px}
.row{display:grid;grid-template-columns:220px 1fr;padding:14px 0;border-top:1px solid #e2ebf3}
.row:first-child{border-top:none}
.city-grid{grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:18px 0 0}
.city-grid a{display:block;padding:16px;border-radius:18px;background:#ffffff;border:1px solid #dbe8f3;min-height:100%;box-shadow:0 12px 30px rgba(18,48,74,.05)}
.page-hero{padding:42px 0 16px}
.page-hero h1{font-size:44px;max-width:none}
.breadcrumbs{font-size:14px;color:var(--muted);margin-bottom:10px}
.site-footer{margin-top:40px;padding:34px 0;background:linear-gradient(90deg,#e6f2ff 0%,#eef8ff 52%,#e8f7f1 100%);border-top:1px solid #cfe0ee}
.footer-grid{grid-template-columns:1.1fr .9fr .9fr}
.footer-grid p,.footer-grid a{color:#31506b}
.small{font-size:14px;color:var(--muted)}

/* cartes légèrement colorées avec blanc entre les blocs */
.grid-2,.grid-3,.grid-4,.steps,.city-grid,.footer-grid,.stats{align-items:stretch}
.grid-2 > *, .grid-3 > *, .grid-4 > *, .steps > *, .stats > *{height:100%}
.grid-2 > *:nth-child(4n+1), .grid-3 > *:nth-child(4n+1), .grid-4 > *:nth-child(4n+1), .steps > *:nth-child(4n+1){background:linear-gradient(180deg,#ffffff 0%, var(--soft-blue) 100%)}
.grid-2 > *:nth-child(4n+2), .grid-3 > *:nth-child(4n+2), .grid-4 > *:nth-child(4n+2), .steps > *:nth-child(4n+2){background:linear-gradient(180deg,#ffffff 0%, var(--soft-cyan) 100%)}
.grid-2 > *:nth-child(4n+3), .grid-3 > *:nth-child(4n+3), .grid-4 > *:nth-child(4n+3), .steps > *:nth-child(4n+3){background:linear-gradient(180deg,#ffffff 0%, var(--soft-mint) 100%)}
.grid-2 > *:nth-child(4n+4), .grid-3 > *:nth-child(4n+4), .grid-4 > *:nth-child(4n+4), .steps > *:nth-child(4n+4){background:linear-gradient(180deg,#ffffff 0%, var(--soft-sky) 100%)}
.city-grid a:nth-child(4n+1){background:linear-gradient(180deg,#ffffff 0%, var(--soft-blue) 100%)}
.city-grid a:nth-child(4n+2){background:linear-gradient(180deg,#ffffff 0%, var(--soft-cyan) 100%)}
.city-grid a:nth-child(4n+3){background:linear-gradient(180deg,#ffffff 0%, var(--soft-mint) 100%)}
.city-grid a:nth-child(4n+4){background:linear-gradient(180deg,#ffffff 0%, var(--soft-sky) 100%)}

@media (max-width:980px){
  .hero-grid,.grid-3,.grid-4,.steps,.city-grid,.footer-grid{grid-template-columns:1fr 1fr}
  h1{font-size:46px}
  .nav{display:none}
  .nav-toggle{display:block}
  .site-header.open .nav{display:grid;position:absolute;left:14px;right:14px;top:78px;padding:18px;border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#f2f9ff 100%);border:1px solid #dbe8f3;box-shadow:0 18px 45px rgba(18,48,74,.08)}
}
@media (max-width:680px){
  .wrap{width:min(100% - 20px,1160px)}
  .hero{padding-top:36px}
  .hero-grid,.grid-2,.grid-3,.grid-4,.steps,.city-grid,.footer-grid,.stats,.cta-box{grid-template-columns:1fr;display:grid}
  .row{grid-template-columns:1fr}
  h1{font-size:34px}
  .page-hero h1{font-size:32px}
  .actions .btn{width:100%}
}

.footer-grid > div{padding:22px;border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#f2f8ff 100%);border:1px solid #d7e6f1;box-shadow:0 12px 30px rgba(18,48,74,.05)}
.topbar{box-shadow:inset 0 -1px 0 rgba(255,255,255,.7)}
.grid-2,.grid-3,.grid-4,.steps,.city-grid,.footer-grid{gap:22px}
.card,.step,.info-block,.cta-box,.panel,.stat,.city-grid a{position:relative}
.card::before,.step::before,.info-block::before,.cta-box::before,.panel::before,.stat::before,.city-grid a::before,.footer-grid > div::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75)}
.stat{background:linear-gradient(180deg,#ffffff 0%,#f3f9ff 100%);box-shadow:0 10px 24px rgba(18,48,74,.04)}
.section-alt{background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);border-top:1px solid #dbe8f3;border-bottom:1px solid #dbe8f3}
.wrap > h2{margin-bottom:18px}
.wrap > p + .grid-2,.wrap > p + .grid-3,.wrap > p + .grid-4,.wrap > p + .city-grid{margin-top:14px}


.faq-list{display:grid;gap:16px}.faq-item{padding:22px;border-radius:22px;background:linear-gradient(180deg,#ffffff 0%,#f4f9ff 100%);border:1px solid #d7e6f1;box-shadow:0 12px 30px rgba(18,48,74,.05)}
.faq-item h3{font-size:20px;margin-bottom:8px}.seo-links{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.seo-links a{display:block;padding:16px;border-radius:18px;background:linear-gradient(180deg,#ffffff 0%,#f5fbff 100%);border:1px solid #dbe8f3;box-shadow:0 10px 24px rgba(18,48,74,.04);font-weight:700}
@media (max-width:980px){.seo-links{grid-template-columns:1fr 1fr}}@media (max-width:680px){.seo-links{grid-template-columns:1fr}}
