/* =====================================================================
   MutuelleClair — Landing page « demande de devis »
   Objectif : concentrer toute l'attention sur le formulaire.
   Palette :
     marine principal  #073566
     marine profond    #052B52
     cyan principal    #25BCE3
     fond clair        #F7FAFD
     bordure           #DCEAF5
     texte secondaire  #526B84
     blanc             #FFFFFF
   ===================================================================== */

:root{
  --navy:#073566;
  --navy-deep:#052b52;
  --cyan:#25bce3;
  --cyan-hover:#14a6cc;
  --cyan-ink:#073566;            /* texte marine posé sur le cyan */
  --bg-soft:#f7fafd;
  --line:#dceaf5;
  --muted:#526b84;
  --white:#ffffff;
  --text:#22303f;

  --tint:#eef5fc;
  --shadow-card:0 30px 70px -24px rgba(7,40,78,.34);
  --shadow-sm:0 10px 24px -14px rgba(7,40,78,.20);
  --radius:14px;
  --radius-card:24px;
  --page:1440px;
  --anim:.32s;
  --ff:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{
  margin:0;font-family:var(--ff);color:var(--text);background:var(--white);
  font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img,svg{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-family:inherit;font-size:100%}
h1,h2,h3{margin:0;line-height:1.18;letter-spacing:-.015em}
p{margin:0}

.skip-link{position:absolute;left:-999px;top:8px;z-index:2000;background:#fff;color:var(--navy);
  padding:10px 16px;border-radius:10px;font-weight:800;box-shadow:var(--shadow-sm)}
.skip-link:focus{left:12px}
:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}

/* =====================================================================
   1. HEADER MINIMALISTE
   ===================================================================== */
.lp-header{
  position:sticky;top:0;z-index:1000;background:#fff;
  border-bottom:1px solid var(--line);
  transition:box-shadow var(--anim) ease;
}
.lp-header.is-scrolled{box-shadow:0 6px 20px -14px rgba(7,40,78,.28)}
.lp-header__inner{
  width:min(100% - 40px,var(--page));margin-inline:auto;
  min-height:78px;display:flex;align-items:center;gap:20px;
}
.lp-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.lp-brand img{width:42px;height:42px}
.lp-brand__text b{display:block;font-size:1.16rem;font-weight:900;color:var(--navy);letter-spacing:-.02em;line-height:1}
.lp-brand__text b span{color:var(--cyan)}
.lp-brand__text small{display:block;margin-top:3px;font-size:.68rem;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted)}

.lp-header__meta{display:flex;align-items:center;gap:18px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}
.lp-header__item{display:inline-flex;align-items:center;gap:9px;font-size:.82rem;font-weight:700;color:var(--navy)}
.lp-header__item svg{width:28px;height:28px;flex:0 0 28px;padding:6px;border-radius:50%;background:var(--tint);color:var(--cyan-hover)}
.lp-header__note{
  font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  color:var(--cyan-hover);padding:5px 11px;border-radius:999px;
  background:rgba(37,188,227,.10);border:1px solid rgba(37,188,227,.35);
}
.lp-header__badge{
  display:none;font-size:.72rem;font-weight:800;color:var(--navy);
  padding:5px 10px;border-radius:999px;background:var(--tint);border:1px solid var(--line);
}

/* =====================================================================
   BOUTONS
   ===================================================================== */
