/* =====================================================================
   Biévres Baires · Temporada Riviera
   Capa de marca sobre Woodmart. Fuente de verdad: manualmarcariviera.pdf
   Azul marino da la estructura, limón es un acento puntual, crema de fondo.
   ===================================================================== */

:root {
  /* Paleta del manual */
  --bv-azul: #16324F;
  --bv-azul-oscuro: #0C1F33;
  --bv-limon: #E8B923;
  --bv-crema: #FBF9F6;
  --bv-marfil: #F4EFE9;
  --bv-arena: #EDE7DC;
  --bv-linea: #D9D2C5;
  --bv-texto: #1A1613;
  --bv-texto-2: #3E5068;
  --bv-dorado: #B8901A;   /* etiquetas chicas sobre fondo claro: se lee mejor que el limón */
  --bv-bordo: #7A1F2B;    /* solo SALE */
  --bv-precio: #8C6D12;   /* precios: dorado profundo, 4,9:1 sobre blanco (AA) */
  --bv-blanco: #FFFFFF;

  --bv-serif: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --bv-sans: 'Jost', 'Helvetica Neue', Arial, sans-serif;
  --bv-track: 0.24em;     /* etiquetas en mayúscula */
  --bv-rayas: repeating-linear-gradient(90deg, var(--bv-azul) 0 14px, var(--bv-crema) 14px 28px);

  /* Woodmart: variables globales del tema */
  --wd-primary-color: var(--bv-azul);
  --wd-alternative-color: var(--bv-dorado);
  --wd-link-color: var(--bv-azul);
  --wd-link-color-hover: var(--bv-dorado);
  --wd-main-bgcolor: var(--bv-crema);
  --wd-text-color: var(--bv-texto);
  --wd-text-font: var(--bv-sans);
  --wd-text-font-weight: 400;
  --wd-text-font-size: 15px;
  --wd-text-line-height: 1.6;
  --wd-title-color: var(--bv-azul);
  --wd-title-font: var(--bv-serif);
  --wd-title-font-weight: 500;
  --wd-title-transform: none;
  --wd-entities-title-color: var(--bv-azul);
  --wd-entities-title-color-hover: var(--bv-dorado);
  --wd-entities-title-font: var(--bv-serif);
  --wd-entities-title-font-weight: 500;
  --wd-entities-title-transform: none;
  --wd-widget-title-color: var(--bv-azul);
  --wd-widget-title-font: var(--bv-sans);
  --wd-widget-title-font-weight: 500;
  --wd-widget-title-transform: uppercase;
  --wd-widget-title-font-size: 12px;
  --wd-alternative-font: var(--bv-serif);
  --wd-header-el-font: var(--bv-sans);
  --wd-header-el-font-weight: 500;
  --wd-header-el-transform: uppercase;
  --wd-header-el-font-size: 12px;
  --wd-header-el-color: var(--bv-azul);
  --wd-header-el-color-hover: var(--bv-dorado);
  --wd-brd-radius: 0;
  --wd-form-brd-radius: 0;
  --wd-form-brd-width: 1px;
  --wd-form-brd-color: var(--bv-linea);
  --wd-form-brd-color-focus: var(--bv-azul);
  --wd-form-bg: var(--bv-blanco);
  --wd-form-color: var(--bv-texto);
  --wd-form-placeholder-color: #8a8378;
  --wd-form-height: 46px;
  --wd-bcrumb-color-active: var(--bv-azul);
  --wd-bcrumb-delim-color: var(--bv-linea);

  /* Botones de Woodmart: "accented" = tienda (comprar), "default" = el resto */
  --btn-accented-bgcolor: var(--bv-azul);
  --btn-accented-bgcolor-hover: var(--bv-azul-oscuro);
  --btn-accented-color: var(--bv-crema);
  --btn-accented-color-hover: var(--bv-crema);
  --btn-accented-brd-radius: 0;
  --btn-accented-font-family: var(--bv-sans);
  --btn-accented-font-weight: 500;
  --btn-accented-font-size: 12px;
  --btn-accented-transform: uppercase;
  --btn-accented-box-shadow: none;
  --btn-accented-box-shadow-hover: none;
  --btn-accented-height: 48px;
  --btn-default-bgcolor: var(--bv-azul);
  --btn-default-bgcolor-hover: var(--bv-azul-oscuro);
  --btn-default-color: var(--bv-crema);
  --btn-default-color-hover: var(--bv-crema);
  --btn-default-brd-radius: 0;
  --btn-default-font-family: var(--bv-sans);
  --btn-default-font-weight: 500;
  --btn-default-font-size: 12px;
  --btn-default-transform: uppercase;
  --btn-default-box-shadow: none;
  --btn-default-box-shadow-hover: none;
  --btn-default-height: 46px;
}

/* Elementor (páginas armadas por Caro): sus tipografías globales pasan a las de marca */
body {
  --e-global-typography-primary-font-family: var(--bv-serif);
  --e-global-typography-secondary-font-family: var(--bv-sans);
  --e-global-typography-text-font-family: var(--bv-sans);
  --e-global-typography-accent-font-family: var(--bv-sans);
  --e-global-color-primary: var(--bv-azul);
  --e-global-color-secondary: var(--bv-dorado);
  --e-global-color-text: var(--bv-texto);
  --e-global-color-accent: var(--bv-limon);
}
.elementor-widget-heading .elementor-heading-title { font-family: var(--bv-serif); color: var(--bv-azul); }
.elementor-button { font-family: var(--bv-sans); letter-spacing: 0.2em; text-transform: uppercase; border-radius: 0; background-color: var(--bv-azul); }

/* ---------- Base ---------- */
body {
  background: var(--bv-crema);
  color: var(--bv-texto);
  font-family: var(--bv-sans);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, .title, .wd-entities-title, .woocommerce-loop-product__title {
  font-family: var(--bv-serif);
  color: var(--bv-azul);
  font-weight: 500;
  letter-spacing: 0;
}
h1 { font-size: clamp(34px, 4.6vw, 56px); line-height: 1.05; }
h2 { font-size: clamp(28px, 3.4vw, 42px); line-height: 1.1; }
h3 { font-size: clamp(22px, 2.4vw, 28px); line-height: 1.15; }
em, .bv-cursiva { font-family: var(--bv-serif); font-style: italic; }
a { color: var(--bv-azul); }
a:hover { color: var(--bv-dorado); }
.btn, button, input[type=submit], .button, a.button, .wd-btn { letter-spacing: 0.2em; }
.btn.btn-style-bordered, .bv-btn-borde {
  background: transparent; color: var(--bv-azul); border: 1px solid var(--bv-azul);
}
.btn.btn-style-bordered:hover, .bv-btn-borde:hover { background: var(--bv-azul); color: var(--bv-crema); }

/* Etiquetas en mayúscula con espaciado (manual: 0.4em en placas, 0.24em en web) */
.bv-etiqueta, .wd-price-table-title, .widget-title, .widgettitle {
  font-family: var(--bv-sans);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: var(--bv-track);
  text-transform: uppercase;
  color: var(--bv-dorado);
}
.bv-linea { height: 1px; background: var(--bv-limon); width: 64px; }
.bv-rotulo {
  display: inline-block; background: var(--bv-crema); color: var(--bv-azul);
  font-family: var(--bv-serif); font-style: italic; font-size: 20px; padding: 4px 16px;
}

/* Banda de rayas de toldo (manual: banda superior en la web) */
.bv-rayas { height: 10px; background: var(--bv-rayas); }

/* ---------- Header ---------- */
.wd-header-banner, .header-banner {
  background: var(--bv-azul) !important;
  color: var(--bv-crema);
  font-family: var(--bv-sans);
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.wd-header-banner h4, .header-banner h4, .wd-header-banner p, .header-banner p {
  color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12px; font-weight: 400; margin: 0; letter-spacing: 0.14em;
}
.wd-header-banner em, .header-banner em { font-style: normal; color: var(--bv-limon); }
.wd-header-banner .wd-banner-content, .wd-header-banner .container, .header-banner .container { display: flex; align-items: center; justify-content: center; min-height: 34px; }
@media (max-width: 767px) {
  .wd-header-banner, .header-banner { height: auto !important; max-height: none !important; }
  .wd-header-banner p, .header-banner p { font-size: 10.5px; letter-spacing: 0.1em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 9px 12px; }
  .wd-header-banner em, .header-banner em { display: none; }
}
.whb-header, .whb-main-header, .whb-sticked .whb-general-header { background: var(--bv-crema); }
.whb-general-header, .whb-row.whb-general-header { border-bottom: 1px solid var(--bv-linea); }
.whb-header .wd-nav-main > li > a, .whb-header .wd-nav > li > a {
  font-family: var(--bv-sans); font-weight: 500; font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-azul);
}
.whb-header .wd-nav-main > li:hover > a, .whb-header .wd-nav-main > li.current-menu-item > a { color: var(--bv-dorado); }
.whb-header .wd-nav-main > li > a::after { display: none; }
/* Computadoras chicas (1025 a 1279 px): el menú entra en un renglón junto a la lupa y el carrito */
@media (min-width: 1025px) and (max-width: 1279px) {
  .whb-general-header .wd-nav-main { gap: 5px 14px; }
  .whb-general-header .wd-nav-main > li > a { letter-spacing: 0.14em; }
}
.whb-header .wd-dropdown-menu { border-top: 2px solid var(--bv-limon); }
.wd-header-cart .wd-cart-number, .wd-header-wishlist .wd-tools-count { background: var(--bv-azul); color: var(--bv-crema); }
.whb-header .wd-tools-element > a { color: var(--bv-azul); }
.site-logo img, .wd-logo img { max-height: 30px; width: auto; }
@media (max-width: 1024px) { .site-logo img, .wd-logo img { max-height: 24px; } }

/* Barra sticky de abajo en móvil (Woodmart sticky toolbar) */
.wd-toolbar { background: var(--bv-crema); border-top: 1px solid var(--bv-linea); }
.wd-toolbar .wd-toolbar-item, .wd-toolbar .wd-toolbar-label { color: var(--bv-azul); font-family: var(--bv-sans); }

/* ---------- Grilla de productos ---------- */
.product-grid-item .wd-entities-title, .product-grid-item .wd-entities-title a {
  font-family: var(--bv-serif); font-size: 19px; font-weight: 500; line-height: 1.15; text-transform: none; color: var(--bv-azul);
}
.product-grid-item .price, .product-grid-item .price .amount {
  font-family: var(--bv-sans); font-weight: 400; font-size: 15px; color: var(--bv-texto-2); letter-spacing: 0.02em;
}
.product-grid-item .price ins .amount, .product-grid-item .price ins { color: var(--bv-azul); text-decoration: none; font-weight: 500; }
.product-grid-item .price del .amount { color: #9a9385; font-size: 13px; }
.product-grid-item .wd-product-cats a { font-family: var(--bv-sans); font-size: 11px; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); }
.product-grid-item .product-element-top { background: var(--bv-arena); }
.product-grid-item .product-element-top img { aspect-ratio: 3 / 4; object-fit: cover; }
/* Etiquetas: nuevo en limón sobre azul, sale en bordó (único lugar del bordó), stock en gris */
.product-label, .wd-label, .product-labels .product-label { border-radius: 0 !important; font-family: var(--bv-sans); font-size: 10px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; padding: 5px 9px; }
/* SALE (inc/catalogo.php): etiqueta en bordó (el único uso del bordó es SALE) y cuenta regresiva debajo del precio */
.product-labels .product-label.bv-label-sale { background: var(--bv-bordo); color: var(--bv-crema); }
.bv-sale-cuenta { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 2px 6px; margin-top: 6px; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.12em; line-height: 1.45; text-transform: uppercase; color: var(--bv-bordo); }
.bv-sale-cuenta svg { flex: 0 0 auto; }
.bv-sale-cuenta strong { font-weight: 500; letter-spacing: 0.06em; text-transform: none; font-variant-numeric: tabular-nums; white-space: nowrap; }
.product-label.onsale, .wd-label.onsale { background: var(--bv-bordo) !important; color: var(--bv-crema) !important; }
.product-label.new, .wd-label.new { background: var(--bv-azul) !important; color: var(--bv-limon) !important; }
.product-label.out-of-stock, .wd-label.out-of-stock { background: var(--bv-arena) !important; color: var(--bv-texto-2) !important; }
.product-label.hot, .wd-label.hot { background: var(--bv-limon) !important; color: var(--bv-azul) !important; }
/* Botón "añadir al carrito" de la grilla */
.product-grid-item .wd-add-btn a, .product-grid-item .add_to_cart_button, .product-grid-item .wd-bottom-actions .wd-add-btn > a {
  font-family: var(--bv-sans); letter-spacing: 0.18em; text-transform: uppercase; font-size: 11px; color: var(--bv-azul);
}
.wd-hover-base .wd-add-btn > a { border-color: var(--bv-azul); }
/* Swatches de color en la grilla y la ficha: cuadrados finos */
.wd-swatch { border-radius: 0 !important; }
.wd-swatch.wd-active, .wd-swatch:hover { box-shadow: 0 0 0 1px var(--bv-azul) inset, 0 0 0 2px var(--bv-crema) inset !important; }

/* ---------- Tienda / categorías ---------- */
.page-title, .wd-page-title { background: var(--bv-marfil); }
.page-title .entry-title, .wd-page-title .entry-title { font-family: var(--bv-serif); font-style: italic; font-weight: 500; text-transform: none; font-size: clamp(30px, 4vw, 48px); color: var(--bv-azul); }
.wd-breadcrumbs, .yoast-breadcrumb { font-family: var(--bv-sans); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; }
.wd-page-title .wd-cats a, .page-title .wd-cats a { font-family: var(--bv-sans); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; }
.wd-shop-tools, .shop-loop-head { font-family: var(--bv-sans); }
.wd-products-per-page, .woocommerce-ordering, .wd-products-shop-view { font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; }
.wd-filter-button, .wd-show-sidebar-btn { border: 1px solid var(--bv-azul); color: var(--bv-azul); }
.wd-load-more, .wd-products-load-more { border: 1px solid var(--bv-azul); color: var(--bv-azul); font-family: var(--bv-sans); letter-spacing: 0.2em; text-transform: uppercase; font-size: 12px; }
.wd-load-more:hover, .wd-products-load-more:hover { background: var(--bv-azul); color: var(--bv-crema); }

/* ---------- Ficha de producto ---------- */
.single-product .summary-inner .product_title { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(30px, 3.6vw, 44px); line-height: 1.05; color: var(--bv-azul); }
.single-product .summary-inner .price { font-family: var(--bv-sans); font-weight: 400; font-size: 22px; color: var(--bv-azul); }
.single-product .summary-inner .price del { color: #9a9385; font-size: 16px; }
.single-product .summary-inner .price ins { text-decoration: none; }
.single-product .woocommerce-product-details__short-description { font-size: 15px; line-height: 1.7; color: var(--bv-texto-2); max-width: 46ch; }
.single-product table.variations th label, .single-product .wd-swatches-single .label, .single-product .variations .label label {
  font-family: var(--bv-sans); font-size: 11px; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); font-weight: 500;
}
.single-product .single_add_to_cart_button, .single-product button.single_add_to_cart_button {
  background: var(--bv-azul) !important; color: var(--bv-crema) !important; height: 52px; letter-spacing: 0.22em; font-size: 12px; width: 100%; max-width: 420px;
}
.single-product .single_add_to_cart_button:hover { background: var(--bv-azul-oscuro) !important; }
/* Ícono del carrito dentro del botón de compra de la ficha y de la barra fija (el ::after lo usa Woodmart para la ruedita de carga) */
.single-product .summary-inner .single_add_to_cart_button, .single-product .wd-sticky-btn .single_add_to_cart_button, .single-product .wd-sticky-btn .wd-sticky-add-to-cart.bv-listo { display: inline-flex; align-items: center; justify-content: center; gap: 10px; }
.single-product .summary-inner .single_add_to_cart_button::before, .single-product .wd-sticky-btn .single_add_to_cart_button::before, .single-product .wd-sticky-btn .wd-sticky-add-to-cart.bv-listo::before { content: ''; flex: 0 0 18px; width: 18px; height: 18px; background-color: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.4l2.3 11a1.6 1.6 0 0 0 1.6 1.3h8.6a1.6 1.6 0 0 0 1.6-1.2l1.6-7.1H5.9'/%3E%3Ccircle cx='9.6' cy='19.8' r='1.3'/%3E%3Ccircle cx='17.4' cy='19.8' r='1.3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3.5h2.4l2.3 11a1.6 1.6 0 0 0 1.6 1.3h8.6a1.6 1.6 0 0 0 1.6-1.2l1.6-7.1H5.9'/%3E%3Ccircle cx='9.6' cy='19.8' r='1.3'/%3E%3Ccircle cx='17.4' cy='19.8' r='1.3'/%3E%3C/svg%3E") center / contain no-repeat; }
.single-product .summary-inner .single_add_to_cart_button.loading::before, .single-product .wd-sticky-btn .single_add_to_cart_button.loading::before { opacity: 0; }
.single-product .wd-sticky-btn, .wd-sticky-btn-container { background: var(--bv-crema); border-top: 1px solid var(--bv-linea); }
/* Lo que no vende, fuera: compartir, comparar, SKU, categorías en la ficha */
.single-product .wd-social-icons.wd-share, .single-product .product_meta, .single-product .wd-compare-btn, .single-product .wd-action-btn.wd-compare-btn { display: none !important; }
/* Bloque de confianza debajo del botón (lo imprime inc/ficha.php) */
.bv-momentos { margin: 18px 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.bv-momentos span { font-family: var(--bv-sans); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; border: 1px solid var(--bv-linea); padding: 7px 12px; color: var(--bv-texto-2); }
.bv-momentos .bv-etiqueta { border: 0; padding: 7px 0; width: 100%; }
/* Barra de envío gratis */
.wd-free-progress-bar, .wd-shipping-progress-bar { font-family: var(--bv-sans); font-size: 13px; color: var(--bv-texto-2); }
.wd-free-progress-bar .progress-area, .wd-shipping-progress-bar .progress-area { background: var(--bv-arena); }
.wd-free-progress-bar .progress-bar, .wd-shipping-progress-bar .progress-bar { background: var(--bv-limon); }
/* Acordeón / pestañas */
.wd-accordion-title, .wd-tab-wrapper .tabs-title, .woocommerce-tabs .tabs li a { font-family: var(--bv-sans); font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-azul); }
.wd-accordion-item, .wd-accordion { border-color: var(--bv-linea); }
/* Galería */
.woocommerce-product-gallery__image img { background: var(--bv-arena); }
/* Sin flechas sobre la foto grande (Juan, 28/09/2026): se pasa de foto con las flechas de las miniaturas, tocando una miniatura o deslizando */
.single-product .wd-gallery-images .wd-nav-arrows { display: none !important; }
.single-product .related-products .title, .single-product .upsells .title, .wd-fbt .title { font-family: var(--bv-serif); font-style: italic; font-weight: 500; text-transform: none; }

/* ---------- Carrito y checkout ---------- */
.woocommerce-cart .cart-totals-inner, .cart_totals, .woocommerce-checkout-review-order { background: var(--bv-marfil); border: 0; }
.woocommerce-cart .cart_totals h2, .woocommerce-checkout #order_review_heading, .woocommerce-billing-fields > h3, .woocommerce-shipping-fields > h3 {
  font-family: var(--bv-serif); font-style: italic; font-weight: 500; text-transform: none; font-size: 26px; color: var(--bv-azul);
}
.woocommerce-checkout .form-row label { font-family: var(--bv-sans); font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--bv-texto-2); }
.woocommerce-checkout .form-row .required { color: var(--bv-dorado); }
.woocommerce-checkout .wc_payment_methods li { border-bottom: 1px solid var(--bv-linea); }
.woocommerce-checkout #place_order, .woocommerce-cart .checkout-button, .wc-proceed-to-checkout .button {
  background: var(--bv-azul) !important; color: var(--bv-crema) !important; height: 54px; letter-spacing: 0.22em; width: 100%;
}
.woocommerce-checkout #place_order:hover, .wc-proceed-to-checkout .button:hover { background: var(--bv-azul-oscuro) !important; }
.wd-checkout-steps, .wd-checkout-steps li a { font-family: var(--bv-sans); letter-spacing: 0.14em; text-transform: uppercase; font-size: 11px; }
.wd-checkout-steps li.wd-step-active a { color: var(--bv-azul); }
.woocommerce-info, .woocommerce-message, .woocommerce-error { border-color: var(--bv-limon); background: var(--bv-marfil); color: var(--bv-texto); }
.woocommerce-info::before, .woocommerce-message::before { color: var(--bv-dorado); }
.wc-block-components-notice-banner { border-radius: 0; }

/* ---------- Footer: chico, prolijo, tipografía del manual ---------- */
body .wd-footer, body footer.footer-container { background: var(--bv-azul); color: rgba(251, 249, 246, 0.72); border-top: 8px solid transparent; border-image: var(--bv-rayas) 1; }
body .wd-footer .container { padding-top: 44px; padding-bottom: 8px; }
body .wd-footer .wd-widget, body .wd-footer .widget { margin-bottom: 18px; }
body .wd-footer .widget-title, body .wd-footer .widgettitle, body .wd-footer .wd-widget-title { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 20px; letter-spacing: 0; text-transform: none; color: var(--bv-crema); margin: 0 0 12px; padding: 0; }
body .wd-footer .widget-title::after, body .wd-footer .widget-title::before { display: none; }
body .wd-footer .textwidget, body .wd-footer p, body .wd-footer li, body .wd-footer a { font-family: var(--bv-sans); font-weight: 300; font-size: 14px; line-height: 1.85; color: rgba(251, 249, 246, 0.72); }
/* Página en la que se está: Woodmart la pinta de gris oscuro (widget-nav.css, 0,2,3) y sobre el azul no se ve. */
body .wd-footer .widget_nav_menu ul li:is(.current-menu-item, .current_page_item) > a { color: var(--bv-crema); font-weight: 400; }
body .wd-footer p { margin: 0 0 10px; }
body .wd-footer ul.menu, body .wd-footer .menu { list-style: none; margin: 0; padding: 0; }
body .wd-footer ul.menu li, body .wd-footer .menu li { margin: 0; padding: 0; border: 0; }
body .wd-footer a { text-decoration: none; }
body .wd-footer a:hover { color: var(--bv-limon); }
body .wd-footer strong { font-weight: 500; color: var(--bv-crema); }
body .wd-footer .bv-logo-footer { height: 20px; width: auto; display: block; margin: 4px 0 12px; }
body .wd-footer .bv-nota { font-family: var(--bv-serif); font-style: italic; font-size: 17px; color: rgba(251, 249, 246, 0.85); margin: 0 0 12px; }
body .wd-footer .bv-link-canal { font-family: var(--bv-sans); font-weight: 400; font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-limon); border-bottom: 1px solid rgba(232, 185, 35, 0.5); padding-bottom: 2px; }
body .wd-footer .bv-link-canal:hover { border-color: var(--bv-limon); }

/* ---------- Footer "Postal" (inc/pie.php + sidebar-footer.php, opción 3 elegida por Juan el 25/09/2026) ---------- */
/* Tira de fotos con la tarjeta de Instagram: va en el prefooter, arriba de las rayas del footer */
body .wd-prefooter { display: block; margin: 0; padding: 0; border: 0; background: var(--bv-crema); }
body .wd-prefooter > .container { max-width: none; width: 100%; margin: 0; padding: 0; }
.bv-pi { position: relative; }
.bv-pi-fotos { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.bv-pi-foto { display: block; height: clamp(220px, 23vw, 340px); overflow: hidden; background: var(--bv-arena); }
.bv-pi-foto img { width: 100%; height: 100%; object-fit: cover; display: block; margin: 0; }
.wd-prefooter a.bv-pi-tarjeta { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(380px, calc(100% - 40px)); box-sizing: border-box; padding: 24px 30px 22px; background: var(--bv-crema); display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; color: var(--bv-azul); text-decoration: none; box-shadow: 0 18px 40px rgba(12, 31, 51, 0.28); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.wd-prefooter a.bv-pi-tarjeta:hover { color: var(--bv-azul); transform: translate(-50%, calc(-50% - 3px)); box-shadow: 0 22px 46px rgba(12, 31, 51, 0.32); }
.bv-pi-etiqueta { font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; }
.bv-pi-usuario { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 34px; line-height: 1.05; }
.bv-pi-texto { font-family: var(--bv-sans); font-size: 14px; font-weight: 300; color: var(--bv-texto-2); }
/* Bloque centrado, compacto (Juan pidió menos aire en la parte azul del logo) */
body .wd-footer .container.bv-pc { max-width: 1100px; margin-inline: auto; padding: 38px clamp(16px, 4vw, 40px) 32px; display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center; }
body .wd-footer .bv-pc-logo { display: block; line-height: 0; }
body .wd-footer .bv-pc-logo img { width: 200px; height: auto; display: block; }
body .wd-footer p.bv-pc-lema { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 400; font-size: 22px; line-height: 1.2; color: rgba(251, 249, 246, 0.92); }
.bv-pc-hilo { width: 40px; height: 1px; background: var(--bv-limon); }
body .wd-footer .bv-pc-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
body .wd-footer .bv-pc-nav li { margin: 0; padding: 0; border: 0; display: flex; align-items: center; }
body .wd-footer .bv-pc-principal { gap: 4px 22px; }
body .wd-footer .bv-pc-principal li { gap: 22px; }
body .wd-footer .bv-pc-principal li + li::before { content: ''; width: 4px; height: 4px; border-radius: 50%; background: rgba(232, 185, 35, 0.7); }
body .wd-footer .bv-pc-principal a { font-family: var(--bv-sans); font-size: 12.5px; font-weight: 400; letter-spacing: 0.22em; text-transform: uppercase; line-height: 1.6; color: var(--bv-crema); }
body .wd-footer .bv-pc-ayuda { gap: 2px 26px; }
body .wd-footer .bv-pc-ayuda a { font-size: 14px; line-height: 1.6; color: rgba(251, 249, 246, 0.72); }
body .wd-footer .bv-pc-contacto { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 30px; }
body .wd-footer .bv-pc-contacto a { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; line-height: 1.6; color: rgba(251, 249, 246, 0.85); }
.bv-pc-contacto svg { color: var(--bv-limon); flex: 0 0 auto; }
body .wd-footer .bv-pc a:hover, body .wd-footer .bv-pc-nav .current-menu-item > a { color: var(--bv-limon); }
body .wd-footer a.bv-pc-club { margin-top: 2px; min-height: 34px; padding: 0 16px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid rgba(232, 185, 35, 0.7); color: var(--bv-limon); font-size: 10.5px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; line-height: 1.4; transition: background 0.2s, color 0.2s; }
body .wd-footer a.bv-pc-club:hover { background: var(--bv-limon); color: var(--bv-azul); }
.bv-pc-club-corto { display: none; }
body .wd-footer a.bv-pc-club svg { width: 13px; height: 13px; }
/* Pie centrado; en carrito y checkout sigue a dos lados, alineado con su header */
body:not(.bv-easy-checkout) .bv-pie { justify-content: center; gap: 10px 18px; }
@media (max-width: 768px) {
  .bv-pi { padding-bottom: 44px; }
  .bv-pi-fotos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bv-pi-foto { height: 200px; }
  .bv-pi-foto-4, .bv-pi-foto-5 { display: none; }
  .wd-prefooter a.bv-pi-tarjeta { top: auto; bottom: 10px; transform: translateX(-50%); width: calc(100% - 60px); padding: 14px 18px 12px; gap: 3px; }
  .wd-prefooter a.bv-pi-tarjeta:hover { transform: translateX(-50%); }
  .bv-pi-usuario { font-size: 28px; }
  .bv-pi-texto { display: none; }
  body .wd-footer .container.bv-pc { padding: 30px 24px 26px; gap: 12px; }
  body .wd-footer .bv-pc-logo img { width: 178px; }
  body .wd-footer p.bv-pc-lema { font-size: 20px; }
  body .wd-footer .bv-pc-principal { flex-direction: column; gap: 0; }
  body .wd-footer .bv-pc-principal li + li::before { display: none; }
  body .wd-footer .bv-pc-principal a { min-height: 42px; display: inline-flex; align-items: center; }
  body .wd-footer .bv-pc-ayuda { gap: 0 20px; }
  body .wd-footer .bv-pc-ayuda a { min-height: 36px; display: inline-flex; align-items: center; }
  body .wd-footer .bv-pc-contacto { flex-direction: column; align-items: center; gap: 0; }
  body .wd-footer .bv-pc-contacto a { min-height: 36px; }
  body .wd-footer .bv-pc-contacto a.bv-pc-ig { display: none; }
  body .wd-footer a.bv-pc-club { align-self: stretch; min-height: 40px; padding: 6px 14px; font-size: 10.5px; letter-spacing: 0.14em; }
  .bv-pc-club-largo { display: none; }
  .bv-pc-club-corto { display: inline; }
}
/* Copyright: una línea, fina */
body .wd-copyrights, body .copyrights-wrapper { background: var(--bv-azul-oscuro); border-top: 1px solid rgba(251, 249, 246, 0.08); font-family: var(--bv-sans); font-weight: 300; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(251, 249, 246, 0.5); }
body .wd-copyrights .container, body .copyrights-wrapper .container { min-height: 48px; }
body .wd-copyrights a, body .copyrights-wrapper a { color: rgba(251, 249, 246, 0.7); }
body .wd-copyrights a:hover { color: var(--bv-limon); }
/* En celular las columnas se pliegan (Woodmart); títulos igual de discretos */
@media (max-width: 1024px) {
  body .wd-footer .container { padding-top: 32px; }
  body .wd-footer .widget-title { font-size: 19px; margin-bottom: 8px; }
  body .wd-footer .wd-widget.wd-opened .widget-title, body .wd-footer .widget-title.wd-opened { color: var(--bv-limon); }
}

/* ---------- Home Riviera (plantilla template-home.php) ---------- */
.page-template-template-home .wd-content-layout, .page-template-template-home .main-page-wrapper { padding-block: 0 !important; }
.page-template-template-home .bv-full { width: 100%; }
.bv-home { --bv-ancho: 1320px; }
.bv-home section { padding: clamp(44px, 7vw, 96px) 0; }
.bv-home .bv-wrap { max-width: var(--bv-ancho); margin: 0 auto; padding: 0 clamp(16px, 4vw, 40px); }
.bv-home .bv-cabecera { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 12px; margin-bottom: clamp(24px, 4vw, 44px); }
.bv-home .bv-cabecera h2 { font-style: italic; font-weight: 500; margin: 0; }
.bv-home .bv-cabecera p { max-width: 52ch; color: var(--bv-texto-2); margin: 0; font-weight: 300; font-size: 16px; }

/* Hero */
.bv-hero { position: relative; min-height: min(86vh, 820px); display: flex; align-items: flex-end; background: var(--bv-azul); overflow: hidden; padding: 0 !important; }
.bv-hero img.bv-hero-foto, .bv-hero video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.bv-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(12, 24, 38, 0.86) 0%, rgba(12, 24, 38, 0.45) 40%, rgba(12, 24, 38, 0) 75%); }
.bv-hero .bv-hero-texto { position: relative; z-index: 2; width: 100%; max-width: var(--bv-ancho); margin: 0 auto; padding: clamp(28px, 5vw, 64px) clamp(16px, 4vw, 40px); color: var(--bv-crema); display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.bv-hero .bv-etiqueta { color: var(--bv-limon); }
.bv-hero h1 { color: var(--bv-crema); font-style: italic; font-weight: 500; font-size: clamp(38px, 6vw, 76px); line-height: 1; margin: 0; max-width: 12ch; text-wrap: balance; }
.bv-hero p { font-weight: 300; font-size: clamp(15px, 1.4vw, 18px); max-width: 44ch; margin: 0; color: rgba(251, 249, 246, 0.92); }
.bv-hero .bv-acciones { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 8px; }
.bv-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 28px; font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.22em; text-transform: uppercase; text-decoration: none; transition: background 0.2s, color 0.2s; }
.bv-btn-azul { background: var(--bv-azul); color: var(--bv-crema); }
.bv-btn-azul:hover { background: var(--bv-azul-oscuro); color: var(--bv-crema); }
.bv-btn-limon { background: var(--bv-limon); color: var(--bv-azul); }
.bv-btn-limon:hover { background: #d6a91b; color: var(--bv-azul); }
.bv-btn-crema { background: var(--bv-crema); color: var(--bv-azul); }
.bv-btn-crema:hover { background: var(--bv-limon); color: var(--bv-azul); }
.bv-btn-borde-crema { border: 1px solid rgba(251, 249, 246, 0.8); color: var(--bv-crema); }
.bv-btn-borde-crema:hover { background: var(--bv-crema); color: var(--bv-azul); }
.bv-btn-borde { border: 1px solid var(--bv-azul); color: var(--bv-azul); }
.bv-btn-borde:hover { background: var(--bv-azul); color: var(--bv-crema); }
.bv-hero .bv-rotulo { position: absolute; top: 22px; left: 50%; transform: translateX(-50%); z-index: 2; }
@media (max-width: 767px) {
  .bv-hero { min-height: min(72vh, 640px); }
  .bv-hero h1 { font-size: clamp(34px, 11vw, 46px); }
  .bv-hero p { font-size: 14px; }
  .bv-hero .bv-hero-texto { gap: 10px; padding-bottom: 22px; }
  .bv-hero .bv-btn { min-height: 44px; padding: 0 20px; font-size: 11px; }
  .bv-hero .bv-rotulo { top: 14px; font-size: 17px; }
}

/* Beneficios */
.bv-beneficios { padding: 0 !important; background: var(--bv-marfil); border-bottom: 1px solid var(--bv-linea); }
.bv-beneficios ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); }
.bv-beneficios li { padding: 18px 16px; text-align: center; font-family: var(--bv-sans); font-size: 12px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--bv-azul); border-left: 1px solid var(--bv-linea); }
.bv-beneficios li:first-child { border-left: 0; }
.bv-beneficios li strong { display: block; font-family: var(--bv-serif); font-style: italic; font-size: 22px; letter-spacing: 0; text-transform: none; font-weight: 500; margin-bottom: 2px; }
@media (max-width: 767px) { .bv-beneficios ul { grid-template-columns: repeat(2, 1fr); } .bv-beneficios li:nth-child(3) { border-left: 0; } .bv-beneficios li { border-top: 1px solid var(--bv-linea); } .bv-beneficios li:nth-child(-n+2) { border-top: 0; } }

/* Momentos (una prenda, tres momentos) */
.bv-momentos-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.bv-momento { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: var(--bv-arena); display: block; color: var(--bv-crema); }
.bv-momento img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.bv-momento:hover img { transform: scale(1.04); }
.bv-momento::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(12, 24, 38, 0.82), rgba(12, 24, 38, 0) 60%); }
.bv-momento .bv-momento-texto { position: absolute; left: 22px; right: 22px; bottom: 22px; z-index: 2; display: flex; flex-direction: column; gap: 6px; }
.bv-momento .bv-etiqueta { color: var(--bv-limon); }
.bv-momento h3 { color: var(--bv-crema); font-style: italic; font-size: clamp(26px, 2.6vw, 34px); margin: 0; }
.bv-momento span.bv-ver { font-family: var(--bv-sans); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: rgba(251, 249, 246, 0.85); }
@media (max-width: 767px) { .bv-momentos-grid { grid-template-columns: 1fr; gap: 10px; } .bv-momento { aspect-ratio: 16 / 10; } }

