/*
Theme Name: Zontes Brescia Dealer
Theme URI: https://zontesbrescia.demotest.it/
Author: OpenAI
Description: Tema WordPress stile Zontes compatibile con Elementor, con homepage Elementor creata automaticamente e header gestibile dal Customizer.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: zontes-brescia
*/

:root{
  --zb-bg:#050505;
  --zb-bg-soft:#0d0d0f;
  --zb-panel:#101113;
  --zb-panel-2:#15161a;
  --zb-line:rgba(255,255,255,.1);
  --zb-text:#fff;
  --zb-text-soft:rgba(255,255,255,.75);
  --zb-muted:rgba(255,255,255,.55);
  --zb-accent:#ef2a28;
  --zb-accent-2:#ff5b46;
  --zb-header-h:96px;
  --zb-container:1660px;
}
html{scroll-behavior:smooth;}
body{margin:0;background:#050505;color:#fff;font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.5;overflow-x:hidden;}
a{text-decoration:none;color:inherit}img{max-width:100%;display:block;height:auto}.site{overflow:hidden}.site-main{min-height:50vh}
.zb-container{width:min(calc(100% - 40px),var(--zb-container));margin:0 auto;}
.zb-content-wrap{padding:56px 0 90px;}
.zb-section{padding:86px 0;position:relative;}
.zb-eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#fff;opacity:.72;margin-bottom:14px;}
.zb-title{font-size:clamp(2.6rem,5vw,5.6rem);line-height:.92;letter-spacing:-.05em;text-transform:uppercase;margin:0 0 18px;font-weight:900;}
.zb-copy{font-size:1.06rem;color:var(--zb-text-soft);max-width:760px;}
.zb-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 28px;border-radius:999px;background:linear-gradient(135deg,var(--zb-accent),var(--zb-accent-2));color:#fff;font-size:.92rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border:1px solid transparent;box-shadow:0 12px 32px rgba(239,42,40,.28);transition:.25s transform,.25s box-shadow,.25s background;}
.zb-btn:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(239,42,40,.35)}
.zb-btn--ghost{background:transparent;border-color:rgba(255,255,255,.14);box-shadow:none}.zb-btn--ghost:hover{background:rgba(255,255,255,.05)}
.zb-card{border:1px solid var(--zb-line);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border-radius:24px;overflow:hidden;position:relative;box-shadow:0 18px 52px rgba(0,0,0,.28)}

.admin-bar .zb-site-header{top:32px;}
.zb-site-header{position:sticky;top:0;z-index:1000;background:rgba(0,0,0,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08)}
.zb-header-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;min-height:var(--zb-header-h)}
.zb-brand{display:flex;align-items:center;gap:20px;min-width:0}.zb-brand img{max-height:48px;width:auto}.zb-brand-text{display:flex;align-items:center;gap:16px;min-width:0}.zb-site-title{font-size:2rem;font-weight:900;letter-spacing:-.04em;white-space:nowrap;text-transform:uppercase}.zb-site-tagline{font-size:.9rem;letter-spacing:.18em;text-transform:uppercase;color:var(--zb-text-soft);white-space:nowrap}
.zb-main-nav{display:flex;justify-content:center;min-width:0}.zb-main-nav .menu{display:flex;align-items:stretch;list-style:none;margin:0;padding:0;border-left:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1)}
.zb-main-nav .menu>li{border-right:1px solid rgba(255,255,255,.1)}.zb-main-nav .menu>li:last-child{border-right:0}.zb-main-nav .menu>li>a{display:flex;align-items:center;justify-content:center;padding:0 28px;min-height:var(--zb-header-h);font-size:.92rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center}.zb-main-nav .menu>li>a:hover{background:rgba(255,255,255,.03)}
.zb-header-actions{display:flex;align-items:center;gap:18px}.zb-header-phone{font-weight:800;white-space:nowrap}.zb-header-toggle{display:none;background:none;border:0;color:#fff;font-weight:800;padding:10px 0;cursor:pointer}.zb-mobile-nav{display:none;padding:12px 0 18px;border-top:1px solid rgba(255,255,255,.08)}.zb-mobile-nav .menu{list-style:none;margin:0;padding:0}.zb-mobile-nav .menu a{display:block;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08);font-weight:800;text-transform:uppercase;letter-spacing:.06em}

/* Fix Elementor width and centering */
body.page-template-elementor_header_footer .site-main,
body.page-template-default.elementor-page .site-main,
body.elementor-default .site-main,
body.elementor-page .site-main{max-width:none;width:100%;margin:0;padding:0;}
.elementor-location-header,.elementor-location-footer{max-width:none;}
.elementor-section.elementor-section-boxed > .elementor-container,
.elementor-container{max-width:min(calc(100% - 40px),var(--zb-container)) !important;}
.elementor-widget-wrap > .elementor-element.elementor-widget-spacer:last-child{margin-bottom:0;}
.elementor-page .entry-header,.elementor-page .entry-content,
.elementor-default .entry-header,.elementor-default .entry-content{margin:0;padding:0;max-width:none;}
.page .entry-content > *{max-width:none;}

.zb-fallback-hero{position:relative;min-height:calc(100vh - var(--zb-header-h));background:#000;display:flex;align-items:flex-end}.zb-fallback-hero::before{content:"";position:absolute;inset:0;background:url('assets/img/hero-1.jpg') center/cover no-repeat}.zb-fallback-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.36) 42%,rgba(0,0,0,.12) 70%,rgba(0,0,0,.44) 100%)}.zb-fallback-inner{position:relative;z-index:2;padding:0 0 72px}.zb-fallback-copy{max-width:720px}.zb-fallback-kicker{font-size:.88rem;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.74);margin-bottom:16px}.zb-fallback-title{font-size:clamp(4rem,9vw,9rem);line-height:.88;margin:0 0 18px;text-transform:uppercase;letter-spacing:-.06em;font-weight:900}.zb-fallback-text{font-size:1.2rem;color:rgba(255,255,255,.84);max-width:620px;margin:0 0 28px}.zb-fallback-actions{display:flex;gap:14px;flex-wrap:wrap}

.zb-footer-placeholder{padding:30px 0 60px;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.16em}

@media (max-width:1200px){
  .zb-header-inner{grid-template-columns:auto auto;justify-content:space-between}.zb-main-nav{display:none}.zb-header-toggle{display:block}.zb-mobile-nav.is-open{display:block}.zb-site-tagline{display:none}
}
@media (max-width:782px){.admin-bar .zb-site-header{top:46px}}
@media (max-width:767px){
  .zb-container{width:min(calc(100% - 24px),var(--zb-container))}
  .zb-header-inner{grid-template-columns:1fr auto;gap:16px;min-height:78px}.zb-header-phone,.zb-header-actions .zb-btn{display:none}.zb-site-title{font-size:1.48rem}.zb-title{font-size:clamp(2rem,9vw,3rem)}.zb-section{padding:58px 0}.zb-fallback-title{font-size:clamp(3rem,16vw,4.8rem)}.zb-fallback-copy{padding-right:0}.elementor-container{max-width:min(calc(100% - 24px),var(--zb-container)) !important;}
}
