/*
 Theme Name: Enfold Child
 Theme URI:  http://arter.local
 Description: Tema child di Enfold per il sito AR-TER
 Author:     Sebastiano Giacomini
 Template:   enfold
 Version:    1.0
*/

/* ── FONTS ──────────────────────────────────────────────────────────────── */
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-ExtraLight.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-ExtraLightItalic.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-ExtraLightItalic.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-Light.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-LightItalic.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-Regular.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-Italic.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-SemiBold.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-SemiBoldItalic.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-Bold.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-BoldItalic.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
    font-display: optional;
}
@font-face {
    font-family: 'Titillium Web';
    src: url('assets/font/TitilliumWeb-Black.woff2') format('woff2'),
         url('assets/font/TitilliumWeb-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: optional;
}

#header_main_alternate #avia-menu #menu-item-search {
    display: none;
}
/* ──────────────────────────────────────────────────────────────────────── */

/* ── SPACING VARIABLES ─────────────────────────────────────────────────── */
:root {
    --inline-padding: 40px;
    --inline-padding-small: 8px;
    --inline-padding-large: 64px;
    --block-padding-small: 16px;
    --block-padding-medium: 24px;
    --block-padding: 40px;
    --block-padding-large: 56px;
    --section-spacing-small: 40px;
    --section-spacing: 80px;
    --cards-gap: 64px;
}

@media (max-width: 767px) {
    :root {
        --inline-padding: 24px;
        --inline-padding-large: 24px;
        --block-padding: 24px;
        --block-padding-large: 48px;
        --block-padding-medium: 16px;
        --section-spacing-small: 24px;
        --section-spacing: 40px;
        --cards-gap: 32px;
    }
}
/* ──────────────────────────────────────────────────────────────────────── */

body {
    color: #000000;
    font-family: 'Titillium Web', sans-serif !important;
    overflow: hidden;
}

body * {
    letter-spacing: -0.4px !important;
    font-family: 'Titillium Web', sans-serif !important;
}

body:not(.home) .avia-section, .post-background {
    margin-top: 16px !important;
}

#top input,
#top textarea,
#top select,
#top button,
#top a {
    font-family: 'Titillium Web', sans-serif !important;
    margin-bottom: 0;
}

#top input[type="search"] {
    margin-block: 12px !important;
}

/* ──────────────────────────────────────────────────────────────────────── */



/* ── TYPOGRAPHY ─────────────────────────────────────────────────── */
/* p */
#top p {
    font-weight: 300;
    margin: 0;
    line-height: 140% !important;
    font-size: 24px !important;
}

#top p.evento-card__intro,
#top p.news-card__intro,
#top .box-small p {
    margin: 16px 0 !important;
    font-size: 18px !important;
}

#top footer p {
    font-size: 15px !important;
}
#top p + p {
    margin-top: 0 !important;
}
#top p:has(+ p) {
    margin-bottom: 0 !important;
}

#top .body-l > p {
    max-width: 1100px !important;
    text-align: center;
    margin-inline: auto;
    margin-top: 0;
    font-size: 34px !important;
    font-weight: 300;
    line-height: normal;
}

#top .box-section .body-l > p {
    margin-inline: auto !important;
}

#top .box-section .body-l > p[style="text-align: left;"] {
    margin-inline: 0 !important;
}

#top .box-section .body-l > p[style="text-align: left;"]:last-of-type {
    padding-bottom: var(--block-padding) !important;
    margin-bottom: var(--block-padding) !important;;
}

#top .body-l > p + p{
    padding-top: var(--block-padding-medium) !important;
}

#top .body-xl > p {
    text-align: center;
    margin-inline: auto;
    margin-top: 0;
    font-size: 40px !important;
    font-weight: 300 !important;
    line-height: normal !important;
}

#top .body-2xl > p {
    text-align: center;
    margin-inline: auto;
    margin-top: 0;
    font-size: 56px !important;
    font-weight: 300 !important;
    line-height: normal !important;
}

#top strong {
    color: #000000 !important;
    font-weight: 600;
}


#top .body-xl strong,
#top .body-2xl strong {
    font-weight: 900 !important;
    color: inherit !important;
}

#top mark {
    font-weight: 700 !important;
    font-size: 16px !important;
    padding: 0.125rem 0.25rem  !important;
    margin-left: 0.5rem !important;
}

/* Headings */
.h1-pagina-interna h1 {
    font-size: 75px;
    line-height: 100%;
    font-weight: 900;
    text-transform: none !important;
    padding-bottom: var(--block-padding-medium);
    margin-top: 32px !important;
}

.h1-pagina-interna {
    margin-bottom: 0;
}

h1 {
    font-size: 75px;
    color: #000000;
}

.h1-home h1 {
    font-weight: 300 !important;
    padding-top: 40px !important;
    padding-bottom: 100px !important;
    line-height: 90% !important;
}

.h1-home h1 strong,
h2 strong  {
    font-weight: 900 !important;
}

@media (max-width: 767px) {
    .h1-home h1 {
        margin-top: 0px !important;
        padding-top: 30px !important;
        padding-bottom: 60px !important
    }   
}

h2 {
    font-size: 41px;
    font-weight: 600 !important;
    text-transform: none !important;
}

h3 {
    font-size: 34px;
    font-weight: bold;
    margin-bottom: 0 !important;
}

h4 {
    font-size: 34px;
    font-weight: bold;
}

h5 {
    font-size: 28px;
    font-weight: bold;
}


/* Links */

a.underline, a:hover {
    text-decoration: underline !important;
}

a.underline:hover {
    color: #b00021 !important;
}

a.underline {
    transition-duration: 0.3s;
}

/* #top .flex_column:not(:has(h4)) a:where(:not(.wp-element-button)) {
    text-decoration: underline !important;
} */

#top h1 a, #top h2 a, #top h3 a, #top h4, #top h5 a, #top h6 a,
#top .body-xl a, #top .body-2xl a, #top .body-l a {
    text-decoration: none !important;
    transition-duration: 0.3s;
}

.box-section .flex_column .avia_textblock p a,
.box-section .flex_column .avia_textblock li a {
    text-decoration: underline !important;
    transition-duration: 0.3s;
}

#top p a, #top a strong, #top li a {
    transition-duration: 0.3s;
}

#top h1 a:not([style*="color:"]):hover, #top h2 a:not([style*="color:"]):hover, #top h3 a:not([style*="color:"]):hover, #top h4 a:not([style*="color:"]):hover, #top h5 a:not([style*="color:"]):hover, #top h6 a:not([style*="color:"]):hover,
#top .body-xl a:not([style*="color:"]):hover, #top .body-2xl a:not([style*="color:"]):hover, #top .body-l a:not([style*="color:"]):hover,
#top p a:not([style*="color:"]):hover, #top a:not([style*="color:"]) strong:hover, #top li a:not([style*="color:"]):hover {
    text-decoration: underline !important;
    color: #b00021 !important;
}

#top .av-content-full .flex_column_div > section.av_textblock_section div > h4 a {
    transition-duration: 0.3s;
}

#top .av-content-full .flex_column_div > section.av_textblock_section div > h4 a:hover {
    text-decoration: none !important;
    color: white !important;
}


/* ──────────────────────────────────────────────────────────────────────── */

/* BLOCKS */
div, section {
    padding-top: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* BUTTONS */
.avia-button {
    background-color: #ffffff00 !important;
    border:#000000 1px solid !important;
    color: #000000 !important;
    border-radius: 0 !important;
    padding: 12px 32px !important;
    font-family: 'Titillium Web', Helvetica, Arial, sans-serif;
    font-size: 24px;
    font-weight: 600;
}

.avia_button_background.avia-button.avia-color-theme-color-highlight {
    display: none !important;
}

.avia-position-center.avia-button {
    margin-left: auto !important;
    margin-right: auto !important;
}
.avia-button:hover {
    color: #ffffff !important;
    text-decoration: none !important;
    background-color: #b00021 !important;
    border:#b00021 1px solid !important;
}

/* ───── CTA HOME ───────────────────────────────────────────────────────── */
.cta-home .avia-button {
    border: #fff 1px solid !important;
    color: #fff !important;
    margin-inline: var(--inline-padding) !important;
    margin-bottom: var(--inline-padding) !important;
    margin-top: 120px !important;
}

.cta-home h3 {
    font-size: 41px !important;
    font-weight: 600 !important;
    line-height: 130% !important;
}

.cta-home div.avia_textblock:has(h3) {
    padding-inline: var(--inline-padding) !important;
    padding-top: var(--inline-padding) !important;
}

.cta-home .av-content-full {
    flex-direction: row;
}

#top .cta-home .entry-content-wrapper {
    display: flex !important;
}

#top .cta-home .entry-content-wrapper > .flex_column {
    float: none !important;
    width: 50% !important;
}

#top .cta-home:nth-child(odd of .cta-home) .entry-content-wrapper {
    justify-content: flex-end;
}

#top .cta-home .entry-content-wrapper > .flex_column h3 {
    color: #fff
}

