/* ==================================================
   KIPET - TIENDA
   ================================================== */


/* Fondo general de tienda */
body.woocommerce-shop,
body.post-type-archive-product {
    background: #EBE7DE;
}


/* ==================================================
   KIPET - TÍTULO TIENDA
   ================================================== */

   /* ==================================================
   KIPET - CABECERA TIENDA COMPACTA
   ================================================== */

body.woocommerce-shop .hero-section,
body.post-type-archive-product .hero-section {
    --min-height: 110px !important;
    min-height: 110px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    background: #EBE7DE !important;
    background-image: none !important;
}

body.woocommerce-shop .hero-section h1,
body.post-type-archive-product .hero-section h1 {
    margin: 0 !important;
    font-size: 32px !important;
    
    font-weight: 700 !important;
    line-height: 1.2 !important;

    color: #1D1D1C !important;
}


/* Si Blocksy muestra breadcrumbs */
body.woocommerce-shop .hero-section .ct-breadcrumbs,
body.post-type-archive-product .hero-section .ct-breadcrumbs {
    margin-top: 8px;

    font-size: 13px;
    color: #777;
}


/* ==================================================
   ÁREA DE PRODUCTOS
   ================================================== */

body.woocommerce-shop .site-main,
body.post-type-archive-product .site-main {
    background: #EBE7DE;
}



@media (max-width: 781px) {

    body.woocommerce-shop .hero-section,
    body.post-type-archive-product .hero-section {
        --min-height: 85px !important;
        min-height: 85px !important;
    }

    body.woocommerce-shop .hero-section h1,
    body.post-type-archive-product .hero-section h1 {
        font-size: 28px !important;
    }
}


/* ==================================================
   KIPET - CABECERA CATEGORÍAS DE PRODUCTO
   ================================================== */

body.tax-product_cat .hero-section,
body.tax-product_brand .hero-section {
    --min-height: 110px !important;

    min-height: 110px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    background: #EBE7DE !important;
    background-image: none !important;
}

body.tax-product_cat .hero-section h1,
body.tax-product_brand .hero-section h1 {
    margin: 0 !important;

    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    color: #1D1D1C !important;
}

@media (max-width: 781px) {

    body.tax-product_cat .hero-section,
    body.tax-product_brand .hero-section {
        --min-height: 85px !important;
        min-height: 85px !important;
    }

    body.tax-product_cat .hero-section h1,
    body.tax-product_brand .hero-section h1 {
        font-size: 28px !important;
    }
}

/* ==================================================
   KIPET - SIDEBAR FILTROS TIENDA
   ================================================== */

body.woocommerce-shop .ct-sidebar,
body.post-type-archive-product .ct-sidebar,
body.tax-product_cat .ct-sidebar,
body.tax-product_brand .ct-sidebar {
    padding: 24px !important;

    background: #FFFFFF;
    border-radius: 16px;

    align-self: flex-start;
}


/* Títulos principales de filtros */
body.woocommerce-shop .ct-sidebar h2,
body.woocommerce-shop .ct-sidebar h3,
body.post-type-archive-product .ct-sidebar h2,
body.post-type-archive-product .ct-sidebar h3,
body.tax-product_cat .ct-sidebar h2,
body.tax-product_cat .ct-sidebar h3,
body.tax-product_brand .ct-sidebar h2,
body.tax-product_brand .ct-sidebar h3 {
    margin-top: 0;
    margin-bottom: 16px;

    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    color: #2F3D2C !important;
}


/* Separación entre widgets/filtros */
body.woocommerce-shop .ct-sidebar .ct-widget,
body.post-type-archive-product .ct-sidebar .ct-widget,
body.tax-product_cat .ct-sidebar .ct-widget,
body.tax-product_brand .ct-sidebar .ct-widget {
    margin-bottom: 28px;
}

body.woocommerce-shop .ct-sidebar .ct-widget:last-child,
body.post-type-archive-product .ct-sidebar .ct-widget:last-child,
body.tax-product_cat .ct-sidebar .ct-widget:last-child,
body.tax-product_brand .ct-sidebar .ct-widget:last-child {
    margin-bottom: 0;
}


/* ==================================================
   PRECIO
   ================================================== */

.ct-sidebar .wc-block-price-filter {
    margin-bottom: 28px;
}

.ct-sidebar .wc-block-price-filter__range-input-wrapper {
    margin-top: 12px;
    margin-bottom: 16px;
}

/* línea */
.ct-sidebar .wc-block-price-filter__range-input-progress {
    background: #AE8E67 !important;
}

/* inputs precio */
.ct-sidebar .wc-block-price-filter__controls input {
    border: 1px solid rgba(47, 61, 44, .35) !important;
    border-radius: 8px !important;

    background: #EBE7DE !important;
    color: #1D1D1C !important;
}


/* ==================================================
   CATEGORÍAS / ATRIBUTOS
   ================================================== */

.ct-sidebar ul {
    margin: 0;
    padding: 0;
}

.ct-sidebar li {
    margin-bottom: 8px;
}

.ct-sidebar a {
    color: #1D1D1C;
    text-decoration: none;

    transition: color .22s ease;
}

.ct-sidebar a:hover,
.ct-sidebar .current-cat > a {
    color: #AE8E67 !important;
}


