/* -------------------- IMPORT & FONT -------------------- */
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');

@font-face {
    font-family: 'Mulish';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/Mulish-Light.woff2') format('woff2');
}
@font-face {
    font-family: 'Mulish';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/Mulish-Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Mulish';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/Mulish-Medium.woff2') format('woff2');
}
@font-face {
    font-family: 'Mulish';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/Mulish-Bold.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Serif Display';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/NotoSerifDisplay-Regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Noto Serif Display';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/NotoSerifDisplay-SemiBold.woff2') format('woff2');
}

/* -------------------- ROOT VARIABLES -------------------- */
:root {
    /* Font sizes */
    --fs12: 0.75rem;   /* 12px */
    --fs13: 0.8125rem; /* 13px */
    --fs14: 0.875rem;  /* 14px */
    --fs16: 1rem;      /* 16px */
    --fs18: 1.125rem;  /* 18px */
    --fs20: 1.25rem;   /* 20px */
    --fs22: 1.375rem;  /* 22px */
    --fs23: 1.437rem;  /* 23px */
    --fs24: 1.5rem;    /* 24px */
    --fs26: 1.625rem;  /* 26px */
    --fs27: 1.685rem;  /* 27px */
    --fs28: 1.75rem;   /* 28px */
    --fs30: 1.875rem;  /* 30px */
    --fs31: 1.93rem;   /* 31px */
    --fs32: 2rem;      /* 32px */
    --fs40: 2.5rem;    /* 40px */

    /* Colors */
    --green: rgb(125, 136, 55);
    --green-dark: rgb(20, 45, 24);
    --green-dark20:rgba(20, 45, 24, 0.2);
    --red: rgb(254, 0, 0);
    --white: rgba(255, 255, 255, 1);
    --black: rgb(34, 34, 34);
    --gray: rgb(166, 166, 166);
    --gray-dark: rgb(51, 51, 51);
    --cream-light: rgb(247, 245, 238);

    /* Bootstrap reset */
    --bs-border-color: rgb(220, 220, 220);
    --bs-modal-border-color: #fff0;
    --bs-border-color-translucent: #fff0;
    --bs-border-radius: 0px;
    --bs-body-bg: rgba(255, 255, 255, 0);
    --bs-table-bg: rgba(255, 255, 255, 0);
}

/* -------------------- COLOR UTILITIES -------------------- */
.bg-green { background-color: var(--green); }
.bg-green-dark { background-color: var(--green-dark)!important }
.bg-green-dark20 { background-color: var(--green-dark20)!important }
.bg-red { background-color: var(--red); }
.bg-white { background-color: var(--white); }
.bg-black { background-color: var(--black); }
.bg-gray { background-color: var(--gray); }
.bg-gray-dark { background-color: var(--gray-dark); }
.bg-cream-light { background-color: var(--cream-light); }

.green { color: var(--green)!important; }
.green-dark { color: var(--green-dark)!important;}
.red { color: var(--red) !important;}
.white { color: var(--white); }
.black { color: var(--black); }
.gray { color: var(--gray); }
.cream-light { color: var(--cream-light); }

/* -------------------- BASE TYPOGRAPHY -------------------- */
html,
body,
p {
    font-family: 'Mulish', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.33em !important;
}
p + p { margin-top: 0.6em; }
p + ul { margin-top: 0.365em !important; }
p + ol,
li + li { margin-top: 0.365em; }
p { margin-bottom: 0px; }

#content a,
#content-wrapper a {
    color:var(--gray-dark);
    text-decoration: none;
}
a:hover {
    color: var(--red) !important;
}

/* -------------------- LAYOUT -------------------- */
main {
    max-width: 2560px;
    margin: 0 auto;
}
.container {
    max-width: 1600px !important;
    width: 100%;
}
body {
    background-color: var(--white);
}

/* -------------------- ICONS -------------------- */
.material-symbols-outlined {
    font-weight: 200;
    fill: var(--black);
}

/* -------------------- BOOTSTRAP RESET -------------------- */
ul { padding-left: 0rem; }
#header,
#footer,
#wrapper {
    max-width: 100%;
    margin: 0 auto;
    box-shadow: none;
}
#wrapper {
    background-color: white;
}
.category-sub-menu .collapse {
  display: block !important;
}
/* .category-sub-menu .collapse:not(.show) {
  display: block !important;
} */

/* -------------------- FONT UTILS -------------------- */
.mulish {
    font-family: 'Mulish', sans-serif;
}
.noto {
    font-family: 'Noto Serif Display', sans-serif!important;
}


/* Font Size Utilities */
.fs12, .fs12 .elementor-heading-title {
    font-size: clamp(0.6rem, 0.5786rem + 0.1071vw, var(--fs12));
}
.fs13, .fs13 .elementor-heading-title {
    font-size: clamp(0.65rem, 0.6268rem + 0.1161vw, var(--fs13));
}
.fs14, .fs14 .elementor-heading-title {
    font-size: clamp(0.7rem, 0.675rem + 0.125vw, var(--fs14))!important;
}
.fs16, .fs16 .elementor-heading-title {
    font-size: clamp(0.8rem, 0.7714rem + 0.1429vw, var(--fs16));
}
.fs18, .fs18 .elementor-heading-title {
   font-size: clamp(0.9rem, 0.8679rem + 0.1607vw, var(--fs18))!important;
}
.fs20, .fs20 .elementor-heading-title {
    font-size: clamp(1rem, 0.9643rem + 0.1786vw, var(--fs20));
}
.fs22, .fs22 .elementor-heading-title {
    font-size: clamp(1.1rem, 1.0607rem + 0.1964vw, var(--fs22));
}
.fs23, .fs23 .elementor-heading-title {
    font-size: clamp(1.15rem, 1.109rem + 0.205vw, var(--fs23));
}
.fs24, .fs24 .elementor-heading-title {
    font-size: clamp(1.2rem, 1.1571rem + 0.2143vw, var(--fs24))!important;
}
.fs26, .fs26 .elementor-heading-title {
    font-size: clamp(1.3rem, 1.2536rem + 0.2321vw, var(--fs26));
}
.fs27, .fs27 .elementor-heading-title {
    font-size: clamp(1.35rem, 1.3021rem + 0.2393vw, var(--fs27));
}
.fs28, .fs28 .elementor-heading-title {
    font-size: clamp(1.4rem, 1.35rem + 0.25vw, var(--fs28));
}
.fs30, .fs30 .elementor-heading-title {
    font-size: clamp(1.5rem, 1.4464rem + 0.2679vw, var(--fs30));
}
.fs31, .fs31 .elementor-heading-title {
    font-size: clamp(1.55rem, 1.4957rem + 0.2714vw, var(--fs31));
}
.fs32, .fs32 .elementor-heading-title {
    font-size: clamp(1.6rem, 1.5429rem + 0.2857vw, var(--fs32));
}
.fs40, .fs40 .elementor-heading-title {
    font-size: clamp(1.6875rem, 1.5714rem + 0.5804vw, var(--fs40))!important;
}
/* Line Height Utilities */
.lh-118, .lh-118 .elementor-heading-title { line-height: 1.18em; }
.lh-125, .lh-125 .elementor-heading-title { line-height: 1.25em!important }
.lh-133, .lh-133 .elementor-heading-title { line-height: 1.33em!important;}
.lh-142, .lh-142 .elementor-heading-title { line-height: 1.42em; }
.lh-150, .lh-150 .elementor-heading-title { line-height: 1.5em!important }

