/* ════════════════════════════════════════════════════════════════════════
   DILIMPRO · hoja del tema hijo (Bricks 2.4)
   Qué vive AQUÍ y no en Bricks (norma «una fuente de verdad», ANGI bricks-design-system):
   - @font-face (Bricks no importa @font-face desde el conversor)
   - la familia mono de rótulos y cifras (Bricks entrecomilla font-family con variables)
   - animaciones (@keyframes no entra en clases globales)
   - estilo de WooCommerce que no tiene control nativo
   Los COLORES y los tamaños viven en Bricks (variables y clases globales). Aquí no se
   redeclaran --marino, --marca, etc.
   ════════════════════════════════════════════════════════════════════════ */
@font-face { font-family: "Archivo"; src: url(../fonts/archivo-var-latin.woff2) format("woff2"); font-weight: 400 800; font-style: normal; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url(../fonts/plexmono-400-latin.woff2) format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url(../fonts/plexmono-500-latin.woff2) format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url(../fonts/plexmono-600-latin.woff2) format("woff2"); font-weight: 600; font-display: swap; }

:root { --dp-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace; --dp-sans: "Archivo", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
body { font-family: var(--dp-sans); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* Rótulos, cifras y referencias en mono (TEMA.md §3) */
.dp-eyebrow, .dp-card__cat, .dp-card__price, .dp-cat__count, .dp-hero__badge-kicker, .dp-info__label,
.dp-footer__heading, .dp-ticker__text, .dp-mono, .dp-card__price .woocommerce-Price-amount,
.woocommerce-Price-amount, .dp-price, .sku { font-family: var(--dp-mono); }

/* Foco visible al tabular */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #159FC9; outline-offset: 2px; }

/* Marquesina del pie */
.dp-ticker__text { display: inline-block; padding-left: 100%; animation: dp-ticker 38s linear infinite; }
.dp-ticker:hover .dp-ticker__text { animation-play-state: paused; }
@keyframes dp-ticker { from { transform: translateX(0); } to { transform: translateX(-100%); } }
@media (prefers-reduced-motion: reduce) {
  .dp-ticker__text { animation: none; padding-left: 0; white-space: normal; }
  *, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; }
}

/* ── Tarjetas de producto (bucles de Bricks) ─────────────────────────── */
.dp-card__price { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 6px; }
.dp-card__price .woocommerce-price-suffix { font-family: var(--dp-sans); font-size: 12px; font-weight: 400; color: var(--txt-3); }
.dp-card__price del { color: var(--txt-3); font-weight: 400; }
.dp-card__price ins { text-decoration: none; }
.dp-card__add.dp-addcart { background: none; padding: 0; }
.dp-addcart .button { display: inline-flex; align-items: center; gap: 6px; padding: 9px 16px; border-radius: 99px; background: var(--acento-fondo); color: var(--acento-texto); font-size: 13px; font-weight: 600; line-height: 1.1; text-decoration: none; white-space: nowrap; border: 0; transition: background-color .2s ease, color .2s ease; }
.dp-addcart .button:hover { background: var(--acento); color: #fff; }
.dp-addcart .button.loading { opacity: .6; }
.dp-addcart .added_to_cart { display: none; }
.dp-addcart .button.added::after { content: " ✓"; }
.dp-card__img img, .dp-card__img { mix-blend-mode: multiply; }
.dp-card__title a { color: inherit; text-decoration: none; }
.dp-card__title a:hover { color: var(--acento-texto); }
.dp-card__media { position: relative; }
.dp-cat__img { object-fit: cover; }

/* ── Cabecera ──────────────────────────────────────────────────────────── */
#brx-header { position: sticky; top: -34px; z-index: 990; }
#dp-header { transition: box-shadow .25s ease; }
.dp-scrolled #dp-header { box-shadow: 0 10px 30px -18px rgba(24, 59, 92, .35); }
.dp-nav .sub-menu, .dp-nav .brx-submenu-toggle + ul { box-shadow: 0 18px 44px -12px rgba(24, 59, 92, .22); min-width: 230px; padding: 8px 0; }
.dp-nav .menu-item > a { transition: color .2s ease; }
.dp-headbtn svg { width: 22px; height: 22px; }
.dp-headbtn .cart-count, .dp-headbtn .cart-count.show { font-family: var(--dp-mono); }
.brxe-woocommerce-mini-cart .cart-detail { border-radius: 0; }
.brxe-search .bricks-search-overlay .title { font-family: var(--dp-sans); font-weight: 700; color: #fff; }
@media (max-width: 767px) { #brx-header { top: -52px; } }
@media (max-width: 991px) {
  .dp-header__actions { margin-left: auto; }
  #dp-header .dp-nav { order: 3; margin-left: 4px; margin-right: 0; }
  #dp-header .bricks-mobile-menu-toggle { width: 26px; }
}
.dp-headbtn > svg, .dp-headbtn .icon > svg, .brxe-woocommerce-mini-cart.dp-headbtn svg { width: 22px; height: 22px; }

/* ══ WooCommerce ═══════════════════════════════════════════════════════ */
.dp-crumbs a { color: var(--txt-2); text-decoration: none; }
.dp-crumbs a:hover { color: var(--acento-texto); }
.dp-toolbar__meta .woocommerce-result-count { margin: 0; }
.dp-toolbar__meta select.orderby, .woocommerce select, .woocommerce-page select {
  appearance: none; -webkit-appearance: none; border: 1px solid var(--linea-fuerte); border-radius: 99px; padding: 9px 36px 9px 16px; font: 500 14px/1.2 var(--dp-sans); color: var(--titulo);
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A2F50' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center / 14px; }
.dp-chip.brxe-div { text-decoration: none; }

/* Botones de WooCommerce en todas partes */
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button, .woocommerce #respond input#submit,
.brxe-product-add-to-cart .single_add_to_car_button, .single_add_to_cart_button, .checkout-button, #place_order, .woocommerce-button {
  border-radius: 99px !important; font-family: var(--dp-sans) !important; font-weight: 600 !important; letter-spacing: 0; text-transform: none; }
.single_add_to_cart_button, .checkout-button, #place_order, .woocommerce-form-login__submit, .woocommerce-Button--primary, .woocommerce-form-register__submit {
  background: linear-gradient(140deg, #1AA6D2, #1390BA 60%, #0F7FA6) !important; color: #fff !important; border: 0 !important; padding: 15px 30px !important; font-size: 15px !important;
  box-shadow: 0 6px 18px -6px rgba(21,159,201,.55); transition: transform .2s ease; }
.single_add_to_cart_button:hover, .checkout-button:hover, #place_order:hover { transform: translateY(-1px); }

/* Ficha */
.dp-product__price .price, .dp-product__price { font-family: var(--dp-mono); }
.dp-product__price .woocommerce-price-suffix { font-family: var(--dp-sans); font-size: 14px; font-weight: 400; color: var(--txt-3); margin-left: 6px; }
.dp-product__price del { font-size: .6em; color: var(--txt-3); }
.dp-product__price ins { text-decoration: none; }
.dp-product__gallery .woocommerce-product-gallery__image img, .dp-product__gallery .flex-viewport img { mix-blend-mode: multiply; }
.dp-product__gallery .flex-control-thumbs { display: flex; gap: 10px; margin-top: 14px; }
.dp-product__gallery .flex-control-thumbs li { width: 72px !important; border-radius: 12px; overflow: hidden; background: #fff; border: 1px solid var(--linea); }
.dp-product__gallery .flex-control-thumbs img { opacity: .7; } .dp-product__gallery .flex-control-thumbs img.flex-active { opacity: 1; }
.dp-product__cart form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 0; }
.quantity { display: inline-flex; align-items: center; border: 1px solid var(--linea-fuerte); border-radius: 99px; overflow: hidden; background: #fff; }
.quantity input.qty { width: 56px; height: 48px; border: 0; text-align: center; font: 600 16px var(--dp-mono); color: var(--titulo); background: transparent; -moz-appearance: textfield; }
.quantity input.qty::-webkit-inner-spin-button, .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.quantity .action { width: 40px; height: 48px; border: 0; background: transparent; color: var(--titulo); font-size: 18px; cursor: pointer; }
.quantity .action:hover { background: var(--acento-fondo); color: var(--acento-texto); }
.dp-trust p { margin: 0; } .dp-trust a { color: var(--acento-texto); font-weight: 600; }
.dp-trust__icon svg { width: 20px; height: 20px; }
.dp-product__meta a { color: var(--txt-2); }
.dp-product__meta .sku_wrapper { display: none; }
/* Pestañas */
.dp-tabs .tabs.wc-tabs, .dp-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 0 0 24px; border: 0; }
.dp-tabs ul.tabs li { margin: 0; border: 0; background: none; }
.dp-tabs ul.tabs li a { display: inline-block; padding: 10px 20px; border-radius: 99px; background: var(--fondo); color: var(--titulo); font-weight: 600; font-size: 15px; text-decoration: none; }
.dp-tabs ul.tabs li.active a { background: var(--marino); color: #fff; }
.dp-tabs .woocommerce-Tabs-panel { background: #fff; border: 1px solid var(--linea); border-radius: 24px; padding: 36px 40px; color: var(--txt-2); line-height: 1.7; }
.dp-tabs .woocommerce-Tabs-panel h2 { font-size: 22px; color: var(--titulo); margin: 0 0 12px; }
.dp-tabs .woocommerce-Tabs-panel h3 { font-size: 18px; color: var(--titulo); margin: 22px 0 8px; }
.dp-tabs .woocommerce-Tabs-panel ul { padding-left: 1.2em; }
.dp-tabs table.shop_attributes { width: 100%; border-collapse: collapse; }
.dp-tabs table.shop_attributes th, .dp-tabs table.shop_attributes td { border-bottom: 1px solid var(--linea); padding: 12px 8px; text-align: left; }
@media (max-width: 767px) { .dp-tabs .woocommerce-Tabs-panel { padding: 24px 20px; border-radius: 18px; } }

/* Relacionados (marcado de WooCommerce) con el aspecto de las tarjetas */
.dp-related .related > h2 { display: none; }
.dp-related ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; list-style: none; margin: 0; padding: 0; }
.dp-related ul.products::before, .dp-related ul.products::after { display: none !important; }
.dp-related ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; display: flex; flex-direction: column; gap: 6px; }
.dp-related li.product img { aspect-ratio: 1; object-fit: contain; background: var(--fondo); border-radius: 18px; padding: 24px; mix-blend-mode: multiply; margin: 0 0 10px !important; }
.dp-related li.product .woocommerce-loop-product__title { font-size: 16px !important; font-weight: 600; color: var(--titulo); line-height: 1.35; padding: 0 !important; }
.dp-related li.product .price { font-family: var(--dp-mono); font-weight: 600; font-size: 17px; color: var(--titulo) !important; }
.dp-related li.product .price .woocommerce-price-suffix { font-family: var(--dp-sans); font-size: 12px; font-weight: 400; color: var(--txt-3); }
.dp-related li.product a { text-decoration: none; }
.dp-related li.product .button { align-self: flex-start; margin-top: 6px !important; background: var(--acento-fondo) !important; color: var(--acento-texto) !important; font-size: 13px !important; padding: 9px 16px !important; }
.dp-related li.product .added_to_cart { display: none; }
@media (max-width: 991px) { .dp-related ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }

/* Avisos */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice {
  border: 1px solid var(--linea); border-radius: 16px; background: var(--fondo); color: var(--txt); padding: 14px 18px !important; list-style: none; font-size: 15px; }
.woocommerce-message { background: #EFFAF6; border-color: rgba(26,156,131,.28); }
.woocommerce-error { background: #FDF0F3; border-color: rgba(201,85,107,.28); }
.woocommerce-message .button, .woocommerce-info .button { float: right; background: #fff !important; color: var(--titulo) !important; padding: 7px 14px !important; font-size: 13px !important; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none; }

/* Paginación */
.dp-pagination .page-numbers { display: flex; gap: 6px; list-style: none; padding: 0; justify-content: center; }
.dp-pagination .page-numbers a, .dp-pagination .page-numbers span { display: inline-flex; min-width: 42px; height: 42px; align-items: center; justify-content: center; border-radius: 99px; border: 1px solid var(--linea-fuerte); color: var(--titulo); text-decoration: none; font-family: var(--dp-mono); font-weight: 600; }
.dp-pagination .page-numbers .current { background: var(--marino); border-color: var(--marino); color: #fff; }

/* Formularios (carrito, pago, cuenta) */
.woocommerce form .form-row label, .woocommerce-page form .form-row label { font-size: 14px; font-weight: 600; color: var(--titulo); margin-bottom: 6px; }
.woocommerce form .input-text, .woocommerce-page form .input-text, .woocommerce form textarea, .woocommerce .select2-container .select2-selection--single {
  border: 1px solid var(--linea-fuerte) !important; border-radius: 12px !important; padding: 12px 14px !important; font: 15px var(--dp-sans); color: var(--txt); background: #fff; min-height: 48px; }
.woocommerce .select2-container .select2-selection--single .select2-selection__rendered { line-height: 22px; padding: 0; }
.woocommerce .select2-container .select2-selection--single .select2-selection__arrow { top: 11px; right: 8px; }
.woocommerce form .input-text:focus { border-color: var(--acento) !important; box-shadow: 0 0 0 3px var(--acento-fondo); outline: none; }

/* Carrito */
.woocommerce-cart-form table.shop_table, table.shop_table { border: 1px solid var(--linea) !important; border-radius: 20px !important; overflow: hidden; border-collapse: separate !important; border-spacing: 0; width: 100%; background: #fff; }
table.shop_table th { font: 500 11px var(--dp-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--txt-3); background: var(--fondo); padding: 14px 16px !important; }
table.shop_table td { padding: 16px !important; border-top: 1px solid var(--linea) !important; vertical-align: middle; }
table.shop_table td.product-name a { color: var(--titulo); font-weight: 600; text-decoration: none; }
table.shop_table .product-thumbnail img { width: 72px !important; border-radius: 12px; background: var(--fondo); mix-blend-mode: multiply; }
table.shop_table .amount { font-family: var(--dp-mono); font-weight: 600; color: var(--titulo); }
table.shop_table a.remove { color: var(--crit-texto) !important; border-radius: 99px; }
table.shop_table a.remove:hover { background: #FDF0F3 !important; }
.cart-collaterals .cart_totals, .woocommerce-checkout-review-order, #order_review { background: var(--fondo); border-radius: 24px; padding: 28px; }
.cart-collaterals .cart_totals h2, #order_review_heading, .woocommerce-billing-fields h3, .woocommerce-additional-fields h3, .woocommerce-shipping-fields h3 { font-size: 22px; font-weight: 700; color: var(--titulo); margin: 0 0 16px; }
.cart_totals table.shop_table, #order_review table.shop_table { background: #fff; }
.coupon { display: flex; gap: 8px; flex-wrap: wrap; }
.coupon .input-text { min-width: 180px; }
.woocommerce-shipping-methods { list-style: none; padding: 0; margin: 0; }
.wc_payment_methods { list-style: none; padding: 0 !important; }
.wc_payment_method { background: #fff; border: 1px solid var(--linea); border-radius: 14px; padding: 12px 16px; margin-bottom: 8px; }
.wc_payment_method .payment_box { background: var(--fondo) !important; border-radius: 10px; color: var(--txt-2); font-size: 14px; }
.wc_payment_method .payment_box::before { display: none !important; }
/* Cuenta */
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.woocommerce-MyAccount-navigation a { display: block; padding: 11px 16px; border-radius: 12px; color: var(--titulo); text-decoration: none; font-weight: 500; }
.woocommerce-MyAccount-navigation .is-active a, .woocommerce-MyAccount-navigation a:hover { background: var(--acento-fondo); color: var(--acento-texto); }
.woocommerce-form-login, .woocommerce-form-register, .woocommerce-ResetPassword { background: var(--fondo); border: 0 !important; border-radius: 24px !important; padding: 32px !important; max-width: 520px; }
/* Los nombres de categoría del catálogo vienen en MAYÚSCULAS: se presentan en tipo oración sin tocar el catálogo */
.dp-chip, .dp-cat__name, .dp-crumbs a, .dp-product__meta a, .dp-nav .sub-menu a { text-transform: lowercase; }
.dp-chip span::first-letter, .dp-cat__name::first-letter, .dp-crumbs a::first-letter, .dp-product__meta a::first-letter { text-transform: uppercase; }
.dp-chip span, .dp-cat__name, .dp-crumbs a, .dp-product__meta a { display: inline-block; }
.dp-tabs .woocommerce-tabs ul.tabs::before { display: none; }
.dp-tabs ul.tabs li { padding: 0 !important; }

/* ── Texto largo (legales, accesibilidad, entradas) ───────────────────── */
.dp-prose-body h2 { font-size: 26px; font-weight: 700; color: var(--titulo); margin: 40px 0 12px; letter-spacing: -.01em; line-height: 1.2; }
.dp-prose-body h3 { font-size: 20px; font-weight: 600; color: var(--titulo); margin: 28px 0 10px; }
.dp-prose-body p, .dp-prose-body ul, .dp-prose-body ol { margin: 0 0 16px; }
.dp-prose-body ul, .dp-prose-body ol { padding-left: 1.3em; }
.dp-prose-body a { color: var(--acento-texto); }
.dp-prose-body strong { color: var(--titulo); }
.dp-prose-body table { width: 100%; border-collapse: collapse; margin: 0 0 20px; }
.dp-prose-body th, .dp-prose-body td { border-bottom: 1px solid var(--linea); padding: 10px 8px; text-align: left; }

/* ── Formulario de Bricks ─────────────────────────────────────────────── */
.dp-form .form-group label, .dp-form label { font-size: 14px; font-weight: 600; color: var(--titulo); }
.dp-form input:not([type=checkbox]):not([type=radio]), .dp-form textarea, .dp-form select {
  border: 1px solid var(--linea-fuerte); border-radius: 12px; padding: 12px 14px; font: 15px var(--dp-sans); color: var(--txt); background: #fff; }
.dp-form textarea { min-height: 140px; }
.dp-form input:focus, .dp-form textarea:focus { border-color: var(--acento); box-shadow: 0 0 0 3px var(--acento-fondo); outline: none; }
.dp-form .options-wrapper label { font-weight: 400; color: var(--txt-2); line-height: 1.5; }
.dp-form button[type=submit], .dp-form .bricks-button {
  border-radius: 99px; padding: 15px 30px; font-weight: 600; font-size: 15px; color: #fff; border: 0;
  background: linear-gradient(140deg, #1AA6D2, #1390BA 60%, #0F7FA6); box-shadow: 0 6px 18px -6px rgba(21,159,201,.55); }
.dp-form .message.success { background: #EFFAF6; color: var(--ok-texto); border-radius: 12px; padding: 12px 16px; }
.dp-form .message.error { background: #FDF0F3; color: var(--crit-texto); border-radius: 12px; padding: 12px 16px; }
.dp-infocard .dp-info__value a { color: var(--titulo); text-decoration: none; }
.dp-infocard .dp-info__value a:hover { color: var(--acento-texto); }
.brxe-button.dp-btn svg { width: 18px; height: 18px; }
table.shop_table td.product-name, table.shop_table td.product-name a { font-family: var(--dp-sans) !important; text-transform: none !important; letter-spacing: 0 !important; font-size: 15px !important; font-weight: 600; color: var(--titulo); background: none !important; }
.woocommerce-privacy-policy-text, .woocommerce-privacy-policy-text p { font-size: 13px !important; line-height: 1.55 !important; color: var(--txt-3); }
#order_review > table, .woocommerce-checkout-review-order { border: 0; }
button[name=update_cart], button[name=apply_coupon] { background: #fff !important; color: var(--titulo) !important; border: 1px solid var(--linea-fuerte) !important; padding: 11px 20px !important; font-size: 14px !important; }
/* Accesibilidad: contraste y objetivos táctiles */
.dp-card__price .woocommerce-price-suffix, .dp-related li.product .price .woocommerce-price-suffix, .dp-product__price .woocommerce-price-suffix { color: #556E82; }
.dp-footer__link { display: inline-block; padding: 5px 0; }
.dp-footer__list { row-gap: 4px !important; }
.bricks-mobile-menu > li > a, .bricks-mobile-menu .sub-menu a { display: block; padding-top: 8px !important; padding-bottom: 8px !important; }
.dp-crumbs a { display: inline-block; padding: 6px 0; }
.dp-product__meta a { padding: 6px 0; }
.dp-addcart .button, .dp-related li.product .button { color: #0E6680 !important; }
.brxe-woocommerce-breadcrumbs.dp-crumbs, .dp-crumbs .navigation { color: #556E82; }
/* Contraste AA (auditoría 17-sep): rótulos mono y secundarios un punto más oscuros */
.dp-footer__heading, .dp-info__label, .dp-cat__count, .dp-product__meta, .dp-product__meta span { color: #556E82 !important; }
.dp-footer__claim, .dp-crumbs a, .dp-footer__legal { color: #4B6477 !important; }
.dp-pill-link { color: #0E6680 !important; }
.dp-pill-link:hover { color: #fff !important; }
.dp-hl { color: #127A99 !important; }
.dp-topbar__link { display: inline-block; padding: 8px 0; }
.dp-pagination:not(:has(.page-numbers)) { display: none; }
.dp-form.brxe-form { column-gap: 0; margin-left: -7px; margin-right: -7px; }
.dp-form .form-group { padding-left: 7px; padding-right: 7px; }
.dp-form .form-group label { text-transform: none; letter-spacing: 0; }

/* ── Pie: enlaces legales, firma y objetivos táctiles (17-sep, 2ª pasada) ── */
.dp-footer__legalnav .dp-footer__link { padding: 9px 0; font-size: 13px; color: #4B6477; }
.dp-footer__legalnav .dp-footer__link:hover { color: var(--acento-texto); }
.dp-heart { color: #E0245E; font-size: 1.15em; line-height: 1; display: inline-block; transform: translateY(1px); animation: dp-latido 1.6s ease-in-out infinite; }
@keyframes dp-latido { 0%, 100% { transform: translateY(1px) scale(1); } 15% { transform: translateY(1px) scale(1.18); } 30% { transform: translateY(1px) scale(1); } }
.dp-teky { display: inline-block; padding: 9px 2px; color: var(--titulo); font-weight: 700; text-decoration: none; letter-spacing: .04em; }
.dp-teky:hover { color: var(--acento-texto); }
.dp-footer__bottom { align-items: center; }
.brxe-woocommerce-mini-cart .mini-cart-link { min-height: 42px; min-width: 42px; display: inline-flex; align-items: center; justify-content: center; }
.dp-footer__wa svg, .dp-footer__wa i { width: 18px !important; height: 18px !important; flex-shrink: 0; }
.dp-footer__wa { column-gap: 8px; white-space: nowrap; color: var(--ok-texto); }

/* Móvil: nada puede ensanchar la página (17-sep, ficha de KIBO medía 421 px en pantalla de 390) */
.dp-related ul.products li.product { min-width: 0; }
.dp-related li.product .woocommerce-loop-product__title, .dp-card__title, .dp-product__title { overflow-wrap: anywhere; }
body { overflow-x: clip; }
/* El chat de RankIA con los colores de WhatsApp que trae; solo se alinea su tipografía con la web */
.rkc { --rkc-ui: "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif; }
/* El aviso de cookies nunca debe quedar por debajo del borde de la pantalla */
.dp-cookies { max-height: calc(100vh - 32px); overflow: auto; }
.dp-formcard .brxe-rankia-chat, .dp-formcard .rkc-host { width: 100%; max-width: 100%; }
