/* ==========================================================
   FORNO - Custom CSS
========================================================== */


/* ==========================================================
   Pizza Cards
========================================================== */

.pizza-stack{
    display:flex;
    justify-content:center;
    align-items:center;
    position:relative;
    overflow:visible !important;
}

.pizza-card{
    position:relative;
    z-index:1;
    transform-origin:center;
    transition:
        transform .45s cubic-bezier(.22,.61,.36,1),
        box-shadow .45s ease;
    will-change:transform;
}

.pizza-stack .pizza-card{
    z-index:1;
}

.pizza-card:hover{
    transform:translateY(-20px) scale(1.05);
    z-index:95;
    box-shadow:0 35px 70px rgba(0,0,0,.28);
}

.charola-card{
    position:relative;
    z-index:90;
}


/* ==========================================================
   Header
========================================================== */

header,
.site-header,
#masthead{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
}


/* ==========================================================
   Main Content
========================================================== */

main{
    min-height:calc(100vh - 180px);
}


/* ==========================================================
   WooCommerce Notices
========================================================== */

.woocommerce-notices-wrapper{
    margin-top:100px;
}

@media (max-width:768px){

    .woocommerce-notices-wrapper{
        margin-top:90px;
    }

}


/* ==========================================================
   Checkout
========================================================== */

/* Hide shipping address when Pickup */

body.local-pickup .woocommerce-shipping-fields,
body.local-pickup .shipping_address,
body.local-pickup #ship-to-different-address{
    display:none !important;
}


/* Disable required styling */

.wc-block-checkout__billing-fields input:required{
    pointer-events:none;
}


/* Hide billing fields when pickup */

body.pickup-active .woocommerce-billing-fields__field-wrapper{
    display:none !important;
}


/* ======================================================


/* ==========================================================
   Hide Prices
========================================================== */

/* Shop */

.woocommerce ul.products li.product .price{
    display:none !important;
}


/* WooCommerce Blocks */

.wc-block-grid__product-price,
.wc-block-grid__product-price *,
.wc-block-components-product-price,
.wc-block-components-product-metadata__price{
    display:none !important;
}


/* Single Product */

/* Hide ONLY the initial product price */

.single-product .summary > .price{
    display:none !important;
}


/* Show the variation price after options are selected */

.single-product .woocommerce-variation-price,
.single-product .woocommerce-variation-price .price{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
}


/* ==========================================================
   Related Products
========================================================== */

.single-product .related .entry-meta,
.single-product .related .posted-on,
.single-product .related .entry-date,
.single-product .related time,
.jp-relatedposts-post-date,
#jp-relatedposts .jp-relatedposts-post-date,
#jp-relatedposts .jp-relatedposts-headline,
#jp-relatedposts{
    display:none !important;
}


/* ==========================================================
   Buttons
========================================================== */

/* Hide "Seleccionar opciones" */

.wc-block-grid__product-add-to-cart{
    display:none !important;
}


/* Add to Cart */

.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt{
    background:#111 !important;
    color:#fff !important;
    border:none !important;
    border-radius:4px;
}

.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover{
    background:#222 !important;
    color:#fff !important;
}


/* ==========================================================
   Mobile Cart
========================================================== */

/* ==========================
   WooCommerce Empty Cart (Mobile)
========================== */

@media (max-width: 767px) {

    .woocommerce-cart .wp-block-woocommerce-empty-cart-block,
    .woocommerce-cart .wp-block-woocommerce-cart,
    .woocommerce-cart .alignwide {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 20px !important;
        box-sizing: border-box;
    }

    .woocommerce-cart .wc-block-cart__empty-cart__title,
    .woocommerce-cart .wp-block-woocommerce-empty-cart-block h2 {
        text-align: center !important;
        font-size: 28px !important;
        margin: 20px 0 !important;
    }

    .woocommerce-cart .wp-block-separator {
        margin: 20px auto !important;
        max-width: 120px !important;
    }

    .woocommerce-cart .wc-block-cart__empty-cart__description,
    .woocommerce-cart p {
        text-align: center !important;
    }

    .woocommerce-cart .wc-block-components-button,
    .woocommerce-cart .wc-block-cart__submit-button {
        display: block !important;
        width: 100% !important;
        max-width: 320px !important;
        margin: 20px auto !important;
    }

}

.woocommerce-cart .wp-block-woocommerce-cart.alignwide{
    margin-left:0 !important;
    margin-right:0 !important;
    margin-inline-start:0 !important;
    margin-inline-end:0 !important;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block h2,
.woocommerce-cart .wc-block-cart__empty-cart__title,
.woocommerce-cart .wp-block-separator{
    text-align:center !important;
    margin-left:auto;
    margin-right:auto;
}


/* ==========================================================
   WhatsApp Button
========================================================== */

.forno-whatsapp-btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 18px;
    background:#25D366;
    color:#fff !important;
    border-radius:999px;
    font-weight:600;
    text-decoration:none;
    transition:.25s;
}