/* -------------------- BTN-------------------- */

.btn-enautilus {
    padding: 1rem 5rem!important;
    font-weight: bold;
    font-size:  clamp(0.7rem, 0.63rem + 0.3vw, var(--fs14));
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 0.25rem;
    border:1px solid;
    line-height: 1em;
}
.btn-verde {
    background-color:var(--green)!important;
    color: var(--white)!important;             
    border: 1px solid var(--green)!important;          
}
.btn-bianco {
    background-color:var(--white)!important;
    color: var(--green-dark)!important;             
    border: 1px solid var(--green-dark);          
}
.btn-verde:hover,
.btn-bianco:hover {
    background-color: var(--green-dark)!important;
    color: var(--white) !important;           
    border: 1px solid var(--green-dark)!important;
}
.ratio-19-22 {
    aspect-ratio: 0.86;
}
.ratio-5-7 {
    aspect-ratio: 5/7;
}


/* -------------------- SWIPER SLIDER -------------------- */
.swiper-container {
    overflow: hidden !important;
}
.swiper-custom-nav button {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
}
.swiper-button-prev-custom.swiper-button-disabled,
.swiper-button-next-custom.swiper-button-disabled {
    background-color: rgba(255, 224, 195, 0.3);
    color: rgba(0, 0, 0, 0.3);
}
.swiper-button-prev-custom,
.swiper-button-next-custom {
    background-color: var(--cream-light);
    color: var(--black);
}
.swiper-custom-nav span {
    font-size: 27px;
    margin-bottom: 2px;
}
.swiper-custom-nav {
    display: flex;
    column-gap: 1rem;
}

/* -------------------- CART PAGE -------------------- */
.cart-content-btn .btn, 
.cart-detailed-actions .btn {
    text-transform: initial!important;
}
.input-group.bootstrap-touchspin {
    width:unset!important;
}
#cart .price {
    color: var(--black);
}
#cart .card-block.cart-summary-totals {
    padding:0px!important;
}
#cart .card {
    border:none!important;
}
#cart .bootstrap-touchspin input.form-control {
    width: 36px;
    height: 34px;
    background-color: white;
}
#cart #advansedwishlist_cart_block{
    display:none;
}
.cart-summary-line .value {
    font-weight: 400;
}
.cart-summary-line:not(:last-child) {
    margin-bottom:0px;
}
.block-promo .promo-code-button {
    padding:0px;
}
.block-promo .promo-code-button.cancel-promo[aria-expanded=true] {
    margin-top:0px;
}
.promo-code-wrapper.collapse.show {
    display:block;
}
.card-block.cart-summary-totals .cart-summary-line {
    padding: .5rem 0rem;
}
.card-block.cart-summary-totals .cart-summary-line.cart-total {
    padding: 0rem;
}
.icon-collapse {
    display: none;
} 
[aria-expanded="true"] .icon-expand {
    display: none;
}
[aria-expanded="true"] .icon-collapse {
    display: inline;
}
#checkout .block-promo {
    margin-bottom: 0px!important;
}
#cart #advansedwishlist_cart_block{
    display:none;
}

/* ---------------- CART PAGE: RESPONSIVE ---------------- */
@media (max-width: 767px) {
    .blockcart img {
        height: 1.43rem;
    }
    #toggleRepilogo #cart-subtotal-shipping {
        display: none;
    }
    #cart .cart-overview,
    #cart .cart-items {
        padding: 0rem!important;
    }
    #icona_remove_cart,
    #cart .wishlist .material-symbols-outlined {
        font-size: clamp(1.1rem, 0.99rem + 0.3vw, var(--fs22))!important;
        line-height: 1em!important;
    }
    #cart #wrapper>.container {
        padding: 0rem!important;
    }
    #cart .card-block.cart-summary-totals {
        background-color: white;
    }
    #collapseOrdine .card-block {
        padding: 0rem !important;
        background-color: var(--white);
    }
    #collapseOrdine .cart-summary-products.js-cart-summary-products {
        padding-top: 1rem !important;
    }
    #collapseOrdine #cart-subtotal-products {
        margin-top: .5rem !important;
        margin-bottom: 0rem !important;
    }
    #cart .cart-total span,
    #checkout .cart-total span {
        font-weight: bold !important;
    }
    .card-block.cart-summary-totals .cart-summary-line {
        padding: 1rem 0rem;
    }
    #cart .cart-grid {
        padding: 0rem !important;
        margin-bottom: 5rem !important;
    }
    #product_name_cart {
        font-weight: 500!important;
        font-size: clamp(0.8rem, 0.72rem + 0.3vw, var(--fs16))!important;
    }
    #cart .product-line-grid-body {
        margin-bottom: 0rem!important;
    }
    #cart .cart-line-product-actions {
        flex-direction: column;
    }
    #cart .product-line-info {
        margin-top: -0.3rem;
    }
    #cart .product-line-info.product-price,
    .container-product-cart-actions {
        padding-right: 0rem;
    }
    .container-product-cart-actions {
        padding-left: 1.2rem;
    }
    #cart .product-line-info.misure {
        margin-top: -0.7rem;
    }
    #cart .product-image img,
    #collapseOrdine #cart-summary-product-list img {
        width: 5.187rem!important;
    }
    #collapseOrdine .media-body {
        padding-left: 0rem!important;
    }
    #cart .price {
        font-size: clamp(0.8rem, 0.72rem + 0.3vw, var(--fs16))!important;
        font-weight: 500!important;
    }
    #cart .product-discount .regular-price {
        font-size: var(--fs13)!important;
        color: var(--black)!important;
        font-weight: 300;
        margin-right: 0.3rem;
    }
    #cart .cart-item {
        padding: 1rem 0 0.8rem 0;
    }
    #cart .cart-grid-right,
    #checkout .cart-grid-right {
        padding: 0rem 0.75rem!important;
        background-color: var(--white)!important;
    }
    #cart .cart-summary,
    #cart .cart-total,
    #checkout .cart-summary,
    #checkout .cart-total {
        background-color: var(--white)!important;
    }
    #cart .cart-grid-body {
        margin-bottom: 0rem;
        padding: 0rem;
    }
    #cart #cart-subtotal-products span,
    #checkout #cart-subtotal-products span {
        font-size: clamp(var(--fs14), 0.76rem + 0.25vw, var(--fs18))!important;
    }
    #cart .card-block {
        margin-bottom: 0.55rem;
    }
    #cart .block-promo {
        padding: 0.55rem 0!important;
    }
    #cart .promo-code-button img {
        width: 1.75rem;
    }
    a.collapse-button.promo-code-button {
        display: flex;
        align-items: center;
    }
    #cart .cart-total span,
    #checkout .cart-total span {
        font-weight: 500!important;
    }
    #cart .card-block.checkout .btn {
        padding: 0.889em 1.334em !important;
    }
    #cart #cart-subtotal-shipping span,
    #checkout #cart-subtotal-shipping span {
        font-size: clamp(0.8rem, 0.72rem + 0.3vw, var(--fs16))!important;
    }
    #cart .block-promo .promo-input {
        border: 1px solid var(--bs-border-color) !important;
    }
}

