
:root{
  --bg:#0b1020; --panel:#111827; --panel-2:#172033; --text:#f8fafc;
  --muted:#cbd5e1; --muted-2:#94a3b8; --gold:#cda45e; --gold-2:#f1d38a;
  --line:rgba(255,255,255,.10); --ok:#22c55e; --warn:#f59e0b; --danger:#ef4444;
  --shadow:0 26px 80px rgba(0,0,0,.35); --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  background:radial-gradient(circle at top right, rgba(205,164,94,.14), transparent 34rem), radial-gradient(circle at 10% 80%, rgba(241,211,138,.08), transparent 30rem), var(--bg);
  color:var(--text); line-height:1.6;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1180px, calc(100% - 32px)); margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:10px;background:var(--gold);color:#111;padding:10px 14px;border-radius:10px;z-index:999}
.skip-link:focus{left:10px}
.topbar{border-bottom:1px solid var(--line); color:var(--muted); background:rgba(6,10,20,.72); backdrop-filter:blur(14px); font-size:.92rem}
.topbar .container{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 0}
.badge-rp{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(205,164,94,.35);background:rgba(205,164,94,.10);color:var(--gold-2);padding:5px 10px;border-radius:999px;font-weight:800;letter-spacing:.02em}
.site-header{position:sticky;top:0;z-index:100;background:rgba(11,16,32,.78);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:18px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.02em}
.brand img{width:76px;height:auto;border-radius:12px}
.brand span{font-size:1.12rem}
.nav-toggle{display:none;background:transparent;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:9px 11px;font-size:1.35rem}
.nav-menu{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}
.nav-menu a{display:block;padding:10px 13px;color:var(--muted);border-radius:12px;font-weight:700;font-size:.96rem}
.nav-menu a:hover,.nav-menu a.active{color:var(--text);background:rgba(255,255,255,.07)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:999px;padding:12px 18px;font-weight:900;cursor:pointer;transition:.18s transform,.18s background,.18s border-color;min-height:44px}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#111827;box-shadow:0 14px 36px rgba(205,164,94,.22)}
.btn-ghost{border-color:var(--line);background:rgba(255,255,255,.04);color:var(--text)}
.btn-small{padding:9px 13px;font-size:.92rem}
.hero{position:relative;min-height:650px;display:grid;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(11,16,32,.94) 0%, rgba(11,16,32,.72) 45%, rgba(11,16,32,.10) 100%), url("assets/hero-showroom.svg") center/cover no-repeat;z-index:-2}
.hero::after{content:"";position:absolute;inset:auto 0 0 0;height:170px;background:linear-gradient(transparent,var(--bg));z-index:-1}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
.kicker{color:var(--gold-2);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:.8rem}
h1,h2,h3{line-height:1.08;margin:0 0 16px}
h1{font-size:clamp(2.6rem, 6vw, 5.7rem);letter-spacing:-.06em}
h2{font-size:clamp(2rem, 4vw, 3.35rem);letter-spacing:-.04em}
h3{font-size:1.35rem}
.lead{font-size:clamp(1.05rem, 2vw, 1.28rem);color:var(--muted);max-width:720px;margin:0 0 28px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 28px}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px;max-width:720px}
.stat{padding:18px;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.stat strong{font-size:1.9rem;line-height:1;display:block;color:var(--gold-2)}
.stat span{color:var(--muted);font-size:.95rem}
.glass-card{border:1px solid var(--line);background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.045));box-shadow:var(--shadow);border-radius:calc(var(--radius) + 8px);padding:26px}
.section{padding:86px 0}
.section-sm{padding:56px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:34px}
.section-head p{color:var(--muted);margin:0;max-width:640px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.card{background:linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 18px 58px rgba(0,0,0,.22)}
.card-body{padding:22px}
.card p{color:var(--muted);margin:.35rem 0 0}
.icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:rgba(205,164,94,.14);color:var(--gold-2);font-size:1.35rem;margin-bottom:16px}
.vehicle-card .vehicle-img{aspect-ratio:16/9;background:#0f172a}
.vehicle-card h3{margin-bottom:8px}
.vehicle-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid var(--line);color:var(--muted);background:rgba(255,255,255,.035);font-size:.86rem;font-weight:700}
.status{font-weight:900}.status.ok{color:var(--ok)}.status.warn{color:var(--warn)}.status.danger{color:var(--danger)}
.price{font-size:1.45rem;font-weight:950;color:var(--gold-2);letter-spacing:-.03em}
.vehicle-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.cta-band{padding:34px;border-radius:calc(var(--radius) + 8px);background:linear-gradient(135deg, rgba(205,164,94,.20), rgba(255,255,255,.055)), linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));border:1px solid rgba(205,164,94,.25);display:flex;align-items:center;justify-content:space-between;gap:24px}
.page-hero{padding:72px 0 50px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 85% 30%, rgba(205,164,94,.18), transparent 28rem), linear-gradient(180deg, rgba(255,255,255,.04), transparent)}
.breadcrumb{color:var(--muted-2);font-size:.94rem;margin-bottom:18px}.breadcrumb a{color:var(--gold-2)}
.filters{display:grid;grid-template-columns:1.4fr repeat(3, minmax(150px, .7fr));gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.045);margin-bottom:26px}
.input, select, textarea{width:100%;min-height:46px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(8,13,26,.85);color:var(--text);padding:12px 14px;font:inherit}
textarea{min-height:130px;resize:vertical}
label{display:block;font-weight:850;margin-bottom:7px;color:var(--text)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid .full{grid-column:1/-1}
.helper{display:block;color:var(--muted-2);font-size:.82rem;margin-top:5px}
.contact-callout{padding:18px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid var(--line)}
.contact-callout small{display:block;color:var(--muted-2);font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;margin-bottom:4px}
.contact-callout strong{display:block;font-size:1.45rem;color:var(--gold-2)}
.notice{border:1px solid rgba(205,164,94,.28);background:rgba(205,164,94,.10);color:#fdecc0;padding:14px 16px;border-radius:16px;margin:18px 0}
.notice strong{color:var(--gold-2)}
.table-like{display:grid;gap:10px}.row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.row span{color:var(--muted)}
.feature-list{display:grid;gap:10px;padding:0;margin:16px 0 0;list-style:none}.feature-list li{display:flex;gap:10px;color:var(--muted)}.feature-list li::before{content:"✓";color:var(--gold-2);font-weight:900}
.steps{counter-reset:step;display:grid;gap:14px}.step{position:relative;padding:22px 22px 22px 78px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.045)}.step::before{counter-increment:step;content:counter(step);position:absolute;left:20px;top:22px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#111;font-weight:950}
.map-box{min-height:330px;border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(135deg, rgba(205,164,94,.16), rgba(255,255,255,.04)), repeating-linear-gradient(45deg, rgba(255,255,255,.05) 0 2px, transparent 2px 24px), #101827;display:grid;place-items:center;text-align:center;padding:22px;color:var(--muted)}
.site-footer{border-top:1px solid var(--line);background:#070b15;padding:54px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr .9fr;gap:26px}.footer-grid p,.footer-grid a{color:var(--muted)}.footer-grid a:hover{color:var(--gold-2)}.footer-title{font-weight:950;color:var(--text);margin-bottom:13px}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:36px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted-2);font-size:.92rem}
.disclaimer{font-size:.9rem;color:var(--muted-2);border-left:3px solid var(--gold);padding-left:14px}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.65);display:none;align-items:center;justify-content:center;z-index:500;padding:18px}.modal-backdrop.show{display:flex}
.modal{width:min(680px,100%);border:1px solid var(--line);background:#0b1020;border-radius:24px;box-shadow:var(--shadow);padding:24px}.modal-head{display:flex;justify-content:space-between;gap:18px;align-items:start}
.close{border:0;background:rgba(255,255,255,.08);color:var(--text);border-radius:12px;padding:8px 11px;cursor:pointer;font-size:1.2rem}
.toast{position:fixed;right:18px;bottom:18px;z-index:600;background:#101827;border:1px solid var(--line);border-radius:16px;padding:14px 16px;color:var(--text);box-shadow:var(--shadow);display:none;max-width:380px}.toast.show{display:block}
@media (max-width:930px){
  .topbar .container{align-items:flex-start;flex-direction:column;gap:7px}.nav-toggle{display:block}
  .nav-menu{position:absolute;left:16px;right:16px;top:74px;display:none;flex-direction:column;align-items:stretch;padding:12px;background:#0b1020;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
  .nav-menu.open{display:flex}.nav-menu a{padding:13px 14px}
  .hero{min-height:auto;padding:90px 0 70px}.hero-grid,.grid-2{grid-template-columns:1fr}.hero-grid .glass-card{display:none}
  .grid-3{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.cta-band{align-items:flex-start;flex-direction:column}
}
@media (max-width:640px){
  .container{width:min(100% - 22px,1180px)}.brand img{width:62px}.brand span{font-size:1rem}h1{font-size:2.7rem}
  .hero-stats,.grid-3,.filters,.form-grid,.footer-grid{grid-template-columns:1fr}.section{padding:62px 0}.section-head{display:block}.form-grid .full{grid-column:auto}.row{grid-template-columns:1fr}.vehicle-actions .btn{width:100%}
}

.server-card{display:grid;grid-template-columns:220px 1fr;gap:22px;align-items:center;padding:24px;border:1px solid rgba(205,164,94,.25);border-radius:calc(var(--radius) + 8px);background:linear-gradient(135deg, rgba(205,164,94,.14), rgba(255,255,255,.04));box-shadow:var(--shadow)}
.server-card img{width:100%;max-width:220px;aspect-ratio:1/1;object-fit:cover;border-radius:50%;border:4px solid rgba(255,255,255,.08);box-shadow:0 18px 42px rgba(0,0,0,.28)}
.server-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.server-meta .pill{color:var(--text)}
@media (max-width:640px){.server-card{grid-template-columns:1fr;text-align:center}.server-card img{margin-inline:auto}}

/* Aggiornamento stile concessionario premium */
body{
  background:
    radial-gradient(circle at top right, rgba(205,164,94,.12), transparent 34rem),
    linear-gradient(180deg, #0b1020 0%, #0f172a 48%, #0b1020 100%);
}
.topbar{
  background:#070b15;
  color:#e5e7eb;
}
.badge-rp{
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.14);
  color:#f8fafc;
}
.hero::before{
  background:
    linear-gradient(90deg, rgba(7,11,21,.96) 0%, rgba(7,11,21,.74) 45%, rgba(7,11,21,.16) 100%),
    url("assets/hero-showroom.svg") center/cover no-repeat;
}
.hero .notice{
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.055);
  color:#e5e7eb;
}
.card,.glass-card{
  background:linear-gradient(180deg, rgba(255,255,255,.092), rgba(255,255,255,.038));
}
.vehicle-card{
  transition:.18s transform,.18s border-color,.18s box-shadow;
}
.vehicle-card:hover{
  transform:translateY(-4px);
  border-color:rgba(205,164,94,.38);
  box-shadow:0 28px 80px rgba(0,0,0,.32);
}
.footer-credit{
  width:100%;
  text-align:center;
  padding-top:12px;
  color:#cbd5e1;
  font-weight:800;
  letter-spacing:.01em;
}
.disclaimer{
  font-size:.78rem;
  opacity:.8;
  border-left:2px solid rgba(205,164,94,.7);
}
.professional-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:28px;
}
.professional-strip .stat strong{
  font-size:1.35rem;
}
@media (max-width:930px){
  .professional-strip{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .professional-strip{grid-template-columns:1fr}
}

.tradein-panel{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch}.tradein-highlight{padding:28px;border-radius:calc(var(--radius) + 8px);border:1px solid rgba(205,164,94,.30);background:linear-gradient(135deg, rgba(205,164,94,.18), rgba(255,255,255,.045));box-shadow:var(--shadow)}.tradein-checks{display:grid;gap:12px;margin-top:18px}.tradein-check{padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.045);color:var(--muted)}.tradein-check strong{color:var(--text)}@media (max-width:930px){.tradein-panel{grid-template-columns:1fr}}

/* Hero iniziale con immagine dello spiazzale */
.hero-showcase{
  position:relative;
  min-height:calc(100vh - 106px);
  display:grid;
  align-items:end;
  overflow:hidden;
  border-bottom:1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(7,11,21,.16) 0%, rgba(7,11,21,.48) 42%, rgba(7,11,21,.94) 100%),
    linear-gradient(90deg, rgba(7,11,21,.86) 0%, rgba(7,11,21,.42) 52%, rgba(7,11,21,.70) 100%),
    url("assets/spiazzale-concessionario.jpg") center/cover no-repeat;
}
.hero-showcase::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:170px;
  background:linear-gradient(transparent,var(--bg));
  pointer-events:none;
}
.hero-showcase-content{
  position:relative;
  z-index:2;
  padding:120px 0 76px;
  max-width:920px;
}
.hero-showcase h1{
  max-width:880px;
  text-shadow:0 18px 52px rgba(0,0,0,.58);
}
.hero-showcase .lead{
  max-width:760px;
  text-shadow:0 12px 36px rgba(0,0,0,.65);
}
.hero-quick-actions{
  position:relative;
  z-index:3;
  transform:translateY(34px);
}
.quick-actions-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.quick-action-card{
  min-height:150px;
  padding:22px;
  border-radius:calc(var(--radius) + 4px);
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, rgba(17,24,39,.92), rgba(15,23,42,.92));
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:.18s transform,.18s border-color,.18s background;
}
.quick-action-card:hover{
  transform:translateY(-5px);
  border-color:rgba(205,164,94,.42);
  background:linear-gradient(180deg, rgba(31,41,55,.96), rgba(15,23,42,.96));
}
.quick-action-card .icon{
  margin-bottom:12px;
}
.quick-action-card h3{
  margin-bottom:6px;
}
.quick-action-card p{
  margin:0;
  color:var(--muted);
  font-size:.94rem;
}
.showroom-intro{
  padding-top:92px;
}
.image-note{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(0,0,0,.25);
  color:#e5e7eb;
  font-size:.82rem;
  font-weight:800;
}
@media (max-width:930px){
  .hero-showcase{min-height:auto}
  .hero-showcase-content{padding:92px 0 70px}
  .hero-quick-actions{transform:none;margin-top:-24px}
  .quick-actions-grid{grid-template-columns:1fr 1fr}
  .showroom-intro{padding-top:62px}
}
@media (max-width:640px){
  .quick-actions-grid{grid-template-columns:1fr}
  .quick-action-card{min-height:auto}
}


/* Ottimizzazione mobile premium */
html{
  -webkit-text-size-adjust:100%;
}
body{
  overflow-x:hidden;
}
.mobile-bottom-nav{
  display:none;
}
@media (max-width:760px){
  :root{
    --radius:18px;
  }
  body{
    padding-bottom:82px;
  }
  .container{
    width:min(100% - 20px, 1180px);
  }
  .topbar{
    font-size:.78rem;
  }
  .topbar .container{
    padding:7px 0;
    gap:5px;
  }
  .badge-rp{
    padding:4px 8px;
    font-size:.72rem;
  }
  .site-header{
    top:0;
  }
  .nav-wrap{
    padding:10px 0;
  }
  .brand{
    gap:9px;
    max-width:76%;
  }
  .brand img{
    width:52px;
    border-radius:10px;
  }
  .brand span{
    font-size:.95rem;
    line-height:1.05;
  }
  .nav-toggle{
    min-width:46px;
    min-height:46px;
    padding:8px 10px;
    border-radius:14px;
  }
  .nav-menu{
    top:65px;
    left:10px;
    right:10px;
    max-height:calc(100vh - 94px);
    overflow:auto;
    padding:10px;
  }
  .nav-menu a{
    min-height:48px;
    display:flex;
    align-items:center;
    font-size:1rem;
  }

  h1{
    font-size:clamp(2.15rem, 11vw, 3rem);
    letter-spacing:-.055em;
  }
  h2{
    font-size:clamp(1.72rem, 8vw, 2.35rem);
  }
  h3{
    font-size:1.15rem;
  }
  .lead{
    font-size:1.02rem;
    line-height:1.55;
  }

  .hero-showcase{
    min-height:78vh;
    background-position:center top;
  }
  .hero-showcase-content{
    padding:74px 0 56px;
  }
  .hero-showcase .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin:22px 0 16px;
  }
  .hero-showcase .btn{
    width:100%;
  }
  .image-note{
    font-size:.72rem;
    line-height:1.25;
    border-radius:14px;
  }

  .hero-quick-actions{
    margin-top:-16px;
  }
  .quick-actions-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .quick-action-card{
    min-height:132px;
    padding:15px;
    border-radius:18px;
  }
  .quick-action-card .icon{
    width:38px;
    height:38px;
    border-radius:13px;
    font-size:1.1rem;
    margin-bottom:9px;
  }
  .quick-action-card h3{
    font-size:1rem;
    margin-bottom:5px;
  }
  .quick-action-card p{
    font-size:.8rem;
    line-height:1.35;
  }

  .section{
    padding:54px 0;
  }
  .section-sm{
    padding:38px 0;
  }
  .showroom-intro{
    padding-top:48px;
  }
  .section-head{
    margin-bottom:22px;
  }
  .glass-card,
  .card-body,
  .tradein-highlight{
    padding:18px;
  }
  .grid-2,
  .grid-3,
  .tradein-panel,
  .filters,
  .form-grid,
  .footer-grid,
  .hero-stats,
  .professional-strip{
    grid-template-columns:1fr !important;
  }

  .filters{
    padding:12px;
    gap:10px;
    position:relative;
  }
  .input,
  select,
  textarea{
    min-height:50px;
    border-radius:14px;
    font-size:16px;
  }
  textarea{
    min-height:120px;
  }
  label{
    font-size:.95rem;
  }

  .vehicle-card{
    border-radius:20px;
  }
  .vehicle-card .vehicle-img{
    aspect-ratio:16/10;
  }
  .vehicle-meta{
    gap:6px;
  }
  .pill{
    font-size:.78rem;
    padding:5px 8px;
  }
  .price{
    font-size:1.25rem;
  }
  .vehicle-actions,
  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }
  .vehicle-actions .btn,
  .hero-actions .btn{
    width:100%;
  }
  .btn{
    min-height:50px;
    padding:13px 16px;
    border-radius:16px;
  }
  .btn-small{
    min-height:46px;
  }

  .cta-band{
    padding:20px;
    border-radius:22px;
  }
  .server-card{
    grid-template-columns:1fr;
    padding:20px;
    text-align:center;
  }
  .server-card img{
    width:132px;
    margin-inline:auto;
  }
  .server-meta{
    justify-content:center;
  }

  .page-hero{
    padding:42px 0 34px;
  }
  .breadcrumb{
    font-size:.82rem;
  }
  .map-box{
    min-height:230px;
  }
  .row{
    grid-template-columns:1fr;
    gap:4px;
    padding:12px 0;
  }

  .site-footer{
    padding:38px 0 94px;
  }
  .footer-grid{
    gap:18px;
  }
  .footer-bottom{
    display:grid;
    grid-template-columns:1fr;
    text-align:center;
    gap:8px;
  }
  .footer-credit{
    padding-top:0;
  }

  .toast{
    left:10px;
    right:10px;
    bottom:92px;
    max-width:none;
  }

  .mobile-bottom-nav{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:700;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:0;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    background:rgba(7,11,21,.94);
    backdrop-filter:blur(18px);
    border-top:1px solid rgba(255,255,255,.12);
    box-shadow:0 -18px 48px rgba(0,0,0,.35);
  }
  .mobile-bottom-nav a{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    min-height:54px;
    color:#cbd5e1;
    font-size:.68rem;
    font-weight:850;
    border-radius:14px;
  }
  .mobile-bottom-nav a span{
    font-size:1.15rem;
    line-height:1;
  }
  .mobile-bottom-nav a:hover,
  .mobile-bottom-nav a:focus,
  .mobile-bottom-nav a.active{
    color:#111827;
    background:linear-gradient(135deg,var(--gold),var(--gold-2));
    outline:none;
  }
}