.lp-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-weight:800;font-size:1.06rem;line-height:1;cursor:pointer;text-align:center;
  letter-spacing:.01em;
  min-height:54px;padding:.9em 1.6em;border-radius:999px;border:2px solid transparent;
  transition:background var(--anim) ease,color var(--anim) ease,border-color var(--anim) ease,transform .18s ease;
}
.lp-btn--primary{
  background:var(--cyan);color:var(--cyan-ink);
  box-shadow:0 16px 30px -14px rgba(37,188,227,.7);
}
.lp-btn--primary:hover{background:var(--cyan-hover);transform:translateY(-1px)}
.lp-btn--ghost{background:#fff;color:var(--navy);border-color:var(--line)}
.lp-btn--ghost:hover{background:var(--bg-soft);border-color:#c6d9ea}
.lp-btn[disabled]{opacity:.7;cursor:progress;transform:none}

/* =====================================================================
   2. HERO
   ===================================================================== */
.lp-hero{position:relative;isolation:isolate;background:var(--navy-deep);overflow:hidden}
.lp-hero__media{position:absolute;inset:0;z-index:-2}
.lp-hero__media img{
  width:100%;height:100%;object-fit:cover;object-position:20% 30%;
  filter:saturate(.72) brightness(.82);
}
/* voile marine : très sombre à gauche (texte), plus transparent vers le formulaire */
.lp-hero__veil{
  position:absolute;inset:0;
  background:
    linear-gradient(101deg,
      var(--navy-deep) 0%,
      rgba(5,43,82,.95) 34%,
      rgba(5,43,82,.72) 58%,
      rgba(5,43,82,.55) 100%),
    linear-gradient(to bottom, rgba(5,43,82,.45), rgba(5,43,82,.35));
}

.lp-hero__wrap{
  width:min(100% - 40px,var(--page));margin-inline:auto;
  display:grid;grid-template-columns:46fr 54fr;
  grid-template-areas:
    "intro form"
    "trust form";
  column-gap:clamp(28px,4vw,52px);row-gap:16px;align-items:start;
  padding:clamp(22px,3.4vw,40px) 0 clamp(26px,4vw,48px);
}
.lp-hero__intro{grid-area:intro;max-width:38rem;align-self:end}
.lp-kicker{
  display:inline-block;padding:6px 13px;border-radius:999px;
  background:rgba(37,188,227,.18);border:1px solid rgba(37,188,227,.5);
  color:#c6effb;font-size:.74rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
}
.lp-hero h1{
  color:#fff;font-weight:700;line-height:1.1;margin-top:12px;
  font-size:clamp(30px,2.5vw,46px);letter-spacing:-.02em;
  text-shadow:0 2px 18px rgba(0,0,0,.28);
}
.lp-hero h1 em{font-style:normal;color:var(--cyan)}
.lp-hero__lead{
  color:rgba(255,255,255,.94);margin-top:10px;max-width:32em;
  font-size:clamp(1.02rem,1.2vw,1.12rem);text-shadow:0 1px 10px rgba(0,0,0,.25);
}
.lp-hero__trust{
  grid-area:trust;list-style:none;margin:0;padding:0;
  display:flex;flex-direction:column;gap:8px;align-self:start;
}
.lp-hero__trust li{
  display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:.96rem;
}
.lp-hero__trust svg{
  width:15px;height:15px;flex:0 0 22px;box-sizing:content-box;padding:3px;
  border-radius:50%;background:rgba(37,188,227,.22);color:var(--cyan);
}

/* =====================================================================
   CARTE FORMULAIRE  (élément le plus lumineux et contrasté de la page)
   ===================================================================== */
.lp-card{
  grid-area:form;width:100%;max-width:640px;margin-left:auto;
  background:#fff;border-radius:var(--radius-card);
  border-top:4px solid var(--cyan);
  box-shadow:var(--shadow-card);
  padding:clamp(22px,2vw,26px);
  opacity:0;transform:translateY(14px);
  animation:lp-card-in .4s ease .05s forwards;
}
@keyframes lp-card-in{to{opacity:1;transform:none}}

.lp-card__head{margin-bottom:16px}
.lp-card__head h2{color:var(--navy);font-size:1.4rem;font-weight:900;line-height:1.2}
.lp-card__head > p{margin-top:6px;color:var(--muted);font-size:.96rem}

/* =====================================================================
   FORMULAIRE KINDILAB  (embed natif rendu dans la carte blanche)
   Surcharges pour l’embed Kindilab : grilles 2×2, champs,
   bouton pleine largeur cyan. Le contenu (étapes, champs, case de
   consentement) est fourni par le script Kindilab.
   ===================================================================== */
#kindilab-native-mutuelle-sante{width:100%}

/* masque le « chrome » d'étapes parasite du widget */
#kindilab-native-mutuelle-sante [class*="step-title"],
#kindilab-native-mutuelle-sante [class*="step-heading"],
#kindilab-native-mutuelle-sante [class*="step-name"],
#kindilab-native-mutuelle-sante [class*="step-label"],
#kindilab-native-mutuelle-sante [class*="step-indicator"],
#kindilab-native-mutuelle-sante [class*="progress-bar"],
#kindilab-native-mutuelle-sante [class*="stepper"],
#kindilab-native-mutuelle-sante [class*="step-counter"],
#kindilab-native-mutuelle-sante [class*="question-title"],
#kindilab-native-mutuelle-sante [data-mc-hide="true"]{display:none!important}

/* choix en grille 2×2 */
#kindilab-native-mutuelle-sante .dfe-image-cards,
#kindilab-native-mutuelle-sante .dfe-card-options,
#kindilab-native-mutuelle-sante .dfe-choice-cards,
#kindilab-native-mutuelle-sante .dfe-options,
#kindilab-native-mutuelle-sante [class*="card-grid"],
#kindilab-native-mutuelle-sante [class*="choices"]{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;margin-top:8px!important;
}
#kindilab-native-mutuelle-sante .dfe-card-option,
#kindilab-native-mutuelle-sante .dfe-ic-option,
#kindilab-native-mutuelle-sante [class*="card-option"],
#kindilab-native-mutuelle-sante [class*="choice-option"],
#kindilab-native-mutuelle-sante [class*="radio-card"],
#kindilab-native-mutuelle-sante .dfe-option,
#kindilab-native-mutuelle-sante .dfe-choices label,
#kindilab-native-mutuelle-sante .dfe-field label:has(input[type=radio]){
  min-height:0!important;height:auto!important;
  border-radius:10px!important;border:1.5px solid var(--line)!important;background:#fff!important;
  padding:11px 12px!important;box-shadow:none!important;text-align:center!important;
  transition:border-color .15s ease,background .15s ease!important;
}
#kindilab-native-mutuelle-sante .dfe-ic-inner,
#kindilab-native-mutuelle-sante [class*="ic-inner"],
#kindilab-native-mutuelle-sante [class*="card-inner"],
#kindilab-native-mutuelle-sante [class*="option-inner"]{
  display:flex!important;flex-direction:column!important;align-items:center!important;
  justify-content:center!important;width:100%!important;text-align:center!important;gap:5px!important;
}
#kindilab-native-mutuelle-sante .dfe-ic-img,
#kindilab-native-mutuelle-sante .dfe-ic-img img,
#kindilab-native-mutuelle-sante .dfe-card-option img,
#kindilab-native-mutuelle-sante .dfe-ic-option img{
  width:46px!important;height:46px!important;min-width:0!important;min-height:0!important;
  object-fit:contain!important;margin:0 auto!important;display:block!important;
}
#kindilab-native-mutuelle-sante .dfe-card-option:hover,
#kindilab-native-mutuelle-sante .dfe-ic-option:hover{border-color:#b9d6ea!important}
#kindilab-native-mutuelle-sante .dfe-card-option.selected,
#kindilab-native-mutuelle-sante .dfe-ic-option.selected,
#kindilab-native-mutuelle-sante [class*="card-option"].selected{
  border-color:var(--cyan)!important;background:rgba(37,188,227,.10)!important;
}
#kindilab-native-mutuelle-sante .dfe-ic-label,
#kindilab-native-mutuelle-sante .dfe-card-option .dfe-label,
#kindilab-native-mutuelle-sante [class*="card-option"] [class*="label"],
#kindilab-native-mutuelle-sante .dfe-choices label{
  font-size:.9rem!important;line-height:1.2!important;font-weight:800!important;
}