/* -------------------- INPUT QUANTITY-------------------- */

.product-quantity #quantity_wanted {
    text-align: center;
    background: var(--griggio-chiaro);
    font-size: var(--fs13);
}
.product-quantity #quantity_wanted {
    width: 2.25rem;
    height: 2.125rem;
    color:var(--gray-dark);
    background-color: #fff !important;
    aspect-ratio: 1;  
}
.product-quantity .input-group-btn-vertical .btn {
    width: 2.125rem;
    height: 2.125rem;
    aspect-ratio: 1;
    height: auto;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
    margin-left: 0;
    margin-top: 0;
    padding: initial;
    z-index: 10;
}
.product-quantity .input-group-btn-vertical .btn:hover,
.product-quantity .input-group-btn-vertical .btn:active,
.product-quantity .input-group-btn-vertical .btn:focus {
    border-color: var(--gray);
}

.product-quantity .input-group-btn-vertical .btn > span {
    color: #1A1A1A;
    font-size: var(--fs20);
}

.product-quantity .qty {
    margin-right: 0;
}
.product-quantity .add, .product-quantity .qty {
    margin-bottom: 0;
}
.bootstrap-touchspin .input-group-btn-vertical i {
    top: 0.1rem!important;
    left: .1875rem;
    font-size: .9375rem!important;
}
.bootstrap-touchspin input.form-control,
.bootstrap-touchspin input.input-group,
.bootstrap-touchspin .btn-touchspin {
    border: 2px solid #DDDDDD;
    background: var(--cream-light);
}
.product-quantity .input-group-btn-vertical .btn:hover,
.product-quantity .input-group-btn-vertical .btn:active,
.product-quantity .input-group-btn-vertical .btn:focus {
    border-color: var(--orange);
}
@media (max-width: 767px) {
    #cart .product-quantity .input-group-btn-vertical .btn {
        width: 1.3rem;
    }
    #cart .qty.quantity-checkout .js-cart-line-product-quantity,
    #cart .bootstrap-touchspin input.form-control {
        width: 1.9rem; 
        height: 1.6rem; 
    }
    #cart .product-quantity .input-group-btn-vertical .btn {
        width: 1.6rem;
    }
    #cart .bootstrap-touchspin input.form-control, .bootstrap-touchspin input.input-group {
        padding: 0.2rem 0.3rem!important;
    }

}
/* -------------------- CHECKOUT PAGE-------------------- */

/* Checkout*/
.form-control {
    padding: 0.65rem 1.15rem;
    font-size: clamp(var(--fs14), 0.78rem + 0.125vw, var(--fs16)) !important;
}
.js-input-column {
    margin-bottom: 0.5rem!important;
}
.custom-checkbox label {
    font-size: clamp(0.7rem, 0.63rem + 0.3vw, var(--fs14));
    margin-bottom: 0px;
}
.custom-checkbox input[type=checkbox]+span {
    display: inline-block;
    width: 0.8rem;
    height: 0.8rem;
    margin-right: .5rem;
    vertical-align: middle;
    pointer-events: none;
    cursor: pointer;
    border: 1px #979797 solid;
}
#checkout .modal-content {
    background-color: var(--cream-light)!important;
}
.custom-checkbox input[type=checkbox]+span .checkbox-checked {
    display: none;
    margin-left: -0.1rem;
    margin-top: 0rem;
    font-size: 0.8rem;
    color: #232323;
}
body#checkout .custom-checkbox span {
    margin-top: 0.4rem;
}
#checkout .group-id_country,
#address .group-id_country {
    display: none;
}
body#checkout section.checkout-step .step-title {
    text-transform: initial;
    font-weight: 400;
}
body#checkout section.checkout-step.-complete .step-number {
    background-color: var(--green) !important;
    color: white !important;
    border-color: var(--green) !important;
}
.step-number {
    border: 2px solid var(--green)!important;
}
.input-group .input-group-btn>.btn {
    background: var(--green);
}
.input-group .input-group-btn>.btn[data-action=show-password],
.input-group .input-group-btn>.btn[data-action=hide-password] {
    background-color: var(--green);
    text-transform: initial;
}
.border-success {
    --bs-border-opacity: 1;
    border-color: var(--green)!important;
}
body#checkout .custom-radio input[type=radio]:checked+span,
.custom-radio input[type=radio]:checked+span {
    background-color: var(--green);
    width: 7px;
    height: 7px;
    top: 0.12rem;
    left: 0.1rem;
}
.done {
    font-size: 2.375rem;
}
.custom-radio {
    width: 12px;
    height: 12px;
    border-color: var(--green);
}
.js-additional-information p {
    font-size: clamp(0.8rem, 0.72rem + 0.3vw, var(--fs16));
    color: var(--black);
}
.delivery-checked {
    background-color: var(--green)!important;
}
.delivery-option .h6,
.delivery-option .carrier-price {
    color: var(--black)!important;
}
.delivery-option .h6,
.delivery-option.delivery-checked .h6,
.delivery-option.delivery-checked .carrier-delay,
.delivery-option.delivery-checked .carrier-price {
    color: var(--black)!important;
}
body#checkout section.checkout-step .address-item.selected {
    border-color: var(--green);
}
body#checkout section.checkout-step #delivery-addresses>.address-item.selected {
    border-color: var(--green);
}
body#checkout section.checkout-step .address-selector {
    -ms-flex-wrap: wrap;
    flex-wrap: nowrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: stretch;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    column-gap: 10px;
}
#checkout #wrapper p {
    color: var(--black);
}
body#checkout #cart-summary-product-list img {
    width: 6rem;
    aspect-ratio: 1;
    height: auto;
}
body#checkout .additional-information {
    margin-top: 0;
    margin-left: 1.675rem;
    font-size: 0.8rem;
    margin-bottom: 1rem;
}
body#checkout .additional-information p {
    font-size: clamp(0.7rem, 0.63rem + 0.3vw, var(--fs14)) !important;
}
body#checkout .product-name a {
    font-size: clamp(var(--fs14), 0.76rem + 0.25vw, var(--fs18))!important;
    font-weight: bold!important;
}
.form-control:disabled {
    background-color: var(--white)!important;
}
.form-control:focus {
    box-shadow: none;
}
button#submit-login,
.form-control-submit {
    text-transform: initial;
}
.form-control-valign {
    margin-top: -1.2rem;
}
select.form-control:not([size]):not([multiple]) {
    height: calc(2.9rem - 2px);
}
em {
    font-style: normal;
}
.custom-radio {
    width: 12px;
    height: 12px;
    border-color: var(--black);
}
body#checkout #delivery textarea,
body#checkout #gift_message textarea {
    padding: 0.4rem 1.15rem;
}
@media (max-width: 767px) {
    .form-control {
        padding: 0.5rem 1.15rem;
        border-color: gray;
    }
    .form-control::placeholder {
        text-align: left;
        font-size: clamp(var(--fs14), 0.76rem + 0.25vw, var(--fs18))!important;
    }
    #toggleRepilogo {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-left: 1.3rem;
        padding-right: 1.3rem;
    }
    body#checkout .container {
        padding: 0px!important;
    }
}
@media (min-width: 576px) {
    #delivery-addresses,
    #invoice-addresses {
        flex-direction: row!important;
    }
}
#delivery-addresses,
    #invoice-addresses {
        flex-direction: column;
    }
