/* Iseresecur v2 : bleu nuit #0E1A2B, jaune #FBBC0C (CTA et accents), sections claires. Mobile d'abord (390 px), élargi dès 900 px. */
:root{
  --nuit:#0E1A2B;--nuit2:#16263D;--y:#fbbc0c;--y-hover:#ffcb3d;--y-pale:#fff4cc;--cream:#fefaec;
  --ink:#14202E;--muted:#5b6675;--soft:#f4f6f9;--white:#fff;--line:#e3e8ef;--green:#22c55e;
  --lp-border:#cdd5e0;--lp-radius:10px;--lp-band:#eef2f7;
  --radius:16px;--shadow:0 10px 30px rgba(14,26,43,.10);--shadow-lg:0 22px 60px rgba(14,26,43,.18);
  --f-title:'Archivo','Arial Black','Helvetica Neue',Arial,sans-serif;
  --f-text:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--f-text);font-size:16px;line-height:1.55;
  padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
img,svg{max-width:100%}
img{height:auto;display:block}
h1,h2,h3{font-family:var(--f-title);font-weight:800;line-height:1.1;margin:0;letter-spacing:-.01em}
p{margin:0}
a{color:inherit}
ul,ol{margin:0;padding:0;list-style:none}
.accent{color:var(--y)}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding-inline:16px}
.ico{width:1.25em;height:1.25em;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.star{width:18px;height:18px;flex:none;fill:currentColor;stroke:none}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--y);outline-offset:2px}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 20px;border-radius:14px;
  font-family:var(--f-title);font-weight:800;font-size:16px;text-decoration:none;text-align:center;line-height:1.2;border:2px solid transparent;
  transition:transform .15s ease,background .15s ease,box-shadow .15s ease}
.btn:active{transform:translateY(1px)}
.btn-y{background:var(--y);color:var(--nuit);box-shadow:0 8px 22px rgba(251,188,12,.35)}
.btn-y:hover{background:var(--y-hover)}
.btn-xl{min-height:64px;padding:14px 14px;font-size:16px;width:100%;border-radius:16px}
.btn-xl .ico{width:24px;height:24px}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.55)}
.btn-ghost:hover{background:rgba(255,255,255,.18)}
.btn-line{background:#fff;color:var(--nuit);border-color:var(--nuit)}
.btn-line:hover{background:var(--nuit);color:#fff}
.btn-block{width:100%}

/* En-tête */
.top{background:var(--nuit);color:#fff}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:10px}
.logo img{height:50px;width:auto}
.top .btn{min-height:44px;padding:8px 14px;font-size:15px;border-radius:999px;box-shadow:none}
.strip{background:var(--nuit2);color:var(--cream);font-size:13px;font-weight:600;text-align:center;padding:8px 16px;border-top:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;gap:8px}
.dot{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(34,197,94,.6);animation:pulse 2s infinite;flex:none}
@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}

/* Hero photo plein cadre */
.hero{position:relative;color:#fff;background:var(--nuit);overflow:hidden;isolation:isolate}
.hero-photo{position:absolute;inset:0;z-index:-2}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:60% 40%}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(14,26,43,.74) 0%,rgba(14,26,43,.80) 55%,rgba(14,26,43,.93) 100%)}
.hero .wrap{padding-block:22px 28px}
.hero-copy{max-width:640px}
.gpill{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;background:#fff;color:var(--ink);text-decoration:none;
  padding:7px 14px 7px 12px;border-radius:999px;font-size:14px;font-weight:700;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.gpill .stars{display:inline-flex;color:#f5a800}
.gpill .g{display:inline-flex;width:20px;height:20px;border-radius:50%;background:#fff;border:1px solid var(--line);align-items:center;justify-content:center;
  font-family:Arial,sans-serif;font-weight:700;font-size:13px;color:#4285f4}
.hero-badge{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:6px 12px;border-radius:999px;
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);font-family:var(--f-title);font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.hero-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--y);flex:none}
.hero h1{margin-top:12px;font-size:clamp(30px,8.6vw,36px);line-height:1.08;color:#fff;text-wrap:balance;overflow-wrap:break-word}
.hero-subtitle{margin-top:12px;color:var(--cream);font-size:16px;line-height:1.5}
.hero-bullets{margin-top:14px;display:grid;gap:8px}
.hero-bullets li{position:relative;padding-left:30px;font-weight:600;font-size:15px;line-height:1.4}
.hero-bullets li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--y) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E1A2B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat}
.hero-cta{margin-top:20px;display:grid;gap:10px}
.proof{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14px;font-weight:600}
.proof li{display:inline-flex;align-items:center;gap:7px}
.proof .ico{color:var(--y);width:20px;height:20px}