/* subcategorías */
.ct-sidebar ul ul {
    margin-top: 7px;
    padding-left: 18px;
}


/* ==================================================
   CHECKBOXES
   ================================================== */

.ct-sidebar input[type="checkbox"] {
    accent-color: #2F3D2C;
}


/* ==================================================
   CONTADORES
   ================================================== */

.ct-sidebar .count,
.ct-sidebar .wc-block-product-categories-list-item-count {
    color: #777;
    font-size: 13px;
}


/* ==================================================
   MOBILE
   Ocultaremos esta sidebar cuando hagamos off-canvas
   ================================================== */



/* ==================================================
   KIPET - TARJETAS DE PRODUCTO / TIENDA
   ================================================== */

.woocommerce ul.products li.product {
    background: #FFFFFF;
    border-radius: 16px;

    padding: 14px 14px 18px !important;

    overflow: hidden;

    display: flex;
    flex-direction: column;

    transition:
        transform .28s ease,
        box-shadow .28s ease;
}


/* Hover tarjeta */
@media (hover: hover) and (pointer: fine) {

    .woocommerce ul.products li.product:hover {
        transform: translateY(-5px);

        box-shadow:
            0 12px 28px rgba(29, 29, 28, .10);
    }

}


/* ==================================================
   IMAGEN
   ================================================== */

.woocommerce ul.products li.product
.woocommerce-LoopProduct-link {
    overflow: hidden;
    border-radius: 12px;
}

.woocommerce ul.products li.product img {
    display: block;

    width: 100% !important;
    aspect-ratio: 1 / 1;

    object-fit: cover;

    border-radius: 12px;

    transition: transform .32s ease;
}


@media (hover: hover) and (pointer: fine) {

    .woocommerce ul.products li.product:hover img {
        transform: scale(1.045);
    }

}


/* ==================================================
   TÍTULO
   ================================================== */

.woocommerce ul.products li.product
.woocommerce-loop-product__title {
    min-height: 48px;

    margin-top: 16px !important;
    margin-bottom: 10px !important;

    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;

    color: #1D1D1C !important;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;

    overflow: hidden;
}


/* ==================================================
   PRECIO
   ================================================== */

.woocommerce ul.products li.product .price {
    margin-bottom: 10px !important;

    font-size: 16px !important;
    font-weight: 700 !important;

    color: #1D1D1C !important;
}


/* ==================================================
   BOTÓN
   ================================================== */

.woocommerce ul.products li.product .button {
    margin-top: auto !important;

    background: #2F3D2C !important;
    color: #EBE7DE !important;

    border-radius: 8px !important;

    transition:
        background-color .25s ease,
        transform .25s ease;
}


.woocommerce ul.products li.product .button:hover {
    background: #AE8E67 !important;
    color: #1D1D1C !important;

    transform: translateY(-2px);
}


/* ==================================================
   MÓVIL
   ================================================== */

@media (max-width: 781px) {

    .woocommerce ul.products li.product {
        padding: 10px 10px 14px !important;

        border-radius: 13px;
    }

    .woocommerce ul.products li.product
    .woocommerce-loop-product__title {
        min-height: 55px;

        margin-top: 12px !important;
        margin-bottom: 9px !important;

        font-size: 14px !important;
        line-height: 1.3 !important;

        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;

        overflow: hidden;
    }

    .woocommerce ul.products li.product .price {
        font-size: 14px !important;
    }

    .woocommerce ul.products li.product .button {
        width: 100%;

        padding-left: 8px !important;
        padding-right: 8px !important;

        font-size: 13px !important;
        text-align: center;
    }

}
/* ==================================================
   KIPET - FILTROS / ORDEN MÓVIL
   ================================================== */

.kipet-shop-mobile-bar,
.kipet-sort-sheet {
    display: none;
}

@media (max-width: 781px) {

    body.woocommerce-shop,
    body.tax-product_cat,
    body.tax-product_brand {
        padding-bottom: 72px;
    }

    /* Barra inferior */
    .kipet-shop-mobile-bar {
        position: fixed;
        left: 12px;
        right: 12px;
        bottom: calc(10px + env(safe-area-inset-bottom));

        display: grid;
        grid-template-columns: 1fr 1fr;

        background: #EBE7DE;
        border: 1px solid rgba(47, 61, 44, .16);
        border-radius: 14px;

        box-shadow: 0 8px 28px rgba(29, 29, 28, .16);

        overflow: hidden;
        z-index: 9999;
    }

    .kipet-shop-mobile-bar button {
        min-height: 52px;

        background: transparent;
        color: #2F3D2C;

        border: 0;

        font-size: 15px;
        font-weight: 700;
    }

    .kipet-shop-mobile-bar button + button {
        border-left: 1px solid rgba(47, 61, 44, .15);
    }

    .kipet-shop-mobile-bar button:active {
        background: #D8CFC3;
    }

    /* Botón nativo de Woo oculto visualmente */
    .wc-block-product-filters__open-overlay {
        position: fixed !important;

        width: 1px !important;
        height: 1px !important;

        overflow: hidden !important;

        opacity: 0 !important;
        pointer-events: none !important;
    }

    /* Orden original Woo */
    .woocommerce-ordering {
        display: none !important;
    }

    /* Panel ordenar Kipet */
    .kipet-sort-sheet {
        display: block;

        position: fixed;
        left: 12px;
        right: 12px;
        bottom: calc(74px + env(safe-area-inset-bottom));

        padding: 18px;

        background: #FFFFFF;
        border-radius: 16px;

        box-shadow: 0 12px 35px rgba(29, 29, 28, .20);

        transform: translateY(130%);
        transition: transform .3s ease;

        z-index: 10001;
    }

    body.kipet-sort-open .kipet-sort-sheet {
        transform: translateY(0);
    }

    .kipet-sort-sheet strong {
        display: block;

        margin-bottom: 12px;

        color: #2F3D2C;

        font-size: 18px;
    }

    .kipet-sort-option {
        display: block;

        width: 100%;

        padding: 12px 6px;

        background: transparent;

        border: 0;
        border-bottom: 1px solid #EBE7DE;

        color: #1D1D1C;

        text-align: left;
        font-size: 15px;
    }

    .kipet-sort-option:last-child {
        border-bottom: 0;
    }

    .kipet-sort-option.is-active {
        color: #AE8E67;
        font-weight: 700;
    }

    body.kipet-sort-open {
        overflow: hidden;
    }

}


