/*
 Theme Name:   Pantry Child Theme
 Theme URI:    https://pantry.axiomthemes.com/
 Description:  Pantry Child Theme
 Author:       AxiomThemes
 Author URI:   https://axiomthemes.com/
 Template:     pantry
 Version:      1.0
 Tags:         flexible-header, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, full-width-template, microformats, post-formats, theme-options, threaded-comments, translation-ready
 Text Domain:  pantry
*/


/* =============================================================
   INDICE
   -------------------------------------------------------------
   1.  Reset e tipografia generale
   2.  Form e input
   3.  Header e menu
   4.  Loop prodotti (archivio shop)
   5.  Griglia masonry prodotti
   6.  Single product
   7.  Variazioni e add-to-cart
   8.  Plugin YITH WAPO (Add-on Options)
   9.  Plugin THWEPO (Extra Product Options)
   10. Prodotti B2C / urne
   11. Carrello
   12. Messaggi WooCommerce
   13. Newsletter / Brevo
   14. Login
   15. Icone home e sezioni custom
   16. Galleria prodotto (WP Gallery Slider)
   17. Media queries
   ============================================================= */


/* =============================================================
   1. RESET E TIPOGRAFIA GENERALE
   ============================================================= */

h1, h2, h3, h4, h5, h6 {
    -webkit-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;
}

.price {
    font-weight: 500 !important;
    font-family: var(--theme-font-h5_font-family);
    color: var(--theme-color-text_light);
    font-size: 18px;
    line-height: 1em;
    margin-bottom: 0;
}


/* =============================================================
   2. FORM E INPUT
   ============================================================= */

input[type=email],
input[type=text],
input[type=tel] {
    padding: 5px 10px;
}

input[type=radio] + label:before,
input[type=checkbox] + label:before,
.wpcf7-list-item-label.wpcf7-list-item-right:before {
    border-color: var(--theme-color-input_bd_color) !important;
    border-width: 0;
}

input[type=checkbox] {
    clip: unset;
}

input[type=checkbox]:checked + label:before {
    content: none;
}


/* =============================================================
   3. HEADER E MENU
   ============================================================= */

body[data-elementor-device-mode="desktop"] header > div > div:not('.header-over'); {
    padding: 26px 55px !important;
}

.sc_layouts_menu_nav > li > a,
.sc_layouts_menu_nav > li.menu-item-has-children > a {
    padding: 0.8em 0.5em;
}

.sc_layouts_menu_popup .sc_layouts_menu_nav > li > a,
.sc_layouts_menu_nav > li li > a {
    padding: 0.65em 0.65em;
}

.sc_layouts_menu_nav > li > ul {
    top: 4.3em;
    left: -0.7em;
}

.sc_layouts_row_type_compact .sc_layouts_cart .sc_layouts_cart_icon:before {
    position: relative;
    font-family: "fontello";
    content: "\e9f5";
}

.elementor-nav-menu--dropdown a:hover,
.elementor-nav-menu--dropdown a.elementor-item-active {
    color: #fff !important;
}


/* =============================================================
   4. LOOP PRODOTTI (ARCHIVIO SHOP)
   ============================================================= */

