/* ============================================================
   TOOLS Italiani.it – Shortcode Styles
   Usato da: [category_children], [italia_category_logo]
   ============================================================ */

/* ── category_children grid ─────────────────────────────────────────────── */

.category-children {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 16px;
}

.category-children li {
    list-style: none;
}

/* ── .menu-italia ────────────────────────────────────────────────────────── */

.menu-italia nav ul.elementor-nav-menu {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
    gap: 4px;
    width: 100%;
}

.menu-italia nav ul.elementor-nav-menu .menu-item {
    background-color: #197149;
    border-radius: 6px;
    overflow: hidden;
}

.menu-italia nav ul.elementor-nav-menu .menu-item a:hover,
.menu-italia nav ul.elementor-nav-menu .menu-item:hover a {
    color: #fff;
    fill:  var(--e-global-color-primary);
    background: #0B3E27;
}

.menu-italia nav ul.elementor-nav-menu .menu-item a {
    padding:        4px 6px!important;
    margin: 0;
    font-size:      0.7rem;
    font-weight:    500;
    text-transform: uppercase;
    color: #ffffff;
    fill:   var(--e-global-color-text);
    height: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
	text-align: center;
}

.menu-italia nav ul.elementor-nav-menu a.current {
    background: #0B3E27;
    color: #fff!important;
}

/* RED */

.menu-italia.world nav ul.elementor-nav-menu .menu-item {
    background-color: #E31F23;
    border-radius: 6px;
    overflow: hidden;
}

.menu-italia.world nav ul.elementor-nav-menu .menu-item a:hover,
.menu-italia.world nav ul.elementor-nav-menu .menu-item:hover a {
    color: #fff;
    fill:  var(--e-global-color-primary);
    background: #a11830;
}

.menu-italia.world nav ul.elementor-nav-menu a.current {
    background: #a11830;
    color: #fff!important;
}

/* ── .menu-italia-tab ────────────────────────────────────────────────────── */

.menu-italia-tab nav ul.elementor-nav-menu {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap:     4px;
    row-gap: 0;
    width:   100%;
}

.menu-italia-tab nav ul.elementor-nav-menu:has(.fa.fa-home) {
    display: grid;
    grid-template-columns: 50px repeat(auto-fill, minmax(160px, 1fr));
}

.menu-italia-tab nav ul.elementor-nav-menu .menu-item {
    background-color: #FFFFFF80;
    border-radius:    12px 12px 0 0;
    overflow: hidden;
	-webkit-backdrop-filter: saturate(100%) blur(5px);
    backdrop-filter: saturate(100%) blur(5px);
}

.menu-italia-tab nav ul.elementor-nav-menu .menu-item.current-menu-item,
.menu-italia-tab nav ul.elementor-nav-menu .menu-item.current-cucina-ancestor,
.menu-italia-tab nav ul.elementor-nav-menu .menu-item.current-category-ancestor,
.menu-italia-tab nav ul.elementor-nav-menu .menu-item.current-fondazione-ancestor,
.menu-italia-tab nav ul.elementor-nav-menu .menu-item.current-geografia-ancestor,
.menu-italia-tab nav ul.elementor-nav-menu .menu-item.current-progetto-comuni-ancestor,
.menu-italia-tab nav ul.elementor-nav-menu .menu-item.current-bollino-made-in-it-ancestor
{
    background-color: #ffffff;
    margin-bottom: -1px;
}

.menu-italia-tab nav ul.elementor-nav-menu .menu-item .elementor-item {
    padding-top:    12px !important;
    padding-bottom: 12px !important;
    justify-content: center;
}

.menu-italia-tab nav ul.elementor-nav-menu .menu-item a:hover,
.menu-italia-tab nav ul.elementor-nav-menu .menu-item:hover a {
    color: var(--e-global-color-primary);
    fill:  var(--e-global-color-primary);
}

.menu-italia-tab nav ul.elementor-nav-menu .menu-item a {
    padding-left:   6px;
    padding-right:  6px;
    padding-top:    5px;
    padding-bottom: 5px;
    font-size:      0.8rem;
    font-weight:    500;
    text-transform: uppercase;
    color:  var(--e-global-color-text);
    fill:   var(--e-global-color-text);
    height: 100%;
	white-space: normal;
    text-align: center;
    line-height: normal;
}

.menu-italia-tab nav ul.elementor-nav-menu a.current {
    background: var(--e-global-color-primary) !important;
    color: #fff;
}

/* Evita il wrap del container Elementor che ospita i menu */
.e-con.e-flex:has(.menu-italia),
.e-con.e-flex:has(.menu-italia-tab) {
    --flex-wrap-mobile: nowrap !important;
}

/* ── Featured grid ───────────────────────────────────────────────────────── */

.featured-grid-box.featured-big h2 {
    font-size:   1.4rem;
    font-weight: 600;
}

/* ── Paginatore Elementor Pro – Minimal Moderno Verde ───────────────────── */

.elementor-pagination {
    display:         flex;
    justify-content: center;
    align-items:     center;
    flex-wrap:       wrap;
    gap:             0;
    margin-top:      20px;
    padding:         0;
}

.elementor-pagination .page-numbers {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    min-width:       40px;
    height:          40px;
    padding:         0 10px;
    border:          1.5px solid #197149;
    color:           #197149;
    background:      #fff;
    text-decoration: none;
    border-radius:   8px;
    transition:      all 0.2s ease;
    cursor:          pointer;
}

.elementor-pagination .page-numbers:hover {
    background: #197149;
    color:      #fff!important;
}

.elementor-pagination .page-numbers.current {
    background:     #0b3e27;
    color:          #fff;
    border-color:   #0b3e27;
    pointer-events: none;
}

.elementor-pagination .page-numbers.dots {
    border:     none;
    background: transparent;
    color:      #999;
    cursor:     default;
}

.elementor-pagination .page-numbers.prev,
.elementor-pagination .page-numbers.next {
    min-width: 40px;
}

/* ── Responsive ──────────────────────────────────────────────────────────── */

@media screen and (min-width: 769px) {
    .menu-italia-tab nav ul.elementor-nav-menu .menu-item .elementor-item {
        /*font-size: medium;*/
    }
}

@media screen and (max-width: 768px) {
    .category-children {
        grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    }

    .menu-italia nav ul.elementor-nav-menu {
        grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
    }

    .menu-italia-tab nav ul.elementor-nav-menu {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: minmax(min-content, 110px);
		grid-template-columns: max-content;
    }

    .menu-italia-tab nav ul.elementor-nav-menu:has(.fa.fa-home) {
        display: grid;
        grid-auto-flow: column;
        grid-template-columns: max-content;
        grid-auto-columns: minmax(min-content, 110px);
    }

    .menu-italia-tab nav ul .fa.fa-home{
        min-width: 30px;
        text-align: center;
    }

    .elementor-pagination .page-numbers {
        min-width:  36px;
        height:     36px;
        font-size:  13px;
    }
}

@media (max-width: 544px) {
    .ast-separate-container #content .ast-container {
        padding-left:  0;
        padding-right: 0;
    }

    .ast-separate-container .ast-article-post,
    .ast-separate-container .ast-article-single,
    .ast-separate-container .comments-title,
    .ast-separate-container .ast-archive-description {
        padding: 0;
    }
}