/* ---------- Looks (inc/looks.php): home en pestañas y página Looks ---------- */
.bv-look-tabs { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; margin-bottom: clamp(24px, 3vw, 36px); }
.bv-look-tabs button { font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; padding: 12px 22px; border: 1px solid var(--bv-linea); background: transparent; color: var(--bv-azul); cursor: pointer; transition: border-color 0.2s, background 0.2s, color 0.2s; }
.bv-look-tabs button:hover { border-color: var(--bv-azul); }
.bv-look-tabs button.bv-activo { background: var(--bv-azul); border-color: var(--bv-azul); color: var(--bv-crema); }
.bv-look-panel[hidden] { display: none; }
/* Cambio de look en la home: el nuevo entra deslizándose apenas desde el lado hacia el que se avanza (bievres.js). */
.bv-looks { overflow-x: clip; }
.bv-look-panel.bv-entra { animation: bv-look-entra 0.6s cubic-bezier(0.22, 1, 0.36, 1) both; }
.bv-look-panel.bv-entra-atras { animation-name: bv-look-entra-atras; }
@keyframes bv-look-entra { from { opacity: 0; transform: translateX(28px); } to { opacity: 1; transform: none; } }
@keyframes bv-look-entra-atras { from { opacity: 0; transform: translateX(-28px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .bv-look-panel.bv-entra { animation: none; } }
.bv-looks-mas { text-align: center; margin: clamp(26px, 3vw, 40px) 0 0; }
.bv-looks-mas a { font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-azul); padding-bottom: 4px; border-bottom: 1px solid currentColor; text-decoration: none; }
.bv-looks-mas a:hover { color: var(--bv-dorado); }

.bv-lk { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.bv-lk-invertido .bv-lk-foto { order: 2; }
.bv-lk-foto-in { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: var(--bv-arena); }
/* Foto y puntos viajan juntos en un lienzo 4:5: si la foto se estira para acompañar a la columna de prendas, cada punto sigue sobre su prenda. */
.bv-lk-lienzo { position: absolute; inset: 0; }
.bv-lk-lienzo > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bv-lk-foto-in::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 10px; background: var(--bv-rayas); z-index: 2; }
.bv-lk-nombre-look { position: absolute; left: 18px; bottom: 18px; z-index: 2; padding: 7px 14px; background: rgba(251, 249, 246, 0.94); color: var(--bv-azul); font-size: 18px; line-height: 1; }
.bv-lk-nombre-look em { font-family: var(--bv-serif); font-style: italic; font-weight: 500; }
.bv-lk .bv-lk-punto { min-height: 0; text-transform: none; position: absolute; z-index: 3; width: 32px; height: 32px; padding: 0; border: 1.5px solid var(--bv-crema); border-radius: 50%; background: rgba(22, 50, 79, 0.88); color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12.5px; font-weight: 500; line-height: 1; display: flex; align-items: center; justify-content: center; transform: translate(-50%, -50%); cursor: pointer; box-shadow: 0 4px 14px rgba(12, 31, 51, 0.28); transition: background 0.2s, color 0.2s, transform 0.25s; }
.bv-lk .bv-lk-punto::after { content: ''; position: absolute; inset: -1.5px; border-radius: 50%; border: 1px solid rgba(251, 249, 246, 0.9); animation: bv-latido 2.6s ease-out infinite; pointer-events: none; }
.bv-lk .bv-lk-punto:hover, .bv-lk .bv-lk-punto.bv-activo { background: var(--bv-limon); color: var(--bv-azul); transform: translate(-50%, -50%) scale(1.08); }
@keyframes bv-latido { 0% { transform: scale(1); opacity: 0.8; } 70%, 100% { transform: scale(1.9); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .bv-lk-punto::after { animation: none; } }

.bv-lk-datos { padding-top: clamp(0px, 2vw, 24px); container-type: inline-size; }
.bv-lk-titulo { margin: 8px 0 10px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(30px, 3.2vw, 44px); line-height: 1.08; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-lk-texto { margin: 0 0 18px; max-width: 46ch; font-family: var(--bv-sans); font-size: 15px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-lk-items { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--bv-linea); }
.bv-lk-item { display: grid; grid-template-columns: 18px 76px minmax(0, 1fr); gap: 14px 16px; align-items: start; padding: 14px 10px 14px 4px; border-bottom: 1px solid var(--bv-linea); transition: background 0.25s, opacity 0.25s; }
.bv-lk .bv-lk-item { margin: 0; }
.bv-lk-item.bv-activo { background: var(--bv-marfil); }
.bv-lk-item.bv-fuera .bv-lk-mini, .bv-lk-item.bv-fuera .bv-lk-info { opacity: 0.5; }
.bv-lk-check { position: relative; margin: 32px 0 0; cursor: pointer; line-height: 0; }
.bv-lk-check input { position: absolute; opacity: 0; width: 18px; height: 18px; margin: 0; cursor: pointer; }
.bv-lk-caja { display: block; width: 16px; height: 16px; border: 1px solid var(--bv-azul); background: var(--bv-blanco); transition: background 0.2s; }
.bv-lk-check input:checked + .bv-lk-caja { background: var(--bv-azul) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.2l2.6 2.6L12 5.4' fill='none' stroke='%23FBF9F6' stroke-width='1.6'/%3E%3C/svg%3E") center / 14px no-repeat; }
.bv-lk-check input:focus-visible + .bv-lk-caja { outline: 2px solid var(--bv-limon); outline-offset: 2px; }
.bv-lk-check input:disabled + .bv-lk-caja { border-color: var(--bv-linea); background: var(--bv-arena); }
.bv-lk-mini { display: block; aspect-ratio: 3 / 4; overflow: hidden; background: var(--bv-arena); }
.bv-lk-mini img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
.bv-lk-item:hover .bv-lk-mini img { transform: scale(1.05); }
.bv-lk-info { min-width: 0; }
.bv-lk-cabeza { display: flex; align-items: center; gap: 8px; }
.bv-lk-num { width: 20px; height: 20px; border-radius: 50%; background: var(--bv-limon); color: var(--bv-azul); font-family: var(--bv-sans); font-size: 11px; font-weight: 500; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.bv-lk-tipo { font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bv-texto-2); }
.bv-lk-prenda { display: inline-block; margin: 6px 0 2px; font-family: var(--bv-serif); font-size: 21px; font-weight: 500; line-height: 1.15; color: var(--bv-azul); text-decoration: none; }
.bv-lk-prenda:hover { color: var(--bv-dorado); }
.bv-lk-precio .price, .bv-lk-precio { font-family: var(--bv-sans); font-size: 16px; font-weight: 500; color: var(--bv-precio); }
.bv-lk-precio .amount { color: var(--bv-precio); }
/* Precio y cuotas en la misma línea (si no entran, las cuotas bajan solas). */
.bv-lk-precio { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; }
.bv-lk-precio .bv-cuotas { margin-top: 0; font-size: 12.5px; font-weight: 400; }
.bv-lk-precio .bv-cuotas em { font-size: 15.5px; }
.bv-lk-attr { margin-top: 10px; }
.bv-lk-attr-nombre { display: block; margin-bottom: 6px; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-texto-2); }
.bv-lk-attr-nombre em { margin-left: 4px; font-family: var(--bv-serif); font-size: 15px; font-style: italic; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--bv-azul); }
.bv-lk .bv-lk-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.bv-lk .bv-lk-chip { min-height: 0; text-transform: none; box-shadow: none; display: inline-flex; align-items: center; gap: 7px; min-width: 40px; height: 32px; padding: 0 12px; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-blanco); color: var(--bv-azul); font-family: var(--bv-sans); font-size: 12px; font-weight: 400; letter-spacing: 0.04em; line-height: 1; justify-content: center; cursor: pointer; transition: border-color 0.15s, box-shadow 0.15s; }
.bv-lk .bv-lk-attr-talle .bv-lk-chip { text-transform: uppercase; letter-spacing: 0.08em; }
.bv-lk .bv-lk-chip i { width: 12px; height: 12px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(22, 50, 79, 0.18); flex: 0 0 auto; }
.bv-lk .bv-lk-chip:hover:not(:disabled), .bv-lk .bv-lk-chip:focus:not(:disabled) { border-color: var(--bv-azul); background: var(--bv-blanco); color: var(--bv-azul); }
.bv-lk .bv-lk-chip.bv-elegido { border-color: var(--bv-azul); box-shadow: inset 0 0 0 1px var(--bv-azul); font-weight: 500; }
.bv-lk .bv-lk-chip.bv-sin-combo { border-style: dashed; color: var(--bv-texto-2); }
.bv-lk .bv-lk-chip:disabled { cursor: not-allowed; color: #b3ab9d; background: var(--bv-crema) linear-gradient(to top right, transparent calc(50% - 0.5px), var(--bv-linea) 50%, transparent calc(50% + 0.5px)); }
.bv-lk .bv-lk-chip:disabled i { opacity: 0.35; }
.bv-lk-nota { margin: 8px 0 0; min-height: 0; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 400; letter-spacing: 0.04em; color: var(--bv-texto-2); }
.bv-lk-nota:empty { display: none; }
.bv-lk-nota-encargo, .bv-lk-nota-ultima { color: var(--bv-dorado); font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; font-size: 10.5px; }
.bv-lk-nota-falta { color: var(--bv-azul); font-weight: 500; padding-left: 10px; border-left: 2px solid var(--bv-limon); }
.bv-lk-item.bv-falta .bv-lk-chips { outline: 1px dashed var(--bv-dorado); outline-offset: 4px; }
.bv-lk-nota-agotado { color: var(--bv-texto-2); font-style: italic; }
.bv-lk-item.bv-agotado .bv-lk-mini { filter: grayscale(0.6); opacity: 0.6; }

.bv-lk-resumen { margin-top: 18px; padding: 18px 22px; background: var(--bv-marfil); display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px 20px; align-items: center; }
.bv-lk-total { display: flex; flex-direction: column; gap: 3px; }
.bv-lk-total-rotulo { font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bv-dorado); }
.bv-lk-total-precio { font-family: var(--bv-sans); font-size: 26px; font-weight: 500; line-height: 1.15; color: var(--bv-precio); }
.bv-lk-total-precio .amount { color: inherit; }
.bv-lk .bv-lk-boton { gap: 10px; min-height: 52px; height: auto; padding: 0 22px; border: 0; border-radius: 0; cursor: pointer; white-space: nowrap; background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; line-height: 1; box-shadow: none; }
.bv-lk .bv-lk-boton:hover { background: var(--bv-azul-oscuro); color: var(--bv-crema); }
.bv-lk .bv-lk-boton:disabled { opacity: 0.45; cursor: not-allowed; }
.bv-lk .bv-lk-boton.bv-cargando { opacity: 0.75; cursor: progress; }
.bv-lk-mensaje { grid-column: 1 / -1; margin: 0; font-family: var(--bv-sans); font-size: 13px; line-height: 1.45; color: var(--bv-azul); }
.bv-lk-mensaje:empty { display: none; }
.bv-lk-mensaje-ok { padding-left: 12px; border-left: 2px solid var(--bv-limon); }
.bv-lk-mensaje-aviso, .bv-lk-mensaje-error { padding-left: 12px; border-left: 2px solid var(--bv-dorado); }
.bv-lk-mensaje a { margin-left: 6px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; font-size: 11px; color: var(--bv-azul); border-bottom: 1px solid currentColor; text-decoration: none; }
.bv-lk .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
/* Si la columna es angosta, el total arriba y el botón debajo a todo el ancho (si no, las cuotas se parten en tres renglones). */
@container (max-width: 560px) {
  .bv-lk-resumen { grid-template-columns: 1fr; }
  .bv-lk .bv-lk-boton { width: 100%; }
}
/* En escritorio la foto y la columna de prendas quedan parejas arriba y abajo: la foto nunca es más baja que 4:5 y,
   si las prendas ocupan más, se estira (el lienzo recorta a los costados); si ocupan menos, el total baja al pie de la foto. */
@media (min-width: 901px) {
  .bv-lk { align-items: stretch; }
  .bv-lk-foto-in { aspect-ratio: auto; height: 100%; }
  .bv-lk-foto-in::after { content: ''; display: block; padding-top: 125%; }
  .bv-lk-lienzo { inset: 0 auto auto 50%; width: auto; min-width: 100%; height: 100%; aspect-ratio: 4 / 5; transform: translateX(-50%); }
  .bv-lk-datos { padding-top: 0; display: flex; flex-direction: column; }
  .bv-lk-form { flex: 1 1 auto; display: flex; flex-direction: column; }
  .bv-lk-items { margin-bottom: 18px; }
  .bv-lk-resumen { margin-top: auto; }
}
@media (max-width: 900px) {
  .bv-lk { grid-template-columns: 1fr; }
  .bv-lk-invertido .bv-lk-foto { order: 0; }
  .bv-lk-item { grid-template-columns: 18px 64px minmax(0, 1fr); gap: 12px; }
  .bv-lk-check { margin-top: 26px; }
}
@media (max-width: 560px) {
  .bv-lk-resumen { grid-template-columns: 1fr; padding: 18px; }
  .bv-lk-boton { width: 100%; }
}

/* Categorías */
.bv-cats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.bv-cat { position: relative; aspect-ratio: 3 / 4; overflow: hidden; background: var(--bv-arena); display: block; }
.bv-cat img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.bv-cat:hover img { transform: scale(1.04); }
.bv-cat span { position: absolute; left: 14px; bottom: 14px; z-index: 2; background: var(--bv-crema); color: var(--bv-azul); font-family: var(--bv-serif); font-style: italic; font-size: 20px; padding: 4px 14px; }
@media (max-width: 767px) { .bv-cats { grid-template-columns: repeat(2, 1fr); gap: 10px; } }

/* Riviera Club: tarjeta VIP, el código queda oculto (se descubre en el Canal) */
.bv-club { background: var(--bv-azul); color: var(--bv-crema); position: relative; overflow: hidden; }
.bv-club::before, .bv-club::after { content: ''; position: absolute; left: 0; right: 0; height: 10px; background: var(--bv-rayas); }
.bv-club::before { top: 0; }
.bv-club::after { bottom: 0; }
.bv-club .bv-wrap { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); gap: clamp(28px, 6vw, 90px); align-items: center; }
.bv-club .bv-etiqueta { color: var(--bv-limon); }
.bv-club h2 { color: var(--bv-crema); font-style: italic; font-weight: 500; font-size: clamp(30px, 3.4vw, 44px); line-height: 1.06; margin: 10px 0 14px; max-width: 16ch; }
.bv-club p { font-weight: 300; font-size: 15px; line-height: 1.7; color: rgba(251, 249, 246, 0.78); max-width: 44ch; margin: 0; }
.bv-club ul { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 8px; }
.bv-club li { display: flex; gap: 12px; align-items: baseline; font-weight: 300; font-size: 14px; color: rgba(251, 249, 246, 0.85); }
.bv-club li::before { content: ''; flex: 0 0 14px; height: 1px; background: var(--bv-limon); position: relative; top: -4px; }
.bv-vip { position: relative; display: flex; flex-direction: column; gap: 18px; aspect-ratio: 1.586 / 1; padding: 26px 28px 22px 44px; text-decoration: none; color: var(--bv-crema); background: radial-gradient(120% 140% at 100% 0%, rgba(232, 185, 35, 0.16) 0%, rgba(232, 185, 35, 0) 55%), linear-gradient(145deg, #1d3d5f 0%, var(--bv-azul) 45%, var(--bv-azul-oscuro) 100%); border: 1px solid rgba(232, 185, 35, 0.55); box-shadow: 0 30px 60px rgba(0, 0, 0, 0.35), inset 0 0 0 6px rgba(251, 249, 246, 0.03); transform: rotate(-2deg); transition: transform 0.45s ease, box-shadow 0.45s ease; overflow: hidden; }
.bv-vip:hover { transform: rotate(0deg) translateY(-4px); box-shadow: 0 38px 70px rgba(0, 0, 0, 0.4); color: var(--bv-crema); }
.bv-vip::after { content: ''; position: absolute; inset: 0; background: linear-gradient(115deg, rgba(255, 255, 255, 0) 30%, rgba(255, 255, 255, 0.10) 45%, rgba(255, 255, 255, 0) 60%); transform: translateX(-100%); transition: transform 0.9s ease; pointer-events: none; }
.bv-vip:hover::after { transform: translateX(100%); }
.bv-vip-rayas { position: absolute; left: 0; top: 0; bottom: 0; width: 14px; background: repeating-linear-gradient(180deg, var(--bv-crema) 0 14px, var(--bv-azul) 14px 28px); opacity: 0.9; }
.bv-vip-cabeza { display: flex; justify-content: space-between; align-items: baseline; }
.bv-vip-marca { font-family: var(--bv-serif); font-size: 18px; letter-spacing: 0.34em; }
.bv-vip-tipo { font-family: var(--bv-serif); font-style: italic; font-size: 15px; color: var(--bv-limon); }
.bv-vip-club { font-family: var(--bv-serif); font-style: italic; font-size: clamp(28px, 3vw, 38px); line-height: 1; margin-top: auto; }
.bv-vip-codigo { display: flex; align-items: center; gap: 10px; font-family: var(--bv-serif); font-size: 30px; letter-spacing: 0.1em; color: var(--bv-limon); }
.bv-vip-codigo i { width: 22px; height: 30px; border-bottom: 1px solid rgba(232, 185, 35, 0.8); background: linear-gradient(180deg, rgba(251, 249, 246, 0) 40%, rgba(251, 249, 246, 0.08) 100%); }
.bv-vip-pie { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding-top: 12px; border-top: 1px solid rgba(251, 249, 246, 0.14); font-family: var(--bv-sans); font-weight: 300; font-size: 12px; letter-spacing: 0.06em; color: rgba(251, 249, 246, 0.78); }
.bv-vip-cta { flex-shrink: 0; font-weight: 500; font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--bv-azul); background: var(--bv-limon); padding: 9px 14px; }
@media (max-width: 900px) {
  .bv-club .bv-wrap { grid-template-columns: 1fr; }
  .bv-vip { transform: none; max-width: 420px; width: 100%; margin: 6px auto 0; padding: 20px 20px 18px 34px; gap: 12px; }
  .bv-vip-codigo { font-size: 24px; gap: 7px; }
  .bv-vip-codigo i { width: 17px; height: 24px; }
  .bv-vip-pie { font-size: 11px; }
}

/* Preguntas / cómo compramos */
.bv-faq { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
.bv-faq > div { display: flex; flex-direction: column; align-items: flex-start; }
.bv-faq h3 { font-style: italic; font-size: 26px; margin: 16px 0 8px; }
.bv-faq p { color: var(--bv-texto-2); font-weight: 300; margin: 0; font-size: 15px; line-height: 1.65; }
/* Íconos (bv_como_icono): círculo fino con un punto limón; se dibujan al aparecer y se mueven apenas al pasar el mouse */
.bv-como-icono { position: relative; width: 56px; height: 56px; flex: 0 0 56px; box-sizing: border-box; border: 1px solid var(--bv-linea); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: var(--bv-azul); background: var(--bv-crema); transition: background 0.35s ease, border-color 0.35s ease, color 0.35s ease; }
.bv-como-icono::after { content: ''; position: absolute; top: 4px; right: 4px; width: 7px; height: 7px; border-radius: 50%; background: var(--bv-limon); }
.bv-como-icono svg { width: 26px; height: 26px; overflow: visible; display: block; }
.bv-como-icono g { transform-box: fill-box; transform-origin: center; transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1); }
/* Vale para cualquier bloque con data-bv-iconos (home "Sin letra chica" y asesoramiento de la página Looks) */
[data-bv-iconos] > :hover .bv-como-icono { background: var(--bv-azul); border-color: var(--bv-azul); color: var(--bv-crema); }
[data-bv-iconos] > :hover .bv-como-envios .bv-mov-a { transform: translateX(2.5px); }
[data-bv-iconos] > :hover .bv-como-pagos .bv-mov-a { transform: translateY(-1.5px) rotate(-7deg); }
[data-bv-iconos] > :hover .bv-como-cambios .bv-mov-a { transform: translateX(2.5px); }
[data-bv-iconos] > :hover .bv-como-cambios .bv-mov-b { transform: translateX(-2.5px); }
[data-bv-iconos] > :hover .bv-como-chat .bv-mov-a { transform: translateY(-2px); }
[data-bv-iconos] > :hover .bv-como-talle .bv-mov-a { transform: translateX(2px); }
[data-bv-iconos] > :hover .bv-como-percha .bv-mov-a { transform-origin: 50% 0; transform: rotate(-8deg); }
/* Al aparecer en pantalla (bievres.js agrega .bv-anim y después .bv-visto): el círculo aparece y el trazo se dibuja, uno tras otro */
[data-bv-iconos] > :nth-child(2) { --bv-demora: 0.18s; }
[data-bv-iconos] > :nth-child(3) { --bv-demora: 0.36s; }
[data-bv-iconos].bv-anim .bv-como-icono { opacity: 0; }
[data-bv-iconos].bv-anim .bv-como-icono path { stroke-dasharray: 1 2; stroke-dashoffset: 1.02; }
[data-bv-iconos].bv-anim.bv-visto .bv-como-icono { animation: bv-como-aparece 0.6s cubic-bezier(0.22, 1, 0.36, 1) var(--bv-demora, 0s) forwards; }
[data-bv-iconos].bv-anim.bv-visto .bv-como-icono path { animation: bv-como-trazo 1.2s ease calc(var(--bv-demora, 0s) + 0.2s) forwards; }
@keyframes bv-como-aparece { from { opacity: 0; transform: scale(0.85); } to { opacity: 1; transform: none; } }
@keyframes bv-como-trazo { to { stroke-dashoffset: 0; } }
@media (prefers-reduced-motion: reduce) {
  [data-bv-iconos].bv-anim .bv-como-icono, [data-bv-iconos].bv-anim .bv-como-icono path { animation: none !important; opacity: 1; stroke-dashoffset: 0; }
  .bv-como-icono g { transition: none; }
}
@media (max-width: 767px) {
  .bv-faq { grid-template-columns: 1fr; gap: 26px; }
  .bv-faq > div { display: grid; grid-template-columns: 52px minmax(0, 1fr); column-gap: 16px; align-items: start; }
  .bv-como-icono { grid-row: span 2; width: 52px; height: 52px; }
  .bv-faq h3 { margin: 6px 0 4px; font-size: 24px; }
}

/* Sale (único lugar del bordó) */
.bv-sale { padding: 0 !important; }
.bv-sale a { display: flex; align-items: center; justify-content: center; gap: 18px; padding: 18px 16px; background: var(--bv-bordo); color: var(--bv-crema); text-decoration: none; font-family: var(--bv-sans); font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; }
.bv-sale a em { font-family: var(--bv-serif); font-size: 22px; letter-spacing: 0; text-transform: none; }
.bv-sale a:hover { background: #631823; color: var(--bv-crema); }

/* Productos en la home: usa el shortcode [products] con las tarjetas de Woodmart */
.bv-home .products { margin-bottom: 0; }
.bv-home .bv-ver-todo { display: flex; justify-content: center; margin-top: 30px; }

/* ---------- Carrito: ticket de compra ---------- */
.woocommerce-cart .wd-page-title, .woocommerce-checkout .wd-page-title { display: none; }
.woocommerce-cart .shop_table.cart { border: 0; }
.woocommerce-cart .shop_table.cart thead th { font-family: var(--bv-sans); font-size: 11px; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); border-bottom: 1px solid var(--bv-linea); padding-bottom: 12px; }
.woocommerce-cart .shop_table.cart td { border-bottom: 1px solid var(--bv-linea); padding: 18px 8px; vertical-align: middle; }
.woocommerce-cart .shop_table.cart .product-thumbnail img { width: 84px; aspect-ratio: 3 / 4; object-fit: cover; background: var(--bv-arena); }
.woocommerce-cart .shop_table.cart .product-name a { font-family: var(--bv-serif); font-size: 20px; color: var(--bv-azul); text-transform: none; }
.woocommerce-cart .shop_table.cart .variation { font-family: var(--bv-sans); font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bv-texto-2); margin-top: 4px; }
.woocommerce-cart .shop_table.cart .variation dt, .woocommerce-cart .shop_table.cart .variation dd { display: inline; margin: 0; font-weight: 400; }
.woocommerce-cart .shop_table.cart td.product-price, .woocommerce-cart .shop_table.cart td.product-subtotal { font-family: var(--bv-sans); font-size: 15px; color: var(--bv-azul); }
.woocommerce-cart .shop_table.cart td.product-subtotal { font-weight: 500; }
.woocommerce-cart .shop_table.cart thead th { font-size: 11px !important; color: var(--bv-dorado) !important; font-weight: 500; }
.woocommerce-cart .quantity input, .woocommerce-cart .quantity .plus, .woocommerce-cart .quantity .minus { border-color: var(--bv-linea); }
.woocommerce-cart .product-remove a { color: var(--bv-texto-2); }
.bv-ultimas { display: inline-block; margin-left: 8px; font-family: var(--bv-sans); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-bordo); border: 1px solid var(--bv-bordo); padding: 3px 7px; vertical-align: middle; }
.woocommerce-cart .actions .coupon { display: flex; gap: 8px; }
.woocommerce-cart .actions .coupon input { height: 44px; }
.woocommerce-cart .actions .coupon .button { height: 44px; }
.woocommerce-cart .actions > .button, .woocommerce-cart .cart-actions button[name="update_cart"] { display: none !important; }
.woocommerce-cart .cart-totals-inner { border: 0 !important; padding: 0 !important; background: transparent !important; box-shadow: none !important; }
/* Color y talle en una línea aparte, debajo del nombre (inc/carrito.php) */
.woocommerce-cart .shop_table.cart .bv-item-variante { display: block; margin-top: 5px; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 400; letter-spacing: 0.12em; text-transform: uppercase; color: var(--bv-texto-2); }
.woocommerce-cart .shop_table.cart .product-name .bv-ultimas { margin: 8px 0 0; white-space: nowrap; }
/* Celular: cada prenda como una tarjeta, sin la tabla de Woodmart (que apila Precio, Cantidad y Subtotal en filas
   con rayas): foto a la izquierda; nombre, color y talle arriba; cantidad y subtotal abajo, a la altura del pie de la foto. */
