/**
Theme Name: Ennestudio child
Author: Ennestudio
Author URI: https://ennestudio.net/
Description: Ennestudio child theme
Version: 2.4.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ennestudio-child
Template: astra
*/

:root{
    --ns-primary: #0f9f48;
    --ns-secondary: #0A672F;
    --ns-text: #333333;
    --ns-gray: #D1D5DB;
}


@media (min-width: 1201px) {
    .ast-container {
        max-width: 1400px;
    }
}

.ast-inside-advanced-header-content h1.ast-advanced-headers-title,
.ast-inside-advanced-header-content .ast-breadcrumbs-wrapper{
    text-align: left;
}
.ast-inside-advanced-header-content .ast-advanced-headers-layout.ast-advanced-headers-layout-2 {
    padding: 40px 0;
}


/*slider homepage*/
.row-slider-container .fl-col-group .fl-col{width: 100%}
.swiper-homepageslider {
    height: 650px;
    width: 100%;
}
.swiper-homepageslider .swiper-slide{
    height: 100%;
    align-items: center;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.swiper-homepageslider .swiper-slide .container-img{
    width:100%;
    height:100%
}
.swiper-homepageslider .swiper-slide .container-img img{
    object-fit: cover;
    height:100%;
    width: 100%;
}

.swiper-homepageslider .swiper-slide .container-testo{
    position: absolute;
    top: 50%;
    left: 10%;
    transform: translateY(-50%);
    max-width: 33vw;
    z-index: 9999;
    background-color: rgba(0,0,0,0.45);
    padding: 20px;
}

.swiper-homepageslider .swiper-slide .container-img img.desktop{
    display:block;
}
.swiper-homepageslider .swiper-slide .container-img img.mobile{
    display:none;
}

.swiper-homepageslider .swiper-slide .container-testo h2{color: #ffffff;margin-bottom: 0}
.swiper-homepageslider .swiper-slide .container-testo p{color: #ffffff; margin-bottom: 20px;}
.swiper-homepageslider .swiper-slide .container-testo a{
    border-color: var(--ns-primary);
    color: #ffffff;
    background-color: var(--ns-primary);
    border-style: solid;
    background-clip: border-box;
    border-width: 1px;
    border-radius: 0;
    padding:12px 24px;
    font-size: 16px;
    line-height: 1.2;
    text-transform: uppercase;
    display: inline-block;
    font-weight: 800;
}
.swiper-homepageslider .swiper-slide .container-testo a:hover{
    border-color: var(--ns-secondary);
    color: #ffffff;
    background-color: var(--ns-secondary);
}
.swiper-homepageslider .swiper-horizontal>.swiper-pagination-bullets {
    bottom: 10px;
    left: 0;
    top: 50%;
}
.swiper-homepageslider .swiper-pagination-bullet{
    background: var(--ns-secondary) !important;
    opacity: 1;
    width: 16px;
    height: 16px;
    border: 1px solid var(--ns-secondary);
}
.swiper-homepageslider .swiper-pagination-bullet-active{
    background: #ffffff !important;
    border: 4px solid var(--ns-primary) !important;
    opacity: 1;
}

@media (min-width: 768px) and (max-width: 992px) {
    .swiper-homepageslider .swiper-slide .container-testo{
        max-width: 50vw;
    }
}

@media (max-width: 768px) {
    .swiper-homepageslider {
        height: 400px;
    }

    .swiper-homepageslider .swiper-slide .container-img img.desktop{
        display:none;
    }
    .swiper-homepageslider .swiper-slide .container-img img.mobile{
        display:block;
    }
    .swiper-homepageslider .swiper-slide .container-testo{
        position: absolute;
        top: 50%;
        left: 10%;
        transform: translateY(-50%);
        max-width: 80%;
        z-index: 9999;
        background-color: rgba(0,0,0,0.45);
        padding: 20px;
    }

    .swiper-homepageslider .swiper-slide .container-testo p {
        color: #E2E2E2;
        margin-bottom: 20px;
        font-size: 15px;
        font-weight: 600;
    }
    .swiper-homepageslider .swiper-slide .container-testo a{
        padding:10px;
        font-size: 15px;
        font-weight: 500;
    }
}


/*BLOG*/
.fl-theme-builder-archive-archivio-post,
.fl-theme-builder-singular-singolo-post{
    background-color: #f9f9f9 !important;
}
.fl-theme-builder-archive-archivio-post .ast-primary-header-bar,
.fl-theme-builder-singular-singolo-post .ast-primary-header-bar{
    /*background-color: var(--ns-secondary) !important;*/
    /*border-bottom: 1px solid var(--ns-gray);*/
}
.fl-theme-builder-archive-archivio-post .ast-primary-header-bar ul li > span.menu-text,
.fl-theme-builder-archive-archivio-post .ast-primary-header-bar ul li > span.ast-icon.icon-arrow,
.fl-theme-builder-singular-singolo-post .ast-primary-header-bar ul li > span.menu-text,
.fl-theme-builder-singular-singolo-post .ast-primary-header-bar ul li > span.ast-icon.icon-arrow {
    color: white;
}

.fl-theme-builder-archive-archivio-post .uabb-blog-posts .uabb-blog-post-inner-wrap {
    margin-bottom: 20px;
}

#sidebar-blog .widget{margin: 0 0 1.5rem 0 !important;}
#sidebar-blog{padding: 32px 16px;}
#sidebar-blog h3,
#sidebar-blog label.wp-block-search__label {
    font-size: 24px !important;
    font-family: 'AXIFORMA', san-serif, serif !important;
    margin-bottom:0 !important;
    font-weight: 400 !important;
}

#sidebar-blog #block-2 .wp-block-search__inside-wrapper {
    display: flex;
}

#sidebar-blog #block-2 button.wp-block-search__button.wp-element-button {
    padding: 10px !important;
    color:white;
}
#sidebar-blog #block-2 input#wp-block-search__input-1 {
    background: white !important;
    border: 1px solid var(--ns-gray) !important;
    margin-right: 5px !important;
    box-shadow: none !important;
}
#sidebar-blog ul.wp-block-categories-list a{
    color: var(--ns-text);
    font-weight: 600
}

