/* mobile-v2.css — chantier mobile 02/09/2026 — chargée en dernier, réversible en retirant le <link> */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (max-width:768px){
  body{font-size:16px;line-height:1.55}
  /* 1. Lisibilité : aucun texte sous 14,4px. Les 309 styles inline sont rattrapés par attribut. */
  html body [style*="font-size:.5"][style],html body [style*="font-size:.6"][style],html body [style*="font-size:.7"][style],html body [style*="font-size:.8"][style],
  html body [style*="font-size:1"][style*="px"][style]{font-size:.9rem!important;line-height:1.5!important}
  html body [style*="font-size:.65rem"][style*="uppercase"][style],html body [style*="font-size:.6rem"][style*="uppercase"][style],html body [style*="font-size:.7rem"][style*="uppercase"][style]{font-size:.8rem!important;letter-spacing:.08em!important}
  html body .label,html body .seo-breadcrumb,html body .hero-badge,html body .sub-label,html body .stat-l,html body .tag-green,html body .tag-copper,
  html body .club-price,html body .club-foot,html body .pro-badge,html body .pcard-pill,html body .rev-role,html body .rev-name,html body .rev-avatar,
  html body .home-trust-i,html body .med-badge,html body .med-feature-sub,html body .pro-feature-sub,html body .faqm-title,html body .sc-sub,html body .logo-sub,
  html body .google-link,html body .stars,html body .cookie-accept,html body .cookie-decline,html body .step-dot,html body .rf-lab,html body .rf-q-btn,html body .poi-btn,
  html body #avail-bar,html body #avail-txt,html body #resaApp label,html body #resaApp .note,html body #resaApp .chip,html body #resaApp .titre-sec,html body #resaApp .avis,
  html body #resaApp .rappel-tx b,html body #resaApp .rappel-tx span,html body #resaApp .rappel-tx em,html body #resaApp .retour-btn span,html body #resaApp .opt b,html body #resaApp .opt span,
  html body #resaApp .coche .box,html body #resaApp .coche .tx b,html body #resaApp .coche .tx em{font-size:.9rem!important;line-height:1.45!important}
  html body main p,html body main li,html body main em,html body main a:not([class*="btn"]),html body .content-section p,html body .seo-hero p{font-size:1rem!important}
  html body #stickyBook>a::before,html body #stickyBook>a{font-size:1rem!important}
  h1{font-size:1.55rem!important;line-height:1.25!important}
  h2,.heading{font-size:1.25rem!important;line-height:1.3!important}
  h3{font-size:1.05rem!important}
  p{font-size:1rem}
  /* 2. Cibles tactiles : 48px minimum sur tout ce qui ressemble à un bouton */
  .btn-primary,.btn-secondary,.btn-wa,.btn-sms,.btn-tel,.cta-btn,.qb-btn,.ps-book,
  a[style*="border-radius:12px"][style*="padding:14px"],a[style*="border-radius:12px"][style*="padding:12px"],
  a[style*="border-radius:99px"]{min-height:48px;display:inline-flex!important;align-items:center;justify-content:center;font-size:1rem!important;padding-left:18px!important;padding-right:18px!important}
  .btn-group{display:flex;flex-direction:column;gap:10px}
  .btn-group>a{width:100%}
  /* 3. Barre d'action unique : trois boutons hauts et lisibles */
  /* Une règle générique du thème (body>div[style*=fixed][style*=right]{top:100px}) attrape la barre d'appel
     sur les pages où elle est enfant direct de body : avec bottom:0 elle s'étirait sur tout l'écran et masquait la page. */
  html body>div#stickyBook[style][id]:not(#a1):not(#a2):not(#a3):not(#a4){top:auto!important;bottom:0!important;height:auto!important;max-height:none!important}
  div#stickyBook[style][id]:not(#a1):not(#a2):not(#a3):not(#a4){top:auto!important;bottom:0!important;height:auto!important}
  #stickyBook>a{min-height:54px!important}
  #stickyBook>a::before{font-size:.95rem!important}
  /* 4. Tableaux : cartes empilées sous 600px, avec l'intitulé de colonne devant chaque valeur */
  @media (max-width:600px){
    table.m-cards{display:block;border:0}
    table.m-cards thead{display:none}
    table.m-cards tbody,table.m-cards tr{display:block;width:100%}
    table.m-cards tr{background:var(--card,#131e32);border:1px solid var(--border,rgba(184,115,51,.12));border-radius:12px;padding:10px 12px;margin:0 0 8px}
    table.m-cards td{display:flex;justify-content:space-between;gap:12px;padding:5px 0!important;border:0!important;font-size:.95rem}
    table.m-cards td::before{content:attr(data-label);color:var(--text3,#8a8da4);font-size:.82rem;flex:0 0 42%}
    table.m-cards td:first-child{font-weight:600;flex-direction:column;gap:2px}
    table.m-cards td:first-child::before{display:none}
  }
  /* 5. Entête compacte pour rendre l'écran au contenu */
  .hd{padding:8px 0!important}
  .logo-icon{width:32px!important;height:32px!important}
  /* 6. Pas de défilement horizontal, jamais */
  main,section,.wrap{max-width:100vw;overflow-x:clip}
  img,svg{max-width:100%;height:auto}
  /* 7. Grilles de cartes en une colonne */
  [style*="grid-template-columns:repeat(auto-fit,minmax(2"],[style*="grid-template-columns:repeat(auto-fill,minmax(2"]{grid-template-columns:1fr!important}
  /* 8. Blocs dépliants : plus de zone de tap */
  details>summary{min-height:48px;display:flex!important;align-items:center;padding:12px 16px!important;font-size:.98rem!important}
  details>p{font-size:.95rem!important}
  /* 9. Formulaires */
  input,select,textarea{font-size:16px!important;min-height:48px}
  button[type="submit"],.form-submit{min-height:52px;font-size:1rem}
  html body button:not(.step-dot):not(.poi-btn),html body .btn,html body a.btn-book,html body .ps-book{min-height:48px;font-size:1rem!important}
  html body .poi-btn{min-height:44px;padding:10px 14px!important}
  html body .other-cities a,html body .seo-cta-btns a,html body .seo-cta-btns a[style]{font-size:.95rem!important}
  html body .other-cities a{display:inline-block;min-height:40px;line-height:40px;padding:0 12px}
  /* 9b. En-tête de l'app mobile : marque sur une ligne, sélecteur de langue compact */
  html body .app-hdr>div>div{white-space:nowrap}
  html body .app-hdr>div>div[style*="font-size:.6rem"][style]{font-size:.78rem!important}
  html body .app-hdr .app-lang{margin-left:auto;margin-right:6px}
  html body .app-hdr .app-lang{background:none!important;border:0!important;padding:0!important;gap:0!important}
  html body .app-hdr .app-lang-btn{padding:6px 5px!important;font-size:.72rem!important;min-height:30px;letter-spacing:.02em;opacity:.75}
  html body .app-hdr .app-lang-btn[style*="background"]:not([style*="none"]){opacity:1}
  /* 10. Espace perdu au-dessus de la ligne de flottaison */
  html body .seo-hero{padding-top:12px!important;padding-bottom:16px!important}
  html body .seo-hero .sub,html body .seo-hero p{margin-bottom:8px!important}
  html body .content-section{padding-top:8px!important}
  html body .seo-breadcrumb{margin-bottom:6px!important}
}
