/* =====================================================================
   GlassAuto — Gironde
   Charte calquée sur glassauto.fr (captures du dossier /screenshot) :
   bandeau sombre en biseau, boutons pilule rouges, bandeau défilant cyan,
   titres très gras resserrés, pastilles d'icônes cyan.
   ===================================================================== */

:root{
  --sombre:#2f3237;
  --tuile:#494949;
  --rouge:#d32d4b;
  --rouge-fonce:#b4223d;
  --cyan:#429ab3;
  --cyan-fonce:#2c7a91;   /* cyan pour petits textes : contraste AA sur blanc */
  --vert:#74d6a8;
  --gris-050:#f6f6f6;
  --gris-100:#f0f0f0;
  --gris-200:#e3e3e3;
  --gris-300:#cfcfcf;
  --gris-500:#6b6e73;
  --blanc:#fff;
  --texte:#2f3237;

  --f-titre:'Plus Jakarta Sans',system-ui,sans-serif;
  --f-capitales:'Jost',system-ui,sans-serif;
  --f-texte:'Roboto',system-ui,sans-serif;

  --ombre-btn:0 6px 14px -4px rgb(211 45 75 / .45);
  --rayon:6px;
  --ease:cubic-bezier(.2,0,0,1);

  --header-h:96px;
  --page:1640px;
  --contenu:1480px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%}