/* ==================================================
   PANEL NATIVO WOOCOMMERCE - MÓVIL
   ================================================== */

@media (max-width: 781px) {

    .wc-block-product-filters__overlay-dialog,
    .wc-block-product-filters__overlay-header,
    .wc-block-product-filters__overlay-content,
    .wc-block-product-filters__overlay-footer {
        background: #FFFFFF !important;
        color: #1D1D1C !important;
    }

}

/* ==================================================
   KIPET - FILTRO MÓVIL
   Fondo blanco solo dentro del panel
   ================================================== */

@media (max-width: 781px) {

    .wc-block-product-filters__overlay-dialog,
    .wc-block-product-filters__overlay-header,
    .wc-block-product-filters__overlay-content,
    .wc-block-product-filters__overlay-footer {
        background: #FFFFFF !important;
        color: #1D1D1C !important;
    }

}

/* ==================================================
   KIPET - CARRITO
   ================================================== */

body.woocommerce-cart {
    background: #EBE7DE;
}

body.woocommerce-cart .site-main {
    background: #EBE7DE;
}


/* Título */
body.woocommerce-cart .entry-title {
    color: #1D1D1C !important;

    font-size: 34px !important;
    font-weight: 700 !important;
}


/* ==================================================
   LISTADO PRODUCTOS
   ================================================== */

body.woocommerce-cart .woocommerce-cart-form {
    padding: 20px;

    background: #FFFFFF;
    border-radius: 16px;
}

body.woocommerce-cart table.shop_table {
    border: 0 !important;
    background: transparent !important;
}

body.woocommerce-cart table.shop_table th {
    color: #2F3D2C;

    font-weight: 700;

    border-bottom: 1px solid #EBE7DE !important;
}

body.woocommerce-cart table.shop_table td {
    border-bottom: 1px solid #EBE7DE !important;
}


/* Imagen */
body.woocommerce-cart
.woocommerce-cart-form__cart-item
.product-thumbnail img {
    width: 90px !important;
    height: 90px !important;

    object-fit: contain;

    background: #FFFFFF;

    border-radius: 10px;
}


/* Nombre */
body.woocommerce-cart .product-name a {
    color: #1D1D1C !important;

    font-weight: 600;

    text-decoration: none;
}

body.woocommerce-cart .product-name a:hover {
    color: #AE8E67 !important;
}


/* Precio */
body.woocommerce-cart .product-price,
body.woocommerce-cart .product-subtotal {
    color: #1D1D1C;

    font-weight: 700;
}


/* ==================================================
   CANTIDAD
   ================================================== */

body.woocommerce-cart .quantity {
    border: 1px solid rgba(47, 61, 44, .45);

    border-radius: 8px;

    overflow: hidden;
}

body.woocommerce-cart .quantity input {
    color: #1D1D1C;
}


/* ==================================================
   ELIMINAR
   ================================================== */

body.woocommerce-cart .product-remove a {
    color: #2F3D2C !important;

    transition:
        color .25s ease,
        transform .25s ease;
}

body.woocommerce-cart .product-remove a:hover {
    color: #AE8E67 !important;

    transform: scale(1.12);
}


/* ==================================================
   CUPÓN
   ================================================== */

body.woocommerce-cart .coupon input.input-text {
    min-height: 44px;

    padding: 10px 14px !important;

    background: #F5F1EA !important;

    border: 1px solid transparent !important;
    border-radius: 8px !important;

    color: #1D1D1C !important;
}

body.woocommerce-cart .coupon input.input-text:focus {
    border-color: #AE8E67 !important;
}


/* Botones carrito */
body.woocommerce-cart
button[name="apply_coupon"],
body.woocommerce-cart
button[name="update_cart"] {
    min-height: 44px;

    border-radius: 8px !important;
}


/* Aplicar cupón */
body.woocommerce-cart button[name="apply_coupon"] {
    background: #2F3D2C !important;
    color: #EBE7DE !important;
}