body#checkout section.checkout-step #delivery-addresses, body#checkout section.checkout-step #invoice-addresses, body#checkout section.checkout-step .add-address {
    margin-top: 1.25rem!important;
}

/* -------------------- RICERCA-------------------- */

#search_query {
    -webkit-appearance: none;
    border: 1px solid #D9D9D9;
    border-right: 0;
    height: 3.1875rem;
    padding: 0.625rem 1.5rem;
    width: 100%;
    background: white;
    margin-bottom:1.25rem;
}
.button-search {
    background-color: var(--green)!important;
    color: var(--white)!important;
    width: 9.3rem!important;
    align-items: center;
    height: 3.1875rem!important;
}
.autocomplete-suggestions {
    display: none;
    grid-template-columns: 64% 1fr !important;
    width: 100%;
    max-width: 100%;
    grid-auto-rows: auto !important;
    align-items: start;
    margin: 0 auto;
    padding:2.5rem;
}
.search_block_results img.search-image {
    width: 5.9rem;
    height: auto;
}
.autocomplete-suggestion {
    background: transparent;
    color: var(--black);
}
.rating_productcomments li+li {
    margin-top:0px!important;
}
.autocomplete-suggestion li.search_result_header + li.product {
    padding-top: 0 !important;
  }
.autocomplete-suggestion li.product:not(:first-child) {
    padding: 0.5rem 0;
    border-bottom: 0.7px solid #cccccc69;
    clear: both;
    float: left;
    width: 100%;
    font-size: unset !important;
    position: relative;
}
.search_result_header {
    font-weight: bold;
    background-color: transparent!important;
    padding: 0px !important;
    font-size: var(--fs20)!important;
    line-height:1.15em;
    text-transform: initial!important;
    border-bottom: 0.7px solid #cccccc69!important;
    margin-bottom:1rem;
}
.search-name {
    font-size: var(--fs16);
    color: var(--black);
    font-weight:bold;
    line-height:1.25em;
}
.span_short {
    font-size: var(--fs14);
    color: var(--black);
    line-height: 1.4em;
}
.category .item_shor_des,
.manufacturer .item_shor_des {
    display: none;
}
.autocomplete-suggestions.show-grid {
    display: grid !important;
}
.autocomplete-suggestion[data-index="0"] .rating_productcomments  {
    padding:0px;
}
.autocomplete-suggestion[data-index="0"] .search_result_header {
    display: none;
}
.search_block_results .box_button_see {
    display: none!important;
}
ul.rating_productcomments.reviews-loading {
    margin-bottom: 0px;
}
.search_block_results li:not(:first-child):hover:before {
    opacity: 0;
    visibility: visible;
}
.search_block_results li.product:not(:first-child):hover {
    border-bottom: 0.7px solid var(--orange)!important;
}
.search_block_results li.manufacturer:not(:first-child):hover a.manufacturer_name.ybc_blocksearch .search-name,
.search_block_results li.category:not(:first-child):hover a.category_name.ybc_blocksearch .search-name {
    color: var(--orange)    !important;
}
.search_block_results li.category,
.search_block_results li.manufacturer {
    border-bottom:none!important;
    padding: 0px;
}
a.category_name.ybc_blocksearch .search-name,
a.manufacturer_name.ybc_blocksearch .search-name {
    font-size: var(--fs14)!important;
    font-weight:normal;
}
.suggestion-wrapper {
    padding-left: 5.5rem;
}
.suggestion-wrapper .autocomplete-suggestion {
    text-align: right;
}
.suggestion-wrapper .autocomplete-suggestion .rating_productcomments {
    margin-bottom: 3rem;
}
.search_block_results .content_nodata {
    color: var(--black)!important;
}
.wrap_search_nodata {
    padding:0px;
}
.wrap_header_tap ul li.active a {
    background-color: var(--blue)!important;
}
span.title_group {
   border:none!important;
   text-align: right!important;
}
.wrap_content_product .product-buttons form {
    position: static!important;
}
.wrap_content_product .product-buttons form:before {
    display: none!important;
}
.wrap_search .wrap_header_tap {
    border:none;
    background: #fff;
    display: flex;
    clear: both;
    min-height: 44px;
    margin-bottom: 0px;
}
.wrap_content_product form {
    top: inherit;
}
.wrap_header_tap.has_sortby {
    display: none;
}
@media (max-width: 767px) {
    .autocomplete-suggestions {
        grid-template-columns: 1fr !important;
    }
    .suggestion-wrapper {
        display: none !important;
    }
    #searchModal .modal-dialog {
        margin-top: 5vh;
        margin-left: 0.75rem;
        margin-right: 0.75rem;
    }
    .search-input-row {
        justify-content: center;
    }
    .span_short {
        display:none;
    }
    a.product_name.ybc_blocksearch {
        display: flex;
        align-items: center;
    }
    .autocomplete-suggestions {
        width: 95%!important;
    }
    .search-button {
        display: none;
    }
    .search-label-inline {
        margin-bottom:0px;
    }
    .ets_search_block_top {
        margin-top:1.5rem; 
    }
    .form-searc-icon {
        display: inline-block;
    }
    .search-button {
        display: none;
    }
    .search-input-wrapper {
        position: relative;
    }
    .form-searc-icon {
        position: absolute;
        top: 50%;
        right: 0.9375rem;
        transform: translateY(-50%);
        font-size: 1.375rem;
        color: var(--white);
        cursor: pointer;
        z-index: 3;
        pointer-events: all;
    }
   .ets_search_block_top {
    width: 100%!important;
   }
   .ybc_search_page_content {
      padding:0px!important;
   }
   .ybc_search_page_content #product-list-header {
      margin-top: 2rem;
   }
   .wrap_header_tap ul {
      display:flex;
   }
   .ybc_search_page_content .content_tab .wrap_content.wrap_content_product {
      padding: 0px 0;
   }
}
/* -------------------- AREA UTENTE -------------------- */

