/* AB Conduite 94 · couche mobile (chargée en dernier). Priorité : lisibilité, pouce, vitesse. */

@media (max-width:760px){
  /* iOS zoome sur tout champ sous 16 px */
  .field input,.field textarea,.h3-card input,select{font-size:16px}

  /* aucun texte utile sous 13 px */
  .b-tag,.b-prices small,.oops-badge,.oops-stamp,.oops-prix span,.guide-cat,.h3-card-note,.why-float small,
  .p-t,.coords small,.q-num,.fine,.form-note,.foot-legal,.foot-col small,.mq-item,.q-opt small,.qf-chips span{font-size:13px}

  /* zones tactiles d'au moins 44 px */
  .coords a{display:inline-block;padding-block:10px}
  .foot-col a{display:block;padding-block:11px}
  .foot-legal a{display:inline-block;padding-block:10px}
  .qf-chips span{padding-block:13px}
  .field label{padding-block:2px}
  .tabs button{min-height:46px}
}

/* ---------- statut d'ouverture ---------- */
.statut{display:inline-flex;align-items:center;gap:9px;font-weight:600}
.statut::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;background:#9AA3B8}
.statut.ouvert::before{background:#22C55E;box-shadow:0 0 0 4px rgba(34,197,94,.22)}
.statut.ferme::before{background:var(--rose);box-shadow:0 0 0 4px rgba(239,90,97,.2)}
.h3-trust .li-statut svg{display:none}
.menu-extra,.mbar{display:none}
.mobile-bar{display:none!important}
.deja-vu .loader{display:none}
.deja-vu body.charge{overflow:auto}

@media (max-width:760px){
  .v3 .section{padding-block:64px}
  .v3 .head-c,.h-sec{margin-bottom:30px}

  /* haut de page */
  .h3{padding-bottom:64px}
  .h3-badge{font-size:12.5px}
  .h3-trust{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:26px -18px 0;padding:2px 18px;gap:8px}
  .h3-trust::-webkit-scrollbar{display:none}
  .h3-trust li{flex:none;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:9px 13px;border-radius:999px;font-size:13px}
  .h3-trust .li-statut{order:-1;background:rgba(255,255,255,.95);color:var(--texte);border-color:transparent}

  /* carrousels à balayer */
  .carrousel{display:flex!important;grid-template-columns:none!important;grid-auto-rows:auto!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:-18px;padding:6px 18px 10px;scroll-padding-inline:18px;scrollbar-width:none;overscroll-behavior-x:contain}
  .carrousel::-webkit-scrollbar{display:none}
  .carrousel>*{flex:0 0 84%;scroll-snap-align:start;min-width:0}
  .bento.carrousel>.b-tile{height:430px;grid-row:auto;grid-column:auto}
  .prices.carrousel>.price{flex-basis:80%}
  .prices-1.carrousel>.price{flex-basis:100%}
  .v3 .price-hot{transform:none}
  .guides.carrousel>.guide{flex-basis:82%}
  .points{display:flex;justify-content:center;gap:7px;margin-top:12px}
  .points span{width:7px;height:7px;border-radius:999px;background:#CBD1DE;transition:width .25s,background-color .25s}
  .points span.on{width:22px;background:var(--rose)}
  .glisser{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:6px;font-size:12.5px;color:var(--doux)}

  /* onglets des tarifs en pastilles */
  .v3 .tabs{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;margin:0 -18px 22px;padding:2px 18px 6px;gap:8px;border-bottom:0;max-width:none}
  .v3 .tabs::-webkit-scrollbar{display:none}
  .v3 .tabs button{flex:none;border:1.5px solid var(--trait);border-radius:999px;padding:0 18px;margin:0;background:#fff;color:var(--texte)}
  .v3 .tabs button[aria-selected="true"]{background:var(--bande);border-color:var(--bande);color:#fff}

  /* contact : le formulaire d'abord */
  .book{gap:34px}
  .book .booking{order:-1}

  /* barre d'actions flottante */
  .mbar{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:6px;position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:60;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:6px;border-radius:18px;box-shadow:0 18px 40px -14px rgba(14,28,78,.5),0 0 0 1px rgba(14,28,78,.06);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
  .mb-i{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:54px;border-radius:13px;text-decoration:none;font-size:12.5px;font-weight:600;color:var(--bande);transition:transform .15s,background-color .2s}
  .mb-i svg{width:21px;height:21px;fill:currentColor}
  .mb-wa{color:#15803D}
  .mb-go{flex-direction:row;gap:8px;background:var(--rose);color:#fff;font-size:15px;box-shadow:0 10px 20px -10px rgba(239,90,97,.9)}
  .mb-go svg{width:18px;height:18px;fill:none}
  body.saisie .mbar,body.menu-ouvert .mbar{transform:translateY(160%)}
  .v3 .foot{padding-bottom:130px}
  .loader{padding-bottom:env(safe-area-inset-bottom)}

  /* menu plein écran */
  .nav.open{height:70px}
  .nav.open .menu{position:fixed;top:70px;left:0;right:0;bottom:0;display:flex;flex-direction:column;overflow-y:auto;background:#fff;padding:10px 22px calc(30px + env(safe-area-inset-bottom));box-shadow:none;animation:menu-in .3s cubic-bezier(.2,.8,.2,1)}
  @keyframes menu-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
  .nav.open .menu>a{font-size:22px;font-weight:600;padding:15px 0;border-bottom:1px solid var(--fond);color:var(--texte)}
  .nav.open .menu .menu-extra{display:grid;gap:10px;margin-top:24px}
  .menu-extra .statut{font-size:15px;margin-bottom:6px}
  .menu-extra .btn{width:100%}
  .menu-extra .btn-line svg{fill:currentColor}
  .menu-adr{font-size:13.5px;color:var(--doux);text-align:center;margin-top:4px}
  body.menu-ouvert{overflow:hidden}

  /* retour tactile */
  .btn:active,.q-opt:active,.b-tile:active,.guide:active,.mb-i:active,.tabs button:active{transform:scale(.97)}
  a,button{-webkit-tap-highlight-color:transparent}
}

/* ================= passe smartphone finale : page plus courte, lecture plus fluide ================= */
@media (max-width:760px){
  .v3 .section{padding-block:58px}

  /* barre du bas : libellé WhatsApp lisible */
  .mbar .mb-wa{background:#128C4A;color:#fff}

  /* promo rond-point */
  .oops{padding-block:56px}
  .oops-in{gap:24px}
  .oops-copy>p{font-size:14.5px;margin:12px 0 16px}
  .oops-prix{gap:8px;margin-bottom:18px}
  .oops-prix span{padding:8px 12px}
  .oops-prix b{font-size:16px}

  /* parcours : étapes compactes, numéro à gauche */
  .road3-steps{gap:12px}
  .r-step{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;align-items:start;padding:16px 16px 16px 14px}
  .r-step .r-n{width:40px;height:40px;border-radius:11px;grid-row:span 2;font-size:14px}
  .r-step h3{margin:0 0 4px;font-size:16.5px;line-height:1.3;padding-top:9px}
  .r-step p{grid-column:2;font-size:14px;line-height:1.5}

  /* pourquoi nous */
  .why{gap:30px}
  .why-media img{aspect-ratio:4/3}
  .why-grid{gap:16px;margin:24px 0 26px}
  .w-ico{width:40px;height:40px;border-radius:11px}

  /* près de chez vous : communes et formations à balayer */
  .zones-in{gap:24px}
  .communes{flex-wrap:nowrap;overflow-x:auto;margin:18px -18px 0;padding:2px 18px;scrollbar-width:none}
  .communes::-webkit-scrollbar,.svc-liens::-webkit-scrollbar{display:none}
  .communes li{flex:none}
  .svc-liens{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -18px;padding:4px 18px 14px;scrollbar-width:none}
  .svc-lien{flex:0 0 80%;scroll-snap-align:start}

  /* questions fréquentes */
  .faq-in{gap:18px}
  .faq-head p{margin:10px 0 18px}
  .faq summary{padding:16px 40px 16px 0;font-size:15px}

  /* inscription et coordonnées */
  .book{gap:32px}
  .book-copy>p{margin:10px 0 22px}
  .coords{gap:12px;margin-bottom:22px}
  .facade img{aspect-ratio:16/9}

  /* pied de page compact */
  .foot{padding-top:44px}
  .foot-in{grid-template-columns:1fr 1fr;gap:22px 18px}
  .foot-brand{grid-column:1/-1;display:flex;align-items:center;gap:16px}
  .foot-brand img{width:118px}
  .foot-brand p{margin:0}
  .foot-in>.foot-col:nth-child(2){order:1}
  .foot-in>.foot-col:nth-child(4){order:2}
  .foot-in>.foot-col:nth-child(3){order:3;grid-column:1/-1}
  .foot-col{gap:0}
  .foot-col h4{margin-bottom:2px}
  .foot-col a{padding-block:9px}
  .foot-col span{padding-block:5px}
  .foot-legal{margin-top:24px;gap:0 16px}
  .v3 .foot{padding-bottom:112px}

  /* pages intérieures : cibles tactiles */
  .fil{margin-bottom:12px}
  .fil a{display:inline-block;padding-block:10px}
  .g-link{display:block;padding-block:10px}
}
@media (max-width:760px){
  .zones-in{grid-template-columns:minmax(0,1fr)}
  .zones-in>*{min-width:0}
  .foot-brand p{font-size:14.5px;line-height:1.35;max-width:16ch}
}