@media (max-width: 767px) {
    .cta-home .avia-button-wrap {
        width: 100% !important;
    }

    #top .cta-home .avia-button {
        border: #fff 1px solid !important;
        color: #fff !important;
        margin-inline: var(--inline-padding) !important;
        width: calc(100% - var(--inline-padding) * 2) !important;
        margin-bottom: var(--inline-padding) !important;
        margin-top: 120px !important;
    }

    #top .cta-home br {
        display: block !important;
    }
    #top .cta-home .avia-button {
        margin-top: 32px !important;
    }

    #top .cta-home .entry-content-wrapper > .flex_column {
        width: 100% !important;
    }

    #top .cta-home:nth-child(odd of .cta-home) .entry-content-wrapper {
        justify-content: flex-start;
    }
}

.cta-home .av_one_half {
    width: auto !important;
}

.cta-home .av-link-btn:hover {
    background-color: #fff !important;
    opacity: 1 !important;
    color: var(--cta-bg) !important /* THIS VALUE IS DYNAMICALLY RETRIEVED IN functions.php */;
    text-decoration: none !important;
}
/* ──────────────────────────────────────────────────────────────────────── */


/* ───── HEADER ─────────────────────────────────────────────────────────── */
#header_meta {
    background-color: #b00021 !important;
    height: 40px !important;
}

#header_meta a {
    color: white !important;
    font-size: 16px;
    font-weight: 400 !important;
    line-height: normal !important;
    padding-bottom: 8px !important;
    padding-top: 6px !important;
}

#header_meta .sub_menu {
    width: 100% !important;
    display: flex !important;
    flex-direction: row;
    justify-content: space-between !important;
}

ul.av-main-nav {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between;
}

.av-main-nav>li:first-of-type>a {
    padding-left: 0 !important;
}

.av-main-nav>li>a {
    color: #000000 !important;
    font-size: 18px;
    font-weight: 600;
    line-height: normal;
    transition-duration: 0.3s;
}

.av-main-nav>li .sub-menu li a {
    color: #000000 !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: normal;
    transition-duration: 0.3s;
}

.av-main-nav>li a:hover, .av-main-nav>li .sub-menu li a:hover, .title_container .breadcrumb a:hover {
    color: #b00021 !important;
    text-decoration: underline;
}

.av-main-nav > li:has(ul) > a::after {
    margin-left: 8px;
    content: '';
    display: inline-block;
    background-color: black;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='7' viewBox='0 0 13 7' fill='none'%3E%3Cpath d='M12.3454 0.363937L6.34543 5.90442L0.335449 0.363937' stroke='black' stroke-width='0.99' stroke-miterlimit='10'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='7' viewBox='0 0 13 7' fill='none'%3E%3Cpath d='M12.3454 0.363937L6.34543 5.90442L0.335449 0.363937' stroke='black' stroke-width='0.99' stroke-miterlimit='10'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    width: 13px;
    height: 7px;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.av-main-nav > li:has(ul) a:hover::after {
    background-color: #b00021;
    transform: rotate(180deg);
}
/* ──────────────────────────────────────────────────────────────────────── */


/* ───── HERO ───────────────────────────────────────────────────────────── */
.home .header_bg {
    opacity: 0 !important;
    transition: opacity 0.4s ease !important;
}

.home .header_bg.is-visible {
    opacity: 1 !important;
}

#top #main {
    margin-top: 200px !important;
}

.home #main {
    margin-top: 64px !important;
}

.home #main #av_section_1 {
    margin-top: -120px !important;
    padding-top: 180px !important;
    padding-bottom: 160px !important;
}

.home #main #av_section_1 main h1 {
    padding-block: 0 !important;
    margin-block: 0 !important;
}

@media (max-width: 767px) {
    .home .header_bg {
        opacity: 1 !important;    
    }

    .home #main #av_section_1 {
        margin-top: -60px !important;
        padding-top: 120px !important;
    }
}

.home .title_container {
    display: none !important;
}
/* ──────────────────────────────────────────────────────────────────────── */



/* ───── OVERVIEW EVENTI & NEWS ─────────────────────────────────────────── */
@media (min-width: 768px) {
    .av-content-full:has(.overview-eventi), .av-content-full:has(.overview-news)  {
        padding-top: 120px !important;
        padding-bottom: 160px !important;
    }

    .overview-eventi, .overview-news {
        padding-inline: var(--inline-padding);
    }
}

@media (max-width: 767px) {
    .av-content-full:has(.overview-eventi), .av-content-full:has(.overview-news)  {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }

    .overview-eventi, .overview-news {
        width: 100%;
    }

    .overview-news:has(.news-card:nth-child(2)) .slider,
    .overview-eventi:has(.evento-card:nth-child(2)) .slider  { 
        display: flex !important;
    }

    .overview-eventi .avia-button, .overview-news .avia-button {
        width: 100% !important;
        margin-top: 56px !important;
    }    
}

@media (min-width: 768px) and (max-width: 992px) {
    .overview-news:has(.news-card:nth-child(3)) .slider,
    .overview-eventi:has(.evento-card:nth-child(3)) .slider  { 
        display: flex !important;
    }
}

.overview-eventi h2, .overview-news h2 {
    width: 100% !important;
    border-bottom: 1px solid #000000;
    margin-bottom: 0 !important;
}

.overview-eventi .row, .overview-news .row {
    display: flex !important;
    flex-direction: row !important;
    gap: var(--cards-gap);
    padding-top: var(--block-padding);
    margin-bottom: var(--block-padding) !important;
}

.overview-eventi .row > *, .overview-news .row > * {
    flex: 0 0 calc((100% - 2 * var(--cards-gap)) / 3);
}

.overview-eventi .avia-button, .overview-news .avia-button {
    display: block !important;
    width: fit-content !important;
    margin-inline: auto !important;
    margin-top: 80px !important;
}

.overview-news .slider,
.overview-eventi .slider  {
    display: none;
}

.overview-news:has(.news-card:nth-child(4)) .slider, .overview-eventi:has(.evento-card:nth-child(4)) .slider { 
    display: flex !important;
}

.card-tags {
    display: flex !important;
    flex-direction: row !important;
    gap: 8px;
    list-style-type: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.card-tags li {
    margin: 0 !important;
    background-color: #000000;
    padding-inline: 8px;
    padding-block: 2px !important;
    text-transform: uppercase;
    font-size: 12px !important;
}

.card-tags li a {
    color: white !important;
}

.card-tags li:hover {
    text-decoration: none !important;
    background-color: #b00021 !important;
}

.card-tags li a:hover {
    text-decoration: none !important;
}

.evento-card__intro,
.news-card__intro {
    font-weight: 300;
    line-height: normal;
    margin-top: 8px !important;
}

.news-card__intro {
    margin-bottom: 0 !important;
}

.news-card__date {
    font-size: 13px;
    font-weight: 300;
    line-height: normal;
    margin-top: 12px !important;
    margin-bottom: 16px !important;
}

.evento-card__meta, .news-card__meta {
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
    padding-bottom: 8px !important;
    text-transform: uppercase;
}

.overview-eventi .slider, .overview-news .slider {
    float: right !important;
}

/* ALPINE SLIDER */
[x-cloak] { display: none !important; }

.slider-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    border-bottom: none !important;
    margin-bottom: 0;
}

.overview-eventi .eventi-header h2 {
    border-bottom: none;
    margin-bottom: 0 !important;
}

.slider {
    display: flex;
    gap: 24px;
    padding-bottom: 8px;
}

.slider-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    color: #000;
    line-height: 0;
    transition: opacity 0.2s;
}

.slider-btn:disabled {
    opacity: 0.25;
    cursor: default;
}

.eventi-slider-outer,
.news-slider-outer {
    overflow: hidden;
}

#top div.eventi-overview-grid,
#top div.news-overview-grid {
    display: flex;
    gap: var(--cards-gap);
    padding-top: var(--block-padding) !important;
    margin-bottom: var(--block-padding) !important;
}

.evento-card,
.news-card {
    flex: 0 0 var(--card-width);
    min-width: 0;
}

/* ─────── GRID ─────────────────────────────────────────────────────────── */
.av-layout-grid-container {
    display: flex !important;
    flex-direction: row !important;
    gap: 14px !important;
}

.av-layout-grid-container .flex_cell:first-of-type {
    width: 50% !important;
}

.av-layout-grid-container .flex_cell:first-of-type .flex_column {
    float: none !important;
    padding-left: var(--section-spacing) !important;
    padding-block: var(--section-spacing) !important;
}

.av-layout-grid-container .flex_cell:first-of-type .flex_column  .body-l p {
    padding-top: var(--section-spacing) !important;
}

@media (max-width: 767px) {
    .av-layout-grid-container {
        flex-direction: column !important;
    }

    .av-layout-grid-container .flex_cell:first-of-type {
        width: 100% !important;
    }

    .responsive #top #wrap_all .av-layout-grid-container .av_one_full:not(.blocks-stack) {
        width: 100% !important;
        padding-inline: calc(12.5% - 24px) !important;
        margin: auto !important;
    }
}

/* BLOCKS STACK */
.blocks-stack {
    padding-block: 0 !important;
}

