/**
 * Zippyn Home — Redesign 2026 (overlay)
 *
 * Design system overlay sobre el home actual. Carga al final del pipeline para ganar a
 * todas las hojas previas. NO toca PHP ni HTML — solo reestructura visualmente.
 *
 * Spec: typography Inter; primario #071828 (dark navy); PRO ámbar #f59e0b; whatsapp #22c55e.
 * Grid 8px. Mobile-first 375px / 390px.
 *
 * Notas técnicas:
 *  - Todas las reglas viven bajo `body.zp-market-home` para no impactar otras vistas.
 *  - Selectores defensivos con `:where(...)` para baja especificidad EN VARIABLES, y
 *    selectores fuertes cuando necesitamos ganarle a la hoja premium previa.
 *  - Mantenemos `box-shadow` / `border-radius` / `padding` consistentes con tokens.
 */

/* ============================================================
 * 1. DESIGN TOKENS
 * ============================================================ */
body.zp-market-home {
	--zp-c-primary:       #071828;
	--zp-c-primary-dark:  #040f1a;
	--zp-c-primary-bg:    #0d2340;
	--zp-c-primary-bord:  #1a3a5c;
	--zp-c-wa:            #22c55e;
	--zp-c-pro:           #f59e0b;
	--zp-c-pro-bg:        #0f1e38;
	--zp-c-pro-bord:      #2a4a8a;
	--zp-c-pro-text:      #ffffff;
	--zp-c-pro-text-soft: rgba(255, 255, 255, 0.80);

	--zp-c-text-1: #e2e8f0;
	--zp-c-text-2: #8fa8c0;
	--zp-c-text-3: #5e7b96;
	--zp-c-text-inv: #ffffff;

	--zp-c-bg-page:   #071828;
	--zp-c-bg-card:   #0d2340;
	--zp-c-bg-soft:   #091522;
	--zp-c-bg-input:  #0d2340;
	--zp-c-border:    #1a3a5c;
	--zp-c-border-strong: #254a6c;

	/* Tipografía */
	--zp-font: -apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', sans-serif;
	--zp-fs-section: 16px;
	--zp-fs-label:   12px;
	--zp-fs-body:    13px;
	--zp-fs-meta:    11px;
	--zp-fs-btn:     13px;
	--zp-fs-hero:    22px;

	--zp-fw-regular: 400;
	--zp-fw-medium:  500;
	--zp-fw-semibold:600;

	/* Espaciado (8px grid) */
	--zp-sp-1: 4px;
	--zp-sp-2: 6px;
	--zp-sp-3: 8px;
	--zp-sp-4: 10px;
	--zp-sp-5: 12px;
	--zp-sp-6: 16px;
	--zp-sp-7: 20px;
	--zp-sp-8: 24px;

	/* Border radius */
	--zp-r-card: 14px;
	--zp-r-btn:  10px;
	--zp-r-pill: 999px;
	--zp-r-badge:6px;
	--zp-r-icon: 10px;

	/* Sombras */
	--zp-shadow-card-hover: 0 4px 16px rgba(0, 0, 0, 0.40);
	--zp-shadow-card-press: 0 4px 16px rgba(0, 0, 0, 0.50);

	/* Transición base */
	--zp-trans: all 0.15s ease;

	font-family: var(--zp-font);
	background: var(--zp-c-bg-page);
	color: var(--zp-c-text-1);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ============================================================
 * 2. TIPOGRAFÍA / RESET BASE DEL HOME
 * ============================================================ */
body.zp-market-home .zp-home,
body.zp-market-home .zp-home--py,
body.zp-market-home .zp-home--premium-app {
	font-family: var(--zp-font);
	background: var(--zp-c-bg-page);
}

body.zp-market-home .zp-section-title {
	font-size: var(--zp-fs-section) !important;
	font-weight: var(--zp-fw-semibold) !important;
	color: var(--zp-c-text-1) !important;
	letter-spacing: -0.01em;
	line-height: 1.25;
}

body.zp-market-home .zp-section-sub {
	font-size: var(--zp-fs-meta) !important;
	color: var(--zp-c-text-2) !important;
	font-weight: var(--zp-fw-regular);
	line-height: 1.4;
	margin: 4px 0 0;
}

body.zp-market-home .zp-section-head {
	margin-bottom: var(--zp-sp-5) !important;
	padding: 0 !important;
}

body.zp-market-home .zp-section,
body.zp-market-home .zp-section--featured,
body.zp-market-home .zp-section--unified-results,
body.zp-market-home .zp-macro-strip,
body.zp-market-home .zp-macro-block,
body.zp-market-home .zp-reviews,
body.zp-market-home .zp-customer-cta,
body.zp-market-home .zp-trust-bar,
body.zp-market-home .zp-plus {
	padding: var(--zp-sp-8) var(--zp-sp-6) !important;
	margin: 0 !important;
	background: transparent;
}

body.zp-market-home .zp-container {
	padding-left: var(--zp-sp-6) !important;
	padding-right: var(--zp-sp-6) !important;
	max-width: 768px;
	margin: 0 auto;
}

body.zp-market-home .zp-link-all {
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-semibold) !important;
	color: var(--zp-c-primary) !important;
	text-decoration: none;
}

body.zp-market-home .zp-link-all i {
	margin-left: 2px;
	font-size: 10px;
}

/* ============================================================
 * 3. TOPBAR (header 2026)
 * ============================================================ */
/* Header home: zp-header-global-lock.css (#0d2b7d) */

body.zp-market-home .zp-header.zp-header--2026 .zp-header-nav__mobile-bar {
	padding: 8px var(--zp-sp-6) 4px !important;
	gap: var(--zp-sp-3);
}

body.zp-market-home .zp-header.zp-header--2026 .zp-logo-img {
	height: 72px;
	width: auto;
}

body.zp-market-home .zp-header.zp-header--2026 .zp-header-nav__mobile-loc {
	color: rgba(255, 255, 255, 0.7) !important;
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-medium);
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 0;
	background: transparent !important;
	border: 0 !important;
}

body.zp-market-home .zp-header.zp-header--2026 .zp-header-nav__mobile-loc-text {
	color: rgba(255, 255, 255, 0.85) !important;
	font-size: var(--zp-fs-meta) !important;
}

body.zp-market-home .zp-header.zp-header--2026 .zp-drawer-toggle {
	color: #fff !important;
}

body.zp-market-home .zp-header.zp-header--2026 .zp-header-nav__mobile-profile-avatar img {
	border: 2px solid rgba(255, 255, 255, 0.4);
	border-radius: 999px;
	width: 32px;
	height: 32px;
}

/* ============================================================
 * 4. HERO (continúa azul del topbar, sin corte)
 * ============================================================ */
body.zp-market-home .zp-hero,
body.zp-market-home .zp-hero--py {
	background: var(--zp-c-primary) !important;
	padding: var(--zp-sp-3) 0 var(--zp-sp-6) !important;
	margin-top: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.zp-market-home .zp-hero__bg {
	display: none !important; /* mapviz decorativo no aporta en el rediseño limpio */
}

body.zp-market-home .zp-hero__inner {
	padding: var(--zp-sp-6) !important;
	text-align: left;
	max-width: 768px;
	margin: 0 auto;
}

body.zp-market-home .zp-hero__title {
	font-size: var(--zp-fs-hero) !important;
	font-weight: var(--zp-fw-semibold) !important;
	color: #fff !important;
	line-height: 1.25 !important;
	letter-spacing: -0.015em;
	margin: 0 0 var(--zp-sp-3) !important;
	text-shadow: none !important;
	font-family: var(--zp-font) !important;
}

body.zp-market-home .zp-hero__lead,
body.zp-market-home .zp-hero__lead--py {
	font-size: var(--zp-fs-label) !important;
	color: rgba(255, 255, 255, 0.65) !important;
	font-weight: var(--zp-fw-regular) !important;
	line-height: 1.4 !important;
	margin: 0 0 var(--zp-sp-6) !important;
	max-width: 100%;
	font-family: var(--zp-font) !important;
}

/* Intent switch (necesito un servicio / soy proveedor) — pills minimalistas */
body.zp-market-home .zp-intent-switch {
	display: inline-flex;
	background: rgba(255, 255, 255, 0.12);
	border-radius: var(--zp-r-pill);
	padding: 3px;
	margin-bottom: var(--zp-sp-6);
	gap: 0;
}
body.zp-market-home .zp-intent-switch__btn {
	background: transparent !important;
	color: rgba(255, 255, 255, 0.7) !important;
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-semibold) !important;
	padding: 6px 14px !important;
	border: 0 !important;
	border-radius: var(--zp-r-pill) !important;
	transition: var(--zp-trans);
}
body.zp-market-home .zp-intent-switch__btn.is-active,
body.zp-market-home .zp-intent-switch__btn[aria-pressed="true"] {
	background: #0d2340 !important;
	color: var(--zp-c-primary) !important;
}

/* Search panel (la "tarjeta blanca con campos") */
body.zp-market-home .zp-search-panel,
body.zp-market-home .zp-search-panel--py {
	background: #0d2340 !important;
	border-radius: var(--zp-r-card) !important;
	padding: var(--zp-sp-5) !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06) !important;
	border: 0 !important;
}

body.zp-market-home .zp-search-bar,
body.zp-market-home .zp-search-bar--py {
	display: flex !important;
	flex-direction: column;
	gap: var(--zp-sp-3) !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
}

body.zp-market-home .zp-search-field,
body.zp-market-home .zp-search-field--py {
	display: flex;
	flex-direction: column;
	padding: 0 !important;
	margin: 0 !important;
	gap: 4px;
}

body.zp-market-home .zp-search-field__label {
	font-size: 10px !important;
	font-weight: var(--zp-fw-medium) !important;
	color: var(--zp-c-text-3) !important;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin: 0 0 0 4px !important;
}

body.zp-market-home .zp-search-field__label--ghost {
	display: none;
}

body.zp-market-home .zp-search-field__control {
	background: var(--zp-c-bg-input) !important;
	border-radius: 9px !important;
	padding: 10px var(--zp-sp-5) !important;
	border: 0 !important;
	display: flex;
	align-items: center;
	gap: var(--zp-sp-3);
	min-height: 44px;
}

body.zp-market-home .zp-search-field__icon {
	color: var(--zp-c-text-3) !important;
	font-size: 14px;
}

body.zp-market-home .zp-search-field input.zp-input,
body.zp-market-home .zp-search-field .chosen-single,
body.zp-market-home .zp-search-field select,
body.zp-market-home .zp-search-field .chosen-container,
body.zp-market-home .zp-search-field .chosen-container * {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-size: var(--zp-fs-body) !important;
	color: var(--zp-c-text-1) !important;
	padding: 0 !important;
	height: auto !important;
	line-height: 1.3 !important;
}

body.zp-market-home .zp-search-field input.zp-input::placeholder,
body.zp-market-home .zp-search-field .chosen-default {
	color: #aaa !important;
}

/* Botón Buscar (full width azul) */
body.zp-market-home .zp-search-field--submit .zp-classic-search__btn-wrap,
body.zp-market-home .zp-search-field--submit {
	margin-top: var(--zp-sp-1);
}
body.zp-market-home #zp-classic-search-submit,
body.zp-market-home .zp-search-field--submit .zp-btn--primary,
body.zp-market-home .zp-btn.zp-btn--primary {
	width: 100%;
	background: var(--zp-c-primary) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: var(--zp-r-btn) !important;
	padding: 12px !important;
	font-size: 14px !important;
	font-weight: var(--zp-fw-semibold) !important;
	box-shadow: none !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--zp-sp-3);
	transition: var(--zp-trans);
}
body.zp-market-home #zp-classic-search-submit:active,
body.zp-market-home .zp-btn.zp-btn--primary:active {
	transform: scale(0.97);
}

/* Location pill chip (al lado del input de ubicación) */
body.zp-market-home .zp-location-btn {
	background: var(--zp-c-primary-bg) !important;
	color: var(--zp-c-primary) !important;
	border: 0 !important;
	border-radius: 5px !important;
	padding: 4px 8px !important;
	font-size: 11px !important;
	font-weight: var(--zp-fw-semibold) !important;
	cursor: pointer;
	transition: var(--zp-trans);
}
body.zp-market-home .zp-location-btn:active {
	transform: scale(0.95);
}

/* ============================================================
 * 5. TRUST STRIP (debajo del hero, scroll horizontal)
 * ============================================================ */
body.zp-market-home .zp-hero .zp-home-search-follow {
	background: var(--zp-c-primary-dark) !important;
	margin: var(--zp-sp-6) calc(-1 * var(--zp-sp-6)) calc(-1 * var(--zp-sp-6)) !important;
	padding: 10px var(--zp-sp-6) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.zp-market-home .zp-home-trust-micro {
	display: flex !important;
	gap: var(--zp-sp-6) !important;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
}
body.zp-market-home .zp-home-trust-micro::-webkit-scrollbar {
	display: none;
}
body.zp-market-home .zp-home-trust-micro__item {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: var(--zp-sp-2);
	color: rgba(255, 255, 255, 0.8) !important;
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-medium);
	white-space: nowrap;
}
body.zp-market-home .zp-home-trust-micro__icon {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.85);
}

/* Trust bar al final del home — variante "stack" de mismas 4 cards */
body.zp-market-home .zp-trust-bar {
	background: var(--zp-c-bg-card) !important;
	padding: var(--zp-sp-8) var(--zp-sp-6) !important;
}
body.zp-market-home .zp-trust-bar__grid {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: var(--zp-sp-5) !important;
	padding: 0 !important;
}
body.zp-market-home .zp-trust-item {
	background: var(--zp-c-bg-page) !important;
	border: 0.5px solid var(--zp-c-border) !important;
	border-radius: var(--zp-r-icon) !important;
	padding: var(--zp-sp-5) !important;
	display: flex;
	flex-direction: column;
	gap: var(--zp-sp-2);
	box-shadow: none !important;
}
body.zp-market-home .zp-trust-item__icon {
	font-size: 18px !important;
	color: var(--zp-c-primary) !important;
}
body.zp-market-home .zp-trust-item strong {
	font-size: var(--zp-fs-body) !important;
	font-weight: var(--zp-fw-semibold) !important;
	color: var(--zp-c-text-1) !important;
}
body.zp-market-home .zp-trust-item span:not(.zp-trust-item__icon):not([class*="icon"]) {
	font-size: 10px !important;
	color: var(--zp-c-text-3) !important;
	line-height: 1.4;
}

/* ============================================================
 * 6. SEPARADORES ENTRE SECCIONES (8px grey strip)
 * ============================================================ */
body.zp-market-home .zp-section + .zp-section,
body.zp-market-home .zp-section + .zp-trust-bar,
body.zp-market-home .zp-section + .zp-macro-strip,
body.zp-market-home .zp-section + .zp-macro-block,
body.zp-market-home .zp-section + .zp-plus,
body.zp-market-home .zp-macro-block + .zp-section,
body.zp-market-home .zp-macro-block + .zp-macro-block,
body.zp-market-home .zp-macro-strip + .zp-section,
body.zp-market-home .zp-trust-bar + .zp-section,
body.zp-market-home .zp-reviews + *,
body.zp-market-home .zp-pro-soft + *,
body.zp-market-home .zp-plus + * {
	border-top: 8px solid var(--zp-c-bg-soft);
}

body.zp-market-home hr,
body.zp-market-home .zp-section-divider {
	display: none !important;
}

/* ============================================================
 * 7. PILLS DE FILTRO (chips de subcategorías)
 * ============================================================ */
body.zp-market-home .zp-chip-row,
body.zp-market-home .zp-chip-row--macro-subs {
	display: flex !important;
	gap: var(--zp-sp-3) !important;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	padding: 0 0 var(--zp-sp-3) !important;
	background: transparent !important;
	margin: 0 0 var(--zp-sp-5) !important;
}
body.zp-market-home .zp-chip-row::-webkit-scrollbar {
	display: none;
}

