/* Filtros Master 2026 — hoja de estilos del sitio público */
:root {
  --red: #d3202a; --red-dark: #a91820; --ink: #101418; --steel: #1b2229; --steel-2: #27313a;
  --text: #20272e; --muted: #5d6873; --line: #e1e5e9; --bg: #f4f6f7; --white: #fff;
  --ok: #1a7f4b; --warn: #a15c00; --radius: 12px; --shadow: 0 1px 2px rgba(16,20,24,.06), 0 6px 20px rgba(16,20,24,.06);
  --font: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 400 16px/1.55 var(--font); color: var(--text); background: var(--white); }
img, svg { max-width: 100%; height: auto; }
a { color: var(--red); text-decoration: none; }
a:hover { text-decoration: underline; }
h1, h2, h3, h4, h5 { line-height: 1.15; margin: 0 0 .5em; letter-spacing: -.01em; color: var(--ink); }
h1 { font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 800; }
h2 { font-size: clamp(1.4rem, 3vw, 2rem); font-weight: 750; }
.h3 { font-size: 1.5rem; } .h4 { font-size: 1.2rem; } .h5 { font-size: 1.05rem; }
p { margin: 0 0 1em; }
.wrap { width: min(1200px, 100% - 32px); margin-inline: auto; }
.wrap--narrow { width: min(820px, 100% - 32px); }
.wrap--form { width: min(460px, 100% - 32px); }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: -999px; top: 0; background: var(--ink); color: #fff; padding: 10px 14px; z-index: 100; }
.skip:focus { left: 8px; top: 8px; }
:focus-visible { outline: 3px solid #ffb300; outline-offset: 2px; }
.muted { color: var(--muted); } .small { font-size: .875rem; } .center { text-align: center; } .mt { margin-top: 2rem; }
.lead { font-size: 1.15rem; color: var(--muted); }
.eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: .75rem; font-weight: 700; color: var(--red); margin: 0 0 .35rem; }
.eyebrow--light { color: #ff8b91; }
.ico { flex: none; vertical-align: -.2em; }
.between { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }

/* Botones */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 2px solid var(--red); background: var(--red); color: #fff;
  font: 650 1rem/1 var(--font); padding: 13px 22px; border-radius: 999px; cursor: pointer; text-decoration: none; transition: background .15s, transform .15s, border-color .15s; }