body{
  font-family:var(--f-texte);font-size:1.0625rem;line-height:1.6;color:var(--texte);
  background:var(--gris-050);-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img,svg{display:block;max-width:100%}
a{color:var(--cyan-fonce)}
button,input,select{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}

h1,h2,h3{font-family:var(--f-titre);font-weight:800;letter-spacing:-.045em;line-height:1.08}
.titre-cyan{color:var(--cyan)}
.capitales{font-family:var(--f-capitales);font-weight:600;text-transform:uppercase;letter-spacing:.18em}

.icone{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-9999px;top:0;z-index:300;background:var(--sombre);color:var(--blanc);padding:12px 18px}
.skip-link:focus{left:0}

/* ------------------------------------------------------------- Boutons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:0 26px;border:none;border-radius:999px;cursor:pointer;
  font-family:var(--f-texte);font-weight:500;font-size:1.0625rem;text-decoration:none;white-space:nowrap;
  transition:background-color .15s,box-shadow .15s,transform .15s var(--ease);touch-action:manipulation;
}
.btn:active{transform:scale(.98)}
.btn-rouge{background:var(--rouge);color:var(--blanc);box-shadow:var(--ombre-btn)}
.btn-rouge:hover{background:var(--rouge-fonce);color:var(--blanc)}
.btn-cyan{background:var(--cyan);color:var(--blanc);box-shadow:0 6px 14px -6px rgb(66 154 179 / .55)}
.btn-cyan:hover{background:var(--cyan-fonce);color:var(--blanc)}
.btn-grand{min-height:64px;padding:0 44px;font-family:var(--f-capitales);font-weight:600;text-transform:uppercase;letter-spacing:.18em;font-size:1rem}
.btn-bloc{width:100%}
.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}
.btn.is-ok{background:#2f9e6b;box-shadow:none}

.lien-souligne{
  display:inline-flex;align-items:center;gap:8px;min-height:44px;
  color:var(--cyan-fonce);font-weight:500;text-decoration:none;border-bottom:1px solid var(--gris-300);
}
.lien-souligne:hover{border-bottom-color:currentColor}

/* -------------------------------------------------------------- Header */
.entete{position:sticky;top:0;z-index:100;background:var(--sombre);height:var(--header-h)}
.entete::after{
  /* zone claire en biseau, à droite */
  content:"";position:absolute;top:0;right:0;bottom:0;width:max(460px,calc((100% - var(--contenu)) / 2 + 460px));background:var(--gris-050);
  clip-path:polygon(64px 0,100% 0,100% 100%,0 100%);z-index:0;
}
.entete .nav{position:relative;z-index:1;max-width:var(--contenu);height:100%;margin:0 auto;padding:0 80px;display:flex;align-items:center;gap:32px}
.marque{display:flex;align-items:center;flex-shrink:0}
.marque img{height:46px;width:auto}
.nav-liens{display:flex;gap:30px}
.nav-liens a{
  color:var(--blanc);text-decoration:none;font-weight:500;font-size:1.0625rem;
  padding:6px 0;border-bottom:1px solid rgb(255 255 255 / .35);transition:border-color .15s;
}
.nav-liens a:hover{border-bottom-color:var(--blanc)}
.nav-droite{margin-left:auto;display:flex;align-items:center;gap:24px}
.nav-contact{
  display:inline-flex;align-items:center;gap:8px;color:var(--cyan-fonce);font-weight:500;font-size:1.0625rem;
  text-decoration:none;padding:6px 0;border-bottom:1px solid var(--gris-300);
}
.nav-contact:hover{border-bottom-color:currentColor}
.menu-toggle{display:none;width:48px;height:48px;place-items:center;background:none;border:none;color:var(--sombre);cursor:pointer}

/* ------------------------------------------------------- Bandeau défilant */
.page{background:var(--blanc)}
.defilant{background:var(--cyan);color:var(--blanc);overflow:hidden;white-space:nowrap;height:58px;display:flex;align-items:center}
.defilant-piste{display:flex;gap:80px;padding-left:80px;animation:defile 40s linear infinite;font-size:1rem}
.defilant:hover .defilant-piste{animation-play-state:paused}
@keyframes defile{to{transform:translateX(-50%)}}

.fil-ariane{background:var(--gris-050);padding:10px 0}
.fil-ariane ol{list-style:none;display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:1rem;color:var(--gris-500)}
.fil-ariane li+li::before{content:"›";margin-right:10px;color:var(--texte)}
.fil-ariane a{color:var(--cyan-fonce)}

.contenu{max-width:var(--contenu);margin:0 auto;padding:0 80px}

/* ---------------------------------------------------------------- Hero */
.hero{padding:72px 0 56px}
.hero h1{font-size:clamp(2.6rem,6.2vw,5.4rem);text-align:center;margin-bottom:44px}
.hero h1 span{color:var(--cyan)}
.hero-corps{display:grid;grid-template-columns:1fr auto;gap:56px;align-items:center}
.hero-corps p{font-size:1.25rem;line-height:1.55}
.hero-offre{
  display:inline-flex;align-items:center;gap:10px;margin-top:20px;
  border:2px solid var(--rouge);color:var(--rouge);border-radius:999px;padding:8px 18px;font-weight:500;font-size:1rem;
}
.hero-garanties{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:20px;list-style:none;font-weight:500;font-size:1rem}
.hero-garanties li{display:flex;align-items:center;gap:8px}
.hero-garanties .icone{color:var(--cyan)}

/* ------------------------------------------------------ Panneau gris */
.panneau{position:relative;background:var(--gris-050);margin:0 max(80px,calc((100% - 1320px) / 2));padding:72px 80px 80px}
.panneau::after{
  /* coin replié cyan */
  content:"";position:absolute;top:0;right:0;width:64px;height:90px;background:var(--cyan);
  clip-path:polygon(0 0,100% 100%,0 100%);
}
.panneau h2,.section h2{font-size:clamp(2rem,3.6vw,3.1rem);margin-bottom:40px}

/* ------------------------------------------------- Carte rendez-vous */
.carte-rdv{display:grid;grid-template-columns:400px 1fr;background:var(--blanc)}
.carte-rdv-cote{background:var(--sombre);color:var(--blanc);padding:44px 40px;display:flex;flex-direction:column;gap:28px}
.carte-rdv-cote h3{font-size:1.75rem}
.carte-rdv-cote ol{list-style:none;display:grid;gap:22px}
.carte-rdv-cote li{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start}
.carte-rdv-cote .num{
  width:44px;height:44px;border-radius:50%;background:var(--cyan);display:grid;place-items:center;
  font-family:var(--f-titre);font-weight:800;font-size:1.125rem;
}
.carte-rdv-cote strong{display:block;font-family:var(--f-titre);font-weight:800;letter-spacing:-.03em;font-size:1.125rem;margin-bottom:2px}
.carte-rdv-cote li p{color:#c9cbce;font-size:.9375rem;line-height:1.5}
.carte-rdv-cote .tel-cote{margin-top:auto;padding-top:24px;border-top:1px solid rgb(255 255 255 / .15)}
.carte-rdv-cote .tel-cote span{display:block;color:#c9cbce;font-size:.9375rem}
.carte-rdv-cote .tel-cote a{color:var(--cyan);font-family:var(--f-titre);font-weight:800;font-size:1.6rem;letter-spacing:-.03em;text-decoration:none}
.carte-rdv-cote .tel-cote a:hover{text-decoration:underline}

.carte-rdv-form{padding:40px 48px 44px}
.onglets{display:inline-flex;background:var(--gris-100);border-radius:999px;padding:5px;margin-bottom:8px}
.onglets button{
  min-height:44px;padding:0 22px;border:none;border-radius:999px;background:none;cursor:pointer;
  font-weight:500;color:var(--gris-500);transition:background-color .15s,color .15s;
}
.onglets button:hover{color:var(--texte)}
.onglets button[aria-selected="true"]{background:var(--blanc);color:var(--texte);box-shadow:0 2px 6px rgb(0 0 0 / .08)}
.carte-rdv-form .sous{color:var(--gris-500);font-size:.9375rem;margin-bottom:8px}

fieldset{border:none;padding:24px 0 0}
legend{
  display:flex;align-items:center;gap:12px;float:left;width:100%;margin-bottom:16px;
  font-family:var(--f-titre);font-weight:800;letter-spacing:-.03em;font-size:1.25rem;
}
legend .etape{
  width:32px;height:32px;border-radius:50%;background:var(--cyan);color:var(--blanc);
  display:grid;place-items:center;font-size:.875rem;letter-spacing:0;
}
legend+*{clear:both}
.champs{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.champs.trois{grid-template-columns:repeat(3,1fr)}
.champ{display:flex;flex-direction:column;gap:6px;min-width:0}
.champ.large{grid-column:1/-1}
.champ.double{grid-column:span 2}
.champ label,.champ .label{font-weight:500;font-size:.9375rem}
.champ .opt{color:var(--gris-500);font-weight:400}
.champ input,.champ select{
  width:100%;height:50px;padding:0 14px;font-size:1rem;background:var(--blanc);
  border:1px solid var(--gris-300);border-radius:var(--rayon);transition:border-color .15s,box-shadow .15s;
}
.champ select{
  appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:40px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%232f3237' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;
}
.champ input::placeholder{color:#9a9da1}
.champ input:focus,.champ select:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgb(66 154 179 / .25)}
.champ input.immat{text-transform:uppercase;letter-spacing:.08em;font-weight:500}
.champ.erreur input,.champ.erreur select{border-color:var(--rouge)}
.champ .msg{font-size:.875rem;color:var(--rouge-fonce)}
.aide{font-size:.875rem;color:var(--gris-500)}

.creneaux{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.creneaux label{position:relative;cursor:pointer}
.creneaux input{position:absolute;opacity:0;width:1px;height:1px}
.creneaux span{
  display:flex;flex-direction:column;justify-content:center;min-height:50px;padding:4px 14px;line-height:1.25;
  border:1px solid var(--gris-300);border-radius:var(--rayon);font-weight:500;transition:border-color .15s,background-color .15s;
}
.creneaux small{color:var(--gris-500);font-size:.8125rem;font-weight:400}
.creneaux label:hover span{border-color:var(--cyan)}
.creneaux input:checked+span{border-color:var(--cyan);background:#eaf5f8;box-shadow:inset 0 0 0 1px var(--cyan)}
.creneaux input:focus-visible+span{outline:3px solid var(--cyan);outline-offset:2px}

.envoi{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}
.note{font-size:.875rem;color:var(--gris-500);line-height:1.5;flex:1;min-width:240px}
.form-error,.form-ok{margin-top:18px;padding:12px 16px;border-radius:var(--rayon);font-size:.9375rem}
.form-error{background:#fbe6ea;color:var(--rouge-fonce)}
.form-ok{background:#e4f6ed;color:#1d6b47}
[data-mode-rdv][hidden]{display:none}

/* ---------------------------------------------------------- Sections */
.section{padding:80px 0}
.section-assurement{padding-bottom:0}

/* Vitrages pris en charge : tuiles sombres */
.tuiles{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}
.tuile{
  background:var(--tuile);color:var(--blanc);border-radius:4px;padding:28px 18px 24px;text-align:center;
  text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:12px;
  transition:background-color .15s,transform .15s var(--ease);
}
.tuile:hover{background:#3d3d3d;color:var(--blanc)}
.tuile:hover .pastille{background:var(--cyan-fonce)}
.tuile strong{font-weight:500;font-size:1.0625rem;line-height:1.3}
.tuile small{color:#d2d2d2;font-size:.875rem;line-height:1.45}
.tuile .reserver{margin-top:auto;font-size:.875rem;font-weight:500;color:var(--blanc);display:inline-flex;align-items:center;gap:6px;padding-top:4px;border-bottom:1px solid rgb(255 255 255 / .35)}

.pastille{
  width:80px;height:80px;border-radius:50%;background:var(--cyan);color:var(--blanc);
  display:grid;place-items:center;flex-shrink:0;transition:background-color .15s;
}
.pastille .icone{width:36px;height:36px;stroke-width:1.75}

/* Expert + avantages */
.deux-col{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--gris-100)}
.deux-col>div{padding:80px}
.deux-col>div:first-child{padding-left:max(80px,calc((100vw - 1320px) / 2))}
.deux-col>div:last-child{padding-right:max(80px,calc((100vw - 1320px) / 2))}
.deux-col .gris{background:var(--gris-050)}
.deux-col h2{font-size:clamp(2rem,3.4vw,3rem);margin-bottom:28px}
.deux-col h3{font-size:1.9rem;margin-bottom:28px}
.liste-puces{list-style:none;display:grid;gap:14px;margin-top:24px}
.liste-puces li{position:relative;padding-left:30px}
.liste-puces li::before{content:"";position:absolute;left:10px;top:.7em;width:6px;height:6px;border-radius:50%;background:var(--texte)}
.avantages{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.avantage{background:var(--blanc);padding:22px 14px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}
.avantage .pastille{width:60px;height:60px}
.avantage .pastille .icone{width:28px;height:28px}
.avantage strong{font-weight:500;line-height:1.3}
.avantage small{color:var(--gris-500);font-size:.875rem;line-height:1.45}

/* Centres */
.centres{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.centre{background:var(--blanc);padding:32px 32px 28px;display:flex;flex-direction:column;gap:6px}
.centre h3{font-size:1.5rem;margin-bottom:6px}
.centre .horaires{color:var(--gris-500);font-size:.9375rem}
.centre .tel{
  display:inline-flex;align-items:center;gap:8px;min-height:44px;align-self:flex-start;
  color:var(--cyan-fonce);font-weight:700;font-size:1.125rem;text-decoration:none;
}
.centre .tel:hover{text-decoration:underline}
.centre .btn{margin-top:14px;align-self:flex-start}

/* Assurément */
.assurement{background:var(--gris-100);text-align:center;padding:64px 24px;position:relative}
.assurement p{font-family:var(--f-capitales);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(1.6rem,3.6vw,3.2rem);line-height:1.15}
.assurement .r{color:var(--rouge)}
.assurement .c{color:var(--cyan)}
.engagement{padding:56px 80px 24px;border:1px solid var(--gris-100);border-top:none;margin:0 max(80px,calc((100% - 1320px) / 2))}
.engagement p+p{margin-top:16px}
.engagement a{color:var(--rouge)}
.cta-centre{text-align:center;padding:56px 0 80px}

/* FAQ (sur fond gris, hors panneau) */
.faq{padding:72px 24px 96px}
.faq h2{text-align:center;font-size:clamp(2rem,3.6vw,3.1rem);margin-bottom:44px}
.faq-grille{max-width:var(--contenu);margin:0 auto;padding:0 80px;display:grid;grid-template-columns:1fr 1fr;gap:28px 40px;align-items:start}
.faq-item{background:var(--blanc)}
.faq-q{
  width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:96px;
  padding:20px 40px;background:none;border:none;cursor:pointer;text-align:left;
  font-family:var(--f-titre);font-weight:800;letter-spacing:-.04em;font-size:1.4rem;line-height:1.3;
}
.faq-q:hover{color:var(--cyan-fonce)}
.faq-q .icone{width:24px;height:24px;color:var(--gris-500);transition:transform .2s var(--ease)}
.faq-q[aria-expanded="true"] .icone{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s var(--ease)}
.faq-a p{padding:0 40px 28px}

/* -------------------------------------------------------------- Footer */
footer{position:relative;background:var(--sombre);color:var(--blanc);padding:88px 0 40px;overflow:hidden}
footer::before{content:"";position:absolute;left:0;top:0;width:100px;height:160px;background:var(--gris-050);clip-path:polygon(0 0,100% 0,0 100%)}
.pied{max-width:var(--contenu);margin:0 auto;padding:0 80px}
.pied-haut{display:flex;flex-wrap:wrap;gap:24px 56px;align-items:center;margin-bottom:28px}
.pied-haut h2{font-size:3rem}
.badge-tel{display:inline-flex;align-items:stretch;border-radius:6px;overflow:hidden;text-decoration:none}
.badge-tel b{background:var(--blanc);color:#2f9e6b;font-family:var(--f-titre);font-weight:800;letter-spacing:-.03em;font-size:1.9rem;padding:4px 14px;line-height:1.3}
.badge-tel span{background:var(--vert);color:var(--sombre);font-size:.9375rem;line-height:1.2;padding:6px 14px;display:flex;align-items:center;max-width:150px}
.pied-actions{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:72px}
.pied-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-bottom:56px;border-bottom:1px solid rgb(255 255 255 / .2)}
.pied-cols h3{font-size:1.75rem;margin-bottom:18px}
.pied-cols ul{list-style:none;display:grid;gap:4px}
.pied-cols a{color:var(--blanc);text-decoration:none}
.pied-cols a:hover{text-decoration:underline}
.pied-cols li{color:#d6d7d9}
.pied-bas{display:flex;flex-wrap:wrap;gap:12px 24px;padding-top:32px;font-size:1rem;align-items:center}
.pied-bas a{color:var(--blanc)}

/* Barre d'action mobile */
.barre-mobile{display:none}

/* -------------------------------------------------------- Pages légales */
.legal{padding:56px 0 80px}
.legal .contenu{max-width:900px}
.legal h1{font-size:clamp(2.2rem,4vw,3.2rem);margin-bottom:12px}
.legal h2{font-size:1.5rem;margin:40px 0 12px;color:var(--cyan)}
.legal p,.legal li{color:#45484d}
.legal ul{margin:0 0 0 22px}
.legal li{margin-bottom:6px}
.legal .back{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-bottom:12px;text-decoration:none;font-weight:500}
.legal .back:hover{text-decoration:underline}
.legal .todo{background:#fbe6ea;color:var(--rouge-fonce);padding:14px 18px;border-radius:var(--rayon);margin:20px 0 8px}
.legal .todo strong{display:block}

/* ---------------------------------------------------------- Responsive */
@media (max-width:1360px){
  .tuiles{grid-template-columns:repeat(3,1fr)}
  .nav-liens{gap:22px}
  .nav-liens a,.nav-contact{font-size:1rem}
  .entete .nav{padding:0 40px}
  .marque img{height:40px}
}
@media (max-width:1180px){
  :root{--header-h:80px}
  .nav-liens{
    display:none;position:absolute;top:var(--header-h);left:0;right:0;flex-direction:column;gap:0;
    background:var(--sombre);padding:8px 24px 20px;box-shadow:0 12px 24px rgb(0 0 0 / .2);
  }
  .nav-liens.open{display:flex}
  .nav-liens a{padding:14px 0;border-bottom:1px solid rgb(255 255 255 / .12)}
  .menu-toggle{display:grid}
  .entete::after{width:300px}
  .nav-contact{display:none}
  .marque img{height:38px}
  .contenu{padding:0 40px}
  .entete .nav{padding:0 40px}
  .panneau{margin:0 40px;padding:56px 40px 56px}
  .carte-rdv{grid-template-columns:1fr}
  .carte-rdv-cote{order:2}
  .deux-col{grid-template-columns:1fr}
  .deux-col>div,.deux-col>div:first-child,.deux-col>div:last-child{padding:56px 40px}
  .centres{grid-template-columns:repeat(2,1fr)}
  .engagement{margin:0 40px;padding:48px 40px 16px}
  .faq-grille{padding:0;grid-template-columns:1fr}
  .pied{padding:0 40px}
}
@media (max-width:760px){
  :root{--header-h:68px}
  body{font-size:1rem}
  .entete::after{width:170px;clip-path:polygon(40px 0,100% 0,100% 100%,0 100%)}
  .entete .nav{padding:0 12px 0 16px;gap:8px}
  .marque img{height:30px}
  .nav-droite{gap:4px}
  .nav-droite .btn{min-height:44px;padding:0 16px;font-size:.9375rem}
  .nav-droite .btn .icone{display:none}
  .defilant{height:44px}
  .defilant-piste{font-size:.8125rem;gap:48px}
  .contenu{padding:0 16px}
  .hero{padding:40px 0 40px}
  .hero h1{margin-bottom:24px}
  .hero-corps{grid-template-columns:1fr;gap:28px}
  .hero-corps p{font-size:1.0625rem}
  .btn-grand{min-height:56px;padding:0 24px;width:100%;font-size:.9375rem;letter-spacing:.12em}
  .panneau{margin:0;padding:44px 16px 16px}
  .panneau::after{width:40px;height:56px}
  .panneau h2,.section h2{margin-bottom:24px}
  .carte-rdv-form{padding:24px 16px 28px}
  .carte-rdv-cote{padding:32px 20px}
  .onglets{display:flex}
  .onglets button{flex:1;padding:0 8px;font-size:.875rem;white-space:nowrap}
  .champs,.champs.trois{grid-template-columns:1fr}
  .champ.double{grid-column:auto}
  .envoi .btn{width:100%}
  .section{padding:56px 0}
  .tuiles{grid-template-columns:repeat(2,1fr);gap:12px}
  .tuile{padding:20px 10px}
  .tuile small{display:none}
  .pastille{width:64px;height:64px}
  .pastille .icone{width:30px;height:30px}
  .deux-col>div,.deux-col>div:first-child,.deux-col>div:last-child{padding:48px 16px}
  .avantages{grid-template-columns:repeat(2,1fr);gap:10px}
  .centres{grid-template-columns:1fr;gap:16px}
  .centre{padding:24px 20px}
  .assurement{padding:44px 16px}
  .engagement{margin:0;padding:40px 16px 8px;border:none}
  .cta-centre{padding:32px 16px 56px}
  .faq{padding:56px 16px 72px}
  .faq-q{min-height:72px;padding:16px 20px;font-size:1.15rem}
  .faq-a p{padding:0 20px 22px}
  footer{padding:64px 0 32px}
  footer::before{width:60px;height:96px}
  .pied{padding:0 16px}
  .pied-haut h2{font-size:2.4rem}
  .pied-actions{margin-bottom:48px}
  .pied-actions .btn{flex:1 1 100%}
  .pied-cols{grid-template-columns:1fr}
  body.has-barre{padding-bottom:76px}
  .barre-mobile{
    display:grid;grid-template-columns:auto 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:90;
    background:var(--blanc);border-top:1px solid var(--gris-200);
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  }
  .barre-mobile .btn-cyan{width:52px;padding:0}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .defilant-piste{animation:none}
  *,*::before,*::after{transition-duration:.01ms!important}
}
