/* EXPLUSULTRA — proposta locale, 21 ottobre 2026.
   Caricare DOPO gli stili attuali. Non è un foglio pronto per pubblicazione:
   verificare le eccezioni fotografiche e gli stili inline su ogni pagina. */
:root {
  --page:#F4F7FA; --surface:#FFFFFF; --surface-alt:#EAF0F5;
  --heading:#12324A; --body:#334B5E; --muted-text:#526879;
  --brand:#006B78; --brand-hover:#00535E; --line:#CBD5DF;
  --warning:#946200; --danger:#B42318; --success:#176B42;
  /* Alias dei token esistenti: home e PV */
  --steel-900:var(--page); --steel-800:var(--surface);
  --steel-700:var(--surface-alt); --steel-600:var(--line);
  --steel-500:#B8C6D2; --steel-400:var(--muted-text);
  --steel-300:var(--muted-text); --steel-200:var(--body);
  --steel-100:var(--body); --white:var(--heading);
  --text:var(--body); --text-dim:var(--muted-text);
  --amber:var(--brand); --amber-l:var(--brand-hover);
  --amber-d:#E2F0F2; --amber-b:#85B7BE; --teal:var(--brand);
  --red:var(--danger); --signal-yellow:var(--warning);
  --signal-orange:#A5420B;
  /* Alias SPM: --amber viene corretto sotto per conservare il significato warning. */
  --ink:var(--page); --steel:var(--surface); --steel-light:var(--surface-alt);
  --teal-dim:var(--brand-hover); --off:var(--body); --muted:var(--muted-text);
  --border:var(--line); --border-light:#B8C6D2;
}
body {cursor:auto;}
body::before,body::after {display:none;}
nav,.topbar {background:rgba(255,255,255,.97);}
a {color:var(--brand);}
a:hover {color:var(--brand-hover);}
input,select,textarea {color:var(--heading);background:var(--surface);}
input::placeholder,textarea::placeholder {color:var(--muted-text);opacity:1;}
input,select,textarea {border-color:#7B8F9F!important;}
.btn-primary,.nav-cta,.dl-btn,.download-btn,.form-submit,
.sticky-mobile-bar a:last-child,.lang-btn.active {
  background:var(--brand)!important;color:#FFFFFF!important;
}
.btn-primary:hover,.nav-cta:hover,.dl-btn:hover,.download-btn:hover {
  background:var(--brand-hover)!important;color:#FFFFFF!important;
}
.nav-cta {display:inline-flex;white-space:nowrap;align-items:center;}
:is(a,button,input,select,textarea):focus-visible {
  outline:3px solid var(--brand);outline-offset:3px;
}
.dl-gate-badge,.dl-preview::before,.ticker-item {color:#FFFFFF;}
.hero-right,.map-visual {--white:#FFFFFF;--text:#E5EDF3;--amber:#69D4E0;--steel-300:#BCCDD9;}
.hero-right {background:#12324A;}
.hero-right .corner-label,.hero-right #slide-sub,.hero-right #slide-label {color:#D8E5EE!important;}
.market-block {--white:#FFFFFF;--text-dim:#E5EDF3;--steel-300:#E5EDF3;--amber:#69D4E0;}
.market-block:hover .market-name {color:#FFFFFF;}
.market-desc,.spec-row,.service-cta-hint {opacity:1!important;}
.wa-bubble,.wa-pulse {background:#176B42;color:#FFFFFF;box-shadow:none;}
.wa-bubble {display:none!important;} /* Un solo accesso WhatsApp flottante */
.wa-pulse::before,.wa-pulse::after {animation:none;}
.btn-wa {color:#176B42;border-color:#176B42;background:#E9F4ED;}
.form-label,.dl-label,.field label,.contact-label {font-size:11px;letter-spacing:.08em;}
.service-desc,.pillar-desc,.product-desc {font-weight:400;}
.form-note,.dl-note {font-size:11px;}
section[id] {scroll-margin-top:110px;}
/* La pagina PV conserva l'immagine hero con una vera eccezione scura. */
body[data-preview-page="pv"] .page-hero {
  --white:#FFFFFF;--text:#E5EDF3;--steel-200:#D8E5EE;
  --steel-300:#D8E5EE;--amber:#69D4E0;--amber-b:#85B7BE;
}
body[data-preview-page="pv"] .page-hero :is(.badge-amber,.badge-dim) {
  color:#12324A;background:#E2F0F2;border-color:#85B7BE;
}
body[data-preview-page="pv"] .page-hero .btn-wa {
  color:#176B42!important;background:#E9F4ED!important;border-color:#176B42!important;
}
/* SPM usa un sistema di variabili separato. */
body[data-preview-page="spm"] {--amber:var(--warning);}
body[data-preview-page="spm"] .hero {
  --white:#FFFFFF;--muted:#D8E5EE;--teal:#69D4E0;--amber:#FFD17A;
}
body[data-preview-page="spm"] .hero .btn-primary {background:#006B78!important;}
.stats-bar,.docs-section,.contact-section {background:var(--surface-alt);}
/* Foto SPM scontornate: fondo fisso indipendente dal tema della pagina.
   Preserva la resa delle trasparenze preparate sul fondo scuro originale. */
body[data-preview-page="spm"] .prod-img-wrap {background:#0D1117;isolation:isolate;}
body[data-preview-page="spm"] .prod-img,
body[data-preview-page="spm"] .prod-card:hover .prod-img {
  filter:none;mix-blend-mode:normal;opacity:1;
}
body[data-preview-page="spm"] .prod-img-caption {
  color:#D8E5EE;background:linear-gradient(transparent,rgba(13,17,23,.95));
}
body[data-preview-page="spm"] .prod-wide {
  background:#0D1117;filter:none;mix-blend-mode:normal;opacity:1;
}
.tag-ex {color:var(--danger);border-color:var(--danger);}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}