#my-account .breadcrumb,
#addresses .breadcrumb,
#address .breadcrumb,
#module-psgdpr-gdpr .breadcrumb,
#module-advansedwishlist-mywishlist .breadcrumb,
#history .breadcrumb,
#discount .breadcrumb,
#identity .breadcrumb,
#authentication .breadcrumb,
#registration .breadcrumb,
#password .breadcrumb,
#ybc_blog_page .breadcrumb
 {
    display: none !important;;
}

#identity .account-column-left,
#addresses .account-column-left,
#address .account-column-left,
#history .account-column-left,
#module-psgdpr-gdpr .account-column-left,
#discount .account-column-left,
#order-detail .account-column-left,
#guest-tracking .account-column-left {
    padding: 3rem 2rem 3rem 2rem!important;
}


.account-column-left {
    background-color: var(--cream-light);
    padding: 6rem 2rem 4.5rem 2rem;
}
#my-account .page-header h1,
#my-account .page-header,
#identity .page-header h1,
#identity .page-header,
#order-slip .page-header h1,
#order-slip .page-header, 
#order-detail .page-header h1,
#order-detail .page-header,
#history .page-header h1,
#history .page-header,
#addresses .page-header h1,
#addresses .page-header,
#address .page-header h1,
#address .page-header,
#discount .page-header h1,
#discount .page-header,
#module-psgdpr-gdpr .page-header,
#module-psgdpr-gdpr .page-header h1,
#guest-tracking .page-header,
#guest-tracking .page-header h1{
    margin-bottom:0px!important;
}
#my-account .page-header h1,
#identity .page-header h1,
#order-slip .page-header h1,
#order-detail .page-header h1,
#history .page-header h1,
#addresses .page-header h1,
#address .page-header h1,
#discount .page-header h1,
#module-psgdpr-gdpr .page-header h1,
#guest-tracking .page-header h1 {
    text-align: left !important;
}
.page-my-account #content .links a:hover span {
    color: var(--green)!important;
}

#module-advansedwishlist-mywishlist #content {
    box-shadow: none;
    background: #fff;
    padding: 0px;
    font-size:clamp(0.8rem, 0.72rem + 0.3vw, var(--fs16));
    color: var(--black);
    border: none;
}
#module-advansedwishlist-mywishlist .page-heading {
    display:none;
}

#authentication #titoloPage,
#authentication #stringaCitofono,
#registration #titoloPage,
#password #titoloPage {
    display:none;
}
.page-authentication #content,
.page-registration #content,
#password #content {
    padding-top: 5.8rem;
    padding-bottom: 5.8rem;
}
.page-authentication .login-form {
    margin-top: 0px;
}
.page-authentication .page-content {
    margin-bottom: 0px!important;
}
.page-authentication .js-input-column,
.page-registration .js-input-column {
    padding: 0px;
}
.page-authentication #content,
.page-registration #content,
#password #content{
    max-width: 560px;
    margin: 0 auto;
    border: none;
}
.page-customer-account #content .forgot-password {
    text-align:left;
}
.page-registration .custom-checkbox em {
    display:none;
}
.page-registration .custom-checkbox label {
    font-size: clamp(var(--fs14),  0.78rem + 0.125vw, var(--fs16))!important;
}
.forgotten-password .form-fields .email {
    width: 100%;
    padding-right: 0px;
    padding-left: 0px;
}
.forgotten-password .form-fields .center-email-fields button,
.forgotten-password .form-fields .email input {
    height: unset;
}
#authentication #titoloPage,
#authentication #stringaCitofono,
#registration #titoloPage, #password #titoloPage {
    display: none;
}
#registration .form-group.group-id_gender {
    padding-top: 2rem!important;
}
#addresses-link {
    padding: 1rem !important;
    background-color: white;
}
@media (max-width: 767px) {
    .page-authentication #content,
    .page-registration #content,
    #password #content {
        padding-top: 3.5rem!important;
        padding-bottom: 3.5rem!important;
    } 
    #field-email::placeholder,
    #field-password::placeholder {
        text-align: left;
        font-size: clamp(var(--fs14), 0.76rem + 0.25vw, var(--fs18))!important;
    }
    .form-control::placeholder {
        text-align: left;
        font-size: clamp(var(--fs14), 0.76rem + 0.25vw, var(--fs18))!important;
    }
    #identity .account-column-left,
    #addresses .account-column-left,
    #address .account-column-left,
    #history .account-column-left,
    #module-psgdpr-gdpr .account-column-left,
    #discount .account-column-left,
    #order-detail .account-column-left,
    #guest-tracking .account-column-left {
     padding: 2rem 1rem 2rem 1rem!important;
    }
    .links {
        padding: 0px!important;
    }
}