.blocks-stack a {
    text-decoration: none !important;
    font-size: 38px !important;
    line-height: 1;
    display: flex;
    align-items: center;
}

#top .blocks-stack strong {
    font-weight: 900;
    color: inherit !important;
}

.blocks-stack .avia_textblock {
    padding-block: 16px !important;
    transition: background-color 0.3s ease, color 0.3s ease !important;
}

.blocks-stack .avia_textblock p:first-child {
    margin-block: 0px !important;
}

.blocks-stack section:not(:last-of-type) {
    border-bottom: 1px solid #fff;
}

.av-flex-cells:has(.blocks-stack) .flex_cell:not(:has(.blocks-stack)) .flex_cell_inner,
.av-flex-cells:has(.blocks-stack) .flex_cell:not(:has(.blocks-stack)) .flex_column_table,
.av-flex-cells:has(.blocks-stack) .flex_cell:not(:has(.blocks-stack)) .flex_column {
    height: 100% !important;
}

@media (max-width: 767px) {
    .flex_cell:has(.blocks-stack) {
        width: 100% !important;
    }

    .blocks-stack .avia_textblock {
        padding-inline: calc(12.5% - 24px) !important;
    }

    .av-layout-grid-container {
        gap: 1px !important;
    }
}
/* ──────────────────────────────────────────────────────────────────────── */




/* ENFOLD OVERWRITE */
.content {
    padding-block: var(--section-spacing) !important;
}
.avia-section {
    background-repeat: repeat !important;
}
.avia_textblock ul,
.avia_textblock ol,
.avia_textblock p {
    line-height: 140% !important;
    font-weight: 300 !important;
}
.avia-section:has(h1) {
    background-repeat: no-repeat !important;
    background-size: 50% auto !important;
    background-position: left center !important;
    background-origin: content-box !important;
    padding-inline: 40px !important;
}

@media (min-width: 1310px) {
    .av-layout-grid-container .flex_cell:first-of-type .flex_column {
        float: none !important;
        padding-left: calc((100vw - 1210px) / 2 + 30px) !important;
    }

    .avia-section:has(h1) {
        background-size: 50% auto !important;
        padding-inline: calc((100vw - 1210px) / 2) !important;
    }
}




@media (max-width: 767px) {
    .avia-section:has(h1) {
        background-repeat: no-repeat !important;
        background-size: contain !important;  /* si adatta senza tagliare */
        background-position: center center !important;
    }

    body div:first-of-type.column-top-margin {
        margin-top: var(--block-padding) !important;
    }

    body div:not(:first-of-type).column-top-margin {
        margin-top: 0 !important;
    }

    .av_textblock_section:has(+ .av_textblock_section) h2 {
        margin-bottom: 0 !important;
    }

    body#top .cards-section .entry-content-wrapper > .flex_column_table {
        margin-top: 0 !important;
    }

    body#top .cards-section .flex_column_table div.column-top-margin,  
    body#top .cards-section .flex_column_table div.no_margin {
        margin-top: var(--block-padding-large) !important;
    }

    body#top .av_one_full + .av_one_full{
        margin-top: 24px !important;
    }
}




.av_one_full + .av_one_full{
    margin-top: 24px !important;
}
.av_one_half {
    margin-inline: 0 !important;
    width: calc(50% - 12px) !important;
}

.av_one_half + .av_one_half + .av_one_full {
    margin-top: var(--block-padding) !important;
}

@media (max-width: 767px) {
    .av_one_half {
        margin-inline: 0 !important;
        width: 100% !important;
    }
}
.container:after {
    display: none !important;
}

#top #wrap_all .social_bookmarks a {
    background-color: #000000 !important;
    opacity: 1 !important;
}

#top #wrap_all .social_bookmarks #menu-item-search > a {
    background-color: transparent !important;
    padding-top: 0 !important;
    height: 30px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: normal !important;
    overflow: visible !important;
}

#top #wrap_all .social_bookmarks #menu-item-search > a svg {
    height: 30px !important;
    width: auto !important;
    flex-shrink: 0 !important;
    display: block !important;
    fill: currentColor !important;
}

#top #wrap_all .social_bookmarks #menu-item-search > a .avia_hidden_link_text {
    display: none !important;
}

#top #menu-item-search {
    width: 80px !important;
}

#top #menu-item-search > a {
    width: 100% !important;
}

#top #menu-item-search > a::before {
    width: 100% !important;
}

#menu-item-search > a svg:hover,
#top #menu-item-search > a:hover > svg:hover {
    height: 30px !important;
    fill: #b00021 !important;
}

#top #menu-item-search > a::before {
    content: 'Cerca ';
    color: black !important
}

.header_color .social_bookmarks .avia_social_svg_icon a svg:first-child {
    fill: white !important;
    opacity: 1 !important;
}

#top #wrap_all .avia-svg-icon:hover a {
    background-color: #b00021 !important;
}

.social_bookmarks {
    display: flex !important;
    flex-direction: row;
    gap: 4px;
}



.avia_textblock.av_multi_colums p:first-child, .avia_textblock p:first-child {
    margin-top: 24px;
}

.avia_textblock.body-xl p:first-child {
    margin-top: 0 !important;
}

#scroll-top-link {display: none; }

.container_wrap, #header_meta {
    border-top: none !important;
}

#header_main {
    border-color: #000000 !important;
}



.avia-menu-fx {
    display: none !important;
}

.html_header_top .header_color .main_menu ul:first-child >li > ul, .html_header_top #top .header_color .avia_mega_div > .sub-menu {
    border-top-color: #b00021 !important;
}

#main .trail-before {
    display: none !important;
}

#top .title_container .container {
    min-height: auto;
    width: 100% !important;
}

.title_container .breadcrumb {
    right: auto !important;
    text-transform: uppercase;
    font-size: 15px;
    margin-top: 24px;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
}

.title_container .breadcrumb .breadcrumb-trail {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

/* Undo Enfold's float-based layout so flexbox takes over */
.title_container .breadcrumb .breadcrumb-trail > *,
.title_container .breadcrumb .breadcrumb-trail a {
    float: none !important;
    display: inline !important;
    flex-shrink: 0;
}

.title_container .breadcrumb .breadcrumb-trail .sep {
    width: auto !important;
    overflow-x: visible !important;
}

.title_container .breadcrumb:not(:has(a)) {
    display: none !important;
}
.title_container .breadcrumb a {
    color: #000000 !important;
    font-weight: 700 !important;
    text-decoration: underline !important;
    transition-duration: 0.3s;
}

.title_container .breadcrumb .sep {
    padding-inline: 8px !important;
}

.trail-begin {
    padding-inline: 0 !important;
}

.responsive #top #wrap_all .av-flex-cells .no_margin, 
.responsive #top #wrap_all .flex_column, 
.responsive #top .container .av-content-small {
    margin-bottom: 0px !important;
}

.responsive #top #wrap_all .flex_column:has(h2):has(+ .flex_column) {
    margin-bottom: var(--block-padding) !important;
}

/* BOX SECTION : sezione con tiles-bg */
.box-section .flex_column {
    background-color: white;
    padding-inline: 0;
    padding-block: 0;
    margin-inline: auto !important;
    transition: background-color 0.3s ease;
}

.box-section img {
    margin-top: var(--section-spacing) !important;
}

.responsive #top .box-section .flex_column:has(h5):has(p, ul) {
    padding-bottom: var(--block-padding) !important;
}

.responsive #top .box-section .flex_column:has(p):not(:has(h5)):not(:has(.body-l)):not(:has(h4)) {
    padding-block: var(--block-padding) !important;
    padding-inline: var(--inline-padding) !important;
} 


.responsive #top .box-section .flex_column:has(h5):not(:has(p, ul)) h5 {
    padding-block: var(--block-padding) !important;
    padding-inline: var(--inline-padding) !important;
}

.responsive #top .box-section .flex_column:has(h5):has(.box-small) {
    padding-bottom: 0 !important;
}


.flex_column .av_textblock_section:last-child ul {
    margin-bottom:  0 !important;
}

.box-section ul {
    font-size: 24px !important;
    list-style-type: square !important;
    margin-left : 1em !important;
}

ul li {
    padding-block: 0 !important;
    margin-block: 0 !important;
}

#top .box-section:has(p) .box-title h5 {
    padding-top: var(--block-padding) !important;
    padding-bottom: var(--block-padding-medium) !important;
}

#top .box-section:has(p) .box-title h4,
#top .box-section:has(.body-l) .av_textblock_section:first-of-type p:first-of-type {
    padding-top: var(--block-padding) !important;
    padding-bottom: 0 !important;
}

#top .box-section:has(.body-l) .box-link .av_textblock_section:last-of-type p:last-of-type {
    padding-bottom: 0 !important;
}

#top .box-section .flex_column .av_textblock_section:not(:only-of-type) .section-title h2 {
    padding-block: var(--block-padding) !important;
    padding-bottom: var(--block-padding-small) !important;
    margin-bottom:  0 !important;
}

#top .box-section .flex_column .av_textblock_section:only-of-type .section-title h2,
#top .box-section .flex_column .av_textblock_section:only-of-type .section-title h3 {
    padding-block: var(--block-padding) !important;
    margin-bottom:  0 !important;
}