body.zp-market-home .zp-chip {
	flex: 0 0 auto;
	background: var(--zp-c-bg-soft) !important;
	color: var(--zp-c-text-2) !important;
	border: 0.5px solid var(--zp-c-border) !important;
	border-radius: var(--zp-r-pill) !important;
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-medium) !important;
	padding: 5px var(--zp-sp-5) !important;
	cursor: pointer;
	transition: var(--zp-trans);
	white-space: nowrap;
	box-shadow: none !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	height: auto !important;
	line-height: 1.4 !important;
}
body.zp-market-home .zp-chip:hover {
	background: #eff2ff !important;
	color: var(--zp-c-primary) !important;
}
body.zp-market-home .zp-chip.zp-chip--active,
body.zp-market-home .zp-chip[aria-pressed="true"] {
	background: var(--zp-c-primary) !important;
	color: #fff !important;
	border-color: var(--zp-c-primary) !important;
}
body.zp-market-home .zp-chip:active {
	transform: scale(0.95);
}

/* ============================================================
 * 8. CATEGORÍAS (2 cols, gap 8px)
 * ============================================================ */
body.zp-market-home .zp-macro-strip,
body.zp-market-home .zp-macro-strip.zp-home-categories {
	padding: var(--zp-sp-8) var(--zp-sp-6) !important;
	background: var(--zp-c-bg-card) !important;
}

body.zp-market-home .zp-macro-carousel {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: var(--zp-sp-3) !important;
	overflow: visible !important;
	scroll-snap-type: none !important;
	padding: 0 !important;
}

body.zp-market-home .zp-macro-card {
	background: #0d2340 !important;
	border: 0.5px solid #1a3a5c !important;
	border-radius: var(--zp-r-icon) !important;
	padding: var(--zp-sp-4) !important;
	flex-direction: row !important;
	display: flex !important;
	align-items: center !important;
	gap: var(--zp-sp-3) !important;
	text-align: left !important;
	min-height: auto !important;
	width: 100% !important;
	flex: 1 1 auto !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: var(--zp-trans);
}
body.zp-market-home .zp-macro-card:hover {
	background: #091522 !important;
	transform: translateY(-1px);
	box-shadow: var(--zp-shadow-card-hover);
}
body.zp-market-home .zp-macro-card:active {
	transform: scale(0.98);
}
body.zp-market-home .zp-macro-card__icon {
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	background: var(--zp-c-primary-bg);
	color: var(--zp-c-primary);
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px !important;
	line-height: 1 !important;
	margin: 0 !important;
}
body.zp-market-home .zp-macro-card__title {
	font-size: var(--zp-fs-label) !important;
	font-weight: var(--zp-fw-medium) !important;
	color: #071828 !important;
	line-height: 1.2;
	margin: 0 !important;
	display: block;
}
body.zp-market-home .zp-macro-card__desc {
	font-size: 10px !important;
	color: #8fa8c0 !important;
	font-weight: var(--zp-fw-regular) !important;
	line-height: 1.3;
	margin: 2px 0 0 !important;
	display: block;
}

/* ============================================================
 * 9. CARDS DE PROVEEDORES (zp-service-card)
 * ============================================================ */
body.zp-market-home .zp-carousel {
	display: flex !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	gap: var(--zp-sp-5) !important;
	padding: 0 0 var(--zp-sp-3) !important;
}
body.zp-market-home .zp-carousel::-webkit-scrollbar {
	display: none;
}

body.zp-market-home .zp-service-card,
body.zp-market-home .zp-service-card--carousel {
	flex: 0 0 78%;
	max-width: 240px;
	background: var(--zp-c-bg-card) !important;
	border-radius: var(--zp-r-card) !important;
	border: 1px solid var(--zp-c-border) !important;
	overflow: hidden !important;
	box-shadow: none !important;
	scroll-snap-align: start;
	transition: var(--zp-trans);
	position: relative;
	padding: 0 !important;
	margin: 0 !important;
}
body.zp-market-home .zp-service-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--zp-shadow-card-press) !important;
}

/* Foto / placeholder (100px de alto) */
body.zp-market-home .zp-service-card__media {
	position: relative;
	height: 100px !important;
	overflow: hidden;
	margin: 0 !important;
	border-radius: 0 !important;
}
body.zp-market-home .zp-card-img {
	width: 100%;
	height: 100%;
	background-position: center !important;
	background-size: cover !important;
	background-repeat: no-repeat;
}

/* Badge PRO arriba a la izquierda — sobre la foto */
body.zp-market-home .zp-service-card .zp-card-corner-stack {
	position: absolute;
	inset: 8px 8px auto 8px;
	display: flex !important;
	justify-content: space-between !important;
	align-items: flex-start;
	gap: var(--zp-sp-3);
	z-index: 2;
	pointer-events: none;
}
body.zp-market-home .zp-service-card .zp-card-corner-stack > * {
	pointer-events: auto;
}

/* PRO: una sola insignia (.zp-card-pro-inline en el cuerpo de la card; sin ::before duplicado) */
body.zp-market-home .zp-service-card--pro .zp-service-card__media::before {
	content: none;
	display: none;
}