/* libellés + champs texte / select / date */
#kindilab-native-mutuelle-sante .dfe-label{color:var(--navy)!important;font-weight:800!important;font-size:.9rem!important}
#kindilab-native-mutuelle-sante .dfe-field > .dfe-label,
#kindilab-native-mutuelle-sante legend{margin-bottom:6px!important}
#kindilab-native-mutuelle-sante .dfe-input,
#kindilab-native-mutuelle-sante input:not([type=radio]):not([type=checkbox]):not([type=hidden]),
#kindilab-native-mutuelle-sante select,
#kindilab-native-mutuelle-sante textarea{
  width:100%!important;min-height:48px!important;padding:.6rem .9rem!important;
  border:1px solid #e2ecf6!important;border-radius:12px!important;
  background:#fff!important;color:var(--text)!important;font-size:1rem!important;
  box-shadow:0 1px 2px rgba(7,40,78,.04)!important;
}
#kindilab-native-mutuelle-sante .dfe-input:focus,
#kindilab-native-mutuelle-sante input:focus,
#kindilab-native-mutuelle-sante select:focus,
#kindilab-native-mutuelle-sante textarea:focus{
  border-color:var(--cyan)!important;box-shadow:0 0 0 3px rgba(37,188,227,.2)!important;outline:none!important;
}