@media (max-width:390px){
  .quick-actions-grid{
    grid-template-columns:1fr;
  }
  .hero-showcase{
    min-height:74vh;
  }
  .mobile-bottom-nav a{
    font-size:.62rem;
    min-height:50px;
  }
  .mobile-bottom-nav a span{
    font-size:1.05rem;
  }
}


/* Filtro grande Auto da Affare */
.deal-filter-box{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(205,164,94,.42);
  border-radius:calc(var(--radius) + 8px);
  background:
    radial-gradient(circle at 90% 10%, rgba(241,211,138,.22), transparent 22rem),
    linear-gradient(135deg, rgba(205,164,94,.18), rgba(255,255,255,.05));
  box-shadow:var(--shadow);
  padding:26px;
  margin-bottom:22px;
  display:grid;
  grid-template-columns:1.3fr auto;
  gap:18px;
  align-items:center;
}
.deal-filter-box::before{
  content:"";
  position:absolute;
  inset:-60px auto auto -80px;
  width:220px;
  height:220px;
  border-radius:50%;
  background:rgba(241,211,138,.12);
}
.deal-filter-box > *{
  position:relative;
  z-index:1;
}
.deal-filter-box p{
  color:var(--muted);
  margin:0;
}
.deal-toggle{
  border:0;
  min-width:260px;
  min-height:62px;
  border-radius:20px;
  padding:16px 22px;
  cursor:pointer;
  font:inherit;
  font-weight:950;
  color:#111827;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  box-shadow:0 18px 42px rgba(205,164,94,.24);
  transition:.18s transform,.18s filter,.18s box-shadow;
}
.deal-toggle:hover{
  transform:translateY(-2px);
  filter:brightness(1.05);
}
.deal-toggle[aria-pressed="true"]{
  background:linear-gradient(135deg,#22c55e,#bbf7d0);
  box-shadow:0 18px 42px rgba(34,197,94,.20);
}
.deal-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid rgba(241,211,138,.45);
  background:rgba(205,164,94,.16);
  color:var(--gold-2);
  border-radius:999px;
  padding:6px 10px;
  font-size:.78rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-right:7px;
}
.deal-card-link{
  border-color:rgba(205,164,94,.42);
}
.deal-card-link .icon{
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:#111827;
}
@media (max-width:760px){
  .deal-filter-box{
    grid-template-columns:1fr;
    padding:20px;
    margin-bottom:16px;
  }
  .deal-toggle{
    width:100%;
    min-width:0;
    min-height:58px;
    border-radius:18px;
  }
}