/* Badge PRO en cards — naranja unificado (pisa el azul de phase1) */
body.zp-market-home .zp-service-card--pro .zp-card-pro-inline,
body.zp-market-home .zp-service-card--carousel.zp-service-card--pro .zp-card-pro-inline {
	background: var(--zp-pro-badge-bg, linear-gradient(135deg, #fbbf24 0%, #ea580c 100%)) !important;
	color: var(--zp-pro-badge-color, #fff) !important;
	border: 0 !important;
	box-shadow: var(--zp-pro-badge-shadow, 0 2px 6px rgba(234, 88, 12, 0.25)) !important;
	font-weight: var(--zp-pro-badge-weight, 800) !important;
	letter-spacing: var(--zp-pro-badge-tracking, 0.06em) !important;
}

body.zp-market-home .zp-service-card--pro .zp-card-pro-inline .yrl-pro-badge__icon,
body.zp-market-home .zp-service-card--pro .zp-card-pro-inline .fa {
	color: #fff !important;
}

/* Favorito (corazón) arriba a la derecha — círculo blanco translúcido */
body.zp-market-home .zp-card-fav-wrap {
	margin-left: auto;
}
body.zp-market-home .zp-card-fav {
	width: 26px !important;
	height: 26px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.85) !important;
	color: var(--zp-c-text-2) !important;
	border: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 12px !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
	transition: var(--zp-trans);
	padding: 0 !important;
}
body.zp-market-home .zp-card-fav.loved,
body.zp-market-home .zp-card-fav:hover {
	color: #ef4444 !important;
	background: #0d2340 !important;
}
body.zp-market-home .zp-card-fav:active {
	transform: scale(0.92);
}

/* Body de la card */
body.zp-market-home .zp-service-card__body,
body.zp-market-home .zp-service-card .zp-service-card__content,
body.zp-market-home .zp-service-card > div:not(.zp-service-card__media) {
	padding: var(--zp-sp-5) 11px !important;
}

body.zp-market-home .zp-service-card__title,
body.zp-market-home .zp-service-card .zp-card-title,
body.zp-market-home .zp-service-card h3 {
	font-size: var(--zp-fs-body) !important;
	font-weight: var(--zp-fw-semibold) !important;
	color: var(--zp-c-text-1) !important;
	margin: 0 0 2px !important;
	line-height: 1.3 !important;
}

body.zp-market-home .zp-service-card .zp-service-card__role,
body.zp-market-home .zp-service-card .zp-card-category,
body.zp-market-home .zp-service-card .zp-card-subtitle {
	font-size: var(--zp-fs-meta) !important;
	color: var(--zp-c-text-2) !important;
	font-weight: var(--zp-fw-regular) !important;
	margin: 0 0 var(--zp-sp-2) !important;
	line-height: 1.3;
}

body.zp-market-home .zp-service-card .zp-card-meta-row,
body.zp-market-home .zp-service-card .zp-card-meta,
body.zp-market-home .zp-service-card .zp-card-rating-row {
	display: flex !important;
	align-items: center;
	gap: var(--zp-sp-2);
	font-size: var(--zp-fs-meta) !important;
	color: var(--zp-c-text-2) !important;
	margin-bottom: var(--zp-sp-2) !important;
}
body.zp-market-home .zp-service-card .zp-card-rating-row i.fa-star,
body.zp-market-home .zp-service-card .zp-card-stars-icon,
body.zp-market-home .zp-service-card .zp-card-rating-star {
	color: var(--zp-c-pro) !important;
	font-size: 12px !important;
}
body.zp-market-home .zp-service-card .zp-card-distance,
body.zp-market-home .zp-service-card .zp-card-meta-distance {
	margin-left: auto;
	color: var(--zp-c-text-3) !important;
}

/* WhatsApp button (full width verde dentro de la card) */
body.zp-market-home .zp-service-card .zp-card-wa,
body.zp-market-home .zp-service-card .zp-card-whatsapp,
body.zp-market-home .zp-service-card a[href*="wa.me"]:not(.zp-card-fav) {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: var(--zp-sp-2);
	background: var(--zp-c-wa) !important;
	color: #fff !important;
	border-radius: 8px !important;
	padding: 7px !important;
	font-size: 12px !important;
	font-weight: var(--zp-fw-semibold) !important;
	text-decoration: none !important;
	margin: var(--zp-sp-2) 0 5px !important;
	width: 100%;
	box-shadow: none !important;
	border: 0 !important;
	transition: var(--zp-trans);
}
body.zp-market-home .zp-service-card .zp-card-wa:active {
	transform: scale(0.97);
}

/* Ver perfil — botón secundario */
body.zp-market-home .zp-service-card .zp-card-profile-link,
body.zp-market-home .zp-service-card a.zp-card-perma,
body.zp-market-home .zp-service-card .zp-card-cta--secondary {
	display: flex !important;
	align-items: center;
	justify-content: center;
	border: 0.5px solid var(--zp-c-border-strong) !important;
	background: transparent !important;
	color: var(--zp-c-text-2) !important;
	border-radius: 8px !important;
	padding: 5px !important;
	font-size: 11px !important;
	font-weight: var(--zp-fw-medium) !important;
	text-decoration: none !important;
	width: 100%;
	transition: var(--zp-trans);
}

/* Avatar de iniciales abajo-izquierda (cuelga sobre el body) — opcional, si existe */
body.zp-market-home .zp-service-card .zp-card-avatar,
body.zp-market-home .zp-service-card .zp-card-avatar-initials {
	width: 38px;
	height: 38px;
	border-radius: 999px;
	border: 2.5px solid #fff;
	position: absolute;
	bottom: -18px;
	left: 12px;
	z-index: 4;
	background: var(--zp-c-primary);
	color: #fff;
	font-weight: var(--zp-fw-semibold);
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* ============================================================
 * 10. BANNER MAPA (estilizamos `zp-pro-soft` para reutilizarlo)
 * ============================================================ */
body.zp-market-home .zp-pro-soft {
	background: var(--zp-c-bg-card) !important;
	padding: var(--zp-sp-8) var(--zp-sp-6) !important;
	border: 0 !important;
}
body.zp-market-home .zp-pro-soft__inner {
	background: var(--zp-c-primary-bg) !important;
	border: 0.5px solid var(--zp-c-primary-bord) !important;
	border-radius: 12px !important;
	padding: 14px !important;
	display: flex !important;
	align-items: center;
	gap: var(--zp-sp-5) !important;
	margin: 0 !important;
}
body.zp-market-home .zp-pro-soft__star {
	width: 46px;
	height: 46px;
	border-radius: var(--zp-r-icon);
	background: var(--zp-c-primary);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 22px !important;
	flex: 0 0 46px;
}
body.zp-market-home .zp-pro-soft__lead {
	font-size: var(--zp-fs-body) !important;
	font-weight: var(--zp-fw-medium) !important;
	color: #93c5fd !important;
	margin: 0 !important;
	line-height: 1.3;
}
body.zp-market-home .zp-pro-soft__text {
	font-size: var(--zp-fs-meta) !important;
	color: #93c5fd !important;
	line-height: 1.4 !important;
	margin: 2px 0 0 !important;
}
body.zp-market-home .zp-pro-soft__cta {
	margin-left: auto !important;
	color: var(--zp-c-primary) !important;
	background: transparent !important;
	border: 0 !important;
	padding: 0 4px !important;
	font-size: 18px !important;
}

/* ============================================================
 * 11. BANNER PRO (zp-plus + zp-pro-strong)
 * ============================================================ */
body.zp-market-home .zp-plus,
body.zp-market-home .zp-plus--mini {
	padding: var(--zp-sp-8) var(--zp-sp-6) !important;
	background: var(--zp-c-bg-card) !important;
}
body.zp-market-home .zp-plus__card {
	background: var(--zp-c-pro-bg) !important;
	border: 0.5px solid var(--zp-c-pro-bord) !important;
	border-radius: 12px !important;
	padding: 13px 14px !important;
	box-shadow: none !important;
	display: block !important;
}
body.zp-market-home .zp-plus__grid {
	display: block !important;
}
body.zp-market-home .zp-plus__copy {
	padding: 0 !important;
}
body.zp-market-home .zp-plus__visual {
	display: none !important;
}
body.zp-market-home .zp-plus__badge {
	background: transparent !important;
	color: rgba(255, 255, 255, 0.75) !important;
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-medium) !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center;
	gap: 4px;
}
body.zp-market-home .zp-plus__crown {
	color: #fff !important;
	font-size: 14px;
}
body.zp-market-home .zp-plus__title {
	font-size: var(--zp-fs-body) !important;
	font-weight: var(--zp-fw-semibold) !important;
	color: var(--zp-c-pro-text) !important;
	margin: 4px 0 !important;
}
body.zp-market-home .zp-plus__subtitle,
body.zp-market-home .zp-plus__alliances {
	font-size: var(--zp-fs-meta) !important;
	color: var(--zp-c-pro-text-soft) !important;
	line-height: 1.5 !important;
	margin: 2px 0 !important;
	font-weight: var(--zp-fw-regular) !important;
}
body.zp-market-home .zp-plus__benefits {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: var(--zp-sp-2) var(--zp-sp-5) !important;
	margin: var(--zp-sp-5) 0 !important;
	padding: 0 !important;
	list-style: none;
}
body.zp-market-home .zp-plus__benefits li {
	display: flex !important;
	align-items: center;
	gap: var(--zp-sp-2) !important;
	font-size: var(--zp-fs-meta) !important;
	color: var(--zp-c-pro-text) !important;
	line-height: 1.3;
	font-weight: var(--zp-fw-regular) !important;
}
body.zp-market-home .zp-plus__benefits li i {
	color: rgba(255, 255, 255, 0.65) !important;
	font-size: 13px !important;
}
body.zp-market-home .zp-plus__cta {
	background: var(--zp-c-pro) !important;
	color: #fff !important;
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-medium) !important;
	padding: 5px 12px !important;
	border-radius: 6px !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Sección PRO "strong" — reusa el mismo lenguaje */
body.zp-market-home .zp-pro-strong {
	padding: var(--zp-sp-8) var(--zp-sp-6) !important;
	background: var(--zp-c-bg-card) !important;
}
body.zp-market-home .zp-pro-strong__card {
	background: var(--zp-c-pro-bg) !important;
	border: 0.5px solid var(--zp-c-pro-bord) !important;
	border-radius: 12px !important;
	padding: 13px 14px !important;
	box-shadow: none !important;
}
body.zp-market-home .zp-pro-strong__title {
	font-size: var(--zp-fs-body) !important;
	color: var(--zp-c-pro-text) !important;
	font-weight: var(--zp-fw-semibold) !important;
}
body.zp-market-home .zp-pro-strong__list li {
	color: var(--zp-c-pro-text) !important;
	font-size: var(--zp-fs-meta) !important;
	line-height: 1.5;
}
body.zp-market-home .zp-pro-strong__cta {
	background: var(--zp-c-pro) !important;
	color: #fff !important;
	font-size: var(--zp-fs-meta) !important;
	font-weight: var(--zp-fw-semibold) !important;
	padding: 7px 14px !important;
	border-radius: 6px !important;
	border: 0 !important;
}

/* ============================================================
 * 12. BOTTOM NAVBAR — ver zp-bottom-nav-global-lock.css (site-wide)
 * ============================================================ */

/* ============================================================
 * 13. MACRO BLOCKS / REVIEWS / CUSTOMER CTA — armonizar
 * ============================================================ */
body.zp-market-home .zp-macro-block__titlerow {
	gap: var(--zp-sp-3) !important;
}
body.zp-market-home .zp-macro-block__emoji {
	font-size: 20px !important;
}
body.zp-market-home .zp-section-title--macroblock {
	font-size: var(--zp-fs-section) !important;
	font-weight: var(--zp-fw-semibold) !important;
}

body.zp-market-home .zp-customer-cta__card {
	background: var(--zp-c-bg-card) !important;
	border: 0.5px solid var(--zp-c-border) !important;
	border-radius: 12px !important;
	padding: var(--zp-sp-5) !important;
	gap: var(--zp-sp-5) !important;
	box-shadow: none !important;
}
body.zp-market-home .zp-customer-cta__icon {
	background: var(--zp-c-primary-bg) !important;
	color: var(--zp-c-primary) !important;
	width: 46px;
	height: 46px;
	border-radius: var(--zp-r-icon);
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	font-size: 22px !important;
	flex: 0 0 46px;
}
body.zp-market-home .zp-customer-cta__title {
	font-size: var(--zp-fs-body) !important;
	color: var(--zp-c-text-1) !important;
	font-weight: var(--zp-fw-semibold) !important;
	margin: 0 !important;
}
body.zp-market-home .zp-customer-cta__text {
	font-size: var(--zp-fs-meta) !important;
	color: var(--zp-c-text-2) !important;
	line-height: 1.4 !important;
}
body.zp-market-home .zp-customer-cta__btn {
	background: var(--zp-c-primary) !important;
	color: #fff !important;
	border-radius: var(--zp-r-btn) !important;
	font-size: var(--zp-fs-btn) !important;
	font-weight: var(--zp-fw-semibold) !important;
	padding: 10px var(--zp-sp-6) !important;
}

/* ============================================================
 * 14. MICROINTERACCIONES GLOBALES
 * ============================================================ */
body.zp-market-home button,
body.zp-market-home a.zp-btn,
body.zp-market-home .zp-chip,
body.zp-market-home .zp-macro-card,
body.zp-market-home .zp-service-card {
	transition: var(--zp-trans);
}

body.zp-market-home button:active:not(:disabled) {
	transform: scale(0.97);
}

/* ============================================================
 * 15. RESPONSIVE — desktop básico (≥768px)
 *      (Mobile-first ahora, desktop adaptado pero no óptimo)
 * ============================================================ */
@media (min-width: 768px) {
	body.zp-market-home .zp-macro-carousel {
		grid-template-columns: repeat(4, 1fr) !important;
	}
	body.zp-market-home .zp-trust-bar__grid {
		grid-template-columns: repeat(4, 1fr) !important;
	}
	body.zp-market-home .zp-service-card,
	body.zp-market-home .zp-service-card--carousel {
		flex: 0 0 calc(33.333% - var(--zp-sp-5));
		max-width: 280px;
	}
	body.zp-market-home .zp-hero__title {
		font-size: 28px !important;
	}
}

@media (min-width: 1024px) {
	body.zp-market-home .zp-container {
		max-width: 1024px;
	}
}

/* ============================================================
 * 16. BUG FIX LAYER (high-specificity overrides)
 *
 * Las hojas previas (premium-2026, refinement-2027, readability-2027) usan selectores
 * con specificity (0,0,5,1) y `!important`. Para garantizar que estos fixes ganen,
 * combinamos `body.home.zp-market-home` con `.zp-home--premium-app` o duplicación de clase.
 *
 * Cada bug está numerado según `cursor-prompt-fixes-home.md`.
 * ============================================================ */

/* ------------------------------------------------------------
 * FIX-0: Font Awesome icon font (BUG 3) — versión v2
 *
 * El sitio carga DOS versiones de FA simultáneamente:
 *   - FA 6.0.0 (cdnjs): `.fa { font-family: 'Font Awesome 6 Free'; font-weight: 900 }`
 *   - FA 4 (DE theme):   `.fa { font-family: 'FontAwesome'; font-weight: normal }`
 *
 * Mi fix anterior forzaba `font-weight: 900` globalmente, lo que rompía FA4
 * (que necesita weight normal). De ahí los cuadrados vacíos en el trust strip.
 *
 * Solución correcta: NO tocar font-weight ni font-family de FA. Confiar en que
 * las hojas oficiales de FA ya lo configuran correctamente. Solo asegurarse de
 * que `body.zp-market-home { font-family: var(--zp-font) }` no se herede al `<i>`.
 *
 * El reset mínimo: re-declarar la pila de font-family de FA con `font-weight: inherit`
 * para que cada `<i>` use el weight que su clase específica define.
 * ------------------------------------------------------------ */
body.zp-market-home i.fa[class*="fa-"],
body.zp-market-home i.fas[class*="fa-"],
body.zp-market-home i.fab[class*="fa-"],
body.zp-market-home i.fa-solid[class*="fa-"],
body.zp-market-home i.fa-brands[class*="fa-"],
body.zp-market-home i.fa-regular[class*="fa-"] {
	font-style: normal !important;
	font-variant: normal !important;
	text-rendering: auto !important;
	-webkit-font-smoothing: antialiased !important;
	-moz-osx-font-smoothing: grayscale !important;
	line-height: 1 !important;
	/* NO forzamos font-family ni font-weight: las hojas oficiales de FA lo manejan. */
}

/* ------------------------------------------------------------
 * FIX-1+2: Grid de categorías sin ellipsis, anchos correctos (BUG 1+2)
 * Existentes (perdían anchura por contenido largo):
 *   - `text-align: center` + `-webkit-line-clamp: 2` → truncaba con "..."
 *   - El grid sin `minmax(0, 1fr)` se desbordaba con texto largo
 * Fix:
 *   - Grid: `minmax(0, 1fr)` para que las celdas no excedan su columna
 *   - Texto: `text-align: left`, sin line-clamp, `white-space: normal`
 *   - Layout: icono fijo + texto fluido (flex con `min-width: 0` en el wrapper de texto)
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-carousel,
body.home.zp-market-home .zp-home-categories.zp-macro-strip .zp-macro-carousel {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 8px !important;
	overflow: visible !important;
}

/*
 * Layout de la card: CSS Grid con 2 columnas (icon 36px + texto 1fr) y 2 filas (title / desc).
 * El icon ocupa span de las 2 filas, centrado.
 * Esto permite que el texto (title + desc) tenga TODO el ancho disponible (no compite por espacio
 * con el icon en una fila flex), y por ende las palabras hacen wrap natural sin partirse en sílabas.
 */
body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card,
body.home.zp-market-home .zp-home-categories.zp-macro-strip .zp-macro-card {
	display: grid !important;
	grid-template-columns: 36px minmax(0, 1fr) !important;
	grid-template-rows: auto auto !important;
	align-items: center !important;
	justify-items: stretch !important;
	column-gap: 10px !important;
	row-gap: 2px !important;
	padding: 12px 10px !important;
	min-width: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
	overflow: hidden !important;
	min-height: auto !important;
	max-height: none !important;
	text-align: left !important;
	background: #0d2340 !important;
	border: 1px solid #1a3a5c !important;
	border-radius: 10px !important;
	box-shadow: none !important;
}

body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card__icon,
body.home.zp-market-home .zp-home-categories.zp-macro-strip .zp-macro-card__icon {
	grid-column: 1 !important;
	grid-row: 1 / span 2 !important;
	width: 36px !important;
	height: 36px !important;
	min-width: 36px !important;
	max-width: 36px !important;
	border-radius: 8px !important;
	background: var(--zp-c-primary-bg) !important;
	color: var(--zp-c-primary) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 20px !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	align-self: center !important;
}

body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card .zp-macro-card__title {
	grid-column: 2 !important;
	grid-row: 1 !important;
}
body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card .zp-macro-card__desc {
	grid-column: 2 !important;
	grid-row: 2 !important;
}

body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card__title,
body.home.zp-market-home .zp-home-categories.zp-macro-strip .zp-macro-card__title {
	display: block !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #071828 !important;
	text-align: left !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	/*
	 * word-break: normal      → respeta los límites naturales de las palabras
	 *                           (NO rompe "Reparaciones" en "Repara-ciones")
	 * overflow-wrap: break-word → solo rompe palabras imposibles de wrapear (que NO entran)
	 * hyphens: manual         → ningún guion automático en mitad de palabras
	 */
	word-break: normal !important;
	overflow-wrap: break-word !important;
	hyphens: manual !important;
	-webkit-hyphens: manual !important;
	-webkit-line-clamp: none !important;
	line-clamp: none !important;
	-webkit-box-orient: initial !important;
	max-height: none !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card__desc,
body.home.zp-market-home .zp-home-categories.zp-macro-strip .zp-macro-card__desc {
	display: block !important;
	font-size: 10px !important;
	font-weight: 400 !important;
	color: #8fa8c0 !important;
	text-align: left !important;
	line-height: 1.4 !important;
	letter-spacing: 0 !important;
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: clip !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
	hyphens: manual !important;
	-webkit-hyphens: manual !important;
	-webkit-line-clamp: none !important;
	line-clamp: none !important;
	-webkit-box-orient: initial !important;
	max-height: none !important;
	min-height: 0 !important;
	margin: 2px 0 0 !important;
	padding: 0 !important;
}

/* ------------------------------------------------------------
 * FIX-3: Trust strip visible (BUG 3 — además del FIX-0 del font-family)
 * Aseguramos que cada item tenga su icono renderizado a tamaño correcto.
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-home-trust-micro .zp-home-trust-micro__item i.fa {
	font-size: 13px !important;
	color: rgba(255, 255, 255, 0.9) !important;
	width: auto !important;
	height: auto !important;
	background: transparent !important;
	display: inline-block !important;
}
body.home.zp-market-home .zp-home-trust-micro .zp-home-trust-micro__icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 14px;
}

/* ------------------------------------------------------------
 * FIX-4: Cards PRO con foto contenida (BUG 4)
 * Forzar que `.zp-service-card__media` tenga height: 100px y la imagen `cover`.
 * También limitamos el placeholder si la card no tiene foto real.
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-service-card.zp-service-card,
body.home.zp-market-home .zp-service-card.zp-service-card--carousel.zp-service-card--carousel {
	overflow: hidden !important;
}
body.home.zp-market-home .zp-service-card .zp-service-card__media,
body.home.zp-market-home .zp-service-card--carousel .zp-service-card__media {
	height: 100px !important;
	max-height: 100px !important;
	min-height: 100px !important;
	overflow: hidden !important;
	position: relative !important;
	background-color: var(--zp-c-bg-soft) !important;
}
body.home.zp-market-home .zp-service-card .zp-service-card__media .zp-card-img,
body.home.zp-market-home .zp-service-card--carousel .zp-service-card__media .zp-card-img {
	width: 100% !important;
	height: 100% !important;
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
}
body.home.zp-market-home .zp-service-card .zp-service-card__media img {
	width: 100% !important;
	height: 100px !important;
	object-fit: cover !important;
	display: block !important;
}

/* ------------------------------------------------------------
 * FIX-5: Hero lead legible — beat existing selectors (BUG 5)
 * Theirs: `body.home.zp-market-home .zp-home--premium-app .zp-hero__lead--py` (0,0,4,0)
 * Mine: chain `.zp-home--py` extra para win (0,0,5,0).
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero .zp-hero__lead,
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero .zp-hero__lead--py,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py .zp-hero__lead,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py .zp-hero__lead--py {
	color: rgba(255, 255, 255, 0.7) !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	text-shadow: none !important;
	margin: 0 0 16px !important;
	font-family: var(--zp-font) !important;
}

body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero .zp-hero__title,
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero .zp-hero__title--py,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py .zp-hero__title,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py .zp-hero__title--py {
	color: #fff !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.015em !important;
	margin: 0 0 8px !important;
	text-shadow: none !important;
	font-family: var(--zp-font) !important;
}

/* ------------------------------------------------------------
 * FIX-6: Toggle "Necesito / Soy proveedor" — estado activo claro (BUG 6)
 * border-radius más cuadrado (12px contenedor / 9px botones)
 * Active = white solid; inactive = transparent
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-home--premium-app .zp-intent-switch {
	background: rgba(255, 255, 255, 0.15) !important;
	border-radius: 12px !important;
	padding: 4px !important;
	display: inline-flex !important;
	border: 0 !important;
	gap: 0 !important;
	margin-bottom: 16px !important;
}
body.home.zp-market-home .zp-home--premium-app .zp-intent-switch__btn {
	flex: 1 1 auto !important;
	padding: 9px 16px !important;
	border-radius: 9px !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	text-align: center !important;
	cursor: pointer !important;
	color: rgba(255, 255, 255, 0.65) !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	transition: all 0.15s ease !important;
}
body.home.zp-market-home .zp-home--premium-app .zp-intent-switch__btn.is-active,
body.home.zp-market-home .zp-home--premium-app .zp-intent-switch__btn[aria-pressed="true"] {
	background: #0d2340 !important;
	color: var(--zp-c-primary) !important;
	font-weight: 600 !important;
}

/* ------------------------------------------------------------
 * FIX-7: Reviews con line-clamp 3 + altura limitada (BUG 7)
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-reviews .zp-review-card.zp-review-card {
	min-width: 240px !important;
	max-width: 280px !important;
	background: var(--zp-c-bg-card) !important;
	border: 0.5px solid var(--zp-c-border) !important;
	border-radius: 12px !important;
	padding: 12px !important;
	box-shadow: none !important;
	flex: 0 0 auto !important;
}
body.home.zp-market-home .zp-reviews .zp-review-card__text.zp-review-card__text {
	display: -webkit-box !important;
	-webkit-line-clamp: 3 !important;
	line-clamp: 3 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	font-size: 12px !important;
	color: #e2e8f0 !important;
	line-height: 1.55 !important;
	margin: 0 0 8px !important;
	max-height: calc(1.55em * 3) !important;
}
body.home.zp-market-home .zp-reviews .zp-review-card__name.zp-review-card__name {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--zp-c-text-1) !important;
}
body.home.zp-market-home .zp-reviews .zp-review-card__service.zp-review-card__service {
	font-size: 11px !important;
	color: var(--zp-c-text-3) !important;
	font-weight: 400 !important;
}
body.home.zp-market-home .zp-reviews .zp-review-card__score.zp-review-card__score {
	font-size: 11px !important;
	color: var(--zp-c-pro) !important;
	font-weight: 600 !important;
}

/* ------------------------------------------------------------
 * FIX-8: Separación entre campo ubicación y botón Buscar (BUG 8)
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-search-panel.zp-search-panel--py .zp-search-bar .zp-search-field--location {
	margin-bottom: 10px !important;
}
body.home.zp-market-home .zp-search-panel.zp-search-panel--py .zp-search-field--submit {
	margin-top: 4px !important;
}
body.home.zp-market-home .zp-search-panel.zp-search-panel--py #zp-classic-search-submit,
body.home.zp-market-home .zp-search-panel.zp-search-panel--py .zp-search-field--submit .zp-btn--primary {
	width: 100% !important;
	padding: 12px 0 !important;
	border-radius: 10px !important;
	background: var(--zp-c-primary) !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	border: 0 !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

/* ------------------------------------------------------------
 * FIX-9: Emoji de categorías alineado con texto (BUG 9)
 * El emoji nativo agrega un baseline extra; line-height: 1 lo neutraliza.
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card .zp-macro-card__icon {
	font-size: 20px !important;
	line-height: 1 !important;
	height: 36px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	vertical-align: middle !important;
}

/* ------------------------------------------------------------
 * FIX-10: "Disponible ahora · Responde rápido" más chico que nombre (BUG 10)
 * Existente: `body.home.zp-market-home .zp-service-card--carousel.zp-service-card--pro .zp-service-card__availability--pro` (0,0,5,0)
 * Mío: doble la clase para subir specificity.
 * ------------------------------------------------------------ */
body.home.zp-market-home .zp-service-card .zp-service-card__title.zp-service-card__title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--zp-c-text-1) !important;
	margin: 0 0 2px !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
}
body.home.zp-market-home .zp-service-card .zp-service-card__cat.zp-service-card__cat {
	font-size: 11px !important;
	color: #334155 !important;
	font-weight: 600 !important;
	margin: 0 0 4px !important;
	line-height: 1.3 !important;
	background: #f1f5f9 !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 999px !important;
	padding: 2px 8px !important;
	display: inline-block !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

/* PRO — pill legible (texto oscuro sobre celeste suave, no blanco) */
body.home.zp-market-home .zp-service-card--pro .zp-service-card__cat.zp-service-card__cat,
body.home.zp-market-home .zp-service-card--carousel.zp-service-card--pro .zp-service-card__cat.zp-service-card__cat {
	color: #1e3a5f !important;
	background: #dbeafe !important;
	border-color: #93c5fd !important;
}
body.home.zp-market-home .zp-service-card .zp-service-card__availability.zp-service-card__availability,
body.home.zp-market-home .zp-service-card .zp-service-card__availability--pro.zp-service-card__availability--pro {
	font-size: 11px !important;
	font-weight: 500 !important;
	color: #4ade80 !important;
	margin: 0 0 6px !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
}
body.home.zp-market-home .zp-service-card .zp-service-card__body.zp-service-card__body {
	padding: 12px 11px !important;
}

/* ------------------------------------------------------------
 * EXTRA: Categorías grid en desktop 4 cols
 * ------------------------------------------------------------ */
@media (min-width: 768px) {
	body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-carousel,
	body.home.zp-market-home .zp-home-categories.zp-macro-strip .zp-macro-carousel {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

/* ============================================================
 * 17. HEADER + HERO COMPACT (BUGs: "demasiado espacio azul")
 *
 * Culprits identificados:
 *   - mobile-premium-2026.css L528: `mobile-bar { min-height: 78px }` + logo `max-height: 81px`
 *   - readability-2027.css L51-54: hero padding `22px 0 18px !important` + título font-size 32-42px
 *   - refinement-2027.css L29: hero padding `20px 0 16px`
 *
 * Target: que el bloque azul (topbar + hero + trust strip) ocupe ~280-320px de alto en 375px,
 * no medio screen. Spec: topbar 14/12px padding, hero 8/20px padding, logo 24px alto.
 * ============================================================ */

/* Topbar compacto */
body.home.zp-market-home .zp-header--nav.zp-header--2026 .zp-header-nav__mobile-bar,
body.home.zp-market-home .zp-header.zp-header--2026 .zp-header-nav__mobile-bar {
	min-height: 0 !important;
	height: auto !important;
	padding: 8px 16px 4px !important;
	align-items: center !important;
	gap: 8px !important;
}

/* Logo: 24px de alto (no 81px) */
body.home.zp-market-home .zp-header--nav.zp-header--2026 .zp-header-nav__mobile-brand .zp-header-nav__logo-mobile .zp-logo-img,
body.home.zp-market-home .zp-header.zp-header--2026 .zp-header-nav__logo-mobile .zp-logo-img {
	max-height: 72px !important;
	height: 72px !important;
	max-width: none !important;
	width: auto !important;
}

/* Hero: padding muy reducido — el padding "ancho" lo aporta `__inner` */
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero.zp-hero--py,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py {
	padding: 0 !important;
	margin: 0 !important;
}

body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero.zp-hero--py .zp-hero__inner,
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero.zp-hero--py .zp-hero__inner--py,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py .zp-hero__inner--py {
	padding: 8px 16px 20px !important;
	max-width: 768px !important;
	margin: 0 auto !important;
}

/* Decorative "soft shapes" detrás del hero — los apagamos para look limpio */
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py::before,
body.home.zp-market-home .zp-home--premium-app .zp-hero--py::after,
body.home.zp-market-home .zp-home--premium-app .zp-hero__bg {
	display: none !important;
	background: transparent !important;
}

/* Hero legacy oculto en app-redesign; sin franja plana que corte el degradé */
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py {
	background: transparent !important;
}

/* Título: 22px de tamaño fijo, no clamp 32-42px de readability-2027 */
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero.zp-hero--py .zp-hero__title,
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero.zp-hero--py .zp-hero__title--py,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py .zp-hero__title--py.zp-hero__title--py {
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.015em !important;
	color: #fff !important;
	margin: 0 0 6px !important;
	font-family: var(--zp-font) !important;
	text-shadow: none !important;
	font-feature-settings: normal !important;
}

/* Lead: 13px blanco translúcido (no 18-21px gris azul) */
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero.zp-hero--py .zp-hero__lead,
body.home.zp-market-home .zp-home--premium-app.zp-home--py .zp-hero.zp-hero--py .zp-hero__lead--py,
body.home.zp-market-home .zp-home--premium-app .zp-hero.zp-hero--py .zp-hero__lead--py.zp-hero__lead--py {
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: rgba(255, 255, 255, 0.7) !important;
	margin: 0 0 12px !important;
	font-family: var(--zp-font) !important;
	text-shadow: none !important;
	max-width: 100% !important;
}

/* Intent switch: margin-bottom 12px (no más) */
body.home.zp-market-home .zp-home--premium-app .zp-hero .zp-intent-switch.zp-intent-switch {
	margin-top: 0 !important;
	margin-bottom: 12px !important;
	padding: 4px !important;
	background: rgba(255, 255, 255, 0.15) !important;
	border: 0 !important;
	box-shadow: none !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	border-radius: 12px !important;
	gap: 0 !important;
}
body.home.zp-market-home .zp-home--premium-app .zp-hero .zp-intent-switch .zp-intent-switch__btn.zp-intent-switch__btn {
	padding: 9px 12px !important;
	border-radius: 9px !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	background: transparent !important;
	color: rgba(255, 255, 255, 0.65) !important;
	border: 0 !important;
	box-shadow: none !important;
}
body.home.zp-market-home .zp-home--premium-app .zp-hero .zp-intent-switch .zp-intent-switch__btn.is-active.is-active,
body.home.zp-market-home .zp-home--premium-app .zp-hero .zp-intent-switch .zp-intent-switch__btn[aria-pressed="true"] {
	background: #0d2340 !important;
	color: var(--zp-c-primary) !important;
	font-weight: 600 !important;
}

/* Search panel: separación correcta entre campo de ubicación y botón Buscar */
body.home.zp-market-home .zp-search-panel.zp-search-panel--py {
	padding: 12px !important;
	margin: 0 !important;
}
body.home.zp-market-home .zp-search-panel.zp-search-panel--py .zp-search-bar {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	padding: 0 !important;
	margin: 0 !important;
}
body.home.zp-market-home .zp-search-panel.zp-search-panel--py .zp-search-field--submit {
	margin-top: 0 !important;
}

/* ============================================================
 * 18. CARDS PRO — foto recortada arriba (BUG 12 del segundo prompt)
 * `object-position: center top` prioriza la parte superior (suele estar el rostro/cabeza).
 * ============================================================ */
body.home.zp-market-home .zp-service-card .zp-service-card__media .zp-card-img,
body.home.zp-market-home .zp-service-card--carousel .zp-service-card__media .zp-card-img {
	background-position: center top !important;
}
body.home.zp-market-home .zp-service-card .zp-service-card__media img {
	object-position: center top !important;
}

/* ============================================================
 * 19. APP HOME REDESIGN 2026
 *     Macro grid → Sub-panel → Mapa filtrado
 * ============================================================ */

/* ── Hide legacy sections when app-redesign class is active ── */
body.zp-market-home.zp-home--app-redesign > .zp-hero,
body.zp-market-home.zp-home--app-redesign > section.zp-hero,
.zp-home--app-redesign .zp-hero,
.zp-home--app-redesign .zp-macro-strip,
.zp-home--app-redesign .zp-macro-block,
.zp-home--app-redesign .zp-section--featured,
.zp-home--app-redesign .zp-section--pro-carousel,
.zp-home--app-redesign .zp-reviews,
.zp-home--app-redesign .zp-ally-section,
.zp-home--app-redesign .zp-allies-section,
.zp-home--app-redesign .zp-trust-bar,
.zp-home--app-redesign .zp-customer-cta,
.zp-home--app-redesign .zp-pro-float-cta {
	display: none !important;
}
/* zp-pro-strong siempre visible (explicación del plan PRO) */

/* ── App home wrapper ── */
.zp-app-home {
	padding: 0 0 24px;
}

/* ── Search bar (sin barra sticky; relative para autocomplete) ── */
.zp-app-search-wrap {
	padding: 8px 16px 10px;
	background: transparent;
	border-bottom: 0;
	position: relative;
	top: auto;
	z-index: 50;
}

.zp-app-search-bar {
	display: flex;
	align-items: center;
	background: #f4f6fb;
	border-radius: 14px;
	padding: 0 14px;
	height: 48px;
	gap: 10px;
	border: 1.5px solid #e8ecf4;
	cursor: pointer;
}
.zp-app-search-bar:hover {
	border-color: #93c5fd;
}
.zp-app-search-bar__icon {
	color: #93c5fd;
	font-size: 17px;
	flex-shrink: 0;
}
.zp-app-search-bar__input {
	flex: 1 1 auto;
	border: none;
	background: transparent;
	font-size: 15px;
	color: #94a3b8;
	outline: none;
	cursor: pointer;
	min-width: 0;
}
.zp-app-search-bar__input::placeholder {
	color: #9aa5b8;
}

/* ── Location row ── */
.zp-app-location-row {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 8px;
	padding: 0 2px;
}
.zp-app-location-row__pin {
	color: rgba(255, 255, 255, 0.85);
	font-size: 14px;
	flex-shrink: 0;
}
.zp-app-location-row__label {
	flex: 1 1 auto;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.9);
	font-weight: 500;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	min-width: 0;
}
.zp-app-location-row__change {
	flex-shrink: 0;
	background: none;
	border: none;
	padding: 4px 8px;
	font-size: 12px;
	color: #bfdbfe;
	font-weight: 600;
	cursor: pointer;
	border-radius: 8px;
}
.zp-app-location-row__change:hover {
	background: rgba(255, 255, 255, 0.12);
}

/* ── Location Picker Modal ── */
.zp-loc-picker {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
.zp-loc-picker[hidden] {
	display: none !important;
}
.zp-loc-picker__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.55);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
}
.zp-loc-picker__sheet {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 520px;
	background: #fff;
	border-radius: 20px 20px 0 0;
	padding: 0 0 max(24px, env(safe-area-inset-bottom, 0px));
	box-shadow: 0 -8px 40px rgba(0, 0, 0, 0.22);
	animation: zp-loc-picker-slide-up 0.22s ease-out;
}
@keyframes zp-loc-picker-slide-up {
	from { transform: translateY(100%); opacity: 0; }
	to   { transform: translateY(0);    opacity: 1; }
}
.zp-loc-picker__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 20px 14px;
	border-bottom: 1px solid #e2e8f0;
}
.zp-loc-picker__title {
	font-size: 16px;
	font-weight: 700;
	color: #0f172a;
}
.zp-loc-picker__title .fa {
	color: #2563eb;
	margin-right: 6px;
}
.zp-loc-picker__close {
	background: none;
	border: none;
	cursor: pointer;
	font-size: 18px;
	color: #64748b;
	padding: 4px 8px;
	border-radius: 8px;
	line-height: 1;
}
.zp-loc-picker__close:hover {
	background: #f1f5f9;
	color: #0f172a;
}
.zp-loc-picker__body {
	padding: 16px 20px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.zp-loc-picker__input-wrap {
	position: relative;
}
.zp-loc-picker__input-icon {
	position: absolute;
	left: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: #94a3b8;
	font-size: 14px;
	pointer-events: none;
}
.zp-loc-picker__input {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 14px 12px 38px;
	border: 1.5px solid #cbd5e1;
	border-radius: 12px;
	font-size: 15px;
	color: #0f172a;
	background: #f8fafc;
	outline: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}
.zp-loc-picker__input:focus {
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
	background: #fff;
}
.zp-loc-picker__input::placeholder {
	color: #94a3b8;
}
.zp-loc-picker__suggestions {
	list-style: none;
	margin: 4px 0 0;
	padding: 0;
	background: #fff;
	border: 1.5px solid #e2e8f0;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.10);
}
.zp-loc-picker__suggestions[hidden] {
	display: none;
}
.zp-loc-picker__sug-item {
	padding: 11px 16px;
	font-size: 14px;
	color: #0f172a;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 8px;
	border-bottom: 1px solid #f1f5f9;
	transition: background 0.1s;
}
.zp-loc-picker__sug-item:last-child {
	border-bottom: none;
}
.zp-loc-picker__sug-item:hover,
.zp-loc-picker__sug-item[aria-selected="true"] {
	background: #eff6ff;
	color: #1d4ed8;
}
.zp-loc-picker__sug-item .fa {
	color: #2563eb;
	flex-shrink: 0;
	font-size: 13px;
}
.zp-loc-picker__sug-loading {
	padding: 14px 16px;
	font-size: 14px;
	color: #64748b;
	display: flex;
	align-items: center;
	gap: 8px;
}
.zp-loc-picker__divider {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #94a3b8;
	font-size: 13px;
}
.zp-loc-picker__divider::before,
.zp-loc-picker__divider::after {
	content: '';
	flex: 1;
	height: 1px;
	background: #e2e8f0;
}
.zp-loc-picker__gps {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 13px 16px;
	background: #eff6ff;
	color: #1d4ed8;
	border: 1.5px solid #bfdbfe;
	border-radius: 12px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.15s, border-color 0.15s;
}
.zp-loc-picker__gps:hover {
	background: #dbeafe;
	border-color: #93c5fd;
}
.zp-loc-picker__gps .fa {
	font-size: 16px;
}
@media (min-width: 520px) {
	.zp-loc-picker__sheet {
		border-radius: 20px;
		margin-bottom: 40px;
	}
}

/* ── Macro grid ── */
.zp-app-macro-grid {
	padding: 20px 16px 24px;
}

.zp-app-section-head {
	margin-bottom: 16px;
}
.zp-app-section-title {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #e2e8f0 !important;
	margin: 0 0 4px !important;
	line-height: 1.25 !important;
}
.zp-app-section-sub {
	font-size: 13px !important;
	color: #8fa8c0 !important;
	margin: 0 !important;
	line-height: 1.4 !important;
}

.zp-app-macro-cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	will-change: transform;
}

.zp-app-macro-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 20px 12px 18px;
	background: #f4f7ff;
	border: 1.5px solid #c8d8ea;
	border-radius: 18px;
	cursor: pointer;
	transition: background 0.12s ease, border-color 0.12s ease, transform 0.1s ease;
	text-align: center;
	min-height: 110px;
	-webkit-tap-highlight-color: transparent;
}
.zp-app-macro-card:active {
	background: #e0ecff;
	border-color: #93c5fd;
	transform: scale(0.97);
}