/* case + texte de consentement fournis par Kindilab : compacts */
#kindilab-native-mutuelle-sante [class*="consent"] label,
#kindilab-native-mutuelle-sante .dfe-field label:has(input[type=checkbox]){
  display:flex!important;align-items:flex-start!important;gap:10px!important;
  font-size:.82rem!important;line-height:1.45!important;color:var(--muted)!important;
}
#kindilab-native-mutuelle-sante input[type=checkbox]{accent-color:var(--cyan)}

/* espacements resserrés : 12 px entre champs, 6 px libellé/champ, 5 px champ/aide */
#kindilab-native-mutuelle-sante .dfe-fields-row{margin:-6px!important}
#kindilab-native-mutuelle-sante .dfe-field{padding:6px!important}
#kindilab-native-mutuelle-sante .dfe-error{margin-top:5px!important}
#kindilab-native-mutuelle-sante .dfe-help{margin-top:5px!important}
#kindilab-native-mutuelle-sante .dfe-checkbox-label{padding:11px 14px!important}
#kindilab-native-mutuelle-sante .dfe-submit-row{margin-top:8px!important;padding-top:8px!important}

/* boutons du widget */
#kindilab-native-mutuelle-sante .dfe-step-nav{
  display:flex!important;flex-direction:column-reverse!important;gap:10px!important;margin-top:8px!important;
}
#kindilab-native-mutuelle-sante .dfe-btn,
#kindilab-native-mutuelle-sante button{
  border:0!important;font-weight:800!important;cursor:pointer!important;border-radius:999px!important;
}
#kindilab-native-mutuelle-sante .dfe-btn-next,
#kindilab-native-mutuelle-sante .dfe-btn-primary,
#kindilab-native-mutuelle-sante button[type=submit]{
  width:100%!important;min-height:52px!important;font-size:1.04rem!important;
  background:var(--cyan)!important;color:var(--cyan-ink)!important;
  box-shadow:0 16px 30px -14px rgba(37,188,227,.7)!important;
}
#kindilab-native-mutuelle-sante .dfe-btn-next:hover,
#kindilab-native-mutuelle-sante button[type=submit]:hover{background:var(--cyan-hover)!important}
#kindilab-native-mutuelle-sante .dfe-btn-prev{
  width:100%!important;min-height:auto!important;padding:6px!important;
  background:transparent!important;color:var(--muted)!important;
  text-decoration:underline!important;box-shadow:none!important;
}

@media (max-width:520px){
  #kindilab-native-mutuelle-sante .dfe-image-cards,
  #kindilab-native-mutuelle-sante .dfe-card-options,
  #kindilab-native-mutuelle-sante .dfe-choice-cards,
  #kindilab-native-mutuelle-sante .dfe-options,
  #kindilab-native-mutuelle-sante [class*="card-grid"],
  #kindilab-native-mutuelle-sante [class*="choices"]{grid-template-columns:1fr!important}
}

.lp-form__legal{margin-top:16px;font-size:.78rem;line-height:1.55;color:var(--muted)}
.lp-form__legal strong{color:var(--navy)}
.lp-form__legal a{color:var(--cyan-hover);text-decoration:underline;text-underline-offset:2px}
.lp-form__legal a:hover{color:var(--navy)}

/* =====================================================================
   SURCOUCHE : date de naissance manuelle + autocomplétion ville / CP
   (champs injectés par js/kindilab-enhance.js dans l'embed Kindilab)
   ===================================================================== */