/* Area Admin */
.admin-login-wrap{
  max-width:520px;
  margin:0 auto;
}
.admin-panel{
  display:none;
}
.admin-panel.show{
  display:block;
}
.admin-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:space-between;
  align-items:center;
  margin-bottom:18px;
}
.admin-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.admin-grid{
  display:grid;
  grid-template-columns:320px 1fr;
  gap:20px;
  align-items:start;
}
.admin-car-list{
  display:grid;
  gap:10px;
  max-height:720px;
  overflow:auto;
  padding-right:4px;
}
.admin-car-button{
  width:100%;
  border:1px solid var(--line);
  background:rgba(255,255,255,.045);
  color:var(--text);
  border-radius:18px;
  padding:12px;
  cursor:pointer;
  display:grid;
  grid-template-columns:70px 1fr;
  gap:12px;
  align-items:center;
  text-align:left;
}
.admin-car-button:hover,
.admin-car-button.active{
  border-color:rgba(205,164,94,.42);
  background:rgba(205,164,94,.10);
}
.admin-car-button img{
  width:70px;
  height:52px;
  object-fit:cover;
  border-radius:12px;
  background:#0f172a;
}
.admin-car-button strong{
  display:block;
  line-height:1.2;
}
.admin-car-button span{
  color:var(--muted);
  font-size:.82rem;
}
.admin-preview{
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:#0f172a;
  margin-bottom:14px;
}
.admin-preview img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
.admin-form{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.admin-form .full{
  grid-column:1 / -1;
}
.admin-mini{
  color:var(--muted-2);
  font-size:.82rem;
  margin-top:6px;
}
.admin-status{
  margin-top:14px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(34,197,94,.24);
  background:rgba(34,197,94,.08);
  color:#bbf7d0;
  display:none;
}
.admin-status.show{
  display:block;
}
.admin-danger{
  border-color:rgba(239,68,68,.26);
  background:rgba(239,68,68,.08);
  color:#fecaca;
}
.admin-json-box{
  display:none;
  margin-top:14px;
}
.admin-json-box.show{
  display:block;
}
.admin-json-box textarea{
  min-height:220px;
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size:.85rem;
}
@media (max-width:930px){
  .admin-grid{
    grid-template-columns:1fr;
  }
  .admin-car-list{
    max-height:none;
  }
}
@media (max-width:760px){
  .admin-toolbar{
    align-items:stretch;
  }
  .admin-actions,
  .admin-toolbar .btn{
    width:100%;
  }
  .admin-actions .btn{
    width:100%;
  }
  .admin-form{
    grid-template-columns:1fr;
  }
  .admin-form .full{
    grid-column:auto;
  }
}


/* Sezioni realistiche home: Pasquale, nuovi arrivi, consegne */
.pasquale-section{
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:26px;
  align-items:center;
}
.pasquale-photo{
  border-radius:calc(var(--radius) + 10px);
  overflow:hidden;
  border:1px solid rgba(205,164,94,.28);
  box-shadow:var(--shadow);
  background:#0f172a;
}
.pasquale-photo img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
}
.quote-box{
  margin-top:18px;
  padding:18px;
  border-left:4px solid var(--gold);
  border-radius:0 18px 18px 0;
  background:rgba(205,164,94,.10);
  color:#fdecc0;
  font-weight:750;
}
.arrivals-grid,
.deliveries-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.real-card img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  background:#0f172a;
}
.real-card .badge-line{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
.real-card .real-price{
  color:var(--gold-2);
  font-size:1.25rem;
  font-weight:950;
  margin-top:12px;
}
.delivery-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.admin-content-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  align-items:start;
  margin-top:28px;
}
.admin-content-list{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.admin-content-item{
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.045);
  color:var(--text);
  padding:12px;
  cursor:pointer;
  text-align:left;
}
.admin-content-item.active,
.admin-content-item:hover{
  border-color:rgba(205,164,94,.42);
  background:rgba(205,164,94,.10);
}
.admin-content-preview img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:16px;
  border:1px solid var(--line);
  background:#0f172a;
}
@media (max-width:930px){
  .pasquale-section,
  .admin-content-grid{
    grid-template-columns:1fr;
  }
  .arrivals-grid,
  .deliveries-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:760px){
  .arrivals-grid,
  .deliveries-grid{
    grid-template-columns:1fr;
  }
  .pasquale-photo img{
    aspect-ratio:1/1;
  }
}