/* -------------------- ELEMENTOR MINI CART-------------------- */
.elementor-cart__container .elementor-cart__main {
    width: 40rem;
    padding:0px;
}
.elementor-cart__close-button {
    right: 2.14rem;
}
.elementor-cart__products {
    padding-left: 2.14rem;
    padding-right: 2.14rem;
}
.elementor-cart__summary,
.elementor-cart__footer-buttons, 
#custom-block-after-cart, 
.elementor-cart__empty-message  {
    padding-left: 2.14rem;
    padding-right: 2.14rem;
    color: var(--black);
}
.elementor-cart__title, 
.elementor-cart__summary, 
.elementor-cart__footer-buttons {
    background-color: var(--lightblue);
}
.elementor-cart__summary {
    border-bottom: none;
}
.elementor-cart__footer-buttons {
    border-bottom: 1px solid #d4d4d4;
}
.elementor-cart__toggle .elementor-button {
    border:none;
}
.elementor-cart--align-icon-left .elementor-cart__toggle .elementor-button-text {
    color:#fff;
    font-size:clamp(0.6rem, 0.54rem + 0.3vw, var(--fs12))!important;
    font-weight: 400!important;
    padding-top:4px;
}
.mini-cart .elementor-button.elementor-size-sm {
    padding:0px;
    display: flex;
    flex-direction: column;
}
.mini-cart .elementor-button--view-cart,
.mini-cart .elementor-button--checkout {
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-weight: bold;
    font-size:  clamp(0.7rem, 0.63rem + 0.3vw, var(--fs14));
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: var(--bs-border-radius-sm);
    border:1px solid;
    line-height: 1em;
    background-color:var(--green)!important;
    color: var(--white)!important;             
    border: 1px solid var(--green)!important;          
}
.mini-cart .elementor-button--view-cart:hover,
.mini-cart .elementor-button--checkout:hover {
    background-color:var(--green-dark)!important;
    color: var(--white)!important;             
    border: 1px solid var(--green-dark)!important;          
}
.elementor-cart__product,
.elementor-cart__product:not(:first-of-type) {
    margin-bottom: 0.7rem;
}
.elementor-cart__product-remove.ceicon-times, 
.elementor-cart__product-price {
    color: var(--black);
}
.elementor-cart__product-name {
    text-transform: uppercase;
    font-size: clamp(0.6rem, 0.54rem + 0.3vw, var(--fs12));
}
div#custom-block-after-cart>.products-section-title {
    padding-left: 0px;
}
.elementor-cart__product-name a {
    font-weight:bold;
    text-transform: capitalize;
    font-size: clamp(0.8rem, 0.72rem + 0.3vw, var(--fs16));
}
.elementor-cart__product-remove {
    display: inline-block;
    width: 27px;
    height: 27px;
    background-image: url('../img/cancel_mini_cart.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.fa-circle-xmark::before {
    content: none;
}
.elementor-cart__close-button {
    width: 2.2rem;
    height: 2.2rem;
}
.elementor-cart__close-button img {
    width:2.2rem;
    height:2.2rem;
}
html.no-scroll {
    overflow: hidden !important;
}
.elementor-cart__summary,
.elementor-cart__footer-buttons,
#custom-block-after-cart,
.elementor-cart__empty-message {
    padding-left: 2.14rem;
    padding-right: 2.14rem;
    color: var(--black);
}
.elementor-cart__product,
.elementor-cart__product:not(:first-of-type) {
    padding: 10px !important;
    background-color: var(--cream-light) !important;
    margin-bottom: 0.7rem!important;
}
.elementor-cart__product,
.elementor-cart__products,
.elementor-cart__summary {
    border-bottom: none!important;
}
@media (max-width: 767px) {
    .elementor-cart__summary,
    .elementor-cart__footer-buttons, 
    #custom-block-after-cart, 
    .elementor-cart__empty-message  {
       padding-left: 1.14rem;
       padding-right: 1.14rem;
    }
    .elementor-cart__close-button {
       right: 1.14rem;
    }
    .elementor-cart__footer-buttons a {
       padding: 12px 30px!important;
    }
    .elementor-cart__products {
       padding-left: 1.14rem;
    }
    .cart-body {
       align-items: stretch;
       flex-direction: column;
    }
   .product-price-and-shipping.mini-cart-prezzo span {
    display: block;
    }
}
/* -------------------- HEADER -------------------- */
img.header-icona {
    height: 1.25rem;
}
.elementor-cart__toggle {
    text-align: right;
    margin-bottom: 0.1rem;
}
/* -------------------- MENU PRINCIPALE -------------------- */
@media (min-width: 768px) {
    .menu-principale a {
        padding:0px!important;
        color: var(--green-dark)!important;
        margin-right: 1.5rem;
        font-family: 'Mulish', sans-serif;
        line-height: 1em;
    }
    .elementor-item::before,
    .elementor-item::after {
        display: none !important;
    }
    .sub-menu {
        padding:1rem!important;
        left: 0rem!important;
        margin-left: 0px;
        background-color: var(--cream-light);
         margin-top: 1.25rem!important;
    }
    .sub-menu li {
        margin-bottom: 0.9rem!important;
    }
    
}
@media (max-width: 767px) {
    .elementor-menu-toggle i {
        display: inline-block;
        width: 2.5rem;
        height: 2.5rem;
            background-image: url("/themes/enautilus/assets/img/menu_ed.svg");
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        font-style: normal;
        background-color: transparent;
        margin:0px!important;
    }
    .elementor-menu-toggle.elementor-active i {
        display: inline-block;
        width: 2.5rem;
        height: 2.5rem;
        background-image: url("/themes/enautilus/assets/img/close_menu.svg");
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        font-style: normal;
        background-color: transparent;
    }
    .elementor-menu-toggle i:after, .elementor-menu-toggle i:before {
        display: none;
    }
    .elementor-menu-toggle {
        background-color: transparent;
        padding:0!important;
        height: 40px !important;
    }
    .elementor-nav__container {
        height: 100vh;
        transform: translateX(-100%);
        transition: transform 0.3s ease;
        z-index: 9999;
        overflow-y: auto;
        box-shadow: 1px 0 10px rgba(0, 0, 0, 0.1);
        margin-top: 27.5px!important;
        background-color: var(--cream-light);
    }
    .elementor-nav--toggle .elementor-menu-toggle.elementor-active + .elementor-nav__container {
    transform: translateX(0);
    }
    .sub-menu li a.elementor-sub-item {
        padding:0px!important;
    }
    .sub-menu {
        margin-top: 0px !important;
    }
    .sub-menu li {
        margin-bottom: 0.3rem;
    }
}
.elementor-nav a:hover {
    line-height: 1em;
    color: var(--red)!important;
}
.sub-menu {
    padding:1rem!important;
    left: -1rem!important;
    margin-left: 0px;
    padding: 1rem;
    background-color: var(--cream-light);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

a.elementor-item-active,
li.current-menu-item,
.sub-menu li:hover,
.sub-menu li a:hover  {
    background-color: transparent !important;
    color:var(--red)!important;
}
.elementor-nav--dropdown .menu-item .elementor-item-active,
.elementor-nav--dropdown .menu-item .highlighted,
.elementor-nav--dropdown .menu-item [href]:focus,
.elementor-nav--dropdown .menu-item [href]:hover {
    background-color: transparent !important;
}
a.elementor-sub-item {
    font-size: clamp(0.8rem, 0.7714rem + 0.1429vw, var(--fs16))!important;
}


/* -------------------- MINIATURA PRINCIPALE/PRODUCT.TPL -------------------- */
.swiper-wrapper {
  align-items: stretch;
}
.swiper-slide {
  display: flex;
  flex-direction: column;
  height: auto !important;
  padding: 0.5rem;
  box-sizing: border-box; 
  overflow: visible;
}
#Miniatur1 {
  position: relative;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  margin: 0;
  padding: 0;
  min-height: 0 !important;
  z-index: 1;
}
#Miniatur1:hover {
  box-shadow:
    0 8px 20px rgba(0, 0, 0, 0.15),  
    0 4px 6px rgba(0, 0, 0, 0.10),
    0 -2px 8px rgba(0, 0, 0, 0.07),
    inset 0 0 20px rgba(255, 255, 255, 0.15);
  z-index: 999;
}
#Miniatur1 .miniature-inner {
  transition: padding 0.3s ease, margin-bottom 0.3s ease;
  box-sizing: border-box;
}
#Miniatur1:hover .miniature-inner {
  margin-bottom: 0;
  padding-bottom: 0;
}

