/* Treccani Accademia: solo stati di accessibilità, nessuna modifica al layout a riposo. */

/* Il tema assegna 15px ai tre ID acceptance originali. La deduplicazione
 * accessibile degli ID deve conservare lo stesso margine, non spostare il form. */
.elementor-acceptance-field:is([id^="form-field-acceptance1--wkaf-"], [id^="form-field-acceptance2--wkaf-"], [id^="form-field-acceptance3--wkaf-"]) {
    margin-top: 15px;
}

nav.wkaf-uael-scrollable {
    max-height: var(--wkaf-menu-max-height);
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scrollbar-width: none;
}

nav.wkaf-uael-scrollable::-webkit-scrollbar {
    display: none;
}

.sfondoperchome a.wkaf-home-card-link,
.sfondoperchome a.wkaf-home-card-link:hover,
.sfondoperchome a.wkaf-home-card-link:visited,
.elementor a.wkaf-column-link,
.elementor a.wkaf-column-link:hover,
.elementor a.wkaf-column-link:visited {
    position: static;
    color: inherit;
    font: inherit;
    text-decoration: none;
}

/* Il tema imposta .heavyfont a a 600, mentre la CTA originale usa 500.
   Il nuovo tag semantico deve ereditare il peso effettivo del testo originale. */
.elementor a.wkaf-column-link,
.elementor a.wkaf-column-link:hover,
.elementor a.wkaf-column-link:visited {
    font-weight: inherit !important;
}

.wkaf-home-card-link::after {
    content: "";
    position: absolute;
    inset: 0;
}

.wkaf-home-card-link:focus-visible::after {
    outline: 3px solid #0b5fff;
    outline-offset: 2px;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
[role="button"]:focus-visible,
[role="link"]:focus-visible {
    outline: 3px solid #0b5fff !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 2px #ffffff !important;
}

.wkaf-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.wkaf-skip-link:focus {
    position: fixed !important;
    left: 50% !important;
    top: 8px !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 12px 20px !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    background: #203473 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: underline !important;
    z-index: 100000 !important;
}

/* Long descriptive video links are visible only on keyboard focus. */
.wkaf-video-transcript:focus {
    max-width: calc(100vw - 24px) !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

/* New captions only: readable even over a white frame; no effect when CC is off. */
.mejs-container:has(track[src*="/inc/treccani-accessibility/assets/captions/"]) .mejs-captions-text {
    color: #fff !important;
    background-color: rgba(0, 0, 0, 0.85) !important;
}

li.wkaf-jet-submenu-open > .jet-sub-mega-menu,
li.wkaf-jet-submenu-open > .jet-sub-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

@media (forced-colors: active) {
    a:focus-visible,
    button:focus-visible,
    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible,
    [tabindex]:focus-visible,
    [role="button"]:focus-visible {
        outline-color: Highlight !important;
        box-shadow: none !important;
        forced-color-adjust: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
        scroll-behavior: auto !important;
    }
}

/* Contrasti: variazioni minime della palette, senza effetti sul box model. */
.elementor-field,
.elementor-field-textual,
.testoinernoregistrati,
.post-navigation__prev--label,
.post-navigation__next--label {
    color: #767676 !important;
}

a[href$="informativa_privacy"],
a[href$="informativa_privacy/"] {
    color: #2373e6 !important;
    text-decoration: underline !important;
}

.wkaf-inline-link-needs-cue {
    text-decoration: underline !important;
}

.elementor-element-edaaff6 .jet-listing-dynamic-terms__link {
    color: #ee0700 !important;
}

/* Conserva esattamente bordo e altezza originari del campo newsletter nel
 * footer: il colore testuale accessibile non deve far ricadere il controllo
 * nello stile nativo da 1px del browser. */
.elementor-location-footer .newslettertre input.elementor-field-textual {
    border: 2px solid #203473 !important;
}

/* I colori cliente sono >=4.5:1 sul bianco pieno, non sul testo attenuato.
 * Solo le etichette delle due aree: nessuna opacita' di immagini o separatori. */
[data-treccani-client-palette] .area-tag,
.area-tag:has([data-treccani-client-palette]) {
    opacity: 1 !important;
}
[data-treccani-client-palette] .area-tag .elementor-heading-title,
.area-tag [data-treccani-client-palette] .elementor-heading-title {
    color: #fff !important;
}
/* Minimum neutral-text contrast corrections; no geometry or font changes.
 * Preserve pagination's existing active, hover and focus colour rules. */
.jet-filter-label[data-treccani-contrast-neutral="filter"],
.jet-filters-pagination__item:not(.jet-filters-pagination__current):not(:hover):not(:focus-within) > .jet-filters-pagination__link[data-treccani-contrast-neutral="filter"] {
    color: #6e6e6e !important;
}
.elementor-widget-theme-post-content [data-treccani-contrast-neutral="article"] {
    color: #767676 !important;
}

/* WCAG 1.4.10 / 1.4.12: coordinator email addresses must remain readable
 * in the existing mobile columns, including a zoomed/narrow viewport.
 * No desktop, font, colour, spacing or column-width overrides. */
@media (max-width: 767px) {
    .emailcoord1111 a[href^="mailto:"] {
        overflow-wrap: anywhere;
    }
}

/* WCAG 1.4.12: prevent clipping when the visitor enlarges text spacing.
 * Scoped to tested headings: no default font/colour/geometry changes.
 * Corporate's main title is deliberately excluded (visual conflict). */
@media (max-width: 767px) {
    :is(.elementor-element-0bd198f, .elementor-element-8c930b4) h3,
    :is(.elementor-element-bc4064b, .elementor-element-c5f97e4, .elementor-element-d04a798) h2,
    .elementor-element-283ecab h1 {
        overflow-wrap: anywhere;
    }
}
