/* ============================================================
   CessioniItalia — mobile.css
   Estratto da index.html senza modificare regole o ordine di cascata.
   ============================================================ */
/* ════════ MOBILE / SMARTPHONE ════════ */
.mobile-only{display:none}
.only-mobile{display:none}
.sb-backdrop{display:none}
@media(max-width:780px){
  .hdr{padding:0 12px;height:58px;gap:8px}
  .logo-text{font-size:16px}
  .logo svg{width:26px;height:26px}
  .logo-chip,.logo-dot{display:none}
  .hide-mobile{display:none}
  .only-mobile{display:inline-flex}
  .nav{gap:5px;flex-shrink:0}
  .nav .btn{padding:8px 11px;font-size:12px;border-radius:9px}
  .nav .btn-sm{padding:7px 9px}
  .upill{padding:4px}
  .upill .uname{display:none}
  .main{flex-direction:column;padding:16px 13px;gap:14px}
  .grid{grid-template-columns:1fr;gap:14px}
  .card-img{height:188px}
  .mobile-only{display:inline-flex}
  /* Filtri: pannello a scomparsa da destra */
  .sb{display:none}
  .sb.sb-open{display:block!important;position:fixed!important;top:0;right:0;bottom:0;left:auto;width:88%;max-width:350px;height:100vh;height:100dvh;z-index:99999!important;border-radius:0;overflow-y:auto;box-shadow:-18px 0 50px rgba(15,35,70,.3);background:#ffffff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .sb-backdrop{display:none;position:fixed;inset:0;background:rgba(10,22,40,.45);z-index:99990}
  .sb-backdrop.on{display:block!important}
  /* Modali a tutto schermo */
  .ov{padding:0;align-items:flex-end}
  .modal{max-width:100%!important;width:100%;max-height:94vh;max-height:94dvh;border-radius:22px 22px 0 0}
  .mbody{padding:6px 18px 26px}
  .mhdr{padding:18px 18px 0}
  /* Hero più compatto */
  .hero-inner{padding:48px 18px 40px;gap:28px}
  .hero h1{font-size:clamp(28px,8vw,40px)}
  .hero-sub{font-size:15px}
  .hero-ctas .btn{flex:1}
  /* Sezioni */
  .socio-grid,.charts-row{grid-template-columns:1fr}
  .det-kpis{grid-template-columns:1fr 1fr}
  .frow{grid-template-columns:1fr}
  .rhdr{align-items:flex-start}
  .sort-row{flex-wrap:wrap}
  /* Touch target più ampi */
  .btn{padding:11px 18px}
  .btn-sm{padding:8px 13px;font-size:12px}
  .cbtn,.sbopt,.atab{min-height:40px}
  table{font-size:12px}
  th,td{padding:9px 10px}
  .awrap{padding:18px 13px}
}
@media(max-width:480px){
  .hero-trust{gap:10px 14px}
  .det-kpis{grid-template-columns:1fr 1fr}
  .price-big{font-size:24px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