/* Mobile finale: visibilità completa smartphone */
@media (max-width: 820px){
  body{
    padding-bottom:92px;
  }

  .hero-showcase{
    min-height:82vh;
    background-position:center;
  }

  .hero-showcase-content{
    padding:76px 0 58px;
  }

  .hero-showcase h1{
    font-size:clamp(2.05rem, 10.8vw, 3.05rem);
    line-height:1.02;
    max-width:100%;
  }

  .hero-showcase .lead{
    font-size:1.02rem;
    line-height:1.55;
    max-width:100%;
  }

  .hero-showcase .hero-actions,
  .cta-band .hero-actions,
  .vehicle-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    width:100%;
  }

  .hero-showcase .btn,
  .cta-band .btn,
  .vehicle-actions .btn{
    width:100%;
  }

  .quick-actions-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }

  .quick-action-card{
    min-height:136px;
    padding:16px;
  }

  .quick-action-card h3{
    font-size:1rem;
  }

  .quick-action-card p{
    font-size:.82rem;
    line-height:1.38;
  }

  .pasquale-section{
    grid-template-columns:1fr !important;
    gap:16px;
  }

  .pasquale-photo img{
    aspect-ratio:1/1;
    object-position:center top;
  }

  .quote-box{
    font-size:.95rem;
    line-height:1.45;
    padding:15px;
  }

  .arrivals-grid,
  .deliveries-grid{
    grid-template-columns:1fr !important;
    gap:14px;
  }

  .real-card{
    border-radius:20px;
  }

  .real-card img{
    aspect-ratio:16/11;
  }

  .real-card .card-body{
    padding:17px;
  }

  .real-card .real-price{
    font-size:1.18rem;
  }

  .section-head{
    display:block;
  }

  .section-head p{
    margin-top:8px;
  }

  .deal-filter-box{
    grid-template-columns:1fr !important;
    padding:18px;
  }

  .deal-filter-box h2{
    font-size:1.55rem;
  }

  .deal-toggle{
    min-width:0;
    width:100%;
    min-height:58px;
  }

  .admin-content-grid{
    grid-template-columns:1fr !important;
    gap:16px;
  }

  .admin-content-preview img{
    aspect-ratio:16/11;
  }

  .admin-content-list{
    max-height:280px;
    overflow:auto;
    padding-right:4px;
  }

  .admin-content-item{
    min-height:58px;
  }

  .admin-toolbar{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
  }

  .admin-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }

  .admin-actions .btn{
    width:100%;
  }

  .admin-grid{
    grid-template-columns:1fr !important;
  }

  .admin-car-list{
    max-height:360px;
    overflow:auto;
  }

  .admin-car-button{
    grid-template-columns:76px 1fr;
    min-height:78px;
  }

  .admin-car-button img{
    width:76px;
    height:58px;
  }

  .admin-form{
    grid-template-columns:1fr !important;
    gap:12px;
  }

  .admin-form .full{
    grid-column:auto !important;
  }

  .admin-preview img{
    aspect-ratio:16/11;
  }

  #carForm .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }

  #carForm .hero-actions .btn{
    width:100%;
  }

  .mobile-bottom-nav{
    grid-template-columns:repeat(5,1fr);
  }

  .mobile-bottom-nav a{
    font-size:.66rem;
    min-height:56px;
    padding:5px 2px;
  }

  .mobile-bottom-nav a span{
    font-size:1.15rem;
  }

  .footer-credit a{
    color:var(--gold-2);
  }
}