#top .box-section .flex_column:only-of-type .av_textblock_section:only-of-type .section-title h2,
#top .box-section .flex_column:only-of-type .av_textblock_section:only-of-type .section-title h3 {
    padding-top: var(--block-padding) !important;
    padding-bottom: var(--block-padding-medium) !important;
    margin-bottom:  0 !important;
}


#top .flex_column .section-title h3 {
    padding-block: var(--block-padding-small) !important;
}

#top .box-section .flex_column .av_textblock_section:has(.section-title) + .av_textblock_section p {
    padding-bottom: var(--block-padding) !important;
    padding-inline: var(--inline-padding) !important;
}


.box-section li {
    margin-left : 0 !important;
    padding-left: 0 !important;
}

.box-section .flex_column:has(.avia_textblock h4 > a) h4 {
    cursor: pointer;
}

#top .box-section .flex_column:has(.avia_textblock h4 > a) h4 {
    margin-inline: calc(-1 * var(--inline-padding));
    padding-inline: var(--inline-padding);
    padding-bottom: calc(var(--block-padding) / 2) !important;
    margin-bottom: calc(-1 * var(--block-padding) / 2);
    transition: none !important;
}

#top .box-section .flex_column:has(.avia_textblock h4:hover) h4 {
    background-color: var(--box-heading-color, #000000);
}

.box-section .flex_column:has(.avia_textblock h4:hover) h4,
.box-section .flex_column:has(.avia_textblock h4:hover) h4 * {
    color: white !important;
}

.box-section .flex_column:has(.avia_textblock h4 > a) .avia_textblock:not(:has(h4)):has(a) {
    background-color: white;
    transition: background-color 0.3s ease;
}

.box-section .flex_column:has(.avia_textblock h4 > a):hover .avia_textblock:not(:has(h4)):has(a) * {
    color: black !important;
}

.box-section .flex_column:has(.avia_textblock h4 > a) h4 a {
    text-decoration: none !important;
}

.box-section .flex_column p a, .box-section .flex_column li a {
    color: black !important;
}

.box-section .flex_column .avia-button-wrap a:hover {
    text-decoration: none !important;
    color: #fff !important; 
}


.box-section .flex_column:has(.avia_textblock h4 > a):has(.avia_textblock:not(:has(h4)) a:hover) {
    background-color: white !important;
    cursor: default !important;
}

.box-section .flex_column:has(.avia_textblock h4 > a):has(.avia_textblock:not(:has(h4)) a:hover) * {
    color: black !important;
}

.box-section .flex_column.av_one_fourth .avia_textblock {
    padding-inline: var(--inline-padding-small);
}

.box-section .flex_column:not(.av_one_fourth):has(h5):is(:has(p), :has(ul)) .avia_textblock,
.box-section .flex_column:not(.av_one_fourth):has(h4):is(:has(p), :has(ul)) .avia_textblock,
.box-section .flex_column:not(.av_one_fourth):has(.body-l):is(:has(p), :has(ul)) .avia_textblock {
    padding-inline: var(--inline-padding) !important;
}

.box-section .flex_column:not(.av_one_fourth):has(h4):is(:has(p), :has(ul)) .avia_textblock {
    padding-bottom: calc(var(--block-padding-small) / 2) !important;
}

.box-section .flex_column:not(.av_one_fourth):has(h4):is(:has(p), :has(ul)) .av_textblock_section ~ .av_textblock_section:not(:last-of-type) .avia_textblock {
    padding-top: calc(var(--block-padding-small) / 2) !important;
    padding-bottom: var(--block-padding-small) !important;
}

.box-section .flex_column:not(.av_one_fourth):has(h4):is(:has(p), :has(ul)) .av_textblock_section ~ .av_textblock_section:last-of-type .avia_textblock {
    padding-top: calc(var(--block-padding-small) / 2) !important;
    padding-bottom: var(--block-padding) !important;
}

.box-section .flex_column:not(.av_one_fourth):has(p) .av_textblock_section:first-child .avia_textblock:not(.box-small) {
    padding-top: var(--block-padding);
}

.box-section .flex_column .av_textblock_section:last-child:has(p) .avia_textblock:not(.box-small) {
    padding-bottom: var(--block-padding);
}

/* .box-section .flex_column:not(:has(p)):not(:has(ul)) .av_textblock_section {
    padding-inline: 8px;
    padding-block: 12px;
} */

.box-section .flex_column p {
    font-size: 21px;
}

.box-section .flex_column p strong {
    font-weight: 600 !important;
    color: inherit !important;
}

.box-section .flex_column .body-xl p strong {
    font-weight: 900 !important;
}

.box-section .flex_column .box-small p {
    font-size: 18px;
}

.box-section .av_textblock_section:has(ul) + .av_textblock_section .box-small {
    padding-top: 12px !important;
    padding-bottom: 24px !important;
}

.box-section .flex_column.av_one_full:has(.av_textblock_section:only-child > .box-small:only-child) {
    padding-inline: 8px !important;
    padding-block: 12px !important;
    margin-top: 16px !important;
}

#top .box-section .flex_column.av_one_full:has(.av_textblock_section:only-child > .box-small:only-child) p {
    padding-block: 0px !important;
    margin-block: 0px !important;
}

.box-section .flex_column:not(:first-child).av_one_full:has(.box-title):first-of-type {
    margin-top: var(--block-padding-large) !important;
}

.box-section .flex_column.av_one_full:has(.box-title) + .flex_column.av_one_full:has(.box-title) {
    margin-top: var(--block-padding) !important;
}

.box-section .flex_column.av_one_full:has(.box-small) + .flex_column.av_one_full:has(.box-title) {
    margin-top: var(--block-padding-large) !important;
}

.box-section .av_textblock_section+.av_textblock_section {
    padding-top: 1rem !important;
}

#top .box-section .entry-content-wrapper:has(.av_one_half),
#top .box-section .entry-content-wrapper:has(.av_one_fourth) {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
}

#top .box-section .entry-content-wrapper:has(.av_one_half) {
    column-gap: 24px;
}

#top .box-section .entry-content-wrapper:has(.av_one_fourth) {
    column-gap: 8px;
}

#top .box-section .entry-content-wrapper > .flex_column {
    float: none !important;
    margin-inline: auto !important;
    min-width: 0;
}

.clearfix:after, .clearfix:before, .flex_column:after, .flex_column:before, .widget:after, .widget:before {
    display: none !important;
}


#top .box-section .entry-content-wrapper > .flex_column.av_one_fourth {
    width: calc(25% - 6px) !important;
    margin-inline: 0 !important;
    margin-top: 16px !important;
    margin-bottom: 16px !important;
    padding-inline: 8px;
    padding-top: 32px !important;
    padding-bottom: 24px !important;
}

@media (max-width: 767px) {
    #top .box-section .entry-content-wrapper > .flex_column.av_one_fourth,
    #top .box-section .entry-content-wrapper > .flex_column.av_one_half {
        width: 100% !important;
        margin-inline: 0 !important;
        margin-top: 24px !important;
        padding-inline: 8px;
        padding-bottom: 24px;
        padding-top: 32px;
    }

    #top .box-section .entry-content-wrapper > .av_one_fourth:has(h5),
    #top .box-section .entry-content-wrapper > .av_one_half:has(h5) {
        width: 100% !important;
        margin-inline: 0 !important;
        margin-top: 24px !important;
        
        padding-inline: 8px;
        padding-bottom: 24px;
        padding-top: 0;
    }

    #top .box-section .entry-content-wrapper > .flex_column:first-child.av_one_half:has(h5) {
        margin-top: 0 !important;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    #top .box-section .entry-content-wrapper > .flex_column.av_one_fourth {
        width: calc(50% - 4px) !important;
    }
}


#top .box-section .entry-content-wrapper > .av_one_full,
#top .box-section .entry-content-wrapper > section {
    width: 100% !important;
}

#top .box-section .entry-content-wrapper > .av_one_full .section-title,
#top .box-section .entry-content-wrapper > .av_textblock_section:has(.section-title) {
    display: block !important;
    width: 100% !important;
}

.box-link {
    display: flex !important;
    align-items: flex-start;
    flex-direction: row;
}

.box-link .avia_textblock {
    padding: 0 !important
}

.box-link > * {
    padding-top: var(--block-padding-medium) !important;
    padding-bottom: var(--block-padding) !important;
}

.box-link > *:first-child {
    padding-left: var(--inline-padding) !important;
    padding-right: 0 !important;
}

.box-link > *:nth-child(2) {
    padding-inline: var(--inline-padding) !important;
}

.box-link > *:first-child h3 {
    width: 360px !important;
}

@media (max-width: 767px) {
    .responsive #top #wrap_all .flex_column.box-link {
        flex-direction: column;
        gap: 0;
        margin-top: 24px !important;
    }

    .box-link > * {
        padding-top: 0;
        padding-bottom: 0 !important;
    }

    .box-link > *:first-child {
        padding-inline: var(--inline-padding);
        padding-top: 24px;
    }

    .box-link > *:nth-child(2) {
        padding-inline: var(--inline-padding);
        padding-bottom: 24px !important;
    }
}