.forno-whatsapp-btn:hover{
    background:#1EBE5B;
    color:#fff !important;
    transform:translateY(-1px);
}

.forno-whatsapp-btn svg{
    width:22px;
    height:22px;
}


/* Hide SKU on single product pages */

.product_meta .sku_wrapper{
    display:none !important;
}


/* ==========================================================
   Coupon
========================================================== */

/* Highlight coupon section */

.wc-block-components-totals-coupon-form {
    background:#fff8f8;
    border:2px dashed #c62828;
    border-radius:10px;
    padding:14px 16px;
    margin:15px 0;
}


/* Make "Añadir cupones" stand out */

.wc-block-components-totals-coupon-form .wc-block-components-panel__button {
    color:#c62828 !important;
    font-weight:700 !important;
    font-size:16px !important;
}


/* Add coupon icon */

.wc-block-components-totals-coupon-form .wc-block-components-panel__button::before {
    content:"🏷️ ";
}

.forno-coupon-title {
    color:#333333;
    font-weight:700;
}

.forno-coupon-discount {
    color:#C62828;
    font-weight:700;
}

.forno-coupon-code {
    color:#333333;
}

.forno-coupon-code strong {
    color:#C62828;
}

.product_meta .posted_in {
    display:none !important;
}


/* =========================================================
   FORNO PIZZERÍA — PRODUCT PAGE REDESIGN
========================================================= */

/* Product content */

.single-product .summary {
    max-width:620px;
    margin-left:auto;
    margin-right:auto;
}


/* Product title */

.single-product .product_title {
    font-size:38px !important;
    font-weight:700 !important;
    line-height:1.1 !important;
    letter-spacing:-0.8px;
    margin-bottom:8px !important;
}


/* Short description */

.single-product .woocommerce-product-details__short-description {
    font-size:17px;
    line-height:1.55;
    color:#444;
    margin-bottom:28px;
}


/* Make description ingredients visually stronger */

.single-product .woocommerce-product-details__short-description strong {
    color:#111;
    font-weight:700;
}


/* ---------------------------------------------------------
   OPTION / VARIATION AREA
--------------------------------------------------------- */

.single-product form.cart {
    margin-top:20px;
}


/* Labels */

.single-product form.cart label,
.single-product form.cart .label,
.single-product form.cart .variations label {
    display:block;
    font-size:13px !important;
    font-weight:700 !important;
    text-transform:uppercase;
    letter-spacing:0.8px;
    color:#222;
    margin-bottom:8px;
}


/* Space between options */

.single-product .variations tr {
    display:block;
    margin-bottom:18px;
}


/* Variation table cells */

.single-product .variations td {
    display:block;
    width:100%;
    padding:0 !important;
}


/* ---------------------------------------------------------
   SELECT BOXES
--------------------------------------------------------- */

.single-product .variations select,
.single-product form.cart select {
    width:100%;
    min-height:52px;
    padding:0 16px;
    border:1px solid #d4d4d4;
    border-radius:8px;
    background:#fff;
    color:#222;
    font-size:16px;
    font-weight:500;
    cursor:pointer;
    transition:all .2s ease;
}


/* Hover */

.single-product .variations select:hover,
.single-product form.cart select:hover {
    border-color:#888;
}


/* Focus */

.single-product .variations select:focus,
.single-product form.cart select:focus {
    outline:none;
    border-color:#111;
    box-shadow:0 0 0 2px rgba(0,0,0,.08);
}


/* ---------------------------------------------------------
   PRICE
--------------------------------------------------------- */

.single-product .price {
    display:block;
    margin:24px 0 18px;
    font-size:30px !important;
    font-weight:700 !important;
    color:#111 !important;
}


/* ---------------------------------------------------------
   QUANTITY
--------------------------------------------------------- */

.single-product .quantity {
    margin-right:10px !important;
}

.single-product .quantity input.qty {
    height:52px;
    min-width:65px;
    border:1px solid #d4d4d4;
    border-radius:8px;
    font-size:17px;
    text-align:center;
}


/* ---------------------------------------------------------
   ADD TO CART
--------------------------------------------------------- */

.single-product button.single_add_to_cart_button {
    min-height:52px;
    padding:0 30px !important;
    border:none !important;
    border-radius:8px !important;
    font-size:15px !important;
    font-weight:700 !important;
    text-transform:uppercase;
    letter-spacing:.5px;
    transition:transform .15s ease, opacity .15s ease;
}


/* Hover */

