
/* =============================================================
   LA ROJA RP — v1.10 FINAL
   Carrito + producto individual + correcciones de portada/tienda
   ============================================================= */

/* FIX: título oscuro de la tienda */
body.laroja-v19-page.woocommerce-shop .lr-shop-head h2,
body.laroja-v19-page .lr19-shop .lr-shop-head h2,
.lr19-shop .lr-shop-head h2{
    color:#fff!important;
    text-shadow:0 1px 0 rgba(0,0,0,.35);
}

/* HOME: exactamente 3 destacados y geometría perfecta en PC */
.lr19-home .lr110-featured-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:stretch!important;
}
.lr19-home .lr110-featured-grid .lr-product-card{
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border-radius:10px!important;
}
.lr19-home .lr110-featured-grid .lr-product-media{
    position:relative!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:16 / 10!important;
    display:block!important;
    flex:0 0 auto!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border-radius:0!important;
    background:#0a0606!important;
}
.lr19-home .lr110-featured-grid .lr-product-media img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center center!important;
    border:0!important;
    border-radius:0!important;
}
.lr19-home .lr110-featured-grid .lr-product-body{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    padding:17px 18px 18px!important;
}
.lr19-home .lr110-featured-grid .lr-product-body h3{
    min-height:38px!important;
}
.lr19-home .lr110-featured-grid .lr-price{
    min-height:28px!important;
}
.lr19-home .lr110-featured-grid .lr-btn-small{
    margin-top:auto!important;
}

