/*
Theme Name: La Diabla — Astra Child
Template: Astra/astra
Version: 1.0
*/

/* ===== DESIGN SYSTEM — Lujo Oscuro / Sensual ===== */
:root{
  --ld-bg:#0B0608;          /* fondo casi negro carmesí */
  --ld-bg-2:#140a0e;        /* superficies */
  --ld-bg-3:#1d1015;        /* cards */
  --ld-crimson:#9E1B32;     /* carmesí marca */
  --ld-crimson-2:#C8243F;   /* carmesí vivo (hover) */
  --ld-gold:#C9A24B;        /* dorado lujo */
  --ld-gold-2:#E6C878;      /* dorado claro */
  --ld-text:#EDE6E8;        /* texto principal */
  --ld-text-dim:#A99AA0;    /* texto secundario */
  --ld-line:rgba(201,162,75,.22); /* líneas doradas sutiles */
}

/* Tipografía: Cinzel (display) + Montserrat (texto) */
body, p, li, input, select, textarea, .woocommerce-Price-amount, button, .ast-container{
  font-family:'Montserrat',-apple-system,sans-serif !important;
  color:var(--ld-text);
}
h1,h2,h3,h4,.site-title,.widget-title,.woocommerce-loop-product__title,.product_title,
.entry-title,.ast-site-title-wrap{
  font-family:'Cinzel',serif !important;
  color:var(--ld-text);
  letter-spacing:.02em;
}

/* Fondos */
body, .site, #page, .ast-separate-container, .site-content,
.ast-separate-container .ast-article-post, footer.site-footer{
  background-color:var(--ld-bg) !important;
  color:var(--ld-text);
}
.ast-separate-container .ast-article-single,
.ast-separate-container .comments-area .comment-respond,
ul.products li.product, .wc-block-grid__product, .ast-woocommerce-container{
  background-color:transparent !important;
}