#sidebar-blog ul.wp-block-latest-posts__list li {display: flex}
#sidebar-blog .wp-block-latest-posts__featured-image {
    margin: 0 10px 0 0;
}
#sidebar-blog ul.wp-block-latest-posts__list a.wp-block-latest-posts__post-title {
    margin: 0;
    color: var(--ns-text);
    font-size: .75rem;
    line-height: 1rem;
}
#sidebar-blog p.wp-block-tag-cloud a {
    color: var(--ns-text);
    font-size: 0.75rem !important;
    display: block;
}

.ns-advancedpost .uabb-blog-post-content{padding:0 !important;}
.ns-advancedpost .uabb-post__terms-wrap {
    text-align: left !important;
    margin-bottom: 0 !important;
}
.ns-advancedpost span.uabb-post__terms {
    font-size: small !important;
    background: none !important;
    padding: 5px 0 !important;
    color: var(--ns-primary);
}
/* end BLOG*/



/*menu sidebar*/
button.sidebar-product {
    border: none;
    color: black;
    font-weight: 500;
    background: none;
    border: 0;
    box-shadow: none;
    padding:0 1rem
}
button.sidebar-product:hover {
    border: none;
    color: #68894a;
    background: none;
    font-weight: 500;
}
li.sidebar-category {
    display: flex;
}
#product-category-sidebar .uabb-offcanvas-content{
    padding:0 !important;
}
.woocommerce-categories-accordion .category {
    width: 100%;
    text-align: left;
    border-bottom: 1px solid black;
    margin: 0;
    padding: 5px 20px;
}
.woocommerce-categories-accordion {
    padding-top: 40px;
}
.woocommerce-categories-accordion .category-title {
    position: relative;
    padding-right: 20px;
    cursor: pointer;
    margin: 10px 0;

    text-transform: uppercase;
    font-size:15px;
    font-weight: 500;

}
.woocommerce-categories-accordion .category-title a{
    color: #000000;
}
.woocommerce-categories-accordion .category-title a:hover{
    color: #68894a;
}

.woocommerce-categories-accordion .category-title.with-child::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid black;
    transform: translateY(-50%) rotate(-90deg);
    transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.woocommerce-categories-accordion .category.open .category-title.with-child::after{
    transform: translateY(-50%) rotate(0deg);
}
.woocommerce-categories-accordion .child-category a{
    color: black;
}
.woocommerce-categories-accordion .child-category a:hover{
    color: #68894a;
}
.woocommerce-categories-accordion {}