.single-product button.single_add_to_cart_button:hover {
    transform:translateY(-1px);
    opacity:.88;
}


/* Click */

.single-product button.single_add_to_cart_button:active {
    transform:translateY(0);
}


/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (max-width:767px) {

    .single-product .product_title {
        font-size:30px !important;
    }

    .single-product .woocommerce-product-details__short-description {
        font-size:16px;
        line-height:1.5;
    }

    .single-product .variations select,
    .single-product form.cart select {
        min-height:50px;
    }

    .single-product .price {
        font-size:27px !important;
    }

    .single-product button.single_add_to_cart_button {
        width:100%;
        margin-top:10px;
    }

    .single-product .quantity {
        margin-right:0 !important;
    }
}


/* ==========================================================
   FORNO — DYNAMIC VARIATION INGREDIENTS
========================================================== */

.forno-variation-ingredients {
    display:none;
    margin:0 0 24px;
    padding:20px 22px;
    background:#f7f7f7;
    border-radius:10px;
    border:1px solid #e5e5e5;
}

.forno-variation-ingredients.is-visible {
    display:block;
}


/* INGREDIENTES title */

.forno-ingredients-title {
    margin-bottom:12px;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.2px;
    text-transform:uppercase;
    color:#111;
}


/* Ingredient container */

.forno-ingredients-content {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}


/* Individual ingredient */

.forno-ingredient {
    display:inline-flex;
    align-items:center;
    padding:7px 11px;
    background:#ffffff;
    border:1px solid #dedede;
    border-radius:100px;
    color:#222;
    font-size:14px;
    font-weight:500;
    line-height:1.2;
}


/* Normal description text */

.forno-ingredients-text {
    color:#333;
    font-size:15px;
    line-height:1.55;
}


/* Make bold text inside descriptions */

.forno-ingredients-text strong {
    font-weight:700;
    color:#111;
}


/* ==========================================================
   IMPROVE THE VARIATION SELECTORS
========================================================== */

.single-product .variations_form .variations {
    width:100%;
    margin-bottom:20px;
}

.single-product .variations_form .variations tr {
    display:block;
    margin-bottom:16px;
}

.single-product .variations_form .variations td {
    display:block;
    width:100%;
    padding:0 !important;
}


/* Attribute labels */

.single-product .variations_form .variations label {
    display:block;
    margin-bottom:7px;
    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#222;
}


/* Select boxes */

.single-product .variations_form .variations select {
    width:100%;
    min-height:52px;
    padding:0 15px;
    border:1px solid #d3d3d3;
    border-radius:8px;
    background:#fff;
    color:#222;
    font-size:16px;
    font-weight:500;
    cursor:pointer;
    transition:border-color .2s ease,
                box-shadow .2s ease;
}


/* Hover */

.single-product .variations_form .variations select:hover {
    border-color:#999;
}


/* Focus */

.single-product .variations_form .variations select:focus {
    outline:none;
    border-color:#111;
    box-shadow:0 0 0 2px rgba(0,0,0,.06);
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width:767px) {

    .forno-variation-ingredients {
        padding:17px;
        margin-bottom:20px;
    }

    .forno-ingredient {
        font-size:13px;
        padding:6px 9px;
    }

    .forno-ingredients-title {
        font-size:11px;
    }

}


/* =====================================================
   FORNO - DYNAMIC INGREDIENTS
===================================================== */

.forno-ingredients-box {
    display:none;
    width:100%;
    margin:0 0 24px 0;
    padding:20px 22px;
    background:#f7f7f7;
    border:1px solid #e5e5e5;
    border-radius:10px;
    box-sizing:border-box;
}

.forno-ingredients-title {
    margin-bottom:12px;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.2px;
    text-transform:uppercase;
    color:#111;
}

.forno-ingredients-list {
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}

.forno-ingredient {
    display:inline-flex;
    align-items:center;
    padding:7px 12px;
    background:#fff;
    border:1px solid #dedede;
    border-radius:50px;
    color:#222;
    font-size:14px;
    font-weight:500;
    line-height:1.25;
}


/* Mobile */

@media (max-width:767px) {

    .forno-ingredients-box {
        padding:17px;
        margin-bottom:20px;
    }

    .forno-ingredient {
        font-size:13px;
        padding:6px 10px;
    }

}


/* =========================================
   FORNO — Hide variation titles on mobile
========================================= */

@media (max-width:767px) {

    /* Hide attribute title/label rows */

    .variations .label,
    .variations .label label,
    .variations .woocommerce-variation-description,
    .variations td.label {
        display:none !important;
    }

}


/* ==========================================================
   FORNO - Especialidades Hover Image
========================================================== */

a[href*="especialidades"] > img {
    transition:opacity 0.3s ease;
}