/*
 * Tema acg — hoja de FORMA. Solo overrides sobre clases de _base y features.
 * Colores: siempre tokens (var(--color-*), color-mix(in oklch, ...)). Nunca hex.
 * Tipografía: display Archivo (títulos), cuerpo = fuente del tenant (IBM Plex Sans, la carga el layout), mono JetBrains Mono (SKU/OEM/precios).
 */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@600;700;800&family=JetBrains+Mono:wght@500;600;700&display=swap');

:root {
    --font-display: 'Archivo', var(--font-main), sans-serif;
    --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
    --radius: .375rem;
    --radius-lg: .75rem;
}

h1, h2, h3, .search-header h1, .cat-hero h1, .product-title, .acceso-intro h1, .solicitud-intro h1, .nosotros-head h1, .legal-page h1, .empty-state h2 {
    font-family: var(--font-display);
    letter-spacing: -.02em;
}
.eyebrow, .acceso-intro .eyebrow, .solicitud-intro .eyebrow, .nosotros-head .eyebrow { font-family: var(--font-display); letter-spacing: .14em; }
.pcard-sku, .product-sku, .pcard-locked-fake, .nosotros-dato strong { font-family: var(--font-mono); }

/* Botones primarios de _base en acg: azul marino; secundarios (CTA) naranja */
.btn-primary { background: var(--color-primary); border-color: var(--color-primary); color: var(--on-primary); font-weight: 700; }
.btn-primary:hover { background: var(--color-secondary); border-color: var(--color-secondary); color: var(--on-secondary); }
.btn-secondary, .btn-add-cart, .solicitud-btn, .acceso-btn { background: var(--color-secondary); border-color: var(--color-secondary); color: var(--on-secondary); }
.btn-secondary:hover, .btn-add-cart:hover, .solicitud-btn:hover, .acceso-btn:hover { background: color-mix(in oklch, var(--color-secondary) 88%, #000); color: var(--on-secondary); }

/* Páginas heredadas de _base: foco naranja, cabeceras navy */
.search-form input:focus, .filter-select:focus, .acceso-field input:focus, .solicitud-field input:focus, .solicitud-field select:focus, .contact-form input:focus, .contact-form textarea:focus { border-color: var(--color-secondary); box-shadow: 0 0 0 3px color-mix(in oklch, var(--color-secondary) 25%, transparent); }
.cat-hero-overlay { background: linear-gradient(100deg, color-mix(in oklch, var(--color-primary) 94%, transparent) 0%, color-mix(in oklch, var(--color-primary) 70%, transparent) 60%, color-mix(in oklch, var(--color-primary) 40%, transparent) 100%); }
.pagination .active { background: var(--color-primary); border-color: var(--color-primary); color: var(--on-primary); }
.pagination a:hover { border-color: var(--color-secondary); color: var(--color-primary); }
.gallery-thumb.active { border-color: var(--color-secondary); }

/* Aviso B2B de listados y bloque bloqueado de la ficha */
.b2b-aviso { border-left: 3px solid var(--color-secondary); }
.pbuy-locked { border-style: dashed; }
.pbuy-locked .btn-primary { background: var(--color-secondary); border-color: var(--color-secondary); color: var(--on-secondary); }

/* Footer trust: íconos cuadrados, estilo técnico */
.ft-trust-icon { border-radius: var(--radius); }