.zp-app-macro-card__icon {
	font-size: 32px;
	line-height: 1;
	display: block;
}
.zp-app-macro-card__title {
	font-size: 13px;
	font-weight: 700;
	color: #071828;
	line-height: 1.3;
	display: block;
	word-break: break-word;
}

/* ── PRO CTA card inside macro grid ── */
.zp-app-pro-cta {
	margin-top: 16px;
	border-radius: 18px;
	background: linear-gradient(135deg, #040f1a 0%, #071828 50%, #0d2a45 100%);
	overflow: hidden;
}
.zp-app-pro-cta__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 18px;
	gap: 12px;
}
.zp-app-pro-cta__copy {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}
.zp-app-pro-cta__badge {
	flex-shrink: 0;
	background: #22c55e;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	border-radius: 6px;
	padding: 3px 7px;
	letter-spacing: 0.5px;
}
.zp-app-pro-cta__text {
	font-size: 13px;
	font-weight: 600;
	color: #fff;
	margin: 0;
	line-height: 1.35;
}
.zp-app-pro-cta__btn {
	flex-shrink: 0;
	background: #0d2340;
	color: #93c5fd;
	border-radius: 10px;
	padding: 9px 16px;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: background 0.1s;
}
.zp-app-pro-cta__btn:active {
	background: #eff4ff;
}

/* ── Sub-category panel ── */
.zp-app-sub-panel {
	background: #0d2340;
	min-height: 100vh;
	padding-bottom: 80px;
}
.zp-app-sub-panel[hidden] {
	display: none !important;
}

.zp-app-sub-header {
	display: flex;
	align-items: center;
	padding: 10px 16px 6px;
	border-bottom: 1px solid #f0f0f0;
	position: sticky;
	top: 0;
	background: #0d2340;
	z-index: 10;
}
.zp-app-sub-back {
	display: flex;
	align-items: center;
	gap: 6px;
	background: none;
	border: none;
	color: #93c5fd;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	padding: 8px 4px;
	-webkit-tap-highlight-color: transparent;
}
.zp-app-sub-back .fa {
	font-size: 18px;
}
.zp-app-sub-back:active {
	opacity: 0.7;
}

.zp-app-sub-body {
	padding: 18px 16px 24px;
}

