/* AnimatriX · prova grafica chiara */
:root {
  color-scheme: light;
  --ax-paper: #fff;
  --ax-soft: #f5f6f7;
  --ax-ink: #20242a;
  --ax-muted: #505861;
  --ax-border: #d9dde2;
  --ax-accent: #b9232c;
  --ax-link: #174777;
}
body { background: var(--ax-paper) !important; color: var(--ax-ink) !important; }
header { background: rgba(255,255,255,.97); border-color: var(--ax-border); color: var(--ax-ink); }
nav a, .breadcrumbs { color: var(--ax-muted); }
nav a:hover, .eyebrow, .brand span, .card small { color: var(--ax-accent); }
.nav-dropdown-menu, nav .ax61-products-menu {
  background: var(--ax-paper);
  border-color: var(--ax-border);
  box-shadow: 0 10px 24px #20242a24;
}
.nav-dropdown-menu a, nav .ax61-products-menu a { border-color: var(--ax-border); }
.nav-dropdown-menu a:hover, nav .ax61-products-menu a:hover { background: var(--ax-soft); color: var(--ax-accent); }
.hero-copy, .page-hero { background: var(--ax-soft); }
.hero img, .hero-mini, .card img { filter: none; }
.section, .page-hero, .specs, .spec, .list-links, .list-links a, .tag { border-color: var(--ax-border); }
.lead, .section-head > p, .card p, .spec b, .tag, .list-links a, .ax133-row p, small { color: var(--ax-muted); }
.card, .box, .darkbox, .ax133-section {
  background: var(--ax-paper);
  border-color: var(--ax-border);
  color: var(--ax-ink);
  box-shadow: 0 5px 20px #20242a0b;
}
.ax133-row, li { border-color: var(--ax-border); }
.ax-gallery-main, .ax-gallery-thumb, .ax133-row img, .product-layout .main-image,
.gallery img, .ax194-gallery a, .ax117-project-photos img, .ph, .cards .card .ph {
  background: var(--ax-soft);
}
.ax-gallery-thumb { border-color: var(--ax-border); }
.ax-gallery-thumb.active { border-color: var(--ax-accent); }
input, textarea, select { background: var(--ax-paper); border-color: var(--ax-border); color: var(--ax-ink); }
.button, .btn, .ax133-action {
  border-color: var(--ax-accent);
  background: var(--ax-paper) !important;
  color: var(--ax-accent) !important;
}
.button:hover, .btn:hover, .ax133-action:hover { background: #fff1f2 !important; }
.list-links a:hover { color: var(--ax-accent); background: var(--ax-soft); }
.sector-card { border-color: var(--ax-border); }
.sector-overlay, .sector-overlay p, .sector-overlay small { color: #fff; }
.notice { background: #fff8eb; border-color: #ddcba4; color: #624a17; }
footer { background: var(--ax-soft); border-color: var(--ax-border); color: var(--ax-muted); }
body > a { color: var(--ax-accent); }

/* Gli stili storici delle singole pagine usano anche !important. */
body > header { background: #fff !important; border-color: var(--ax-border) !important; }
body > header .brand { color: var(--ax-ink) !important; }
body > header a,
body > header nav > a,
body > header nav > .ax61-products > a,
body > header nav .ax61-products-menu > a { color: var(--ax-muted) !important; }
body > header nav a:hover,
body > header nav a:focus-visible,
body > header nav .ax61-products-menu > a:hover { color: var(--ax-accent) !important; }
body > header nav .ax61-products-menu { background: #fff !important; border-color: var(--ax-border) !important; }
body > header nav .ax61-products-menu > a { border-color: var(--ax-border) !important; }
body > header nav .ax61-products-menu > a:hover { background: var(--ax-soft) !important; }
.ax181-lang a { background: #fff !important; border-color: var(--ax-border) !important; }
.ax181-lang a.ax200-current, .ax181-lang a[aria-current="page"] { background: #fff1f2 !important; border-color: var(--ax-accent) !important; }
.ax181-lang a.ax200-current::after { color: var(--ax-accent); }
body > footer { background: var(--ax-soft); color: var(--ax-muted); }
body > footer .brand, body > footer .ax174-social-heading { color: var(--ax-ink); }
body > footer a:hover { color: var(--ax-accent); }
.ax174-social a { background: #fff; color: var(--ax-ink) !important; border-color: var(--ax-border); }
.ax174-social a:hover { background: #fff1f2; color: var(--ax-accent) !important; }
.ax194-action { background: #fff; color: var(--ax-accent) !important; }
.ax194-action:hover { background: #fff1f2; }
.card span { color: var(--ax-accent); }
main a:not(.button):not(.btn):not(.ax133-action):not(.ax194-action) { color: inherit; }
main a.sector-card, main a.sector-card:hover { color: #fff !important; }
body > a, body > #tracks, body > #count { color: var(--ax-ink); }
body > select, body > p > select { background: #fff; color: var(--ax-ink); }
[style="color:#777"] { color: var(--ax-muted) !important; }

/* V211: descrizioni prodotto generate e testo formattato. */
.ax-product-description {
  background: var(--ax-paper) !important;
  border-color: var(--ax-border) !important;
  color: var(--ax-ink) !important;
}
.ax-product-description .ax-product-description-text,
.ax-product-description .ax-product-description-text :is(p, li, span, strong, em, small, h2, h3, h4) {
  color: var(--ax-ink) !important;
}
.ax-product-description .ax-product-description-text a {
  color: var(--ax-link) !important;
  text-decoration: underline;
}

/* Gallerie e schede ereditate dai modelli precedenti. */
.product-layout .ax-gallery-main,
.product-layout .ax-gallery-thumb,
.ax194-gallery a,
#portfolioPhotos img,
.ax117-project-photos img {
  background-color: var(--ax-soft);
}
.ax133-action[aria-expanded="true"] {
  background: #fff1f2 !important;
}

/* Anche quando il tema arriva dal foglio prodotto, prima degli stili inline. */
body > footer {
  background: var(--ax-soft) !important;
  border-color: var(--ax-border) !important;
  color: var(--ax-muted) !important;
}
body > footer .brand { color: var(--ax-ink) !important; }
.product-layout .ax-gallery-main,
.product-layout .ax-gallery-thumb {
  background-color: var(--ax-soft) !important;
}

/* Testi e link dei modelli pubblici che avevano colori propri. */
#portfolioIntro h2 {
  color: var(--ax-ink);
}
#portfolioIntro p,
#portfolioText,
.ax-back,
.ax-empty,
.crumb,
.ph,
.cards .card .ph,
main > p,
body > #count,
body > #tracks,
body > p {
  color: var(--ax-muted);
}
body > header .brand span,
body > footer .brand span {
  color: var(--ax-accent);
}
main :is(p, .box, .darkbox, #portfolioText) a:not(:is(.button, .btn, .ax133-action, .ax194-action)),
body > a,
body > #tracks a {
  color: var(--ax-link);
  text-decoration: underline;
}
main :is(p, .box, .darkbox, #portfolioText) a:not(:is(.button, .btn, .ax133-action, .ax194-action)):hover,
body > a:hover,
body > #tracks a:hover {
  color: var(--ax-accent);
}