#Miniatur1 .product-price-container {
  transition: transform 0.3s ease, margin-bottom 0.3s ease;
}
#Miniatur1:hover .product-price-container {
  transform: translateY(-10px);
}
#Miniatur1 .price-button-wrapper {
  position: relative;
}
#Miniatur1 .hover-block {
  position: absolute;
  bottom: 0.75rem;
  left: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s ease;
  z-index: 3;
  overflow: hidden;
  padding: 0;
  width:90%
}
#Miniatur1:hover .hover-block {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.swiper,
.swiper-wrapper,
.swiper-slide {
  overflow: visible;
}
.product-flags li.product-flag {
    font-size: clamp(0.7rem, 0.675rem + 0.125vw, var(--fs14));
    line-height: 1em;
    min-height: fit-content!important;
    border-top-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
}
li.product-flag.out_of_stock {
    display: none;
}
.product-flag.new {
    background-color: #b7d1bb!important;
    color: var(--green-dark)!important; 
}
.product-flags li.product-flag.discount, .product-flags li.product-flag.discount-amount, .product-flags li.product-flag.discount-percentage {
    background-color: #d74646!important;
}

/* -------------------- MINIATURA PRODUCT2.TPL ---------------------------- */
#Miniatur2 .btn-enautilus,
.featured-products .btn-enautilus {
    padding: 0.625rem 1.87rem!important;
    font-weight:500!important;
    display: flex;
    justify-content: center;
    align-items: center;
    
}
@media (max-width: 767px) {
    #Miniatur2 .btn-enautilus{
        width:100%;
    }
    .ratio-19-22 {
    aspect-ratio: 19/20;
    }
}
/* -------------------- MINIATURA PRODUCT3.TPL ---------------------------- */
.product-grid-container {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
}
#js-product-list {
  overflow-x: visible;
  width: 100%;
  box-sizing: border-box;
}
.product-col {
  box-sizing: border-box;
  flex-shrink: 0;
}
.image-col { 
    flex: 1 1 30%; 
    display: flex;
    position: relative;
    min-width: 200px;
    max-width: 100%;
    height: auto;
    display: block;
}
.info-col  {
     flex: 1 1 45%;
      min-width: 250px;
}
.action-col {
  flex: 1 1 25%;
  min-width: 200px;
  position: relative;
}
.product-buttons .btn-enautilus {
  max-width: 200px!important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.blend {
    mix-blend-mode: multiply;
}

/* ----------- Desktop medio (da 993px a 1200px) ----------- */
@media (max-width: 1200px) and (min-width: 993px) {
  .product-grid-container {
    flex-direction: row;
    flex-wrap: nowrap;
    width:100%;
  }
  .image-col { flex: 0 0 29%; }
  .info-col  { flex: 0 0 40%; }
  .action-col { flex: 0 0 30%; }

  .product-buttons {
    flex-direction: row;
    gap: 0.75rem;
    flex-wrap: wrap;
  }
  .product-buttons .btn {
    width: auto;
    flex: 1 1 45%;
  }
  .action-col {
    flex-direction: column;
    align-items: flex-start;
  }
  .js-content-wrapper.left-column {
    width:100%;
  }
  #left-column {
    display: none;
  }
}
/* ----------- Tablet (da 768px a 992px) ----------- */
@media (max-width: 992px) {
  .product-grid-container {
    flex-direction: row;
    flex-wrap: nowrap;
  }
  .js-content-wrapper.left-column {
    width:100%;
  }
  .image-col { flex: 0 0 30%; }
  .info-col  { flex: 0 0 40%; }
  .action-col { flex: 0 0 30%; }
  .product-buttons {
    flex-direction: row;
    gap: 0.5rem;
    flex-wrap: wrap;
  }
}

/* ----------- Mobile (sotto 768px) ----------- */
@media (max-width: 767px) {
  .product-grid-container {
    flex-direction: column;
    flex-wrap: wrap;
  }
  .image-col,
  .info-col,
  .action-col {
    flex: 0 0 100%;
    width: 100%;
  }
}

/* -------------------- TPL CATEGORIA -------------------- --------------*/
.products-sort-order button {
    width:fit-content!important;
}
#category-description p {
    margin-bottom: 0px !important;
    color: var(--gray-dark);
}
.products-selection .sort-by-row .select-title {
    color: var(--gray);
    border: 1px solid #cccccc;
    width: fit-content;
    height: 2.75rem;
    font-weight: 400;
}
.products-sort-order .dropdown-menu {
    right:0px;
}
.products-sort-order .select-list:hover, .brands-sort .select-list:hover, .suppliers-sort .select-list:hover {
    background-color: var(--green) !important; 
    color:var(--white);
}
.category-top-menu li a {
    color: var(--green-dark);
}