.loop-products .select-opions {
    bottom: -30px;
    opacity: 0;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

.loop-products:hover .select-opions {
    bottom: -2px;
    opacity: 1;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

.loop-products .product-image,
.post_item.post_layout_thumbs:hover .post_featured.hover_none img {
    transform: scale(1);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

.loop-products:hover .product-image,
.post_item.post_layout_thumbs:hover .post_featured.hover_none img {
    transform: scale(1.1) !important;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}

.woocommerce ul.products li.product .post_featured:hover img,
.woocommerce-page ul.products li.product .post_featured:hover img,
.woocommerce ul.products li.product a:hover img,
.woocommerce-page ul.products li.product a:hover img {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
}

.woocommerce ul.products li.product,
.woocommerce ul.products[class*=columns-] li.product,
.woocommerce[class*=columns-] ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce-page[class*=columns-] ul.products li.product,
.woocommerce-page ul.products[class*=columns-] li.product {
    padding: 0 20px 20px 0;
}

.woocommerce ul.products li.product .post_featured {
    margin-bottom: 10px;
}

.woocommerce ul.products .product_style_pure.product .post_featured {
    padding-bottom: 8px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 30px;
    font-weight: 600;
}

.woocommerce .shop_mode_thumbs ul.products li.product .price {
    display: inline-block;
}

.woocommerce .shop_mode_thumbs ul.products li.product .price,
.woocommerce-page .shop_mode_thumbs ul.products li.product .price {
    margin-top: 0;
}

.woocommerce .shop_mode_thumbs ul.products .product_style_pure.product .price .price {
    margin-top: 0 !important;
}

/* Effetto hover overlay (.je) */
.je {
    opacity: 0;
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    background-size: 100%;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    pointer-events: none;
}

.woocommerce .shop_mode_thumbs ul.products li.product .post_item:hover,
.woocommerce-page .shop_mode_thumbs ul.products li.product .post_item:hover .je {
    opacity: 1;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
}


/* =============================================================
   5. GRIGLIA MASONRY PRODOTTI
   ============================================================= */

.product-masonry-container .product-masonry-container-info {
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s ease;
}

.product-masonry-container:hover .product-masonry-container-info {
    opacity: 1;
    transition: all 0.5s ease;
}

.product-masonry-container .product-masonry-container-img img {
    transform: scale(1);
    transition: all 0.5s ease;
}

.product-masonry-container:hover .product-masonry-container-img img {
    transform: scale(1.1);
    transition: all 0.5s ease;
}

.product-masonry-grid .elementor-loop-container {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: 1fr 1fr 1fr !important;
    grid-template-rows: 1fr 1fr 1fr 1fr 1fr !important;
    gap: 30px 30px;
    grid-template-areas:
        "md-1 md-3 md-5"
        "md-1 md-3 md-5"
        "md-1 md-4 md-5"
        "md-2 md-4 md-5"
        "md-2 md-4 md-5";
}

.product-masonry-grid .elementor-loop-container .e-loop-item {
    min-height: unset;
    display: inline-block;
    vertical-align: top;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.product-masonry-grid .elementor-loop-container .e-loop-item:nth-child(1) { grid-area: md-1; }
.product-masonry-grid .elementor-loop-container .e-loop-item:nth-child(2) { grid-area: md-2; }
.product-masonry-grid .elementor-loop-container .e-loop-item:nth-child(3) { grid-area: md-3; }
.product-masonry-grid .elementor-loop-container .e-loop-item:nth-child(4) { grid-area: md-4; }
.product-masonry-grid .elementor-loop-container .e-loop-item:nth-child(5) { grid-area: md-5; }

.product-masonry-grid .product-masonry-container .product-masonry-container {
    overflow: hidden;
    position: relative;
    margin-bottom: 0;
    width: 100%;
    height: 100%;
}


/* =============================================================
   6. SINGLE PRODUCT
   ============================================================= */

.woocommerce div.product .product_title {
    font-size: 40px;
    font-weight: 600;
    margin-bottom: 15px;
}

.woocommerce div.product div.images {
    overflow: visible;
}

.contenuto-prodotto p,
.contenuto-prodotto ul {
    margin-bottom: 10px !important;
}

/* Frecce input number sempre visibili */
.single-product input[type="number"] {
    opacity: 1 !important;
    -webkit-appearance: auto !important;
    -moz-appearance: number-input !important;
    appearance: auto !important;
}

.single-product input[type="number"]::-webkit-inner-spin-button,
.single-product input[type="number"]::-webkit-outer-spin-button {
    opacity: 1 !important;
    -webkit-appearance: auto !important;
    margin: 0 !important;
}

.slick-prev:before,
.slick-next:before {
    font-family: inherit;
}

/*
.woocommerce .button,
.woocommerce-page .button {
    width: 100% !important;
}
*/

/* =============================================================
   7. VARIAZIONI E ADD-TO-CART
   ============================================================= */

.woocommerce div.product form.cart .variations {
    margin-bottom: 10px;
}

.woocommerce div.product form.cart .variations label,
div.product form.cart div.quantity > label {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.woocommerce div.product form.cart .variations select {
    text-transform: uppercase;
}

.woocommerce div.product form.cart .variations .select_container {
    max-width: 100%;
}

.single_variation_wrap .woocommerce-variation-price {
    display: none;
}

/* Quantità */
.woocommerce div.product form.cart div.quantity,
.woocommerce-page div.product form.cart div.quantity {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

.woocommerce div.product form.cart div.quantity select,
.woocommerce-page div.product form.cart div.quantity select {
    text-align: left;
}

.woocommerce div.product form.cart div.quantity .q_inc,
.woocommerce div.product form.cart div.quantity .q_dec {
    display: none;
}

.quantity label {
    font-weight: 700;
    color: black;
    font-family: var(--theme-font-h5_font-family);
}

.cart-quantity-custom {
    width: 70px;
    font-size: 19px !important;
    font-weight: 700 !important;
    color: var(--theme-color-text_dark);
    font-family: var(--theme-font-h5_font-family);
    border: 0 !important;
    padding: 0 0 1px 0 !important;
    line-height: 1em !important;
}

/* Bottone add-to-cart */
.single_variation_wrap button.single_add_to_cart_button,
.elementor-product-simple form button {
    display: flex;
    width: 75%;
    justify-content: center;
    float: none;
    margin-inline-start: 0px !important;
}

/* Layout flex variazioni */
:is(.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart) form.cart.variations_form .woocommerce-variation-add-to-cart,
.elementor-product-simple form {
    display: flex !important;
    flex-direction: column;
}

.woocommerce-variation-add-to-cart .quantity { order: 1; }
.woocommerce-variation-add-to-cart table.extra-options { order: 2; }
.woocommerce-variation-add-to-cart .ds-var-price { order: 3; }
.woocommerce-variation-add-to-cart .single_add_to_cart_button { order: 4; }

.woocommerce-variation-add-to-cart table.extra-options label.label-tag,
table.extra-options .label-tag {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: var(--theme-font-h5_font-family);
    color: black;
    font-size: 15px;
}

.woocommerce div.product form.cart table.extra-options {
    margin-bottom: 0px;
	    margin-top: 20px;
}


/* =============================================================
   8. PLUGIN YITH WAPO (ADD-ON OPTIONS)
   ============================================================= */

.yith-wapo-block h5 {
    margin: 0 0 10px 0 !important;
    text-transform: uppercase !important;
    font-size: 1.2em !important;
    letter-spacing: 2px !important;
}

.yith-wapo-block h3 {
    font-size: 25px !important;
}

.yith-wapo-addon:not(.yith-wapo-addon:first-child) {
    padding: 10px;
    border: 1px solid #ccc;
    margin-bottom: 10px;
    border-radius: 10px;
}

.options.per-row-1 {
    grid-template-columns: repeat(1, minmax(0, 100%)) !important;
}

.yith-wapo-block .yith-wapo-addon:not(:first-child):not(.empty-title):not(.toggle-open) {
    margin-top: 0;
}

h5.wapo-addon-title.toggle-closed {
    margin-top: 0;
}


/* =============================================================
   9. PLUGIN THWEPO (EXTRA PRODUCT OPTIONS)
   ============================================================= */

.cornice-magnetica input[type=number].thwepo-input-field {
    display: block;
}

.single-product div.product form.cart input[type=number].thwepo-input-field {
    appearance: auto !important;
    -moz-appearance: number-input !important;
}

.single-product div.product form.cart input[type=number].thwepo-input-field ::-webkit-outer-spin-button,
.single-product div.product form.cart input[type=number].thwepo-input-field ::-webkit-inner-spin-button {
    -webkit-appearance: auto !important;
    margin: 0 !important;
}

.thwepo_prodotti_b2c tr {
    margin-bottom: 20px;
    display: block;
}

/* Color palette */
.thwepo-color-palette-item input[type=radio] + .thwepo-color-palette-lable .thwepo-color-box:after {
    display: block;
    position: absolute;
    content: "";
    left: -4px;
    right: -4px;
    top: -4px;
    bottom: -4px;
    z-index: 1;
    border: 1px solid #b29c7d;
    border-radius: 100%;
}


/* =============================================================
   10. PRODOTTI B2C / URNE
   ============================================================= */

.cornice-magnetica,
.prodotti-b2c tr:not(:first-child) {
    border: 2px solid #b39c7d !important;
    display: block;
    padding: 20px;
    max-width: 100%;
    border-radius: 10px;
}

.prodotti-b2c .section-title {
    padding-bottom: 0;
}

.prodotti-b2c h4 {
    margin: 0;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: var(--theme-font-h5_font-family);
    color: black;
}

.prodotti-b2c td {
    background-color: transparent !important;
}

.prodotti-b2c .incisione textarea {
    border: 1px solid #b29c7d;
}

/* Colore urna */
.prodotti-b2c .colore_urna .thwepo-color-palette-lable:before {
    display: none;
}

.prodotti-b2c .colore_urna input[type=radio] + label {
    padding-left: 0;
}

.prodotti-b2c .colore_urna .thwepo-color-palette-lable .thwepo-color-box {
    margin: 0 auto;
}

.prodotti-b2c .colore_urna .thwepo-color-palette-item {
    margin-right: 0;
    width: 33%;
    text-align: center;
}

.prodotti-b2c .colore_urna .thwepo-color-palette-item input[type=radio]:checked + .thwepo-color-palette-lable .thwepo-color-box:after {
    border-radius: 100%;
    border: 2px solid #b29c7d;
}

.prodotti-b2c .colore_urna .thwepo-color-palette-lable .thwepo-color-label {
    margin-top: 10px;
    display: block;
}


/* =============================================================
   11. CARRELLO
   ============================================================= */

.ciao {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 50px;
}

.woocommerce .cart-collaterals,
.woocommerce-page .cart-collaterals {
    width: 30%;
    align-items: flex-start;
    justify-content: space-between;
}

.woocommerce .woocommerce-cart-form {
    width: 70%;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
    width: 100%;
}

.cart-collaterals .cart_totals h2 {
    margin: 0 0 1em;
    background: #f4f0ed;
    padding: 25px;
}

.woocommerce .woocommerce-cart-form table.shop_table td.actions,
.woocommerce .woocommerce-cart-form table.shop_table td.cart-coupon {
    padding-top: 1.9em;
}

.woocommerce .cart_totals table.shop_table tr th,
.woocommerce .cart_totals table.shop_table tr td {
    background-color: transparent !important;
    border-width: 0 0 1px 0 !important;
    padding: 10px 24px;
}

/* Elementor cart widget */
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table_responsive tbody th,
.elementor-widget-woocommerce-cart .woocommerce-page .cart_totals table.shop_table_responsive tbody th {
    display: table-cell;
}

.elementor-widget-woocommerce-cart .woocommerce table.shop_table .product-remove a {
    display: block;
}

/* Nome prodotto e variazioni nel carrello */
.product-name-inner .product-info {
    display: flex;
    flex-direction: column;
}

.product-name-inner .product-info .variation {
    font-weight: 400;
    font-size: 0.7em;
    line-height: 1.3em;
}


/* =============================================================
   12. MESSAGGI WOOCOMMERCE
   ============================================================= */

.woocommerce-message {
    margin: 30px !important;
    background: white !important;
    padding: 20px;
    color: black;
    font-size: 20px;
}

.price-message {
    font-size: 0.9em;
    font-weight: 400;
    letter-spacing: 0.5px;
}

.price-message a {
    text-decoration: underline !important;
}


/* =============================================================
   13. NEWSLETTER / BREVO
   ============================================================= */

.sib_signup_box_inside_1 p,
.sib_signup_box_inside_1 label,
.sib_signup_box_inside_1 input {
    display: block;
}

.sib_signup_box_inside_1 p {
    margin-bottom: 15px;
}

.sib_signup_box_inside_1 label {
    color: #fff;
}

.sib_signup_box_inside_1 input[type='email'] {
    background: #fff;
    width: 100%;
    border: 0;
    padding: 10px 10px;
}

.sib_signup_box_inside_1 input[type='submit'] {
    padding: 15px 40px;
}

.form-newsletter-home label[for='email'] {
    display: none;
}

.form-newsletter-home input[type='submit'] {
    margin: 0 auto;
    background-color: #b29c7d;
}

.form-newsletter-home input[type='submit']:hover {
    background-color: #fff;
    color: #b29c7d;
}

.brevo-privacy {
    margin-bottom: 10px;
    color: #fff !important;
}

.brevo-privacy a {
    color: #fff !important;
    text-decoration: underline;
}

/* Form Elementor con privacy checkbox */
.elementor-field-group-field_da41c57 span.elementor-field-option,
.elementor-field-group-field_da41c58 span.elementor-field-option {
    display: flex;
    align-items: center;
}


/* =============================================================
   14. LOGIN
   ============================================================= */

.woocommerce form.login {
    max-width: 50%;
    margin: 0;
}


/* =============================================================
   15. ICONE HOME E SEZIONI CUSTOM
   ============================================================= */

.sc_icons_divider.sc_icons_size_large .sc_icon_type_svg svg {
    width: 7.4em;
    height: 7.4em;
}

.icone-home .sc_icons_size_large .sc_icon_type_svg svg {
    width: 9em;
    height: 9em;
}

.icone-home .sc_icons .sc_icons_item .sc_icons_item_more_link .link_text {
    font-family: "Goldplay", Sans-serif;
}


/* =============================================================
   16. GALLERIA PRODOTTO (WP GALLERY SLIDER)
   ============================================================= */

.wpgs-for.slick-initialized.slick-slider::after {
    content: "\f00e";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 100;
    width: 36px;
    height: 36px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: #333;
}


/* =============================================================
   17. MEDIA QUERIES
   ============================================================= */

/* Tablet (768px - 1024px) - Griglia masonry prodotti */
@media (max-width: 1024px) and (min-width: 768px) {
    .product-masonry-grid .elementor-loop-container {
        grid-template-columns: 1fr 1fr !important;
        grid-template-rows: auto !important;
        grid-template-areas: none !important;
        grid-auto-flow: row !important;
        gap: 24px !important;
    }

    .product-masonry-grid .elementor-loop-container .e-loop-item {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
    }

    /* Ultimo elemento a tutta larghezza */
    .product-masonry-grid .elementor-loop-container .e-loop-item:nth-child(5) {
        grid-column: span 2 !important;
    }
}

/* Mobile (max 767px) */
@media (max-width: 767px) {
	
	.menu_mobile .menu_mobile_nav_area>ul>.menu-item>a {
            font-size: 30px !important;
        }
	
	

    /* Login full width */
   .woocommerce form.login{
        max-width: 100% !important;
    }

    /* Colonne in singola riga */
    .row.columns_padding_bottom.columns_in_single_row > [class*=column-][class*=-mobile],
    .columns_wrap.columns_padding_bottom.columns_in_single_row > [class*=column-][class*=-mobile],
    .trx_addons_columns_wrap.columns_padding_bottom.columns_in_single_row > [class*=trx_addons_column-][class*=-mobile] {
        max-width: 50%;
        text-align: center;
    }

    /* Loop prodotti shop a 2 colonne */
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product,
    .woocommerce ul.products[class*=columns-] li.product,
    .woocommerce-page ul.products[class*=columns-] li.product {
        padding: 0 !important;
        width: calc(50% - 10px) !important;
    }

    .woocommerce ul.products,
    .woocommerce-page ul.products {
        margin-right: 0;
        display: flex;
        flex-direction: row;
        gap: 20px;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        font-size: 23px;
        line-height: 1.3em;
    }

    .woocommerce .shop_mode_thumbs ul.products li.product .price,
    .woocommerce-page .shop_mode_thumbs ul.products li.product .price,
    .woocommerce ul.products li.product .price,
    .woocommerce-page ul.products li.product .price {
        margin: 0 !important;
    }

    /* Single product con woocommerce extensions */
    body.woo_extensions_present div.product div.images {
        margin-bottom: 20px;
    }

    /* Griglia masonry: una colonna */
    .product-masonry-grid .elementor-loop-container {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto !important;
        grid-template-areas: none !important;
        grid-auto-flow: row !important;
        gap: 20px !important;
    }

    .product-masonry-grid .elementor-loop-container > * {
        grid-area: auto !important;
        grid-column: auto !important;
        grid-row: auto !important;
    }
	
	:is(.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart) form.cart.variations_form .woocommerce-variation-add-to-cart, .elementor-product-simple form {

    gap: 30px;
}
	
	.woocommerce .woocommerce-cart-form, .woocommerce .cart-collaterals, .woocommerce-page .cart-collaterals{width:100%}
	
	.ciao {

    gap: 0px;
    flex-direction: column;
}
	
	        .woocommerce .cart-collaterals h2, .woocommerce-page .cart-collaterals h2 {
            margin: 0 !important;
        }
	
}

.woocommerce div.product form.cart div.quantity, .woocommerce-page div.product form.cart div.quantity{width:100% !important}