.btn:hover { background: var(--red-dark); border-color: var(--red-dark); text-decoration: none; }
.btn:active { transform: translateY(1px); }
.btn--sm { padding: 9px 14px; font-size: .875rem; } .btn--lg { padding: 16px 28px; font-size: 1.05rem; } .btn--block { width: 100%; }
.btn--ghost { background: transparent; color: var(--red); } .btn--ghost:hover { background: var(--red); color: #fff; }
.btn--dark { background: var(--ink); border-color: var(--ink); } .btn--dark:hover { background: #000; border-color: #000; }
.btn--ghost-light { background: transparent; border-color: rgba(255,255,255,.6); color: #fff; } .btn--ghost-light:hover { background: #fff; color: var(--ink); border-color: #fff; }
.btn--wa { background: #1fa855; border-color: #1fa855; } .btn--wa:hover { background: #168a45; border-color: #168a45; }
.icon-btn { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 0; background: transparent; color: #fff; cursor: pointer; position: relative; }
.icon-btn:hover { background: rgba(255,255,255,.12); text-decoration: none; }
.link-arrow { display: inline-flex; align-items: center; gap: 6px; font-weight: 650; }

/* Barra superior + cabecera */
.topbar { background: var(--ink); color: #c9d0d6; font-size: .8125rem; }
.topbar a { color: #e8edf0; }
.topbar__in { display: flex; align-items: center; gap: 22px; min-height: 36px; }
.topbar__spacer { flex: 1; }
.topbar__wa { display: inline-flex; gap: 6px; align-items: center; }
.header { background: var(--steel); position: sticky; top: 0; z-index: 50; box-shadow: 0 2px 12px rgba(0,0,0,.2); }
.header__in { display: flex; align-items: center; gap: 8px; min-height: 68px; }
.brand { display: block; margin-right: 12px; } .brand img { display: block; height: 44px; width: auto; }
.nav { display: flex; gap: 2px; margin-right: auto; }
.nav a { color: #e8edf0; white-space: nowrap; padding: 10px 14px; border-radius: 8px; font-weight: 600; font-size: .95rem; }
.nav a:hover, .nav a[aria-current] { background: rgba(255,255,255,.1); text-decoration: none; }
.nav a[aria-current] { box-shadow: inset 0 -3px 0 var(--red); border-radius: 8px 8px 0 0; }
.nav-toggle, .nav-close { display: none; }
.header__search { display: flex; background: #fff; border-radius: 999px; overflow: hidden; width: 230px; }
.header__search input { border: 0; padding: 10px 6px 10px 16px; font: inherit; width: 100%; min-width: 0; background: transparent; }
.header__search input:focus { outline: none; }
.header__search button { border: 0; background: transparent; padding: 0 14px; cursor: pointer; color: var(--ink); }
.cart-count { position: absolute; top: 2px; right: 0; min-width: 20px; height: 20px; padding: 0 5px; border-radius: 10px; background: var(--red); color: #fff; font-size: .72rem; font-weight: 700; display: grid; place-items: center; }
.cart-count[hidden] { display: none; }
.nav-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,.5); z-index: 59; }
.nav-backdrop[hidden] { display: none; }

/* Mensajes */
.flashes { margin-top: 16px; display: grid; gap: 8px; }
.flash { padding: 12px 16px; border-radius: 10px; background: #eef4ff; border: 1px solid #c9dafc; }
.flash--success { background: #e9f7ef; border-color: #b8e2c8; } .flash--error { background: #fdecec; border-color: #f3bcbc; }
.toast { position: fixed; left: 50%; bottom: 22px; transform: translateX(-50%); background: var(--ink); color: #fff; padding: 12px 18px; border-radius: 999px; box-shadow: var(--shadow); z-index: 80; }
.toast[hidden] { display: none; }

/* Hero + buscador */
.hero { background: radial-gradient(1200px 500px at 85% -10%, #3a1215 0%, transparent 60%), linear-gradient(180deg, var(--steel) 0%, var(--ink) 100%);
  color: #fff; padding: 56px 0 72px; position: relative; overflow: hidden; }
.hero::before { content: ""; position: absolute; inset: 0; background: url("../img/hero-desktop.jpg") center/cover no-repeat; opacity: .35; }
.hero__in { position: relative; display: grid; grid-template-columns: 1.05fr 1fr; gap: 40px; align-items: center; }
.hero h1 { color: #fff; font-size: clamp(2.1rem, 5vw, 3.6rem); }
.hero__lead { color: #cdd5db; font-size: 1.15rem; max-width: 34ch; }
.hero__finder { padding: 22px; color: var(--text); }
.card { background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.pad { padding: 22px; }
.finder__types { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; border: 0; padding: 0; margin: 0 0 14px; }
.finder__type input { position: absolute; opacity: 0; }
.finder__type span { display: grid; justify-items: center; gap: 4px; padding: 10px 6px; border: 2px solid var(--line); border-radius: 10px; cursor: pointer; text-align: center; font-size: .78rem; color: var(--muted); }
.finder__type input:checked + span { border-color: var(--red); color: var(--red); background: #fff5f5; }
.finder__type input:focus-visible + span { outline: 3px solid #ffb300; }
.finder__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.finder__fields .btn { grid-column: 1 / -1; }
select, input[type=text], input[type=search], input[type=email], input[type=tel], input[type=password], input[type=number], textarea {
  width: 100%; font: inherit; padding: 12px 14px; border: 1.5px solid #cdd3d9; border-radius: 10px; background: #fff; color: var(--text); }
select:disabled { background: #f0f2f4; color: #9aa4ad; }
select:focus, input:focus, textarea:focus { outline: none; border-color: var(--red); box-shadow: 0 0 0 3px rgba(211,32,42,.15); }
.refsearch { margin-top: 18px; padding-top: 16px; border-top: 1px dashed var(--line); }
.refsearch label { display: block; font-size: .85rem; color: var(--muted); margin-bottom: 8px; }
.refsearch__row { display: flex; gap: 8px; } .refsearch__row input { flex: 1; min-width: 0; }

/* Secciones */
.trust { background: var(--white); border-bottom: 1px solid var(--line); margin-top: -28px; position: relative; z-index: 2; }
.trust__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; padding: 22px 0; }
.trust__grid div { display: grid; grid-template-columns: auto 1fr; column-gap: 12px; align-items: center; }
.trust__grid .ico { grid-row: span 2; color: var(--red); } .trust__grid b { color: var(--ink); } .trust__grid span { color: var(--muted); font-size: .85rem; }
.section { padding: 64px 0; } .section--tight { padding: 32px 0 48px; } .section--alt { background: var(--bg); }
.section--dark { background: var(--ink); color: #d6dde2; } .section--dark h2 { color: #fff; }
.section__head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-bottom: 24px; flex-wrap: wrap; }
.section__head h2 { margin: 0; } .section__head--center { justify-content: center; text-align: center; }
.page-head { background: var(--bg); border-bottom: 1px solid var(--line); padding: 28px 0 22px; } .page-head h1 { margin-bottom: .2em; } .page-head p { margin: 0; }
.page-head--crumb { padding: 14px 0; } .crumbs { font-size: .875rem; color: var(--muted); }
.chips { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 0 20px; padding: 0; }
.chip { display: inline-block; padding: 8px 16px; border-radius: 999px; border: 1.5px solid var(--line); background: #fff; color: var(--text); font-weight: 600; font-size: .9rem; }
.chip:hover, .chip.is-active { border-color: var(--red); color: var(--red); text-decoration: none; background: #fff5f5; }
.tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; }
.tile { display: flex; justify-content: space-between; align-items: center; padding: 20px; border-radius: var(--radius); background: var(--steel); color: #fff; font-weight: 700; }
.tile:hover { background: var(--red); text-decoration: none; }
.grid { display: grid; gap: 20px; } .grid--3 { grid-template-columns: repeat(3, 1fr); } .grid--products { grid-template-columns: repeat(4, 1fr); }
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.video { aspect-ratio: 16/9; border-radius: var(--radius); overflow: hidden; background: #000; } .video iframe { width: 100%; height: 100%; border: 0; }
.logos { display: flex; flex-wrap: wrap; gap: 28px 40px; justify-content: center; align-items: center; list-style: none; margin: 0; padding: 0; }
.logos img { height: 44px; width: auto; filter: grayscale(1); opacity: .7; transition: .2s; } .logos img:hover { filter: none; opacity: 1; }
.cta { background: linear-gradient(90deg, var(--red-dark), var(--red)); color: #fff; padding: 40px 0; } .cta h2 { color: #fff; margin: 0 0 .25em; } .cta p { margin: 0; color: #ffe3e4; }
.cta__in { display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; } .cta__actions { display: flex; gap: 10px; flex-wrap: wrap; }

/* Tarjetas de producto */
.product { display: flex; flex-direction: column; overflow: hidden; transition: transform .15s, box-shadow .15s; }
.product:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(16,20,24,.12); }
.product__img { display: block; background: #fff; aspect-ratio: 1; display: grid; place-items: center; padding: 14px; border-bottom: 1px solid var(--line); }
.product__img img { width: 100%; height: 100%; object-fit: contain; }
.product__body { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 2px; flex: 1; }
.product__ref { font-size: 1.15rem; margin: 0; } .product__ref a { color: var(--ink); }
.product__foot { margin-top: auto; padding-top: 10px; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.price { font-weight: 800; color: var(--ink); font-size: 1.1rem; } .price--xl { font-size: 2rem; } .price small { font-size: .9rem; font-weight: 600; color: var(--muted); }
.kit, .article-card { display: flex; flex-direction: column; overflow: hidden; color: inherit; } .kit:hover, .article-card:hover { text-decoration: none; box-shadow: 0 10px 28px rgba(16,20,24,.12); }
.kit img, .article-card img { width: 100%; aspect-ratio: 3/2; object-fit: cover; background: var(--bg); }
.kit__body, .article-card__body { padding: 16px; }

/* Catálogo y búsqueda */
.filters { display: grid; grid-template-columns: 2fr 1fr 1fr auto auto; gap: 10px; margin-bottom: 24px; align-items: center; }
.empty { padding: 32px; text-align: center; border: 1.5px dashed var(--line); border-radius: var(--radius); color: var(--muted); }
.pager { display: flex; gap: 6px; justify-content: center; margin-top: 32px; flex-wrap: wrap; }
.pager a { padding: 9px 14px; border: 1.5px solid var(--line); border-radius: 10px; color: var(--text); font-weight: 600; }
.pager a:hover { border-color: var(--red); text-decoration: none; } .pager .is-current { background: var(--red); border-color: var(--red); color: #fff; }
.result-list { display: grid; gap: 12px; }
.result { display: grid; grid-template-columns: 96px 1fr auto; gap: 16px; align-items: center; padding: 12px 16px; }
.result img { width: 96px; height: 96px; object-fit: contain; } .result__noimg { width: 96px; height: 96px; background: var(--bg); border-radius: 8px; display: block; }
.result h3 { margin: 0; } .result__actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }

/* Ficha */
.product-detail { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: start; }
.product-detail__media { padding: 24px; display: grid; place-items: center; } .product-detail__media img { max-height: 520px; object-fit: contain; }
.buy { display: flex; gap: 12px; align-items: center; margin: 12px 0; } .qty input { width: 86px; text-align: center; padding: 15px 8px; }
.specs { display: grid; margin: 0; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.specs div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 14px; border-bottom: 1px solid var(--line); } .specs div:last-child { border-bottom: 0; }
.specs dt { color: var(--muted); } .specs dd { margin: 0; font-weight: 650; text-align: right; }
.specs--cols { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); } .specs--cols div { border-right: 1px solid var(--line); }
.prose { max-width: 75ch; } .prose img { border-radius: 10px; } .prose figure { margin: 1.5rem 0; }
.prevnext { display: flex; justify-content: space-between; gap: 16px; margin-top: 2rem; font-weight: 650; }

/* Carrito y formularios */
.cart-layout { display: grid; grid-template-columns: 1fr 360px; gap: 24px; align-items: start; }
.cart-items { display: grid; gap: 12px; }
.cart-item { display: grid; grid-template-columns: 88px 1fr auto auto auto; gap: 16px; align-items: center; padding: 12px 16px; }
.cart-item img { width: 88px; height: 88px; object-fit: contain; } .cart-item h2 { margin: 0; } .cart-item__total { min-width: 90px; text-align: right; }
.stepper { display: inline-flex; border: 1.5px solid var(--line); border-radius: 999px; overflow: hidden; }
.stepper button { border: 0; background: #fff; width: 38px; cursor: pointer; display: grid; place-items: center; } .stepper button:hover { background: var(--bg); }
.stepper input { width: 52px; border: 0; border-radius: 0; text-align: center; padding: 8px 0; -moz-appearance: textfield; } .stepper input::-webkit-inner-spin-button { display: none; }
.summary { position: sticky; top: 90px; }
.totals { margin: 0 0 16px; } .totals div { display: flex; justify-content: space-between; padding: 6px 0; } .totals dd { margin: 0; font-weight: 650; }
.totals__grand { border-top: 2px solid var(--ink); margin-top: 8px; padding-top: 12px !important; font-size: 1.2rem; font-weight: 800; }
.mini-list { list-style: none; padding: 0; margin: 0 0 12px; display: grid; gap: 6px; } .mini-list li { display: flex; justify-content: space-between; gap: 8px; font-size: .9rem; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; } .span-2 { grid-column: 1 / -1; }
.form-grid label, .form-stack label { display: grid; gap: 6px; font-weight: 600; font-size: .9rem; }
.form-stack { display: grid; gap: 14px; margin-bottom: 14px; }
label.check { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; } label.check input { width: auto; margin-top: 4px; accent-color: var(--red); }
.table-wrap { overflow-x: auto; } .table { width: 100%; border-collapse: collapse; } .table th, .table td { padding: 12px; border-bottom: 1px solid var(--line); text-align: left; }
.table th { font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); } .num { text-align: right !important; }
.badge { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: .78rem; font-weight: 700; background: #eceff1; }
.badge--ok { background: #dff3e8; color: var(--ok); } .badge--wait { background: #fff1d6; color: var(--warn); } .badge--bad { background: #fde3e3; color: var(--red-dark); }
.dist-filter { display: block; max-width: 420px; margin-bottom: 8px; } .dist-item { padding: 8px 0; border-top: 1px solid var(--line); } .dist-item:first-of-type { border-top: 0; }
.doc { text-align: center; color: inherit; } .doc:hover { text-decoration: none; border-color: var(--red); }

/* Pie */
.footer { background: var(--ink); color: #b9c2c9; margin-top: 0; }
.footer a { color: #e8edf0; } .footer h3 { color: #fff; font-size: 1rem; }
.footer__grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 40px; padding: 48px 0 32px; }
.footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.footer__bottom { border-top: 1px solid #27313a; padding: 16px 0; font-size: .85rem; }

@media (max-width: 1024px) {
  .grid--products { grid-template-columns: repeat(3, 1fr); } .hero__in { grid-template-columns: 1fr; } .hero__lead { max-width: none; }
  .header__search { width: 170px; } .nav a { padding: 10px 10px; }
}
@media (max-width: 860px) {
  .nav-toggle, .nav-close { display: inline-grid; }
  .nav { position: fixed; inset: 0 auto 0 0; width: min(320px, 86vw); background: var(--steel); flex-direction: column; padding: 70px 16px 16px; gap: 4px; transform: translateX(-100%); transition: transform .25s; z-index: 60; margin: 0; }
  .nav.is-open { transform: none; } .nav a { font-size: 1.1rem; padding: 14px; } .nav-close { position: absolute; top: 12px; right: 12px; }
  .header__search { display: none; } .brand { margin-right: auto; } .brand img { height: 38px; }
  .hide-sm { display: none; } .trust__grid { grid-template-columns: 1fr 1fr; } .split, .two-col, .product-detail { grid-template-columns: 1fr; }
  .grid--3 { grid-template-columns: 1fr 1fr; } .cart-layout { grid-template-columns: 1fr; } .summary { position: static; }
  .filters { grid-template-columns: 1fr 1fr; } .filters input[type=search] { grid-column: 1 / -1; }
  .footer__grid { grid-template-columns: 1fr; gap: 24px; } .section { padding: 44px 0; }
}
@media (max-width: 560px) {
  .grid--products, .grid--3 { grid-template-columns: 1fr 1fr; gap: 12px; } .grid--3 { grid-template-columns: 1fr; }
  .hero { padding: 32px 0 56px; } .finder__fields { grid-template-columns: 1fr; } .form-grid { grid-template-columns: 1fr; }
  .cart-item { grid-template-columns: 72px 1fr; } .cart-item img { width: 72px; height: 72px; } .cart-item .stepper, .cart-item__total { grid-column: 2; }
  .result { grid-template-columns: 72px 1fr; } .result img, .result__noimg { width: 72px; height: 72px; } .result__actions { grid-column: 1 / -1; justify-content: flex-start; }
  .buy { flex-wrap: wrap; } .buy .btn { flex: 1; } .cta__in { flex-direction: column; align-items: flex-start; } .trust__grid { grid-template-columns: 1fr; }
  .table thead { display: none; } .table tr { display: block; padding: 10px 0; border-bottom: 1px solid var(--line); } .table td { display: flex; justify-content: space-between; border: 0; padding: 4px 8px; }
  .table td[data-label]::before { content: attr(data-label); color: var(--muted); }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; scroll-behavior: auto !important; } }

/* ===== Tema según propuesta de diseño 2026 (azul marino + rojo vino, Barlow) ===== */
:root { --red:#a4203a; --red-dark:#861830; --navy:#14295f; --navy-2:#1d3a80; --ink:#0f1d45; --steel:#14295f; --text:#27324a; --muted:#5f6b82; --line:#dde2ee; --bg:#f3f4f8;
  --font:"Barlow","Segoe UI",system-ui,sans-serif; --font-d:"Barlow Condensed","Barlow",system-ui,sans-serif; --radius:14px; }
h1,h2,h3,h4,.price,.product__ref,.stats-band strong,.feature h2{font-family:var(--font-d);letter-spacing:0;color:var(--navy)}
h1{font-weight:800;line-height:1.02} h2{font-weight:700}
body{font-size:17px}
a{color:var(--red)} .eyebrow{color:var(--red);font-family:var(--font);letter-spacing:.14em}
.btn{border-radius:10px;font-family:var(--font);letter-spacing:.01em}.btn--navy{background:var(--navy);border-color:var(--navy)}.btn--navy:hover{background:var(--ink);border-color:var(--ink)}
.topbar{background:var(--navy);color:#d7def0}.topbar a{color:#fff}
.header{background:#fff;box-shadow:0 1px 0 var(--line)}
.header__in{min-height:76px;gap:20px}
.brand{margin-right:8px}.brand--tinted img{filter:brightness(0) invert(17%) sepia(55%) saturate(2600%) hue-rotate(205deg) brightness(.9)}
.nav{margin:0 auto 0 12px;gap:6px}.nav a{color:var(--navy);font-weight:500;font-size:1rem}
.nav a:hover,.nav a[aria-current]{background:none;box-shadow:inset 0 -3px 0 var(--red);border-radius:0;text-decoration:none}
.header__actions{display:flex;align-items:center;gap:10px}
.round-btn{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;color:var(--navy);background:#fff}.round-btn:hover{border-color:var(--navy);text-decoration:none}
.cart-pill{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff;border-radius:999px;padding:11px 18px;font-weight:600;position:relative}.cart-pill:hover{background:var(--red-dark);text-decoration:none}
.cart-pill .cart-count{position:static;background:#fff;color:var(--red);margin-left:2px}
.icon-btn{color:var(--navy)}.icon-btn:hover{background:var(--bg)}
.nav-backdrop{z-index:59}
.hero{background:var(--navy-2);padding:72px 0 80px}
.hero::before{content:none}.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,41,95,.88) 0%,rgba(20,41,95,.6) 45%,rgba(20,41,95,.15) 100%)}@media (max-width:1024px){.hero::after{background:linear-gradient(180deg,rgba(20,41,95,.85),rgba(20,41,95,.6))}}
.hero__in{z-index:1;grid-template-columns:1fr 520px;gap:56px;align-items:center}
.tag{display:inline-block;background:var(--red);color:#fff;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;padding:7px 12px;border-radius:5px;margin-bottom:22px}
.hero h1{color:#fff;font-size:clamp(2.4rem,5.2vw,4rem);max-width:12ch}
.hero__lead{color:#dbe3f7;font-size:1.15rem;max-width:36ch}
.hero__finder{padding:26px;border-radius:16px;box-shadow:0 20px 50px rgba(5,15,50,.35)}
.hero__finder h2{font-size:1.5rem}
.finder__types{display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0 0 16px}
.finder__type span{display:block;padding:9px 18px;border:1px solid var(--line);border-radius:999px;font-weight:600;color:var(--navy);cursor:pointer;background:#fff;font-size:.95rem}
.finder__type input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.finder__fields{gap:12px}.finder__label{display:block;font-size:.8rem;font-weight:500;color:var(--muted);margin-bottom:5px}
select{background:#f3f5fb;border-color:#d5dbea;border-radius:10px}
.finder__fields .btn{background:var(--red);border-color:var(--red);font-size:1.05rem}.finder__fields .btn:hover{background:var(--red-dark)}
.refsearch{border-top:0;margin-top:14px;padding-top:0}
.refsearch__title{text-align:center;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:12px;margin:0 0 12px}
.refsearch__title::before,.refsearch__title::after{content:"";flex:1;border-top:1px solid var(--line)}
.feature{display:block;background:var(--bg);border-radius:var(--radius);padding:26px;border-top:5px solid var(--navy);color:var(--muted)}
.feature--red{border-top-color:var(--red)}.feature:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 10px 26px rgba(20,41,95,.12)}
.feature .ico{color:var(--navy)}.feature--red .ico{color:var(--red)}
.feature h2{font-size:1.7rem;margin:.5rem 0 .3rem}.feature p{margin:0 0 1rem}.feature span{color:var(--red);font-weight:700}
.section__head{align-items:flex-end}.section__head h2{font-size:clamp(1.9rem,3.5vw,2.6rem)}.link-arrow{color:var(--navy)}
.card{border-radius:var(--radius);box-shadow:none;border-color:var(--line)}
.product__img{background:var(--bg);margin:10px 10px 0;border:0;border-radius:10px;aspect-ratio:4/3}
.product__ref{font-size:1.6rem}.product__ref a{color:var(--navy)}.product .eyebrow{text-transform:uppercase}
.product__foot .btn{background:var(--red);border-color:var(--red);border-radius:8px}.price{font-size:1.25rem;color:var(--ink);font-family:var(--font)}
.stats-band{background:var(--ink);color:#d6def2;padding:56px 0}.stats-band strong{display:block;font-size:3.4rem;color:#fff;line-height:1;margin-bottom:10px}.stats-band p{margin:0;max-width:30ch}
.grid--2{grid-template-columns:1fr 1fr}.ally{display:flex;justify-content:space-between;align-items:center;padding:24px 28px}.ally img{height:64px;width:auto}
.footer{background:var(--ink)}.footer__logo{display:block}.footer h3{font-family:var(--font);font-weight:700}
.wa-float{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:50%;background:#1fa855;color:#fff;display:grid;place-items:center;box-shadow:0 8px 20px rgba(0,0,0,.3);z-index:40}.wa-float:hover{background:#168a45;text-decoration:none}
.page-head{background:var(--bg)}
.chip:hover,.chip.is-active{border-color:var(--red);color:var(--red)}
.tile{background:var(--navy)}.tile:hover{background:var(--red)}
.cta{background:var(--navy)}
@media (max-width:1024px){.hero__in{grid-template-columns:1fr;gap:32px}.hero h1{max-width:none}}
@media (max-width:860px){
  .nav{background:#fff;box-shadow:8px 0 30px rgba(0,0,0,.2)}.nav a{color:var(--navy)}.nav a[aria-current]{box-shadow:none;color:var(--red)}
  .header__in{min-height:64px;gap:8px}.brand{margin-right:auto}.cart-pill__label{display:none}.cart-pill{padding:10px 12px}
  .hero{padding:36px 0 44px}.grid--2{grid-template-columns:1fr}.ally{flex-direction:column;align-items:flex-start;gap:12px}
}
@media (max-width:560px){.finder__fields{grid-template-columns:1fr 1fr}.finder__fields label:nth-child(-n+2),.finder__fields .btn{grid-column:1/-1}.product__ref{font-size:1.35rem}.stats-band strong{font-size:2.6rem}.grid--3.feature-tiles{grid-template-columns:1fr}}
.brand__mask{display:block;width:170px;height:52px;background:var(--navy);-webkit-mask:var(--logo) left center/contain no-repeat;mask:var(--logo) left center/contain no-repeat}
.brand img{height:52px;width:auto}
@media (max-width:860px){.brand__mask{width:140px;height:44px}}
.round-btn--on{background:var(--navy);border-color:var(--navy);color:#fff;position:relative}.round-btn--on::after{content:"";position:absolute;right:1px;top:1px;width:11px;height:11px;border-radius:50%;background:#2ecc71;border:2px solid #fff}.round-btn--on:hover{border-color:var(--navy);background:var(--ink)}
.account-grid{display:grid;grid-template-columns:minmax(0,380px) 1fr;gap:32px;align-items:start}.account-grid h2{font-size:1.8rem}@media (max-width:860px){.account-grid{grid-template-columns:1fr}}
input:not([type]),input[type=url]{width:100%;font:inherit;padding:12px 14px;border:1.5px solid #cdd3d9;border-radius:10px;background:#fff;color:var(--text)}input:not([type]):focus,input[type=url]:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(164,32,58,.15)}
.disclaimer{margin:2.5rem 0 0;padding:16px 18px;border-left:4px solid var(--navy);background:var(--bg);color:var(--muted);font-size:.85rem;border-radius:0 10px 10px 0}
.brand img{height:54px;width:auto}.footer__logo{height:60px;width:auto;margin-bottom:12px}@media (max-width:860px){.brand img{height:42px}}
html,body{overflow-x:clip;max-width:100%}
@media (max-width:860px){.nav{box-shadow:none!important;visibility:hidden;transition:transform .25s,visibility 0s .25s}.nav.is-open{visibility:visible;box-shadow:8px 0 30px rgba(0,0,0,.25)!important;transition:transform .25s}}
.mt-sm{margin-top:1rem}
.grid--4{grid-template-columns:repeat(4,1fr)}.ally-card{display:flex;flex-direction:column;overflow:hidden;text-align:center}.ally-card h2,.ally-card h3{background:var(--navy);color:#fff;font-family:var(--font);font-size:.95rem;text-transform:uppercase;letter-spacing:.04em;margin:0;padding:10px 12px}.ally-card__logo{flex:1;display:grid;place-items:center;padding:20px;min-height:170px}.ally-card__logo img{max-height:130px;width:auto;max-width:100%;object-fit:contain}.ally-card .btn{margin:0 auto 18px}@media (max-width:860px){.grid--4{grid-template-columns:1fr 1fr}}@media (max-width:560px){.grid--4{grid-template-columns:1fr 1fr;gap:12px}.ally-card__logo{min-height:120px;padding:12px}}
.catalog-card{margin:0}.catalog-card img{width:100%;border-radius:12px;box-shadow:0 4px 14px rgba(20,41,95,.18);display:block}.catalog-card a:hover img{transform:translateY(-2px)}.catalog-card figcaption{color:var(--muted);font-size:.9rem;margin-top:8px}.notice{max-width:900px;margin:2rem auto;color:var(--muted)}.guide img{width:100%;max-width:420px;justify-self:center;border-radius:12px}.cert{padding:36px 0;margin-top:0}.cert__in{display:grid;grid-template-columns:1fr 1.6fr .6fr;gap:32px;align-items:center;text-align:center}.cert h2{color:#fff}.cert__sub{font-size:1.15rem;color:#fff}.cert__img{width:100%;border-radius:12px}.cert__seal{width:100%;max-width:150px;justify-self:center}.cert a{color:#fff}@media (max-width:860px){.cert__in{grid-template-columns:1fr}}
.about-hero{position:relative;background:var(--navy-2);color:#fff;padding:80px 0;overflow:hidden}.about-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,41,95,.9),rgba(20,41,95,.45))}.about-hero__in{position:relative;z-index:1}.about-hero h1{color:#fff;font-size:clamp(2.4rem,5vw,3.8rem);margin-bottom:.3em}.about-hero .hero__lead{max-width:44ch}.about-figure{margin:0}.about-figure img{width:100%;border-radius:16px;display:block;box-shadow:0 14px 40px rgba(20,41,95,.2)}.about-figure .about-figure--contain{object-fit:contain;background:var(--bg);padding:20px;box-shadow:none}.about-wide img{width:100%;border-radius:16px;display:block}.sr-trap{position:absolute;left:-9999px;height:0;overflow:hidden}.feature{cursor:default}.stats-band .grid--4 p{margin:0}
.about-hero--sm{padding:56px 0}@media (max-width:560px){.about-hero,.about-hero--sm{padding:40px 0}}
.nav-backdrop{z-index:49}
.account-logout{display:flex;justify-content:flex-end;margin-bottom:12px}
.crumbs--pad{padding:14px 0 0}.about-hero h1{max-width:24ch}
.brand{flex:none}.brand__mask,.brand img{flex:none}
.nav-group{position:relative}
.nav-group__btn{display:inline-flex;align-items:center;gap:6px;background:none;border:0;font:inherit;font-weight:500;color:var(--navy);padding:10px 14px;cursor:pointer;white-space:nowrap}
.nav-group:hover .nav-group__btn,.nav-group.is-current .nav-group__btn,.nav-group.is-open .nav-group__btn{box-shadow:inset 0 -3px 0 var(--red)}
.nav-group__menu{position:absolute;top:100%;left:0;min-width:210px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(20,41,95,.18);padding:8px;display:none;z-index:70}
.nav-group:hover .nav-group__menu,.nav-group:focus-within .nav-group__menu,.nav-group.is-open .nav-group__menu{display:grid}
.nav-group__menu a{padding:10px 14px;border-radius:8px;box-shadow:none!important}
.nav-group__menu a:hover,.nav-group__menu a[aria-current]{background:var(--bg);color:var(--red);box-shadow:none}
@media (max-width:860px){
  .nav-group__btn{width:100%;justify-content:space-between;font-size:1.1rem;padding:14px}
  .nav-group__menu{position:static;display:grid;border:0;box-shadow:none;padding:0 0 0 14px;min-width:0}
  .nav-group__btn svg{display:none}
}
.service-card{overflow:hidden;display:flex;flex-direction:column}.service-card img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block}.service-card__body{padding:20px}.service-card h2{color:var(--navy)}.contact-band{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.contact-band p{margin:.4em 0}
.compare-form{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:12px;align-items:end;margin-bottom:20px}.compare-form label{display:grid;gap:6px;font-weight:600;font-size:.9rem}.compare th,.compare td{text-align:center}.compare th[scope=row]{text-align:left;color:var(--muted);font-weight:600}.compare img{object-fit:contain}@media (max-width:640px){.compare-form{grid-template-columns:1fr}}
.cert-card{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;background:linear-gradient(110deg,var(--ink) 0%,var(--navy-2) 100%);color:#d9e1f5;border-radius:18px;padding:32px 36px;position:relative;overflow:hidden}
.cert-card::before{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.06)}
.cert-card>*{position:relative}
.cert-card__seal{width:84px;height:84px;object-fit:contain;padding:16px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25)}
.cert-card h2{color:#fff;margin:.1em 0 .3em}.cert-card p{margin:0}.cert-card__text .eyebrow{margin-bottom:.4rem}
.cert-card__actions{display:grid;gap:10px;justify-items:center;text-align:center}
.btn--light{background:#fff;border-color:#fff;color:var(--navy)}.btn--light:hover{background:var(--bg);border-color:var(--bg);color:var(--ink)}
.cert-card__link{color:#cfd9f3;font-size:.85rem;text-decoration:underline}
@media (max-width:860px){.cert-card{grid-template-columns:1fr;text-align:center;padding:28px 22px}.cert-card__seal{margin:0 auto}}
.dist-map{height:460px;width:100%;z-index:1}.map-wrap{overflow:hidden;padding:0}.pin span{display:block;width:26px;height:26px;background:var(--red);border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 3px 8px rgba(0,0,0,.35)}.pin-pop h3{margin:0 0 6px;font-family:var(--font-d);color:var(--navy);font-size:1.2rem}.pin-pop ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;max-height:200px;overflow:auto}.pin-pop li{font-size:.9rem;line-height:1.35}@media (max-width:640px){.dist-map{height:340px}}
.dist-layout{display:grid;grid-template-columns:400px 1fr;gap:24px;align-items:start}
.dist-panel{display:flex;flex-direction:column;height:600px;overflow:hidden;padding:0}
.dist-panel__top{padding:16px;border-bottom:1px solid var(--line);display:grid;gap:10px}.dist-panel__top p{margin:0}
.dist-tabs{display:flex;gap:6px}.dist-tabs button{flex:1;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;font:600 .9rem var(--font);color:var(--navy);cursor:pointer}
.dist-tabs button.is-active{background:var(--navy);border-color:var(--navy);color:#fff}
.dist-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}
.dist-city{border-bottom:1px solid var(--line)}.dist-city[hidden]{display:none}
.dist-city__head{display:flex;align-items:center;gap:12px;width:100%;background:none;border:0;padding:14px 16px 6px;font:inherit;text-align:left;cursor:pointer;color:var(--navy)}
.dist-city__head:disabled{cursor:default}.dist-city__head:not(:disabled):hover .dist-city__name{color:var(--red)}
.dist-city__pin{color:var(--red);display:grid}.dist-city__head:disabled .dist-city__pin{color:#a9b2c6}
.dist-city__name{flex:1;font:700 1.15rem var(--font-d);display:grid;line-height:1.1}.dist-city__name small{font:500 .75rem var(--font);color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.dist-city__count{background:var(--bg);color:var(--navy);border-radius:999px;font-weight:700;font-size:.8rem;min-width:26px;text-align:center;padding:2px 8px}
.dist-city__items{list-style:none;margin:0;padding:0 16px 14px 46px;display:grid;gap:8px}
.dist-city__items li{display:grid;font-size:.9rem;line-height:1.35}.dist-city__items strong{color:var(--ink)}.dist-city__items span{color:var(--muted)}.dist-contact{color:var(--navy)!important;font-weight:600}
.dist-city.is-active{background:#f3f5fb;box-shadow:inset 4px 0 0 var(--red)}
.dist-none{margin:16px}
.dist-mapcol{position:sticky;top:96px}.dist-mapcol .dist-map{height:600px;border-radius:var(--radius);border:1px solid var(--line)}
@media (max-width:900px){.dist-layout{grid-template-columns:1fr}.dist-mapcol{position:static;order:-1}.dist-mapcol .dist-map{height:340px}.dist-panel{height:auto;max-height:560px}}
.cmp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.cmp-card{display:flex;flex-direction:column;gap:10px;padding:20px}
.cmp-card h3{margin:0;font-size:2rem}.cmp-card h3 a{color:var(--navy)}.cmp-card .eyebrow{margin:0}
.cmp-card__img{display:grid;place-items:center;background:var(--bg);border-radius:12px;padding:12px;aspect-ratio:4/3}.cmp-card__img img{max-height:100%;max-width:100%;object-fit:contain}
.cmp-card__serv{margin:0;color:var(--muted)}.cmp-card__serv strong{color:var(--ink)}
.cmp-card .specs div{padding:8px 12px;font-size:.92rem}
.cmp-card__apps{border-top:1px solid var(--line);padding-top:12px;font-size:.9rem}.cmp-card__apps p{margin:.3em 0 0;color:var(--text)}
.cmp-card__foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px}
.cmp-card--empty{justify-content:center;text-align:center;min-height:160px}
@media (max-width:860px){.cmp-grid{grid-template-columns:1fr}}
[hidden]{display:none!important}
.g-recaptcha{min-height:78px;overflow:hidden}@media (max-width:380px){.g-recaptcha{transform:scale(.88);transform-origin:0 0}}
.suggest{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;list-style:none;margin:0;padding:6px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 36px rgba(20,41,95,.2);max-height:340px;overflow-y:auto;text-align:left}
.suggest li{display:flex;align-items:baseline;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;flex-wrap:wrap}
.suggest li:hover,.suggest li.is-active{background:var(--bg)}
.suggest__code{font:700 1.05rem var(--font-d);color:var(--navy);letter-spacing:.01em}.suggest mark{background:#ffe8a8;color:inherit;border-radius:3px;padding:0 1px}
.suggest__brand{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--muted);background:var(--bg);border-radius:999px;padding:2px 8px}
.suggest__arrow{margin-left:auto;color:var(--muted);font-size:.85rem}.suggest__arrow b{color:var(--red)}
.suggest__empty{color:var(--muted);cursor:default;font-size:.9rem}
.header__search .suggest{min-width:280px}
.product-title{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;margin:0 0 .3em;color:var(--navy);font-family:var(--font-d)}
.product-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.product-head .product-title{margin:0}.barcode{margin:0;text-align:center;background:#fff;padding:6px 10px 2px;border-radius:6px}.barcode__svg{display:block;max-width:100%;height:auto}.barcode figcaption{font:700 .75rem var(--font);color:var(--ink);margin-top:2px}
.vz-card{display:grid;grid-template-columns:auto minmax(220px,360px) 1fr;gap:28px;align-items:center;background:linear-gradient(110deg,#fff 0%,#f3f5fb 100%);border:1px solid var(--line);border-radius:18px;padding:26px 32px;position:relative;overflow:hidden}
.vz-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:linear-gradient(180deg,#FFCC00 33%,#00247D 33% 66%,#CF142B 66%)}
.vz-card__flag{display:grid;justify-items:center;gap:6px;font:700 .75rem var(--font);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.vz-card__flag img{width:72px;height:auto;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.2)}
.vz-card__logo img{width:100%;height:auto;display:block}
.vz-card__info h3{margin:.1em 0 .4em;font-size:1.7rem}.vz-card__addr{display:flex;gap:8px;align-items:flex-start;color:var(--muted);margin:0 0 .8rem}.vz-card__addr .ico{color:var(--red);margin-top:3px}
@media (max-width:860px){.vz-card{grid-template-columns:1fr;text-align:center;padding:24px 20px 24px 28px}.vz-card__addr{justify-content:center}.vz-card__logo{max-width:320px;margin:0 auto}}

/* ---- Ficha técnica: descargar / WhatsApp / correo ---- */
.share-sheet{margin-top:16px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.share-sheet__title{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-weight:700;color:var(--navy)}
.share-sheet__btns{display:flex;flex-wrap:wrap;gap:8px}
.share-sheet__mail{display:flex;gap:8px;margin-top:10px}
.share-sheet__mail input{flex:1;min-width:0}
@media (max-width:520px){.share-sheet__mail{flex-direction:column}.share-sheet__btns .btn{flex:1;justify-content:center}}
.vz-card__logo{display:block}
.vz-card__contact{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 1rem}.vz-card__contact a{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-weight:600}.vz-card__contact .ico{color:var(--red)}
@media (max-width:860px){.vz-card__contact{justify-content:center}}
.ally-card h3{font-size:1.15rem;margin:0 0 .5em}

/* ---- Contacto (Nosotros): PQR, distribuidor, trabaje con nosotros ---- */
.contact-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px}
.contact-tab{display:flex;gap:12px;align-items:center;padding:16px 18px;border:2px solid var(--line);border-radius:14px;background:#fff;color:var(--text);text-decoration:none;transition:border-color .15s,box-shadow .15s}
.contact-tab .ico{flex:none;color:var(--red)}
.contact-tab span{display:grid;gap:2px;min-width:0}.contact-tab strong{color:var(--navy);font-size:1rem}.contact-tab small{color:var(--muted);overflow-wrap:anywhere}
.contact-tab:hover{border-color:var(--navy-2)}
.contact-tab.is-active{border-color:var(--navy);box-shadow:0 6px 18px rgba(20,41,95,.12);background:linear-gradient(180deg,#fff,#f6f8fd)}
.contact-panel{align-items:start;scroll-margin-top:110px}
html:not(.js-contact) .contact-panel+.contact-panel{margin-top:40px}
.contact-panel h3{font-size:1.6rem;margin-top:0}
.contact .flashes{margin:0 0 16px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-stack select,.form-stack input[type=file]{width:100%}
@media (max-width:760px){.contact-tabs{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}

/* ---- Carrito: ficha, equivalencias y resumen como el sitio anterior ---- */
.cart-item__more{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}
.cart-eq{flex:1;min-width:220px;font-size:.88rem}
.cart-eq summary{cursor:pointer;font-weight:600;color:var(--navy);padding:8px 0}
.cart-eq p{margin:6px 0 0;padding:10px 12px;background:var(--bg);border:1px solid var(--line);border-radius:10px;line-height:1.7;color:var(--text)}
.cart-eq span{color:var(--muted)}
.summary .mt-sm{margin-top:10px}
.summary__wompi{display:block;width:100%;max-width:240px;height:auto;margin:18px auto 6px}
.summary .btn--wa{margin-top:10px}
@media (max-width:640px){.cart-item__more{grid-column:1 / -1}}

/* Campo de clave con botón para ver / ocultar y botones deshabilitados al enviar */
.pw-field{position:relative;display:block}
.pw-field input{width:100%;padding-right:46px}
.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:grid;place-items:center;padding:7px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}
.pw-toggle:hover,.pw-toggle:focus-visible{color:var(--red);background:var(--bg)}
button.is-busy,input.is-busy{opacity:.7;cursor:progress}

/* Ficha de producto: últimas referencias vistas por el visitante (debajo de la foto) */
.product-detail{grid-template-areas:"media main" "recent main";grid-template-rows:auto 1fr}
.product-detail__media{grid-area:media}.product-detail__main{grid-area:main}.product-detail>*{min-width:0}
.recent{grid-area:recent;align-self:start;margin-top:-16px;padding:18px 20px}
.recent__title{margin:0 0 14px;font-family:var(--font-d,var(--font));font-size:1.15rem;font-weight:700;color:var(--navy,var(--ink));text-transform:uppercase;letter-spacing:.02em}
.recent__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.recent__item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 8px;border:1px solid var(--line);border-radius:10px;background:#fff;text-align:center;min-width:0}
.recent__img{display:grid;place-items:center;width:100%;max-width:96px;aspect-ratio:1}
.recent__img img{width:100%;height:100%;max-width:96px;max-height:96px;object-fit:contain}
.recent__ref{font-weight:700;font-size:.9rem;color:var(--text);overflow-wrap:anywhere;line-height:1.2}
.recent__btn{width:100%;justify-content:center;padding-left:6px;padding-right:6px}
@media (max-width:860px){
  .product-detail{grid-template-areas:"media" "main" "recent";grid-template-rows:auto}
  .recent{margin-top:0}
}
@media (max-width:560px){.recent__list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Política de tratamiento de datos */
.policy h2{margin-top:2rem}.policy h2:first-of-type{margin-top:1rem}
.policy ul{padding-left:1.2rem}.policy li{margin:.35rem 0}

/* Ficha de producto: buscador plegable para hacer una nueva búsqueda (debajo del breadcrumb) */
.quicksearch{padding:20px 0 0}
.quicksearch__box{border:1px solid var(--line);border-left:5px solid var(--navy);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}
.quicksearch__bar{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer;list-style:none;user-select:none}
.quicksearch__bar::-webkit-details-marker{display:none}
.quicksearch__bar:focus-visible{outline:3px solid #ffb300;outline-offset:2px;border-radius:var(--radius)}
.quicksearch__icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--bg);color:var(--navy)}
.quicksearch__text{flex:1;min-width:0;color:var(--muted);font-size:.95rem;line-height:1.35}
.quicksearch__text strong{color:var(--navy);font-size:1.05rem;margin-right:4px}
.quicksearch__btn{flex:none;display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:10px;background:var(--red);color:#fff;font-weight:650;font-size:.95rem;white-space:nowrap;transition:background .15s}
.quicksearch__bar:hover .quicksearch__btn{background:var(--red-dark)}
.quicksearch__chev{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.quicksearch__close{display:none}
.quicksearch__box[open] .quicksearch__open{display:none}.quicksearch__box[open] .quicksearch__close{display:inline}
.quicksearch__box[open] .quicksearch__btn{background:var(--navy)}
.quicksearch__box[open] .quicksearch__bar:hover .quicksearch__btn{background:var(--ink)}
.quicksearch__box[open] .quicksearch__chev{transform:translateY(2px) rotate(-135deg)}
.quicksearch__box[open] .quicksearch__bar{border-bottom:1px solid var(--line)}
.quicksearch__panel{padding:18px;background:var(--bg);border-radius:0 0 11px 7px}
.quicksearch__panel .card{box-shadow:none}
.quicksearch + .section--tight{padding-top:24px}
@media (max-width:560px){
  .quicksearch{padding-top:14px}
  .quicksearch__bar{gap:10px;padding:12px 12px 12px 14px}
  .quicksearch__icon{display:none}
  .quicksearch__hint{display:none}
  .quicksearch__btn{padding:9px 14px}
  .quicksearch__panel{padding:12px}
  .quicksearch__panel .pad{padding:16px}
}