/* ───── NEWSLETTER ─────────────────────────────────────────────────────────── */
div:has(+.banner-newsletter) {
    margin-bottom: 16px !important;
}

.banner-newsletter {
    width: 100% !important;
    clear: both !important;
    background-image: url('assets/img/newsletter-bg-scaled.png') !important;
    background-repeat: no-repeat !important;
    background-position: 50% 50% !important;
    background-size: cover !important;
    background-attachment: scroll !important;
    background-color: transparent !important;
    margin-bottom: 0;
    min-height: 300px !important;
    display: flex !important;
    align-items: center !important;
}

.responsive #top #wrap_all .banner-newsletter .flex_column {
    margin-block: 120px !important;
    padding-block: var(--block-padding-large) !important;
    background-color: #fff !important;
}

.banner-newsletter a {
    margin: 12px 0 0 0 !important;
}

@media (max-width: 767px) {
    .responsive #top #wrap_all .banner-newsletter .flex_column {
        margin-block: 40px !important;
    }


    #top .banner-newsletter .avia-button {
        margin-inline: var(--inline-padding) !important;
        width: calc(100% - var(--inline-padding) * 2) !important;
    }

    div:has(+.banner-newsletter) {
        margin-bottom: 8px !important;
    }
}
/* ──────────────────────────────────────────────────────────────────────── */


/* ───── FOOTER ─────────────────────────────────────────────────────────── */
.flex-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: var(--block-padding) !important;
}

.flex-container:nth-child(2) p {
    margin: 0 !important
}

.custom-footer-loghi {
    padding-block: var(--section-spacing) !important;
}

.loghi-section {
    margin-bottom: 32px !important;
}

.loghi-section p {
    margin-bottom: var(--block-padding-small) !important;
}

.custom-footer-riga2 {
    background-color: rgba(17, 56, 92, 0.2);
    padding-top: var(--section-spacing) !important;
    padding-bottom: var(--block-padding) !important;
    font-size: 15px !important;
    font-weight: 300 !important;
}

.custom-footer-riga2 a {
    color: #000000;
    text-decoration: none;
}

.custom-footer-riga2 .flex-container {
    padding-block: var(--block-padding-small) !important;
}

.footer-riga2-contatto hr {
    width: 417px !important;
    border-bottom: 1px solid !important;
    margin-block: 6px !important;
}
/* ──────────────────────────────────────────────────────────────────────── */

/* RESPONSIVE */
@media (max-width: 1200px) {
    br {
        display: none;
    }
}

@media (max-width: 767px) {
    #top h1 {
        font-size: 42px;
        line-height: 100% !important;
    }

    #top h2, .blocks-stack p a, .cta-home h3  {
        font-size: 28px !important;
    }

    #top h3 {
        font-size: 24px !important;
    }

    #top h4 {
        font-size: 24px;
    }

    #top h5 {
        font-size: 20px;
    }

    #top .h1-home h1 {
        padding-top: 0px !important;
    }

    #top #main {
        margin-top: 140px !important;
    }

    #top .h1-pagina-interna h1 {
        font-size: 42px;
        margin-bottom: 8px;
    }

    #top .body-l > p {
        font-size: 22px !important;
        
    }

    #top p, #top .avia-button, #top .box-section ul {
        font-size: 18px !important;
    }

    #top p.evento-card__intro,
    #top p.news-card__intro,
    #top .box-small p,
    #top .evento-card__meta {
        font-size: 14px !important;
    }

    #top .box-section .av_textblock_section:has(ul) + .av_textblock_section .box-small {
        padding-block: 0 !important;
    }

    .avia_textblock.body-l {
        padding: 20px 0 0 0 !important;
    }

    #top .body-xl > p {
        font-size: 26px !important;
    }

    #top .body-2xl > p {
        font-size: 36px !important;
    }

    .avia_textblock.body-l p:first-child {
        margin-top: 0;
    }

    .av_textblock_section .avia_textblock.body-l {
        padding-top: 0px !important;
    }

    .av_textblock_section .avia_textblock.body-l p + p{
        padding-top: 0px !important;
    }
    

    #top .avia-button {
        font-size: 18px;
        padding: 10px 20px !important;
        width: 100% !important;
    }

    .avia-button a {
        width: 100% !important;
    }

    body:not(.home) .avia-section {
        margin-top: 8px !important;
    }

    .av_multi_colums {
        column-count: 1 !important;
    }

    /* Footer responsive */
    .custom-footer .container {
        width: 85%;
        max-width: 85%;
        margin: 0 auto;
        padding-left: 0;
        padding-right: 0;
        float: none;
    }

    .custom-footer-loghi .flex-container,
    .footer-riga2-inner .flex-container {
        flex-direction: column;
    }

    .footer-riga2-loghi {
        gap: 16px !important;
    }

    .footer-riga2-inner {
        display: flex;
        flex-direction: column;
        gap: 24px !important;
    }

    .footer-riga2-policy {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    .loghi-section {
        margin-bottom: 0px !important;
    }

    .loghi-section:nth-child(2) p {
        margin-top: 0px !important;
    }

    .loghi-container {
        display: flex !important;
        flex-direction: column !important;
        align-items: start !important;
        gap: 16px !important;
    }

    .separator {
        display: none !important;
    }

    .footer-riga2-contatto hr {
        width: 100% !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    /* Footer responsive */
    .custom-footer-loghi .flex-container,
    .footer-riga2-inner .flex-container {
        flex-direction: column !important;
    }

    .loghi-section:nth-child(1) {
        margin-bottom: 0px;
    }

    .loghi-section:nth-child(2) p {
        margin-top: 0px;
    }
}

/* HEADER LOGOS */
.av-logo-container .inner-container {
    display: flex;
    align-items: center;
}

div .logo {
    position: relative !important;
}

.logos-group {
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 24px;
}

.logos-group img {
    max-height: 40px !important;
    width: auto;
    display: block;
    transition: filter 0.3s ease;
}

footer img {
    max-height: 40px !important;
    width: auto;
    display: block;
}

header .logos-group img {
    filter : brightness(0%);
}

header .logos-group img:hover {
    filter: brightness(100%);
}

.custom-secondary-logo { 
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
}

.custom-secondary-logo-img {
    max-height: 60px;
    width: auto;
    display: block;
}

.av-logo-container .inner-container > .main_menu {
    margin-left: auto;
}

/* Smooth resize on scroll for elements Enfold's JS doesn't reach */
#header_main .main_menu #menu-item-search > a,
#header_main ul.social_bookmarks #menu-item-search > a {
    transition: height 0.4s ease, line-height 0.4s ease !important;
}

.home #header.is-scrolled #header_main .main_menu #menu-item-search > a,
.home #header.is-scrolled #header_main ul.social_bookmarks #menu-item-search > a {
    height: 30px !important;
    line-height: 30px !important;
}


/* CARDS SECTION GRID */
#top .cards-section .entry-content-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between;
}

#top .cards-section .entry-content-wrapper > .card-item {
    float: none !important;
    box-sizing: border-box !important;
    width: calc(50% - 28px) !important;
    background-color: white;
    margin-top: var(--block-padding-large) !important;
}


#top .cards-section .entry-content-wrapper > .flex_column_table {
    float: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    margin-top: var(--block-padding-large) !important;
}

#top .cards-section .entry-content-wrapper > .flex_column_table {
    margin-top: var(--block-padding) !important;
}

#top .cards-section .entry-content-wrapper > .flex_column_table:first-child {
    margin-top: 0 !important;
}

#top .entry-content-wrapper > .flex_column_table:has(div) {
    margin-bottom: var(--block-padding-large) !important;
}


#top .cards-section .card-item .avia-image-container, #top .cards-section .card-item .avia-image-container img  {
    margin: 0 !important;
    border-radius: 0 !important;
}

#top .cards-section .entry-content-wrapper > .card-item p,
#top .cards-section .entry-content-wrapper .icon-card-item p,
#top .cards-section .entry-content-wrapper .icon-card-item-small p  {
    padding-inline: var(--inline-padding);
    padding-block: var(--block-padding);
    margin-block: 0px;
    font-weight: 300;
}


#top .cards-section .entry-content-wrapper .icon-card-item img, #top .cards-section .entry-content-wrapper .icon-card-item p,
#top .cards-section .entry-content-wrapper .icon-card-item-small img, #top .cards-section .entry-content-wrapper .icon-card-item-small p  {
    margin-block: 0 !important;
    padding-block: 0 !important;
}

#top .cards-section .entry-content-wrapper .icon-card-item h2,
#top .cards-section .entry-content-wrapper .icon-card-item-small h2 {
    margin-block: 24px !important;
}

#top .cards-section .entry-content-wrapper > .card-item .avia-button-wrap,
#top .box-section .avia-button-wrap {
    padding-inline: var(--inline-padding);
    padding-bottom: var(--block-padding) !important;
    text-align: left !important;
}

#top .box-section .avia-button-wrap.avia-button-center {
    text-align: center !important;
}

#top .cards-section .entry-content-wrapper > .card-item .avia-button {
    margin-top: 0px !important;
    max-width: 100% !important;
}