body.woocommerce-cart button[name="apply_coupon"]:hover {
    background: #AE8E67 !important;
    color: #1D1D1C !important;
}


/* ==================================================
   TOTALES
   ================================================== */

body.woocommerce-cart .cart_totals {
    padding: 28px !important;

    background: #FFFFFF;

    border: 0 !important;
    border-radius: 16px;

    box-shadow: 0 8px 25px rgba(29, 29, 28, .06);
}

body.woocommerce-cart .cart_totals h2 {
    margin-top: 0 !important;
    margin-bottom: 24px !important;

    color: #2F3D2C !important;

    font-size: 28px !important;
    font-weight: 700 !important;
}

body.woocommerce-cart .cart_totals table {
    border: 0 !important;
}

body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td {
    padding-top: 18px !important;
    padding-bottom: 18px !important;

    border-bottom: 1px solid #EBE7DE !important;
}


/* ==================================================
   FINALIZAR COMPRA
   ================================================== */

body.woocommerce-cart
.wc-proceed-to-checkout
.checkout-button {
    width: 100%;

    padding: 14px 20px !important;

    background: #2F3D2C !important;
    color: #EBE7DE !important;

    border-radius: 8px !important;

    font-weight: 700 !important;

    transition:
        background-color .25s ease,
        transform .25s ease;
}

body.woocommerce-cart
.wc-proceed-to-checkout
.checkout-button:hover {
    background: #AE8E67 !important;
    color: #1D1D1C !important;

    transform: translateY(-2px);
}


/* ==================================================
   CARRITO MÓVIL
   ================================================== */

@media (max-width: 781px) {

    body.woocommerce-cart .entry-title {
        font-size: 28px !important;
    }

    body.woocommerce-cart .woocommerce-cart-form {
        padding: 14px;

        border-radius: 14px;
    }

    body.woocommerce-cart
    .woocommerce-cart-form__cart-item
    .product-thumbnail img {
        width: 76px !important;
        height: 76px !important;
    }

    body.woocommerce-cart
    table.shop_table
    .woocommerce-cart-form__cart-item {
        padding-top: 16px;
        padding-bottom: 16px;

        border-bottom: 1px solid #EBE7DE;
    }

    

    /* Cupón */
    body.woocommerce-cart .coupon {
        display: grid !important;

        grid-template-columns: 1fr;
        gap: 10px;
    }

    body.woocommerce-cart .coupon input.input-text,
    body.woocommerce-cart button[name="apply_coupon"],
    body.woocommerce-cart button[name="update_cart"] {
        width: 100% !important;
    }


    /* Totales */
    body.woocommerce-cart .cart_totals {
        margin-top: 28px;

        padding: 24px !important;

        border-radius: 14px;
    }

    body.woocommerce-cart .cart_totals h2 {
        font-size: 25px !important;
    }

}

/* ==================================================
   KIPET - CHECKOUT MÓVIL
   Alineación general
   ================================================== */

