/* VC16 mobile-only refinement 2026-10-12. Never changes desktop or booking logic. */
@media (max-width: 760px) {
  /* Results from a completed stay search: keep search available, make it less dominant. */
  body.vc11-catalog.vc16-has-stay-search main>.vc11-subhero { min-height:0!important; }
  body.vc11-catalog.vc16-has-stay-search main>.vc11-subhero>.vc11-container { padding-top:14px!important; padding-bottom:16px!important; }
  body.vc11-catalog.vc16-has-stay-search .vc11-subhero h1 { font-size:clamp(23px,6vw,29px)!important; line-height:1.15; margin-bottom:7px!important; }
  body.vc11-catalog.vc16-has-stay-search .vc11-subhero .vc11-breadcrumb,
  body.vc11-catalog.vc16-has-stay-search .vc11-subhero>.vc11-container>p:not(.vc11-breadcrumb) { display:none; }
  body.vc11-catalog.vc16-has-stay-search .vc11-subhero-search { margin-top:12px!important; }
  body.vc11-catalog.vc16-has-stay-search .vc11-trust { padding-top:8px; }
  /* A single mobile column with cards compact enough to compare quickly. */
  body.vc11-catalog .vc11-catalog-grid { grid-template-columns:minmax(0,1fr)!important; gap:13px!important; }
  body.vc11-catalog .vc11-catalog-card { overflow:hidden; }
  body.vc11-catalog .vc11-catalog-card .vc11-card-img { aspect-ratio:16/9!important; height:auto!important; }
  body.vc11-catalog .vc11-catalog-card .vc11-card-body { padding:13px 14px!important; min-height:0!important; }
  body.vc11-catalog .vc11-catalog-card .vc11-card-meta { min-height:0!important; gap:5px 10px!important; font-size:11px; margin-bottom:7px; }
  body.vc11-catalog .vc11-catalog-card .vc11-chips { min-height:0; margin:4px 0 9px; }
  body.vc11-catalog .vc11-catalog-card .vc11-card-actions { min-height:0; margin-top:10px; }
  body.vc11-catalog .vc11-results { min-width:0; }
  /* About: fix the desktop two-column territory split accidentally surviving on mobile. */
  body.vc11-about .vc13-static .vc13-split.reverse { display:flex!important; flex-direction:column!important; align-items:stretch!important; gap:18px!important; }
  body.vc11-about .vc13-static .vc13-split.reverse>.vc13-photo { width:100%!important; height:auto!important; min-height:0!important; aspect-ratio:4/3!important; margin:0!important; background-size:cover!important; background-position:center!important; }
  body.vc11-about .vc13-static .vc13-split.reverse>div:not(.vc13-photo) { width:100%!important; min-width:0!important; }
  body.vc11-about .vc13-static .vc13-split.reverse h2 { font-size:clamp(25px,7vw,33px)!important; line-height:1.18; overflow-wrap:normal; }
  /* Footer mobile: enforce one readable vertical navigation column. */
  html body.vc11 footer.vc11-footer nav.vc15-footer-links {
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    grid-template-columns:none!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:0!important;
    width:calc(100% - 24px)!important;
    max-width:100%!important;
    margin:0 auto!important;
    padding:18px 4px 24px!important;
    text-align:left!important;
  }
  html body.vc11 footer.vc11-footer nav.vc15-footer-links > small {
    display:block!important;
    order:0;
    width:100%!important;
    max-width:100%!important;
    margin:0 0 14px!important;
    line-height:1.5!important;
    white-space:normal!important;
  }
  html body.vc11 footer.vc11-footer nav.vc15-footer-links > a,
  html body.vc11 footer.vc11-footer nav.vc15-footer-links > button {
    position:static!important;
    display:block!important;
    float:none!important;
    flex:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:11px 0!important;
    text-align:left!important;
    line-height:1.35!important;
    white-space:normal!important;
    box-sizing:border-box!important;
  }
  html body.vc11 footer.vc11-footer nav.vc15-footer-links > button {
    border:0!important;
    border-top:1px solid rgba(255,255,255,.24)!important;
    border-radius:0!important;
    background:transparent!important;
    font:inherit!important;
    cursor:pointer;
    margin-top:5px!important;
    padding-top:15px!important;
  }
  body.vc11 .vc15-footer-values { gap:12px!important; }
  body.vc11 .vc15-footer-values>div { min-width:0; }
  /* Scroll targets have a readable inset below the mobile viewport edge. */
  body.vc11 .vc11-results,body.vc11 .vc11-booking-card,body.vc11 #disponibilita { scroll-margin-top:18px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } }
