:root{--navy:#12307a;--navy2:#0b2259;--green:#2e7d32;--green2:#1f8a3b;--red:#d7263d;--ink:#14213d;--mut:#5b6785;--bg:#f4f6fb;--card:#fff;--line:#e3e8f3;--r:18px;--sh:0 6px 22px rgba(18,48,122,.10);--f:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--f);color:var(--ink);background:var(--bg);line-height:1.55;padding-bottom:70px}
img{max-width:100%;height:auto}a{color:var(--navy)}
.wrap{width:min(1120px,100% - 32px);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:10px;z-index:100}.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid #ffb703;outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.hp{position:absolute!important;left:-9999px;opacity:0;height:0;width:0}
/* header */
.top{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 1px 0 var(--line)}
.bar{display:flex;align-items:center;gap:12px;padding:10px 0}
.logo{display:block;line-height:0}.logo img{display:block}
.phone{margin-left:auto;display:flex;align-items:center;gap:8px;text-decoration:none;color:#fff;background:linear-gradient(180deg,#2a52c9,#12307a);border-radius:999px;padding:6px 14px 6px 8px;box-shadow:0 4px 12px rgba(18,48,122,.35)}
.phone svg{background:#fff;color:var(--navy);border-radius:50%;padding:6px;width:30px;height:30px}
.phone span{display:flex;flex-direction:column;line-height:1.1}.phone b{font-size:1.05rem;letter-spacing:.2px}.phone small{font-size:.6rem;opacity:.9}
.burger{background:none;border:0;padding:10px;cursor:pointer;display:grid;gap:6px}.burger i{display:block;width:28px;height:3px;background:var(--navy);border-radius:2px}
.menu{background:#fff;border-top:1px solid var(--line);box-shadow:var(--sh)}.menu .wrap{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:2px;padding:10px 0}
.menu a{padding:10px 8px;text-decoration:none;font-weight:600;border-radius:8px}.menu a:hover{background:var(--bg)}
@media(max-width:520px){.phone small{display:none}.logo img{width:120px;height:auto}}
/* hero */
.hero{padding:22px 0 10px;background:linear-gradient(180deg,#e9eefb 0%,#f4f6fb 100%)}
.hero-s{padding:18px 0 22px}
.hero h1{font-size:clamp(1.7rem,4.5vw,2.7rem);line-height:1.12;margin:.4em 0 .3em;color:var(--navy);font-weight:800;letter-spacing:-.5px}
.hero h1 em{font-style:normal;color:var(--green)}
.lead-p{font-size:1.08rem;color:#26355e;max-width:62ch}
.grid2{display:grid;gap:26px;align-items:start}@media(min-width:900px){.grid2{grid-template-columns:1.25fr .95fr}}
.hero.home{background:radial-gradient(900px 400px at 85% -10%,#dfe8ff,transparent 60%),radial-gradient(700px 400px at -10% 30%,#e2f3e5,transparent 60%),linear-gradient(180deg,#eef2fc,#f4f6fb);padding-bottom:26px}
.toprow{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.b45{display:flex;align-items:center;gap:10px;color:#a8801f}.b45 b{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;border:3px double #c9a227;font-size:1.7rem;color:#b8901f;background:#fffaf0}
.b45 span{font-size:.82rem;font-weight:700;line-height:1.2;color:#b8901f}
.switch{display:flex;background:#fff;border:2px solid #d9b94b;border-radius:999px;overflow:hidden;box-shadow:var(--sh)}
.switch a,.switch span{padding:10px 18px;font-weight:700;text-decoration:none;color:#7a5c10}.switch .on{background:linear-gradient(180deg,#f7e3a1,#e8c660)}
.tag{font-size:1.15rem;color:var(--navy);margin:.2em 0 1em}
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(min-width:520px){.tiles{grid-template-columns:repeat(4,1fr)}}@media(min-width:900px){.tiles{grid-template-columns:repeat(5,1fr)}}
.tile{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:14px 8px;min-height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-decoration:none;color:#0b1330;gap:6px;border:1px solid rgba(255,255,255,.7);transition:transform .15s}
.tile:hover{transform:translateY(-3px)}.tile .ic{font-size:2rem;line-height:1;filter:saturate(.9)}.tile b{font-size:1rem;line-height:1.1;letter-spacing:-.3px}
.tiles.ex{margin-top:12px;grid-template-columns:repeat(3,1fr)}.tile.sm{min-height:84px;flex-direction:row;gap:8px;padding:10px}.tile.sm .ic{font-size:1.5rem}.tile.sm b{font-size:.92rem}
.cta2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}
.big{background:#fff;border:0;border-radius:var(--r);box-shadow:var(--sh);padding:18px 8px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;font:inherit}
.big .ic2{font-size:2.6rem;line-height:1}.big b{font-size:clamp(1.3rem,4.5vw,2rem);line-height:1.05;text-align:center;font-weight:800;letter-spacing:-.5px}
.big.rdv b{color:#111}.big.rdv em{color:var(--red);font-style:normal;display:block}.big.tarif b{color:var(--green)}.big.tarif em{font-style:normal;display:block}
.big i{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;font-style:normal}.big u{text-decoration:none;font-size:.68rem;font-weight:700;padding:5px 9px;border-radius:999px;border:1.5px solid #e3a1a9;color:#9b1c2c}
.big.tarif u{border-color:#a8d8b0;color:#1e6b2c;background:#eaf7ec}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:999px;border:2px solid var(--navy);background:#fff;color:var(--navy);font:700 1rem var(--f);cursor:pointer;text-decoration:none;min-height:48px}
.btn.pri{background:linear-gradient(180deg,#2e9d4a,#1f7d37);border-color:#1f7d37;color:#fff;box-shadow:0 6px 16px rgba(31,125,55,.35)}
.btn.ghost{border-color:var(--line);background:transparent}.btn:hover{filter:brightness(1.05)}
.ctas{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 10px}
.trust{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:8px 0 0}.trust li{background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:.84rem;font-weight:600;color:#2c4a2f}
.trust li:before{content:"✓ ";color:var(--green)}
/* content */
.content{padding:18px 0 40px}
.blk{background:var(--card);border-radius:var(--r);box-shadow:var(--sh);padding:22px;margin:16px 0}
.blk h2{margin:0 0 .6em;font-size:1.35rem;color:var(--navy);line-height:1.2}
.blk p{max-width:75ch}.brief{border-left:6px solid var(--green)}
.multi{background:linear-gradient(135deg,#eaf7ec,#fff);border:1px solid #cfe9d3}
.ticks{list-style:none;padding:0;margin:0;display:grid;gap:8px}.ticks li{padding-left:28px;position:relative}.ticks li:before{content:"✓";position:absolute;left:0;top:0;color:#fff;background:var(--green);width:20px;height:20px;border-radius:50%;font-size:.78rem;display:grid;place-items:center;top:3px}
.steps{display:grid;gap:12px;padding-left:0;list-style:none;counter-reset:s}.steps li{display:grid;gap:2px;padding-left:46px;position:relative}.steps li:before{counter-increment:s;content:counter(s);position:absolute;left:0;top:2px;width:32px;height:32px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800}
.rdvs{display:grid;gap:12px}@media(min-width:760px){.rdvs{grid-template-columns:repeat(3,1fr)}}
.rdvs button{display:grid;gap:4px;text-align:left;border:2px solid var(--line);background:#fff;border-radius:14px;padding:16px;cursor:pointer;font:inherit;min-height:84px}.rdvs button:hover{border-color:var(--green)}.rdvs span{font-size:.88rem;color:var(--mut)}
.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.chips a{display:inline-block;padding:8px 13px;border-radius:999px;background:#eef2fb;text-decoration:none;font-size:.9rem;font-weight:600}.chips a:hover{background:#dfe8ff}
.cards{list-style:none;padding:0;margin:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.cards a{display:grid;gap:2px;padding:16px;border-radius:14px;background:#f4f7ff;text-decoration:none;border:1px solid var(--line)}.cards a:hover{border-color:var(--navy)}.cards span{color:var(--mut);font-size:.85rem}
.faq details{border-bottom:1px solid var(--line);padding:10px 0}.faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}.faq summary:after{content:"+";font-size:1.3rem;color:var(--green)}.faq details[open] summary:after{content:"–"}.faq p{margin:.5em 0 .2em}
.mut{color:var(--mut)}.prose h2{color:var(--navy)}
.crumbs ol{list-style:none;padding:0;margin:0 0 6px;display:flex;flex-wrap:wrap;gap:6px;font-size:.84rem;color:var(--mut)}.crumbs li+li:before{content:"›";margin-right:6px}.crumbs a{color:var(--mut)}
/* form */
.lead{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:20px;display:grid;gap:10px;border-top:5px solid var(--green)}.lead h2{margin:0;font-size:1.25rem;color:var(--navy)}
label{display:grid;gap:4px;font-weight:600;font-size:.9rem}label small{font-weight:400;color:var(--mut)}
input,select{font:inherit;padding:12px;border:1.5px solid #cfd8ee;border-radius:12px;background:#fff;min-height:48px;width:100%}input:focus,select:focus{border-color:var(--navy);outline:0;box-shadow:0 0 0 3px rgba(18,48,122,.15)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chk{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.8rem;color:var(--mut)}.chk input{width:22px;min-height:22px;margin-top:2px}
.res{margin:0;font-weight:600}.res.ok{color:var(--green)}.res.err{color:var(--red)}
/* footer */
.foot{background:var(--navy2);color:#dfe6fb;padding:34px 0 30px;margin-top:20px}.foot a{color:#fff}.foot h2{font-size:1rem;color:#fff;margin:0 0 .6em}
.cols{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.foot ul{list-style:none;padding:0;margin:0;display:grid;gap:5px;font-size:.9rem}.foot address{font-style:normal;font-size:.9rem;line-height:1.7}
.legal{margin-top:20px;font-size:.85rem}.small{font-size:.75rem;opacity:.8;max-width:90ch}
.dock{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(8px);box-shadow:0 -4px 16px rgba(0,0,0,.1)}
.dock a,.dock button{flex:1;text-align:center;text-decoration:none;font:700 .95rem var(--f);padding:12px 6px;border-radius:999px;border:2px solid var(--navy);background:#fff;color:var(--navy);cursor:pointer}.dock .pri{background:var(--green2);border-color:var(--green2);color:#fff}
.wa{position:fixed;right:14px;bottom:84px;z-index:61;width:56px;height:56px;border-radius:50%;background:#128c5a;display:grid;place-items:center;box-shadow:0 6px 16px rgba(0,0,0,.3)}
@media(min-width:900px){.dock{display:none}body{padding-bottom:0}.wa{bottom:20px}}
/* modal */
.cm{position:fixed;inset:0;z-index:100;background:rgba(10,20,50,.55);display:none;align-items:flex-end;justify-content:center;padding:0}.cm.on{display:flex}
.cm .card{background:#fff;width:min(520px,100%);max-height:92vh;overflow:auto;border-radius:24px 24px 0 0;padding:24px 22px calc(24px + env(safe-area-inset-bottom));position:relative;animation:up .22s ease-out}
@media(min-width:640px){.cm{align-items:center;padding:20px}.cm .card{border-radius:24px}}
@keyframes up{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
.cm .x{position:absolute;right:14px;top:12px;background:none;border:0;font-size:1.8rem;line-height:1;cursor:pointer;color:var(--navy);padding:6px 10px}
.cm h3{margin:.2em 0 .1em;font-size:1.45rem;color:var(--navy);padding-right:36px}.cm .sub{color:var(--mut);font-size:.88rem;margin:0 0 12px}
.prog{display:flex;gap:6px;margin:10px 0 18px}.prog i{flex:1;height:4px;border-radius:2px;background:#dfe5f3}.prog i.d{background:var(--green2)}
.cm .q{font-size:1.08rem;font-weight:600;margin:0 0 12px}.cm .field{display:grid;gap:10px}.cm .row{display:flex;gap:10px;margin-top:16px}
.slot{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 16px;border:1.5px solid var(--line);background:#fff;border-radius:14px;margin-bottom:10px;font:600 1rem var(--f);cursor:pointer;color:var(--ink)}.slot:hover{border-color:var(--green2)}.slot span{color:var(--green2)}
.choose{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;background:none;border:0;color:var(--mut);cursor:pointer;font:600 .95rem var(--f);width:100%}
.opt{display:block;width:100%;text-align:left;padding:15px 16px;border:1.5px solid var(--line);background:#fff;border-radius:14px;margin-bottom:10px;font:600 1rem var(--f);cursor:pointer}.opt small{display:block;font-weight:400;color:var(--mut)}.opt:hover{border-color:var(--green2)}
.back{background:none;border:0;color:var(--mut);cursor:pointer;font:600 .9rem var(--f);padding:12px}
.err-t{color:var(--red);font-size:.88rem;margin:6px 0 0;min-height:1.2em}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ======================= V2 : habillage premium ======================= */
:root{--navy3:#071a4d;--sky:#4fb6ff;--mint:#8de29b}
.logo img{height:50px;width:auto}
@media(max-width:520px){.logo img{height:40px;width:auto}}
/* icônes illustrées */
.ico{width:58px;height:58px;display:block}
.ico *{fill:none;stroke:#12307a;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ico .fb{fill:#dbe7ff}.ico .fg{fill:#d6f0db}.ico .fw{fill:#fff}.ico .fy{fill:#ffe9a8}.ico .fr{fill:#fde0e3}
.ico .gs{stroke:#2e8b3d;stroke-width:3}.ico .rd{stroke:#d7263d;stroke-width:3}.ico .dot{fill:#12307a;stroke:none}
.ico.xl{width:84px;height:84px}.ico.md{width:44px;height:44px}
/* héros sombre (toutes les pages) */
.hero{position:relative;overflow:hidden;color:#fff;
  background:radial-gradient(900px 420px at 88% -8%,rgba(79,182,255,.40),transparent 62%),radial-gradient(700px 420px at -8% 20%,rgba(46,139,61,.30),transparent 60%),
  linear-gradient(165deg,#071a4d 0%,#0f2b78 52%,#1b46ad 100%)}
.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.10) 1.2px,transparent 1.4px);background-size:26px 26px;opacity:.55;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 85%);mask-image:linear-gradient(180deg,#000 0%,transparent 85%)}
.hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:64px;pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 90' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%231b46ad' stop-opacity='0'/%3E%3Cstop offset='.5' stop-color='%234fb6ff'/%3E%3Cstop offset='1' stop-color='%231b46ad' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 46C240 92 470 6 720 38s520 56 720 6' fill='none' stroke='url(%23g)' stroke-width='3'/%3E%3Cpath d='M0 60C240 100 470 24 720 52s520 40 720 -4V90H0Z' fill='%23f4f6fb'/%3E%3C/svg%3E") center bottom/100% 100% no-repeat}
.hero>.wrap{position:relative;z-index:1}
.hero h1{color:#fff}.hero h1 em{color:var(--mint)}
.hero .lead-p{color:#d6e2ff}.hero .mut{color:#b9c9ee}
.hero .crumbs ol,.hero .crumbs a{color:#bcd0f7}
.hero .trust li{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28);color:#fff}.hero .trust li:before{color:var(--mint)}
.hero .btn.ghost{border-color:rgba(255,255,255,.45);color:#fff}
.hero .btn:not(.pri):not(.ghost){border-color:#fff}
.hero-s{padding:20px 0 56px}
.hero.home{padding:22px 0 72px}
.hero.home h1{font-size:clamp(2rem,6vw,3.4rem);text-shadow:0 2px 24px rgba(0,0,0,.25)}
.tag{color:#cfe0ff;font-size:1.2rem}
.b45 b{background:#fffaf0;box-shadow:0 0 0 4px rgba(244,215,122,.25)}.b45 span{color:#f4d77a}
.switch{border-color:#e7c964;box-shadow:0 6px 20px rgba(0,0,0,.25)}.switch a{color:#7a5c10;background:#fffaf0}
/* tuiles */
.tile{padding:16px 8px 14px;min-height:124px;gap:8px;border:1px solid rgba(255,255,255,.9);box-shadow:0 10px 26px rgba(4,16,60,.28);transition:transform .18s,box-shadow .18s}
.tile:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(4,16,60,.38)}
.tile .ic{display:block;line-height:0}.tile b{font-size:.98rem;color:#0b1d57}
.tile.sm{min-height:76px}.tile.sm .ico{width:38px;height:38px}
.big{box-shadow:0 14px 34px rgba(4,16,60,.35);padding:20px 8px}.big .ic2{line-height:0}
/* barre de recherche d'activité */
.finder{position:relative;margin:4px 0 22px;padding:18px;border-radius:24px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 18px 40px rgba(4,16,60,.30)}
.f-l{color:#fff;font-weight:700;font-size:1.02rem;display:block;margin-bottom:10px}
.f-row{display:flex;gap:10px;flex-wrap:wrap}
.f-box{position:relative;flex:1 1 280px;display:flex;align-items:center}
.f-box .ico{position:absolute;left:12px;width:30px;height:30px;pointer-events:none}
.finder input{padding:15px 16px 15px 52px;border-radius:999px;border:2px solid transparent;font-size:1.05rem;min-height:56px;box-shadow:0 6px 18px rgba(4,16,60,.2)}
.finder input:focus{border-color:var(--mint);box-shadow:0 0 0 4px rgba(141,226,155,.35)}
.finder .btn{min-height:56px;padding-inline:24px;font-size:1.02rem}
.f-ex{margin:12px 0 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#cfe0ff;font-size:.88rem}
.f-ex button{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:999px;padding:6px 12px;font:600 .85rem var(--f);cursor:pointer}.f-ex button:hover{background:rgba(255,255,255,.26)}
.f-list{list-style:none;margin:8px 0 0;padding:6px;background:#fff;border-radius:18px;box-shadow:0 18px 40px rgba(4,16,60,.35);position:absolute;left:18px;right:18px;z-index:20;text-align:left}
.f-list a,.f-list button{display:flex;justify-content:space-between;gap:10px;align-items:center;width:100%;padding:12px 14px;border:0;background:none;border-radius:12px;text-decoration:none;color:var(--ink);font:inherit;cursor:pointer;text-align:left}
.f-list a:hover,.f-list button:hover{background:#eef3ff}.f-list span{color:var(--green2);font-size:.85rem;white-space:nowrap;font-weight:700}
.f-list li:last-child button b{color:var(--green)}
.shake{animation:sh .4s}@keyframes sh{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}
.strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;list-style:none;padding:0}
.strip li{display:flex;align-items:center;gap:8px;color:#e4edff;font-size:.9rem;font-weight:600;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);padding:8px 14px;border-radius:999px}
.strip li:before{content:"✓";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--mint);color:#0b2259;font-size:.75rem;font-weight:800}
.cards a{grid-template-columns:54px 1fr;align-items:center;column-gap:12px}.cards .ico{width:50px;height:50px;grid-row:span 2}
.blk h2{display:flex;align-items:center;gap:10px}
.lead{border-top:5px solid var(--mint)}
.hico{display:inline-grid;place-items:center;width:70px;height:70px;border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(4,16,60,.35);margin:4px 0 8px}
.hico .ico{width:46px;height:46px}
/* correctifs spécificité */
.hero.home{background:radial-gradient(900px 420px at 88% -8%,rgba(79,182,255,.40),transparent 62%),radial-gradient(700px 420px at -8% 20%,rgba(46,139,61,.30),transparent 60%),linear-gradient(165deg,#071a4d 0%,#0f2b78 52%,#1b46ad 100%)}
.phone b{white-space:nowrap}
@media(max-width:520px){.phone b{font-size:.95rem}.phone{padding:5px 12px 5px 6px;gap:6px}.phone svg{width:26px;height:26px;padding:5px}}
.tile .ico{width:66px;height:66px}
.tiles{grid-template-columns:repeat(3,1fr);gap:10px}
@media(max-width:519px){.tile{min-height:104px;padding:12px 4px 10px}.tile .ico{width:52px;height:52px}.tile b{font-size:.82rem}.tiles.ex{grid-template-columns:1fr 1fr 1fr}.tile.sm b{font-size:.78rem}.tile.sm{flex-direction:column;min-height:84px;gap:2px}}
@media(min-width:520px){.tiles{grid-template-columns:repeat(4,1fr);gap:12px}}
@media(min-width:900px){.tiles{grid-template-columns:repeat(5,1fr)}}
.tile.sm .ico{width:40px;height:40px}
/* formulaire dans le héros : texte lisible */
.hero .lead,.hero .lead label{color:var(--ink)}
.hero .lead .mut,.hero .lead small{color:var(--mut)}
.hero .lead .chk,.hero .lead .chk span{color:var(--mut)}
.hero .lead h2{color:var(--navy)}
.hero .lead .res{color:var(--ink)}.hero .lead .res.ok{color:var(--green)}.hero .lead .res.err{color:var(--red)}
.hero .lead a{color:var(--navy)}

/* ======================= V3 : corrections ======================= */
/* tuiles : dernière ligne toujours centrée (plus de « trou » sur mobile) */
.tiles{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.tiles .tile{flex:0 0 calc((100% - 20px)/3);min-width:0}
@media(min-width:520px){.tiles{gap:12px}.tiles .tile{flex-basis:calc((100% - 36px)/4)}}
@media(min-width:900px){.tiles .tile{flex-basis:calc((100% - 48px)/5)}}
.tiles.ex{margin-top:10px}.tiles.ex .tile,.tiles.ex .tile.sm{flex-basis:calc((100% - 20px)/3)}
@media(min-width:520px){.tiles.ex .tile,.tiles.ex .tile.sm{flex-basis:calc((100% - 24px)/3)}}
/* liste de résultats de la recherche : dans le flux, plus de chevauchement */
.finder{z-index:5}
.f-list{position:static;left:auto;right:auto;margin:12px 0 0;max-height:min(60vh,420px);overflow:auto;-webkit-overflow-scrolling:touch}
.f-list li{border-bottom:1px solid #eef1f8}.f-list li:last-child{border-bottom:0}
.f-list a b,.f-list button b{font-weight:700;line-height:1.25}
/* en-tête de l'accueil : badge 45 ans à gauche, interrupteur à droite, plus compacts */
.toprow{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:10px}
.b45img{height:44px;width:auto;display:block;flex:0 1 auto;max-width:48%}
.switch{flex:0 0 auto}
.switch a,.switch span{padding:7px 12px;font-size:.8rem;line-height:1.1}
.hero.home{padding:12px 0 64px}
.hero.home h1{margin:.45em 0 .2em;font-size:clamp(1.9rem,6vw,3.2rem)}
.hero.home .tag{margin:.1em 0 .8em;font-size:1.08rem}
.finder{margin:2px 0 16px;padding:14px}
.f-l{font-size:.98rem;margin-bottom:8px}
@media(max-width:380px){.switch a,.switch span{padding:6px 9px;font-size:.74rem}.b45img{height:38px}}
/* recherche : exemples sur une seule ligne défilante, résultat « devis » en premier */
.f-ex{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-top:10px}
.f-ex::-webkit-scrollbar{display:none}
.f-ex span,.f-ex button{flex:0 0 auto;white-space:nowrap}
.f-list li.go button{background:#eaf7ec;border-radius:12px}
.f-list li.go button b{color:#14612a}
.f-list{max-height:min(52vh,380px)}

/* ======================= Site « redressement » : même style, accent chaud ======================= */
.hero,.hero.home{background:radial-gradient(900px 420px at 88% -8%,rgba(79,182,255,.34),transparent 62%),radial-gradient(700px 420px at -8% 25%,rgba(255,170,60,.20),transparent 60%),linear-gradient(165deg,#06163f 0%,#0b2a70 52%,#145a96 100%)}
.hero h1 em{color:#ffd166}
.hero.home h1{font-size:clamp(1.7rem,5.2vw,2.8rem)}
.sol{border-left:6px solid #ffb703}
.sol h3{margin:1em 0 .5em;color:var(--navy);font-size:1.05rem}
.small-note{font-size:.8rem;color:var(--mut);max-width:80ch;margin:8px 4px 24px}
.multi{background:linear-gradient(135deg,#fff4dc,#fff);border:1px solid #f3dca4}
@media(max-width:520px){.hero.home h1{font-size:1.5rem;line-height:1.18}}

/* ======================= Cookies / RGPD ======================= */
.ck-banner{position:fixed;left:12px;right:12px;bottom:12px;z-index:130;max-width:780px;margin:0 auto;background:#fff;color:var(--ink);border-radius:20px;box-shadow:0 18px 50px rgba(4,16,60,.5);padding:18px;border:1px solid var(--line);display:none}
.ck-banner.on{display:block;animation:up .22s ease-out}
.ck-banner h2{margin:0 0 6px;font-size:1.1rem;color:var(--navy)}
.ck-banner p{margin:0 0 14px;font-size:.88rem;line-height:1.5;color:#2a3558}
.ck-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ck-row button{padding:12px 6px;border-radius:999px;border:2px solid var(--navy);background:#fff;color:var(--navy);font:700 .88rem var(--f);cursor:pointer;min-height:46px}
.ck-row button:hover{background:#eef3ff}
@media(max-width:440px){.ck-row{grid-template-columns:1fr}}
.ck-modal{position:fixed;inset:0;z-index:140;background:rgba(10,20,50,.6);display:none;align-items:flex-end;justify-content:center}
.ck-modal.on{display:flex}
.ck-card{background:#fff;width:min(560px,100%);max-height:92vh;overflow:auto;border-radius:24px 24px 0 0;padding:22px 20px calc(22px + env(safe-area-inset-bottom));position:relative}
@media(min-width:640px){.ck-modal{align-items:center;padding:20px}.ck-card{border-radius:24px}}
.ck-card h2{margin:0 0 8px;font-size:1.25rem;color:var(--navy);padding-right:36px}
.ck-card .x{position:absolute;right:12px;top:10px;background:none;border:0;font-size:1.8rem;line-height:1;cursor:pointer;color:var(--navy);padding:6px 10px}
.ck-p{font-size:.85rem;color:var(--mut);margin:8px 0}
.ck-cat{border:1.5px solid var(--line);border-radius:14px;margin:10px 0;padding:12px 14px}
.ck-cat label{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;cursor:pointer}
.ck-cat span{display:grid;gap:3px}.ck-cat b{color:var(--ink)}.ck-cat small{font-weight:400;color:var(--mut);font-size:.82rem;line-height:1.4}
.ck-cat .ck-note{font-style:italic}
.ck-cat input{width:22px;min-height:22px;height:22px;accent-color:var(--green2);flex:0 0 auto;margin-top:2px}
.ck-card .ck-row{margin-top:14px}.ck-card .ck-save{background:var(--green2);border-color:var(--green2);color:#fff}.ck-card .ck-save:hover{background:#1c7a35}
.ck-info{font-size:.78rem;color:var(--mut);margin:6px 0 0;line-height:1.4}
.legal a[data-cookie-settings]{cursor:pointer}
.tbl{border-collapse:collapse;width:100%;font-size:.9rem}.tbl th,.tbl td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.tbl th{background:#eef2fb}
.w{overflow:auto}

/* cookies : « Tout refuser » et « Tout accepter » strictement identiques (même taille, même couleur) */
.ck-row button.ck-eq{background:var(--green2);border-color:var(--green2);color:#fff}
.ck-row button.ck-eq:hover{background:#1c7a35;border-color:#1c7a35}
.ck-card .ck-save{background:#fff;color:var(--navy);border-color:var(--navy)}
.ck-card .ck-save:hover{background:#eef3ff}
.ck-banner{border-top:5px solid var(--green2)}

/* ======================= Site moto ======================= */
.hero,.hero.home{background:radial-gradient(900px 420px at 88% -8%,rgba(0,198,255,.38),transparent 62%),radial-gradient(700px 420px at -8% 25%,rgba(46,160,70,.30),transparent 60%),linear-gradient(165deg,#071a4d 0%,#0b2a70 52%,#0f5aa8 100%)}
.hero h1 em{color:#6fdcff}
.hero.home h1{font-size:clamp(1.7rem,5.4vw,2.9rem)}
@media(max-width:520px){.hero.home h1{font-size:1.55rem;line-height:1.18}}
.avail{display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:.8rem;font-weight:700;line-height:1.2}
.avail i{flex:0 0 auto;width:10px;height:10px;border-radius:50%;background:#8de29b;box-shadow:0 0 0 4px rgba(141,226,155,.25)}
.is-closed .avail i{background:#ffb703;box-shadow:0 0 0 4px rgba(255,183,3,.25)}
.toprow .avail{margin:0;max-width:56%;font-size:.72rem;padding:5px 10px}
.choices{display:grid;gap:10px;margin:14px 0 6px}
@media(min-width:760px){.choices{grid-template-columns:repeat(3,1fr)}}
.choice{display:grid;grid-template-columns:44px 1fr;column-gap:10px;align-items:center;text-align:left;background:#fff;color:var(--ink);border:2px solid transparent;border-radius:16px;padding:12px 14px;text-decoration:none;cursor:pointer;font:inherit;box-shadow:0 10px 24px rgba(4,16,60,.28)}
.choice .ci{grid-row:span 2;line-height:0}.choice b{font-size:1rem;line-height:1.2;color:var(--navy)}.choice small{color:var(--mut);font-size:.8rem;line-height:1.3}
.choice:hover{transform:translateY(-2px)}
.is-open .choice.call,.is-closed .choice.online{background:linear-gradient(180deg,#2e9d4a,#1f7d37);border-color:#1f7d37}
.is-open .choice.call b,.is-closed .choice.online b,.is-open .choice.call small,.is-closed .choice.online small{color:#fff}
.is-open .choice.call{order:-1}.is-closed .choice.online{order:-1}
.noonline{margin:6px 0 0;font-size:.85rem;color:#d6e2ff}
.blk .noonline{color:var(--mut)}
.blk .choices{margin-top:10px}.blk .choice{box-shadow:0 4px 14px rgba(18,48,122,.14);border-color:var(--line)}
.cgbox{background:linear-gradient(135deg,#e6f6ff,#fff);border:1px solid #bfe3f7}
.multi{background:linear-gradient(135deg,#eaf7ec,#fff);border:1px solid #cfe9d3}
.small-note{font-size:.8rem;color:var(--mut);max-width:85ch;margin:8px 4px 24px}

/* ======================= CSPM Crédit : palette et composants ======================= */
:root{--navy:#073b4c;--navy2:#052b38;--navy3:#042832;--green:#1f8a3b;--green2:#1f8a3b;--bg:#f3f7f8;--line:#dbe7ea;--sh:0 6px 22px rgba(7,59,76,.10);--gold:#f2b134}
.legalbar{background:#052b38;color:#e8f4f6;font:600 .8rem var(--f);text-align:center;padding:7px 12px;line-height:1.3}
.hero{background:radial-gradient(1000px 420px at 85% -10%,rgba(242,177,52,.22),transparent 60%),linear-gradient(180deg,#073b4c 0%,#0b5563 100%);color:#fff}
.hero h1{color:#fff}.hero h1 em{color:var(--gold)}.hero .lead-p,.hero .tag{color:#d6edf1}.hero .crumbs,.hero .crumbs a{color:#bfe0e6}
.hero.home .tag{font-size:1.05rem;margin:.3em 0 1em}
.hero .mention{font-size:.74rem;color:#bcd9de;margin:12px 0 0;line-height:1.35}
.hero .choice{background:#fff}.hero-s .choices{margin-top:14px}
.stepper{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:14px;margin:12px 0}
.st-l{margin:0 0 10px;font:800 1.05rem var(--f);color:#fff}
.st-opts{display:grid;gap:10px}@media(min-width:640px){.st-opts{grid-template-columns:repeat(3,1fr)}}
.st-opts button{appearance:none;border:2px solid var(--gold);background:#fff;color:var(--navy);font:800 1rem var(--f);border-radius:14px;padding:15px 14px;cursor:pointer;min-height:54px}
.st-opts button:hover{background:var(--gold)}
.fq{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}.fq .st-opts button{border-color:var(--navy)}
.orias{font-size:.92rem;color:var(--mut)}
.mention{display:block}
.blk .mention{color:var(--mut)}
.lead-in{font-size:1.08rem;color:var(--navy);font-weight:600}
/* simulateurs */
.sim h2{margin:20px 0 6px}.sgrid{display:grid;gap:12px}@media(min-width:640px){.sgrid{grid-template-columns:1fr 1fr}}
.sf{display:grid;gap:5px;font-weight:700}.sf span{font-size:.92rem}.sfi{display:flex;align-items:center;gap:8px;border:2px solid var(--line);border-radius:14px;background:#fff;padding:2px 12px}.sfi input{border:0;outline:0;font:700 1.1rem var(--f);padding:12px 0;width:100%;background:transparent;color:var(--ink)}.sfi em{font-style:normal;color:var(--mut);white-space:nowrap}
.sp{margin:12px 0}.sl{margin:0 0 6px;font-weight:700}.spr{display:flex;flex-wrap:wrap;gap:8px}
.pill{appearance:none;border:2px solid var(--line);background:#fff;color:var(--navy);font:700 .95rem var(--f);border-radius:999px;padding:10px 16px;cursor:pointer}.pill.on{background:var(--navy);border-color:var(--navy);color:#fff}
.pc{width:90px;border:2px solid var(--line);border-radius:999px;padding:10px 12px;font:700 .95rem var(--f)}
.sout{background:#fff;border:1px solid #bcd7de;border-radius:18px;padding:16px;margin:14px 0}.sout .sk{margin:0 0 4px;font:700 .78rem var(--f);letter-spacing:.04em;color:var(--mut)}.sout .big{margin:.1em 0;font:800 2rem var(--f);color:var(--navy)}.sout .big small{font-size:1rem;color:var(--mut)}.sout .note{font-size:.82rem;color:var(--mut)}
.wbtns{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.btn.big{font-size:1.05rem;padding:16px 24px;min-height:56px}
.cards li a b{color:var(--navy)}
.hero.home,.hero.home::before{background:radial-gradient(900px 380px at 90% -5%,rgba(242,177,52,.25),transparent 60%),linear-gradient(180deg,#073b4c 0%,#0a5a68 100%)!important}
.hero.home{background-image:radial-gradient(900px 380px at 90% -5%,rgba(242,177,52,.25),transparent 60%),linear-gradient(180deg,#073b4c 0%,#0a5a68 100%)!important}
.hero::after,.hero.home::after{border-color:transparent}

/* ======================= Bandeau légal fixe, logo, camembert, compteur, simulateurs ======================= */
:root{--lb:46px}
body{padding-top:var(--lb)}
.legalbar{position:fixed;top:0;left:0;right:0;z-index:300;font-size:.72rem;line-height:1.25;padding:6px 10px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
@media(min-width:760px){.legalbar{font-size:.82rem}}
.top{top:var(--lb)}
html{scroll-padding-top:calc(var(--lb) + 80px)}
.logo img{width:auto;height:50px;max-width:200px;object-fit:contain}
@media(min-width:760px){.logo img{height:58px;max-width:230px}}
.donut-blk,.counter-blk{background:linear-gradient(135deg,#f3fafb,#fff);border:1px solid #cfe4e8;border-radius:22px;padding:18px;margin:16px 0}
.dn-tabs{display:flex;gap:8px;margin:10px 0}
.dn-tab{appearance:none;border:2px solid #bcd7de;background:#fff;color:var(--navy);font:800 .92rem var(--f);border-radius:999px;padding:10px 14px;cursor:pointer;flex:1}
.dn-tab.on{background:var(--navy);border-color:var(--navy);color:#fff}
.dn-grid{display:grid;gap:14px;align-items:center}@media(min-width:760px){.dn-grid{grid-template-columns:260px 1fr}}
.dn-chart{max-width:260px;margin:0 auto;width:100%}.dn-svg{width:100%;height:auto;display:block}
.dn-seg{transition:stroke-dasharray 1s cubic-bezier(.4,0,.2,1),stroke-dashoffset 1s cubic-bezier(.4,0,.2,1),stroke .8s}
.dn-t1{font:800 22px var(--f);fill:#073b4c}.dn-t2{font:600 11px var(--f);fill:#5b6785}
.dn-leg{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:6px}.dn-leg li{display:flex;gap:8px;align-items:center;font-weight:700}.dn-leg i{display:inline-block;width:14px;height:14px;border-radius:50%;flex:0 0 auto}
.dn-cap{margin:6px 0;font-weight:600;color:var(--navy);min-height:3.2em}
.dn-bars{display:grid;gap:8px;margin:10px 0}.dn-bar{display:grid;gap:3px;font-size:.88rem;font-weight:700;color:var(--navy)}
.dn-track{height:12px;background:#e3edf0;border-radius:999px;overflow:hidden}.dn-track i{display:block;height:100%;width:0;border-radius:999px;transition:width 1s cubic-bezier(.4,0,.2,1)}
.dn-track i.dur{background:#7aa7d9}.dn-track i.cost{background:#ef6c4d}
.dn-pay{margin:4px 0 0;font-size:.9rem;color:#8a3b25;font-weight:700;min-height:2.6em}
.cnt-row{margin:12px 0}.cnt-l{margin:0 0 6px;font-weight:800;color:var(--navy)}.cnt-g{display:flex;gap:8px;flex-wrap:wrap}
.cnt-b{appearance:none;border:2px solid #bcd7de;background:#fff;color:var(--navy);font:800 1.05rem var(--f);border-radius:14px;min-width:58px;min-height:54px;padding:0 14px;cursor:pointer}.cnt-b.on{background:var(--navy);border-color:var(--navy);color:#fff}
.sim .fr{position:relative}.sim .lp{position:absolute;right:0;top:0;appearance:none;border:2px solid #bcd7de;background:#fff;border-radius:50%;width:38px;height:38px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center}.sim .lp:hover{background:#fff3d6;border-color:var(--gold)}
.sim .fr .sf span{padding-right:44px}.fnote{margin:4px 0 0;font-size:.86rem;color:var(--mut)}
.exb{display:grid;gap:10px;margin:10px 0}.exn{width:100%;padding:12px;border:2px solid var(--line);border-radius:12px;font:inherit}
.dn-leg.bl li{font-weight:600}
.sout .sk{margin:0 0 4px;font:700 .78rem var(--f);letter-spacing:.04em;color:var(--mut)}
.rg{width:100%;accent-color:#1f8a3b}.chart{margin:12px 0}.ch-svg{width:100%;height:auto;background:#f3fafb;border-radius:14px}
.warn{color:#b3261e;font-weight:700;margin:6px 0}.sdisc{font-size:.8rem;color:var(--mut);line-height:1.4}
.sout.opp{background:#fffaf0;border-color:#f2d9a0}
.cmp-blk{background:#fffaf0;border:1px solid #f2d9a0;border-radius:22px;padding:18px;margin:16px 0}
.ex-blk{background:#f3fafb;border:1px solid #cfe4e8;border-radius:22px;padding:18px;margin:16px 0}
.exnote{background:#fff3d6;border-radius:12px;padding:10px 12px;color:#5a3d00}
.ex-cards{display:grid;gap:12px;margin:12px 0}@media(min-width:760px){.ex-cards{grid-template-columns:repeat(3,1fr)}}
.ex-card{background:#fff;border:1px solid #bcd7de;border-radius:16px;padding:14px}.ex-card .sk{margin:0 0 4px;font:700 .8rem var(--f);color:var(--mut);text-transform:uppercase;letter-spacing:.03em}.ex-card .big{margin:.1em 0;font:800 1.8rem var(--f);color:var(--navy)}
.dn-track i.grow{background:#1f8a3b;animation:growbar 1.2s cubic-bezier(.4,0,.2,1) both}@keyframes growbar{from{width:0}}
.sdisc{font-size:.95rem;line-height:1.5;color:#3a2c00;background:#fff7e0;border:1px solid #f2d9a0;border-left:6px solid #e2a21a;border-radius:12px;padding:12px 16px;margin:14px 0}
.sdisc ul{margin:6px 0 8px;padding-left:20px}.sdisc li{margin:4px 0}

.rank{display:grid;gap:8px;margin:8px 0}.rk{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px}.rk-n{flex:1 1 160px;font-weight:700;color:var(--navy)}.rk .btn{min-height:44px;padding:8px 16px}
/* palette Assurcrédit : bleu nuit et vert */
:root{--navy:#0b2e5c;--navy2:#08224a;--navy3:#061a3a}
.legalbar{background:#071d3f}
.hero{background:radial-gradient(1000px 420px at 85% -10%,rgba(95,214,154,.22),transparent 60%),linear-gradient(180deg,#0b2e5c 0%,#14508f 100%)}
.hero.home,.hero.home::before{background:radial-gradient(900px 380px at 90% -5%,rgba(95,214,154,.25),transparent 60%),linear-gradient(180deg,#0b2e5c 0%,#1a5fa6 100%)!important}
.hero.home{background-image:radial-gradient(900px 380px at 90% -5%,rgba(95,214,154,.25),transparent 60%),linear-gradient(180deg,#0b2e5c 0%,#1a5fa6 100%)!important}
.hero h1 em{color:#9fe8c0}
.st-opts button{border-color:#5fd69a}
/* ===== page d'accueil enrichie : étapes, garanties, coût, exemple, épargne ===== */
.scene{width:100%;height:auto;max-width:760px;display:block;margin:6px auto 14px;border-radius:22px}
.scene .d1,.scene .d2,.scene .d3{animation:floatdoc 4.2s ease-in-out infinite}.scene .d2{animation-delay:.5s}.scene .d3{animation-delay:1s}
@keyframes floatdoc{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.scene .lens{animation:pulse 2.6s ease-in-out infinite;transform-origin:440px 110px}@keyframes pulse{50%{transform:scale(1.08)}}
.scene .res{animation:pop 3.2s ease-in-out infinite;transform-origin:548px 86px}@keyframes pop{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
.stps{list-style:none;margin:10px 0;padding:0;display:grid;gap:12px;counter-reset:s}
.stp{position:relative;display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid #cfe0ea;border-radius:18px;padding:14px 14px 14px 56px;box-shadow:0 4px 14px rgba(11,46,92,.06);opacity:1}
.js .stp{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.js .stp.in{opacity:1;transform:none}
.stp .stn{position:absolute;left:12px;top:14px;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#1f8a3b,#5fd69a);color:#fff;font:800 1.05rem var(--f);display:flex;align-items:center;justify-content:center}
.stp .sti{width:46px;height:46px;flex:0 0 46px}.stp .sti svg{width:46px;height:46px}.stp h3{margin:0 0 4px;font-size:1.05rem;color:var(--navy)}.stp p{margin:0;color:#3a4a60}
@media(min-width:760px){.stps{grid-template-columns:repeat(2,1fr)}}
.docs{list-style:none;margin:8px 0;padding:0;display:grid;gap:10px}@media(min-width:760px){.docs{grid-template-columns:repeat(3,1fr)}}
.docs li{background:linear-gradient(135deg,#f3fafb,#fff);border:2px dashed #7aa7d9;border-radius:16px;padding:14px;font-weight:700;color:var(--navy);display:flex;align-items:center;gap:10px}.docs b{display:inline-flex;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;align-items:center;justify-content:center}
.gar-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.gt{appearance:none;border:2px solid #bcd7de;background:#fff;color:var(--navy);font:800 .95rem var(--f);border-radius:999px;padding:9px 14px;cursor:pointer}.gt.on{background:var(--navy);border-color:var(--navy);color:#fff}
.gar-panels .gp{background:#f3fafb;border:1px solid #cfe4e8;border-left:6px solid #1f8a3b;border-radius:14px;padding:14px;margin:8px 0}.js .gar-panels .gp:not(.on){display:none}.gp h3{margin:0 0 6px;color:var(--navy)}
.cost{display:grid;gap:14px;align-items:center}@media(min-width:760px){.cost{grid-template-columns:240px 1fr}}.cost-chart{max-width:240px;margin:0 auto}.cost-a{transition:stroke-dasharray .6s ease}
.epcs{display:grid;gap:10px;margin:10px 0}@media(min-width:760px){.epcs{grid-template-columns:repeat(2,1fr)}}
.epc{display:flex;flex-direction:column;gap:4px;background:linear-gradient(135deg,#0b2e5c,#14508f);color:#fff;border-radius:16px;padding:16px;text-decoration:none}.epc b{font-size:1.1rem}.epc span{color:#cfe3ff}
.epc:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(11,46,92,.25)}
.epargne-blk{background:linear-gradient(135deg,#f3fafb,#fff);border:1px solid #cfe4e8;border-radius:22px;padding:18px;margin:16px 0}
.stps-blk,.docs-blk,.gar-blk,.cost-blk{background:#fff;border:1px solid #d9e6ee;border-radius:22px;padding:18px;margin:16px 0;box-shadow:0 6px 22px rgba(11,46,92,.06)}
/* ===== quotité, avant/après, Selectra ===== */
.quot-blk{background:linear-gradient(135deg,#f3fafb,#fff);border:1px solid #cfe4e8;border-radius:22px;padding:18px;margin:16px 0}
.quot-ui{display:grid;gap:14px;align-items:center;margin:12px 0}@media(min-width:760px){.quot-ui{grid-template-columns:260px 1fr}}
.q-chart{max-width:260px;margin:0 auto;width:100%;position:relative}.q-chart svg{width:100%;height:auto;display:block;filter:drop-shadow(0 14px 10px rgba(11,46,92,.28))}
.q-chart .q-sh{position:absolute;left:12%;right:12%;bottom:-6px;height:16px;background:radial-gradient(ellipse at center,rgba(0,0,0,.22),transparent 70%);filter:blur(3px)}
.q-seg{transition:stroke-dasharray .8s cubic-bezier(.4,0,.2,1)}
.q-pre{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}.q-pre button,.q-who button{appearance:none;border:2px solid #bcd7de;background:#fff;color:var(--navy);font:800 .9rem var(--f);border-radius:999px;padding:8px 12px;cursor:pointer}.q-pre button.on,.q-who button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.q-in{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0}.q-in label{display:flex;flex-direction:column;font-weight:700;color:var(--navy);font-size:.85rem;gap:4px}.q-in input{padding:10px;border:2px solid var(--line);border-radius:12px;font:inherit;width:100%}
.q-out{background:#fff;border:1px solid #cfe4e8;border-left:6px solid #1f8a3b;border-radius:14px;padding:12px;margin-top:8px}.q-out b{color:var(--navy)}
.ba{display:grid;gap:10px;margin:10px 0}.ba-r{display:grid;gap:3px}.ba-r span{font-weight:700;color:var(--navy)}.ba-r small{color:var(--mut)}.dn-track i.bad{background:#ef6c4d}.ba-s{margin:2px 0;font-weight:700;color:#1f8a3b}
.selectra-card{display:grid;gap:14px;align-items:center;background:linear-gradient(135deg,#f3fafb,#fff);border:1px solid #cfe4e8;border-radius:22px;padding:18px;margin:16px 0}@media(min-width:760px){.selectra-card{grid-template-columns:200px 1fr}}
.selectra-card img{width:180px;height:auto;border-radius:16px;display:block;margin:0 auto}.selectra-card h2{margin-top:0}

.qx{list-style:none;margin:10px 0;padding:0;display:grid;gap:8px}@media(min-width:760px){.qx{grid-template-columns:repeat(3,1fr)}}
.qx li{background:#fff;border:1px solid #cfe4e8;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:4px}.qx li b{color:var(--navy)}.qx li span{color:#3a4a60;font-size:.95rem}
.q-modes{margin-bottom:6px}
.cref{display:grid;gap:14px;align-items:center;margin:8px 0 12px}@media(min-width:760px){.cref{grid-template-columns:260px 1fr}}
.cref-chart{max-width:260px;margin:0 auto;width:100%;position:relative}.cref-chart svg{width:100%;height:auto;display:block;filter:drop-shadow(0 14px 10px rgba(11,46,92,.28))}.cref-a{transition:stroke-dasharray .9s cubic-bezier(.4,0,.2,1)}
.cref-big{font:700 1.15rem/1.4 var(--f);color:var(--navy);margin:0 0 6px}.cref-b{appearance:none;border:2px solid #bcd7de;background:#fff;color:var(--navy);font:800 .9rem var(--f);border-radius:999px;padding:8px 12px;cursor:pointer}.cref-b.on{background:var(--navy);border-color:var(--navy);color:#fff}
.cost-blk h3{margin:18px 0 6px;color:var(--navy)}
/* ===== agence de Cannes ===== */
.agence-card{display:grid;gap:16px;align-items:center;background:linear-gradient(135deg,#f3fafb,#fff);border:1px solid #cfe4e8;border-radius:22px;padding:18px;margin:16px 0}@media(min-width:760px){.agence-card{grid-template-columns:300px 1fr}}
.agence-card img{width:100%;max-width:300px;height:auto;border-radius:18px;display:block;margin:0 auto;box-shadow:0 10px 26px rgba(11,46,92,.2)}.agence-card address{font-style:normal;line-height:1.7;margin:6px 0 10px;font-weight:600;color:var(--navy)}
.phone-blk{display:grid;gap:16px;align-items:center;background:#fff;border:1px solid #d9e6ee;border-radius:22px;padding:18px;margin:16px 0}@media(min-width:760px){.phone-blk{grid-template-columns:300px 1fr}}
.phone-fig img{width:100%;max-width:300px;height:auto;display:block;margin:0 auto;filter:drop-shadow(0 12px 14px rgba(11,46,92,.22))}
/* ===== documents de prêt, banque par banque ===== */
.bks{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:12px 0}@media(min-width:760px){.bks{grid-template-columns:repeat(3,1fr)}}
.bk{display:flex;flex-direction:column;align-items:center;gap:10px;background:#fff;border:1px solid #d9e6ee;border-radius:20px;padding:18px 10px;text-decoration:none;box-shadow:0 6px 18px rgba(11,46,92,.07);transition:transform .15s}.bk:hover{transform:translateY(-3px)}
.bk i{width:64px;height:64px;border-radius:18px;color:#fff;font:800 1.1rem var(--f);font-style:normal;display:flex;align-items:center;justify-content:center}.bk b{color:var(--navy);text-align:center}
.dtabs{display:inline-flex;gap:6px;background:#eef3f5;border-radius:999px;padding:6px;margin:6px 0 12px}.dt{appearance:none;border:0;background:transparent;color:#52707a;font:800 .95rem var(--f);border-radius:999px;padding:10px 16px;cursor:pointer}.dt.on{background:#fff;color:var(--navy);box-shadow:0 2px 8px rgba(11,46,92,.15)}
.js .dp:not(.on){display:none}.dsteps{margin:8px 0 14px;padding:0;list-style:none;counter-reset:ds;display:grid;gap:12px}.dsteps li{counter-increment:ds;position:relative;padding-left:48px;min-height:36px;display:flex;align-items:center;font-size:1.02rem;color:#2c3a4d}
.dsteps li::before{content:counter(ds);position:absolute;left:0;top:0;width:34px;height:34px;border-radius:50%;background:#dff3e8;color:#1f8a3b;font:800 1rem var(--f);display:flex;align-items:center;justify-content:center}
.dnote{background:#fff6e0;border:1px solid #f2d9a0;border-radius:14px;padding:12px 14px;color:#5a3d00;margin:8px 0}
.msg{background:#f3fafb;border:1px dashed #7aa7d9;border-radius:14px;padding:14px;margin:8px 0;font-style:normal;color:#1d2b3f}
.cta-dark{background:linear-gradient(135deg,#0b2e5c,#14508f);color:#fff;border-radius:22px;padding:22px;margin:16px 0}.cta-dark h2{color:#fff;margin-top:0}.cta-dark p{color:#d6e6fb}
.mailer h3{margin:18px 0 6px;color:var(--navy)}.mf{display:grid;gap:10px;margin:10px 0}@media(min-width:760px){.mf{grid-template-columns:repeat(2,1fr)}}
.mf label{display:flex;flex-direction:column;gap:4px;font-weight:700;color:var(--navy);font-size:.9rem}.mf input{padding:12px;border:2px solid var(--line);border-radius:12px;font:inherit}
.m-body{white-space:pre-line}
.dhl{margin:12px 0 4px}.dhl a{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);color:#fff;font-weight:800;border-radius:999px;padding:12px 18px;text-decoration:none}.dhl a:hover{background:rgba(255,255,255,.24)}
.tips{margin:8px 0;padding-left:22px}.tips li{margin:6px 0;color:#2c3a4d}
.trio3{list-style:none;margin:10px 0;padding:0;display:grid;gap:12px}@media(min-width:760px){.trio3{grid-template-columns:repeat(3,1fr)}}
.trio3 li{background:#f3fafb;border:1px solid #cfe4e8;border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:4px}.trio3 i{width:34px;height:34px;border-radius:50%;background:#1f8a3b;color:#fff;font:800 1rem var(--f);font-style:normal;display:flex;align-items:center;justify-content:center}.trio3 b{color:var(--navy)}.trio3 span{color:#52707a;font-size:.93rem}
.callout{margin:14px 0}.callout a{display:block;background:linear-gradient(135deg,#e9f7ee,#f3fafb);border:2px solid #1f8a3b;color:#14653a;font-weight:800;border-radius:16px;padding:14px 16px;text-decoration:none}
/* ===== logos des banques ===== */
.lg{display:flex;align-items:center;justify-content:center;height:72px;width:100%}.lg img{max-height:58px;max-width:88%;width:auto;height:auto;object-fit:contain}.lg.big{height:90px;justify-content:flex-start}.lg.big img{max-height:76px}
.bk{gap:8px}.bk b{font-size:.92rem}.bks.mini{grid-template-columns:repeat(3,1fr);gap:8px}@media(min-width:760px){.bks.mini{grid-template-columns:repeat(6,1fr)}}
.bks.mini .bk{padding:10px 6px;gap:4px;border-radius:14px}.bks.mini .lg{height:42px}.bks.mini .lg img{max-height:34px}.bks.mini b{font-size:.74rem;text-align:center}
.bhead p{margin:6px 0}.callout2 a{display:inline-block;background:#e9f7ee;border:1px solid #1f8a3b;color:#14653a;font-weight:800;border-radius:14px;padding:10px 14px;text-decoration:none}
/* ===== correctif logos : taille maîtrisée ===== */
.lg img{width:auto!important;height:auto!important;max-width:min(88%,170px);max-height:58px;object-fit:contain}.lg.big img{max-width:min(100%,230px);max-height:68px}.bhead{overflow:hidden}.bk .lg{overflow:hidden}
.facile-tip{display:block;margin:12px 0;background:#e9f7ee;border:2px solid #1f8a3b;color:#14653a;font-weight:800;border-radius:14px;padding:12px 14px;text-decoration:none}
.mf label.wide{grid-column:1/-1}
/* ===== mode facilité ===== */
.facile{background:linear-gradient(145deg,#f1fbf4,#eaf4ff);border:2px solid #cfe8d8;border-radius:26px;padding:20px;margin:16px 0}.facile .badge{display:inline-block;background:#1f8a3b;color:#fff;font-weight:800;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:6px 12px}
.f3{list-style:none;margin:10px 0 18px;padding:0;display:grid;gap:12px}@media(min-width:760px){.f3{grid-template-columns:repeat(3,1fr)}}.f3 li{background:#fff;border:1px solid #d9e6ee;border-radius:18px;padding:16px;box-shadow:0 6px 16px rgba(11,46,92,.06)}.f3 i{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#1f8a3b,#30b35a);color:#fff;font:800 1.05rem var(--f);font-style:normal;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.f3 b{display:block;color:var(--navy);margin-bottom:4px}
.mail-win{background:#fff;border:1px solid #cdd9e3;border-radius:16px;overflow:hidden;box-shadow:0 10px 26px rgba(11,46,92,.12);margin:12px 0}.mw-bar{background:#eef3f7;padding:8px 12px;display:flex;gap:6px}.mw-bar i{width:11px;height:11px;border-radius:50%;background:#c9d4de}.mail-win p{margin:0;padding:8px 14px;border-bottom:1px solid #eef2f5}.mail-win .m-body{padding:14px;white-space:pre-line;color:#1d2b3f;font-size:.95rem;max-height:340px;overflow:auto}
.facile select{padding:12px;border:2px solid var(--line);border-radius:12px;font:inherit;background:#fff}
.facile-home{background:linear-gradient(135deg,#0b2e5c,#14508f);color:#fff;border-radius:24px;padding:22px;margin:16px 0}.facile-home h2{color:#fff;margin:8px 0}.facile-home p{color:#d6e6fb}.facile-home .badge{display:inline-block;background:#30b35a;color:#fff;font-weight:800;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:6px 12px}
.mail-win p{max-width:none}
/* ===== marques d'assurance ===== */
.lgtxt{font:800 1.1rem var(--f);color:#0b2e5c;text-align:center}.bk.cur{border:2px solid #1f8a3b;background:#f3fbf6}.enbref{background:#eef6ff;border-left:5px solid #1f6fd0;border-radius:12px;padding:12px 14px;margin:6px 0 14px;color:#1d2b3f}
.bks.marques{grid-template-columns:repeat(2,1fr)}@media(min-width:760px){.bks.marques{grid-template-columns:repeat(4,1fr)}}.bks.mini.marques{grid-template-columns:repeat(3,1fr)}@media(min-width:760px){.bks.mini.marques{grid-template-columns:repeat(5,1fr)}}