@media (max-width: 430px){
  .container{
    width:min(100% - 18px, 1180px);
  }

  .topbar .container{
    font-size:.75rem;
  }

  .brand span{
    font-size:.88rem;
  }

  .brand img{
    width:48px;
  }

  .hero-showcase{
    min-height:78vh;
  }

  .hero-showcase-content{
    padding:62px 0 48px;
  }

  .quick-actions-grid{
    grid-template-columns:1fr;
  }

  .quick-action-card{
    min-height:auto;
    padding:15px 16px;
  }

  .quick-action-card p{
    font-size:.86rem;
  }

  h1{
    font-size:2.12rem;
  }

  h2{
    font-size:1.62rem;
  }

  .lead{
    font-size:.98rem;
  }

  .glass-card,
  .card-body,
  .tradein-highlight,
  .cta-band{
    padding:16px;
  }

  .real-card img,
  .admin-content-preview img,
  .admin-preview img{
    aspect-ratio:4/3;
  }

  .pill,
  .deal-badge{
    font-size:.74rem;
  }

  .delivery-meta{
    gap:6px;
  }

  .mobile-bottom-nav{
    padding-left:5px;
    padding-right:5px;
  }

  .mobile-bottom-nav a{
    font-size:.58rem;
    min-height:52px;
    border-radius:12px;
  }

  .mobile-bottom-nav a span{
    font-size:1.02rem;
  }

  .page-hero{
    padding:34px 0 28px;
  }

  .admin-login-wrap{
    max-width:100%;
  }
}