/* -------------------- FOOTER-------------------- --------------*/
@media (max-width: 767px){
    .block-contact {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .contact-info {
        text-align: center;
    }
    .footer-container {
        padding:3.75rem 0;
    }
     .product-quantity {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-direction: column;
     }
     .product-quantity .add {
        margin-top: 1rem;
    }
}

@media (min-width: 768px) {
    .links .collapse {
        display: inherit!important;
    }
    .footer-container .links ul>li {
        padding: 0rem;
        border-bottom: 0px !important;
        margin-bottom: 0rem!important;
        margin-top: 0.1rem!important;
    }
    .footer-container .links ul>li a {
        color: var(--green);
        font-size:  clamp(0.7rem, 0.63rem + 0.3vw, var(--fs16));
        font-family: "Mulish", sans-serif;
        text-decoration: none;
    }
    .links .title {
        border-bottom: 0px!important;
    }
    .links .title span:first-of-type {
        font-size: clamp(0.8rem, 0.72rem + 0.3vw, var(--fs16))!important;
    }
    .ft_newsletter {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    .logo-footer {
        width:7.8125rem;
    }
    #footerBlocks {
        justify-content: space-between;
    }
    .footer-container {
        padding-top:6.9rem;
        padding-bottom: 8.125rem;
    }
    .footer-title-custom-border {
        position: relative;
    }
    .footer-title-custom-border::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 80%;
    height: 1px;
    background-color: var(--cream-light); 
    }
}

/* -------------------- BEFORE FOOTER/NEWSLETTER-------------------- --------------*/
.newsletter-container {
    padding-top: 4.625rem;
    padding-bottom: 6rem;
}
.newsletter-grid {
  display: grid;
  grid-template-columns: 362fr 410fr 570fr;
  gap: 6.25rem;
  align-items: center;
  max-width: 100%;
  box-sizing: border-box;
}
.newsletter-col-1,
.newsletter-col-2,
.newsletter-col-3 {
  display: flex;
  flex-direction: column;
}
@media (max-width: 991px) {
  .newsletter-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  .newsletter-container {
    padding-top: 1.6rem;
    padding-bottom: 2.68rem;
    }
}
.newsletter-form-wrapper {
  position: relative;
  width: 100%;
  max-width: 100%;
}
.newsletter-input {
  width: 100%;
  padding: 0.8rem 1rem;
  padding-right: 10rem;
  border: 1px solid #D9D9D9;
  outline: none;
  box-sizing: border-box;
}
.newsletter-submit {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 9.3rem;
  border: none;
  cursor: pointer;
  padding: unset !important;
}

/* -------------------- PRODUCT PAGE-------------------- --------------*/
#product #content {
    max-width: 100%;
}
#dettagliProdotto .fade:not(.show) {
    opacity:unset;
}
html {
  scroll-behavior: smooth;
}
.product-actions .add-to-cart {
    height: 44px !important;;
}
#product .input-group-btn-vertical .btn,
#product .product-quantity #quantity_wanted {
    width:3rem;
    height:3rem
}
.aspect-ratio img {
    position: absolute;
    height: 100%;
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    top: 0;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}
.aspect-ratio {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    aspect-ratio: 0.7;
}
.ap-product-media-image-wrapper {
    overflow: hidden;
    background: #fff;
    border-radius: var(--block-border-radius-reduced);
    z-index: 0;
}
.tabs .nav-tabs .nav-link.active, .tabs .nav-tabs .nav-link:hover {
    border: 0;
    border-bottom:unset;
    background-color: var(--green-dark);
    color: white!important;
}
.tabs .nav-tabs .nav-link {
    border: 0;
    border-bottom:unset;
    color: var(--black);
    padding: 1rem 2.125rem;

}
.nav li + li {
    margin-top: 0px;
}
.product-features>dl.data-sheet dd.value, .product-features>dl.data-sheet dt.name {
    background: var(--cream-light);
}
.definition-list dl dd:nth-of-type(even), .definition-list dl dt:nth-of-type(even), .product-features>dl.data-sheet dd.value:nth-of-type(even), .product-features>dl.data-sheet dt.name:nth-of-type(even) {
    background: var(--green-dark20);
}
#description {
    padding-top:2.5rem;
}
.product-prices.js-product-prices {
    display: flex;
    align-items: flex-end;
}
#product .regular-price {
    font-size: clamp(1.15rem, 1.109rem + 0.205vw, var(--fs23));
}
#product .product-description p,
#product .product-description span {
    color: var(--green-dark)!important;
}
.product-miniature .product-title a {
    text-transform: initial;
}
#product .row {
    --bs-gutter-x: 0rem!important;
}

/* -------------------- CMS-------------------- --------------*/
.page-content.page-cms {
    padding: 1rem 0rem;
    text-align: justify;
    background: #fff;
}
.page-content.page-cms h2  {
    font-size: clamp(1.15rem, 1.109rem + 0.205vw, var(--fs23))!important;
    margin-bottom: 1rem!important;
}
#cms h1  {
    font-size: clamp(1.3rem, 1.2536rem + 0.2321vw, var(--fs26));
    font-weight: bold;
}
.elementor-widget-container .elementor-text-editor h2 {
  margin-top: 1rem !important;
}

.elementor-widget-container .elementor-text-editor > h2:first-of-type {
  margin-top: 0 !important;
}

/* -------------------- HOME-------------------- --------------*/

#index .block-categories .category-sub-menu {
    margin-top:1.5rem;
}
.feauterdSellers {
    overflow: hidden;
}
.novita-badge {
  background-color: var(--green);
  color: white;
  padding: 0.3rem 0.8rem;
  border-radius: 0.25rem;
  display: inline-block;
  font-weight: 600;
  line-height: 1em;
}
.swiper-pagination {
    position: static;
    margin-top:1rem;
}
.swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--green);
}
li.menu-item.menu-item-type-category.menu-item-category-18 {
    display: none;
}
.newsletter-col-3 .custom-checkbox label {
    padding-left: 1rem;;
}
#authentication .custom-checkbox span {
    /* -webkit-box-flex: 0; */
    -ms-flex: auto;
    flex: auto!important;
}
body#checkout .custom-checkbox span {
    position: static;
    top: .025rem;
    left: 0;
    -ms-flex: auto!important;
    flex: auto!important;
}
li.menu-item.menu-item-type-category.menu-item-category-20 {
    display: none;
}