@media (max-width: 768px) {
    #product-category-sidebar{
        position: absolute;
        z-index: 999999;
    }
    .uabb-offcanvas{left:100% !important;}

    .uabb-off-canvas-show {left:0 !important;}

    .sidebar-category{
        border-bottom-width: 1px;
        border-color: #eaeaea;
        border-style: solid;

    }
    .sidebar-category .menu-text{
        font-weight: 600;
        text-transform: uppercase;
        font-size:16px;

    }
}
/*woocommerce*/
/*.products.columns-4 .slick-track {*/
/*    display: flex !important; !* Assicura che il contenitore si comporti come un flex container *!*/
/*    justify-content: center !important; !* Centra gli elementi *!*/
/*}*/

/*.products.columns-4 .slick-slide {*/
/*    flex: 0 0 auto !important; !* Gli elementi non si ridimensionano *!*/
/*    max-width: 25% !important; !* Imposta la larghezza massima al 25% (4 colonne) *!*/
/*    box-sizing: border-box !important; !* Include padding e border nella larghezza totale *!*/
/*}*/
.home .ns-product-carousel ul.products.columns-4.slick-initialized.slick-slider {
    width: 100% !important;
}

.home .ns-product-carousel ul.products.columns-4.slick-initialized.slick-slider .slick-list.draggable {
    width: 100% !important;
}

.home .ns-product-carousel ul.products.columns-4.slick-initialized.slick-slider .slick-list.draggable .slick-track {
    width: 100% !important;
}


.archive a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart{
    display: none;
    visibility: hidden;
}
.ns-product-card .fl-post-grid-text {
    padding: 10px 0 !important;
}
.ns-product-card{padding: 0 !important;}
.ns-product-card .fl-post-grid-content {
    margin: auto;
    text-align: center;
}

.ns-product-card a.fl-post-grid-more, button.single_add_to_cart_button.button.alt {
    font-size: 16px;
    line-height: 1;
    padding: 12px 24px;
    background: #0f9f48;
    border: 2px solid #0f9f48;
    color: #ffffff;
    text-transform: uppercase;
    font-weight: 600;
    margin: auto;
    width: 100%;
}
.ns-product-card a.fl-post-grid-more:hover, button.single_add_to_cart_button.button.alt:hover {
    color: #0f9f48;
    border: 2px solid #0f9f48;
    background: #ffffff;
}

@media (max-width: 768px) {
    li.sidebar-category {
        display: block;
        border-bottom: 0;
        padding: 0 5px;
        text-decoration: none;
    }
}


/*product card*/
/* 1. Assicura che il wrapper allunghi le slide */
.carousel-products .swiper-wrapper {
    align-items: stretch;       /* le slide vengono stirate */
}

/* 2. Ogni slide diventa un flex-box che può crescere */
.carousel-products .swiper-slide {
    display: flex;              /* fa sì che la card possa espandersi */
    height: auto;               /* evita altezze fisse non volute     */
}

/* 3. La card riempie tutta la slide */
.product-card {
    flex: 1 1 auto;             /* prende tutto lo spazio disponibile */
}
.swiper.carousel-products {
    padding-bottom: 2rem;
    position: relative;
}
.product-card {
    display: flex;
    flex-direction: column;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    background-color: #fff;
    height: 100%;
    min-height: 100%;
}

.product-card-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.product-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.product-card-body {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-grow: 1;
}

.product-card-price {
    font-size: small;
    color: #0f9f48;
    font-weight: bold;
}

.product-card-title {
    font-size: 1rem !important;
    margin-bottom: 0.5rem !important;
}

.product-card-button {
    margin-top: auto;
    display: inline-block;
    padding: 0.5rem 1rem;
    background-color: #0f9f48;
    color: #fff;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    font-size: 0.9rem;
    font-weight: 500;
    transition: font-weight 0.2s ease;
}

.product-card-button:hover {
    font-weight: 700;
}

/* Swiper pagination offset */
.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -0.5rem;
}

/* Swiper bullets style */
.swiper-pagination-bullet {
    background: #ccc;
    opacity: 1;
    transition: background-color 0.3s;
}

.swiper-pagination-bullet-active {
    background: #0f9f48 !important;
}