@media (max-width: 781px) {

    /* Misma separación lateral para todo el checkout */
    body.woocommerce-checkout .ct-customer-details,
    body.woocommerce-checkout #order_review_heading,
    body.woocommerce-checkout #order_review {
        width: calc(100% - 32px) !important;
        max-width: calc(100% - 32px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    /* Estructura izquierda */
    body.woocommerce-checkout #customer_details,
    body.woocommerce-checkout #customer_details > .col-1,
    body.woocommerce-checkout #customer_details > .col-2 {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    /* Wrappers de campos */
    body.woocommerce-checkout
    .woocommerce-billing-fields__field-wrapper,
    body.woocommerce-checkout
    .woocommerce-additional-fields__field-wrapper {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Todos los campos ocupan exactamente el mismo ancho */
    body.woocommerce-checkout #customer_details .form-row {
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    body.woocommerce-checkout
    #customer_details
    .woocommerce-input-wrapper {
        display: block !important;
        width: 100% !important;
    }

    body.woocommerce-checkout
    #customer_details
    input.input-text,
    body.woocommerce-checkout
    #customer_details
    select,
    body.woocommerce-checkout
    #customer_details
    textarea {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Quitar desplazamiento extra de Información adicional */
    body.woocommerce-checkout .woocommerce-additional-fields {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

}

/* =========================================
   KIPET - CHECKOUT
   Fondo y tarjetas
   ========================================= */

body.woocommerce-checkout {
    background: #EBE7DE;
}

body.woocommerce-checkout .ct-customer-details,
body.woocommerce-checkout #order_review {
    background: #FFFFFF;
    border-radius: 16px;
    padding: 28px;
    box-sizing: border-box;
}

@media (max-width: 781px) {

    body.woocommerce-checkout .ct-customer-details,
    body.woocommerce-checkout #order_review {
        padding: 20px;
        border-radius: 14px;
    }

}

/* =========================================
   KIPET - CHECKOUT
   Checkbox términos y condiciones
   ========================================= */

body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
.woocommerce-form__label-for-checkbox {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;

    line-height: 1.45;
    cursor: pointer;
}

body.woocommerce-checkout
.woocommerce-terms-and-conditions-wrapper
input[type="checkbox"] {
    width: 20px !important;
    height: 20px !important;

    flex: 0 0 20px;

    margin: 2px 0 0 !important;

    appearance: none;
    -webkit-appearance: none;

    border: 2px solid #2F3D2C !important;
    border-radius: 4px;



    
    position: relative;

    accent-color: #2F3D2C;
    cursor: pointer;
}

/* ==================================================
   KIPET - PEDIDO RECIBIDO / THANK YOU PAGE
   ================================================== */



body.woocommerce-order-received {
    background: #EBE7DE;
}

/* Contenedor principal */
body.woocommerce-order-received .woocommerce-order {
    max-width: 1100px;
    margin: 0 auto;
}


/* -------------------------
   MENSAJE DE CONFIRMACIÓN
   ------------------------- */
/* Título de confirmación */
body.woocommerce-order-received
.kipet-order-success-title {
     width: 100%;
    max-width: 1100px;

    margin: 0 auto 24px !important;

    padding: 0 16px;

    box-sizing: border-box;

    text-align: center;

    color: #2F3D2C !important;

    font-size: 30px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}
body.woocommerce-order-received
.woocommerce-thankyou-order-received {
    margin: 0 0 24px !important;
    position: relative;

    padding: 20px 24px 20px 58px !important;

    box-sizing: border-box;

    background: #FFFFFF;
    border: 1px solid rgba(47, 61, 44, .12);
    border-left: 4px solid #2F3D2C;
    border-radius: 12px;

    color: #2F3D2C;
    font-size: 17px;
    font-weight: 600;
}

/* Icono del aviso */
body.woocommerce-order-received
.woocommerce-thankyou-order-received::before {
    position: absolute !important;

    left: 22px !important;
    top: 50% !important;

    margin: 0 !important;

    transform: translateY(-50%) !important;
}



/* -------------------------
   RESUMEN DEL PEDIDO
   ------------------------- */

body.woocommerce-order-received
.woocommerce-order-overview {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);

    gap: 0;

    margin: 0 0 30px !important;
    padding: 0 !important;

    background: #FFFFFF;
    border-radius: 16px;
    overflow: hidden;

    border: 1px solid rgba(47, 61, 44, .10);
}

body.woocommerce-order-received
.woocommerce-order-overview li {
    float: none !important;

    width: auto !important;
    margin: 0 !important;
    padding: 18px !important;

    border-right: 1px solid #EBE7DE !important;
    border-bottom: 1px solid #EBE7DE !important;

    list-style: none;
}

body.woocommerce-order-received
.woocommerce-order-overview li strong {
    display: block;

    margin-top: 5px;

    color: #1D1D1C;
    font-size: 15px;
    font-weight: 700;
}


/* -------------------------
   TÍTULOS
   ------------------------- */

body.woocommerce-order-received
.woocommerce-order-details__title,
body.woocommerce-order-received
.woocommerce-column__title {
    margin: 28px 0 16px !important;

    color: #2F3D2C !important;
    font-size: 25px !important;
    font-weight: 700 !important;
}


/* -------------------------
   DETALLE DEL PEDIDO
   ------------------------- */

body.woocommerce-order-received
.woocommerce-order-details {
    margin-bottom: 30px;
}

body.woocommerce-order-received
.woocommerce-order-details table {
    width: 100%;

    margin: 0 !important;

    background: #FFFFFF;

    border: 0 !important;
    border-radius: 16px;

    overflow: hidden;
}

body.woocommerce-order-received
.woocommerce-order-details table th,
body.woocommerce-order-received
.woocommerce-order-details table td {
    padding: 16px 18px !important;

    border: 0 !important;
    border-bottom: 1px solid #EBE7DE !important;
}

body.woocommerce-order-received
.woocommerce-order-details table th {
    color: #2F3D2C;
    font-weight: 700;
}

body.woocommerce-order-received
.woocommerce-order-details tfoot tr:last-child th,
body.woocommerce-order-received
.woocommerce-order-details tfoot tr:last-child td {
    border-bottom: 0 !important;
}


/* Total destacado */
body.woocommerce-order-received
.woocommerce-order-details tfoot tr:last-child th,
body.woocommerce-order-received
.woocommerce-order-details tfoot tr:last-child td {
    color: #2F3D2C;
    font-size: 17px;
    font-weight: 700;
}


/* -------------------------
   DIRECCIÓN / CLIENTE
   ------------------------- */

body.woocommerce-order-received
.woocommerce-customer-details {
    margin-top: 25px;
}

body.woocommerce-order-received
.woocommerce-customer-details address {
    padding: 22px !important;

    background: #FFFFFF;

    border: 0 !important;
    border-radius: 16px;

    line-height: 1.7;
}


/* ==================================================
   MÓVIL
   ================================================== */

@media (max-width: 781px) {

    body.woocommerce-order-received
    .woocommerce-order {
        width: calc(100% - 32px);
        margin-left: auto;
        margin-right: auto;
    }

     body.woocommerce-order-received
    .kipet-order-success-title {
        padding: 0;
        font-size: 24px !important;
        margin-bottom: 18px !important;
    }

    body.woocommerce-order-received
    .woocommerce-order-overview {
        grid-template-columns: 1fr;
    }

    body.woocommerce-order-received
    .woocommerce-order-overview li {
        padding: 15px !important;
        border-right: 0 !important;
    }

    body.woocommerce-order-received
    .woocommerce-thankyou-order-received {
        padding: 17px 18px 17px 52px !important;
        font-size: 15px;
    }

    body.woocommerce-order-received
    .woocommerce-thankyou-order-received::before {
        left: 18px !important;
    }

    body.woocommerce-order-received
    .woocommerce-order-details table th,
    body.woocommerce-order-received
    .woocommerce-order-details table td {
        padding: 13px !important;
    }

    body.woocommerce-order-received
    .woocommerce-order-details__title,
    body.woocommerce-order-received
    .woocommerce-column__title {
        font-size: 22px !important;
    }
}

/* ==================================================
   KIPET - FICHA DE PRODUCTO
   ================================================== */

/* Breadcrumb */
.single-product .woocommerce-breadcrumb {
    margin-bottom: 28px;

    color: #6f6a62;
    font-size: 13px;
    font-weight: 600;
}

.single-product .woocommerce-breadcrumb a {
    color: #2F3D2C;
    text-decoration: none;
}

.single-product .woocommerce-breadcrumb a:hover {
    color: #AE8E67;
}


/* ==================================================
   RESUMEN DEL PRODUCTO
   ================================================== */

.single-product div.product .summary {
    padding: 28px;

    background: #FFFFFF;
    border-radius: 16px;

    box-sizing: border-box;
}


/* Título */
.single-product div.product .product_title {
    margin: 0 0 16px !important;

    color: #1D1D1C !important;

    font-size: 42px !important;
    font-weight: 700 !important;
    line-height: 1.08 !important;

    text-transform: none;
}


/* Precio */
.single-product div.product .summary .price {
    margin-bottom: 24px;

    color: #2F3D2C !important;

    font-size: 22px !important;
    font-weight: 700 !important;
}


/* Descripción corta */
.single-product div.product
.woocommerce-product-details__short-description {
    margin: 0 0 26px;

    color: #1D1D1C;

    font-size: 16px;
    line-height: 1.65;
}


/* Formulario carrito */
.single-product div.product form.cart {
    margin-top: 0 !important;
    margin-bottom: 28px !important;

    padding-top: 22px;

    border-top: 1px solid rgba(47, 61, 44, .12);
}


/* Botón */
.single-product div.product
.single_add_to_cart_button {
    min-height: 52px;

    background: #2F3D2C !important;
    color: #FFFFFF !important;

    border-radius: 8px !important;

    font-weight: 700 !important;
}

.single-product div.product
.single_add_to_cart_button:hover {
    background: #AE8E67 !important;
}


/* Metadata */
.single-product div.product .product_meta {
    padding-top: 22px;

    border-top: 1px solid rgba(47, 61, 44, .12);

    font-size: 14px;
    line-height: 1.8;
}

.single-product div.product .product_meta > span {
    display: block;
}

.single-product div.product .product_meta a {
    color: #6f6a62;
    text-decoration: none;
}

.single-product div.product .product_meta a:hover {
    color: #AE8E67;
}


/* ==================================================
   PESTAÑAS
   ================================================== */

.single-product .woocommerce-tabs {
    margin-top: 45px;
}

.single-product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid rgba(47, 61, 44, .15);
}