#kindilab-native-mutuelle-sante .mc-native-hidden{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important;
}
.mc-visually-hidden{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

/* ---- date de naissance ---- */
#kindilab-native-mutuelle-sante .mc-dob{position:relative;display:block}
#kindilab-native-mutuelle-sante .mc-dob__field{
  min-height:50px!important;border-radius:12px!important;border:1px solid var(--line)!important;
  padding-right:48px!important;font-size:1.02rem!important;letter-spacing:.02em!important;
  transition:border-color .25s ease,box-shadow .25s ease!important;
}
#kindilab-native-mutuelle-sante .mc-dob__field::placeholder{color:#8fa6bd!important}
#kindilab-native-mutuelle-sante .mc-dob__field:focus{
  border-color:var(--cyan)!important;box-shadow:0 0 0 3px rgba(37,188,227,.22)!important;
}
#kindilab-native-mutuelle-sante .mc-dob__btn{
  position:absolute;top:50%;right:8px;transform:translateY(-50%);
  width:34px;height:34px;display:grid;place-items:center;
  border:0!important;border-radius:9px!important;background:transparent!important;
  color:var(--navy)!important;cursor:pointer;box-shadow:none!important;
  transition:background .2s ease!important;
}
#kindilab-native-mutuelle-sante .mc-dob__btn:hover{background:var(--tint)!important}
#kindilab-native-mutuelle-sante .mc-dob__btn:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
#kindilab-native-mutuelle-sante .mc-dob__btn svg{width:20px;height:20px}

/* ---- autocomplétion ville ---- */
#kindilab-native-mutuelle-sante [data-dfe-name="city"]{position:relative}
#kindilab-native-mutuelle-sante .mc-ac__list{
  position:absolute;left:0;right:0;z-index:50;margin:4px 0 0;padding:4px;list-style:none;
  background:#fff;border:1px solid var(--line);border-radius:12px;
  box-shadow:0 20px 44px -18px rgba(7,40,78,.35);
  max-height:300px;overflow-y:auto;
}
#kindilab-native-mutuelle-sante .mc-ac__list[hidden]{display:none}
#kindilab-native-mutuelle-sante .mc-ac__opt{
  display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 12px;
  border-radius:9px;cursor:pointer;color:var(--navy);font-size:.95rem;line-height:1.35;
  transition:background .18s ease;
}
#kindilab-native-mutuelle-sante .mc-ac__opt + .mc-ac__opt{border-top:1px solid #eef4fa}
#kindilab-native-mutuelle-sante .mc-ac__opt:hover{background:var(--bg-soft)}
#kindilab-native-mutuelle-sante .mc-ac__opt.is-active{
  background:rgba(37,188,227,.12);box-shadow:inset 3px 0 0 var(--cyan);font-weight:800;
}
#kindilab-native-mutuelle-sante .mc-ac__mark{
  flex:0 0 14px;width:14px;height:14px;border-radius:50%;background:transparent;
}
#kindilab-native-mutuelle-sante .mc-ac__opt.is-active .mc-ac__mark{
  background:var(--cyan);box-shadow:inset 0 0 0 3px #fff;
}
#kindilab-native-mutuelle-sante .mc-ac__opt--info,
#kindilab-native-mutuelle-sante .mc-ac__opt--action{
  color:var(--muted);font-style:italic;cursor:default;min-height:44px;
}
#kindilab-native-mutuelle-sante .mc-ac__opt--action{
  color:var(--cyan-hover);font-style:normal;font-weight:800;cursor:pointer;text-decoration:underline;
}
#kindilab-native-mutuelle-sante .mc-ac__spin{
  flex:0 0 15px;width:15px;height:15px;border-radius:50%;
  border:2px solid rgba(37,188,227,.3);border-top-color:var(--cyan);
  animation:mc-spin .7s linear infinite;
}
@keyframes mc-spin{to{transform:rotate(360deg)}}
#kindilab-native-mutuelle-sante .mc-note{
  margin:6px 0 0!important;font-size:.85rem!important;line-height:1.45!important;
  color:#8a5a17!important;background:#fff7ec;border:1px solid #f2dcba;border-radius:8px;padding:8px 10px;
}
#kindilab-native-mutuelle-sante .mc-note[hidden]{display:none}