@media (max-width: 767px) {
    #top .cards-section .entry-content-wrapper > .card-item {
        width: 100% !important;
        margin-bottom: 0 !important;
    }
}

.current_page_item > a > span.avia-menu-text, #av-burger-menu-ul > li:hover > a,
li:has(.current_page_item) > a > span.avia-menu-text {
    color: #b00021 !important;
    font-weight: 600 !important;
}

@media only screen and (max-width: 1100px) {

    .current_page_item > a > span.avia-menu-text, #av-burger-menu-ul > li:hover > a {
        color: #b00021 !important;
        font-weight: 600 !important;
        
    }

    .av-hamburger:hover .av-hamburger-inner,
    .av-hamburger:hover .av-hamburger-inner::before,
    .av-hamburger:hover .av-hamburger-inner::after {
        background-color: black !important;
    }

    .current_page_item > a:hover {
        text-decoration-color: #b00021 !important;
    }

    #av-burger-menu-ul > li {
        font-size: 18px !important;
    }

    #av-burger-menu-ul ul li {
        font-size: 16px !important;
    }

    .social_bookmarks a {
        padding: 5px !important;
        line-height: 30px !important;
    }


    .responsive #top #header .main_menu .social_bookmarks {
        display: block;
        position: relative;
        padding-block: 20px !important;
        padding-inline: 50px !important;
        margin-top: 0 !important;
        margin-left: 0 !important;
        top: 0 !important;
        height: 150px !important
    }

    .responsive #top #header .main_menu .social_bookmarks a {
        height: 30px;
        line-height: 30px;
    }

    #top .social_bookmarks li.avia-svg-icon a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    #top .social_bookmarks li.avia-svg-icon a svg {
        margin-top:  0 !important;
    }

    #header {
        position: fixed !important;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 9999;
    }

    /* Make logo row flex so burger stays inline with logos */
    #header_main .av-logo-container .inner-container {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        overflow: visible !important;
    }
    nav.main_menu {
        display: block !important;
    }
    #avia-menu .menu-item {
        display: none;
    }
    .av-burger-menu-main.menu-item-avia-special {
        display: block;
    }
    #top #main  {
        margin-top: 160px !important;
    }
    #header_main_alternate.container_wrap {
        display: none !important;
    }
    #header_main .inner-container > .social_bookmarks {
        display: none !important;
    }
    #header_main .av-burger-menu-main {
        display: flex !important;
        align-items: center;
        margin-left: auto;
    }

    #header_main .av-burger-menu-main > a {
        height: 80px !important;
        line-height: 80px !important;
        display: flex !important;
        align-items: center;
        transition: height 0.4s ease, line-height 0.4s ease !important;
    }

    .home #header.is-scrolled #header_main .av-burger-menu-main > a {
        height: 50px !important;
        line-height: 50px !important;
    }

}

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  .html_header_top #top .av_menu_left .main_menu {
    left: auto !important;
    right: 0 !important;
  }
}

.main_menu .social_bookmarks:not(.burger-social-icons) {
    display: none !important;
}

#header_main_alternate .av-burger-menu-main {
    display: none !important;
}

.av-burger-overlay .burger-social-icons {
    position: absolute;
    bottom: 32px;
    left: 0;
    right: 0;
    z-index: 11 !important;
    display: flex !important;
    flex-direction: row;
    justify-content: center;
    gap: 12px;
    padding: 0 var(--inline-padding);
    border-top: none;
}

.av-burger-overlay .burger-social-icons a {
    background-color: rgba(255, 255, 255, 0.15) !important;
}

.av-burger-overlay .burger-social-icons a:hover {
    background-color: #b00021 !important;
}

#menu-item-search > a, .av_searchform_search {
    background: transparent !important;
    height: auto !important;
    line-height: 30px !important;
}

/* Allow search results dropdown to escape .social_bookmarks overflow:hidden */
#top nav .social_bookmarks,
#top nav .social_bookmarks li#menu-item-search {
    overflow: visible !important;
}

#top #wrap_all .social_bookmarks  div .av_ajax_search_entry {
    display: block !important;
    text-decoration: none !important;
    line-height: 1.4em !important;
    font-size: 12px !important;
    height: auto !important;
    padding: 10px 16px !important;
    border-bottom-style: dashed !important;
    border-bottom-width: 1px !important;
    clear: both !important;
    overflow: hidden !important;
    position: relative !important   ;
    background-color: transparent !important;
    width: 100% !important;
    border-radius: 0 !important;
}

#top div .av_ajax_search_entry .av_ajax_search_image {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    vertical-align: baseline;
    letter-spacing: -0.4px !important;
    font-family: 'Titillium Web', sans-serif !important;
    height: 32px;
    line-height: 32px;
    text-align: center;
    width: 32px !important;
    float: left;
    margin-right: 8px;
    border-radius: 40px !important;
    overflow: hidden;
    font-size: 15px;
    border-color: var(--enfold-header-color-border);
    background-color: var(--enfold-header-color-primary);
    color: var(--enfold-header-color-bg);
}

.av_ajax_search_title {
    font-size: 14px !important;
    font-weight: 700 !important;
    text-align: left !important;
}

.ajax_search_excerpt {
    font-size: 12px !important;
    font-weight: 400 !important;
    text-align: left !important;
}

.avia-menu.av_menu_icon_beside {
    padding-right: 0 !important;
    margin-right: 0 !important;
    border-right: none !important;
}

@media (max-width: 1100px) {
    .responsive .logo {
        float: left;
    }

    .responsive #header_meta .sub_menu>ul>li {
        float: left !important;
        padding-inline: 0 !important;
        padding-bottom: 8px !important;
    }

    .responsive #header_meta .sub_menu {
        position: relative !important;
    }

    /* Mobile search clone, inserted via JS before the burger icon */
    .av-mobile-search-clone {
        display: flex !important;
        align-items: center;
        margin-left: auto;
    }

    .av-mobile-search-clone > a {
        height: 80px !important;
        line-height: 80px !important;
        display: flex !important;
        align-items: center;
        padding: 0 8px;
        background: transparent !important;
    }

    #header_main .av-burger-menu-main {
        margin-left: 0 !important;
    }

    #top .menu-item-search-dropdown>a.avia-svg-icon svg:first-child {
        height: 30px !important;
    }

    #top #header .social_bookmarks li:last-child{
        display: none !important;
    }

    .logos-group img {
        max-height:30px !important;
        width: auto !important
    }

    .responsive #top .logo {
        width: auto !important;
    }
}

/* ───── PAGINA TESTUALE ────────────────────────────────────────────────── */
#main > div.main_color.container_wrap_first.container_wrap.fullsize > div > main > div > div > section > div.avia_textblock > *{
    padding-top: 0 !important;
    margin-block: 0 !important;
}

#main > div.main_color.container_wrap_first.container_wrap.fullsize > div > main > div > div > section > div.avia_textblock > *:first-child {
    padding-top: var(--section-spacing) !important;
}

#main > div.main_color.container_wrap_first.container_wrap.fullsize > div > main > div > div > section > div.avia_textblock > * {    
    padding-bottom: var(--block-padding) !important;
}

#main > div.main_color.container_wrap_first.container_wrap.fullsize > div > main > div > div > section > div.avia_textblock > p:has(+p),
#main > div.main_color.container_wrap_first.container_wrap.fullsize > div > main > div > div > section > div.avia_textblock > *:last-child {
    padding-bottom: 0 !important;
}

/* ──────────────────────────────────────────────────────────────────────── */