/* Bande réassurance */
.trust{background:#fff;border-bottom:1px solid var(--line)}
.trust ul{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;padding-block:22px}
.trust li{display:flex;align-items:center;gap:10px;font-weight:700;font-size:14px;line-height:1.3}
.cir{display:flex;width:44px;height:44px;border-radius:50%;background:var(--y-pale);color:var(--nuit);align-items:center;justify-content:center;flex:none}
.cir .ico{width:22px;height:22px}

/* Sections */
.sec{padding-block:52px}
.sec-soft{background:var(--soft)}
.sec h2{font-size:clamp(26px,6.6vw,38px);color:var(--nuit);text-wrap:balance}
.eyebrow{display:inline-block;margin-bottom:10px;font-family:var(--f-title);font-weight:800;font-size:12px;letter-spacing:.1em;color:#8a6200;text-transform:uppercase}
.sec-head{margin-bottom:28px}

/* Formulaire */
.rappel{display:grid;gap:26px;align-items:center}
.rappel-txt p{margin-top:12px;color:var(--muted);font-size:17px}
.rappel-who{display:flex;align-items:center;gap:14px;margin-top:20px}
.rappel-who img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:var(--shadow)}
.rappel-who span{font-weight:600;color:var(--ink);font-size:15px;line-height:1.4}
.lp-form-card{background:#fff;color:var(--ink);border-radius:20px;padding:22px 18px;box-shadow:var(--shadow-lg);border:1px solid var(--line);scroll-margin-top:16px}
.fc-eyebrow{font-family:var(--f-title);font-weight:800;font-size:12px;letter-spacing:.08em;color:#8a6200}
.fc-titre{font-size:24px;margin-top:4px;color:var(--nuit)}
.fc-sous{margin-top:6px;color:var(--muted);font-size:15px}
.fc-progression{display:flex;align-items:center;gap:12px;margin:16px 0 14px}
.fc-barre{flex:1;height:8px;background:#e6ebf2;border-radius:99px;overflow:hidden}
.fc-barre span{display:block;height:100%;width:50%;background:var(--y);border-radius:99px;transition:width .25s ease}
.fc-compteur{font-size:13px;font-weight:700;color:var(--muted)}
.fc-etape{border:0;padding:0;margin:0;min-width:0;display:grid;gap:10px}
.fc-question{font-family:var(--f-title);font-weight:800;font-size:18px;padding:0;margin-bottom:4px;color:var(--nuit)}
.fc-option{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;background:#fff;border:2px solid var(--lp-border);
  border-radius:14px;font:inherit;font-weight:600;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
.fc-option:hover,.fc-option:focus-visible{border-color:var(--y)}
.fc-option.actif{border-color:var(--y);background:var(--y-pale)}
.fc-ico{display:flex;width:36px;height:36px;border-radius:10px;background:var(--nuit);color:var(--y);align-items:center;justify-content:center;flex:none}
.fc-ico .ico{width:20px;height:20px}
.fc-lib{flex:1;min-width:0;line-height:1.3}
.fc-radio{width:22px;height:22px;border-radius:50%;border:2px solid var(--lp-border);flex:none}
.fc-option.actif .fc-radio{border-color:var(--y);background:radial-gradient(circle,var(--nuit) 38%,var(--y) 42%)}
.fc-coord label,.champ-tel label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:15px}
.fc-coord{gap:14px}
.fc-coord input[type=text]{width:100%;min-height:50px;padding:12px;font-size:16px;font-family:inherit;color:var(--ink);background:#fff;border:1px solid var(--lp-border);border-radius:var(--lp-radius)}
.fc-coord input:focus{outline:0;border-color:var(--y);box-shadow:0 0 0 3px rgba(251,188,12,.3)}
.fc-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;margin-top:6px;border:0;border-radius:14px;background:var(--y);color:var(--nuit);
  font-family:var(--f-title);font-weight:800;font-size:17px;cursor:pointer;box-shadow:0 8px 22px rgba(251,188,12,.35)}
.fc-cta:hover{background:var(--y-hover)}
.fc-cta:disabled{opacity:.6;cursor:wait}
.fc-retour{margin-top:10px;min-height:44px;padding:8px 4px;background:none;border:0;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;text-decoration:underline}
.fc-erreur{margin-top:10px;color:#b00020;font-weight:600;font-size:14px}
.fc-reassurance{margin-top:14px;text-align:center;font-weight:600;font-size:15px}
.fc-reassurance a{color:var(--nuit);text-decoration:underline;text-underline-offset:3px;font-weight:800;display:inline-block;padding:10px 4px;min-height:44px}
.champ-tel{display:flex;flex-direction:column;gap:6px}
.tel-groupe{display:flex;align-items:stretch;border:1px solid var(--lp-border);border-radius:var(--lp-radius);background:#fff;overflow:hidden}
.tel-groupe:focus-within{border-color:var(--y);box-shadow:0 0 0 3px rgba(251,188,12,.3)}
.tel-indicatif{display:flex;align-items:center;gap:7px;padding:0 12px;flex-shrink:0;background:var(--lp-band);border-right:1px solid var(--lp-border);font-size:15px;font-weight:600;color:var(--ink)}
.tel-groupe input{flex:1;min-width:0;min-height:50px;border:0;outline:0;background:transparent;padding:14px 12px;font-size:16px;font-family:inherit;color:var(--ink)}
.tel-groupe.invalide{border-color:#b00020}
.tel-erreur{font-size:13px;color:#b00020}

/* Services */
.cards{display:grid;gap:18px}
.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line)}
.card img{width:100%;aspect-ratio:3/2;object-fit:cover}
.card-b{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.card h3{font-size:20px;color:var(--nuit)}
.card p{color:var(--muted);font-size:15px}
.card-link{margin-top:auto;padding-top:8px;display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--nuit);text-decoration:none;min-height:44px}
.card-link .ico{width:18px;height:18px;color:#b07d00}
.card-link:hover{text-decoration:underline}

/* Étapes */
.dark{background:var(--nuit);color:#fff}
.dark h2{color:#fff}
.dark .eyebrow{color:var(--y)}
.deroule{display:grid;gap:28px;align-items:center}
.steps{display:grid;gap:22px;counter-reset:s}
.steps li{display:grid;grid-template-columns:56px 1fr;gap:4px 16px;counter-increment:s}
.steps li::before{content:counter(s);grid-row:span 2;font-family:var(--f-title);font-weight:900;font-size:52px;line-height:1;color:var(--y)}
.steps h3{font-size:20px;color:#fff}
.steps p{color:rgba(254,250,236,.82);font-size:15px}
.deroule img{width:100%;border-radius:20px;box-shadow:0 20px 50px rgba(0,0,0,.4)}

/* Artisan */
.artisan{display:grid;gap:26px;align-items:center}
.artisan .lead{margin-top:14px;font-size:17px;color:var(--muted)}
.facts{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px}
.facts li{display:inline-flex;align-items:center;gap:8px;background:var(--soft);border:1px solid var(--line);padding:10px 14px;border-radius:999px;font-size:14px;font-weight:600;line-height:1.3}
.facts .ico{color:#b07d00;width:18px;height:18px}
.facts b{font-weight:800;color:var(--nuit)}
.mapcard{background:var(--nuit);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden;color:#fff}
.mapcard>svg{display:block;width:100%;height:auto}
.mapcard figcaption{padding:16px 18px;display:flex;align-items:center;gap:12px;font-weight:700;border-top:1px solid rgba(255,255,255,.1)}
.mapcard figcaption .ico{color:var(--y);width:22px;height:22px}
.mapcard figcaption small{display:block;font-weight:500;color:rgba(254,250,236,.75);font-size:13px}

/* Avis */
.avis-head{display:flex;flex-direction:column;gap:8px;margin-bottom:26px}
.avis-note{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;font-weight:700;color:var(--nuit)}
.avis-note .stars{display:inline-flex;color:#f5a800}
.avis{display:grid;gap:16px}
.avis figure{margin:0;background:#fff;border-radius:var(--radius);padding:22px 20px;box-shadow:var(--shadow);border:1px solid var(--line);display:flex;flex-direction:column;gap:16px}
.avis .q{width:34px;height:34px;color:var(--y);fill:currentColor;stroke:none}
.avis blockquote{margin:0;font-size:15px;color:var(--ink);line-height:1.6;overflow-wrap:anywhere}
.avis figcaption{display:flex;align-items:center;gap:12px;margin-top:auto}
.avis .av{display:flex;width:42px;height:42px;border-radius:50%;align-items:center;justify-content:center;color:#fff;font-weight:800;font-family:var(--f-title);flex:none}
.av1{background:#2f6fdf}.av2{background:#0f9b8e}.av3{background:#8a4fd1}.av4{background:#d9622b}
.avis cite{display:block;font-style:normal;font-weight:700;color:var(--nuit)}
.avis small{color:var(--muted);font-size:13px}
.avis-cta{margin-top:26px;text-align:center}

/* Zone */
.zone{display:grid;gap:26px;align-items:center}
.zones{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.zones li{background:var(--soft);border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-size:14px;font-weight:600}
.zone-svg{background:var(--soft);border-radius:20px;padding:10px;border:1px solid var(--line)}
.zone-svg svg{display:block;width:100%;height:auto}

/* FAQ */
.faq{display:grid;gap:12px;max-width:820px;margin-inline:auto}
.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 14px rgba(14,26,43,.05)}
.faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;min-height:56px;font-weight:700;color:var(--nuit)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{width:20px;height:20px;transition:transform .2s ease;color:#b07d00}
.faq details[open] summary .ico{transform:rotate(180deg)}
.faq details[open]{border-color:var(--y)}
.faq .rep{padding:0 18px 18px;color:var(--muted)}
.faq-t{text-align:center;margin-bottom:26px}

/* CTA final */
.final{position:relative;isolation:isolate;color:#fff;text-align:center;overflow:hidden;background:var(--nuit)}
.final .bg{position:absolute;inset:0;z-index:-2}
.final .bg img{width:100%;height:100%;object-fit:cover;object-position:70% 40%}
.final::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,26,43,.88),rgba(14,26,43,.92))}
.final .wrap{padding-block:56px;display:grid;justify-items:center;gap:14px}
.final h2{font-size:clamp(28px,7vw,42px);color:#fff;text-wrap:balance}
.final p{color:var(--cream);font-size:17px}
.final .btn{width:100%;max-width:520px;margin-top:8px}

/* Pied de page */
.foot{background:var(--nuit);padding-block:32px;color:rgba(254,250,236,.78);font-size:14px}
.foot .wrap{display:grid;gap:6px}
.foot a{color:var(--cream)}
.foot a.lien{display:inline-block;padding:10px 0;min-height:44px}
.foot .illu{margin-top:6px;font-size:12px;color:rgba(254,250,236,.5)}

/* Barre fixe mobile */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:7fr 3fr;gap:8px;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:var(--nuit);box-shadow:0 -8px 24px rgba(0,0,0,.25)}
.sticky .btn{min-height:52px;padding:10px 8px;font-size:16px}
.js .sticky{transform:translateY(120%);pointer-events:none;transition:transform .25s ease}
.js .sticky.on{transform:none;pointer-events:auto}
@media (prefers-reduced-motion:reduce){.js .sticky{transition:none}}
.sticky .btn-ghost{background:#fff;color:var(--nuit);border-color:#fff}

/* Pages simples (merci, mentions légales) */
.page{padding-block:48px 64px;min-height:50vh}
.page h1{font-size:clamp(30px,8vw,44px);color:var(--nuit)}
.page h2{font-size:22px;margin-top:28px;color:var(--nuit)}
.page p,.page li{margin-top:10px;color:var(--muted);overflow-wrap:anywhere}
.page ul{padding-left:20px;list-style:disc}
.page a{color:var(--nuit)}
.page .btn{margin-top:22px;color:var(--nuit)}

@media (min-width:600px){
  .cards{grid-template-columns:1fr 1fr}
  .avis{grid-template-columns:1fr 1fr}
  .trust ul{grid-template-columns:repeat(4,1fr)}
  .hero-cta{grid-template-columns:auto auto;justify-content:start}
  .btn-xl{width:auto;padding-inline:26px;white-space:nowrap}
  .hero-copy{max-width:860px}
  .hero h1,.hero-subtitle{max-width:640px}
}
@media (min-width:900px){
  body{padding-bottom:0}
  .sticky{display:none}
  .logo img{height:66px}
  .top .wrap{padding-block:12px}
  .top .btn{font-size:17px;min-height:48px;padding-inline:20px}
  .strip{font-size:14px}
  .hero{min-height:640px;display:flex;align-items:center}
  .hero::before{background:linear-gradient(90deg,rgba(14,26,43,.90) 0%,rgba(14,26,43,.82) 38%,rgba(14,26,43,.35) 70%,rgba(14,26,43,.18) 100%)}
  .hero-photo img{object-position:right center}
  .hero .wrap{padding-block:56px}
  .hero h1{font-size:clamp(46px,4.6vw,56px);line-height:1.05}
  .hero-subtitle{font-size:19px;margin-top:16px}
  .hero-bullets li{font-size:16px}
  .hero-cta{margin-top:26px}
  .btn-xl{min-height:72px;font-size:20px;gap:12px}
  .btn-xl .ico{width:28px;height:28px}
  .hero-cta .btn-ghost{font-size:17px}
  .proof{margin-top:24px;font-size:15px}
  .sec{padding-block:88px}
  .rappel{grid-template-columns:1fr 1fr;gap:56px}
  .lp-form-card{padding:30px 28px}
  .cards{grid-template-columns:repeat(4,1fr);gap:20px}
  .deroule{grid-template-columns:1.1fr .9fr;gap:64px}
  .artisan{grid-template-columns:1.1fr .9fr;gap:64px}
  .zone{grid-template-columns:1.2fr .8fr;gap:56px}
  .final .wrap{padding-block:88px}
  .page{padding-block:72px 96px}
}
@media (min-width:1100px){
  .hero{min-height:640px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fc-barre span,.btn,.faq summary .ico{transition:none}.dot{animation:none}}

@media (max-width:370px){.cta-long{display:none}.hero-badge{font-size:10.5px;letter-spacing:.04em}.btn-xl{font-size:15px}}