/* ---- choix du code postal ---- */
#kindilab-native-mutuelle-sante .mc-cp-choice{margin:10px 0 0}
#kindilab-native-mutuelle-sante .mc-cp-choice[hidden]{display:none}
#kindilab-native-mutuelle-sante .mc-cp-choice__title{
  margin:0 0 8px!important;font-size:.9rem!important;font-weight:800!important;color:var(--navy)!important;
}
#kindilab-native-mutuelle-sante .mc-cp-choice__grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;
}
#kindilab-native-mutuelle-sante .mc-cp-choice__btn{
  min-height:48px!important;padding:7px 10px!important;border-radius:10px!important;
  border:1.5px solid var(--line)!important;background:#fff!important;color:var(--navy)!important;
  font-weight:800!important;font-size:1rem!important;cursor:pointer;box-shadow:none!important;
  transition:border-color .2s ease,background .2s ease!important;
}
#kindilab-native-mutuelle-sante .mc-cp-choice__btn:hover{border-color:#b9d6ea!important}
#kindilab-native-mutuelle-sante .mc-cp-choice__btn[aria-pressed="true"]{
  border-color:var(--cyan)!important;background:rgba(37,188,227,.12)!important;
  box-shadow:0 8px 20px -12px rgba(37,188,227,.6)!important;
}
#kindilab-native-mutuelle-sante .mc-cp-choice__btn:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}

@media (prefers-reduced-motion:reduce){
  #kindilab-native-mutuelle-sante .mc-dob__field,
  #kindilab-native-mutuelle-sante .mc-dob__btn,
  #kindilab-native-mutuelle-sante .mc-ac__opt,
  #kindilab-native-mutuelle-sante .mc-cp-choice__btn{transition:none!important}
  #kindilab-native-mutuelle-sante .mc-ac__spin{animation-duration:.01ms!important}
}

/* =====================================================================
   3. SECTION « VOTRE DEMANDE EN 3 ÉTAPES »
   ===================================================================== */
.lp-sec-head{max-width:620px;margin:0 auto clamp(34px,5vw,52px);text-align:center}
.lp-pill{
  display:inline-block;padding:7px 16px;border-radius:999px;background:#fff;
  border:1.5px solid var(--cyan);color:var(--cyan-hover);
  font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
}
.lp-pill--light{background:rgba(37,188,227,.12);border-color:rgba(37,188,227,.55);color:#bdeffb}
.lp-sec-head h2{margin-top:15px;color:var(--navy);font-size:clamp(1.55rem,2.6vw,2.15rem);font-weight:900;line-height:1.22}
.lp-sec-head p{margin-top:12px;color:var(--muted);font-size:1.04rem;line-height:1.6}
.lp-sec-head--light h2{color:#fff}
.lp-sec-head--light p{color:rgba(255,255,255,.82)}

.lp-how{background:var(--bg-soft);padding:clamp(52px,7.5vw,92px) 0}
.lp-how__inner{width:min(100% - 40px,1120px);margin-inline:auto}
.lp-how__cta{margin-top:clamp(30px,4.5vw,44px);text-align:center}

.lp-how__steps{
  list-style:none;margin:0;padding:34px 0 0;position:relative;
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,32px);
}
/* ligne cyan reliant les étapes (ordinateur) */
.lp-how__steps::before{
  content:"";position:absolute;top:34px;left:16.66%;right:16.66%;height:2px;
  background:var(--cyan);opacity:.5;z-index:0;
}
.lp-how__step{
  position:relative;z-index:1;background:#fff;border:1px solid var(--line);border-radius:18px;
  box-shadow:0 6px 20px -16px rgba(7,53,102,.22);
  padding:44px clamp(20px,2.2vw,26px) clamp(22px,2.4vw,28px);
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;
  opacity:0;transform:translateY(16px);
  transition:opacity .4s ease,transform .4s ease;
}
.lp-how__step.is-in{opacity:1;transform:none}
.lp-how__step:nth-child(2){transition-delay:.08s}
.lp-how__step:nth-child(3){transition-delay:.16s}
.lp-how__num{
  position:absolute;top:0;left:50%;transform:translate(-50%,-50%);
  width:52px;height:52px;border-radius:50%;background:var(--cyan);color:#fff;
  display:grid;place-items:center;font-weight:900;font-size:1.35rem;line-height:1;
  border:4px solid var(--bg-soft);z-index:2;
}
.lp-how__icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--tint);color:var(--navy)}
.lp-how__icon svg{width:23px;height:23px}
.lp-how__step h3{color:var(--navy);font-size:1.13rem;font-weight:900;line-height:1.3}
.lp-how__step p{color:var(--muted);font-size:.98rem;line-height:1.6}