@media (max-width: 768px) {
  .woocommerce-cart .shop_table.cart tr.cart_item { display: grid !important; grid-template-columns: 96px minmax(0, 1fr) auto; grid-template-areas: "foto nombre quitar" "foto cantidad subtotal"; column-gap: 14px; row-gap: 12px; align-items: start; position: relative; margin: 0; padding: 20px 0 !important; border-bottom: 1px solid var(--bv-linea); }
  .woocommerce-cart .shop_table.cart tr.cart_item > td { position: static !important; display: block !important; width: auto !important; min-height: 0; margin: 0; padding: 0 !important; border: 0 !important; text-align: left !important; background: none; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td::before { display: none !important; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-thumbnail { grid-area: foto; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-thumbnail a { display: block; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-thumbnail img { display: block; width: 96px; max-width: none; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-name { grid-area: nombre; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-name a { display: block; font-size: 19px; line-height: 1.2; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-remove { grid-area: quitar; justify-self: end; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-remove a { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin: -6px -8px 0 0; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-price { display: none !important; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-quantity { grid-area: cantidad; align-self: end; }
  .woocommerce-cart .shop_table.cart tr.cart_item > td.product-subtotal { grid-area: subtotal; align-self: end; padding-bottom: 8px !important; text-align: right !important; font-size: 16px; white-space: nowrap; }
  .woocommerce-cart .shop_table.cart tr.cart_item .quantity { display: inline-flex; margin: 0; }
  .woocommerce-cart .shop_table.cart tr.cart_item .quantity input.qty { width: 38px; height: 36px; min-height: 36px; padding: 0; font-size: 14px; }
  .woocommerce-cart .shop_table.cart tr.cart_item .quantity .minus, .woocommerce-cart .shop_table.cart tr.cart_item .quantity .plus { width: 32px; min-width: 32px; height: 36px; min-height: 36px; padding: 0; }
  .woocommerce-cart .shop_table.cart .product-name .bv-ultimas { padding: 3px 6px; font-size: 9.5px; letter-spacing: 0.14em; }
  /* Cupón en una línea, en un recuadro más liviano */
  .woocommerce-cart .actions .wd-coupon-form { flex-direction: row; align-items: stretch; gap: 8px; padding: 14px; border-width: 1px; }
  .woocommerce-cart .actions .wd-coupon-form input { flex: 1 1 auto; width: auto; min-width: 0; height: 44px; }
  .woocommerce-cart .actions .wd-coupon-form .button { flex: 0 0 auto; width: auto; height: 44px; min-height: 44px; padding: 0 18px; }
  /* Totales: Woodmart repite el nombre de cada fila (Subtotal, Envío) delante del importe */
  .woocommerce-cart .cart_totals table.shop_table td::before { display: none !important; }
  .woocommerce-cart .cart_totals table.shop_table tr:not(.woocommerce-shipping-totals):not(.shipping) { flex-direction: row !important; }
}
/* Precio por unidad debajo del subtotal cuando lleva 2 o más (inc/carrito.php); en computadora ya está la columna Precio. */
.bv-item-cu { display: none; }
@media (max-width: 768px) {
  .woocommerce-cart .shop_table.cart .bv-item-cu { display: block; margin-top: 2px; font-size: 11.5px; font-weight: 300; color: var(--bv-texto-2); }
  .woocommerce-cart .shop_table.cart .bv-item-cu .amount { font-weight: 300; color: inherit; }
}

/* Ticket */
.woocommerce-cart .cart_totals { background: var(--bv-blanco); border: 1px solid var(--bv-linea); padding: 28px 26px 26px; position: relative; box-shadow: 0 20px 40px rgba(22, 50, 79, 0.06); }
.woocommerce-cart .cart_totals::after { content: ''; position: absolute; left: 0; right: 0; bottom: -10px; height: 10px; background: linear-gradient(135deg, var(--bv-blanco) 50%, transparent 50%) 0 0 / 14px 10px repeat-x, linear-gradient(-135deg, var(--bv-blanco) 50%, transparent 50%) 7px 0 / 14px 10px repeat-x; }
.woocommerce-cart .cart_totals > h2, .woocommerce-cart .cart_totals .cart-totals-inner > h2 { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 28px; text-transform: none; color: var(--bv-azul); margin: 0 0 14px; }
.woocommerce-cart .cart_totals table.shop_table { border: 0; margin: 0; }
.woocommerce-cart .cart_totals table.shop_table th, .woocommerce-cart .cart_totals table.shop_table td { border: 0; border-top: 1px dashed var(--bv-linea); padding: 12px 0; font-family: var(--bv-sans); font-size: 14px; color: var(--bv-texto-2); font-weight: 400; }
.woocommerce-cart .cart_totals table.shop_table tr:first-child th, .woocommerce-cart .cart_totals table.shop_table tr:first-child td { border-top: 0; }
.woocommerce-cart .cart_totals table.shop_table td { text-align: right; color: var(--bv-azul); }
.woocommerce-cart .cart_totals .order-total th, .woocommerce-cart .cart_totals .order-total td { border-top: 1px solid var(--bv-azul); padding-top: 16px; font-size: 15px; color: var(--bv-azul); }
.woocommerce-cart .cart_totals .order-total td .amount { font-family: var(--bv-serif); font-size: 30px; font-weight: 500; }
.woocommerce-cart .cart_totals .bv-transferencia th, .woocommerce-cart .cart_totals .bv-transferencia td { border-top: 0; padding-top: 0; }
.bv-transfer-precio { font-family: var(--bv-serif); font-size: 22px; color: var(--bv-azul); }
.bv-transferencia small { display: block; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--bv-dorado); }
.woocommerce-cart .cart_totals .fee th, .woocommerce-cart .cart_totals .fee td { color: var(--bv-dorado); }
/* ¿A dónde lo enviamos? */
.woocommerce-cart .cart_totals tr.shipping th, .woocommerce-cart .cart_totals tr.shipping td, .woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th, .woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td { display: block !important; width: 100% !important; text-align: left !important; }
.woocommerce-cart .cart_totals tr.shipping th, .woocommerce-cart .cart_totals tr.woocommerce-shipping-totals th { padding-bottom: 4px !important; }
.woocommerce-cart .cart_totals tr.shipping td, .woocommerce-cart .cart_totals tr.woocommerce-shipping-totals td { border-top: 0 !important; padding-top: 0 !important; }
.woocommerce-cart .woocommerce-shipping-calculator, .woocommerce-cart .shipping-calculator-form { text-align: left; }
.woocommerce-cart .shipping-calculator-form { display: grid; grid-template-columns: 1fr 1fr; gap: 0 10px; background: var(--bv-crema); padding: 14px 14px 4px; border: 1px solid var(--bv-linea); }
.woocommerce-cart .shipping-calculator-form > p:last-child, .woocommerce-cart .shipping-calculator-form > button { grid-column: 1 / -1; }
.woocommerce-cart .shipping-calculator-form .form-row label { display: block; text-align: left; margin-bottom: 4px; }
.woocommerce-cart .shipping-calculator-button { font-family: var(--bv-sans); font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-azul); text-decoration: none; border-bottom: 1px solid var(--bv-limon); }
.woocommerce-cart .shipping-calculator-form { margin-top: 12px; }
.woocommerce-cart .shipping-calculator-form .form-row { margin-bottom: 10px; }
.woocommerce-cart .shipping-calculator-form label, .woocommerce-cart .woocommerce-shipping-calculator label { font-family: var(--bv-sans); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bv-texto-2); }
.woocommerce-cart .shipping-calculator-form .button { width: 100%; height: 44px; font-size: 11px; }
.woocommerce-cart .woocommerce-shipping-methods { list-style: none; margin: 8px 0 0; padding: 0; text-align: left; }
.woocommerce-cart .woocommerce-shipping-methods li { padding: 8px 0; border-top: 1px dashed var(--bv-linea); font-size: 13px; color: var(--bv-texto); }
.woocommerce-cart .woocommerce-shipping-methods li:first-child { border-top: 0; }
.woocommerce-cart .woocommerce-shipping-methods label { font-weight: 400; }
.woocommerce-cart .woocommerce-shipping-destination { font-size: 12px; color: var(--bv-texto-2); }
.bv-ticket-confianza { list-style: none; margin: 16px 0 0; padding: 14px 0 0; border-top: 1px dashed var(--bv-linea); display: grid; gap: 7px; }
.bv-ticket-confianza li { font-family: var(--bv-sans); font-size: 12.5px; color: var(--bv-texto-2); display: flex; gap: 10px; align-items: baseline; }
.bv-ticket-confianza li::before { content: ''; flex: 0 0 5px; height: 5px; background: var(--bv-limon); position: relative; top: -2px; }
.woocommerce-cart .cross-sells .title, .woocommerce-cart .cross-sells h2 { font-family: var(--bv-serif); font-style: italic; text-transform: none; font-weight: 500; }
.woocommerce-cart .wd-free-progress-bar, .woocommerce-cart .wd-shipping-progress-bar { margin-bottom: 20px; }

/* ---------- Easy checkout ---------- */
.bv-easy-checkout .header-banner, .bv-easy-checkout .wd-header-banner, .bv-easy-checkout .whb-top-bar, .bv-easy-checkout .whb-header-bottom { display: none !important; }
.bv-easy-checkout .whb-header .wd-header-nav, .bv-easy-checkout .whb-header .wd-tools-element, .bv-easy-checkout .whb-header .wd-header-search, .bv-easy-checkout .whb-header .wd-header-wishlist, .bv-easy-checkout .whb-header .wd-header-my-account, .bv-easy-checkout .whb-header .wd-header-mobile-nav { display: none !important; }
.bv-easy-checkout .whb-header .whb-column { justify-content: center; }
.bv-easy-checkout .whb-general-header .whb-col-left { flex: 1 1 auto !important; max-width: none !important; justify-content: center !important; }
.bv-easy-checkout .whb-general-header .whb-col-center, .bv-easy-checkout .whb-general-header .whb-col-right { display: none !important; }
.bv-easy-checkout .whb-general-header .whb-mobile-center { flex: 1 1 auto !important; justify-content: center !important; }
.bv-easy-checkout .whb-general-header { height: 72px !important; }
.bv-easy-checkout .wd-toolbar, .bv-easy-checkout .joinchat, .bv-easy-checkout .wd-sticky-btn { display: none !important; }
.bv-easy-checkout .wd-footer > .container, .bv-easy-checkout .wd-footer > .main-footer, .bv-easy-checkout .wd-prefooter { display: none !important; }
.bv-easy-checkout .wd-content-layout { padding-block: 24px 60px; }
.bv-pasos { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 12px; }
.bv-pasos > li { list-style: none; margin: 0; padding: 0; }
.bv-pasos > li::before, .bv-pasos > li::after { content: none !important; display: none !important; }
.bv-paso { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; line-height: 1; white-space: nowrap; color: var(--bv-texto-2); }
.bv-paso-num { flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; border: 1px solid var(--bv-linea); background: var(--bv-blanco); display: inline-flex; align-items: center; justify-content: center; font-size: 11px; letter-spacing: 0; color: var(--bv-texto-2); transition: all 0.3s ease; }
.bv-paso.bv-actual, .bv-paso.bv-listo { color: var(--bv-azul); }
.bv-paso.bv-actual .bv-paso-num { background: var(--bv-azul); border-color: var(--bv-azul); color: var(--bv-crema); box-shadow: 0 0 0 4px rgba(22, 50, 79, 0.1); }
.bv-paso.bv-listo .bv-paso-num { background: var(--bv-limon); border-color: var(--bv-limon); color: var(--bv-azul); font-size: 12px; }
.bv-paso a { color: inherit; text-decoration: none; }
.bv-paso-linea { flex: 0 1 56px; min-width: 16px; height: 1px; background: var(--bv-linea); }
.bv-paso-linea.bv-llena { height: 2px; background: linear-gradient(90deg, var(--bv-limon), var(--bv-azul)); }
@media (max-width: 600px) {
  .bv-pasos { gap: 6px; }
  .bv-paso { font-size: 9.5px; letter-spacing: 0.1em; gap: 6px; }
  .bv-paso-num { flex-basis: 22px; width: 22px; height: 22px; font-size: 10px; }
  .bv-paso-linea { min-width: 10px; }
}
/* Formulario */
.bv-easy-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr); gap: clamp(24px, 4vw, 64px); align-items: start; }
.bv-easy-checkout form.checkout > * { width: auto !important; max-width: none !important; flex: none !important; margin: 0 !important; float: none !important; }
.bv-easy-checkout form.checkout > #customer_details, .bv-easy-checkout form.checkout .col2-set { grid-column: 1; }
.bv-easy-checkout form.checkout > .checkout-order-review, .bv-easy-checkout form.checkout #order_review { grid-column: 2; }
.bv-easy-checkout #customer_details .col-1, .bv-easy-checkout #customer_details .col-2 { width: 100% !important; max-width: none !important; float: none !important; padding: 0 !important; }
.bv-easy-checkout form.checkout > .checkout-order-review { position: sticky; top: 24px; }
.bv-easy-checkout form.checkout #order_review_heading { display: none; }
.bv-easy-checkout form.checkout #order_review { position: sticky; top: 90px; }
.bv-easy-checkout .woocommerce-billing-fields > h3, .bv-easy-checkout .woocommerce-shipping-fields > h3, .bv-easy-checkout .woocommerce-additional-fields > h3 { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 28px; text-transform: none; margin: 0 0 14px; }
.bv-easy-checkout .form-row { margin-bottom: 14px; }
.bv-easy-checkout .form-row label { font-family: var(--bv-sans); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--bv-texto-2); margin-bottom: 6px; display: block; }
.bv-easy-checkout .form-row label .optional { text-transform: none; letter-spacing: 0; color: #9a9385; }
.bv-easy-checkout .form-row .required { color: var(--bv-dorado); text-decoration: none; }
.bv-easy-checkout .form-row input.input-text, .bv-easy-checkout .form-row select, .bv-easy-checkout .form-row .select2-container .select2-selection--single { height: 48px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); border-radius: 0; font-family: var(--bv-sans); font-size: 15px; }
.bv-easy-checkout .form-row input.input-text:focus, .bv-easy-checkout .form-row select:focus { border-color: var(--bv-azul); box-shadow: none; }
.bv-easy-checkout #billing_country_field, .bv-easy-checkout #shipping_country_field { display: none !important; }
.bv-easy-checkout .woocommerce-account-fields, .bv-easy-checkout .woocommerce-form-login-toggle, .bv-easy-checkout .woocommerce-form-login { display: none !important; }
.bv-easy-checkout .woocommerce-form-coupon-toggle .woocommerce-info { background: transparent; border: 0; padding: 0 0 14px; font-size: 13px; color: var(--bv-texto-2); }
.bv-easy-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before { display: none; }
.bv-easy-checkout .checkout_coupon.woocommerce-form-coupon { border: 1px dashed var(--bv-linea); padding: 14px; margin-bottom: 20px; }
.bv-easy-checkout .checkout_coupon .form-row { margin: 0; }
/* Ticket del checkout */
.bv-easy-checkout .woocommerce-checkout-review-order { background: var(--bv-blanco); border: 1px solid var(--bv-linea); padding: 26px 24px 24px; box-shadow: 0 20px 40px rgba(22, 50, 79, 0.06); position: relative; }
.bv-easy-checkout .woocommerce-checkout-review-order::before { content: 'Tu compra'; display: block; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 28px; color: var(--bv-azul); margin-bottom: 14px; }
.bv-easy-checkout .woocommerce-checkout-review-order::after { content: ''; position: absolute; left: 0; right: 0; bottom: -10px; height: 10px; background: linear-gradient(135deg, var(--bv-blanco) 50%, transparent 50%) 0 0 / 14px 10px repeat-x, linear-gradient(-135deg, var(--bv-blanco) 50%, transparent 50%) 7px 0 / 14px 10px repeat-x; }
.bv-easy-checkout .woocommerce-checkout-review-order-table { border: 0; margin: 0 0 8px; }
.bv-easy-checkout .woocommerce-checkout-review-order-table thead { display: none; }
.bv-easy-checkout .woocommerce-checkout-review-order-table th, .bv-easy-checkout .woocommerce-checkout-review-order-table td { border: 0; border-top: 1px dashed var(--bv-linea); padding: 12px 0; font-family: var(--bv-sans); font-size: 14px; color: var(--bv-texto-2); font-weight: 400; vertical-align: middle; }
.bv-easy-checkout .woocommerce-checkout-review-order-table tbody tr:first-child td { border-top: 0; }
.bv-easy-checkout .woocommerce-checkout-review-order-table td.product-name { color: var(--bv-azul); display: flex; align-items: center; gap: 12px; }
.bv-easy-checkout .woocommerce-checkout-review-order-table td.product-name img { width: 56px; aspect-ratio: 3 / 4; object-fit: cover; background: var(--bv-arena); flex: 0 0 56px; }
.bv-easy-checkout .woocommerce-checkout-review-order-table .product-quantity { color: var(--bv-texto-2); font-size: 12px; }
.bv-easy-checkout .woocommerce-checkout-review-order-table .variation { font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; margin-top: 3px; }
.bv-easy-checkout .woocommerce-checkout-review-order-table .variation dt, .bv-easy-checkout .woocommerce-checkout-review-order-table .variation dd { display: inline; margin: 0; }
.bv-easy-checkout .woocommerce-checkout-review-order-table td.product-total, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot td { text-align: right; color: var(--bv-azul); }
.bv-easy-checkout .woocommerce-checkout-review-order-table tfoot .order-total th, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot .order-total td { border-top: 1px solid var(--bv-azul); padding-top: 16px; color: var(--bv-azul); font-size: 15px; }
.bv-easy-checkout .woocommerce-checkout-review-order-table tfoot .order-total td .amount { font-family: var(--bv-serif); font-size: 30px; font-weight: 500; }
.bv-easy-checkout .woocommerce-checkout-review-order-table .fee th, .bv-easy-checkout .woocommerce-checkout-review-order-table .fee td { color: var(--bv-dorado); }
.bv-easy-checkout .woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; text-align: left; }
.bv-easy-checkout .woocommerce-shipping-methods li { padding: 6px 0; font-size: 13px; }
.bv-easy-checkout .woocommerce-shipping-methods li label { font-weight: 400; color: var(--bv-texto); }
/* Métodos de pago como tarjetas */
.bv-easy-checkout #payment { background: transparent; border-top: 1px dashed var(--bv-linea); padding-top: 16px; }
.bv-easy-checkout #payment::before { content: 'Cómo pagás'; display: block; font-family: var(--bv-sans); font-size: 11px; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); margin-bottom: 10px; }
.bv-easy-checkout #payment ul.wc_payment_methods { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 8px; }
.bv-easy-checkout #payment ul.wc_payment_methods li.wc_payment_method { border: 1px solid var(--bv-linea); padding: 12px 14px; margin: 0; background: var(--bv-crema); }
.bv-easy-checkout #payment ul.wc_payment_methods li.wc_payment_method:has(input:checked) { border-color: var(--bv-azul); background: var(--bv-blanco); }
.bv-easy-checkout #payment ul.wc_payment_methods li.wc_payment_method > label { font-family: var(--bv-sans); font-size: 14px; font-weight: 500; color: var(--bv-azul); display: flex; align-items: center; gap: 10px; margin: 0; }
.bv-easy-checkout #payment ul.wc_payment_methods li.wc_payment_method > label img { max-height: 22px; margin-left: auto; }
.bv-easy-checkout #payment .payment_box { background: transparent; padding: 8px 0 0; font-size: 13px; color: var(--bv-texto-2); }
.bv-easy-checkout #payment .payment_box::before { display: none; }
.bv-easy-checkout #payment .woocommerce-privacy-policy-text, .bv-easy-checkout #payment .woocommerce-terms-and-conditions-wrapper { font-size: 12px; color: var(--bv-texto-2); }
.bv-easy-checkout #place_order { margin-top: 12px; height: 56px; font-size: 13px; }
.bv-metodo { margin-left: auto; display: inline-flex; flex-direction: column; align-items: flex-end; line-height: 1.2; }
.bv-metodo-precio { font-family: var(--bv-serif); font-size: 20px; font-weight: 500; color: var(--bv-azul); }
.bv-metodo-nota { font-family: var(--bv-sans); font-size: 10px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bv-dorado); }
@media (max-width: 900px) {
  .bv-easy-checkout form.checkout { grid-template-columns: 1fr; }
  .bv-easy-checkout form.checkout .col2-set, .bv-easy-checkout form.checkout #order_review { grid-column: 1; }
  .bv-easy-checkout form.checkout #order_review { position: static; order: 2; }
  .bv-easy-checkout form.checkout .col2-set { order: 1; }
}
/* Gracias por tu compra */
.woocommerce-order-received .woocommerce-thankyou-order-received { font-family: var(--bv-serif); font-style: italic; font-size: 30px; color: var(--bv-azul); }
.woocommerce-order-received .woocommerce-order-overview { border: 1px dashed var(--bv-linea); padding: 16px; }

/* Footer y copyright con el mismo ancho y margen que las secciones de la home */
body .wd-footer .container, body .wd-copyrights .container { max-width: 1320px; margin-inline: auto; padding-inline: clamp(16px, 4vw, 40px); }

/* Checkout: fuera la caja gris de Woodmart alrededor del ticket */
.bv-easy-checkout .checkout-order-review { background: transparent !important; padding: 0 !important; box-shadow: none !important; border: 0 !important; }
.bv-easy-checkout .checkout-order-review::before, .bv-easy-checkout .checkout-order-review::after { display: none !important; }
.bv-easy-checkout .woocommerce-checkout-review-order-table, .bv-easy-checkout .woocommerce-checkout-review-order .wd-table-wrapper, .bv-easy-checkout .woocommerce-checkout-review-order .responsive-table { border: 0 !important; box-shadow: none !important; padding: 0 !important; background: transparent !important; }

/* Banner del header: Woodmart reservaba 71/147 px (alturas viejas cacheadas); el banner nuevo es de una línea */
body .wd-hb-wrapp, body .header-banner.wd-hb { height: 34px !important; min-height: 34px !important; max-height: 34px !important; overflow: hidden; }
body .header-banner.wd-hb .container { height: 34px; display: flex; align-items: center; justify-content: center; }
.bv-easy-checkout .wd-hb-wrapp { display: none !important; }

/* Checkout en celular: una sola columna (formulario y después el ticket) */
@media (max-width: 900px) {
  body.bv-easy-checkout form.checkout { display: flex !important; flex-direction: column; gap: 24px; }
  body.bv-easy-checkout form.checkout > #customer_details, body.bv-easy-checkout form.checkout > .checkout-order-review { width: 100% !important; position: static !important; }
  body.bv-easy-checkout .form-row-first, body.bv-easy-checkout .form-row-last { width: 100% !important; float: none !important; }
}

/* Copyright: franja baja, pegada al texto, con el hilo dorado de separador */
body .wd-copyrights, body .copyrights-wrapper { border-top: 1px solid rgba(232, 185, 35, 0.45) !important; padding: 0 !important; }
body .wd-copyrights .container, body .copyrights-wrapper .container { min-height: 0 !important; padding-top: 11px !important; padding-bottom: 11px !important; }
body .wd-copyrights .wd-col-start, body .wd-copyrights .wd-col-end, body .wd-copyrights p { margin: 0 !important; padding: 0 !important; line-height: 1.6; }
body .wd-footer .container { padding-bottom: 18px; }

/* Pie premium, igual al de la app de gestión: dos lados, minúscula, ENBA en serif, píldora fina */
body .wd-copyrights, body .copyrights-wrapper { text-transform: none !important; letter-spacing: 0 !important; font-size: 13px !important; font-weight: 300 !important; }
body .wd-copyrights .wd-col-start { width: 100%; flex: 1 1 100%; }
.bv-pie { display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 10px; width: 100%; }
.bv-pie-izq, .bv-pie-der { display: flex; align-items: center; gap: 12px; }
@media (min-width: 768px) { .bv-pie { flex-direction: row; } }
.bv-pie-izq > span:first-child { color: rgba(251, 249, 246, 0.72); }
.bv-pie-der > span:first-child { color: rgba(251, 249, 246, 0.5); }
.bv-pildora { font-family: var(--bv-serif); font-style: italic; font-size: 12px; letter-spacing: 0.04em; color: rgba(251, 249, 246, 0.6); border: 1px solid rgba(232, 185, 35, 0.4); border-radius: 999px; padding: 1px 10px; }
.bv-firma { display: inline-flex; align-items: center; gap: 5px; color: rgba(251, 249, 246, 0.5); letter-spacing: 0.02em; }
body .wd-copyrights .bv-firma a { color: rgba(251, 249, 246, 0.85); text-decoration: none; transition: color 0.15s ease; }
.bv-firma strong { font-family: var(--bv-serif); font-weight: 600; letter-spacing: 0.06em; color: inherit; }
body .wd-copyrights .bv-firma a:hover { color: var(--bv-limon); }

/* Carrito y checkout: el pie queda solo con la franja del copyright y el hilo dorado */
body.bv-easy-checkout .wd-footer { border-top: 0 !important; }
body.bv-easy-checkout .wd-footer > .container, body.bv-easy-checkout .wd-footer .main-footer, body.bv-easy-checkout .wd-footer .footer-sidebar { display: none !important; }
body.bv-easy-checkout .wd-footer { margin-top: 40px; }

/* ---------- Encabezado propio de carrito y checkout: logo izquierda, pasos derecha ---------- */
.bv-easy-checkout { --bv-ck-ancho: 1140px; }
.bv-ck-header { background: var(--bv-blanco); border-bottom: 1px solid var(--bv-linea); }
.bv-ck-wrap { max-width: var(--bv-ck-ancho); margin: 0 auto; padding: 0 clamp(16px, 3vw, 32px); min-height: 84px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; box-sizing: border-box; }
.bv-ck-logo { display: flex; align-items: center; line-height: 0; }
.bv-ck-logo img { height: 26px; width: auto; display: block; }
.bv-ck-header .bv-pasos { margin: 0; justify-content: flex-end; }
@media (max-width: 767px) {
  .bv-ck-wrap { flex-direction: column; justify-content: center; gap: 12px; min-height: 0; padding-top: 16px; padding-bottom: 14px; }
  .bv-ck-logo img { height: 22px; }
  .bv-ck-header .bv-pasos { justify-content: center; }
}
/* Contenido compacto y centrado, al mismo ancho que el encabezado */
body.bv-easy-checkout .wd-content-layout, body.bv-easy-checkout .main-page-wrapper > .container { max-width: var(--bv-ck-ancho) !important; margin-inline: auto !important; padding-inline: clamp(16px, 3vw, 32px) !important; box-sizing: border-box; }
body.bv-easy-checkout .wd-content-layout { padding-top: 36px !important; }
body.bv-easy-checkout .wd-copyrights .container { max-width: var(--bv-ck-ancho); }
body.bv-easy-checkout form.checkout { grid-template-columns: minmax(0, 1fr) minmax(320px, 420px); gap: clamp(24px, 4vw, 48px); }
body.woocommerce-cart.bv-easy-checkout .cart-content-wrapper { gap: clamp(24px, 4vw, 48px); }

/* ---------- Filas del ticket (carrito y checkout): una sola línea por fila ----------
   Woodmart arma las filas en flex y cada celda tenía su propia línea: con el total grande quedaban dos rayas a distinta altura. */
.woocommerce-cart .cart_totals table.shop_table, .woocommerce-cart .cart_totals table.shop_table tbody { display: block !important; width: 100% !important; }
.woocommerce-cart .cart_totals table.shop_table tr, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr { display: flex !important; align-items: baseline; justify-content: space-between; gap: 16px; border-top: 1px dashed var(--bv-linea); padding: 12px 0; margin: 0; }
.woocommerce-cart .cart_totals table.shop_table tr:first-child { border-top: 0; }
.woocommerce-cart .cart_totals table.shop_table tr > th, .woocommerce-cart .cart_totals table.shop_table tr > td,
.bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr > th, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr > td { border: 0 !important; padding: 0 !important; display: block !important; width: auto !important; min-width: 0; background: none; }
.woocommerce-cart .cart_totals table.shop_table tr > th, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr > th { flex: 1 1 auto; text-align: left; line-height: 1.35; }
.woocommerce-cart .cart_totals table.shop_table tr > td, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr > td { flex: 0 0 auto; text-align: right; line-height: 1.35; }
.woocommerce-cart .cart_totals table.shop_table tr.order-total, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total { border-top: 1px solid var(--bv-azul); padding-top: 16px; }
.woocommerce-cart .cart_totals table.shop_table tr.order-total td .amount, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr.order-total td .amount { line-height: 1; }
.woocommerce-cart .cart_totals table.shop_table tr.bv-transferencia { border-top: 0; padding-top: 0; }
/* Fila de envío: título arriba y opciones o calculadora debajo, a lo ancho */
.woocommerce-cart .cart_totals table.shop_table tr.shipping, .woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals,
.bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr.shipping, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals { flex-direction: column; align-items: stretch; gap: 8px; }
.woocommerce-cart .cart_totals table.shop_table tr.shipping > td, .woocommerce-cart .cart_totals table.shop_table tr.woocommerce-shipping-totals > td,
.bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr.shipping > td, .bv-easy-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals > td { text-align: left !important; width: 100% !important; }

/* Calculadora de envío: una columna, no ensancha el ticket */
.woocommerce-cart .cart-content-wrapper > *, .woocommerce-cart .cart_totals, .woocommerce-cart .cart-totals-inner { min-width: 0; }
.woocommerce-cart .shipping-calculator-form { display: block !important; padding: 14px 14px 12px; }
.woocommerce-cart .shipping-calculator-form .form-row { width: 100% !important; float: none !important; margin: 0 0 10px !important; padding: 0 !important; }
.woocommerce-cart .shipping-calculator-form select, .woocommerce-cart .shipping-calculator-form input.input-text, .woocommerce-cart .shipping-calculator-form .select2-container { width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box; }
.woocommerce-cart .shipping-calculator-form .button, .woocommerce-cart .shipping-calculator-form button[name="calc_shipping"] { width: 100% !important; margin: 4px 0 0 !important; }

/* ---------- Garantías con íconos (debajo de Finalizar compra y de Confirmar y pagar) ---------- */
.bv-ticket-confianza { display: none !important; }
.bv-garantias { list-style: none; margin: 18px 0 0; padding: 16px 0 0; border-top: 1px dashed var(--bv-linea); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
.bv-garantias li { display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 0; }
.bv-g-icono { flex: 0 0 30px; width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--bv-linea); background: var(--bv-crema); color: var(--bv-azul); display: inline-flex; align-items: center; justify-content: center; }
.bv-g-icono svg { display: block; }
.bv-g-texto { display: flex; flex-direction: column; gap: 2px; min-width: 0; padding-top: 2px; }
.bv-g-texto strong { font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; line-height: 1.2; color: var(--bv-azul); }
.bv-g-texto small { font-family: var(--bv-sans); font-size: 12px; font-weight: 300; line-height: 1.3; color: var(--bv-texto-2); }
.bv-g-texto small a { color: var(--bv-azul); text-decoration: none; border-bottom: 1px solid var(--bv-limon); }
@media (max-width: 380px) { .bv-garantias { grid-template-columns: 1fr; } }

/* Garantías en filas (pie informativo del ticket): ícono chico, título y detalle en un renglón */
.bv-garantias { display: block !important; margin: 18px 0 0; padding: 4px 0 0; border-top: 1px dashed var(--bv-linea); }
.bv-garantias li { display: flex !important; align-items: center; gap: 12px; padding: 9px 0 !important; margin: 0; }
.bv-garantias li + li { border-top: 1px solid rgba(217, 210, 197, 0.55); }
.bv-g-icono { flex: 0 0 18px !important; width: 18px !important; height: 18px !important; border: 0 !important; border-radius: 0 !important; background: none !important; color: var(--bv-dorado) !important; }
.bv-g-icono svg { width: 17px; height: 17px; }
.bv-g-texto { display: block !important; padding: 0 !important; font-family: var(--bv-sans); font-size: 12.5px; line-height: 1.35; color: var(--bv-texto-2); }
.bv-g-texto strong { display: inline; font-size: 12.5px; font-weight: 500; letter-spacing: 0.02em; text-transform: none; color: var(--bv-azul); margin-right: 6px; }
.bv-g-texto small { display: inline; font-size: 12.5px; font-weight: 300; }

/* Calculadora fija: la cabecera es un rótulo, no un botón */
.woocommerce-cart .shipping-calculator-button { pointer-events: none; cursor: default; border-bottom: 0 !important; color: var(--bv-azul) !important; }
.woocommerce-cart .shipping-calculator-button::after { display: none !important; }
.woocommerce-cart .shipping-calculator-form { display: block !important; height: auto !important; overflow: visible !important; }
.woocommerce-cart #calc_shipping_postcode.bv-error { border-color: var(--bv-bordo) !important; }

/* Garantías: filas más juntas */
.bv-garantias { padding-top: 2px !important; }
.bv-garantias li { padding: 5px 0 !important; gap: 10px; }
.bv-g-texto, .bv-g-texto strong, .bv-g-texto small { line-height: 1.3 !important; }

/* El país va en el formulario de la calculadora pero no se muestra (siempre Argentina) */
.woocommerce-cart #calc_shipping_country_field { display: none !important; }

/* Opciones de envío en el ticket: radio a la izquierda, nombre y precio en una fila */
.woocommerce-shipping-methods { list-style: none; margin: 4px 0 0 !important; padding: 0 !important; }
.woocommerce-shipping-methods li { display: flex !important; align-items: flex-start; gap: 10px; padding: 9px 0 !important; margin: 0 !important; border-top: 1px solid rgba(217, 210, 197, 0.55); text-align: left !important; }
.woocommerce-shipping-methods li:first-child { border-top: 0; }
.woocommerce-shipping-methods li input[type="radio"] { order: -1; flex: 0 0 auto; margin: 3px 0 0 !important; accent-color: var(--bv-azul); width: 15px; height: 15px; }
.woocommerce-shipping-methods li label { flex: 1 1 auto; display: flex !important; justify-content: space-between; align-items: flex-start; gap: 14px; margin: 0 !important; font-family: var(--bv-sans); font-size: 12.5px; font-weight: 300; line-height: 1.35; color: var(--bv-texto); cursor: pointer; }
.bv-envio-nombre { flex: 1 1 auto; }
.bv-envio-precio { flex: 0 0 auto; white-space: nowrap; font-weight: 500; color: var(--bv-azul); }
.woocommerce-shipping-methods li input[type="radio"]:checked + label { color: var(--bv-azul); }
.woocommerce-shipping-methods li input[type="radio"]:checked + label .bv-envio-nombre { font-weight: 400; }
.woocommerce-shipping-destination { margin: 6px 0 8px !important; font-size: 12px !important; color: var(--bv-texto-2); }

/* Avisos de WooCommerce en el tono de la marca (nada de bandas amarillas) */
.woocommerce-notices-wrapper .woocommerce-message, .woocommerce-notices-wrapper .woocommerce-info, .woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .wd-notice, .wc-block-components-notice-banner { background: var(--bv-marfil) !important; color: var(--bv-azul) !important; border: 1px solid var(--bv-linea) !important; border-left: 3px solid var(--bv-limon) !important; border-radius: 0 !important; font-family: var(--bv-sans); font-size: 13px; }
.woocommerce-notices-wrapper .woocommerce-error { border-left-color: var(--bv-bordo) !important; }
.woocommerce-notices-wrapper .woocommerce-message::before, .woocommerce-notices-wrapper .woocommerce-info::before, .woocommerce-notices-wrapper .woocommerce-error::before { color: var(--bv-dorado) !important; }

/* Logo del header del sitio (26 px de alto, igual que el del checkout; 22 en móvil) y aire parejo a los costados del header.
   Woodmart le pone 5 px de relleno arriba y abajo a la imagen: sin sacarlo, el logo se dibuja 10 px más bajo que la caja. */
.whb-header .wd-logo img, .whb-header .site-logo img { width: auto !important; height: 26px !important; max-width: none !important; max-height: none !important; padding: 0 !important; object-fit: fill !important; }
.whb-header .wd-logo, .whb-header .site-logo { padding: 0 !important; flex: 0 0 auto !important; }
.whb-header .whb-col-left { flex-shrink: 0 !important; min-width: 155px; margin-left: 0 !important; }
.whb-header .whb-mobile-center { flex-shrink: 0 !important; min-width: 131px; }
.whb-header.whb-full-width .whb-general-header > .container { padding-inline: clamp(15px, 2.2vw, 44px); }
@media (max-width: 1024px) {
  .whb-header .wd-logo img, .whb-header .site-logo img { height: 22px !important; }
}

/* ---------- Megamenú de Tienda (inc/megamenu.php): panel a todo el ancho debajo del header ---------- */
.whb-header .wd-nav-main > li.bv-mega-item { position: static; }
.whb-header .bv-mega {
  position: absolute; top: 100%; left: 0; right: 0; width: auto; margin: 0; z-index: 380;
  background: var(--bv-crema); border-top: 1px solid rgba(232, 185, 35, 0.45); border-radius: 0;
  box-shadow: 0 26px 40px -30px rgba(22, 50, 79, 0.4);
  text-align: left; transform: translateY(8px);
  transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
.whb-header .bv-mega-item:hover > .bv-mega { transition-delay: 0.06s; }
/* Woodmart oculta (opacity 0) los desplegables especiales hasta que su script calcula posiciones: este panel no lo necesita */
.whb-header .wd-nav-header > li.bv-mega-item:hover > .bv-mega, .whb-header .wd-nav-header > li.bv-mega-item:focus-within > .bv-mega { visibility: visible; opacity: 1; transform: none; pointer-events: auto; }
.whb-header .bv-mega::after { height: 30px; }
.whb-header .bv-mega::before { content: ""; position: absolute; top: 100%; left: 0; right: 0; height: 100vh; background: rgba(12, 31, 51, 0.16); pointer-events: none; }
.bv-mega ul { list-style: none; margin: 0; padding: 0; }
.bv-mega a { text-decoration: none; }
.bv-mega-in {
  max-width: 1440px; margin: 0 auto; padding: 34px clamp(16px, 3vw, 40px) 38px; box-sizing: border-box;
  display: grid; grid-template-columns: 220px minmax(0, 1fr) 240px; gap: clamp(28px, 2.6vw, 48px); align-items: start;
}
.bv-mega-etiqueta { display: block; margin: 0 0 10px; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); line-height: 1.3; }

.bv-mega-intro { padding-right: clamp(20px, 2.4vw, 40px); border-right: 1px solid var(--bv-linea); min-height: 100%; box-sizing: border-box; }
.bv-mega-titulo { margin: 0 0 10px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 30px; line-height: 1.1; color: var(--bv-azul); }
.bv-mega-texto { margin: 0 0 18px; font-family: var(--bv-sans); font-weight: 300; font-size: 13px; line-height: 1.55; color: var(--bv-texto-2); }
.bv-mega-cta { display: inline-flex; align-items: center; gap: 8px; padding-bottom: 4px; border-bottom: 1px solid currentColor; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-azul) !important; }
.bv-mega-cta:hover { color: var(--bv-dorado) !important; }
.bv-mega-cta svg, .bv-mega-dest-cta svg { transition: transform 0.25s ease; }
.bv-mega-cta:hover svg, .bv-mega-destacado:hover .bv-mega-dest-cta svg { transform: translateX(3px); }
.bv-mega .bv-mega-beneficios { margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--bv-linea); display: grid; gap: 9px; }
.bv-mega-beneficios li { display: flex; align-items: center; gap: 10px; font-family: var(--bv-sans); font-size: 12px; font-weight: 300; line-height: 1.3; color: var(--bv-texto-2); }
.bv-mega-beneficios svg { flex: 0 0 auto; color: var(--bv-dorado); }

.bv-mega-grupos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 2vw, 36px); }
.bv-mega-grupo-titulo { display: block; padding-bottom: 12px; margin-bottom: 4px; border-bottom: 1px solid var(--bv-linea); font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); line-height: 1.3; }
.bv-mega-cat { display: flex; align-items: center; gap: 14px; padding: 10px 0; color: var(--bv-azul); }
.bv-mega-foto { flex: 0 0 56px; width: 56px; height: 56px; overflow: hidden; background: var(--bv-arena); }
.bv-mega-foto img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
.bv-mega-cat:hover .bv-mega-foto img { transform: scale(1.07); }
.bv-mega-cat-texto { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.bv-mega-cat-texto strong { font-family: var(--bv-serif); font-weight: 500; font-size: 20px; line-height: 1.1; color: var(--bv-azul); transition: color 0.2s ease; }
.bv-mega-cat-texto small { font-family: var(--bv-sans); font-weight: 300; font-size: 12px; line-height: 1.4; color: var(--bv-texto-2); }
.bv-mega-cat:hover strong, .bv-mega-cat.bv-actual strong { color: var(--bv-dorado); }

.bv-mega-destacado { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 5; background: var(--bv-arena); }
.bv-mega-destacado img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1); }
.bv-mega-destacado:hover img { transform: scale(1.04); }
.bv-mega-destacado::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12, 31, 51, 0) 42%, rgba(12, 31, 51, 0.74) 100%); }
.bv-mega-dest-texto { position: absolute; left: 20px; right: 20px; bottom: 18px; z-index: 1; display: flex; flex-direction: column; gap: 6px; }
.bv-mega-dest-texto .bv-mega-etiqueta { margin: 0; color: var(--bv-limon); }
.bv-mega-dest-texto strong { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 23px; line-height: 1.12; color: var(--bv-crema); }
.bv-mega-dest-cta { display: inline-flex; align-items: center; gap: 8px; margin-top: 4px; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-crema); }

@media (max-width: 1360px) {
  .bv-mega-in { grid-template-columns: 210px minmax(0, 1fr); }
  .bv-mega-destacado { display: none; }
}
@media (max-width: 1140px) {
  .bv-mega-in { grid-template-columns: minmax(0, 1fr); }
  .bv-mega-intro { display: none; }
}