.zp-app-sub-title-row {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 18px;
}
.zp-app-sub-title-icon {
	font-size: 36px;
	line-height: 1;
	flex-shrink: 0;
}
.zp-app-sub-title {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #e2e8f0 !important;
	margin: 0 0 3px !important;
	line-height: 1.2 !important;
}
.zp-app-sub-sub {
	font-size: 13px !important;
	color: #8fa8c0 !important;
	margin: 0 !important;
}

/* ── Sub-category grid (3 columns) ── */
.zp-app-sub-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin-bottom: 20px;
}

.zp-app-sub-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 14px 8px 12px;
	background: #0d2340;
	border: 1.5px solid #e8ecf4;
	border-radius: 14px;
	text-decoration: none;
	text-align: center;
	transition: border-color 0.1s, background 0.1s, transform 0.1s;
	box-shadow: 0 1px 4px rgba(0,0,0,.05);
	min-height: 64px;
	-webkit-tap-highlight-color: transparent;
}
.zp-app-sub-card:active {
	background: #eff4ff;
	border-color: #93c5fd;
	transform: scale(0.97);
}
.zp-app-sub-card__name {
	font-size: 12px;
	font-weight: 600;
	color: #e2e8f0;
	line-height: 1.3;
	display: block;
	word-break: break-word;
}
.zp-app-sub-card--all {
	grid-column: 1 / -1;
	justify-content: center;
	flex-direction: row;
	min-height: 48px;
}

/* ── Ver todos link ── */
.zp-app-sub-ver-todos {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 14px;
	background: #f4f7ff;
	border: 1.5px solid #e8ecf4;
	border-radius: 14px;
	font-size: 14px;
	font-weight: 600;
	color: #93c5fd;
	text-decoration: none;
	transition: background 0.1s;
}
.zp-app-sub-ver-todos:active {
	background: #e6edff;
}

/* Home app: ubicación en fila bajo buscador (no duplicar en header mobile) */
body.zp-market-home.zp-home--app-redesign .zp-header.zp-header--2026 .zp-header-nav__mobile-loc {
	display: none !important;
}

