/* ═══════════════════════════════════════════════════════════════════════════
   SRP® MASTER CSS v7.0 — SISTEMA COMPLETO (limpieza post-widgets home)
   ═══════════════════════════════════════════════════════════════════════════

   ORDEN DE LECTURA = ORDEN DE IMPORTANCIA:
   01. Variables Globales (editar aquí para cambios rápidos)
   02. Reset & Base
   03. CAPAS GLOBALES (z-index) — header siempre encima, menú móvil por
       encima de todo, body siempre debajo. NO tocar sin leer la escala.
   04. HEADER PRINCIPAL — topbar sticky: banner anuncio + logo + confianza
       + CLIENT AREA + CART + LANGUAGE
   05. MENÚ ElementsKit — barra negra centrada, dropdowns/megamenú,
       hamburguesa, off-canvas móvil/tablet, tap targets, indicadores
   06. SUBNAV PRODUCTO + FINANCIACIÓN (fix bandas + grid 4 cols)
   ═══ BLOQUE DE CONTENIDO ═══
   08. Footer Ultra v2.0 · 09. WooCommerce · 10. Contact · 11. Megamenu
       Premium · 12. About · 14-16. GT-S (hero dashboard, configurador,
       galería) · 17. GT-S body · 18. GT-R body · 19. Temas por producto.

   CHANGELOG v6.6 (2026-08-04):
   ▸ NUEVO: sección 23 — BLOQUE COMPARTIDO v2 para accesorios/upgrades
     (.srp-trust garantía + .srp-vs showdown oscuro + .srp-eco featured
     con acento por producto). Rediseño del apartado común: al re-pegar
     las fichas con el HTML v2 se jubilan los bloques de la sec. 22
     (que permanece hasta completar la transición). Cero JSON-LD.

   CHANGELOG v6.5 (2026-08-04):
   ▸ NUEVO: sección 22 — los 4 bloques compartidos de ficha (VAT,
     Warranty, Technology Showdown/battle y Featured Products) pasan
     de <style> inline en ~22 fichas al master, SCOPED por bloque.
     Las clases del HTML NO cambian: en cada ficha solo se borran
     los <style> (≈9KB menos por página).

   CHANGELOG v6.4 (2026-08-04):
   ▸ SEC. 20 AMPLIADA: variantes con precios (.srp-sd-variants /
     -var-card / -var-title / -var-list, modificadora --red) + nota
     .srp-sd-note. Migrado 3: SRP® Foot Rest Modules (.srp-foot-*
     inline) — el 90% reutiliza .srp-sd-* (box/tag/title/text/specs
     son idénticos), solo las tarjetas de variantes eran nuevas.

   CHANGELOG v6.3 (2026-08-04):
   ▸ NUEVO: sección 21 — grid .srp-ts-* genérico de tarjetas técnicas
     para descripciones cortas de accesorios/upgrades. Primer migrado:
     GT-R Pneumatic Clutch Kit (.srp-tech-specs-* inline, naranja
     legacy, #FF0033 → var(--srp-red)). El tag SYS.* reutiliza
     .srp-sd-tag de la sec. 20.

   CHANGELOG v6.2 (2026-08-04):
   ▸ NUEVO: sección 20 — caja .srp-sd-* genérica para descripciones
     cortas de producto. Sustituye los <style> inline por ficha (primer
     migrado: .srp-plt-* de Custom Pedal Plates, #FF5A00 legacy +
     slugs rotos corregidos en el HTML). Objetivo: descripciones
     cortas SIN CSS inline → menos CSS duplicado por producto.
   ▸ ESTRUCTURA: el master vive ahora como archivo en el child theme
     (hello-elementor-child/assets/srp-master.css, encolado desde
     functions.php) — ya no depende del CSS Adicional del tema.

   CHANGELOG v6.1 (2026-07-30):
   ▸ LIMPIEZA: eliminadas las secciones 03 (hero), 04 (slider HUD),
     05 (aerospace), 06 (pilotos), 07 (blog) y 13 (responsive global,
     que solo contenía overrides de esas secciones). Todo ese CSS vive
     ahora INLINE en los 3 widgets HTML de la home:
     · SRP_Intro_Selector_Modelos_v1.html (hero + selector)
     · SRP_Home_Tecnologia_v1.html (qué es SRP / tech)
     · SRP_Home_Pilotos_Blog_v1.html (roster slider + blog)
     Archivo reducido ~150KB → ~109KB (-27%).
   ▸ MEJORA UX: scroll-margin-top en .srp-pb-section — los enlaces de
     ancla del subnav ya no quedan ocultos bajo el header sticky.
   ⚠️ Si reutilizas el hero/slider/tech/pilotos/blog FUERA de la home,
   tendrás que copiar el CSS del widget correspondiente (va inline).

   CHANGELOG v6.0 (2026-07-30):
   ▸ FIX CRÍTICO capas: .elementor-location-header pasa a z-index 1000;
     .single_add_to_cart_button baja de 99999 a 10; .srp-pb-subnav baja
     de 100 a 80 y se ancla a top:56px.
   ▸ FIX hamburguesa invisible: barras .elementskit-menu-hamburger-icon
     con estilo propio + display forzado ≤1024px.
   ▸ Overlay del menú móvil solo con .active (v6.0.1, velo negro).
   ▸ Banda blanca megamenú móvil oscurecida (v6.0.2); chevron submenú
     naranja y separado (v6.0.3).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════════
   01. VARIABLES GLOBALES — Editar aquí para cambios de marca rápidos
   ═══════════════════════════════════════════════════════════════════════════ */

:root {
  /* Colores SRP */
  --srp-black: #0A0A0F;
  --srp-charcoal: #141419;
  --srp-surface: #1A1A20;
  --srp-orange: #FF6D00;
  --srp-orange-dim: rgba(255,109,0,0.12);
  --srp-orange-glow: rgba(255,109,0,0.4);
  --srp-red: #E63946;
  --srp-cyan: #00D4FF;
  /* Cyan GT-S — color diferenciador del modelo GT-S (página de producto) */
  --srp-cyan-gts: #00F0FF;
  --srp-cyan-gts-dim: rgba(0,240,255,0.12);
  --srp-cyan-gts-glow: rgba(0,240,255,0.35);
  --srp-silver: #C0C0C8;
  --srp-gray: #888892;
  --srp-gray-dark: #333333;
  --srp-white: #F5F5F7;
  
  /* Tipografía */
  --srp-font-body: 'Inter', 'Space Grotesk', system-ui, -apple-system, sans-serif;
  --srp-font-mono: 'Share Tech Mono', 'SF Mono', ui-monospace, 'Courier New', monospace;
  
  /* Espaciado */
  --srp-radius: 12px;
  --srp-radius-sm: 8px;
  --srp-transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);

  /* Capas (ver sec. 03 — escala completa documentada allí) */
  --srp-z-content: 1;
  --srp-z-subnav: 80;
  --srp-z-header: 1000;
  --srp-z-menu-overlay: 100000;
  --srp-z-menu-panel: 100001;
  --srp-z-lightbox: 999999;
}

/* ═══════════════════════════════════════════════════════════════════════════
   02. RESET & BASE
   ═══════════════════════════════════════════════════════════════════════════ */

/* Reset suave solo para elementos SRP */
[class*="srp-"] { box-sizing: border-box; }
[class*="srp-"]::before,
[class*="srp-"]::after { box-sizing: border-box; }

/* Fix margen blanco global */
body { margin: 0 !important; }
body.home .elementor-section-wrap,
body.page-template-default .elementor-section-wrap { margin: 0 !important; }

/* v5.4 — Anti scroll horizontal: la página nunca se desborda en móvil/tablet.
   Cualquier elemento que sobresalga queda recortado en vez de arrastrar
   toda la página a la izquierda (bug de la barra negra con la X). */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
/* Los contenedores de Elementor tampoco desbordan el viewport */
.elementor-section, .e-con, .elementor-container {
  max-width: 100vw;
}

/* ═══════════════════════════════════════════════════════════════════════════
   03. CAPAS GLOBALES (Z-INDEX) — LA REGLA MÁS IMPORTANTE DEL SISTEMA
   ───────────────────────────────────────────────────────────────────────────
   Escala UNIFICADA. En Elementor deja TODOS los z-index a 0: manda este CSS.
   ─────────────────────────────────────────────────────────────────────────
     0–99      → contenido de página (hero, secciones, subnav=80)
     1000      → .elementor-location-header COMPLETO (topbar+menú, una sola
                 capa: el body NUNCA puede pintarse por encima)
     dentro del header: anuncio < topbar sticky(95) < dropdowns topbar(200)
                 < dropdowns/megamenú menú(300)
     100000    → overlay del menú móvil
     100001    → panel off-canvas del menú móvil
     999999    → techo reservado: lightbox de galería (sec. 16)
   ⚠️ NO crear z-index nuevos fuera de esta escala.
   ═══════════════════════════════════════════════════════════════════════════ */

/* 03A. El header es UNA capa por encima de todo el contenido */
.elementor-location-header{position:relative;z-index:1000}

/* 03B. El topbar sticky, dentro del header, por encima de la barra de menú
   (corrige "el topbar sale por debajo del menú y no se puede seleccionar") */
.srp-topbar-paddock{z-index:95}
.elementor-location-header .e-con:has(.elementskit-navbar-nav){position:relative;z-index:90}

/* 03C. Menú móvil (off-canvas + overlay): por encima de TODO, incluido el
   topbar — antes el topbar tapaba el panel y no se podía usar el menú.
   ⚠️ v6.0.1: SOLO cuando el menú está ABIERTO (.active). Forzarlo en
   permanente dejaba un velo negro sobre toda la página que bloqueaba
   los toques (el overlay existe en el DOM aunque el menú esté cerrado) */
.elementskit-menu-overlay{
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .3s ease,visibility .3s;
}
.elementskit-menu-overlay.active{
  opacity:1;visibility:visible;pointer-events:auto;
  position:fixed;inset:0;z-index:100000!important;
}
.elementskit-menu-offcanvas-elements.elementskit-menu-container.active{z-index:100001!important}
.elementskit-menu-offcanvas-elements .elementskit-menu-close{position:relative;z-index:100002}

/* 03D. El contenido de página nunca supera la capa 99 (defensa anti
   "el body sale por encima del menú": secciones con transform/opacity
   crean contextos de apilado y antes ganaban al header) */
.elementor-location-content,
.elementor-location-footer{position:relative;z-index:1}

/* ═══════════════════════════════════════════════════════════════════════════
   04. HEADER PRINCIPAL — TOPBAR STICKY (banner + logo + confianza)
   ───────────────────────────────────────────────────────────────────────────
   El topbar ES el header principal: lleva el logo, es sticky y permanente.
   Capas: ver sec. 03. Nunca subir z-index aquí.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 20A.1 Banner anuncio rotativo (permanente, sin cierre) ── */
.srp-announce{
  background:#050505;
  background-image:linear-gradient(rgba(255,109,0,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,109,0,.03) 1px,transparent 1px);
  background-size:10px 10px;
  border-bottom:1px solid #FF6D00;
  box-shadow:0 4px 15px rgba(255,109,0,.1);
  position:relative;z-index:90;width:100%;
  font-family:'Share Tech Mono',monospace;
}
.srp-announce-track{position:relative;height:42px;overflow:hidden}
.srp-announce-slide{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;gap:15px;
  padding:0 20px;color:#f2f2f2;font-size:13px;
  opacity:0;transform:translateY(6px);pointer-events:none;
  transition:opacity .45s ease,transform .45s ease;
}
.srp-announce-slide.is-active{opacity:1;transform:translateY(0);pointer-events:auto}
.srp-announce-slide p{margin:0;line-height:1.4;letter-spacing:1px;text-align:center}
.srp-announce-slide strong{color:#fff;letter-spacing:2px}
.srp-announce-slide .srp-date{color:#FF6D00;font-weight:700;margin-left:5px}
.srp-sys-alert{color:#FF6D00;font-weight:700;animation:srpAlertBlink 2s infinite;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.srp-sys-alert::before{content:'';width:8px;height:8px;background:#FF6D00;border-radius:50%;box-shadow:0 0 6px rgba(255,109,0,.8)}
@keyframes srpAlertBlink{0%,100%{opacity:1}50%{opacity:.5}}
.srp-announce-btn{
  background:#FF6D00;color:#000;padding:6px 20px;text-decoration:none;
  font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:2px;white-space:nowrap;
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
  transition:all .2s ease-out;
}
.srp-announce-btn:hover{background:#fff;color:#FF6D00;box-shadow:0 0 12px rgba(255,109,0,.4)}
.srp-announce-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.srp-announce-text{color:#aaa;letter-spacing:1px}
.srp-announce-text strong{color:#FF6D00}

/* ── 20A.2 Barra de confianza ── */
.srp-topbar-paddock{
  pointer-events:auto!important;
  background:#000;border-bottom:1px solid rgba(255,109,0,.15);
  display:flex;justify-content:space-between;align-items:center;
  padding:10px 30px;position:relative;z-index:95;isolation:isolate;
  color:#888;font-family:'Share Tech Mono',monospace;
  font-size:11px;text-transform:uppercase;letter-spacing:1px;
}
.srp-tb-left,.srp-tb-right{display:flex;align-items:center;gap:20px}
.srp-tb-item{display:flex;align-items:center;gap:8px}
.srp-tb-item svg{width:14px;stroke:#FF6D00}
.srp-tb-item span strong{color:#fff}
.srp-tb-item::before{content:'[';color:#333}
.srp-tb-item::after{content:']';color:#333}
.srp-trust-badge{
  background:rgba(255,109,0,.05);padding:5px 15px;border:1px solid rgba(255,109,0,.2);
  color:#FF6D00;font-weight:700;
  clip-path:polygon(5px 0,100% 0,calc(100% - 5px) 100%,0 100%);
}
.srp-trust-badge strong{color:#fff}
.srp-cart-integrated-btn{
  display:flex;align-items:center;gap:8px;background:transparent;
  color:#FF6D00!important;border:1px solid #FF6D00;padding:6px 15px;
  text-decoration:none;font-weight:900;transition:.2s ease-out;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
}
.srp-cart-integrated-btn svg{width:14px;height:14px;stroke:#FF6D00;transition:.2s ease-out}
.srp-cart-integrated-btn:hover{background:#FF6D00;color:#000!important;box-shadow:0 0 12px rgba(255,109,0,.3)}
.srp-cart-integrated-btn:hover svg{stroke:#000}
.srp-cart-integrated-btn:focus-visible{outline:2px solid #FF6D00;outline-offset:2px}
.srp-account-btn{
  display:flex;align-items:center;gap:8px;background:transparent;
  color:#888;border:1px solid #333;padding:6px 15px;
  text-decoration:none;font-weight:700;transition:.2s ease-out;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
}
.srp-account-btn svg{width:14px;height:14px;stroke:#888;transition:.2s ease-out}
.srp-account-btn:hover{border-color:#FF6D00;color:#FF6D00;box-shadow:0 0 12px rgba(255,109,0,.2)}
.srp-account-btn:hover svg{stroke:#FF6D00}
.srp-account-btn:focus-visible{outline:2px solid #FF6D00;outline-offset:2px}
.srp-dropdown{position:relative;padding-bottom:10px;margin-bottom:-10px}
.srp-drop-btn{
  background:transparent;border:1px solid #333;color:#888;padding:4px 10px;cursor:pointer;
  font-size:11px;font-family:'Share Tech Mono',monospace;text-transform:uppercase;transition:.2s ease-out;
}
.srp-dropdown:hover .srp-drop-btn,.srp-drop-btn:focus-visible{border-color:#FF6D00;color:#FF6D00;outline:none}
.srp-drop-content{
  position:absolute;top:100%;right:0;
  background:rgba(5,5,5,.95);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  border:1px solid rgba(255,109,0,.5);border-top:2px solid #FF6D00;
  visibility:hidden;opacity:0;z-index:200;min-width:140px;
  box-shadow:0 10px 25px rgba(0,0,0,.9);transition:opacity .2s ease-out;
}
.srp-drop-content::before{content:'';position:absolute;top:-10px;left:0;width:100%;height:10px;background:transparent}
.srp-dropdown:hover .srp-drop-content,.srp-dropdown:focus-within .srp-drop-content{visibility:visible;opacity:1}
.srp-drop-content a{
  color:#fff;padding:12px;display:block;text-decoration:none;cursor:pointer;
  border-bottom:1px solid #1a1a1a;font-size:11px;transition:.2s ease-out;
}
.srp-drop-content a:hover,.srp-drop-content a:focus-visible{background:rgba(255,109,0,.1);color:#FF6D00;padding-left:18px;border-left:2px solid #FF6D00;outline:none}
.srp-drop-content--account{min-width:210px}

/* ocultar duplicados de plugins (Weglot / currency nativos) */
#alg_currency_switcher,#weglot_here,.woocs_currency_dropdown,.yith-wapo-options-container.floating,div[id*="weglot"],.country-selector{display:none!important;visibility:hidden!important}

/* ── 20A.3 Responsive / accesibilidad topbar ── */
@media(max-width:850px){
  .srp-tb-left,.srp-tb-center{display:none}
  .srp-topbar-paddock{padding:10px 15px;justify-content:flex-end;gap:10px}
  .srp-account-btn span{display:none}
  .srp-account-btn{padding:6px 10px}
  .srp-announce-track{height:auto;min-height:44px}
  .srp-announce-slide{position:relative;flex-direction:column;padding:10px 15px;gap:6px;display:none}
  .srp-announce-slide.is-active{display:flex}
  .srp-announce-slide p{font-size:11px}
  .srp-announce-btn{width:100%;text-align:center;font-size:11px;padding:7px}
}
@media(prefers-reduced-motion:reduce){
  .srp-sys-alert{animation:none}
  .srp-announce-slide{transition:none}
}


/* 21A. Barra principal sticky + hueco para la admin bar de WP */
.srp-topbar-paddock{position:sticky;top:0}
body.admin-bar .srp-topbar-paddock{top:32px}
@media(max-width:782px){body.admin-bar .srp-topbar-paddock{top:46px}}

/* 21B. Logo integrado en el header */
.srp-tb-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}
.srp-tb-logo img{height:34px;width:auto;display:block;filter:drop-shadow(0 0 6px rgba(255,109,0,.25));transition:filter .2s ease-out}
.srp-tb-logo:hover img{filter:drop-shadow(0 0 10px rgba(255,109,0,.5))}

/* 21C. Responsive con logo: primero caen los USPs, luego el trust badge */
@media(max-width:1150px){
  .srp-tb-left{display:none}
}
@media(max-width:850px){
  .srp-topbar-paddock{padding:8px 15px;gap:10px}
  .srp-tb-logo img{height:28px}
  .srp-cart-integrated-btn{padding:6px 10px}
  .srp-cart-integrated-btn span{display:none}
}

/* ═══════════════════════════════════════════════════════════════════════════
   05. MENÚ ElementsKit (barra negra centrada debajo del topbar)
   ───────────────────────────────────────────────────────────────────────────
   Clases reales verificadas en el DOM de producción: .elementskit-navbar-nav,
   a.ekit-menu-nav-link, .elementskit-dropdown, .elementskit-megamenu-panel,
   .elementskit-menu-hamburger(-icon), .elementskit-menu-close,
   .elementskit-menu-offcanvas-elements, .elementskit-menu-overlay.
   REGLAS DE ORO (aprendidas a las malas):
   ▸ NUNCA forzar display/margin/position en .elementskit-navbar-nav:
     ElementsKit mide sus dropdowns con JS sobre su propio layout.
   ▸ NUNCA usar IDs de elemento Elementor: cambian al reconstruir.
   ▸ Centrado del menú: ajuste del widget (Main Menu Position → Center).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 22A. Enlaces: SOLO tipografía y color (nada de display/margin:
   ElementsKit mide sus dropdowns con JS sobre su propio layout;
   forzar flex aquí descuadraba los megamenús — corregido) ── */
.elementor-location-header .elementskit-navbar-nav{background:#000}
.elementor-location-header .elementskit-navbar-nav>li>a{
  color:#FFFFFF!important;text-decoration:none;
  font-family:'Share Tech Mono',monospace;font-size:12px;font-weight:700;
  text-transform:uppercase;letter-spacing:2px;
  border-bottom:2px solid transparent;
  transition:color .2s ease-out,border-color .2s ease-out,background .2s ease-out;
}
.elementor-location-header .elementskit-navbar-nav>li>a:hover,
.elementor-location-header .elementskit-navbar-nav>li>a:focus-visible,
.elementor-location-header .elementskit-navbar-nav>li:hover>a{
  color:#FF6D00!important;background:rgba(255,109,0,.06);
  border-bottom-color:#FF6D00;outline:none;
}
/* estado activo (página actual) */
.elementor-location-header .elementskit-navbar-nav>li.current-menu-item>a,
.elementor-location-header .elementskit-navbar-nav>li.current-menu-ancestor>a,
.elementor-location-header .elementskit-navbar-nav>li.active>a{
  color:#FF6D00!important;border-bottom-color:#FF6D00;
}
/* indicador ▾ de submenú */
.elementor-location-header .elementskit-navbar-nav .elementskit-submenu-indicator{color:#888;transition:color .2s ease-out}
.elementor-location-header .elementskit-navbar-nav>li:hover .elementskit-submenu-indicator{color:#FF6D00}

/* ── 22B. Dropdown normal (submenús) ── */
.elementor-location-header .elementskit-dropdown,
.elementor-location-header .elementskit-navbar-nav .elementskit-dropdown{
  background:rgba(5,5,5,.97);
  border:1px solid rgba(255,109,0,.4);border-top:2px solid #FF6D00;
  box-shadow:0 15px 40px rgba(0,0,0,.85);
  min-width:230px;padding:8px 0;z-index:300;
}
.elementor-location-header .elementskit-dropdown li{list-style:none}
.elementor-location-header .elementskit-dropdown li>a{
  display:block;padding:12px 18px;color:#fff!important;text-decoration:none;
  font-family:'Share Tech Mono',monospace;font-size:11px;
  text-transform:uppercase;letter-spacing:1px;
  background:transparent;border-bottom:1px solid #161616;border-left:2px solid transparent;
  transition:.2s ease-out;
}
.elementor-location-header .elementskit-dropdown li>a:hover,
.elementor-location-header .elementskit-dropdown li>a:focus-visible{
  background:rgba(255,109,0,.1);color:#FF6D00!important;
  padding-left:24px;border-left-color:#FF6D00;outline:none;
}

/* ── 22C. Megamenú (panel ancho — el contenido usa .srp-mega-* de la sec. 11) ── */
.elementor-location-header .elementskit-megamenu-panel{
  background:#050505;
  border-top:2px solid #FF6D00;border-bottom:1px solid rgba(255,109,0,.3);
  box-shadow:0 30px 60px rgba(0,0,0,.85);z-index:300;
}
.elementor-location-header .elementskit-megamenu-panel .elementor{background:transparent}

/* ── 22D. Móvil: hamburguesa naranja + overlay oscuro ── */
.elementor-location-header .elementskit-menu-hamburger{
  background:#E75100;border:0;border-radius:4px;
  width:44px;height:40px;display:flex;align-items:center;justify-content:center;
}
.elementor-location-header .elementskit-menu-hamburger{
  color:#FFFFFF;cursor:pointer;flex-direction:column;gap:0;
}
/* Las 3 barras del icono, siempre visibles (v6.0: antes heredaban estilos
   del tema y el botón parecía "vacío"/invisible) */
.elementor-location-header .elementskit-menu-hamburger-icon{
  display:block;width:20px;height:2px;background:#FFF;border-radius:2px;
  margin:2.5px 0;transition:.25s ease-out;
}
.elementskit-menu-overlay{background:rgba(0,0,0,.72)}

/* 23A. Fondo negro GLOBAL del header: cualquier hueco entre containers
   (márgenes/paddings de Elementor) sale negro, nunca blanco */
.elementor-location-header,
.elementor-location-header .e-con:has(.elementskit-navbar-nav){background-color:#000}

/* 23B. Hamburguesa SOLO en móvil/tablet (en desktop quedaba visible
   como cuadrado naranja en la banda) */
@media(min-width:1025px){
  .elementor-location-header .elementskit-menu-hamburger{display:none!important}
}

/* 23C. Si el megamenú queda SEPARADO de la barra (el JS lo midió con el
   layout roto, p.ej. top:100px inline): descomenta esta regla para
   pegarlo justo debajo del item — y avísame para dejarla fija:
.elementor-location-header .elementskit-megamenu-panel{top:100%!important}
*/

/* ── 24A. Franja blanca residual: cero margen inferior en todo el header ── */
.elementor-location-header{margin-bottom:0!important}
.elementor-location-header>.e-con:last-child,
.elementor-location-header .e-con:has(.elementskit-navbar-nav){margin-bottom:0!important}
/* Y que nada del header desborde en horizontal (origen de la hamburguesa cortada) */
.elementor-location-header{overflow-x:clip;max-width:100%}

/* ── 24B. Hamburguesa: VISIBLE y dentro de pantalla (≤1024px) ──
   (v6.0: la regla anterior forzaba position:relative y ElementsKit la
   perdía; ahora solo se refuerza display/tamaño y margen derecho) */
@media(max-width:1024px){
  .elementor-location-header .elementskit-menu-hamburger{
    display:inline-flex!important;visibility:visible!important;opacity:1!important;
    align-items:center;justify-content:center;
    width:44px;height:40px;margin-right:15px;
  }
}

/* ── 24C. Panel off-canvas 100 % oscuro: cabecera + botón cerrar ── */
.elementskit-menu-offcanvas-elements.elementskit-menu-container,
.elementskit-menu-offcanvas-elements .elementskit-menu-close{
  background:#050505!important;
}
.elementskit-menu-offcanvas-elements .elementskit-menu-close{
  color:#FF6D00!important;
  border:1px solid rgba(255,109,0,.5)!important;
  border-radius:4px;width:44px;height:44px;
  margin:12px;display:flex;align-items:center;justify-content:center;
}
.elementskit-menu-offcanvas-elements .elementskit-menu-close:hover,
.elementskit-menu-offcanvas-elements .elementskit-menu-close:focus-visible{
  background:rgba(255,109,0,.15)!important;color:#FFF!important;outline:none;
}

/* ── 24D. Tap targets decentes en móvil/tablet (min. 48px táctil) ── */
@media(max-width:1024px){
  .elementor-location-header .elementskit-navbar-nav>li{
    margin:0;border-bottom:1px solid #161616;
  }
  .elementor-location-header .elementskit-navbar-nav>li>a{
    display:flex;align-items:center;justify-content:space-between;
    padding:16px 20px!important;
    font-size:15px;letter-spacing:1.5px;line-height:1.4;
    min-height:52px;box-sizing:border-box;
    border-bottom:0;
  }
  .elementor-location-header .elementskit-navbar-nav>li>a:active{
    background:rgba(255,109,0,.12);color:#FF6D00!important;
  }
  /* Submenús: indentación clara y toques igual de cómodos */
  .elementor-location-header .elementskit-dropdown{padding-left:14px}
  .elementor-location-header .elementskit-dropdown li>a{
    padding:14px 20px!important;min-height:48px;font-size:13px;
  }
}

/* ── 24E. Indicador de dropdown: chevron naranja limpio (sin píldora) ── */
.elementor-location-header .elementskit-submenu-indicator,
.elementor-location-header li>a>.elementskit-submenu-indicator{
  border:0!important;background:transparent!important;box-shadow:none!important;
  width:auto;height:auto;padding:10px 12px;
  color:#FF6D00;font-size:12px;line-height:1;
  display:inline-flex;align-items:center;justify-content:center;
  transition:transform .25s ease-out,color .2s ease-out;
}
/* Gira al abrir el submenú (estado .active de ElementsKit) */
.elementor-location-header .elementskit-navbar-nav li.active>.elementskit-submenu-indicator,
.elementor-location-header .elementskit-navbar-nav li.active>a>.elementskit-submenu-indicator{
  transform:rotate(180deg);color:#FFF;
}
/* Refuerzo móvil (v6.0.3): dentro del panel oscuro el chevron heredaba
   negro (invisible) y quedaba pegado al texto → naranja + separación */
@media(max-width:1024px){
  .elementskit-menu-offcanvas-elements .elementskit-submenu-indicator,
  .elementskit-menu-offcanvas-elements a .elementskit-submenu-indicator,
  .elementskit-menu-offcanvas-elements a>.elementskit-submenu-indicator{
    color:#FF6D00!important;
    margin-left:auto!important;padding:6px 10px!important;
    font-size:14px!important;opacity:1!important;
  }
  .elementskit-menu-offcanvas-elements li.active>.elementskit-submenu-indicator,
  .elementskit-menu-offcanvas-elements li.active>a>.elementskit-submenu-indicator{
    color:#FFF!important;transform:rotate(180deg);
  }
}

/* ═══════════════════════════════════════════════════════════════════════════
/* ── 24G. Plantilla del megamenú (p.ej. .elementor-4424) salía BLANCA
   dentro del panel móvil: el CSS que genera Elementor para esa plantilla
   trae fondo claro propio. Forzamos oscuro en todo lo que cuelga del
   megamenú dentro del off-canvas (≤1024px) ── */
@media(max-width:1024px){
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel,
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel .elementor,
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel [class*="elementor-"],
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel .e-con,
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel .elementor-section,
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel .elementor-widget-wrap,
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel .elementor-widget{
    background:#050505!important;background-color:#050505!important;
  }
  .elementskit-menu-offcanvas-elements .elementskit-megamenu-panel{
    margin:0!important;border-radius:0;padding:0!important;
  }
}

/* ── 24F. Tablet (641–1024px): panel más ancho y cómodo ── */
@media(min-width:641px) and (max-width:1024px){
  .elementskit-menu-offcanvas-elements.elementskit-menu-container{width:min(420px,85vw)!important}
}
@media(max-width:640px){
  .elementskit-menu-offcanvas-elements.elementskit-menu-container{width:min(340px,88vw)!important}
}

/* ═══════════════════════════════════════════════════════════════════════════
   06. SUBNAV PRODUCTO + FINANCIACIÓN
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 20C. FIX subnav producto: eliminar bandas claras arriba/abajo ──
   Causa: padding por defecto (10px) del contenedor .e-con */
.e-con:has(> .elementor-widget-html > .srp-pb-subnav){
  padding-top:0!important;
  padding-bottom:0!important;
  padding-left:0!important;
  padding-right:0!important;
}
/* v6.1: los anclas del subnav no quedan ocultas bajo el header sticky */
.srp-pb-section{scroll-margin-top:120px}

/* ── 20D. FINANCIACIÓN: 4 métodos + cobertura por país ── */
@media(min-width:1025px){
  .srp-finance-grid{grid-template-columns:repeat(4,1fr)!important}
}
@media(min-width:641px) and (max-width:1024px){
  .srp-finance-grid{grid-template-columns:repeat(2,1fr)!important}
}
.srp-finance-geo{
  display:inline-flex;align-items:center;gap:6px;margin-top:8px;
  padding:3px 10px;border:1px solid rgba(255,109,0,.35);
  color:#C74800;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;
  font-family:'Share Tech Mono',monospace;
  clip-path:polygon(4px 0,100% 0,calc(100% - 4px) 100%,0 100%);
}
.srp-finance-geo::before{
  content:'';width:6px;height:6px;background:#FF6D00;border-radius:50%;
}

/* ═══════════════════════════════════════════════════════════════════════════
   ═══ BLOQUE DE CONTENIDO — secciones 08–19 ═══
   (footer, WooCommerce, contact, megamenu premium, about y páginas de
   producto GT-S / GT-R / Formula-R / Handbrake. Las antiguas 03–07 y 13
   — hero home, slider, tech, pilotos, blog — viven inline en los widgets
   HTML de la home desde v6.1)
   ═══════════════════════════════════════════════════════════════════════════ */


/* ═══════════════════════════════════════════════════════════════════════════
   08. FOOTER ULTRA v2.0
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-footer-wrapper{background:#070707;font-family:var(--srp-font-body);color:var(--srp-white);width:100%;border-top:1px solid #1a1a1a;position:relative}
.srp-footer-wrapper::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,0.08) 2px,rgba(0,0,0,0.08) 4px);pointer-events:none;z-index:0;opacity:0.15}

/* Trust Strip */
.srp-trust-strip{background:#000;border-bottom:1px solid #1a1a1a;padding:18px 20px;position:relative;z-index:1}
.srp-trust-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 24px}
.srp-trust-item{display:flex;align-items:center;gap:10px;color:var(--srp-gray);font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;transition:color 0.3s ease}
.srp-trust-item svg{width:18px;height:18px;color:var(--srp-orange);flex-shrink:0;transition:all 0.3s ease}
.srp-trust-item:hover{color:#fff}
.srp-trust-item:hover svg{filter:drop-shadow(0 0 6px rgba(255,109,0,0.5));transform:scale(1.1)}

/* Grid Principal */
.srp-footer-grid{max-width:1200px;margin:0 auto;padding:60px 20px 40px;display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:50px;position:relative;z-index:1}

/* Columna Marca */
.srp-brand-col{display:flex;flex-direction:column;align-items:flex-start}
.srp-footer-logo-link{display:block;margin-bottom:18px;transition:opacity 0.3s ease,transform 0.3s ease;outline:2px solid transparent;outline-offset:4px;border-radius:2px}
.srp-footer-logo-link:focus-visible{outline-color:var(--srp-orange)}
.srp-footer-logo-link:hover{opacity:0.85;transform:translateY(-2px)}
.srp-footer-logo{max-width:160px;height:auto;display:block}
.srp-footer-tagline{color:var(--srp-gray);font-size:13px;line-height:1.6;margin:0 0 22px;max-width:90%}

/* Botón Soporte Footer */
.srp-support-btn{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 24px;background:transparent;color:var(--srp-white)!important;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1.5px;text-decoration:none;border:1px solid var(--srp-gray-dark);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:var(--srp-transition);margin-bottom:28px;outline:2px solid transparent;outline-offset:2px}
.srp-support-btn:focus-visible{outline-color:var(--srp-orange)}
.srp-support-btn svg{width:16px;height:16px;flex-shrink:0}
.srp-support-btn:hover{background:var(--srp-orange);border-color:var(--srp-orange);color:var(--srp-black)!important;box-shadow:0 5px 20px rgba(255,109,0,0.25);transform:translateY(-2px)}

/* Newsletter */
.srp-newsletter{width:100%;max-width:300px}
.srp-nl-label{display:block;font-family:var(--srp-font-mono);font-size:10px;color:var(--srp-orange);font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}
.srp-nl-form{display:flex;width:100%;background:#000;border:1px solid #222;border-radius:2px;overflow:hidden;transition:border-color 0.3s ease,box-shadow 0.3s ease}
.srp-nl-form:focus-within{border-color:var(--srp-orange);box-shadow:0 0 15px rgba(255,109,0,0.1)}
.srp-nl-form input[type="email"]{flex:1;background:transparent;border:none;padding:12px 14px;color:var(--srp-white);font-size:12px;font-family:inherit;outline:none;min-width:0}
.srp-nl-form input[type="email"]::placeholder{color:#555;font-family:var(--srp-font-mono);font-size:10px;letter-spacing:1px}
.srp-nl-form button{background:#1a1a1a;border:none;width:44px;display:flex;align-items:center;justify-content:center;color:var(--srp-gray);cursor:pointer;transition:all 0.3s ease;outline:2px solid transparent;outline-offset:-2px}
.srp-nl-form button:focus-visible{outline-color:var(--srp-orange)}
.srp-nl-form button:hover{background:var(--srp-orange);color:var(--srp-black)}
.srp-nl-form button svg{width:16px;height:16px;transition:transform 0.3s ease}
.srp-nl-form button:hover svg{transform:translateX(3px)}

/* Columnas Links */
.srp-footer-col h4{font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:1.5px;margin:0 0 22px;color:#fff;position:relative;padding-bottom:10px}
.srp-footer-col h4::after{content:'';position:absolute;bottom:0;left:0;width:24px;height:2px;background:var(--srp-orange)}
.srp-footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.srp-footer-links a{position:relative;color:var(--srp-gray);text-decoration:none;font-size:13px;transition:all 0.25s ease;display:inline-flex;align-items:center;gap:8px;padding:2px 0;outline:2px solid transparent;outline-offset:2px;border-radius:1px}
.srp-footer-links a::before{content:'▸';font-size:9px;color:var(--srp-orange);opacity:0;transform:translateX(-4px);transition:all 0.25s ease}
.srp-footer-links a:hover,.srp-footer-links a:focus-visible{color:#fff;transform:translateX(8px)}
.srp-footer-links a:hover::before,.srp-footer-links a:focus-visible::before{opacity:1;transform:translateX(0)}
.srp-footer-links a:focus-visible{outline-color:var(--srp-orange)}
.srp-link-highlight{color:var(--srp-orange)!important;font-weight:800;border-bottom:1px solid rgba(255,109,0,0.25);margin-top:6px}
.srp-link-highlight:hover,.srp-link-highlight:focus-visible{border-bottom-color:var(--srp-orange);color:var(--srp-orange)!important}

/* Columna Comunidad */
.srp-social-row{display:flex;gap:10px;margin-bottom:30px}
.srp-social-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#111;color:var(--srp-gray);border:1px solid #222;border-radius:6px;text-decoration:none;transition:all 0.3s cubic-bezier(0.165,0.84,0.44,1);outline:2px solid transparent;outline-offset:2px}
.srp-social-btn:focus-visible{outline-color:var(--srp-orange)}
.srp-social-btn svg{width:20px;height:20px}
.srp-social-btn:hover,.srp-social-btn:focus-visible{color:#fff;transform:translateY(-4px);border-color:transparent}
.srp-social-btn.discord:hover,.srp-social-btn.discord:focus-visible{background:#5865F2;box-shadow:0 8px 20px rgba(88,101,242,0.3)}
.srp-social-btn.yt:hover,.srp-social-btn.yt:focus-visible{background:#FF0000;box-shadow:0 8px 20px rgba(255,0,0,0.3)}
.srp-social-btn.insta:hover,.srp-social-btn.insta:focus-visible{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#bc1888);box-shadow:0 8px 20px rgba(220,39,67,0.3)}

/* Dirección */
.srp-address-block{color:var(--srp-gray);font-size:12px;font-style:normal;line-height:1.7;background:rgba(0,0,0,0.4);padding:18px;border:1px solid #1a1a1a;border-radius:var(--srp-radius-sm);border-left:2px solid var(--srp-orange)}
.srp-address-block .srp-hq-label{display:block;font-family:var(--srp-font-mono);font-size:9px;color:#555;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:6px}
.srp-address-block strong{color:var(--srp-white);font-size:13px;display:block;margin-bottom:6px}
.srp-address-block p{margin:0 0 8px}
.srp-phone{color:var(--srp-orange);text-decoration:none;font-weight:800;font-family:var(--srp-font-mono);font-size:13px;transition:color 0.3s ease;outline:2px solid transparent;outline-offset:2px;border-radius:2px}
.srp-phone:hover,.srp-phone:focus-visible{color:#fff;outline-color:var(--srp-orange)}

/* Bottom Bar */
.srp-footer-bottom{background:#000;border-top:1px solid #111;padding:20px 0;position:relative;z-index:1}
.srp-bottom-inner{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}
.srp-copyright{margin:0;color:#555;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px}
.srp-legal-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.srp-legal-links a{color:#555;font-size:10px;text-decoration:none;text-transform:uppercase;letter-spacing:0.5px;font-weight:700;transition:color 0.3s ease;outline:2px solid transparent;outline-offset:2px;border-radius:1px;padding:2px 0}
.srp-legal-links a:hover,.srp-legal-links a:focus-visible{color:var(--srp-orange)}
.srp-legal-links a:focus-visible{outline-color:var(--srp-orange)}
.srp-legal-links .srp-legal-highlight{color:var(--srp-orange);font-weight:800}
.srp-legal-links .srp-ai-link{opacity:0.3;font-size:9px}
.srp-legal-links .srp-ai-link:hover{opacity:0.8}

/* Payment Icons */
.srp-payment-row{display:flex;gap:10px;align-items:center}
.srp-payment-icon{width:36px;height:24px;background:#111;border:1px solid #222;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#555;font-size:9px;font-weight:800;font-family:var(--srp-font-mono);letter-spacing:0.5px;transition:all 0.3s ease}
.srp-payment-icon:hover{border-color:#444;color:var(--srp-gray);transform:scale(1.05)}

/* Footer Responsive */
@media(max-width:991px){.srp-footer-grid{grid-template-columns:1fr 1fr;gap:40px 30px}.srp-trust-inner{justify-content:center}}
@media(max-width:767px){.srp-trust-item{width:100%;justify-content:center}.srp-footer-grid{grid-template-columns:1fr;text-align:center;padding:40px 20px 30px;gap:36px}.srp-brand-col{align-items:center}.srp-footer-tagline{max-width:100%}.srp-footer-col h4::after{left:50%;transform:translateX(-50%)}.srp-footer-links{align-items:center}.srp-footer-links a:hover,.srp-footer-links a:focus-visible{transform:translateY(-2px)}.srp-footer-links a::before{display:none}.srp-social-row{justify-content:center}.srp-address-block{text-align:center;border-left:none;border-top:2px solid var(--srp-orange)}.srp-bottom-inner{flex-direction:column;text-align:center;gap:14px}.srp-legal-links{justify-content:center}.srp-payment-row{justify-content:center}}
@media(max-width:480px){.srp-trust-inner{flex-direction:column;gap:14px}.srp-footer-grid{gap:30px}}

/* ═══════════════════════════════════════════════════════════════════════════
   09. WOOCOMMERCE BASE (sin Fluid Checkout)
   ═══════════════════════════════════════════════════════════════════════════ */

/* Estilos base WooCommerce oscuros */
body.woocommerce-checkout, body.woocommerce-cart, body.woocommerce-order-pay, body.woocommerce-order-received {
  background-color: var(--srp-black) !important;
  color: var(--srp-white);
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout textarea {
  background-color: var(--srp-charcoal) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  color: var(--srp-white) !important;
  border-radius: 4px;
}

body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus {
  border-color: var(--srp-orange) !important;
  box-shadow: 0 0 0 1px rgba(255,109,0,0.3) !important;
  outline: none;
}

body.woocommerce-checkout ::placeholder { color: #666 !important; }
body.woocommerce-checkout label { color: var(--srp-silver); }
body.woocommerce-checkout a:not(.button) { color: var(--srp-orange); }
body.woocommerce-checkout a:not(.button):hover { color: #fff; }
body.woocommerce-checkout input[type="checkbox"],
body.woocommerce-checkout input[type="radio"] { accent-color: var(--srp-orange); }

/* Botones WooCommerce */
body.woocommerce button.button,
body.woocommerce a.button,
body.woocommerce input.button,
body.woocommerce #respond input#submit,
body.woocommerce button.button.alt,
body.woocommerce a.button.alt {
  background-color: var(--srp-orange);
  color: var(--srp-black) !important;
  border: none;
  border-radius: 4px;
  font-weight: 700;
  transition: var(--srp-transition);
}

body.woocommerce button.button:hover,
body.woocommerce a.button:hover,
body.woocommerce input.button:hover,
body.woocommerce #respond input#submit:hover,
body.woocommerce button.button.alt:hover,
body.woocommerce a.button.alt:hover {
  background-color: #fff;
  color: var(--srp-black) !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   10. CONTACT PAGE
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-contact{--c-black:var(--srp-black);--c-charcoal:var(--srp-charcoal);--c-surface:var(--srp-surface);--c-orange:var(--srp-orange);--c-orange-dim:rgba(255,109,0,.12);--c-silver:var(--srp-silver);--c-gray:#8A8A92;--c-white:var(--srp-white);font-family:var(--srp-font-body);color:var(--c-white);background:var(--c-black);padding:90px 24px;position:relative;overflow:hidden}
.srp-contact *{box-sizing:border-box;margin:0;padding:0}
.srp-contact::before{content:'';position:absolute;top:-180px;right:-180px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(255,109,0,.10) 0%,transparent 65%);pointer-events:none}
.srp-contact-wrap{max-width:1100px;margin:0 auto;position:relative}
.srp-contact-tag{display:inline-flex;align-items:center;gap:10px;font-family:var(--srp-font-mono);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--c-orange);padding:7px 16px;border:1px solid var(--c-orange-dim);background:var(--c-orange-dim);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
.srp-contact-tag::before{content:'>';animation:srpBlink 1.2s step-end infinite}
@keyframes srpBlink{0%,100%{opacity:1}50%{opacity:0}}
.srp-contact h2{font-size:clamp(34px,5vw,56px);font-weight:800;line-height:1.05;letter-spacing:-1px;margin:26px 0 16px;text-transform:uppercase}
.srp-contact h2 span{color:var(--c-orange)}
.srp-contact-sub{color:var(--c-silver);font-size:17px;line-height:1.65;max-width:620px;margin-bottom:56px}
.srp-contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-bottom:56px}
@media(max-width:768px){.srp-contact-grid{grid-template-columns:1fr}}
.srp-channel{position:relative;display:flex;flex-direction:column;gap:14px;background:var(--c-charcoal);border:1px solid rgba(255,255,255,.06);padding:32px 30px;text-decoration:none;color:inherit;clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px));transition:transform .3s cubic-bezier(.25,1,.5,1),border-color .3s ease,background .3s ease}
.srp-channel:hover{transform:translateY(-4px);border-color:var(--c-orange);background:var(--c-surface)}
.srp-channel-top{display:flex;align-items:center;gap:16px}
.srp-channel-icon{width:52px;height:52px;flex:0 0 52px;display:flex;align-items:center;justify-content:center;background:var(--c-orange-dim);border:1px solid rgba(255,109,0,.35);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.srp-channel-icon svg{width:26px;height:26px;fill:var(--c-orange)}
.srp-channel h3{font-size:20px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}
.srp-channel-handle{font-family:var(--srp-font-mono);font-size:13px;color:var(--c-orange);letter-spacing:.5px}
.srp-channel p{color:var(--c-gray);font-size:14.5px;line-height:1.6}
.srp-channel-cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--srp-font-mono);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--c-white);margin-top:auto}
.srp-channel-cta::after{content:'→';color:var(--c-orange);transition:transform .25s ease}
.srp-channel:hover .srp-channel-cta::after{transform:translateX(6px)}
.srp-channel-badge{position:absolute;top:18px;right:18px;font-family:var(--srp-font-mono);font-size:10px;letter-spacing:2px;color:var(--srp-black);background:var(--c-orange);padding:4px 10px;font-weight:700}
.srp-contact-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border-top:1px solid rgba(255,255,255,.07);padding-top:40px}
@media(max-width:768px){.srp-contact-meta{grid-template-columns:1fr;gap:28px}}
.srp-meta-item{display:flex;gap:14px;align-items:flex-start}
.srp-meta-item svg{width:22px;height:22px;fill:var(--c-orange);flex:0 0 22px;margin-top:2px}
.srp-meta-item strong{display:block;font-family:var(--srp-font-mono);font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--c-orange);margin-bottom:6px}
.srp-meta-item span{color:var(--c-silver);font-size:14px;line-height:1.55}
.srp-meta-item a{color:var(--c-white);text-decoration:none;border-bottom:1px solid var(--c-orange)}
.srp-meta-item a:hover{color:var(--c-orange)}

/* ═══════════════════════════════════════════════════════════════════════════
   11. MEGAMENU PREMIUM (4 columnas)
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-megamenu-wrapper{position:absolute;left:0;right:0;width:100%;background:var(--srp-black);font-family:var(--srp-font-body);color:var(--srp-white);border-top:3px solid var(--srp-orange);box-shadow:0 30px 80px rgba(0,0,0,0.9);border-radius:0 0 16px 16px;z-index:9999}
.srp-megamenu-inner{display:grid;grid-template-columns:1fr 1fr 1fr 1.1fr;gap:40px;max-width:1400px;margin:0 auto;padding:50px 40px}
.srp-mega-col{display:flex;flex-direction:column}
.srp-mega-col-featured{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);border-radius:16px;padding:30px;transition:var(--srp-transition)}
.srp-mega-col-featured:hover{background:rgba(255,255,255,0.04);border-color:rgba(255,109,0,0.2);transform:translateY(-2px)}
.srp-mega-col-about{background:linear-gradient(135deg,rgba(255,109,0,0.06) 0%,rgba(255,109,0,0.02) 100%);border-color:rgba(255,109,0,0.15)}
.srp-mega-col-support{background:rgba(255,109,0,0.04);border:1px solid rgba(255,109,0,0.2);border-radius:16px;padding:30px}
.srp-mega-header{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:28px}
.srp-mega-icon{width:48px;height:48px;background:var(--srp-orange);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 4px 15px rgba(255,109,0,0.3)}
.srp-mega-icon svg{width:24px;height:24px;color:var(--srp-black);stroke-width:2.5}
.srp-mega-title{font-size:18px;font-weight:800;text-transform:uppercase;color:#FFF;margin:0 0 6px 0;letter-spacing:0.5px}
.srp-mega-subtitle{font-size:11px;color:var(--srp-gray);text-transform:uppercase;letter-spacing:2px;margin:0;font-weight:600}
.srp-mega-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;flex-grow:1}
.srp-mega-links a{display:flex;flex-direction:column;gap:2px;padding:12px 14px;color:var(--srp-white);text-decoration:none;border-radius:8px;transition:all 0.25s ease;border-left:3px solid transparent}
.srp-mega-links a:hover,.srp-mega-links a:focus-visible{background:rgba(255,109,0,0.08);border-left-color:var(--srp-orange);padding-left:18px;outline:none}
.srp-mega-links a:focus-visible{outline:2px solid var(--srp-orange);outline-offset:2px}
.srp-link-text{font-size:14px;font-weight:600;color:#FFF;line-height:1.3}
.srp-link-desc{font-size:11px;color:var(--srp-gray);font-weight:400;line-height:1.4}
.srp-mega-footer{margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,0.06)}
.srp-mega-more{font-size:12px;color:var(--srp-orange);text-decoration:none;font-weight:600;letter-spacing:0.5px;transition:all 0.25s ease;display:inline-flex;align-items:center;gap:6px}
.srp-mega-more:hover{color:#FFF;gap:10px}
.srp-support-cta{display:flex;align-items:center;justify-content:space-between;background:var(--srp-orange);color:var(--srp-black)!important;text-decoration:none;padding:20px 22px;border-radius:12px;margin-bottom:20px;transition:var(--srp-transition);clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}
.srp-support-cta:hover{background:#FFF;transform:translateY(-2px);box-shadow:0 10px 30px rgba(255,109,0,0.4)}
.srp-cta-content{display:flex;flex-direction:column;gap:3px}
.srp-cta-title{font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:0.5px}
.srp-cta-desc{font-size:10px;font-weight:500;opacity:0.8}
.srp-cta-badge{background:var(--srp-black);color:var(--srp-orange);font-size:10px;font-weight:800;padding:4px 8px;border-radius:4px;letter-spacing:1px}
.srp-support-info{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,0.08)}
.srp-info-item{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--srp-silver)}
.srp-info-item svg{width:18px;height:18px;color:var(--srp-orange);flex-shrink:0}
.srp-info-item strong{font-weight:600;color:var(--srp-white)}
.srp-support-links{display:flex;gap:12px;margin-bottom:20px}
.srp-support-links a{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08);border-radius:8px;color:var(--srp-silver);text-decoration:none;font-size:12px;font-weight:600;transition:all 0.25s ease;flex:1;justify-content:center}
.srp-support-links a:hover{background:rgba(0,212,255,0.1);border-color:var(--srp-cyan);color:#FFF}
.srp-support-links a svg{width:16px;height:16px;color:var(--srp-cyan)}
.srp-social-section{display:flex;flex-direction:column;gap:10px}
.srp-social-label{font-size:10px;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:2px}
.srp-social-row{display:flex;gap:10px}
.srp-social-icon{width:40px;height:40px;background:rgba(255,255,255,0.06);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#FFF;transition:all 0.3s cubic-bezier(0.165,0.84,0.44,1);position:relative}
.srp-social-icon svg{width:18px;height:18px}
.srp-social-icon:hover{transform:translateY(-3px);background:var(--srp-orange)}
.srp-social-icon.discord:hover{background:#5865F2}
.srp-social-icon.insta:hover{background:#E1306C}
.srp-social-icon.yt:hover{background:#FF0000}
.srp-social-icon::after{content:attr(title);position:absolute;bottom:-32px;left:50%;transform:translateX(-50%);background:var(--srp-surface);color:var(--srp-white);font-size:10px;padding:5px 10px;border-radius:4px;white-space:nowrap;opacity:0;visibility:hidden;transition:all 0.2s ease;pointer-events:none;border:1px solid rgba(255,255,255,0.1)}
.srp-social-icon:hover::after{opacity:1;visibility:visible;bottom:-38px}
@media(max-width:1200px){.srp-megamenu-inner{grid-template-columns:1fr 1fr;gap:30px}.srp-mega-col-support{grid-column:span 2;order:-1}}
@media(max-width:768px){.srp-megamenu-inner{grid-template-columns:1fr;padding:30px 20px;gap:25px}.srp-mega-col-featured,.srp-mega-col-support{padding:24px}.srp-mega-col-support{grid-column:span 1}.srp-support-links{flex-direction:column}}

/* Compatibilidad con megamenú anterior (clases legacy) */
.srp-mega-divider{width:40px;height:2px;background-color:var(--srp-orange)}
.srp-secondary-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}
.srp-link-secondary{display:flex;align-items:center;gap:10px;color:var(--srp-silver);text-decoration:none;font-size:14px;transition:all 0.25s ease}
.srp-link-secondary svg{width:18px;height:18px;color:var(--srp-cyan)}
.srp-link-secondary:hover,.srp-link-secondary:focus-visible{color:#FFF;padding-left:4px;outline:none}
.srp-link-secondary:focus-visible{outline:2px solid var(--srp-cyan);outline-offset:2px;border-radius:4px}
.srp-hero{/* legacy placeholder */}

/* ═══════════════════════════════════════════════════════════════════════════
   12. ABOUT PAGE
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-about{font-family:var(--srp-font-body);color:var(--srp-white);background:var(--srp-black);overflow-x:hidden}
.srp-about *{box-sizing:border-box;margin:0;padding:0}
.srp-about-hero{position:relative;min-height:85vh;display:flex;align-items:center;justify-content:center;padding:120px 24px 80px;overflow:hidden}
.srp-about-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,10,15,0.95) 0%,rgba(10,10,15,0.85) 50%,rgba(10,10,15,0.95) 100%),url('https://simracing-pro.com/wp-content/uploads/2024/07/SRP_GTR_DETAILS_11.jpg') center/cover;z-index:1;filter:grayscale(40%) brightness(0.7)}
.srp-about-hero-content{position:relative;z-index:2;max-width:900px;text-align:center}
.srp-about-tag{display:inline-flex;align-items:center;gap:10px;font-family:var(--srp-font-mono);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--srp-orange);padding:8px 18px;border:1px solid var(--srp-orange-dim);background:var(--srp-orange-dim);margin-bottom:28px;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
.srp-about-tag::before{content:'>';animation:srpBlink 1.2s step-end infinite}
.srp-about-h1{font-size:clamp(42px,7vw,72px);font-weight:900;line-height:1;margin:0 0 24px;text-transform:uppercase;letter-spacing:-2px}
.srp-about-h1 span{color:var(--srp-orange);display:block;font-size:clamp(18px,3vw,32px);letter-spacing:4px;margin-top:12px;font-weight:800}
.srp-about-sub{font-size:clamp(16px,2vw,20px);line-height:1.7;color:var(--srp-silver);max-width:720px;margin:0 auto;font-weight:400}
.srp-about-section{padding:100px 24px;max-width:1200px;margin:0 auto}
.srp-about-section-dark{background:var(--srp-charcoal);border-top:1px solid rgba(255,255,255,0.04)}
.srp-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
@media(max-width:900px){.srp-story-grid{grid-template-columns:1fr;gap:50px}}
.srp-story-content h2{font-size:clamp(32px,4vw,48px);font-weight:900;line-height:1.1;margin:0 0 28px;text-transform:uppercase;letter-spacing:-1px}
.srp-story-content h2 span{color:var(--srp-orange)}
.srp-story-text{font-size:17px;line-height:1.8;color:var(--srp-silver);margin-bottom:24px}
.srp-story-text strong{color:var(--srp-white);font-weight:700}
.srp-story-highlight{font-size:19px;line-height:1.7;color:var(--srp-white);font-weight:600;padding-left:24px;border-left:3px solid var(--srp-orange);margin:32px 0}
.srp-story-img{position:relative;border-radius:16px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,0.5)}
.srp-story-img img{width:100%;height:auto;display:block}
.srp-story-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(10,10,15,0.8) 100%);pointer-events:none}
.srp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:80px 0;text-align:center}
@media(max-width:768px){.srp-stats{grid-template-columns:repeat(2,1fr);gap:40px 20px}}
.srp-stat h3{font-size:clamp(36px,5vw,56px);font-weight:900;color:var(--srp-orange);margin:0 0 8px;line-height:1}
.srp-stat p{font-size:14px;color:var(--srp-gray);text-transform:uppercase;letter-spacing:2px;font-weight:600}
.srp-values{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:60px}
@media(max-width:900px){.srp-values{grid-template-columns:1fr}}
.srp-value{background:var(--srp-surface);border:1px solid rgba(255,255,255,0.06);padding:40px 30px;border-radius:12px;transition:var(--srp-transition)}
.srp-value:hover{transform:translateY(-5px);border-color:var(--srp-orange)}
.srp-value-icon{width:56px;height:56px;background:var(--srp-orange);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:24px}
.srp-value-icon svg{width:28px;height:28px;fill:var(--srp-black)}
.srp-value h3{font-size:20px;font-weight:800;margin:0 0 12px;text-transform:uppercase;letter-spacing:0.5px}
.srp-value p{font-size:15px;line-height:1.7;color:var(--srp-gray)}
.srp-timeline{position:relative;max-width:800px;margin:80px auto 0;padding-left:60px}
.srp-timeline::before{content:'';position:absolute;left:20px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--srp-orange),rgba(255,109,0,0.2))}
.srp-timeline-item{position:relative;margin-bottom:50px;padding-left:40px}
.srp-timeline-item::before{content:'';position:absolute;left:-46px;top:0;width:20px;height:20px;background:var(--srp-black);border:3px solid var(--srp-orange);border-radius:50%;box-shadow:0 0 20px rgba(255,109,0,0.4)}
.srp-timeline-year{font-family:var(--srp-font-mono);font-size:14px;color:var(--srp-orange);font-weight:800;letter-spacing:2px;margin-bottom:8px}
.srp-timeline-content h4{font-size:20px;font-weight:800;margin:0 0 10px;text-transform:uppercase}
.srp-timeline-content p{font-size:15px;line-height:1.7;color:var(--srp-silver)}
.srp-team{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:40px;margin-top:60px}
.srp-team-member{background:var(--srp-surface);border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,0.06);transition:var(--srp-transition)}
.srp-team-member:hover{transform:translateY(-8px);border-color:var(--srp-orange);box-shadow:0 25px 50px rgba(0,0,0,0.4)}
.srp-team-photo{position:relative;height:320px;overflow:hidden}
.srp-team-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(60%);transition:all 0.5s ease}
.srp-team-member:hover .srp-team-photo img{filter:grayscale(0%);transform:scale(1.05)}
.srp-team-info{padding:28px}
.srp-team-role{font-family:var(--srp-font-mono);font-size:11px;color:var(--srp-orange);text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}
.srp-team-name{font-size:22px;font-weight:800;margin:0 0 12px;text-transform:uppercase}
.srp-team-bio{font-size:14px;line-height:1.7;color:var(--srp-gray)}
.srp-about-cta{background:linear-gradient(135deg,var(--srp-charcoal) 0%,var(--srp-black) 100%);border-top:3px solid var(--srp-orange);padding:100px 24px;text-align:center}
.srp-about-cta h2{font-size:clamp(32px,5vw,48px);font-weight:900;margin:0 0 20px;text-transform:uppercase;letter-spacing:-1px}
.srp-about-cta p{font-size:18px;color:var(--srp-silver);max-width:600px;margin:0 auto 40px;line-height:1.7}
.srp-btn-primary{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 40px;background:var(--srp-orange);color:var(--srp-black)!important;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:1.5px;text-decoration:none;transition:var(--srp-transition);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);margin-right:16px}
.srp-btn-primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 10px 30px rgba(255,109,0,0.3)}
.srp-btn-secondary{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 40px;background:transparent;color:var(--srp-white)!important;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;text-decoration:none;border:1px solid rgba(255,255,255,0.2);transition:var(--srp-transition)}
.srp-btn-secondary:hover{border-color:var(--srp-orange);color:var(--srp-orange)!important}
.srp-video-embed{position:relative;max-width:800px;margin:60px auto;padding:0 24px}
.srp-video-wrapper{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,0.5)}
.srp-video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}
@media(max-width:768px){.srp-about-hero{min-height:70vh;padding:100px 20px 60px}.srp-about-section{padding:60px 20px}.srp-story-content h2{font-size:28px}.srp-story-highlight{font-size:17px;padding-left:16px}.srp-stats{gap:30px}.srp-timeline{padding-left:30px}.srp-timeline::before{left:10px}.srp-timeline-item::before{left:-36px;width:16px;height:16px}.srp-btn-primary,.srp-btn-secondary{width:100%;max-width:320px;margin:8px auto}}

/* ═══════════════════════════════════════════════════════════════════════════
   14. GT-S HERO DASHBOARD v3.2 — CYAN EDITION · FULL WIDTH
       (página de producto GT-S · ancho 100% alineado con el configurador)
   ───────────────────────────────────────────────────────────────────────────
   ▸ Cyan #00F0FF (--srp-cyan-gts) = color diferenciador del modelo GT-S.
     No convertir a naranja: es decisión de marca por modelo.
   ▸ Clases con prefijo .srp-gts- para NO colisionar con la sección 03
     (Hero home usa .srp-hero-h1 / .srp-hero-sub con otros valores).
   ▸ Nombres reservados de este componente (no reutilizar en otros):
     .srp-hero-dashboard, .srp-hd-brand, .srp-hd-eyebrow, .srp-hd-facts,
     .srp-hd-fact, .srp-status-pill, .srp-cockpit-warning, .srp-req-link,
     .srp-reviews-teaser, .srp-rt-btn, .srp-gts-logo
   ▸ Semánticos fijos: verde #00C853 = stock · ámbar #FFB300 = aviso.
   ▸ El widget de Elementor lleva SOLO HTML (sin estilos inline — el CSS va aquí):
     SRP_GTS_Hero_Dashboard_CYAN_v3.1.html
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-hero-dashboard {
  --hd-bg: var(--srp-black, #0A0A0F);
  --hd-surface: var(--srp-charcoal, #141419);
  --hd-surface-2: var(--srp-surface, #1A1A20);
  --hd-accent: var(--srp-cyan-gts, #00F0FF);
  --hd-accent-dim: rgba(0,240,255,0.12);
  --hd-accent-glow: rgba(0,240,255,0.35);
  --hd-accent-border: rgba(0,240,255,0.3);
  --hd-green: #00C853;
  --hd-amber: #FFB300;
  --hd-text: var(--srp-white, #F5F5F7);
  --hd-muted: var(--srp-gray, #888892);
  display: grid;
  grid-template-columns: 1.3fr 0.7fr;
  gap: 0;
  background: var(--hd-bg);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 20px;
  font-family: var(--srp-font-body, 'Inter', sans-serif);
  color: var(--hd-text);
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 100%; /* v4.2 — full width: alineado con el configurador inferior */
  margin: 0;
  box-shadow: 0 30px 80px rgba(0,0,0,0.6);
}
.srp-hero-dashboard * { box-sizing: border-box; margin: 0; padding: 0; }
.srp-hero-dashboard::before {
  content: '';
  position: absolute; inset: 0;
  background:
    linear-gradient(rgba(0,240,255,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,240,255,0.025) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none; z-index: 0;
}
.srp-hero-dashboard::after {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--hd-accent), transparent 70%);
  z-index: 2;
}
.srp-gts-main {
  position: relative; z-index: 1;
  padding: 56px 50px;
  display: flex; flex-direction: column; justify-content: center;
}
.srp-hd-brand { display: flex; align-items: center; gap: 22px; margin-bottom: 28px; }
.srp-gts-logo {
  width: 110px; height: auto;
  filter: drop-shadow(0 0 14px var(--hd-accent-glow));
  transition: transform 0.4s ease;
}
.srp-hero-dashboard:hover .srp-gts-logo { transform: scale(1.04); }
.srp-hd-eyebrow {
  font-family: var(--srp-font-mono, 'Share Tech Mono', monospace);
  font-size: 11px; letter-spacing: 4px; text-transform: uppercase;
  color: var(--hd-accent);
  display: inline-flex; align-items: center; gap: 10px;
  padding: 7px 16px;
  background: var(--hd-accent-dim);
  border: 1px solid var(--hd-accent-border);
  border-radius: 6px;
  width: fit-content;
}
.srp-hd-eyebrow::before { content: '>'; animation: srpGtsBlink 1.4s step-end infinite; }
@keyframes srpGtsBlink { 0%,100%{opacity:1} 50%{opacity:0} }
.srp-gts-h1 {
  font-size: clamp(40px, 5vw, 62px);
  color: var(--hd-text);
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: -2px;
  line-height: 1;
  margin: 0.67em 0 10px; /* fija el margen-top del antiguo h1: la etiqueta ahora es h2 en los heroes (single h1 por ficha) y el diseño no se mueve ni 1px */
}
.srp-gts-h1 span { color: var(--hd-accent); }
.srp-gts-sub {
  font-family: var(--srp-font-mono, monospace);
  font-size: 12px; color: var(--hd-muted);
  letter-spacing: 3px; text-transform: uppercase;
  margin-bottom: 26px;
  display: flex; align-items: center; gap: 12px;
}
.srp-gts-sub::after { content: ''; flex: 1; max-width: 120px; height: 1px; background: var(--hd-accent-border); }
.srp-gts-desc {
  font-size: 15.5px; color: #B8B8C0; line-height: 1.75;
  margin-bottom: 36px; max-width: 92%;
}
.srp-gts-desc strong { color: var(--hd-text); font-weight: 700; }
.srp-gts-specs { display: flex; gap: 12px; flex-wrap: wrap; }
.srp-gts-badge {
  background: var(--hd-surface-2);
  border: 1px solid rgba(255,255,255,0.08);
  border-left: 3px solid var(--hd-accent);
  padding: 12px 18px;
  font-size: 11.5px; font-weight: 700; color: var(--hd-text);
  text-transform: uppercase; letter-spacing: 1.2px;
  display: flex; align-items: center; gap: 10px;
  border-radius: 8px;
  transition: all 0.3s cubic-bezier(0.25,1,0.5,1);
  cursor: default;
}
.srp-gts-badge:hover { background: var(--hd-accent-dim); transform: translateX(4px); }
.srp-gts-badge i {
  width: 7px; height: 7px;
  background: var(--hd-accent);
  transform: skewX(-15deg);
  flex-shrink: 0;
  box-shadow: 0 0 8px var(--hd-accent-glow);
}
.srp-gts-side {
  position: relative; z-index: 1;
  display: flex; flex-direction: column; gap: 18px;
  background: rgba(255,255,255,0.015);
  border-left: 1px solid rgba(255,255,255,0.07);
  padding: 56px 40px;
}
.srp-status-pill {
  background: rgba(0,200,83,0.10);
  color: var(--hd-green);
  padding: 14px 20px;
  border-radius: 10px;
  font-family: var(--srp-font-mono, monospace);
  font-size: 13px; font-weight: 800; letter-spacing: 3px;
  display: flex; align-items: center; justify-content: center; gap: 14px;
  border: 1px solid rgba(0,200,83,0.35);
  text-transform: uppercase;
}
.srp-gts-pulse { position: relative; width: 12px; height: 12px; flex-shrink: 0; }
.srp-gts-pulse-dot { position: absolute; inset: 2px; background: var(--hd-green); border-radius: 50%; }
.srp-gts-pulse-ring {
  position: absolute; inset: 0;
  border: 2px solid var(--hd-green); border-radius: 50%;
  animation: srpGtsPulse 1.8s ease-out infinite;
}
@keyframes srpGtsPulse { 0%{transform:scale(0.6);opacity:1} 100%{transform:scale(1.8);opacity:0} }
.srp-hd-facts { display: flex; flex-direction: column; gap: 10px; }
.srp-hd-fact {
  display: flex; align-items: center; justify-content: space-between;
  background: var(--hd-surface-2);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 10px;
  padding: 13px 18px;
  font-size: 12.5px;
  transition: border-color 0.25s ease;
}
.srp-hd-fact:hover { border-color: var(--hd-accent-border); }
.srp-hd-fact span { color: var(--hd-muted); font-weight: 500; display: flex; align-items: center; gap: 9px; }
.srp-hd-fact span svg { width: 16px; height: 16px; color: var(--hd-accent); }
.srp-hd-fact strong { color: var(--hd-text); font-weight: 700; font-family: var(--srp-font-mono, monospace); font-size: 12px; }
.srp-cockpit-warning {
  background: rgba(255,179,0,0.06);
  border: 1px solid rgba(255,179,0,0.28);
  border-left: 4px solid var(--hd-amber);
  border-radius: 12px;
  padding: 20px 22px;
}
.srp-cockpit-warning .warning-header {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 12px;
}
.srp-cockpit-warning .warning-icon { width: 20px; height: 20px; flex-shrink: 0; color: var(--hd-amber); }
.srp-cockpit-warning .warning-header strong {
  color: var(--hd-amber);
  font-size: 11.5px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase;
}
.srp-cockpit-warning p { color: #C9C9D2; font-size: 13px; line-height: 1.65; margin-bottom: 14px; }
.srp-cockpit-warning p strong { color: var(--hd-text); }
.srp-req-link {
  display: inline-flex; align-items: center; gap: 8px;
  color: var(--hd-accent); font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 1.5px;
  text-decoration: none;
  transition: gap 0.25s ease;
}
.srp-req-link::after { content: '→'; transition: transform 0.25s ease; }
.srp-req-link:hover { gap: 12px; }
.srp-req-link:focus-visible { outline: 2px solid var(--hd-accent); outline-offset: 3px; border-radius: 4px; }
.srp-reviews-teaser {
  background: var(--hd-surface-2);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 12px;
  padding: 20px 22px;
  display: flex; flex-direction: column; gap: 14px;
  margin-top: auto;
}
.srp-rt-text { font-size: 13px; color: var(--hd-muted); line-height: 1.5; }
.srp-rt-btn {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  background: transparent;
  color: var(--hd-accent);
  border: 1px solid rgba(0,240,255,0.4);
  padding: 13px 18px;
  border-radius: 10px;
  font-size: 12px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25,1,0.5,1);
}
.srp-rt-btn svg { width: 16px; height: 16px; fill: currentColor; transition: transform 0.25s ease; }
.srp-rt-btn:hover {
  background: var(--hd-accent); color: #0A0A0F;
  box-shadow: 0 6px 25px var(--hd-accent-glow);
  transform: translateY(-2px);
}
.srp-rt-btn:hover svg { transform: translateX(3px); }
.srp-rt-btn:focus-visible { outline: 2px solid var(--hd-accent); outline-offset: 3px; }
@media (max-width: 1024px) {
  .srp-hero-dashboard { grid-template-columns: 1fr; }
  .srp-gts-side { border-left: none; border-top: 1px solid rgba(255,255,255,0.07); padding: 36px 30px; }
  .srp-gts-main { padding: 40px 30px; }
  .srp-gts-desc { max-width: 100%; }
}
@media (max-width: 600px) {
  .srp-hd-brand { flex-direction: column; align-items: flex-start; gap: 16px; }
  .srp-gts-logo { width: 84px; }
  .srp-gts-specs { gap: 8px; }
  .srp-gts-badge { padding: 10px 14px; font-size: 10.5px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   15. GT-S CONFIGURATOR SECTION v2.0 — LIGHT EDITION
       (add-to-cart + YITH WAPO + VAT notice + financing + DNA)
   ───────────────────────────────────────────────────────────────────────────
   ▸ La página de producto tiene fondo BLANCO: esta sección es tema claro.
     (v1.0 dark era errónea — eliminada en v4.4)
   ▸ Naranja oficial unificado: var(--srp-orange) #FF6D00 (antes #FF6D00).
   ▸ Las imágenes de producto tienen fondo blanco → tarjetas blancas limpias.
   ▸ CONSERVADO íntegro: parche iOS anti-dead-clicks (touch-action,
     -webkit-tap-highlight-color, input overlay opacity 0.01, z-index).
   ▸ Migrado desde: custom_css del widget add-to-cart (7.4k chars) + 3 bloques
     esos bloques DEBEN ELIMINARSE.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 15.1 Botón ADD TO CART — v5.1 Premium CTA ─────────────────────────
   Gradiente profundo + shine sweep + pulso de glow. El punto de conversión
   de la página: debe sentirse como el gatillo de algo serio. ──────────── */
.single_add_to_cart_button {
  background: linear-gradient(135deg, #FF7A1A 0%, var(--srp-orange) 45%, #D95300 100%) !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: var(--srp-font-body) !important;
  font-size: 0 !important; /* el texto lo pinta ::before */
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 2.5px !important;
  padding: 22px 46px !important;
  box-shadow:
    0 10px 30px rgba(255,109,0,0.35),
    0 2px 6px rgba(0,0,0,0.12),
    inset 0 1px 0 rgba(255,255,255,0.25) !important;
  transition: all 0.35s cubic-bezier(0.23,1,0.32,1) !important;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  z-index: 10 !important;                /* iOS: basta contexto local — el header vive en capa 1000 (sec. 03) */
  touch-action: manipulation !important; /* iOS: elimina retraso 300ms */
  animation: srpCtaGlow 2.8s ease-in-out infinite;
}
/* Texto del botón */
.single_add_to_cart_button::before {
  content: 'ADD TO CART';
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 16px !important;
  font-weight: 800;
  text-shadow: 0 1px 3px rgba(0,0,0,0.25);
}
/* Icono de carrito tras el texto */
.single_add_to_cart_button::after {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-left: 10px;
  vertical-align: -3px;
  background: #FFFFFF;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1.5'/%3E%3Ccircle cx='19' cy='21' r='1.5'/%3E%3Cpath d='M2.5 3h2l2.6 12.5a2 2 0 0 0 2 1.5h8.7a2 2 0 0 0 2-1.6L21.5 7H6'/%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='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='21' r='1.5'/%3E%3Ccircle cx='19' cy='21' r='1.5'/%3E%3Cpath d='M2.5 3h2l2.6 12.5a2 2 0 0 0 2 1.5h8.7a2 2 0 0 0 2-1.6L21.5 7H6'/%3E%3C/svg%3E") center/contain no-repeat;
}
/* Shine sweep — destello que cruza el botón */
.single_add_to_cart_button .srp-cta-shine,
.single_add_to_cart_button:hover::before { animation: none; }
.single_add_to_cart_button:hover {
  transform: translateY(-3px) !important;
  box-shadow:
    0 18px 40px rgba(255,109,0,0.45),
    0 4px 10px rgba(0,0,0,0.15),
    inset 0 1px 0 rgba(255,255,255,0.3) !important;
  filter: brightness(1.07);
}
.single_add_to_cart_button:active {
  transform: translateY(-1px) scale(0.99) !important;
  box-shadow: 0 6px 18px rgba(255,109,0,0.35) !important;
}
/* Capa de brillo que se desplaza en hover (via background extra) */
.single_add_to_cart_button {
  background-image:
    linear-gradient(115deg, transparent 30%, rgba(255,255,255,0.22) 48%, rgba(255,255,255,0.32) 50%, rgba(255,255,255,0.22) 52%, transparent 70%),
    linear-gradient(135deg, #FF7A1A 0%, var(--srp-orange) 45%, #D95300 100%) !important;
  background-size: 250% 100%, 100% 100% !important;
  background-position: 120% 0, 0 0 !important;
  transition: all 0.35s cubic-bezier(0.23,1,0.32,1), background-position 0.9s ease !important;
}
.single_add_to_cart_button:hover {
  background-position: -80% 0, 0 0 !important;
}
/* Pulso de glow ambiente */
@keyframes srpCtaGlow {
  0%, 100% { box-shadow: 0 10px 30px rgba(255,109,0,0.35), 0 2px 6px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25); }
  50%      { box-shadow: 0 10px 42px rgba(255,109,0,0.55), 0 2px 6px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.25); }
}
@media (prefers-reduced-motion: reduce) {
  .single_add_to_cart_button { animation: none !important; }
}
/* Móvil: ancho completo, fácil de pulsar */
@media (max-width: 768px) {
  .single_add_to_cart_button {
    width: 100% !important;
    padding: 20px 24px !important;
    letter-spacing: 2px !important;
  }
  .single_add_to_cart_button::before { font-size: 15px !important; }
}

/* ── 15.2 Calculadora de envío ───────────────────────────────────────── */
.pisol-shipping-calculator-button {
  margin-top: 15px;
  background: #111111 !important;
  color: #FFFFFF !important;
  border: none !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  width: 100% !important;
  padding: 12px !important;
  transition: 0.3s ease;
  letter-spacing: 1px;
}
.pisol-shipping-calculator-button:hover { background: var(--srp-orange) !important; }

/* ── 15.3 Configurador YITH WAPO — tarjetas compactas horizontales ─────
   v5.0 — layout profesional: imagen izquierda + info derecha.
   Menos scroll, más denso, sensación premium. ─────────────────────────── */
.yith-wapo-block .yith-wapo-addon { margin-bottom: 26px !important; }

.wapo-addon-title,
.yith-wapo-group h5 {
  font-family: var(--srp-font-body) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  color: #111111 !important;
  border-left: 4px solid var(--srp-orange) !important;
  padding-left: 14px !important;
  margin: 24px 0 10px 0 !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.yith-wapo-group .wapo-addon-description,
.yith-wapo-addon > p,
.wapo-addon-title + p {
  color: #555555 !important;
  font-size: 14px !important;
  line-height: 1.55;
  margin-bottom: 14px !important;
}

/* Opciones en fila (grid) para aprovechar el ancho */
/* v5.5 — Cada opción ocupa TODO el ancho disponible (anula el ancho
   fijo/inline que YITH asigna a las opciones y que las hacía estrechas) */
.yith-wapo-addon .yith-wapo-option,
.yith-wapo-block .yith-wapo-option,
.yith-wapo-option {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-bottom: 12px !important;
  float: none !important;
  clear: both !important;
  display: block !important;
}
/* El label/envoltorio que YITH usa para el ancho también a full */
.yith-wapo-option label,
.yith-wapo-option .wapo-option-label { width: 100% !important; max-width: 100% !important; }

/* Tarjeta HORIZONTAL: imagen | info — a todo el ancho */
.yith-wapo-option .product-container {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  width: 100% !important;
  border: 1px solid #E5E5E5 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: #FFFFFF !important;
  border-radius: 10px;
  transition: all 0.3s ease !important;
  position: relative !important;
  overflow: hidden;
  cursor: pointer !important;
  touch-action: manipulation !important;             /* iOS tap instantáneo */
  -webkit-tap-highlight-color: transparent !important; /* iOS sin parpadeo gris */
}
.yith-wapo-option:hover .product-container {
  border-color: rgba(255,109,0,0.45) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
}

/* Imagen compacta a la izquierda — anula el max-width:100px de YITH */
.yith-wapo-option .product-image,
.yith-wapo-option .product-image[style] {
  max-width: none !important;
  width: 120px !important;
  min-width: 120px;
  height: 100px;
  margin: 0 !important;
  padding: 12px !important;
  background: #FFFFFF;
  display: flex !important;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #F0F0F0;
  flex-shrink: 0;
}
.yith-wapo-option .product-image img {
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 84px !important;
  margin: 0 !important;
  display: block;
  object-fit: contain;
  transition: transform 0.5s ease;
}
.yith-wapo-option:hover .product-image img { transform: scale(1.06); }

/* Info a la derecha: nombre + precio, ocupa el resto del ancho */
.yith-wapo-option .product-info {
  padding: 14px 18px !important;
  background: #FFFFFF !important;
  border: none !important;
  text-align: left !important;
  flex: 1 1 auto;
  min-width: 0;              /* permite que el texto fluya sin partirse */
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  z-index: 2;
}
.yith-wapo-option .product-name {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin: 0 !important;
  line-height: 1.35;
  white-space: normal !important; /* que fluya, no letra a letra */
  word-break: normal !important;
  overflow-wrap: break-word;
  flex: 1 1 auto;
  min-width: 0;
}
.yith-wapo-option .option-price {
  color: var(--srp-orange) !important;
  font-weight: 900 !important;
  font-size: 17px !important;
  font-family: var(--srp-font-mono);
  white-space: nowrap;
  flex-shrink: 0;
}

/* Input invisible — selección a prueba de fallos (CONSERVADO) */
.yith-wapo-option input[type="radio"],
.yith-wapo-option input[type="checkbox"] {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  opacity: 0.01 !important; /* 0.01 más seguro que 0 en WebKit antiguo */
  cursor: pointer !important;
  z-index: 999 !important;
  margin: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  pointer-events: auto !important;
}
.yith-wapo-option label { margin: 0 !important; padding: 0 !important; }

/* Estado seleccionado */
.yith-wapo-option.selected .product-container {
  border-color: var(--srp-orange) !important;
  border-width: 2px !important;
  box-shadow: 0 6px 20px rgba(255,109,0,0.12) !important;
}
.yith-wapo-option.selected .product-container::before {
  content: '✓';
  position: absolute;
  top: 10px;
  right: 12px;
  width: 22px;
  height: 22px;
  background: var(--srp-orange);
  color: #FFFFFF;
  font-size: 12px;
  font-weight: 900;
  line-height: 22px;
  text-align: center;
  z-index: 10;
  border-radius: 50%;
}

/* Separadores YITH */
.yith-wapo-separator {
  margin: 20px 0 !important;
  border-top: 1px solid #ECECEC !important;
  opacity: 1 !important;
}

/* ── 15.4 Upgrade notice (aviso dentro del configurador) ─────────────── */
.srp-upgrade-notice {
  display: flex !important;
  align-items: center !important;
  background: #111111 !important;
  border-left: 4px solid var(--srp-orange) !important;
  padding: 18px 24px !important;
  margin: 40px 0 30px 0 !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important;
}
.srp-notice-icon {
  flex-shrink: 0 !important;
  width: 32px !important;
  height: 32px !important;
  margin-right: 20px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.srp-notice-icon svg {
  width: 100% !important;
  height: 100% !important;
  color: var(--srp-orange);
  animation: srp-pulse-icon 2s infinite cubic-bezier(0.4,0,0.6,1);
}
.srp-notice-content { display: flex !important; flex-direction: column !important; }
.srp-notice-title {
  font-family: var(--srp-font-body) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  color: #FFFFFF !important;
  margin: 0 0 6px 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}
.srp-notice-desc {
  font-family: var(--srp-font-body) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #AAAAAA !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}
@keyframes srp-pulse-icon {
  0% { opacity: 1; }
  50% { opacity: 0.6; filter: drop-shadow(0 0 6px rgba(255,109,0,0.8)); }
  100% { opacity: 1; }
}
.srp-tax-notice {
  font-weight: 600;
  color: #999999;
  font-size: 11px !important;
  text-align: center;
  display: block;
}

/* ── 15.5 VAT notice — caja blanca con acento naranja ────────────────── */
.srp-vat-notice-box {
  width: 100%;
  padding: 15px 20px;
  font-family: var(--srp-font-body);
  background: #FAFAFA;
  border: 1px solid #E8E8E8;
  border-left: 3px solid var(--srp-orange);
  border-radius: 6px;
  margin-top: 15px;
  box-sizing: border-box;
}
.srp-vat-content { display: flex; align-items: center; gap: 10px; margin-bottom: 5px; }
.srp-vat-icon {
  font-size: 12px;
  font-family: var(--srp-font-mono);
  font-weight: 900;
  color: var(--srp-orange);
  border: 1.5px solid var(--srp-orange);
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  flex-shrink: 0;
}
.srp-vat-text {
  color: #111111;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.srp-vat-info-extra {
  color: #555555;
  font-size: 12px;
  line-height: 1.4;
  padding-left: 28px;
}

/* ── 15.6 Global Financing — Klarna / Aplazame / SeQura ──────────────── */
.srp-finance-section {
  position: relative;
  width: 100%;
  padding: 40px 20px;
  background-color: transparent;
  font-family: var(--srp-font-body);
  border-top: 1px solid #EEEEEE;
}
.srp-finance-header { text-align: center; margin-bottom: 30px; }
.srp-finance-header h2 {
  color: #111111;
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 0;
}
.srp-finance-header h2 span { color: var(--srp-orange); }
.srp-finance-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
.srp-finance-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #FFFFFF;
  border: 1px solid #E5E5E5;
  border-radius: 8px;
  padding: 30px 20px;
  text-decoration: none;
  position: relative;
  transition: all 0.3s cubic-bezier(0.165,0.84,0.44,1);
  overflow: hidden;
}
.srp-finance-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background-color: var(--srp-orange);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s ease-out;
  z-index: 2;
}
.srp-finance-card:hover {
  border-color: rgba(255,109,0,0.35);
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.1);
}
.srp-finance-card:hover::before { transform: scaleX(1); }
.srp-finance-logo {
  height: 40px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 15px;
}
.srp-finance-logo img {
  max-height: 100%;
  max-width: 140px;
  object-fit: contain;
  filter: grayscale(100%) opacity(0.6);
  transition: filter 0.4s ease, transform 0.4s ease;
}
.srp-finance-card:hover .srp-finance-logo img {
  filter: grayscale(0%) opacity(1);
  transform: scale(1.05);
}
.srp-finance-info { text-align: center; }
.srp-finance-info h3 {
  color: #111111;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 1.5px;
  margin: 0 0 6px 0;
  text-transform: uppercase;
}
.srp-finance-info p { color: #777777; font-size: 11px; line-height: 1.4; margin: 0; }

/* ── 15.7 DNA container — texto ingeniería SEO (fondo claro) ─────────── */
.srp-dna-container {
  background-color: transparent;
  color: #111111;
  padding: 70px 50px;
  font-family: var(--srp-font-body);
  max-width: 1000px;
  margin: 0 auto;
}
.srp-dna-header {
  margin-bottom: 50px;
  border-bottom: 1px solid #E5E5E5;
  padding-bottom: 25px;
}
.srp-dna-header h2 {
  font-size: 30px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -0.5px;
  margin: 0 0 12px 0;
  line-height: 1.1;
  color: #111111;
}
.srp-dna-header h2 span {
  color: var(--srp-orange);
  display: block;
  font-size: 24px;
  letter-spacing: 1px;
}
.srp-dna-header h3 {
  font-size: 14px;
  font-weight: 400;
  color: #888888;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin: 10px 0 0 0;
  font-family: var(--srp-font-mono);
}
.srp-dna-content p {
  font-size: 17px;
  line-height: 1.8;
  color: #444444;
  margin-bottom: 30px;
  position: relative;
  padding-left: 25px;
  border-left: 2px solid #E5E5E5;
  transition: all 0.4s ease;
}
.srp-dna-content p:hover {
  border-left-color: var(--srp-orange);
  color: #111111;
  background: linear-gradient(to right, rgba(255,109,0,0.05), transparent);
}
.srp-dna-content strong {
  color: #111111;
  font-weight: 800;
  border-bottom: 1px solid rgba(255,109,0,0.3);
}

/* ── 15.8 Responsive configurador ────────────────────────────────────── */
@media (max-width: 768px) {
  .yith-wapo-option .product-image,
  .yith-wapo-option .product-image[style] { width: 100px !important; min-width: 100px; height: 90px; padding: 8px !important; }
  .yith-wapo-option .product-image img { max-height: 72px !important; }
  .yith-wapo-option .product-info { padding: 12px 14px !important; gap: 10px; }
  .yith-wapo-option .product-name { font-size: 14px !important; }
  .yith-wapo-option .option-price { font-size: 16px !important; }
  .srp-upgrade-notice { flex-direction: column !important; align-items: flex-start !important; padding: 15px !important; }
  .srp-notice-icon { margin-bottom: 12px !important; width: 24px !important; height: 24px !important; }
  .srp-vat-notice-box { padding: 12px 15px; }
  .srp-vat-text { font-size: 13px; }
  .srp-vat-info-extra { font-size: 11px; padding-left: 28px; }
  .srp-finance-grid { grid-template-columns: 1fr; gap: 10px; }
  .srp-finance-card { flex-direction: row; justify-content: flex-start; padding: 20px; }
  .srp-finance-logo { width: 80px; margin-bottom: 0; margin-right: 20px; justify-content: flex-start; }
  .srp-finance-info { text-align: left; }
  .srp-finance-card::before { top: 0; left: 0; bottom: 0; right: auto; height: 100%; width: 3px; transform: scaleY(0); }
  .srp-finance-card:hover::before { transform: scaleY(1); }
  .srp-dna-container { padding: 50px 20px; }
  .srp-dna-header h2 { font-size: 24px; }
  .srp-dna-header h2 span { font-size: 18px; }
  .srp-dna-content p { font-size: 16px; padding-left: 15px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   16. GT-S GALLERY v2.0 — CINEMATIC VIEWER (CYAN EDITION)
       (widget HTML de Elementor — sustituye al widget gallery básico)
   ───────────────────────────────────────────────────────────────────────────
   ▸ Visor principal con esquinas HUD, scanline, contador y barra de progreso.
   ▸ Cyan #00F0FF (--srp-cyan-gts) = identidad del modelo GT-S.
   ▸ Navegación: thumbnails, flechas, teclado (←/→/Esc), swipe táctil,
     autoplay con pausa en hover, lightbox a pantalla completa.
   ▸ El JS vive inline en el widget (SRP_GTS_Gallery_v2.1.html).
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-gallery {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  font-family: var(--srp-font-body);
  --gal-cyan: var(--srp-cyan-gts, #00F0FF);
  --gal-cyan-dim: rgba(0,240,255,0.12);
  --gal-cyan-glow: rgba(0,240,255,0.35);
  --gal-bg: #0B0B10;
}

/* ── Visor principal ── */
.srp-gal-stage { position: relative; }
.srp-gal-frame {
  position: relative;
  background: var(--gal-bg);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  overflow: hidden;
  aspect-ratio: 1/1;
  box-shadow: 0 24px 60px rgba(0,0,0,0.4);
}
.srp-gal-main {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  padding: 30px;
  box-sizing: border-box;
  cursor: zoom-in;
  transition: opacity 0.18s ease;
}

/* Esquinas HUD */
.srp-gal-corner {
  position: absolute;
  width: 26px; height: 26px;
  border-color: var(--gal-cyan);
  border-style: solid;
  border-width: 0;
  z-index: 3;
  opacity: 0.9;
}
.srp-gal-corner.tl { top: 12px; left: 12px; border-top-width: 2px; border-left-width: 2px; }
.srp-gal-corner.tr { top: 12px; right: 12px; border-top-width: 2px; border-right-width: 2px; }
.srp-gal-corner.bl { bottom: 12px; left: 12px; border-bottom-width: 2px; border-left-width: 2px; }
.srp-gal-corner.br { bottom: 12px; right: 12px; border-bottom-width: 2px; border-right-width: 2px; }

/* Scanline sutil */
.srp-gal-scan {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 0%, var(--gal-cyan-dim) 50%, transparent 100%);
  background-size: 100% 220%;
  animation: srpGalScan 6s linear infinite;
  pointer-events: none;
  opacity: 0.5;
}
@keyframes srpGalScan { 0%{background-position:0 -120%} 100%{background-position:0 120%} }

/* HUD inferior: contador + modelo */
.srp-gal-hud {
  position: absolute;
  left: 18px; right: 18px; bottom: 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 3;
  pointer-events: none;
}
.srp-gal-counter {
  font-family: var(--srp-font-mono);
  font-size: 13px;
  letter-spacing: 2px;
  color: var(--gal-cyan);
  background: rgba(0,0,0,0.45);
  border: 1px solid var(--gal-cyan-glow);
  border-radius: 6px;
  padding: 4px 12px;
}
.srp-gal-model {
  font-family: var(--srp-font-mono);
  font-size: 10px;
  letter-spacing: 3px;
  color: rgba(255,255,255,0.65);
  text-transform: uppercase;
}

/* Flechas */
.srp-gal-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 46px; height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.15);
  background: rgba(0,0,0,0.45);
  color: #FFF;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  z-index: 4;
  transition: all 0.25s ease;
  display: flex; align-items: center; justify-content: center;
}
.srp-gal-nav:hover { background: var(--gal-cyan); color: #0A0A0F; border-color: var(--gal-cyan); box-shadow: 0 0 20px var(--gal-cyan-glow); }
.srp-gal-nav.prev { left: 16px; }
.srp-gal-nav.next { right: 16px; }

/* Botón zoom */
.srp-gal-zoom {
  position: absolute;
  top: 14px; right: 16px;
  width: 40px; height: 40px;
  border-radius: 8px;
  border: 1px solid rgba(255,255,255,0.15);
  background: rgba(0,0,0,0.45);
  color: #FFF;
  font-size: 18px;
  cursor: pointer;
  z-index: 4;
  transition: all 0.25s ease;
}
.srp-gal-zoom:hover { background: var(--gal-cyan); color: #0A0A0F; border-color: var(--gal-cyan); }

/* Barra de progreso */
.srp-gal-progress {
  height: 3px;
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
  margin-top: 12px;
  overflow: hidden;
}
.srp-gal-progress span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--gal-cyan), rgba(0,240,255,0.5));
  border-radius: 2px;
  transition: width 0.4s cubic-bezier(0.25,1,0.5,1);
}

/* ── Thumbnails ── */
.srp-gal-thumbs {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 10px;
  margin-top: 16px;
}
.srp-gal-thumb {
  position: relative;
  aspect-ratio: 1/1;
  background: #FFFFFF;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 8px;
  overflow: hidden;
  cursor: pointer;
  padding: 6px;
  transition: all 0.25s ease;
  opacity: 0.55;
}
.srp-gal-thumb img { width: 100%; height: 100%; object-fit: contain; }
.srp-gal-thumb:hover { opacity: 0.85; transform: translateY(-2px); }
.srp-gal-thumb.active {
  opacity: 1;
  border-color: var(--gal-cyan);
  box-shadow: 0 0 0 1px var(--gal-cyan), 0 6px 18px rgba(0,240,255,0.18);
}
.srp-gal-thumb.active::after {
  content: '';
  position: absolute;
  top: 6px; right: 6px;
  width: 8px; height: 8px;
  background: var(--gal-cyan);
  border-radius: 50%;
  box-shadow: 0 0 8px var(--gal-cyan-glow);
}

/* ── Lightbox ── */
.srp-gal-lightbox {
  position: fixed;
  inset: 0;
  background: rgba(5,5,10,0.96);
  backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s;
}
.srp-gal-lightbox.open { opacity: 1; visibility: visible; }
.srp-gal-lb-img {
  max-width: 88vw;
  max-height: 84vh;
  object-fit: contain;
  border-radius: 8px;
  box-shadow: 0 30px 90px rgba(0,0,0,0.6);
  cursor: zoom-in;
}
.srp-gal-lb-close {
  position: absolute;
  top: 24px; right: 28px;
  width: 48px; height: 48px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.2);
  background: rgba(255,255,255,0.06);
  color: #FFF;
  font-size: 26px;
  cursor: pointer;
  transition: all 0.25s ease;
  z-index: 5;
}
.srp-gal-lb-close:hover { background: var(--gal-cyan); color: #0A0A0F; border-color: var(--gal-cyan); transform: rotate(90deg); }
.srp-gal-lb-counter {
  position: absolute;
  bottom: 26px; left: 50%;
  transform: translateX(-50%);
  font-family: var(--srp-font-mono);
  font-size: 13px;
  letter-spacing: 2px;
  color: var(--gal-cyan);
  background: rgba(0,0,0,0.5);
  border: 1px solid var(--gal-cyan-glow);
  border-radius: 6px;
  padding: 5px 14px;
}

/* ── Responsive galería ── */
@media (max-width: 900px) {
  .srp-gal-thumbs { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 600px) {
  .srp-gal-frame { aspect-ratio: 1/1; }
  .srp-gal-main { padding: 16px; }
  .srp-gal-nav { width: 40px; height: 40px; font-size: 20px; }
  .srp-gal-nav.prev { left: 10px; }
  .srp-gal-nav.next { right: 10px; }
  .srp-gal-model { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .srp-gal-scan { animation: none; opacity: 0; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   17. GT-S PRODUCT BODY (srp-pb-*) — CYAN EDITION
       (contenido inferior de la página GT-S: Overview, Standard, Technology,
        MySETUP, Pneumatic vs, Specs, Compare, Requirements, Reviews,
        Ecosystem, Support)
   ───────────────────────────────────────────────────────────────────────────
   ▸ Tema OSCURO cyan GT-S (--srp-cyan-gts) — coherente con el dashboard.
   ▸ Reconstruido desde cero (el CSS srp-pb-* original no existía).
   ▸ Responsive completo: desktop / tablet (≤991px) / móvil (≤767px).
   ▸ NO contiene la cadena literal de etiqueta de estilo (rompe el HTML).
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-pb--gts {
  --pb-cyan: var(--srp-cyan-gts, #00F0FF);
  --pb-cyan-dim: rgba(0,240,255,0.10);
  --pb-cyan-glow: rgba(0,240,255,0.30);
  --pb-bg: var(--srp-black, #0A0A0F);
  --pb-surface: var(--srp-charcoal, #141419);
  --pb-surface-2: var(--srp-surface, #1A1A20);
  --pb-text: var(--srp-white, #F5F5F7);
  --pb-muted: #A0A0A8;
  --pb-line: rgba(255,255,255,0.07);
  --pb-green: #00C853;
  --pb-amber: #FFB300;
  --pb-red: #E63946;
}

/* ── Contenedor base ── */
.srp-pb-section {
  background: var(--pb-bg);
  color: var(--pb-text);
  font-family: var(--srp-font-body);
  padding: 90px 24px;
  position: relative;
  overflow: hidden;
}
.srp-pb-section--alt { background: var(--pb-surface); border-top: 1px solid var(--pb-line); }
.srp-pb-container { max-width: 1200px; margin: 0 auto; position: relative; }
.srp-pb-section * { box-sizing: border-box; }

/* ── Subnav (barra de anclas) ── */
.srp-pb-subnav {
  position: sticky; top: 56px; z-index: 80; /* v6.0: se ancla DEBAJO del topbar (antes top:0/z-100 se montaba sobre el header) */
  background: rgba(10,10,15,0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--pb-cyan-glow);
}
.srp-pb-subnav-inner {
  max-width: 1200px; margin: 0 auto;
  display: flex; gap: 4px; flex-wrap: wrap;
  padding: 12px 24px; justify-content: center;
}
.srp-pb-subnav a {
  color: var(--pb-muted); text-decoration: none;
  font-family: var(--srp-font-mono); font-size: 11px;
  letter-spacing: 1.5px; text-transform: uppercase;
  padding: 7px 14px; border-radius: 6px;
  transition: all 0.25s ease; white-space: nowrap;
}
.srp-pb-subnav a:hover { color: var(--pb-cyan); background: var(--pb-cyan-dim); }

/* ── Tipografía / headers ── */
.srp-pb-header { margin-bottom: 48px; }
.srp-pb-header--center { text-align: center; }
.srp-pb-kicker {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--srp-font-mono); font-size: 11px;
  letter-spacing: 3px; text-transform: uppercase;
  color: var(--pb-cyan); background: var(--pb-cyan-dim);
  border: 1px solid var(--pb-cyan-glow);
  padding: 6px 16px; border-radius: 6px; margin-bottom: 18px;
}
.srp-pb-h2 {
  font-size: clamp(26px, 3.5vw, 42px); font-weight: 900;
  text-transform: uppercase; letter-spacing: -1px;
  line-height: 1.1; margin: 0 0 16px; color: var(--pb-text);
}
.srp-pb-h3-accent { color: var(--pb-cyan); }
.srp-pb-lead { font-size: 17px; line-height: 1.7; color: var(--pb-muted); max-width: 720px; }
.srp-pb-header--center .srp-pb-lead { margin: 0 auto; }
.srp-pb-intro { font-size: 16px; line-height: 1.7; color: var(--pb-muted); }
.srp-pb-sub-intro { font-size: 14px; color: var(--pb-muted); }
.srp-pb-label {
  font-family: var(--srp-font-mono); font-size: 11px;
  letter-spacing: 2px; text-transform: uppercase; color: var(--pb-cyan);
  display: block; margin-bottom: 12px;
}
.srp-pb-hero-title {
  font-size: clamp(34px, 5vw, 58px); font-weight: 900;
  text-transform: uppercase; letter-spacing: -1.5px;
  line-height: 1.05; margin: 0 0 18px; color: var(--pb-text);
}

/* ── Split (texto + media) ── */
.srp-pb-split {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 60px; align-items: center;
}

/* ── Grids ── */
.srp-pb-grid { display: grid; gap: 24px; margin-top: 20px; }
.srp-pb-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.srp-pb-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.srp-pb-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

/* ── Cards ── */
.srp-pb-card {
  background: var(--pb-surface-2);
  border: 1px solid var(--pb-line);
  border-radius: 14px;
  padding: 28px 26px;
  transition: all 0.3s cubic-bezier(0.25,1,0.5,1);
  text-decoration: none; color: inherit; display: block;
}
.srp-pb-card:hover {
  transform: translateY(-4px);
  border-color: var(--pb-cyan-glow);
  box-shadow: 0 16px 40px rgba(0,0,0,0.4);
}
.srp-pb-card h3 { font-size: 17px; font-weight: 800; text-transform: uppercase; margin: 0 0 10px; color: var(--pb-text); letter-spacing: 0.5px; }
.srp-pb-card p { font-size: 14px; line-height: 1.65; color: var(--pb-muted); margin: 0; }
.srp-pb-card--winner { border-color: var(--pb-cyan); box-shadow: 0 0 0 1px var(--pb-cyan), 0 16px 40px rgba(0,240,255,0.12); }
.srp-pb-icon { font-size: 28px; display: block; margin-bottom: 14px; }
.srp-pb-badge {
  display: inline-block; background: var(--pb-cyan); color: #0A0A0F;
  font-family: var(--srp-font-mono); font-size: 10px; font-weight: 800;
  letter-spacing: 1px; padding: 4px 10px; border-radius: 4px;
  text-transform: uppercase; margin-bottom: 12px;
}

/* ── Chips ── */
.srp-pb-chip {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--pb-surface-2); border: 1px solid var(--pb-line);
  border-left: 3px solid var(--pb-cyan);
  padding: 10px 16px; border-radius: 8px;
  font-size: 12.5px; font-weight: 700; color: var(--pb-text);
  text-transform: uppercase; letter-spacing: 1px; margin: 4px 6px 4px 0;
}

/* ── Media (imagen con overlay) ── */
.srp-pb-media { position: relative; border-radius: 14px; overflow: hidden; box-shadow: 0 20px 50px rgba(0,0,0,0.5); }
.srp-pb-media img { width: 100%; height: auto; display: block; }
.srp-pb-media-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(10,10,15,0.85) 100%);
}

/* ── Video ── */
.srp-pb-video { padding: 0; overflow: hidden; }
.srp-pb-video-frame { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.srp-pb-video-frame iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }
.srp-pb-video-body { padding: 20px 22px; }

/* ── Specs (mini grid de especificaciones) ── */
.srp-pb-spec {
  background: var(--pb-surface-2); border: 1px solid var(--pb-line);
  border-radius: 10px; padding: 18px 16px; text-align: center;
}
.srp-pb-spec-name { font-family: var(--srp-font-mono); font-size: 10px; color: var(--pb-cyan); text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 8px; }
.srp-pb-spec-value { font-size: 15px; font-weight: 800; color: var(--pb-text); line-height: 1.3; }
.srp-pb-spec-sub { display: block; font-size: 11px; color: var(--pb-muted); margin-top: 6px; }

/* ── Tabla ── */
.srp-pb-table-wrap { overflow-x: auto; border-radius: 12px; border: 1px solid var(--pb-line); }
.srp-pb-table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 560px; }
.srp-pb-table thead th {
  background: var(--pb-surface); color: var(--pb-cyan);
  font-family: var(--srp-font-mono); font-size: 11px;
  text-transform: uppercase; letter-spacing: 1.5px;
  padding: 16px 18px; text-align: left; border-bottom: 2px solid var(--pb-cyan-glow);
}
.srp-pb-table tbody td { padding: 14px 18px; border-bottom: 1px solid var(--pb-line); color: var(--pb-text); }
.srp-pb-table tbody tr:nth-child(even) { background: rgba(255,255,255,0.015); }
.srp-pb-table tbody tr:hover { background: var(--pb-cyan-dim); }

/* ── VS (comparativa) ── */
.srp-pb-vs-row {
  display: grid; grid-template-columns: 200px 1fr 1fr;
  gap: 20px; align-items: start;
  padding: 20px 0; border-bottom: 1px solid var(--pb-line);
}
.srp-pb-vs-row:last-child { border-bottom: none; }
.srp-pb-vs-label { font-family: var(--srp-font-mono); font-size: 12px; color: var(--pb-cyan); text-transform: uppercase; letter-spacing: 1.5px; font-weight: 700; }
.srp-pb-vs-row p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--pb-muted); }
.srp-pb-vs-advantage { color: var(--pb-text) !important; }
.srp-pb-vs-advantage strong { color: var(--pb-cyan); }

/* ── VS dentro de cards (comparativa en grid de 4): etiqueta encima del texto ──
   La fila genérica de 3 columnas (200px 1fr 1fr) está pensada para filas
   independientes a todo lo ancho; dentro de una card fuerza un ancho mínimo
   que desborda el grid y corta la última tarjeta en escritorio. */
.srp-pb-card .srp-pb-vs-row {
  display: block;
  padding: 14px 0;
}
.srp-pb-card .srp-pb-vs-label { display: block; margin-bottom: 6px; }
.srp-pb-card .srp-pb-vs-row p { overflow-wrap: break-word; }

/* ── Estados (included/optional/none) ── */
.srp-pb-status--included { color: var(--pb-green); font-weight: 800; }
.srp-pb-status--optional { color: var(--pb-amber); font-weight: 800; }
.srp-pb-status--none { color: var(--pb-muted); font-weight: 600; }

/* ── Product (tarjeta de producto relacionado) ── */
.srp-pb-product { display: flex; flex-direction: column; }
.srp-pb-product-media { background: #FFF; border-radius: 10px; padding: 20px; margin-bottom: 16px; text-align: center; }
.srp-pb-product-media img { max-width: 100%; height: auto; max-height: 180px; object-fit: contain; }
.srp-pb-product-body h3 { margin: 0 0 6px; }
.srp-pb-product-price { font-family: var(--srp-font-mono); color: var(--pb-cyan); font-weight: 800; font-size: 18px; }
.srp-pb-price { font-family: var(--srp-font-mono); color: var(--pb-cyan); font-weight: 800; }

/* ── Feature label / link mini / pulse ── */
.srp-pb-feat-label { font-family: var(--srp-font-mono); font-size: 11px; color: var(--pb-cyan); text-transform: uppercase; letter-spacing: 1.5px; }
.srp-pb-link-mini {
  display: inline-flex; align-items: center; gap: 6px;
  color: var(--pb-cyan); font-size: 12px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 1.5px; text-decoration: none;
}
.srp-pb-link-mini::after { content: '→'; transition: transform 0.25s ease; }
.srp-pb-link-mini:hover::after { transform: translateX(4px); }
.srp-pb-pulse { position: relative; display: inline-block; width: 10px; height: 10px; }
.srp-pb-pulse::before { content: ''; position: absolute; inset: 0; background: var(--pb-green); border-radius: 50%; animation: srpPbPulse 1.8s ease-out infinite; }
@keyframes srpPbPulse { 0%{transform:scale(0.8);opacity:1} 100%{transform:scale(2);opacity:0} }

/* ── Alert ── */
.srp-pb-alert {
  display: flex; gap: 18px; align-items: flex-start;
  background: rgba(255,179,0,0.06); border: 1px solid rgba(255,179,0,0.28);
  border-left: 4px solid var(--pb-amber);
  border-radius: 12px; padding: 22px 24px;
}
.srp-pb-alert-icon { font-size: 26px; flex-shrink: 0; }
.srp-pb-alert h3 { margin: 0 0 8px; font-size: 16px; font-weight: 800; text-transform: uppercase; color: var(--pb-amber); }
.srp-pb-alert p { margin: 0; font-size: 14px; line-height: 1.6; color: #C9C9D2; }

/* ── CTA card ── */
.srp-pb-cta { border-color: var(--pb-cyan-glow); background: linear-gradient(135deg, var(--pb-surface-2), var(--pb-surface)); }
.srp-pb-cta:hover { box-shadow: 0 16px 40px rgba(0,240,255,0.15); }

/* ── Botones ── */
.srp-pb-btn {
  display: inline-flex; align-items: center; justify-content: center;
  height: 52px; padding: 0 32px; border-radius: 8px;
  font-weight: 800; font-size: 13px; text-transform: uppercase;
  letter-spacing: 1.5px; text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25,1,0.5,1);
}
.srp-pb-btn--primary { background: var(--pb-cyan); color: #0A0A0F !important; box-shadow: 0 6px 25px var(--pb-cyan-glow); }
.srp-pb-btn--primary:hover { transform: translateY(-2px); box-shadow: 0 12px 35px var(--pb-cyan-glow); filter: brightness(1.1); }
.srp-pb-btn--ghost { background: transparent; color: var(--pb-text) !important; border: 1px solid rgba(255,255,255,0.2); }
.srp-pb-btn--ghost:hover { border-color: var(--pb-cyan); color: var(--pb-cyan) !important; background: var(--pb-cyan-dim); }

/* ── Shortcode slot ── */
.srp-pb-shortcode-slot { margin-top: 20px; }

/* ── Reseñas de comunidad (CusRev) sobre fondo blanco ──
   El plugin Customer Reviews for WooCommerce dibuja su texto en gris/negro;
   sobre el fondo oscuro de la sección queda ilegible. Fondo blanco y
   texto base oscuro para todo el bloque #community. */
#community.srp-pb-section { background: #FFFFFF; color: #1A1A22; }
#community .srp-pb-h2 { color: #0A0A0F; }
#community .srp-pb-label { color: #008C9E; }
#community .srp-pb-shortcode-slot,
#community .cr-all-reviews-shortcode { color: #1A1A22; }
#community .cr-all-reviews-shortcode a { color: #008C9E; }

/* ═══════════════════════════════════════════════════════════════════════
   17.1 RESPONSIVE — TABLET (≤991px)
   ═══════════════════════════════════════════════════════════════════════ */
@media (max-width: 991px) {
  .srp-pb-section { padding: 70px 20px; }
  .srp-pb-split { grid-template-columns: 1fr; gap: 40px; }
  .srp-pb-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .srp-pb-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .srp-pb-vs-row { grid-template-columns: 150px 1fr; }
  .srp-pb-vs-row > *:last-child { grid-column: 2; }
  .srp-pb-subnav-inner { padding: 10px 16px; overflow-x: auto; flex-wrap: nowrap; justify-content: flex-start; -webkit-overflow-scrolling: touch; }
}

/* ═══════════════════════════════════════════════════════════════════════
   17.2 RESPONSIVE — MÓVIL (≤767px)
   ═══════════════════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
  .srp-pb-section { padding: 56px 16px; }
  .srp-pb-header { margin-bottom: 34px; }
  .srp-pb-hero-title { font-size: clamp(28px, 8vw, 36px); }
  .srp-pb-h2 { font-size: 24px; }
  .srp-pb-lead, .srp-pb-intro { font-size: 15px; }
  .srp-pb-grid--2, .srp-pb-grid--3, .srp-pb-grid--4 { grid-template-columns: 1fr; gap: 16px; }
  .srp-pb-card { padding: 22px 20px; }
  .srp-pb-vs-row { grid-template-columns: 1fr; gap: 10px; }
  .srp-pb-vs-row > *:last-child { grid-column: auto; }
  .srp-pb-table { min-width: 480px; font-size: 13px; }
  .srp-pb-table thead th, .srp-pb-table tbody td { padding: 12px 14px; }
  .srp-pb-alert { flex-direction: column; gap: 12px; padding: 18px; }
  .srp-pb-btn { width: 100%; height: 50px; }
  .srp-pb-subnav-inner { gap: 2px; }
  .srp-pb-subnav a { font-size: 10px; padding: 6px 10px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   18. GT-R PRODUCT BODY — TEMA NARANJA (--srp-orange)
       Variante de color del sistema srp-pb-* para la página del GT-R.
       ▸ Naranja #FF6D00 (--srp-orange) = color diferenciador del modelo GT-R
         (cian #00F0FF = GT-S · cada producto tiene su color propio).
       ▸ No reescribe ninguna regla: solo redefine las variables --pb-*
         bajo la clase .srp-pb--gtr. Todo el módulo srp-pb-* las hereda.
       ▸ Uso: class="srp-pb-section srp-pb--gtr" (igual que srp-pb--gts).
       ═══════════════════════════════════════════════════════════════════════════ */

.srp-pb--gtr {
  --pb-cyan: var(--srp-orange, #FF6D00);
  --pb-cyan-dim: rgba(255,109,0,0.10);
  --pb-cyan-glow: rgba(255,109,0,0.30);
  --pb-bg: var(--srp-black, #0A0A0F);
  --pb-surface: var(--srp-charcoal, #141419);
  --pb-surface-2: var(--srp-surface, #1A1A20);
  --pb-text: var(--srp-white, #F5F5F7);
  --pb-muted: #A0A0A8;
  --pb-line: rgba(255,255,255,0.07);
  --pb-green: #00C853;
  --pb-amber: #FFB300;
  --pb-red: #E63946;
}

/* Acentos del tema GT-R sobre fondo claro (sección #community con CusRev) */
.srp-pb--gtr#community .srp-pb-label { color: #B45309; }
.srp-pb--gtr#community .cr-all-reviews-shortcode a { color: #B45309; }

/* ═══════════════════════════════════════════════════════════════════════════
   19. TEMAS UNIFICADOS POR PRODUCTO — UN SOLO CSS, 4 COLORES
   ───────────────────────────────────────────────────────────────────────────
   ▸ Todos los pedales comparten la misma estructura (hero dashboard +
     bloques srp-pb-*). El color diferenciador se activa con UNA clase
     en el contenedor raíz. Nada más cambia.
   ▸ Colores de marca por modelo (decisión de marca, no mezclar):
     GT-S       → cyan     #00F0FF  (nativo en secciones 14-17)
     GT-R       → naranja  #FF6D00  (.srp-hd--gtr / .srp-pb--gtr)
     Formula-R  → rojo     #E63946  (.srp-hd--formula / .srp-pb--formula)
     Handbrake  → verde    #00E676  (.srp-hd--hb / .srp-pb--hb)
   ▸ Semánticos fijos que NO cambian con el tema:
     verde #00C853 = stock · ámbar #FFB300 = aviso.
     (Por eso el verde Handbrake es #00E676, distinto del verde stock.)
   ▸ Uso hero:  <div class="srp-hero-dashboard srp-hd--gtr">
     Uso body:  <section class="srp-pb-section srp-pb--formula">
   ▸ Las clases internas del hero (.srp-gts-main, .srp-gts-h1…) se mantienen
     por compatibilidad con la sección 14 — el nombre es histórico,
     el color lo fija la clase del contenedor.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 19A. HERO DASHBOARD · GT-R NARANJA ── */
.srp-hero-dashboard.srp-hd--gtr {
  --hd-accent: var(--srp-orange, #FF6D00);
  --hd-accent-dim: rgba(255,109,0,0.12);
  --hd-accent-glow: rgba(255,109,0,0.35);
  --hd-accent-border: rgba(255,109,0,0.3);
}
.srp-hero-dashboard.srp-hd--gtr::before {
  background:
    linear-gradient(rgba(255,109,0,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,109,0,0.025) 1px, transparent 1px);
  background-size: 28px 28px;
}

/* ── 19B. HERO DASHBOARD · FORMULA-R ROJO ── */
.srp-hero-dashboard.srp-hd--formula {
  --hd-accent: var(--srp-red, #E63946);
  --hd-accent-dim: rgba(230,57,70,0.12);
  --hd-accent-glow: rgba(230,57,70,0.35);
  --hd-accent-border: rgba(230,57,70,0.3);
}
.srp-hero-dashboard.srp-hd--formula::before {
  background:
    linear-gradient(rgba(230,57,70,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(230,57,70,0.025) 1px, transparent 1px);
  background-size: 28px 28px;
}

/* ── 19C. HERO DASHBOARD · HANDBRAKE VERDE ── */
.srp-hero-dashboard.srp-hd--hb {
  --hd-accent: #00E676;
  --hd-accent-dim: rgba(0,230,118,0.12);
  --hd-accent-glow: rgba(0,230,118,0.35);
  --hd-accent-border: rgba(0,230,118,0.3);
}
.srp-hero-dashboard.srp-hd--hb::before {
  background:
    linear-gradient(rgba(0,230,118,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,230,118,0.025) 1px, transparent 1px);
  background-size: 28px 28px;
}

/* ── 19D. PRODUCT BODY (srp-pb-*) · FORMULA-R ROJO ── */
.srp-pb--formula {
  --pb-cyan: var(--srp-red, #E63946);
  --pb-cyan-dim: rgba(230,57,70,0.10);
  --pb-cyan-glow: rgba(230,57,70,0.30);
  --pb-bg: var(--srp-black, #0A0A0F);
  --pb-surface: var(--srp-charcoal, #141419);
  --pb-surface-2: var(--srp-surface, #1A1A20);
  --pb-text: var(--srp-white, #F5F5F7);
  --pb-muted: #A0A0A8;
  --pb-line: rgba(255,255,255,0.07);
  --pb-green: #00C853;
  --pb-amber: #FFB300;
  --pb-red: #E63946;
}
.srp-pb--formula#community .srp-pb-label { color: #B91C1C; }
.srp-pb--formula#community .cr-all-reviews-shortcode a { color: #B91C1C; }

/* ── 19E. PRODUCT BODY (srp-pb-*) · HANDBRAKE VERDE ── */
.srp-pb--hb {
  --pb-cyan: #00E676;
  --pb-cyan-dim: rgba(0,230,118,0.10);
  --pb-cyan-glow: rgba(0,230,118,0.30);
  --pb-bg: var(--srp-black, #0A0A0F);
  --pb-surface: var(--srp-charcoal, #141419);
  --pb-surface-2: var(--srp-surface, #1A1A20);
  --pb-text: var(--srp-white, #F5F5F7);
  --pb-muted: #A0A0A8;
  --pb-line: rgba(255,255,255,0.07);
  --pb-green: #00C853;
  --pb-amber: #FFB300;
  --pb-red: #E63946;
}
.srp-pb--hb#community .srp-pb-label { color: #1B8A43; }
.srp-pb--hb#community .cr-all-reviews-shortcode a { color: #1B8A43; }

/* ═══════════════════════════════════════════════════════════════════════════
   20. CAJA DESCRIPCIÓN CORTA DE PRODUCTO (.srp-sd-*) — GENÉRICA
   ═══════════════════════════════════════════════════════════════════════════
   Caja oscura reutilizable para las DESCRIPCIONES CORTAS de WooCommerce
   (válida para cualquier ficha). Nace 2026-08-04 para sustituir los <style>
   inline por producto (el primero: .srp-plt-* de Custom Pedal Plates, con
   #FF5A00 legacy y slugs rotos) → el HTML de cada descripción corta queda
   SIN CSS inline y todas las fichas comparten este módulo.

   REGLAS DEL MÓDULO:
   ▸ Acentos de marca: tokens var(--srp-*) (naranja SRP, cyan GT-S, red
     Formula-R en los botones de ecosistema). Prohibido #FF5A00.
   ▸ Neutros (blancos/grises/alphas de borde): literales, como en el resto
     del master.
   ▸ Los "dots" de la paleta representan ACABADOS FÍSICOS de anodizado:
     sus colores son literales a propósito (un dot negro es negro), salvo
     los que coinciden con la marca (SRP Orange, GT-S Cyan) → token.
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-sd-box {
	background: rgba(10,10,15,0.85);
	border: 1px solid rgba(255,255,255,0.05);
	border-top: 3px solid var(--srp-orange);
	padding: 40px;
	font-family: var(--srp-font-body);
	position: relative;
	overflow: hidden;
	border-radius: 2px;
}
.srp-sd-box::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(ellipse at top right, rgba(255,109,0,0.05) 0, transparent 60%);
	pointer-events: none;
	z-index: 1;
}
.srp-sd-content { position: relative; z-index: 2; }

.srp-sd-tag {
	display: inline-block;
	color: var(--srp-orange);
	font-family: var(--srp-font-mono);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin-bottom: 20px;
	padding: 5px 12px;
	background: var(--srp-orange-dim);
	border: 1px solid rgba(255,109,0,0.3);
}
.srp-sd-title {
	color: var(--srp-white);
	font-size: 28px;
	font-weight: 900;
	text-transform: uppercase;
	margin: 0 0 15px 0;
	letter-spacing: -.5px;
}
.srp-sd-text { color: #AAAAAA; font-size: 15px; line-height: 1.7; margin: 0 0 25px 0; }
.srp-sd-text strong { color: var(--srp-white); }

.srp-sd-specs {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 15px;
	margin: 0 0 20px 0;
	padding: 0 0 0 20px;
	list-style: none;
	border-left: 2px solid var(--srp-orange-glow);
}
.srp-sd-specs li { color: var(--srp-white); font-size: 14px; font-weight: 600; display: flex; align-items: center; }
.srp-sd-specs li::before {
	content: '>';
	color: var(--srp-orange);
	font-family: var(--srp-font-mono);
	font-weight: 900;
	margin-right: 10px;
}

.srp-sd-palette {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 25px 0;
	padding: 20px 0;
	border-top: 1px dashed rgba(255,255,255,0.1);
	border-bottom: 1px dashed rgba(255,255,255,0.1);
}
.srp-sd-palette-title {
	width: 100%;
	color: #AAAAAA;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 10px;
	font-family: var(--srp-font-mono);
}
.srp-sd-dot {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: 2px solid rgba(255,255,255,0.2);
	transition: transform .2s ease, border-color .2s ease;
	cursor: help;
}
.srp-sd-dot:hover { transform: scale(1.2); border-color: #FFFFFF; }
/* Acabados físicos de anodizado — literales a propósito (ver reglas arriba) */
.srp-sd-dot.black  { background-color: #111111; }
.srp-sd-dot.silver { background-color: var(--srp-silver); }
.srp-sd-dot.orange { background-color: var(--srp-orange); }
.srp-sd-dot.red    { background-color: #E32636; }
.srp-sd-dot.blue   { background-color: #003399; }
.srp-sd-dot.cyan   { background-color: var(--srp-cyan-gts); }
.srp-sd-dot.green  { background-color: #006633; }
.srp-sd-dot.purple { background-color: #4B0082; }
.srp-sd-dot.gold   { background-color: #FFD700; }

.srp-sd-cross { padding-top: 10px; }
.srp-sd-cross-title {
	color: #AAAAAA;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 15px;
	font-family: var(--srp-font-mono);
}
.srp-sd-btn-group { display: flex; gap: 15px; flex-wrap: wrap; }
.srp-sd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 24px;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	text-decoration: none;
	transition: all .3s ease;
	clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
.srp-sd-btn.gtr { color: var(--srp-orange); border: 1px solid var(--srp-orange); }
.srp-sd-btn.gtr:hover { background: var(--srp-orange); color: #000000; box-shadow: 0 0 15px var(--srp-orange-glow); }
.srp-sd-btn.gts { color: var(--srp-cyan-gts); border: 1px solid var(--srp-cyan-gts); }
.srp-sd-btn.gts:hover { background: var(--srp-cyan-gts); color: #000000; box-shadow: 0 0 15px var(--srp-cyan-gts-glow); }
.srp-sd-btn.frm { color: var(--srp-red); border: 1px solid var(--srp-red); }
.srp-sd-btn.frm:hover { background: var(--srp-red); color: #FFFFFF; box-shadow: 0 0 15px rgba(230,57,70,0.4); }

@media (max-width: 768px) {
	.srp-sd-box { padding: 25px 20px; }
	.srp-sd-btn { width: 100%; }
}

/* Variantes con precios (nace del Foot Rest: throttle/brake, colores) */
.srp-sd-variants { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin-bottom: 30px; }
.srp-sd-var-card {
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.05);
	border-left: 3px solid var(--srp-orange);
	padding: 20px;
}
.srp-sd-var-card--red { border-left-color: var(--srp-red); }
.srp-sd-var-title {
	color: var(--srp-white);
	font-size: 16px;
	font-weight: 900;
	text-transform: uppercase;
	margin: 0 0 10px 0;
	letter-spacing: 1px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.srp-sd-var-title span { font-size: 10px; color: #AAAAAA; font-weight: 400; letter-spacing: 0; }
.srp-sd-var-list { list-style: none; padding: 0; margin: 0; }
.srp-sd-var-list li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: #AAAAAA;
	font-size: 14px;
	margin-bottom: 8px;
	border-bottom: 1px dashed rgba(255,255,255,0.1);
	padding-bottom: 6px;
}
.srp-sd-var-list li:last-child { margin-bottom: 0; border-bottom: none; padding-bottom: 0; }
.srp-sd-var-list .color { font-family: var(--srp-font-mono); text-transform: uppercase; font-weight: 700; }
.srp-sd-var-list .price { color: var(--srp-orange); font-weight: 900; font-size: 16px; }
.srp-sd-note { font-size: 12px; margin-bottom: 0; }
@media (max-width: 768px) {
	.srp-sd-variants { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   21. TECH SPECS GRID (.srp-ts-*) — GENÉRICO
   ═══════════════════════════════════════════════════════════════════════════
   Grid de tarjetas técnicas para descripciones cortas de accesorios/upgrades
   (Key Features / Materials / Kit Contents / Compatibility / Pro Tip).
   Nace 2026-08-04 migrando .srp-tech-specs-* de la ficha GT-R Clutch Kit
   (inline ~2,4KB + naranja legacy + #FF0033 hardcodeado).
   ▸ Reutiliza .srp-sd-tag (sec. 20) para el tag SYS.* — NO duplicarlo.
   ▸ Acento por defecto: var(--srp-orange). Tarjeta "Pro Tip": var(--srp-red)
     con la modificadora .srp-ts-card--tip.
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-ts {
	background: var(--srp-black);
	font-family: var(--srp-font-body);
	color: #AAAAAA;
	max-width: 1000px;
	margin: 0 auto;
	padding: 40px 20px;
}
.srp-ts-header { margin-bottom: 40px; }
.srp-ts-title {
	font-size: clamp(28px, 4vw, 36px);
	font-weight: 900;
	color: var(--srp-white);
	text-transform: uppercase;
	margin: 0 0 20px 0;
	letter-spacing: -.5px;
	line-height: 1.1;
	border-bottom: 1px solid rgba(255,255,255,0.1);
	padding-bottom: 15px;
}
.srp-ts-title span {
	display: block;
	color: var(--srp-orange);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 1px;
	margin-top: 8px;
}
.srp-ts-intro p { font-size: 15px; line-height: 1.7; margin: 0 0 15px 0; color: #AAAAAA; }

.srp-ts-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px; }
.srp-ts-card {
	background: rgba(10,10,15,0.85);
	border: 1px solid rgba(255,255,255,0.05);
	border-left: 3px solid var(--srp-orange);
	border-radius: 2px;
	padding: 30px 25px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.5);
	transition: all .3s ease;
}
.srp-ts-card:hover {
	transform: translateY(-3px);
	border-color: rgba(255,109,0,0.4);
	background: rgba(15,15,20,0.95);
	box-shadow: 0 8px 25px rgba(255,109,0,0.15);
}
.srp-ts-card h3 {
	color: var(--srp-white);
	font-size: 16px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin: 0 0 20px 0;
	display: flex;
	align-items: center;
}
.srp-ts-card h3.srp-ts-sub { margin-top: 30px; padding-top: 20px; border-top: 1px dashed rgba(255,255,255,0.1); }
.srp-ts-card p { font-size: 14px; line-height: 1.6; color: #AAAAAA; margin: 0 0 15px 0; }
.srp-ts-card ul { list-style: none; padding: 0; margin: 0; }
.srp-ts-card ul li { position: relative; padding-left: 20px; margin-bottom: 12px; font-size: 14px; line-height: 1.5; color: #AAAAAA; }
.srp-ts-card ul li:last-child { margin-bottom: 0; }
.srp-ts-card ul li::before {
	content: '>';
	position: absolute;
	left: 0;
	top: 0;
	font-family: var(--srp-font-mono);
	font-weight: 900;
	color: var(--srp-orange);
}
.srp-ts-card ul li strong { color: var(--srp-white); }

/* Tarjeta Pro Tip — acento rojo */
.srp-ts-card--tip { border-left: 3px solid var(--srp-red); background: rgba(230,57,70,0.05); }
.srp-ts-card--tip:hover { border-color: rgba(230,57,70,0.4); box-shadow: 0 8px 25px rgba(230,57,70,0.15); }
.srp-ts-card--tip h3 { color: var(--srp-red); }
.srp-ts-card--tip a {
	color: var(--srp-orange);
	text-decoration: none;
	font-weight: 900;
	border-bottom: 1px dashed var(--srp-orange);
	transition: all .3s ease;
}
.srp-ts-card--tip a:hover { color: var(--srp-white); border-color: var(--srp-white); }

@media (max-width: 768px) {
	.srp-ts-grid { grid-template-columns: 1fr; }
	.srp-ts-card { padding: 25px 20px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   /* ═══════════════════════════════════════════════════════════════════════════
   22. BLOQUES COMPARTIDOS DE FICHA — VAT · WARRANTY · BATTLE · FEATURED
   ═══════════════════════════════════════════════════════════════════════════
   Los 4 bloques que van pegados en la descripción corta de TODAS las fichas
   de accesorios (~22 páginas × ~9KB de <style> inline cada una).
   Migrados 2026-08-04: las CLASES del HTML no cambian → en cada ficha solo
   hay que BORRAR los <style>, el marcado queda igual.
   ▸ Todo el CSS queda SCOPED bajo la clase raíz de cada bloque — los
     nombres genéricos (.card-head, .label, .product-image…) NO se
     filtran al resto de la web.
   ▸ Acentos → var(--srp-orange). Fuentes → var(--srp-font-body/mono).
   ▸ Neutros (fondos claros del battle, grises) → literales.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 22.1 VAT badge ── */
.srp-vat-wrapper { background: rgba(10,10,15,0.85); border: 1px solid rgba(255,255,255,0.05); border-left: 3px solid var(--srp-orange); padding: 15px 20px; font-family: var(--srp-font-body); border-radius: 2px; margin-top: 15px; display: flex; flex-direction: column; gap: 8px; transition: all .3s ease; }
.srp-vat-wrapper:hover { background: rgba(15,15,20,0.95); border-color: rgba(255,109,0,0.2); }
.srp-vat-header { display: flex; align-items: center; gap: 10px; }
.srp-vat-badge { background: var(--srp-orange-dim); color: var(--srp-orange); font-family: var(--srp-font-mono); font-weight: 900; font-size: 11px; padding: 3px 8px; letter-spacing: 1px; border: 1px solid rgba(255,109,0,0.3); }
.srp-vat-title { color: var(--srp-white); font-size: 14px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.5px; margin: 0; }
.srp-vat-desc { color: #AAAAAA; font-size: 12px; line-height: 1.5; margin: 0; }
.srp-vat-desc strong { color: var(--srp-white); }

/* ── 22.2 Warranty ── */
.srp-warranty-container { background-color: #000000; color: var(--srp-white); padding: 40px; border-radius: 12px; font-family: var(--srp-font-body); max-width: 850px; margin: 20px auto; border: 1px solid var(--srp-orange); line-height: 1.6; }
.srp-warranty-section { margin-bottom: 35px; }
.srp-warranty-section:last-child { margin-bottom: 0; }
.srp-warranty-container h2 { color: var(--srp-white); font-size: 24px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 15px; display: flex; align-items: center; }
.srp-warranty-container h2::before { content: ""; width: 4px; height: 24px; background-color: var(--srp-orange); margin-right: 12px; display: inline-block; }
.srp-warranty-container h3 { color: var(--srp-orange); font-size: 18px; font-weight: 600; margin-bottom: 10px; text-transform: uppercase; }
.srp-warranty-container p { color: #CCCCCC; font-size: 15px; margin-bottom: 15px; }
.srp-warranty-container .srp-list { list-style: none; padding: 0; margin: 15px 0; }
.srp-warranty-container .srp-list li { background: #0A0A0A; padding: 12px 20px; border-radius: 6px; margin-bottom: 8px; border-left: 2px solid #333333; color: var(--srp-white); }
.srp-warranty-container .srp-list li strong { color: var(--srp-orange); text-transform: uppercase; font-size: 13px; margin-right: 5px; }
@media (max-width: 768px) {
	.srp-warranty-container { padding: 25px 20px; }
	.srp-warranty-container h2 { font-size: 20px; }
}

/* ── 22.3 Technology Showdown (battle) — sección CLARA a propósito ── */
.srp-battle-section { background-color: #FCFCFC; padding: 80px 20px; font-family: var(--srp-font-body); color: #000000; }
.srp-battle-header { text-align: center; margin-bottom: 60px; }
.srp-battle-section .srp-tag { color: var(--srp-orange); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 3px; display: block; margin-bottom: 10px; }
.srp-battle-header h2 { font-size: 36px; font-weight: 900; margin: 0; text-transform: uppercase; color: #000000; }
.srp-battle-header p { color: #666666; max-width: 600px; margin: 15px auto 0; font-size: 15px; }
.srp-battle-container { max-width: 1200px; margin: 0 auto; display: flex; gap: 25px; align-items: flex-start; }
.srp-battle-section .battle-card { flex: 1; background: #FFFFFF; border: 1px solid #EEEEEE; border-radius: 4px; overflow: hidden; position: relative; box-shadow: 0 5px 15px rgba(0,0,0,0.03); }
.srp-battle-section .card-head { background: #000000; color: #FFFFFF; padding: 30px 20px; text-align: center; position: relative; }
.srp-battle-section .tech-type { font-size: 10px; text-transform: uppercase; color: #888888; letter-spacing: 2px; font-weight: 700; display: block; margin-bottom: 8px; }
.srp-battle-section .tech-type.highlight { color: var(--srp-orange); }
.srp-battle-section .card-head h3 { font-size: 18px; font-weight: 800; margin: 0; text-transform: uppercase; }
.srp-battle-section .vs-circle { position: absolute; bottom: -15px; left: 50%; transform: translateX(-50%); background: var(--srp-orange); color: #FFFFFF; width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 900; }
.srp-battle-section .card-body { padding: 30px 20px 20px 20px; }
.srp-battle-section .comparison-item { margin-bottom: 15px; }
.srp-battle-section .comparison-item .label { font-size: 11px; text-transform: uppercase; color: #999999; font-weight: 700; display: block; margin-bottom: 3px; }
.srp-battle-section .comparison-item p { font-size: 13px; color: #333333; margin: 0; line-height: 1.4; }
.srp-battle-section .srp-advantage-box { background: #FAFAFA; border-top: 1px solid #EEEEEE; padding: 20px; }
.srp-battle-section .srp-advantage-box h4 { color: var(--srp-orange); font-size: 13px; font-weight: 800; text-transform: uppercase; margin: 0 0 8px 0; }
.srp-battle-section .srp-advantage-box p { font-size: 12px; color: #555555; margin: 0; font-style: italic; line-height: 1.4; }
.srp-battle-section .srp-winner-card { border: 2px solid var(--srp-orange) !important; background: #000000; color: #FFFFFF; flex: 1.1; }
.srp-battle-section .srp-winner-card .card-head { background: transparent; padding-top: 40px; }
.srp-battle-section .srp-winner-card h3 { color: #FFFFFF; font-size: 20px; }
.srp-battle-section .srp-winner-card .card-body p { color: #EEEEEE; }
.srp-battle-section .srp-winner-card .comparison-item .label { color: var(--srp-orange); }
.srp-battle-section .winner-badge { position: absolute; top: 10px; right: 10px; }
.srp-battle-section .final-verdict { background: var(--srp-orange); color: #FFFFFF; padding: 20px; text-align: center; font-weight: 700; font-size: 14px; border-radius: 2px; }
@media (max-width: 991px) {
	.srp-battle-container { flex-direction: column; gap: 30px; padding: 0 10px; }
	.srp-battle-section .battle-card { width: 100%; flex: none; }
	.srp-battle-section .srp-winner-card { order: -1; flex: none; }
	.srp-battle-header h2 { font-size: 26px; }
}

/* ── 22.4 Featured products grid ── */
.srp-featured-products { background-color: #000000; padding: 80px 20px; font-family: var(--srp-font-body); max-width: 1300px; margin: 0 auto; box-sizing: border-box; }
.srp-featured-header { text-align: center; margin-bottom: 60px; }
.srp-featured-products .srp-label { display: inline-block; color: var(--srp-orange); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: 2px; margin-bottom: 15px; border-bottom: 2px solid var(--srp-orange); padding-bottom: 4px; }
.srp-featured-header h2 { color: #FFFFFF; font-size: 36px; font-weight: 900; text-transform: uppercase; margin: 0; letter-spacing: -1px; }
.srp-featured-products .srp-products-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.srp-featured-products .srp-product-card { background: #0A0A0A; border: 1px solid #1A1A1A; text-decoration: none; transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1); display: flex; flex-direction: column; border-radius: 4px; overflow: hidden; }
.srp-featured-products .srp-product-card:hover { border-color: var(--srp-orange); transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,0.8); }
.srp-featured-products .product-image { position: relative; width: 100%; aspect-ratio: 1/1; overflow: hidden; background: #111111; }
.srp-featured-products .product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.srp-featured-products .srp-product-card:hover .product-image img { transform: scale(1.08); }
.srp-featured-products .product-tag { position: absolute; top: 15px; left: 15px; background: var(--srp-orange); color: #FFFFFF; font-size: 9px; font-weight: 900; padding: 4px 10px; text-transform: uppercase; letter-spacing: 1px; border-radius: 2px; z-index: 2; }
.srp-featured-products .product-info { padding: 25px; display: flex; flex-direction: column; flex-grow: 1; }
.srp-featured-products .product-info h3 { color: #FFFFFF; font-size: 18px; font-weight: 900; margin: 0 0 12px 0; text-transform: uppercase; letter-spacing: 0.5px; }
.srp-featured-products .product-info p { color: #888888; font-size: 14px; line-height: 1.5; margin: 0 0 25px 0; flex-grow: 1; }
.srp-featured-products .product-footer { display: flex; flex-direction: column; gap: 8px; border-top: 1px solid #1A1A1A; padding-top: 20px; }
.srp-featured-products .product-price { color: var(--srp-orange); font-size: 20px; font-weight: 900; }
.srp-featured-products .product-view { color: #FFFFFF; font-size: 11px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase; }
.srp-featured-products .srp-product-card:hover .product-view { color: var(--srp-orange); }
@media (max-width: 1100px) {
	.srp-featured-products .srp-products-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
	.srp-featured-products .srp-products-grid { grid-template-columns: 1fr; }
	.srp-featured-header h2 { font-size: 28px; }
	.srp-featured-products .srp-product-card:hover { transform: translateY(-5px); }
}

/* ═══════════════════════════════════════════════════════════════════════════
   23. BLOQUE COMPARTIDO v2 — TRUST · SHOWDOWN · ECOSYSTEM (.srp-trust/-vs/-eco)
   ═══════════════════════════════════════════════════════════════════════════
   Rediseño 2026-08-04 del apartado común de accesorios/upgrades (sustituye
   al HTML de la sec. 22 cuando se re-pegue en las fichas):
   ▸ Trust: garantía/proceso/devolución en grid de 3 tarjetas con métricas
     mono + el VAT badge (22.1, se reutiliza tal cual).
   ▸ Showdown: el battle pasa de sección CLARA a tema oscuro SRP.
   ▸ Ecosystem: featured con acento por producto (--acc): Formula-R red,
     GT-S cyan, GT-R orange, HB green #00E676 (acento HB mandado).
   La sec. 22 PERMANECE hasta que todas las fichas estén re-pegadas con
   esta v2; después se limpia.
   SIN JSON-LD: el schema Product de las fichas lo da SASWP.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 23.1 TRUST (warranty v2) ── */
.srp-trust { background: var(--srp-black); padding: 70px 20px; font-family: var(--srp-font-body); }
.srp-trust-inner { max-width: 1000px; margin: 0 auto; }
.srp-trust-title { font-size: clamp(26px, 3.5vw, 34px); font-weight: 900; color: var(--srp-white); text-transform: uppercase; letter-spacing: -.5px; margin: 0 0 10px 0; text-align: left; }
.srp-trust-sub { color: #AAAAAA; font-size: 15px; line-height: 1.6; max-width: 640px; margin: 0 0 35px 0; }
.srp-trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.srp-trust-card { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-top: 3px solid var(--srp-orange); padding: 25px; border-radius: 2px; transition: all .3s ease; }
.srp-trust-card:hover { transform: translateY(-3px); border-color: rgba(255,109,0,0.35); background: rgba(255,255,255,0.03); }
.srp-trust-card h3 { color: var(--srp-white); font-size: 15px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; margin: 0 0 14px 0; display: flex; align-items: center; }
.srp-trust-card h3::before { content: '>'; font-family: var(--srp-font-mono); color: var(--srp-orange); font-weight: 900; margin-right: 10px; }
.srp-trust-card p { color: #AAAAAA; font-size: 13px; line-height: 1.6; margin: 0 0 12px 0; }
.srp-trust-card p:last-child { margin-bottom: 0; }
.srp-trust-card p strong { color: var(--srp-white); }
.srp-trust-metric { display: flex; justify-content: space-between; align-items: baseline; border-bottom: 1px dashed rgba(255,255,255,0.1); padding: 8px 0; margin-bottom: 12px; }
.srp-trust-metric:last-of-type { border-bottom: none; }
.srp-trust-metric .m-label { font-family: var(--srp-font-mono); font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; color: #888888; }
.srp-trust-metric .m-value { font-family: var(--srp-font-mono); font-size: 22px; font-weight: 700; color: var(--srp-orange); }
.srp-trust .srp-vat-wrapper { margin-top: 30px; }
@media (max-width: 900px) { .srp-trust-grid { grid-template-columns: 1fr; } }

/* ── 23.2 SHOWDOWN (battle v2 — tema oscuro) ── */
.srp-vs { background: #050507; padding: 80px 20px; font-family: var(--srp-font-body); border-top: 1px solid rgba(255,255,255,0.04); }
.srp-vs-header { text-align: center; max-width: 680px; margin: 0 auto 50px auto; }
.srp-vs-title { font-size: clamp(26px, 3.5vw, 36px); font-weight: 900; color: var(--srp-white); text-transform: uppercase; margin: 15px 0 12px 0; letter-spacing: -.5px; }
.srp-vs-sub { color: #999999; font-size: 15px; line-height: 1.6; margin: 0; }
.srp-vs-grid { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; align-items: stretch; }
.srp-vs-card { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-radius: 4px; overflow: hidden; display: flex; flex-direction: column; position: relative; transition: all .3s ease; }
.srp-vs-card:hover { border-color: rgba(255,255,255,0.15); transform: translateY(-3px); }
.srp-vs-card-head { background: rgba(255,255,255,0.03); padding: 22px 18px 20px 18px; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.06); position: relative; }
.srp-vs-type { font-family: var(--srp-font-mono); font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: #777777; display: block; margin-bottom: 8px; }
.srp-vs-name { color: var(--srp-white); font-size: 16px; font-weight: 900; text-transform: uppercase; margin: 0; }
.srp-vs-badge { position: absolute; bottom: -13px; left: 50%; transform: translateX(-50%); width: 26px; height: 26px; border-radius: 50%; background: #2A2A32; color: #999999; font-size: 10px; font-weight: 900; display: flex; align-items: center; justify-content: center; }
.srp-vs-body { padding: 26px 18px 18px 18px; flex-grow: 1; }
.srp-vs-row { margin-bottom: 14px; }
.srp-vs-row span { font-family: var(--srp-font-mono); font-size: 10px; letter-spacing: 1.5px; text-transform: uppercase; color: #666666; display: block; margin-bottom: 4px; }
.srp-vs-row p { font-size: 12.5px; color: #BBBBBB; line-height: 1.5; margin: 0; }
.srp-vs-adv { border-top: 1px dashed rgba(255,255,255,0.08); padding: 14px 18px 16px 18px; }
.srp-vs-adv h4 { font-family: var(--srp-font-mono); color: var(--srp-orange); font-size: 10px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 6px 0; }
.srp-vs-adv p { font-size: 12px; color: #999999; font-style: italic; line-height: 1.5; margin: 0; }
/* Tarjeta ganadora */
.srp-vs-card--win { border: 1px solid var(--srp-orange); background: rgba(255,109,0,0.04); box-shadow: 0 0 30px rgba(255,109,0,0.12); }
.srp-vs-card--win:hover { border-color: var(--srp-orange); box-shadow: 0 0 40px rgba(255,109,0,0.2); }
.srp-vs-card--win .srp-vs-card-head { background: rgba(255,109,0,0.08); border-bottom-color: rgba(255,109,0,0.25); }
.srp-vs-card--win .srp-vs-type { color: var(--srp-orange); }
.srp-vs-card--win .srp-vs-badge { background: var(--srp-orange); color: #000000; }
.srp-vs-card--win .srp-vs-row span { color: rgba(255,109,0,0.7); }
.srp-vs-card--win .srp-vs-row p { color: #DDDDDD; }
.srp-vs-verdict { background: var(--srp-orange); color: #000000; font-weight: 800; font-size: 12.5px; text-align: center; padding: 14px 16px; line-height: 1.4; }
@media (max-width: 1100px) { .srp-vs-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) {
	.srp-vs-grid { grid-template-columns: 1fr; }
	.srp-vs-card--win { order: -1; }
}

/* ── 23.3 ECOSYSTEM (featured v2 — acento por producto) ── */
.srp-eco { background: var(--srp-black); padding: 80px 20px; font-family: var(--srp-font-body); border-top: 1px solid rgba(255,255,255,0.04); }
.srp-eco-inner { max-width: 1300px; margin: 0 auto; }
.srp-eco-header { text-align: center; max-width: 680px; margin: 0 auto 50px auto; }
.srp-eco-title { font-size: clamp(26px, 3.5vw, 36px); font-weight: 900; color: var(--srp-white); text-transform: uppercase; margin: 15px 0 12px 0; letter-spacing: -.5px; }
.srp-eco-sub { color: #999999; font-size: 15px; line-height: 1.6; margin: 0; }
.srp-eco-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.srp-eco-card { --acc: var(--srp-orange); background: #0D0D12; border: 1px solid rgba(255,255,255,0.06); border-radius: 4px; overflow: hidden; text-decoration: none; display: flex; flex-direction: column; transition: all .35s ease; }
.srp-eco-card--frm { --acc: var(--srp-red); }
.srp-eco-card--gts { --acc: var(--srp-cyan-gts); }
.srp-eco-card--gtr { --acc: var(--srp-orange); }
.srp-eco-card--hb  { --acc: #00E676; } /* acento Handbrake mandado — verde */
.srp-eco-card:hover { border-color: var(--acc); transform: translateY(-8px); box-shadow: 0 18px 40px rgba(0,0,0,0.7); }
.srp-eco-img { aspect-ratio: 1/1; overflow: hidden; background: #111111; position: relative; }
.srp-eco-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.srp-eco-card:hover .srp-eco-img img { transform: scale(1.07); }
.srp-eco-tag { position: absolute; top: 14px; left: 14px; background: var(--acc); color: #000000; font-size: 9px; font-weight: 900; letter-spacing: 1px; text-transform: uppercase; padding: 4px 10px; border-radius: 2px; z-index: 2; }
.srp-eco-card--frm .srp-eco-tag { color: #FFFFFF; } /* contraste sobre red */
.srp-eco-info { padding: 20px; display: flex; flex-direction: column; flex-grow: 1; }
.srp-eco-info h3 { color: var(--srp-white); font-size: 17px; font-weight: 900; text-transform: uppercase; margin: 0 0 8px 0; letter-spacing: .5px; }
.srp-eco-info p { color: #999999; font-size: 13px; line-height: 1.55; margin: 0 0 18px 0; flex-grow: 1; }
.srp-eco-foot { border-top: 1px solid rgba(255,255,255,0.06); padding-top: 14px; display: flex; justify-content: space-between; align-items: center; }
.srp-eco-price { color: var(--acc); font-size: 18px; font-weight: 900; }
.srp-eco-cta { font-family: var(--srp-font-mono); font-size: 10px; letter-spacing: 1.5px; color: #888888; text-transform: uppercase; transition: color .3s ease; }
.srp-eco-card:hover .srp-eco-cta { color: var(--acc); }
@media (max-width: 1100px) { .srp-eco-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) {
	.srp-eco-grid { grid-template-columns: 1fr; }
	.srp-eco-card:hover { transform: translateY(-4px); }
}

/* ═══════════════════════════════════════════════════════════════════════════
   24. ACCESORIOS · WIDGETS HERO (v6.7) — vibration kit + t-shirt
   Clases SIN renombrar: la ficha solo borra su bloque <style> viejo.
   24.1 .srp-acc-* (hero vibration kit) · 24.2 .srp-app-* (t-shirt)
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 24.1 ACC HERO (vibration kit) ── */
.srp-acc-dynamic-wrapper { width: 100%; font-family: var(--srp-font-body); background: transparent; padding: 10px 0; box-sizing: border-box; display: flex; flex-direction: column; }
.srp-acc-label { display: inline-block; font-family: var(--srp-font-mono); color: var(--srp-orange); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; background: var(--srp-orange-dim); border: 1px solid rgba(255,109,0,0.3); padding: 5px 12px; border-radius: 2px; margin-bottom: 20px; align-self: flex-start; }
.srp-acc-title { color: var(--srp-white) !important; font-size: clamp(28px, 4vw, 46px); font-weight: 900; text-transform: uppercase; line-height: 1.1; letter-spacing: -.5px; margin: 0 0 15px 0 !important; }
.srp-status-group { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 35px; }
.srp-status-pill { padding: 6px 15px; border-radius: 50px; font-family: var(--srp-font-mono); font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; display: flex; align-items: center; gap: 8px; color: var(--srp-white) !important; }
.srp-status-pill.in-stock { background: rgba(22,101,52,0.9) !important; border: 1px solid rgba(255,255,255,0.15); box-shadow: 0 4px 15px rgba(22,101,52,0.35); }
.srp-status-pill.pre-order { background: var(--srp-orange) !important; color: #000000 !important; border: 1px solid rgba(255,255,255,0.15); box-shadow: 0 4px 15px var(--srp-orange-glow); }
.srp-status-pill .static-icon { width: 6px; height: 6px; background: currentColor; border-radius: 50%; display: inline-block; }
.srp-acc-card { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); padding: 35px; position: relative; margin-bottom: 40px; border-radius: 4px; }
.srp-acc-card-header { position: absolute; top: -11px; left: 30px; background: var(--srp-orange); color: #000000; font-family: var(--srp-font-mono); font-size: 10px; font-weight: 700; padding: 3px 12px; letter-spacing: 1.5px; border-radius: 2px; text-transform: uppercase; }
.srp-acc-description { color: var(--srp-white); font-size: 15px; line-height: 1.7; }
.srp-acc-description p { color: #BBBBBB !important; margin: 0 0 18px 0; }
.srp-acc-description h3 { color: var(--srp-white) !important; font-size: 15px; text-transform: uppercase; font-weight: 900; letter-spacing: 1px; margin: 30px 0 15px 0 !important; border-left: 3px solid var(--srp-orange); padding-left: 15px; }
.srp-acc-description h3:first-child { margin-top: 0 !important; }
.srp-acc-description ul { list-style: none !important; padding: 0 !important; margin: 20px 0 !important; }
.srp-acc-description li { position: relative; padding-left: 25px; margin-bottom: 12px; color: #AAAAAA !important; }
.srp-acc-description li::before { content: ">"; position: absolute; left: 0; font-family: var(--srp-font-mono); color: var(--srp-orange); font-weight: 700; }
.srp-acc-description hr { border: 0; border-top: 1px solid rgba(255,255,255,0.08); margin: 25px 0; }
.srp-acc-description strong { color: var(--srp-white) !important; }
.srp-acc-meta-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; border-top: 1px solid rgba(255,255,255,0.06); padding-top: 30px; }
.srp-acc-meta-grid .meta-item strong { display: block; font-family: var(--srp-font-mono); color: var(--srp-orange); font-size: 11px; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 6px; font-weight: 700; }
.srp-acc-meta-grid .meta-item span { color: #BBBBBB; font-size: 13px; font-weight: 500; }
@media (max-width: 991px) { .srp-acc-meta-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) {
	.srp-acc-meta-grid { grid-template-columns: 1fr; }
	.srp-acc-card { padding: 25px 20px; }
	.srp-acc-title { font-size: 30px; }
	.srp-status-group { margin-bottom: 25px; }
}

/* ── 24.2 APP (t-shirt) ── */
.srp-app-wrap { background: var(--srp-black); font-family: var(--srp-font-body); color: #AAAAAA; max-width: 1000px; margin: 0 auto; padding: 40px 20px; }
.srp-app-header { margin-bottom: 40px; }
.srp-sys-tag-app { display: inline-block; font-family: var(--srp-font-mono); color: var(--srp-orange); font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 15px; padding: 5px 12px; background: var(--srp-orange-dim); border: 1px solid rgba(255,109,0,0.3); border-radius: 2px; }
.srp-app-header h2 { font-size: clamp(28px, 4vw, 36px); font-weight: 900; color: var(--srp-white); text-transform: uppercase; margin: 0 0 20px 0; letter-spacing: -.5px; line-height: 1.1; border-bottom: 1px solid rgba(255,255,255,0.08); padding-bottom: 15px; }
.srp-app-header h2 span { display: block; color: var(--srp-orange); font-size: 16px; font-weight: 700; letter-spacing: 1px; margin-top: 8px; }
.srp-app-intro p { font-size: 15px; line-height: 1.7; margin: 0 0 15px 0; color: #AAAAAA; }
.srp-app-intro strong { color: var(--srp-white); }
.srp-app-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px; }
.srp-app-card { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-left: 3px solid var(--srp-orange); border-radius: 2px; padding: 30px 25px; transition: all .3s ease; }
.srp-app-card:hover { transform: translateY(-3px); border-color: rgba(255,109,0,0.4); background: rgba(255,255,255,0.03); box-shadow: 0 8px 25px rgba(255,109,0,0.12); }
.srp-app-card h3 { color: var(--srp-white); font-size: 15px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; margin: 0 0 18px 0; }
.srp-app-card p { font-size: 14px; line-height: 1.6; color: #AAAAAA; margin: 0 0 15px 0; }
.srp-app-card p:last-child { margin-bottom: 0; }
.srp-app-card ul { list-style: none; padding: 0; margin: 0; }
.srp-app-card ul li { position: relative; padding-left: 20px; margin-bottom: 12px; font-size: 14px; line-height: 1.5; color: #AAAAAA; }
.srp-app-card ul li:last-child { margin-bottom: 0; }
.srp-app-card ul li::before { content: ">"; position: absolute; left: 0; top: 0; font-family: var(--srp-font-mono); font-weight: 700; color: var(--srp-orange); }
.srp-app-card ul li strong { color: var(--srp-white); }
@media (max-width: 768px) {
	.srp-app-grid { grid-template-columns: 1fr; }
	.srp-app-card { padding: 25px 20px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   25. ACC GRID GENÉRICO (v6.8) — familias wrap / header / intro / grid / card
   Cubre 5 fichas SIN re-pegado: cada una solo borra su <style> + el JSON-LD
   inline (Product + Organization) pegado al final del widget.
   · Acento naranja (defecto): .srp-thr-ext-wrap (accelerator extension)
     .srp-v5-wrap (brake travel regulator) · .srp-ext-wrap (keys extension)
   · Acento cyan GT-S: .srp-gts-btr-wrap (brake travel GT-S)
     .srp-gts-base-wrap (BAP GT-S black edition)
   ═══════════════════════════════════════════════════════════════════════════ */

.srp-thr-ext-wrap, .srp-v5-wrap, .srp-ext-wrap, .srp-tech-specs-wrapper, .srp-gts-btr-wrap, .srp-gts-base-wrap, .srp-gts-clt-wrap, .srp-gts-hlr-wrap { --acc: var(--srp-orange); --acc-dim: var(--srp-orange-dim); --acc-glow: rgba(255,109,0,0.12); background: var(--srp-black); font-family: var(--srp-font-body); color: #AAAAAA; max-width: 1000px; margin: 0 auto; padding: 40px 20px; }
.srp-gts-btr-wrap, .srp-gts-base-wrap, .srp-gts-clt-wrap, .srp-gts-hlr-wrap { --acc: var(--srp-cyan-gts); --acc-dim: var(--srp-cyan-gts-dim); --acc-glow: rgba(0,240,255,0.12); }

/* header + tag SYS + título */
.srp-gts-header, .srp-thr-header, .srp-v5-header, .srp-ext-header, .srp-gts-clt-header, .srp-tech-header { margin-bottom: 40px; }
.srp-sys-tag-gts, .srp-sys-tag-thr, .srp-sys-tag-v5, .srp-sys-tag-ext, .srp-sys-tag, .srp-sys-tag-inv { display: inline-block; font-family: var(--srp-font-mono); color: var(--acc); font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 15px; padding: 5px 12px; background: var(--acc-dim); border: 1px solid color-mix(in srgb, var(--acc) 30%, transparent); border-radius: 2px; }
.srp-gts-header h2, .srp-thr-header h2, .srp-v5-header h2, .srp-ext-header h2, .srp-gts-clt-header h2, .srp-tech-header h2 { font-size: clamp(28px, 4vw, 36px); font-weight: 900; color: var(--srp-white); text-transform: uppercase; margin: 0 0 20px 0; letter-spacing: -.5px; line-height: 1.1; border-bottom: 1px solid rgba(255,255,255,0.08); padding-bottom: 15px; }
.srp-gts-header h2 span, .srp-thr-header h2 span, .srp-v5-header h2 span, .srp-ext-header h2 span, .srp-gts-clt-header h2 span, .srp-tech-header h2 span { display: block; color: var(--acc); font-size: 16px; font-weight: 700; letter-spacing: 1px; margin-top: 8px; }
.srp-gts-intro p, .srp-thr-intro p, .srp-v5-intro p, .srp-ext-intro p, .srp-gts-clt-intro p, .srp-tech-intro p { font-size: 15px; line-height: 1.7; margin: 0 0 15px 0; color: #AAAAAA; }
.srp-gts-intro strong, .srp-thr-intro strong, .srp-v5-intro strong, .srp-ext-intro strong, .srp-gts-clt-intro strong, .srp-tech-intro strong { color: var(--srp-white); }

/* grid + tarjetas */
.srp-gts-grid, .srp-thr-grid, .srp-v5-grid, .srp-ext-grid, .srp-gts-clt-grid, .srp-tech-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px; }
.srp-gts-card, .srp-thr-card, .srp-v5-card, .srp-ext-card, .srp-gts-clt-card, .srp-tech-card { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-left: 3px solid var(--acc); border-radius: 2px; padding: 30px 25px; transition: all .3s ease; }
.srp-gts-card:hover, .srp-thr-card:hover, .srp-v5-card:hover, .srp-ext-card:hover, .srp-gts-clt-card:hover, .srp-tech-card:hover { transform: translateY(-3px); border-color: var(--acc); background: rgba(255,255,255,0.03); box-shadow: 0 8px 25px var(--acc-glow); }
.srp-gts-card h3, .srp-thr-card h3, .srp-v5-card h3, .srp-ext-card h3, .srp-gts-clt-card h3, .srp-tech-card h3 { color: var(--srp-white); font-size: 15px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; margin: 0 0 18px 0; }
.srp-gts-card p, .srp-thr-card p, .srp-v5-card p, .srp-ext-card p, .srp-gts-clt-card p, .srp-tech-card p { font-size: 14px; line-height: 1.6; color: #AAAAAA; margin: 0 0 15px 0; }
.srp-gts-card p:last-child, .srp-thr-card p:last-child, .srp-v5-card p:last-child, .srp-ext-card p:last-child, .srp-gts-clt-card p:last-child, .srp-tech-card p:last-child { margin-bottom: 0; }
.srp-gts-card ul, .srp-thr-card ul, .srp-v5-card ul, .srp-ext-card ul, .srp-gts-clt-card ul, .srp-tech-card ul { list-style: none; padding: 0; margin: 0 0 15px 0; }
.srp-gts-card ul li, .srp-thr-card ul li, .srp-v5-card ul li, .srp-ext-card ul li, .srp-gts-clt-card ul li, .srp-tech-card ul li { position: relative; padding-left: 20px; margin-bottom: 12px; font-size: 14px; line-height: 1.5; color: #AAAAAA; }
.srp-gts-card ul li:last-child, .srp-thr-card ul li:last-child, .srp-v5-card ul li:last-child, .srp-ext-card ul li:last-child, .srp-gts-clt-card ul li:last-child, .srp-tech-card ul li:last-child { margin-bottom: 0; }
.srp-gts-card ul li::before, .srp-thr-card ul li::before, .srp-v5-card ul li::before, .srp-ext-card ul li::before, .srp-gts-clt-card ul li::before, .srp-tech-card ul li::before { content: ">"; position: absolute; left: 0; top: 0; font-family: var(--srp-font-mono); font-weight: 700; color: var(--acc); }
.srp-gts-card ul li strong, .srp-thr-card ul li strong, .srp-v5-card ul li strong, .srp-ext-card ul li strong, .srp-gts-clt-card ul li strong, .srp-tech-card ul li strong { color: var(--srp-white); }

/* tarjeta Pro Tip (roja, patrón tip) */
.srp-pro-tip { border-left: 3px solid var(--srp-red) !important; background: rgba(230,57,70,0.05); }
.srp-pro-tip h3 { color: var(--srp-red) !important; }
.srp-pro-tip a { color: var(--acc); text-decoration: none; font-weight: 900; border-bottom: 1px dashed var(--acc); transition: all .3s ease; }
.srp-pro-tip a:hover { color: var(--srp-white); border-color: var(--srp-white); }

/* extras: botón YouTube (v5), título highlight + espaciador (ext) */
.srp-yt-btn { display: inline-flex; align-items: center; justify-content: center; background: var(--srp-orange); color: #000000; padding: 15px 25px; font-size: 14px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; text-decoration: none; border-radius: 2px; margin-top: 15px; transition: all .3s ease; width: 100%; text-align: center; clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px); box-sizing: border-box; }
.srp-yt-btn:hover { background: var(--srp-white); transform: translateY(-2px); box-shadow: 0 8px 20px var(--srp-orange-glow); }
.srp-highlight-title { color: var(--srp-white); font-family: var(--srp-font-mono); font-weight: 700; text-transform: uppercase; font-size: 12px; letter-spacing: 1.5px; border-bottom: 1px solid rgba(255,255,255,0.1); padding-bottom: 6px; margin-bottom: 12px; }
.srp-mt-20 { margin-top: 20px; }
/* stock HUD verde (gt-s clutch kit) */
.srp-stock-hud { display: inline-flex; align-items: center; padding: 10px 16px; background: rgba(76,175,80,0.08); border: 1px solid rgba(76,175,80,0.3); border-radius: 2px; margin-top: 10px; }
.srp-stock-dot { width: 8px; height: 8px; background: #4CAF50; border-radius: 50%; margin-right: 12px; box-shadow: 0 0 10px #4CAF50; animation: srpPulse 1.5s infinite; } /* verde stock semántico */
.srp-stock-txt { color: #4CAF50; font-family: var(--srp-font-mono); font-size: 12px; font-weight: 700; letter-spacing: 1px; }
@keyframes srpPulse { 0% { box-shadow: 0 0 0 0 rgba(76,175,80,0.4); } 70% { box-shadow: 0 0 0 10px rgba(76,175,80,0); } 100% { box-shadow: 0 0 0 0 rgba(76,175,80,0); } }

/* caja aviso naranja (heel-rest GT-S) */
.srp-warning-box { border-left: 3px solid var(--srp-orange); background: var(--srp-orange-dim); padding: 15px; margin-top: 15px; }
.srp-warning-box p { color: var(--srp-orange); font-size: 13px; margin: 0; font-weight: 700; }

/* módulo inverted pedals kit (.srp-inv-*) — tarjetas apiladas + chips */
.srp-inv-wrapper { width: 100%; font-family: var(--srp-font-body); color: #AAAAAA; text-align: left; background: transparent; max-width: 1000px; margin: 0 auto; padding: 20px 0; }
.srp-inv-header { margin-bottom: 40px; }
.srp-inv-header h2 { font-size: clamp(32px, 4vw, 42px); font-weight: 900; color: var(--srp-white); text-transform: uppercase; margin: 0 0 15px 0; line-height: 1.1; letter-spacing: -.5px; }
.srp-inv-header h2 span { color: var(--srp-orange); font-weight: 300; }
.srp-inv-intro { font-size: 16px; line-height: 1.7; color: #AAAAAA; margin: 0; }
.srp-inv-intro strong { color: var(--srp-white); font-weight: 900; }
.srp-inv-card { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-left: 4px solid var(--srp-orange); padding: 35px; border-radius: 2px; margin-bottom: 40px; transition: all .4s ease; }
.srp-inv-card:hover { transform: translateX(5px); border-color: var(--srp-orange); background: rgba(255,255,255,0.03); box-shadow: 0 15px 35px rgba(255,109,0,0.12); }
.srp-inv-card h3 { font-size: 18px; font-weight: 900; color: var(--srp-white); text-transform: uppercase; margin: 0 0 15px 0; letter-spacing: .5px; }
.srp-inv-card p { font-size: 15px; line-height: 1.6; color: #AAAAAA; margin: 0 0 25px 0; }
.srp-tech-check { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 15px; }
.srp-tech-check li { font-size: 14px; position: relative; padding-left: 20px; color: #AAAAAA; line-height: 1.5; }
.srp-tech-check li::before { content: ">"; position: absolute; left: 0; top: 0; color: var(--srp-orange); font-family: var(--srp-font-mono); font-weight: 700; }
.srp-tech-check li strong { color: var(--srp-white); text-transform: uppercase; font-size: 13px; letter-spacing: .5px; }
.srp-benefit-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.srp-benefit-tag { background: var(--srp-orange-dim); border: 1px solid rgba(255,109,0,0.3); padding: 8px 16px; font-size: 11px; font-family: var(--srp-font-mono); font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--srp-orange); border-radius: 2px; transition: all .3s ease; }
.srp-benefit-tag:hover { background: var(--srp-orange); color: #000000; }
@media (max-width: 767px) {
	.srp-inv-card { padding: 25px 20px; }
	.srp-inv-header h2 { font-size: 28px; }
}


@media (max-width: 768px) {
	.srp-gts-grid, .srp-thr-grid, .srp-v5-grid, .srp-ext-grid, .srp-gts-clt-grid, .srp-tech-grid { grid-template-columns: 1fr; }
	.srp-gts-card, .srp-thr-card, .srp-v5-card, .srp-ext-card, .srp-gts-clt-card, .srp-tech-card { padding: 25px 20px; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   26. ACC GRID — FAMILIAS EXTRA + KNOB (v7.0)
   26.1 Mismos clones naranja de la sec. 25: alfombrilla (.srp-mat-*),
   guantes (.srp-glv-*), r-piston (.srp-rp-*) y los 4 upgrades
   (.srp-v1v5-* / .srp-v3v5-* / .srp-v1v5-3p-* / .srp-v3v4-*).
   26.2 Knob HB (.srp-hbk-*) — acento verde semántico #4CAF50.
   Cada ficha solo borra su <style> + 2 JSON-LD inline. Sin re-pegado.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 26.1 familias clon (naranja) ── */
.srp-mat-wrap, .srp-gloves-wrap, .srp-rp-wrap, .srp-v1v5-wrap, .srp-v3v5-wrap, .srp-v1v5-3p-wrap, .srp-v3v4-wrap { --acc: var(--srp-orange); --acc-dim: var(--srp-orange-dim); --acc-glow: rgba(255,109,0,0.12); background: var(--srp-black); font-family: var(--srp-font-body); color: #AAAAAA; max-width: 1000px; margin: 0 auto; padding: 40px 20px; }
.srp-mat-header, .srp-glv-header, .srp-rp-header, .srp-v1v5-header, .srp-v3v5-header, .srp-v1v5-3p-header, .srp-v3v4-header { margin-bottom: 40px; }
.srp-sys-tag-mat, .srp-sys-tag-glv, .srp-sys-tag-rp, .srp-sys-tag-upg, .srp-sys-tag-3p { display: inline-block; font-family: var(--srp-font-mono); color: var(--acc); font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 15px; padding: 5px 12px; background: var(--acc-dim); border: 1px solid color-mix(in srgb, var(--acc) 30%, transparent); border-radius: 2px; }
.srp-mat-header h2, .srp-glv-header h2, .srp-rp-header h2, .srp-v1v5-header h2, .srp-v3v5-header h2, .srp-v1v5-3p-header h2, .srp-v3v4-header h2 { font-size: clamp(28px, 4vw, 36px); font-weight: 900; color: var(--srp-white); text-transform: uppercase; margin: 0 0 20px 0; letter-spacing: -.5px; line-height: 1.1; border-bottom: 1px solid rgba(255,255,255,0.08); padding-bottom: 15px; }
.srp-mat-header h2 span, .srp-glv-header h2 span, .srp-rp-header h2 span, .srp-v1v5-header h2 span, .srp-v3v5-header h2 span, .srp-v1v5-3p-header h2 span, .srp-v3v4-header h2 span { display: block; color: var(--acc); font-size: 16px; font-weight: 700; letter-spacing: 1px; margin-top: 8px; }
.srp-mat-intro p, .srp-glv-intro p, .srp-rp-intro p, .srp-v1v5-intro p, .srp-v3v5-intro p, .srp-v1v5-3p-intro p, .srp-v3v4-intro p { font-size: 15px; line-height: 1.7; margin: 0 0 15px 0; color: #AAAAAA; }
.srp-mat-intro strong, .srp-glv-intro strong, .srp-rp-intro strong, .srp-v1v5-intro strong, .srp-v3v5-intro strong, .srp-v1v5-3p-intro strong, .srp-v3v4-intro strong { color: var(--srp-white); }
.srp-mat-grid, .srp-glv-grid, .srp-rp-grid, .srp-v1v5-grid, .srp-v3v5-grid, .srp-v1v5-3p-grid, .srp-v3v4-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 25px; }
.srp-mat-card, .srp-glv-card, .srp-rp-card, .srp-v1v5-card, .srp-v3v5-card, .srp-v1v5-3p-card, .srp-v3v4-card { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-left: 3px solid var(--acc); border-radius: 2px; padding: 30px 25px; transition: all .3s ease; }
.srp-mat-card:hover, .srp-glv-card:hover, .srp-rp-card:hover, .srp-v1v5-card:hover, .srp-v3v5-card:hover, .srp-v1v5-3p-card:hover, .srp-v3v4-card:hover { transform: translateY(-3px); border-color: var(--acc); background: rgba(255,255,255,0.03); box-shadow: 0 8px 25px var(--acc-glow); }
.srp-mat-card h3, .srp-glv-card h3, .srp-rp-card h3, .srp-v1v5-card h3, .srp-v3v5-card h3, .srp-v1v5-3p-card h3, .srp-v3v4-card h3 { color: var(--srp-white); font-size: 15px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; margin: 0 0 18px 0; }
.srp-mat-card p, .srp-glv-card p, .srp-rp-card p, .srp-v1v5-card p, .srp-v3v5-card p, .srp-v1v5-3p-card p, .srp-v3v4-card p { font-size: 14px; line-height: 1.6; color: #AAAAAA; margin: 0 0 15px 0; }
.srp-mat-card p:last-child, .srp-glv-card p:last-child, .srp-rp-card p:last-child, .srp-v1v5-card p:last-child, .srp-v3v5-card p:last-child, .srp-v1v5-3p-card p:last-child, .srp-v3v4-card p:last-child { margin-bottom: 0; }
.srp-mat-card ul, .srp-glv-card ul, .srp-rp-card ul, .srp-v1v5-card ul, .srp-v3v5-card ul, .srp-v1v5-3p-card ul, .srp-v3v4-card ul { list-style: none; padding: 0; margin: 0 0 15px 0; }
.srp-mat-card ul li, .srp-glv-card ul li, .srp-rp-card ul li, .srp-v1v5-card ul li, .srp-v3v5-card ul li, .srp-v1v5-3p-card ul li, .srp-v3v4-card ul li { position: relative; padding-left: 20px; margin-bottom: 12px; font-size: 14px; line-height: 1.5; color: #AAAAAA; }
.srp-mat-card ul li:last-child, .srp-glv-card ul li:last-child, .srp-rp-card ul li:last-child, .srp-v1v5-card ul li:last-child, .srp-v3v5-card ul li:last-child, .srp-v1v5-3p-card ul li:last-child, .srp-v3v4-card ul li:last-child { margin-bottom: 0; }
.srp-mat-card ul li::before, .srp-glv-card ul li::before, .srp-rp-card ul li::before, .srp-v1v5-card ul li::before, .srp-v3v5-card ul li::before, .srp-v1v5-3p-card ul li::before, .srp-v3v4-card ul li::before { content: ">"; position: absolute; left: 0; top: 0; font-family: var(--srp-font-mono); font-weight: 700; color: var(--acc); }
.srp-mat-card ul li strong, .srp-glv-card ul li strong, .srp-rp-card ul li strong, .srp-v1v5-card ul li strong, .srp-v3v5-card ul li strong, .srp-v1v5-3p-card ul li strong, .srp-v3v4-card ul li strong { color: var(--srp-white); }

/* extras de las familias clon */
.srp-rp-auth-box { border-left: 4px solid var(--srp-orange); background: var(--srp-orange-dim); padding: 30px; margin: 30px 0; border-radius: 2px; border-top: 1px solid rgba(255,255,255,0.06); border-right: 1px solid rgba(255,255,255,0.06); border-bottom: 1px solid rgba(255,255,255,0.06); }
.srp-rp-auth-title { color: var(--srp-orange); font-size: 15px; font-weight: 700; text-transform: uppercase; margin: 0 0 15px 0; letter-spacing: 1.5px; font-family: var(--srp-font-mono); }
.srp-rp-auth-box ul { list-style: none; padding: 0; margin: 20px 0; }
.srp-rp-auth-box ul li { position: relative; padding-left: 25px; margin-bottom: 12px; font-size: 14px; color: var(--srp-white); font-weight: 600; }
.srp-rp-auth-box ul li::before { content: ">"; position: absolute; left: 0; color: var(--srp-orange); font-family: var(--srp-font-mono); font-weight: 700; }
.srp-rp-auth-email { display: inline-block; margin-top: 10px; color: #000000; background: var(--srp-orange); padding: 12px 24px; font-weight: 900; text-decoration: none; text-transform: uppercase; letter-spacing: 1.5px; border-radius: 2px; transition: all .3s ease; clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px); }
.srp-rp-auth-email:hover { background: var(--srp-white); color: #000000; box-shadow: 0 0 15px var(--srp-orange-glow); }
.srp-guide-notice, .srp-verify-notice { display: inline-block; border-left: 3px solid var(--srp-orange); background: rgba(255,255,255,0.02); padding: 10px 15px; font-size: 13px; margin-top: 10px; color: #AAAAAA; }
.srp-guide-notice strong, .srp-verify-notice strong { color: var(--srp-orange); font-family: var(--srp-font-mono); }
.srp-btn-link { color: var(--srp-orange); text-decoration: none; border-bottom: 1px dashed var(--srp-orange); font-weight: 700; transition: all .3s ease; }
.srp-btn-link:hover { color: var(--srp-white); border-color: var(--srp-white); }

@media (max-width: 768px) {
	.srp-mat-grid, .srp-glv-grid, .srp-rp-grid, .srp-v1v5-grid, .srp-v3v5-grid, .srp-v1v5-3p-grid, .srp-v3v4-grid { grid-template-columns: 1fr; }
	.srp-mat-card, .srp-glv-card, .srp-rp-card, .srp-v1v5-card, .srp-v3v5-card, .srp-v1v5-3p-card, .srp-v3v4-card { padding: 25px 20px; }
}

/* ── 26.2 KNOB HB (.srp-hbk-*) — verde semántico ── */
.srp-hbk-desc-box { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.06); border-top: 3px solid #4CAF50; padding: 40px; font-family: var(--srp-font-body); position: relative; overflow: hidden; border-radius: 2px; } /* verde stock/knob */
.srp-hbk-desc-box::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(ellipse at top right, rgba(76,175,80,0.05) 0, transparent 60%); pointer-events: none; z-index: 1; }
.srp-hbk-content { position: relative; z-index: 2; }
.srp-sys-tag-hbk { display: inline-block; font-family: var(--srp-font-mono); color: #4CAF50; font-size: 11px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 20px; padding: 5px 12px; background: rgba(76,175,80,0.1); border: 1px solid rgba(76,175,80,0.3); border-radius: 2px; }
.srp-hbk-title { color: var(--srp-white); font-size: 28px; font-weight: 900; text-transform: uppercase; margin: 0 0 15px 0; letter-spacing: -.5px; }
.srp-hbk-text { color: #AAAAAA; font-size: 15px; line-height: 1.7; margin: 0 0 25px 0; }
.srp-hbk-text strong { color: var(--srp-white); }
.srp-hbk-colors { display: grid; grid-template-columns: 1fr; gap: 12px; margin: 0 0 25px 0; padding: 0 0 0 20px; list-style: none; border-left: 2px solid rgba(76,175,80,0.4); }
.srp-hbk-colors li { color: #AAAAAA; font-size: 14px; line-height: 1.5; }
.srp-hbk-colors li strong { color: var(--srp-white); font-weight: 800; text-transform: uppercase; }
.srp-hbk-colors li span.dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 10px; border: 1px solid rgba(255,255,255,0.2); }
.srp-hbk-specs { background: rgba(255,255,255,0.02); padding: 20px; border: 1px solid rgba(255,255,255,0.06); margin-bottom: 25px; }
.srp-hbk-specs-title { color: #4CAF50; font-family: var(--srp-font-mono); font-size: 12px; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 10px; font-weight: 700; }
.srp-hbk-specs p { color: var(--srp-white); font-size: 14px; margin: 0; font-weight: 600; }
.srp-stock-status { display: inline-flex; align-items: center; padding: 10px 16px; background: rgba(76,175,80,0.08); border: 1px solid rgba(76,175,80,0.3); border-radius: 2px; }
.srp-stock-pulse { width: 8px; height: 8px; background: #4CAF50; border-radius: 50%; margin-right: 12px; box-shadow: 0 0 10px #4CAF50; animation: srp-pulse 1.5s infinite; }
.srp-stock-text { color: #4CAF50; font-family: var(--srp-font-mono); font-size: 12px; font-weight: 700; letter-spacing: 1px; }
@keyframes srp-pulse { 0% { box-shadow: 0 0 0 0 rgba(76,175,80,0.4); } 70% { box-shadow: 0 0 0 10px rgba(76,175,80,0); } 100% { box-shadow: 0 0 0 0 rgba(76,175,80,0); } }
@media (max-width: 768px) { .srp-hbk-desc-box { padding: 25px 20px; } }

/* ═══════════════════════════════════════════════════════════════════════════
   FIN SRP MASTER CSS v7.0
   ═══════════════════════════════════════════════════════════════════════════ */