.single-product .woocommerce-tabs ul.tabs li a {
    padding: 12px 18px;

    color: #6f6a62;

    font-size: 14px;
    font-weight: 700;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
    color: #2F3D2C;
}


/* Contenido descripción */
.single-product
.woocommerce-Tabs-panel {
    padding-top: 20px;

    color: #1D1D1C;

    line-height: 1.7;
}


/* ==================================================
   PRODUCTOS RELACIONADOS
   ================================================== */

.single-product .related.products {
    margin-top: 42px;
}

.single-product .related.products > h2 {
    margin-bottom: 26px !important;

    color: #2F3D2C !important;

    font-size: 28px !important;
    font-weight: 700 !important;
}


/* ==================================================
   MÓVIL
   ================================================== */

@media (max-width: 781px) {

    .single-product div.product .summary {
        padding: 20px;

        border-radius: 14px;
    }

    .single-product div.product .product_title {
        font-size: 30px !important;
        line-height: 1.12 !important;
    }

    .single-product div.product .summary .price {
        font-size: 20px !important;
    }

    .single-product .related.products > h2 {
        font-size: 24px !important;
    }

}


/* ==================================================
   KIPET - PRODUCTO / RETOQUES FINALES
   ================================================== */

/* Imagen principal */
.single-product div.product .woocommerce-product-gallery {
    overflow: hidden;
    border-radius: 16px;
}

.single-product div.product
.woocommerce-product-gallery img {
    border-radius: 16px;
}


/* Pestañas más limpias */
.single-product .woocommerce-tabs ul.tabs {
    margin-bottom: 24px !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
    transition: color .2s ease;
}

.single-product .woocommerce-tabs ul.tabs li a:hover {
    color: #AE8E67 !important;
}


/* ==================================================
   MÓVIL
   ================================================== */