/* ---------- Precios: dorado profundo, un poco más grandes, con cuotas sin interés debajo ---------- */
.product-grid-item .price, .product-grid-item .price .amount { font-family: var(--bv-sans); font-weight: 500; font-size: 17px; color: var(--bv-precio); letter-spacing: 0.01em; }
.product-grid-item .price ins, .product-grid-item .price ins .amount, .single-product .summary-inner .price ins .amount { color: var(--bv-bordo); text-decoration: none; }
.product-grid-item .price del, .product-grid-item .price del .amount { font-weight: 400; font-size: 13px; color: #9a9385; }
.single-product .summary-inner .price, .single-product .summary-inner .price .amount { font-family: var(--bv-sans); font-weight: 500; font-size: 28px; color: var(--bv-precio); letter-spacing: 0.01em; }
.single-product .summary-inner .price del, .single-product .summary-inner .price del .amount { font-weight: 400; font-size: 18px; color: #9a9385; }
.bv-cuotas { display: block; margin-top: 4px; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 300; line-height: 1.35; letter-spacing: 0.01em; color: var(--bv-texto-2); text-transform: none; }
.bv-cuotas em { font-family: var(--bv-serif); font-style: italic; font-weight: 600; font-size: 14.5px; letter-spacing: 0; color: var(--bv-azul); }
.single-product .summary-inner .price .bv-cuotas { margin-top: 6px; font-size: 13px; }
.single-product .summary-inner .price .bv-cuotas em { font-size: 17px; }
/* Cartel de "anterior / siguiente" (Woodmart, al pasar el mouse por las flechas de arriba): tomaba el precio grande de
   la ficha y el precio se salía de la tarjeta y de la pantalla. Nombre en serif chico, precio a 15 px, sin cuotas. */
.single-product .wd-products-nav .wd-dropdown { min-width: 250px; max-width: min(320px, calc(100vw - 32px)); }
.single-product .wd-products-nav .wd-product-nav-thumb { max-width: 76px; }
.single-product .wd-products-nav .wd-product-nav-desc { min-width: 0; padding: 10px 14px; }
.single-product .wd-products-nav .wd-product-nav-desc .wd-entities-title { display: block; margin: 0 0 4px; font-family: var(--bv-serif); font-size: 17px; line-height: 1.2; color: var(--bv-azul); }
.single-product .wd-products-nav .price, .single-product .wd-products-nav .price .amount, .single-product .summary-inner .wd-products-nav .price, .single-product .summary-inner .wd-products-nav .price .amount { font-size: 15px; font-weight: 500; line-height: 1.3; letter-spacing: 0; }
.single-product .summary-inner .wd-products-nav .price del, .single-product .summary-inner .wd-products-nav .price del .amount { font-size: 12px; }
.single-product .wd-products-nav .price .bv-cuotas { display: none; }
.bv-lk-total .bv-cuotas { margin-top: 2px; font-size: 13.5px; font-weight: 400; }
.bv-lk-total .bv-cuotas em { font-size: 16.5px; }
.wd-sticky-btn .bv-cuotas, .widget .bv-cuotas, .wd-dropdown-cart .bv-cuotas, .woocommerce-mini-cart .bv-cuotas { display: none; }

/* ---------- Header: lupa y carrito, sin favoritos (los favoritos viven en Mi cuenta y en el corazón de la ficha) ---------- */
.whb-header .wd-header-wishlist { display: none !important; }
/* Barra inferior del celular: sin favoritos (igual que el header) y la burbuja de WhatsApp por encima de la barra, no tapando "Tienda" */
.wd-toolbar .wd-header-wishlist { display: none !important; }
@media (max-width: 1024px) { .joinchat { --bottom: 67px !important; } }

/* ---------- Página Looks (template-looks.php) ---------- */
.bv-looks-pagina { --bv-ancho: 1320px; padding-bottom: 0; }
/* Woodmart deja 40 px abajo del contenido: en Looks la franja de asesoramiento va pegada a la tira de fotos del footer */
body.page-template-template-looks-php .wd-content-layout { padding-bottom: 0; }
.bv-lks-intro { max-width: 760px; margin: 0 auto; padding: clamp(40px, 6vw, 76px) clamp(16px, 4vw, 40px) clamp(24px, 3vw, 36px); display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.bv-lks-intro h1 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(38px, 5vw, 60px); line-height: 1.05; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-lks-intro p { margin: 0; max-width: 54ch; font-family: var(--bv-sans); font-size: 16px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-lks-indice { max-width: var(--bv-ancho); margin: 0 auto clamp(40px, 6vw, 76px); padding: 0 clamp(16px, 4vw, 40px); display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.bv-lks-tarjeta { display: flex; align-items: center; gap: 16px; padding: 12px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); text-decoration: none; color: var(--bv-azul); transition: border-color 0.2s, background 0.2s; }
.bv-lks-tarjeta:hover, .bv-lks-tarjeta.bv-activo { border-color: var(--bv-azul); }
.bv-lks-tarjeta.bv-activo { background: var(--bv-marfil); }
.bv-lks-tarjeta-foto { flex: 0 0 64px; width: 64px; aspect-ratio: 4 / 5; overflow: hidden; background: var(--bv-arena); }
.bv-lks-tarjeta-foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bv-lks-tarjeta-texto { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bv-lks-tarjeta-num { font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.22em; color: var(--bv-dorado); }
.bv-lks-tarjeta-texto strong { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.1; }
.bv-lks-tarjeta-texto small { font-family: var(--bv-sans); font-size: 12px; font-weight: 300; color: var(--bv-texto-2); }
.bv-lks-lista { max-width: var(--bv-ancho); margin: 0 auto; padding: 0 clamp(16px, 4vw, 40px); display: flex; flex-direction: column; gap: clamp(56px, 8vw, 120px); }
.bv-lks-lista .bv-lk { scroll-margin-top: 110px; }
.bv-lks-lista .bv-lk + .bv-lk { padding-top: clamp(56px, 8vw, 120px); border-top: 1px solid rgba(232, 185, 35, 0.45); margin-top: calc(-1 * clamp(56px, 8vw, 120px) / 2); }
/* Asesoramiento: franja marfil a todo el ancho, pegada a la tira de fotos del footer (la página no deja aire abajo) */
.bv-lks-cierre { width: 100%; max-width: none; margin: clamp(56px, 8vw, 110px) 0 0; padding: clamp(48px, 6vw, 76px) clamp(16px, 4vw, 40px); background: var(--bv-marfil); display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; box-sizing: border-box; }
.bv-lks-cierre h2 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(30px, 3.4vw, 42px); color: var(--bv-azul); text-transform: none; }
.bv-lks-cierre p { margin: 0; max-width: 50ch; font-family: var(--bv-sans); font-size: 15px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-lks-pasos { list-style: none; width: 100%; max-width: 820px; margin: 20px 0 8px; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.bv-lks-pasos li { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center; }
.bv-lks-pasos .bv-como-icono { margin-bottom: 10px; background: var(--bv-blanco); }
.bv-lks-pasos strong { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 21px; line-height: 1.2; color: var(--bv-azul); }
.bv-lks-pasos li > span:last-child { font-family: var(--bv-sans); font-size: 14px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-lks-cierre-botones { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 10px; }
.bv-lks-cierre-botones .bv-btn { gap: 10px; }
.bv-lks-cierre-botones .bv-btn svg { width: 16px; height: 16px; flex: 0 0 auto; }
@media (max-width: 767px) {
  .bv-lks-indice { grid-template-columns: 1fr; gap: 8px; }
  .bv-lks-tarjeta { padding: 8px; }
  .bv-lks-tarjeta-foto { flex-basis: 48px; width: 48px; }
  .bv-lks-pasos { grid-template-columns: 1fr; gap: 16px; max-width: 360px; margin: 14px 0 6px; }
  .bv-lks-pasos li { display: grid; grid-template-columns: 52px minmax(0, 1fr); column-gap: 14px; row-gap: 0; align-items: center; text-align: left; }
  .bv-lks-pasos .bv-como-icono { grid-row: span 2; margin: 0; }
  .bv-lks-pasos strong { align-self: end; font-size: 20px; }
  .bv-lks-pasos li > span:last-child { align-self: start; }
  .bv-lks-cierre-botones { align-self: stretch; flex-direction: column; }
}

/* =============================================================================================
   FICHA DE PRODUCTO (rediseño 25/09/2026, ajustado con Juan; inc/ficha.php)
   Orden del resumen: migas, título, precio (y línea de SALE), cuotas y transferencia, momentos, talles,
   guía de talles, botón de compra (protagonista), barra de envío gratis y tarjetas de envíos, pagos,
   cambios y asesoramiento, una debajo de la otra.
   ============================================================================================= */
/* Dos bloques completos (pedido de Juan): a la izquierda la galería de Woodmart (miniaturas a la izquierda) ocupa
   toda su mitad y queda fija mientras se recorre el detalle; a la derecha, el detalle ocupa toda su mitad, desde la
   foto hasta el borde (sin aire muerto a los costados; tope de 960 px para pantallas muy anchas).
   Mismo marco que el catálogo: 15 px a los costados (el del contenedor), 20 px debajo del menú y 20 px entre
   miniaturas y foto; la foto llena el alto que queda, con 20 px de aire abajo. En tablet y celular queda como Woodmart. */
@media (min-width: 1025px) {
  body.single-product .wd-content-layout { padding-top: 20px; }
  .single-product .product-image-summary-inner { column-gap: 0; row-gap: 0; }
  .single-product .product-images .woocommerce-product-gallery { position: sticky; top: 81px; gap: 20px; max-width: none; margin: 0; }
  .single-product .product-images .wd-gallery-images .woocommerce-product-gallery__image img { height: calc(100vh - 175px); aspect-ratio: auto; object-position: center 30%; }
  .single-product .summary { padding: 12px 0 0 clamp(32px, 3vw, 56px); }
  .single-product .summary-inner { max-width: 960px; margin-inline: 0; }
  /* Botón de compra y barra de envío gratis del mismo ancho: cantidad (80 px) + 10 px + botón de 350 px */
  .single-product .summary-inner form.cart .single_add_to_cart_button { flex: 0 1 350px; width: 350px; height: 48px; min-width: 0; max-width: none; }
  .single-product .summary-inner .bv-envio { max-width: 440px; }
}
.single-product .wd-gallery-images { position: relative; }
.single-product .wd-gallery-images .woocommerce-product-gallery__image img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block; background: var(--bv-arena); }
.single-product .wd-gallery-thumb img { aspect-ratio: 3 / 4; object-fit: cover; }
.single-product .wd-gallery-images .wd-nav-arrows .wd-btn-arrow { width: 44px; height: 44px; border-radius: 50%; background: rgba(251, 249, 246, 0.94); color: var(--bv-azul); box-shadow: 0 8px 22px rgba(12, 31, 51, 0.14); opacity: 0; transition: opacity 0.3s ease, transform 0.3s ease; }
.single-product .wd-gallery-images .wd-nav-arrows .wd-btn-arrow:hover { transform: scale(1.06); }
.single-product .wd-gallery-images:hover .wd-nav-arrows .wd-btn-arrow:not(.wd-disabled) { opacity: 1; }
.single-product .product-images .product-additional-galleries { position: absolute; inset: auto 16px 16px auto; z-index: 4; margin: 0; }
.single-product .product-images .wd-show-product-gallery-wrap { position: static; margin: 0; }
.single-product .product-images .wd-show-product-gallery-wrap > a { width: 44px; height: 44px; padding: 0; border-radius: 50%; justify-content: center; background: rgba(251, 249, 246, 0.94); color: var(--bv-azul); box-shadow: 0 8px 22px rgba(12, 31, 51, 0.14); }
.single-product .product-images .wd-show-product-gallery-wrap .wd-action-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); }

/* Resumen */
.single-product .summary-inner .product_title { margin-bottom: 6px; }
/* Estrellas de la ficha en SVG (finas y parejas en cualquier tamaño) en lugar de la fuente de Woodmart.
   --bv-e es el alto de cada estrella; la parte llena la da el ancho del span que pone WooCommerce. */
body.single-product {
  --bv-estrella-llena: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='2.2 2.1 19.6 18.8'%3E%3Cpath d='M12 2.8l2.8 5.8 6.3.9-4.6 4.4 1.1 6.3L12 17.2l-5.6 3 1.1-6.3L2.9 9.5l6.3-.9z' stroke='%23000' stroke-width='.9' stroke-linejoin='round'/%3E%3C/svg%3E");
  --bv-estrella-borde: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='2.2 2.1 19.6 18.8'%3E%3Cpath d='M12 2.8l2.8 5.8 6.3.9-4.6 4.4 1.1 6.3L12 17.2l-5.6 3 1.1-6.3L2.9 9.5l6.3-.9z' fill='none' stroke='%23000' stroke-width='1.1' stroke-linejoin='round'/%3E%3C/svg%3E");
}
body.single-product .star-rating { --bv-e: 13px; --bv-t: calc(var(--bv-e) + 3px); position: relative; display: inline-block; flex: 0 0 auto; width: calc(var(--bv-t) * 5); height: var(--bv-e); margin: 0; overflow: hidden; font-family: inherit; font-size: 0; line-height: 0; letter-spacing: 0; color: transparent; vertical-align: middle; }
body.single-product .star-rating::before, body.single-product .star-rating span::before { content: '' !important; position: absolute; top: 0; left: 0; width: calc(var(--bv-t) * 5); height: var(--bv-e); background-color: var(--bv-linea); -webkit-mask: var(--bv-estrella-llena) 0 0 / var(--bv-t) var(--bv-e) repeat-x; mask: var(--bv-estrella-llena) 0 0 / var(--bv-t) var(--bv-e) repeat-x; }
body.single-product .star-rating span { position: absolute; top: 0; left: 0; height: 100%; padding: 0; overflow: hidden; font-size: 0; color: transparent; }
body.single-product .star-rating span::before { background-color: var(--bv-azul); }
/* Entre el título y el precio: chicas, con el promedio y la cantidad */
.single-product .summary-inner a.bv-fp-estrellas { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 5px 9px; margin: 0 0 2px; font-family: var(--bv-sans); font-size: 13px; line-height: 1; color: var(--bv-texto-2); text-decoration: none; }
.single-product .summary-inner a.bv-fp-estrellas .star-rating { --bv-e: 15px; }
.bv-fp-estrellas-nota { font-weight: 500; color: var(--bv-azul); }
.bv-fp-estrellas-cant { padding-bottom: 1px; border-bottom: 1px solid transparent; transition: border-color 0.2s ease; }
.single-product .summary-inner a.bv-fp-estrellas:hover .bv-fp-estrellas-cant { border-color: currentColor; }
.single-product .summary-inner .wd-wishlist-btn:not(.bv-fav), .single-product .wd-sticky-btn .wd-wishlist-btn { display: none !important; } /* el de Woodmart; el corazón propio (.bv-fav) va al lado del título */
/* Stock: solo aparece cuando quedan pocas ("Última unidad", "Quedan 2 unidades"), chico y en dorado */
.single-product .summary-inner p.stock { margin: 0 0 12px; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bv-precio); }
.single-product .summary-inner p.stock::before { display: none; }

/* Precio, línea de SALE y formas de pago */
.bv-fp { margin: 12px 0 4px; display: flex; flex-direction: column; gap: 12px; }
.single-product .summary-inner .bv-fp-precio { margin: 0; line-height: 1.1; }
.single-product .summary-inner .bv-fp-precio, .single-product .summary-inner .bv-fp-precio .amount { font-size: 32px; font-weight: 500; }
.single-product .summary-inner .bv-fp-precio del, .single-product .summary-inner .bv-fp-precio del .amount { font-size: 19px; }
.bv-fp-urgencia { margin: -4px 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; font-family: var(--bv-sans); }
.bv-fp-urg-chip { padding: 3px 8px; border: 1px solid rgba(122, 31, 43, 0.45); color: var(--bv-bordo); font-size: 10px; font-weight: 500; letter-spacing: 0.18em; line-height: 1.3; text-transform: uppercase; }
.bv-fp-urg-texto { font-size: 12.5px; color: var(--bv-texto-2); }
.bv-fp-urg-texto b { font-weight: 500; color: var(--bv-bordo); letter-spacing: 0.02em; font-variant-numeric: tabular-nums; }
.bv-fp-formas { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.bv-fp-formas li { margin: 0; display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; column-gap: 12px; padding: 0; font-family: var(--bv-sans); font-size: 14px; line-height: 1.4; color: var(--bv-texto-2); }
.bv-fp-formas li:has(.bv-fp-nota) .bv-fp-icono { grid-row: span 2; }
.bv-fp-icono { width: 34px; height: 34px; border-radius: 50%; background: var(--bv-marfil); display: inline-flex; align-items: center; justify-content: center; color: var(--bv-azul); }
.bv-fp-icono svg { width: 17px; height: 17px; }
.bv-fp-linea strong, .bv-fp-linea b { font-weight: 500; color: var(--bv-azul); }
.bv-fp-nota { grid-column: 2; font-family: var(--bv-serif); font-style: italic; font-size: 15px; line-height: 1.3; color: var(--bv-texto-2); }
.bv-fp-off { display: inline-block; margin-left: 6px; vertical-align: 1px; padding: 3px 8px; line-height: 1.3; background: var(--bv-limon); color: var(--bv-azul); font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; white-space: nowrap; }

/* Guía de talles: una frase debajo de los talles que abre un panel lateral (hoja de abajo en el celular) */
.single-product .summary-inner button.bv-link-talles { display: inline-flex; align-items: center; gap: 8px; min-height: 0; height: auto; margin: 4px 0 18px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; color: var(--bv-texto-2); font-family: var(--bv-sans); font-size: 13.5px; font-weight: 400; letter-spacing: 0; line-height: 1.5; text-align: left; text-transform: none; cursor: pointer; }
.single-product .summary-inner button.bv-link-talles:hover { background: none; color: var(--bv-texto-2); }
.single-product .summary-inner button.bv-link-talles svg { flex: 0 0 auto; color: var(--bv-azul); }
.single-product .summary-inner button.bv-link-talles u { padding-bottom: 1px; border-bottom: 1px solid var(--bv-limon); color: var(--bv-azul); font-weight: 500; text-decoration: none; transition: border-color 0.2s ease; }
.single-product .summary-inner button.bv-link-talles:hover u { border-color: var(--bv-azul); }
.bv-dlg-talles { position: fixed; inset: 0 0 0 auto; margin: 0 0 0 auto; width: min(460px, 100vw); height: 100vh; max-width: none; max-height: none; padding: 0; border: 0; overflow-y: auto; background: var(--bv-crema); color: var(--bv-texto); box-shadow: -24px 0 60px rgba(12, 31, 51, 0.25); }
.bv-dlg-talles::backdrop { background: rgba(12, 31, 51, 0.45); }
.bv-dlg-talles[open] { animation: bv-cajon-entra 0.45s cubic-bezier(0.22, 1, 0.36, 1); }
.bv-dlg-talles[open]::backdrop { animation: bv-fondo-entra 0.45s ease; }
.bv-dlg-talles.bv-cerrando { animation: bv-cajon-sale 0.3s ease forwards; }
@keyframes bv-cajon-entra { from { transform: translateX(100%); } to { transform: none; } }
@keyframes bv-cajon-sale { to { transform: translateX(100%); } }
@keyframes bv-fondo-entra { from { opacity: 0; } to { opacity: 1; } }
.bv-dlg-cabeza { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding: 28px 28px 8px; }
.bv-dlg-cabeza h2 { margin: 6px 0 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 30px; line-height: 1.1; color: var(--bv-azul); text-transform: none; }
.bv-dlg-talles button.bv-dlg-cerrar { flex: 0 0 auto; width: 40px; height: 40px; min-height: 0; padding: 0; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--bv-linea); border-radius: 50%; background: transparent; color: var(--bv-azul); box-shadow: none; cursor: pointer; }
.bv-dlg-talles button.bv-dlg-cerrar:hover { border-color: var(--bv-azul); background: transparent; color: var(--bv-azul); }
/* Guía de talles (inc/talles.php): la ventana es una columna con la cabeza arriba, el contenido que se desplaza y el
   botón "Elegir talle" fijo abajo. */
.bv-dlg-talles[open] { display: flex; flex-direction: column; overflow: hidden; }
.bv-dlg-cabeza { flex: 0 0 auto; border-bottom: 1px solid var(--bv-linea); padding-bottom: 16px; }
.bv-dlg-sub { margin: 4px 0 0; font-family: var(--bv-sans); font-size: 12.5px; color: var(--bv-texto-2); }
.bv-talles { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 18px 28px 22px; }
.bv-talles-calce { margin: 0 0 18px; padding: 14px 16px; background: var(--bv-marfil); }
.bv-talles-calce-tit { display: flex; justify-content: space-between; align-items: baseline; margin: 0 0 12px; }
.bv-talles-calce-tit strong { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 20px; color: var(--bv-azul); }
.bv-talles-escala { position: relative; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.bv-talles-escala::before { content: ""; position: absolute; left: 10%; right: 10%; top: 6px; height: 1px; background: var(--bv-linea); }
.bv-talles-escala li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; margin: 0; font-size: 10.5px; line-height: 1.2; color: var(--bv-texto-2); text-align: center; }
.bv-talles-escala li::before { content: ""; width: 13px; height: 13px; border: 1px solid var(--bv-linea); border-radius: 50%; background: var(--bv-crema); }
.bv-talles-escala li.bv-ok { font-weight: 500; color: var(--bv-azul); }
.bv-talles-escala li.bv-ok::before { border-color: var(--bv-azul); background: var(--bv-azul); box-shadow: 0 0 0 3px var(--bv-marfil), 0 0 0 4px var(--bv-azul); }
.bv-talles-modelo { display: flex; align-items: center; gap: 10px; margin: 12px 0 0; font-size: 13px; color: var(--bv-texto); }
.bv-talles-modelo svg { flex: 0 0 auto; color: var(--bv-dorado); }
.bv-talles-modelo-sola { margin: 0 0 16px; }
.bv-talles-vista { display: grid; grid-template-columns: 1fr 1fr; margin: 0 0 14px; border: 1px solid var(--bv-azul); }
.bv-dlg-talles .bv-talles-vista button { min-height: 0; height: 38px; margin: 0; padding: 0 8px; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--bv-azul); font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; cursor: pointer; }
.bv-dlg-talles .bv-talles-vista button + button { border-left: 1px solid var(--bv-azul); }
.bv-dlg-talles .bv-talles-vista button[aria-pressed="true"] { background: var(--bv-azul); color: var(--bv-crema); }
.bv-talles-panel[hidden] { display: none; }
.bv-talles table.bv-talles-tabla { width: 100%; margin: 0; border-collapse: collapse; font-family: var(--bv-sans); font-size: 14px; font-variant-numeric: tabular-nums; }
.bv-talles .bv-talles-tabla caption { caption-side: top; padding: 0 0 8px; text-align: left; font-size: 10.5px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bv-texto-2); }
.bv-talles .bv-talles-tabla th, .bv-talles .bv-talles-tabla td { padding: 11px 6px; border: 0; border-bottom: 1px solid var(--bv-linea); text-align: center; color: var(--bv-texto); white-space: nowrap; }
.bv-talles .bv-talles-tabla thead th { background: var(--bv-marfil); font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--bv-azul); }
.bv-talles .bv-talles-tabla thead .bv-talles-letra { margin: 0 4px 0 0; vertical-align: 1px; }
.bv-talles .bv-talles-tabla tbody th { font-family: var(--bv-serif); font-size: 21px; font-weight: 500; line-height: 1.1; color: var(--bv-azul); }
.bv-talles .bv-talles-tabla tbody th small { display: block; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 400; letter-spacing: 0.06em; color: var(--bv-texto-2); }
.bv-talles .bv-talles-tabla tbody tr { cursor: pointer; transition: background 0.15s ease; }
.bv-talles .bv-talles-tabla tbody tr:hover { background: rgba(232, 185, 35, 0.1); }
.bv-talles .bv-talles-tabla tbody tr:focus-visible { outline: 2px solid var(--bv-limon); outline-offset: -2px; }
.bv-talles .bv-talles-tabla tbody tr.bv-elegido { background: var(--bv-azul); }
.bv-talles .bv-talles-tabla tbody tr.bv-elegido th, .bv-talles .bv-talles-tabla tbody tr.bv-elegido td, .bv-talles .bv-talles-tabla tbody tr.bv-elegido th small { color: var(--bv-crema); }
.bv-talles .bv-talles-tabla td.bv-talles-sin { font-size: 11px; color: var(--bv-texto-2); }
.bv-talles-ayuda { margin: 8px 0 0; font-size: 12px; color: var(--bv-texto-2); }
.bv-talles-letra { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 20px; height: 20px; border-radius: 50%; background: var(--bv-limon); color: var(--bv-azul-oscuro); font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0; }
.bv-talles-como { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 16px; align-items: start; margin: 18px 0 0; padding-top: 16px; border-top: 1px solid var(--bv-linea); }
.bv-talles-dibujo { padding: 10px; background: var(--bv-marfil); }
.bv-talles-dibujo svg { display: block; width: 100%; height: auto; }
.bv-talles-como ul, .bv-talles-cuerpo-como { margin: 0; padding: 0; list-style: none; }
.bv-talles-como li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; margin: 0; padding: 8px 0; border-bottom: 1px solid var(--bv-linea); font-size: 13px; line-height: 1.45; color: var(--bv-texto-2); }
.bv-talles-como li:first-child { padding-top: 0; }
.bv-talles-como li strong, .bv-talles-cuerpo-como strong { font-weight: 500; color: var(--bv-azul); }
.bv-talles-cuerpo-como { display: grid; gap: 6px; margin-top: 16px; font-size: 13px; line-height: 1.5; color: var(--bv-texto-2); }
.bv-talles-cuerpo-como li { margin: 0; }
.bv-talles-nota { margin: 18px 0 0; padding: 12px 14px; background: var(--bv-marfil); font-size: 12.5px; line-height: 1.55; color: var(--bv-texto-2); }
.bv-talles-nota a { color: var(--bv-azul); text-decoration: underline; text-underline-offset: 3px; }
.bv-talles .bv-talles-tabla tbody tr:not([data-bv-talle]) { cursor: default; }
.bv-talles .bv-talles-tabla tbody tr:not([data-bv-talle]):hover { background: none; }
.bv-talles .bv-talles-tabla td.bv-talles-sin[colspan] { white-space: normal; }
.bv-talles-nota-prenda { margin: 10px 0 0; font-size: 13px; line-height: 1.5; color: var(--bv-texto); }
.bv-talles-como-sola { grid-template-columns: minmax(0, 1fr); }
.bv-talles-letra-vacia { visibility: hidden; }
.bv-talles-cuidados { margin: 20px 0 0; padding-top: 16px; border-top: 1px solid var(--bv-linea); }
.bv-talles-cuidados .bv-etiqueta { display: block; margin: 0 0 12px; }
.bv-talles-cuidados ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; margin: 0; padding: 0; list-style: none; }
.bv-talles-cuidados li { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 13px; line-height: 1.3; color: var(--bv-texto); }
.bv-talles-cuidados svg { flex: 0 0 auto; color: var(--bv-azul); }
.bv-talles-pie { flex: 0 0 auto; padding: 14px 28px 18px; border-top: 1px solid var(--bv-linea); background: var(--bv-crema); }
.bv-dlg-talles .bv-talles-pie button { width: 100%; min-height: 0; height: 50px; margin: 0; padding: 0 12px; border: 0; border-radius: 0; background: var(--bv-azul); box-shadow: none; color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; cursor: pointer; }
.bv-dlg-talles .bv-talles-pie button:hover { background: var(--bv-azul-oscuro); color: var(--bv-crema); }
.bv-dlg-talles .bv-talles-pie button[disabled] { background: var(--bv-arena); color: var(--bv-texto-2); cursor: default; }

/* Barra "Te faltan $X para el envío gratis" (bv_ficha_envio): como la del carrito lateral, con las rayas en
   movimiento; crece al cambiar talle o cantidad y al agregar al carrito */
.bv-envio { margin: 16px 0 0; font-family: var(--bv-sans); }
.single-product .summary-inner .bv-envio-msg { margin: 0 0 10px; font-size: 13px; line-height: 1.4; color: var(--bv-texto-2); }
.bv-envio-msg strong { font-weight: 500; color: var(--bv-azul); }
.bv-envio-barra { height: 10px; background: var(--bv-arena); overflow: hidden; }
.bv-envio-barra > span { display: block; height: 100%; background-color: var(--bv-azul); background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent); background-size: 15px 15px; transition: width 0.9s cubic-bezier(0.22, 1, 0.36, 1); animation: bv-rayas 1.4s linear infinite; }
@keyframes bv-rayas { to { background-position: 15px 0; } }
@media (prefers-reduced-motion: reduce) {
  .bv-envio-barra > span { animation: none; transition: none; }
}

/* Envíos, pagos, cambios y asesoramiento: uno debajo del otro, con los íconos animados */
.bv-ft { list-style: none; margin: 24px 0 8px; padding: 0; display: grid; gap: 12px; }
.bv-ft li { margin: 0; display: flex; align-items: center; gap: 14px; padding: 0; }
.bv-ft .bv-como-icono { grid-row: auto; width: 42px; height: 42px; flex: 0 0 42px; }
.bv-ft .bv-como-icono svg { width: 20px; height: 20px; }
.bv-ft .bv-como-icono::after { top: 2px; right: 2px; width: 6px; height: 6px; }
.bv-ft strong { display: block; margin: 0 0 2px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 17px; line-height: 1.2; color: var(--bv-azul); }
.bv-ft li > div > span { display: block; font-family: var(--bv-sans); font-size: 13px; line-height: 1.45; color: var(--bv-texto-2); }
.bv-ft a { color: var(--bv-azul); text-decoration: underline; text-underline-offset: 3px; }

/* Barra fija de compra: fina, crema, con hilo dorado */
.single-product .wd-sticky-btn { background: rgba(251, 249, 246, 0.97); border-top: 1px solid rgba(232, 185, 35, 0.45); box-shadow: 0 -12px 30px rgba(12, 31, 51, 0.08); }
@media (min-width: 769px) {
  /* La altura también va en el body: con ella Woodmart reserva el lugar de la barra al pie de la página
     (con su valor de 95 px quedaba una franja blanca de 23 px entre el copyright y la barra). */
  body.single-product, .single-product .wd-sticky-btn { --wd-sticky-btn-height: 72px; }
  .single-product .wd-sticky-btn { padding-top: 0; }
  .single-product .wd-sticky-btn-container { min-height: 72px; padding-top: 8px; padding-bottom: 8px; }
}
.single-product .wd-sticky-btn .stock { display: none; }
.single-product .wd-sticky-btn .wd-sticky-btn-thumbnail img { width: 44px; min-width: 0; max-width: none; height: 56px; max-height: none; object-fit: cover; }
.single-product .wd-sticky-btn-info .wd-entities-title, .single-product .wd-sticky-btn-info .product-title { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 20px; color: var(--bv-azul); }
.single-product .wd-sticky-btn .price, .single-product .wd-sticky-btn .price .amount { font-family: var(--bv-sans); font-size: 17px; font-weight: 500; color: var(--bv-precio); }
/* En computadora y tablet (donde aparece la barra), todo en una línea: foto y nombre a la izquierda; precio con
   cuotas, cantidad y botón a la derecha. (El botón de la ficha ocupa todo el ancho y en la barra empujaba la
   cantidad a otra línea.) */
@media (min-width: 769px) {
  .single-product .wd-sticky-btn-container { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
  .single-product .wd-sticky-btn-content { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; gap: 14px; }
  .single-product .wd-sticky-btn-info { min-width: 0; }
  .single-product .wd-sticky-btn-info .wd-entities-title { margin: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .single-product .wd-sticky-btn .wd-sticky-btn-cart { flex: 0 0 auto; display: flex; align-items: center; gap: 20px; margin: 0; }
  .single-product .wd-sticky-btn-cart .price { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; margin: 0; line-height: 1.15; white-space: nowrap; }
  .single-product .wd-sticky-btn .price .bv-cuotas { display: block; font-size: 12px; font-weight: 400; color: var(--bv-texto-2); }
  .single-product .wd-sticky-btn .price .bv-cuotas em { font-style: normal; font-weight: 500; color: var(--bv-azul); }
  .single-product .wd-sticky-btn form.cart { display: flex; flex-wrap: nowrap; align-items: center; gap: 10px; margin: 0; }
  .single-product .wd-sticky-btn form.cart .quantity { flex: 0 0 auto; height: 44px; margin: 0; }
  .single-product .wd-sticky-btn .single_add_to_cart_button, .single-product .wd-sticky-btn .wd-sticky-add-to-cart { flex: 0 0 auto; width: auto; min-width: 250px; max-width: none; height: 44px; margin: 0; padding: 0 26px; }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .single-product .wd-sticky-btn .single_add_to_cart_button, .single-product .wd-sticky-btn .wd-sticky-add-to-cart { min-width: 0; padding: 0 18px; }
}

/* WhatsApp: azul de la marca, más chico, y baja despacio cuando se va la barra de compra (bievres.js).
   body delante: el CSS del plugin se carga después y trae --s: 60px */
body .joinchat { --s: 52px; transition: bottom 0.8s cubic-bezier(0.22, 1, 0.36, 1); }
@media (max-width: 767px) { body .joinchat { --s: 46px; } }
.joinchat .joinchat__button { background-color: var(--bv-azul); box-shadow: 0 10px 26px rgba(12, 31, 51, 0.28); transition: background-color 0.25s ease, box-shadow 0.25s ease; }
.joinchat .joinchat__button:hover { background-color: var(--bv-azul-oscuro); box-shadow: 0 10px 26px rgba(12, 31, 51, 0.28), 0 0 0 4px rgba(232, 185, 35, 0.35); }

/* Combinalo con */
.bv-combinalo { padding: clamp(40px, 6vw, 72px) 0 clamp(8px, 2vw, 16px); }
.bv-combinalo .bv-cabecera { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-bottom: clamp(20px, 3vw, 32px); text-align: center; }
.bv-combinalo .bv-cabecera h2 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(28px, 3vw, 38px); color: var(--bv-azul); text-transform: none; }

/* Banner a Looks: franja marfil a todo el ancho */
.bv-fl { width: 100vw; margin: clamp(32px, 5vw, 56px) 0 0 calc(50% - 50vw); background: var(--bv-marfil); }
.bv-fl-in { max-width: 1320px; margin: 0 auto; padding: clamp(32px, 5vw, 64px) clamp(16px, 4vw, 40px); box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
.bv-fl-foto { position: relative; display: block; aspect-ratio: 4 / 5; max-height: 560px; overflow: hidden; background: var(--bv-arena); }
.bv-fl-foto img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1); }
.bv-fl-foto:hover img { transform: scale(1.04); }
.bv-fl-nombre { position: absolute; left: 16px; bottom: 16px; padding: 6px 12px; background: rgba(251, 249, 246, 0.94); font-family: var(--bv-serif); font-size: 17px; color: var(--bv-azul); }
.bv-fl-texto { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.bv-fl-texto h2 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; color: var(--bv-azul); text-transform: none; }
.bv-fl-texto h2 em { font-style: normal; }
.bv-fl-texto p { margin: 0; max-width: 44ch; font-family: var(--bv-sans); font-size: 15.5px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-fl-texto .bv-btn { margin-top: 6px; }

/* Reseñas (woocommerce/single-product-reviews.php), línea premium (pedido de Juan, 29/09/2026): panel marfil en dos
   columnas. A la izquierda el título, el promedio grande y las barras por puntaje (o la invitación, si todavía no hay
   reseñas), que acompañan al bajar; a la derecha las reseñas como testimonios y el formulario en su panel blanco.
   Con reseñas, el formulario se abre con "Escribir una reseña" (bievres.js). */
.single-product .wd-single-reviews { max-width: 1180px; margin: clamp(40px, 5vw, 64px) auto 0; padding: 0; border: 0; }
/* El fondo marfil va de borde a borde de la pantalla (sombra + recorte a los costados); el contenido queda en 1180 px */
.single-product .wd-single-reviews .bv-resenas { display: grid; grid-template-columns: minmax(260px, 340px) minmax(0, 1fr); align-items: start; gap: clamp(28px, 5vw, 88px); padding: clamp(48px, 6vw, 84px) 0; background: var(--bv-marfil); box-shadow: 0 0 0 100vmax var(--bv-marfil); clip-path: inset(0 -100vmax); }
.single-product .wd-single-reviews .bv-resenas:not(.bv-resenas-vacias) .bv-resenas-lado { position: sticky; top: 110px; }
/* Sin reseñas: las dos columnas forman un solo bloque; arriba la volanta a la altura del título del formulario
   y abajo la nota de moderación termina a la altura del botón "Publicar reseña" */
.single-product .wd-single-reviews .bv-resenas-vacias { align-items: stretch; }
.bv-resenas-vacias .bv-resenas-lado { display: flex; flex-direction: column; }
.bv-resenas-lado .bv-resena-nota { margin: auto 0 0; padding-top: 20px; line-height: 1.5; }
.bv-resenas-volanta { margin: 0 0 12px; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); }
.single-product .bv-resenas .bv-resenas-titulo { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(32px, 3vw, 42px); line-height: 1.05; color: var(--bv-azul); text-transform: none; }
.bv-resenas-vacio-estrellas { display: block; flex: 0 0 auto; width: 150px; height: 25px; margin: 22px 0 18px; background-color: var(--bv-azul); -webkit-mask: var(--bv-estrella-borde) 0 0 / 30px 25px repeat-x; mask: var(--bv-estrella-borde) 0 0 / 30px 25px repeat-x; }
.bv-resenas-texto { margin: 0; font-family: var(--bv-sans); font-size: 15px; font-weight: 300; line-height: 1.65; color: var(--bv-texto-2); }
/* Promedio: el número grande en la tipografía de los títulos; al lado, las estrellas y cuántas opinaron */
.bv-resenas-promedio { display: flex; align-items: center; gap: 18px; margin: 26px 0 0; padding: 0 0 24px; border-bottom: 1px solid var(--bv-linea); }
.bv-resenas-nota { font-family: var(--bv-serif); font-size: 88px; font-weight: 500; line-height: 0.8; color: var(--bv-azul); }
.bv-resenas-de { display: flex; flex-direction: column; gap: 10px; }
body.single-product .bv-resenas-de .star-rating { --bv-e: 22px; }
.bv-resenas-cant { font-family: var(--bv-sans); font-size: 13px; font-weight: 300; line-height: 1.35; color: var(--bv-texto-2); }
/* Barras por puntaje (filtro de Woodmart: tocar una fila muestra solo esas reseñas): "5 ★", un hilo y la cantidad */
.single-product .bv-resenas .wd-rating-summary { margin: 22px 0 28px; padding: 0; border: 0; background: none; }
.single-product .bv-resenas .wd-rating-summary-heading { display: none; }
.single-product .bv-resenas .wd-rating-summary-cont { display: grid; gap: 11px; }
.single-product .bv-resenas .wd-rating-summary-item { display: grid; grid-template-columns: 30px minmax(0, 1fr) 28px; align-items: center; gap: 14px; margin: 0; cursor: pointer; }
.single-product .bv-resenas .wd-rating-label { display: inline-flex; align-items: center; gap: 5px; font-family: var(--bv-sans); font-size: 13px; font-weight: 500; line-height: 1; color: var(--bv-azul); transition: color 0.2s ease; }
.single-product .bv-resenas .wd-rating-label::before { content: attr(data-rating); }
.single-product .bv-resenas .wd-rating-label::after { content: ''; width: 12px; height: 12px; background-color: currentColor; -webkit-mask: var(--bv-estrella-llena) center / contain no-repeat; mask: var(--bv-estrella-llena) center / contain no-repeat; }
.single-product .bv-resenas .wd-rating-label .star-rating { display: none; }
.single-product .bv-resenas .wd-rating-summary-item:hover .wd-rating-label { color: var(--bv-dorado); }
.single-product .bv-resenas .wd-rating-progress-bar .progress-area { height: 3px; border-radius: 0; background: var(--bv-linea); }
.single-product .bv-resenas .wd-rating-progress-bar .progress-bar { height: 3px; border-radius: 0; background: var(--bv-azul); }
.single-product .bv-resenas .wd-rating-count { font-family: var(--bv-sans); font-size: 12.5px; text-align: right; color: var(--bv-texto-2); }
/* Botón para abrir el formulario: de borde, del ancho de la columna (abierto dice "Cancelar", mismo estilo) */
.single-product .bv-resenas button.bv-btn-resena { width: 100%; min-height: 0; height: 50px; padding: 0 22px; border: 1px solid var(--bv-azul); border-radius: 0; background: transparent; box-shadow: none; color: var(--bv-azul); font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; cursor: pointer; transition: background 0.2s ease, color 0.2s ease; }
.single-product .bv-resenas button.bv-btn-resena:hover { background: var(--bv-azul); color: var(--bv-crema); }
/* Herramientas de la lista: "Solo con fotos" y el orden, con un hilo debajo */
.single-product .bv-resenas .wd-reviews-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 22px; padding: 0 0 16px; border-bottom: 1px solid var(--bv-linea); }
.single-product .bv-resenas .wd-reviews-heading .wd-reviews-tools:empty { display: none; }
.single-product .bv-resenas .wd-reviews-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-left: auto; }
.single-product .bv-resenas .wd-with-image { display: flex; align-items: center; gap: 10px; margin: 0; }
.single-product .bv-resenas .wd-with-image input { -webkit-appearance: none; appearance: none; flex: 0 0 16px; width: 16px; height: 16px; margin: 0; border: 1px solid var(--bv-azul); border-radius: 0; background: var(--bv-blanco) center / 11px no-repeat; cursor: pointer; }
.single-product .bv-resenas .wd-with-image input:checked { background-color: var(--bv-azul); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%23FBF9F6' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 6.3l2.3 2.3 4.7-5'/%3E%3C/svg%3E"); }
.single-product .bv-resenas .wd-with-image label { margin: 0; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-azul); cursor: pointer; }
.single-product .bv-resenas select.wd-reviews-sorting-select { width: auto; min-width: 180px; height: 40px; margin: 0; padding: 0 36px 0 14px; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-blanco) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%2316324F' stroke-width='1.3'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E") right 14px center / 10px no-repeat; -webkit-appearance: none; appearance: none; box-shadow: none; font-family: var(--bv-sans); font-size: 13px; color: var(--bv-azul); cursor: pointer; }
.single-product .bv-resenas .wd-reviews-sorting-clear { font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-azul); text-decoration: none; border-bottom: 1px solid currentColor; }
/* Cada reseña, "revista a dos columnas" (opción 2 elegida por Juan, 29/09/2026): sin caja, sobre el marfil. A la
   izquierda quién y cuándo (nombre, "compra verificada", fecha; woocommerce/single-product/review-meta.php); a la
   derecha las estrellas, el texto en cursiva entre comillas y las fotos; un hilo entre reseñas. La reseña y su
   encabezado se aplanan (display: contents) para ubicarlos en una grilla: la última fila (1fr) absorbe el alto del
   texto, así el nombre, la verificación y la fecha quedan juntos arriba. */
