/* Versione per telefono e tablet piccoli (fino a 900 px). Sopra questa larghezza non cambia nulla. */
.menu-btn,.mobile-menu,.mbar,.quick-actions{display:none}
.details-reset summary{list-style:none}
.info-card>summary{list-style:none;cursor:default}
.info-card>summary::-webkit-details-marker{display:none}
.info-card>summary h2{margin:0}

@media(max-width:900px){
  html{scroll-padding-top:70px}
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
  .shell{width:auto;margin-inline:0;padding-inline:16px}

  /* intestazione compatta */
  .top{position:sticky;top:0;z-index:40}
  .top .shell{display:flex;align-items:center;justify-content:space-between;gap:10px;height:58px;padding-block:0}
  .top .logo img{height:36px;width:auto}
  .top nav{display:none}
  .top-call{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;margin-left:auto;border-radius:50%}
  .top-call span{display:none}
  .menu-btn{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);padding:0;cursor:pointer}
  .menu-btn .dgc-ic{width:22px;height:22px}

  /* menu a schermo intero */
  body.menu-open{overflow:hidden}
  .mobile-menu{position:fixed;inset:0;z-index:100;background:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .mobile-menu[hidden]{display:none}
  .mobile-menu:not([hidden]){display:block}
  .mm-top{display:flex;justify-content:space-between;align-items:center;height:58px;padding:0 14px;border-bottom:1px solid var(--line)}
  .mm-top img{height:36px;width:auto;display:block}
  .menu-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);padding:0;cursor:pointer}
  .mobile-menu nav a{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;font-size:21px;font-weight:700;letter-spacing:-.02em;border-bottom:1px solid var(--line)}
  .mobile-menu nav a[aria-current="page"]{color:var(--red)}
  .mobile-menu nav a span{color:#b6bcc6}
  .mm-acc{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px 16px 0}
  .mm-acc .btn{min-height:48px;width:100%}
  .mm-acc .btn:only-child{grid-column:1/-1}
  .mm-acc .mm-reg{border-color:var(--red);color:var(--red)}
  .mm-cta{padding:12px 16px 0}.mm-cta .btn{width:100%;min-height:50px}
  .mm-info{padding:18px 20px 30px;font-size:14px;color:var(--muted);line-height:1.7}
  .mm-info p{margin:0 0 8px}

  /* barra fissa in basso */
  .wa-float{display:none}
  .mbar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:8px;padding:9px 12px calc(12px + env(safe-area-inset-bottom,0px));background:#fffffff2;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border-radius:12px;border:1px solid #cfd3d5;background:#fff;color:var(--ink);font-weight:700;font-size:14px;white-space:nowrap}
  .mbar a .dgc-ic{width:20px;height:20px}
  .mbar a.btn{background:var(--red);color:#fff;border-color:var(--red)}
  .mbar-price{grid-template-columns:auto 1fr;align-items:center;gap:14px}
  .mbar-p{line-height:1.15}.mbar-p small{display:block;font-size:11.5px;color:var(--muted)}.mbar-p strong{font-size:19px;letter-spacing:-.03em;white-space:nowrap}
  .footer{padding-bottom:20px}

  /* home: foto sopra, testo sotto */
  .hero{display:block;min-height:0;margin:0;border-radius:0;background:#fff;isolation:auto}
  .hero:before{content:"";position:static;display:block;height:215px;animation:none;background:url('hero.webp') center 44%/cover no-repeat}
  .hero:after{display:none}
  .hero .shell{padding:18px 16px 4px}
  .hero .eyebrow{font-size:11px}
  .hero h1{font-size:31px;line-height:1.08;margin:8px 0 10px;max-width:none}
  .hero p{font-size:15px;max-width:none;color:#556070}
  .hero-actions,.hero-tag{display:none}
  .search-wrap{padding-inline:16px;margin-top:12px}
  .finder{margin-top:6px}
  .quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;padding-inline:16px}
  .quick-actions a{display:grid;justify-items:center;gap:5px;padding:12px 6px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:12.5px;font-weight:650}
  .quick-actions .dgc-ic{color:var(--red);width:22px;height:22px}

  /* home: categorie e anteprime a scorrimento */
  .home-section{padding-top:30px}
  .home-head h2{font-size:25px}
  .category-grid{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px 20px;padding:0 16px 6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .category-grid::-webkit-scrollbar{display:none}
  .category-tile{flex:0 0 150px;min-height:112px;scroll-snap-align:start}
  .home-section .cars{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:2px 16px 8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .home-section .cars::-webkit-scrollbar{display:none}
  .home-section .cars>.car{flex:0 0 82%;max-width:340px;scroll-snap-align:start}
  .home-section .cars>.empty{flex:1 0 100%}
  .home-more{margin-top:14px}
  .steps{margin-top:30px}

  /* elenchi */
  .page-head{padding-top:14px}
  .page-head h1{font-size:28px}
  #catalogo .cars{grid-template-columns:1fr;gap:16px}
  .car-photo{height:210px}

  /* scheda mezzo */
  .rental-page .detail,.rental-page .detail{gap:18px}
  .rental-panel{padding:20px}
  .info-card{padding:0;overflow:hidden}
  .info-card>summary,.info-card>.spec-grid,.info-card>ul{padding-inline:18px}
  .info-card>summary{display:flex;justify-content:space-between;align-items:center;padding-block:15px;cursor:pointer}
  .info-card>summary h2{font-size:16px}
  .info-card>summary:after{content:"+";font-size:22px;line-height:1;color:var(--muted)}
  .info-card[open]>summary:after{content:"−"}
  .info-card>ul{padding-bottom:16px}
  .info-card>.spec-grid{padding-bottom:16px;margin:0}
  .rental-cta{display:none}
}
@media(max-width:420px){
  .mbar{gap:6px;padding-inline:10px}
  .mbar a{font-size:13px}
}