@media (max-width: 781px) {

    /* Imagen */
    .single-product div.product .woocommerce-product-gallery {
        border-radius: 14px;
    }

    /* Menos separación antes de descripción */
    .single-product .woocommerce-tabs {
        margin-top: 28px !important;
    }

    /* Pestañas */
    .single-product .woocommerce-tabs ul.tabs {
        display: grid !important;
        grid-template-columns: 1fr 1fr;

        width: 100%;
        margin: 0 0 24px !important;
    }

    .single-product .woocommerce-tabs ul.tabs li {
        width: 100% !important;
        margin: 0 !important;

        text-align: center;
    }

    .single-product .woocommerce-tabs ul.tabs li a {
        display: block;

        width: 100%;

        padding: 12px 6px !important;

        font-size: 13px !important;

        box-sizing: border-box;
    }

    /* Contenido descripción */
    .single-product .woocommerce-Tabs-panel {
        padding-top: 8px !important;
    }

}

/* ==================================================
   KIPET - PRESENTACIÓN PRODUCTO
   ================================================== */

.single-product .kipet-product-presentacion {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 6px;

    margin: -4px 0 14px;

    font-size: 14px;
    line-height: 1.4;
}

.single-product .kipet-product-presentacion-label {
    color: #2F3D2C;
    font-weight: 700;
}

.single-product .kipet-product-presentacion-value {
    color: #6f6a62;
    font-weight: 500;
}

/* ==================================================
   KIPET - PÁGINAS DE COLECCIONES
   Ofertas + Nuevos ingresos
   ================================================== */

.kipet-collection-page {
    width: calc(100% - 40px) !important;
    max-width: 1200px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding: 10px 0 50px;

    box-sizing: border-box;
}


/* ==================================================
   TÍTULO DE COLECCIÓN
   ================================================== */

.kipet-collection-page > h3 {
    position: relative;

    margin: 0 0 32px !important;
    padding-left: 18px;

    color: #2F3D2C !important;

    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    text-transform: uppercase;
}

.kipet-collection-page > h3::before {
    content: "";

    position: absolute;
    left: 0;
    top: 50%;

    width: 5px;
    height: 32px;

    background: #AE8E67;
    border-radius: 3px;

    transform: translateY(-50%);
}


/* ==================================================
   RESULTADOS + ORDENAMIENTO
   ================================================== */

.kipet-collection-page .woocommerce {
    width: 100%;
}

.kipet-collection-page
.woocommerce-result-count {
    margin: 14px 0 28px !important;

    color: #1D1D1C;

    font-size: 14px;
    font-weight: 500;

    text-transform: uppercase;
    letter-spacing: .04em;
}

.kipet-collection-page
.woocommerce-ordering {
    margin: 0 0 28px !important;
}

.kipet-collection-page
.woocommerce-ordering select {
    min-width: 250px;

    padding: 11px 42px 11px 16px;

    background-color: #EBE7DE;

    border: 1px solid rgba(47, 61, 44, .12);
    border-radius: 8px;

    color: #1D1D1C;

    font-size: 14px;
}


/* ==================================================
   GRID DE PRODUCTOS
   ================================================== */

.kipet-collection-page
.woocommerce ul.products {
    display: grid !important;

    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

    gap: 24px !important;

    width: 100%;

    margin: 0 !important;
    padding: 0 !important;
}


/* ==================================================
   TARJETAS
   ================================================== */