/* ── Search autocomplete dropdown ── */
.zp-app-search-suggestions {
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	background: #fff;
	border: 1.5px solid #e8ecf4;
	border-radius: 16px;
	box-shadow: 0 8px 32px rgba(0,0,0,.12);
	z-index: 100;
	overflow: hidden;
	max-height: 320px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.zp-app-search-wrap {
	position: relative;
}

.zp-app-search-suggestion {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 13px 16px;
	background: none;
	border: none;
	border-bottom: 1px solid #f4f6fb;
	text-align: left;
	cursor: pointer;
	font-size: 14px;
	color: #0f172a;
	text-decoration: none;
	-webkit-tap-highlight-color: transparent;
	transition: background 0.1s;
}
.zp-app-search-suggestion:last-child {
	border-bottom: none;
}
.zp-app-search-suggestion:active,
.zp-app-search-suggestion:hover {
	background: #f4f7ff;
}
.zp-app-search-suggestion .fa-tag {
	color: #9aa5b8;
	font-size: 13px;
	flex-shrink: 0;
}
.zp-app-search-suggestion span {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.zp-app-search-suggestion__arrow {
	color: #cbd5e1;
	font-size: 12px;
	flex-shrink: 0;
}
.zp-app-search-suggestion--ai {
	color: #93c5fd;
	border-top: 1.5px solid #f0f4ff;
	background: #f8faff;
}
.zp-app-search-suggestion--ai .fa-magic {
	color: #93c5fd;
	font-size: 13px;
	flex-shrink: 0;
}
.zp-app-search-suggestion--ai:active,
.zp-app-search-suggestion--ai:hover {
	background: #eff4ff;
}

.zp-app-search-suggestion__badge {
	flex-shrink: 0;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.4px;
	color: #93c5fd;
	background: #dbeafe;
	border-radius: 5px;
	padding: 2px 5px;
	line-height: 1.4;
	text-transform: uppercase;
}

/* Make the search input look live (not greyed-out) */
.zp-app-search-bar__input {
	cursor: text !important;
	pointer-events: auto !important;
}

/* ── Search suggestions: más prominentes ── */
.zp-app-search-suggestions {
	box-shadow: 0 12px 40px rgba(0,0,0,.18), 0 2px 8px rgba(0,0,0,.08) !important;
	border: 2px solid #d1d9f0 !important;
}
.zp-app-search-suggestion span {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #0f172a !important;
}
.zp-app-search-suggestion .fa-tag {
	color: #93c5fd !important;
	font-size: 14px !important;
}




/* ============================================================
 * 20. SECCIÓN INFORMATIVA — debajo del grid de macrocategorías
 * Scoped a .zp-info-section para no afectar otros estilos.
 * ============================================================ */

.zp-info-section {
	padding: 8px 16px 32px;
	margin-top: 8px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* ── Card PRO ── */
.zp-info-pro-card {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 14px;
	background: linear-gradient(145deg, #fffbeb 0%, #fff7ed 100%);
	border: 1px solid rgba(253, 186, 116, 0.45);
	border-radius: 18px;
	padding: 16px;
	box-shadow: 0 4px 14px rgba(234, 88, 12, 0.07);
}
.zp-info-pro-card__body {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}
.zp-info-pro-card__head {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}
.zp-info-pro-card__badge {
	flex-shrink: 0;
	background: var(--zp-pro-badge-bg, linear-gradient(135deg, #fbbf24 0%, #ea580c 100%));
	color: var(--zp-pro-badge-color, #fff);
	font-size: 10px;
	font-weight: 800;
	border-radius: 7px;
	padding: 4px 8px;
	letter-spacing: 0.5px;
	margin-top: 2px;
	box-shadow: var(--zp-pro-badge-shadow, 0 2px 6px rgba(234, 88, 12, 0.25));
}
.zp-info-pro-card__lead {
	font-size: 14px;
	font-weight: 700;
	color: #431407;
	margin: 0;
	line-height: 1.4;
}
.zp-info-pro-card__rocket {
	margin-right: 2px;
}
.zp-info-pro-card__benefits {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.zp-info-pro-card__benefits li {
	font-size: 13px;
	line-height: 1.35;
	color: #78350f;
	font-weight: 500;
}
.zp-info-pro-card__closing {
	font-size: 13px;
	font-weight: 600;
	color: #9a3412;
	margin: 0;
	line-height: 1.4;
}
.zp-info-pro-card__btn {
	display: block;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
	background: var(--zp-pro-badge-bg, linear-gradient(135deg, #fbbf24 0%, #ea580c 100%));
	color: #fff;
	border-radius: 12px;
	padding: 12px 16px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 3px 10px rgba(234, 88, 12, 0.2);
	transition: background 0.12s ease, transform 0.12s ease, box-shadow 0.12s ease;
}
.zp-info-pro-card__btn:active {
	background: linear-gradient(135deg, #f59e0b 0%, #c2410c 100%);
	transform: scale(0.98);
	box-shadow: 0 2px 8px rgba(234, 88, 12, 0.18);
}

/* ── Bloque ¿Qué es YoLaburo? ── */
.zp-info-what {
	background: #0d2340;
	border: 1.5px solid #1a3a5c;
	border-radius: 18px;
	padding: 18px 16px;
	margin-top: 4px;
	box-shadow: 0 2px 8px rgba(0,0,0,.25);
}
.zp-info-what__head {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}

.zp-info-what__logo {
	display: block;
	flex-shrink: 0;
	width: 88px;
	height: auto;
	max-height: 40px;
	object-fit: contain;
}

.zp-info-what__head-copy {
	flex: 1 1 auto;
	min-width: 0;
}

.zp-info-what__eyebrow {
	margin: 0 0 4px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #93c5fd;
}
.zp-info-what__title {
	font-size: 16px;
	font-weight: 700;
	color: #e2e8f0;
	margin: 0;
	line-height: 1.25;
}
.zp-info-what__text {
	font-size: 13px;
	color: #8fa8c0;
	margin: 0 0 16px;
	line-height: 1.5;
}
.zp-info-what__cols {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}
.zp-info-what__col {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 5px;
}
.zp-info-what__icon {
	font-size: 22px;
	color: #93c5fd;
	line-height: 1;
}
.zp-info-what__col strong {
	font-size: 12px;
	font-weight: 700;
	color: #e2e8f0;
	line-height: 1.2;
}
.zp-info-what__col span {
	font-size: 11px;
	color: #8fa8c0;
	line-height: 1.4;
}

.zp-info-what__audiences {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 4px;
}

.zp-info-what__audience {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(147, 197, 253, 0.16);
	border-radius: 14px;
	padding: 12px 12px 10px;
}

.zp-info-what__audience--provider {
	border-color: rgba(245, 158, 11, 0.35);
	background: rgba(245, 158, 11, 0.08);
}

.zp-info-what__audience-label {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 8px;
	font-size: 12px;
	font-weight: 700;
	color: #e2e8f0;
	line-height: 1.25;
}

.zp-info-what__audience--provider .zp-info-what__audience-label {
	color: #fde68a;
}

.zp-info-what__audience-icon {
	font-size: 14px;
	color: #93c5fd;
	flex-shrink: 0;
}

.zp-info-what__audience--provider .zp-info-what__audience-icon {
	color: #fbbf24;
}

.zp-info-what__audience-list {
	margin: 0;
	padding: 0 0 0 18px;
	list-style: disc;
}

.zp-info-what__audience-list li {
	font-size: 12px;
	color: #8fa8c0;
	line-height: 1.45;
	margin-bottom: 6px;
}

.zp-info-what__audience-list li:last-child {
	margin-bottom: 0;
}

.zp-info-what__actions {
	margin-top: 16px;
}

.zp-info-what__link-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 14px;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
	color: #0d2340 !important;
	background: linear-gradient(135deg, #93c5fd 0%, #dbeafe 100%);
	border: 1.5px solid rgba(147, 197, 253, 0.6);
	box-shadow: 0 2px 8px rgba(37, 99, 235, 0.2);
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.zp-info-what__link-btn:active {
	transform: scale(0.98);
}

/* ── Cards informativas genéricas ── */
.zp-info-card {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #0d2340;
	border: 1.5px solid #1a3a5c;
	border-radius: 18px;
	padding: 16px;
	box-shadow: 0 2px 8px rgba(0,0,0,.25);
	text-decoration: none;
}
.zp-info-card__icon-wrap {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
}
.zp-info-card--nocomm .zp-info-card__icon-wrap {
	background: #0d2a4a;
	color: #93c5fd;
}
.zp-info-card--allies .zp-info-card__icon-wrap {
	background: #1c1400;
	color: #fbbf24;
}
.zp-info-card--allies {
	background: #0d2340;
	border-color: #78500a;
}
.zp-info-card__body {
	flex: 1 1 auto;
	min-width: 0;
}
.zp-info-card__title {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: #e2e8f0;
	margin-bottom: 4px;
	line-height: 1.25;
}
.zp-info-card__sub {
	font-size: 12px;
	color: #8fa8c0;
	margin: 0;
	line-height: 1.45;
}
.zp-info-card__arrow {
	flex-shrink: 0;
	color: #cbd5e1;
	font-size: 16px;
}

/* Logos de aliados */
.zp-info-allies__logos {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 8px;
}
.zp-info-allies__logo-pill {
	font-size: 10px;
	font-weight: 600;
	color: #fcd34d;
	background: #1c1400;
	border: 1px solid #78500a;
	border-radius: 6px;
	padding: 2px 8px;
	line-height: 1.6;
}

/* ── CTA WhatsApp ayuda ── */
.zp-info-wa-cta {
	display: flex;
	align-items: center;
	gap: 14px;
	background: #22c55e;
	border-radius: 18px;
	padding: 18px 16px;
	text-decoration: none;
	box-shadow: 0 4px 16px rgba(34,197,94,.3);
	transition: transform 0.12s ease, box-shadow 0.12s ease;
}
.zp-info-wa-cta:active {
	transform: scale(0.98);
	box-shadow: 0 2px 8px rgba(34,197,94,.25);
}
.zp-info-wa-cta__icon {
	font-size: 32px;
	color: #fff;
	flex-shrink: 0;
	line-height: 1;
}
.zp-info-wa-cta__body {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.zp-info-wa-cta__body strong {
	font-size: 15px;
	font-weight: 700;
	color: #fff;
	display: block;
	line-height: 1.2;
}
.zp-info-wa-cta__body span {
	font-size: 13px;
	color: rgba(255,255,255,.85);
	display: block;
	line-height: 1.3;
}
.zp-info-wa-cta__arrow {
	flex-shrink: 0;
	color: rgba(255,255,255,.7);
	font-size: 18px;
}

/* ============================================================
 * 21. HERO TAGLINE — encima del buscador
 * ============================================================ */

.zp-app-hero {
	padding: 8px 16px 2px;
}
.zp-app-hero__title {
	font-size: 22px;
	font-weight: 800;
	color: #e2e8f0;
	line-height: 1.3;
	margin: 0;
	letter-spacing: -0.3px;
}
.zp-app-hero__accent {
	display: inline;
	color: #93c5fd;
}

/* ============================================================
 * 22. RESEÑAS — "Lo que dicen nuestros usuarios"
 * ============================================================ */

.zp-info-reviews {
	background: #0d2340;
	border: 1.5px solid #1a3a5c;
	border-radius: 18px;
	padding: 18px 16px;
	box-shadow: 0 2px 8px rgba(0,0,0,.25);
}
.zp-info-reviews__title {
	font-size: 16px;
	font-weight: 700;
	color: #e2e8f0;
	margin: 0 0 4px;
	line-height: 1.25;
}
.zp-info-reviews__eyebrow {
	margin: 0 0 6px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fcd34d;
}
.zp-info-reviews__sub {
	font-size: 12px;
	color: #8fa8c0;
	margin: 0 0 14px;
	line-height: 1.5;
}
.zp-info-reviews__list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.zp-info-review-card {
	background: #091522;
	border: 1px solid #1a3a5c;
	border-radius: 14px;
	padding: 14px;
}
.zp-info-review-card__text {
	font-size: 13px;
	color: #e2e8f0;
	line-height: 1.55;
	margin: 0 0 10px;
	font-style: italic;
}
.zp-info-review-card__author {
	display: flex;
	align-items: center;
	gap: 8px;
}
.zp-info-review-card__stars {
	color: #f59e0b;
	font-size: 12px;
	letter-spacing: 1px;
}
.zp-info-review-card__name {
	font-size: 12px;
	font-weight: 600;
	color: #8fa8c0;
}

/* Header site-wide: zp-header-global-lock.css (inline, todas las páginas) */

/* ============================================================
 * ALIADOS — dark theme overrides (texto visible + padding PRO)
 * ============================================================ */

/* Espaciado entre card PRO y sección siguiente */
.zp-info-pro-card {
	margin-bottom: 24px !important;
}

/* Franja aliados: Plan Pro + Ver todos (naranja), copy explicativo (blanco) */
body.zp-market-home .zp-home-allies-strip__sub {
	color: #ffffff !important;
}

body.zp-market-home .zp-home-allies-strip__link-all,
body.zp-market-home .zp-home-allies-strip__link-all .fa {
	color: rgba(255, 255, 255, 0.90) !important;
}

body.zp-market-home .zp-home-allies-strip__btn-pro {
	color: #fff !important;
	background: rgba(255, 255, 255, 0.12) !important;
	border: 1.5px solid rgba(255, 255, 255, 0.35) !important;
	box-shadow: none !important;
}

body.zp-market-home .zp-home-allies-strip__btn-pro:hover,
body.zp-market-home .zp-home-allies-strip__btn-pro:focus-visible {
	color: #fb923c !important;
	background: rgba(249, 115, 22, 0.22) !important;
}

/* Franja aliados: panel + carrusel con un solo look (sin mezcla de colores por marca) */
body.zp-market-home #zp-home-allies-strip {
	scroll-margin-top: calc(72px + env(safe-area-inset-top, 0px));
}

body.zp-market-home .zp-home-allies-strip {
	margin-top: 24px !important;
	margin-bottom: 19px !important;
	padding: 22px 19px 19px !important;
	border: 1px solid rgba(249, 115, 22, 0.24) !important;
	border-radius: 24px !important;
	background: linear-gradient(152deg, #0c1f35 0%, #081628 52%, #0a1420 100%) !important;
	box-shadow:
		0 16px 48px rgba(0, 0, 0, 0.32),
		inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
	overflow: hidden;
	position: relative;
	isolation: isolate;
}

body.zp-market-home .zp-home-allies-strip::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	background:
		radial-gradient(72% 58% at 100% 0%, rgba(249, 115, 22, 0.13) 0%, transparent 56%),
		radial-gradient(58% 48% at 0% 100%, rgba(37, 99, 235, 0.07) 0%, transparent 52%);
}

body.zp-market-home .zp-home-allies-strip__head,
body.zp-market-home .zp-home-allies-strip__track {
	position: relative;
	z-index: 1;
}

body.zp-market-home .zp-home-allies-strip__title {
	color: #f8fafc !important;
	font-size: 1.22rem !important;
}

body.zp-market-home .zp-home-allies-strip__eyebrow {
	font-size: 13px !important;
}

body.zp-market-home .zp-home-allies-strip__sub {
	font-size: 15px !important;
	line-height: 1.4 !important;
}

body.zp-market-home .zp-home-allies-strip__track {
	margin-top: 17px !important;
	padding: 14px 12px 17px !important;
	border-radius: 17px !important;
	background: rgba(4, 11, 22, 0.62) !important;
	border: 1px solid rgba(148, 163, 184, 0.14) !important;
	mask-image: linear-gradient(90deg, #000 94%, transparent 100%);
	-webkit-mask-image: linear-gradient(90deg, #000 94%, transparent 100%);
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card--mini {
	background: rgba(14, 28, 46, 0.96) !important;
	border: 1px solid rgba(249, 115, 22, 0.22) !important;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28) !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__logo--mini {
	border-color: rgba(251, 191, 36, 0.42) !important;
	color: #fbbf24 !important;
	background: linear-gradient(145deg, rgba(30, 41, 59, 0.9) 0%, rgba(15, 23, 42, 0.95) 100%) !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__promo--mini,
body.zp-market-home .zp-home-allies-strip .zp-ally-card__discount {
	color: #fdba74 !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__name--mini {
	color: #f1f5f9 !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__badge--ally,
body.zp-market-home .zp-ally-card__badge--ally {
	color: #fff !important;
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	box-shadow: 0 2px 8px rgba(14, 165, 233, 0.35) !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__more {
	color: rgba(255, 255, 255, 0.70) !important;
	font-size: 11px;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__more--cta {
	display: block;
	width: 100%;
	margin-top: auto;
	padding: 9px 10px;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.2;
	text-align: center;
	letter-spacing: 0.01em;
	color: #fff !important;
	background: linear-gradient(135deg, #fb923c 0%, #ea580c 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 10px;
	box-shadow: 0 5px 16px rgba(249, 115, 22, 0.42);
	transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card--redeem:hover .zp-ally-card__more--cta,
body.zp-market-home .zp-home-allies-strip .zp-ally-card--redeem:focus-visible .zp-ally-card__more--cta {
	filter: brightness(1.06);
	box-shadow: 0 7px 20px rgba(249, 115, 22, 0.5);
	transform: translateY(-1px);
}

body.zp-market-home .zp-home-allies-strip__partner {
	position: relative;
	z-index: 1;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid rgba(148, 163, 184, 0.18);
}

body.zp-market-home .zp-home-allies-strip__partner-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 17px 22px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: #ffffff !important;
	text-decoration: none !important;
	text-align: center;
	background: #2563eb;
	border: none;
	border-radius: 16px;
	box-shadow:
		0 10px 28px rgba(37, 99, 235, 0.38),
		0 2px 0 rgba(255, 255, 255, 0.12) inset;
	transition:
		background 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.18s ease,
		filter 0.18s ease;
}

body.zp-market-home .zp-home-allies-strip__partner-btn-icon {
	flex-shrink: 0;
	font-size: 1.15rem;
	opacity: 0.95;
}

body.zp-market-home .zp-home-allies-strip__partner-btn-text {
	display: inline;
}

body.zp-market-home .zp-home-allies-strip__partner-btn-rocket {
	margin-right: 2px;
}

body.zp-market-home .zp-home-allies-strip__partner-btn:hover,
body.zp-market-home .zp-home-allies-strip__partner-btn:focus-visible {
	color: #ffffff !important;
	background: #1d4ed8;
	box-shadow:
		0 14px 34px rgba(37, 99, 235, 0.48),
		0 2px 0 rgba(255, 255, 255, 0.14) inset;
	transform: translateY(-2px);
	filter: brightness(1.03);
}

body.zp-market-home .zp-home-allies-strip__partner-btn:active {
	transform: translateY(0);
	box-shadow:
		0 6px 18px rgba(37, 99, 235, 0.32),
		0 2px 0 rgba(255, 255, 255, 0.1) inset;
}

/* Proveedores PRO (título + badge + Ver todos) sobre fondo oscuro */
body.zp-market-home .zp-section--pro-carousel .zp-link-all--section-strip,
body.zp-market-home .zp-section--pro-carousel .zp-link-all--section-strip .fa {
	color: rgba(255, 255, 255, 0.85) !important;
}

body.zp-market-home .zp-section--pro-carousel .zp-section-pro-badge {
	color: var(--zp-pro-badge-color) !important;
	background: var(--zp-pro-badge-bg) !important;
	border-color: transparent !important;
	box-shadow: var(--zp-pro-badge-shadow) !important;
}

body.zp-market-home.zp-home-dark-premium .zp-section--pro-carousel .zp-section-sub {
	color: #ffffff !important;
}

/* Carrusel Proveedores PRO: mismo panel navy (sin mezcla amarillo/blanco) */
body.zp-market-home .zp-section.zp-section--pro-carousel {
	margin-top: 18px !important;
	padding: 18px 16px 14px !important;
	border-radius: 20px !important;
	border: 1px solid rgba(249, 115, 22, 0.22) !important;
	background: linear-gradient(152deg, #0c1f35 0%, #081628 52%, #0a1420 100%) !important;
	box-shadow:
		0 16px 48px rgba(0, 0, 0, 0.28),
		inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

body.zp-market-home .zp-section--pro-carousel .zp-section-title--featured,
body.zp-market-home .zp-section--pro-carousel .zp-section-title--pro-carousel {
	color: #f8fafc !important;
}

/* Cards PRO en carrusel — categoría legible sobre pill celeste */
body.zp-market-home .zp-section--pro-carousel .zp-service-card .zp-service-card__cat,
body.zp-market-home .zp-section--latest-pro .zp-service-card .zp-service-card__cat {
	color: #1e3a5f !important;
	background: #dbeafe !important;
	border: 1px solid #93c5fd !important;
	box-shadow: none !important;
}

body.zp-market-home.zp-home-dark-premium .zp-service-card .zp-service-card__cat {
	color: #e2e8f0 !important;
	background: rgba(30, 41, 59, 0.88) !important;
	border: 1px solid rgba(148, 163, 184, 0.35) !important;
}

body.zp-market-home.zp-home-dark-premium .zp-service-card--pro .zp-service-card__cat,
body.zp-market-home.zp-home-dark-premium .zp-service-card--carousel.zp-service-card--pro .zp-service-card__cat {
	color: #fef3c7 !important;
	background: rgba(30, 41, 59, 0.92) !important;
	border-color: rgba(251, 191, 36, 0.35) !important;
}

/* Sección completa */
body.zp-market-home #zp-allies-section,
body.zp-market-home .zp-allies {
	background: #071828 !important;
	padding-top: 20px !important;
	padding-bottom: 24px !important;
}

/* Ícono de la intro */
body.zp-market-home .zp-allies-intro__icon {
	background: linear-gradient(135deg, #1a3a5c, #0d2340) !important;
	box-shadow: 0 6px 18px rgba(7,24,40,.40) !important;
}

/* Título */
body.zp-market-home .zp-allies-intro__title {
	color: #e2e8f0 !important;
}

/* Descripción */
body.zp-market-home .zp-allies-intro__desc {
	color: #8fa8c0 !important;
}

/* Badge "Solo para PRO" */
body.zp-market-home .zp-allies-intro__pro-line {
	color: #93c5fd !important;
	background: rgba(13,35,64,.80) !important;
	border-color: rgba(147,197,253,.25) !important;
}

/* WA line */
body.zp-market-home .zp-allies-intro__wa-line {
	color: #4ade80 !important;
	font-size: 13px;
}

/* Botón "Ver descuentos" */
body.zp-market-home .zp-allies-intro__btn {
	background: #071828 !important;
	border: 1.5px solid #254a6c !important;
	color: #e2e8f0 !important;
	box-shadow: none !important;
}

/* Cards de aliados */
body.zp-market-home .zp-ally-card {
	background: #0d2340 !important;
	border-color: #1a3a5c !important;
	box-shadow: 0 4px 14px rgba(0,0,0,.30) !important;
}

body.zp-market-home .zp-ally-card__badge--ally {
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%) !important;
	color: #fff !important;
	border: 1px solid rgba(255, 255, 255, 0.22) !important;
	box-shadow: 0 2px 8px rgba(14, 165, 233, 0.35) !important;
}

body.zp-market-home .zp-ally-card__logo {
	background: #091522 !important;
	border-color: #254a6c !important;
}

body.zp-market-home .zp-ally-card__name {
	color: #e2e8f0 !important;
}

body.zp-market-home .zp-ally-card__discount {
	color: #93c5fd !important;
}

body.zp-market-home .zp-ally-card__desc {
	color: #8fa8c0 !important;
}

body.zp-market-home .zp-ally-card__more {
	color: #93c5fd !important;
}

/* Scrollbar */
body.zp-market-home .zp-allies-track::-webkit-scrollbar-thumb {
	background: #254a6c !important;
}

/* ============================================================
 * HOME — Fondo azul gradient (estilo app, ref. Solicitudes)
 * Más oscuro arriba (#040f1a) → termina en #2563eb (igual que antes abajo)
 * ============================================================ */

body.zp-market-home {
	--zp-c-primary:       #2563eb;
	--zp-c-primary-dark:    #1a4bc2;
	--zp-c-primary-bg:      #eff4ff;
	--zp-c-bg-page:         #1a4bc2;
	--zp-c-bg-card:         #ffffff;
	--zp-c-bg-soft:         rgba(255, 255, 255, 0.12);
	--zp-c-bg-input:        #ffffff;
	--zp-c-border:          rgba(255, 255, 255, 0.18);
	--zp-c-text-1:          #ffffff;
	--zp-c-text-2:          rgba(255, 255, 255, 0.78);
	--zp-c-text-3:          rgba(255, 255, 255, 0.55);
	--zp-home-gradient-top: #0b224f;
	--zp-home-gradient-mid: #0f2d66;
	--zp-home-gradient-end: #1a4594;
	--zp-home-header-offset: calc(env(safe-area-inset-top, 0px) + 88px);
	--zp-home-header-bg: var(--zp-home-gradient-top);
	background: linear-gradient(
		180deg,
		var(--zp-home-gradient-top) 0%,
		#0d2860 20%,
		var(--zp-home-gradient-mid) 48%,
		#153878 76%,
		var(--zp-home-gradient-end) 100%
	) !important;
	background-color: var(--zp-home-gradient-end) !important;
	background-attachment: fixed !important;
	background-repeat: no-repeat !important;
	background-size: 100% 100vh !important;
	min-height: 100vh;
}

/* Contenedores transparentes para que el degradé cubra header + contenido */
body.zp-market-home #wrapper,
body.zp-market-home #page,
body.zp-market-home #main,
body.zp-market-home .wrapper-mobile {
	background: transparent !important;
}

body.zp-market-home header.zp-header.zp-header--2026,
body.zp-market-home header.zp-header.zp-header--nav.zp-header--2026 {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	z-index: 220 !important;
	background: var(--zp-home-header-bg) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4) !important;
	backdrop-filter: none !important;
}

body.zp-market-home .zp-header-nav,
body.zp-market-home .zp-header-nav__mobile-bar,
body.zp-market-home .zp-header-nav__desktop,
body.zp-market-home .zp-container.zp-header-nav {
	background: var(--zp-home-header-bg) !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.zp-market-home #wrapper,
body.zp-market-home .zp-home.zp-home--app-redesign,
body.zp-market-home .zp-app-home {
	padding-top: var(--zp-home-header-offset) !important;
}

/* Un solo bloque de pitch PRO (zp-plus); ocultar legacy duplicados si quedaran en caché */
body.zp-market-home .zp-pro-soft,
body.zp-market-home .zp-pro-strong,
body.zp-market-home #zp-pro-float-cta {
	display: none !important;
}

body.zp-market-home .zp-home,
body.zp-market-home .zp-home--py,
body.zp-market-home .zp-home--premium-app,
body.zp-market-home .zp-section,
body.zp-market-home .zp-macro-strip,
body.zp-market-home .zp-macro-block,
body.zp-market-home .zp-info-section {
	background: transparent !important;
	padding-top: 16px !important;
	margin-top: 12px !important;
	gap: 16px !important;
}

body.zp-market-home .zp-app-home {
	background: transparent !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.zp-market-home.zp-home--app-redesign .zp-app-hero {
	padding: 2px 16px 0 !important;
	margin: 0 !important;
}

body.zp-market-home.zp-home--app-redesign .zp-app-search-wrap {
	padding: 6px 16px 8px !important;
}

body.zp-market-home .zp-app-macro-grid {
	padding-bottom: 28px !important;
}

body.zp-market-home .zp-info-section {
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	padding-top: 22px !important;
	margin-top: 18px !important;
}

body.zp-market-home .zp-info-what {
	margin-top: 0 !important;
}

/* Sección informativa — solo cards auxiliares blancas (no YoLaburo / comisiones / reseñas) */
body.zp-market-home .zp-info-card:not(.zp-info-panel--trust),
body.zp-market-home .zp-info-card--allies {
	background: #ffffff !important;
	border: none !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.10) !important;
}

/* ¿Qué es YoLaburo? — panel oscuro translúcido */
body.zp-market-home .zp-info-what.zp-info-what--platform {
	background: linear-gradient(
		145deg,
		rgba(4, 15, 31, 0.88) 0%,
		rgba(13, 35, 64, 0.82) 100%
	) !important;
	border: 1px solid rgba(147, 197, 253, 0.28) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.06),
		0 10px 28px rgba(0, 0, 0, 0.22) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	padding: 20px 16px 18px !important;
}

body.zp-market-home .zp-info-what__head {
	align-items: center !important;
	gap: 12px !important;
	margin-bottom: 12px !important;
}

body.zp-market-home .zp-info-what__logo {
	width: 92px !important;
	max-height: 42px !important;
}

body.zp-market-home .zp-info-what__eyebrow {
	color: #93c5fd !important;
}

body.zp-market-home .zp-info-what__title {
	color: #f8fafc !important;
}

body.zp-market-home .zp-info-what__text {
	color: rgba(226, 232, 240, 0.82) !important;
}

body.zp-market-home .zp-info-what__cols {
	gap: 8px !important;
}

body.zp-market-home .zp-info-what__col {
	background: rgba(255, 255, 255, 0.07) !important;
	border: 1px solid rgba(147, 197, 253, 0.16) !important;
	border-radius: 14px !important;
	padding: 12px 8px !important;
}

body.zp-market-home .zp-info-what__col strong {
	color: #f1f5f9 !important;
}

body.zp-market-home .zp-info-what__col span {
	color: rgba(203, 213, 225, 0.88) !important;
}

body.zp-market-home .zp-info-what__icon {
	color: #60a5fa !important;
}

body.zp-market-home .zp-info-what__audience {
	background: rgba(255, 255, 255, 0.07) !important;
	border: 1px solid rgba(147, 197, 253, 0.16) !important;
}

body.zp-market-home .zp-info-what__audience--provider {
	border-color: rgba(245, 158, 11, 0.35) !important;
	background: rgba(245, 158, 11, 0.1) !important;
}

body.zp-market-home .zp-info-what__audience-label {
	color: #f1f5f9 !important;
}

body.zp-market-home .zp-info-what__audience--provider .zp-info-what__audience-label {
	color: #fde68a !important;
}

body.zp-market-home .zp-info-what__audience-list li {
	color: rgba(203, 213, 225, 0.88) !important;
}

/* Sin comisiones — panel oscuro con acento verde */
body.zp-market-home .zp-info-panel--trust {
	background: linear-gradient(
		145deg,
		rgba(6, 28, 22, 0.92) 0%,
		rgba(10, 42, 32, 0.86) 100%
	) !important;
	border: 1px solid rgba(74, 222, 128, 0.28) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.05),
		0 10px 28px rgba(0, 0, 0, 0.22) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

body.zp-market-home .zp-info-panel--trust .zp-info-card__icon-wrap {
	background: rgba(34, 197, 94, 0.16) !important;
	color: #86efac !important;
}

body.zp-market-home .zp-info-panel--trust .zp-info-card__title {
	color: #ecfdf5 !important;
}

body.zp-market-home .zp-info-panel--trust .zp-info-card__sub {
	color: rgba(187, 247, 208, 0.82) !important;
}

body.zp-market-home .zp-info-panel--trust .zp-info-card__arrow {
	color: rgba(134, 239, 172, 0.7) !important;
}

/* Reseñas — panel oscuro con acento ámbar */
body.zp-market-home .zp-info-reviews--platform {
	background: linear-gradient(
		145deg,
		rgba(18, 14, 8, 0.94) 0%,
		rgba(28, 22, 12, 0.92) 100%
	) !important;
	border: 1px solid rgba(251, 191, 36, 0.24) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.05),
		0 10px 28px rgba(0, 0, 0, 0.22) !important;
	padding: 22px 16px 32px !important;
	margin-bottom: 20px !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-reviews__list {
	gap: 14px !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-review-card {
	padding: 16px !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-reviews__eyebrow {
	color: #fcd34d !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-reviews__title {
	color: #fef3c7 !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-reviews__sub {
	color: rgba(253, 230, 138, 0.72) !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-review-card {
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(251, 191, 36, 0.14) !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-review-card__text {
	color: #fef3c7 !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-review-card__name {
	color: rgba(253, 230, 138, 0.72) !important;
}

body.zp-market-home .zp-info-card__title,
body.zp-market-home .zp-info-card--allies .zp-info-card__title,
body.zp-market-home .zp-info-reviews:not(.zp-info-reviews--platform) .zp-info-reviews__title {
	color: #0f172a !important;
}

body.zp-market-home .zp-info-card__sub,
body.zp-market-home .zp-info-card--allies .zp-info-card__sub,
body.zp-market-home .zp-info-reviews:not(.zp-info-reviews--platform) .zp-info-reviews__sub {
	color: #64748b !important;
}
body.zp-market-home .zp-app-hero__title {
	color: #ffffff !important;
}

body.zp-market-home .zp-app-hero__accent {
	color: #60a5fa !important;
}

body.zp-market-home .zp-app-section-title {
	color: #ffffff !important;
}

body.zp-market-home .zp-app-section-sub {
	color: rgba(255, 255, 255, 0.78) !important;
}

/* Macrocategorías — cards blancas sobre el azul */
body.zp-market-home .zp-app-macro-card,
body.zp-market-home .zp-macro-card,
body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card,
body.home.zp-market-home .zp-home-categories.zp-macro-strip .zp-macro-card {
	background: #ffffff !important;
	border: none !important;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.12) !important;
}

body.zp-market-home .zp-app-macro-card:active,
body.zp-market-home .zp-macro-card:active {
	background: #f0f4ff !important;
}

body.zp-market-home .zp-app-macro-card {
	border-radius: 16px !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.10) !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

body.zp-market-home .zp-app-macro-card:hover {
	transform: translateY(-2px) scale(1.01) !important;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15) !important;
}

body.zp-market-home .zp-app-macro-card__title,
body.zp-market-home .zp-macro-card__title,
body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card__title {
	color: #0f172a !important;
}

body.zp-market-home .zp-macro-card__desc,
body.home.zp-market-home .zp-section.zp-macro-strip .zp-macro-card__desc {
	color: #64748b !important;
}

/* Panel subcategorías — mismo gradiente (tope más oscuro) */
body.zp-market-home .zp-app-sub-panel,
body.zp-market-home .zp-app-sub-header {
	background: linear-gradient(
		180deg,
		var(--zp-home-gradient-top, #0b224f) 0%,
		var(--zp-home-gradient-mid, #0f2d66) 45%,
		var(--zp-home-gradient-end, #1a4594) 100%
	) !important;
}

body.zp-market-home .zp-app-sub-title {
	color: #ffffff !important;
}

body.zp-market-home .zp-app-sub-sub {
	color: rgba(255, 255, 255, 0.78) !important;
}

body.zp-market-home .zp-app-sub-back {
	color: #93c5fd !important;
}

body.zp-market-home .zp-app-sub-card {
	background: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.35) !important;
}

body.zp-market-home .zp-app-sub-card__name {
	color: #0f172a !important;
}

/* Hero y títulos de sección (buscador/ubicación: solo en header global) */

body.zp-market-home .zp-info-review-card {
	background: #f8fafc !important;
	border: 1px solid #e2e8f0 !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-review-card {
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(251, 191, 36, 0.14) !important;
}

body.zp-market-home .zp-info-review-card__text {
	color: #334155 !important;
}

body.zp-market-home .zp-info-review-card__name {
	color: #64748b !important;
}

body.zp-market-home .zp-info-card__arrow {
	color: #94a3b8 !important;
}

/* Aliados sobre el gradiente */
body.zp-market-home #zp-allies-section,
body.zp-market-home .zp-allies {
	background: transparent !important;
}

body.zp-market-home .zp-allies-intro__title {
	color: #ffffff !important;
}

body.zp-market-home .zp-allies-intro__desc {
	color: rgba(255, 255, 255, 0.82) !important;
}

body.zp-market-home .zp-allies-intro__pro-line {
	color: #bfdbfe !important;
	background: rgba(255, 255, 255, 0.12) !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
}

body.zp-market-home .zp-allies-intro__btn {
	background: #ffffff !important;
	border-color: transparent !important;
	color: #1d4ed8 !important;
}

body.zp-market-home .zp-ally-card {
	background: #ffffff !important;
	border-color: #e2e8f0 !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10) !important;
}

body.zp-market-home .zp-ally-card__name {
	color: #0f172a !important;
}

body.zp-market-home .zp-ally-card__desc {
	color: #64748b !important;
}

body.zp-market-home .zp-ally-card__discount {
	color: #2563eb !important;
}

body.zp-market-home .zp-ally-card__more {
	color: #2563eb !important;
}

body.zp-market-home .zp-ally-card__logo {
	background: #f8fafc !important;
	border-color: #e2e8f0 !important;
}

/* ── CTA Quiero ser PRO (justo arriba de Servicios PRO destacados) ── */
body.zp-market-home .zp-home-pro-cta {
	padding-top: 28px;
	padding-bottom: 8px;
}

body.zp-market-home .zp-home-pro-cta .zp-info-pro-card {
	background: linear-gradient(145deg, rgba(28, 18, 10, 0.72) 0%, rgba(38, 22, 12, 0.78) 100%);
	border: 1px solid rgba(251, 191, 36, 0.22);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.04),
		0 8px 22px rgba(0, 0, 0, 0.16);
}

body.zp-market-home .zp-home-pro-cta .zp-info-pro-card__lead {
	color: #fff7ed;
}

body.zp-market-home .zp-home-pro-cta .zp-info-pro-card__benefits li {
	color: rgba(254, 215, 170, 0.92);
}

body.zp-market-home .zp-home-pro-cta .zp-info-pro-card__closing {
	color: rgba(253, 186, 116, 0.95);
}

body.zp-market-home .zp-home-pro-cta + .zp-section--latest-pro {
	padding-top: 16px;
}

/* Carruseles destacados dentro del app-home (el legacy fuera queda oculto) */
body.zp-market-home .zp-app-home .zp-app-home-featured,
body.zp-market-home .zp-app-home .zp-section--latest-pro {
	display: block !important;
	padding-top: 16px;
	padding-bottom: 8px;
}

/* ── ¿Qué es YoLaburo? (después de servicios cerca tuyo) ── */
body.zp-market-home .zp-app-home .zp-info-what.zp-info-what--platform {
	margin: 16px 16px 0 !important;
	border-radius: 18px !important;
}

body.zp-market-home .zp-app-home .zp-app-home-featured + .zp-info-what,
body.zp-market-home .zp-app-home .zp-section--latest-pro + .zp-info-what {
	margin-top: 12px !important;
}

body.zp-market-home .zp-app-home .zp-home-pro-cta {
	padding: 0 16px;
	margin-top: 12px !important;
}

body.zp-market-home .zp-app-home .zp-info-what + .zp-home-pro-cta {
	margin-top: 12px !important;
}

/* ── Descuentos aliados (después de YoLaburo PRO) ── */
body.zp-market-home .zp-app-home .zp-home-pro-cta + #zp-home-allies-strip,
body.zp-market-home .zp-app-home .zp-home-pro-cta + .zp-home-allies-strip,
body.zp-market-home .zp-app-home .zp-info-what + #zp-home-allies-strip,
body.zp-market-home .zp-app-home .zp-info-what + .zp-home-allies-strip {
	margin-top: 12px !important;
}

body.zp-market-home .zp-app-home .zp-info-what .zp-info-what__actions {
	margin-top: 14px !important;
}

body.zp-market-home .zp-app-home .zp-home-pro-cta + .zp-info-section,
body.zp-market-home .zp-app-home .zp-home-allies-strip + .zp-info-section,
body.zp-market-home .zp-app-home #zp-home-allies-strip + .zp-info-section,
body.zp-market-home .zp-app-home .zp-info-what + .zp-info-section {
	margin-top: 12px !important;
}

body.zp-market-home .zp-section--latest-pro {
	padding-top: 48px;
	padding-bottom: 16px;
}

body.zp-market-home .zp-section-head--latest-pro {
	margin-bottom: 20px;
}

body.zp-market-home .zp-section-title--latest-pro {
	font-size: clamp(1.35rem, 4vw, 1.75rem);
	font-weight: 800;
	color: #f8fafc;
	margin: 0 0 6px;
	line-height: 1.15;
}

body.zp-market-home .zp-section-title__eyebrow {
	display: block;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #60a5fa;
	margin-bottom: 4px;
}

body.zp-market-home .zp-section-title__sub {
	font-size: 0.9rem;
	color: rgba(255,255,255,0.6);
	margin: 0;
}

/* ── CTA bottom ── */
body.zp-market-home .zp-customer-cta--bottom {
	margin-top: 48px;
	margin-bottom: 0;
}

body.zp-market-home .zp-customer-cta__card--bottom {
	background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%);
	border-radius: 20px;
	padding: 32px 28px;
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
}

body.zp-market-home .zp-customer-cta__card--bottom .zp-customer-cta__icon {
	font-size: 2rem;
	color: rgba(255,255,255,0.8);
	flex-shrink: 0;
}

body.zp-market-home .zp-customer-cta__card--bottom .zp-customer-cta__copy {
	flex: 1 1 220px;
}

body.zp-market-home .zp-customer-cta__card--bottom .zp-customer-cta__title {
	color: #fff;
	font-size: 1.15rem;
	font-weight: 800;
	margin: 0 0 4px;
}

body.zp-market-home .zp-customer-cta__card--bottom .zp-customer-cta__text {
	color: rgba(255,255,255,0.78);
	font-size: 0.9rem;
	margin: 0;
}

body.zp-market-home .zp-customer-cta__card--bottom .zp-customer-cta__btn {
	flex-shrink: 0;
	background: #fff;
	color: #1d4ed8;
	font-weight: 700;
	border-radius: 12px;
	padding: 12px 22px;
}

body.zp-market-home .zp-customer-cta__card--bottom .zp-customer-cta__btn:hover {
	background: #eff6ff;
}

/* ══════════════════════════════════════════════════════
   Marcas aliadas
   ══════════════════════════════════════════════════════ */
body.zp-market-home .zp-allied-brands {
	padding-top: 52px;
	padding-bottom: 40px;
}

body.zp-market-home .zp-allied-brands__head {
	text-align: center;
	margin-bottom: 32px;
}

body.zp-market-home .zp-allied-brands__eyebrow {
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #60a5fa;
	margin: 0 0 6px;
}

body.zp-market-home .zp-allied-brands__title {
	font-size: clamp(1.2rem, 3.5vw, 1.6rem);
	font-weight: 800;
	color: #f8fafc;
	margin: 0;
	line-height: 1.2;
}

body.zp-market-home .zp-allied-brands__track,
body.zp-market-home .zp-allied-brands .zp-allies-track.zp-allied-brands__track {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)) !important;
	gap: 16px 20px !important;
	align-items: stretch !important;
	justify-content: stretch !important;
	overflow: visible !important;
	scroll-snap-type: none !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
}

body.zp-market-home .zp-allied-brands__item {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.10);
	border-radius: 16px;
	padding: 16px 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.2s ease, transform 0.18s ease;
	min-width: 140px;
}

body.zp-market-home .zp-allied-brands__item:hover {
	background: rgba(255, 255, 255, 0.12);
	transform: translateY(-2px);
}

body.zp-market-home .zp-allied-brands__logo {
	width: 120px;
	height: 68px;
	object-fit: contain;
	filter: brightness(1) contrast(1);
	transition: filter 0.2s ease;
}

/* Logos con fondo oscuro: los dejamos sin filtro; los blancos/claros se invierten */
body.zp-market-home .zp-allied-brands__item:hover .zp-allied-brands__logo {
	filter: brightness(1.08);
}

@media (max-width: 480px) {
	body.zp-market-home .zp-allied-brands__item {
		padding: 12px 14px 14px;
		min-width: 0;
	}
}

/* ══════════════════════════════════════════════════════
   Stats + Share section (below ¿Qué es YoLaburo?)
   ══════════════════════════════════════════════════════ */
body.zp-market-home .zp-home-stats {
	background: linear-gradient(135deg, rgba(29, 78, 216, 0.22) 0%, rgba(30, 58, 138, 0.28) 100%) !important;
	border: 1px solid rgba(99, 155, 255, 0.22) !important;
	border-radius: 22px !important;
	padding: 32px 24px 28px !important;
	margin: 28px 0 8px !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2) !important;
}

body.zp-market-home .zp-home-stats__brand {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 18px;
}

body.zp-market-home .zp-home-stats__logo {
	display: block;
	width: min(252px, 87vw);
	height: auto;
	max-height: 64px;
	object-fit: contain;
}

body.zp-market-home .zp-home-stats__grid {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: space-around;
	margin-bottom: 28px;
}

body.zp-market-home .zp-home-stats__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	flex: 1 1 120px;
	padding: 8px 4px;
}

body.zp-market-home .zp-home-stats__num {
	font-size: clamp(2rem, 6vw, 2.6rem);
	font-weight: 900;
	line-height: 1;
	color: #ffffff;
	letter-spacing: -0.03em;
	margin-bottom: 5px;
}

body.zp-market-home .zp-home-stats__label {
	font-size: 0.78rem;
	font-weight: 500;
	color: rgba(255, 255, 255, 0.65);
	line-height: 1.3;
	max-width: 120px;
}

/* Separador vertical entre stats */
body.zp-market-home .zp-home-stats__item + .zp-home-stats__item {
	border-left: 1px solid rgba(255,255,255,0.12);
}

@media (max-width: 480px) {
	body.zp-market-home .zp-home-stats__item + .zp-home-stats__item {
		border-left: none;
		border-top: 1px solid rgba(255,255,255,0.12);
	}
	body.zp-market-home .zp-home-stats__item {
		flex: 1 1 100%;
		padding: 12px 0;
	}
}

/* Launch + Share */
body.zp-market-home .zp-home-stats__launch {
	border-top: 1px solid rgba(255,255,255,0.10);
	padding-top: 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	text-align: center;
}

body.zp-market-home .zp-home-stats__launch-badge {
	display: inline-block;
	background: rgba(37, 99, 235, 0.35);
	border: 1px solid rgba(99,155,255,0.35);
	border-radius: 999px;
	padding: 3px 12px;
	font-size: 0.75rem;
	font-weight: 700;
	color: #93c5fd;
	margin-right: 8px;
	white-space: nowrap;
}

body.zp-market-home .zp-home-stats__launch-text {
	font-size: 0.9rem;
	color: rgba(255,255,255,0.72);
	margin: 0;
	line-height: 1.5;
}

body.zp-market-home .zp-home-stats__share {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: center;
}

body.zp-market-home .zp-home-stats__share-btn {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 10px 20px;
	border-radius: 12px;
	font-size: 0.88rem;
	font-weight: 700;
	cursor: pointer;
	border: none;
	text-decoration: none;
	transition: transform 0.15s ease, opacity 0.15s ease;
}

body.zp-market-home .zp-home-stats__share-btn:hover {
	transform: translateY(-1px);
	opacity: 0.92;
}

body.zp-market-home .zp-home-stats__share-btn--wa {
	background: #22c55e;
	color: #fff;
}

body.zp-market-home .zp-home-stats__share-btn--copy {
	background: rgba(255,255,255,0.12);
	color: #fff;
	border: 1px solid rgba(255,255,255,0.2);
}

/* Fix: títulos legibles en tarjetas con fondo claro (tokens globales = texto blanco) */
body.zp-market-home:not(.zp-home-dark-premium) .zp-service-card .zp-service-card__title,
body.zp-market-home:not(.zp-home-dark-premium) .zp-service-card .zp-service-card__title a,
body.zp-market-home:not(.zp-home-dark-premium) .zp-section--pro-carousel .zp-service-card__title,
body.zp-market-home:not(.zp-home-dark-premium) .zp-section--pro-carousel .zp-service-card__title a,
body.zp-market-home:not(.zp-home-dark-premium) .zp-section--latest-pro .zp-service-card__title,
body.zp-market-home:not(.zp-home-dark-premium) .zp-section--latest-pro .zp-service-card__title a {
	color: #0f172a !important;
}
body.zp-market-home:not(.zp-home-dark-premium) .zp-service-card {
	color: #334155;
}

/* PRO note + item CTA en Marcas Aliadas */
body.zp-market-home .zp-allied-brands__pro-note {
	margin: 10px 0 0;
	font-size: 0.85rem;
	color: rgba(255,255,255,0.60);
	line-height: 1.5;
}

body.zp-market-home .zp-allied-brands__ally-badge {
	display: inline-block;
	font-size: 0.68rem;
	font-weight: 800;
	padding: 2px 8px;
	border-radius: 999px;
	margin-right: 5px;
	vertical-align: middle;
	color: #fff !important;
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.22);
	box-shadow: 0 2px 8px rgba(14, 165, 233, 0.35);
}

body.zp-market-home .zp-allied-brands__item {
	cursor: pointer;
	position: relative;
	flex-direction: column;
	gap: 8px;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.10);
}

body.zp-market-home .zp-allied-brands__item-cta {
	font-size: 0.72rem;
	font-weight: 700;
	color: #93c5fd;
	letter-spacing: 0.03em;
	opacity: 0;
	transition: opacity 0.18s ease;
}

body.zp-market-home .zp-allied-brands__item:hover .zp-allied-brands__item-cta,
body.zp-market-home .zp-allied-brands__item:focus .zp-allied-brands__item-cta {
	opacity: 1;
}

/* Descuento visible en cada marca aliada — pill premium (no verde) */
body.zp-market-home .zp-ally-card__where,
body.zp-market-home .zp-ally-card__where--mini {
	margin: 0;
	font-size: 0.72rem;
	font-weight: 600;
	line-height: 1.35;
	color: #64748b !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__where--mini {
	color: rgba(226, 232, 240, 0.82) !important;
	font-size: 0.68rem;
}

body.zp-market-home .zp-allies .zp-ally-card__where {
	color: #94a3b8 !important;
	font-size: 0.75rem;
}

body.zp-market-home .zp-allied-brands__item-where {
	display: block;
	width: 100%;
	margin: 0;
	font-size: 0.68rem;
	font-weight: 600;
	line-height: 1.35;
	text-align: center;
	color: rgba(226, 232, 240, 0.78);
}

body.zp-market-home .zp-allied-brands__item-discount {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 4px;
	padding: 6px 14px;
	font-size: 0.7rem;
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fff;
	background: linear-gradient(135deg, #fde68a 0%, #fbbf24 28%, #f97316 72%, #ea580c 100%);
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 999px;
	box-shadow:
		0 2px 10px rgba(234, 88, 12, 0.38),
		inset 0 1px 0 rgba(255, 255, 255, 0.42);
	text-shadow: 0 1px 1px rgba(120, 53, 15, 0.35);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

body.zp-market-home .zp-allied-brands__item:hover .zp-allied-brands__item-discount,
body.zp-market-home .zp-allied-brands__item:focus-visible .zp-allied-brands__item-discount {
	transform: translateY(-1px) scale(1.03);
	box-shadow:
		0 4px 16px rgba(249, 115, 22, 0.48),
		inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

/* ── Cupones aliados: cards carrusel (+30% vs tamaño base 202×252) ── */
body.zp-market-home .zp-home-allies-strip .zp-ally-card--mini,
body.zp-market-home .zp-home-allies-strip .zp-allies-mini-track .zp-ally-card--mini {
	flex: 0 0 min(263px, 81vw) !important;
	width: min(263px, 81vw) !important;
	min-width: min(263px, 81vw) !important;
	max-width: min(263px, 81vw) !important;
	min-height: 328px !important;
	padding: 16px 16px 18px !important;
	gap: 10px !important;
	align-items: stretch !important;
	border-radius: 16px !important;
	box-sizing: border-box !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__logo--mini,
body.zp-market-home .zp-home-allies-strip .zp-ally-card__logo.zp-ally-card__logo--mini {
	flex: 0 0 131px !important;
	width: 100% !important;
	height: 131px !important;
	min-height: 131px !important;
	max-height: 131px !important;
	border-radius: 16px !important;
	font-size: 29px !important;
	box-sizing: border-box !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__abbr {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	font-size: 36px !important;
	line-height: 1 !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__name--mini {
	font-size: 17px !important;
	min-height: 2.6em !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__promo--mini,
body.zp-market-home .zp-home-allies-strip .zp-ally-card__discount {
	font-size: 17px !important;
	min-height: 1.35em !important;
	margin: 0 !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__where--mini {
	font-size: 14px !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__more--cta {
	font-size: 16px !important;
	padding: 12px 12px !important;
}

body.zp-market-home .zp-home-allies-strip .zp-allies-mini-track {
	gap: 16px !important;
	align-items: stretch !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__logo--mini.zp-ally-card__logo--img {
	padding: 8px !important;
	background: #ffffff !important;
	border-width: 1px !important;
}

body.zp-market-home .zp-home-allies-strip .zp-ally-card__logo--mini.zp-ally-card__logo--img img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
}

body.zp-market-home .zp-allies .zp-ally-card,
body.zp-market-home .zp-allies-track .zp-ally-card {
	flex: 0 0 min(244px, 94vw) !important;
	width: min(244px, 94vw) !important;
	min-width: min(244px, 94vw) !important;
	max-width: min(244px, 94vw) !important;
	min-height: 390px !important;
	padding: 16px 16px 17px !important;
	gap: 10px !important;
	box-sizing: border-box !important;
	align-items: stretch !important;
}

body.zp-market-home .zp-allies .zp-ally-card__logo,
body.zp-market-home .zp-allies-track .zp-ally-card__logo {
	flex: 0 0 125px !important;
	width: 100% !important;
	height: 125px !important;
	min-height: 125px !important;
	max-height: 125px !important;
	border-radius: 16px !important;
	font-size: 29px !important;
	box-sizing: border-box !important;
}

body.zp-market-home .zp-allies .zp-ally-card__abbr {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	font-size: 28px !important;
	line-height: 1 !important;
}

body.zp-market-home .zp-allies .zp-ally-card__name {
	min-height: 2.6em !important;
}

body.zp-market-home .zp-allies .zp-ally-card__desc {
	min-height: 2.7em !important;
	margin: 0 !important;
}

body.zp-market-home .zp-allies .zp-ally-card__discount {
	min-height: 1.35em !important;
	margin: 0 !important;
}

body.zp-market-home .zp-allies .zp-ally-card__more {
	margin-top: auto !important;
}

body.zp-market-home .zp-allies .zp-ally-card__logo.zp-ally-card__logo--img {
	padding: 10px !important;
	background: #ffffff !important;
	border-width: 1px !important;
}

body.zp-market-home .zp-allies .zp-ally-card__logo.zp-ally-card__logo--img img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
}

body.zp-market-home .zp-allied-brands__item {
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	flex: none !important;
	min-height: 192px !important;
	box-sizing: border-box !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	padding: 16px 18px 18px !important;
}

body.zp-market-home .zp-allied-brands__logo {
	width: 100% !important;
	height: 109px !important;
	min-height: 109px !important;
	max-height: 109px !important;
	object-fit: contain !important;
}

body.zp-market-home .zp-allied-brands__item-discount {
	min-height: 1.35em !important;
	text-align: center !important;
	width: 100% !important;
}

body.zp-market-home .zp-allied-brands__item-cta {
	margin-top: auto !important;
	width: 100% !important;
	text-align: center !important;
}

@media (max-width: 640px) {
	body.zp-market-home .zp-allied-brands__track,
	body.zp-market-home .zp-allied-brands .zp-allies-track.zp-allied-brands__track {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px 14px !important;
	}
}

@media (max-width: 480px) {
	body.zp-market-home .zp-home-allies-strip .zp-ally-card--mini,
	body.zp-market-home .zp-home-allies-strip .zp-allies-mini-track .zp-ally-card--mini {
		flex: 0 0 min(218px, 75vw) !important;
		width: min(218px, 75vw) !important;
		min-width: min(218px, 75vw) !important;
		max-width: min(218px, 75vw) !important;
		min-height: 296px !important;
	}

	body.zp-market-home .zp-home-allies-strip .zp-ally-card__logo--mini,
	body.zp-market-home .zp-home-allies-strip .zp-ally-card__logo.zp-ally-card__logo--mini {
		flex: 0 0 99px !important;
		height: 99px !important;
		min-height: 99px !important;
		max-height: 99px !important;
	}

	body.zp-market-home .zp-allies .zp-ally-card,
	body.zp-market-home .zp-allies-track .zp-ally-card {
		flex: 0 0 min(218px, 88vw) !important;
		width: min(218px, 88vw) !important;
		min-width: min(218px, 88vw) !important;
		max-width: min(218px, 88vw) !important;
		min-height: 354px !important;
	}

	body.zp-market-home .zp-allies .zp-ally-card__logo,
	body.zp-market-home .zp-allies-track .zp-ally-card__logo {
		flex: 0 0 114px !important;
		height: 114px !important;
		min-height: 114px !important;
		max-height: 114px !important;
	}

	body.zp-market-home .zp-allied-brands__track,
	body.zp-market-home .zp-allied-brands .zp-allies-track.zp-allied-brands__track {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	body.zp-market-home .zp-allied-brands__item {
		min-height: 172px !important;
	}

	body.zp-market-home .zp-allied-brands__logo {
		height: 94px !important;
		min-height: 94px !important;
		max-height: 94px !important;
	}
}

/* ══════════════════════════════════════════════════════
   Scroll reveal + parallax (home — todas las secciones)
   ══════════════════════════════════════════════════════ */
body.zp-market-home .zp-reveal {
	opacity: 0;
	transform: translate3d(0, 20px, 0) scale(0.988);
	filter: blur(7px);
	transition:
		opacity 0.82s cubic-bezier(0.16, 1, 0.3, 1),
		transform 0.82s cubic-bezier(0.16, 1, 0.3, 1),
		filter 0.82s cubic-bezier(0.16, 1, 0.3, 1);
	transition-delay: var(--zp-reveal-delay, 0ms);
	will-change: opacity, transform, filter;
}

body.zp-market-home .zp-reveal.zp-reveal--visible {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
	filter: blur(0);
}

/* Encabezados — movimiento mínimo */
body.zp-market-home .zp-reveal--soft {
	transform: translate3d(0, 12px, 0);
	filter: blur(5px);
}

body.zp-market-home .zp-reveal--soft.zp-reveal--visible {
	transform: translate3d(0, 0, 0) scale(1);
}

/* Paneles / CTAs */
body.zp-market-home .zp-reveal--panel {
	transform: translate3d(0, 24px, 0) scale(0.985);
	filter: blur(8px);
}

/* Cards de carruseles */
body.zp-market-home .zp-reveal--card {
	transform: translate3d(0, 22px, 0) scale(0.97);
	filter: blur(6px);
}

body.zp-market-home .zp-reveal--card.zp-reveal--visible {
	transform: translate3d(0, 0, 0) scale(1);
}

/* Reseñas — sin blur, siempre legibles */
body.zp-market-home .zp-reveal--no-blur,
body.zp-market-home .zp-reveal--no-blur.zp-reveal--visible,
body.zp-market-home .zp-info-reviews,
body.zp-market-home .zp-info-reviews .zp-info-review-card,
body.zp-market-home .zp-reviews .zp-review-card,
body.zp-market-home .zp-reviews .zp-review-card.zp-reveal,
body.zp-market-home .zp-reviews .zp-review-card.zp-reveal--visible {
	filter: none !important;
}

body.zp-market-home .zp-reveal--no-blur {
	transform: translate3d(0, 14px, 0);
}

body.zp-market-home .zp-reveal--no-blur.zp-reveal--visible {
	transform: translate3d(0, 0, 0);
}

body.zp-market-home .zp-reviews .zp-review-card.zp-reveal {
	transform: translate3d(0, 12px, 0);
}

body.zp-market-home .zp-info-wa-cta.zp-reveal {
	transform: translate3d(0, 20px, 0) scale(0.985);
}

/* Categorías — grilla fija, drift unificado al scroll */
body.zp-market-home .zp-app-macro-cards,
body.zp-market-home .zp-macro-strip .zp-macro-carousel {
	transition: transform 0.18s ease-out;
	will-change: transform;
}

@media (prefers-reduced-motion: reduce) {
	body.zp-market-home .zp-app-macro-cards,
	body.zp-market-home .zp-macro-strip .zp-macro-carousel {
		transform: none !important;
	}

	body.zp-market-home .zp-reveal {
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
		transition: none !important;
	}
}

/* ── HERO eyebrow ── */
body.zp-market-home .zp-hero__eyebrow {
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #4ade80;
	font-weight: 600;
	margin: 0 0 10px;
	line-height: 1.3;
}

body.zp-market-home .zp-hero__title-accent {
	display: inline;
	color: #60a5fa;
}

/* ── PRO card highlight ── */
body.zp-market-home .zp-provider-actions__card--pro-highlight {
	background: linear-gradient(135deg, rgba(40, 22, 8, 0.92), rgba(55, 28, 10, 0.88)) !important;
	border: 1px solid rgba(251, 191, 36, 0.24) !important;
	box-shadow: 0 4px 16px rgba(234, 88, 12, 0.12) !important;
}

body.zp-market-home .zp-provider-actions__card--pro-highlight .zp-provider-actions__title {
	color: #fff7ed !important;
}

body.zp-market-home .zp-provider-actions__card--pro-highlight .zp-provider-actions__text {
	color: rgba(254, 215, 170, 0.88) !important;
}

body.zp-market-home .zp-provider-actions__card--pro-highlight .zp-provider-actions__badge {
	background: var(--zp-pro-badge-bg, linear-gradient(135deg, #fbbf24 0%, #ea580c 100%)) !important;
	color: #fff !important;
	border-radius: 6px !important;
	padding: 3px 10px !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: 1px !important;
	box-shadow: var(--zp-pro-badge-shadow, 0 2px 6px rgba(234, 88, 12, 0.25)) !important;
}

/* ── Testimonios: stars más prominentes ── */
body.zp-market-home .zp-info-reviews--platform .zp-info-review-card__stars {
	font-size: 14px !important;
	color: #f59e0b !important;
	letter-spacing: 2px !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-review-card__name {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #60a5fa !important;
}

body.zp-market-home .zp-info-reviews--platform .zp-info-review-card__text {
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: rgba(255, 255, 255, 0.85) !important;
}

body.zp-market-home .zp-info-wa-cta {
	box-shadow: 0 6px 24px rgba(34, 197, 94, 0.35) !important;
}

/* Home search — texto escrito más oscuro en campos claros */
body.home.zp-market-home .zp-home--premium-app .zp-search-panel--py #search_address_search.zp-input,
body.home.zp-market-home .zp-home--premium-app .zp-search-panel--py .chosen-container .chosen-search input,
body.home.zp-market-home .zp-home--premium-app .zp-search-panel--py .zp-search-field--category .chosen-container-single .chosen-single:not(.chosen-default),
body.home.zp-market-home .zp-home--premium-app .zp-search-panel--py .zp-search-field--category .chosen-container-single .chosen-single:not(.chosen-default) span,
body.home.zp-market-home .zp-home--premium-app .zp-ai-home__input {
	color: #0f172a !important;
	-webkit-text-fill-color: #0f172a !important;
}