/* Pulsante di salvataggio più comodo nell'admin mobile */
@media (max-width: 820px){
  #saveContent{
    position:sticky;
    bottom:96px;
    z-index:30;
    box-shadow:0 18px 48px rgba(0,0,0,.35);
  }

  #adminPanel input[type="file"]{
    padding-top:13px;
  }
}


/* Fix audit generale */
html, body{
  max-width:100%;
  overflow-x:hidden;
}
.quick-actions-grid{
  grid-template-columns:repeat(auto-fit, minmax(190px, 1fr));
}
.status.warn{
  color:var(--warn);
}
.status.danger{
  color:var(--danger);
}
.vehicle-card img,
.real-card img,
.pasquale-photo img,
.admin-content-preview img,
.admin-preview img{
  max-width:100%;
}
.mobile-bottom-nav{
  padding-bottom:max(7px, env(safe-area-inset-bottom));
}
@media (min-width:761px) and (max-width:930px){
  .quick-actions-grid{
    grid-template-columns:repeat(3,1fr);
  }
}
@media (max-width:760px){
  .quick-actions-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:430px){
  .quick-actions-grid{
    grid-template-columns:1fr;
  }
}


/* Foto reale spiazzale inserita */
.hero-showcase{
  background-position:center center;
}
@media (max-width:760px){
  .hero-showcase{
    background-position:center center;
  }
}


