/* Khala — mobile-fixes.css
   Filet de securite responsive ADDITIF, charge en dernier.
   Ne reecrit PAS les media queries existantes : il garantit seulement
   - zero debordement horizontal (360 / 390 / 430px)
   - cibles tactiles >= 44px
   - effets lourds / hover coupes au toucher
   Edits surgicaux, non destructifs. */

/* ---- Garde-fou anti-debordement horizontal (global) ---- */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
img, svg, video, iframe, canvas {
  max-width: 100%;
}

@media (max-width: 480px) {
  /* Aucun media/embed ne doit pousser la page au-dela du viewport */
  img, svg, video, iframe, canvas, table, pre {
    max-width: 100%;
  }

  /* Corps de texte lisible : plancher 15px sur les surfaces de lecture */
  .section-desc,
  .prop-meta,
  p {
    font-size: clamp(15px, 4vw, 16px);
    line-height: 1.7;
  }

  /* Cibles tactiles confortables : nav, boutons, liens d'action, controles */
  .nav-links a,
  button,
  .btn,
  a.btn,
  [role="button"],
  .props-search,
  input[type="text"],
  input[type="email"],
  input[type="search"],
  textarea,
  select {
    min-height: 44px;
  }

  /* Padding tactile sur les liens de navigation horizontale */
  .nav-links a {
    display: inline-flex;
    align-items: center;
    padding-top: 8px;
    padding-bottom: 8px;
  }
}

/* ---- Mode lite au toucher : pas de dependance au survol ---- */
@media (pointer: coarse) {
  /* Coupe le tilt 3D / les transforms de survol (rien d'essentiel ne doit
     dependre du hover pour etre utilisable au doigt) */
  .prop-card:hover,
  .sc-card:hover,
  .vod-thumb-wrap:hover img,
  .evt-image:hover img,
  .col-image:hover img,
  .prop-cover:hover img {
    transform: none;
  }

  /* Curseur custom inutile au toucher */
  * {
    cursor: auto;
  }
}
