/* accessibility.css - Stili per l'accessibilità */

/* Skip link - Visibile solo quando focalizzato */
.skip-to-content {
    position: absolute;
    top: -40px;
    left: 0;
    background: #27AAE2;
    color: white;
    padding: 8px;
    z-index: 100;
    transition: top 0.3s;
}

.skip-to-content:focus {
    top: 0;
}

/* Stile di focus visibile per tutti gli elementi interattivi */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus,
[tabindex]:focus {
    outline: 3px solid #27AAE2;
    outline-offset: 2px;
}

/* Migliorare visibilità del focus per elementi navbar */
.header-nav-main a:focus {
    outline-color: #27AAE2;
}

/* Assicura che i testi su sfondi colorati abbiano contrasto sufficiente */
.text-color-light {
    color: #ffffff !important;
}

.bg-primary .text-color-light,
.bg-secondary .text-color-light,
.bg-dark .text-color-light {
    color: #ffffff !important;
}

/* Migliorare visibilità per pulsanti nel cookie consent */
.cc-btn:focus {
    outline: 3px solid white;
    outline-offset: 2px;
}

/* Nascondere visivamente gli elementi ma mantenerli accessibili agli screen reader */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/* Aumentare leggibilità per testi piccoli */
.text-1,
.text-2,
.text-3 {
    line-height: 1.5;
}

/* Accessibilità per form */
input.error,
textarea.error,
select.error {
    border-color: #dc3545;
}

.form-feedback {
    display: block;
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

.error-feedback {
    color: #dc3545;
}

/* Migliorare accessibilità per slider/carousel */
.slider-container [aria-hidden="true"] {
    display: none;
}

/* accessibility-contrast.css - Miglioramenti del contrasto per l'accessibilità */

/* Colori generali */
:root {
  --primary-dark: #da2f10;      /* Versione più scura del blu primario */
  --primary-light: #2a93fb;     /* Versione più chiara del blu primario per sfondi scuri */
  --text-dark: #212529;         /* Testo scuro standard */
  --text-light: #f8f9fa;        /* Testo chiaro per sfondi scuri */
  --text-medium: #495057;       /* Testo medio per elementi meno importanti su sfondo chiaro */
  --link-hover: #004494;        /* Colore hover per i link */
  --border-color: #495057;      /* Colore per i bordi */
  --bg-light: #f8f9fa;          /* Sfondo chiaro */
  --bg-dark: #212529;           /* Sfondo scuro */
}

/* Miglioramenti per l'header */
.header-top {
  color: var(--text-dark);
}

.header-top a, 
.header-nav-top a,
.header-social-icons a {
  color: var(--primary-dark) !important;
}

.text-1 {
  color: var(--text-dark) !important;
  font-weight: 600;
}

.dropdown-item {
  color: var(--text-dark) !important;
}

.dropdown-item.active, 
.dropdown-item:active {
  background-color: var(--primary-dark);
  color: var(--text-light) !important;
}

.dropdown-menu {
  background-color: var(--bg-light);
}

/* Bottoni e CTA */
.btn-light {
  background-color: var(--bg-light);
  color: var(--text-dark) !important;
  border-color: var(--border-color);
}

.btn-primary {
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
  color: var(--text-light) !important;
}

.read-more, 
.text-color-primary {
  color: var(--primary-dark) !important;
}

/* Cookie consent */
.cc-btn {
  color: var(--text-dark) !important;
  background-color: var(--bg-light) !important;
  border: 1px solid var(--border-color);
  font-weight: bold;
}

.cc-allow {
  background-color: var(--primary-dark) !important;
  color: var(--text-light) !important;
}

/* Sezioni scure */
.bg-dark {
  background-color: var(--bg-dark) !important;
}

.bg-dark p,
.bg-dark span,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6 {
  color: var(--text-light) !important;
}

.bg-dark a {
  color: var(--primary-light) !important;
}

.section.bg-dark .text-color-light {
  color: var(--text-light) !important;
  opacity: 1 !important;
}

.section.bg-dark .opacity-6 {
  opacity: 1 !important;
}

/* Footer */
footer {
  background-color: var(--bg-dark);
  color: var(--text-light);
}

footer h5 {
  color: var(--text-light) !important;
  font-weight: bold;
}

footer a, 
footer p, 
footer .text-color-light {
  color: var(--text-light) !important;
  opacity: 1 !important;
}

footer a:hover {
  color: var(--primary-light) !important;
}

footer .text-color-primary {
  color: var(--primary-dark) !important;
}

footer .list-icons i {
  color: var(--primary-light) !important;
}

.footer-copyright {
  background-color: rgba(0, 0, 0, 0.2);
}

.footer-copyright p {
  color: var(--text-light) !important;
  font-weight: normal;
}

/* Aumenta contrasto per bottoni piccoli */
.btn-xs {
  font-weight: bold !important;
  border: 1px solid var(--border-color) !important;
}

/* Miglioramenti generali */
.text-color-light {
  color: var(--text-light) !important;
  opacity: 1 !important;
}

/* Verifica il contrasto per le etichette di data */
.post-meta span {
  color: var(--text-dark) !important;
  font-weight: 600;
}

p{
	color: #000 !important;
}
#footer a:not(.btn):not(.no-footer-css) {
    padding: 6px 0 !important;
}
.dropdown-item.active, .dropdown-item:active {
    color: #000 !important;
}

/* ============================================================
   CONTRASTO - Correzioni audit accessibilità WCAG AA (4.5:1)
   ============================================================ */

/* custom-text-color-grey-1: classe non definita, forziamo grigio scuro
   #595959 su bianco = 6.3:1 (supera 4.5:1) */
.custom-text-color-grey-1 {
    color: #595959 !important;
}

/* custom-text-size-1: testo corpo su sfondo bianco */
.custom-text-size-1 {
    color: #212529 !important;
}

/* Footer copyright con sfondo chiaro (bg-color-grey = #f4f4f4):
   le regole generali "footer a/p" impostano testo quasi-bianco
   che su sfondo chiaro risulta illeggibile.
   Sovrascriviamo con colori scuri ad alto contrasto. */
.footer-copyright a,
.footer-copyright p,
.footer-copyright span:not([aria-hidden]) {
    color: #333333 !important;  /* #333 su #f4f4f4 = 10.3:1 */
}

.footer-copyright a:hover,
.footer-copyright a.text-hover-primary:hover {
    color: #da2f10 !important;  /* rosso scuro su #f4f4f4 = 5.6:1 */
}

/* h5 text-primary (#e63312) su footer.bg-color-grey (#f4f4f4) = 3.88:1 (insufficiente).
   Usiamo un rosso più scuro: #da2f10 su #f4f4f4 = 5.6:1 */
footer.bg-color-grey h5.text-primary,
footer.bg-color-grey .text-primary,
#footer.bg-color-grey h5.text-primary,
#footer.bg-color-grey .text-primary {
    color: #da2f10 !important;
}

/* Link "VEDI I PRODOTTI" e simili (text-primary su sfondo bianco):
   #e63312 su bianco = 4.27:1 (sotto 4.5:1).
   Usiamo rosso scuro #da2f10 su bianco = 5.6:1 */
.bg-transparent.text-primary,
a.text-primary:not(footer a) {
    color: #da2f10 !important;
}

/* Header body navigation - assicura testo leggibile */
.header-body,
.header-body a,
.header-nav-main nav > ul > li > a {
    color: #212529 !important;
}