/* ───── ANIMATIONS ─────────────────────────────────────────────────────── */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(25px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.avia_textblock.h1-home h1 {
    animation: fadeInUp 0.4s ease-out forwards;
    opacity: 0;
}

.avia_textblock.h1-home h1 strong:first-of-type {
    display: inline-block;
    animation: fadeInUp 0.4s ease-out 0.1s forwards;
    opacity: 0;
}

.avia_textblock.h1-home h1 strong:nth-of-type(2) {
    display: inline-block;
    animation: fadeInUp 0.4s ease-out 0.2s forwards;
    opacity: 0;
}

@keyframes bgFadeIn {
    to {
        opacity: 0.8;
        transform: rotate(0deg);
    }
}

/* Sposta il bg di Enfold su ::before per poterne animare l'opacità */
.avia-section.av-79u7f-5e0ca2a7ca9eae8909b254b0e65148c5 {
    background-image: none !important;
    position: relative;
}

.avia-section.av-79u7f-5e0ca2a7ca9eae8909b254b0e65148c5::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url(/wp-content/uploads/2026/04/SEGNO_HOME2x-scaled-e1777036733602-947x1030.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 60% auto;
    background-origin: content-box;
    padding-inline: 40px;
    opacity: 0;
    animation: bgFadeIn 0.6s ease 0.3s forwards;
    pointer-events: none;
    z-index: 0;
    transform: rotate(-30deg);
}

@media (min-width: 1310px) {
    .avia-section.av-79u7f-5e0ca2a7ca9eae8909b254b0e65148c5::before {
        background-size: 50% auto;
        padding-inline: calc((100vw - 1210px) / 2);
    }
}

@media (max-width: 767px) {
    .avia-section.av-79u7f-5e0ca2a7ca9eae8909b254b0e65148c5::before {
        background-size: contain;
        background-position: center center;
    }
}



/* CPT - Eventi e News */
/* ARCHIVE */
.eventi-archive-grid, .news-archive-grid {
    columns:        3;
    column-gap:     24px;
    max-width:      1210px;
    margin-inline:  auto !important;
    padding-inline: 0 !important;
    margin-top:     var(--block-padding-large) !important;
}

.archive-filters, .pagination-block {
    padding-inline: 0 !important;
    padding-top: var(--block-padding-large);
}

.eventi-archive-grid .evento-card, .news-archive-grid .news-card {
    break-inside:  avoid;
    margin-bottom: var(--section-spacing) !important;
    width:         100%;
}

@media (min-width:768px) and (max-width: 1310px) {
    .archive-filters, .pagination-block {
        padding-inline: 50px !important;
    }

    .eventi-archive-grid, .news-archive-grid {
        width: calc(100% - 100px) !important;
    }
}

@media (min-width:768px) and (max-width: 991px) {
    .eventi-archive-grid, .news-archive-grid {
        columns: 2;
    }
}

@media (max-width: 767px) {
    .eventi-archive-grid, .news-archive-grid {
        columns: 1;
    }

    .archive-filters, .eventi-archive-grid, .news-archive-grid, .pagination-block {
        padding-inline: 32px !important;
    }
}

/* SINGLE */
.evento-single h1,
.news-single h1 {
    text-align: center;
    padding-bottom: var(--section-spacing) !important;
}

.post-background {
    width: 100% !important;
    padding-block: var(--section-spacing) !important;
}

.evento-single .post-background {
    background: url('assets/img/eventi-bg.png') !important;
}

.news-single .post-background {
    background-color: #d7e665 !important;
}

.metadata-event,
.metadata-news {
    background-color: #d7e665 !important;
    text-align: center;
    margin-inline: auto;
    margin-top: 0;
    margin-bottom: var(--block-padding) !important;
    padding-block: var(--block-padding) !important;
    padding-inline: var(--inline-padding) !important;
}

.metadata-event .evento-card__data {
    text-transform: uppercase !important;
}

.metadata-event p, .metadata-event span,
.metadata-news p, .metadata-news span {
    font-size: 40px !important;
    font-weight: 600 !important;
    line-height: normal !important;
}

.post-thumbnail {
    width:  100% !important;
    height: 400px !important;
}

.post-thumbnail > img {
    object-fit: cover !important;
    width:  100% !important;
    height: 100% !important;
    object-position: center center !important;
}

.entry-content {
    font-size: 24px !important;
    background-color: white !important;
    padding-inline: var(--inline-padding) !important;
    padding-block: var(--block-padding) !important;
}

.entry-content .card-tags {
    padding-block: var(--block-padding) !important;
}

body#top .entry-content p:has(.news-card__date) {
    margin-top: var(--block-padding) !important;
}
body#top .entry-content .news-card__date {
    font-weight: 700 !important;
}



@media (max-width: 767px) {
    .metadata-event p, .metadata-event span,
    .metadata-news p, .metadata-news span {
        font-size: 24px !important;
    }

    .entry-content {
        font-size: 18px !important;
    }
}

.avia-post-nav {
    display: none !important;
}


/* ═══════════════════════════════════════════════════════════════════════════
   ARCHIVE EVENTI — filters & pagination
   Dipendenze: variabili definite in style.css (:root)
   ═══════════════════════════════════════════════════════════════════════════ */


/* ── Override Enfold's default pagination shape ───────────────────────── */
#top .fullsize .template-blog .pagination a,
#top .pagination .current,
#top .pagination a {
    float:         none;
    height:        var(--sq-size);
    width:         var(--sq-size);
    line-height:   var(--sq-size);
    text-align:    center;
    padding:       0;
    border-radius: 0;
    margin-right:  0;
    box-shadow:    none;
}

:root {
    --sq-size: 44px;
    --sq-border: 1px solid #000;
    --sq-active: #b00021;
    --sq-radius: 0; 
    --sq-font: 600 14px/1 'Titillium Web', sans-serif;
    --sq-gap: 0px;
}



.archive-filters {
    display:         flex;
    flex-wrap:       wrap;
    align-items:     stretch;
    gap:             8px;
    margin-bottom:   var(--block-padding-medium);
    /* allinea con la griglia dei risultati */
    max-width:       1210px;
    margin-inline:   auto !important;
}

/* ── singola cella filtro ── */
.archive-filter {
    display:        flex;
    align-items:    stretch;
}


/* ── elementi interni: select, input, button, a ── */
.archive-filter select,
.archive-filter input[type="text"],
.archive-filter button[type="submit"],
.archive-filter .archive-filter__reset {
    /* reset browser */
    -webkit-appearance: none;
    appearance:         none;
    background:         #fff;
    border:             1px solid #ccc;
    border-radius:      var(--sq-radius);
    margin:             0;
    padding:            0 16px;
    height:             var(--sq-size);
    min-width:          var(--sq-size);
    font:               var(--sq-font);
    color:              #222 !important;
    cursor:             pointer;
    white-space:        nowrap;
    transition:         background 0.15s, color 0.15s, border-color 0.15s;
    text-overflow:      ellipsis;
    overflow:           hidden;
}

/* freccia custom per i <select> */
.archive-filter select {
    padding-right:      40px;
    min-width:          150px;
    background-image:   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23333'/%3E%3C/svg%3E");
    background-repeat:  no-repeat;
    background-position: right 14px center;
    background-size:    10px 6px;
}

.archive-filter {
    flex-shrink: 0;
}

/* campo di testo: leggermente più largo */
.archive-filter--search input[type="text"] {
    min-width: 180px;
    cursor:    text;
}

/* ── stati interattivi ── */
.archive-filter select:hover,
.archive-filter input[type="text"]:hover,
.archive-filter button[type="submit"]:hover {
    border-color: var(--sq-active);
    z-index: 1;
    position: relative;
}

.archive-filter select:focus,
.archive-filter input[type="text"]:focus {
    outline:       none;
    border-color:  var(--sq-active);
    z-index:       2;
    position:      relative;
}

/* ── pulsante "Filtra" ── */
.archive-filter button[type="submit"] {
    background:   #000;
    color:        #fff !important;
    border-color: #000;
    font-weight:  700;
    letter-spacing: 0.02em;
}

.archive-filter button[type="submit"]:hover {
    background:   var(--sq-active);
    border-color: var(--sq-active);
    color:        #fff;
}

/* ── link "Reset" ── */
.archive-filter__reset {
    display:         inline-flex;
    align-items:     center;
    padding:         0 16px;
    height:          var(--sq-size);
    border:          var(--sq-border);
    border-left:     none;          /* condivide bordo con il button submit   */
    font:            var(--sq-font);
    color:           #000;
    text-decoration: none !important;
    transition:      background 0.15s, color 0.15s;
    white-space:     nowrap;
}

.archive-filter__reset:hover {
    background:     var(--sq-active);
    color:          #fff !important;
    border-color:   var(--sq-active);
    text-decoration: none !important;
}

/* ── select attivo (filtro applicato) ── */
.archive-filter select option:checked,
.archive-filter select[data-active="true"] {
    font-weight: 700;
}

/* evidenzia la cella select quando il suo valore è != "" (filtro attivo) */
.archive-filter--tag    select:not([value=""]):not(:invalid),
.archive-filter--anno   select:not([value=""]):not(:invalid),
.archive-filter--luogo  select:not([value=""]):not(:invalid) {
    border-bottom: 3px solid var(--sq-active);
}

.archive-filter--tag,
.archive-filter--anno,
.archive-filter--luogo {
    width: 220px;
}