/* Rifinitura stile webdesigner */
.kicker{
  letter-spacing:.13em;
}
.hero-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 30%, rgba(0,0,0,.20), transparent 28rem),
    linear-gradient(90deg, rgba(4,7,13,.82), rgba(4,7,13,.42) 54%, rgba(4,7,13,.70));
  pointer-events:none;
}
.hero-showcase-content{
  z-index:3;
}
.card,
.glass-card,
.quick-action-card,
.cta-band{
  backdrop-filter:blur(10px);
}
.nav-menu a,
.btn{
  letter-spacing:.01em;
}
.page-hero{
  background:
    radial-gradient(circle at 88% 22%, rgba(205,164,94,.16), transparent 27rem),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,0));
}
.admin-login-wrap input::placeholder{
  color:transparent;
}
.footer-credit a{
  color:var(--gold-2);
}
@media (max-width:760px){
  .hero-showcase::before{
    background:linear-gradient(180deg, rgba(4,7,13,.35), rgba(4,7,13,.88));
  }
}


/* Luxury redesign: tipografia, icone custom, look autosalone premium */
:root{
  --lux-ink:#f7f1e7;
  --lux-paper:#efe7d5;
  --lux-gold:#d7b46a;
  --lux-gold-soft:#f2d99b;
  --lux-charcoal:#090d16;
  --lux-panel:#101827;
}
body{
  font-family:"Segoe UI", Inter, system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  letter-spacing:.005em;
}
h1,h2{
  font-family:Georgia, "Times New Roman", serif;
  font-weight:700;
  letter-spacing:-.045em;
}
h3,.footer-title,.brand span{
  letter-spacing:-.015em;
}
.kicker{
  font-size:.74rem;
  letter-spacing:.18em;
  color:var(--lux-gold-soft);
}
.btn{
  text-transform:none;
  letter-spacing:.015em;
}
.btn-primary{
  background:linear-gradient(135deg,#b98a35,#efd28a 48%,#a97628);
}
.site-header{
  background:rgba(7,11,21,.86);
}
.hero-showcase{
  background:
    linear-gradient(180deg, rgba(4,7,13,.20) 0%, rgba(4,7,13,.56) 50%, rgba(4,7,13,.96) 100%),
    linear-gradient(90deg, rgba(4,7,13,.88) 0%, rgba(4,7,13,.44) 50%, rgba(4,7,13,.72) 100%),
    url("assets/spiazzale-concessionario.jpg") center/cover no-repeat;
}
.hero-showcase h1{
  color:var(--lux-ink);
}
.hero-showcase .lead{
  color:#e9e2d6;
}
.quick-action-card,
.card,
.glass-card{
  border-color:rgba(215,180,106,.18);
}
.quick-action-card:hover,
.card:hover{
  border-color:rgba(215,180,106,.44);
}
.lux-icon{
  width:46px;
  height:46px;
  border-radius:16px;
  display:inline-grid;
  place-items:center;
  background:linear-gradient(145deg,rgba(215,180,106,.22),rgba(255,255,255,.055));
  border:1px solid rgba(215,180,106,.26);
  color:var(--lux-gold-soft);
  margin-bottom:14px;
  flex:0 0 auto;
}
.lux-icon svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.85;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.quick-action-card .icon,
.card-body .icon{
  display:none !important;
}
.deal-badge{
  background:rgba(215,180,106,.14);
  border-color:rgba(215,180,106,.34);
  color:var(--lux-gold-soft);
}
.mobile-bottom-nav a span{
  display:none;
}
.mobile-bottom-nav a::before{
  content:"";
  width:22px;
  height:22px;
  margin-bottom:3px;
  display:block;
  background:currentColor;
  opacity:.95;
}
.mobile-bottom-nav a[data-mobile-link="home"]::before{
  clip-path:path("M 11 2 L 21 10 L 18.8 10 L 18.8 20 L 13.8 20 L 13.8 14 L 8.2 14 L 8.2 20 L 3.2 20 L 3.2 10 L 1 10 Z");
}
.mobile-bottom-nav a[data-mobile-link="inventario"]::before{
  clip-path:path("M 4 13 L 6.5 7.5 C 7 6.3 8 5.5 9.3 5.5 L 14.7 5.5 C 16 5.5 17 6.3 17.5 7.5 L 20 13 L 20 18 L 17 18 L 17 16 L 7 16 L 7 18 L 4 18 Z M 7 13 L 17 13 L 15.8 9 L 8.2 9 Z");
}
.mobile-bottom-nav a[data-mobile-link="prenota"]::before{
  clip-path:path("M 5 3 L 19 3 L 19 21 L 5 21 Z M 7 7 L 17 7 L 17 9 L 7 9 Z M 8 12 L 11 12 L 11 15 L 8 15 Z M 13 12 L 16 12 L 16 15 L 13 15 Z");
}
.mobile-bottom-nav a[data-mobile-link="valuta"]::before{
  clip-path:path("M 6 3 L 18 3 L 18 21 L 6 21 Z M 8 7 L 16 7 L 16 9 L 8 9 Z M 8 12 L 16 12 L 16 14 L 8 14 Z M 8 17 L 14 17 L 14 19 L 8 19 Z");
}
.mobile-bottom-nav a[data-mobile-link="contatti"]::before{
  clip-path:path("M 7 3 C 5.7 3 5 4.1 5.2 5.3 C 6.1 12 11 17.9 17.7 20.8 C 18.9 21.3 20 20.6 20.4 19.4 L 21 17.5 L 16.5 15.2 L 15.2 17 C 12.5 15.8 9.2 12.5 8 9.8 L 9.8 8.5 L 7.5 4 Z");
}
.footer-credit,
.disclaimer{
  font-size:.82rem;
}
.image-note{
  background:rgba(9,13,22,.52);
  border-color:rgba(215,180,106,.28);
  color:#f2e5c6;
}
@media (max-width:760px){
  h1,h2{
    letter-spacing:-.038em;
  }
  .lux-icon{
    width:40px;
    height:40px;
    border-radius:14px;
    margin-bottom:10px;
  }
  .lux-icon svg{
    width:22px;
    height:22px;
  }
}
