

/* === PROPOSTA GRAFICA: STUDIO === */
/* Pieffe Auto | Proposta Studio
   Override conservativo da caricare dopo site.css e comune.css.
   L'aggancio positivo identifica le 21 pagine pubbliche del kit.
   Prima dell'integrazione verificare lo scoping sui body pubblici del sito reale:
   nessuna variabile globale, nessun selettore dell'area riservata.
   Nessuna risorsa, nessun font aggiuntivo; rapporto e ritaglio foto invariati. */

:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) {
  --ink: #162331;
  --ink-2: #3c4b59;
  --ink-3: #536272;
  --stone: #f6f8fa;
  --stone-2: #edf1f5;
  --stone-3: #d9e1e9;
  --paper: #ffffff;
  --line: #cbd5df;
  --line-2: #dce3ea;
  --blue: #0e4a7b;
  --blue-2: #0b3e69;
  --blue-soft: #eaf1f8;
  --night: #0e2740;
  --night-2: #13364f;
  --night-3: #214864;
  --saffron: #f2a30f;
  --saffron-2: #ffb933;
  --saffron-soft: #fff2d8;
  --sea: #e5f0f7;
  --radius-sm: 7px;
  --radius: 10px;
  --radius-lg: 14px;
  --shadow-sm: none;
  --shadow: 0 2px 8px rgb(14 39 64 / 5%);
  --shadow-lg: 0 5px 18px rgb(14 39 64 / 6%);
  background: var(--stone);
}

/* Intestazione chiara, navigazione netta e ricerca come primo strumento. */
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .site-header,
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .site-header.is-scrolled {
  background: #ffffff;
  border-bottom-color: var(--line-2);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .main-nav a { border-radius: 6px; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .main-nav a[aria-current=page] {
  color: var(--blue);
  background: var(--blue-soft);
  box-shadow: none;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero {
  background: linear-gradient(180deg, #ffffff 0%, #f4f7fa 100%);
  border-bottom: 1px solid var(--line-2);
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero .display {
  color: var(--blue);
  font-stretch: 106%;
  font-weight: 780;
  letter-spacing: -.035em;
  line-height: 1.05;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero .hl {
  background: none;
  padding-inline: 0;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) :is(.section-title, .page-title) {
  font-stretch: 106%;
  letter-spacing: -.025em;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .eyebrow { letter-spacing: .11em; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .finder {
  padding: clamp(16px, 2vw, 22px);
  border-color: #c5d2df;
  box-shadow: none;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .finder__tabs {
  background: var(--stone-2);
  border-radius: 8px;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .finder__tabs span { border-radius: 5px; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .finder__tabs input:checked + span {
  background: var(--blue);
  color: #fff;
  box-shadow: none;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .finder__tabs input:checked + span b { color: #fff; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero__feature {
  border-radius: 14px;
  box-shadow: none;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero__feature-tag { border-radius: 6px; }

/* Angoli più geometrici; colori semantici di promo, km 0 e WhatsApp preservati. */
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) :is(.btn, .icon-btn, .actionbar__btn) {
  border-radius: 7px;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .btn--primary { box-shadow: none; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .btn--ghost { border-color: #7c8997; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) :is(.chip, .stage-tabs, .stage-tabs a, .segmented span) { border-radius: 7px; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .stage-tabs { border: 1px solid var(--line-2); }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .stage-tabs a[aria-current=page] {
  box-shadow: none;
  border: 1px solid var(--line);
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .field :is(input, select, textarea) { border-radius: 7px; }

/* Auto: foto intatte, prezzi più evidenti, separatori sottili. */
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard { border-color: #d3dde6; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard__body { padding: 16px 18px 18px; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard__title {
  font-stretch: 104%;
  line-height: 1.18;
  font-weight: 770;
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard .price__value:not(.price__value--ask) { font-size: 1.48rem; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .price:not(.price--offerta):not(.price--promo):not(.price--listino) .price__value { color: var(--blue); }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard__cta { margin-inline: 18px; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard--offerta { border-color: var(--red-line); }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) :is(.vdp__card, .vdp__section, .sim, .lead) { box-shadow: none; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) :is(.body-tile, .service-card, .brand-logos__item, .sede, .info-card, .help-strip) { border-color: #d3dde6; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .service-card__icon {
  border-radius: 9px;
  background: var(--blue-soft);
  color: var(--blue);
}
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .body-tile:hover .silhouette { color: var(--blue); }

/* Sezioni scure come contrappunto, segni PF quasi in filigrana. */
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .section--night { background: var(--night); }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .contact-band { background: var(--night); }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .contact-band::before { opacity: .08; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .contact-band::after { opacity: .04; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .site-footer__title { color: #e7eff5; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .page-head { background: #fff; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .actionbar { box-shadow: none; }

@media (hover: hover) {
  :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) :is(.vcard, .body-tile, .brand-logos__item, .service-card):hover {
    transform: translateY(-2px);
    box-shadow: none;
  }
}
@media (max-width: 760px) {
  :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero { padding-block: 28px 36px; }
  :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero .display { font-size: clamp(2.15rem, 1.3rem + 3.8vw, 3.5rem); }
  :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .finder { padding: 16px; }
}
@media (max-width: 400px) {
  :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard__body { padding-inline: 16px; }
  :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard .price__value:not(.price__value--ask) { font-size: 1.4rem; }
}


/* Leggibilità e interazione: interventi comuni alle tre proposte. */
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) { --control-line: #7c8997; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) input:where([type=text],[type=search],[type=email],[type=tel],[type=date],[type=number],:not([type])),
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) select,
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) textarea { border-color: var(--control-line); }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .section--night :focus-visible,
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .contact-band :focus-visible,
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .site-footer :focus-visible,
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .hero__feature:focus-visible { outline: 3px solid #ffb933; outline-offset: 4px; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .gallery__nav { opacity: 1; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .gallery__thumbs button { min-height: 44px; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vcard:hover .vcard__media img { transform: none; }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .save-btn { border: 1px solid var(--line); }
:where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) .vdp__ctas > .btn--primary { min-height: 54px; }
@media(prefers-reduced-motion:reduce) {
  :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) *, :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) *::before, :where(body:has(> .site-header):not(:has([class^="admin"],[class*=" admin"],[class^="adm"],[class*=" adm"]))) *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* --- adattamento al nuovo menu (ottobre 2026): voci di primo livello, voce «Auto» e pannello --- */
.main-nav > ul > li > a, .nav-mega__btn { border-radius: 6px; }
.main-nav > ul > li > a[aria-current=page], .nav-mega__btn[data-current] { color: var(--blue); background: var(--blue-soft); box-shadow: none; }
.nav-mega.is-open .nav-mega__btn { color: var(--blue); background: var(--blue-soft); box-shadow: none; }
.mega { border-radius: 10px; }
.mega-item, .mega__links a, .mega-item__icon { border-radius: 7px; }
.mega__promo, .sheet .mega-item, .sheet__quick a, .sheet__nav, .sheet__promo { border-radius: 8px; }