/* Shared page heading: cart + product */
.lr110-page-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:25px;
    padding:30px 30px 25px;
    background:
      radial-gradient(circle at 90% 10%,rgba(255,105,20,.11),transparent 25rem),
      linear-gradient(100deg,#120606,#200905);
    border:1px solid rgba(255,139,28,.28);
    border-bottom:0;
}
.lr110-page-heading span{
    color:#ffb330;
    font-size:10px;
    font-weight:950;
    letter-spacing:.16em;
}
.lr110-page-heading h1{
    margin:5px 0 0;
    color:#fff;
    font-size:clamp(31px,4vw,48px);
    font-weight:950;
    letter-spacing:-.045em;
}
.lr110-page-heading p{
    margin:7px 0 0;
    color:#aa958c;
    font-size:12px;
}
.lr110-page-heading>a{
    flex:0 0 auto;
    padding:10px 15px;
    border:1px solid rgba(255,155,35,.36);
    border-radius:7px;
    color:#ffbc37!important;
    background:#0b0606;
    font-size:9px;
    font-weight:950;
}
.lr110-breadcrumb{
    display:flex;
    gap:9px;
    align-items:center;
    padding:12px 18px;
    color:#7f6d66;
    background:#080505;
    border:1px solid rgba(255,139,28,.18);
    font-size:9px;
}
.lr110-breadcrumb a{color:#b8a49a!important}
.lr110-breadcrumb strong{color:#ffb632}

/* =============================================================
   SINGLE PRODUCT — WooCommerce native functionality, La Roja UI
   ============================================================= */
.lr110-product-page{
    max-width:1500px!important;
    min-height:700px;
}
.lr110-product-shell{
    padding:22px;
    border:1px solid rgba(255,139,28,.20);
    border-top:0;
    background:#050303;
}
.lr110-product-shell .woocommerce-notices-wrapper{
    margin-bottom:14px;
}
.lr110-product-shell .woocommerce-message,
.lr110-product-shell .woocommerce-info,
.lr110-product-shell .woocommerce-error{
    color:#fff!important;
    background:#130808!important;
    border:1px solid rgba(255,146,29,.28)!important;
    border-top:0!important;
    border-left:3px solid #ffb331!important;
    border-radius:7px!important;
}
.lr110-product-shell div.product{
    display:grid!important;
    grid-template-columns:minmax(0,1.06fr) minmax(360px,.94fr)!important;
    gap:26px!important;
    align-items:start!important;
}
.lr110-product-shell div.product:before,
.lr110-product-shell div.product:after{display:none!important}
.lr110-product-shell div.product .woocommerce-product-gallery{
    width:100%!important;
    float:none!important;
    margin:0!important;
    padding:16px!important;
    border:1px solid rgba(255,139,28,.24);
    background:
      radial-gradient(circle at 50% 30%,rgba(136,13,13,.10),transparent 24rem),
      #090606;
    border-radius:10px;
    overflow:hidden;
}
.lr110-product-shell .woocommerce-product-gallery__wrapper{
    margin:0!important;
}
.lr110-product-shell .woocommerce-product-gallery__image{
    overflow:hidden!important;
    border-radius:7px!important;
    background:#070505;
}
.lr110-product-shell .woocommerce-product-gallery__image a{
    display:block!important;
}
.lr110-product-shell .woocommerce-product-gallery__image img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:660px!important;
    object-fit:contain!important;
    object-position:center!important;
    margin:auto!important;
    border-radius:7px!important;
}
.lr110-product-shell .flex-control-thumbs{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:8px!important;
    margin:10px 0 0!important;
}
.lr110-product-shell .flex-control-thumbs li{
    width:auto!important;
    float:none!important;
}
.lr110-product-shell .flex-control-thumbs img{
    width:100%!important;
    height:82px!important;
    object-fit:cover!important;
    border:1px solid rgba(255,139,28,.22)!important;
    border-radius:6px!important;
}
.lr110-product-shell div.product .summary{
    width:100%!important;
    float:none!important;
    margin:0!important;
    padding:30px!important;
    border:1px solid rgba(255,139,28,.24);
    border-radius:10px;
    background:
      radial-gradient(circle at 95% 0,rgba(255,101,18,.09),transparent 20rem),
      linear-gradient(160deg,#100707,#080505);
}
.lr110-product-shell .product_title{
    margin:0 0 14px!important;
    color:#fff!important;
    font-size:clamp(31px,4vw,50px)!important;
    line-height:.96!important;
    font-weight:950!important;
    letter-spacing:-.045em!important;
    text-transform:uppercase;
}
.lr110-product-shell .woocommerce-product-rating{
    color:#ffb52f!important;
    margin:0 0 13px!important;
}
.lr110-product-shell .woocommerce-review-link{color:#a99288!important}
.lr110-product-shell .summary .price{
    margin:13px 0 18px!important;
    color:#ffbd36!important;
    font-size:29px!important;
    font-weight:950!important;
}
.lr110-product-shell .summary .price del{
    color:#76645d!important;
    font-size:16px!important;
}
.lr110-product-shell .summary .price ins{
    color:#ffbd36!important;
    text-decoration:none!important;
}
.lr110-product-shell .woocommerce-product-details__short-description{
    color:#c5b0a6!important;
    font-size:13px!important;
    line-height:1.75!important;
}
.lr110-product-shell form.cart{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    align-items:center!important;
    padding-top:18px!important;
    border-top:1px solid rgba(255,255,255,.055)!important;
}
.lr110-product-shell .quantity .qty{
    min-width:78px!important;
    height:48px!important;
    border:1px solid rgba(255,145,31,.28)!important;
    border-radius:7px!important;
    background:#070505!important;
    color:#fff!important;
    padding:0 8px!important;
}
.lr110-product-shell .single_add_to_cart_button{
    min-height:48px!important;
    padding:0 26px!important;
    border:1px solid rgba(255,185,50,.35)!important;
    border-radius:7px!important;
    background:linear-gradient(90deg,#dd171c,#ff6817)!important;
    color:#fff!important;
    font-weight:950!important;
    text-transform:uppercase!important;
}
.lr110-product-shell .single_add_to_cart_button:hover{
    filter:brightness(1.08);
}
.lr110-product-shell table.variations{
    width:100%!important;
    margin:14px 0!important;
}
.lr110-product-shell table.variations th,
.lr110-product-shell table.variations td{
    padding:7px 0!important;
    background:transparent!important;
    color:#fff!important;
}
.lr110-product-shell table.variations select{
    min-height:44px!important;
    width:100%!important;
    padding:0 10px!important;
    border:1px solid rgba(255,145,31,.27)!important;
    border-radius:7px!important;
    background:#070505!important;
    color:#fff!important;
}
.lr110-product-shell .reset_variations{color:#ffb330!important}
.lr110-product-shell .product_meta{
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
    margin-top:20px!important;
    padding-top:17px!important;
    border-top:1px solid rgba(255,255,255,.055)!important;
    color:#816d65!important;
    font-size:10px!important;
}
.lr110-product-shell .product_meta a{color:#ffb331!important}

/* Full-width content after the gallery/summary */
.lr110-product-shell div.product .woocommerce-tabs,
.lr110-product-shell div.product .related,
.lr110-product-shell div.product .upsells{
    grid-column:1 / -1!important;
    width:100%!important;
    float:none!important;
}
.lr110-product-shell .woocommerce-tabs{
    margin-top:8px!important;
    padding:22px!important;
    border:1px solid rgba(255,139,28,.22)!important;
    border-radius:9px!important;
    background:#080505!important;
}
.lr110-product-shell .woocommerce-tabs ul.tabs{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    padding:0!important;
    margin:0 0 20px!important;
    border:0!important;
}
.lr110-product-shell .woocommerce-tabs ul.tabs:before,
.lr110-product-shell .woocommerce-tabs ul.tabs li:before,
.lr110-product-shell .woocommerce-tabs ul.tabs li:after{display:none!important}
.lr110-product-shell .woocommerce-tabs ul.tabs li{
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(255,141,30,.22)!important;
    border-radius:6px!important;
    background:#0c0707!important;
}
.lr110-product-shell .woocommerce-tabs ul.tabs li.active{
    background:linear-gradient(90deg,#7e0b0b,#2f0808)!important;
    border-color:rgba(255,150,31,.43)!important;
}
.lr110-product-shell .woocommerce-tabs ul.tabs li a{
    padding:10px 15px!important;
    color:#cbb6ac!important;
    font-size:10px!important;
    font-weight:900!important;
}
.lr110-product-shell .woocommerce-tabs ul.tabs li.active a{color:#fff!important}
.lr110-product-shell .woocommerce-Tabs-panel{
    color:#c4afa5!important;
    line-height:1.75!important;
}
.lr110-product-shell .woocommerce-Tabs-panel h2,
.lr110-product-shell .related>h2,
.lr110-product-shell .upsells>h2{
    color:#fff!important;
    font-weight:950!important;
    text-transform:uppercase!important;
}
.lr110-product-shell .related,
.lr110-product-shell .upsells{
    margin-top:18px!important;
    padding:22px!important;
    border:1px solid rgba(255,139,28,.20)!important;
    background:#070505!important;
}
.lr110-product-shell .related ul.products,
.lr110-product-shell .upsells ul.products{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
}
.lr110-product-shell .related ul.products:before,
.lr110-product-shell .related ul.products:after,
.lr110-product-shell .upsells ul.products:before,
.lr110-product-shell .upsells ul.products:after{display:none!important}
.lr110-product-shell .related li.product,
.lr110-product-shell .upsells li.product{
    width:auto!important;
    float:none!important;
    margin:0!important;
    overflow:hidden!important;
    padding:0 0 13px!important;
    border:1px solid rgba(255,140,28,.23)!important;
    border-radius:8px!important;
    background:#0a0606!important;
}
.lr110-product-shell .related li.product img,
.lr110-product-shell .upsells li.product img{
    display:block!important;
    width:100%!important;
    height:190px!important;
    margin:0!important;
    object-fit:cover!important;
}
.lr110-product-shell .related .woocommerce-loop-product__title,
.lr110-product-shell .upsells .woocommerce-loop-product__title{
    padding:12px 12px 4px!important;
    color:#fff!important;
    font-size:12px!important;
}
.lr110-product-shell .related .price,
.lr110-product-shell .upsells .price{
    padding:0 12px!important;
    color:#ffbd36!important;
    font-weight:900!important;
}
.lr110-product-shell .related .button,
.lr110-product-shell .upsells .button{
    width:calc(100% - 24px)!important;
    margin:10px 12px 0!important;
    border:1px solid rgba(255,151,33,.34)!important;
    border-radius:7px!important;
    background:#100707!important;
    color:#ffbd38!important;
    text-align:center!important;
}

/* =============================================================
   CART — Classic cart + WooCommerce Cart Block
   ============================================================= */
.lr110-cart-page{max-width:1500px!important;min-height:680px}
.lr110-cart-shell{
    padding:22px;
    border:1px solid rgba(255,139,28,.20);
    border-top:0;
    background:#050303;
}
.lr110-cart-shell .woocommerce-notices-wrapper{margin-bottom:12px}
.lr110-cart-shell .woocommerce-message,
.lr110-cart-shell .woocommerce-info,
.lr110-cart-shell .woocommerce-error{
    color:#fff!important;
    background:#120707!important;
    border:1px solid rgba(255,143,29,.26)!important;
    border-left:3px solid #ffb331!important;
    border-radius:7px!important;
}

/* Classic cart */
.lr110-cart-shell .woocommerce-cart-form{
    width:100%!important;
    margin:0!important;
    padding:0!important;
}
.lr110-cart-shell table.shop_table{
    width:100%!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    overflow:hidden!important;
    border:1px solid rgba(255,139,28,.22)!important;
    border-radius:9px!important;
    background:#080505!important;
}
.lr110-cart-shell table.shop_table th{
    padding:14px!important;
    border-color:rgba(255,255,255,.05)!important;
    background:#130808!important;
    color:#ffbd36!important;
    font-size:10px!important;
    font-weight:950!important;
    text-transform:uppercase!important;
}
.lr110-cart-shell table.shop_table td{
    padding:14px!important;
    border-color:rgba(255,255,255,.05)!important;
    background:#080505!important;
    color:#d6c1b7!important;
    vertical-align:middle!important;
}
.lr110-cart-shell .product-thumbnail img{
    width:92px!important;
    height:72px!important;
    object-fit:cover!important;
    border:1px solid rgba(255,139,28,.20)!important;
    border-radius:6px!important;
}
.lr110-cart-shell .product-name a{
    color:#fff!important;
    font-weight:900!important;
}
.lr110-cart-shell .product-price,
.lr110-cart-shell .product-subtotal{
    color:#ffbd36!important;
    font-weight:900!important;
}
.lr110-cart-shell .product-remove a{
    color:#fff!important;
    background:#5c0b0b!important;
    border:1px solid rgba(255,70,70,.25)!important;
}
.lr110-cart-shell .quantity .qty{
    width:76px!important;
    min-height:42px!important;
    background:#070505!important;
    color:#fff!important;
    border:1px solid rgba(255,141,30,.26)!important;
    border-radius:6px!important;
}
.lr110-cart-shell td.actions{
    background:#0b0606!important;
}
.lr110-cart-shell .coupon{
    display:flex!important;
    gap:8px!important;
}
.lr110-cart-shell .coupon input{
    min-width:220px!important;
    min-height:44px!important;
    padding:0 12px!important;
    background:#060404!important;
    color:#fff!important;
    border:1px solid rgba(255,142,30,.28)!important;
    border-radius:6px!important;
}
.lr110-cart-shell button.button,
.lr110-cart-shell a.button,
.lr110-cart-shell .checkout-button{
    min-height:44px!important;
    border:1px solid rgba(255,166,38,.33)!important;
    border-radius:7px!important;
    background:#100707!important;
    color:#ffbd36!important;
    font-weight:950!important;
    text-transform:uppercase!important;
}
.lr110-cart-shell .checkout-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:linear-gradient(90deg,#dd171c,#ff6817)!important;
    color:#fff!important;
    font-size:13px!important;
}
.lr110-cart-shell .cart-collaterals{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(340px,.55fr)!important;
    gap:18px!important;
    margin-top:18px!important;
}
.lr110-cart-shell .cart_totals{
    width:100%!important;
    float:none!important;
    grid-column:2!important;
    padding:20px!important;
    border:1px solid rgba(255,139,28,.23)!important;
    border-radius:9px!important;
    background:linear-gradient(160deg,#100707,#080505)!important;
}
.lr110-cart-shell .cart_totals h2{
    color:#fff!important;
    font-size:22px!important;
    text-transform:uppercase!important;
}
.lr110-cart-shell .cart_totals table{
    border:0!important;
}
.lr110-cart-shell .cart_totals table th,
.lr110-cart-shell .cart_totals table td{
    background:transparent!important;
}
.lr110-cart-shell .cart_totals .order-total strong{
    color:#ffbd36!important;
    font-size:20px!important;
}
.lr110-cart-shell .cross-sells{
    width:100%!important;
    float:none!important;
    grid-column:1!important;
}
.lr110-cart-shell .cross-sells>h2{color:#fff!important}
.lr110-cart-shell .cross-sells ul.products{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
}

/* Empty cart */
.lr110-cart-shell .cart-empty{
    padding:40px 20px!important;
    margin:0 0 15px!important;
    text-align:center!important;
    color:#c6b1a7!important;
    background:#090606!important;
    border:1px solid rgba(255,139,28,.22)!important;
}
.lr110-cart-shell .return-to-shop{text-align:center!important}

/* Cart BLOCK */
.lr110-cart-shell .wp-block-woocommerce-cart,
.lr110-cart-shell .wc-block-cart{
    color:#fff!important;
}
.lr110-cart-shell .wc-block-cart__main,
.lr110-cart-shell .wc-block-cart__sidebar{
    color:#fff!important;
}
.lr110-cart-shell .wc-block-cart-items{
    border:1px solid rgba(255,139,28,.21)!important;
    border-radius:9px!important;
    overflow:hidden!important;
    background:#080505!important;
}
.lr110-cart-shell .wc-block-cart-items th{
    color:#ffbd36!important;
    background:#130808!important;
    border-color:rgba(255,255,255,.05)!important;
}
.lr110-cart-shell .wc-block-cart-items td{
    color:#d1bbb1!important;
    border-color:rgba(255,255,255,.05)!important;
}
.lr110-cart-shell .wc-block-cart-item__image img{
    width:110px!important;
    height:86px!important;
    object-fit:cover!important;
    border-radius:6px!important;
}
.lr110-cart-shell .wc-block-components-product-name{
    color:#fff!important;
    font-weight:900!important;
}
.lr110-cart-shell .wc-block-components-product-price,
.lr110-cart-shell .wc-block-components-totals-item__value{
    color:#ffbd36!important;
}
.lr110-cart-shell .wc-block-components-sidebar{
    padding:18px!important;
    border:1px solid rgba(255,139,28,.22)!important;
    border-radius:9px!important;
    background:#090606!important;
}
.lr110-cart-shell .wc-block-components-totals-wrapper{
    border-color:rgba(255,255,255,.055)!important;
}
.lr110-cart-shell .wc-block-components-totals-item__label,
.lr110-cart-shell .wc-block-components-title{
    color:#fff!important;
}
.lr110-cart-shell .wc-block-cart__submit-button{
    min-height:50px!important;
    border-radius:7px!important;
    background:linear-gradient(90deg,#dd171c,#ff6817)!important;
    color:#fff!important;
    font-weight:950!important;
    text-transform:uppercase!important;
}
.lr110-cart-shell .wc-block-cart__submit-button span{color:#fff!important}
.lr110-cart-shell .wc-block-components-text-input input,
.lr110-cart-shell .wc-block-components-combobox .wc-block-components-combobox-control input{
    color:#fff!important;
    background:#070505!important;
}
.lr110-cart-shell .wc-block-components-quantity-selector{
    background:#070505!important;
    border-color:rgba(255,141,30,.24)!important;
}
.lr110-cart-shell .wc-block-components-quantity-selector input,
.lr110-cart-shell .wc-block-components-quantity-selector button{
    color:#fff!important;
}

/* Responsive */
@media(max-width:1000px){
    .lr110-product-shell div.product{
        grid-template-columns:1fr!important;
    }
    .lr110-product-shell .related ul.products,
    .lr110-product-shell .upsells ul.products{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
    .lr110-cart-shell .cart-collaterals{
        grid-template-columns:1fr!important;
    }
    .lr110-cart-shell .cart_totals,
    .lr110-cart-shell .cross-sells{
        grid-column:1!important;
    }
}
@media(max-width:720px){
    .lr19-home .lr110-featured-grid{
        grid-template-columns:1fr!important;
    }
    .lr19-home .lr110-featured-grid .lr-product-media{
        aspect-ratio:16 / 10!important;
    }
    .lr110-page-heading{
        align-items:flex-start;
        flex-direction:column;
        padding:22px 18px;
    }
    .lr110-product-shell,
    .lr110-cart-shell{
        padding:10px;
    }
    .lr110-product-shell div.product .summary{
        padding:20px!important;
    }
    .lr110-product-shell .related ul.products,
    .lr110-product-shell .upsells ul.products{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .lr110-cart-shell table.shop_table{
        border-radius:6px!important;
    }
    .lr110-cart-shell .coupon{
        flex-direction:column!important;
    }
    .lr110-cart-shell .coupon input{
        min-width:0!important;
        width:100%!important;
    }
}
@media(max-width:480px){
    .lr110-product-shell .related ul.products,
    .lr110-product-shell .upsells ul.products{
        grid-template-columns:1fr!important;
    }
}
