/*
Theme Name:   Integra Pro
Author:       Integra Ferretería Técnica
Description:  Tema completo para la tienda online de Integra Ferretería Técnica (WooCommerce): portada, cuentas de cliente, programa de puntos y asistente de chat. No necesita tema padre.
Version:      2.28.0
Requires at least: 6.0
Requires PHP: 7.4
License:      GNU General Public License v2 or later
Text Domain:  integra-tienda
Tags:         e-commerce, custom-logo, custom-menu, featured-images
*/

/* ============ BASE ============ */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; line-height: 1.6; font-size: 16px; }
img { max-width: 100%; height: auto; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); }
.screen-reader-text:focus { clip: auto; width: auto; height: auto; background: #fff; padding: 10px; z-index: 100000; }
.int-container { max-width: 1280px; margin: 0 auto; padding: 0 24px; }
.site-main.int-container { padding-top: 32px; padding-bottom: 64px; }
input[type=text], input[type=email], input[type=tel], input[type=password], input[type=search], input[type=number], select, textarea {
	width: 100%; border: 1px solid #C9CCD0; border-radius: 8px; padding: 12px 14px; font: inherit; background: #fff;
}
input:focus, select:focus, textarea:focus { outline: 2px solid var(--int-naranja); outline-offset: 1px; }
button, .button { cursor: pointer; padding: 12px 20px; font: inherit; }
table { width: 100%; border-collapse: collapse; }
th, td { text-align: left; padding: 12px; border-bottom: 1px solid var(--int-borde); }
.entry-title, .page-title { font-size: clamp(30px, 4vw, 44px); margin: 0 0 24px; }
.entry-content h2 { margin-top: 1.6em; }
.int-posts { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.int-post { border: 1px solid var(--int-borde); border-radius: 12px; overflow: hidden; }
.int-post > div { padding: 18px; }
.int-post h2 { font-size: 22px; margin: 0 0 8px; }
.int-post h2 a { text-decoration: none; }
.nav-links { display: flex; gap: 8px; margin-top: 32px; }
.nav-links .page-numbers { padding: 8px 14px; border: 1px solid var(--int-borde); border-radius: 8px; text-decoration: none; }
.nav-links .current { background: var(--int-negro); color: #fff; }


:root {
	--int-negro: #141414;
	--int-negro-2: #1f1f1f;
	--int-naranja: #E26A0A;
	--int-naranja-osc: #B85400;
	--int-gris: #5B5F64;
	--int-gris-claro: #F6F6F7;
	--int-borde: #E3E5E8;
	--int-texto-claro: #D4D7DA;
	--int-titulos: 'Barlow', sans-serif;
	--int-texto: 'Inter', system-ui, sans-serif;
}

body { font-family: var(--int-texto); color: var(--int-negro); background: #fff; }
h1, h2, h3, h4, .site-title, .widget-title { font-family: var(--int-titulos); font-weight: 800; color: var(--int-negro); letter-spacing: -0.01em; }
a { color: var(--int-negro); }
a:hover, a:focus { color: var(--int-naranja-osc); }

/* ---------- Barra superior ---------- */
.int-topbar { background: var(--int-naranja); color: var(--int-negro); font-size: 13px; font-weight: 600; text-align: center; padding: 8px 16px; }

/* ---------- Botones ---------- */
button, input[type=button], input[type=submit], .button, .added_to_cart, .wc-block-components-button {
	background: var(--int-negro); color: #fff; border-radius: 8px; font-weight: 700; border: 0;
}
button:hover, .button:hover, input[type=submit]:hover { background: #333; color: #fff; }
.single-product div.product form.cart .button, .button.alt, .checkout-button, #place_order, .int-btn {
	background: var(--int-naranja) !important; color: var(--int-negro) !important; font-weight: 800;
}
.single-product div.product form.cart .button:hover, .button.alt:hover, .int-btn:hover { background: #f07a1c !important; }
.int-btn { display: inline-block; padding: 16px 28px; border-radius: 8px; text-decoration: none; font-size: 16px; }
.int-btn-sec { display: inline-block; padding: 15px 26px; border-radius: 8px; border: 1.5px solid #8a8d91; background: rgba(20,20,20,.6); color: #fff !important; font-weight: 600; text-decoration: none; }

/* ---------- Portada ---------- */
.int-wrap { max-width: 1280px; margin: 0 auto; padding: 0 24px; }
.int-eyebrow { font-family: var(--int-titulos); font-weight: 600; font-size: 14px; letter-spacing: .16em; text-transform: uppercase; color: var(--int-naranja); margin-bottom: 14px; }

.int-hero { position: relative; background: var(--int-negro) center right / cover no-repeat; color: #fff; }
.int-hero .int-wrap { padding-top: 96px; padding-bottom: 104px; }
.int-hero__txt { max-width: 600px; }
.int-hero h1 { color: #fff; font-size: clamp(38px, 5vw, 64px); line-height: 1.03; margin: 0 0 20px; }
.int-hero p { color: var(--int-texto-claro); font-size: 18px; line-height: 1.55; margin: 0 0 28px; }
.int-hero__btns { display: flex; flex-wrap: wrap; gap: 12px; }

.int-section { padding: 64px 0 24px; }
.int-section__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 12px; margin-bottom: 28px; }
.int-section__head h2 { margin: 0; font-size: 36px; }

.int-cats { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 16px; }
.int-cat { border: 1px solid var(--int-borde); border-radius: 12px; overflow: hidden; text-decoration: none !important; color: var(--int-negro); background: #fff; display: flex; flex-direction: column; transition: transform .15s, box-shadow .15s; }
.int-cat:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,.08); }
.int-cat img { width: 100%; aspect-ratio: 1/1; object-fit: cover; display: block; }
.int-cat strong { font-family: var(--int-titulos); font-size: 19px; padding: 16px 18px 4px; }
.int-cat span { font-size: 13px; color: var(--int-gris); padding: 0 18px 18px; }

.int-banner { position: relative; border-radius: 16px; overflow: hidden; background: var(--int-negro) center right / cover no-repeat; color: #fff; }
.int-banner__txt { padding: 56px 48px; max-width: 520px; }
.int-banner h2 { color: #fff; font-size: 40px; line-height: 1.05; margin: 0 0 14px; }
.int-banner p { color: var(--int-texto-claro); margin: 0 0 22px; }

.int-ventajas { background: var(--int-gris-claro); padding: 48px 0; margin-top: 56px; }
.int-ventajas .int-wrap { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; }
.int-ventaja { display: flex; gap: 16px; align-items: flex-start; }
.int-ventaja svg { flex: 0 0 auto; }
.int-ventaja strong { display: block; font-size: 16px; }
.int-ventaja span { font-size: 14px; color: var(--int-gris); }

.int-solyon { background: var(--int-negro); color: #fff; border-radius: 16px; padding: 48px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 32px; margin: 72px 0; }
.int-solyon h2 { color: #fff; font-size: 34px; line-height: 1.1; margin: 0 0 10px; }
.int-solyon p { color: var(--int-texto-claro); margin: 0; }
.int-solyon > div { flex: 1 1 520px; }

/* Productos de WooCommerce */
ul.products li.product { border: 1px solid var(--int-borde); border-radius: 12px; padding-bottom: 18px; overflow: hidden; text-align: left; }
ul.products li.product img { margin-bottom: 14px; }
ul.products li.product .woocommerce-loop-product__title { font-family: var(--int-texto); font-weight: 600; font-size: 15px; padding: 0 16px; }
ul.products li.product .price { font-family: var(--int-titulos); font-weight: 800; font-size: 22px; color: var(--int-negro); padding: 0 16px; display: block; }
ul.products li.product .button { margin: 10px 16px 0; display: block; text-align: center; }
.woocommerce-Price-amount { color: var(--int-negro); }
.onsale { background: var(--int-naranja); color: var(--int-negro); border: 0; border-radius: 6px; font-weight: 700; }

/* Ficha de producto */
.single-product div.product .product_title { font-size: 38px; line-height: 1.1; }
.single-product div.product p.price { font-family: var(--int-titulos); font-weight: 800; font-size: 40px; color: var(--int-negro); }
.int-iva { font-size: 14px; color: var(--int-gris); margin-left: 6px; }
.int-garantias { background: var(--int-gris-claro); border-radius: 12px; padding: 18px 20px; margin: 20px 0; font-size: 14px; }
.int-garantias li { list-style: none; margin: 6px 0; }
.int-garantias ul { margin: 0; }
.woocommerce-tabs table.shop_attributes th { font-weight: 500; color: var(--int-gris); }

@media (max-width: 767px) {
	.int-hero .int-wrap { padding-top: 64px; padding-bottom: 72px; }
	.int-hero { background-position: 70% center; }
	.int-hero::before { content: ""; position: absolute; inset: 0; background: rgba(20,20,20,.55); }
	.int-hero .int-wrap { position: relative; }
	.int-banner__txt, .int-solyon { padding: 32px 24px; }
	.int-section__head h2 { font-size: 28px; }
}

/* ---------- Cuenta de cliente ---------- */
.int-cuenta { display: inline-flex; align-items: center; gap: 8px; color: #fff !important; text-decoration: none; font-size: 14px; font-weight: 500; padding: 10px 8px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; border: 1px solid var(--int-borde); border-radius: 12px; overflow: hidden; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 14px 18px; border-bottom: 1px solid var(--int-borde); text-decoration: none; font-weight: 500; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: var(--int-negro); color: #fff; }
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: var(--int-gris-claro); }
.woocommerce form.login, .woocommerce form.register { border: 1px solid var(--int-borde); border-radius: 12px; padding: 28px; }
.int-reg-info { background: var(--int-gris-claro); border-left: 4px solid var(--int-naranja); padding: 12px 14px; border-radius: 6px; font-size: 14px; }

/* ---------- Puntos ---------- */
.int-puntos { background: #FFF4EA; border: 1px solid #F5C9A3; border-radius: 12px; padding: 16px 18px; margin: 0 0 20px; font-size: 14px; }
.int-puntos p { margin: 0 0 8px; }
.int-puntos label { font-weight: 600; cursor: pointer; }
.int-pts-gana { background: #FFF4EA; border-radius: 8px; padding: 10px 14px; font-size: 14px; }
.int-pts-saldo { background: var(--int-negro); color: #fff; border-radius: 12px; padding: 24px; margin-bottom: 20px; display: flex; flex-direction: column; gap: 4px; }
.int-pts-saldo span { color: var(--int-texto-claro); font-size: 14px; }
.int-pts-saldo strong { font-family: var(--int-titulos); font-size: 40px; color: #fff; }
.int-pts-saldo em { color: var(--int-naranja); font-style: normal; font-weight: 600; }
.int-pie ul { list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 22px; font-size: 14px; }

/* ---------- Asistente de chat ---------- */
.ic-btn { position: fixed; right: 20px; bottom: 20px; z-index: 9998; width: 60px; height: 60px; border-radius: 50%; border: 0; background: var(--int-naranja); color: var(--int-negro); box-shadow: 0 6px 20px rgba(0,0,0,.25); cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; }
.ic-btn:hover { background: #f07a1c; }
.ic-panel { position: fixed; right: 20px; bottom: 92px; z-index: 9999; width: 370px; max-width: calc(100vw - 24px); height: 540px; max-height: calc(100vh - 120px); background: #fff; border-radius: 16px; box-shadow: 0 12px 40px rgba(0,0,0,.25); display: flex; flex-direction: column; overflow: hidden; font-family: var(--int-texto); }
.ic-panel[hidden] { display: none; }
.ic-head { background: var(--int-negro); color: #fff; padding: 14px 16px; display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.ic-tit strong { display: block; font-family: var(--int-titulos); font-size: 18px; color: #fff; }
.ic-tit span { font-size: 12px; color: var(--int-texto-claro); }
.ic-x { background: transparent !important; color: #fff !important; font-size: 26px; line-height: 1; padding: 0 6px; }
.ic-body { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 8px; background: var(--int-gris-claro); }
.ic-msg { max-width: 85%; padding: 10px 12px; border-radius: 12px; font-size: 14px; line-height: 1.45; white-space: pre-line; }
.ic-bot { background: #fff; border: 1px solid var(--int-borde); align-self: flex-start; border-bottom-left-radius: 4px; }
.ic-user { background: var(--int-negro); color: #fff; align-self: flex-end; border-bottom-right-radius: 4px; }
.ic-msg a { color: var(--int-naranja-osc); font-weight: 600; }
.ic-typing { color: var(--int-gris); font-style: italic; }
.ic-prod { align-self: flex-start; max-width: 85%; background: #fff; border: 1px solid var(--int-borde); border-left: 4px solid var(--int-naranja); border-radius: 8px; padding: 8px 12px; text-decoration: none !important; display: flex; flex-direction: column; font-size: 13px; color: var(--int-negro); }
.ic-prod span { color: var(--int-gris); }
.ic-quick { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 14px 10px; background: var(--int-gris-claro); }
.ic-chip { background: #fff !important; color: var(--int-negro) !important; border: 1px solid #C9CCD0 !important; border-radius: 999px; font-size: 13px; font-weight: 500; padding: 8px 12px; }
.ic-form { display: flex; gap: 8px; padding: 10px; border-top: 1px solid var(--int-borde); }
.ic-form input { flex: 1; min-width: 0; border: 1px solid #C9CCD0; border-radius: 8px; padding: 10px 12px; font-size: 15px; }
.ic-send { background: var(--int-naranja) !important; color: var(--int-negro) !important; font-weight: 800; padding: 10px 14px; }
.ic-foot { padding: 6px 12px 10px; font-size: 11.5px; color: var(--int-gris); display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.ic-wa { color: #128C7E; font-weight: 700; text-decoration: none; }
@media (max-width: 480px) { .ic-panel { right: 12px; left: 12px; width: auto; bottom: 86px; height: calc(100vh - 110px); } .ic-btn { right: 14px; bottom: 14px; } }

/* ============ CABECERA ============ */
.int-header { background: var(--int-negro); color: #fff; position: sticky; top: 0; z-index: 100; }
.admin-bar .int-header { top: 32px; }
.int-header__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; padding: 14px 0; }
.int-logo { flex: 0 0 auto; display: flex; }
.int-logo img, .int-logo .custom-logo { max-height: 52px; width: auto; display: block; }
.int-search { flex: 1 1 320px; display: flex; min-width: 0; }
.int-search input[type=search] { border: 0; border-radius: 8px 0 0 8px; height: 48px; }
.int-search button { border: 0; border-radius: 0 8px 8px 0; background: var(--int-naranja); color: var(--int-negro); width: 56px; height: 48px; padding: 0; display: flex; align-items: center; justify-content: center; }
.int-acciones { display: flex; align-items: center; gap: 6px; flex: 0 0 auto; }
.int-acciones a { color: #fff; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; padding: 10px; font-size: 14px; font-weight: 500; border-radius: 8px; }
.int-acciones a:hover { background: #262626; color: #fff; }
.int-carrito__n { background: var(--int-naranja); color: var(--int-negro); border-radius: 999px; font-size: 12px; font-weight: 800; min-width: 22px; height: 22px; display: inline-flex; align-items: center; justify-content: center; padding: 0 6px; }
.int-menu-btn { display: none; background: transparent; border: 1px solid #5a5d61; color: #fff; border-radius: 8px; padding: 10px 12px; }
.int-nav { background: var(--int-negro-2); border-top: 1px solid #2e2e2e; }
.int-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0 26px; }
.int-nav li { position: relative; }
.int-nav a { display: block; padding: 14px 0; color: #fff; text-decoration: none; font-family: var(--int-titulos); font-weight: 600; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; }
.int-nav a:hover, .int-nav .current-menu-item > a { color: var(--int-naranja); }
.int-nav li.int-ofertas > a { color: var(--int-naranja); }
.int-nav .sub-menu { display: none; position: absolute; left: -16px; top: 100%; background: var(--int-negro-2); min-width: 220px; padding: 8px 16px; z-index: 50; flex-direction: column; border-radius: 0 0 8px 8px; }
.int-nav li:hover > .sub-menu, .int-nav li:focus-within > .sub-menu { display: flex; }
.int-nav .sub-menu a { padding: 8px 0; text-transform: none; letter-spacing: 0; font-family: var(--int-texto); font-weight: 500; }

/* ============ PIE ============ */
.int-footer { background: var(--int-negro); color: #C9CCD0; padding: 56px 0 28px; margin-top: 0; }
.int-footer a { color: #C9CCD0; text-decoration: none; }
.int-footer a:hover { color: #fff; }
.int-footer__cols { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 32px; }
.int-footer h3 { color: #fff; font-size: 17px; margin: 0 0 14px; }
.int-footer ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
.int-footer__logo img { max-height: 48px; width: auto; margin-bottom: 12px; }
.int-footer__legal { border-top: 1px solid #2e2e2e; margin-top: 40px; padding-top: 18px; font-size: 13px; color: #9A9EA3; display: flex; flex-wrap: wrap; gap: 8px 24px; }

/* ============ WOOCOMMERCE ============ */
.woocommerce-breadcrumb { font-size: 13px; color: var(--int-gris); margin-bottom: 18px; }
.woocommerce-breadcrumb a { color: var(--int-gris); }
.woocommerce-products-header__title { margin-top: 0; }
.woocommerce .woocommerce-result-count { color: var(--int-gris); font-size: 14px; }
.woocommerce .woocommerce-ordering select { width: auto; }
ul.products { list-style: none; margin: 0 0 32px; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 20px; clear: both; }
ul.products::before, ul.products::after { display: none !important; }
ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; position: relative; background: #fff; }
ul.products li.product a img { aspect-ratio: 1/1; object-fit: contain; background: #F3F4F5; width: 100%; }
ul.products li.product .star-rating { margin: 0 16px 6px; }
.woocommerce span.onsale { position: absolute; top: 12px; left: 12px; padding: 4px 10px; z-index: 2; }
.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; }
.woocommerce div.product .woocommerce-product-gallery { width: 100% !important; float: none !important; }
.woocommerce div.product .summary { width: 100% !important; float: none !important; }
.woocommerce div.product .woocommerce-tabs, .woocommerce div.product .related, .woocommerce div.product .upsells { grid-column: 1 / -1; }
.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 20px 0; }
.woocommerce div.product form.cart.variations_form { display: block; }
.woocommerce div.product form.cart .variations select { max-width: 320px; }
.woocommerce .quantity input.qty { width: 80px; text-align: center; }
.woocommerce div.product form.cart .button { padding: 15px 28px; font-size: 16px; }
.woocommerce-tabs ul.tabs { list-style: none; padding: 0; display: flex; gap: 6px; border-bottom: 1px solid var(--int-borde); }
.woocommerce-tabs ul.tabs li a { display: block; padding: 10px 16px; text-decoration: none; font-weight: 600; }
.woocommerce-tabs ul.tabs li.active a { border-bottom: 3px solid var(--int-naranja); }
.woocommerce-message, .woocommerce-info, .woocommerce-error { list-style: none; padding: 14px 18px; border-radius: 8px; margin: 0 0 20px; background: var(--int-gris-claro); border-left: 4px solid var(--int-naranja); display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; }
.woocommerce-error { border-left-color: #b42318; }
.woocommerce-cart table.shop_table img { width: 64px; }
.woocommerce .cart-collaterals .cart_totals { max-width: 460px; margin-left: auto; }
.woocommerce .coupon { display: flex; gap: 8px; flex-wrap: wrap; }
.woocommerce .coupon input { width: 200px; }
.woocommerce-checkout #customer_details { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px; }
.woocommerce form .form-row { margin: 0 0 14px; }
.woocommerce form .form-row label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 4px; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 48%; display: inline-block; vertical-align: top; }
.woocommerce form .form-row-first { margin-right: 3%; }
#payment { background: var(--int-gris-claro); border-radius: 12px; padding: 18px; }
#payment ul.payment_methods { list-style: none; padding: 0; }
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 32px; }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; }
#customer_login { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px; }
.col2-set .col-1, .col2-set .col-2 { width: auto !important; float: none !important; }

@media (max-width: 900px) {
	.woocommerce div.product { grid-template-columns: 1fr; gap: 24px; }
	.woocommerce-account .woocommerce { grid-template-columns: 1fr; }
}
@media (max-width: 782px) { .admin-bar .int-header { top: 46px; } }
@media (max-width: 767px) {
	.int-menu-btn { display: inline-flex; }
	.int-acciones a span.int-txt { display: none; }
	.int-search { order: 5; flex-basis: 100%; }
	.int-nav { display: none; }
	.int-nav.is-open { display: block; }
	.int-nav ul { flex-direction: column; }
	.int-nav .sub-menu { display: flex; position: static; padding: 0 0 8px 14px; background: transparent; }
	.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 100%; margin-right: 0; }
	.int-header { position: static; }
}

/* ============ ÁRBOL DE CATEGORÍAS (v2.1) ============ */
.int-nav__fila { display: flex; align-items: center; gap: 26px; }
.int-cats-btn { display: inline-flex; align-items: center; gap: 10px; background: var(--int-naranja); color: var(--int-negro); border: 0; border-radius: 6px; padding: 9px 16px; font-family: var(--int-titulos); font-weight: 700; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; white-space: nowrap; }
.int-cats-btn:hover, .int-cats-btn[aria-expanded="true"] { background: #fff; }
.int-nav { position: relative; }
.int-mega { position: absolute; left: 0; right: 0; top: 100%; background: #fff; color: var(--int-negro); box-shadow: 0 18px 40px rgba(0,0,0,.25); max-height: 75vh; overflow-y: auto; padding: 26px 0 30px; z-index: 120; }
.int-mega[hidden] { display: none; }
.int-mega__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 26px 32px; }
.int-mega__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.int-mega__head a { display: block; padding: 6px 0; color: var(--int-negro); font-family: var(--int-titulos); font-weight: 800; font-size: 17px; text-transform: uppercase; letter-spacing: .03em; text-decoration: none; border-bottom: 2px solid var(--int-naranja); flex: 1; }
.int-mega__head a span, .int-mega__col li span { color: var(--int-gris, #6b6f74); font-weight: 400; font-size: 13px; }
.int-mega__toggle { display: none; background: transparent; border: 1px solid #c9ccd0; border-radius: 6px; width: 34px; height: 34px; font-size: 20px; line-height: 1; align-items: center; justify-content: center; color: var(--int-negro); cursor: pointer; }
.int-nav .int-mega ul { display: block; list-style: none; margin: 8px 0 0; padding: 0; }
.int-nav .int-mega li { position: static; }
.int-nav .int-mega li a { display: block; padding: 5px 0; color: #2a2a2a; text-transform: none; letter-spacing: 0; font-family: var(--int-texto); font-weight: 500; font-size: 14.5px; }
.int-nav .int-mega li a:hover, .int-nav .int-mega .int-mega__head a:hover { color: var(--int-naranja); }
.int-mega__all { display: flex; align-items: flex-start; }
.int-mega__all .int-btn { background: var(--int-negro) !important; color: #fff !important; padding: 12px 20px; font-weight: 700; text-transform: none !important; letter-spacing: 0 !important; font-size: 15px !important; }

.int-tienda { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 32px; align-items: start; padding-top: 24px; }
.int-tienda__principal { min-width: 0; }
.int-arbol { position: sticky; top: 140px; max-height: calc(100vh - 160px); overflow-y: auto; }
.int-arbol__caja { background: var(--int-gris-claro, #f3f4f5); border-radius: 12px; padding: 6px 16px 14px; }
.int-arbol__titulo { font-family: var(--int-titulos); font-weight: 800; font-size: 18px; text-transform: uppercase; letter-spacing: .04em; padding: 10px 0; cursor: pointer; }
.int-arbol ul { list-style: none; margin: 0; padding: 0; }
.int-arbol ul ul { padding-left: 14px; border-left: 2px solid #e0e2e5; margin: 2px 0 6px 6px; }
.int-arbol li { margin: 0; }
.int-arbol a { display: inline-flex; gap: 6px; padding: 6px 0; color: var(--int-negro); text-decoration: none; font-size: 15px; font-weight: 500; }
.int-arbol a span { color: #8a8d91; font-size: 12.5px; font-weight: 400; align-self: center; }
.int-arbol a:hover, .int-arbol a.is-actual { color: var(--int-naranja); }
.int-arbol a.is-actual { font-weight: 700; }
.int-arbol details > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 4px; }
.int-arbol details > summary::-webkit-details-marker { display: none; }
.int-arbol ul details > summary::before { content: "+"; display: inline-flex; width: 18px; justify-content: center; font-weight: 700; color: var(--int-naranja); flex: 0 0 18px; }
.int-arbol ul details[open] > summary::before { content: "−"; }
.int-arbol__caja > summary::after { content: " ▾"; color: var(--int-naranja); }

.int-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; }
.int-chips a { display: inline-flex; gap: 6px; align-items: center; padding: 8px 14px; border: 1.5px solid #d4d7db; border-radius: 999px; color: var(--int-negro); text-decoration: none; font-size: 14px; font-weight: 600; background: #fff; }
.int-chips a span { color: #8a8d91; font-weight: 400; font-size: 12.5px; }
.int-chips a:hover { border-color: var(--int-naranja); color: var(--int-naranja); }

/* Categorías en la cabecera con desplegable */
.int-nav .int-dd-menu { display: flex; flex-wrap: wrap; align-items: center; gap: 0 4px; list-style: none; margin: 0; padding: 0; }
.int-nav .int-dd { position: relative; }
.int-nav .int-dd__btn { display: inline-flex; align-items: center; gap: 6px; background: transparent; border: 0; color: #fff; padding: 14px 10px; font-family: var(--int-titulos); font-weight: 600; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; text-decoration: none; }
.int-nav .int-dd__btn svg { transition: transform .15s; }
.int-nav .int-dd__btn:hover, .int-nav .int-dd.is-open > .int-dd__btn, .int-nav .int-dd.is-actual > .int-dd__btn { color: var(--int-naranja); }
.int-nav .int-dd.is-open > .int-dd__btn svg { transform: rotate(180deg); }
.int-nav .int-dd__panel { position: absolute; left: 0; top: 100%; min-width: 260px; max-height: 70vh; overflow-y: auto; background: #fff; border-top: 3px solid var(--int-naranja); border-radius: 0 0 10px 10px; box-shadow: 0 16px 34px rgba(0,0,0,.25); padding: 8px 0; z-index: 130; }
.int-nav .int-dd__panel[hidden] { display: none; }
.int-nav .int-dd__panel ul { display: block; list-style: none; margin: 0; padding: 0; }
.int-nav .int-dd__panel li a { display: flex; justify-content: space-between; gap: 14px; padding: 9px 18px; color: #222; text-transform: none; letter-spacing: 0; font-family: var(--int-texto); font-weight: 500; font-size: 15px; }
.int-nav .int-dd__panel li a span { color: #8a8d91; font-size: 12.5px; font-weight: 400; }
.int-nav .int-dd__panel li a:hover { background: #fff3ea; color: var(--int-naranja); }
.int-nav .int-dd__panel .int-dd__todo a { font-weight: 700; border-bottom: 1px solid #eceef0; margin-bottom: 4px; }

@media (max-width: 767px) {
	.int-nav .int-dd-menu { flex-direction: column; align-items: stretch; }
	.int-nav .int-dd__btn { width: 100%; justify-content: space-between; padding: 13px 4px; border-bottom: 1px solid #2e2e2e; }
	.int-nav .int-dd__panel { position: static; box-shadow: none; border-top: 0; border-radius: 8px; max-height: none; margin: 6px 0 10px; min-width: 0; }
}
@media (max-width: 767px) {
	.int-nav__fila { flex-direction: column; align-items: stretch; gap: 0; }
	.int-cats-btn { width: 100%; justify-content: center; margin: 10px 0; }
	.int-mega { position: static; max-height: none; box-shadow: none; padding: 6px 0 14px; border-radius: 8px; margin-bottom: 10px; }
	.int-mega__grid { grid-template-columns: 1fr; gap: 0; }
	.int-mega__col { border-bottom: 1px solid #e3e5e8; padding: 4px 0; }
	.int-mega__head a { border-bottom: 0; font-size: 16px; }
	.int-mega__toggle { display: inline-flex; }
	.int-nav .int-mega__col ul { display: none; padding: 0 0 8px 12px; }
	.int-nav .int-mega__col.is-open ul { display: block; }
	.int-mega__all { padding-top: 12px; }
	.int-tienda { grid-template-columns: 1fr; gap: 16px; padding-top: 14px; }
	.int-arbol { position: static; max-height: none; }
}
@media (min-width: 768px) and (max-width: 1000px) { .int-tienda { grid-template-columns: 220px minmax(0, 1fr); gap: 22px; } }

/* ============ BUSCADOR INSTANTÁNEO (v2.3) ============ */
.int-search { position: relative; }
.int-sug { position: absolute; left: 0; right: 0; top: calc(100% + 6px); background: #fff; color: var(--int-negro); border-radius: 10px; box-shadow: 0 18px 40px rgba(0,0,0,.28); max-height: 70vh; overflow-y: auto; z-index: 150; padding: 6px 0; text-align: left; }
.int-sug[hidden] { display: none; }
.int-sug__tit { padding: 10px 16px 4px; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #8a8d91; }
.int-sug__item { display: flex; align-items: center; gap: 12px; padding: 8px 16px; color: #222; text-decoration: none; font-size: 14.5px; line-height: 1.3; }
.int-sug__item:hover, .int-sug__item.is-activo { background: #fff3ea; }
.int-sug__item img, .int-sug__noimg { width: 48px; height: 48px; object-fit: contain; border-radius: 6px; background: #f4f5f6; flex: 0 0 48px; }
.int-sug__nom { flex: 1; min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.int-sug__prod strong { white-space: nowrap; color: var(--int-negro); font-size: 15px; }
.int-sug__cat { justify-content: space-between; font-weight: 600; }
.int-sug__cat small { color: #8a8d91; font-weight: 400; }
.int-sug__cat em { font-style: normal; color: #8a8d91; font-size: 12.5px; }
.int-sug mark { background: transparent; color: var(--int-naranja); font-weight: 700; }
.int-sug__todos { justify-content: center; font-weight: 700; color: var(--int-naranja); border-top: 1px solid #eceef0; margin-top: 4px; padding: 12px 16px; }
.int-sug__info { padding: 14px 16px; color: #5b5f64; font-size: 14.5px; }
.int-sug__info a { color: var(--int-naranja); }

/* ============ PORTADA · BANNER DE OFERTAS (v2.4) ============ */
.int-oferta { display: flex; align-items: center; gap: 26px; padding: 26px 34px; border-radius: 14px; text-decoration: none; color: var(--int-negro); background: linear-gradient(110deg, var(--int-naranja) 0%, #f08a2e 55%, #ffb066 100%); box-shadow: 0 10px 28px rgba(226,106,10,.25); position: relative; overflow: hidden; }
.int-oferta::after { content: ""; position: absolute; right: -60px; top: -60px; width: 220px; height: 220px; border-radius: 50%; background: rgba(255,255,255,.14); }
.int-oferta__sello { flex: 0 0 auto; width: 76px; height: 76px; border-radius: 50%; background: var(--int-negro); color: var(--int-naranja); display: flex; align-items: center; justify-content: center; font-family: var(--int-titulos); font-weight: 800; font-size: 40px; transform: rotate(-10deg); }
.int-oferta__txt { flex: 1; display: flex; flex-direction: column; gap: 4px; min-width: 0; position: relative; z-index: 1; }
.int-oferta__etq { font-family: var(--int-titulos); font-weight: 800; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; }
.int-oferta strong { font-family: var(--int-titulos); font-weight: 800; font-size: clamp(22px, 2.6vw, 30px); line-height: 1.1; }
.int-oferta__p { font-size: 15px; opacity: .9; }
.int-oferta__btn { flex: 0 0 auto; background: var(--int-negro); color: #fff; padding: 14px 24px; border-radius: 8px; font-weight: 700; font-size: 15px; position: relative; z-index: 1; transition: transform .15s; }
.int-oferta:hover .int-oferta__btn { transform: translateX(4px); }
@media (max-width: 700px) {
	.int-oferta { flex-direction: column; align-items: flex-start; gap: 14px; padding: 22px; }
	.int-oferta__sello { width: 56px; height: 56px; font-size: 30px; }
}

/* ============ PORTADA · BANNER PRINCIPAL (v2.5) ============ */
.int-portada { position: relative; background: #141414; }
.int-portada__img { display: block; }
.int-portada__img img { display: block; width: 100%; height: auto; max-height: 640px; object-fit: cover; object-position: left center; }
.int-portada__btns { position: absolute; left: 5.4%; bottom: 7%; display: none; gap: 12px; }
.int-portada__btns .int-btn-sec { background: rgba(20,20,20,.75); }
@media (max-width: 767px) {
	.int-portada__btns { position: static; display: flex; flex-wrap: wrap; justify-content: center; padding: 16px; }
	.int-portada__btns a { flex: 1 1 140px; text-align: center; }
}

/* ============ PROFESIONALES (v2.6) ============ */
.int-nav .int-dd--pro { margin-left: auto; }
.int-nav .int-pro-link { color: var(--int-naranja); border: 1.5px solid var(--int-naranja); border-radius: 6px; padding: 7px 14px; margin: 6px 0; }
.int-nav .int-pro-link:hover { background: var(--int-naranja); color: var(--int-negro); }
.int-acciones a.int-acc-pro { color: var(--int-naranja); display: none; }
.int-probar { background: var(--int-negro); color: #fff; text-align: center; font-size: 13px; padding: 7px 16px; border-bottom: 2px solid var(--int-naranja); }
.int-probar strong { color: var(--int-naranja); }
.int-pro { max-width: 1040px; margin: 0 auto; }
.int-pro__hero { background: var(--int-negro); color: #fff; border-radius: 14px; padding: 36px 40px; margin-bottom: 22px; }
.int-pro__hero h2 { color: #fff; font-size: clamp(26px, 3.4vw, 40px); margin: 6px 0 10px; }
.int-pro__hero p { color: #d4d6d9; font-size: 17px; max-width: 680px; margin: 0; }
.int-pro__ventajas { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; margin-bottom: 28px; }
.int-pro__ventajas div { background: var(--int-gris-claro); border-left: 4px solid var(--int-naranja); border-radius: 10px; padding: 16px 18px; display: flex; flex-direction: column; gap: 4px; }
.int-pro__ventajas strong { font-family: var(--int-titulos); font-size: 19px; }
.int-pro__ventajas span { color: var(--int-gris); font-size: 14.5px; }
.int-pro__form { background: #fff; border: 1px solid #e3e5e8; border-radius: 14px; padding: 26px 28px; }
.int-pro__form h3 { margin-top: 0; }
.int-pro__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px 20px; margin-bottom: 16px; }
.int-pro__grid label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; font-size: 14.5px; }
.int-pro__grid input, .int-pro__grid select { height: 46px; border: 1px solid #c9ccd0; border-radius: 8px; padding: 0 12px; font-size: 15px; background: #fff; }
.int-pro__priv { display: block; font-size: 14px; margin: 6px 0 18px; }
.int-pro__ya { font-size: 14px; color: var(--int-gris); margin: 14px 0 0; }
@media (max-width: 767px) {
	.int-nav .int-dd--pro { margin-left: 0; }
	.int-nav .int-pro-link { justify-content: center; margin: 12px 0; }
	.int-pro__hero { padding: 26px 22px; }
	.int-acciones a.int-acc-pro { display: inline-flex; }
}

/* ============ BANNER DE CATEGORÍA (v2.7) ============ */
.int-catban { position: relative; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); min-height: 230px; background: var(--int-negro); color: #fff; border-radius: 14px; overflow: hidden; margin: 0 0 26px; }
.int-catban__txt { position: relative; z-index: 1; padding: 30px 36px; display: flex; flex-direction: column; justify-content: center; gap: 8px; }
.int-catban__txt::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: var(--int-naranja); }
.int-catban__migas { font-size: 13px; color: #b9bcc0; }
.int-catban__migas a { color: #b9bcc0; text-decoration: none; }
.int-catban__migas a:hover { color: var(--int-naranja); }
.int-catban h1 { color: #fff; font-family: var(--int-titulos); font-weight: 800; font-size: clamp(38px, 5vw, 64px); line-height: 1; margin: 2px 0 4px; letter-spacing: -.01em; }
.int-catban__desc, .int-catban__desc p { color: #d4d6d9; font-size: 16px; line-height: 1.5; margin: 0; max-width: 520px; }
.int-catban__n { align-self: flex-start; margin-top: 8px; background: var(--int-naranja); color: var(--int-negro); font-weight: 800; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; border-radius: 999px; padding: 6px 14px; }
.int-catban__img { background: #2a2a2a center / cover no-repeat; position: relative; }
.int-catban__img::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--int-negro) 0%, rgba(20,20,20,.35) 35%, rgba(20,20,20,0) 70%); }
@media (max-width: 767px) {
	.int-catban { grid-template-columns: 1fr; min-height: 0; }
	.int-catban__img { position: absolute; inset: 0; opacity: .35; }
	.int-catban__img::before { background: linear-gradient(0deg, var(--int-negro) 0%, rgba(20,20,20,.3) 100%); }
	.int-catban__txt { padding: 26px 22px; }
}

/* ============ AJUSTES v2.7.1 ============ */
.int-portada { background: transparent; padding-top: 24px; }
.int-portada__img { border-radius: 14px; overflow: hidden; background: #141414; }
.int-portada__img img { width: 100%; height: auto !important; max-height: none !important; object-fit: initial; aspect-ratio: 2117 / 743; }
.int-nav__fila { gap: 18px; }
.int-nav .int-dd-menu { flex: 1; flex-wrap: nowrap; gap: 0; min-width: 0; }
.int-nav .int-dd__btn { padding: 14px 9px; font-size: 14px; white-space: nowrap; }
.int-nav .int-pro-link { padding: 7px 12px; }
@media (max-width: 1180px) { .int-nav .int-dd__btn { padding: 14px 6px; font-size: 13px; letter-spacing: .02em; } .int-cats-btn { font-size: 13px; padding: 9px 12px; } }
@media (max-width: 767px) {
	.int-portada { padding-top: 12px; }
	.int-portada__img { border-radius: 10px; }
	.int-nav .int-dd-menu { flex-wrap: wrap; }
	.int-nav .int-dd__btn { padding: 13px 4px; font-size: 15px; }
}

/* ============ REGISTRO PARTICULAR / PROFESIONAL (v2.8) ============ */
.int-tipo { border: 0; padding: 0; margin: 0 0 16px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.int-tipo legend { font-weight: 700; margin-bottom: 8px; padding: 0; }
.int-tipo__op { display: flex; gap: 10px; align-items: flex-start; border: 1.5px solid #d4d7db; border-radius: 10px; padding: 12px 14px; cursor: pointer; background: #fff; }
.int-tipo__op:has(input:checked) { border-color: var(--int-naranja); background: #fff6ee; }
.int-tipo__op input { margin-top: 4px; accent-color: var(--int-naranja); }
.int-tipo__op span { display: flex; flex-direction: column; gap: 2px; }
.int-tipo__op small { color: var(--int-gris); font-size: 13px; line-height: 1.35; }
.int-tipo__pro { background: var(--int-gris-claro); border-radius: 10px; padding: 14px 16px 4px; margin-bottom: 16px; }
.int-tipo__pro[hidden] { display: none; }
.int-tipo__pro select { width: 100%; height: 44px; border: 1px solid #c9ccd0; border-radius: 8px; padding: 0 10px; background: #fff; }
.int-tipo__nota { font-size: 13px; color: var(--int-gris); }
@media (max-width: 480px) { .int-tipo { grid-template-columns: 1fr; } }

/* ============ CARRUSEL DE PORTADA (v2.9) ============ */
.int-carru { position: relative; border-radius: 14px; overflow: hidden; background: #141414; }
.int-carru__pista { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; scroll-behavior: smooth; }
.int-carru__pista::-webkit-scrollbar { display: none; }
.int-carru__slide { flex: 0 0 100%; scroll-snap-align: start; display: block; }
.int-carru__slide img { display: block; width: 100%; height: auto !important; aspect-ratio: 2117 / 743; object-fit: cover; }
.int-carru__flecha { position: absolute; top: 50%; transform: translateY(-50%); width: 46px; height: 46px; border-radius: 50%; border: 0; background: rgba(20,20,20,.65); color: #fff; font-size: 30px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0 0 4px; opacity: 0; transition: opacity .2s, background .2s; }
.int-carru:hover .int-carru__flecha, .int-carru__flecha:focus-visible { opacity: 1; }
.int-carru__flecha:hover { background: var(--int-naranja); color: var(--int-negro); }
.int-carru__prev { left: 14px; } .int-carru__next { right: 14px; }
.int-carru__puntos { position: absolute; left: 0; right: 0; bottom: 12px; display: flex; justify-content: center; gap: 8px; }
.int-carru__puntos button { width: 10px; height: 10px; border-radius: 999px; border: 0; padding: 0; background: rgba(255,255,255,.55); cursor: pointer; transition: width .2s, background .2s; }
.int-carru__puntos button[aria-current="true"] { width: 28px; background: var(--int-naranja); }
@media (max-width: 767px) { .int-carru { border-radius: 10px; } .int-carru__flecha { display: none; } .int-carru__puntos { bottom: 6px; } .int-carru__puntos button { width: 8px; height: 8px; } .int-carru__puntos button[aria-current="true"] { width: 20px; } }

/* ============ VENTANA DE DESCUENTO (v2.10) ============ */
.int-pop { position: fixed; inset: 0; z-index: 9999; background: rgba(10,10,10,.6); display: flex; align-items: center; justify-content: center; padding: 20px; animation: intPopF .25s ease; }
.int-pop[hidden] { display: none; }
body.int-pop-abierto { overflow: hidden; }
.int-pop__caja { position: relative; background: #fff; border-radius: 16px; max-width: 440px; width: 100%; padding: 34px 30px 24px; text-align: center; border-top: 6px solid var(--int-naranja); box-shadow: 0 30px 70px rgba(0,0,0,.4); animation: intPopS .3s cubic-bezier(.2,.9,.3,1.2); }
.int-pop__x { position: absolute; right: 10px; top: 8px; width: 38px; height: 38px; border: 0; background: transparent; font-size: 28px; line-height: 1; color: #6b6f74; cursor: pointer; border-radius: 50%; }
.int-pop__x:hover { background: #f1f2f3; color: var(--int-negro); }
.int-pop__sello { width: 96px; height: 96px; margin: 0 auto 14px; border-radius: 50%; background: var(--int-negro); color: var(--int-naranja); display: flex; align-items: center; justify-content: center; font-family: var(--int-titulos); font-weight: 800; font-size: 44px; transform: rotate(-8deg); box-shadow: 0 0 0 6px #fff3ea; }
.int-pop__sello small { font-size: 24px; margin-left: 2px; }
.int-pop h2 { font-size: 26px; line-height: 1.15; margin: 0 0 8px; }
.int-pop p { color: var(--int-gris); font-size: 15.5px; margin: 0 0 16px; }
.int-pop__codigo { display: flex; border: 2px dashed var(--int-naranja); border-radius: 10px; overflow: hidden; margin: 0 0 14px; }
.int-pop__codigo code { flex: 1; font-family: var(--int-titulos); font-weight: 800; font-size: 26px; letter-spacing: .12em; padding: 10px; background: #fff6ee; color: var(--int-negro); }
.int-pop__copiar { border: 0; background: var(--int-naranja); color: var(--int-negro); font-weight: 800; padding: 0 18px; cursor: pointer; font-size: 15px; }
.int-pop__copiar:hover { background: var(--int-negro); color: #fff; }
.int-pop__usar { display: block; width: 100%; text-align: center; background: var(--int-negro) !important; color: #fff !important; padding: 14px; font-weight: 700; }
.int-pop .int-pop__letra { font-size: 12px; color: #8a8d91; margin: 12px 0 0; }
@keyframes intPopF { from { opacity: 0; } to { opacity: 1; } }
@keyframes intPopS { from { opacity: 0; transform: translateY(20px) scale(.96); } to { opacity: 1; transform: none; } }

/* Ventana en modo Black Friday */
.int-pop__caja { background: #141414; color: #fff; border-top: 0; border: 2px solid var(--int-naranja); overflow: hidden; }
.int-pop__caja::before { content: ""; position: absolute; right: -70px; top: -70px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(226,106,10,.45), rgba(226,106,10,0) 70%); pointer-events: none; }
.int-pop__etq { display: inline-block; font-family: var(--int-titulos); font-weight: 800; font-style: italic; font-size: 30px; letter-spacing: .02em; text-transform: uppercase; color: #fff; background: var(--int-naranja); padding: 2px 16px; transform: skew(-8deg) rotate(-3deg); margin: 0 0 16px; box-shadow: 4px 4px 0 #fff; color: var(--int-negro); }
.int-pop__sello { background: var(--int-naranja); color: var(--int-negro); box-shadow: 0 0 0 6px rgba(226,106,10,.25); }
.int-pop h2 { color: #fff; }
.int-pop p { color: #c9ccd0; }
.int-pop__x { color: #b9bcc0; }
.int-pop__x:hover { background: #2a2a2a; color: #fff; }
.int-pop__codigo code { background: #1f1f1f; color: var(--int-naranja); }
.int-pop__usar { background: var(--int-naranja) !important; color: var(--int-negro) !important; }
.int-pop__usar:hover { background: #fff !important; }
.int-pop__copiar:hover { background: #fff; color: var(--int-negro); }

/* Ventana de Navidad */
.int-pop--nav .int-pop__etq { background: #fff; color: var(--int-negro); box-shadow: 4px 4px 0 var(--int-naranja); }
.int-pop__nieve { position: absolute; inset: 0; pointer-events: none; overflow: hidden; }
.int-pop__nieve i { position: absolute; top: -20px; color: rgba(255,255,255,.7); font-style: normal; animation: intNieve linear infinite; }
.int-pop__nieve i:nth-child(1){left:5%;animation-duration:7s;font-size:14px}.int-pop__nieve i:nth-child(2){left:14%;animation-duration:9s;animation-delay:1s;font-size:10px}
.int-pop__nieve i:nth-child(3){left:23%;animation-duration:6s;animation-delay:2s}.int-pop__nieve i:nth-child(4){left:32%;animation-duration:10s;font-size:12px}
.int-pop__nieve i:nth-child(5){left:41%;animation-duration:8s;animation-delay:3s;font-size:9px}.int-pop__nieve i:nth-child(6){left:50%;animation-duration:7.5s;animation-delay:.5s}
.int-pop__nieve i:nth-child(7){left:59%;animation-duration:9.5s;animation-delay:2.5s;font-size:11px}.int-pop__nieve i:nth-child(8){left:68%;animation-duration:6.5s;animation-delay:1.5s}
.int-pop__nieve i:nth-child(9){left:77%;animation-duration:8.5s;font-size:10px}.int-pop__nieve i:nth-child(10){left:86%;animation-duration:7s;animation-delay:3.5s;font-size:13px}
.int-pop__nieve i:nth-child(11){left:94%;animation-duration:9s;animation-delay:.8s}.int-pop__nieve i:nth-child(12){left:10%;animation-duration:11s;animation-delay:4s;font-size:8px}
.int-pop__nieve i:nth-child(13){left:46%;animation-duration:10.5s;animation-delay:5s;font-size:9px}.int-pop__nieve i:nth-child(14){left:81%;animation-duration:12s;animation-delay:2s;font-size:8px}
@keyframes intNieve { to { transform: translateY(620px) rotate(200deg); } }
@media (prefers-reduced-motion: reduce) { .int-pop__nieve { display: none; } }

/* ============ MI CUENTA (v2.12) ============ */
.woocommerce-account.logged-in .woocommerce { display: block; }
.int-cuenta { max-width: 1180px; margin: 0 auto; }
.int-cuenta__cab { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; background: var(--int-negro); color: #fff; border-radius: 16px; padding: 28px 32px; margin: 8px 0 28px; position: relative; overflow: hidden; }
.int-cuenta__cab::after { content: ""; position: absolute; right: -80px; top: -80px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(226,106,10,.35), rgba(226,106,10,0) 70%); }
.int-cuenta__ava { flex: 0 0 72px; width: 72px; height: 72px; border-radius: 50%; background: var(--int-naranja); color: var(--int-negro); display: flex; align-items: center; justify-content: center; font-family: var(--int-titulos); font-weight: 800; font-size: 34px; }
.int-cuenta__hola { flex: 1; min-width: 200px; position: relative; z-index: 1; }
.int-cuenta__hola h1 { color: #fff; font-size: clamp(26px, 3vw, 36px); margin: 6px 0 2px; line-height: 1.1; }
.int-cuenta__hola p { color: #b9bcc0; margin: 0; font-size: 14.5px; }
.int-cuenta__tipo { display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; background: #2e2e2e; color: #d4d6d9; }
.int-cuenta__tipo.is-pro { background: var(--int-naranja); color: var(--int-negro); }
.int-cuenta__tipo.is-pend { background: #4a3a1a; color: #ffc66b; }
.int-cuenta__stats { display: flex; gap: 12px; position: relative; z-index: 1; }
.int-cuenta__stats a { display: flex; flex-direction: column; min-width: 120px; padding: 12px 18px; border-radius: 12px; background: #222; text-decoration: none; color: #fff; border: 1px solid #333; }
.int-cuenta__stats a:hover { border-color: var(--int-naranja); }
.int-cuenta__stats strong { font-family: var(--int-titulos); font-size: 28px; line-height: 1; color: var(--int-naranja); }
.int-cuenta__stats span { font-size: 13px; color: #b9bcc0; margin-top: 4px; }
.int-cuenta__stats span .amount { color: #b9bcc0; }
.int-cuenta__cuerpo { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 32px; align-items: start; }
.woocommerce-account .int-cuenta__nav { position: sticky; top: 150px; }
.woocommerce-account .int-cuenta__nav ul { list-style: none; margin: 0; padding: 8px; border: 1px solid #e3e5e8; border-radius: 14px; background: #fff; overflow: visible; }
.woocommerce-account .int-cuenta__nav li a { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 0; border-radius: 10px; color: #2a2a2a; font-weight: 600; font-size: 15px; text-decoration: none; }
.woocommerce-account .int-cuenta__nav li a svg { color: #8a8d91; flex: 0 0 20px; }
.woocommerce-account .int-cuenta__nav li a:hover { background: #fff3ea; color: var(--int-negro); }
.woocommerce-account .int-cuenta__nav li a:hover svg { color: var(--int-naranja); }
.woocommerce-account .int-cuenta__nav li.is-active a { background: var(--int-negro); color: #fff; }
.woocommerce-account .int-cuenta__nav li.is-active a svg { color: var(--int-naranja); }
.woocommerce-account .int-cuenta__nav li.woocommerce-MyAccount-navigation-link--customer-logout { border-top: 1px solid #eceef0; margin-top: 6px; padding-top: 6px; }
.woocommerce-account .int-cuenta__nav li.woocommerce-MyAccount-navigation-link--customer-logout a { color: #b42318; }
.woocommerce-account .int-cuenta__nav li.woocommerce-MyAccount-navigation-link--customer-logout a svg { color: #b42318; }
.int-cuenta__contenido { min-width: 0; }
.int-cuenta__contenido > h2:first-child, .int-cuenta__contenido > h3:first-child { margin-top: 0; }
.int-dash__bloque { border: 1px solid #e3e5e8; border-radius: 14px; padding: 22px 24px; margin-bottom: 22px; background: #fff; }
.int-dash__tit { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 14px; }
.int-dash__tit h2 { font-size: 22px; margin: 0; }
.int-dash__tit a { color: var(--int-naranja); font-weight: 700; text-decoration: none; }
.int-dash__pedidos { display: flex; flex-direction: column; gap: 8px; }
.int-dash__pedido { display: grid; grid-template-columns: 1.1fr 1.4fr auto auto; gap: 14px; align-items: center; padding: 14px 16px; border-radius: 10px; background: var(--int-gris-claro); text-decoration: none; color: var(--int-negro); }
.int-dash__pedido:hover { background: #fff3ea; }
.int-dash__num { font-weight: 700; }
.int-dash__fecha { color: var(--int-gris); font-size: 14px; }
.int-dash__estado { font-size: 12.5px; font-weight: 700; padding: 4px 10px; border-radius: 999px; background: #e3e5e8; white-space: nowrap; }
.int-dash__estado.est-completed { background: #dcf3e2; color: #1a7f37; }
.int-dash__estado.est-processing { background: #fff1d6; color: #9a5b00; }
.int-dash__estado.est-cancelled, .int-dash__estado.est-failed, .int-dash__estado.est-refunded { background: #fde4e1; color: #b42318; }
.int-dash__vacio { text-align: center; padding: 18px 0 8px; }
.int-dash__vacio p { color: var(--int-gris); margin: 0 0 14px; }
.int-dash__tarjetas { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
.int-dash__card { display: flex; flex-direction: column; gap: 4px; padding: 18px 20px; border-radius: 14px; border: 1px solid #e3e5e8; background: #fff; text-decoration: none; color: var(--int-negro); transition: border-color .15s, transform .15s; }
.int-dash__card:hover { border-color: var(--int-naranja); transform: translateY(-2px); }
.int-dash__card strong { font-size: 16.5px; }
.int-dash__card span { color: var(--int-gris); font-size: 14px; }
.int-dash__card.is-dest { background: var(--int-negro); border-color: var(--int-negro); }
.int-dash__card.is-dest strong { color: var(--int-naranja); }
.int-dash__card.is-dest span { color: #c9ccd0; }
.int-cuenta__contenido .woocommerce-orders-table, .int-cuenta__contenido .shop_table { border-radius: 12px; overflow: hidden; }
@media (max-width: 900px) {
	.int-cuenta__cuerpo { grid-template-columns: 1fr; gap: 18px; }
	.woocommerce-account .int-cuenta__nav { position: static; }
	.woocommerce-account .int-cuenta__nav ul { display: flex; overflow-x: auto; gap: 4px; scrollbar-width: none; }
	.woocommerce-account .int-cuenta__nav li { flex: 0 0 auto; }
	.woocommerce-account .int-cuenta__nav li.woocommerce-MyAccount-navigation-link--customer-logout { border-top: 0; margin: 0; padding: 0; }
	.woocommerce-account .int-cuenta__nav li a { white-space: nowrap; padding: 10px 12px; font-size: 14px; }
	.int-cuenta__cab { padding: 22px; }
	.int-cuenta__stats { width: 100%; }
	.int-cuenta__stats a { flex: 1; min-width: 0; }
	.int-dash__pedido { grid-template-columns: 1fr auto; }
	.int-dash__fecha { grid-column: 1; }
}

/* Área profesional dentro de Mi cuenta */
.int-proarea { position: relative; overflow: hidden; background: var(--int-negro); color: #fff; border-radius: 16px; padding: 30px 32px; }
.int-proarea::after { content: ""; position: absolute; right: -60px; bottom: -60px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle, rgba(226,106,10,.35), rgba(226,106,10,0) 70%); pointer-events: none; }
.int-proarea__etq { display: inline-block; background: var(--int-naranja); color: var(--int-negro); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; }
.int-proarea.is-pend .int-proarea__etq { background: #ffc66b; }
.int-proarea h2 { color: #fff; font-size: clamp(24px, 2.8vw, 32px); margin: 12px 0 8px; }
.int-proarea p { color: #c9ccd0; font-size: 16px; margin: 0 0 18px; max-width: 560px; }
.int-proarea p strong { color: #fff; }
.int-proarea__lista { list-style: none; margin: 0 0 22px; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 10px; }
.int-proarea__lista li { background: #222; border: 1px solid #333; border-radius: 10px; padding: 12px 14px 12px 40px; position: relative; color: #c9ccd0; font-size: 14.5px; }
.int-proarea__lista li::before { content: "✓"; position: absolute; left: 14px; top: 11px; color: var(--int-naranja); font-weight: 800; }
.int-proarea__lista li strong { color: #fff; }
.int-proarea .int-btn { position: relative; z-index: 1; }
.int-proarea__nota { display: inline-block; margin-left: 14px; color: #8a8d91; font-size: 13.5px; }
.int-proarea__datos { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; margin: 6px 0 18px; }
.int-proarea__datos div { background: #222; border: 1px solid #333; border-radius: 12px; padding: 14px 16px; display: flex; flex-direction: column; gap: 2px; }
.int-proarea__datos strong { font-family: var(--int-titulos); font-size: 24px; color: var(--int-naranja); }
.int-proarea__datos span { color: #b9bcc0; font-size: 13.5px; }
@media (max-width: 600px) { .int-proarea { padding: 24px 20px; } .int-proarea__nota { display: block; margin: 10px 0 0; } }

/* ============ MI CUENTA v2.13 (cabecera tipo banner + apaños WordPress.com) ============ */
.int-cuenta__cab { display: block; min-height: 250px; padding: 34px 40px; background: #141414 var(--int-cab-img) right center / auto 100% no-repeat; }
.int-cuenta__cab::after { display: none; }
.int-cuenta__cab::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #141414 55%, rgba(20,20,20,.75) 72%, rgba(20,20,20,0) 88%); pointer-events: none; }
.int-cuenta__ava { display: none; }
.int-cuenta__hola { position: relative; z-index: 1; max-width: 760px; }
.int-cuenta__hola h1 { font-family: var(--int-titulos); font-weight: 800; font-style: italic; font-size: clamp(32px, 4.4vw, 54px); margin: 10px 0 6px; }
.int-cuenta__hola h1 em { color: var(--int-naranja); font-style: italic; }
.int-cuenta__hola > p { font-style: italic; font-size: 17px; color: #d4d6d9; padding-bottom: 14px; margin-bottom: 18px; background: linear-gradient(90deg, var(--int-naranja), rgba(226,106,10,0)) left bottom / 60% 3px no-repeat; }
.int-cuenta__accesos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
.int-cuenta__accesos a { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px; padding: 6px 10px; color: #fff; text-decoration: none; border-left: 2px solid rgba(226,106,10,.7); }
.int-cuenta__accesos a:first-child { border-left: 0; }
.int-cuenta__accesos a svg { color: #fff; transition: color .15s, transform .15s; }
.int-cuenta__accesos a:hover svg { color: var(--int-naranja); transform: translateY(-2px); }
.int-cuenta__accesos strong { font-family: var(--int-titulos); font-size: 20px; color: var(--int-naranja); line-height: 1.1; }
.int-cuenta__accesos span { font-size: 13.5px; font-weight: 600; }
.int-cuenta__stats { display: none; }
.woocommerce-account .int-cuenta__nav li.is-active a { background: var(--int-naranja); color: var(--int-negro); }
.woocommerce-account .int-cuenta__nav li.is-active a svg { color: var(--int-negro); }

/* Si WordPress.com pinta su propia página de cuenta: quitamos su avatar y ordenamos */
.woocommerce-account.logged-in .woocommerce:has(> .woocommerce-MyAccount-navigation) { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 28px 32px; align-items: start; }
.woocommerce-account.logged-in .woocommerce:has(> .woocommerce-MyAccount-navigation) > :not(.woocommerce-MyAccount-navigation):not(.woocommerce-MyAccount-content):not(.woocommerce-notices-wrapper):not(.int-cuenta__cab-wrap) { display: none !important; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper, .int-cuenta__cab-wrap { grid-column: 1 / -1; }
.int-cuenta__cab-wrap .int-cuenta__cab { margin: 0; }
.woocommerce-account img.avatar, .woocommerce-account .woocommerce-MyAccount-navigation img { display: none !important; }
.woocommerce-MyAccount-content:has(.int-dash-fallback) > p { display: none; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { padding: 8px; border-radius: 14px; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 0 !important; border-radius: 10px; font-weight: 600; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background: var(--int-naranja); color: var(--int-negro); }
.woocommerce-account .woocommerce-MyAccount-navigation:not(.int-cuenta__nav) li a::before { content: ""; width: 20px; height: 20px; flex: 0 0 20px; background: currentColor; -webkit-mask: var(--ico) center / contain no-repeat; mask: var(--ico) center / contain no-repeat; opacity: .75; }
.woocommerce-MyAccount-navigation-link--dashboard { --ico: 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.8'%3E%3Cpath d='M3 11l9-8 9 8v9a1 1 0 0 1-1 1h-5v-6H9v6H4a1 1 0 0 1-1-1z'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--area-profesional { --ico: 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.8'%3E%3Crect x='3' y='7' width='18' height='13' rx='2'/%3E%3Cpath d='M9 7V5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2M3 13h18'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--orders { --ico: 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.8'%3E%3Cpath d='M21 8l-9-5-9 5v8l9 5 9-5z'/%3E%3Cpath d='M3 8l9 5 9-5M12 13v8'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--mis-puntos { --ico: 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.8'%3E%3Cellipse cx='9' cy='6' rx='6' ry='2.5'/%3E%3Cpath d='M3 6v4c0 1.4 2.7 2.5 6 2.5M3 10v4c0 1.4 2.7 2.5 6 2.5'/%3E%3Ccircle cx='16.5' cy='15.5' r='4.5'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-address { --ico: 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.8'%3E%3Cpath d='M12 21s-7-6.2-7-12a7 7 0 0 1 14 0c0 5.8-7 12-7 12z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-account { --ico: 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.8'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z'/%3E%3C/svg%3E"); }
.woocommerce-MyAccount-navigation-link--customer-logout { --ico: 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.8'%3E%3Cpath d='M15 4h4a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-4M10 17l5-5-5-5M15 12H3'/%3E%3C/svg%3E"); }
@media (max-width: 900px) {
	.woocommerce-account.logged-in .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: 1fr; }
	.int-cuenta__cab { padding: 24px 20px; background-image: none; }
	.int-cuenta__accesos { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 14px; }
	.int-cuenta__accesos a:nth-child(3) { border-left: 0; }
}

/* v2.13.1 · arreglo ancho del menú de Mi cuenta (WooCommerce le pone 30 % de ancho) y fuera el nombre de usuario de WordPress.com */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content { float: none !important; width: auto !important; max-width: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation > :not(ul) { display: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { width: 100%; box-sizing: border-box; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { white-space: nowrap; }

/* v2.14.1 · Profesionales arriba junto a Mi cuenta (deja sitio a Piscina en la barra) */
@media (min-width: 768px) {
	.int-acciones a.int-acc-pro { display: inline-flex; color: var(--int-naranja); border: 1.5px solid var(--int-naranja); }
	.int-acciones a.int-acc-pro:hover { background: var(--int-naranja); color: var(--int-negro); }
	.int-nav .int-dd--pro { display: none; }
}
@media (min-width: 768px) and (max-width: 1400px) {
	.int-nav__fila { gap: 12px; }
	.int-cats-btn { padding: 9px 12px; font-size: 13.5px; }
	.int-nav .int-dd__btn { padding: 14px 7px; font-size: 13.5px; letter-spacing: .02em; }
}
@media (min-width: 768px) and (max-width: 1100px) {
	.int-cats-btn { font-size: 0; gap: 0; padding: 10px 12px; }
	.int-cats-btn svg { width: 20px; height: 20px; }
	.int-nav .int-dd__btn { padding: 14px 5px; font-size: 12.5px; }
}

/* v2.14.2 · Desplegables con subcategorías de 3.er nivel (p. ej. Piscina) */
.int-nav .int-dd__panel--grupos { min-width: 640px; padding: 8px 6px 14px; }
.int-nav .int-dd:nth-last-child(-n+3) .int-dd__panel { left: auto; right: 0; }
.int-nav .int-dd__panel--grupos > ul { columns: 2; column-gap: 8px; }
.int-nav .int-dd__panel--grupos > ul > li { break-inside: avoid; }
.int-nav .int-dd__panel--grupos > ul > .int-dd__todo { column-span: all; }
.int-nav .int-dd__grupo { padding: 4px 0 8px; }
.int-nav .int-dd__panel li a.int-dd__gtit { font-weight: 800; font-family: var(--int-titulos); text-transform: uppercase; letter-spacing: .03em; font-size: 14px; color: var(--int-negro); border-bottom: 2px solid var(--int-naranja); margin: 0 12px 4px; padding: 8px 6px 6px; }
.int-nav .int-dd__grupo ul { list-style: none; margin: 0; padding: 0; }
.int-nav .int-dd__grupo ul a { padding: 6px 18px; font-size: 14.5px; }
@media (max-width: 767px) {
	.int-nav .int-dd__panel--grupos { min-width: 0; }
	.int-nav .int-dd__panel--grupos > ul { columns: 1; }
	.int-nav .int-dd:nth-last-child(-n+3) .int-dd__panel { right: auto; }
}

/* v2.15 · Productos sin precio */
.int-sinprecio { font-weight: 700; color: var(--int-gris); font-size: .95em; }
a.button.int-pedir { background: var(--int-negro) !important; color: #fff !important; }
a.button.int-pedir:hover { background: var(--int-naranja) !important; color: var(--int-negro) !important; }
.int-pedir-caja { background: var(--int-gris-claro); border-left: 4px solid var(--int-naranja); border-radius: 10px; padding: 14px 18px; margin: 10px 0 18px; }
.int-pedir-caja p { margin: 0 0 10px; }

/* ============ TARJETAS DE PRODUCTO (v2.16) ============ */
ul.products li.product { display: flex !important; flex-direction: column; padding: 0 0 16px !important; border: 1px solid #e6e8eb; border-radius: 14px; transition: box-shadow .2s, border-color .2s, transform .2s; }
ul.products li.product:hover { border-color: var(--int-naranja); box-shadow: 0 14px 30px rgba(20,20,20,.10); transform: translateY(-3px); }
ul.products li.product > a.woocommerce-LoopProduct-link { display: flex; flex-direction: column; flex: 1; text-decoration: none; color: var(--int-negro); }
ul.products li.product a img { margin: 0 0 14px !important; border-radius: 13px 13px 0 0; transition: transform .3s; padding: 10px; box-sizing: border-box; }
ul.products li.product:hover a img { transform: scale(1.03); }
ul.products li.product .woocommerce-loop-product__title { font-size: 14.5px !important; line-height: 1.35; font-weight: 600 !important; color: #1d1d1d; padding: 0 16px !important; margin: 0 0 10px !important; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; min-height: calc(1.35em * 3); }
ul.products li.product .price { margin-top: auto !important; padding: 0 16px !important; font-family: var(--int-titulos) !important; font-size: 24px !important; font-weight: 800 !important; color: var(--int-negro) !important; display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
ul.products li.product .price del { font-size: 15px; color: #8a8d91; font-weight: 600; opacity: 1; }
ul.products li.product .price ins { text-decoration: none; color: #c2410c; }
ul.products li.product .price .woocommerce-price-suffix { font-family: var(--int-texto); font-size: 12px; font-weight: 500; color: #8a8d91; }
ul.products li.product .int-sinprecio { font-size: 17px; color: var(--int-gris); }
ul.products li.product .button,
ul.products li.product a.button { margin: 12px 16px 0 !important; display: flex !important; align-items: center; justify-content: center; gap: 8px; padding: 12px 14px !important; border-radius: 10px !important; background: var(--int-naranja) !important; color: var(--int-negro) !important; font-weight: 700 !important; font-size: 14.5px !important; line-height: 1.2; border: 0 !important; transition: background .15s, color .15s; }
ul.products li.product .button::before { content: ""; width: 18px; height: 18px; flex: 0 0 18px; 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='2'%3E%3Cpath d='M3 4h2l2.4 11h11l2-8H6.2'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%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='2'%3E%3Cpath d='M3 4h2l2.4 11h11l2-8H6.2'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3C/svg%3E") center / contain no-repeat; }
ul.products li.product .button.product_type_variable::before, ul.products li.product .button.int-pedir::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 6h16M4 12h16M4 18h10'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M4 6h16M4 12h16M4 18h10'/%3E%3C/svg%3E"); }
ul.products li.product .button:hover { background: var(--int-negro) !important; color: #fff !important; }
ul.products li.product .button.loading { opacity: .7; }
ul.products li.product .button.loading::after { display: none !important; }
ul.products li.product .button.added { background: #1a7f37 !important; color: #fff !important; }
ul.products li.product .button.added::after { display: none !important; }
ul.products li.product .button.added::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E"); }
ul.products li.product a.added_to_cart { display: block !important; margin: 8px 16px 0 !important; padding: 0 !important; background: none !important; color: var(--int-negro) !important; font-size: 13.5px; font-weight: 700; text-align: center; text-decoration: underline; text-underline-offset: 3px; border-radius: 0; }
ul.products li.product a.added_to_cart:hover { color: var(--int-naranja) !important; }
ul.products li.product a.button.int-pedir { background: var(--int-negro) !important; color: #fff !important; }
ul.products li.product a.button.int-pedir:hover { background: var(--int-naranja) !important; color: var(--int-negro) !important; }
ul.products li.product .button.product_type_variable { background: #fff !important; color: var(--int-negro) !important; box-shadow: inset 0 0 0 2px var(--int-negro); }
ul.products li.product .button.product_type_variable:hover { background: var(--int-negro) !important; color: #fff !important; }
@media (max-width: 600px) {
	ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
	ul.products li.product .woocommerce-loop-product__title { font-size: 13px !important; padding: 0 10px !important; }
	ul.products li.product .price { font-size: 19px !important; padding: 0 10px !important; }
	ul.products li.product .button { margin: 10px 10px 0 !important; font-size: 13px !important; padding: 10px 8px !important; }
	ul.products li.product a.added_to_cart { margin: 6px 10px 0 !important; }
}

/* ============ FICHA DE PRODUCTO (v2.17) ============ */
#jp-relatedposts, .jp-relatedposts { display: none !important; }
.int-oculto { position: absolute !important; opacity: 0 !important; pointer-events: none !important; width: 1px !important; height: 1px !important; }
.int-migas { font-size: 13.5px; color: #8a8d91; margin: 0 0 18px; display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: center; }
.int-migas a { color: #5b5f64; text-decoration: none; }
.int-migas a:hover { color: var(--int-naranja); }
.int-migas__sep { color: #c3c6ca; }
.single-product .site-main { padding-top: 22px; }
.woocommerce div.product { gap: 48px 56px; align-items: start; }
/* Galería */
.woocommerce div.product .woocommerce-product-gallery { position: sticky !important; top: 140px; }
.woocommerce div.product .woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce div.product .woocommerce-product-gallery .flex-viewport, .woocommerce div.product .woocommerce-product-gallery__image:only-child { border-radius: 16px; overflow: hidden; background: #f3f4f5; border: 1px solid #eceef0; }
.woocommerce div.product .woocommerce-product-gallery img { border-radius: 16px; }
.woocommerce div.product .flex-control-thumbs { display: flex; gap: 10px; margin: 12px 0 0 !important; padding: 0; }
.woocommerce div.product .flex-control-thumbs li { width: 76px !important; float: none !important; list-style: none; }
.woocommerce div.product .flex-control-thumbs img { border-radius: 10px; border: 2px solid transparent; opacity: .7; background: #f3f4f5; }
.woocommerce div.product .flex-control-thumbs img.flex-active, .woocommerce div.product .flex-control-thumbs img:hover { border-color: var(--int-naranja); opacity: 1; }
.woocommerce div.product .woocommerce-product-gallery__trigger { background: #fff; border-radius: 50%; box-shadow: 0 4px 12px rgba(0,0,0,.15); }
/* Resumen */
.single-product div.product .product_title { font-size: clamp(26px, 2.6vw, 36px) !important; line-height: 1.12; margin: 0 0 10px; letter-spacing: -.01em; }
.int-ficha__meta { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; margin: 0 0 16px; font-size: 13.5px; }
.int-stock { display: inline-flex; align-items: center; gap: 7px; font-weight: 700; padding: 5px 12px; border-radius: 999px; }
.int-stock i { width: 8px; height: 8px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 3px rgba(26,127,55,.18); }
.int-stock.is-ok { background: #e7f6ec; color: #1a7f37; }
.int-stock.is-no { background: #fde4e1; color: #b42318; }
.int-ficha__ref { color: #8a8d91; }
.single-product div.product .summary p.price, .single-product div.product .summary span.price { font-size: 42px !important; line-height: 1; margin: 4px 0 18px !important; display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 12px; }
.single-product div.product .summary p.price del { font-size: 22px; color: #8a8d91; }
.single-product div.product .summary p.price ins { text-decoration: none; color: #c2410c; }
.single-product div.product .summary .woocommerce-price-suffix, .single-product div.product .summary .int-iva { font-family: var(--int-texto); font-size: 13px; font-weight: 500; color: #8a8d91; }
.single-product div.product .summary .woocommerce-product-details__short-description { font-size: 15.5px; line-height: 1.6; color: #3b3f44; padding: 0 0 18px; margin-bottom: 18px; border-bottom: 1px solid #eceef0; }
/* Variaciones como botones */
.woocommerce div.product form.cart .variations { border: 0; margin: 0 0 6px; width: 100%; }
.woocommerce div.product form.cart .variations tr { display: block; margin-bottom: 14px; }
.woocommerce div.product form.cart .variations th, .woocommerce div.product form.cart .variations td { display: block; padding: 0 !important; text-align: left; border: 0; background: none; }
.woocommerce div.product form.cart .variations th label { font-weight: 700; font-size: 14px; margin-bottom: 8px; display: block; }
.int-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.int-pill { border: 1.5px solid #d4d7db; background: #fff; color: var(--int-negro); border-radius: 10px; padding: 10px 16px; font-size: 14.5px; font-weight: 600; cursor: pointer; transition: border-color .15s, background .15s; }
.int-pill:hover { border-color: var(--int-negro); }
.int-pill.is-sel { border-color: var(--int-naranja); background: #fff3ea; box-shadow: inset 0 0 0 1px var(--int-naranja); }
.woocommerce div.product form.cart .reset_variations { font-size: 13px; color: #8a8d91; margin-top: 6px; display: inline-block; }
.woocommerce div.product form.cart .single_variation_wrap .woocommerce-variation-price .price { font-size: 30px !important; margin: 4px 0 10px !important; }
.woocommerce div.product form.cart .single_variation_wrap .woocommerce-variation-description { font-size: 14px; color: #5b5f64; }
/* Cantidad + botón */
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart, .woocommerce div.product form.cart:not(.variations_form) { display: flex; gap: 12px; align-items: stretch; flex-wrap: wrap; margin: 6px 0 18px; }
.woocommerce div.product form.cart .quantity.int-qty { display: inline-flex; align-items: stretch; border: 1.5px solid #d4d7db; border-radius: 12px; overflow: hidden; margin: 0 !important; background: #fff; }
.int-qty .int-q { width: 44px; border: 0; background: #f3f4f5; font-size: 22px; font-weight: 700; color: var(--int-negro); cursor: pointer; }
.int-qty .int-q:hover { background: #fff3ea; color: var(--int-naranja); }
.int-qty input.qty { width: 56px !important; border: 0 !important; text-align: center; font-size: 17px; font-weight: 700; -moz-appearance: textfield; padding: 0 !important; height: auto !important; }
.int-qty input.qty::-webkit-inner-spin-button, .int-qty input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.woocommerce div.product form.cart .single_add_to_cart_button { flex: 1; min-width: 200px; padding: 17px 26px !important; font-size: 17px !important; border-radius: 12px !important; display: inline-flex !important; align-items: center; justify-content: center; gap: 10px; box-shadow: 0 8px 20px rgba(226,106,10,.25); }
.woocommerce div.product form.cart .single_add_to_cart_button::before { content: ""; width: 20px; height: 20px; 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='2'%3E%3Cpath d='M3 4h2l2.4 11h11l2-8H6.2'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%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='2'%3E%3Cpath d='M3 4h2l2.4 11h11l2-8H6.2'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.woocommerce div.product form.cart .single_add_to_cart_button.disabled { opacity: .45 !important; box-shadow: none; }
/* Puntos */
.single-product .int-pts-info, .single-product .summary .int-puntos { border-radius: 10px; }
/* Ventajas */
.int-ventajas-ficha { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 18px 0 12px; }
.int-ventajas-ficha > div { display: flex; gap: 12px; align-items: center; padding: 12px 14px; border: 1px solid #eceef0; border-radius: 12px; background: #fafafa; }
.int-ventajas-ficha svg { color: var(--int-naranja); flex: 0 0 26px; }
.int-ventajas-ficha span { display: flex; flex-direction: column; font-size: 12.5px; color: #6b6f74; line-height: 1.35; }
.int-ventajas-ficha strong { font-size: 13.5px; color: var(--int-negro); }
.int-ficha__pro { font-size: 13.5px; color: #5b5f64; margin: 0 0 16px; }
.int-ficha__pro a { color: var(--int-naranja); font-weight: 700; text-decoration: none; }
.single-product div.product .product_meta { font-size: 13px; color: #8a8d91; padding-top: 14px; border-top: 1px solid #eceef0; display: flex; flex-direction: column; gap: 4px; }
.single-product div.product .product_meta a { color: #5b5f64; }
.single-product div.product .product_meta .sku_wrapper { display: none; }
/* Pestañas */
.woocommerce div.product .woocommerce-tabs { margin-top: 30px; border: 1px solid #eceef0; border-radius: 16px; padding: 8px 28px 26px; background: #fff; }
.woocommerce div.product .woocommerce-tabs ul.tabs { border: 0 !important; gap: 4px; padding: 0 !important; margin: 0 0 18px !important; overflow-x: auto; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::before, .woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: none !important; border: 0 !important; margin: 0 !important; padding: 0 !important; border-radius: 0 !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { padding: 16px 18px 12px !important; color: #6b6f74 !important; font-weight: 700; font-size: 15px; border-bottom: 3px solid transparent; white-space: nowrap; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--int-negro) !important; border-bottom-color: var(--int-naranja); }
.woocommerce div.product .woocommerce-tabs .panel { font-size: 15.5px; line-height: 1.7; color: #3b3f44; max-width: 860px; }
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child { font-size: 22px; margin-top: 4px; }
.woocommerce div.product .woocommerce-tabs .panel ul li::marker { color: var(--int-naranja); }
.woocommerce-tabs table.shop_attributes { border: 0; border-radius: 10px; overflow: hidden; }
.woocommerce-tabs table.shop_attributes th, .woocommerce-tabs table.shop_attributes td { padding: 12px 16px !important; border: 0 !important; font-style: normal; }
.woocommerce-tabs table.shop_attributes tr:nth-child(odd) th, .woocommerce-tabs table.shop_attributes tr:nth-child(odd) td { background: #f6f6f7 !important; }
.woocommerce div.product .related > h2, .woocommerce div.product .upsells > h2 { font-size: 26px; margin: 44px 0 18px; }
/* Barra fija de compra */
.int-barra-compra { position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; background: #fff; border-top: 1px solid #e3e5e8; box-shadow: 0 -10px 30px rgba(0,0,0,.08); transform: translateY(110%); transition: transform .25s ease; }
.int-barra-compra.is-vis { transform: none; }
.int-barra-compra__in { display: flex; align-items: center; gap: 14px; padding-top: 10px; padding-bottom: 10px; }
.int-barra-compra img { width: 48px; height: 48px; object-fit: contain; border-radius: 8px; background: #f3f4f5; }
.int-barra-compra__nom { flex: 1; min-width: 0; font-weight: 700; font-size: 14.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.int-barra-compra__precio { font-family: var(--int-titulos); font-weight: 800; font-size: 22px; white-space: nowrap; }
.int-barra-compra__precio .woocommerce-price-suffix, .int-barra-compra__precio .int-iva { display: none; }
.int-barra-compra__btn { border: 0; background: var(--int-naranja); color: var(--int-negro); font-weight: 800; font-size: 15px; padding: 13px 22px; border-radius: 10px; cursor: pointer; white-space: nowrap; }
.int-barra-compra__btn:hover { background: var(--int-negro); color: #fff; }
.single-product .ic-btn { bottom: 90px; }
@media (max-width: 900px) {
	.woocommerce div.product .woocommerce-product-gallery { position: static !important; }
	.woocommerce div.product .woocommerce-tabs { padding: 4px 16px 20px; }
}
@media (max-width: 600px) {
	.int-ventajas-ficha { grid-template-columns: 1fr; }
	.single-product div.product .summary p.price { font-size: 34px !important; }
	.int-barra-compra img, .int-barra-compra__nom { display: none; }
	.int-barra-compra__in { justify-content: space-between; }
	.int-barra-compra__btn { flex: 1; }
}

/* ============ CARRITO (v2.19) ============ */
.int-carrito-cab { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; margin: 6px 0 20px; }
.int-carrito-cab h1 { font-size: clamp(28px, 3vw, 38px); margin: 0; }
.int-pasos { list-style: none; display: flex; align-items: center; gap: 0; margin: 0; padding: 0; counter-reset: p; }
.int-pasos li { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: #8a8d91; }
.int-pasos li + li::before { content: ""; width: 34px; height: 2px; background: #e0e2e5; margin: 0 10px; }
.int-pasos li span { width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #eceef0; color: #6b6f74; font-weight: 800; font-size: 13px; }
.int-pasos li.is-actual { color: var(--int-negro); }
.int-pasos li.is-actual span { background: var(--int-naranja); color: var(--int-negro); }
.int-pasos li.is-hecho { color: #1a7f37; }
.int-pasos li.is-hecho span { background: #dcf3e2; color: #1a7f37; }
.int-envio-barra { background: #fff6ee; border: 1px solid #f6d3b4; border-radius: 12px; padding: 12px 16px; margin: 0 0 22px; }
.int-envio-barra.is-ok { background: #e7f6ec; border-color: #b9e3c7; }
.int-envio-barra p { margin: 0 0 8px; font-size: 14.5px; }
.int-envio-barra__pista { height: 8px; border-radius: 999px; background: #f1e4d8; overflow: hidden; }
.int-envio-barra.is-ok .int-envio-barra__pista { background: #c9ead4; }
.int-envio-barra__pista span { display: block; height: 100%; border-radius: 999px; background: linear-gradient(90deg, #f08a2e, var(--int-naranja)); transition: width .4s; }
.int-envio-barra.is-ok .int-envio-barra__pista span { background: #1a7f37; }

.woocommerce-cart .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 0 32px; align-items: start; }
.woocommerce-cart .woocommerce > * { grid-column: 1 / -1; }
.woocommerce-cart .woocommerce > form.woocommerce-cart-form { grid-column: 1; }
.woocommerce-cart .woocommerce > .cart-collaterals { grid-column: 2; grid-row: span 3; position: sticky; top: 140px; width: auto !important; }
.woocommerce-cart .cart-collaterals .cart_totals { width: 100% !important; float: none !important; }
.woocommerce-cart .cart-collaterals .cross-sells { display: none; }

/* Tabla como tarjetas */
.woocommerce-cart table.shop_table.cart { border: 1px solid #e6e8eb !important; border-radius: 16px !important; overflow: hidden; border-collapse: separate !important; margin: 0 0 18px; }
.woocommerce-cart table.cart thead th { background: #f6f6f7; font-size: 12.5px; text-transform: uppercase; letter-spacing: .06em; color: #6b6f74; padding: 12px 14px !important; border: 0 !important; }
.woocommerce-cart table.cart td { padding: 16px 14px !important; border-top: 1px solid #eceef0 !important; vertical-align: middle; }
.woocommerce-cart table.cart td.product-thumbnail img { width: 84px !important; height: 84px; object-fit: contain; background: #f3f4f5; border-radius: 12px; padding: 6px; box-sizing: border-box; }
.woocommerce-cart table.cart td.product-name a { color: var(--int-negro); font-weight: 600; text-decoration: none; font-size: 15px; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.woocommerce-cart table.cart td.product-name a:hover { color: var(--int-naranja); }
.woocommerce-cart table.cart td.product-price { color: #6b6f74; white-space: nowrap; }
.woocommerce-cart table.cart td.product-subtotal { font-family: var(--int-titulos); font-weight: 800; font-size: 19px; white-space: nowrap; }
.woocommerce-cart table.cart a.remove { width: 36px !important; height: 36px !important; border-radius: 50% !important; display: inline-flex !important; align-items: center; justify-content: center; color: #8a8d91 !important; background: #f3f4f5 !important; font-size: 0 !important; }
.woocommerce-cart table.cart a.remove:hover { color: #fff !important; background: #b42318 !important; }
.woocommerce-cart table.cart .quantity.int-qty { display: inline-flex; border: 1.5px solid #d4d7db; border-radius: 10px; overflow: hidden; background: #fff; }
.woocommerce-cart table.cart .int-qty .int-q { width: 34px; border: 0; background: #f3f4f5; font-size: 18px; font-weight: 700; cursor: pointer; }
.woocommerce-cart table.cart .int-qty .int-q:hover { background: #fff3ea; color: var(--int-naranja); }
.woocommerce-cart table.cart .int-qty input.qty { width: 44px !important; border: 0 !important; text-align: center; font-weight: 700; font-size: 15px; -moz-appearance: textfield; padding: 8px 0 !important; height: auto !important; }
.woocommerce-cart table.cart .int-qty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; }
/* Fila de cupón */
.woocommerce-cart table.cart td.actions { background: #fafafa; padding: 14px !important; }
.woocommerce-cart table.cart td.actions .coupon { display: flex; gap: 8px; flex-wrap: wrap; float: left; }
.woocommerce-cart table.cart td.actions .coupon .input-text { width: 220px !important; height: 44px; border: 1.5px solid #d4d7db !important; border-radius: 10px !important; padding: 0 12px !important; font-size: 14.5px; }
.woocommerce-cart table.cart td.actions .coupon .button { height: 44px; border-radius: 10px !important; background: var(--int-negro) !important; color: #fff !important; padding: 0 18px !important; font-weight: 700; }
.woocommerce-cart table.cart td.actions .coupon .button:hover { background: var(--int-naranja) !important; color: var(--int-negro) !important; }
.woocommerce-cart table.cart td.actions > .button[name="update_cart"] { position: absolute !important; opacity: 0 !important; pointer-events: none; width: 1px; height: 1px; }
/* Totales */
.woocommerce-cart .cart_totals { background: #fff; border: 1px solid #e6e8eb; border-radius: 16px; padding: 0 0 18px; overflow: hidden; }
.woocommerce-cart .cart_totals > h2 { background: var(--int-negro); color: #fff; font-size: 18px; margin: 0 0 6px; padding: 16px 20px; text-transform: uppercase; letter-spacing: .04em; }
.woocommerce-cart .cart_totals table.shop_table { border: 0 !important; margin: 0 !important; }
.woocommerce-cart .cart_totals table.shop_table th, .woocommerce-cart .cart_totals table.shop_table td { border: 0 !important; border-bottom: 1px solid #eceef0 !important; padding: 12px 20px !important; background: none !important; font-size: 14.5px; vertical-align: top; }
.woocommerce-cart .cart_totals table.shop_table th { font-weight: 600; color: #5b5f64; width: 38%; }
.woocommerce-cart .cart_totals .woocommerce-shipping-destination { font-size: 13px; color: #8a8d91; margin: 4px 0 0; }
.woocommerce-cart .cart_totals .shipping-calculator-button { font-size: 13px; color: var(--int-negro); }
.woocommerce-cart .cart_totals tr.order-total th, .woocommerce-cart .cart_totals tr.order-total td { border-bottom: 0 !important; padding-top: 16px !important; }
.woocommerce-cart .cart_totals tr.order-total td strong { font-family: var(--int-titulos); font-size: 30px; font-weight: 800; color: var(--int-negro); }
.woocommerce-cart .cart_totals tr.order-total small { display: block; font-size: 12px; color: #8a8d91; }
.woocommerce-cart .wc-proceed-to-checkout { padding: 6px 20px 0 !important; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button { display: flex !important; align-items: center; justify-content: center; gap: 10px; padding: 18px !important; font-size: 17px !important; border-radius: 12px !important; margin: 0 0 10px !important; box-shadow: 0 8px 20px rgba(226,106,10,.25); }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button::before { content: ""; width: 18px; height: 18px; 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='2.2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%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='2.2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / contain no-repeat; }
.int-totales-ventajas { list-style: none; margin: 12px 20px 0; padding: 12px 0 0; border-top: 1px dashed #e0e2e5; display: flex; flex-direction: column; gap: 8px; }
.int-totales-ventajas li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: #5b5f64; }
.int-totales-ventajas svg { color: #1a7f37; flex: 0 0 18px; }
.int-seguir { display: block; text-align: center; margin: 14px 20px 0; font-size: 14px; font-weight: 600; color: #5b5f64; text-decoration: none; }
.int-seguir:hover { color: var(--int-naranja); }
/* Caja de puntos dentro del carrito */
.woocommerce-cart .cart-collaterals .int-pts, .woocommerce-cart .cart-collaterals [class*="int-pts"] { border-radius: 14px; margin-bottom: 16px; }
.woocommerce-cart .cart-empty, .woocommerce-cart .return-to-shop { grid-column: 1 / -1; text-align: center; }
.woocommerce-cart .return-to-shop .button { background: var(--int-naranja) !important; color: var(--int-negro) !important; border-radius: 12px !important; padding: 16px 26px !important; }
@media (max-width: 900px) {
	.woocommerce-cart .woocommerce { grid-template-columns: 1fr; }
	.woocommerce-cart .woocommerce > .cart-collaterals { grid-column: 1; position: static; }
	.int-pasos li { font-size: 0; gap: 0; }
	.int-pasos li span { font-size: 13px; }
	.int-pasos li + li::before { width: 22px; margin: 0 6px; }
	.woocommerce-cart table.cart td.actions .coupon { float: none; }
	.woocommerce-cart table.cart td.actions .coupon .input-text { flex: 1; width: auto !important; }
}

/* v2.19.1 · la foto ya no se queda fija encima de la descripción */
.woocommerce div.product .woocommerce-product-gallery { position: relative !important; top: auto !important; z-index: 1; }
.woocommerce div.product .woocommerce-tabs, .woocommerce div.product .related, .woocommerce div.product .upsells { position: relative; z-index: 2; background: #fff; }
.woocommerce div.product .woocommerce-product-gallery .flex-viewport, .woocommerce div.product .woocommerce-product-gallery__image:only-child { max-height: 640px; }
.woocommerce div.product .woocommerce-product-gallery__image img { max-height: 620px; width: 100%; object-fit: contain; }

/* v2.20 · Aviso de tienda aún sin abrir */
.int-aviso-apertura { background: #fff3c4; color: #5a4300; text-align: center; font-size: 13.5px; padding: 8px 16px; border-bottom: 1px solid #f0d77a; }
.int-aviso-apertura.is-admin { background: #e8f0ff; color: #1d3f8f; border-bottom-color: #c3d4f7; }
.int-footer__lema { font-size: 14px; line-height: 1.6; margin: 0; max-width: 300px; }

/* ============ v2.21 · Filtros, WhatsApp, cookies y sellos ============ */
.int-arbol .int-filtros { margin-top: 14px; }
.int-filtro-precio strong, .int-filtro > strong { display: block; font-size: 13.5px; margin: 6px 0 8px; }
.int-filtro-precio > div { display: flex; align-items: center; gap: 6px; }
.int-filtro-precio input { width: 72px; height: 38px; border: 1.5px solid #d4d7db; border-radius: 8px; padding: 0 8px; font-size: 14px; background: #fff; }
.int-filtro-precio button { height: 38px; border: 0; border-radius: 8px; background: var(--int-negro); color: #fff; font-weight: 700; padding: 0 12px; cursor: pointer; }
.int-filtro { margin-top: 16px; }
.int-filtro__ops { display: flex; flex-wrap: wrap; gap: 6px; }
.int-filtro__ops.is-largo:not(.is-abierto) a:nth-child(n+11) { display: none; }
.int-arbol a.int-chip { padding: 5px 10px; border: 1.5px solid #d4d7db; border-radius: 999px; font-size: 13px; background: #fff; font-weight: 600; }
.int-arbol a.int-chip span { font-size: 11.5px; }
.int-arbol a.int-chip:hover { border-color: var(--int-negro); color: var(--int-negro); }
.int-arbol a.int-chip.is-on { border-color: var(--int-naranja); background: #fff3ea; color: var(--int-negro); }
.int-filtro__mas { border: 0; background: none; color: var(--int-naranja); font-weight: 700; font-size: 13px; padding: 6px 0 0; cursor: pointer; }
.int-filtro__quitar { display: inline-block; margin-top: 14px; color: #b42318 !important; font-weight: 700; font-size: 13.5px; }

.int-wa { position: fixed; left: 20px; bottom: 20px; z-index: 95; width: 58px; height: 58px; border-radius: 50%; background: #25D366; color: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 10px 24px rgba(0,0,0,.25); transition: transform .15s; }
.int-wa:hover { transform: scale(1.08); color: #fff; }
.single-product .int-wa { bottom: 90px; }

.int-cookies { position: fixed; left: 20px; right: 20px; bottom: 20px; z-index: 9998; max-width: 560px; margin: 0 auto; background: #141414; color: #e3e5e8; border-radius: 14px; padding: 16px 18px; box-shadow: 0 20px 50px rgba(0,0,0,.35); display: flex; gap: 14px; align-items: center; flex-wrap: wrap; font-size: 14px; }
.int-cookies[hidden] { display: none; }
.int-cookies p { margin: 0; flex: 1 1 260px; }
.int-cookies a { color: var(--int-naranja); }
.int-cookies div { display: flex; gap: 8px; }
.int-cookies button { border: 1.5px solid #5a5d61; background: transparent; color: #fff; border-radius: 8px; padding: 9px 14px; font-weight: 700; cursor: pointer; }
.int-cookies button.is-ok { background: var(--int-naranja); border-color: var(--int-naranja); color: var(--int-negro); }

.int-sellos { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 18px 0 4px; border-top: 1px solid #2e2e2e; margin-top: 28px; font-size: 13px; }
.int-sellos span { color: #9a9da1; margin-right: 4px; }
.int-sellos b { background: #fff; color: #141414; border-radius: 6px; padding: 5px 10px; font-size: 12.5px; letter-spacing: .02em; }

/* ============ v2.22 · AJUSTE MÓVIL ============ */
.int-topbar__corto { display: none; }
@media (max-width: 767px) {
	/* Franjas superiores: una línea cada una */
	.int-topbar__largo { display: none; }
	.int-topbar__corto { display: inline; }
	.int-topbar, .int-aviso-apertura { font-size: 12.5px; padding: 6px 10px; line-height: 1.35; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	/* Cabecera compacta: logo + iconos en una fila, buscador debajo */
	.int-header__bar { gap: 10px 8px; padding: 10px 0 12px; flex-wrap: wrap; align-items: center; }
	.int-header .int-container { padding-left: 14px; padding-right: 14px; }
	.int-logo { flex: 1 1 auto; min-width: 0; }
	.int-logo img, .int-logo .custom-logo { max-height: 38px; max-width: 160px; height: auto; object-fit: contain; object-position: left center; }
	.int-acciones { gap: 0; flex: 0 0 auto; }
	.int-acciones a { padding: 8px; gap: 4px; }
	.int-acciones a svg { width: 22px; height: 22px; }
	.int-acciones a.int-acc-pro { border: 0; padding: 8px; }
	.int-carrito__n { min-width: 18px; height: 18px; font-size: 11px; padding: 0 4px; }
	.int-menu-btn { font-size: 0; width: 42px; height: 42px; padding: 0; margin-left: 4px; display: inline-flex; align-items: center; justify-content: center; }
	.int-menu-btn::before { content: ""; width: 22px; height: 22px; 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='2.2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%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='2.2' stroke-linecap='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3C/svg%3E") center / contain no-repeat; }
	.int-menu-btn[aria-expanded="true"]::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E"); }
	.int-search { order: 5; flex-basis: 100%; }
	.int-search input[type=search] { height: 44px; font-size: 16px; }
	.int-search button { height: 44px; width: 50px; }
	.int-nav { max-height: calc(100vh - 120px); overflow-y: auto; }
	/* Banner del carrusel: a todo el ancho y botones compactos */
	.int-portada { padding-top: 10px; }
	.int-portada .int-wrap { padding-left: 10px; padding-right: 10px; }
	.int-carru { border-radius: 10px; }
	.int-carru__puntos { bottom: 6px; gap: 6px; }
	.int-portada__btns { gap: 8px; padding: 10px 10px 4px; }
	.int-portada__btns a { flex: 1 1 0; padding: 12px 8px !important; font-size: 14.5px !important; line-height: 1.2; display: flex; align-items: center; justify-content: center; text-align: center; border-radius: 10px; min-height: 0; }
	/* Secciones y títulos */
	.int-wrap { padding-left: 14px; padding-right: 14px; }
	.int-section { padding: 30px 0 8px; }
	.int-section__head { margin-bottom: 14px; align-items: baseline; flex-wrap: nowrap; }
	.int-section__head h2 { font-size: 23px !important; }
	.int-section__head a { font-size: 14px; white-space: nowrap; }
	.int-oferta { padding: 18px; gap: 10px; }
	.int-oferta strong { font-size: 20px; }
	.int-oferta__p { font-size: 14px; }
	.int-oferta__btn { padding: 11px 16px; font-size: 14px; }
	.int-banner { min-height: 0; }
	.int-banner__txt { padding: 26px 20px; }
	.int-banner h2 { font-size: 24px; }
	.int-ventajas { padding: 28px 0; margin-top: 28px; }
	.int-ventajas .int-wrap { grid-template-columns: 1fr 1fr; gap: 14px; }
	.int-ventaja { font-size: 13px; }
	.int-solyon { padding: 24px 20px; flex-direction: column; align-items: flex-start; }
	.int-solyon h2 { font-size: 21px; }
	/* Botones flotantes más pequeños y sin tapar contenido */
	.ic-btn { width: 50px !important; height: 50px !important; right: 12px !important; bottom: 12px !important; }
	.ic-btn svg { width: 22px; height: 22px; }
	.int-wa { width: 50px; height: 50px; left: 12px; bottom: 12px; }
	.int-wa svg { width: 24px; height: 24px; }
	.single-product .ic-btn, .single-product .int-wa { bottom: 78px !important; }
	body { padding-bottom: 8px; }
	.int-cookies { left: 10px; right: 10px; bottom: 72px; padding: 12px 14px; font-size: 13px; }
	.int-cookies div { width: 100%; }
	.int-cookies button { flex: 1; }
	/* Ventana de descuento */
	.int-pop__caja { padding: 28px 20px 20px; }
	.int-pop h2 { font-size: 22px; }
	.int-pop__codigo code { font-size: 21px; }
	.int-pop__etq { font-size: 24px; }
	/* Tienda y fichas */
	.int-catban h1 { font-size: 32px; }
	.int-catban__desc, .int-catban__desc p { font-size: 14px; }
	.int-chips { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
	.int-chips a { flex: 0 0 auto; }
	.site-main.int-container { padding-top: 16px; padding-left: 12px; padding-right: 12px; }
	.woocommerce .woocommerce-ordering select { max-width: 100%; }
	.woocommerce-result-count { font-size: 13px; }
	.single-product div.product .product_title { font-size: 24px !important; }
	.int-migas { font-size: 12.5px; margin-bottom: 10px; }
	.int-footer { padding: 36px 0 90px; }
	.int-footer__cols { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
	.int-footer__cols > div:first-child { grid-column: 1 / -1; }
	.int-footer__legal { flex-wrap: wrap; gap: 8px 14px; font-size: 12.5px; }
}
@media (max-width: 380px) {
	.int-acciones a.int-acc-pro { display: none; }
	.int-logo img, .int-logo .custom-logo { max-width: 130px; }
}

/* v2.22.1 · Fila de categorías en el móvil */
.int-catbar { display: none; }
@media (max-width: 767px) {
	.int-catbar { display: block; background: var(--int-negro-2, #1f1f1f); border-top: 1px solid #2e2e2e; }
	.int-catbar__pista { display: flex; gap: 8px; overflow-x: auto; padding: 10px 14px; scrollbar-width: none; -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity; }
	.int-catbar__pista::-webkit-scrollbar { display: none; }
	.int-catbar a { flex: 0 0 auto; scroll-snap-align: start; display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 999px; background: #2a2a2a; border: 1px solid #3a3a3a; color: #fff; text-decoration: none; font-family: var(--int-titulos); font-weight: 700; font-size: 14px; letter-spacing: .02em; text-transform: uppercase; white-space: nowrap; }
	.int-catbar a.is-on, .int-catbar a:active { background: #fff3ea; border-color: var(--int-naranja); color: var(--int-negro); }
	.int-catbar a.int-catbar__todas { background: var(--int-naranja); border-color: var(--int-naranja); color: var(--int-negro); }
}

/* ============ v2.24 · CONTACTO ============ */
.int-ct { max-width: 1100px; margin: 0 auto; }
.int-ct__hero { position: relative; overflow: hidden; background: var(--int-negro); color: #fff; border-radius: 18px; padding: 34px 36px; margin: 0 0 22px; }
.int-ct__hero::after { content: ""; position: absolute; right: -70px; top: -70px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(226,106,10,.4), rgba(226,106,10,0) 70%); }
.int-ct__etq { display: inline-block; background: var(--int-naranja); color: var(--int-negro); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; }
.int-ct__hero h2 { color: #fff; font-size: clamp(30px, 4vw, 44px); margin: 12px 0 8px; font-style: italic; }
.int-ct__hero p { color: #c9ccd0; font-size: 16.5px; margin: 0; max-width: 620px; position: relative; z-index: 1; }
.int-ct__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 22px; align-items: start; }
.int-ct__canales { display: flex; flex-direction: column; gap: 10px; }
.int-ct__canal { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border: 1px solid #e6e8eb; border-radius: 14px; background: #fff; text-decoration: none; color: var(--int-negro); transition: border-color .15s, transform .15s; }
a.int-ct__canal:hover { border-color: var(--int-naranja); transform: translateY(-2px); }
.int-ct__canal > span:last-child { display: flex; flex-direction: column; font-size: 14.5px; color: #5b5f64; line-height: 1.4; }
.int-ct__canal strong { color: var(--int-negro); font-size: 16px; }
.int-ct__ico { flex: 0 0 48px; width: 48px; height: 48px; border-radius: 12px; background: #fff3ea; color: var(--int-naranja); display: flex; align-items: center; justify-content: center; }
.int-ct__canal.is-wa { background: #25D366; border-color: #25D366; color: #fff; }
.int-ct__canal.is-wa > span:last-child, .int-ct__canal.is-wa strong { color: #fff; }
.int-ct__canal.is-wa .int-ct__ico { background: rgba(255,255,255,.2); color: #fff; }
.int-ct__canal.is-info { background: #fafafa; }
.int-ct__form { background: #fff; border: 1px solid #e6e8eb; border-radius: 18px; padding: 26px 28px; box-shadow: 0 10px 30px rgba(20,20,20,.05); }
.int-ct__form h3 { margin: 0 0 4px; font-size: 24px; }
.int-ct__form > p { color: #6b6f74; margin: 0 0 18px; font-size: 14.5px; }
.int-contacto { display: grid; gap: 14px; }
.int-contacto label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; font-size: 14px; }
.int-contacto input[type=text], .int-contacto input[type=email], .int-contacto input[type=tel], .int-contacto textarea { border: 1.5px solid #d4d7db; border-radius: 10px; padding: 12px 14px; font-size: 16px; font-weight: 400; background: #fafafa; transition: border-color .15s, background .15s; }
.int-contacto input:focus, .int-contacto textarea:focus { outline: none; border-color: var(--int-naranja); background: #fff; box-shadow: 0 0 0 3px rgba(226,106,10,.15); }
.int-contacto textarea { min-height: 130px; resize: vertical; }
.int-contacto__priv { flex-direction: row !important; align-items: flex-start; gap: 10px !important; font-weight: 400 !important; font-size: 13.5px !important; color: #5b5f64; }
.int-contacto__priv input { margin-top: 3px; accent-color: var(--int-naranja); width: 18px; height: 18px; }
.int-contacto__enviar { border: 0 !important; width: 100%; padding: 16px !important; font-size: 16.5px !important; border-radius: 12px !important; font-weight: 800; cursor: pointer; }
.int-ct__ayuda { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin: 22px 0 0; padding: 16px 18px; background: var(--int-gris-claro); border-radius: 14px; font-size: 14px; }
.int-ct__ayuda a { padding: 7px 12px; border-radius: 999px; background: #fff; border: 1px solid #e0e2e5; color: var(--int-negro); text-decoration: none; font-weight: 600; }
.int-ct__ayuda a:hover { border-color: var(--int-naranja); color: var(--int-naranja); }
.page .entry-content .int-ct { margin-top: 4px; }

/* ============ v2.24 · FICHA: adornos ============ */
.int-asesor { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 18px 28px; flex-wrap: wrap; position: relative; overflow: hidden; background: var(--int-negro); color: #fff; border-radius: 18px; padding: 26px 30px; margin-top: 26px; }
.int-asesor::after { content: ""; position: absolute; right: -60px; bottom: -80px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle, rgba(226,106,10,.35), rgba(226,106,10,0) 70%); pointer-events: none; }
.int-asesor__txt { flex: 1 1 360px; position: relative; z-index: 1; }
.int-asesor__etq { display: inline-block; background: var(--int-naranja); color: var(--int-negro); font-size: 11.5px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; padding: 4px 10px; border-radius: 999px; }
.int-asesor h2 { color: #fff; margin: 10px 0 6px; font-size: clamp(22px, 2.4vw, 28px); }
.int-asesor p { color: #c9ccd0; margin: 0; font-size: 15px; }
.int-asesor__btns { display: flex; gap: 10px; flex-wrap: wrap; position: relative; z-index: 1; }
.int-asesor__btns a { padding: 14px 20px; border-radius: 12px; font-weight: 800; text-decoration: none; font-size: 15px; }
.int-asesor__wa { background: #25D366; color: #fff; }
.int-asesor__ct { background: #fff; color: var(--int-negro); }
.int-asesor__btns a:hover { filter: brightness(1.05); transform: translateY(-1px); }
.woocommerce div.product .woocommerce-tabs .panel > p:first-of-type { font-size: 17px; color: var(--int-negro); }
.woocommerce div.product .woocommerce-tabs .panel ul { list-style: none; padding: 0; margin: 14px 0; display: grid; gap: 8px; }
.woocommerce div.product .woocommerce-tabs .panel ul li { position: relative; padding: 10px 14px 10px 40px; background: #fafafa; border: 1px solid #eceef0; border-radius: 10px; }
.woocommerce div.product .woocommerce-tabs .panel ul li::before { content: "✓"; position: absolute; left: 14px; top: 9px; color: var(--int-naranja); font-weight: 800; }
.woocommerce div.product .woocommerce-tabs .panel ul li strong { color: var(--int-negro); }
.woocommerce div.product .woocommerce-product-gallery { position: relative; }
.woocommerce div.product .woocommerce-product-gallery::after { content: "Elegido por instaladores"; position: absolute; left: 14px; bottom: 14px; z-index: 3; background: rgba(20,20,20,.85); color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .03em; padding: 6px 10px; border-radius: 8px; border-left: 3px solid var(--int-naranja); pointer-events: none; }
.woocommerce div.product .woocommerce-product-gallery:has(.flex-control-thumbs)::after { bottom: 104px; }
@media (max-width: 767px) {
	.int-ct__hero { padding: 24px 20px; border-radius: 14px; }
	.int-ct__grid { grid-template-columns: 1fr; }
	.int-ct__form { padding: 20px 16px; }
	.int-asesor { padding: 22px 18px; }
	.int-asesor__btns, .int-asesor__btns a { width: 100%; text-align: center; }
	.woocommerce div.product .woocommerce-product-gallery:has(.flex-control-thumbs)::after { bottom: 96px; }
}

/* v2.25 · Formulario de Jetpack con el estilo de Integra */
.int-ct__form .contact-form, .int-ct__form form.wp-block-jetpack-contact-form, .int-ct__form .wp-block-jetpack-contact-form { display: grid; gap: 14px; padding: 0 !important; }
.int-ct__form .contact-form label, .int-ct__form .grunion-field-label { font-weight: 600 !important; font-size: 14px !important; margin-bottom: 6px !important; color: var(--int-negro); display: block; }
.int-ct__form .contact-form input[type=text], .int-ct__form .contact-form input[type=email], .int-ct__form .contact-form input[type=tel], .int-ct__form .contact-form textarea { width: 100% !important; max-width: 100% !important; border: 1.5px solid #d4d7db !important; border-radius: 10px !important; padding: 12px 14px !important; font-size: 16px !important; background: #fafafa !important; box-sizing: border-box; }
.int-ct__form .contact-form input:focus, .int-ct__form .contact-form textarea:focus { outline: none; border-color: var(--int-naranja) !important; background: #fff !important; box-shadow: 0 0 0 3px rgba(226,106,10,.15); }
.int-ct__form .contact-form textarea { min-height: 130px; }
.int-ct__form .contact-form input[type=checkbox] { accent-color: var(--int-naranja); width: 18px; height: 18px; margin-right: 8px; }
.int-ct__form .contact-form .grunion-field-checkbox-wrap label, .int-ct__form .contact-form label.checkbox { font-weight: 400 !important; font-size: 13.5px !important; color: #5b5f64; display: flex; align-items: center; }
.int-ct__form .contact-form button[type=submit], .int-ct__form .contact-form input[type=submit], .int-ct__form .wp-block-button__link { width: 100%; border: 0 !important; background: var(--int-naranja) !important; color: var(--int-negro) !important; padding: 16px !important; font-size: 16.5px !important; font-weight: 800 !important; border-radius: 12px !important; cursor: pointer; }
.int-ct__form .contact-form button[type=submit]:hover { background: var(--int-negro) !important; color: #fff !important; }
.int-ct__form .contact-form-submission, .int-ct__form #contact-form-success-header, .int-ct__form .contact-form__success { background: #e7f6ec; border-radius: 12px; padding: 16px; }

/* v2.27 · Botón de descarga de tarifa */
.int-tarifa-btn { display: flex; align-items: center; gap: 14px; margin-top: 18px; padding: 18px 20px; border-radius: 14px; background: var(--int-naranja); color: var(--int-negro); text-decoration: none; box-shadow: 0 8px 20px rgba(226,106,10,.25); }
.int-tarifa-btn span:first-child { font-size: 30px; }
.int-tarifa-btn span:last-child { display: flex; flex-direction: column; font-size: 13.5px; }
.int-tarifa-btn strong { font-size: 17px; }
.int-tarifa-btn:hover { background: var(--int-negro); color: #fff; }

/* v2.27.4 · Bloque Solyon en el móvil (quitaba un hueco enorme) y algo más de estilo */
.int-solyon { position: relative; overflow: hidden; background: #141414 url('assets/img/banner-instalamos-1100.jpg') right center / auto 100% no-repeat; }
.int-solyon::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #141414 45%, rgba(20,20,20,.75) 65%, rgba(20,20,20,.35) 100%); pointer-events: none; }
.int-solyon > * { position: relative; z-index: 1; }
@media (max-width: 767px) {
	.int-solyon { background-image: none; gap: 18px; margin: 36px 0; }
	.int-solyon::before { background: radial-gradient(circle at 100% 0%, rgba(226,106,10,.35), rgba(226,106,10,0) 55%); }
	.int-solyon > div { flex: 0 0 auto; }
	.int-solyon .int-btn { width: 100%; text-align: center; box-sizing: border-box; }
}

/* ===== v2.28 · Mosaico de subcategorías con imagen ===== */
.int-subcats { margin: 0 0 28px; }
.int-subcats__tit { font-size: 20px; margin: 0 0 14px; font-weight: 800; }
.int-subcats__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 14px; }
.int-subcat { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px; padding: 14px 12px 16px; background: #fff; border: 1.5px solid #e6e8eb; border-radius: 16px; color: var(--int-negro); text-decoration: none; transition: transform .15s, box-shadow .15s, border-color .15s; }
.int-subcat:hover { transform: translateY(-3px); border-color: var(--int-naranja); box-shadow: 0 10px 24px rgba(0,0,0,.08); }
.int-subcat__img { width: 100%; aspect-ratio: 1; display: flex; align-items: center; justify-content: center; border-radius: 12px; background: #f6f7f8; overflow: hidden; margin-bottom: 8px; }
.int-subcat__img img { width: 86%; height: 86%; object-fit: contain; mix-blend-mode: multiply; transition: transform .25s; }
.int-subcat:hover .int-subcat__img img { transform: scale(1.06); }
.int-subcat--dibujo .int-subcat__img { background: #fff4ec; color: var(--int-naranja); }
.int-subcat--dibujo .int-subcat__img svg { width: 48%; height: 48%; }
.int-subcat__nom { font-weight: 700; font-size: 15px; line-height: 1.25; }
.int-subcat__n { font-size: 12.5px; color: #8a8d91; }
.int-subcats__todos { margin: 18px 0 0; text-align: center; }
.int-subcats__todos a { display: inline-block; padding: 11px 22px; border-radius: 999px; border: 1.5px solid var(--int-negro); color: var(--int-negro); font-weight: 700; text-decoration: none; font-size: 14.5px; }
.int-subcats__todos a:hover { background: var(--int-negro); color: #fff; }
@media (max-width: 767px) {
	.int-subcats__tit { font-size: 17px; }
	.int-subcats__grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
	.int-subcat { padding: 10px 8px 12px; border-radius: 14px; }
	.int-subcat__nom { font-size: 14px; }
}