.kipet-collection-page
.woocommerce ul.products li.product {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 14px 14px 18px;

    background: #FFFFFF;

    border: 0;
    border-radius: 16px;

    box-sizing: border-box;
    overflow: hidden;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.kipet-collection-page
.woocommerce ul.products li.product:hover {
    transform: translateY(-4px);

    box-shadow:
        0 10px 25px rgba(29, 29, 28, .10);
}


/* ==================================================
   IMÁGENES
   ================================================== */

.kipet-collection-page
.woocommerce ul.products li.product img {
    display: block;

    width: 100% !important;
    height: auto;

    aspect-ratio: 1 / 1;
    object-fit: cover;

    margin: 0 0 16px !important;

    border-radius: 12px;

    transition: transform .3s ease;
}

.kipet-collection-page
.woocommerce ul.products li.product:hover img {
    transform: scale(1.025);
}


/* ==================================================
   TÍTULO DEL PRODUCTO
   ================================================== */

.kipet-collection-page
.woocommerce-loop-product__title {
    min-height: 44px;

    margin: 0 0 10px !important;

    color: #1D1D1C !important;

    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
}


/* ==================================================
   PRECIO
   ================================================== */

.kipet-collection-page
.woocommerce ul.products li.product .price {
    display: block;

    margin: 0 0 14px;

    color: #2F3D2C !important;

    font-size: 16px !important;
    font-weight: 700 !important;
}


/* Precio anterior */
.kipet-collection-page
.woocommerce ul.products li.product .price del {
    margin-right: 6px;

    color: #8C877F;

    opacity: .7;
}


/* Precio promocional */
.kipet-collection-page
.woocommerce ul.products li.product .price ins {
    color: #2F3D2C;

    text-decoration: none;

    font-weight: 700;
}


/* ==================================================
   BOTÓN AÑADIR AL CARRITO
   ================================================== */

.kipet-collection-page
.woocommerce ul.products li.product .button {
    width: 100%;

    margin-top: 8px !important;
    padding: 12px 14px !important;

    background: #2F3D2C !important;
    color: #FFFFFF !important;

    border-radius: 9px !important;

    text-align: center;

    font-weight: 700 !important;

    transition:
        background .2s ease,
        transform .2s ease;
}

.kipet-collection-page
.woocommerce ul.products li.product .button:hover {
    background: #AE8E67 !important;
}


/* ==================================================
   PAGINACIÓN
   ================================================== */

.kipet-collection-page
.woocommerce-pagination {
    margin-top: 38px;
}

.kipet-collection-page
.woocommerce-pagination ul {
    border: 0 !important;
}

.kipet-collection-page
.woocommerce-pagination ul li {
    margin: 0 4px !important;

    border: 0 !important;
}

.kipet-collection-page
.woocommerce-pagination ul li a,
.kipet-collection-page
.woocommerce-pagination ul li span {
    min-width: 40px;
    height: 40px;

    display: flex !important;
    align-items: center;
    justify-content: center;

    background: #FFFFFF;

    border-radius: 8px;

    color: #2F3D2C !important;
}

.kipet-collection-page
.woocommerce-pagination ul li span.current {
    background: #2F3D2C !important;
    color: #FFFFFF !important;
}


/* ==================================================
   SIN PRODUCTOS
   ================================================== */

.kipet-collection-page
.kipet-no-products {
    width: 100%;

    padding: 38px 24px;

    background: #FFFFFF;

    border-radius: 16px;

    box-sizing: border-box;

    text-align: center;
}

.kipet-collection-page
.kipet-no-products h3 {
    margin: 0 0 10px !important;

    color: #2F3D2C !important;

    font-size: 22px !important;
    font-weight: 700 !important;
}

.kipet-collection-page
.kipet-no-products p {
    margin: 0 0 22px;

    color: #1D1D1C;
}

.kipet-collection-page
.kipet-no-products .button {
    background: #2F3D2C !important;
    color: #FFFFFF !important;

    border-radius: 9px !important;
}


/* ==================================================
   TABLET
   ================================================== */

@media (max-width: 1024px) {

    .kipet-collection-page
    .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

}


/* ==================================================
   MÓVIL
   ================================================== */

@media (max-width: 781px) {

    .kipet-collection-page {
        width: calc(100% - 28px) !important;

        padding: 5px 0 35px;
    }


    /* Título */

    .kipet-collection-page > h3 {
        margin-bottom: 24px !important;

        padding-left: 14px;

        font-size: 26px !important;
    }

    .kipet-collection-page > h3::before {
        width: 4px;
        height: 26px;
    }


    /* Resultados */

    .kipet-collection-page
    .woocommerce-result-count {
        float: none !important;

        margin-bottom: 14px !important;

        font-size: 12px;
    }


    /* Ordenamiento */

    .kipet-collection-page
    .woocommerce-ordering {
        float: none !important;

        width: 100%;

        margin-bottom: 20px !important;
    }

    .kipet-collection-page
    .woocommerce-ordering select {
        width: 100%;
        min-width: 0;
    }


    /* Grid */

    .kipet-collection-page
    .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 12px !important;
    }


    /* Tarjeta */

    .kipet-collection-page
    .woocommerce ul.products li.product {
        padding: 10px;

        border-radius: 13px;
    }


    /* Imagen */

    .kipet-collection-page
    .woocommerce ul.products li.product img {
        margin-bottom: 12px !important;

        border-radius: 10px;
    }


    /* Título producto */

    .kipet-collection-page
    .woocommerce-loop-product__title {
        min-height: 55px;

        font-size: 14px !important;
        line-height: 1.3 !important;
    }


    /* Precio */

    .kipet-collection-page
    .woocommerce ul.products li.product .price {
        font-size: 14px !important;
    }


    /* Botón */

    .kipet-collection-page
    .woocommerce ul.products li.product .button {
        padding: 10px 8px !important;

        font-size: 12px !important;
    }

}

/* ==================================================
   KIPET - FORMULARIO DE VALORACIONES
   ================================================== */

.single-product
#review_form
input[type="text"],

.single-product
#review_form
input[type="email"],

.single-product
#review_form
textarea {
    width: 100%;

    background: #FFFFFF !important;

    border: 1.5px solid rgba(47, 61, 44, .35) !important;
    border-radius: 8px !important;

    color: #1D1D1C !important;

    padding: 12px 14px !important;

    box-sizing: border-box;

    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}


/* Focus */
.single-product
#review_form
input[type="text"]:focus,

.single-product
#review_form
input[type="email"]:focus,

.single-product
#review_form
textarea:focus {
    border-color: #2F3D2C !important;

    outline: none !important;

    box-shadow:
        0 0 0 2px rgba(47, 61, 44, .10) !important;
}


/* Textarea */
.single-product
#review_form
textarea {
    min-height: 180px;
    resize: vertical;
}


/* Botón enviar valoración */
.single-product
#review_form
input[type="submit"] {
    background: #2F3D2C !important;
    color: #FFFFFF !important;

    border: 0 !important;
    border-radius: 8px !important;

    padding: 12px 24px !important;

    font-weight: 700 !important;

    cursor: pointer;
}

.single-product
#review_form
input[type="submit"]:hover {
    background: #AE8E67 !important;
}