/* === style.css === */
/* ============================================================
   Modulor Autodemolizioni – stile "Officina Mix" (versione 2026-11-04)
   Unisce i tre stili di riferimento:
   · OFFICINA (nuovo-stile): asfalto, striscia di sicurezza, giallo
     segnaletica, titoli condensati, cartellini «Scaffale», ombre piene;
   · CLASSICO ROSSO (sito precedente Modulor Autodemolizioni): sezioni chiare e
     ariose, card arrotondate con ombra morbida, barretta rossa sotto i
     titoli, icone tonde;
   · ACCIAIO (layout di riferimento Artuso): blu acciaio per fiducia e
     numeri, fascia garanzia sotto l'hero, griglia di 8 numeri, schede
     con bordo superiore colorato, confronto tra soluzioni.
   ------------------------------------------------------------
   Base originale: asfalto, cemento, giallo segnaletica e rosso.
   Unione tra lo stile Modulor Autodemolizioni (rosso, contenuti, moduli)
   e il linguaggio industriale di riferimento (titoli condensati,
   cartellini, strisce di sicurezza, ombre piene).
   Mobile-first, font ospitati sul sito, contrasti WCAG AA,
   nessuna dipendenza esterna.
   ============================================================ */

/* ===== FONT (ospitati: niente Google Fonts, più veloce e GDPR) ===== */
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/big-shoulders-display-latin-700-normal.woff2') format('woff2'); }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 800; font-display: swap; src: url('../fonts/big-shoulders-display-latin-800-normal.woff2') format('woff2'); }
@font-face { font-family: 'Big Shoulders Display'; font-style: normal; font-weight: 900; font-display: swap; src: url('../fonts/big-shoulders-display-latin-900-normal.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/ibm-plex-sans-latin-400-normal.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('../fonts/ibm-plex-sans-latin-600-normal.woff2') format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 500; font-display: swap; src: url('../fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2'); }

:root {
  /* PALETTE
     rosso   = marchio Modulor Autodemolizioni: azioni, link, icone
     giallo  = segnaletica: accenti su fondo scuro, strisce, cartellini
     asfalto = testo, testate, piè di pagina
     cemento = fondo pagina; cartellino = sezioni alternate          */
  --rosso: #b3261e;
  --rosso-scuro: #8f1e17;
  --giallo: #f9cc21;
  --giallo-scuro: #e6ad00;
  --asfalto: #1b1715;
  --asfalto-2: #322d29;
  --asfalto-3: #120f0d;
  --cemento: #f3f0ea;
  --cemento-2: #e2ded5;
  --cartellino: #e7d5b7;
  --sezione-alt: #e7ebef;          /* grigio acciaio chiaro (mix Artuso/classico) */
  --acciaio: #1e3a5f;               /* blu acciaio: fiducia, numeri, passi */
  --acciaio-scuro: #142840;
  --acciaio-chiaro: #dfe7f1;
  --ombra-card: 0 10px 30px rgba(27,23,21,.08), 0 2px 6px rgba(27,23,21,.05);
  --superficie: #fffdf9;
  --testo: #1b1715;
  --testo-muto: #5a534e;          /* AA su cemento, cartellino e giallo */
  --testo-chiaro: #f3f0ea;
  --testo-chiaro-muto: #b8b0a9;   /* AA su asfalto */
  --linea: rgba(27,23,21,.18);
  --linea-forte: rgba(27,23,21,.32);
  --linea-chiara: rgba(243,240,234,.14);
  --verde-wa: #25d366;            /* verde WhatsApp (solo icone) */
  --verde-wa-scuro: #0f7a40;      /* pulsanti con testo bianco: AA 5.4:1 */
  --verde-wa-scurissimo: #0b6233;
  --errore: #a32020;

  /* TIPOGRAFIA */
  --font-display: 'Big Shoulders Display', 'Arial Narrow', Impact, sans-serif;
  --font-body: 'IBM Plex Sans', -apple-system, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;

  /* Testo del cartellino sopra i titoli di sezione ("Scaffale A", "Scaffale B"…) */
  --etichetta-sezione: "Scaffale ";

  --radius: 10px;
  --radius-sm: 4px;
  --ombra-piena: 6px 6px 0 var(--asfalto);
  --ombra-piena-sm: 4px 4px 0 var(--asfalto);
  --ombra-morbida: 0 18px 48px rgba(27,23,21,.22);
  --striscia: repeating-linear-gradient(-45deg, var(--giallo) 0 14px, var(--asfalto) 14px 28px);
  --duration: .25s;
  --ease: cubic-bezier(.4,0,.2,1);
  --container: 1240px;
  --container-narrow: 900px;
  --header-h: 76px;
}

/* ===== RESET ===== */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--header-h) + 20px); }
body { font-family: var(--font-body); font-size: 16px; line-height: 1.65; color: var(--testo); background: var(--cemento); overflow-x: hidden; -webkit-font-smoothing: antialiased; }
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: var(--rosso); text-underline-offset: 3px; }
a:hover { color: var(--rosso-scuro); }
b, strong { font-weight: 600; }
button, input, select, textarea { font: inherit; color: inherit; }
ul, ol { list-style: none; }
address { font-style: normal; }
table { border-collapse: collapse; width: 100%; }
[hidden] { display: none !important; }
::selection { background: var(--giallo); color: var(--asfalto); }
:focus-visible { outline: 3px solid var(--asfalto); outline-offset: 3px; border-radius: 2px; }
.top-banner :focus-visible, .info-bar :focus-visible, .site-header :focus-visible, .hero :focus-visible, .stats :focus-visible,
.page-header :focus-visible, .site-footer :focus-visible, .footer-condensed :focus-visible, .mobile-bar :focus-visible,
.info-box-dark :focus-visible, .inline-cta :focus-visible, #mainNav :focus-visible { outline-color: var(--giallo); }
.icona { width: 1.15em; height: 1.15em; flex-shrink: 0; display: inline-block; vertical-align: -.2em; }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip-link { position: absolute; left: -9999px; top: 0; background: var(--giallo); color: var(--asfalto); font-weight: 600; padding: .7rem 1rem; z-index: 10000; }
.skip-link:focus { left: 1rem; top: 1rem; color: var(--asfalto); }
.center { text-align: center; }
/* Pulsanti a fine sezione: allineati a sinistra come titoli e testi */
p.center, .container.center { text-align: left; }
p.center { margin-top: 2.2rem; }
.small { font-size: .85rem; color: var(--testo-muto); }
.note { font-size: .85rem; color: var(--testo-muto); margin-top: 1.5rem; }
@media (max-width: 768px) { .nascondi-mobile { display: none !important; } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* ===== CARTELLINO (etichetta a forma di cartellino ricambi, con foro) =====
   Usato da: badge dell'hero, eyebrow delle pagine, titoli di sezione. */
.hero-badge, .eyebrow, .section-title::before {
  display: inline-flex; align-items: center; gap: .5rem;
  font-family: var(--font-mono); font-weight: 500; font-size: .72rem; line-height: 1.2;
  letter-spacing: .12em; text-transform: uppercase;
  padding: .42rem .8rem .42rem 1.7rem;
  clip-path: polygon(.6rem 0, 100% 0, 100% 100%, .6rem 100%, 0 50%);
  border-radius: 0 3px 3px 0;
}

/* ===== BARRE SUPERIORI ===== */
.top-banner { background: var(--rosso); color: #fff; padding: .5rem 1rem; text-align: center; font-family: var(--font-mono); font-weight: 500; font-size: .74rem; letter-spacing: .06em; }
.top-banner span { display: inline-block; margin: 0 .35rem; }
.top-banner strong { font-weight: 500; letter-spacing: .1em; }
.top-banner .sep { color: var(--giallo); }
@media (max-width: 520px) { .top-banner { font-size: .66rem; padding: .45rem .4rem; letter-spacing: .02em; } .top-banner span { margin: 0 .15rem; } }
.info-bar { background: var(--asfalto-3); border-bottom: 1px solid var(--linea-chiara); padding: .42rem 1rem; font-family: var(--font-mono); font-size: .74rem; color: var(--testo-chiaro-muto); }
.info-bar-inner { max-width: var(--container); margin: 0 auto; display: flex; justify-content: flex-end; align-items: center; gap: .4rem 1.6rem; flex-wrap: wrap; }
.info-bar-inner > * { display: inline-flex; align-items: center; gap: .45rem; }
.info-bar .icona { color: var(--giallo); }
.info-bar a { color: var(--testo-chiaro); text-decoration: none; }
.info-bar a:hover { color: var(--giallo); }
@media (max-width: 768px) { .info-bar-inner { justify-content: center; } }

/* ===== HEADER (asfalto + striscia di sicurezza) ===== */
.site-header { background: var(--asfalto); color: var(--testo-chiaro); position: sticky; top: 0; z-index: 100; }
.site-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -8px; height: 8px; background: var(--striscia); pointer-events: none; }
.header-inner { max-width: var(--container); margin: 0 auto; padding: .7rem 1.25rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: var(--header-h); }
.logo { flex-shrink: 0; display: block; }
.logo img { width: 253px; height: 52px; }
@media (max-width: 400px) { .logo img { width: 214px; height: 44px; } }
.hamburger-btn { display: flex; flex-direction: column; justify-content: center; gap: 5px; width: 46px; height: 46px; background: var(--asfalto-2); border: 0; cursor: pointer; padding: 11px; border-radius: var(--radius-sm); }
.hamburger-btn span { display: block; height: 3px; background: var(--giallo); transition: transform var(--duration) var(--ease), opacity var(--duration); }
.hamburger-btn[aria-expanded="true"] span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.hamburger-btn[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.hamburger-btn[aria-expanded="true"] span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
#mainNav { position: fixed; top: 0; right: 0; height: 100dvh; width: min(330px, 86vw); background: var(--asfalto); border-left: 8px solid transparent; border-image: var(--striscia) 8; box-shadow: var(--ombra-morbida); transform: translateX(105%); transition: transform var(--duration) var(--ease); z-index: 210; padding: 5rem 1.2rem 2rem; overflow-y: auto; visibility: hidden; }
#mainNav.open { transform: none; visibility: visible; }
#mainNav ul { display: flex; flex-direction: column; gap: .1rem; }
#mainNav a { display: block; padding: .7rem .9rem; font-family: var(--font-display); font-weight: 700; text-transform: uppercase; letter-spacing: .03em; font-size: 1.35rem; line-height: 1.1; color: var(--testo-chiaro); text-decoration: none; border-radius: var(--radius-sm); }
#mainNav a:hover, #mainNav a.active { color: var(--giallo); background: var(--asfalto-2); }
#mainNav a.header-cta { background: var(--rosso); color: #fff; text-align: center; margin-top: .8rem; }
#mainNav a.header-cta:hover, #mainNav a.header-cta.active { background: var(--rosso-scuro); color: #fff; }
.menu-overlay { position: fixed; inset: 0; background: rgba(18,15,13,.6); z-index: 990; }
body.menu-open { overflow: hidden; }
/* Menu aperto: la testata (che contiene il menu) sale sopra il velo, la barra mobile
   e il pulsante WhatsApp; il pulsante diventa la X di chiusura in alto nel menu. */
body.menu-open .site-header { z-index: 1000; }
body.menu-open .hamburger-btn { position: fixed; top: 1rem; right: 1rem; z-index: 220; }

@media (min-width: 1180px) {
  .hamburger-btn, .menu-overlay { display: none !important; }
  #mainNav { position: static; height: auto; width: auto; transform: none; visibility: visible; box-shadow: none; padding: 0; overflow: visible; background: none; border: 0; }
  #mainNav ul { flex-direction: row; align-items: center; gap: 0; flex-wrap: nowrap; white-space: nowrap; }
  #mainNav a { padding: .5rem .62rem; font-size: 1.08rem; background: none; position: relative; }
  #mainNav a:not(.header-cta)::after { content: ""; position: absolute; left: .62rem; right: .62rem; bottom: .2rem; height: 3px; background: var(--giallo); transform: scaleX(0); transform-origin: left; transition: transform var(--duration) var(--ease); }
  #mainNav a:hover::after, #mainNav a.active::after { transform: scaleX(1); }
  #mainNav a:hover, #mainNav a.active { background: none; }
  #mainNav a.header-cta { margin: 0 0 0 .8rem; padding: .62rem 1.3rem; }
}

/* ===== PULSANTI (rettangolari, titolo condensato) ===== */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; padding: .85rem 1.6rem; border-radius: var(--radius-sm); font-family: var(--font-display); font-weight: 800; font-size: 1.2rem; letter-spacing: .03em; text-transform: uppercase; text-decoration: none; cursor: pointer; border: 2px solid transparent; transition: transform .15s var(--ease), box-shadow .15s var(--ease), background .15s, color .15s, border-color .15s; text-align: center; line-height: 1.1; min-height: 52px; }
.btn:hover { transform: translate(-2px, -2px); }
.btn:active { transform: none; box-shadow: none; }
.btn-primary { background: var(--rosso); color: #fff; border-color: var(--rosso); }
.btn-primary:hover { background: var(--rosso-scuro); border-color: var(--rosso-scuro); color: #fff; box-shadow: var(--ombra-piena-sm); }
.btn-whatsapp { background: var(--verde-wa-scuro); color: #fff; border-color: var(--verde-wa-scuro); }
.btn-whatsapp:hover { background: var(--verde-wa-scurissimo); border-color: var(--verde-wa-scurissimo); color: #fff; box-shadow: var(--ombra-piena-sm); }
.btn-whatsapp .icona { width: 1.25em; height: 1.25em; }
.btn-outline { background: transparent; color: var(--asfalto); border-color: var(--asfalto); }
.btn-outline:hover { background: var(--asfalto); color: var(--giallo); box-shadow: 4px 4px 0 var(--giallo-scuro); }
.btn-block { width: 100%; }
/* Sui fondi scuri l'ombra piena diventa gialla */
.hero .btn:hover, .page-header .btn:hover, .stats .btn:hover { box-shadow: 4px 4px 0 var(--giallo); }
.link-button { background: none; border: 0; color: inherit; text-decoration: underline; cursor: pointer; padding: 0; }
.link-inline { color: var(--rosso); font-weight: 600; }
.card-link { display: inline-flex; align-items: center; gap: .4rem; align-self: flex-start; font-family: var(--font-display); font-weight: 800; font-size: 1.12rem; letter-spacing: .03em; text-transform: uppercase; color: var(--asfalto); text-decoration: none; border-bottom: 3px solid var(--rosso); padding-bottom: .1rem; line-height: 1.2; }
.card-link:hover { color: var(--rosso); gap: .6rem; }
.card-link .icona { transition: transform .2s; }

/* ===== HERO ===== */
.hero { position: relative; overflow: hidden; color: var(--testo-chiaro); padding: 4.5rem 1.25rem 2.5rem; background: var(--asfalto); isolation: isolate; }
.hero-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 70% 50%; z-index: -2; }
.hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background:
  linear-gradient(90deg, rgba(27,23,21,.97) 0%, rgba(27,23,21,.9) 38%, rgba(27,23,21,.55) 68%, rgba(27,23,21,.35) 100%),
  linear-gradient(0deg, rgba(27,23,21,.85) 0%, transparent 35%); }
.hero-inner { max-width: var(--container); margin: 0 auto; display: flex; flex-direction: column; align-items: flex-start; }
.hero-badge { background: var(--giallo); color: var(--asfalto); background-image: radial-gradient(circle at 1.05rem 50%, var(--asfalto) 0 3.5px, transparent 4.5px); margin-bottom: 1.6rem; animation: sale .6s var(--ease) both; }
.hero h1 { font-family: var(--font-display); font-weight: 900; font-size: clamp(3.1rem, 11vw, 8rem); line-height: .86; letter-spacing: -.005em; text-transform: uppercase; margin-bottom: 1.6rem; max-width: 11.5ch; animation: sale .7s .08s var(--ease) both; }
.hero h1 .accent { color: var(--giallo); display: block; }
.hero-h1-sub { display: block; font-family: var(--font-mono); font-weight: 500; font-size: clamp(.72rem, 1.6vw, .85rem); line-height: 1.5; letter-spacing: .14em; margin-top: 1.1rem; color: var(--testo-chiaro-muto); max-width: none; }
.hero p { font-size: clamp(1rem, 2vw, 1.12rem); color: #ddd6cf; max-width: 600px; margin: 0 0 2rem; animation: sale .7s .16s var(--ease) both; }
.hero strong { color: #fff; font-weight: 600; }
.hero-buttons { display: flex; flex-wrap: wrap; gap: .9rem; }
.hero .hero-buttons { animation: sale .7s .24s var(--ease) both; }
.hero-trust-badges { order: 10; width: 100%; display: grid; grid-template-columns: repeat(2, 1fr); margin-top: 3rem; background: rgba(27,23,21,.82); border: 1px solid var(--linea-chiara); border-radius: var(--radius); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.hero-trust-badges li { display: flex; align-items: center; gap: .8rem; padding: 1rem; font-family: var(--font-display); font-weight: 800; font-size: 1.15rem; line-height: 1.05; text-transform: uppercase; letter-spacing: .02em; border-color: var(--linea-chiara); border-style: solid; border-width: 0; }
.hero-trust-badges li:nth-child(odd) { border-right-width: 1px; }
.hero-trust-badges li:nth-child(-n+2) { border-bottom-width: 1px; }
.hero-badge-icon { flex-shrink: 0; width: 2.3rem; height: 2.3rem; display: grid; place-items: center; background: var(--giallo); color: var(--asfalto); border-radius: var(--radius-sm); font-size: 1.1rem; }
.hero-badge-icon .icona { width: 1.25rem; height: 1.25rem; }
@media (min-width: 769px) {
  .hero { padding: 6rem 1.5rem 3rem; }
  .hero-trust-badges { grid-template-columns: repeat(4, 1fr); margin-top: 4.5rem; }
  .hero-trust-badges li { padding: 1.25rem 1.3rem; font-size: 1.3rem; border-width: 0; }
  .hero-trust-badges li:not(:last-child) { border-right-width: 1px; }
  .hero-trust-badges li:nth-child(-n+2) { border-bottom-width: 0; }
}
@media (max-width: 520px) { .hero-buttons .btn { width: 100%; } .hero-buttons { width: 100%; } }
@keyframes sale { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

/* ===== BARRE GARANZIA / FIDUCIA ===== */
.warranty-bar { background: var(--rosso); color: #fff; padding: 1.4rem 1rem; border-bottom: 8px solid transparent; border-image: var(--striscia) 8; }
.warranty-bar-inner { max-width: var(--container-narrow); margin: 0 auto; display: flex; align-items: center; justify-content: center; gap: 1.2rem; text-align: left; }
.warranty-bar .icona { width: 40px; height: 40px; color: var(--giallo); }
.warranty-title { font-family: var(--font-display); font-weight: 900; font-size: clamp(1.7rem, 4vw, 2.4rem); text-transform: uppercase; line-height: 1; }
.warranty-text p:not(.warranty-title) { color: #f7dcd9; font-size: .95rem; }
@media (max-width: 520px) { .warranty-bar .icona { display: none; } }
.trust-bar { background: var(--superficie); border-bottom: 1.5px solid var(--linea); padding: 0 1.25rem; }
.trust-bar-inner { max-width: var(--container); margin: 0 auto; display: grid; grid-template-columns: repeat(2, 1fr); }
.trust-item { display: grid; grid-template-columns: auto 1fr; column-gap: .85rem; align-items: center; padding: 1.3rem .6rem; border-color: var(--linea); border-style: solid; border-width: 0; }
.trust-item:nth-child(odd) { border-right-width: 1.5px; }
.trust-item:nth-child(-n+2) { border-bottom-width: 1.5px; }
.trust-icon { grid-row: span 2; width: 46px; height: 46px; border-radius: var(--radius-sm); background: var(--rosso); color: #fff; display: grid; place-items: center; }
.trust-icon .icona { width: 24px; height: 24px; }
.trust-item strong { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .02em; font-size: 1.3rem; line-height: 1.05; }
.trust-item span:last-child { font-size: .84rem; color: var(--testo-muto); line-height: 1.35; }
@media (min-width: 769px) {
  .trust-bar-inner { grid-template-columns: repeat(4, 1fr); }
  .trust-item { padding: 1.5rem 1.2rem; border-width: 0; }
  .trust-item:not(:last-child) { border-right-width: 1.5px; }
  .trust-item:nth-child(-n+2) { border-bottom-width: 0; }
  .trust-item:first-child { padding-left: 0; }
}
@media (max-width: 420px) { .trust-item { grid-template-columns: 1fr; row-gap: .5rem; } .trust-icon { grid-row: auto; } }

/* ===== NUMERI ===== */
.stats { background: var(--asfalto); color: var(--testo-chiaro); padding: 4.5rem 1.25rem; }
.stats .section-title { max-width: var(--container); }
.stats .section-title h2 { color: var(--testo-chiaro); }
.stats .section-title p { color: var(--testo-chiaro-muto); }
.stats-grid { max-width: var(--container); margin: 0 auto; display: grid; grid-template-columns: repeat(2, 1fr); gap: 2.2rem 0; border-top: 1px solid var(--linea-chiara); padding-top: 2.2rem; }
.stat-item { display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; padding: 0 1rem; border-left: 1px solid var(--linea-chiara); }
.stat-number { font-family: var(--font-display); font-weight: 900; font-size: clamp(3rem, 9vw, 5rem); line-height: .85; color: var(--giallo); }
.stat-label { font-family: var(--font-mono); font-size: .72rem; color: var(--testo-chiaro-muto); text-transform: uppercase; letter-spacing: .12em; line-height: 1.45; }
@media (min-width: 769px) { .stats { padding: 5.5rem 1.5rem; } .stats-grid { grid-template-columns: repeat(4, 1fr); } .stat-item { padding: 0 1.5rem; } }

/* ===== SEZIONI ===== */
main { counter-reset: scaffale; }
.section { padding: 4rem 1.25rem; }
.section-alt { background: var(--sezione-alt); }
.container { max-width: var(--container); margin: 0 auto; }
.container-narrow { max-width: var(--container-narrow); margin: 0 auto; }
/* Colonna stretta allineata al bordo sinistro degli altri contenuti */
.container.container-narrow { max-width: var(--container); }
.container.container-narrow > * { max-width: var(--container-narrow); }
.section-title { max-width: var(--container); margin: 0 auto 2.6rem; counter-increment: scaffale; }
.container .section-title, .container-narrow .section-title { max-width: none; }
.section-title::before {
  content: var(--etichetta-sezione) counter(scaffale, upper-alpha);
  content: var(--etichetta-sezione) counter(scaffale, upper-alpha) / "";
  display: flex; width: max-content; margin-bottom: 1.1rem;
  background: var(--cartellino) radial-gradient(circle at 1.05rem 50%, var(--cemento) 0 3.5px, transparent 4.5px);
  color: var(--asfalto);
}
.section-alt .section-title::before { background-color: var(--superficie); background-image: radial-gradient(circle at 1.05rem 50%, var(--sezione-alt) 0 3.5px, transparent 4.5px); }
.stats .section-title::before { background-color: var(--giallo); background-image: radial-gradient(circle at 1.05rem 50%, var(--asfalto) 0 3.5px, transparent 4.5px); }
.section-title h2 { font-family: var(--font-display); font-weight: 900; font-size: clamp(2.5rem, 6.4vw, 4.2rem); line-height: .9; text-transform: uppercase; letter-spacing: -.005em; margin-bottom: 1rem; max-width: 18ch; }
.section-title p { color: var(--testo-muto); font-size: 1.08rem; max-width: 640px; }
.container.center .section-title, .center > .section-title { text-align: left; }
.two-col { display: grid; gap: 2.4rem; align-items: center; }
.two-col-top { align-items: start; }
.two-col > * { min-width: 0; }   /* le tabelle larghe scorrono nel loro riquadro, non allargano la pagina */
.two-col > img, .two-col > picture img, .two-col > .video-wrapper { border-radius: var(--radius); border: 2px solid var(--asfalto); width: 100%; }
@media (min-width: 900px) { .two-col { grid-template-columns: 1fr 1fr; gap: 4rem; } .section { padding: 5.5rem 1.5rem; } }

/* Testo lungo (pagine, articoli) */
.content h2 { font-family: var(--font-display); font-weight: 900; font-size: clamp(2rem, 4.4vw, 2.9rem); text-transform: uppercase; letter-spacing: -.003em; color: var(--asfalto); line-height: .95; margin: 2.4rem 0 1rem; }
.content h2:first-child { margin-top: 0; }
.content h3 { font-family: var(--font-display); font-weight: 800; font-size: 1.45rem; text-transform: uppercase; letter-spacing: .02em; line-height: 1.1; margin: 1.6rem 0 .6rem; }
.content p { margin-bottom: 1rem; }
.content ul:not([class]) { list-style: square; padding-left: 1.3rem; margin-bottom: 1rem; }
.content ul:not([class]) li::marker { color: var(--rosso); }
.content ol:not([class]) { list-style: decimal; padding-left: 1.3rem; margin-bottom: 1rem; }
.content ol:not([class]) li::marker { font-family: var(--font-mono); font-weight: 500; color: var(--rosso); }
.content li { margin-bottom: .45rem; }
.content .hero-buttons { justify-content: flex-start; margin-top: 1.6rem; }
.eyebrow { background: var(--giallo); color: var(--asfalto); background-image: radial-gradient(circle at 1.05rem 50%, var(--asfalto) 0 3.5px, transparent 4.5px); margin-bottom: 1.2rem; }
.check-list li, .x-list li { position: relative; padding-left: 2rem; margin-bottom: .65rem; }
.check-list li::before, .x-list li::before { position: absolute; left: 0; top: .2rem; width: 1.3rem; height: 1.3rem; border-radius: 3px; display: grid; place-items: center; font-size: .78rem; font-weight: 600; line-height: 1; }
.check-list li::before { content: "✓"; background: var(--giallo); color: var(--asfalto); box-shadow: inset 0 0 0 1.5px var(--asfalto); }
.x-list li::before { content: "✕"; background: var(--rosso); color: #fff; }
.num-list { counter-reset: n; }
.num-list li { counter-increment: n; position: relative; padding-left: 2.4rem; margin-bottom: .8rem; }
.num-list li::before { content: counter(n); position: absolute; left: 0; top: .05rem; width: 1.65rem; height: 1.65rem; border-radius: var(--radius-sm); background: var(--asfalto); color: var(--giallo); font-family: var(--font-display); font-weight: 900; font-size: 1.05rem; display: grid; place-items: center; }

/* ===== CARD (bordo pieno, ombra piena al passaggio) ===== */
.cards-grid { display: grid; gap: 1.6rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .cards-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .cards-grid { grid-template-columns: repeat(4, 1fr); } .cards-grid-3 { grid-template-columns: repeat(3, 1fr); } }
.card { background: var(--superficie); border-radius: var(--radius); overflow: hidden; border: 2px solid var(--asfalto); display: flex; flex-direction: column; transition: transform var(--duration) var(--ease), box-shadow var(--duration) var(--ease); }
.card:hover { transform: translate(-3px, -3px); box-shadow: var(--ombra-piena); }
.card img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; border-bottom: 2px solid var(--asfalto); }
.card-body { padding: 1.3rem 1.3rem 1.4rem; display: flex; flex-direction: column; gap: .6rem; flex: 1; }
.card-body h3, .card-title { font-family: var(--font-display); font-weight: 800; font-size: 1.55rem; text-transform: uppercase; letter-spacing: .01em; line-height: 1; }
.card-body h3 a, .card-title a { color: var(--asfalto); text-decoration: none; }
.card-body h3 a:hover, .card-title a:hover { color: var(--rosso); }
.card-body p { color: var(--testo-muto); font-size: .95rem; flex: 1; }
.blog-card-meta { font-family: var(--font-mono); font-size: .72rem !important; text-transform: uppercase; letter-spacing: .1em; flex: 0 !important; }

/* Passi e fasi */
.steps, .phases { display: grid; gap: 1.2rem; grid-template-columns: 1fr; margin-bottom: 2rem; }
@media (min-width: 640px) { .steps, .phases { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .steps, .phases { grid-template-columns: repeat(4, 1fr); } }
.step, .phase { background: var(--superficie); border-radius: var(--radius); padding: 1.5rem 1.3rem; border: 1.5px solid var(--linea-forte); }
.step h3, .phase h3 { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .01em; font-size: 1.45rem; line-height: 1.05; margin: 1rem 0 .45rem; }
.step p, .phase p { color: var(--testo-muto); font-size: .93rem; }
.step-n { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: var(--radius-sm); background: var(--asfalto); color: var(--giallo); font-family: var(--font-display); font-weight: 900; font-size: 1.5rem; line-height: 1; flex-shrink: 0; }
.phase { background: var(--cemento); }
.timeline { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2rem; position: relative; }
.timeline-item { display: flex; gap: 1.1rem; align-items: flex-start; background: var(--superficie); border: 1.5px solid var(--linea-forte); border-radius: var(--radius); padding: 1.3rem; }
.timeline-item h3 { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .01em; font-size: 1.4rem; line-height: 1.05; margin-bottom: .35rem; }
.timeline-item p { color: var(--testo-muto); font-size: .95rem; margin: 0; }
.timeline-compact .timeline-item { padding: 1rem; }
.timeline-compact .step-n { width: 36px; height: 36px; font-size: 1.2rem; }

/* Marche */
.brands-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .6rem; }
@media (min-width: 480px) { .brands-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 640px) { .brands-grid { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 1024px) { .brands-grid { grid-template-columns: repeat(6, 1fr); } }
.brand-card { display: flex; align-items: center; gap: .7rem; padding: .6rem; background: var(--superficie); border: 1.5px solid var(--linea-forte); border-radius: var(--radius); text-decoration: none; color: var(--asfalto); transition: border-color .15s, transform .15s, box-shadow .15s; min-height: 48px; }
.brand-card:hover { border-color: var(--asfalto); transform: translate(-2px, -2px); box-shadow: var(--ombra-piena-sm); color: var(--asfalto); }
.brand-sigla { flex-shrink: 0; width: 44px; height: 44px; border-radius: var(--radius-sm); display: grid; place-items: center; font-family: var(--font-display); font-weight: 900; font-size: 1.35rem; letter-spacing: .02em; color: var(--giallo); background: var(--asfalto); }
.brand-card:hover .brand-sigla { background: var(--rosso); color: #fff; }
.brand-nome { font-weight: 600; font-size: .9rem; line-height: 1.2; }

/* Box informativi */
.boxes-3, .boxes-2, .features-grid { display: grid; gap: 1.2rem; grid-template-columns: 1fr; }
@media (min-width: 769px) { .boxes-3 { grid-template-columns: repeat(3, 1fr); } .boxes-2 { grid-template-columns: repeat(2, 1fr); } .features-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .features-grid { grid-template-columns: repeat(3, 1fr); } }
.info-box { background: var(--superficie); border: 1.5px solid var(--linea-forte); border-left: 6px solid var(--rosso); border-radius: var(--radius-sm); padding: 1.6rem; }
.info-box .icona { width: 34px; height: 34px; color: var(--rosso); margin-bottom: .7rem; }
.info-box h2, .info-box h3 { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .01em; font-size: 1.5rem; line-height: 1.05; margin-bottom: .5rem; color: var(--asfalto); }
.info-box-dark { background: var(--asfalto); color: var(--testo-chiaro); border-color: var(--asfalto); border-left-color: var(--giallo); }
.info-box-dark h2, .info-box-dark h3 { color: var(--testo-chiaro); }
.info-box-dark .icona { color: var(--giallo); }
.info-box-dark p { color: #ddd6cf; }
.feature { background: var(--superficie); border-radius: var(--radius); padding: 1.6rem; border: 1.5px solid var(--linea-forte); }
.feature .icona { width: 44px; height: 44px; padding: 10px; border-radius: var(--radius-sm); background: var(--rosso); color: #fff; margin-bottom: 1rem; }
.feature h3 { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .01em; font-size: 1.45rem; line-height: 1.05; margin-bottom: .45rem; }
.feature p { color: var(--testo-muto); font-size: .95rem; }

/* Tabelle (scheda tecnica) */
.table-wrap { overflow-x: auto; margin: 1rem 0 1.6rem; border-radius: var(--radius); border: 2px solid var(--asfalto); -webkit-overflow-scrolling: touch; }
.tabella { font-size: .93rem; min-width: 480px; background: var(--superficie); }
.tabella th, .tabella td { padding: .85rem 1rem; text-align: left; border-bottom: 1px dashed var(--linea-forte); vertical-align: top; }
.tabella tbody tr:last-child th, .tabella tbody tr:last-child td { border-bottom: 0; }
.tabella thead th { background: var(--asfalto); color: var(--testo-chiaro); font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .02em; font-size: 1.15rem; border-bottom: 0; }
.tabella thead th:first-child { font-family: var(--font-mono); font-weight: 500; font-size: .7rem; letter-spacing: .12em; color: var(--testo-chiaro-muto); vertical-align: middle; }
.tabella tbody tr:nth-child(even) { background: var(--cemento); }
.tabella tbody th { font-family: var(--font-mono); font-weight: 500; font-size: .74rem; text-transform: uppercase; letter-spacing: .1em; color: var(--asfalto); }

/* Catalogo motori */
.catalog-grid { display: grid; gap: 1.3rem; grid-template-columns: 1fr; }
@media (min-width: 560px) { .catalog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .catalog-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1180px) { .catalog-grid { grid-template-columns: repeat(4, 1fr); } }
.catalog-card { background: var(--superficie); border-radius: var(--radius); overflow: hidden; border: 2px solid var(--asfalto); display: flex; flex-direction: column; transition: transform .2s, box-shadow .2s; }
.catalog-card:hover { transform: translate(-3px, -3px); box-shadow: var(--ombra-piena); }
.catalog-card-img { background: var(--cemento-2); border-bottom: 2px solid var(--asfalto); }
.catalog-card-img img { width: 100%; aspect-ratio: 4 / 3; object-fit: contain; }
.catalog-card-body { padding: 1.1rem 1.2rem 1.3rem; display: flex; flex-direction: column; gap: .3rem; flex: 1; }
.catalog-card-brand { font-family: var(--font-mono); font-size: .72rem; font-weight: 500; text-transform: uppercase; letter-spacing: .12em; color: var(--testo-muto); }
.catalog-card-code { font-family: var(--font-display); font-weight: 900; font-size: 2rem; color: var(--asfalto); line-height: 1; }
.catalog-card-displacement { font-weight: 600; font-size: .9rem; }
.catalog-card-desc, .catalog-card-vehicles { font-size: .88rem; color: var(--testo-muto); }
.catalog-card-vehicles { flex: 1; }
.catalog-card-btn { margin-top: .7rem; display: block; text-align: center; padding: .75rem; border-radius: var(--radius-sm); background: var(--verde-wa-scuro); color: #fff; font-family: var(--font-display); font-weight: 800; font-size: 1.1rem; text-transform: uppercase; text-decoration: none; }
.catalog-card-btn:hover { background: var(--verde-wa-scurissimo); color: #fff; }

/* Video */
.video-wrapper { border-radius: var(--radius); overflow: hidden; background: #000; border: 2px solid var(--asfalto); margin: 1rem 0; }
.video-wrapper video { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; background: #000; }
.video-caption { background: var(--asfalto); color: var(--testo-chiaro-muto); font-family: var(--font-mono); font-size: .78rem; padding: .7rem 1rem; }

/* FAQ */
.faq-list { display: flex; flex-direction: column; gap: .6rem; }
.faq-item { background: var(--superficie); border: 1.5px solid var(--linea-forte); border-radius: var(--radius); transition: border-color .15s; }
.faq-item[open] { border-color: var(--asfalto); box-shadow: var(--ombra-piena-sm); }
.faq-item summary { cursor: pointer; list-style: none; padding: 1.05rem 3.6rem 1.05rem 1.25rem; font-weight: 600; position: relative; line-height: 1.4; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: "+"; position: absolute; right: 1rem; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border-radius: var(--radius-sm); background: var(--asfalto); color: var(--giallo); display: grid; place-items: center; font-family: var(--font-display); font-size: 1.4rem; font-weight: 800; line-height: 1; }
.faq-item[open] summary::after { content: "−"; background: var(--giallo); color: var(--asfalto); }
.faq-item summary:hover { color: var(--rosso); }
.faq-answer { padding: 0 1.25rem 1.15rem; color: #3d3632; }
.faq-index { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2.2rem; }
.faq-index a { padding: .45rem .9rem; border-radius: var(--radius-sm); background: var(--asfalto); color: var(--testo-chiaro); font-family: var(--font-display); font-weight: 800; font-size: 1.05rem; text-transform: uppercase; letter-spacing: .02em; text-decoration: none; }
.faq-index a:hover { background: var(--giallo); color: var(--asfalto); }
.faq-group-title { font-family: var(--font-display); font-weight: 900; text-transform: uppercase; font-size: 2rem; line-height: 1; color: var(--asfalto); margin: 2.4rem 0 1rem; }
.faq-group-title:first-of-type { margin-top: 0; }

/* CTA finale: fascia gialla segnaletica */
.cta-section { background: var(--giallo); color: var(--asfalto); padding: 4.5rem 1.25rem; position: relative; }
.cta-inner { max-width: var(--container); margin: 0 auto; }
.cta-section h2 { font-family: var(--font-display); font-weight: 900; font-size: clamp(2.6rem, 7vw, 4.6rem); text-transform: uppercase; line-height: .9; letter-spacing: -.005em; margin-bottom: 1.1rem; max-width: 15ch; }
.cta-section p { color: var(--asfalto); margin-bottom: 1.8rem; max-width: 640px; font-size: 1.05rem; }
.cta-section .btn-primary { background: var(--asfalto); border-color: var(--asfalto); color: #fff; }
.cta-section .btn-primary:hover { background: var(--asfalto-2); border-color: var(--asfalto-2); box-shadow: 4px 4px 0 var(--rosso); }
.cta-section .btn-whatsapp:hover { box-shadow: 4px 4px 0 var(--asfalto); }
.cta-tel { margin: 1.8rem 0 0 !important; font-family: var(--font-mono); font-size: .8rem; letter-spacing: .04em; line-height: 1.9; padding-top: 1.1rem; border-top: 3px solid var(--asfalto); max-width: 640px; }
.cta-tel a { color: var(--asfalto); font-family: var(--font-display); font-weight: 900; font-size: 1.6rem; letter-spacing: .01em; text-decoration: none; vertical-align: -.15em; white-space: nowrap; }
.cta-tel a:hover { color: var(--rosso-scuro); }
@media (min-width: 900px) { .cta-section { padding: 5.5rem 1.5rem; } }

/* ===== PAGE HEADER (pagine interne) ===== */
.page-header { background: radial-gradient(circle at 92% 18%, rgba(179,38,30,.24), transparent 45%), var(--asfalto); color: var(--testo-chiaro); padding: 2.6rem 1.25rem 3.4rem; }
.page-header-inner { max-width: var(--container); margin: 0 auto; }
.page-header h1 { font-family: var(--font-display); font-weight: 900; font-size: clamp(2.8rem, 8.5vw, 5.6rem); line-height: .88; text-transform: uppercase; letter-spacing: -.005em; margin-bottom: 1.1rem; max-width: 16ch; }
.page-header-sub { color: #ddd6cf; font-size: 1.08rem; max-width: 660px; }
.page-header .hero-buttons { margin-top: 1.8rem; }
.page-header-thanks { padding: 4rem 1.25rem; }
.breadcrumb { margin-bottom: 1.8rem; font-family: var(--font-mono); font-size: .72rem; letter-spacing: .06em; }
.breadcrumb ol { display: flex; flex-wrap: wrap; gap: .3rem; }
.breadcrumb li { color: var(--testo-chiaro-muto); }
.breadcrumb li + li::before { content: "/"; margin-right: .3rem; color: var(--giallo); }
.breadcrumb a { color: var(--testo-chiaro); text-decoration: none; }
.breadcrumb a:hover { color: var(--giallo); text-decoration: underline; }
@media (min-width: 900px) { .page-header { padding: 3rem 1.5rem 4.5rem; } }

/* ===== BLOG ===== */
.blog-post { max-width: 780px; margin: 0 auto; }
@media (min-width: 900px) { .blog-post { margin-left: max(0px, calc((100% - var(--container)) / 2)); } }
.blog-meta { display: flex; flex-wrap: wrap; gap: .4rem 1.4rem; font-family: var(--font-mono); font-size: .76rem; letter-spacing: .03em; color: var(--testo-muto); margin-bottom: 1.6rem; padding-bottom: 1rem; border-bottom: 1.5px solid var(--linea); }
.blog-meta a { color: inherit; }
.blog-cover { width: 100%; border-radius: var(--radius); border: 2px solid var(--asfalto); margin-bottom: 2.2rem; aspect-ratio: 3 / 2; object-fit: cover; }
.blog-post .content { font-size: 1.06rem; }
.blog-post .content img { border-radius: var(--radius); border: 2px solid var(--asfalto); margin: 1.5rem 0; }
.toc { background: var(--superficie); border: 1.5px solid var(--linea-forte); border-left: 6px solid var(--asfalto); padding: 1.2rem 1.5rem; margin: 1.5rem 0 2.2rem; border-radius: var(--radius-sm); }
.toc h3 { margin: 0 0 .6rem !important; font-size: 1.3rem !important; }
.toc ol { list-style: decimal !important; padding-left: 1.4rem !important; margin: 0 !important; }
.toc li { margin-bottom: .25rem !important; }
.toc a { text-decoration: none; }
.toc a:hover { text-decoration: underline; }
.inline-cta { background: var(--asfalto); color: var(--testo-chiaro); padding: 2rem 1.6rem; border-radius: var(--radius); margin: 2.4rem 0; border-left: 8px solid transparent; border-image: var(--striscia) 8; }
.inline-cta h3 { color: var(--testo-chiaro); margin: 0 0 .5rem !important; font-size: 1.8rem !important; }
.inline-cta p { color: #ddd6cf; }
.inline-cta .hero-buttons { margin-top: 1.2rem; }
.inline-cta .btn:hover { box-shadow: 4px 4px 0 var(--giallo); }
.highlight-box { background: var(--cartellino); border-left: 6px solid var(--asfalto); padding: 1.2rem 1.5rem; margin: 1.6rem 0; border-radius: 0 var(--radius-sm) var(--radius-sm) 0; }
.share-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: 2.6rem 0 1.6rem; padding-top: 1.5rem; border-top: 1.5px solid var(--linea); }
.share-buttons > span { font-family: var(--font-mono); font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; color: var(--testo-muto); margin-right: .4rem; }
.share-btn { padding: .5rem 1rem; border-radius: var(--radius-sm); font-family: var(--font-display); font-weight: 800; font-size: 1.05rem; text-transform: uppercase; letter-spacing: .02em; text-decoration: none; color: #fff; }
.share-btn:hover { color: #fff; opacity: .9; }
.share-wa { background: var(--verde-wa-scuro); }
.share-fb { background: #1664d8; }
.share-tw { background: var(--asfalto); }
.share-em { background: var(--testo-muto); }
.related-posts { background: var(--superficie); border: 1.5px solid var(--linea-forte); border-radius: var(--radius); padding: 1.5rem; }
.related-posts h2 { font-family: var(--font-display); font-weight: 900; text-transform: uppercase; font-size: 1.6rem; line-height: 1; margin-bottom: .9rem; }
.related-posts li { padding: .5rem 0; border-bottom: 1px dashed var(--linea-forte); }
.related-posts li:last-child { border-bottom: 0; }
.related-posts a { font-weight: 600; text-decoration: none; }
.related-posts a:hover { text-decoration: underline; }

/* ===== CONTATTI ===== */
.contact-cards { display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 560px) { .contact-cards { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .contact-cards { grid-template-columns: repeat(4, 1fr); } }
.contact-card { display: flex; flex-direction: column; align-items: flex-start; gap: .4rem; padding: 1.5rem 1.3rem; background: var(--superficie); border: 2px solid var(--asfalto); border-radius: var(--radius); text-decoration: none; color: var(--testo); transition: transform .15s, box-shadow .15s; }
.contact-card:hover { transform: translate(-3px, -3px); box-shadow: var(--ombra-piena); color: var(--testo); }
.contact-card .icona { width: 46px; height: 46px; padding: 11px; border-radius: var(--radius-sm); background: var(--asfalto); color: var(--giallo); margin-bottom: .5rem; }
.contact-card-wa .icona { background: var(--verde-wa-scuro); color: #fff; }
.contact-card h2 { font-family: var(--font-mono); font-weight: 500; text-transform: uppercase; letter-spacing: .14em; font-size: .74rem; color: var(--testo-muto); }
.contact-card p { font-family: var(--font-display); font-weight: 800; font-size: 1.4rem; line-height: 1.1; color: var(--asfalto); word-break: break-word; }
.quote-box { background: var(--superficie); border: 2px solid var(--asfalto); border-radius: var(--radius); padding: 1.8rem; margin-bottom: 2.4rem; box-shadow: 6px 6px 0 var(--verde-wa-scuro); }
.quote-box-icon { font-size: 2rem; display: block; margin-bottom: .5rem; }
.quote-box h2 { margin-top: 0 !important; }
.hours-list li { display: flex; justify-content: space-between; gap: 1rem; padding: .6rem 0; border-bottom: 1px dashed var(--linea-forte); }
.hours-list li span:last-child { font-family: var(--font-mono); font-weight: 500; font-size: .9rem; }
.contact-form { background: var(--cemento); border-radius: var(--radius); padding: 1.6rem; border: 2px solid var(--asfalto); box-shadow: 8px 8px 0 var(--asfalto); }
.contact-form h2 { font-family: var(--font-display); font-weight: 900; text-transform: uppercase; font-size: 2rem; line-height: .95; color: var(--asfalto); margin-bottom: 1.4rem; }
@media (min-width: 900px) { .contact-form { padding: 2rem; } }
.form-row { display: grid; gap: 0 1rem; }
@media (min-width: 560px) { .form-row { grid-template-columns: 1fr 1fr; } }
.field { margin-bottom: 1.1rem; display: flex; flex-direction: column; gap: .4rem; }
.field label { font-family: var(--font-mono); font-weight: 500; font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; }
.field input, .field select, .field textarea, .wa-row input, .wa-row select, .wa-row textarea { width: 100%; padding: .8rem .9rem; border: 1.5px solid var(--linea-forte); border-radius: var(--radius-sm); background: #fff; font-size: 16px; min-height: 50px; transition: border-color .15s, box-shadow .15s; }
.field input:hover, .field select:hover, .field textarea:hover, .wa-row input:hover, .wa-row select:hover, .wa-row textarea:hover { border-color: var(--asfalto); }
.field input:focus, .field select:focus, .field textarea:focus, .wa-row input:focus, .wa-row select:focus, .wa-row textarea:focus { border-color: var(--asfalto); outline: none; box-shadow: 0 0 0 3px var(--giallo); }
.field small { color: var(--testo-muto); font-size: .8rem; }
.field-check { flex-direction: row; align-items: flex-start; gap: .7rem; }
.field-check input { width: 22px; height: 22px; min-height: 0; margin-top: .15rem; flex-shrink: 0; accent-color: var(--rosso); }
.field-check label { font-family: var(--font-body); font-weight: 400; font-size: .9rem; text-transform: none; letter-spacing: 0; }
.form-errors { background: #fbe6e3; border-left: 6px solid var(--errore); color: #7a1717; padding: 1rem 1.2rem; border-radius: var(--radius-sm); margin-bottom: 1.2rem; }
.form-errors ul { list-style: square; padding-left: 1.2rem; }
.hp-field { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.link-grid { display: grid; gap: .8rem; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); margin-bottom: 2rem; }
.link-grid a { display: block; padding: 1rem 1.2rem; background: var(--superficie); border: 1.5px solid var(--linea-forte); border-left: 6px solid var(--rosso); border-radius: var(--radius-sm); font-weight: 600; text-decoration: none; }
.link-grid a:hover { border-color: var(--asfalto); border-left-color: var(--rosso); }
.legal h2 { font-size: 1.8rem; }

/* ===== FOOTER ===== */
.site-footer { background: var(--asfalto); color: var(--testo-chiaro-muto); padding: 4rem 1.25rem 0; font-size: .92rem; position: relative; }
.site-footer::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 8px; background: var(--striscia); }
.footer-inner { max-width: var(--container); margin: 0 auto; display: grid; gap: 2.4rem; grid-template-columns: 1fr; padding-bottom: 2.6rem; }
@media (min-width: 640px) { .footer-inner { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .footer-inner { grid-template-columns: 1.3fr 1fr 1fr 1.2fr; } }
.footer-title { font-family: var(--font-mono); font-weight: 500; color: var(--testo-chiaro-muto); text-transform: uppercase; letter-spacing: .2em; font-size: .72rem; margin-bottom: 1.1rem; }
.footer-col:first-child .footer-title { font-family: var(--font-display); font-weight: 800; color: var(--testo-chiaro); font-size: 1.3rem; letter-spacing: .02em; margin-bottom: .6rem; }
.footer-col p { margin-bottom: .6rem; }
.footer-col li { margin-bottom: .5rem; }
.site-footer a { color: var(--testo-chiaro); text-decoration: none; }
.site-footer a:hover { color: var(--giallo); text-decoration: underline; }
.footer-hours { margin-top: 1rem; font-family: var(--font-mono); font-size: .8rem; }
.footer-social a { margin-right: .8rem; font-weight: 600; }
.footer-bottom { border-top: 1px solid var(--linea-chiara); padding: 1.4rem 0; font-family: var(--font-mono); font-size: .72rem; letter-spacing: .03em; color: #a39b94; max-width: var(--container); margin: 0 auto; }
.footer-bottom p + p { margin-top: .45rem; }
.footer-bottom .link-button { color: var(--testo-chiaro); }
.footer-condensed { background: var(--asfalto-3); color: var(--testo-chiaro-muto); text-align: center; padding: .9rem 1rem; font-family: var(--font-mono); font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; border-top: 1px solid var(--linea-chiara); }
.footer-condensed strong { color: var(--testo-chiaro); font-weight: 500; }
.footer-condensed span { margin: 0 .35rem; color: var(--giallo); }

/* ===== WHATSAPP GALLEGGIANTE (pulse + glow + fumetto) ===== */
.whatsapp-float { position: fixed; right: 20px; bottom: 20px; width: 62px; height: 62px; border-radius: 50%; background: var(--verde-wa); color: #fff; display: grid; place-items: center; z-index: 900; box-shadow: 0 6px 20px rgba(0,0,0,.25); animation: waPulse 2.5s ease-in-out infinite, waGlow 2.5s ease-in-out infinite; transition: transform .2s; }
.whatsapp-float:hover { transform: scale(1.1); animation-play-state: paused; color: #fff; }
.whatsapp-float .icona { width: 34px; height: 34px; }
.wa-tooltip { position: absolute; right: 76px; top: 50%; transform: translateY(-50%); background: var(--asfalto); color: var(--testo-chiaro); font-family: var(--font-mono); font-size: .74rem; font-weight: 500; letter-spacing: .04em; white-space: nowrap; padding: .55rem .9rem; border-radius: var(--radius-sm); box-shadow: 3px 3px 0 var(--giallo); transition: opacity .35s; pointer-events: none; }
.wa-tooltip::after { content: ""; position: absolute; right: -6px; top: 50%; transform: translateY(-50%); border: 7px solid transparent; border-right: 0; border-left-color: var(--asfalto); }
.wa-tooltip.fade { opacity: 0; }
@keyframes waPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.07); } }
@keyframes waGlow { 0%, 100% { box-shadow: 0 0 0 0 rgba(37,211,102,.55), 0 6px 20px rgba(0,0,0,.25); } 50% { box-shadow: 0 0 0 14px rgba(37,211,102,0), 0 6px 20px rgba(0,0,0,.25); } }

/* Barra mobile */
.mobile-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 950; display: grid; grid-template-columns: repeat(3, 1fr); background: var(--asfalto); border-top: 4px solid transparent; border-image: var(--striscia) 4; padding-bottom: env(safe-area-inset-bottom); }
.mobile-bar a { display: flex; align-items: center; justify-content: center; gap: .4rem; min-height: 56px; color: #fff; text-decoration: none; font-family: var(--font-display); font-weight: 800; font-size: 1.15rem; text-transform: uppercase; letter-spacing: .02em; }
.mobile-bar .icona { width: 20px; height: 20px; }
.mobile-quote { background: var(--rosso); }
.mobile-call { background: var(--asfalto-2); }
.mobile-wa { background: var(--verde-wa-scuro); }
@media (max-width: 768px) {
  body { padding-bottom: calc(60px + env(safe-area-inset-bottom)); }
  .whatsapp-float { bottom: calc(76px + env(safe-area-inset-bottom)); right: 14px; width: 56px; height: 56px; }
  .wa-tooltip { display: none; }
  .cookie-banner { bottom: calc(70px + env(safe-area-inset-bottom)) !important; }
}
@media (min-width: 769px) { .mobile-bar { display: none; } }

/* ===== MODALE PREVENTIVO WHATSAPP (4 passi) ===== */
.wa-modal-overlay { position: fixed; inset: 0; background: rgba(18,15,13,.78); z-index: 2000; display: flex; align-items: center; justify-content: center; padding: 1rem; backdrop-filter: blur(3px); }
.wa-modal { background: var(--cemento); border: 2px solid var(--asfalto); border-radius: var(--radius); width: 100%; max-width: 560px; max-height: 92dvh; overflow-y: auto; position: relative; padding: 2rem 1.5rem 1.4rem; box-shadow: 8px 8px 0 var(--giallo); animation: waModalIn var(--duration) var(--ease); }
@keyframes waModalIn { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
body.modal-open { overflow: hidden; }
.wa-modal-close { position: absolute; top: .6rem; right: .6rem; width: 44px; height: 44px; border-radius: var(--radius-sm); border: 0; background: var(--asfalto); font-size: 1.7rem; line-height: 1; cursor: pointer; color: var(--giallo); }
.wa-modal-close:hover { background: var(--rosso); color: #fff; }
.wa-modal-h2 { font-family: var(--font-display); font-weight: 900; font-size: 2.4rem; line-height: .95; text-transform: uppercase; color: var(--asfalto); margin-bottom: 1.1rem; padding-right: 3rem; }
.wa-progress { display: flex; align-items: center; margin-bottom: 1.5rem; }
.wa-step-dot { width: 34px; height: 34px; border-radius: var(--radius-sm); border: 1.5px solid var(--linea-forte); display: grid; place-items: center; font-family: var(--font-display); font-weight: 900; font-size: 1.15rem; color: var(--testo-muto); background: var(--superficie); transition: all .2s; }
.wa-step-dot.active { border-color: var(--asfalto); background: var(--asfalto); color: var(--giallo); }
.wa-step-dot.done { border-color: var(--verde-wa-scuro); background: var(--verde-wa-scuro); color: #fff; }
.wa-step-line { flex: 0 1 46px; height: 2px; background: var(--linea-forte); }
.wa-step { border: 0; min-width: 0; }
.wa-step-title { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .01em; font-size: 1.6rem; line-height: 1.05; width: 100%; }
.wa-step-subtitle { color: var(--testo-muto); font-size: .92rem; margin: .2rem 0 1.2rem; }
.wa-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: .7rem; }
.wa-card { background: var(--superficie); border: 2px solid var(--linea-forte); border-radius: var(--radius); padding: 1rem .6rem; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .45rem; min-height: 108px; text-align: center; transition: border-color .15s, background .15s, transform .15s, box-shadow .15s; }
.wa-card:hover { border-color: var(--asfalto); }
.wa-card.selected { border-color: var(--asfalto); background: var(--giallo); box-shadow: var(--ombra-piena-sm); transform: translate(-2px, -2px); }
.wa-card-icon { font-size: 1.9rem; line-height: 1; }
.wa-card-title { font-family: var(--font-display); font-weight: 800; font-size: 1.15rem; text-transform: uppercase; letter-spacing: .01em; line-height: 1.05; }
.wa-card-desc-area { margin-top: 1rem; padding: .8rem 1rem; border-radius: var(--radius-sm); background: var(--asfalto); color: var(--testo-chiaro); font-size: .9rem; min-height: 3rem; }
.wa-card-desc-area.empty { background: transparent; border: 1.5px dashed var(--linea-forte); color: var(--testo-muto); font-style: italic; }
.wa-row { margin-bottom: 1rem; display: flex; flex-direction: column; gap: .4rem; }
.wa-row label { font-family: var(--font-mono); font-weight: 500; font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; }
.wa-row input[hidden] { display: none; }
.wa-hint { color: var(--testo-muto); font-size: .8rem; }
.wa-step-buttons { display: flex; gap: .7rem; justify-content: space-between; margin-top: 1.4rem; }
.wa-btn-next, .wa-btn-back, .wa-submit { min-height: 50px; padding: .7rem 1.3rem; border-radius: var(--radius-sm); font-family: var(--font-display); font-weight: 800; font-size: 1.2rem; text-transform: uppercase; letter-spacing: .02em; cursor: pointer; border: 2px solid transparent; white-space: nowrap; }
.wa-submit { justify-content: center; }
@media (max-width: 420px) { .wa-btn-next, .wa-btn-back, .wa-submit { padding: .7rem .9rem; font-size: 1.05rem; } }
.wa-btn-next { background: var(--rosso); color: #fff; margin-left: auto; }
.wa-btn-next:hover:not(:disabled) { background: var(--rosso-scuro); }
.wa-btn-next:disabled { background: #c5bdb5; color: #4a4440; cursor: not-allowed; }
.wa-btn-back { background: transparent; border-color: var(--asfalto); color: var(--asfalto); }
.wa-btn-back:hover { background: var(--asfalto); color: var(--giallo); }
.wa-submit { background: var(--verde-wa-scuro); color: #fff; display: inline-flex; align-items: center; gap: .5rem; margin-left: auto; }
.wa-submit:hover { background: var(--verde-wa-scurissimo); }
.wa-summary { background: var(--superficie); border: 1.5px solid var(--linea-forte); border-radius: var(--radius-sm); padding: .3rem 1rem; }
.wa-summary-row { display: flex; justify-content: space-between; gap: 1rem; padding: .65rem 0; border-bottom: 1px dashed var(--linea-forte); font-size: .93rem; }
.wa-summary-row:last-child { border-bottom: 0; }
.wa-summary-label { font-family: var(--font-mono); font-weight: 500; font-size: .74rem; text-transform: uppercase; letter-spacing: .1em; color: var(--testo-muto); flex-shrink: 0; padding-top: .15rem; }
.wa-summary-value { text-align: right; word-break: break-word; font-weight: 600; }
.wa-help { color: var(--testo-muto); font-size: .85rem; margin-top: .9rem; }
.wa-privacy { font-size: .78rem; color: var(--testo-muto); margin-top: 1.2rem; padding-top: 1rem; border-top: 1.5px solid var(--linea); }

/* ===== BANNER COOKIE ===== */
.cookie-banner { position: fixed; left: 16px; right: 16px; bottom: 16px; max-width: 560px; background: var(--cemento); border: 2px solid var(--asfalto); border-radius: var(--radius); box-shadow: 6px 6px 0 var(--asfalto); padding: 1.4rem; z-index: 1500; }
.cookie-banner h2 { font-family: var(--font-display); font-weight: 900; text-transform: uppercase; font-size: 1.6rem; line-height: 1; margin-bottom: .55rem; }
.cookie-banner p { font-size: .88rem; color: #3d3632; }
.cookie-customize-panel { margin-top: 1rem; display: flex; flex-direction: column; gap: .7rem; }
.cookie-option { display: flex; gap: .6rem; align-items: flex-start; font-size: .88rem; cursor: pointer; }
.cookie-option input { width: 20px; height: 20px; margin-top: .1rem; accent-color: var(--rosso); flex-shrink: 0; }
.cookie-option-desc { display: block; color: var(--testo-muto); }
.cookie-banner-buttons { display: grid; grid-template-columns: repeat(2, 1fr); gap: .5rem; margin-top: 1.1rem; }
.cookie-btn { min-height: 46px; padding: .55rem 1rem; border-radius: var(--radius-sm); font-family: var(--font-display); font-weight: 800; font-size: 1.1rem; text-transform: uppercase; letter-spacing: .02em; cursor: pointer; border: 2px solid var(--asfalto); background: transparent; color: var(--asfalto); }
.cookie-btn:hover { background: var(--asfalto); color: var(--giallo); }
.cookie-btn-accept { background: var(--rosso); border-color: var(--rosso); color: #fff; }
.cookie-btn-accept:hover { background: var(--rosso-scuro); border-color: var(--rosso-scuro); color: #fff; }
.cookie-btn-accept, .cookie-btn-save { grid-column: span 2; }
@media (min-width: 560px) { .cookie-banner-buttons { grid-template-columns: repeat(3, 1fr); } .cookie-btn-accept, .cookie-btn-save { grid-column: auto; } }

/* ===== ANIMAZIONE IN SCORRIMENTO ===== */
/* Solo movimento, mai contenuto invisibile: testo sempre leggibile per utenti e Google */
.js .reveal { transform: translateY(18px); transition: transform .6s var(--ease); }
.js .reveal.is-visible { transform: none; }

/* ===== STAMPA ===== */
@media print {
  .top-banner, .info-bar, .site-header, .whatsapp-float, .mobile-bar, .cookie-banner, .cta-section, .share-buttons, .footer-condensed, .wa-modal-overlay { display: none !important; }
  body { padding: 0; background: #fff; }
  .page-header, .hero, .stats { background: none; color: #000; }
  .hero::before, .hero-bg, .site-footer::before { display: none; }
}

/* ===== Modulor Autodemolizioni: aggiunte ===== */
.footer-zone { margin-top: 1rem; font-size: .82rem; color: #a39b94; line-height: 1.5; }
.parts-grid { display: grid; gap: .7rem; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 769px) { .parts-grid { grid-template-columns: repeat(4, 1fr); } }
.part-item { display: flex; align-items: center; gap: .7rem; background: var(--superficie); border: 1.5px solid var(--linea-forte); border-radius: var(--radius-sm); padding: .75rem .9rem; font-weight: 600; font-size: .93rem; line-height: 1.25; }
.part-item .icona { color: var(--giallo); background: var(--asfalto); width: 32px; height: 32px; padding: 7px; border-radius: 3px; }
.footer-logo { width: 243px; height: 50px; margin-bottom: 1.2rem; }
.related-links { background: var(--cemento); padding-top: 3.5rem; padding-bottom: 3.5rem; }
.related-links-title { font-family: var(--font-display); font-weight: 900; text-transform: uppercase; font-size: 2.2rem; line-height: 1; margin-bottom: 1.3rem; }
.related-links-grid { display: grid; gap: .8rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .related-links-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .related-links-grid { grid-template-columns: repeat(3, 1fr); } }
.related-links-grid a { display: flex; flex-direction: column; gap: .35rem; height: 100%; padding: 1.05rem 1.2rem; background: var(--superficie); border: 1.5px solid var(--linea-forte); border-left: 6px solid var(--rosso); border-radius: var(--radius-sm); text-decoration: none; color: var(--testo); transition: transform .15s, box-shadow .15s, border-color .15s; }
.related-links-grid a:hover { border-color: var(--asfalto); border-left-color: var(--rosso); transform: translate(-2px, -2px); box-shadow: var(--ombra-piena-sm); }
.related-links-grid strong { font-family: var(--font-display); font-weight: 800; font-size: 1.3rem; text-transform: uppercase; line-height: 1.05; color: var(--asfalto); }
.related-links-grid span { font-size: .87rem; color: var(--testo-muto); }
.faq-answer a { font-weight: 600; }
.regions-list { display: flex; flex-wrap: wrap; gap: .45rem; margin: 1rem 0 0; }
.regions-list li { background: var(--superficie); border: 1.5px solid var(--linea-forte); border-radius: var(--radius-sm); padding: .3rem .75rem; font-family: var(--font-mono); font-size: .78rem; font-weight: 500; }
/* Link nei testi su sfondo scuro: chiari con sottolineatura gialla (contrasto AA) */
.hero p a, .page-header a:not(.btn), .stats a, .info-box-dark a, .inline-cta p a { color: #fff; text-decoration: underline; text-decoration-color: var(--giallo); text-decoration-thickness: 2px; text-underline-offset: 3px; }
.hero p a:hover, .page-header a:not(.btn):hover, .info-box-dark a:hover, .inline-cta p a:hover { color: var(--giallo); }
.breadcrumb a { text-decoration: none !important; }
/* Link nei testi sulla fascia gialla: asfalto */
.cta-section p a { color: var(--asfalto); text-decoration: underline; text-decoration-thickness: 2px; }

/* ============================================================
   LIVELLO "MIX" — componenti e ritocchi che fondono i tre stili.
   Tenerlo in fondo: sovrascrive le regole base sopra.
   ============================================================ */

/* --- Barra informazioni: acciaio (Artuso) tra rosso e asfalto --- */
.info-bar { background: var(--acciaio-scuro); border-bottom-color: rgba(255,255,255,.08); color: #c9d5e3; }
.info-bar a { color: #fff; }

/* --- Titoli di sezione: cartellino (officina) + barretta rossa (classico) --- */
.section-title h2::after { content: ""; display: block; width: 64px; height: 5px; margin-top: 1rem; background: var(--rosso); border-radius: 3px; }
.stats .section-title h2::after { background: var(--giallo); }
.section-title-center { text-align: center; }
.section-title-center::before { margin-left: auto; margin-right: auto; }
.section-title-center h2, .section-title-center p { margin-left: auto; margin-right: auto; }
.section-title-center h2::after { margin-left: auto; margin-right: auto; }

/* --- Card: arrotondate e morbide (classico), ombra piena al passaggio (officina) --- */
.card, .catalog-card { border: 1.5px solid var(--linea-forte); box-shadow: var(--ombra-card); }
.card img { border-bottom: 0; }
.card:hover, .catalog-card:hover { border-color: var(--asfalto); box-shadow: var(--ombra-piena); }
.card-body { border-top: 5px solid var(--rosso); }
.feature, .faq-item, .brand-card, .related-links-grid a { box-shadow: var(--ombra-card); }
.feature { border-radius: var(--radius); }
.feature .icona { border-radius: 50%; }   /* icone tonde come nel sito classico */
.section-alt .card, .section-alt .feature, .section-alt .step, .section-alt .faq-item, .section-alt .brand-card { background: #fff; }

/* --- Passi: bordo superiore acciaio (Artuso) + numero officina --- */
.step, .phase { border-top: 5px solid var(--acciaio); box-shadow: var(--ombra-card); position: relative; }
.step-n { background: var(--acciaio); color: #fff; border-radius: 50%; }
.step:nth-child(2) { border-top-color: var(--rosso); }
.step:nth-child(3) { border-top-color: var(--giallo-scuro); }
.step:nth-child(4) { border-top-color: var(--asfalto); }

/* --- Fascia di fiducia: icone tonde acciaio --- */
.trust-icon { border-radius: 50%; background: var(--acciaio); }
.trust-item:nth-child(2) .trust-icon { background: var(--rosso); }

/* --- Fascia garanzia sotto l'hero (Artuso) con striscia (officina) --- */
.warranty-bar { background: linear-gradient(90deg, var(--rosso-scuro), var(--rosso) 55%, var(--rosso-scuro)); }
.warranty-bar-inner { max-width: var(--container); justify-content: flex-start; gap: 1.4rem; }
.warranty-bar .warranty-text { flex: 1; }
.warranty-bar .btn { background: var(--giallo); color: var(--asfalto); border-color: var(--giallo); min-height: 46px; padding: .6rem 1.2rem; font-size: 1.05rem; }
.warranty-bar .btn:hover { background: #fff; border-color: #fff; color: var(--asfalto); box-shadow: 4px 4px 0 var(--asfalto); }
@media (max-width: 768px) { .warranty-bar-inner { flex-wrap: wrap; } .warranty-bar .btn { width: 100%; } }

/* --- Numeri su acciaio con griglia da progetto tecnico --- */
.stats { background:
  linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px) 0 0 / 32px 32px,
  linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px) 0 0 / 32px 32px,
  radial-gradient(circle at 85% 10%, rgba(249,204,33,.12), transparent 40%),
  linear-gradient(160deg, var(--acciaio) 0%, var(--acciaio-scuro) 70%); }
.stats .section-title p, .stat-label { color: #c9d5e3; }
.stats-grid { border-top-color: rgba(255,255,255,.16); }
.stat-item { border-left-color: rgba(255,255,255,.16); }
.stats-grid-8 { row-gap: 2.6rem; }
@media (min-width: 769px) { .stats-grid-8 .stat-number { font-size: clamp(3rem, 6vw, 4.4rem); } }

/* --- Testata pagine interne: asfalto + griglia acciaio + bagliore rosso --- */
.page-header { background:
  linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px) 0 0 / 32px 32px,
  linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px) 0 0 / 32px 32px,
  radial-gradient(circle at 92% 18%, rgba(179,38,30,.30), transparent 45%),
  radial-gradient(circle at 10% 110%, rgba(30,58,95,.65), transparent 50%),
  var(--asfalto); position: relative; }
.page-header::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 6px; background: var(--striscia); opacity: .9; }

/* --- Hero: badge di fiducia in vetro (classico) sul layout officina --- */
.hero-trust-badges { background: rgba(20,40,64,.55); border-color: rgba(255,255,255,.14); }

/* --- Box informativi: variante acciaio --- */
.info-box { border-radius: var(--radius); box-shadow: var(--ombra-card); }
.info-box-steel { background: var(--acciaio-chiaro); border-left-color: var(--acciaio); }
.info-box-steel .icona { color: var(--acciaio); }

/* --- Confronto usato / revisionato / rettificato (schede prodotto Artuso) --- */
.confronto { display: grid; gap: 1.4rem; grid-template-columns: 1fr; }
@media (min-width: 900px) { .confronto { grid-template-columns: repeat(3, 1fr); align-items: stretch; } }
.confronto-card { background: #fff; border: 1.5px solid var(--linea-forte); border-radius: var(--radius); box-shadow: var(--ombra-card); display: flex; flex-direction: column; overflow: hidden; position: relative; }
.confronto-head { background: var(--asfalto); color: var(--testo-chiaro); padding: 1.3rem 1.4rem 1.1rem; }
.confronto-card:nth-child(2) .confronto-head { background: var(--acciaio); }
.confronto-card:nth-child(3) .confronto-head { background: var(--rosso); }
.confronto-head h3 { font-family: var(--font-display); font-weight: 900; text-transform: uppercase; font-size: 1.9rem; line-height: .95; }
.confronto-head h3 a { color: inherit; text-decoration: none; }
.confronto-garanzia { display: inline-block; margin-top: .6rem; font-family: var(--font-mono); font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; background: var(--giallo); color: var(--asfalto); padding: .3rem .6rem; border-radius: 3px; }
.confronto-body { padding: 1.3rem 1.4rem 1.5rem; display: flex; flex-direction: column; gap: .9rem; flex: 1; }
.confronto-body dl { display: grid; gap: .65rem; }
.confronto-body dt { font-family: var(--font-mono); font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; color: var(--testo-muto); }
.confronto-body dd { font-size: .95rem; }
.confronto-body .card-link { margin-top: auto; }
.confronto-tag { display: inline-block; margin-bottom: .7rem; font-family: var(--font-mono); font-size: .66rem; letter-spacing: .1em; text-transform: uppercase; background: #fff; color: var(--asfalto); padding: .25rem .5rem; border-radius: 3px; }

/* --- Hub marche (pagine motori per marca) --- */
.marche-hub { display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 560px) { .marche-hub { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .marche-hub { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1180px) { .marche-hub { grid-template-columns: repeat(4, 1fr); } }
.marca-link { display: grid; grid-template-columns: auto 1fr; gap: .2rem .9rem; align-items: center; height: 100%; padding: 1rem 1.1rem; background: #fff; border: 1.5px solid var(--linea-forte); border-radius: var(--radius); box-shadow: var(--ombra-card); text-decoration: none; color: var(--testo); transition: transform .15s, box-shadow .15s, border-color .15s; }
.marca-link:hover { border-color: var(--asfalto); transform: translate(-2px, -2px); box-shadow: var(--ombra-piena-sm); color: var(--testo); }
.marca-link .brand-sigla { grid-row: span 2; background: var(--acciaio); color: #fff; border-radius: 50%; }
.marca-link:hover .brand-sigla { background: var(--rosso); }
.marca-link strong { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; font-size: 1.35rem; line-height: 1; color: var(--asfalto); }
.marca-link span:last-child { font-size: .84rem; color: var(--testo-muto); line-height: 1.35; }
.brands-grid a.brand-card[href*="/motori-usati/"] .brand-sigla { background: var(--acciaio); color: #fff; }
.sottotitolo-marche { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; font-size: 1.6rem; margin: 2.6rem 0 1rem; }

/* --- Pagine marca --- */
.tabella-motori td:first-child { font-weight: 600; white-space: nowrap; }
.sigle-list { display: flex; flex-wrap: wrap; gap: .5rem; margin: .4rem 0 1.2rem; }
.sigle-list li { font-family: var(--font-mono); font-weight: 500; font-size: .82rem; background: var(--asfalto); color: var(--giallo); padding: .35rem .65rem; border-radius: 4px; }
.modelli-list { display: flex; flex-wrap: wrap; gap: .45rem; }
.modelli-list li { background: #fff; border: 1.5px solid var(--linea-forte); border-radius: 999px; padding: .3rem .85rem; font-size: .88rem; font-weight: 600; }
.marca-aside { background: #fff; border: 1.5px solid var(--linea-forte); border-top: 5px solid var(--acciaio); border-radius: var(--radius); padding: 1.5rem; box-shadow: var(--ombra-card); }
.marca-aside h2 { font-family: var(--font-display); font-weight: 900; text-transform: uppercase; font-size: 1.8rem; line-height: 1; margin-bottom: .8rem; }
.marca-aside .btn { width: 100%; margin-top: .6rem; }

/* --- CTA finale: fascia gialla con striscia (officina) + bordo acciaio --- */
.cta-section { border-top: 8px solid transparent; border-image: var(--striscia) 8; }
.footer-title-spazio { margin-top: 1.6rem; }
.footer-marche { font-size: .86rem; line-height: 1.9; }


/* === nuova-identita.css === */
/* ==============================================================
 MODULOR AUTODEMOLIZIONI  /  IDENTITÀ VISIVA 2026
 Design system: automotive editorial / precision & confidence.
 Local assets, fully responsive; no remote design dependencies.
 ============================================================== */
:root{
 --rosso:#f26a42;--rosso-scuro:#d9512c;--giallo:#f8b66b;
 --giallo-scuro:#e1a05e;--asfalto:#132238;--asfalto-2:#1b3049;
 --asfalto-3:#0c1726;--acciaio:#243d56;--acciaio-scuro:#101d30;
 --acciaio-chiaro:#edf2f6;--cemento:#f8f9f8;--cemento-2:#e7ebef;
 --sezione-alt:#f0f4f6;--cartellino:#fff0e6;--superficie:#ffffff;
 --testo:#152437;--testo-muto:#566575;--testo-chiaro:#f5f8fb;
 --testo-chiaro-muto:#c2d0de;--linea:rgba(29,50,73,.13);
 --linea-forte:rgba(29,50,73,.19);--linea-chiara:rgba(239,247,255,.18);
 --font-display:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
 --font-body:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
 --font-mono:'IBM Plex Mono',ui-monospace,monospace;
 --etichetta-sezione:"";--radius:20px;--radius-sm:12px;
 --ombra-piena:0 23px 52px rgba(19,34,56,.11);
 --ombra-piena-sm:0 12px 26px rgba(19,34,56,.12);
 --ombra-morbida:0 18px 50px rgba(8,21,36,.14);
 --ombra-card:0 8px 40px rgba(19,34,56,.055);
 --striscia:linear-gradient(90deg,#f26a42,#ff9d76);
 --container:1250px;--container-narrow:890px;--header-h:84px;
}
body{background:var(--cemento);font-size:16px;line-height:1.7}
a{text-underline-offset:4px}
::selection{background:#f6c5b5;color:#132238}
:focus-visible{outline:3px solid #f26a42;outline-offset:3px;border-radius:5px}
.top-banner :focus-visible,.site-header :focus-visible,.hero :focus-visible,.stats :focus-visible,.site-footer :focus-visible{outline-color:#ffab88}
.skip-link{background:#fff;color:#142239;border-radius:0 0 8px 8px}
.top-banner{padding:.58rem 1rem;background:#111e2e;color:#e6edf2;font-family:var(--font-body);font-weight:400;letter-spacing:.035em;font-size:.77rem}
.top-banner strong{font-weight:600;letter-spacing:.045em}.top-banner .sep{color:#f26a42}
.top-banner span:first-child::before{content:"";display:inline-block;width:7px;height:7px;background:#f26a42;border-radius:100%;margin-right:.55rem;vertical-align:middle}
.info-bar{background:#edf2f5;border-color:#dfe7eb;color:#46576c;font-family:var(--font-body);font-size:.78rem;padding:.36rem 1.25rem}
.info-bar .icona{color:#d9512c}.info-bar a{color:#2b3a4d}.info-bar a:hover{color:#c8502d}
.site-header{background:rgba(255,255,255,.97);color:#152437;position:sticky;top:0;z-index:100;box-shadow:0 9px 25px rgba(19,34,56,.06);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.site-header::after{display:none}.header-inner{padding:.7rem 1.3rem;max-width:1320px;min-height:var(--header-h)}
.logo img{width:230px;height:auto;max-height:62px;object-fit:contain}
.hamburger-btn{background:#f1f4f6;border:1px solid #dbe3e9;border-radius:12px;gap:5px}.hamburger-btn span{height:2px;background:#152437}
#mainNav{background:#132238;border:0;border-radius:0;box-shadow:-14px 0 50px rgba(13,25,40,.25);padding:5.7rem 1.25rem 2rem}
#mainNav a{font-family:var(--font-body);font-size:.98rem;font-weight:600;letter-spacing:0;text-transform:none;border-radius:12px;color:#fff}
#mainNav a:hover,#mainNav a.active{color:#fff;background:#243d56}
#mainNav a.header-cta{background:#f26a42;color:#162335;border-radius:999px;font-weight:600;padding:.85rem 1.3rem}
#mainNav a.header-cta:hover{background:#ffa07f;color:#152437}
body.menu-open .site-header{z-index:1000}
@media(min-width:1180px){
 #mainNav{background:transparent;box-shadow:none;padding:0;border:0;border-radius:0}
 #mainNav ul{gap:.03rem}#mainNav a{color:#23344a;padding:.65rem .72rem;font-size:.86rem}
 #mainNav a:hover,#mainNav a.active{background:#f2f5f7;color:#132238}
 #mainNav a:not(.header-cta)::after{bottom:0;left:.72rem;right:.72rem;height:2px;background:#f26a42}
 #mainNav a.header-cta{margin-left:.6rem;padding:.74rem 1.3rem;background:#f26a42;color:#fff;font-size:.86rem}
 #mainNav a.header-cta:hover,#mainNav a.header-cta.active{background:#d9512c;color:#fff}
}
@media(max-width:1179px){.menu-overlay{background:rgba(10,24,38,.64)}}
.btn{border-width:1px;border-radius:999px;text-transform:none;letter-spacing:-.01em;font-family:var(--font-body);font-size:.98rem;font-weight:600;padding:.98rem 1.55rem;min-height:52px;transition:background .2s,transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}.btn-primary{background:#f26a42;border-color:#f26a42;color:#fff}
.btn-primary:hover{background:#da552e;border-color:#da552e;box-shadow:0 12px 28px rgba(242,106,66,.25)}
.btn-outline{border-color:#c4ced6;color:#152437;background:#fff}.btn-outline:hover{background:#152437;color:#fff;border-color:#152437;box-shadow:0 10px 25px rgba(19,34,56,.14)}
.btn-whatsapp{background:#127d55;border-color:#127d55}.btn-whatsapp:hover{background:#09613e;border-color:#09613e;box-shadow:0 10px 25px rgba(10,93,60,.2)}
.card-link{font-family:var(--font-body);font-size:.9rem;letter-spacing:0;text-transform:none;font-weight:600;color:#e0633e;border:0;gap:.5rem}
.card-link:hover{color:#ba4b2a;gap:.7rem}
/* Main photographic stage: image/typography split on desktop. */
.hero{background:#102034;min-height:690px;padding:6rem 1.5rem 4.6rem;isolation:isolate}
.hero-bg{inset:0 0 0 auto;width:64%;height:100%;object-position:center;filter:saturate(.9) contrast(1.06);z-index:-3}
.hero::before{inset:0;background:linear-gradient(90deg,#102034 0%,#102034 34%,rgba(16,32,52,.96) 43%,rgba(16,32,52,.6) 62%,rgba(16,32,52,.1) 100%),linear-gradient(0deg,rgba(9,22,38,.48),transparent 50%);z-index:-2}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at -18% 95%,rgba(242,106,66,.13),transparent 54%)}
.hero-inner{max-width:var(--container);position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:500px;justify-content:center}
.hero-badge{background:transparent;background-image:none;color:#f8b5a1;border:1px solid rgba(247,194,169,.38);border-radius:100px;font-family:var(--font-body);font-size:.72rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;padding:.56rem 1rem;margin-bottom:1.6rem}
.hero h1{font-family:var(--font-body);font-size:clamp(3.1rem,5.6vw,5.7rem);font-weight:600;line-height:1.05;letter-spacing:-.065em;text-transform:none;max-width:12ch;margin-bottom:1.5rem}
.hero h1 .accent{display:inline;color:#ff986f}
.hero-h1-sub{font-family:var(--font-body);font-size:clamp(.98rem,1.6vw,1.15rem);font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none;color:#dbe4ed;margin-top:1.1rem;max-width:29ch}
.hero p{max-width:590px;font-size:1.01rem;line-height:1.7;color:#d1dce6;margin-bottom:1.7rem}
.hero p a{color:#fff;text-decoration-color:#f26a42}
.hero-trust-badges{order:10;margin-top:3rem;max-width:680px;width:100%;background:rgba(14,30,48,.72);border:1px solid rgba(255,255,255,.16);border-radius:17px;backdrop-filter:blur(16px)}
.hero-trust-badges li{font-family:var(--font-body);font-size:.79rem;font-weight:600;letter-spacing:0;text-transform:none;line-height:1.35;padding:.9rem 1rem;color:#eff5f9}
.hero-badge-icon{background:rgba(242,106,66,.14);border:1px solid rgba(242,106,66,.32);border-radius:10px;color:#ff9f7e;width:36px;height:36px}
.hero-buttons{gap:.8rem}
@media(min-width:950px){.hero-trust-badges{grid-template-columns:repeat(4,1fr);max-width:920px}.hero-trust-badges li{border-bottom:0!important;border-right:1px solid rgba(255,255,255,.16)}.hero-trust-badges li:last-child{border-right:0}.hero-inner{min-height:520px}}
@media(max-width:800px){.hero{min-height:unset;padding:5rem 1.15rem 3rem}.hero-bg{width:100%;opacity:.36;object-position:65% center}.hero::before{background:linear-gradient(90deg,rgba(16,32,52,.94),rgba(16,32,52,.7)),linear-gradient(0deg,#102034 0%,transparent 100%)}.hero h1{font-size:clamp(2.9rem,9vw,4.9rem)}.hero-inner{min-height:0}.hero-trust-badges{margin-top:2.4rem}}
@media(max-width:500px){.hero-trust-badges{grid-template-columns:1fr 1fr}.hero-trust-badges li{padding:.75rem .65rem;font-size:.72rem;gap:.45rem}.hero-badge-icon{width:30px;height:30px}}
.warranty-bar{background:#f9ebe5;color:#21344a;padding:1.4rem 1.25rem;border:0;border-bottom:1px solid #eed8cf}
.warranty-bar-inner{max-width:var(--container);gap:1.2rem}.warranty-bar .icona{color:#f26a42;width:38px;height:38px}
.warranty-title{font-family:var(--font-body);font-size:1.1rem;text-transform:none;font-weight:600;letter-spacing:-.025em;line-height:1.3}
.warranty-text p:not(.warranty-title){color:#64717d;font-size:.89rem}
.warranty-bar .btn{background:#fff;border:1px solid #ecd7cd;border-radius:999px;font-family:var(--font-body);font-size:.83rem;font-weight:600;color:#273a51}
.warranty-bar .btn:hover{background:#132238;border-color:#132238;color:#fff;box-shadow:none}
.trust-bar{background:#fff;border-bottom:1px solid #e5ebef}.trust-bar-inner{gap:0}.trust-item{border-color:#e9edf0}.trust-icon{background:#eff2f5!important;border-radius:14px;color:#f26a42;width:45px;height:45px}
.trust-item strong{font-family:var(--font-body);font-size:.98rem;line-height:1.3;text-transform:none;letter-spacing:-.015em;font-weight:600}
.trust-item span:last-child{font-size:.78rem;color:#667487}
.section{padding:5.7rem 1.25rem}.section-alt{background:var(--sezione-alt)}
.section-title{margin-bottom:2.6rem}.section-title::before{counter-increment:none!important;content:"L'ESSENZIALE, SENZA COMPROMESSI";display:block;background:none!important;border:0;padding:0;margin:0 0 .85rem;font-family:var(--font-mono);font-size:.66rem;line-height:1.5;letter-spacing:.13em;font-weight:500;text-transform:uppercase;color:#df6240;box-shadow:none;width:auto;height:auto;border-radius:0}
.section-title h2{font-family:var(--font-body);font-size:clamp(2.1rem,4.5vw,3.55rem);font-weight:600;line-height:1.12;letter-spacing:-.055em;text-transform:none;max-width:23ch;margin-bottom:.95rem}
.section-title h2::after{display:none!important}.section-title p{font-size:1.03rem;color:#5d6b79;max-width:690px}
.section-title-center{text-align:center}.section-title-center::before{text-align:center}
.content h2{font-family:var(--font-body);font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.22;letter-spacing:-.045em;text-transform:none;font-weight:600;color:#152437}
.content h3{font-family:var(--font-body);font-weight:600;font-size:1.25rem;letter-spacing:-.025em;text-transform:none;line-height:1.3}
.cards-grid{gap:1.35rem}
.card,.catalog-card{background:#fff;border:1px solid #e4ebf0;border-radius:20px;box-shadow:var(--ombra-card);overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}
.card:hover,.catalog-card:hover{transform:translateY(-5px);border-color:#d5dfe7;box-shadow:0 22px 46px rgba(19,34,56,.13)}
.card img{aspect-ratio:1.44/1;object-fit:cover;border:0;transition:transform .35s}.card:hover img{transform:scale(1.035)}
.card .card-img-link{overflow:hidden;display:block}.card-body{padding:1.5rem 1.4rem 1.65rem;border:0;gap:.82rem}
.card-body h3,.card-title{font-family:var(--font-body);font-size:1.25rem;line-height:1.3;letter-spacing:-.035em;text-transform:none;font-weight:600}
.card-body p{font-size:.9rem;color:#657383;line-height:1.6}.blog-card-meta{font-family:var(--font-body);font-size:.74rem!important;font-weight:600;color:#df6240!important;letter-spacing:.02em;text-transform:none}
.step,.phase{background:#fff;border:1px solid #e1e9ee;border-top:1px solid #e1e9ee!important;border-radius:18px;padding:1.8rem 1.45rem;box-shadow:var(--ombra-card)}
.step-n{width:42px;height:42px;background:#fbe9e2;color:#dc5d38;font-family:var(--font-body);font-size:1rem;border-radius:12px;font-weight:600}
.step h3,.phase h3{font-family:var(--font-body);font-weight:600;text-transform:none;font-size:1.1rem;line-height:1.3;letter-spacing:-.025em}
.stats{background:radial-gradient(circle at 85% 12%,rgba(242,106,66,.17),transparent 35%),linear-gradient(135deg,#132238,#0b1728)!important;padding:6rem 1.25rem}
.stats .section-title::before{color:#f5aa8d}.stats .section-title h2{color:#fff}.stats .section-title p,.stat-label{color:#aabed0}
.stats-grid{border-top:1px solid rgba(255,255,255,.16);gap:2rem 0}.stat-number,.stats-grid-8 .stat-number{font-family:var(--font-body);font-weight:600;letter-spacing:-.07em;color:#fff;font-size:clamp(2.35rem,4vw,3.45rem);line-height:1.05}
.stat-label{font-family:var(--font-body);font-size:.77rem;letter-spacing:0;text-transform:none}.stat-item{border-color:rgba(255,255,255,.14)}
.confronto{gap:1.2rem}.confronto-card{border:1px solid #e1e7ed;border-radius:19px;box-shadow:var(--ombra-card)}
.confronto-head,.confronto-card:nth-child(2) .confronto-head,.confronto-card:nth-child(3) .confronto-head{background:#132238;color:#fff;padding:1.7rem 1.45rem}
.confronto-card:nth-child(2) .confronto-head{background:#2b4763}.confronto-card:nth-child(3) .confronto-head{background:#e16a47}
.confronto-head h3{font-family:var(--font-body);font-size:1.4rem;line-height:1.2;letter-spacing:-.04em;text-transform:none;font-weight:600}
.confronto-tag{font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;font-size:.64rem;border-radius:999px;background:rgba(255,255,255,.16);color:#fff;padding:.35rem .7rem}
.confronto-garanzia{font-family:var(--font-body);font-size:.75rem;letter-spacing:0;text-transform:none;border-radius:999px;background:#fff;color:#1d3047;padding:.35rem .8rem}
.confronto-body{padding:1.65rem}.confronto-body dt{font-family:var(--font-body);letter-spacing:.06em;font-size:.69rem}
.marca-link{border:1px solid #e2e8ed;border-radius:15px;box-shadow:var(--ombra-card);transition:transform .2s,box-shadow .2s}.marca-link:hover{transform:translateY(-3px);box-shadow:var(--ombra-piena-sm);border-color:#e5c0b3}
.marca-link .brand-sigla,.brands-grid a.brand-card[href*="/motori-usati/"] .brand-sigla{border-radius:12px;background:#eaf0f4;color:#e06942}
.marca-link:hover .brand-sigla{background:#f5e0d7;color:#da5836}
.marca-link strong{font-family:var(--font-body);font-size:1rem;line-height:1.3;text-transform:none;font-weight:600}
.brand-card{border-radius:14px;border-color:#e2e7ec;box-shadow:none}.sottotitolo-marche{font-family:var(--font-body);font-size:1.45rem;text-transform:none;letter-spacing:-.03em}
.marca-aside{border:1px solid #e1e7ed;border-radius:17px;box-shadow:var(--ombra-card)}.marca-aside h2{font-family:var(--font-body);font-size:1.38rem;line-height:1.2;text-transform:none}
.page-header{background:radial-gradient(circle at 88% 24%,rgba(242,106,66,.23),transparent 28%),radial-gradient(circle at -10% 100%,rgba(75,115,158,.35),transparent 55%),#122237!important;color:#fff;padding:4rem 1.3rem 4.8rem;position:relative;overflow:hidden}
.page-header::after{height:3px;background:linear-gradient(90deg,#f26a42,transparent 64%);opacity:1}
.page-header h1{font-family:var(--font-body);font-size:clamp(2.8rem,6vw,5rem);font-weight:600;letter-spacing:-.065em;text-transform:none;max-width:20ch;line-height:1.07;margin-bottom:1.2rem}
.page-header-sub{font-size:1.06rem;color:#cbd6e0;line-height:1.65;max-width:690px}
.eyebrow{border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.075)!important;color:#ffa581;display:inline-block;font-family:var(--font-body);font-size:.72rem;padding:.35rem .9rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:1rem}
.breadcrumb{font-family:var(--font-body);font-size:.75rem;letter-spacing:0}.breadcrumb li + li::before{content:"/";color:#f58b67;margin:0 .4rem}.breadcrumb a{color:#d5e0e9}
.blog-post{max-width:820px}.blog-post .content{font-size:1.08rem;line-height:1.85}.blog-meta{font-family:var(--font-body);font-size:.75rem;letter-spacing:0;border-color:#dfe7ed}
.blog-cover{border:0;border-radius:18px;box-shadow:var(--ombra-card)}.blog-post .content img{border:0;border-radius:18px}
.toc{border:1px solid #dfe7ed;border-left:4px solid #f26a42;background:#fff;border-radius:14px}
.inline-cta{background:#152942;color:#fff;border:0;border-left:4px solid #f26a42;border-radius:17px}.inline-cta h3{color:#fff}.inline-cta p{color:#cbd6e0}
.highlight-box{background:#fff1e9;border-left:4px solid #f26a42;border-radius:12px}
.related-posts{border:1px solid #e0e7ed;background:#fff;border-radius:16px}.related-posts h2{font-family:var(--font-body);font-size:1.5rem;text-transform:none;letter-spacing:-.04em;line-height:1.3}
.share-btn{font-family:var(--font-body);font-size:.75rem;text-transform:none;letter-spacing:0;border-radius:999px;font-weight:600}.share-buttons>span{font-family:var(--font-body);letter-spacing:0;text-transform:none}
.faq-item,.feature{border-radius:16px;box-shadow:var(--ombra-card)}
.contact-card{border:1px solid #e1e7ed;border-radius:17px;box-shadow:var(--ombra-card)}.contact-card:hover{transform:translateY(-3px);box-shadow:var(--ombra-piena-sm)}
.contact-card .icona{border-radius:13px;background:#fcebe4;color:#e26741}.contact-card-wa .icona{background:#0f7951;color:#fff}
.contact-card h2{font-family:var(--font-body);font-size:.76rem;letter-spacing:.04em}
.contact-card p{font-family:var(--font-body);font-size:1.2rem;line-height:1.3;font-weight:600}
.contact-form{background:#fff;border:1px solid #dfe6ec;border-radius:18px;box-shadow:var(--ombra-card)}.contact-form h2{font-family:var(--font-body);font-size:1.7rem;line-height:1.3;text-transform:none;letter-spacing:-.04em}
.part-item,.info-box{border-radius:14px;border-color:#e1e7ed}.part-item .icona{background:#f8e8e1;color:#db633e;border-radius:9px}
.related-links{background:#eef2f5}.related-links-title{font-family:var(--font-body);font-size:2rem;letter-spacing:-.05em;text-transform:none;line-height:1.2}
.related-links-grid a{border:1px solid #e1e7ed;border-radius:15px;box-shadow:none;padding:1.4rem}.related-links-grid a:hover{transform:translateY(-3px);box-shadow:var(--ombra-card);border-color:#efd1c4}
.related-links strong{font-family:var(--font-body);font-size:1rem;line-height:1.3;text-transform:none;font-weight:600}
.cta-section{background:radial-gradient(circle at 15% 30%,rgba(255,255,255,.28),transparent 50%),#f6a787!important;color:#132238;border:0!important;padding:5rem 1.25rem}
.cta-section h2{font-family:var(--font-body);font-size:clamp(2.1rem,4.8vw,3.6rem);font-weight:600;text-transform:none;letter-spacing:-.055em;line-height:1.1}
.cta-section p,.cta-section p a{color:#303c4a}.cta-section .btn-primary{background:#132238;color:#fff;border-color:#132238}.cta-section .btn-primary:hover{background:#253e58;border-color:#253e58}.cta-section .btn-whatsapp{background:#fff;color:#185b41;border-color:#fff}.cta-section .btn-whatsapp:hover{background:#e9f8f0;color:#185b41}
.site-footer{background:#0d1a2b;color:#b5c5d4;padding-top:5rem;border:0}.site-footer::before{height:3px;background:linear-gradient(90deg,#f26a42,transparent)}
.footer-inner{gap:2.4rem}.footer-logo{width:253px;height:auto;max-height:66px;object-fit:contain}.footer-title{font-family:var(--font-body);font-weight:600;font-size:.83rem;letter-spacing:.02em;text-transform:none;color:#fff}
.footer-col:first-child .footer-title{font-family:var(--font-body);font-size:1rem;letter-spacing:-.02em;text-transform:none}.footer-col p,.footer-col li{line-height:1.65}.site-footer a{color:#dce6ee}.site-footer a:hover{color:#ffa98b}
.footer-bottom{font-family:var(--font-body);font-size:.72rem;letter-spacing:0;color:#9eb1c1}.footer-condensed{background:#091321;border:0;font-family:var(--font-body);font-size:.69rem;letter-spacing:.02em;text-transform:none;color:#a9bac8}.footer-condensed span{color:#f26a42}
.mobile-bar{background:#132238;border:0;border-top:2px solid #f26a42}.mobile-bar a{font-family:var(--font-body);font-size:.81rem;letter-spacing:0;text-transform:none;font-weight:600}.mobile-quote{background:#e96540}.mobile-call{background:#263d56}
.whatsapp-float{box-shadow:0 12px 38px rgba(12,67,43,.25)}.wa-tooltip{border-radius:12px;box-shadow:none;font-family:var(--font-body);letter-spacing:0}
.wa-modal{border:1px solid #dde6ed;background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(6,18,31,.26)}
.wa-modal-h2{font-family:var(--font-body);font-size:1.85rem;font-weight:600;letter-spacing:-.04em;line-height:1.2;text-transform:none}
.wa-step-title{font-family:var(--font-body);font-size:1.25rem;letter-spacing:-.025em;text-transform:none;font-weight:600}
.wa-card{border:1px solid #dce5eb;border-radius:14px}.wa-card.selected{background:#fff0e8;border-color:#f26a42;box-shadow:none;transform:none}
.wa-card-title{font-family:var(--font-body);font-size:.94rem;text-transform:none;letter-spacing:0}.wa-btn-next,.wa-btn-back,.wa-submit{font-family:var(--font-body);font-size:.9rem;text-transform:none;letter-spacing:0;border-radius:999px;font-weight:600}.wa-btn-next{background:#f26a42}.wa-btn-next:hover:not(:disabled){background:#d9512c}.wa-step-dot{font-family:var(--font-body);font-size:.9rem;border-radius:999px}.wa-step-dot.active{background:#132238;color:#fff}
/* Blog archive: editorial feature + accessible search and category filters */
.blog-intro{padding:4.2rem 1.25rem 0;background:#f8f9f8}.blog-intro .container{max-width:var(--container)}
.blog-kicker{display:inline-block;margin-bottom:.85rem;color:#d95f3d;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}
.blog-intro h2{font-size:clamp(1.75rem,3.5vw,2.75rem);letter-spacing:-.045em;line-height:1.18;max-width:800px;margin-bottom:1rem;font-weight:600}
.blog-feature{display:grid;grid-template-columns:1fr;overflow:hidden;border-radius:23px;background:#132238;color:#fff;box-shadow:0 20px 60px rgba(19,34,56,.13);margin-top:2rem}
.blog-feature-image{display:block;overflow:hidden}.blog-feature-image img{width:100%;height:100%;max-height:440px;object-fit:cover}.blog-feature-copy{padding:2.4rem;display:flex;flex-direction:column;justify-content:center;gap:1rem}
.blog-feature-copy .blog-kicker{color:#ff9e78}.blog-feature-copy h3{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.16;letter-spacing:-.05em;max-width:14ch}.blog-feature-copy h3 a{color:#fff;text-decoration:none}.blog-feature-copy h3 a:hover{color:#ffb194}.blog-feature-copy p{color:#c3d2df;max-width:420px}.blog-feature-copy .card-link{color:#ffb294}
@media(min-width:840px){.blog-feature{grid-template-columns:1.08fr 1fr}.blog-feature-image img{max-height:none;min-height:390px}}
.blog-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:0 0 1.6rem}.blog-filters{display:flex;flex-wrap:wrap;gap:.5rem}
.blog-filter{border:1px solid #dbe4e9;background:#fff;color:#314359;padding:.63rem 1rem;border-radius:999px;font-family:var(--font-body);font-size:.85rem;font-weight:600;cursor:pointer}.blog-filter:hover{background:#edf2f6}.blog-filter.is-active{background:#132238;color:#fff;border-color:#132238}
.blog-search{display:flex;align-items:center;gap:.55rem;min-height:45px;padding:.4rem .95rem;background:#fff;border:1px solid #dce6eb;border-radius:999px;color:#677587}.blog-search input{border:0;outline:0;min-width:160px;width:230px;max-width:100%;font-size:.88rem;background:transparent;color:#152437}.blog-search:focus-within{outline:2px solid #f26a42;outline-offset:2px}
.blog-count{color:#667587;font-size:.78rem;margin-bottom:1.1rem}.blog-card[hidden]{display:none!important}.blog-empty{padding:2rem;border:1px dashed #d3dfe7;border-radius:16px;color:#536579}
.blog-chip{display:inline-flex;align-items:center;align-self:flex-start;color:#d95e3a;background:#fff0e9;padding:.3rem .68rem;font-size:.72rem;font-weight:600;border-radius:100px}.blog-grid .card-body{gap:.7rem}
.blog-card.featured-list{display:none}
/* Brand-led editorial detail, reusable across the service pages */
.editorial-band{background:#14253b;color:#fff;padding:3.5rem 1.25rem}.editorial-band-inner{max-width:var(--container);margin:auto;display:flex;gap:2rem;align-items:center;justify-content:space-between}.editorial-band h2{font-size:clamp(1.55rem,3vw,2.45rem);line-height:1.2;letter-spacing:-.05em;font-weight:600;max-width:650px}.editorial-band p{color:#b4c7d7;margin-top:.5rem}.editorial-band .btn{white-space:nowrap}
@media(max-width:780px){.editorial-band-inner{flex-direction:column;align-items:flex-start}.editorial-band .btn{width:100%}}
/* responsive finetuning */
@media(max-width:768px){.section{padding:3.7rem 1.05rem}.section-title h2{font-size:clamp(1.95rem,7vw,2.65rem)}.page-header{padding:3.2rem 1.05rem 3.7rem}.info-bar .info-bar-inner{gap:1rem}.blog-intro{padding:2.7rem 1rem 0}.blog-feature-copy{padding:1.6rem}.blog-search{width:100%}.blog-search input{flex:1;width:100%}.blog-toolbar{flex-direction:column;align-items:stretch}.blog-filters{gap:.4rem}.blog-filter{font-size:.78rem;padding:.54rem .75rem}}
@media(max-width:530px){.top-banner{font-size:.67rem}.top-banner .sep{display:none}.top-banner span{margin:0 .25rem}.info-bar{font-size:.72rem}.header-inner{padding:.6rem .9rem;min-height:70px}.logo img{width:205px}.hero-buttons .btn{width:100%}.warranty-bar-inner{align-items:flex-start}.warranty-bar .icona{width:30px;height:30px}.warranty-bar .btn{width:100%}.trust-bar-inner{grid-template-columns:repeat(2,1fr)}.trust-item{padding:1.2rem .5rem}.trust-item strong{font-size:.84rem}.trust-item span:last-child{font-size:.72rem}.stats-grid{gap:1.5rem 0}.stat-item{padding:0 .7rem}.stat-number{font-size:2rem!important}.blog-feature-image img{max-height:260px}.footer-condensed{display:none}}

@media(min-width:1024px){.pagina-home .cards-grid:not(.cards-grid-3){grid-template-columns:repeat(2,minmax(0,1fr))}.pagina-home .cards-grid:not(.cards-grid-3) .card img{aspect-ratio:1.75/1}}


/* === vetrina-stili.css === */
/* MODULOR AUTODEMOLIZIONI · VETRINA MOTORI · cinque direzioni grafiche · nessun carrello */
:root{--show-accent:#e51524;--show-accent2:#ff4e59;--show-ink:#10141a;--show-deep:#080b10;--show-paper:#fff;--show-muted:#6c7785;--show-line:#dfe4eb;--show-soft:#f3f5f8;--show-tint:rgba(229,21,36,.10);--show-round:12px;--show-shadow:0 18px 55px rgba(8,18,36,.12);--font-sans:'IBM Plex Sans',Arial,sans-serif}
html{scroll-behavior:smooth}body{background:var(--show-paper);font-family:var(--font-sans);color:var(--show-ink);line-height:1.55}img{max-width:100%}a{text-decoration:none} .show-wrap{width:min(1320px,calc(100% - 72px));margin-inline:auto} .show-topline{background:#0e1116;color:#e9e9eb;font-size:12px;font-weight:500}.show-top-inner{min-height:31px;display:flex;align-items:center;justify-content:space-between;gap:14px}.show-top-inner a{color:inherit}.show-top-inner span:first-child{color:var(--show-accent2)}
.site-header.show-header{background:var(--show-paper);position:relative;top:auto;z-index:110;box-shadow:0 5px 18px #020a1812}.show-head-row{min-height:94px;display:flex;align-items:center;gap:clamp(15px,4vw,60px)}.show-logo{flex:0 0 258px;display:flex;align-items:center}.show-logo img{width:260px;height:66px;object-fit:contain;object-position:left}.show-head-search{height:46px;flex:1;display:flex;min-width:150px;border:1px solid #d7dce4;overflow:hidden;background:#fff;border-radius:var(--show-round)}.show-head-search input{width:100%;min-width:50px;font-family:inherit;font-size:14px;border:none;outline:none;padding:0 19px;color:#131e2b;background:transparent}.show-head-search button{font-weight:700;min-width:99px;border:none;border-radius:8px;margin:4px;background:var(--show-accent);color:#fff;cursor:pointer}.show-head-action{display:flex;align-items:center;gap:10px;color:var(--show-ink);font-weight:700;white-space:nowrap}.head-action-icon{height:39px;width:39px;display:grid;place-items:center;background:var(--show-soft);border-radius:10px;font-size:23px;color:var(--show-accent)}.show-head-action small{font-size:11px;display:block;color:var(--show-muted);font-weight:400}.show-nav{background:var(--show-accent);color:#fff}.show-nav .show-wrap{display:flex;align-items:center;gap:0;padding:0;min-height:46px;list-style:none;flex-wrap:wrap}.show-nav li{list-style:none}.show-nav a{color:inherit;display:block;padding:13px 16px;font-weight:700;font-size:13px;line-height:20px;transition:background .16s}.show-nav a:hover,.show-nav a.active{background:#0002;color:#fff}.show-nav .nav-final{margin-left:auto}.show-nav .header-cta{background:#161b22;border-radius:7px;padding:10px 16px;white-space:nowrap}.show-header .hamburger-btn{display:none}
.show-hero{min-height:500px;position:relative;background:var(--show-deep);color:#fff;overflow:hidden;isolation:isolate}.show-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,18,.93) 0%,rgba(8,12,18,.86) 38%,rgba(8,12,18,.46) 68%,rgba(8,12,18,.18) 100%);z-index:-2}.show-hero::after{content:"";position:absolute;right:-170px;top:-140px;width:580px;height:720px;transform:skew(-24deg);border-left:70px solid var(--show-accent);background:#ffffff07;opacity:.55;z-index:-1}.show-rays{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(0deg,rgba(6,10,14,.18),rgba(6,10,14,.18)),url('https://images.pexels.com/photos/8985519/pexels-photo-8985519.jpeg?auto=compress&cs=tinysrgb&w=1200&h=675&fit=crop');background-size:cover;background-position:center 40%;filter:brightness(.86) saturate(.97)}.show-hero-grid{min-height:500px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px;position:relative}.show-hero-copy{max-width:670px;padding:46px 0 64px;z-index:2}.show-kicker{font-size:12px;letter-spacing:3.3px;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:12px;color:#fff9}.kicker-line{width:34px;height:3px;background:var(--show-accent);display:inline-block}.show-hero h1{margin:17px 0 18px;color:#fff;font-size:clamp(44px,5.3vw,82px);letter-spacing:-.052em;line-height:1.03;font-weight:800;text-shadow:0 8px 30px rgba(0,0,0,.24)}.show-hero h1 em{display:block;font-style:normal;color:var(--show-accent2)}.show-intro{font-size:17px;color:#eef2f6;line-height:1.6;max-width:560px;margin-bottom:23px;text-shadow:0 4px 22px rgba(0,0,0,.18)}.show-actions{display:flex;gap:12px;flex-wrap:wrap}.show-btn{border:1px solid transparent;min-height:44px;display:inline-flex;justify-content:center;align-items:center;gap:18px;padding:12px 24px;border-radius:var(--show-round);font-size:13px;font-weight:800;transition:transform .2s,filter .2s,background .2s}.show-btn:hover{transform:translateY(-2px);filter:brightness(1.07)}.show-btn span{font-size:18px}.show-btn-main{background:var(--show-accent);color:#fff}.show-btn-main:hover{color:#fff}.show-btn-ghost{background:#ffffff10;border-color:#ffffff87;color:#fff}.show-btn-ghost:hover{color:#fff;background:#ffffff24}.show-btn-outline{color:var(--show-ink);background:transparent;border-color:#98a1ad}.show-mini-proof{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:26px;color:#dde4ec;font-size:12px;font-weight:600}.show-hero-visual{min-height:475px;position:relative;display:flex;align-items:center;justify-content:center}.show-engine-hero{width:100%;height:360px;max-width:610px;object-fit:cover;object-position:center;clip-path:polygon(5% 0,100% 0,100% 93%,95% 100%,0 100%,0 8%);border:3px solid rgba(255,255,255,.28);box-shadow:0 30px 70px rgba(0,0,0,.50);filter:saturate(.96) contrast(1.04);background:#0d1014}.show-orbit{width:470px;height:470px;border:2px solid rgba(255,255,255,.10);outline:2px dashed rgba(255,255,255,.10);outline-offset:-30px;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.show-visual-label{position:absolute;left:0;bottom:57px;background:rgba(255,255,255,.94);color:var(--show-ink);box-shadow:var(--show-shadow);padding:13px 23px;line-height:1.3;font-size:10px;letter-spacing:2px;font-weight:800;max-width:280px}.show-visual-label strong{display:block;letter-spacing:0;font-size:14px;margin-top:3px}.visual-dot{display:inline-block;background:var(--show-accent);border-radius:50%;width:7px;height:7px;margin-right:8px}.show-visual-index{position:absolute;right:6px;bottom:51px;font-size:23px;font-weight:800;letter-spacing:2px}.show-visual-index span{color:#ffffff88;font-size:13px}
.show-promise{background:#eff1f3;color:#171e2a}.promise-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-block:17px}.promise-grid>div{display:grid;grid-template-columns:40px auto;column-gap:10px;padding:5px 23px;border-right:1px solid #b9c1cc;align-items:center}.promise-grid>div:last-child{border:0}.promise-grid b{grid-row:span 2;color:var(--show-accent);font-size:23px}.promise-grid strong{font-size:13px}.promise-grid span{font-size:11px;color:var(--show-muted)}
.show-finder-section{background:var(--show-paper);padding:26px 0 14px;position:relative;z-index:2}.show-finder-raised{margin-top:-47px;padding-top:0;background:transparent}.show-finder{background:#fff;border:1px solid #e2e6ed;box-shadow:0 14px 42px #13203615;border-radius:16px;padding:21px 28px;display:grid;gap:22px;grid-template-columns:280px 1fr;align-items:center}.show-finder-heading{display:flex;align-items:center;gap:16px}.finder-symbol{font-size:39px;font-weight:700;color:var(--show-accent)}.show-finder-heading strong{display:block;color:#142033;font-size:17px;line-height:1.3}.show-finder-heading small{font-size:12px;color:#69778a;display:block;margin-top:5px}.show-finder-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end}.show-finder-fields label{font-size:12px;font-weight:700;color:#394459}.show-finder-fields input{display:block;width:100%;height:43px;box-sizing:border-box;border:1px solid #d5dce5;background:#f8fafc;margin-top:6px;padding:0 12px;color:#1c2734;border-radius:7px;font:inherit;font-size:13px}.show-finder-fields button{height:43px;white-space:nowrap}.show-section{padding:64px 0}.show-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.show-overscript{font-size:12px;letter-spacing:2.5px;font-weight:800;color:var(--show-accent);margin:0 0 9px}.show-section-heading h2,.show-feature-text h2,.show-green-panel h2,.show-end-cta h2{font-size:clamp(28px,3.3vw,47px);line-height:1.15;letter-spacing:-.035em;margin:0;font-weight:800;color:var(--show-ink)}.show-section-heading p{color:var(--show-muted);margin-top:9px}.show-all-link{color:var(--show-accent);font-weight:700;font-size:13px;white-space:nowrap}.show-all-link span{font-size:18px}.show-categories-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.show-category{position:relative;min-height:237px;border-radius:var(--show-round);overflow:hidden;background:#0e1822;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:18px;box-sizing:border-box;isolation:isolate}.show-category:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#070b13ed 0%,#07122177 52%,#07122115 100%)}.show-category img{position:absolute;z-index:-2;width:100%;height:100%;object-fit:cover;top:0;left:0;transition:transform .4s}.show-category:hover img{transform:scale(1.07)}.category-symbol{color:var(--show-accent2);font-size:10px;font-weight:800;letter-spacing:2px}.show-category strong{font-size:20px;margin-top:7px;line-height:1.2}.show-category small{color:#e1e6ec;font-size:12px;margin-top:5px}.category-arrow{position:absolute;right:14px;bottom:17px;background:#fff;color:#10151d;border-radius:50%;height:31px;width:31px;display:grid;place-items:center;font-size:19px}
.show-brands{background:var(--show-soft)}.show-brand-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.show-brand-card{border:1px solid #d9dfe6;padding:17px;background:#fff;border-radius:var(--show-round);display:flex;align-items:center;gap:16px;color:var(--show-ink);transition:transform .2s,box-shadow .2s}.show-brand-card:hover{box-shadow:var(--show-shadow);transform:translateY(-3px)}.brand-glyph{height:55px;min-width:58px;border-radius:9px;background:var(--show-tint);color:var(--show-accent);display:grid;place-items:center;font-size:17px;font-weight:900}.show-brand-card strong{display:block;font-size:16px}.show-brand-card small{display:block;color:var(--show-muted);font-size:12px}.brand-chevron{margin-left:auto;color:var(--show-accent);font-size:20px}.show-availability-note{font-size:11px;color:var(--show-muted);margin-top:21px}
.show-feature{background:#0e1521;color:#fff}.show-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,6vw,100px);align-items:center}.show-feature-photo{height:430px;overflow:hidden}.show-feature-photo img{height:100%;width:100%;object-fit:cover}.show-feature-text{padding:45px 0;max-width:560px}.show-feature-text h2{color:#fff}.show-feature-text h2 em{color:var(--show-accent2);font-style:normal}.show-feature-text p:not(.show-overscript){color:#c4ced9;font-size:16px;line-height:1.7}.show-feature-text ul{padding:0;list-style:none;margin:20px 0}.show-feature-text li{padding:10px 0 10px 29px;border-bottom:1px solid #ffffff1a;color:#e9edf3;position:relative;font-size:14px}.show-feature-text li::before{content:'✓';color:var(--show-accent2);position:absolute;left:0;font-weight:900}.show-feature .show-btn-outline{border-color:#9faab5;color:#fff}.show-how{background:var(--show-paper)}.show-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.show-steps>div{background:var(--show-soft);padding:25px;border:1px solid #e1e6ec;border-radius:var(--show-round)}.show-steps span{font-size:36px;font-weight:900;color:var(--show-accent)}.show-steps h3{font-size:17px;color:var(--show-ink);margin:8px 0 10px}.show-steps p{font-size:13px;color:var(--show-muted);margin:0}.show-blog{background:var(--show-soft)}.show-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.show-blog-card{color:var(--show-ink);background:#fff;border-radius:var(--show-round);overflow:hidden;border:1px solid var(--show-line);display:flex;flex-direction:column;padding-bottom:22px}.show-blog-card img{width:100%;height:190px;object-fit:cover}.show-blog-card span{font-size:11px;letter-spacing:2px;color:var(--show-accent);font-weight:800;margin:19px 21px 9px}.show-blog-card strong{font-size:19px;line-height:1.3;padding:0 21px;min-height:54px}.show-blog-card small{font-size:12px;font-weight:700;color:var(--show-accent);padding:16px 21px 0}.show-end-cta{background:var(--show-accent);color:#fff}.show-end-inner{padding:38px 0;display:flex;align-items:center;justify-content:space-between;gap:30px}.show-end-cta .show-overscript,.show-end-cta h2{color:#fff}.show-end-cta p:not(.show-overscript){font-size:15px;margin:10px 0 0;color:#ffffffdc}.show-end-cta .show-btn-main{background:#fff;color:var(--show-ink)}.show-green-panel{background:#e8fff1;padding:45px 0}.green-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.green-grid img{height:275px;width:100%;object-fit:cover;border-radius:16px}.green-grid p{font-size:16px;line-height:1.6;color:#315a51}
/* Resto del sito: uniforma pagine informative, blog, form, SEO, privacy */
body .page-header{background:linear-gradient(120deg,var(--show-deep),#1b2936);color:#fff;position:relative;overflow:hidden}body .page-header::after{content:"";position:absolute;right:-10%;top:-80px;height:250px;width:300px;border-left:90px solid var(--show-accent);transform:skew(-30deg);opacity:.35}body .page-header h1{color:#fff}body .page-header-sub{color:#d7e1ec}body .page-header .breadcrumb a{color:var(--show-accent2)}body .site-footer{background:var(--show-deep)}body .footer-condensed{background:var(--show-ink)}body .footer-condensed strong{color:#fff}body .site-footer a:hover{color:var(--show-accent2)}body .btn-primary,body .wa-btn-next,body .wa-submit{background:var(--show-accent);border-color:var(--show-accent);color:#fff}body .section-title h2,body .content h2{color:var(--show-ink)}body .card,body .confronto-card{border-radius:var(--show-round)}body a:not(.show-btn):hover{color:var(--show-accent)}body .show-header a:hover{color:inherit}body .show-nav a:hover{color:#fff}body .show-blog-card:hover{color:var(--show-ink)}.show-section h2{max-width:850px}
/* 01 ROSSO CORSA · dinamico, neri profondi, tagli racing */
body.theme-corsa{--show-accent:#d90a20;--show-accent2:#ff4758;--show-deep:#0d1015;--show-ink:#13171c;--show-soft:#f3f4f5;--show-tint:#ffe7e9;--show-round:6px}.theme-corsa .show-topline{background:#090a0e}.theme-corsa .show-head-row{background:#fff}.theme-corsa .show-nav{background:linear-gradient(90deg,#ae0719,#f41428 50%,#a00717)}.theme-corsa .show-hero::before{background:linear-gradient(95deg,#090b10 20%,#161923 61%,#090b10),radial-gradient(ellipse at 76% 30%,#9e111344,transparent)}.theme-corsa .show-hero::after{transform:skew(-26deg);border-left:65px solid #f20b28;box-shadow:-36px 0 #a20c20}.theme-corsa .show-hero h1{text-transform:uppercase;font-style:italic;font-weight:900;letter-spacing:-.06em}.theme-corsa .show-category{border-bottom:4px solid var(--show-accent)}.theme-corsa .show-end-cta{background:#bd0a19}.theme-corsa .show-btn-main{box-shadow:0 8px 20px #cf132939}
/* 02 BLU TECNICO · navigazione blu, schede pulite */
body.theme-tecnico{--show-accent:#0861bd;--show-accent2:#44a5ff;--show-deep:#0a2445;--show-ink:#102f51;--show-soft:#f0f6fd;--show-tint:#e2f0ff;--show-round:12px}.theme-tecnico .show-topline{background:#e9f3ff;color:#184c83}.theme-tecnico .show-topline span:first-child{color:#1162b1}.theme-tecnico .show-nav{background:linear-gradient(90deg,#064580,#1176d3)}.theme-tecnico .show-hero{min-height:490px}.theme-tecnico .show-hero::before{background:linear-gradient(100deg,#092744 15%,#104782 71%,#142f4d)}.theme-tecnico .show-hero::after{background:#2189ec25;border-left:75px solid #1684f7}.theme-tecnico .show-finder-raised{margin-top:-48px}.theme-tecnico .show-finder{box-shadow:0 16px 50px #0e5ea529}.theme-tecnico .show-engine-hero{border-radius:18px;clip-path:none}.theme-tecnico .show-category{min-height:215px;border-radius:10px}.theme-tecnico .show-feature{background:#09335c}.theme-tecnico .show-steps>div{background:#edf5ff}
/* 03 ELITE · nero, oro, impaginazione editoriale */
body.theme-elite{--show-accent:#c5a15a;--show-accent2:#f6d58d;--show-deep:#08090b;--show-ink:#f5efe3;--show-paper:#101114;--show-soft:#17191c;--show-muted:#ada89d;--show-line:#3c352b;--show-tint:#352c1d;--show-round:2px;background:#101114;color:#dcd6ca}.theme-elite .show-topline{background:#050608;color:#c9bda9}.theme-elite .show-header{background:#0b0c0f;box-shadow:none;border-bottom:1px solid #7e663950}.theme-elite .show-head-search{background:#191b1f;border-color:#493d2c}.theme-elite .show-head-search input{color:#fff}.theme-elite .show-head-action{color:#efe5d0}.theme-elite .show-nav{background:#0a0b0d;border-bottom:1px solid #56452b}.theme-elite .show-nav a{color:#e9e1d1}.theme-elite .show-nav .header-cta{background:#c5a15a;color:#121112}.theme-elite .show-hero{min-height:540px}.theme-elite .show-hero::before{background:radial-gradient(ellipse at 60% 10%,#65502a50,transparent 49%),linear-gradient(130deg,#07080a 10%,#18191a 72%,#030405)}.theme-elite .show-hero::after{border-left:3px solid #c5a15a;right:5%;opacity:.6}.theme-elite .show-hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.04em;font-size:clamp(47px,5vw,76px)}.theme-elite .show-hero h1 em{font-style:italic}.theme-elite .show-engine-hero{filter:sepia(.33) contrast(1.13) brightness(.75);clip-path:none;border:1px solid #aa8b56}.theme-elite .show-visual-label{background:#151618;color:#e9dec9;border:1px solid #765d39}.theme-elite .show-btn-main{background:linear-gradient(90deg,#ba944c,#f0d08d);color:#17120a}.theme-elite .show-promise{background:#141518;color:#d2c5b3}.theme-elite .show-finder-section{background:#101114}.theme-elite .show-finder{background:#1a1b1e;border-color:#594c38}.theme-elite .show-finder-heading strong{color:#f4e8d5}.theme-elite .show-finder-fields label{color:#d9ceb9}.theme-elite .show-finder-fields input{background:#0e0f10;border-color:#514738;color:#f9f4e9}.theme-elite .show-section-heading h2,.theme-elite .show-feature-text h2,.theme-elite .show-end-cta h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:#f6ecda}.theme-elite .show-category{border:1px solid #584a31}.theme-elite .show-brands{background:#141518}.theme-elite .show-brand-card{background:#1d1f21;border:1px solid #4b4338;color:#eee5d8}.theme-elite .show-brand-card strong{color:#e9decf}.theme-elite .show-feature{background:#08090b}.theme-elite .show-how{background:#101114}.theme-elite .show-steps>div{background:#1a1c1e;border-color:#4b4338}.theme-elite .show-steps h3{color:#f1e6d2}.theme-elite .show-blog{background:#141518}.theme-elite .show-blog-card{background:#1f2022;border:1px solid #4a3e2e;color:#f1e7d6}.theme-elite .show-end-cta{background:#181612;border-top:1px solid #c5a15a}.theme-elite .show-end-cta .show-btn-main{background:#c5a15a;color:#181513}.theme-elite .show-feature-text h2 em{font-style:italic}.theme-elite .page-header{background:linear-gradient(110deg,#08090b,#2c261a)}.theme-elite .section,.theme-elite .section-alt{background:#131416;color:#dad7d0}.theme-elite .section h2,.theme-elite .content h2{color:#dfc48b}.theme-elite .content p,.theme-elite .content li{color:#e1dbd1}.theme-elite .card,.theme-elite .confronto-card,.theme-elite .contact-form{background:#202124;color:#ebe5d9;border-color:#4e4435}.theme-elite .show-brand-card:hover,.theme-elite .show-blog-card:hover{color:#f6e8d2}.theme-elite .related-links,.theme-elite .faq-item,.theme-elite .blog-post{background:#161719;color:#ebe6dc}.theme-elite .show-all-link{color:#dfbd7e}
/* 04 GREEN · verde petrolio e lime, impatto responsabile */
body.theme-green{--show-accent:#83cf06;--show-accent2:#d5ff4e;--show-deep:#075149;--show-ink:#103f37;--show-soft:#f1f9f6;--show-muted:#4c746c;--show-tint:#e3fad2;--show-round:16px}.theme-green .show-topline{background:#00594f;color:#e4fff5}.theme-green .show-nav{background:#fff;border-bottom:1px solid #dcebe5;color:#194c42}.theme-green .show-nav a:hover,.theme-green .show-nav a.active{color:#075149;background:#d7f6bf}.theme-green .show-nav .header-cta{background:#85d209;color:#143c31}.theme-green .show-head-search button,.theme-green .show-btn-main{color:#183c2d}.theme-green .show-hero::before{background:radial-gradient(ellipse at 75% 32%,#30bda04f,transparent 55%),linear-gradient(95deg,#004f4b,#006f5d 70%,#054039)}.theme-green .show-hero::after{border-color:#adf31f;background:#bafc3510}.theme-green .show-hero h1 em{color:#bdff43}.theme-green .show-finder{border-radius:20px}.theme-green .show-feature{background:#004c46}.theme-green .show-end-cta{background:#0f5b4d}.theme-green .show-end-cta .show-btn-main{background:#aaf31c;color:#153d29}
/* 05 DRIVE · blu notte e arancio, taglio promozionale ma solo vetrina */
body.theme-drive{--show-accent:#ff710b;--show-accent2:#ffa135;--show-deep:#06152c;--show-ink:#10233d;--show-soft:#f2f6fc;--show-tint:#ffeddf;--show-round:9px}.theme-drive .show-topline{background:#06152c;color:#ecf4ff}.theme-drive .show-nav{background:#fff;color:#122c4e;border-top:1px solid #e6eaf1;border-bottom:2px solid #ff710b}.theme-drive .show-nav a:hover,.theme-drive .show-nav a.active{color:#fa700b;background:#fff2e8}.theme-drive .show-nav .header-cta{background:linear-gradient(90deg,#ff760a,#ff9c35);color:#fff}.theme-drive .show-hero::before{background:radial-gradient(ellipse at 68% 70%,#146bc25b,transparent 50%),linear-gradient(110deg,#05172d 8%,#0b2b52 65%,#06172e)}.theme-drive .show-hero::after{border-left:85px solid #ff780a;background:#104c9735}.theme-drive .show-hero h1{font-style:italic}.theme-drive .show-hero h1 em{color:#ff932b}.theme-drive .show-hero-visual .show-engine-hero{border-radius:8px}.theme-drive .show-feature{background:#071d3c}.theme-drive .show-end-cta{background:#fc7208}.theme-drive .show-btn-main{background:linear-gradient(90deg,#ff710b,#ff9c2b)}.theme-drive .show-end-cta .show-btn-main{background:#fff;color:#122c4e}
@media(max-width:1120px){.show-wrap{width:min(100% - 36px,1320px)}.show-logo{flex-basis:220px}.show-logo img{width:220px}.show-head-row{gap:14px}.show-nav a{padding:12px 10px;font-size:12px}.show-finder{grid-template-columns:1fr;gap:12px}.show-section{padding:48px 0}.show-hero h1{font-size:clamp(40px,5.5vw,68px)}.show-categories-grid{grid-template-columns:repeat(2,1fr)}.show-finder-fields{grid-template-columns:repeat(3,minmax(0,1fr)) auto}}
@media(max-width:820px){.show-top-inner{justify-content:center}.show-top-inner span:nth-child(n+3),.show-top-inner a{display:none}.show-head-row{min-height:76px}.show-logo{flex:1}.show-logo img{height:57px;max-width:240px}.show-head-search{display:none}.show-head-action{margin-left:auto}.show-header .hamburger-btn{display:flex;flex:0 0 44px;align-items:center;justify-content:center;height:42px;flex-direction:column;gap:6px;z-index:123;border-radius:8px;background:var(--show-soft)}.show-header .hamburger-btn span{width:22px;display:block;height:2px;background:var(--show-ink)}.show-nav{display:none;position:absolute;left:0;right:0;top:100%;box-shadow:0 14px 25px #0004;max-height:calc(100vh - 72px);overflow:auto}.show-nav.open,.show-nav.is-open,.show-nav.active{display:block}.show-nav .show-wrap{width:100%;display:block;padding:8px 20px}.show-nav li a{padding:12px 8px}.show-nav .nav-final{margin-left:0}.show-hero-grid{grid-template-columns:1fr 0.8fr}.show-hero-visual{min-height:320px}.show-engine-hero{height:300px}.show-hero-copy{padding:45px 0}.show-hero h1{font-size:clamp(35px,6vw,56px)}.show-visual-label{display:none}.show-mini-proof{font-size:11px}.show-steps{grid-template-columns:repeat(2,1fr)}.show-brand-cards{grid-template-columns:repeat(2,1fr)}.promise-grid{grid-template-columns:repeat(2,1fr);gap:0}.promise-grid>div:nth-child(2){border:0}.show-feature-grid{grid-template-columns:1fr 1fr;gap:25px}.show-feature-photo{height:100%;min-height:380px}.show-finder-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.show-blog-grid{gap:12px}.show-blog-card img{height:145px}}
@media(max-width:580px){.show-wrap{width:calc(100% - 32px)}.show-top-inner{min-height:29px}.show-top-inner span:nth-child(2){display:none}.show-head-action{font-size:12px}.show-head-action small{display:none}.head-action-icon{height:34px;width:34px}.show-hero-grid{display:flex;flex-direction:column;min-height:auto;gap:0}.show-hero-copy{padding:47px 0 8px}.show-hero h1{font-size:clamp(39px,11.5vw,56px)}.show-intro{font-size:15px}.show-hero-visual{min-height:240px;width:100%;overflow:hidden}.show-engine-hero{height:228px;width:100%;object-position:center}.show-orbit{height:280px;width:280px}.show-visual-index{bottom:19px}.show-mini-proof{margin-top:15px}.show-btn{padding:12px 16px}.show-hero::after{right:-420px}.show-promise{display:none}.show-finder-section{padding:16px 0}.show-finder-raised{margin-top:-10px}.show-finder{padding:18px;gap:12px}.show-finder-fields{grid-template-columns:1fr}.show-finder-fields input{height:42px}.show-finder-fields button{width:100%}.show-section{padding:45px 0}.show-section-heading{display:block}.show-section-heading h2,.show-feature-text h2{font-size:31px}.show-all-link{display:inline-block;margin-top:13px}.show-categories-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.show-category{min-height:190px;padding:11px}.show-category strong{font-size:16px}.show-category small{font-size:11px}.category-arrow{right:6px;bottom:9px;width:24px;height:24px;font-size:14px}.category-symbol{font-size:9px}.show-brand-cards{grid-template-columns:1fr;gap:9px}.show-feature-grid{display:block}.show-feature-photo{height:240px;min-height:auto}.show-feature-text{padding:35px 0}.show-steps{grid-template-columns:1fr 1fr;gap:9px}.show-steps>div{padding:15px}.show-steps span{font-size:25px}.show-steps h3{font-size:15px}.show-blog-grid{grid-template-columns:1fr}.show-blog-card img{height:205px}.show-blog-card strong{min-height:auto}.show-end-inner{display:block;padding:38px 0}.show-end-inner .show-btn{margin-top:18px}.green-grid{grid-template-columns:1fr}.green-grid img{height:190px}.theme-elite .show-hero h1{font-size:48px}}
/* Specificità necessaria: il vecchio progetto imposta #mainNav come pannello laterale. */
#mainNav.show-nav{position:relative;top:auto;right:auto;left:auto;height:auto;width:100%;transform:none;visibility:visible;display:block;border:0;box-shadow:none;padding:0;overflow:visible;background:var(--show-accent)}
#mainNav.show-nav ul.show-wrap{display:flex;flex-direction:row;align-items:center;gap:0;flex-wrap:wrap;white-space:normal;padding:0;list-style:none}
#mainNav.show-nav a{font-family:var(--font-sans);font-weight:700;text-transform:none;letter-spacing:0;font-size:13px;line-height:20px;border-radius:0;color:inherit;padding:13px 16px;display:block}
#mainNav.show-nav a:not(.header-cta)::after{display:none}
#mainNav.show-nav a:hover,#mainNav.show-nav a.active{background:#0002;color:inherit}
#mainNav.show-nav .header-cta{background:#151a23;border-radius:7px;color:#fff;margin:0;padding:9px 15px}
.theme-elite #mainNav.show-nav{background:#0a0b0d}.theme-elite #mainNav.show-nav a{color:#e9e1d1}.theme-elite #mainNav.show-nav .header-cta{background:#c5a15a;color:#13110e}
.theme-green #mainNav.show-nav{background:#fff}.theme-green #mainNav.show-nav a{color:#194c42}.theme-green #mainNav.show-nav .header-cta{background:#85d209;color:#153c2e}
.theme-drive #mainNav.show-nav{background:#fff}.theme-drive #mainNav.show-nav a{color:#132d4f}.theme-drive #mainNav.show-nav .header-cta{background:#ff710b;color:#fff}
@media(max-width:1150px){.show-header .hamburger-btn{display:flex;flex:0 0 44px;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:44px;height:44px;z-index:123;border-radius:8px;background:var(--show-soft)}.show-header .hamburger-btn span{height:2px;width:22px;background:var(--show-ink)}#mainNav.show-nav{display:none;position:absolute;top:100%;left:0;right:0;z-index:220;background:var(--show-deep);height:auto;width:100%;max-height:calc(100vh - 80px);overflow:auto;box-shadow:0 20px 26px #07172c35;transform:none;visibility:visible}#mainNav.show-nav.open{display:block;transform:none;visibility:visible}#mainNav.show-nav ul.show-wrap{display:block;width:calc(100% - 32px);padding:10px 0}#mainNav.show-nav a{color:#fff;padding:12px 10px}#mainNav.show-nav li.nav-final{margin-top:7px}#mainNav.show-nav .header-cta{margin:0} .theme-green #mainNav.show-nav{background:#f5fff7}.theme-drive #mainNav.show-nav{background:#f7faff}}
@media(max-width:580px){.show-head-row{min-height:73px}#mainNav.show-nav a{font-size:15px}}
/* Uniformità sulle pagine interne: preserva componenti originali senza mantenere
   i vecchi colori arancioni del tema di partenza. */
body[class*="theme-"]{--rosso:var(--show-accent);--rosso-scuro:var(--show-accent);--giallo:var(--show-accent2);--giallo-scuro:var(--show-accent2);--asfalto:var(--show-deep);--asfalto-2:var(--show-deep);--asfalto-3:var(--show-deep);--striscia:linear-gradient(90deg,var(--show-accent),var(--show-accent2));--linea:var(--show-line);--linea-forte:var(--show-line)}
body[class*="theme-"] .page-header{background:linear-gradient(110deg,var(--show-deep) 9%,var(--show-ink) 100%)!important}
body[class*="theme-"] .page-header:after{background:linear-gradient(90deg,var(--show-accent),transparent 60%)}
body[class*="theme-"] .eyebrow{color:var(--show-accent2)}
body[class*="theme-"] .site-footer:before{background:linear-gradient(90deg,var(--show-accent),transparent 75%)}
body[class*="theme-"] .cta-section{background:var(--show-deep)!important;color:#fff}
body[class*="theme-"] .cta-section h2{color:#fff}
body[class*="theme-"] .cta-section p,body[class*="theme-"] .cta-section p a{color:#dce6ed}
body[class*="theme-"] .cta-section .btn-primary{background:var(--show-accent);border-color:var(--show-accent);color:#fff}
body[class*="theme-"] .related-links-grid a:hover,body[class*="theme-"] .contact-card:hover{border-color:var(--show-accent)}
body.theme-tecnico .page-header{background:linear-gradient(120deg,#0a2d52,#0861bd)!important}
body.theme-corsa .page-header{background:linear-gradient(120deg,#0b0e13,#2b1b22)!important}
body.theme-elite{--testo:#e2dbce;--testo-muto:#b5ada1;--cemento:#121316;--superficie:#1d1e21;--sezione-alt:#18191c;--asfalto:#08090b;--linea:#4d4232;--linea-forte:#6b593e}
body.theme-elite .page-header{background:linear-gradient(120deg,#08090b,#342b1c)!important}
body.theme-elite .page-header h1,body.theme-elite .content h1,body.theme-elite .content h2,body.theme-elite .related-links h2,body.theme-elite .cta-section h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.025em}
body.theme-elite .section,body.theme-elite .section-alt{background:#121316}
body.theme-elite .cta-section{background:#242017!important;border-top:1px solid #a3874b!important}
body.theme-elite .cta-section .btn-primary{color:#18130b}
body.theme-elite .related-links{background:#101113}
body.theme-elite .related-links-grid a{background:#252423;border-color:#554733;color:#efdec4}
body.theme-elite .related-links-grid strong,body.theme-elite .faq-answer{color:#f1e2c8}
body.theme-elite .contact-form input,body.theme-elite .contact-form textarea,body.theme-elite .contact-form select{background:#141518;color:#f5eee0;border-color:#615442}
body.theme-elite .contact-form label{color:#e3d5bf}
body.theme-elite .section-alt .card{background:#1d1e21}
body.theme-elite .confronto-body dt,body.theme-elite .confronto-body dd{color:#e9dfcf}
body.theme-green .page-header{background:linear-gradient(120deg,#034a42,#087465)!important}
body.theme-green .cta-section{background:#005a4e!important}
body.theme-green .cta-section .btn-primary{color:#143e32}
body.theme-green .content h2{color:#0c4f42}
body.theme-drive .page-header{background:linear-gradient(120deg,#07182c,#174376)!important}
body.theme-drive .cta-section{background:#09254b!important}
body.theme-drive .content h2{color:#113d70}


/* === vetrina-funzioni.css === */
/* Funzioni vetrina · elementi comuni, cinque palette ereditate dalla variante */
[data-motor-app]{display:none}.motor-kicker{color:var(--show-accent);font-weight:800;letter-spacing:2.2px;text-transform:uppercase;font-size:11px;margin-bottom:8px}.motor-catalog-heading{padding:47px 0 54px;background:linear-gradient(115deg,var(--show-deep),#132b42);color:white;position:relative;overflow:hidden}.motor-catalog-heading:after{position:absolute;content:"";height:340px;width:310px;right:5%;top:-110px;transform:skew(-25deg);background:var(--show-accent);opacity:.12}.motor-catalog-heading h1{font-size:clamp(34px,4vw,59px);line-height:1.1;letter-spacing:-.04em;margin:0 0 14px;color:#fff;max-width:900px}.motor-catalog-heading p:last-child{max-width:750px;color:#e2e9ef;margin:0;font-size:17px}.motor-catalog-layout{display:grid;grid-template-columns:minmax(220px,285px) minmax(0,1fr);gap:28px;padding-top:39px;padding-bottom:72px;align-items:start}.motor-filter-panel{padding:24px;border-radius:var(--show-round);background:var(--show-soft);border:1px solid var(--show-line);position:sticky;top:16px}.motor-filter-panel h2{margin:0 0 18px;font-size:21px;color:var(--show-ink)}.motor-filter-form{display:flex;flex-direction:column;gap:13px}.motor-filter-form label{font-size:12px;font-weight:750;color:var(--show-ink);display:block}.motor-filter-form select,.motor-filter-form input{display:block;width:100%;margin-top:6px;background:var(--show-paper);color:var(--show-ink);border:1px solid var(--show-line);height:44px;box-sizing:border-box;border-radius:8px;padding:0 11px;font:inherit;font-size:13px}.motor-filter-form .show-btn{width:100%;font-size:13px;cursor:pointer}.motor-reset{align-self:center;font-size:13px;color:var(--show-accent);font-weight:750}.motor-filter-help{font-size:12px;line-height:1.6;color:var(--show-muted);margin:16px 0 0}.motor-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}.motor-results-toolbar h2{font-size:clamp(23px,2.5vw,33px);margin:0;color:var(--show-ink)}.motor-toolbar-links{display:flex;gap:10px;flex-wrap:wrap}.motor-toolbar-links a{color:var(--show-ink);border:1px solid var(--show-line);padding:8px 10px;border-radius:8px;font-weight:700;font-size:12px}.motor-toolbar-links span,.motor-header-save span{display:inline-grid;place-items:center;border-radius:50px;min-width:19px;height:19px;background:var(--show-accent);color:#fff;margin-left:5px;padding-inline:4px}.motor-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.motor-card{background:var(--show-paper);border:1px solid var(--show-line);border-radius:var(--show-round);overflow:hidden;box-shadow:0 5px 25px #0b1d320e;min-width:0;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.motor-card:hover{box-shadow:0 16px 35px #05182d22;transform:translateY(-3px)}.motor-card-visual{height:180px;position:relative;background:linear-gradient(135deg,#e7eaed,#f9fafb);overflow:hidden}.motor-card-visual img{height:100%;width:100%;object-fit:cover}.motor-card-tag{position:absolute;top:12px;left:12px;font-size:10px;font-weight:800;letter-spacing:.5px;color:var(--show-ink);background:#fff;padding:5px 9px;border-radius:6px;box-shadow:0 3px 8px #0002}.motor-card-body{padding:15px;display:flex;flex-direction:column;flex:1}.motor-eyebrow{font-size:10px;color:var(--show-accent);font-weight:800;letter-spacing:.6px;text-transform:uppercase}.motor-card h3{font-size:18px;margin:7px 0 6px;line-height:1.22;letter-spacing:-.025em;color:var(--show-ink)}.motor-models{font-size:12px;color:var(--show-ink);margin:0 0 7px;font-weight:700}.motor-note{font-size:12px;color:var(--show-muted);margin:0 0 10px;line-height:1.5;flex:1}.motor-disclaimer{font-size:10px;color:var(--show-muted);margin-bottom:11px;line-height:1.4}.motor-actions{display:flex;gap:7px;align-items:center}.motor-request{display:inline-flex;align-items:center;justify-content:center;background:var(--show-accent);color:#fff!important;font-size:12px;font-weight:800;padding:10px 11px;border-radius:8px;flex:1;text-align:center;line-height:1.3}.motor-more{padding:9px 7px;color:var(--show-ink);font-weight:800;font-size:11px;border:1px solid var(--show-line);border-radius:7px}.motor-card-tools{display:flex;gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid var(--show-line)}.motor-icon-btn{background:transparent;color:var(--show-muted);border:1px solid var(--show-line);cursor:pointer;padding:8px 10px;border-radius:7px;font:inherit;font-size:12px;font-weight:700;flex:1;white-space:nowrap}.motor-icon-btn.selected{border-color:var(--show-accent);color:var(--show-accent);background:var(--show-tint)}.motor-icon-btn:focus-visible,.motor-request:focus-visible,.motor-filter-form :focus-visible{outline:3px solid var(--show-accent2);outline-offset:3px}.motor-pagination{display:flex;align-items:center;justify-content:center;gap:17px;margin-top:30px}.motor-pagination a{padding:11px 18px;background:var(--show-accent);color:#fff;border-radius:8px;font-weight:700}.motor-pagination span{font-size:13px;color:var(--show-muted)}.motor-alert,.motor-bottom-help,.motor-empty{padding:22px;margin-bottom:25px;border-left:4px solid var(--show-accent);border-radius:10px;background:var(--show-soft);color:var(--show-ink)}.motor-alert strong{display:block}.motor-alert p,.motor-bottom-help p{font-size:13px;line-height:1.6}.motor-alert a{color:var(--show-accent);font-weight:800}.motor-bottom-help{margin-top:37px}.motor-bottom-help h2{margin:0 0 6px;color:var(--show-ink);font-size:25px}.motor-empty{text-align:center;padding:44px}.motor-empty h3{margin-top:0}.motor-saved-page,.motor-compare-page{padding-top:47px;padding-bottom:80px}.motor-saved-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:5px 0 23px}.motor-saved-heading h2,.motor-compare-page>h2{font-size:clamp(25px,2.5vw,37px);margin:0;color:var(--show-ink)}.motor-saved-heading p{color:var(--show-muted);margin:7px 0 0}.motor-saved-list{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.motor-compare-choice{border:1px solid var(--show-line);border-radius:var(--show-round);padding:20px;background:var(--show-paper)}.motor-compare-choice h3{font-size:20px;line-height:1.2;color:var(--show-ink)}.motor-compare-choice p{color:var(--show-muted);font-size:13px}.motor-compare-choice small{color:var(--show-muted)}.motor-compare-actions{display:flex;gap:10px;margin-top:17px}.motor-compare-types{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0 28px}.motor-compare-types article{background:var(--show-soft);border:1px solid var(--show-line);border-radius:var(--show-round);padding:25px}.motor-bubble{background:var(--show-accent);color:#fff;padding:9px 11px;border-radius:10px;font-weight:900}.motor-compare-types h3{margin:18px 0 10px;font-size:22px;color:var(--show-ink)}.motor-compare-types p{line-height:1.65;color:var(--show-muted);font-size:14px}.motor-compare-types a{color:var(--show-accent);font-weight:800}.motor-comparison-table{overflow-x:auto;border:1px solid var(--show-line);border-radius:10px;margin-bottom:50px}.motor-comparison-table table{width:100%;border-collapse:collapse;min-width:570px}.motor-comparison-table td,.motor-comparison-table th{border-bottom:1px solid var(--show-line);padding:15px 18px;text-align:left;color:var(--show-ink);font-size:13px}.motor-comparison-table thead{background:var(--show-deep)}.motor-comparison-table thead th{color:#fff}.motor-comparison-table th:first-child{white-space:nowrap}.motor-feedback{position:fixed;bottom:95px;right:20px;z-index:300;max-width:min(370px,calc(100vw - 35px));padding:13px 19px;border-radius:10px;color:#fff;background:var(--show-deep);box-shadow:0 10px 40px #0004;transform:translateY(20px);opacity:0;pointer-events:none;transition:transform .2s,opacity .2s;font-size:13px}.motor-feedback.active{transform:translateY(0);opacity:1}.motor-mega{position:relative}.motor-mega>summary{list-style:none;cursor:pointer;font-size:13px;font-weight:800;padding:13px 14px;user-select:none;white-space:nowrap}.motor-mega>summary::-webkit-details-marker{display:none}.motor-mega>summary::after{content:'⌄';margin-left:6px}.motor-mega[open]>summary{background:#0002}.motor-mega-menu{position:absolute;z-index:300;top:100%;left:0;min-width:232px;padding:10px;background:var(--show-paper);box-shadow:0 17px 39px #0003;border:1px solid var(--show-line);border-radius:0 0 10px 10px;display:flex;flex-direction:column;gap:3px}.motor-mega-menu a{color:var(--show-ink)!important;background:transparent!important;padding:10px 12px!important;white-space:nowrap;border-radius:5px!important;font-size:13px!important}.motor-mega-menu a:hover{background:var(--show-tint)!important;color:var(--show-ink)!important}.show-finder-fields.motor-finder-enhanced{grid-template-columns:1fr 1fr 1fr 1fr auto;gap:9px}.show-finder-fields select{display:block;width:100%;height:43px;box-sizing:border-box;border:1px solid #d5dce5;background:#f8fafc;margin-top:6px;padding:0 11px;color:#1c2734;border-radius:7px;font:inherit;font-size:13px}.show-finder-fields select:disabled{background:#e5ebf0;color:#6f7780}.motor-home-highlights{padding:56px 0;background:var(--show-paper)}.motor-home-highlights .motor-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.motor-home-highlights .motor-card-visual{height:145px}.motor-home-highlights .motor-card h3{font-size:17px}.motor-home-highlights .motor-note{display:none}.motor-home-highlights .motor-card-tools{margin-top:10px}.motor-cta-inline{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--show-line);border-radius:var(--show-round);background:var(--show-soft);padding:25px 28px;margin-top:25px}.motor-cta-inline h3{margin:0 0 7px;font-size:23px;color:var(--show-ink)}.motor-cta-inline p{margin:0;color:var(--show-muted);font-size:13px}.motor-header-save{font-size:13px;font-weight:800;color:var(--show-ink);white-space:nowrap}.show-head-row .motor-header-save{margin-left:-18px}.motor-home-tabs{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-start}.motor-home-tabs [data-motor-tab]{cursor:pointer;background:transparent;color:var(--show-muted);border:1px solid var(--show-line);padding:8px 14px;border-radius:25px;font-weight:700;font-size:12px}.motor-home-tabs [data-motor-tab].active{color:#fff;border-color:var(--show-accent);background:var(--show-accent)}
/* Variant-specific differentiation remains separate from shared behavior. */
.theme-elite .motor-catalog-heading{background:linear-gradient(110deg,#080808,#302819)}.theme-elite .motor-card,.theme-elite .motor-compare-choice,.theme-elite .motor-filter-form input,.theme-elite .motor-filter-form select{background:#202124}.theme-elite .motor-card-tag{color:#1b180f;background:#edd3a1}.theme-elite .motor-card-visual{background:#08090a}.theme-elite .motor-request{color:#18140b!important}.theme-elite .motor-filter-panel,.theme-elite .motor-compare-types article{background:#1b1c1f}.theme-elite .motor-icon-btn{color:#e5d7be}.theme-elite .motor-icon-btn.selected{color:#f0d9a7}.theme-elite .motor-comparison-table thead{background:#08090a}.theme-elite .motor-comparison-table td,.theme-elite .motor-comparison-table th{color:#ded5c9}.theme-elite .motor-alert,.theme-elite .motor-bottom-help{background:#25231d}.theme-elite .motor-saved-heading h2{color:#efe2ce}
.theme-green .motor-catalog-heading{background:linear-gradient(110deg,#004c44,#147460)}.theme-green .motor-card-tag{background:#d6ff65}.theme-green .motor-request,.theme-green .motor-bubble,.theme-green .motor-pagination a{color:#143523!important}.theme-green .motor-toolbar-links span,.theme-green .motor-header-save span{color:#153524}
.theme-tecnico .motor-catalog-heading{background:linear-gradient(110deg,#0a2342,#136ac4)}.theme-tecnico .motor-compare-types article{border-top:4px solid #1172d9}
.theme-corsa .motor-catalog-heading{background:linear-gradient(120deg,#080a0d,#40212a)}.theme-corsa .motor-card-tag{border-left:3px solid #e51524}.theme-corsa .motor-icon-btn.selected{background:#ffeef0}
.theme-drive .motor-catalog-heading{background:linear-gradient(110deg,#05162e,#214a78)}.theme-drive .motor-cta-inline{border-left:5px solid #ff710b}.theme-drive .motor-request{background:linear-gradient(90deg,#ff710b,#ffa135)}
@media(max-width:1260px){.show-head-row .motor-header-save{display:none}.show-finder-fields.motor-finder-enhanced{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.motor-home-highlights .motor-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.motor-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.motor-catalog-layout{grid-template-columns:1fr}.motor-filter-panel{position:relative;top:0}.motor-filter-form{display:grid;grid-template-columns:repeat(3,1fr)}.motor-filter-form .show-btn{align-self:end}.motor-compare-types{grid-template-columns:1fr}.motor-saved-list{grid-template-columns:repeat(2,1fr)}.motor-mega-menu{position:relative;box-shadow:none;min-width:0;background:var(--show-soft)}.motor-mega>summary{color:#fff}.theme-green .motor-mega>summary,.theme-drive .motor-mega>summary{color:var(--show-ink)}}
@media(max-width:650px){.motor-catalog-heading{padding:34px 0 39px}.motor-catalog-heading h1{font-size:34px}.motor-catalog-heading p:last-child{font-size:14px}.motor-filter-form{grid-template-columns:1fr 1fr}.motor-results-toolbar{display:block}.motor-toolbar-links{margin-top:12px}.motor-card-grid,.motor-home-highlights .motor-card-grid,.motor-saved-list{grid-template-columns:1fr}.motor-card-visual{height:220px}.motor-home-highlights .motor-card-visual{height:210px}.motor-cta-inline,.motor-saved-heading{display:block}.motor-cta-inline .show-btn,.motor-saved-heading .show-btn{margin-top:14px}.show-finder-fields.motor-finder-enhanced{grid-template-columns:1fr}.motor-compare-types{gap:11px}.motor-filter-panel{padding:17px}.motor-filter-form{grid-template-columns:1fr}.motor-compare-choice{padding:17px}.motor-pagination{gap:9px}.motor-pagination a{font-size:12px;padding:10px}}

.motor-home-tabs a{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;background:transparent;color:var(--show-muted);border:1px solid var(--show-line);padding:8px 14px;border-radius:25px;font-weight:700;font-size:12px}.motor-home-tabs a.active,.motor-home-tabs a:hover{color:#fff;background:var(--show-accent);border-color:var(--show-accent)}.theme-green .motor-home-tabs a.active,.theme-green .motor-home-tabs a:hover,.theme-elite .motor-home-tabs a.active,.theme-elite .motor-home-tabs a:hover{color:#143523}

/* SEO intent and code verification: real form, responsive */
.seo-intent-hub .cards-grid{margin-bottom:18px}
.seo-intent-hub>.container>p{max-width:920px;line-height:1.65}
.seo-code-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:22px 0 28px;padding:18px;border:1px solid #d9e1eb;border-radius:12px;background:#f3f6fa}
.seo-code-form label{width:100%;font-weight:700}
.seo-code-form input{min-height:44px;flex:1;min-width:200px;border-radius:6px;border:1px solid #aab6c3;padding:10px 12px;font:inherit}
.seo-code-form .btn{white-space:normal}
@media(max-width:600px){.seo-code-form{flex-direction:column;align-items:stretch}.seo-code-form input{width:100%}}


/* === Preventivo in homepage & navigazione sito === */
.home-quote{scroll-margin-top:18px;padding-top:clamp(40px,5vw,70px);padding-bottom:clamp(40px,5vw,70px)}
.home-quote-grid{align-items:start;gap:clamp(26px,5vw,75px)}
.home-quote-copy{padding-top:14px}
.home-quote-copy h2{font-size:clamp(29px,3.5vw,46px);line-height:1.16;margin-bottom:18px;letter-spacing:-.025em}
.home-quote-copy>p:not(.small){font-size:17px;line-height:1.7}
.home-quote .contact-form{margin:0;min-width:0;box-shadow:0 18px 45px rgba(5,29,56,.13);border-top:5px solid #ff790c}
.sitemap-html{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:36px}
.sitemap-html section{min-width:0}.sitemap-html h2{font-size:23px;margin:0 0 18px}
.sitemap-html ul{margin:0;padding:0;list-style:none;columns:1}
.sitemap-html li{margin-bottom:10px}.sitemap-html a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:750px){.home-quote-grid{display:block}.home-quote-copy{margin-bottom:27px}.home-quote .contact-form{width:100%;box-sizing:border-box}}


/* Foto nelle pagine interne: formato responsive, basso impatto CLS. */
.article-photo{margin:0 0 2.15rem}.article-photo img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:16px}.article-photo figcaption{font-size:.8rem;opacity:.7;margin-top:.4rem}.marca-photo{margin:0 0 1rem}.marca-photo img{width:100%;height:auto;max-height:230px;object-fit:cover;border-radius:12px;display:block}


/* Recensioni: versione blu/arancio coerente con il tema Drive, senza librerie JS. */
.theme-drive .show-reviews{padding:clamp(54px,6vw,88px) 0;background:linear-gradient(160deg,#f4f7fc,#fff 72%)}
.theme-drive .show-reviews-heading{margin-bottom:27px}
.theme-drive .show-reviews-heading h2{color:#0a2444}
.theme-drive .show-reviews-heading p:not(.show-overscript){color:#526577;font-size:16px;margin:10px 0 0;line-height:1.6}
.theme-drive .show-reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 25px;align-items:stretch}
.theme-drive .show-review{min-width:0;display:flex;flex-direction:column;background:#fff;color:#152a43;padding:clamp(22px,2.5vw,34px);border:1px solid #dce5f1;border-left:5px solid #ff790e;border-radius:15px;box-shadow:0 10px 28px rgba(8,37,70,.07);transition:transform .18s ease,box-shadow .18s ease}
.theme-drive .show-review:hover{transform:translateY(-3px);box-shadow:0 17px 34px rgba(8,37,70,.11)}
.theme-drive .show-review-stars{color:#fa780f;letter-spacing:.16em;font-size:22px;line-height:1.3;margin-bottom:17px}
.theme-drive .show-review-quote{margin:0 0 26px;padding:0;border:0;flex:1}
.theme-drive .show-review-quote p{margin:0;color:#233a50;font-size:clamp(16px,1.25vw,18px);font-style:italic;line-height:1.74;overflow-wrap:anywhere}
.theme-drive .show-review-author{display:flex;align-items:center;gap:14px;margin-top:auto}
.theme-drive .show-review-avatar{width:51px;height:51px;flex:0 0 51px;display:grid;place-items:center;background:#0a3156;color:#fff;font-weight:800;font-size:22px;border-radius:50%}
.theme-drive .show-review-person{min-width:0;display:flex;flex-direction:column;gap:3px;line-height:1.36}
.theme-drive .show-review-person strong{color:#0b2341;font-size:17px}
.theme-drive .show-review-person span{color:#617387;font-size:14px}
.theme-drive .show-review-disclosure{margin:15px 0 0;padding-top:10px;border-top:1px solid #e7edf4;color:#536779;font-size:12px;line-height:1.45}
.theme-drive .show-reviews-fineprint{max-width:940px;color:#5e7185;font-size:12px;line-height:1.6;margin:20px 0 0}
@media(max-width:790px){.theme-drive .show-reviews-grid{grid-template-columns:1fr;gap:15px}.theme-drive .show-review{padding:24px}}
@media(prefers-reduced-motion:reduce){.theme-drive .show-review{transition:none}.theme-drive .show-review:hover{transform:none}}


/* Patch recensioni archivio: dati reali, stelle variabili, titolo e date. */
.theme-drive .show-reviews-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.theme-drive .show-reviews-source{font-size:13px;line-height:1.65;color:#415773;background:#eaf1fa;border-left:3px solid #fa790f;border-radius:7px;padding:13px 16px;margin:0 0 23px}
.theme-drive .show-reviews-source strong{color:#0a2444}
.theme-drive .show-review-top{display:flex;align-items:start;justify-content:space-between;gap:10px;margin-bottom:14px;flex-wrap:wrap}
.theme-drive .show-review-top .show-review-stars{margin:0;letter-spacing:.06em;white-space:nowrap}
.theme-drive .show-review-empty-stars{color:#aebbc9}
.theme-drive .show-review-date{font-size:13px;color:#62738a;white-space:nowrap;padding-top:5px}
.theme-drive .show-review-title{color:#0b2444;font-size:clamp(17px,1.3vw,19px);line-height:1.45;margin:0 0 11px;overflow-wrap:anywhere}
.theme-drive .show-review-quote{margin:0 0 24px}
.theme-drive .show-review-quote p{font-style:normal;font-size:15px;line-height:1.65;white-space:normal}
.theme-drive .show-review-experience{font-size:12px;color:#617387;margin:14px 0 0;padding-top:10px;border-top:1px solid #e7edf4}
.theme-drive .show-reviews-fineprint a{color:#cf5900;text-decoration:underline;text-underline-offset:2px}
@media(max-width:790px){.theme-drive .show-review-title{font-size:17px}.theme-drive .show-review-quote p{font-size:15px}}