.single-product .bv-resenas .commentlist { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin: 0; padding: 0; }
.single-product .bv-resenas .commentlist li.review { width: auto; max-width: none; margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--bv-linea); }
.single-product .bv-resenas .commentlist .comment_container { display: grid; grid-template-columns: 170px minmax(0, 1fr); grid-template-rows: auto auto auto 1fr; grid-template-areas: "autor estrellas" "verificada texto" "fecha texto" ". texto"; align-items: start; column-gap: 32px; margin: 0; padding: 30px 0; border: 0; background: none; }
.single-product .bv-resenas .comment-text, .single-product .bv-resenas .comment-text .meta { display: contents; }
.single-product .bv-resenas .woocommerce-review__author { grid-area: autor; font-family: var(--bv-sans); font-size: 14.5px; font-weight: 500; line-height: 1.3; color: var(--bv-azul); overflow-wrap: anywhere; }
.single-product .bv-resenas .woocommerce-review__verified { grid-area: verificada; margin-top: 4px; font-family: var(--bv-serif); font-style: italic; font-size: 14px; line-height: 1.3; color: var(--bv-precio); }
.single-product .bv-resenas .woocommerce-review__awaiting-approval { grid-area: verificada; margin-top: 4px; font-family: var(--bv-sans); font-size: 12px; font-style: normal; line-height: 1.4; color: var(--bv-texto-2); }
.single-product .bv-resenas .woocommerce-review__published-date { grid-area: fecha; margin-top: 6px; font-family: var(--bv-sans); font-style: normal; font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; line-height: 1.3; text-transform: uppercase; color: var(--bv-texto-2); }
body.single-product .bv-resenas .comment-text .star-rating { grid-area: estrellas; --bv-e: 14px; margin: 3px 0 12px; }
.single-product .bv-resenas .comment-text .description { grid-area: texto; margin: 0; padding: 0; border: 0; }
.single-product .bv-resenas .comment-text .description p { margin: 0 0 10px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 23px; line-height: 1.4; color: var(--bv-azul); }
.single-product .bv-resenas .comment-text .description p:last-of-type { margin-bottom: 0; }
.single-product .bv-resenas .comment-text .description p:first-of-type::before { content: '\201C'; }
.single-product .bv-resenas .comment-text .description p:last-of-type::after { content: '\201D'; }
/* Fotos de la reseña: cuadradas y en fila */
.single-product .bv-resenas .commentlist .wd-images-gallery { margin: 14px 0 0; }
.single-product .bv-resenas .commentlist .wd-images-gallery .wd-grid-g { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.single-product .bv-resenas .commentlist .wd-gallery-item { flex: 0 0 72px; width: 72px; max-width: none; margin: 0; padding: 0; }
.single-product .bv-resenas .commentlist .wd-gallery-item img { display: block; width: 72px; height: 72px; object-fit: cover; border-radius: 0; transition: opacity 0.2s ease; }
.single-product .bv-resenas .commentlist .wd-gallery-item a:hover img { opacity: 0.85; }
.single-product .wd-single-reviews.bv-resenas-js:not(.bv-resena-abierta) #review_form_wrapper { display: none; }
.single-product .wd-single-reviews.bv-resena-abierta #review_form_wrapper { animation: bv-dlg-entra 0.35s cubic-bezier(0.22, 1, 0.36, 1); }
@keyframes bv-dlg-entra { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.single-product .bv-resenas #comments + #review_form_wrapper { margin-top: 28px; }
/* Debajo de la lista el hilo de la última reseña hace de borde de arriba: el acordeón queda como la última fila */
.single-product .bv-resenas #comments + .bv-resena-acordeon { margin-top: 0; border-top: 0; }
/* Con reseñas, el formulario va plegado y en línea, entre dos hilos (sin caja): el título, una línea y un + que pasa a − */
.bv-resena-acordeon { border-top: 1px solid var(--bv-linea); border-bottom: 1px solid var(--bv-linea); }
.single-product .bv-resenas button.bv-acordeon-cabeza { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "titulo icono" "sub icono"; align-items: center; gap: 4px 20px; width: 100%; min-height: 0; height: auto; margin: 0; padding: 22px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: inherit; text-align: left; text-transform: none; letter-spacing: 0; cursor: pointer; scroll-margin-top: 110px; }
.single-product .bv-resenas button.bv-acordeon-cabeza:hover { background: transparent; }
.single-product .bv-resenas button.bv-acordeon-cabeza:focus-visible { outline: 2px solid var(--bv-dorado); outline-offset: -2px; }
.bv-acordeon-titulo { grid-area: titulo; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 26px; line-height: 1.15; color: var(--bv-azul); }
.bv-acordeon-sub { grid-area: sub; font-family: var(--bv-sans); font-size: 13.5px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-acordeon-icono { grid-area: icono; position: relative; width: 44px; height: 44px; border: 1px solid var(--bv-azul); border-radius: 50%; transition: background 0.25s ease; }
.bv-acordeon-icono::before, .bv-acordeon-icono::after { content: ''; position: absolute; top: 50%; left: 50%; width: 14px; height: 1.5px; margin: -0.75px 0 0 -7px; background: var(--bv-azul); transition: transform 0.35s ease, background 0.25s ease; }
.bv-acordeon-icono::after { transform: rotate(90deg); }
.bv-acordeon-cabeza:hover .bv-acordeon-icono { background: var(--bv-azul); }
.bv-acordeon-cabeza:hover .bv-acordeon-icono::before, .bv-acordeon-cabeza:hover .bv-acordeon-icono::after { background: var(--bv-crema); }
.bv-resena-abierta .bv-acordeon-icono::after { transform: rotate(0deg); }
.single-product .bv-resenas .bv-resena-acordeon #review_form_wrapper { margin: 0; padding: 26px 0 32px; border-top: 1px solid var(--bv-linea); background: transparent; }
/* Sin panel, los campos van en blanco sobre el marfil */
.single-product .bv-resenas .bv-resena-acordeon #review_form :is(input[type="text"], input[type="email"], textarea), .single-product .bv-resenas .bv-resena-acordeon .wd-add-img-btn-wrapper { background: var(--bv-blanco); }
.single-product .bv-resenas .bv-resena-acordeon #review_form .comment-reply-title { display: none; }
/* Formulario en su panel blanco: título en cursiva, estrellas grandes para puntuar, nombre y correo lado a lado */
.single-product .bv-resenas #review_form_wrapper { margin: 0; padding: clamp(24px, 3vw, 40px); background: var(--bv-blanco); }
.single-product .bv-resenas #review_form .comment-reply-title { display: block; margin: 0 0 6px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 30px; line-height: 1.15; color: var(--bv-azul); text-transform: none; }
.bv-resena-sub { margin: 0 0 26px; font-family: var(--bv-sans); font-size: 14px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.single-product .bv-resenas #commentform { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px 16px; margin: 0; }
/* Orden: puntuación, nombre y correo, reseña, fotos, y abajo las notas juntas y el botón */
.single-product .bv-resenas #commentform > * { order: 5; grid-column: 1 / -1; margin: 0; padding: 0; }
.single-product .bv-resenas #commentform > .comment-form-rating { order: 1; }
.single-product .bv-resenas #commentform > .comment-form-author { order: 2; grid-column: 1; }
.single-product .bv-resenas #commentform > .comment-form-email { order: 3; grid-column: 2; }
.single-product .bv-resenas #commentform > .comment-form-comment { order: 4; }
.single-product .bv-resenas #commentform > .comment-form-cookies-consent { order: 6; }
.single-product .bv-resenas #commentform > .comment-form-img-message { order: 7; margin-top: -8px; }
.single-product .bv-resenas #commentform > .bv-resena-nota { order: 8; margin-top: -8px; }
.single-product .bv-resenas #commentform > .form-submit { order: 9; margin-top: 4px; padding: 0; }
.single-product .bv-resenas #review_form label { display: block; margin: 0 0 10px; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bv-azul); }
.single-product .bv-resenas #review_form label .required { color: var(--bv-precio); }
.single-product .bv-resenas #review_form .comment-form-rating { display: block; }
.single-product .bv-resenas #review_form .comment-form-rating label::after { content: none; }
.single-product .bv-resenas #review_form .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 10px; }
.single-product .bv-resenas #review_form .comment-form-cookies-consent input { flex: 0 0 auto; margin: 2px 0 0; }
.single-product .bv-resenas #review_form .comment-form-cookies-consent label { margin: 0; font-size: 12.5px; font-weight: 400; letter-spacing: 0; line-height: 1.5; text-transform: none; color: var(--bv-texto-2); }
.single-product .bv-resenas #review_form input[type="text"], .single-product .bv-resenas #review_form input[type="email"], .single-product .bv-resenas #review_form textarea { width: 100%; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-crema); box-shadow: none; font-family: var(--bv-sans); font-size: 15px; color: var(--bv-texto); transition: border-color 0.2s ease, background 0.2s ease; }
.single-product .bv-resenas #review_form input[type="text"], .single-product .bv-resenas #review_form input[type="email"] { height: 48px; padding: 0 14px; }
.single-product .bv-resenas #review_form textarea { min-height: 130px; height: 130px; padding: 14px 16px; line-height: 1.55; resize: vertical; }
.single-product .bv-resenas #review_form textarea::placeholder { color: #9a9385; font-weight: 300; }
.single-product .bv-resenas #review_form input:focus, .single-product .bv-resenas #review_form textarea:focus { border-color: var(--bv-azul); background: var(--bv-blanco); outline: none; }
.single-product .bv-resenas #review_form input[type="submit"] { height: 50px; padding: 0 34px; border: 0; border-radius: 0; background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; cursor: pointer; transition: background 0.2s ease; }
.single-product .bv-resenas #review_form input[type="submit"]:hover { background: var(--bv-azul-oscuro); }
.bv-resena-nota, .single-product .comment-form-img-message { font-family: var(--bv-sans); font-size: 12.5px; color: var(--bv-texto-2); }
/* Fotos: un recuadro punteado con una cámara; se toca en cualquier parte (el texto del límite va debajo, sin el "?") */
.single-product .bv-resenas .comment-form-images { order: 5; margin: 0; }
.single-product .bv-resenas .wd-add-img-btn-wrapper { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 22px 16px 20px; border: 1px dashed #BDB3A2; background: var(--bv-crema); text-align: center; transition: border-color 0.2s ease, background 0.2s ease; }
.single-product .bv-resenas .wd-add-img-btn-wrapper::before { content: ''; width: 26px; height: 26px; margin-bottom: 2px; background-color: var(--bv-azul); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.3' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5a1.5 1.5 0 0 1 1.5-1.5h2.6l1.5-2.2h5.8l1.5 2.2H19a1.5 1.5 0 0 1 1.5 1.5v9.5A1.5 1.5 0 0 1 19 19.5H5A1.5 1.5 0 0 1 3.5 18z'/%3E%3Ccircle cx='12' cy='13' r='3.6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.3' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5a1.5 1.5 0 0 1 1.5-1.5h2.6l1.5-2.2h5.8l1.5 2.2H19a1.5 1.5 0 0 1 1.5 1.5v9.5A1.5 1.5 0 0 1 19 19.5H5A1.5 1.5 0 0 1 3.5 18z'/%3E%3Ccircle cx='12' cy='13' r='3.6'/%3E%3C/svg%3E") center / contain no-repeat; }
.single-product .bv-resenas .wd-add-img-btn-wrapper:hover { border-color: var(--bv-azul); background: var(--bv-blanco); }
.single-product .bv-resenas #review_form label[for="wd-add-img-btn"] { position: static; margin: 0; padding: 0; border: 0; font-size: 11.5px; letter-spacing: 0.18em; color: var(--bv-azul); cursor: pointer; }
.single-product .bv-resenas #review_form label[for="wd-add-img-btn"]::after { content: ''; position: absolute; inset: 0; z-index: 1; cursor: pointer; }
.single-product .bv-resenas .comment-form-images .wd-hint { position: static; display: block; width: auto; height: auto; margin: 0; background: none; pointer-events: none; }
.single-product .bv-resenas .comment-form-images .wd-hint::before, .single-product .bv-resenas .comment-form-images .wd-hint::after { display: none; }
.single-product .bv-resenas .comment-form-images .wd-tooltip-content { position: static; display: block; width: auto; max-width: none; margin: 0; padding: 0; opacity: 1; visibility: visible; transform: none; background: none; box-shadow: none; font-family: var(--bv-sans); font-size: 12px; font-weight: 300; line-height: 1.45; letter-spacing: 0; text-transform: none; white-space: normal; color: var(--bv-texto-2); }
.single-product .bv-resenas .wd-add-img-count { display: block; margin: 0; font-family: var(--bv-sans); font-size: 12.5px; font-weight: 500; color: var(--bv-precio); }
.single-product .bv-resenas .wd-add-img-count:empty { display: none; }
/* Estrellas para puntuar: grandes y de borde; se llenan hasta donde está el mouse o hasta la elegida */
.single-product .bv-resenas p.stars { margin: 0; line-height: 1; }
.single-product .bv-resenas p.stars span { display: inline-flex; gap: 8px; }
.single-product .bv-resenas p.stars a { position: relative; display: inline-block; width: 36px; height: 35px; margin: 0; overflow: hidden; font-size: 0; text-indent: -9999px; color: transparent; text-decoration: none; transition: transform 0.2s ease; }
.single-product .bv-resenas p.stars a:hover { transform: scale(1.08); }
.single-product .bv-resenas p.stars a::before { content: '' !important; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; text-indent: 0; background-color: var(--bv-azul); -webkit-mask: var(--bv-estrella-borde) center / contain no-repeat; mask: var(--bv-estrella-borde) center / contain no-repeat; }
.single-product .bv-resenas p.stars:hover a::before, .single-product .bv-resenas p.stars.selected a::before { -webkit-mask-image: var(--bv-estrella-llena); mask-image: var(--bv-estrella-llena); }
.single-product .bv-resenas p.stars a:hover ~ a::before, .single-product .bv-resenas p.stars.selected a.active ~ a::before { -webkit-mask-image: var(--bv-estrella-borde); mask-image: var(--bv-estrella-borde); }
.single-product .bv-resenas p.stars.selected:hover a::before { -webkit-mask-image: var(--bv-estrella-llena); mask-image: var(--bv-estrella-llena); }
.single-product .bv-resenas p.stars.selected:hover a:hover ~ a::before { -webkit-mask-image: var(--bv-estrella-borde); mask-image: var(--bv-estrella-borde); }
@media (max-width: 860px) {
  .single-product .wd-single-reviews .bv-resenas { grid-template-columns: minmax(0, 1fr); padding: 40px 0; }
  .single-product .wd-single-reviews .bv-resenas:not(.bv-resenas-vacias) .bv-resenas-lado { position: static; }
  .bv-resenas-lado .bv-resena-nota { padding-top: 12px; }
  .bv-resenas-nota { font-size: 72px; }
}
@media (max-width: 575px) {
  .single-product .bv-resenas #commentform > .comment-form-author, .single-product .bv-resenas #commentform > .comment-form-email { grid-column: 1 / -1; }
  .single-product .bv-resenas .commentlist .comment_container { grid-template-columns: auto auto minmax(0, 1fr); grid-template-rows: auto; grid-template-areas: "autor verificada fecha" "estrellas estrellas estrellas" "texto texto texto"; align-items: baseline; column-gap: 10px; padding: 24px 0; }
  .single-product .bv-resenas :is(.woocommerce-review__verified, .woocommerce-review__awaiting-approval, .woocommerce-review__published-date) { margin-top: 0; }
  body.single-product .bv-resenas .comment-text .star-rating { margin: 12px 0 10px; }
  .single-product .bv-resenas .comment-text .description p { font-size: 20px; }
  .single-product .bv-resenas .commentlist .wd-gallery-item, .single-product .bv-resenas .commentlist .wd-gallery-item img { flex-basis: 64px; width: 64px; height: 64px; }
  .single-product .bv-resenas #review_form_wrapper { padding: 22px 18px; }
  .single-product .bv-resenas #review_form .comment-reply-title { font-size: 26px; }
  .single-product .bv-resenas .wd-reviews-filters { margin-left: 0; }
  .single-product .bv-resenas button.bv-acordeon-cabeza { gap: 4px 14px; padding: 20px 0; }
  .bv-acordeon-titulo { font-size: 22px; }
  .bv-acordeon-icono { width: 38px; height: 38px; }
  .single-product .bv-resenas .bv-resena-acordeon #review_form_wrapper { padding: 20px 0 24px; }
}

@media (max-width: 767px) {
  .single-product .summary-inner .bv-fp-precio, .single-product .summary-inner .bv-fp-precio .amount { font-size: 28px; }
  .bv-dlg-talles { inset: auto 0 0 0; margin: auto 0 0; width: 100vw; height: auto; max-height: 88vh; box-shadow: 0 -20px 50px rgba(12, 31, 51, 0.25); }
  .bv-dlg-talles[open] { animation-name: bv-hoja-entra; }
  .bv-dlg-talles.bv-cerrando { animation-name: bv-hoja-sale; }
  .bv-dlg-cabeza { padding: 22px 16px 12px; }
  .bv-talles { padding: 14px 16px 18px; }
  .bv-talles .bv-talles-tabla th, .bv-talles .bv-talles-tabla td { padding: 10px 3px; font-size: 13.5px; }
  .bv-talles .bv-talles-tabla thead th { font-size: 9.5px; letter-spacing: 0.06em; }
  .bv-talles .bv-talles-tabla thead .bv-talles-letra { display: flex; margin: 0 auto 3px; }
  .bv-talles .bv-talles-tabla tbody th { font-size: 19px; }
  .bv-talles-como { grid-template-columns: 100px minmax(0, 1fr); gap: 12px; }
  .bv-talles-escala li { font-size: 9.5px; }
  .bv-talles-pie { padding: 12px 16px calc(14px + env(safe-area-inset-bottom)); }
  .bv-fl-in { grid-template-columns: 1fr; }
  .bv-fl-foto { max-height: 440px; }
}
@keyframes bv-hoja-entra { from { transform: translateY(100%); } to { transform: none; } }
@keyframes bv-hoja-sale { to { transform: translateY(100%); } }

/* Ficha: botones de talle (bievres.js) en lugar del desplegable de WooCommerce */
.single-product .variations select.bv-select-oculto { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; border: 0 !important; opacity: 0; pointer-events: none; }
.single-product .variations .bv-chips-talle { display: flex; flex-wrap: wrap; gap: 8px; }
.single-product .bv-chips-talle .bv-chip-talle { min-width: 52px; height: 46px; min-height: 0; padding: 0 14px; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-blanco); color: var(--bv-azul); box-shadow: none; font-family: var(--bv-sans); font-size: 13px; font-weight: 500; letter-spacing: 0.08em; line-height: 1; text-transform: uppercase; cursor: pointer; transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease; }
.single-product .bv-chips-talle .bv-chip-talle:hover:not(:disabled), .single-product .bv-chips-talle .bv-chip-talle:focus-visible { border-color: var(--bv-azul); background: var(--bv-blanco); color: var(--bv-azul); }
.single-product .bv-chips-talle .bv-chip-talle.bv-elegido, .single-product .bv-chips-talle .bv-chip-talle.bv-elegido:hover { border-color: var(--bv-azul); background: var(--bv-azul); color: var(--bv-crema); }
.single-product .bv-chips-talle .bv-chip-talle:disabled { cursor: not-allowed; color: #b3ab9d; background: var(--bv-crema) linear-gradient(to top right, transparent calc(50% - 0.5px), var(--bv-linea) 50%, transparent calc(50% + 0.5px)); }
.single-product .variations .reset_variations { font-size: 12px; color: var(--bv-texto-2); }

/* =============================================================================================
   ENVÍOS Y CAMBIOS (template-envios.php; textos y montos en inc/envios.php)
   Intro con saltos, cuatro datos clave con íconos, métodos de envío en tarjetas blancas con su
   "gratis desde", el camino del pedido, los pasos del cambio en una banda marfil, condiciones y cierre.
   ============================================================================================= */
html:has(.bv-env) { scroll-behavior: smooth; }
.bv-env-intro { padding-bottom: clamp(24px, 3vw, 32px); }
/* Encabezado y datos clave sobre azul marino, cerrado abajo con la raya de toldo (como el footer) */
body.page-template-template-envios .wd-content-layout { padding-top: 0; }
.bv-env-hero { position: relative; padding-bottom: calc(clamp(48px, 6vw, 72px) + 10px); background: var(--bv-azul); }
.bv-env-hero::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 10px; background: var(--bv-rayas); }
.bv-env-hero .bv-etiqueta { color: var(--bv-limon); }
.bv-env-hero .bv-lks-intro h1 { color: var(--bv-crema); }
.bv-env-hero .bv-lks-intro p { color: rgba(251, 249, 246, 0.78); }
.bv-env-hero .bv-env-saltos a { border-color: rgba(251, 249, 246, 0.35); color: var(--bv-crema); }
.bv-env-hero .bv-env-saltos a:hover { border-color: var(--bv-crema); background: var(--bv-crema); color: var(--bv-azul); }
.bv-env-hero .bv-env-claves .bv-como-icono { border-color: rgba(251, 249, 246, 0.35); background: transparent; color: var(--bv-crema); }
.bv-env-hero [data-bv-iconos] > :hover .bv-como-icono { border-color: var(--bv-crema); background: var(--bv-crema); color: var(--bv-azul); }
.bv-env-hero .bv-env-claves strong { color: var(--bv-crema); }
.bv-env-hero .bv-env-claves span { color: rgba(251, 249, 246, 0.75); }
.bv-env-hero .bv-env-claves a { color: var(--bv-limon); }
.bv-env-saltos { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 12px; }
.bv-env-saltos a { padding: 9px 16px; border: 1px solid var(--bv-linea); font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bv-azul); transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease; }
.bv-env-saltos a:hover { border-color: var(--bv-azul); background: var(--bv-azul); color: var(--bv-crema); }

/* Datos clave */
.bv-env-claves { list-style: none; max-width: 1180px; margin: 0 auto; padding: 8px clamp(16px, 4vw, 40px) 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.bv-env-claves li { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center; }
.bv-env-claves .bv-como-icono { margin-bottom: 10px; }
.bv-env-claves strong { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.2; color: var(--bv-azul); }
.bv-env-claves span { max-width: 26ch; font-family: var(--bv-sans); font-size: 14px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-env-claves a { color: var(--bv-azul); font-weight: 400; text-decoration: underline; text-underline-offset: 3px; }

/* Secciones */
.bv-env-sec { max-width: 1180px; margin: 0 auto; padding: clamp(64px, 8vw, 104px) clamp(16px, 4vw, 40px) 0; scroll-margin-top: 70px; }
.bv-env-cabeza { max-width: 640px; margin: 0 auto clamp(28px, 4vw, 44px); display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.bv-env-cabeza h2 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(30px, 3.4vw, 42px); line-height: 1.1; color: var(--bv-azul); text-transform: none; }
.bv-env-cabeza p { margin: 0; max-width: 56ch; font-family: var(--bv-sans); font-size: 15.5px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }

/* Métodos de envío */
.bv-env-metodos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.bv-env-metodo { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 32px 28px 28px; background: var(--bv-blanco); box-shadow: 0 18px 44px rgba(12, 31, 51, 0.06); }
/* Ícono y, al lado, el logo de la empresa (o "Logística privada" en la moto) */
.bv-env-marca { display: flex; align-items: center; gap: 16px; min-height: 56px; }
.bv-env-logo { display: block; width: auto; height: 32px; }
.bv-env-logo[src*="andreani"] { height: 21px; }
.bv-env-marca-texto { font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.2em; line-height: 1.35; text-transform: uppercase; color: var(--bv-azul); }
.bv-env-metodo h3 { margin: 8px 0 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 26px; line-height: 1.15; color: var(--bv-azul); text-transform: none; }
.bv-env-metodo > p { margin: 0; font-family: var(--bv-sans); font-size: 14.5px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-env-precios { width: 100%; margin: 6px 0 12px; display: grid; gap: 8px; }
.bv-env-precios div { display: grid; grid-template-columns: 92px minmax(0, 1fr); align-items: baseline; gap: 12px; }
.bv-env-precios dt { font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bv-precio); }
.bv-env-precios dd { margin: 0; font-family: var(--bv-sans); font-size: 14.5px; font-weight: 500; line-height: 1.45; color: var(--bv-azul); }
.bv-env-metodo > p.bv-env-gratis { width: 100%; margin-top: auto; padding: 11px 14px; background: rgba(232, 185, 35, 0.16); font-size: 13.5px; font-weight: 500; line-height: 1.4; color: var(--bv-azul); }

/* El camino del pedido */
.bv-env-camino { list-style: none; margin: clamp(44px, 5vw, 64px) 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.bv-env-camino li { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.bv-env-camino .bv-env-num { margin-bottom: 4px; font-family: var(--bv-serif); font-style: italic; font-size: 36px; line-height: 1; color: var(--bv-dorado); }
.bv-env-camino strong, .bv-env-pasos strong, .bv-env-condiciones strong { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.2; color: var(--bv-azul); }
.bv-env-camino li > span:last-child, .bv-env-pasos li > span:last-child, .bv-env-condiciones span { font-family: var(--bv-sans); font-size: 14.5px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }

/* Cambios: banda marfil a todo el ancho, pasos en tarjetas blancas */
.bv-env-sec.bv-env-cambios { max-width: none; margin-top: clamp(64px, 8vw, 104px); padding-bottom: clamp(56px, 7vw, 88px); background: var(--bv-marfil); }
.bv-env-pasos { list-style: none; max-width: 1180px; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.bv-env-pasos li { margin: 0; display: flex; flex-direction: column; gap: 8px; padding: 26px 24px 28px; background: var(--bv-blanco); }
.bv-env-pasos .bv-env-num { width: 40px; height: 40px; margin-bottom: 8px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-serif); font-style: italic; font-size: 20px; line-height: 1; }
.bv-env-cambios .bv-btn.bv-env-cta { display: flex; width: max-content; max-width: 100%; margin: clamp(28px, 4vw, 40px) auto 0; gap: 10px; }
.bv-env-cta svg { width: 16px; height: 16px; flex: 0 0 auto; }

/* Condiciones */
.bv-env-condiciones { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 44px; }
.bv-env-condiciones li { position: relative; margin: 0; padding-left: 22px; display: flex; flex-direction: column; gap: 6px; }
.bv-env-condiciones li::before { content: ''; position: absolute; top: 11px; left: 0; width: 8px; height: 8px; border-radius: 50%; background: var(--bv-limon); }
.bv-env-cierre .bv-lks-cierre-botones .bv-btn svg { width: 16px; height: 16px; }

@media (max-width: 1024px) {
  .bv-env-claves { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 36px; }
  .bv-env-metodos { grid-template-columns: minmax(0, 1fr); max-width: 620px; margin: 0 auto; }
  .bv-env-camino, .bv-env-pasos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bv-env-condiciones { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
  .bv-env-claves { gap: 28px 16px; }
  .bv-env-claves strong { font-size: 19px; }
  .bv-env-claves span { font-size: 13px; }
  .bv-env-metodo { padding: 26px 20px 22px; }
  .bv-env-precios div { grid-template-columns: 84px minmax(0, 1fr); }
  .bv-env-camino, .bv-env-pasos, .bv-env-condiciones { grid-template-columns: minmax(0, 1fr); }
  .bv-env-camino { gap: 22px; }
}

/* Checkout: aviso de que guardamos el carrito (inc/carritos.php, Ley 25.326), chico y discreto debajo del email */
.woocommerce-checkout #billing_email_field .description { display: block; margin-top: 6px; padding: 0; background: none; font-family: var(--bv-sans); font-size: 11.5px; line-height: 1.4; color: var(--bv-texto-2); }
.woocommerce-checkout #billing_email_field .description::before { display: none; }
/* Aviso de usar un mail real (inc/mis-pedidos.php): cartelito sobre el aviso del carrito */
.woocommerce-checkout #billing_email_field .bv-ck-mail-real { display: block; margin: 2px 0 0; padding: 8px 10px 8px 12px; border-left: 2px solid var(--bv-limon); background: var(--bv-marfil); font-size: 12px; line-height: 1.45; color: var(--bv-azul); }
.woocommerce-checkout #billing_email_field .bv-ck-mail-carrito { display: block; margin-top: 5px; }


/* ---------- Página de gracias (woocommerce/checkout/thankyou.php + inc/gracias.php): "Estado del pedido" ---------- */
body.bv-gracias-pagina .main-page-wrapper { overflow-x: clip; background: var(--bv-marfil); }
body.bv-gracias-pagina .wd-content-layout { padding-top: 0 !important; padding-bottom: 0 !important; }
body.bv-gracias-pagina .woocommerce-notices-wrapper:empty { display: none; }
.bv-gr { --bv-gr-paso: 0.48s; --bv-gr-inicio: 0.3s; margin: 0; }
.woocommerce-order.bv-gr { max-width: none !important; margin: 0 !important; } /* Woodmart la limita a 800 px */
.bv-gr .bv-etiqueta { display: block; font-size: 10.5px; line-height: 1.3; }
.bv-gr-h2 { margin: 8px 0 6px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(30px, 3.4vw, 42px); line-height: 1.05; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-gr-h3 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 24px; line-height: 1.1; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-gr-ico { flex: 0 0 auto; }

.bv-gr-hero { position: relative; overflow: hidden; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); background: var(--bv-azul); color: var(--bv-crema); text-align: center; padding: clamp(40px, 6vw, 66px) 16px clamp(88px, 10vw, 112px); }
.bv-gr-hero::after { content: ''; position: absolute; left: 50%; top: -220px; width: 620px; height: 620px; transform: translateX(-50%); border-radius: 50%; border: 1px solid rgba(232, 185, 35, 0.18); pointer-events: none; }
.bv-gr-pastilla { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border: 1px solid rgba(232, 185, 35, 0.55); color: var(--bv-limon); font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; }
.bv-gr-titulo { margin: 16px auto 8px; max-width: 18ch; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(36px, 5vw, 58px); line-height: 1.02; color: var(--bv-crema); text-transform: none; letter-spacing: 0; }
.bv-gr-hero p { margin: 0 auto; max-width: 48ch; font-family: var(--bv-sans); font-size: 14.5px; font-weight: 300; line-height: 1.6; color: rgba(251, 249, 246, 0.85); }

/* Seguimiento: se llena solo al entrar (animación solo con CSS; el estado final ya viene del servidor) */
.bv-gr-seguimiento { list-style: none; margin: 32px auto 0; padding: 0; max-width: 760px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); position: relative; z-index: 1; }
.bv-gr-seguimiento li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; margin: 0; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(251, 249, 246, 0.55); }
.bv-gr-seguimiento li::before, .bv-gr-seguimiento li::after { content: ''; position: absolute; top: 15px; left: calc(-50% + 20px); right: calc(50% + 20px); height: 2px; }
.bv-gr-seguimiento li::before { background: rgba(251, 249, 246, 0.16); }
.bv-gr-seguimiento li::after { background: var(--bv-limon); transform: scaleX(0); transform-origin: left center; }
.bv-gr-seguimiento li:first-child::before, .bv-gr-seguimiento li:first-child::after { display: none; }
.bv-gr-n { position: relative; z-index: 1; width: 32px; height: 32px; border-radius: 50%; border: 1px solid rgba(251, 249, 246, 0.3); background: var(--bv-azul); display: flex; align-items: center; justify-content: center; font-size: 12px; color: rgba(251, 249, 246, 0.6); }
.bv-gr-n b { font-weight: 500; }
.bv-gr-n svg { position: absolute; color: var(--bv-azul); }
.bv-gr-n svg path { stroke-dasharray: 22; stroke-dashoffset: 22; }
.bv-gr-seguimiento small { display: block; min-height: 1.2em; margin-top: -4px; font-family: var(--bv-serif); font-style: italic; font-size: 13.5px; font-weight: 500; letter-spacing: 0; text-transform: none; color: rgba(251, 249, 246, 0.72); }
.bv-gr-seguimiento li[data-estado="hecho"], .bv-gr-seguimiento li[data-estado="ahora"] { color: var(--bv-crema); animation: bv-gr-texto 0.3s ease both; animation-delay: calc(var(--bv-gr-inicio) + var(--i) * var(--bv-gr-paso)); }
.bv-gr-seguimiento li[data-estado="hecho"]::after, .bv-gr-seguimiento li[data-estado="ahora"]::after { transform: scaleX(1); animation: bv-gr-linea 0.4s ease both; animation-delay: calc(var(--bv-gr-inicio) + var(--i) * var(--bv-gr-paso) - 0.3s); }
.bv-gr-seguimiento li[data-estado="hecho"] .bv-gr-n { background: var(--bv-limon); border-color: var(--bv-limon); animation: bv-gr-hecho 0.45s cubic-bezier(0.2, 1.5, 0.4, 1) both; animation-delay: calc(var(--bv-gr-inicio) + var(--i) * var(--bv-gr-paso)); }
.bv-gr-seguimiento li[data-estado="hecho"] .bv-gr-n b { opacity: 0; animation: bv-gr-fuera 0.2s ease both; animation-delay: calc(var(--bv-gr-inicio) + var(--i) * var(--bv-gr-paso)); }
.bv-gr-seguimiento li[data-estado="hecho"] .bv-gr-n svg path { stroke-dashoffset: 0; animation: bv-gr-tilde 0.35s ease both; animation-delay: calc(var(--bv-gr-inicio) + var(--i) * var(--bv-gr-paso) + 0.15s); }
.bv-gr-seguimiento li[data-estado="ahora"] .bv-gr-n { border-color: var(--bv-limon); color: var(--bv-limon); animation: bv-gr-pop 0.45s cubic-bezier(0.2, 1.5, 0.4, 1) both, bv-gr-aro 2.2s ease-out infinite; animation-delay: calc(var(--bv-gr-inicio) + var(--i) * var(--bv-gr-paso)), calc(var(--bv-gr-inicio) + var(--i) * var(--bv-gr-paso) + 0.5s); }
.bv-gr-seguimiento li[data-estado="ahora"] small { color: var(--bv-limon); }
@keyframes bv-gr-texto { from { color: rgba(251, 249, 246, 0.55); } to { color: var(--bv-crema); } }
@keyframes bv-gr-linea { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes bv-gr-hecho { from { background: var(--bv-azul); border-color: rgba(251, 249, 246, 0.3); transform: scale(0.6); } to { background: var(--bv-limon); border-color: var(--bv-limon); transform: scale(1); } }
@keyframes bv-gr-pop { from { transform: scale(0.6); border-color: rgba(251, 249, 246, 0.3); } to { transform: scale(1); border-color: var(--bv-limon); } }
@keyframes bv-gr-fuera { from { opacity: 1; } to { opacity: 0; } }
@keyframes bv-gr-tilde { from { stroke-dashoffset: 22; } to { stroke-dashoffset: 0; } }
@keyframes bv-gr-aro { 0% { box-shadow: 0 0 0 0 rgba(232, 185, 35, 0.55); } 80%, 100% { box-shadow: 0 0 0 12px rgba(232, 185, 35, 0); } }

/* Pagar: lo principal de la página, apoyado sobre la banda azul */
.bv-gr-contenido { max-width: 1140px; margin: 0 auto; padding-bottom: clamp(40px, 5vw, 64px); position: relative; }
.bv-gr-pagar { position: relative; z-index: 2; margin-top: clamp(-64px, -6vw, -48px); background: var(--bv-blanco); border: 1px solid rgba(232, 185, 35, 0.7); border-top: 5px solid var(--bv-limon); box-shadow: 0 34px 60px -34px rgba(12, 31, 51, 0.45); padding: clamp(22px, 3vw, 38px); }
.bv-gr-pagar[data-bv-llamar] { animation: bv-gr-llamar 1.4s ease-out 2; animation-delay: calc(var(--bv-gr-inicio) + var(--bv-gr-pasos) * var(--bv-gr-paso) + 0.15s); }
@keyframes bv-gr-llamar { 0% { box-shadow: 0 34px 60px -34px rgba(12, 31, 51, 0.45), 0 0 0 0 rgba(232, 185, 35, 0.6); } 70%, 100% { box-shadow: 0 34px 60px -34px rgba(12, 31, 51, 0.45), 0 0 0 18px rgba(232, 185, 35, 0); } }
.bv-gr-pagar-cab { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 16px 40px; align-items: start; }
.bv-gr-pagar-cab p, .bv-gr-aprobado p { margin: 0; font-family: var(--bv-sans); font-size: 14px; font-weight: 300; line-height: 1.55; color: var(--bv-texto-2); }
.bv-gr-monto { font-family: var(--bv-sans); font-style: normal; font-weight: 500; font-size: 0.82em; color: var(--bv-precio); white-space: nowrap; }
.bv-gr-mini-pasos { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 10px; }
.bv-gr-mini-pasos li { display: flex; align-items: center; gap: 12px; margin: 0; font-family: var(--bv-sans); font-size: 13.5px; font-weight: 400; color: var(--bv-azul); }
.bv-gr-mini-pasos b { width: 26px; height: 26px; border-radius: 50%; background: var(--bv-limon); color: var(--bv-azul); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 500; flex: 0 0 auto; }
.bv-gr-campos { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; margin-top: 26px; }
.bv-gr-campo { background: #FFFBEF; border: 1px dashed rgba(184, 144, 26, 0.6); padding: 18px 20px; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.bv-gr-campo-rot { font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); }
.bv-gr-campo-valor { font-family: var(--bv-sans); font-size: clamp(18px, 2vw, 23px); font-weight: 500; letter-spacing: 0.06em; color: var(--bv-azul); overflow-wrap: anywhere; line-height: 1.25; user-select: all; }
.bv-gr .bv-gr-copiar { align-self: start; min-height: 44px; height: auto; padding: 0 20px; gap: 9px; border-radius: 0; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; box-shadow: none; cursor: pointer; }
.bv-gr .bv-gr-copiar.bv-btn-azul { background: var(--bv-azul); color: var(--bv-crema); border: 0; }
.bv-gr .bv-gr-copiar.bv-btn-borde { background: transparent; color: var(--bv-azul); border: 1px solid var(--bv-azul); }
.bv-gr .bv-gr-copiar:hover { background: var(--bv-azul-oscuro); color: var(--bv-crema); }
.bv-gr .bv-gr-copiar.bv-copiado { background: var(--bv-limon); border-color: var(--bv-limon); color: var(--bv-azul); }
.bv-gr-pagar-pie { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--bv-arena); }
.bv-gr-titular { margin: 0; font-family: var(--bv-sans); font-size: 13px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-gr-titular b { font-weight: 500; color: var(--bv-azul); }
.bv-gr .bv-gr-comprobante { gap: 10px; }
.bv-gr-pagar-mail { display: flex; align-items: center; gap: 10px; margin: 16px 0 0; font-family: var(--bv-sans); font-size: 12.5px; font-weight: 300; color: var(--bv-texto-2); }
.bv-gr-pagar-mail .bv-gr-ico { color: var(--bv-dorado); }
.bv-gr-pagar-mail b { font-weight: 500; color: var(--bv-azul); }
.bv-gr-aprobado { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 20px; align-items: center; }
.bv-gr-sello { width: 58px; height: 58px; border-radius: 50%; background: var(--bv-azul); color: var(--bv-limon); display: flex; align-items: center; justify-content: center; }
.bv-gr-sello-alerta { background: var(--bv-arena); color: var(--bv-azul); }
.bv-gr-aprobado p em { font-family: var(--bv-serif); font-style: italic; font-weight: 600; font-size: 17px; color: var(--bv-azul); }
.bv-gr-monto-mp { text-align: right; font-family: var(--bv-sans); }
.bv-gr-monto-mp b { display: block; font-size: 30px; font-weight: 500; color: var(--bv-precio); }
.bv-gr-monto-mp span { font-size: 12px; font-weight: 300; color: var(--bv-texto-2); }
.bv-gr-extra:empty { display: none; }
.bv-gr-extra { margin-top: 18px; }

/* Tarjetas */
.bv-gr-grilla { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 18px; align-items: start; margin-top: 18px; }
.bv-gr-col { display: grid; gap: 18px; }
.bv-gr-tarjeta { background: var(--bv-blanco); border: 1px solid var(--bv-linea); padding: clamp(18px, 2.4vw, 28px); }
.bv-gr-tarjeta-cab { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.bv-gr-circ { width: 38px; height: 38px; border-radius: 50%; background: var(--bv-marfil); color: var(--bv-azul); display: flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.bv-gr-tarjeta-cab .bv-etiqueta { margin-bottom: 2px; }
.bv-gr-item { display: grid; grid-template-columns: 58px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--bv-arena); }
.bv-gr-item-foto { display: block; width: 58px; aspect-ratio: 3 / 4; overflow: hidden; background: var(--bv-arena); }
.bv-gr-item-foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bv-gr-item-nombre { display: block; font-family: var(--bv-serif); font-weight: 500; font-size: 19px; line-height: 1.15; color: var(--bv-azul); text-decoration: none; }
a.bv-gr-item-nombre:hover { color: var(--bv-dorado); }
.bv-gr-item small { display: block; margin-top: 3px; font-family: var(--bv-sans); font-size: 12px; font-weight: 300; color: var(--bv-texto-2); }
.bv-gr-item-precio, .bv-gr-item-precio .amount { font-family: var(--bv-sans); font-size: 15px; font-weight: 500; color: var(--bv-precio); white-space: nowrap; }
.bv-gr-filas { margin-top: 12px; font-family: var(--bv-sans); }
.bv-gr-filas > div { display: flex; justify-content: space-between; gap: 16px; padding: 6px 0; font-size: 13px; font-weight: 300; color: var(--bv-texto-2); }
.bv-gr-filas b, .bv-gr-filas b .amount { font-weight: 500; color: var(--bv-azul); text-align: right; }
.bv-gr-filas .bv-gr-desc b, .bv-gr-filas .bv-gr-desc b .amount { color: var(--bv-precio); }
.bv-gr-filas .bv-gr-total { margin-top: 8px; padding-top: 14px; border-top: 1px solid var(--bv-azul); align-items: baseline; }
.bv-gr-filas .bv-gr-total span { font-size: 10.5px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-azul); }
.bv-gr-filas .bv-gr-total b, .bv-gr-filas .bv-gr-total b .amount { font-size: 26px; color: var(--bv-precio); }
.bv-gr-linea { display: flex; gap: 12px; align-items: flex-start; padding: 10px 0; border-top: 1px solid var(--bv-arena); font-family: var(--bv-sans); font-size: 13px; font-weight: 300; line-height: 1.55; color: var(--bv-texto-2); }
.bv-gr-tarjeta-cab + .bv-gr-linea { border-top: 0; padding-top: 0; }
.bv-gr-linea .bv-gr-ico { color: var(--bv-dorado); margin-top: 2px; }
.bv-gr-linea b { display: block; font-weight: 500; color: var(--bv-azul); }
.bv-gr-datos { margin: 0; font-family: var(--bv-sans); font-size: 13px; font-weight: 300; line-height: 1.7; color: var(--bv-texto-2); }
.bv-gr-datos b { font-weight: 500; color: var(--bv-azul); }

/* Riviera Club: rectángulo a lo ancho, tipo franja de footer */
.bv-gr-club { margin-top: 18px; background: var(--bv-azul); color: var(--bv-crema); padding: 6px; position: relative; }
.bv-gr-club::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: var(--bv-rayas); opacity: 0.9; }
.bv-gr-club-in { border: 1px solid rgba(232, 185, 35, 0.45); padding: clamp(20px, 2.4vw, 28px) clamp(18px, 3vw, 36px); display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 18px 36px; align-items: center; }
.bv-gr-club .bv-etiqueta { color: var(--bv-limon); }
.bv-gr-club .bv-gr-h3 { margin: 6px 0 4px; color: var(--bv-crema); font-size: clamp(24px, 2.4vw, 30px); }
.bv-gr-club p { margin: 0; font-family: var(--bv-sans); font-size: 13px; font-weight: 300; line-height: 1.5; color: rgba(251, 249, 246, 0.85); }
.bv-gr-codigo { display: flex; gap: 5px; }
.bv-gr-codigo span { width: 26px; height: 32px; border: 1px solid rgba(232, 185, 35, 0.6); display: flex; align-items: center; justify-content: center; font-family: var(--bv-serif); font-size: 18px; color: var(--bv-limon); }
.bv-gr-club-boton { display: inline-flex; align-items: center; gap: 10px; border: 1px solid var(--bv-limon); color: var(--bv-limon); text-decoration: none; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; padding: 13px 18px; white-space: nowrap; transition: background 0.2s, color 0.2s; }
.bv-gr-club-boton:hover { background: var(--bv-limon); color: var(--bv-azul); }

/* Seguí inspirándote */
.bv-gr-seguir { max-width: 1140px; margin: 0 auto; padding-bottom: clamp(40px, 5vw, 64px); }
.bv-gr-seguir .bv-gr-h3 { margin: 6px 0 16px; font-size: 30px; }
.bv-gr-seguir-in { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bv-gr-look { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--bv-arena); text-decoration: none; }
.bv-gr-look img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.bv-gr-look:hover img { transform: scale(1.04); }
.bv-gr-look::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(12, 31, 51, 0) 50%, rgba(12, 31, 51, 0.7)); }
.bv-gr-look span { position: absolute; left: 16px; bottom: 14px; z-index: 1; color: var(--bv-crema); font-family: var(--bv-serif); font-style: italic; font-size: 22px; }

@media (max-width: 900px) {
  .bv-gr-pagar-cab, .bv-gr-grilla { grid-template-columns: 1fr; }
  .bv-gr .bv-gr-copiar, .bv-gr .bv-gr-comprobante { width: 100%; justify-content: center; }
  .bv-gr-aprobado { grid-template-columns: auto minmax(0, 1fr); }
  .bv-gr-aprobado .bv-btn, .bv-gr-monto-mp { grid-column: 1 / -1; }
  .bv-gr-monto-mp { text-align: left; border-top: 1px solid var(--bv-arena); padding-top: 12px; }
  .bv-gr-seguimiento li { font-size: 8.5px; letter-spacing: 0.08em; text-align: center; }
  .bv-gr-seguimiento small { font-size: 11.5px; }
  .bv-gr-seguimiento li::before, .bv-gr-seguimiento li::after { left: calc(-50% + 18px); right: calc(50% + 18px); }
  .bv-gr-club-in { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .bv-gr-club-boton { white-space: normal; justify-content: center; width: 100%; }
  .bv-gr-seguir-in { gap: 8px; }
  .bv-gr-look span { font-size: 16px; left: 10px; bottom: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .bv-gr-seguimiento li, .bv-gr-seguimiento li::after, .bv-gr-seguimiento .bv-gr-n, .bv-gr-seguimiento .bv-gr-n b, .bv-gr-seguimiento .bv-gr-n svg path, .bv-gr-pagar { animation: none !important; }
}


/* ---------- Mi cuenta (woocommerce/myaccount/ + inc/mi-cuenta.php): opción 3 "Panel", elegida por Juan el 26/09/2026 ---------- */
body.bv-mc-pagina .main-page-wrapper { overflow-x: clip; background: var(--bv-marfil); }
body.bv-mc-pagina .wd-content-layout { padding-top: 0 !important; padding-bottom: 0 !important; }
body.bv-mc-sin-sesion .wd-content-layout { padding-top: clamp(28px, 5vw, 64px) !important; padding-bottom: clamp(40px, 6vw, 72px) !important; }
.bv-mc { --bv-mc-ancho: 1180px; font-family: var(--bv-sans); color: var(--bv-texto); }
.bv-mc .bv-etiqueta, .bv-mc-ingreso .bv-etiqueta, .bv-mc-acceso .bv-etiqueta { display: block; font-size: 10.5px; line-height: 1.3; }
.bv-mc-circ { width: 38px; height: 38px; border-radius: 50%; background: var(--bv-marfil); color: var(--bv-azul); display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }

/* Banda azul con saludo y números */
.bv-mc-banda { position: relative; overflow: hidden; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); background: var(--bv-azul); color: var(--bv-crema); }
.bv-mc-banda::after { content: ''; position: absolute; right: -120px; top: -170px; width: 440px; height: 440px; border-radius: 50%; border: 1px solid rgba(232, 185, 35, 0.2); pointer-events: none; }
.bv-mc-banda-in { position: relative; z-index: 1; max-width: var(--bv-mc-ancho); margin: 0 auto; padding: clamp(30px, 4vw, 48px) 15px clamp(66px, 7vw, 84px); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px 30px; }
.bv-mc-banda .bv-etiqueta { color: var(--bv-limon); }
.bv-mc-hola { margin: 6px 0 4px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(36px, 4.6vw, 52px); line-height: 1.02; color: var(--bv-crema); text-transform: none; letter-spacing: 0; }
.bv-mc-saludo p { margin: 0; font-size: 13.5px; font-weight: 300; color: rgba(251, 249, 246, 0.8); }
.bv-mc-saludo p a { color: var(--bv-crema); border-bottom: 1px solid rgba(251, 249, 246, 0.4); text-decoration: none; }
.bv-mc-saludo p a:hover { color: var(--bv-limon); border-color: var(--bv-limon); }
.bv-mc-numeros { display: flex; gap: 26px; }
.bv-mc-numeros a { display: block; color: var(--bv-crema); text-decoration: none; }
.bv-mc-numeros b { display: block; font-family: var(--bv-serif); font-size: 34px; font-weight: 500; line-height: 1; color: var(--bv-limon); font-variant-numeric: lining-nums; }
.bv-mc-numeros span { font-size: 10px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(251, 249, 246, 0.75); }
.bv-mc-numeros a:hover span { color: var(--bv-crema); }

/* Accesos: tarjetas blancas apoyadas sobre la banda */
.bv-mc .bv-mc-nav { position: relative; z-index: 2; max-width: var(--bv-mc-ancho); margin: -30px auto 0; padding: 0; background: none; border: 0; width: auto; }
.bv-mc .bv-mc-nav ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; border: 0; }
.bv-mc .bv-mc-nav li { margin: 0; padding: 0; border: 0; }
body .bv-mc .bv-mc-nav.woocommerce-MyAccount-navigation ul > li > a { display: inline-flex; align-items: center; gap: 9px; min-height: 0; margin: 0; padding: 13px 17px; background: var(--bv-blanco); border: 1px solid var(--bv-linea); border-radius: 0; box-shadow: 0 12px 20px -16px rgba(12, 31, 51, 0.35); font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-texto-2); text-decoration: none; white-space: nowrap; transition: border-color 0.2s, color 0.2s; }
body .bv-mc .bv-mc-nav.woocommerce-MyAccount-navigation ul > li > a svg { color: var(--bv-dorado); }
body .bv-mc .bv-mc-nav.woocommerce-MyAccount-navigation ul > li > a:hover { border-color: var(--bv-azul); color: var(--bv-azul); background: var(--bv-blanco); }
body .bv-mc .bv-mc-nav.woocommerce-MyAccount-navigation ul > li > a[aria-current="page"] { border-color: var(--bv-limon); color: var(--bv-azul); box-shadow: inset 0 -2px 0 var(--bv-limon), 0 12px 20px -16px rgba(12, 31, 51, 0.35); background: var(--bv-blanco); }

/* Contenido */
.bv-mc .bv-mc-contenido { max-width: var(--bv-mc-ancho); margin: 0 auto; padding: 24px 0 clamp(44px, 5vw, 70px); width: auto; float: none; }
.bv-mc .bv-mc-contenido > .woocommerce-notices-wrapper:not(:empty) { margin-bottom: 18px; }
/* Avisos: blancos sobre el marfil de la cuenta (también los que Woo imprime fuera del contenedor, como el de confirmar el email) */
body.bv-mc-pagina :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 0 0 18px; padding: 14px 18px 14px 46px; background: var(--bv-blanco) !important; color: var(--bv-azul) !important; border: 1px solid var(--bv-linea) !important; border-left: 3px solid var(--bv-limon) !important; border-radius: 0 !important; font-family: var(--bv-sans); font-size: 13px; font-weight: 400; line-height: 1.5; }
body.bv-mc-pagina .woocommerce-error { border-left-color: var(--bv-bordo) !important; }
body.bv-mc-pagina :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before { color: var(--bv-dorado) !important; }
body.bv-mc-pagina :is(.woocommerce-message, .woocommerce-info) .button.wc-forward { order: 2; min-height: 0; height: auto; margin: 0; padding: 0 0 3px; background: none; border: 0; border-bottom: 1px solid currentColor; border-radius: 0; box-shadow: none; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-azul); }
body.bv-mc-pagina :is(.woocommerce-message, .woocommerce-info) .button.wc-forward:hover { color: var(--bv-dorado); background: none; }
.bv-mc-cab { margin: 4px 0 22px; }
.bv-mc-titulo { margin: 6px 0 6px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(32px, 3.8vw, 44px); line-height: 1.05; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-mc-bajada, .bv-mc-form-p { margin: 0; max-width: 60ch; font-size: 14px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-mc-nota { margin: 0; font-size: 13px; font-weight: 300; line-height: 1.55; color: var(--bv-texto-2); }
.bv-mc-volver { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 12px; font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-texto-2); text-decoration: none; }
.bv-mc-volver:hover { color: var(--bv-azul); }
.bv-mc-enlace { display: inline-flex; align-items: center; gap: 6px; padding-bottom: 3px; border-bottom: 1px solid currentColor; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-azul); text-decoration: none; white-space: nowrap; }
.bv-mc-enlace:hover { color: var(--bv-dorado); }
.bv-mc-sub { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; margin: 30px 0 14px; }
.bv-mc-sub h3 { margin: 4px 0 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 26px; line-height: 1.1; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }

/* Botones (prefijo por la base de Woodmart, que carga después) */
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; height: auto; padding: 0 20px; border: 0; border-radius: 0; box-shadow: none; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; line-height: 1.2; letter-spacing: 0.2em; text-transform: uppercase; text-decoration: none; white-space: nowrap; cursor: pointer; transition: background 0.2s, color 0.2s, border-color 0.2s; }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn-azul { background: var(--bv-azul); color: var(--bv-crema); }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn-azul:hover { background: var(--bv-azul-oscuro); color: var(--bv-crema); }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn-limon { background: var(--bv-limon); color: var(--bv-azul); }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn-limon:hover { background: #d6a91b; color: var(--bv-azul); }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn-borde { background: transparent; color: var(--bv-azul); border: 1px solid var(--bv-azul); }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn-borde:hover { background: var(--bv-azul); color: var(--bv-crema); }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn.bv-copiado { background: var(--bv-limon); border-color: var(--bv-limon); color: var(--bv-azul); }
body :is(.bv-mc, .bv-mc-ingreso, .bv-mc-acceso) .bv-mc-btn-ancho { width: 100%; }

/* Pastillas de estado */
.bv-mc-chip { display: inline-flex; align-items: center; padding: 4px 9px; border: 1px solid var(--bv-linea); font-family: var(--bv-sans); font-size: 9.5px; font-weight: 500; line-height: 1.3; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-texto-2); white-space: nowrap; }
.bv-mc-chip-li { border-color: var(--bv-limon); background: #FFF7DA; color: var(--bv-azul); }
.bv-mc-chip-ok { border-color: #CFE0D2; background: #F1F7F2; color: #2F5B3A; }
.bv-mc-chip-az { border-color: var(--bv-azul); color: var(--bv-azul); }
.bv-mc-chip-gris { background: var(--bv-crema); color: #6B7480; }

/* Seguimiento claro (misma lógica que la página de gracias; se llena al entrar) */
.bv-mc-seg { --bv-mc-paso: 0.32s; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bv-mc-seg li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; margin: 0; font-family: var(--bv-sans); font-size: 9.5px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: #8A94A0; text-align: center; }
.bv-mc-seg li::before, .bv-mc-seg li::after { content: ''; position: absolute; top: 13px; left: calc(-50% + 17px); right: calc(50% + 17px); height: 2px; }
.bv-mc-seg li::before { background: var(--bv-arena); }
.bv-mc-seg li::after { background: var(--bv-limon); transform: scaleX(0); transform-origin: left center; }
.bv-mc-seg li:first-child::before, .bv-mc-seg li:first-child::after { display: none; }
.bv-mc-seg-n { position: relative; z-index: 1; width: 26px; height: 26px; border-radius: 50%; border: 1px solid var(--bv-linea); background: var(--bv-blanco); display: flex; align-items: center; justify-content: center; font-size: 11px; color: #8A94A0; }
.bv-mc-seg-n b { font-weight: 500; }
.bv-mc-seg-n svg { position: absolute; opacity: 0; stroke-width: 2; }
.bv-mc-seg small { display: block; min-height: 1.1em; margin-top: -3px; font-family: var(--bv-serif); font-style: italic; font-size: 12.5px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--bv-texto-2); }
.bv-mc-seg li[data-estado="hecho"], .bv-mc-seg li[data-estado="ahora"] { color: var(--bv-azul); }
.bv-mc-seg li[data-estado="hecho"]::after, .bv-mc-seg li[data-estado="ahora"]::after { transform: scaleX(1); animation: bv-gr-linea 0.35s ease both; animation-delay: calc(0.15s + var(--i) * var(--bv-mc-paso) - 0.2s); }
.bv-mc-seg li[data-estado="hecho"] .bv-mc-seg-n { background: var(--bv-limon); border-color: var(--bv-limon); color: var(--bv-azul); animation: bv-mc-pop 0.4s cubic-bezier(0.2, 1.5, 0.4, 1) both; animation-delay: calc(0.15s + var(--i) * var(--bv-mc-paso)); }
.bv-mc-seg li[data-estado="hecho"] .bv-mc-seg-n b { opacity: 0; }
.bv-mc-seg li[data-estado="hecho"] .bv-mc-seg-n svg { opacity: 1; color: var(--bv-azul); }
.bv-mc-seg li[data-estado="ahora"] .bv-mc-seg-n { border-color: var(--bv-limon); color: var(--bv-azul); font-weight: 600; animation: bv-mc-pop 0.4s cubic-bezier(0.2, 1.5, 0.4, 1) both, bv-gr-aro 2.2s ease-out infinite; animation-delay: calc(0.15s + var(--i) * var(--bv-mc-paso)), calc(0.6s + var(--i) * var(--bv-mc-paso)); }
.bv-mc-seg li[data-estado="ahora"] small { color: var(--bv-precio); }
@keyframes bv-mc-pop { from { transform: scale(0.6); } to { transform: scale(1); } }

/* Recuadro de pago pendiente */
.bv-mc-transf { margin-top: 20px; background: #FFFBEF; border: 1px dashed rgba(184, 144, 26, 0.6); border-left: 3px solid var(--bv-limon); padding: 16px 18px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px 20px; align-items: center; }
.bv-mc-transf strong { display: block; margin-bottom: 2px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.15; color: var(--bv-azul); }
.bv-mc-transf p { margin: 0; font-size: 13px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-mc-transf-alias { display: inline-block; margin-top: 8px; font-size: 14px; font-weight: 500; letter-spacing: 0.06em; color: var(--bv-azul); user-select: all; }
.bv-mc-transf-datos { margin: 12px 0 0; display: flex; flex-wrap: wrap; gap: 8px 26px; }
.bv-mc-transf-datos div { margin: 0; }
.bv-mc-transf-datos dt { font-size: 10px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); }
.bv-mc-transf-datos dd { margin: 2px 0 0; font-size: 15px; font-weight: 500; letter-spacing: 0.04em; color: var(--bv-azul); overflow-wrap: anywhere; user-select: all; }
.bv-mc-transf-acc { display: flex; flex-wrap: wrap; gap: 8px; }
body .bv-mc .bv-mc-transf-acc .bv-mc-btn { min-height: 40px; padding: 0 14px; font-size: 10px; }

/* Resumen: tarjetas */
.bv-mc-grilla { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.bv-mc-t { min-width: 0; display: flex; flex-direction: column; background: var(--bv-blanco); border: 1px solid var(--bv-linea); padding: clamp(18px, 2.2vw, 24px); }
.bv-mc-t-2 { grid-column: span 2; }
.bv-mc-t-cab { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.bv-mc-t-cab h3 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.1; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-mc-t-cab .bv-etiqueta { margin-bottom: 2px; }
.bv-mc-t-cab > .bv-mc-chip, .bv-mc-t-cab > .bv-mc-enlace { margin-left: auto; }
.bv-mc-t-pie { margin-top: auto; padding-top: 16px; }
.bv-mc-t-club { padding: 0; border: 0; background: none; }
.bv-mc-dato { display: flex; gap: 10px; align-items: flex-start; padding: 9px 0; border-top: 1px solid var(--bv-arena); font-size: 13px; font-weight: 300; line-height: 1.55; color: var(--bv-texto-2); overflow-wrap: anywhere; }
.bv-mc-t-cab + .bv-mc-dato, .bv-mc-caja h4 + .bv-mc-dato { border-top: 0; padding-top: 0; }
.bv-mc-dato svg { color: var(--bv-dorado); margin-top: 2px; flex: 0 0 auto; }
.bv-mc-dato b { display: block; font-weight: 500; color: var(--bv-azul); }
.bv-mc-mini-ped { display: grid; }
.bv-mc-mini-ped a { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 10px 0; border-top: 1px solid var(--bv-arena); color: inherit; text-decoration: none; }
.bv-mc-mini-ped a:first-child { border-top: 0; padding-top: 0; }
.bv-mc-mini-ped a:hover b { color: var(--bv-dorado); }
.bv-mc-mini-foto { display: block; width: 44px; aspect-ratio: 3 / 4; overflow: hidden; background: var(--bv-arena); }
.bv-mc-mini-foto img, .bv-mc-mini-favs img, .bv-mc-item-foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bv-mc-mini-ped b { display: block; font-size: 13px; font-weight: 500; color: var(--bv-azul); }
.bv-mc-mini-ped small { font-size: 11.5px; font-weight: 300; color: var(--bv-texto-2); }
.bv-mc-mini-favs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.bv-mc-mini-favs a { display: block; aspect-ratio: 3 / 4; overflow: hidden; background: var(--bv-arena); }
.bv-mc-ayuda { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.bv-mc-ayuda a { display: flex; gap: 12px; align-items: flex-start; padding: 14px; border: 1px solid var(--bv-linea); color: inherit; text-decoration: none; transition: border-color 0.2s; }
.bv-mc-ayuda a:hover { border-color: var(--bv-azul); }
.bv-mc-ayuda .bv-mc-circ { width: 34px; height: 34px; }
.bv-mc-ayuda b { display: block; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 19px; line-height: 1.1; color: var(--bv-azul); }
.bv-mc-ayuda small { font-size: 12px; font-weight: 300; line-height: 1.45; color: var(--bv-texto-2); }

/* Riviera Club (tarjeta y franja) */
.bv-mc-club { position: relative; height: 100%; padding: 6px; background: var(--bv-azul); color: var(--bv-crema); }
.bv-mc-club::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: var(--bv-rayas); opacity: 0.9; }
.bv-mc-club-in { height: 100%; border: 1px solid rgba(232, 185, 35, 0.45); padding: 20px 22px; display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.bv-mc-club .bv-etiqueta { color: var(--bv-limon); }
.bv-mc-club h3 { margin: 6px 0 4px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 24px; line-height: 1.15; color: var(--bv-crema); text-transform: none; letter-spacing: 0; }
.bv-mc-club p { margin: 0; font-size: 12.5px; font-weight: 300; line-height: 1.5; color: rgba(251, 249, 246, 0.85); }
.bv-mc-club .bv-gr-club-boton { margin-top: auto; }
.bv-mc-club-franja { height: auto; margin-top: 16px; }
.bv-mc-club-franja .bv-mc-club-in { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 16px 32px; align-items: center; padding: clamp(18px, 2.4vw, 26px) clamp(18px, 3vw, 34px); }
.bv-mc-club-franja .bv-gr-club-boton { margin-top: 0; }

/* Bienvenida (sin pedidos) y prendas */
.bv-mc-bienv { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bv-mc-bienv-it { display: flex; flex-direction: column; gap: 8px; padding: 20px; background: var(--bv-blanco); border: 1px solid var(--bv-linea); }
.bv-mc-bienv-it .bv-mc-circ { width: 42px; height: 42px; margin-bottom: 4px; }
.bv-mc-bienv-it b { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 21px; line-height: 1.1; color: var(--bv-azul); }
.bv-mc-bienv-it small { font-size: 12.5px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-mc-prendas { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.bv-mc-prenda { position: relative; min-width: 0; display: flex; flex-direction: column; }
.bv-mc-prenda-foto { position: relative; display: block; aspect-ratio: 3 / 4; overflow: hidden; background: var(--bv-arena); }
.bv-mc-prenda-foto img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.6s ease; }
.bv-mc-prenda-foto:hover img { transform: scale(1.04); }
.bv-mc-agotada .bv-mc-prenda-foto img { opacity: 0.6; }
.bv-mc-prenda-et { position: absolute; left: 10px; top: 10px; padding: 4px 8px; background: var(--bv-blanco); font-size: 9.5px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-texto-2); }
.bv-mc-prenda-cor { position: absolute; right: 10px; top: 10px; width: 30px; height: 30px; border-radius: 50%; background: rgba(251, 249, 246, 0.94); color: var(--bv-azul); display: flex; align-items: center; justify-content: center; }
.bv-mc-prenda-cor svg { fill: var(--bv-azul); }
.bv-mc-prenda-nombre { display: block; margin-top: 10px; font-family: var(--bv-serif); font-weight: 500; font-size: 18px; line-height: 1.2; color: var(--bv-azul); text-decoration: none; }
.bv-mc-prenda-nombre:hover { color: var(--bv-dorado); }
.bv-mc-prenda-precio { margin-top: 2px; font-size: 14px; }
.bv-mc-prenda-precio .price { margin: 0; }
.bv-mc-prenda-acc { display: flex; align-items: center; gap: 12px; margin-top: auto; padding-top: 12px; }
body .bv-mc .bv-mc-prenda-acc .bv-mc-btn { flex: 1; min-height: 38px; padding: 0 12px; font-size: 10px; }
.bv-mc-quitar { margin: 0; }
body .bv-mc .bv-mc-quitar button { min-height: 0; height: auto; padding: 0 0 2px; background: none; border: 0; border-bottom: 1px solid var(--bv-linea); border-radius: 0; box-shadow: none; font-family: var(--bv-sans); font-size: 10px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-texto-2); cursor: pointer; }
body .bv-mc .bv-mc-quitar button:hover { color: var(--bv-azul); border-color: var(--bv-azul); background: none; }

/* Estados vacíos */
.bv-mc-vacio { text-align: center; padding: clamp(36px, 6vw, 60px) 20px; border: 1px dashed var(--bv-linea); background: var(--bv-crema); }
.bv-mc-vacio-ic { width: 76px; height: 76px; margin: 0 auto 18px; border-radius: 50%; background: var(--bv-blanco); box-shadow: inset 0 0 0 1px var(--bv-limon), 0 0 0 8px rgba(232, 185, 35, 0.12); display: flex; align-items: center; justify-content: center; color: var(--bv-azul); }
.bv-mc-vacio-ic svg { stroke-width: 1.1; }
.bv-mc-vacio h3 { margin: 0 0 8px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(28px, 3.2vw, 36px); line-height: 1.1; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-mc-vacio p { max-width: 46ch; margin: 0 auto 22px; font-size: 14px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-mc-vacio-acc { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.bv-mc-benef { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 24px; margin: 26px 0 0; padding: 18px 0 0; border-top: 1px solid var(--bv-linea); font-size: 12px; color: var(--bv-texto-2); }
.bv-mc-benef li { display: flex; align-items: center; gap: 8px; margin: 0; }
.bv-mc-benef svg { color: var(--bv-dorado); }

/* Mis pedidos */
.bv-mc-pedidos { border-top: 1px solid var(--bv-linea); }
.bv-mc-ped { position: relative; display: grid; grid-template-columns: 96px minmax(0, 1fr) 150px 130px 250px; gap: 18px; align-items: center; padding: 16px 8px; border-bottom: 1px solid var(--bv-linea); transition: background 0.2s; }
.bv-mc-ped:hover { background: var(--bv-crema); }
.bv-mc-ped-fotos { display: flex; }
.bv-mc-ped-fotos img { width: 42px; aspect-ratio: 3 / 4; object-fit: cover; background: var(--bv-arena); border: 2px solid var(--bv-marfil); margin-right: -12px; }
.bv-mc-ped-info { color: inherit; text-decoration: none; }
.bv-mc-ped-info::after { content: ''; position: absolute; inset: 0; }
.bv-mc-ped-info b { display: block; font-family: var(--bv-serif); font-weight: 600; font-size: 19px; line-height: 1.15; color: var(--bv-azul); }
.bv-mc-ped-info small { font-size: 12px; font-weight: 300; color: var(--bv-texto-2); }
.bv-mc-ped-total, .bv-mc-ped-total .amount { font-size: 15px; font-weight: 500; color: var(--bv-precio); text-align: right; }
.bv-mc-ped-acc { position: relative; z-index: 1; display: flex; align-items: center; justify-content: flex-end; gap: 14px; }
body .bv-mc .bv-mc-ped-acc .bv-mc-btn { min-height: 36px; padding: 0 14px; font-size: 10px; }
.bv-mc-ped-apagado { opacity: 0.6; }
.bv-mc-paginas { display: flex; justify-content: space-between; gap: 12px; margin-top: 20px; }

/* Detalle del pedido */
.bv-mc-det-cab { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 12px; margin-bottom: 18px; }
.bv-mc-det-seg, .bv-mc-caja { background: var(--bv-blanco); border: 1px solid var(--bv-linea); padding: clamp(18px, 2.4vw, 26px); }
.bv-mc-det-grilla { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 16px; margin-top: 16px; align-items: start; }
.bv-mc-det-col { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.bv-mc-caja h4 { margin: 0 0 10px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.15; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-mc-item { display: grid; grid-template-columns: 50px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 11px 0; border-bottom: 1px solid var(--bv-arena); }
.bv-mc-item-foto { display: block; width: 50px; aspect-ratio: 3 / 4; overflow: hidden; background: var(--bv-arena); }
.bv-mc-item-nombre { display: block; font-family: var(--bv-serif); font-weight: 600; font-size: 17px; line-height: 1.2; color: var(--bv-azul); text-decoration: none; }
a.bv-mc-item-nombre:hover { color: var(--bv-dorado); }
.bv-mc-item small { font-size: 12px; font-weight: 300; color: var(--bv-texto-2); }
.bv-mc-item-precio, .bv-mc-item-precio .amount { font-size: 14px; font-weight: 500; color: var(--bv-precio); white-space: nowrap; }
.bv-mc-novedades { margin-top: 16px; }
.bv-mc-novedades ol { list-style: none; margin: 0; padding: 0; }
.bv-mc-novedades li { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 12px; margin: 0; padding: 10px 0; border-top: 1px solid var(--bv-arena); font-size: 13.5px; font-weight: 300; line-height: 1.55; color: var(--bv-texto-2); }
.bv-mc-novedades li:first-child { border-top: 0; padding-top: 0; }
.bv-mc-novedades time { font-family: var(--bv-serif); font-style: italic; font-size: 14px; font-weight: 500; color: var(--bv-azul); }
.bv-mc-novedades li p { margin: 0 0 6px; }
.bv-mc-novedades li p:last-child { margin-bottom: 0; }
.bv-mc-cambio { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 14px; margin-top: 16px; padding: 18px 20px; background: var(--bv-blanco); border-left: 3px solid var(--bv-limon); }
.bv-mc-cambio b { display: block; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 21px; color: var(--bv-azul); }
.bv-mc-cambio small { font-size: 12.5px; font-weight: 300; color: var(--bv-texto-2); }
.bv-mc-extra:empty { display: none; }
.bv-mc-extra { margin-top: 16px; }

/* Direcciones */
.bv-mc-dirs { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
.bv-mc-dir { display: flex; flex-direction: column; gap: 12px; padding: 20px; background: var(--bv-blanco); border: 1px solid var(--bv-linea); }
.bv-mc-dir-cab { display: flex; align-items: center; gap: 12px; }
.bv-mc-dir-cab h4 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-mc-dir address { margin: 0; font-style: normal; font-size: 13.5px; font-weight: 300; line-height: 1.7; color: var(--bv-texto-2); overflow-wrap: anywhere; }
.bv-mc-dir address b { font-weight: 500; color: var(--bv-azul); }
.bv-mc-dir .bv-mc-enlace { align-self: flex-start; margin-top: auto; }
.bv-mc-dir-vacia { border-style: dashed; background: var(--bv-crema); }
.bv-mc-dir-vacia p { margin: 0; font-size: 13px; font-weight: 300; line-height: 1.55; color: var(--bv-texto-2); }

/* Formularios (dirección, mis datos, ingreso) */
.bv-mc-form { background: var(--bv-blanco); border: 1px solid var(--bv-linea); padding: clamp(18px, 3vw, 30px); }
.bv-mc-form-t { margin: 0 0 4px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 26px; line-height: 1.1; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-mc-form .bv-mc-form-p { margin-bottom: 20px; }
.bv-mc-campos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
.bv-mc-campos .form-row { float: none; width: auto; margin: 0; padding: 0; grid-column: 1 / -1; }
.bv-mc-campos .form-row-first, .bv-mc-campos .form-row-last { grid-column: auto; }
.bv-mc-campos #billing_country_field, .bv-mc-campos #shipping_country_field { display: none !important; } /* el script de direcciones de Woo le pone display en línea */
:is(.bv-mc-form, .bv-mc-form-plano) label { display: block; margin: 0 0 6px; font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; line-height: 1.3; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bv-texto-2); }
:is(.bv-mc-form, .bv-mc-form-plano) label .required { color: var(--bv-dorado); text-decoration: none; border: 0; }
:is(.bv-mc-form, .bv-mc-form-plano) label .optional { text-transform: none; letter-spacing: 0; font-weight: 300; }
body :is(.bv-mc-form, .bv-mc-form-plano) :is(input.input-text, select, textarea) { width: 100%; height: 48px; padding: 0 14px; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-blanco); box-shadow: none; font-family: var(--bv-sans); font-size: 15px; color: var(--bv-azul); }
body :is(.bv-mc-form, .bv-mc-form-plano) :is(input.input-text, select, textarea):focus { border-color: var(--bv-azul); box-shadow: 0 0 0 3px rgba(232, 185, 35, 0.28); outline: none; }
body :is(.bv-mc-form, .bv-mc-form-plano) .select2-container .select2-selection--single { height: 48px; border: 1px solid var(--bv-linea); border-radius: 0; }
body :is(.bv-mc-form, .bv-mc-form-plano) .select2-container .select2-selection__rendered { line-height: 46px; padding-left: 14px; font-family: var(--bv-sans); font-size: 15px; color: var(--bv-azul); }
body :is(.bv-mc-form, .bv-mc-form-plano) .select2-container .select2-selection__arrow { height: 46px; }
:is(.bv-mc-form, .bv-mc-form-plano) .password-input { display: block; position: relative; }
body :is(.bv-mc-form, .bv-mc-form-plano) .show-password-input { position: absolute; right: 6px; top: 50%; width: 36px; height: 36px; min-height: 0; margin: -18px 0 0; padding: 0; border: 0; background: none; box-shadow: none; color: var(--bv-texto-2); cursor: pointer; }
body :is(.bv-mc-form, .bv-mc-form-plano) .show-password-input::before, body :is(.bv-mc-form, .bv-mc-form-plano) .show-password-input::after { content: ''; position: absolute; inset: 8px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.4'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; font-size: 0; transform: none; border: 0; }
body :is(.bv-mc-form, .bv-mc-form-plano) .show-password-input::after { display: none; }
body :is(.bv-mc-form, .bv-mc-form-plano) .show-password-input.display-password { color: var(--bv-azul); }
body :is(.bv-mc-form, .bv-mc-form-plano) .show-password-input.display-password::after { display: block; inset: 17px 6px auto; height: 1.5px; -webkit-mask: none; mask: none; transform: rotate(-40deg); }
.bv-mc-ayuda-campo { display: block; margin-top: 6px; font-size: 11.5px; font-weight: 300; color: var(--bv-texto-2); }
.bv-mc-clave { margin: 22px 0 0; padding: 18px 0 0; border: 0; border-top: 1px solid var(--bv-arena); min-width: 0; }
.bv-mc-clave legend { display: flex; align-items: center; gap: 10px; float: left; width: 100%; margin: 0 0 4px; padding: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-mc-clave legend svg { color: var(--bv-dorado); }
.bv-mc-clave .bv-mc-form-p { clear: both; margin-bottom: 14px; font-size: 12.5px; }
.bv-mc-form-acc { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 22px; }

/* Ingresar / crear cuenta y contraseña */
.bv-mc-ingreso { max-width: 1000px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; background: var(--bv-blanco); border: 1px solid var(--bv-linea); font-family: var(--bv-sans); }
.bv-mc-ingreso-solo { grid-template-columns: 1fr; max-width: 520px; }
.bv-mc-ingreso-col { padding: clamp(24px, 4vw, 44px); min-width: 0; }
.bv-mc-alta { position: relative; background: var(--bv-marfil); border-left: 1px solid var(--bv-linea); }
.bv-mc-alta::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: var(--bv-rayas); opacity: 0.9; }
.bv-mc-ingreso .bv-mc-titulo, .bv-mc-acceso .bv-mc-titulo { font-size: 36px; }
.bv-mc-ingreso .bv-mc-form-p { margin-bottom: 20px; }
.bv-mc-form-plano .form-row { float: none; width: auto; margin: 0 0 14px; padding: 0; }
.bv-mc-recordar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; margin: 4px 0 18px; font-size: 12.5px; font-weight: 300; color: var(--bv-texto-2); }
.bv-mc-recordar label { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 12.5px; font-weight: 300; letter-spacing: 0; text-transform: none; color: var(--bv-texto-2); }
.bv-mc-recordar input { width: 16px; height: 16px; margin: 0; accent-color: var(--bv-azul); }
.bv-mc-recordar a { color: var(--bv-azul); border-bottom: 1px solid var(--bv-linea); text-decoration: none; }
.bv-mc-ventajas { list-style: none; margin: 14px 0 22px; padding: 0; display: grid; gap: 12px; }
.bv-mc-ventajas li { display: flex; gap: 12px; align-items: flex-start; margin: 0; font-size: 13px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-mc-ventajas li b { display: block; font-weight: 500; color: var(--bv-azul); }
.bv-mc-ventajas .bv-mc-circ { width: 34px; height: 34px; background: var(--bv-blanco); }
.bv-mc-chico { font-size: 12.5px; margin-bottom: 14px; }
.bv-mc-alta .woocommerce-privacy-policy-text p { margin: 0 0 14px; font-size: 11.5px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-mc-sin-cuenta { margin: 16px 0 0; font-size: 12px; font-weight: 300; text-align: center; color: var(--bv-texto-2); }
.bv-mc-acceso { max-width: 520px; margin: 0 auto; padding: clamp(24px, 4vw, 44px); background: var(--bv-blanco); border: 1px solid var(--bv-linea); font-family: var(--bv-sans); }
.bv-mc-acceso .bv-mc-form-p { margin-bottom: 20px; }
.bv-mc-acceso-ok { text-align: center; }
.bv-mc-acceso-ok .bv-mc-form-p { margin-left: auto; margin-right: auto; }

/* Mis pedidos sin cuenta (inc/mis-pedidos.php): pedir el link con el mail, avisos y el bloque del ingreso de Mi cuenta */
.bv-mp-trampa { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.bv-mp-aviso { margin: 0 0 18px; padding: 12px 14px; border-left: 3px solid var(--bv-limon); background: var(--bv-marfil); font-size: 13px; line-height: 1.5; color: var(--bv-azul); }
.bv-mp-aviso-error { border-left-color: var(--bv-bordo); }
.bv-mp-pie { margin: 18px 0 0; font-size: 12px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-mp-pie a { color: var(--bv-azul); border-bottom: 1px solid var(--bv-linea); text-decoration: none; }
.bv-mp-cuenta { display: grid; gap: 10px; margin: 22px 0 0; padding-top: 20px; border-top: 1px solid var(--bv-linea); }
.bv-mp-cuenta span { font-size: 10.5px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bv-dorado); }
.bv-mp-ir { margin: 14px 0 0; font-size: 12.5px; font-weight: 300; text-align: center; }
.bv-mp-ir a { color: var(--bv-azul); border-bottom: 1px solid var(--bv-limon); text-decoration: none; }
.bv-mp-ingreso { scroll-margin-top: 90px; }
.bv-mp-ingreso { max-width: 1000px; margin: 20px auto 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px clamp(24px, 4vw, 44px); align-items: end; padding: clamp(22px, 3.5vw, 36px) clamp(24px, 4vw, 44px); background: var(--bv-blanco); border: 1px solid var(--bv-linea); font-family: var(--bv-sans); }
.bv-mp-ingreso .bv-etiqueta { display: block; font-size: 10.5px; line-height: 1.3; }
.bv-mp-ingreso h3 { margin: 6px 0 8px; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 26px; line-height: 1.1; color: var(--bv-azul); text-transform: none; }
.bv-mp-ingreso .bv-mc-form-p { margin: 0; font-size: 13px; }
.bv-mp-ingreso .bv-mp-form .form-row { margin-bottom: 10px; }
body .bv-mp-ingreso .bv-mc-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; height: auto; padding: 0 20px; border-radius: 0; box-shadow: none; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; cursor: pointer; }
body .bv-mp-ingreso .bv-mc-btn-borde { background: transparent; color: var(--bv-azul); border: 1px solid var(--bv-azul); }
body .bv-mp-ingreso .bv-mc-btn-borde:hover { background: var(--bv-azul); color: var(--bv-crema); }
body .bv-mp-ingreso .bv-mc-btn-ancho { width: 100%; }
@media (max-width: 900px) {
  .bv-mp-ingreso { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 900px) {
  .bv-mc-grilla, .bv-mc-det-grilla { grid-template-columns: minmax(0, 1fr); }
  .bv-mc-t-2 { grid-column: auto; }
  .bv-mc-ayuda, .bv-mc-bienv { grid-template-columns: minmax(0, 1fr); }
  .bv-mc-prendas { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .bv-mc-club-franja .bv-mc-club-in { grid-template-columns: 1fr; justify-items: start; }
  .bv-mc-transf { grid-template-columns: 1fr; }
  body .bv-mc .bv-mc-transf-acc .bv-mc-btn { flex: 1 1 auto; }
  .bv-mc-seg li { font-size: 8.5px; letter-spacing: 0.06em; }
  .bv-mc-seg small { font-size: 11px; }
  .bv-mc-ingreso { grid-template-columns: minmax(0, 1fr); }
  .bv-mc-alta { border-left: 0; border-top: 1px solid var(--bv-linea); }
}
@media (max-width: 1000px) {
  .bv-mc-ped { grid-template-columns: 70px minmax(0, 1fr) auto; grid-template-areas: "f i e" "f t a"; gap: 8px 12px; padding: 14px 4px; }
  .bv-mc-ped-fotos { grid-area: f; } .bv-mc-ped-info { grid-area: i; } .bv-mc-ped-estado { grid-area: e; justify-self: end; } .bv-mc-ped-total { grid-area: t; text-align: left; } .bv-mc-ped-acc { grid-area: a; }
  .bv-mc-ped-fotos img { width: 34px; }
}
@media (max-width: 760px) {
  .bv-mc-novedades li { grid-template-columns: 1fr; gap: 2px; }
}
@media (max-width: 640px) {
  .bv-mc-banda-in { padding-top: 26px; padding-bottom: 60px; }
  .bv-mc-interna .bv-mc-numeros { display: none; }
  .bv-mc-numeros { gap: 20px; }
  .bv-mc .bv-mc-nav ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  body .bv-mc .bv-mc-nav.woocommerce-MyAccount-navigation ul > li > a { display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 13px 4px 11px; font-size: 9.5px; letter-spacing: 0.12em; text-align: center; white-space: normal; }
  .bv-mc-campos { grid-template-columns: 1fr; }
  .bv-mc-form-acc .bv-mc-btn { width: 100%; }
  .bv-mc-t-cab { flex-wrap: wrap; }
}
@media (max-width: 600px) {
  .bv-mc-ped:has(.bv-mc-ped-acc .bv-mc-btn) { grid-template-areas: "f i e" "f t t" "f a a"; }
  .bv-mc-ped-acc .bv-mc-btn { margin-right: auto; }
}
@media (max-width: 480px) {
  .bv-mc-prenda-acc { flex-wrap: wrap; justify-content: center; }
  body .bv-mc .bv-mc-prenda-acc .bv-mc-btn { flex: 1 1 100%; }
}
@media (max-width: 360px) {
  .bv-mc-ped { grid-template-columns: 60px minmax(0, 1fr); grid-template-areas: "f i" "f e" "f t" "a a"; }
  .bv-mc-ped-estado { justify-self: start; }
  .bv-mc-ped-acc { justify-content: space-between; }
}
@media (prefers-reduced-motion: reduce) {
  .bv-mc-seg li::after, .bv-mc-seg .bv-mc-seg-n { animation: none !important; }
}

/* ---------- Corazón de favoritos en la ficha (inc/mi-cuenta.php): al lado del título, discreto ---------- */
.bv-ficha-titulo { display: flex; align-items: center; justify-content: flex-start; gap: 18px; }
.bv-ficha-titulo .product_title { flex: 0 1 auto; min-width: 0; }
.single-product .bv-ficha-titulo .bv-fav { flex: 0 0 auto; display: block; margin: 0 0 6px; } /* 6 px = margen inferior del título: así quedan centrados */
.bv-fav a { position: relative; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid var(--bv-linea); border-radius: 50%; background: transparent; color: var(--bv-azul); text-decoration: none; transition: border-color 0.2s, background 0.2s; }
.bv-fav a:hover { border-color: var(--bv-azul); color: var(--bv-azul); }
.bv-fav a::before, .bv-fav a::after { display: none !important; }
.bv-fav svg { width: 19px; height: 19px; fill: transparent; transition: fill 0.2s ease; }
.bv-fav a.added { border-color: var(--bv-azul); }
.bv-fav a.added svg { fill: var(--bv-azul); animation: bv-fav-pop 0.35s cubic-bezier(0.2, 1.6, 0.4, 1); }
.bv-fav a.loading { opacity: 0.5; pointer-events: none; }
.bv-fav .wd-action-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@keyframes bv-fav-pop { 0% { transform: scale(0.7); } 100% { transform: scale(1); } }
@media (max-width: 768px) { .bv-fav a { width: 36px; height: 36px; } .bv-fav svg { width: 17px; height: 17px; } }
@media (prefers-reduced-motion: reduce) { .bv-fav a.added svg { animation: none; } }

/* ---------- Ficha: oferta con más peso (inc/ficha.php, bv_ficha_oferta; pedido de Juan, 29/09/2026) ----------
   Solo datos reales: descuento, ahorro y cuenta regresiva únicamente si la oferta tiene fecha de fin. Bordó = SALE.
   Recuadro blanco con filete, del ancho de lo que lleva (no de toda la columna): el % a la izquierda, el resto a la derecha. */
.single-product .summary-inner .bv-fp-en-oferta .bv-fp-precio { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 14px; }
.single-product .summary-inner .bv-fp-en-oferta .bv-fp-precio ins { order: -1; text-decoration: none; }
.single-product .summary-inner .bv-fp-en-oferta .bv-fp-precio ins .amount { font-size: 38px; color: var(--bv-bordo); }
.single-product .summary-inner .bv-fp-en-oferta .bv-fp-precio del, .single-product .summary-inner .bv-fp-en-oferta .bv-fp-precio del .amount { font-size: 18px; font-weight: 400; color: #8A857B; }
.bv-fp-of { display: inline-flex; align-items: stretch; align-self: flex-start; width: fit-content; max-width: 100%; margin: 2px 0 0; background: var(--bv-blanco); border: 1px solid var(--bv-linea); font-family: var(--bv-sans); }
.bv-fp-of-pct { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; margin: 0; padding: 12px 20px; border-right: 1px solid var(--bv-linea); font-family: var(--bv-serif); font-size: 38px; font-weight: 500; line-height: 0.85; color: var(--bv-bordo); }
.bv-fp-of-pct small { padding-left: 0.3em; font-family: var(--bv-sans); font-size: 9.5px; font-weight: 500; letter-spacing: 0.3em; line-height: 1; text-transform: uppercase; }
.bv-fp-of-info { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 9px; min-width: 0; padding: 12px 20px; }
.bv-fp-of-chip { padding: 3px 7px; border: 1px solid rgba(122, 31, 43, 0.35); color: var(--bv-bordo); font-size: 9.5px; font-weight: 500; letter-spacing: 0.2em; line-height: 1.3; text-transform: uppercase; }
.bv-fp-of-ahorro { margin: 0; font-size: 14px; line-height: 1.3; color: var(--bv-texto-2); }
.bv-fp-of-ahorro b { font-weight: 600; color: var(--bv-azul); }
.bv-fp-of-cuenta { display: flex; flex-direction: column; gap: 6px; align-self: stretch; padding-top: 9px; border-top: 1px solid var(--bv-linea); }
.bv-fp-of-rot { font-size: 9.5px; font-weight: 500; letter-spacing: 0.22em; line-height: 1.2; text-transform: uppercase; color: var(--bv-texto-2); }
.bv-fp-of-reloj { display: flex; flex-wrap: wrap; gap: 4px 16px; }
.bv-fp-of-reloj span { display: flex; align-items: baseline; gap: 3px; }
.bv-fp-of-reloj b { font-size: 19px; font-weight: 500; line-height: 1; color: var(--bv-bordo); font-variant-numeric: tabular-nums; }
.bv-fp-of-reloj small { font-size: 10.5px; color: var(--bv-texto-2); }
.bv-fp-nota .bv-fp-nota-sale { font-weight: 600; color: var(--bv-bordo); }
@media (max-width: 768px) {
  .single-product .summary-inner .bv-fp-en-oferta .bv-fp-precio ins .amount { font-size: 32px; }
  .bv-fp-of-pct { padding: 11px 15px; font-size: 32px; }
  .bv-fp-of-info { padding: 11px 15px; }
  .bv-fp-of-reloj { gap: 4px 12px; }
  .bv-fp-of-reloj b { font-size: 17px; }
}
/* Barra fija con oferta: precio de oferta en bordó con el normal tachado al lado, y debajo el % y la cuenta regresiva */
.single-product .wd-sticky-btn .price ins { text-decoration: none; }
.single-product .wd-sticky-btn .price ins .amount { color: var(--bv-bordo); }
.single-product .wd-sticky-btn .price del, .single-product .wd-sticky-btn .price del .amount { font-size: 13px; font-weight: 400; color: #8A857B; }
.bv-sb-of { display: flex; align-items: baseline; gap: 6px; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 400; line-height: 1.2; color: var(--bv-texto-2); white-space: nowrap; }
.bv-sb-of-pct { font-weight: 600; color: var(--bv-bordo); }
.bv-sb-of-cuenta::before, .bv-sb-of-ahorro::before { content: '·'; margin-right: 6px; color: var(--bv-linea); }
.bv-sb-of b { font-weight: 500; color: var(--bv-bordo); font-variant-numeric: tabular-nums; }
@media (min-width: 769px) {
  .single-product .wd-sticky-btn-cart .price:has(.bv-sb-of) { display: grid; grid-template-columns: auto auto; justify-content: end; align-items: baseline; gap: 4px 10px; }
  .single-product .wd-sticky-btn-cart .price:has(.bv-sb-of) ins { grid-area: 1 / 1; }
  .single-product .wd-sticky-btn-cart .price:has(.bv-sb-of) del { grid-area: 1 / 2; }
  .single-product .wd-sticky-btn-cart .price:has(.bv-sb-of) .bv-sb-of { grid-column: 1 / -1; justify-self: end; }
}

/* ---------- Buscador (lupa del header, pantalla completa de Woodmart, inc/buscador.php) ---------- */
.whb-header .wd-header-search .wd-tools-icon, .whb-header .wd-header-search-mobile .wd-tools-icon { color: var(--bv-azul); }
body .wd-search-full-screen { --wd-search-sp: 28px; background: var(--bv-crema); color: var(--bv-texto); }
body .wd-search-full-screen .searchform { max-width: 900px; margin-inline: auto; padding-inline: 60px; border-bottom: 1px solid var(--bv-linea); --wd-form-color: var(--bv-azul); --wd-form-placeholder-color: rgba(22, 50, 79, 0.45); }
body .wd-search-full-screen .searchform input[type=text] { font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 46px; letter-spacing: 0; color: var(--bv-azul); }
body .wd-search-full-screen .wd-close-search.wd-style-icon { --wd-action-color: var(--bv-azul); --wd-action-color-hover: var(--bv-dorado); }
body .wd-search-full-screen .wd-search-requests { border-bottom: 0 !important; }
body .wd-search-full-screen .wd-search-requests .wd-search-title { display: block; margin-bottom: 14px; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); }
body .wd-search-full-screen .wd-search-requests ul, .bv-busqueda-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
body .wd-search-full-screen .wd-search-requests a, .bv-busqueda-chips a { display: inline-block; padding: 9px 16px; border: 1px solid var(--bv-azul); border-radius: 0; background: transparent; font-family: var(--bv-sans); font-size: 11.5px; font-weight: 500; letter-spacing: 0.16em; line-height: 1; text-transform: uppercase; color: var(--bv-azul); transition: background 0.2s, color 0.2s; }
body .wd-search-full-screen .wd-search-requests a:hover, body .wd-search-full-screen .wd-search-requests a:focus-visible, .bv-busqueda-chips a:hover, .bv-busqueda-chips a:focus-visible { background: var(--bv-azul); color: var(--bv-crema); }
body .wd-search-full-screen .wd-search-results { max-width: 1320px; margin-inline: auto; width: 100%; }
body .wd-search-full-screen .wd-suggestions-group { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 28px 20px; padding: 4px 20px 0; }
body .wd-search-full-screen .wd-suggestion { padding: 0; flex-basis: auto; line-height: 1.2; }
body .wd-search-full-screen .wd-suggestion-thumb { margin-bottom: 12px; aspect-ratio: 4 / 5; overflow: hidden; background: var(--bv-arena); }
body .wd-search-full-screen .wd-suggestion-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; transition: transform 0.6s ease; }
body .wd-search-full-screen .wd-suggestion:hover .wd-suggestion-thumb img { transform: scale(1.03); }
body .wd-search-full-screen .wd-suggestion-content { --wd-mb: 6px; }
body .wd-search-full-screen .wd-suggestion .wd-entities-title { font-family: var(--bv-serif); font-size: 19px; font-weight: 500; line-height: 1.15; color: var(--bv-azul); text-transform: none; }
body .wd-search-full-screen .wd-suggestion .wd-entities-title strong { text-decoration: none; font-weight: 700; }
body .wd-search-full-screen .wd-suggestion .price, body .wd-search-full-screen .wd-suggestion .price .amount { font-family: var(--bv-sans); font-size: 15px; font-weight: 500; color: var(--bv-precio); letter-spacing: 0.01em; }
body .wd-search-full-screen .wd-suggestion .price ins, body .wd-search-full-screen .wd-suggestion .price ins .amount { color: var(--bv-bordo); text-decoration: none; }
body .wd-search-full-screen .wd-suggestion .price del, body .wd-search-full-screen .wd-suggestion .price del .amount { font-size: 13px; font-weight: 400; color: #9a9385; }
body .wd-search-full-screen .wd-suggestion .bv-cuotas { display: none; }
body .wd-search-full-screen .wd-not-found-msg { display: block; max-width: 560px; margin: 8px auto 0; font-family: var(--bv-serif); font-style: italic; font-size: 24px; line-height: 1.3; color: var(--bv-azul); text-align: center; }
body .wd-search-full-screen .wd-all-results { display: table; margin: 36px auto 40px; padding: 0 30px; border: 0; background: var(--bv-azul); font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.2em; line-height: 48px; color: var(--bv-crema); --wd-link-color: var(--bv-crema); --wd-link-color-hover: var(--bv-crema); }
body .wd-search-full-screen .wd-all-results:hover { background: var(--bv-azul-oscuro) !important; }
body .wd-search-full-screen .wd-search-loader { background-color: rgba(251, 249, 246, 0.85); }
.bv-busqueda-cabecera { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: clamp(18px, 3vw, 34px) 16px clamp(22px, 3vw, 36px); text-align: center; }
.bv-busqueda-cabecera .bv-busqueda-rot { margin: 0; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: var(--bv-track); text-transform: uppercase; color: var(--bv-dorado); }
.bv-busqueda-cabecera h1 { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: clamp(32px, 4vw, 48px); line-height: 1.05; color: var(--bv-azul); text-transform: none; overflow-wrap: anywhere; }
.bv-busqueda-cabecera .bv-busqueda-n { margin: 0; font-family: var(--bv-sans); font-size: 14px; font-weight: 300; color: var(--bv-texto-2); }
.bv-busqueda-vacia { display: flex; flex-direction: column; align-items: center; gap: 22px; max-width: 640px; margin: 0 auto; padding: 0 16px clamp(48px, 7vw, 90px); text-align: center; }
.bv-busqueda-vacia p { margin: 0; font-family: var(--bv-sans); font-size: 16px; font-weight: 300; line-height: 1.6; color: var(--bv-texto-2); }
.bv-busqueda-vacia .bv-busqueda-tienda { display: inline-block; padding: 0 30px; background: var(--bv-azul); font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.2em; line-height: 48px; text-transform: uppercase; color: var(--bv-crema); transition: background 0.2s; }
.bv-busqueda-vacia .bv-busqueda-tienda:hover { background: var(--bv-azul-oscuro); color: var(--bv-crema); }
@media (max-width: 1024px) {
  body .wd-search-full-screen { --wd-search-sp: 20px; }
  body .wd-search-full-screen .searchform { padding-inline: 16px; }
  body .wd-search-full-screen .searchform input[type=text] { font-size: 26px; }
  body .wd-search-full-screen .wd-search-requests ul { gap: 6px; }
  body .wd-search-full-screen .wd-search-requests a { padding: 8px 12px; font-size: 11px; letter-spacing: 0.12em; }
}
@media (max-width: 768px) {
  body .wd-search-full-screen .wd-suggestions-group { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 12px; padding-inline: 16px; }
  body .wd-search-full-screen .wd-suggestion .wd-entities-title { font-size: 17px; }
  body .wd-search-full-screen .wd-suggestion .price, body .wd-search-full-screen .wd-suggestion .price .amount { font-size: 14px; }
  body .wd-search-full-screen .wd-not-found-msg { padding-inline: 16px; font-size: 20px; }
}

/* ---------- Envío antes del checkout (inc/entrega.php; opción 2 elegida por Juan, 01/10/2026) ----------
   Ficha: recuadro "¿Cuánto te sale con envío?" con código postal y provincia, las opciones con su fecha y precio,
   la barra de envío gratis y el total con envío. Carrito y checkout: cada opción con nombre corto, fecha y precio. */
.bv-calc { max-width: 440px; margin: 18px 0 0; padding: 20px; background: var(--bv-blanco); border: 1px solid var(--bv-linea); font-family: var(--bv-sans); }
.bv-calc [hidden] { display: none !important; }
.bv-calc-cab { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 14px; }
.single-product .summary-inner .bv-calc-titulo { margin: 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.15; color: var(--bv-azul); }
.bv-calc-salimos { flex: 0 0 auto; font-size: 10.5px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--bv-dorado); }
.bv-calc-form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: 8px; margin: 0; }
.single-product .summary-inner .bv-calc-form input, .single-product .summary-inner .bv-calc-form select { width: 100%; height: 44px; margin: 0; padding: 0 12px; border: 1px solid var(--bv-linea); border-radius: 0; background-color: var(--bv-crema); box-shadow: none; font-family: var(--bv-sans); font-size: 14.5px; color: var(--bv-texto); }
.single-product .summary-inner .bv-calc-form input:focus, .single-product .summary-inner .bv-calc-form select:focus { border-color: var(--bv-azul); background-color: var(--bv-blanco); outline: none; }
.single-product .summary-inner .bv-calc-form button { height: 44px; min-height: 0; margin: 0; padding: 0 16px; border: 1px solid var(--bv-azul); border-radius: 0; background: transparent; box-shadow: none; color: var(--bv-azul); font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; cursor: pointer; transition: background 0.2s ease, color 0.2s ease; }
.single-product .summary-inner .bv-calc-form button:hover { background: var(--bv-azul); color: var(--bv-crema); }
.bv-calc-nose { display: inline-block; margin-top: 8px; font-size: 12px; color: var(--bv-texto-2); text-decoration: underline; text-underline-offset: 3px; }
.bv-calc-nose:hover { color: var(--bv-azul); }
.bv-calc-error { margin: 8px 0 0; font-size: 12.5px; color: var(--bv-bordo); }
.bv-calc-previa { display: grid; gap: 8px; margin-top: 14px; }
.bv-calc-previa p { display: flex; align-items: flex-start; gap: 10px; margin: 0; font-size: 13.5px; line-height: 1.45; color: var(--bv-texto); }
.bv-calc-previa svg { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 1px; fill: none; stroke: var(--bv-dorado); stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.bv-calc-previa strong { font-weight: 500; color: var(--bv-azul); }
.bv-calc-destino { margin: 0 0 10px; font-size: 13px; color: var(--bv-texto-2); }
.bv-calc-destino strong { font-weight: 500; color: var(--bv-azul); }
.single-product .summary-inner .bv-calc-cambiar { min-height: 0; height: auto; margin: 0; padding: 0 0 1px; border: 0; border-bottom: 1px solid currentColor; border-radius: 0; background: none; box-shadow: none; font: inherit; font-size: 13px; color: var(--bv-azul); cursor: pointer; text-transform: none; letter-spacing: 0; }
.bv-calc-ops { display: grid; gap: 8px; }
.single-product .summary-inner .bv-calc-op { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; align-items: center; gap: 12px; width: 100%; min-height: 0; height: auto; margin: 0; padding: 12px 14px; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-blanco); box-shadow: none; color: var(--bv-texto); font: inherit; text-align: left; text-transform: none; letter-spacing: 0; line-height: 1.3; cursor: pointer; transition: border-color 0.2s ease; }
.single-product .summary-inner .bv-calc-op:hover { border-color: var(--bv-texto-2); }
.single-product .summary-inner .bv-calc-op.bv-sel { border-color: var(--bv-azul); box-shadow: inset 0 0 0 1px var(--bv-azul); }
.bv-calc-radio { position: relative; width: 18px; height: 18px; border: 1px solid var(--bv-azul); border-radius: 50%; }
.bv-sel .bv-calc-radio::after { content: ''; position: absolute; inset: 4px; border-radius: 50%; background: var(--bv-azul); }
.bv-calc-op-txt { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.bv-calc-op-txt strong { font-size: 14px; font-weight: 500; color: var(--bv-azul); }
.bv-calc-op-txt small { margin-top: 2px; font-size: 12.5px; font-weight: 300; line-height: 1.4; color: var(--bv-texto-2); }
.bv-calc-chip, .bv-envio-chip { display: inline-block; margin-top: 5px; padding: 2px 8px; background: var(--bv-marfil); color: var(--bv-azul); font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.04em; line-height: 1.5; }
.bv-calc-chip.bv-hoy, .bv-envio-chip.bv-hoy { background: var(--bv-limon); color: var(--bv-azul-oscuro); }
.bv-calc-precio { font-weight: 500; white-space: nowrap; color: var(--bv-texto); }
.bv-calc-precio.bv-gratis, .bv-envio-precio.bv-gratis { color: var(--bv-precio); }
.bv-calc-total { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--bv-linea); }
.bv-calc-total span { font-size: 11px; font-weight: 500; letter-spacing: 0.2em; text-transform: uppercase; color: var(--bv-azul); }
.bv-calc-total strong { font-family: var(--bv-serif); font-size: 28px; font-weight: 600; line-height: 1; color: var(--bv-azul); }
.bv-calc-incluye, .bv-calc-vacio { margin: 6px 0 0; font-size: 12px; color: var(--bv-texto-2); }
.bv-calc .bv-envio { margin-top: 16px; }
.bv-calc-nota { margin: 12px 0 0; font-size: 11.5px; font-weight: 300; line-height: 1.45; color: var(--bv-texto-2); }
.bv-calc-cargando .bv-calc-res, .bv-calc-cargando .bv-calc-form { opacity: 0.55; pointer-events: none; transition: opacity 0.2s ease; }
@media (max-width: 480px) {
  .bv-calc { padding: 16px; }
  .bv-calc-form { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .single-product .summary-inner .bv-calc-form button { grid-column: 1 / -1; }
  .single-product .summary-inner .bv-calc-op { padding: 11px 12px; gap: 10px; }
}
/* Carrito y checkout: el detalle de cuándo llega debajo del nombre, y la fecha en una etiqueta */
.woocommerce-shipping-methods .bv-envio-nombre { display: flex; flex-direction: column; align-items: flex-start; }
.woocommerce-shipping-methods .bv-envio-det { display: block; margin-top: 2px; font-size: 11.5px; font-weight: 300; line-height: 1.4; color: var(--bv-texto-2); }
.woocommerce-shipping-methods li input[type="radio"]:checked + label .bv-envio-nombre { font-weight: 500; }
/* Logo de la empresa o motito de cada opción (bv_entrega_marca) con el nombre al lado, en la línea del precio;
   debajo, cuándo llega y la fecha a todo el ancho (pedido de Juan, 01/10/2026). */
.bv-envio-marca { display: flex; align-items: center; height: 24px; color: var(--bv-azul); }
.bv-envio-marca:empty { display: none; }
.bv-envio-marca img { display: block; width: auto; max-width: none; }
.bv-envio-marca-correo img { height: 20px; }
.bv-envio-marca-andreani img { height: 13px; }
.bv-envio-marca svg { display: block; width: 26px; height: 26px; }
/* Las etiquetas traen display: flex !important (bloques del carrito y del checkout): acá se pasa a grilla. */
.woocommerce-shipping-methods li label:has(> .bv-envio-marca), .bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods li label:has(> .bv-envio-marca) { display: grid !important; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0 10px; align-items: center; }
.woocommerce-shipping-methods li label > .bv-envio-marca { grid-column: 1; grid-row: 1; }
.woocommerce-shipping-methods li label:has(> .bv-envio-marca) > .bv-envio-nombre { display: contents; }
.woocommerce-shipping-methods li label:has(> .bv-envio-marca) .bv-envio-titulo { grid-column: 2; grid-row: 1; line-height: 1.3; }
.woocommerce-shipping-methods li label:has(> .bv-envio-marca) > .bv-envio-precio { grid-column: 3; grid-row: 1; white-space: nowrap; }
.woocommerce-shipping-methods li label:has(> .bv-envio-marca) .bv-envio-det { grid-column: 1 / -1; grid-row: 2; margin-top: 6px; }
.woocommerce-shipping-methods li label:has(> .bv-envio-marca) .bv-envio-chip { grid-column: 1 / -1; grid-row: 3; justify-self: start; }
.single-product .summary-inner .bv-calc-op { grid-template-columns: 18px auto minmax(0, 1fr) auto; column-gap: 10px; row-gap: 0; align-items: center; }
.bv-calc-op .bv-calc-radio { grid-column: 1; grid-row: 1; }
.bv-calc-op .bv-envio-marca { grid-column: 2; grid-row: 1; }
.bv-calc-op .bv-calc-op-txt { display: contents; }
.bv-calc-op .bv-calc-op-txt strong { grid-column: 3; grid-row: 1; line-height: 1.3; }
.bv-calc-op .bv-calc-precio { grid-column: 4; grid-row: 1; }
.bv-calc-op .bv-calc-op-txt small { grid-column: 2 / -1; grid-row: 2; margin-top: 6px; }
.bv-calc-op .bv-calc-chip { grid-column: 2 / -1; grid-row: 3; justify-self: start; }
@media (max-width: 480px) {
  .bv-envio-marca-correo img { height: 17px; }
  .bv-envio-marca-andreani img { height: 12px; }
  .single-product .summary-inner .bv-calc-op { column-gap: 8px; padding: 11px 10px; }
  .bv-calc-op .bv-calc-op-txt strong { font-size: 13.5px; }
  .bv-calc-op .bv-calc-precio { font-size: 14px; }
}
/* Pantallas angostas: si el nombre no entra al lado del logo en dos renglones, baja debajo del logo (el checkout
   entra hasta 360 px; la calculadora de la ficha, que tiene más margen, hasta 375 px). */
@media (max-width: 359px) {
  .woocommerce-shipping-methods li label:has(> .bv-envio-marca), .bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods li label:has(> .bv-envio-marca) { grid-template-columns: minmax(0, 1fr) auto; }
  .woocommerce-shipping-methods li label:has(> .bv-envio-marca) > .bv-envio-precio { grid-column: 2; }
  .woocommerce-shipping-methods li label:has(> .bv-envio-marca) .bv-envio-titulo { grid-column: 1 / -1; grid-row: 2; margin-top: 6px; }
  .woocommerce-shipping-methods li label:has(> .bv-envio-marca) .bv-envio-det { grid-row: 3; margin-top: 2px; }
  .woocommerce-shipping-methods li label:has(> .bv-envio-marca) .bv-envio-chip { grid-row: 4; }
}
@media (max-width: 374px) {
  .single-product .summary-inner .bv-calc-op { grid-template-columns: 18px minmax(0, 1fr) auto; }
  .bv-calc-op .bv-calc-precio { grid-column: 3; }
  .bv-calc-op .bv-calc-op-txt strong { grid-column: 2 / -1; grid-row: 2; margin-top: 6px; }
  .bv-calc-op .bv-calc-op-txt small { grid-row: 3; margin-top: 2px; }
  .bv-calc-op .bv-calc-chip { grid-row: 4; }
}

/* Checkout en tres bloques (inc/checkout.php): títulos numerados y las opciones de envío dentro del bloque 2,
   antes del nombre y el DNI; en el resumen queda solo la opción elegida. */
.bv-easy-checkout .woocommerce-billing-fields > h3 { display: none; }
.bv-easy-checkout .woocommerce-billing-fields .bv-ck-titulo { display: flex; align-items: center; gap: 12px; clear: both; float: none; width: 100%; margin: 28px 0 6px !important; padding: 0 !important; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 24px; line-height: 1.2; color: var(--bv-azul); }
.bv-easy-checkout .woocommerce-billing-fields #bv_t_contacto_field { margin-top: 0 !important; }
.bv-ck-num { flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-sans); font-style: normal; font-size: 12px; font-weight: 500; }
.bv-easy-checkout .woocommerce-billing-fields .bv-ck-envio-fila { clear: both; float: none; width: 100%; margin: 4px 0 6px !important; }
.bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods { display: grid; gap: 8px; margin: 0 !important; }
.bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods li { padding: 12px 14px !important; border: 1px solid var(--bv-linea) !important; background: var(--bv-blanco); cursor: pointer; }
.bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods li:has(input:checked) { border-color: var(--bv-azul) !important; box-shadow: inset 0 0 0 1px var(--bv-azul); }
.bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods li label { display: flex !important; justify-content: space-between; align-items: flex-start; gap: 14px; width: 100%; margin: 0 !important; font-family: var(--bv-sans); font-size: 13.5px; font-weight: 300; letter-spacing: 0; line-height: 1.35; text-transform: none; color: var(--bv-texto); cursor: pointer; }
.bv-easy-checkout #bv-ck-envio .bv-envio-nombre { color: var(--bv-azul); font-weight: 500; }
.bv-easy-checkout #bv-ck-envio .bv-envio-det { font-size: 12px; }
.bv-ck-envio-vacio { margin: 0; padding: 14px; border: 1px dashed #BDB3A2; background: var(--bv-crema); font-size: 13px; line-height: 1.5; color: var(--bv-texto-2); }
.bv-ck-nose { display: inline-block; margin-top: 8px; font-size: 12px; color: var(--bv-texto-2); text-decoration: underline; text-underline-offset: 3px; }
.bv-ck-nose:hover { color: var(--bv-azul); }
/* Selector de sucursal de Correo Argentino (plugin cool-correo-argentino-woo) debajo de la opción elegida, con la marca */
.bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods li { flex-wrap: wrap; }
.bv-easy-checkout #bv-ck-envio .woocommerce-shipping-methods li > label { flex: 1 1 0; min-width: 0; }
.bv-easy-checkout #bv-ck-envio [id^="coolca-branch-selection-"] { flex: 0 0 100%; margin: 10px 0 0; padding-left: 25px; cursor: default; }
.bv-easy-checkout #bv-ck-envio [id^="coolca-branch-selection-"] > p { margin: 0 0 8px; }
.bv-easy-checkout #bv-ck-envio [id^="coolca-branch-selection-"] > p:has(.coolca-branch-label:empty) { display: none; }
.bv-easy-checkout #bv-ck-envio .coolca-branch-label { font-size: 13px; line-height: 1.4; color: var(--bv-texto); text-transform: none; }
.bv-easy-checkout #bv-ck-envio #coolca_branch_field { margin: 0; padding: 0; }
.bv-easy-checkout #bv-ck-envio .coolca-branch-selection-btn { display: inline-flex; align-items: center; min-height: 0; height: 40px; padding: 0 16px; border: 1px solid var(--bv-azul); border-radius: 0; background: transparent; box-shadow: none; color: var(--bv-azul); font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; cursor: pointer; transition: background 0.2s ease, color 0.2s ease; }
.bv-easy-checkout #bv-ck-envio .coolca-branch-selection-btn:hover { background: var(--bv-azul); color: var(--bv-crema); }
.bv-easy-checkout .coolca-branch-selection.modal { z-index: 100000; background: rgba(22, 50, 79, 0.45); cursor: default; }
.bv-easy-checkout .coolca-branch-selection .modal-content { position: relative; max-width: 720px; margin: 4vh auto; height: 92vh; padding: 28px 20px 20px; border-radius: 0; background: var(--bv-crema); font-family: var(--bv-sans); color: var(--bv-texto); text-align: left; text-transform: none; letter-spacing: 0; }
.bv-easy-checkout .coolca-branch-selection .close { position: absolute; top: 10px; right: 16px; font-size: 28px; line-height: 1; color: var(--bv-azul); cursor: pointer; }
.bv-easy-checkout .coolca-branch-selection .modal-header { min-height: 0; padding: 0; border: 0; background: none; box-shadow: none; }
.bv-easy-checkout .coolca-branch-selection .modal-header h2 { margin: 0 0 14px; padding: 0 30px 0 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 24px; line-height: 1.2; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-easy-checkout .coolca-branch-selection .search-content { margin: 0 0 12px; }
.bv-easy-checkout .coolca-branch-selection .search-content .search-btn { width: 100%; min-width: 0; margin: 0; padding: 0 12px 0 0; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-blanco); color: var(--bv-texto-2); }
.bv-easy-checkout .coolca-branch-selection .search-content .search-btn input { flex: 1 1 auto; width: auto; height: 44px; padding: 0 12px; border: 0; border-radius: 0; background: transparent; box-shadow: none; font-family: var(--bv-sans); font-size: 14.5px; }
.bv-easy-checkout .coolca-branch-selection .three-col { max-height: calc(92vh - 150px); }
.bv-easy-checkout .coolca-branch-selection .row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) auto; align-items: center; gap: 12px; margin: 0; padding: 10px 4px; border-bottom: 1px solid var(--bv-linea); background: none; }
.bv-easy-checkout .coolca-branch-selection .row .column { width: auto; padding: 0; font-size: 13px; line-height: 1.35; text-align: left; text-transform: none; letter-spacing: 0; color: var(--bv-texto); }
.bv-easy-checkout .coolca-branch-selection .row .column:first-child { font-weight: 500; color: var(--bv-azul); }
.bv-easy-checkout .coolca-branch-selection .coolca-branch-select-act { min-height: 0; height: 34px; padding: 0 12px; border: 1px solid var(--bv-azul); border-radius: 0; background: var(--bv-azul); box-shadow: none; color: var(--bv-crema); font-family: var(--bv-sans); font-size: 10.5px; font-weight: 500; letter-spacing: 0.14em; line-height: 32px; text-transform: uppercase; }
@media (max-width: 480px) {
  .bv-easy-checkout .coolca-branch-selection .row { grid-template-columns: minmax(0, 1fr) auto; }
  .bv-easy-checkout .coolca-branch-selection .row .column:nth-child(2) { grid-column: 1; grid-row: 2; font-size: 12px; color: var(--bv-texto-2); }
  .bv-easy-checkout .coolca-branch-selection .row .column:last-child { grid-column: 2; grid-row: 1 / span 2; }
}
/* Resumen: solo la opción elegida, con su fecha */
.bv-easy-checkout .bv-envio-resumen td { text-align: right; }
.bv-envio-resumen-nombre { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 13px; line-height: 1.35; color: var(--bv-texto); }
.bv-envio-resumen-chip { display: block; margin-top: 2px; font-size: 11.5px; color: var(--bv-texto-2); }
.bv-envio-resumen .bv-envio-precio { display: block; margin-top: 2px; }
.bv-envio-resumen-falta { font-size: 12.5px; color: var(--bv-texto-2); }
/* Sin "¿Enviamos a otra dirección?" ni sus campos (inc/checkout.php: queda destildada y se usa la del bloque 3) */
.bv-easy-checkout .woocommerce-shipping-fields { display: none !important; }
/* Nota del pedido: sin el título "Información adicional", como cierre del bloque 3, plegada hasta que se pide */
.bv-easy-checkout .woocommerce-additional-fields > h3 { display: none; }
.bv-easy-checkout .woocommerce-additional-fields { margin-top: 6px; }
.bv-easy-checkout .bv-ck-nota-abrir { display: inline-flex; align-items: baseline; gap: 8px; min-height: 0; height: auto; margin: 4px 0 0; padding: 0; border: 0; background: none; box-shadow: none; font-family: var(--bv-sans); font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--bv-azul); cursor: pointer; }
.bv-easy-checkout .bv-ck-nota-abrir span { font-size: 17px; line-height: 1; }
.bv-easy-checkout .bv-ck-nota-abrir small { font-size: 12px; font-weight: 300; color: var(--bv-texto-2); }
.bv-easy-checkout .bv-ck-nota-abrir:hover { color: var(--bv-dorado); }
.bv-easy-checkout #order_comments_field[hidden] { display: none !important; }
.bv-easy-checkout #order_comments { min-height: 84px; height: 84px; padding: 12px 14px; resize: vertical; }

/* ---------- "No sé mi código postal": buscador en la misma página (inc/codigo-postal.php, bievres.js) ----------
   El botón se ve como el link de antes; abre una ventana con provincia, localidad o barrio y los códigos para tocar.
   En celular sube desde abajo. */
:is(.bv-calc, #bv-ck-envio) button:is(.bv-calc-nose, .bv-ck-nose) { display: inline-block; width: auto; min-height: 0; height: auto; margin: 8px 0 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; font-family: var(--bv-sans); font-size: 12px; font-weight: 400; letter-spacing: 0; line-height: 1.4; text-transform: none; color: var(--bv-texto-2); text-decoration: underline !important; text-underline-offset: 3px; cursor: pointer; }
:is(.bv-calc, #bv-ck-envio) button:is(.bv-calc-nose, .bv-ck-nose):hover { color: var(--bv-azul); }
.bv-cpb[hidden] { display: none; }
.bv-cpb { position: fixed; inset: 0; z-index: 100001; display: flex; align-items: center; justify-content: center; padding: 16px; }
.bv-cpb-fondo { position: absolute; inset: 0; background: rgba(22, 50, 79, 0.45); }
.bv-cpb-caja { position: relative; display: flex; flex-direction: column; width: 100%; max-width: 520px; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); padding: 28px 24px 20px; overflow: hidden; background: var(--bv-crema); font-family: var(--bv-sans); color: var(--bv-texto); }
.bv-cpb .bv-cpb-cerrar { position: absolute; top: 8px; right: 10px; width: 36px; height: 36px; min-height: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; font-size: 28px; font-weight: 300; line-height: 1; color: var(--bv-azul); cursor: pointer; }
.bv-cpb-titulo { margin: 0 36px 6px 0; font-family: var(--bv-serif); font-style: italic; font-weight: 500; font-size: 26px; line-height: 1.15; color: var(--bv-azul); }
.bv-cpb-texto { margin: 0 0 14px; font-size: 13.5px; line-height: 1.45; color: var(--bv-texto-2); }
.bv-cpb-campos { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: 8px; }
.bv-cpb .bv-cpb-campos select, .bv-cpb .bv-cpb-campos input { width: 100%; height: 46px; margin: 0; padding: 0 12px; border: 1px solid var(--bv-linea); border-radius: 0; background-color: var(--bv-blanco); box-shadow: none; font-family: var(--bv-sans); font-size: 15px; color: var(--bv-texto); }
.bv-cpb .bv-cpb-campos select:focus, .bv-cpb .bv-cpb-campos input:focus { border-color: var(--bv-azul); outline: none; }
.bv-cpb-res { flex: 1 1 auto; min-height: 0; margin-top: 10px; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; transition: opacity 0.2s ease; }
.bv-cpb-cargando .bv-cpb-res { opacity: 0.55; }
.bv-cpb-lista { margin: 0; padding: 0; list-style: none; }
.bv-cpb-lista li { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0; padding: 11px 0; border-bottom: 1px solid var(--bv-linea); }
.bv-cpb-lugar { min-width: 0; font-size: 12.5px; font-weight: 500; letter-spacing: 0.1em; line-height: 1.3; text-transform: uppercase; color: var(--bv-azul); }
.bv-cpb-lugar small { display: block; margin-top: 2px; font-size: 11.5px; font-weight: 300; letter-spacing: 0; text-transform: none; color: var(--bv-texto-2); }
.bv-cpb-cps { display: flex; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; gap: 6px; max-width: 58%; }
.bv-cpb .bv-cpb-cps button { min-height: 0; height: 34px; margin: 0; padding: 0 12px; border: 1px solid var(--bv-azul); border-radius: 0; background: transparent; box-shadow: none; font-family: var(--bv-sans); font-size: 13px; font-weight: 500; letter-spacing: 0.04em; line-height: 32px; text-transform: none; color: var(--bv-azul); cursor: pointer; transition: background 0.2s ease, color 0.2s ease; }
.bv-cpb .bv-cpb-cps button:first-child, .bv-cpb .bv-cpb-cps button:hover { background: var(--bv-azul); color: var(--bv-crema); }
.bv-cpb-vacio, .bv-cpb-ayuda { margin: 10px 0 0; font-size: 12.5px; line-height: 1.45; color: var(--bv-texto-2); }
.bv-cpb-nota { margin: 12px 0 0; padding-top: 12px; border-top: 1px solid var(--bv-linea); font-size: 12px; font-weight: 300; line-height: 1.45; color: var(--bv-texto-2); }
.bv-cpb-nota a { color: var(--bv-azul); text-decoration: underline; text-underline-offset: 3px; }
html.bv-cpb-abierto { overflow: hidden; }
@media (max-width: 480px) {
  .bv-cpb { align-items: flex-end; padding: 0; }
  .bv-cpb-caja { max-width: none; max-height: 88vh; max-height: 88dvh; padding: 24px 16px 16px; }
  .bv-cpb-campos { grid-template-columns: minmax(0, 1fr); }
  .bv-cpb .bv-cpb-campos select, .bv-cpb .bv-cpb-campos input { font-size: 16px; }
}

/* ===========================================================================================
   Mi cuenta: cambios de prenda y recorrido del envío (18/10/2026). Pedido desde el pedido ("Cambiar prenda"),
   seguimiento en Mi cuenta > Cambios; recorrido del envío con los datos de Correo o Andreani.
   =========================================================================================== */
.bv-mc-rastreo { margin-top: 16px; }
.bv-mc-rastreo h4 small { display: block; margin-top: 4px; font-family: var(--bv-sans); font-style: normal; font-size: 11px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; color: var(--bv-texto-2); }
.bv-mc-rastreo-estado { margin: 0 0 10px; font-family: var(--bv-serif); font-style: italic; font-size: 18px; color: var(--bv-azul); }
.bv-mc-rastreo-estado[data-estado="entregado"] { color: #2F5B3A; }
.bv-mc-rastreo ol { list-style: none; margin: 0; padding: 0; }
.bv-mc-rastreo li { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 12px; padding: 8px 0; border-top: 1px solid var(--bv-arena); font-size: 13px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-mc-rastreo li:first-child { border-top: 0; padding-top: 0; color: var(--bv-azul); font-weight: 400; }
.bv-mc-rastreo li time { font-family: var(--bv-sans); font-size: 12px; color: var(--bv-texto-2); }
.bv-mc-rastreo li small { display: block; font-size: 12px; color: #8A94A0; }
.bv-mc-rastreo-pie { display: block; margin-top: 10px; font-size: 11.5px; color: #8A94A0; }

/* Lista de cambios. */
.bv-mc-cambios .bv-mc-caja, .bv-mc-cambiar .bv-mc-caja { margin-top: 16px; }
.bv-cb-cab { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 10px 16px; margin-bottom: 14px; }
.bv-cb-cab h4 { margin: 4px 0 0; }
.bv-cb-cab .bv-etiqueta a { color: inherit; }
.bv-cb-cerrado { opacity: 0.85; }
.bv-cb-pasos { list-style: none; margin: 0 0 14px; padding: 0; display: grid; gap: 0; }
.bv-cb-pasos li { position: relative; display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 6px 0; font-family: var(--bv-sans); font-size: 12px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: #8A94A0; }
.bv-cb-pasos li::before { content: ""; position: absolute; left: 10px; top: 0; bottom: 0; width: 2px; background: var(--bv-arena); }
.bv-cb-pasos li:first-child::before { top: 50%; }
.bv-cb-pasos li:last-child::before { bottom: 50%; }
.bv-cb-punto { position: relative; z-index: 1; width: 22px; height: 22px; border-radius: 50%; border: 1px solid var(--bv-linea); background: var(--bv-blanco); display: flex; align-items: center; justify-content: center; color: transparent; }
.bv-cb-pasos li[data-estado="hecho"] { color: var(--bv-azul); }
.bv-cb-pasos li[data-estado="hecho"] .bv-cb-punto { background: var(--bv-limon); border-color: var(--bv-limon); color: var(--bv-azul); }
.bv-cb-pasos li[data-estado="ahora"] { color: var(--bv-azul); font-weight: 600; }
.bv-cb-pasos li[data-estado="ahora"] .bv-cb-punto { border-color: var(--bv-azul); box-shadow: inset 0 0 0 4px var(--bv-blanco), inset 0 0 0 8px var(--bv-azul); }
.bv-cb-pasos li[data-estado="ahora"]::before { background: linear-gradient(var(--bv-limon) 50%, var(--bv-arena) 50%); }
.bv-cb-pasos time { font-family: var(--bv-serif); font-style: italic; font-size: 12.5px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--bv-texto-2); }
.bv-cb-texto { margin: 0 0 14px; padding: 12px 14px; background: var(--bv-crema); border-left: 3px solid var(--bv-limon); font-size: 14px; font-weight: 300; line-height: 1.55; color: var(--bv-texto); }
.bv-cb-acciones { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 6px; }
.bv-cb-acciones:empty { display: none; }
.bv-cb-despache { flex: 1 1 100%; }
.bv-cb-despache label { display: block; margin: 4px 0 6px; font-size: 13px; font-weight: 400; color: var(--bv-texto-2); }
.bv-cb-despache-fila { display: flex; flex-wrap: wrap; gap: 8px; }
.bv-cb-despache-fila input[type="text"], .bv-cb-despache-fila select { flex: 1 1 180px; min-height: 44px; padding: 8px 12px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); font-family: var(--bv-sans); font-size: 14px; }
.bv-cb-link { padding: 0; border: 0; background: none; font-family: var(--bv-sans); font-size: 12.5px; color: var(--bv-texto-2); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.bv-cb-link:hover { color: var(--bv-bordo); }
.bv-cb-detalle { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px 28px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--bv-arena); }
.bv-cb-detalle h5 { margin: 0 0 4px; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-dorado); }
.bv-cb-detalle .bv-mc-item:last-of-type { border-bottom: 0; }
.bv-cb-totales small { display: block; margin-top: 4px; font-size: 11.5px; color: #8A94A0; }
.bv-cb-novedades { margin-top: 12px; }
.bv-cb-novedades summary { cursor: pointer; font-family: var(--bv-sans); font-size: 12.5px; font-weight: 500; color: var(--bv-azul); }
.bv-cb-novedades ol { list-style: none; margin: 8px 0 0; padding: 0; }
.bv-cb-novedades li { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 12px; padding: 6px 0; border-top: 1px solid var(--bv-arena); font-size: 13px; font-weight: 300; line-height: 1.5; color: var(--bv-texto-2); }
.bv-cb-novedades time { font-family: var(--bv-sans); font-size: 12px; }
.bv-cb-error, .bv-cambiar-error { margin: 8px 0 0; padding: 10px 14px; background: #FBEDEA; border-left: 3px solid var(--bv-bordo); font-size: 13.5px; color: var(--bv-bordo); }
.bv-cb-vacio .bv-mc-btn { margin-top: 10px; }

/* Formulario "Cambiar prenda". */
.bv-cambiar-paso h4 { display: flex; align-items: center; gap: 10px; }
.bv-cambiar-item { cursor: pointer; }
.bv-cambiar-item .bv-mc-item-precio small { display: block; font-size: 11px; font-weight: 400; color: var(--bv-texto-2); }
.bv-cambiar-item .bv-cambiar-chk { position: absolute; opacity: 0; width: 1px; height: 1px; }
.bv-cambiar-marca { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; margin-top: 6px; border: 1px solid var(--bv-linea); border-radius: 50%; color: transparent; background: var(--bv-blanco); }
.bv-cambiar-item:has(.bv-cambiar-chk:checked) { background: var(--bv-crema); box-shadow: inset 3px 0 0 var(--bv-limon); }
.bv-cambiar-item:has(.bv-cambiar-chk:checked) .bv-cambiar-marca { background: var(--bv-limon); border-color: var(--bv-limon); color: var(--bv-azul); }
.bv-cambiar-cant { display: block; margin-top: 6px; min-height: 40px; padding: 6px 10px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); font-family: var(--bv-sans); font-size: 13px; }
.bv-cambiar-motivos { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 8px; margin-top: 8px; }
.bv-cambiar-motivos label { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); font-size: 14px; cursor: pointer; }
.bv-cambiar-motivos label:has(input:checked) { border-color: var(--bv-azul); background: var(--bv-crema); }
.bv-cambiar-motivos input { accent-color: var(--bv-azul); }
.bv-cambiar-falla { margin-top: 12px; padding: 12px 14px; background: var(--bv-crema); border-left: 3px solid var(--bv-limon); }
.bv-cambiar-foto { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 8px; cursor: pointer; }
.bv-cambiar-foto input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.bv-cambiar-foto-nombre { font-size: 13px; color: var(--bv-texto-2); }
.bv-cambiar-texto { display: block; margin-top: 12px; }
.bv-cambiar-texto span { display: block; margin-bottom: 6px; font-size: 13px; color: var(--bv-texto-2); }
.bv-cambiar-texto textarea { width: 100%; padding: 10px 12px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); font-family: var(--bv-sans); font-size: 14px; resize: vertical; }
.bv-cambiar-rapido { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.bv-cambiar-rapido:empty { display: none; }
.bv-cambiar-rapido-btn { padding: 9px 14px; border: 1px solid var(--bv-azul); border-radius: 0; background: var(--bv-blanco); font-family: var(--bv-sans); font-size: 12.5px; font-weight: 500; color: var(--bv-azul); cursor: pointer; }
.bv-cambiar-rapido-btn:hover { background: var(--bv-azul); color: var(--bv-crema); }
.bv-cambiar-buscar input { width: 100%; min-height: 46px; padding: 10px 14px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); font-family: var(--bv-sans); font-size: 15px; }
.bv-cambiar-resultados { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; margin-top: 12px; }
.bv-cambiar-resultados:empty { display: none; }
.bv-cambiar-res { display: flex; flex-direction: column; gap: 6px; padding: 10px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); }
.bv-cambiar-res img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; background: var(--bv-arena); }
.bv-cambiar-res b { font-family: var(--bv-serif); font-weight: 500; font-size: 15px; line-height: 1.2; color: var(--bv-azul); }
.bv-cambiar-res .bv-cambiar-res-precio { font-family: var(--bv-sans); font-size: 13px; font-weight: 500; color: var(--bv-precio); }
.bv-cambiar-res select { min-height: 38px; padding: 6px 8px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); font-family: var(--bv-sans); font-size: 13px; }
.bv-cambiar-res button { min-height: 38px; padding: 6px 10px; border: 1px solid var(--bv-azul); background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12.5px; font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase; cursor: pointer; }
.bv-cambiar-res button:hover { background: var(--bv-azul-oscuro); }
.bv-cambiar-msj { grid-column: 1 / -1; margin: 0; font-size: 13px; color: var(--bv-texto-2); }
.bv-cambiar-sel { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--bv-arena); }
.bv-cambiar-sel h5 { margin: 0 0 4px; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--bv-dorado); }
.bv-cambiar-sel .bv-mc-item { grid-template-columns: 50px minmax(0, 1fr) auto auto; }
.bv-cambiar-quitar { padding: 4px 8px; border: 0; background: none; font-size: 18px; line-height: 1; color: var(--bv-texto-2); cursor: pointer; }
.bv-cambiar-quitar:hover { color: var(--bv-bordo); }
.bv-cambiar-totales small { display: block; margin-top: 6px; font-size: 12px; color: var(--bv-texto-2); }
.bv-cambiar-totales[data-falta="1"] .bv-gr-total b { color: var(--bv-bordo); }
.bv-cambiar-acepta { display: flex; align-items: flex-start; gap: 10px; font-size: 13.5px; line-height: 1.5; color: var(--bv-texto-2); cursor: pointer; }
.bv-cambiar-acepta input { margin-top: 4px; accent-color: var(--bv-azul); }
.bv-cambiar-enviar { margin-top: 14px; }
.bv-cambiar-enviar[disabled] { opacity: 0.6; cursor: wait; }

/* Modo cambio en la tienda (19/10/2026): barra fija arriba, aviso al elegir y paso 3 del formulario. */
body.bv-modo-cambio { padding-top: var(--bv-mc-barra, 52px); }
body.bv-modo-cambio .whb-sticked, body.bv-modo-cambio .wd-sticky-nav { top: var(--bv-mc-barra, 52px); }
.bv-mc-barra { position: fixed; top: 0; left: 0; right: 0; z-index: 1200; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 16px; min-height: 52px; padding: 8px 16px; background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-sans); font-size: 13px; line-height: 1.35; box-shadow: 0 2px 10px rgba(22, 50, 79, 0.25); }
.bv-mc-barra-txt { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; min-width: 0; }
.bv-mc-barra-txt b { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; font-size: 11.5px; color: var(--bv-limon); }
.bv-mc-barra-txt small { font-size: 12px; opacity: 0.85; }
.bv-mc-barra-acc { display: flex; align-items: center; gap: 8px; flex: none; }
.bv-mc-barra-btn { display: inline-flex; align-items: center; min-height: 34px; padding: 6px 14px; background: var(--bv-limon); color: var(--bv-azul); font-weight: 600; font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; text-decoration: none; }
.bv-mc-barra-btn:hover { background: var(--bv-crema); color: var(--bv-azul); }
.bv-mc-barra-salir { padding: 6px 4px; border: 0; background: none; color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; opacity: 0.9; }
@media (max-width: 768px) { .bv-mc-barra { padding: 8px 12px; } .bv-mc-barra-txt small { display: none; } }
.bv-mc-elegido { position: fixed; left: 50%; bottom: 24px; z-index: 1300; transform: translateX(-50%); width: min(520px, calc(100% - 24px)); padding: 18px 20px; background: var(--bv-blanco); border: 1px solid var(--bv-linea); border-left: 4px solid var(--bv-limon); box-shadow: 0 10px 30px rgba(22, 50, 79, 0.22); font-family: var(--bv-sans); }
.bv-mc-elegido-error { border-left-color: var(--bv-bordo); }
.bv-mc-elegido-txt { margin: 0 0 12px; font-size: 14px; line-height: 1.5; color: var(--bv-texto); }
.bv-mc-elegido-acc { display: flex; flex-wrap: wrap; gap: 8px; }
.bv-mc-elegido-acc .bv-mc-btn { flex: 1 1 180px; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 16px; border: 1px solid var(--bv-azul); border-radius: 0; background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-sans); font-size: 12px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; text-decoration: none; cursor: pointer; }
.bv-mc-elegido-acc .bv-mc-btn-borde { background: transparent; color: var(--bv-azul); }
.bv-mc-elegido-acc .bv-mc-btn:hover { background: var(--bv-azul-oscuro); border-color: var(--bv-azul-oscuro); color: var(--bv-crema); }
@media (max-width: 768px) { .bv-mc-elegido { bottom: 78px; } }
body.bv-modo-cambio .bv-mc-boton-cambio::before { display: none !important; }
.bv-cambiar-elegir { display: grid; gap: 8px; margin: 12px 0 6px; }
.bv-cambiar-elegir small { font-size: 12.5px; line-height: 1.5; color: var(--bv-texto-2); }
.bv-cambiar-buscar-caja { margin-top: 8px; }
.bv-cambiar-buscar-caja summary { cursor: pointer; font-family: var(--bv-sans); font-size: 12.5px; font-weight: 500; color: var(--bv-azul); text-decoration: underline; text-underline-offset: 3px; }
.bv-cambiar-buscar-caja[open] summary { margin-bottom: 10px; }
.bv-cambiar-faltan { margin: 12px 0 0; padding: 10px 14px 10px 30px; background: var(--bv-crema); border-left: 3px solid var(--bv-limon); font-size: 13px; line-height: 1.6; color: var(--bv-texto-2); }
.bv-cambiar-faltan:empty, .bv-cambiar-faltan[hidden] { display: none; }
.bv-cambiar-faltan li { margin: 0; }

/* Envíos del cambio (21/10/2026): opciones con logo, precio de lista tachado y descuento por cambio; plazo para despachar. */
.bv-cambiar-envios { display: grid; gap: 8px; margin-top: 10px; }
.bv-cambiar-envio { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 14px; align-items: center; padding: 12px 14px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); cursor: pointer; }
.bv-cambiar-envio:has(input:checked) { border-color: var(--bv-azul); background: var(--bv-crema); box-shadow: inset 3px 0 0 var(--bv-limon); }
.bv-cambiar-envio input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.bv-cambiar-envio-cuerpo { display: grid; gap: 4px; min-width: 0; }
.bv-cambiar-envio-cab { display: flex; align-items: center; gap: 10px; font-family: var(--bv-serif); font-size: 16px; font-weight: 500; line-height: 1.2; color: var(--bv-azul); }
.bv-cambiar-envio-cab .bv-envio-marca { flex: none; display: inline-flex; align-items: center; }
.bv-cambiar-envio-cuerpo small { font-size: 12.5px; line-height: 1.45; color: var(--bv-texto-2); }
.bv-cambiar-envio-precio { text-align: right; font-family: var(--bv-sans); }
.bv-cambiar-envio-precio s { display: block; font-size: 12px; color: #8A94A0; }
.bv-cambiar-envio-precio b { display: block; font-size: 15px; font-weight: 600; color: var(--bv-precio); }
.bv-cambiar-envio-precio small { display: block; font-size: 10.5px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bv-dorado); white-space: nowrap; }
.bv-cambiar-envio-gratis { display: none; font-style: normal; font-size: 12px; font-weight: 600; color: var(--bv-azul); }
.bv-cambiar-es-falla .bv-cambiar-envio-precio s, .bv-cambiar-es-falla .bv-cambiar-envio-precio b, .bv-cambiar-es-falla .bv-cambiar-envio-precio small { display: none; }
.bv-cambiar-es-falla .bv-cambiar-envio-gratis { display: block; }
.bv-cambiar-envios-plazo { margin-top: 12px; }
/* Sucursal donde deja la prenda (23/10/2026): la lista para elegir, con el mismo diseño que las opciones de envío */
.bv-cambiar-suc { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--bv-arena); }
.bv-cambiar-suc[hidden] { display: none; }
.bv-cambiar-suc h5 { margin: 0 0 4px; font-family: var(--bv-serif); font-size: 18px; font-weight: 500; line-height: 1.25; color: var(--bv-azul); text-transform: none; letter-spacing: 0; }
.bv-cambiar-suc-lista { display: grid; gap: 8px; margin: 10px 0 8px; }
.bv-cambiar-suc-op { position: relative; display: block; padding: 11px 14px 11px 40px; border: 1px solid var(--bv-linea); background: var(--bv-blanco); cursor: pointer; }
.bv-cambiar-suc-op:has(input[type="radio"]:checked) { border-color: var(--bv-azul); background: var(--bv-crema); box-shadow: inset 3px 0 0 var(--bv-limon); }
.bv-cambiar-suc-op input[type="radio"] { position: absolute; left: 14px; top: 14px; width: 16px; height: 16px; margin: 0; accent-color: var(--bv-azul); }
.bv-cambiar-suc-op span { display: grid; gap: 2px; min-width: 0; }
.bv-cambiar-suc-op b { font-family: var(--bv-sans); font-size: 14px; font-weight: 500; line-height: 1.3; color: var(--bv-azul); }
.bv-cambiar-suc-op small { font-size: 12.5px; line-height: 1.4; color: var(--bv-texto); }
.bv-cambiar-suc-op em { font-style: normal; font-size: 12px; line-height: 1.4; color: var(--bv-texto-2); }
.bv-cambiar-suc-op em:empty { display: none; }
body .bv-cambiar-suc-op .bv-cambiar-suc-texto { width: 100%; height: 40px; margin-top: 6px; padding: 0 12px; border: 1px solid var(--bv-linea); border-radius: 0; background: var(--bv-blanco); box-shadow: none; font-family: var(--bv-sans); font-size: 14px; color: var(--bv-azul); }
body .bv-cambiar-suc-op .bv-cambiar-suc-texto:focus { border-color: var(--bv-azul); outline: none; box-shadow: 0 0 0 3px rgba(232, 185, 35, 0.28); }
.bv-cambiar-suc-pie { margin-top: 6px; font-size: 12px; }
.bv-cambiar-suc-pie a { color: var(--bv-azul); text-decoration: underline; text-underline-offset: 3px; }
.bv-cambiar-envios-paso .bv-cambiar-totales { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--bv-arena); }
.bv-cambiar-totales [data-tot="envio"] s, .bv-cb-totales s { margin-right: 6px; font-weight: 400; color: #8A94A0; }
.bv-cb-plazo { display: inline-flex; align-items: center; gap: 6px; flex: 1 1 100%; padding: 8px 12px; background: var(--bv-crema); border-left: 3px solid var(--bv-limon); font-family: var(--bv-sans); font-size: 13px; font-weight: 500; line-height: 1.4; color: var(--bv-azul); }
.bv-cb-plazo-urgente { border-left-color: var(--bv-bordo); background: #FBEDEA; color: var(--bv-bordo); }
@media (max-width: 480px) { .bv-cambiar-envio { grid-template-columns: 1fr; } .bv-cambiar-envio-precio { text-align: left; } .bv-cambiar-envio-precio s, .bv-cambiar-envio-precio b, .bv-cambiar-envio-precio small { display: inline; margin-right: 8px; } }

/* Guía "Cómo funciona el cambio" arriba del formulario (21/10/2026): en el celular, cuatro desplegables (uno por paso);
   en computadora (desde 768 px, clase bv-cambiar-guia-tarjetas que pone el script de la plantilla) las cuatro tarjetas abiertas en fila. */
.bv-cambiar-guia { margin-top: 16px; padding: clamp(16px, 2.4vw, 22px); background: var(--bv-crema); border: 1px solid var(--bv-linea); }
.bv-cambiar-guia-cab { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin-bottom: 12px; }
.bv-cambiar-guia-cab .bv-mc-nota { margin: 0; }
.bv-cambiar-guia-lista { display: grid; gap: 8px; }
.bv-cambiar-guia-paso { background: var(--bv-blanco); border: 1px solid var(--bv-linea); border-left: 3px solid var(--bv-limon); }
.bv-cambiar-guia-paso summary { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 10px 14px 10px 12px; cursor: pointer; list-style: none; }
.bv-cambiar-guia-paso summary::-webkit-details-marker { display: none; }
.bv-cambiar-guia-paso summary::marker { content: ""; }
.bv-cambiar-guia-num { flex: none; width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--bv-azul); color: var(--bv-crema); font-family: var(--bv-serif); font-style: italic; font-size: 15px; line-height: 1; }
.bv-cambiar-guia-ico { display: none; }
.bv-cambiar-guia-tit { flex: 1 1 auto; min-width: 0; font-family: var(--bv-serif); font-size: 15.5px; font-weight: 500; line-height: 1.25; color: var(--bv-azul); }
.bv-cambiar-guia-flecha { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border: 1px solid var(--bv-linea); border-radius: 50%; color: var(--bv-azul); transition: transform 0.2s ease, border-color 0.2s ease; }
.bv-cambiar-guia-paso summary:hover .bv-cambiar-guia-flecha { border-color: var(--bv-azul); }
.bv-cambiar-guia-paso[open] .bv-cambiar-guia-flecha { transform: rotate(180deg); }
.bv-cambiar-guia-paso[open] summary { border-bottom: 1px solid var(--bv-arena); }
.bv-cambiar-guia-paso p { margin: 0; padding: 12px 14px 14px; font-size: 13.5px; line-height: 1.55; font-weight: 300; color: var(--bv-texto-2); }
/* Tarjetas (computadora). */
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-toca { display: none; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-lista { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-paso { display: grid; align-content: start; border-left: 1px solid var(--bv-linea); border-top: 3px solid var(--bv-limon); }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-paso summary { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "ico . num" "tit tit tit"; align-items: center; gap: 10px 8px; min-height: 0; padding: 14px 14px 4px; cursor: default; pointer-events: none; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-ico { grid-area: ico; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: var(--bv-crema); color: var(--bv-azul); }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-ico svg { width: 18px; height: 18px; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-num { grid-area: num; justify-self: end; width: auto; height: auto; background: none; color: var(--bv-dorado); font-size: 24px; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-tit { grid-area: tit; font-size: 16px; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-flecha { display: none; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-paso[open] summary { border-bottom: 0; }
.bv-cambiar-guia-tarjetas .bv-cambiar-guia-paso p { padding: 4px 14px 16px; font-size: 12.5px; line-height: 1.5; }
@media (min-width: 768px) and (max-width: 1023px) { .bv-cambiar-guia-tarjetas .bv-cambiar-guia-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Dónde despachar la prenda (21/10/2026): línea con el link al buscador de sucursales en el paso de envíos y en Mi cuenta. */
.bv-cambiar-envio-donde { color: var(--bv-azul); }
.bv-cambiar-envio-donde a, .bv-cb-donde a { color: var(--bv-azul); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.bv-cambiar-envio-donde a:hover, .bv-cb-donde a:hover { color: var(--bv-dorado); }
.bv-cb-donde { flex: 1 1 100%; margin: 0; font-size: 13px; line-height: 1.5; color: var(--bv-texto-2); }

/* Lista de sucursales que reciben el paquete (inc/sucursales.php). */
.bv-suc-ver { color: var(--bv-azul); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; cursor: pointer; }
.bv-suc-ver:hover { color: var(--bv-dorado); }
.bv-suc-res { display: block; margin-top: 8px; }
.bv-suc-res[hidden] { display: none; }
.bv-suc-tit { display: block; margin-bottom: 4px; font-family: var(--bv-sans); font-size: 11px; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: var(--bv-dorado); }
.bv-suc-lista { display: block; }
.bv-suc-item { display: block; padding: 7px 0 7px 10px; border-left: 2px solid var(--bv-limon); margin-bottom: 4px; background: var(--bv-crema); font-size: 12.5px; line-height: 1.45; color: var(--bv-texto); }
.bv-suc-item b { display: block; font-weight: 500; color: var(--bv-azul); }
.bv-suc-item span, .bv-suc-item em { display: block; font-style: normal; }
.bv-suc-item em { color: var(--bv-texto-2); font-size: 12px; }
.bv-suc-pie { display: block; margin-top: 6px; font-size: 12px; line-height: 1.5; color: var(--bv-texto-2); }
.bv-suc-pie a { color: var(--bv-azul); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }
