/* =============================================================================
   PRIDO — Home Modern · V2 (cuerpo rediseñado) — r3 · 2026-10-09 (r2: 2026-10-08, r1: 2026-09-23)
   r3: tamaño del DOM — las estrellas de reseñas y las flechas/«+» se dibujan con máscara CSS
   (§99 al final) en vez de un <svg><path> inline cada una: −170 nodos, mismo dibujo y mismo
   nombre accesible (el contenedor conserva role="img" + aria-label; los iconos eran aria-hidden).
   r2: contraste AA del precio tachado de las tarjetas (--v2-was claro
   #8a96a2 → #5c6b78 = --v2-muted, 5,48:1). §0: reglas de hojas que la
   portada V2 ya no carga. El oscuro no cambia.
   -----------------------------------------------------------------------------
   Solo se encola con la portada V2 (inc/home-modern/v2.php), después de
   home-modern.rN.css. Todo va bajo .prido-home-modern y con prefijo .phv2-.
   Sistema: Cormorant Garamond (titulares), Manrope (texto), JetBrains Mono
   (cifras) — las mismas fuentes autoalojadas del hero. Fondos blancos en
   claro y #0a131b (canvas oscuro del sitio) en oscuro: sin crema ni hueso.
   El hero conserva markup, animación y recortes; solo cambia su fondo.
   ============================================================================= */

/* ---------- 0. Arrastres de la dieta CSS (r2) ---------------------------------
   inc/home-modern/v2.php deja de imprimir en la portada V2 WooCommerce ×3,
   style.css, el maestro v2 y unified-modals (ninguna otra regla suya toca la
   portada). Estas tres sí, y van aquí copiadas tal cual; son las únicas reglas
   de esta hoja fuera de .prido-home-modern porque sus elementos viven fuera
   del cuerpo (header, <html>/<body> y la región viva del carrito). */
/* woocommerce.css: regiones vivas de prido-cart.rN.js (#prido-cart-live) y de add-to-cart de WC. */
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; position: absolute !important; width: 1px; word-wrap: normal !important; }
/* prido-css-maestro-v2: bloqueo de scroll con drawer, menú o modal abiertos. */
html.prido-modal-open,
html.prido-modal-open body { overflow: hidden !important; position: relative !important; }
html.prido-modal-open body { height: 100% !important; }
/* style.css: lupa redonda del header v3. */
.prido-hs-tools__search { border-radius: 50% !important; }

/* ---------- 1. Tokens --------------------------------------------------------- */
.prido-home-modern {
	--v2-bg: #ffffff;
	--v2-bg-2: #f4f6f8;
	--v2-card: #ffffff;
	--v2-well: #ffffff;
	--v2-well-line: #e8ecf0;
	--v2-tint: #e8f5f4;
	--v2-line: #e6eaee;
	--v2-line-2: #d3dbe2;
	--v2-ink: #0b1e2e;
	--v2-muted: #5c6b78;
	--v2-faint: #6b7785;
	--v2-quote: #cfd8df;
	--v2-was: #5c6b78;
	--v2-accent: #0e7e7a;
	--v2-dot: #1fb6b0;
	--v2-promo: #b7301a;
	--v2-btn: #0e7e7a;
	--v2-btn-fg: #ffffff;
	--v2-btn-h: #0b1e2e;
	--v2-btn-h-fg: #ffffff;
	--v2-on: #0b1e2e;
	--v2-on-fg: #ffffff;
	--v2-on-sub: #b4c3cf;
	--v2-on-ic: #5fd0cb;
	--v2-arr-line: rgba(11, 30, 46, 0.2);
	--v2-badge: rgba(255, 255, 255, 0.94);
	--v2-badge-fg: #0b1e2e;
	--v2-band: #0b1e2e;
	--v2-band-line: transparent;
	--v2-hero-bg: #ffffff;
	--v2-hero-num: #e6ebef;
	--v2-hero-rail: #ffffff;
	--v2-hero-rail-line: rgba(11, 30, 46, 0.12);
	--v2-hero-prog: rgba(11, 30, 46, 0.08);
	--v2-f-d: 'Cormorant Garamond', 'Times New Roman', Georgia, serif;
	--v2-f-s: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
	--v2-f-m: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, monospace;
	--v2-ease: cubic-bezier(0.2, 0, 0.2, 1);
	--v2-ease-e: cubic-bezier(0.2, 0, 0, 1);
	--v2-pad: clamp(18px, 3vw, 40px);
	--v2-sec: clamp(72px, 8.4vw, 120px);
	background: var(--v2-bg);
}

:root[data-theme="dark"] .prido-home-modern {
	--v2-bg: #0a131b;
	--v2-bg-2: #121d27;
	--v2-card: #101b24;
	--v2-well: #ffffff;
	--v2-well-line: transparent;
	--v2-tint: rgba(45, 198, 193, 0.14);
	--v2-line: rgba(255, 255, 255, 0.1);
	--v2-line-2: rgba(255, 255, 255, 0.2);
	--v2-ink: #edf4f8;
	--v2-muted: #9fb0bf;
	--v2-faint: #8596a5;
	--v2-quote: #2b3b48;
	--v2-was: #7f8e9b;
	--v2-accent: #2dc6c1;
	--v2-btn: #2dc6c1;
	--v2-btn-fg: #0a131b;
	--v2-btn-h: #ffffff;
	--v2-btn-h-fg: #0a131b;
	--v2-on: #edf4f8;
	--v2-on-fg: #0a131b;
	--v2-on-sub: #4b5c6b;
	--v2-on-ic: #0e7e7a;
	--v2-arr-line: rgba(255, 255, 255, 0.24);
	--v2-badge: rgba(10, 19, 27, 0.86);
	--v2-badge-fg: #edf4f8;
	--v2-band: #0f1c28;
	--v2-band-line: rgba(255, 255, 255, 0.07);
	--v2-hero-bg: #0a131b;
	--v2-hero-num: #142230;
	--v2-hero-rail: transparent;
	--v2-hero-rail-line: rgba(255, 255, 255, 0.16);
	--v2-hero-prog: rgba(255, 255, 255, 0.12);
}

@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .prido-home-modern {
		--v2-bg: #0a131b;
		--v2-bg-2: #121d27;
		--v2-card: #101b24;
		--v2-well: #ffffff;
		--v2-well-line: transparent;
		--v2-tint: rgba(45, 198, 193, 0.14);
		--v2-line: rgba(255, 255, 255, 0.1);
		--v2-line-2: rgba(255, 255, 255, 0.2);
		--v2-ink: #edf4f8;
		--v2-muted: #9fb0bf;
		--v2-faint: #8596a5;
		--v2-quote: #2b3b48;
		--v2-was: #7f8e9b;
		--v2-accent: #2dc6c1;
		--v2-btn: #2dc6c1;
		--v2-btn-fg: #0a131b;
		--v2-btn-h: #ffffff;
		--v2-btn-h-fg: #0a131b;
		--v2-on: #edf4f8;
		--v2-on-fg: #0a131b;
		--v2-on-sub: #4b5c6b;
		--v2-on-ic: #0e7e7a;
		--v2-arr-line: rgba(255, 255, 255, 0.24);
		--v2-badge: rgba(10, 19, 27, 0.86);
		--v2-badge-fg: #edf4f8;
		--v2-band: #0f1c28;
		--v2-band-line: rgba(255, 255, 255, 0.07);
		--v2-hero-bg: #0a131b;
		--v2-hero-num: #142230;
		--v2-hero-rail: transparent;
		--v2-hero-rail-line: rgba(255, 255, 255, 0.16);
		--v2-hero-prog: rgba(255, 255, 255, 0.12);
	}
}

/* ---------- 2. Hero: fondo blanco (u oscuro), mismos recortes sin fondo ------ */
.prido-home-modern .phm-hero-cifra,
.prido-home-modern .phm-hero-cifra .phc-sl .phc-bg { background: var(--v2-hero-bg); }
.prido-home-modern .phm-hero-cifra .phc-sl .phc-num { color: var(--v2-hero-num); }
.prido-home-modern .phm-hero-cifra .phc-idx { color: var(--v2-faint); }
.prido-home-modern .phm-hero-cifra .phc-rail button { background: var(--v2-hero-rail); border-color: var(--v2-hero-rail-line); }
.prido-home-modern .phm-hero-cifra .phc-prog { background: var(--v2-hero-prog); }

:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra { --phc-ink: #edf4f8; --phc-muted: #9fb0bf; }
:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra .phc-shot img,
:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra .phc-rail button img { mix-blend-mode: normal; }
:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra .phc-arr { border-color: rgba(255, 255, 255, 0.24); }
:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra .phc-arr:hover,
:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra .phc-arr:focus-visible { background: #edf4f8; color: #0a131b; border-color: #edf4f8; }
:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra .phc-btn:hover,
:root[data-theme="dark"] .prido-home-modern .phm-hero-cifra .phc-btn:focus-visible { background: #edf4f8; color: #0a131b; }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra { --phc-ink: #edf4f8; --phc-muted: #9fb0bf; }
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra .phc-shot img,
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra .phc-rail button img { mix-blend-mode: normal; }
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra .phc-arr { border-color: rgba(255, 255, 255, 0.24); }
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra .phc-arr:hover,
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra .phc-arr:focus-visible { background: #edf4f8; color: #0a131b; border-color: #edf4f8; }
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra .phc-btn:hover,
	:root:not([data-theme="light"]) .prido-home-modern .phm-hero-cifra .phc-btn:focus-visible { background: #edf4f8; color: #0a131b; }
}

/* ---------- 3. Base de las secciones V2 --------------------------------------- */
.prido-home-modern :where(.phv2-trust, .phv2-sec) { color: var(--v2-ink); font-family: var(--v2-f-s); -webkit-font-smoothing: antialiased; }
.prido-home-modern :where(.phv2-trust, .phv2-sec) :where(h1, h2, h3, p, figure, blockquote, ul, ol) { margin: 0; padding: 0; }
.prido-home-modern :where(.phv2-trust, .phv2-sec) :where(ul, ol) { list-style: none; }
.prido-home-modern :where(.phv2-trust, .phv2-sec) a { color: inherit; text-decoration: none; }
.prido-home-modern :where(.phv2-trust, .phv2-sec) img { display: block; max-width: 100%; height: auto; }
.prido-home-modern :where(.phv2-trust, .phv2-sec) button { appearance: none; margin: 0; padding: 0; border: 0; background: none; color: inherit; font: inherit; line-height: inherit; text-align: inherit; cursor: pointer; }
.prido-home-modern :where(.phv2-trust, .phv2-sec) :focus-visible { outline: 2px solid var(--v2-accent); outline-offset: 3px; }
.prido-home-modern .phv2-ic { flex: none; display: block; }
.prido-home-modern .phv2-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.prido-home-modern .phv2-rv-widget { margin-top: 8px; }

.prido-home-modern .phv2-wrap { width: 100%; max-width: 1360px; margin: 0 auto; padding: 0 var(--v2-pad); }
.prido-home-modern .phv2-sec { padding: var(--v2-sec) 0; background: var(--v2-bg); }
.prido-home-modern .phv2-rule { padding-top: 0; }
.prido-home-modern .phv2-rule > .phv2-wrap::before { content: ""; display: block; height: 1px; background: var(--v2-line); margin-bottom: var(--v2-sec); }

.prido-home-modern .phv2-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 48px; margin-bottom: 56px; }
.prido-home-modern .phv2-ey { display: inline-flex; align-items: center; gap: 12px; font: 700 11px/1 var(--v2-f-s); letter-spacing: 0.2em; text-transform: uppercase; color: var(--v2-accent); }
.prido-home-modern .phv2-ey::before { content: ""; width: 28px; height: 1px; background: currentColor; }
.prido-home-modern .phv2-h1 { margin-top: 20px; font: 600 clamp(44px, 5.3vw, 76px)/0.97 var(--v2-f-d); letter-spacing: -0.028em; color: var(--v2-ink); text-wrap: balance; }
.prido-home-modern .phv2-h2 { margin-top: 18px; font: 600 clamp(38px, 4.2vw, 60px)/1 var(--v2-f-d); letter-spacing: -0.022em; color: var(--v2-ink); text-wrap: balance; }
.prido-home-modern .phv2-lead { max-width: 560px; margin-top: 18px; font: 400 17px/1.65 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-n { font: 500 11px/1 var(--v2-f-m); color: var(--v2-muted); }

.prido-home-modern .phv2-tlink { display: inline-flex; align-items: center; gap: 10px; padding: 10px 0 9px; border-bottom: 1px solid currentColor; font: 800 12px/1 var(--v2-f-s); letter-spacing: 0.14em; text-transform: uppercase; color: var(--v2-ink); white-space: nowrap; transition: color 0.2s var(--v2-ease), gap 0.25s var(--v2-ease-e); }
.prido-home-modern .phv2-tlink:hover { color: var(--v2-accent); gap: 14px; }

.prido-home-modern .phv2-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 52px; padding: 0 26px; border-radius: 2px; background: var(--v2-btn); color: var(--v2-btn-fg); font: 800 12px/1 var(--v2-f-s); letter-spacing: 0.14em; text-transform: uppercase; white-space: nowrap; transition: background 0.18s var(--v2-ease), color 0.18s var(--v2-ease), transform 0.18s var(--v2-ease), box-shadow 0.18s var(--v2-ease); }
.prido-home-modern .phv2-btn:hover { background: var(--v2-btn-h); color: var(--v2-btn-h-fg); transform: translateY(-2px); }
.prido-home-modern .phv2-btn.is-line { background: transparent; color: var(--v2-ink); box-shadow: inset 0 0 0 1px var(--v2-line-2); }
.prido-home-modern .phv2-btn.is-line:hover { background: var(--v2-ink); color: var(--v2-bg); box-shadow: none; }

.prido-home-modern .phv2-chip { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 16px; border: 1px solid var(--v2-line-2); border-radius: 999px; background: transparent; font: 600 13px/1 var(--v2-f-s); color: var(--v2-ink); white-space: nowrap; transition: border-color 0.2s var(--v2-ease), background 0.2s var(--v2-ease), color 0.2s var(--v2-ease); }
.prido-home-modern .phv2-chip:hover { border-color: var(--v2-ink); }
.prido-home-modern .phv2-chip.is-on { background: var(--v2-on); border-color: var(--v2-on); color: var(--v2-on-fg); }
.prido-home-modern .phv2-chip.is-on .phv2-n { color: var(--v2-on-sub); }

.prido-home-modern .phv2-arr { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid var(--v2-arr-line); border-radius: 50%; color: var(--v2-ink); transition: background 0.18s, color 0.18s, border-color 0.18s, opacity 0.18s; }
.prido-home-modern .phv2-arr:hover:not(:disabled) { background: var(--v2-ink); border-color: var(--v2-ink); color: var(--v2-bg); }
.prido-home-modern .phv2-arr:disabled { opacity: 0.3; cursor: default; }

/* ---------- 4. Beneficios ----------------------------------------------------- */
.prido-home-modern .phv2-trust { background: var(--v2-bg); border-bottom: 1px solid var(--v2-line); }
/* r4: una columna por ítem (la cinta puede traer 3 o 4). */
.prido-home-modern .phv2-trust-grid { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
.prido-home-modern .phv2-tr { display: flex; align-items: center; gap: 16px; min-width: 0; padding: 30px 28px; border-left: 1px solid var(--v2-line); }
.prido-home-modern .phv2-tr:first-child { padding-left: 0; border-left: 0; }
.prido-home-modern .phv2-tr-ic { display: grid; place-items: center; flex: none; width: 46px; height: 46px; border-radius: 50%; background: var(--v2-tint); color: var(--v2-accent); }
.prido-home-modern .phv2-tr-tx { min-width: 0; }
.prido-home-modern .phv2-tr-t { display: block; font: 700 15px/1.25 var(--v2-f-s); color: var(--v2-ink); text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 3px; transition: text-decoration-color 0.2s; }
.prido-home-modern .phv2-tr-s { display: block; margin-top: 3px; font: 400 13px/1.4 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-tr:hover .phv2-tr-t { text-decoration-color: var(--v2-accent); }

/* ---------- 5. Catálogo -------------------------------------------------------- */
.prido-home-modern .phv2-cats-head { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: end; gap: 72px; margin-bottom: 64px; }
.prido-home-modern .phv2-intro { font: 400 17px/1.7 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-intro a,
.prido-home-modern .phv2-prose a { color: var(--v2-ink); font-weight: 600; text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--v2-accent) 45%, transparent); text-decoration-thickness: 1px; text-underline-offset: 4px; transition: color 0.2s, text-decoration-color 0.2s; }
.prido-home-modern .phv2-intro a:hover,
.prido-home-modern .phv2-prose a:hover { color: var(--v2-accent); text-decoration-color: var(--v2-accent); }
.prido-home-modern .phv2-quick { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }

.prido-home-modern .phv2-xp { position: relative; min-height: var(--phv2-xp-h, 740px); }
.prido-home-modern .phv2-fams { width: calc((100% - 56px) * 5 / 12); border-top: 1px solid var(--v2-line); }
.prido-home-modern .phv2-fam-row { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto 18px; align-items: center; gap: 12px; height: 58px; padding: 0 14px 0 12px; border-bottom: 1px solid var(--v2-line); transition: background 0.3s var(--v2-ease); }
.prido-home-modern .phv2-fam-i { font: 500 11px/1 var(--v2-f-m); color: var(--v2-faint); transition: color 0.3s; }
.prido-home-modern .phv2-fam-n { overflow: hidden; font: 600 27px/1.05 var(--v2-f-d); letter-spacing: -0.012em; color: var(--v2-ink); white-space: nowrap; text-overflow: ellipsis; transition: transform 0.35s var(--v2-ease-e); }
.prido-home-modern .phv2-fam-c { font: 500 12px/1 var(--v2-f-m); color: var(--v2-muted); }
.prido-home-modern .phv2-fam-row .phv2-ic { color: var(--v2-accent); opacity: 0; transform: translateX(-6px); transition: opacity 0.3s, transform 0.35s var(--v2-ease-e); }
.prido-home-modern .phv2-fam-row:hover,
.prido-home-modern .phv2-fam.is-on .phv2-fam-row { background: var(--v2-bg-2); }
.prido-home-modern .phv2-fam.is-on .phv2-fam-n { transform: translateX(6px); }
.prido-home-modern .phv2-fam.is-on .phv2-fam-i { color: var(--v2-accent); }
.prido-home-modern .phv2-fam.is-on .phv2-fam-row .phv2-ic { opacity: 1; transform: none; }

.prido-home-modern .phv2-fp { display: none; position: absolute; top: 0; right: 0; width: calc((100% - 56px) * 7 / 12); }
.prido-home-modern .phv2-fam.is-on .phv2-fp { display: block; animation: phv2In 0.55s var(--v2-ease-e); }
.prido-home-modern .phv2-fp-media { display: block; position: relative; overflow: hidden; aspect-ratio: 16 / 10; border-radius: 20px; background: var(--v2-bg-2); }
.prido-home-modern .phv2-fp-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--v2-ease-e); }
.prido-home-modern .phv2-fp-media:hover img { transform: scale(1.03); }
.prido-home-modern .phv2-fp-badge { position: absolute; top: 18px; left: 18px; display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 14px; border-radius: 999px; background: var(--v2-badge); font: 600 12px/1 var(--v2-f-s); color: var(--v2-badge-fg); }
.prido-home-modern .phv2-fp-badge b { font: 600 12px/1 var(--v2-f-m); }
.prido-home-modern .phv2-fp-body { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 32px; margin-top: 28px; }
.prido-home-modern .phv2-fp-t { font: 600 42px/1 var(--v2-f-d); letter-spacing: -0.018em; color: var(--v2-ink); }
.prido-home-modern .phv2-fp-d { max-width: 470px; margin-top: 12px; font: 400 16px/1.6 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-subs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }

@keyframes phv2In { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* ---------- 6. Tarjeta de producto y riel ------------------------------------- */
.prido-home-modern .phv2-pc { display: flex; flex-direction: column; min-width: 0; }
.prido-home-modern .phv2-pc-img { position: relative; display: grid; place-items: center; overflow: hidden; aspect-ratio: 1 / 1; border-radius: 16px; background: var(--v2-well); box-shadow: inset 0 0 0 1px var(--v2-well-line); }
.prido-home-modern .phv2-pc-img img { width: 84%; height: 84%; object-fit: contain; transition: transform 0.6s var(--v2-ease-e); }
.prido-home-modern .phv2-pc:hover .phv2-pc-img img { transform: scale(1.05); }
.prido-home-modern .phv2-pc-off { position: absolute; top: 12px; left: 12px; height: 24px; padding: 0 8px; border-radius: 2px; background: var(--v2-promo); color: #ffffff; font: 800 11px/24px var(--v2-f-s); letter-spacing: 0.04em; }
.prido-home-modern .phv2-pc-rk { position: absolute; top: 15px; right: 14px; font: 500 11px/1 var(--v2-f-m); letter-spacing: 0.04em; color: #6b7785; }
.prido-home-modern .phv2-pc-cat { display: block; overflow: hidden; margin-top: 18px; white-space: nowrap; text-overflow: ellipsis; font: 500 10.5px/1.3 var(--v2-f-m); letter-spacing: 0.08em; text-transform: uppercase; color: var(--v2-muted); }
.prido-home-modern .phv2-pc-n { display: -webkit-box; min-height: 43px; margin-top: 8px; overflow: hidden; font: 600 16px/1.35 var(--v2-f-s); color: var(--v2-ink); -webkit-line-clamp: 2; -webkit-box-orient: vertical; transition: color 0.2s; }
.prido-home-modern .phv2-pc:hover .phv2-pc-n { color: var(--v2-accent); }
.prido-home-modern .phv2-pc-pr { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin-top: 14px; }
.prido-home-modern .phv2-pc-from { align-self: center; font: 500 12px/1 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-pc-now { font: 800 20px/1 var(--v2-f-s); letter-spacing: -0.01em; color: var(--v2-ink); font-variant-numeric: tabular-nums; }
.prido-home-modern .phv2-pc-was { font: 500 13px/1 var(--v2-f-s); color: var(--v2-was); text-decoration: line-through; font-variant-numeric: tabular-nums; }
.prido-home-modern .phv2-pc-tr { display: flex; align-items: center; gap: 7px; margin-top: 9px; font: 500 12px/1.3 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-pc-tr::before { content: ""; flex: none; width: 4px; height: 4px; border-radius: 50%; background: var(--v2-dot); }

.prido-home-modern .phv2-ctl { display: flex; align-items: center; gap: 10px; }
.prido-home-modern .phv2-ctl .phv2-tlink { margin-right: 22px; }
.prido-home-modern .phv2-rail { overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; }
.prido-home-modern .phv2-rail::-webkit-scrollbar { display: none; }
.prido-home-modern .phv2-rail-track { display: flex; gap: 24px; }
.prido-home-modern .phv2-rail-item { flex: 0 0 calc((100% - 96px) / 5); min-width: 0; scroll-snap-align: start; }

/* ---------- 7. Empresas --------------------------------------------------------- */
.prido-home-modern .phv2-b2b { background: var(--v2-band); color: #ffffff; box-shadow: inset 0 1px 0 var(--v2-band-line), inset 0 -1px 0 var(--v2-band-line); }
.prido-home-modern .phv2-b2b .phv2-ey { color: #5fd0cb; }
.prido-home-modern .phv2-b2b .phv2-h2 { color: #ffffff; }
.prido-home-modern .phv2-b2b .phv2-lead { color: #b4c3cf; }
.prido-home-modern .phv2-b2b-cta { display: flex; flex: none; gap: 12px; }
.prido-home-modern .phv2-b2b .phv2-btn:hover { background: #ffffff; color: #0b1e2e; }
.prido-home-modern .phv2-b2b .phv2-btn.is-ghost { background: transparent; color: #ffffff; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.34); }
.prido-home-modern .phv2-b2b .phv2-btn.is-ghost:hover { background: #ffffff; color: #0b1e2e; box-shadow: none; }
.prido-home-modern .phv2-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 40px; }
.prido-home-modern .phv2-tab { display: inline-flex; align-items: center; gap: 10px; height: 46px; padding: 0 20px; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 999px; font: 600 14px/1 var(--v2-f-s); color: #dbe5ec; white-space: nowrap; transition: border-color 0.2s, background 0.2s, color 0.2s; }
.prido-home-modern .phv2-tab .phv2-n { color: #8fa3b3; }
.prido-home-modern .phv2-tab:hover { border-color: rgba(255, 255, 255, 0.55); color: #ffffff; }
.prido-home-modern .phv2-tab[aria-selected="true"] { background: #ffffff; border-color: #ffffff; color: #0b1e2e; }
.prido-home-modern .phv2-tab[aria-selected="true"] .phv2-n { color: #5c6b78; }
.prido-home-modern .phv2-ar { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: stretch; gap: 56px; animation: phv2In 0.55s var(--v2-ease-e); }
.prido-home-modern .phv2-ar[hidden] { display: none; }
.prido-home-modern .phv2-ar-media { display: block; position: relative; overflow: hidden; min-height: 500px; border-radius: 20px; background: #12293a; }
.prido-home-modern .phv2-ar-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.prido-home-modern .phv2-ar-body { display: flex; flex-direction: column; padding: 6px 0; }
.prido-home-modern .phv2-ar-t { font: 600 46px/1 var(--v2-f-d); letter-spacing: -0.018em; color: #ffffff; }
.prido-home-modern .phv2-ar-d { margin-top: 16px; font: 400 16px/1.65 var(--v2-f-s); color: #b4c3cf; }
.prido-home-modern .phv2-lbl { margin: 30px 0 8px; font: 500 11px/1 var(--v2-f-m); letter-spacing: 0.14em; text-transform: uppercase; color: #8fa3b3; }
.prido-home-modern .phv2-esp a { display: grid; grid-template-columns: minmax(0, 1fr) auto 16px; align-items: center; gap: 14px; padding: 14px 0; border-top: 1px solid rgba(255, 255, 255, 0.12); font: 500 15px/1.35 var(--v2-f-s); color: #e8eff4; transition: color 0.2s; }
.prido-home-modern .phv2-esp .phv2-n { color: #8fa3b3; }
.prido-home-modern .phv2-esp .phv2-ic { color: #5fd0cb; transition: transform 0.25s var(--v2-ease-e); }
.prido-home-modern .phv2-esp a:hover { color: #5fd0cb; }
.prido-home-modern .phv2-esp a:hover .phv2-ic { transform: translateX(3px); }
.prido-home-modern .phv2-ar-go { margin-top: auto; padding-top: 28px; }
.prido-home-modern .phv2-ar-go .phv2-tlink { color: #ffffff; }
.prido-home-modern .phv2-ar-go .phv2-tlink:hover { color: #5fd0cb; }
.prido-home-modern .phv2-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px; margin-top: 88px; padding-top: 44px; border-top: 1px solid rgba(255, 255, 255, 0.12); }
.prido-home-modern .phv2-st-n { font: 500 12px/1 var(--v2-f-m); letter-spacing: 0.12em; color: #5fd0cb; }
.prido-home-modern .phv2-st-t { margin-top: 16px; font: 600 28px/1.1 var(--v2-f-d); color: #ffffff; }
.prido-home-modern .phv2-st-d { max-width: 340px; margin-top: 10px; font: 400 15px/1.6 var(--v2-f-s); color: #b4c3cf; }

/* ---------- 8. Guía por uso ------------------------------------------------------ */
.prido-home-modern .phv2-uses { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-bottom: 28px; }
.prido-home-modern .phv2-use { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; width: 100%; padding: 20px 18px 18px; border: 1px solid var(--v2-line); border-radius: 14px; background: var(--v2-card); transition: background 0.25s var(--v2-ease), border-color 0.25s var(--v2-ease), transform 0.25s var(--v2-ease); }
.prido-home-modern .phv2-use .phv2-ic { color: var(--v2-accent); }
.prido-home-modern .phv2-use-t { display: block; font: 700 15px/1.25 var(--v2-f-s); color: var(--v2-ink); }
.prido-home-modern .phv2-use-s { display: block; margin-top: 4px; font: 400 12.5px/1.35 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-use:hover { border-color: var(--v2-line-2); transform: translateY(-2px); }
.prido-home-modern .phv2-use[aria-selected="true"] { background: var(--v2-on); border-color: var(--v2-on); }
.prido-home-modern .phv2-use[aria-selected="true"] .phv2-use-t { color: var(--v2-on-fg); }
.prido-home-modern .phv2-use[aria-selected="true"] .phv2-use-s { color: var(--v2-on-sub); }
.prido-home-modern .phv2-use[aria-selected="true"] .phv2-ic { color: var(--v2-on-ic); }
.prido-home-modern .phv2-gr { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 48px; padding: 14px; border: 1px solid var(--v2-line); border-radius: 24px; background: var(--v2-card); animation: phv2In 0.55s var(--v2-ease-e); }
.prido-home-modern .phv2-gr[hidden] { display: none; }
.prido-home-modern .phv2-gr-media { display: block; position: relative; overflow: hidden; min-height: 520px; border-radius: 16px; background: var(--v2-bg-2); }
.prido-home-modern .phv2-gr-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.prido-home-modern .phv2-gr-body { display: flex; flex-direction: column; padding: 30px 30px 26px 0; }
.prido-home-modern .phv2-gr-t { margin-top: 16px; font: 600 46px/1 var(--v2-f-d); letter-spacing: -0.018em; color: var(--v2-ink); }
.prido-home-modern .phv2-gr-d { max-width: 560px; margin-top: 14px; font: 400 16px/1.65 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-gp { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 30px; }
.prido-home-modern .phv2-gp .phv2-pc-img { border-radius: 12px; }
.prido-home-modern .phv2-gp .phv2-pc-n { min-height: 39px; margin-top: 12px; font-size: 14.5px; }
.prido-home-modern .phv2-gp .phv2-pc-pr { margin-top: 10px; }
.prido-home-modern .phv2-gp .phv2-pc-now { font-size: 18px; }
.prido-home-modern .phv2-gp .phv2-pc-from { font-size: 11px; }
.prido-home-modern .phv2-gr-cta { display: flex; align-items: center; gap: 28px; margin-top: auto; padding-top: 28px; }

/* ---------- 9. Clientes y reseñas ----------------------------------------------- */
.prido-home-modern .phv2-logos-h { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.prido-home-modern .phv2-logos-h p { font: 500 11px/1.4 var(--v2-f-m); letter-spacing: 0.14em; text-transform: uppercase; color: var(--v2-muted); }
.prido-home-modern .phv2-logos { display: grid; grid-template-columns: repeat(11, minmax(0, 1fr)); align-items: center; gap: 30px; margin-bottom: 96px; padding: 30px 0; border-top: 1px solid var(--v2-line); border-bottom: 1px solid var(--v2-line); }
.prido-home-modern .phv2-logos img { width: 100%; height: 44px; object-fit: contain; filter: grayscale(1) contrast(1.1); opacity: 0.62; mix-blend-mode: multiply; transition: filter 0.3s, opacity 0.3s; }
.prido-home-modern .phv2-logos img:hover { filter: none; opacity: 1; }
:root[data-theme="dark"] .prido-home-modern .phv2-logos img,
:root[data-theme="dark"] .prido-home-modern .phv2-logos img:hover { filter: grayscale(1) invert(1) contrast(1.15); mix-blend-mode: screen; opacity: 0.72; }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .prido-home-modern .phv2-logos img,
	:root:not([data-theme="light"]) .prido-home-modern .phv2-logos img:hover { filter: grayscale(1) invert(1) contrast(1.15); mix-blend-mode: screen; opacity: 0.72; }
}
.prido-home-modern .phv2-rv { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); align-items: start; gap: 72px; }
.prido-home-modern .phv2-rv > *,
.prido-home-modern .phv2-rv-main { min-width: 0; }
.prido-home-modern .phv2-score { display: flex; align-items: flex-end; gap: 18px; margin-top: 34px; }
.prido-home-modern .phv2-score b { font: 600 150px/0.78 var(--v2-f-d); letter-spacing: -0.045em; color: var(--v2-ink); }
.prido-home-modern .phv2-stars { display: inline-flex; gap: 3px; color: var(--v2-ink); }
.prido-home-modern .phv2-score-s { margin-top: 10px; font: 500 12px/1.4 var(--v2-f-m); color: var(--v2-muted); }
.prido-home-modern .phv2-rv-go { margin-top: 34px; }
.prido-home-modern .phv2-rv-rail .phv2-rail-item { flex-basis: calc((100% - 24px) / 2); }
.prido-home-modern .phv2-rv-card { display: flex; flex-direction: column; height: 100%; min-height: 330px; padding: 38px 36px 32px; border: 1px solid var(--v2-line); border-radius: 20px; background: var(--v2-card); }
.prido-home-modern .phv2-rv-mark { display: block; height: 34px; margin-top: -6px; font: 600 88px/1 var(--v2-f-d); color: var(--v2-quote); }
.prido-home-modern .phv2-rv-q { flex: 1; display: -webkit-box; margin-top: 18px; overflow: hidden; font: 600 23px/1.42 var(--v2-f-d); color: var(--v2-ink); -webkit-line-clamp: 6; -webkit-box-orient: vertical; }
.prido-home-modern .phv2-rv-a { display: flex; align-items: center; gap: 12px; margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--v2-line); }
.prido-home-modern .phv2-av { display: grid; place-items: center; flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--v2-bg-2); font: 700 15px/1 var(--v2-f-s); color: var(--v2-ink); }
.prido-home-modern .phv2-rv-name { display: block; font: 700 14px/1.2 var(--v2-f-s); color: var(--v2-ink); }
.prido-home-modern .phv2-rv-src { display: block; margin-top: 5px; font: 500 10.5px/1.2 var(--v2-f-m); letter-spacing: 0.06em; color: var(--v2-muted); }
.prido-home-modern .phv2-rv-a .phv2-stars { margin-left: auto; }
.prido-home-modern .phv2-rv-nav { display: flex; align-items: center; gap: 10px; margin-top: 28px; }

/* ---------- 10. Blog --------------------------------------------------------------- */
.prido-home-modern .phv2-topics { display: flex; flex-wrap: wrap; gap: 8px; }
.prido-home-modern .phv2-topics[hidden] { display: none; }
.prido-home-modern .phv2-bl { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); grid-auto-flow: row dense; column-gap: 56px; align-items: start; }
.prido-home-modern .phv2-bp { min-width: 0; }
.prido-home-modern .phv2-bp.is-rest,
.prido-home-modern .phv2-bp.is-off { display: none; }
.prido-home-modern .phv2-bp.is-feat { grid-column: 1; grid-row: 1 / span 4; animation: phv2In 0.55s var(--v2-ease-e); }
.prido-home-modern .phv2-bp.is-item { grid-column: 2; display: grid; grid-template-columns: 136px minmax(0, 1fr); align-items: start; gap: 22px; padding: 26px 0; border-top: 1px solid var(--v2-line); animation: phv2In 0.55s var(--v2-ease-e); }
.prido-home-modern .phv2-bp.is-item.is-first { padding-top: 0; border-top: 0; }
.prido-home-modern .phv2-bp-media { display: block; overflow: hidden; border-radius: 20px; background: var(--v2-bg-2); aspect-ratio: 16 / 10; }
.prido-home-modern .phv2-bp.is-item .phv2-bp-media { border-radius: 12px; aspect-ratio: 4 / 3; }
.prido-home-modern .phv2-bp-media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.9s var(--v2-ease-e); }
.prido-home-modern .phv2-bp:hover .phv2-bp-media img { transform: scale(1.035); }
.prido-home-modern .phv2-meta { display: flex; align-items: center; gap: 12px; font: 500 11px/1 var(--v2-f-m); letter-spacing: 0.1em; text-transform: uppercase; color: var(--v2-muted); }
.prido-home-modern .phv2-meta-c { color: var(--v2-accent); }
.prido-home-modern .phv2-meta i { width: 3px; height: 3px; border-radius: 50%; background: var(--v2-line-2); }
.prido-home-modern .phv2-bp.is-feat .phv2-meta { margin-top: 26px; }
.prido-home-modern .phv2-bp-t { margin-top: 14px; font: 600 40px/1.06 var(--v2-f-d); letter-spacing: -0.014em; color: var(--v2-ink); text-wrap: balance; }
.prido-home-modern .phv2-bp-t a { transition: color 0.2s; }
.prido-home-modern .phv2-bp-t a:hover { color: var(--v2-accent); }
.prido-home-modern .phv2-bp-x { max-width: 640px; margin-top: 14px; font: 400 16px/1.65 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-bp.is-item .phv2-bp-t { margin-top: 10px; font: 600 18px/1.35 var(--v2-f-s); letter-spacing: 0; text-wrap: pretty; }
.prido-home-modern .phv2-bp.is-item .phv2-bp-x { display: none; }
.prido-home-modern .phv2-bl-all { grid-column: 2; margin-top: 30px; }

/* ---------- 11. Texto SEO y FAQ ------------------------------------------------------ */
.prido-home-modern .phv2-sg { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: start; gap: 96px; }
.prido-home-modern .phv2-prose p { margin-top: 18px; font: 400 16px/1.8 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-prose p:first-child { margin-top: 24px; }
.prido-home-modern .phv2-idx-h { margin: 44px 0 6px; font: 500 11px/1 var(--v2-f-m); letter-spacing: 0.14em; text-transform: uppercase; color: var(--v2-muted); }
.prido-home-modern .phv2-cidx { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; }
.prido-home-modern .phv2-cidx a { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--v2-line); font: 600 14px/1.3 var(--v2-f-s); color: var(--v2-ink); transition: color 0.2s; }
.prido-home-modern .phv2-cidx a:hover { color: var(--v2-accent); }
.prido-home-modern .phv2-faq-t { margin-top: 18px; font: 600 44px/1.02 var(--v2-f-d); letter-spacing: -0.018em; color: var(--v2-ink); }
.prido-home-modern .phv2-faq { margin-top: 32px; border-top: 1px solid var(--v2-line); }
.prido-home-modern .phv2-fq { border-bottom: 1px solid var(--v2-line); }
.prido-home-modern .phv2-fq summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 0; cursor: pointer; list-style: none; }
.prido-home-modern .phv2-fq summary::-webkit-details-marker { display: none; }
.prido-home-modern .phv2-fq-q { font: 600 18px/1.35 var(--v2-f-s); color: var(--v2-ink); transition: color 0.2s; }
.prido-home-modern .phv2-fq summary:hover .phv2-fq-q { color: var(--v2-accent); }
.prido-home-modern .phv2-fq-ic { display: grid; place-items: center; flex: none; width: 34px; height: 34px; border: 1px solid var(--v2-line-2); border-radius: 50%; color: var(--v2-ink); transition: background 0.25s, border-color 0.25s, color 0.25s, transform 0.35s var(--v2-ease-e); }
.prido-home-modern .phv2-fq[open] .phv2-fq-ic { background: var(--v2-ink); border-color: var(--v2-ink); color: var(--v2-bg); transform: rotate(45deg); }
.prido-home-modern .phv2-fq-a p { padding: 0 72px 26px 0; font: 400 15.5px/1.7 var(--v2-f-s); color: var(--v2-muted); }
.prido-home-modern .phv2-faq-more { display: flex; align-items: center; gap: 22px; margin-top: 34px; }
.prido-home-modern .phv2-faq-more p { font: 400 14px/1.5 var(--v2-f-s); color: var(--v2-muted); }

/* ---------- 12. Aparición al hacer scroll (solo con JS; sin JS todo está visible) ----- */
.prido-home-modern.phv2-js .phv2-sec > .phv2-wrap { transition: opacity 0.8s var(--v2-ease-e), transform 0.8s var(--v2-ease-e); }
.prido-home-modern.phv2-js .phv2-sec:not(.is-in) > .phv2-wrap { opacity: 0; transform: translateY(18px); }

@media (prefers-reduced-motion: reduce) {
	.prido-home-modern :where(.phv2-trust, .phv2-sec) *,
	.prido-home-modern.phv2-js .phv2-sec > .phv2-wrap { transition: none !important; animation: none !important; } /* accesibilidad: sin movimiento */
	.prido-home-modern.phv2-js .phv2-sec:not(.is-in) > .phv2-wrap { opacity: 1; transform: none; }
}

/* ---------- 13. Tablet (≤1199 ajusta; ≤1023 apila) --------------------------------------- */
@media (max-width: 1199px) {
	.prido-home-modern .phv2-cats-head { gap: 48px; }
	.prido-home-modern .phv2-fam-n { font-size: 24px; }
	.prido-home-modern .phv2-fp-t { font-size: 36px; }
	.prido-home-modern .phv2-fp-body { grid-template-columns: 1fr; gap: 20px; }
	.prido-home-modern .phv2-fp-body .phv2-btn { justify-self: start; }
	.prido-home-modern .phv2-rail-item { flex-basis: calc((100% - 72px) / 4); }
	.prido-home-modern .phv2-uses { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.prido-home-modern .phv2-logos { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 26px 30px; }
	.prido-home-modern .phv2-rv { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.prido-home-modern .phv2-sg { gap: 64px; }
}

@media (max-width: 1023px) {
	.prido-home-modern .phv2-head { display: block; margin-bottom: 36px; }
	.prido-home-modern .phv2-head > :last-child:not(:first-child) { margin-top: 24px; }
	.prido-home-modern .phv2-trust-grid { grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; }
	.prido-home-modern .phv2-tr:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.prido-home-modern .phv2-tr { padding: 22px var(--v2-pad); border-top: 1px solid var(--v2-line); }
	.prido-home-modern .phv2-tr:first-child { padding-left: var(--v2-pad); }
	.prido-home-modern .phv2-tr:nth-child(odd) { border-left: 0; }
	.prido-home-modern .phv2-tr:nth-child(-n+2) { border-top: 0; }
	.prido-home-modern .phv2-cats-head { display: block; margin-bottom: 36px; }
	.prido-home-modern .phv2-cats-intro { margin-top: 22px; }
	/* explorador → acordeón */
	.prido-home-modern .phv2-xp { min-height: 0; }
	.prido-home-modern .phv2-fams { width: auto; }
	.prido-home-modern .phv2-fam-row { height: 62px; padding: 0 6px 0 4px; }
	.prido-home-modern .phv2-fam-row:hover,
	.prido-home-modern .phv2-fam.is-on .phv2-fam-row { background: transparent; }
	.prido-home-modern .phv2-fam.is-on .phv2-fam-n { transform: none; }
	.prido-home-modern .phv2-fam-row .phv2-ic { opacity: 1; transform: none; color: var(--v2-ink); transition: transform 0.35s var(--v2-ease-e); }
	.prido-home-modern .phv2-fam.is-on .phv2-fam-row .phv2-ic { color: var(--v2-accent); transform: rotate(90deg); }
	.prido-home-modern .phv2-fp { position: static; width: auto; padding: 6px 0 26px; border-bottom: 1px solid var(--v2-line); }
	.prido-home-modern .phv2-fp-media { border-radius: 14px; }
	.prido-home-modern .phv2-fp-body { margin-top: 16px; }
	.prido-home-modern .phv2-fp-t { display: none; }
	.prido-home-modern .phv2-fp-d { margin-top: 0; font-size: 15px; }
	.prido-home-modern .phv2-subs { margin-top: 16px; }
	.prido-home-modern .phv2-b2b-cta { margin-top: 26px; }
	.prido-home-modern .phv2-tabs { flex-wrap: nowrap; overflow-x: auto; margin: 0 calc(-1 * var(--v2-pad)) 24px; padding: 0 var(--v2-pad); scrollbar-width: none; }
	.prido-home-modern .phv2-tabs::-webkit-scrollbar { display: none; }
	.prido-home-modern .phv2-ar { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.prido-home-modern .phv2-ar-media { min-height: 0; aspect-ratio: 16 / 10; border-radius: 16px; }
	.prido-home-modern .phv2-ar-body { padding: 26px 0 0; }
	.prido-home-modern .phv2-ar-t { font-size: 38px; }
	.prido-home-modern .phv2-steps { gap: 28px; margin-top: 56px; padding-top: 34px; }
	.prido-home-modern .phv2-st-t { margin-top: 10px; font-size: 24px; }
	.prido-home-modern .phv2-gr { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 10px; border-radius: 20px; }
	.prido-home-modern .phv2-gr-media { min-height: 0; aspect-ratio: 16 / 10; border-radius: 12px; }
	.prido-home-modern .phv2-gr-body { padding: 24px 12px 12px; }
	.prido-home-modern .phv2-gr-t { font-size: 38px; }
	.prido-home-modern .phv2-bl { display: block; }
	.prido-home-modern .phv2-bp.is-item { padding: 20px 0; }
	.prido-home-modern .phv2-bp.is-feat + .phv2-bp.is-item,
	.prido-home-modern .phv2-bp.is-item.is-first { margin-top: 36px; padding-top: 26px; border-top: 1px solid var(--v2-line); }
	.prido-home-modern .phv2-bp-t { font-size: 34px; }
	.prido-home-modern .phv2-bl-all { margin-top: 26px; }
	.prido-home-modern .phv2-sg { grid-template-columns: minmax(0, 1fr); gap: 64px; }
}

/* ---------- 14. Móvil (≤767) --------------------------------------------------------------- */
@media (max-width: 767px) {
	.prido-home-modern .phv2-lead,
	.prido-home-modern .phv2-intro { font-size: 16px; }
	.prido-home-modern .phv2-tr { flex-direction: column; align-items: flex-start; gap: 12px; padding: 22px 20px; }
	.prido-home-modern .phv2-tr:first-child { padding-left: 20px; }
	.prido-home-modern .phv2-tr-ic { width: 40px; height: 40px; }
	.prido-home-modern .phv2-tr-t { font-size: 14px; }
	.prido-home-modern .phv2-tr-s { font-size: 12.5px; }
	.prido-home-modern .phv2-quick { flex-wrap: nowrap; overflow-x: auto; margin: 22px calc(-1 * var(--v2-pad)) 0; padding: 0 var(--v2-pad); scrollbar-width: none; }
	.prido-home-modern .phv2-quick::-webkit-scrollbar { display: none; }
	.prido-home-modern .phv2-fam-row { grid-template-columns: 28px minmax(0, 1fr) auto 18px; }
	.prido-home-modern .phv2-fp .phv2-btn { width: 100%; margin-top: 2px; }
	.prido-home-modern .phv2-ctl .phv2-arr { display: none; }
	.prido-home-modern .phv2-ctl .phv2-tlink { margin: 0; }
	.prido-home-modern .phv2-rail { margin: 0 calc(-1 * var(--v2-pad)); padding: 0 var(--v2-pad); scroll-padding-inline: var(--v2-pad); }
	.prido-home-modern .phv2-rail-track { gap: 14px; }
	.prido-home-modern .phv2-rail-item { flex-basis: 62%; }
	.prido-home-modern .phv2-rail-item:last-child { padding-right: var(--v2-pad); box-sizing: content-box; }
	.prido-home-modern .phv2-b2b-cta { flex-direction: column; align-items: stretch; }
	.prido-home-modern .phv2-steps { grid-template-columns: minmax(0, 1fr); gap: 26px; }
	.prido-home-modern .phv2-uses { display: flex; overflow-x: auto; margin: 0 calc(-1 * var(--v2-pad)) 18px; padding: 0 var(--v2-pad); gap: 10px; scrollbar-width: none; }
	.prido-home-modern .phv2-uses::-webkit-scrollbar { display: none; }
	.prido-home-modern .phv2-use { flex: 0 0 150px; padding: 16px 14px; }
	.prido-home-modern .phv2-gr-t { font-size: 34px; }
	.prido-home-modern .phv2-gr-d { font-size: 15px; }
	.prido-home-modern .phv2-gp { gap: 10px; margin-top: 22px; }
	.prido-home-modern .phv2-gp .phv2-pc-cat,
	.prido-home-modern .phv2-gp .phv2-pc-was,
	.prido-home-modern .phv2-gp .phv2-pc-tr,
	.prido-home-modern .phv2-gp .phv2-pc-off { display: none; }
	.prido-home-modern .phv2-gp .phv2-pc-n { min-height: 34px; margin-top: 10px; font-size: 12.5px; }
	.prido-home-modern .phv2-gp .phv2-pc-now { font-size: 15px; }
	.prido-home-modern .phv2-gp .phv2-pc-from { display: none; }
	.prido-home-modern .phv2-gr-cta { flex-direction: column; align-items: stretch; gap: 14px; padding-top: 24px; }
	.prido-home-modern .phv2-gr-cta .phv2-tlink { align-self: center; }
	.prido-home-modern .phv2-logos-h { display: block; }
	.prido-home-modern .phv2-logos-h .phv2-tlink { margin-top: 12px; }
	.prido-home-modern .phv2-logos { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px 20px; margin-bottom: 60px; padding: 24px 0; }
	.prido-home-modern .phv2-logos img { height: 32px; }
	.prido-home-modern .phv2-score { margin-top: 24px; }
	.prido-home-modern .phv2-score b { font-size: 112px; }
	.prido-home-modern .phv2-rv-go { margin-top: 22px; }
	.prido-home-modern .phv2-rv-rail .phv2-rail-item { flex-basis: 86%; }
	.prido-home-modern .phv2-rv-card { min-height: 0; padding: 28px 24px 24px; }
	.prido-home-modern .phv2-rv-q { font-size: 21px; }
	.prido-home-modern .phv2-rv-nav { display: none; }
	.prido-home-modern .phv2-topics { flex-wrap: nowrap; overflow-x: auto; margin: 0 calc(-1 * var(--v2-pad)); padding: 0 var(--v2-pad); scrollbar-width: none; }
	.prido-home-modern .phv2-topics::-webkit-scrollbar { display: none; }
	.prido-home-modern .phv2-bp-t { font-size: 31px; }
	.prido-home-modern .phv2-bp-x { font-size: 15px; }
	.prido-home-modern .phv2-bp.is-item { grid-template-columns: 104px minmax(0, 1fr); gap: 16px; }
	.prido-home-modern .phv2-bp.is-item .phv2-bp-t { font-size: 16px; }
	.prido-home-modern .phv2-prose p { font-size: 15px; }
	.prido-home-modern .phv2-cidx { column-gap: 18px; }
	.prido-home-modern .phv2-cidx a { font-size: 13px; }
	.prido-home-modern .phv2-faq-t { font-size: 36px; }
	.prido-home-modern .phv2-fq summary { padding: 20px 0; }
	.prido-home-modern .phv2-fq-q { font-size: 16.5px; }
	.prido-home-modern .phv2-fq-a p { padding-right: 8px; font-size: 15px; }
	.prido-home-modern .phv2-faq-more { flex-direction: column; align-items: flex-start; gap: 14px; }
}

/* =============================================================================
   §99 · r3 — iconos por máscara CSS (menos nodos en el DOM)
   El mismo dibujo que prido_home_v2_icon() (rejilla 24, trazo 1.8, extremos redondos) pero como
   <span class="phv2-ic phv2-ic--m phv2-ic--arrow phv2-ic--s15" aria-hidden="true"></span>:
   1 nodo en vez de <svg> + <path>. Las estrellas de .phv2-stars ya no llevan hijos: las dibuja
   .phv2-stars::before (n estrellas de s px con 3 px entre ellas, igual que el flex gap anterior).
   El color sigue siendo currentColor; en colores forzados pasa a CanvasText y al imprimir se conserva (print-color-adjust).
   ========================================================================== */
.prido-home-modern .phv2-ic--m { flex: none; display: block; background-color: currentColor; -webkit-mask: var(--phv2-mk) center / 100% 100% no-repeat; mask: var(--phv2-mk) center / 100% 100% no-repeat; -webkit-print-color-adjust: exact; print-color-adjust: exact; forced-color-adjust: none; }
.prido-home-modern .phv2-ic--arrow { --phv2-mk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E"); }
.prido-home-modern .phv2-ic--arrow-l { --phv2-mk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 12H5M11 6l-6 6 6 6'/%3E%3C/svg%3E"); }
.prido-home-modern .phv2-ic--arrow-ur { --phv2-mk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M8 7h9v9'/%3E%3C/svg%3E"); }
.prido-home-modern .phv2-ic--plus { --phv2-mk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E"); }
.prido-home-modern .phv2-ic--s13 { width: 13px; height: 13px; }
.prido-home-modern .phv2-ic--s14 { width: 14px; height: 14px; }
.prido-home-modern .phv2-ic--s15 { width: 15px; height: 15px; }
.prido-home-modern .phv2-ic--s16 { width: 16px; height: 16px; }
.prido-home-modern .phv2-ic--s17 { width: 17px; height: 17px; }
.prido-home-modern .phv2-stars--s13 { --phv2-ss: 13px; --phv2-mk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29.5385 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 2.8 2.9 5.9 6.5.9-4.7 4.6 1.1 6.4-5.8-3-5.8 3 1.1-6.4-4.7-4.6 6.5-.9z' fill='%23000' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.prido-home-modern .phv2-stars--s17 { --phv2-ss: 17px; --phv2-mk: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28.2353 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 2.8 2.9 5.9 6.5.9-4.7 4.6 1.1 6.4-5.8-3-5.8 3 1.1-6.4-4.7-4.6 6.5-.9z' fill='%23000' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.prido-home-modern .phv2-stars--n1 { --phv2-n: 1; }
.prido-home-modern .phv2-stars--n2 { --phv2-n: 2; }
.prido-home-modern .phv2-stars--n3 { --phv2-n: 3; }
.prido-home-modern .phv2-stars--n4 { --phv2-n: 4; }
.prido-home-modern .phv2-stars--n5 { --phv2-n: 5; }
.prido-home-modern .phv2-stars[class*="phv2-stars--n"]::before { content: ""; flex: none; display: block; width: calc(var(--phv2-n) * (var(--phv2-ss) + 3px) - 3px); height: var(--phv2-ss); background-color: currentColor; -webkit-mask: var(--phv2-mk) 0 0 / calc(var(--phv2-ss) + 3px) var(--phv2-ss) repeat-x; mask: var(--phv2-mk) 0 0 / calc(var(--phv2-ss) + 3px) var(--phv2-ss) repeat-x; -webkit-print-color-adjust: exact; print-color-adjust: exact; forced-color-adjust: none; }
.prido-home-modern .phv2-stars--n0::before { display: none; }
/* Colores forzados (alto contraste): la máscara pinta con background-color; con forced-color-adjust: none usaría el color de
   autor (puede quedar oscuro sobre negro), así que se fija el color de texto del sistema. */
@media (forced-colors: active) {
	.prido-home-modern .phv2-ic--m,
	.prido-home-modern .phv2-stars[class*="phv2-stars--n"]::before { background-color: CanvasText; }
}