/* =====================================================================
   4. SECTION D'ACCOMPAGNEMENT
   ===================================================================== */
.lp-care{background:var(--navy-deep);color:#fff;padding:clamp(56px,8vw,100px) 0}
.lp-care__inner{width:min(100% - 40px,1120px);margin-inline:auto}
.lp-care__grid{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
}
.lp-care__item{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:18px;
  padding:22px 20px;display:flex;flex-direction:column;gap:10px;
  opacity:0;transform:translateY(16px);
  transition:opacity .4s ease,transform .4s ease;
}
.lp-care__item.is-in{opacity:1;transform:none}
.lp-care__item:nth-child(2){transition-delay:.06s}
.lp-care__item:nth-child(3){transition-delay:.12s}
.lp-care__item:nth-child(4){transition-delay:.18s}
.lp-care__icon{
  width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
  background:rgba(37,188,227,.14);color:var(--cyan);
}
.lp-care__icon svg{width:23px;height:23px}
.lp-care__item h3{color:#fff;font-size:1.06rem;font-weight:900;line-height:1.3}
.lp-care__item p{color:rgba(255,255,255,.8);font-size:.95rem;line-height:1.6}
.lp-care__pledge{
  margin:clamp(28px,4vw,40px) auto 0;max-width:640px;text-align:center;color:#fff;
  font-weight:800;font-size:1.06rem;line-height:1.5;padding:16px 22px;border-radius:14px;
  background:rgba(255,255,255,.06);border:1px solid rgba(37,188,227,.4);
}
/* Variante fond blanc */
.lp-care--light{background:#fff;color:var(--navy)}
.lp-care--light .lp-care__item{background:var(--bg-soft);border-color:var(--line)}
.lp-care--light .lp-care__item h3{color:var(--navy)}
.lp-care--light .lp-care__item p{color:var(--muted)}
.lp-care--light .lp-care__pledge{background:var(--tint);border-color:rgba(37,188,227,.4);color:var(--navy)}

/* =====================================================================
   5. FOOTER COURT
   ===================================================================== */
.lp-foot{background:var(--navy-deep);color:#fff;padding:clamp(30px,4vw,44px) 0 24px;border-top:1px solid rgba(255,255,255,.08)}
.lp-foot__inner{width:min(100% - 40px,var(--page));margin-inline:auto}
.lp-foot__top{
  display:flex;align-items:center;justify-content:space-between;gap:18px 24px;flex-wrap:wrap;
}
.lp-foot__brand{display:inline-flex;align-items:center;gap:12px}
.lp-foot__brand img{width:38px;height:38px}
.lp-foot__brand b{font-size:1.12rem;font-weight:900;color:#fff;letter-spacing:-.02em}
.lp-foot__brand b span{color:var(--cyan)}
.lp-foot__brand small{display:block;margin-top:3px;color:#c9d8e7;font-size:.82rem;font-weight:600}
.lp-foot__reg{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#c9d8e7;font-size:.86rem;font-weight:700}
.lp-foot__badge{
  padding:5px 12px;border-radius:999px;background:rgba(37,188,227,.12);
  border:1px solid rgba(37,188,227,.4);color:#bdeffb;font-size:.8rem;font-weight:800;
}

.lp-foot__legal{
  display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;
  margin:20px 0;padding:16px 0;
  border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);
}
.lp-foot__legal a,.lp-foot__cookie{
  color:#c9d8e7;font-size:.92rem;font-weight:700;font:inherit;background:none;border:0;
  padding:4px 2px;margin:0;cursor:pointer;line-height:1.4;
  transition:color .2s ease;
}
.lp-foot__legal a:hover,.lp-foot__cookie:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.lp-foot__legal a:focus-visible,.lp-foot__cookie:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:4px}

.lp-foot__copy{text-align:center;color:#9fb6cc;font-size:.84rem;line-height:1.6}
.lp-foot__disclaimer{display:block;margin-top:4px}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
/* Grand écran : la colonne de gauche s'ajuste au titre, qui reste sur une ligne */
@media (min-width:1120px){
  .lp-hero__wrap{
    grid-template-columns:minmax(0,max-content) minmax(340px,1fr);
    column-gap:44px;
  }
  .lp-hero__intro{max-width:none}
  .lp-hero h1{white-space:nowrap;line-height:1.08}
}

@media (max-width:1040px){
  .lp-hero__wrap{
    grid-template-columns:1fr;
    grid-template-areas:"intro" "form" "trust";
    row-gap:18px;
  }
  .lp-hero__intro{max-width:none;align-self:auto}
  .lp-card{margin-inline:auto}
  .lp-hero__trust{max-width:640px;margin-inline:auto}
  /* tablette : 1 ou 2 lignes, 28–36 px */
  .lp-hero h1{font-size:clamp(28px,4vw,36px);line-height:1.12}
}

@media (max-width:900px){
  .lp-how__steps{grid-template-columns:1fr;gap:34px;padding-top:30px}
  .lp-how__steps::before{
    left:calc(clamp(20px,2.2vw,26px) + 26px);right:auto;top:30px;bottom:30px;
    width:2px;height:auto;
  }
  .lp-how__step{align-items:flex-start}
  .lp-care__grid{grid-template-columns:1fr}
}

/* ----- Mobile : header allégé + hero resserré ----- */
@media (max-width:720px){
  html{scroll-padding-top:76px}
  body{font-size:16px}

  .lp-header__inner{min-height:62px;gap:12px}
  .lp-brand img{width:36px;height:36px}
  .lp-header__item,.lp-header__note{display:none}
  .lp-header__badge{display:inline-block}
  .lp-header__meta{margin-left:auto;gap:0}

  .lp-hero__wrap{padding:16px 0 24px;row-gap:14px}
  .lp-hero__media img{object-position:50% 30%}
  /* la grande photo laisse place à un fond marine simple */
  .lp-hero__veil{background:linear-gradient(180deg,var(--navy-deep),#06305c)}
  .lp-hero__media img{display:none}
  /* mobile : retour à la ligne naturel, 2 lignes max, interligne compact */
  .lp-hero h1{margin-top:10px;font-size:clamp(27px,6.8vw,32px);line-height:1.1;white-space:normal}
  .lp-hero__lead{margin-top:10px;font-size:1rem}

  .lp-card{
    max-width:none;margin-inline:0;border-radius:20px;
    padding:18px clamp(14px,4vw,18px);
  }
  .lp-card__head h2{font-size:1.24rem}

  .lp-hero__trust{gap:8px}

  /* ----- Footer compact : 2 colonnes en haut, liens resserrés ----- */
  .lp-foot{padding:16px 0 12px}

  .lp-foot__top{
    flex-wrap:nowrap;align-items:flex-start;gap:12px;
  }
  .lp-foot__brand{gap:10px;min-width:0}
  .lp-foot__brand img{width:30px;height:30px}
  .lp-foot__brand b{font-size:1rem}
  .lp-foot__brand small{margin-top:2px;font-size:.72rem}

  .lp-foot__reg{
    flex-direction:column;align-items:flex-end;gap:4px;
    text-align:right;font-size:.76rem;min-width:0;
  }
  .lp-foot__badge{padding:4px 9px;font-size:.72rem}

  .lp-foot__legal{
    display:grid;grid-template-columns:1fr 1fr;
    gap:0 14px;margin:8px 0;padding:6px 0;
  }
  .lp-foot__legal a,.lp-foot__cookie{
    display:block;font-size:.82rem;padding:4px 4px;text-align:center;line-height:1.25;
  }
  .lp-foot__legal > :last-child:nth-child(odd){
    grid-column:1 / -1;justify-self:center;
  }

  .lp-foot__copy{font-size:.78rem;line-height:1.38}
  .lp-foot__disclaimer{margin-top:1px}
}

/* ----- respect de « Réduire les animations » ----- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .lp-card,.lp-how__step,.lp-care__item{opacity:1;transform:none}
}