/* Header / footer */
.site-header, header.site-header, .ast-primary-header-bar{
  background:linear-gradient(180deg,#0B0608 0%, #160a0f 100%) !important;
  border-bottom:1px solid var(--ld-line);
}
.main-header-menu a, .ast-builder-menu a, .site-header a{ color:var(--ld-text) !important; }
.main-header-menu a:hover, .site-header a:hover{ color:var(--ld-gold) !important; }
footer.site-footer{ border-top:1px solid var(--ld-line); color:var(--ld-text-dim); }

/* Links */
a{ color:var(--ld-gold); }
a:hover{ color:var(--ld-gold-2); }

/* Botones (lujo: borde dorado / fill carmesí) */
.button, button, input[type=submit], .wp-block-button__link,
.woocommerce a.button, .woocommerce button.button, .woocommerce .button{
  background:var(--ld-crimson) !important;
  color:#fff !important;
  border:1px solid var(--ld-gold) !important;
  border-radius:2px !important;
  letter-spacing:.08em; text-transform:uppercase; font-size:.8rem; font-weight:600;
  padding:.7em 1.6em !important; transition:all .25s ease;
}
.button:hover, button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover{
  background:var(--ld-crimson-2) !important; color:var(--ld-gold-2) !important;
  box-shadow:0 0 18px rgba(158,27,50,.45);
}

/* Tarjetas de producto */
ul.products li.product{
  background:var(--ld-bg-2) !important;
  border:1px solid var(--ld-line);
  border-radius:4px; padding:14px !important; transition:transform .25s, box-shadow .25s;
}
ul.products li.product:hover{ transform:translateY(-4px); box-shadow:0 8px 30px rgba(0,0,0,.6); border-color:var(--ld-gold); }
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price, .woocommerce-Price-amount{ color:var(--ld-gold-2) !important; font-weight:600; }
.woocommerce-loop-product__title{ font-size:1rem !important; }

/* Inputs */
input, select, textarea{
  background:var(--ld-bg-3) !important; color:var(--ld-text) !important;
  border:1px solid var(--ld-line) !important; border-radius:2px !important;
}

/* Detalles dorados en títulos de sección */
.widget-title, .entry-title{ border-bottom:1px solid var(--ld-line); padding-bottom:.3em; }

/* Scrollbar */
::-webkit-scrollbar{width:10px} ::-webkit-scrollbar-track{background:var(--ld-bg)}
::-webkit-scrollbar-thumb{background:var(--ld-crimson);border-radius:6px}

/* ===== HOME PREMIUM ===== */
.ld-home{ overflow:hidden; }
.ld-home section{ width:100vw; margin-left:calc(-50vw + 50%); padding:0; }
.ld-hero{
  background:
    radial-gradient(1200px 500px at 50% -10%, rgba(158,27,50,.35), transparent 60%),
    linear-gradient(180deg, #160a0f 0%, #0B0608 100%);
  border-bottom:1px solid var(--ld-line);
  padding:7rem 1.5rem 6rem !important; text-align:center;
}
.ld-hero__inner{ max-width:860px; margin:0 auto; }
.ld-hero__eyebrow{ color:var(--ld-gold); letter-spacing:.45em; font-size:.72rem; margin:0 0 1.2rem; }
.ld-hero__title{ font-size:clamp(2.6rem,7vw,5rem); line-height:1.05; margin:0 0 1.2rem; }
.ld-hero__title em{ color:var(--ld-crimson-2); font-style:italic; }
.ld-hero__sub{ color:var(--ld-text-dim); font-size:1.15rem; max-width:620px; margin:0 auto 2.2rem; }
.ld-hero__cta .button{ font-size:.9rem !important; padding:1em 2.4em !important; }

.ld-trust{
  display:flex; flex-wrap:wrap; justify-content:center; gap:2.5rem;
  background:var(--ld-bg-2); border-bottom:1px solid var(--ld-line);
  padding:1.3rem 1rem !important;
}
.ld-trust__item{ color:var(--ld-text-dim); font-size:.85rem; letter-spacing:.04em; display:flex; align-items:center; gap:.5rem; }
.ld-trust__item span{ color:var(--ld-gold); font-size:1.1rem; }

.ld-section{ padding:4.5rem 1.5rem !important; max-width:1240px; margin:0 auto !important; width:auto !important; }
.ld-section--alt{ background:var(--ld-bg-2); width:100vw !important; margin-left:calc(-50vw + 50%) !important; }
.ld-section--alt > *{ max-width:1240px; margin-left:auto; margin-right:auto; }
.ld-section__title{
  text-align:center; font-size:clamp(1.8rem,4vw,2.6rem); margin:0 0 2.5rem; position:relative;
}
.ld-section__title:after{
  content:""; display:block; width:70px; height:2px; background:var(--ld-gold);
  margin:.8rem auto 0;
}
.ld-cta-final{
  text-align:center; padding:5rem 1.5rem !important;
  background:radial-gradient(800px 300px at 50% 120%, rgba(158,27,50,.3), transparent), var(--ld-bg);
  border-top:1px solid var(--ld-line);
}
.ld-cta-final h2{ font-size:clamp(1.8rem,5vw,3rem); margin:0 0 .6rem; }
.ld-cta-final p{ color:var(--ld-text-dim); margin:0 0 1.8rem; }

/* categorias estilo */
.ld-home .product-category a{ text-align:center; }
.ld-home .product-category img{ border:1px solid var(--ld-line); border-radius:4px; }
.ld-home .woocommerce-loop-category__title{ color:var(--ld-text) !important; font-family:'Cinzel',serif; font-size:1rem; }
@media(max-width:600px){ .ld-trust{ gap:1rem; } .ld-hero{ padding:4.5rem 1rem 3.5rem !important; } }

/* ===== TIENDA (archive) ===== */
.woocommerce-products-header{ text-align:center; padding:3rem 1rem 1rem; }
.woocommerce-products-header__title, .page-title{
  font-family:'Cinzel',serif !important; color:var(--ld-text) !important;
  font-size:clamp(1.8rem,4vw,2.6rem) !important;
}
.term-description, .woocommerce-result-count{ color:var(--ld-text-dim) !important; }
.woocommerce-ordering select{ background:var(--ld-bg-3) !important; color:var(--ld-text) !important; border:1px solid var(--ld-line) !important; }
/* badge oferta */
.woocommerce span.onsale, .woocommerce ul.products li.product .onsale{
  background:var(--ld-gold) !important; color:#1a0d10 !important; font-family:'Montserrat'; font-weight:700;
  border-radius:2px; text-transform:uppercase; letter-spacing:.05em; min-height:auto; line-height:1.6; padding:.2em .6em;
}
.woocommerce ul.products li.product .price del{ color:var(--ld-text-dim) !important; opacity:.6; }
.woocommerce ul.products li.product .price ins{ color:var(--ld-gold-2) !important; text-decoration:none; }
/* paginacion */
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span{
  background:var(--ld-bg-2) !important; color:var(--ld-text) !important; border-color:var(--ld-line) !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current{ background:var(--ld-crimson) !important; color:#fff !important; }

/* ===== FICHA DE PRODUCTO ===== */
.single-product div.product .product_title{ font-size:clamp(1.8rem,4vw,2.6rem) !important; margin-bottom:.5rem; }
.single-product div.product .summary .price,
.single-product div.product .summary .price .woocommerce-Price-amount{ color:var(--ld-gold-2) !important; font-size:1.6rem !important; }
.single-product .woocommerce-product-gallery{ border:1px solid var(--ld-line); border-radius:4px; padding:8px; background:var(--ld-bg-2); }
.single-product .quantity input.qty{ background:var(--ld-bg-3) !important; color:var(--ld-text) !important; border:1px solid var(--ld-line) !important; }
.single-product .single_add_to_cart_button{ font-size:.95rem !important; padding:.9em 2.2em !important; }
.woocommerce-tabs ul.tabs li{ background:var(--ld-bg-2) !important; border-color:var(--ld-line) !important; }
.woocommerce-tabs ul.tabs li.active{ background:var(--ld-bg-3) !important; border-bottom-color:var(--ld-gold) !important; }
.woocommerce-tabs ul.tabs li a{ color:var(--ld-text) !important; }
.woocommerce-tabs ul.tabs:before{ border-bottom-color:var(--ld-line) !important; }
.related.products > h2, .upsells > h2{ font-family:'Cinzel',serif !important; border-bottom:1px solid var(--ld-line); padding-bottom:.4rem; }
/* badges confianza ficha */
.ld-product-trust{ display:flex; flex-wrap:wrap; gap:1.2rem; margin:1.4rem 0; padding-top:1rem; border-top:1px solid var(--ld-line); }
.ld-product-trust span{ color:var(--ld-text-dim); font-size:.82rem; letter-spacing:.03em; }
/* notices woo */
.woocommerce-message, .woocommerce-info{ border-top-color:var(--ld-gold) !important; background:var(--ld-bg-2) !important; color:var(--ld-text) !important; }
.woocommerce-message a, .woocommerce-info a{ color:var(--ld-gold) !important; }
/* breadcrumb */
.woocommerce-breadcrumb{ color:var(--ld-text-dim) !important; font-size:.82rem; }
.woocommerce-breadcrumb a{ color:var(--ld-gold) !important; }

/* ===== CARRITO + CHECKOUT (bloques Woo) ===== */
.wc-block-cart, .wc-block-checkout, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout,
.wc-block-components-product-name, .wc-block-components-product-metadata,
.wc-block-cart-item__total, .wc-block-components-order-summary-item__total{ color:var(--ld-text) !important; }

/* titulos seccion bloques */
.wc-block-components-title, .wc-block-cart__totals-title,
.wc-block-components-checkout-step__title, .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-title{
  font-family:'Cinzel',serif !important; color:var(--ld-text) !important;
}
.wc-block-components-checkout-step__description, .wc-block-components-order-summary__content{ color:var(--ld-text-dim) !important; }

/* inputs / selects bloques */
.wc-block-components-text-input input, .wc-block-components-text-input textarea,
.wc-block-components-select select, .wc-block-components-select .components-form-token-field__input,
.wc-block-components-quantity-selector input, .wc-block-components-address-form input{
  background:var(--ld-bg-3) !important; color:var(--ld-text) !important; border:1px solid var(--ld-line) !important;
}
.wc-block-components-text-input label, .wc-block-components-checkout-step label,
.wc-block-components-totals-item__label{ color:var(--ld-text-dim) !important; }

/* paneles / resumen */
.wc-block-components-sidebar, .wc-block-checkout__sidebar,
.wp-block-woocommerce-checkout-order-summary-block, .wc-block-cart__totals,
.wc-block-components-panel, .wc-block-components-shipping-rates-control{
  background:var(--ld-bg-2) !important; border:1px solid var(--ld-line) !important; border-radius:4px;
}
.wc-block-components-totals-item{ border-color:var(--ld-line) !important; }
.wc-block-components-totals-footer-item, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:var(--ld-gold-2) !important; font-weight:700; border-top:1px solid var(--ld-line) !important;
}
.wc-block-components-product-price, .wc-block-formatted-money-amount, .wc-block-components-order-summary-item__total{ color:var(--ld-gold-2) !important; }

/* botones bloques (CTA) */
.wc-block-components-button.contained, button.wc-block-components-button.contained,
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button{
  background:var(--ld-crimson) !important; color:#fff !important; border:1px solid var(--ld-gold) !important;
  border-radius:2px !important; text-transform:uppercase; letter-spacing:.06em; font-weight:600;
}
.wc-block-components-button.contained:hover, .wc-block-components-checkout-place-order-button:hover{
  background:var(--ld-crimson-2) !important; color:var(--ld-gold-2) !important; box-shadow:0 0 18px rgba(158,27,50,.45);
}
.wc-block-components-button.outlined{ border:1px solid var(--ld-gold) !important; color:var(--ld-gold) !important; background:transparent !important; }

/* metodos de pago / radios */
.wc-block-components-radio-control__option, .wc-block-components-payment-method-label{ color:var(--ld-text) !important; }
.wc-block-components-radio-control-accordion-option{ border-color:var(--ld-line) !important; }

/* tabla carrito */
.wc-block-cart-items, .wc-block-cart-items__row{ border-color:var(--ld-line) !important; }
.wc-block-cart-item__remove-link{ color:var(--ld-text-dim) !important; }
.wc-block-cart-item__remove-link:hover{ color:var(--ld-crimson-2) !important; }

/* ===== MI CUENTA ===== */
.woocommerce-MyAccount-navigation ul{ border:1px solid var(--ld-line); border-radius:4px; overflow:hidden; background:var(--ld-bg-2); }
.woocommerce-MyAccount-navigation ul li{ border-bottom:1px solid var(--ld-line); }
.woocommerce-MyAccount-navigation ul li a{ color:var(--ld-text) !important; display:block; padding:.8em 1.1em; }
.woocommerce-MyAccount-navigation ul li.is-active a, .woocommerce-MyAccount-navigation ul li a:hover{ background:var(--ld-crimson) !important; color:#fff !important; }
.woocommerce-MyAccount-content{ color:var(--ld-text); }
.woocommerce-MyAccount-content a{ color:var(--ld-gold); }

/* formularios login/registro */
.woocommerce form.login, .woocommerce form.register, .woocommerce-form-login, .woocommerce-form-register,
.woocommerce .col-1, .woocommerce .col-2{
  background:var(--ld-bg-2) !important; border:1px solid var(--ld-line) !important; border-radius:4px; padding:1.5rem !important;
}
.woocommerce form .form-row label{ color:var(--ld-text-dim) !important; }

/* tablas (pedidos, direcciones) */
.woocommerce table.shop_table, .woocommerce table.account-orders-table{
  background:var(--ld-bg-2) !important; border:1px solid var(--ld-line) !important; color:var(--ld-text);
}
.woocommerce table.shop_table th, .woocommerce table.shop_table td{ border-color:var(--ld-line) !important; }
.woocommerce table.shop_table thead th{ font-family:'Cinzel',serif; color:var(--ld-gold-2); }
.woocommerce-Address address{ color:var(--ld-text-dim); border:1px solid var(--ld-line); padding:1rem; border-radius:4px; }

/* ===== WISHLIST (ti-woocommerce-wishlist) ===== */
.tinv-wishlist table, .tinv-wishlist .tinvwl-table{ background:var(--ld-bg-2) !important; border:1px solid var(--ld-line) !important; color:var(--ld-text); }
.tinv-wishlist th, .tinv-wishlist td{ border-color:var(--ld-line) !important; color:var(--ld-text); }
.tinvwl_add_to_wishlist_button, .tinv-wishlist .button{ background:var(--ld-crimson) !important; border:1px solid var(--ld-gold) !important; color:#fff !important; }
.tinvwl-icon-heart, .tinv-wishlist a{ color:var(--ld-gold) !important; }

/* ===== PAGINAS (politicas, contenido) ===== */
.entry-content, .ast-article-single, .page-content{ color:var(--ld-text); }
.entry-content h2, .entry-content h3{ font-family:'Cinzel',serif !important; color:var(--ld-text); }
.entry-content a{ color:var(--ld-gold); }
hr{ border-color:var(--ld-line); }
table{ color:var(--ld-text); }

/* ===== FONDO GLOBAL estilo VIP (lujo oscuro) v1.4 ===== */
body{ background-color:var(--ld-bg) !important; }
body::before{
  content:""; position:fixed; inset:0; z-index:-2; pointer-events:none;
  background:
    radial-gradient(ellipse 80% 60% at 50% 8%, rgba(158,27,50,.22) 0%, transparent 65%),
    radial-gradient(ellipse 50% 40% at 50% 0%, rgba(201,162,75,.10) 0%, transparent 60%),
    radial-gradient(ellipse 40% 40% at 18% 82%, rgba(158,27,50,.07) 0%, transparent 60%),
    radial-gradient(ellipse 30% 30% at 82% 60%, rgba(201,162,75,.05) 0%, transparent 60%);
}
body::after{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background-image:
    linear-gradient(rgba(158,27,50,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(158,27,50,.06) 1px, transparent 1px);
  background-size:60px 60px;
  -webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 50%, #000 30%, transparent 100%);
  mask-image:radial-gradient(ellipse 90% 80% at 50% 50%, #000 30%, transparent 100%);
}
/* contenedores transparentes para que el fondo se vea */
.site, #page, .site-content, .ast-separate-container,
.ast-separate-container .ast-article-post, .ast-container,
.ast-separate-container .ast-article-single, footer.site-footer{
  background-color:transparent !important;
}

/* ===== FIX CENTRADO HOME (full-bleed sin scrollbar) ===== */
html, body{ overflow-x:hidden !important; max-width:100%; }
.ld-home section{ margin-right:calc(50% - 50vw); max-width:100vw; }

/* ======================= PREMIUM v2 — elegancia tipo VIP ======================= */
:root{ --ld-grad-title:linear-gradient(160deg,#C8243F 0%, #E6C878 42%, #9E1B32 72%, #E6C878 100%); }
body{ -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
::selection{ background:var(--ld-crimson); color:#fff; }

/* Tipografia display: Cormorant Garamond */
h1,h2,h3,.ld-hero__title,.ld-section__title,.product_title,.entry-title,
.woocommerce-loop-product__title,.woocommerce-products-header__title,.page-title,
.related.products>h2,.cross-sells>h2,.up-sells>h2,.wc-block-components-title,
.cart_totals h2,.cross-sells>h2,.woocommerce-column__title{
  font-family:"Cormorant Garamond",serif !important;
  font-weight:500 !important; letter-spacing:.004em;
}

/* HERO premium */
.ld-hero{ padding:8.5rem 1.5rem 7rem !important; }
.ld-hero__eyebrow{ font-family:"Montserrat",sans-serif; font-size:.7rem; letter-spacing:.5em; }
.ld-hero__title{
  font-family:"Cormorant Garamond",serif !important; font-weight:600 !important;
  font-size:clamp(3rem,8.5vw,6.2rem); line-height:1.02; letter-spacing:.01em; margin-bottom:1.4rem;
  background:var(--ld-grad-title); -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; filter:drop-shadow(0 0 32px rgba(158,27,50,.40));
}
.ld-hero__title em{ -webkit-text-fill-color:#C8243F; color:#C8243F; font-style:italic; }
.ld-hero__sub{ font-size:1.18rem; line-height:1.75; max-width:640px; }
.ld-hero__cta .button{ padding:1.05em 2.9em !important; }

/* Titulos de seccion premium */
.ld-section{ padding:6rem 1.5rem !important; }
.ld-section__title{ font-weight:400 !important; font-size:clamp(2rem,4vw,3.3rem) !important; letter-spacing:-.01em; margin-bottom:3rem !important; }
.ld-section__title:after{ width:64px; height:1px; background:linear-gradient(90deg,transparent,var(--ld-gold),transparent); }

/* Tarjetas de producto premium */
.woocommerce ul.products li.product{
  background:linear-gradient(180deg,rgba(29,16,21,.9),rgba(20,10,14,.9)) !important;
  border:1px solid rgba(201,162,75,.14) !important; border-radius:8px; overflow:hidden;
  padding:0 0 18px !important; display:flex; flex-direction:column;
  transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s, border-color .4s;
}
.woocommerce ul.products li.product:hover{ transform:translateY(-7px); border-color:rgba(201,162,75,.5) !important; box-shadow:0 20px 55px rgba(0,0,0,.6); }
.woocommerce ul.products li.product a img{ border-radius:0 !important; margin:0 0 14px !important; aspect-ratio:1/1; object-fit:cover; width:100%; transition:transform .65s cubic-bezier(.2,.7,.2,1); }
.woocommerce ul.products li.product:hover a img{ transform:scale(1.06); }
.woocommerce ul.products li.product .woocommerce-loop-product__title{ padding:0 16px !important; font-size:1.3rem !important; font-weight:500; line-height:1.22; min-height:2.6em; }
.woocommerce ul.products li.product .price{ padding:0 16px; font-size:1.1rem !important; }
.woocommerce ul.products li.product .button,.woocommerce ul.products li.product .added_to_cart{ margin:12px 16px 0 !important; display:block; text-align:center; }
.woocommerce ul.products li.product .onsale{ top:12px !important; right:12px !important; left:auto !important; }

/* Header premium: blur translucido */
.ast-primary-header-bar,.site-header .ast-primary-header-bar{
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  background:rgba(11,6,8,.70) !important; transition:background .3s ease, box-shadow .3s ease;
}
.ast-header-sticked .ast-primary-header-bar{ background:rgba(11,6,8,.93) !important; box-shadow:0 8px 30px rgba(0,0,0,.5); }
.main-header-menu a,.ast-builder-menu a{ letter-spacing:.13em; text-transform:uppercase; font-size:.78rem; }

/* Botones refinados */
.button,.woocommerce a.button,.woocommerce button.button,.wp-block-button__link{ border-radius:3px !important; }

/* Animaciones reveal (la clase la añade reveal.js, sin JS todo visible) */
.ld-reveal{ opacity:0; transform:translateY(26px); transition:opacity .85s ease, transform .85s cubic-bezier(.2,.7,.2,1); will-change:opacity,transform; }
.ld-reveal.ld-in{ opacity:1; transform:none; }

@media(max-width:782px){
  .ld-hero{ padding:5.5rem 1.2rem 4rem !important; }
  .ld-section{ padding:3.5rem 1.1rem !important; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{ font-size:1.1rem !important; min-height:auto; }
}

/* ===== LOGO ===== */
.site-header .custom-logo-link img, .ast-site-identity .custom-logo, img.custom-logo{
  max-height:74px !important; width:auto !important; height:auto;
  filter:drop-shadow(0 0 14px rgba(201,162,75,.35)); transition:filter .3s ease, transform .3s ease;
}
.site-header .custom-logo-link:hover img{ filter:drop-shadow(0 0 20px rgba(201,162,75,.6)); transform:scale(1.03); }
@media(max-width:782px){ .site-header .custom-logo-link img, img.custom-logo{ max-height:54px !important; } }

/* ===== CENTRADO v3: home full-width, eliminado hack 100vw ===== */
.ld-home{ overflow:visible !important; width:100%; }
.ld-home section{ width:100% !important; max-width:100% !important; margin-left:0 !important; margin-right:0 !important; }
.ld-home .ld-section{ max-width:1240px !important; margin-left:auto !important; margin-right:auto !important; }
.ld-home .ld-section--alt{ width:100% !important; }
.ld-home .ld-section--alt > *{ max-width:1240px; margin-left:auto; margin-right:auto; }
.ld-hero__inner{ margin-left:auto !important; margin-right:auto !important; }
/* contenedor full-width sin padding lateral que descuadre */
.ast-page-builder-template .site-content .ast-container{ max-width:100% !important; padding-left:0 !important; padding-right:0 !important; }

/* ======================= PREMIUM v4 — blindaje centrado + profundizacion ======================= */
/* Blindaje centrado: nada se sale ni se descuadra */
#page,#content,.site-content,.ast-page-builder-template #primary,.ast-page-builder-template .entry-content,.ld-home{
  width:100% !important; max-width:100% !important; margin-left:auto !important; margin-right:auto !important; float:none !important;
}
.ld-section__grid{ width:100%; margin:0 auto; }
img,iframe,video{ max-width:100%; height:auto; }
.ld-home > *{ margin-left:auto; margin-right:auto; }

/* Trust band refinada */
.ld-trust{ gap:0 !important; padding:0 !important; }
.ld-trust__item{ padding:1.4rem 2rem; border-right:1px solid var(--ld-line); font-size:.82rem; }
.ld-trust__item:last-child{ border-right:none; }
@media(max-width:782px){ .ld-trust__item{ border-right:none; border-bottom:1px solid var(--ld-line); width:100%; justify-content:center; } }

/* Categorias premium (overlay dorado) */
.ld-home .product-category{ position:relative; border:1px solid var(--ld-line); border-radius:8px; overflow:hidden; background:var(--ld-bg-2); transition:transform .4s cubic-bezier(.2,.7,.2,1), border-color .4s, box-shadow .4s; }
.ld-home .product-category:hover{ transform:translateY(-5px); border-color:var(--ld-gold); box-shadow:0 16px 40px rgba(0,0,0,.55); }
.ld-home .product-category a{ display:block; }
.ld-home .product-category img{ aspect-ratio:4/3; object-fit:cover; width:100%; margin:0 !important; border-radius:0 !important; transition:transform .6s cubic-bezier(.2,.7,.2,1); filter:brightness(.78); }
.ld-home .product-category:hover img{ transform:scale(1.07); filter:brightness(.9); }
.ld-home .woocommerce-loop-category__title{ position:absolute; left:0; right:0; bottom:0; margin:0 !important; padding:1rem !important; background:linear-gradient(0deg,rgba(11,6,8,.92),transparent); font-family:"Cormorant Garamond",serif !important; font-size:1.45rem !important; color:#fff !important; text-align:center; }
.ld-home .woocommerce-loop-category__title .count{ display:none; }

/* Footer premium */
footer.site-footer, .site-footer{ background:linear-gradient(180deg,transparent,rgba(20,10,14,.6)) !important; border-top:1px solid var(--ld-line); padding-top:2.5rem; }
.site-footer a{ color:var(--ld-text-dim); transition:color .25s; }
.site-footer a:hover{ color:var(--ld-gold); }
.site-footer .widget-title,.site-footer h2,.site-footer h3{ color:var(--ld-gold-2) !important; font-family:"Cormorant Garamond",serif !important; }

/* Ficha de producto premium */
.single-product div.product{ gap:2.5rem; }
.single-product .summary .product_title{ font-size:clamp(1.9rem,3.5vw,2.8rem) !important; line-height:1.1; }
.single-product .summary .price, .single-product .summary .price .woocommerce-Price-amount{ font-size:1.8rem !important; }
.single-product .single_add_to_cart_button{ width:100%; padding:1.05em 2em !important; font-size:.9rem !important; }
.single-product .woocommerce-product-gallery{ background:var(--ld-bg-2); border:1px solid var(--ld-line); border-radius:8px; padding:10px; }
.single-product .woocommerce-product-details__short-description{ color:var(--ld-text-dim); line-height:1.7; }
.woocommerce-tabs ul.tabs li a{ font-family:"Cormorant Garamond",serif !important; font-size:1.15rem; }

/* Breadcrumb + result count + ordering refinados */
.woocommerce-breadcrumb,.woocommerce-result-count{ font-size:.8rem; letter-spacing:.02em; }
.woocommerce .woocommerce-ordering select{ padding:.5em 2em .5em .8em; }

/* Cantidad input */
.quantity input.qty{ border-radius:3px !important; }

/* ===== v5 FIX: boton bolsa sobre miniatura + submenu dropdown ===== */
/* Ancla el boton bolsa/opciones y el badge a la MINIATURA, no al titulo */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap{ position:relative !important; overflow:hidden; border-radius:8px 8px 0 0; }
.woocommerce ul.products li.product .astra-shop-summary-wrap{ position:relative; z-index:2; padding-top:14px; }
.woocommerce ul.products li.product .ast-on-card-button{ z-index:3; }

/* Submenu (dropdown) de la nav: fondo oscuro marca + texto legible */
.main-header-menu .sub-menu, .ast-builder-menu .sub-menu, .main-header-menu ul.sub-menu,
.ast-desktop .main-header-menu .sub-menu, .ast-hfb-header .sub-menu, .submenu-with-border .sub-menu{
  background:#140a0e !important;
  border:1px solid rgba(201,162,75,.22) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.55) !important;
}
.main-header-menu .sub-menu a, .ast-builder-menu .sub-menu a, .main-header-menu .sub-menu .menu-link{ color:#EDE6E8 !important; }
.main-header-menu .sub-menu .menu-item:hover > a, .ast-builder-menu .sub-menu .menu-item:hover > a,
.main-header-menu .sub-menu a:hover{ color:#E6C878 !important; background:rgba(158,27,50,.28) !important; }
.main-header-menu .sub-menu .menu-item{ border-bottom:1px solid rgba(201,162,75,.10); }
