/* ============================================================
   EFESTO - Leggibilità
   Caricato per ULTIMO in ogni pagina: alza i testi troppo piccoli
   (etichette, menu, pulsanti, schede, piè di pagina) a dimensioni
   leggibili. Soglie: testo corrente ≥ 15px, testo secondario ≥ 14px,
   etichette maiuscole ≥ 12px, campi dei moduli 16px (niente zoom su iPhone).
   Usa !important perché i fogli delle singole pagine hanno selettori più specifici.
   Se un testo sembra ancora piccolo, aggiungere qui la regola.
   ============================================================ */

/* — Menu principale — */
.nav-links a { font-size: 1.05rem !important; }
.nav.nav-home .nav-links a { font-weight: 600 !important; }   /* home: voci bianche e più evidenti (08/10/2026) */
.nav-cta { font-size: .9rem !important; }
.breadcrumb, .breadcrumb a, .breadcrumb span { font-size: .85rem !important; }

/* — Pulsanti — */
.btn { font-size: .85rem !important; }
.btn-lg { font-size: .95rem !important; }
.btn-sm { font-size: .8rem !important; }
.journal-link, .ref-link, .proj-link { font-size: .85rem !important; }

/* — Etichette di sezione e tag (maiuscole spaziate) — */
.section-label { font-size: .8rem !important; }
.sys-tag, .ref-tag, .svc-card-tag, .art-hero-tag, .proj-hero-tag, .product-tag, .journal-tag,
.catalog-comp-code, .catalog-comp-name, .catalog-render-label,
.art-meta-label, .proj-meta-label, .art-data-label, .proj-spec-label,
.journal-filter-label, .ref-select-label, .art-sources-label, .footer-heading,
.svc-carousel-counter, .ref-stat span { font-size: .75rem !important; }
.catalog-comp-name { font-size: .85rem !important; }
.hero-badge span { font-size: .8rem !important; }   /* certificazione UNI ben leggibile (08/10/2026) */
.journal-meta, .journal-meta span { font-size: .85rem !important; }
.vmc-feat h4, .proj-benefit-text h4 { font-size: .95rem !important; }
.contact-block h3 { font-size: 1.05rem !important; }

/* — Schede e navigazione a tab — */
.product-tab, .product-tab span, .svc-tab, .contact-tab, .journal-pill { font-size: .85rem !important; }
.journal-select, .ref-select { font-size: .95rem !important; }

/* — Testi correnti delle schede e dei blocchi — */
.journal-body p, .adv-card p, .adv-callout-text p, .vmc-feat p, .about-material p,
.about-problem-card p, .about-intro p, .catalog-product-desc p, .contact-block p,
.bp-content p, .target-info p, .svc-carousel-content p, .proj-benefit-text p,
.art-data-desc, .proj-spec-desc, .ref-loc, .ref-desc, .svc-block-content p,
.service-card p, .sys-card p, .product-feature span, .art-sources p,
.form-checkbox-label span, .form-note { font-size: .95rem !important; }
.hero p, .page-hero p, .art-hero-subtitle, .svc-page-hero-content p, .proj-hero-content p { font-size: 1.05rem !important; }
.art-body p, .art-content p { font-size: 1.1rem !important; }
.art-body li, .art-content li { font-size: 1.05rem !important; }
.art-body figcaption, .art-content figcaption, .art-body small { font-size: .9rem !important; }

/* — Moduli — */
.form-label { font-size: .85rem !important; }
.form-input, .form-select, .form-textarea { font-size: 1rem !important; }
.form-error { font-size: .85rem !important; }
.form-success { font-size: 1rem !important; }

/* — Piè di pagina — */
.footer a, .footer li, .footer-address, .footer-address a { font-size: .9rem !important; }
.footer-desc, .footer p { font-size: .9rem !important; }
.footer-bottom, .footer-bottom div { font-size: .85rem !important; }

/* — Banner cookie — */
.cookie-banner-text p { font-size: .95rem !important; }
.cookie-btn { font-size: .8rem !important; }
.cookie-category-info p, .cookie-modal p { font-size: .95rem !important; }

/* — Articoli: tabelle, materiali, partner, codici prodotto — */
.art-body table, .art-content table, .art-table, .art-body td, .art-content td { font-size: .95rem !important; }
.art-body th, .art-content th, .art-table th, .cookie-table th { font-size: .8rem !important; }
.cookie-table td { font-size: .9rem !important; }
.art-mat-label, .art-partner-label, .art-prod-code, .art-partner span { font-size: .75rem !important; }
.art-body sub, .art-body sup, .art-content sub, .art-content sup, .art-data-desc sub { font-size: .75em !important; }

/* — Pagina evento (locandina) — */
.ev-label, .ev-mod-label, .ev-eyebrow span, .ev-caption, .ev-org-label, .ev-interval-label,
.ev-qa-label, .ev-payoff .certs, .ev-meta .lab { font-size: .75rem !important; }
.ev-meta .sub { font-size: .85rem !important; }

/* — Schermi tra 1025 e 1200px: il menu a 5 voci resta su una riga — */
@media (max-width: 1200px) {
    .nav-links { gap: 1.4rem !important; }
    .nav-links a { font-size: .8rem !important; letter-spacing: .06em !important; }
}

/* — Schermi molto stretti (sotto i 340px, es. iPhone SE 2016): tutto leggermente più compatto — */
@media (max-width: 340px) {
    html { font-size: 14px; }
}

/* Su schermi piccoli i titoli grandi restano come sono; qui solo il menu a tutto schermo */
@media (max-width: 768px) {
    .mobile-menu-contact a { font-size: 1rem !important; }
}