/* ── RESPONSIVE ── */
@media (max-width: 767px) {
    .archive-filters {
        flex-direction: column;
    }

    .archive-filter {
        margin-left: 0;
        margin-top:  calc(var(--sq-border-width, 1px) * -1);
    }

    .archive-filter:first-child {
        margin-top: 0;
    }

    .archive-filter select,
    .archive-filter input[type="text"],
    .archive-filter button[type="submit"],
    .archive-filter__reset,
    .archive-filter--tag,
    .archive-filter--anno,
    .archive-filter--luogo {
        width:     100%;
        min-width: 0;
    }

    /* reset il border-left rimosso su desktop */
    .archive-filter__reset {
        border-left: var(--sq-border);
        border-top:  none;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .archive-filter--search input[type="text"] {
        min-width: 120px;
    }
}

/* ── contenitore nav ── */
.pagination-block {
    margin-top:    var(--block-padding-medium);
    margin-bottom: 0;
    max-width:     1210px;
    margin-inline: auto !important;
}

/* ── lista ── */
.pagination {
    display:         flex;
    flex-wrap:       wrap;
    align-items:     stretch;
    list-style:      none;
    padding:         0;
    margin:          0;
    gap:             8px;
}

/* ── singolo <li> ── */
.pagination li {
    margin-left: 0;
}

/* ── cella quadrata base (link, span, button) ── */
.pagination li a,
.pagination li span,
.pagination li button {
    display:         flex;
    align-items:     center;
    justify-content: center;
    width:           var(--sq-size);
    height:          var(--sq-size);
    min-width:       var(--sq-size);
    border:          var(--sq-border);
    border-radius:   var(--sq-radius);
    background:      #fff;
    color:           #000;
    font:            var(--sq-font);
    font-size:       16px !important;
    cursor:          pointer;
    text-decoration: none !important;
    transition:      background 0.15s, color 0.15s, border-color 0.15s;
    /* reset browser per <button> */
    -webkit-appearance: none;
    appearance:         none;
    padding:            0;
    margin:             0;
    position:           relative;   /* per z-index hover                     */
    z-index:            0;
}

/* ── hover ── */
.pagination li:not(.current):not(.disabled) a:hover,
.pagination li:not(.current):not(.disabled) button:hover {
    background:   #000;
    color:        #fff;
    border-color: #000;
    z-index:      1;
}

/* ── pagina corrente ── */
.pagination li.current span,
.pagination li.current a {
    background:   var(--sq-active);
    color:        #fff;
    border-color: var(--sq-active);
    z-index:      1;
    font-weight:  700;
    cursor:       default;
}

/* ── disabled (frecce su prima/ultima pagina) ── */
.pagination li.disabled a,
.pagination li.disabled button,
.pagination li.disabled span {
    color:          #bbb;
    border-color:   #ddd;
    background:     #f5f5f5;
    cursor:         not-allowed;
    pointer-events: none;
}

.pagination li.btn svg {
    display: block;
    flex-shrink: 0;
}

.pagination li:not(.btn):not(.current) span {
    cursor: default;
    background: #fff;
    color: #888;
    border-color: #ddd;
    pointer-events: none;
}


/* ── ellipsis ── */
.pagination li.ellipsis span {
    cursor: default;
    background: transparent;
    border-color: transparent;
    color: #888;
    pointer-events: none;
    letter-spacing: 0.05em;
}

.pagination li.hidden {
    display: none !important;
}

@media (max-width: 767px) {
    .pagination li.hidden.md\:flex {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .pagination li.hidden.md\:flex {
        display: flex !important;
    }
}
.pagination li.flex {
    display: flex !important;
}


/* ── RESPONSIVE paginazione ── */
@media (max-width: 767px) {
    :root {
        --sq-size: 40px;
    }
}

/* ══════════════════════════════════════════════════════════════════════════
   CUSTOM SELECT DROPDOWN  →  .custom-select__*
   ══════════════════════════════════════════════════════════════════════════ */

.archive-filter {
    position: relative;
}

.custom-select__trigger {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    gap:             12px;
    width:           100%;
    height:          var(--sq-size);
    min-width:       150px;
    padding:         0 16px;
    background:      #fff;
    border:          1px solid #ccc;
    border-radius:   var(--sq-radius);
    color:           #222;
    font:            var(--sq-font);
    font-size:       16px !important;
    cursor:          pointer;
    text-align:      left;
    white-space:     nowrap;
    overflow:        hidden;
    -webkit-appearance: none;
    appearance:         none;
    transition:      border-color 0.15s, color 0.15s;
}

.custom-select__trigger span:first-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    padding-block: 12px ;
}

.custom-select__trigger:hover,
.custom-select__trigger.is-open {
    border-color: var(--sq-active);
    color: var(--sq-active);
}

.custom-select__chevron {
    flex-shrink: 0;
    transition: transform 0.2s ease;
    color: #888;
}

.custom-select__trigger.is-open .custom-select__chevron,
.custom-select__trigger:hover .custom-select__chevron {
    transform: rotate(180deg);
    color: var(--sq-active);
}

.custom-select__dropdown {
    position:   absolute;
    top:        calc(100% + 4px);
    left:       0;
    min-width:  100%;
    background: #fff;
    border:     1px solid #ddd;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10);
    z-index:    200;
    max-height: 300px;
    overflow-y: auto;
}

.custom-select__option {
    padding:     16px 24px !important;
    font:        var(--sq-font);
    font-size:   16px !important;
    color:       #222;
    cursor:      pointer;
    transition:  background 0.1s;
    border-bottom: 1px solid #f2f2f2;
    white-space: nowrap;
}

.custom-select__option:last-child {
    border-bottom: none;
}

.custom-select__option:hover {
    background: #f8f8f8;
}

.custom-select__option.is-active {
    color:           var(--sq-active);
    text-decoration: underline;
    font-weight:     700;
}

/* ── MULTI-SELECT  →  .custom-select__dropdown--multi  ─────────────────── */

.custom-select__dropdown--multi {
    overflow-y:     hidden;
    display:        flex;
    flex-direction: column;
    padding:        12px;
    gap:            8px;
}


.custom-select__options {
    overflow-y: auto;
    max-height: 220px;
}

.custom-select__option--check {
    display:     flex;
    align-items: center;
    gap:         10px;
    padding:     10px 8px !important;
    cursor:      pointer;
    border-bottom: 1px solid #f2f2f2;
    text-decoration: none !important;
    font-weight: 400 !important;
    color:       #222 !important;
}

.custom-select__option--check:last-child {
    border-bottom: none;
}

.custom-select__option--check:hover {
    background: #f8f8f8;
}

.custom-select__checkbox {
    flex-shrink:   0;
    width:         16px;
    height:        16px;
    border:        2px solid #ccc;
    border-radius: 3px;
    transition:    background 0.1s, border-color 0.1s;
}

.custom-select__checkbox.is-checked {
    background:   var(--sq-active, #c0392b);
    border-color: var(--sq-active, #c0392b);
}

.custom-select__swatch {
    flex-shrink:   0;
    width:         16px;
    height:        16px;
    border-radius: 3px;
}

.custom-select__opt-label {
    font-size: 14px !important;
    line-height: 1.3;
}

/* ── WPML LANGUAGE SWITCHER ─────────────────────────────────────────────── */
ul.avia_wpml_language_switch {
    position: relative !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    height: auto !important;
}

p.wpml-ls-statics-post_translations.wpml-ls,
div.wpml-ls-statics-footer.wpml-ls.wpml-ls-legacy-list-horizontal {
    display: none !important;
}

/* hide flag, full name, translated name — show only code */
ul.avia_wpml_language_switch .language_flag,
ul.avia_wpml_language_switch .language_native,
ul.avia_wpml_language_switch .language_translated {
    display: none !important;
}

ul.avia_wpml_language_switch .language_code {
    display: inline !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
}

/* current language — shown as trigger with chevron */
ul.avia_wpml_language_switch li.avia_current_lang {
    display: block !important;
}

ul.avia_wpml_language_switch li.avia_current_lang > a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #fff !important;
    text-decoration: none !important;
    border-bottom: 2px solid #fff !important;
    padding-bottom: 2px !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

ul.avia_wpml_language_switch li.avia_current_lang > a::after {
    content: '' !important;
    display: inline-block !important;
    width: 7px !important;
    height: 7px !important;
    border-right: 2px solid currentColor !important;
    border-bottom: 2px solid currentColor !important;
    transform: rotate(45deg) !important;
    margin-top: -4px !important;
    flex-shrink: 0 !important;
}

/* other languages — hidden by default, shown on click (.is-open) */
ul.avia_wpml_language_switch li:not(.avia_current_lang) {
    display: none !important;
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;
    background: #fff !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15) !important;
    min-width: 90px !important;
    z-index: 9999 !important;
}

ul.avia_wpml_language_switch.is-open li:not(.avia_current_lang) {
    display: block !important;
    float: none !important;
    width: auto !important;
    transform: none !important;
}

/* Second non-current item stacks below the first.
   ~ matches any non-current li that follows another non-current li (same parent),
   so this works regardless of which language is currently active. */
ul.avia_wpml_language_switch.is-open li:not(.avia_current_lang) ~ li:not(.avia_current_lang) {
    top: calc(100% + 10px + 44px) !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.10) !important;
}

#top ul.avia_wpml_language_switch li:not(.avia_current_lang) > a,
ul.avia_wpml_language_switch li:not(.avia_current_lang) > a {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 12px 20px !important;
    color: #333 !important;
    text-decoration: none !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    height: auto !important;
    background: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
}

ul.avia_wpml_language_switch li:not(.avia_current_lang) > a:hover {
    background: #f5f5f5 !important;
}

.avia_wpml_language_switch li:hover {
    opacity: 1 !important;
    color: black !important;
}

ul.avia_wpml_language_switch li:not(.avia_current_lang) .language_code {
    display: inline !important;
    color: #333 !important;
    font-size: 14px !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-transform: uppercase !important;
}

/* Research Profiles — inline buttons */
.avia-button-wrap +.avia-button-wrap  ,
.avia-button-wrap:has(+.avia-button-wrap) {
    display: inline-flex;
    width: auto;
}

.av-mppd5scg-febbc5d7d6dc4bb2dddcd8b49564b048 {
    text-align: center;
}

main img {
    max-height: 300px !important;
    height: auto !important;
    width: auto !important;
    max-width: 100% !important;
}
