@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Inter:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Playfair+Display:wght@700&display=swap");

/* Home v2 — hero, buscador, cards, CTA, header homepage-1, footer compartido.
   Modal login / go-up / ayuda-registro: css/site-compat.css */
:root{
  --font-prop-serif: "Lora", Georgia, "Times New Roman", serif;
  --font-prop-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-card-price: "Playfair Display", Georgia, "Times New Roman", serif;
  --font-card-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --prop-busca-cream: #faf6f0;
  --hp2-bg: #fefefe;
  --hp2-bg-2: #fff6ed;
  --hp2-text: #111827;
  --hp2-muted: #40434a;
  --hp2-brand: #1E3A2F;
  --hp2-brand-2: #D4845A;
  --hp2-card: #ffffff;
  --hp2-border: rgba(17,24,39,.10);
  --hp2-shadow: 0 12px 40px rgba(17,24,39,.12);
  --blue: #162d1e;
  --orange: #D4845A;
  --green: #22c55e;
  --bg-light: #f6f8ff;
  --border: rgba(17,24,39,.10);
  --white: #ffffff;
  --text-muted: rgba(17,24,39,.55);
  --text-dark: rgba(17,24,39,.92);
}

body.home-v2{
  background: var(--hp2-bg);
  color: var(--hp2-text);
  font-family: var(--font-prop-sans);
}

body.home-v2 h1,
body.home-v2 h2,
body.home-v2 h3,
body.home-v2 h4,
body.home-v2 h5,
body.home-v2 h6{
  font-family: var(--font-prop-serif);
}
body.home-v2 strong,
body.home-v2 b{
  font-family: inherit;
  font-weight: 700;
}
.text-dm-sans { font-family: var(--font-prop-sans), 'DM Sans', sans-serif !important; }
.text-primary{ color: var(--hp2-brand-2) !important; }
.text-primary-2{ color: var(--hp2-brand) !important; }
.color-444 { color: #444 !important; }

.bg-faf9f7 { background-color: #faf9f7 !important; }


/* ── HOW IT WORKS (fila + círculos verdes + flechas, sin tarjetas) ── */
.section-how { padding: 56px 0; background: #fff; }
.section-title{ font-family:'Lora', serif; font-weight: 900; color: var(--text-dark); }
.section-sub{ color: var(--text-muted); }

.how-steps-row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1.5rem;
  max-width: 1120px;
  margin: 0 auto;
}
.how-step {
  display: flex;
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: 1.2rem;
  flex: 1 1 auto;
  min-width: 0;
}
.how-step-text {
  flex: 1 1 auto;
  min-width: 0;
  text-align: left;
}
.how-illus-circle {
  position: relative;
  width: 76px;
  height: 76px;
  border-radius: 50%;
  background: #DCFCE7;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.how-step .step-num {
  position: absolute;
  top: -6px;
  left: -6px;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  font-size: 0.75rem;
  font-weight: 900;
  color: #fff;
  background: #166534;
  line-height: 1;
  box-shadow: 0 2px 8px rgba(22, 101, 52, 0.25);
  z-index: 1;
}
.how-illus-circle img {
  width: 44px;
  height: 44px;
  object-fit: contain;
  display: block;
  /* iconos originales naranja → verde oscuro tipo línea */
  filter: brightness(0) saturate(100%) invert(24%) sepia(32%) saturate(1125%) hue-rotate(103deg) brightness(95%) contrast(94%);
}
.how-step-sep {
  display: none;
  flex: 0 0 auto;
  align-self: center;
  color: rgba(17, 24, 39, 0.28);
  font-size: 1.35rem;
  font-weight: 300;
  line-height: 1;
  padding: 0 0.5rem;
  user-select: none;
}
.how-step h5 {
  font-weight: 800;
  font-size: 0.95rem;
  margin: 0 0 0.45rem;
  color: var(--text-dark);
}
.how-step p {
  font-size: 0.82rem;
  color: var(--text-muted);
  line-height: 1.5;
  margin: 0;
}

@media (min-width: 768px) {
  .how-steps-row {
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 0 0.5rem;
  }
  .how-step-sep {
    display: block;
    flex-shrink: 0;
    align-self: center;
    padding: 0 0.65rem;
  }
}

.how-explainer .section-title.h4 { font-size: 1.15rem; }
.how-explainer-grid {
  max-width: 920px;
  margin: 0 auto;
}
.how-explainer-card {
  height: 100%;
  padding: 1.15rem 1.25rem 1.2rem;
  border-radius: 14px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  box-shadow: 0 8px 28px rgba(17, 24, 39, 0.06);
}
.how-explainer-card--tengo {
  background: linear-gradient(145deg, #eff6ff 0%, #f8fafc 55%, #fff 100%);
  border-color: rgba(61, 116, 194, 0.18);
}
.how-explainer-card--busco {
  background: linear-gradient(145deg, #ecfdf5 0%, #f8fafc 55%, #fff 100%);
  border-color: rgba(34, 197, 94, 0.22);
}
.how-explainer-card__label {
  display: inline-block;
  font-family: 'Lora', serif;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text-dark);
  margin-bottom: 0.55rem;
  padding: 0.2rem 0.55rem;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(17, 24, 39, 0.06);
}
.how-explainer-card--tengo .how-explainer-card__label {
  color: var(--blue);
  border-color: rgba(61, 116, 194, 0.2);
}
.how-explainer-card--busco .how-explainer-card__label {
  color: #15803d;
  border-color: rgba(34, 197, 94, 0.25);
}
.how-explainer-card__text {
  margin: 0;
  font-size: 0.88rem;
  color: var(--text-muted);
  line-height: 1.55;
}

/* ── CTA BANNER ── */
.cta-banner {
  /* Más minimalista + efecto "glass" */
  background: var(--hp2-brand-2);
  border-radius: 16px;
  padding: 2.5rem 2rem;
  display: flex; align-items: center; justify-content: space-between;
  gap: 1.5rem;
  flex-wrap: wrap;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.22);
  box-shadow: 0 22px 60px rgba(17,24,39,.14);
  backdrop-filter: blur(10px);
}
.cta-banner::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(700px 260px at 18% 18%, rgba(255,255,255,.26), transparent 60%),
    radial-gradient(520px 220px at 82% 40%, rgba(255,255,255,.18), transparent 65%),
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,0));
  pointer-events:none;
}
.cta-banner > *{ position: relative; z-index: 1; }
.cta-banner .cta-icon {
  width: 60px; height: 60px; background: rgba(255,255,255,0.18);
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; color: #fff; flex-shrink: 0;
  border: 1px solid rgba(255,255,255,.22);
}
.cta-banner h3 { color: #fff; font-weight: 800; font-size: 1.35rem; margin-bottom: 0.2rem; font-family:'Lora', serif; }
.cta-banner p { color: rgba(255,255,255,0.8); font-size: 0.85rem; margin-bottom: 0; }
.btn-cta-white {
  background: rgba(255,255,255,.92); color: var(--blue);
  font-weight: 800; font-size: 1.08rem;
  font-family: 'Lora', serif;
  border-radius: 12px; padding: 1rem 2.15rem;
  display: inline-flex; align-items: center; gap: 10px;
  text-decoration: none; white-space: nowrap;
  border: none; flex-shrink: 0;
  transition: opacity 0.15s, transform 0.15s;
  box-shadow: 0 8px 24px rgba(17, 24, 39, 0.12);
}
.btn-cta-white i { font-size: 1.05em; }
.btn-cta-white:hover { opacity: 0.96; color: var(--blue); text-decoration: none; transform: translateY(-1px); }

/* ── TRUST ICONS ── */
.section-trust { padding: 60px 0; }
.trust-box{
  background: #ffffff73;
  border-radius: 18px;
  box-shadow: 0 18px 50px rgba(17,24,39,.06);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  overflow: hidden;
}
.trust-item{
  text-align: left;
  padding: 30px 40px;
  display: grid;
  gap: 6px;
  align-content: start;
}
.trust-item + .trust-item{
  border-left: 1px solid rgba(17,24,39,.08);
}
.trust-icon{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: rgba(61,116,194,.10);
  color: var(--blue);
  font-size: 1.25rem;
  display: grid;
  place-items: center;
  margin-bottom: 4px;
}
.trust-item h6{
  font-weight: 900;
  font-size: 18px;
  margin: 0;
  color: var(--text-dark);
}
.trust-item p{
  font-size: 0.8rem;
  color: var(--text-muted);
  margin: 0;
  line-height: 1.5;
  max-width: 260px;
}

@media (max-width: 991px){
  .trust-box{ grid-template-columns: repeat(2, 1fr); }
  .trust-item:nth-child(3){ border-left: 0; border-top: 1px solid rgba(17,24,39,.08); }
  .trust-item:nth-child(4){ border-top: 1px solid rgba(17,24,39,.08); }
}
@media (max-width: 575px){
  .trust-box{ grid-template-columns: 1fr; }
  .trust-item + .trust-item{ border-left: 0; border-top: 1px solid rgba(17,24,39,.08); }
}

/* ── FOOTER V2 ── */
.footer-v2{
  background: #0F172A; color: rgba(255,255,255,0.7);
  padding: 50px 0 25px;
}
.footer-v2 .footer-brand {
  font-weight: 800; font-size: 1.1rem; color: #fff;
  display: flex; align-items: center; gap: 8px; margin-bottom: 0.75rem;
}
.footer-v2 .footer-logo img{
  max-width: 100px;
  height: auto;
  display: block;
}
.footer-v2 .footer-contact{
  margin-top: .75rem;
  display: grid;
  gap: .45rem;
}
.footer-v2 .footer-contact__item{
  display: flex;
  align-items: center;
  gap: .55rem;
  font-size: 0.82rem;
  color: rgba(255,255,255,0.78);
}
.footer-v2 .footer-contact__item i{
  color: rgba(255,255,255,0.60);
}
.footer-v2 .footer-contact__item a{
  color: rgba(255,255,255,0.86);
  text-decoration: none;
}
.footer-v2 .footer-contact__item a:hover{
  color: #fff;
}
.footer-v2 p { font-size: 0.82rem; line-height: 1.6;}
.footer-v2 .footer-social { display: flex; gap: 12px; margin-top: 1rem; }
.footer-v2 .footer-social a {
  width: 32px; height: 32px; border-radius: 8px;
  background: rgba(255,255,255,0.08);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,0.7); font-size: 0.85rem;
  text-decoration: none; transition: background 0.15s;
}
.footer-v2 .footer-social a:hover { background: var(--blue); color: #fff; }
.footer-v2 .footer-social a.footer-ig {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  width: auto;
  height: auto;
  padding: 0.5rem 1.1rem;
  border-radius: 2rem;
  font-size: 0.82rem;
  font-weight: 600;
  background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
  color: #fff;
  text-decoration: none;
  transition: opacity 0.2s;
}
.footer-v2 .footer-social a.footer-ig svg { flex-shrink: 0; }
.footer-v2 .footer-social a.footer-ig:hover {
  opacity: 0.88;
  color: #fff;
  background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
}
.footer-v2 h6 { color: #fff; font-weight: 700; font-size: 0.82rem; margin-bottom: 1rem; letter-spacing: 0.04em; text-transform: uppercase; }
.footer-v2 ul { list-style: none; padding: 0; margin: 0; }
.footer-v2 ul li { margin-bottom: 0.5rem; }
.footer-v2 ul li a { color: rgba(255,255,255,0.6); font-size: 0.82rem; text-decoration: none; transition: color 0.15s; }
.footer-v2 ul li a:hover { color: #fff; }
.footer-v2 .footer-newsletter-form { display: flex; gap: 6px; }
.footer-v2 .footer-newsletter-form input {
  flex: 1; background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px; padding: 0.45rem 0.75rem;
  color: #fff; font-size: 0.82rem; font-family: inherit;
}
.footer-v2 .footer-newsletter-form input::placeholder { color: rgba(255,255,255,0.4); }
.footer-v2 .footer-newsletter-form input:focus { outline: none; border-color: var(--blue); }
.footer-v2 .footer-newsletter-form button {
  background: var(--blue); border: none;
  border-radius: 8px; padding: 0.45rem 0.75rem;
  color: #fff; cursor: pointer;
}
.footer-v2 .footer-divider { border-color: rgba(255,255,255,0.1); margin: 2rem 0 1.25rem; }
.footer-v2 .footer-copy { font-size: 0.78rem; color: rgba(255,255,255,0.4); text-align: center; margin: 0; }
.footer-v2 .footer-legal-note {
  font-size: 0.72rem;
  color: rgba(255,255,255,0.33);
  text-align: center;
  line-height: 1.45;
  max-width: 36rem;
  margin: 0.65rem auto 0;
}

@media (max-width: 767px) {
  .cta-banner { flex-direction: column; text-align: center; }
  .cta-banner .btn-cta-white {
    align-self: stretch;
    justify-content: center;
  }
}

/* ========== Header (reglas útiles portadas de styles.css; index-2 no carga styles.css) ========== */
@keyframes hp2-fadeInDown {
  from { opacity: 0; transform: translate3d(0, -12px, 0); }
  to { opacity: 1; transform: translate3d(0, 0, 0); }
}

/* .homepage-1 #header-container — overlay sobre el hero */
body.home-v2.homepage-1 #header-container {
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 99999;
}

@media screen and (min-width: 1025px) {
  body.home-v2 .container-header {
    max-width: 1660px;
  }
  body.home-v2 #header-container #logo {
    margin-right: 0;
  }
}

/* Barra principal: transparente sobre el hero (pisa .head-tr.bottom de menu.css) */
body.home-v2 #header-container .head-tr {
  background: transparent;
  border-top-color: transparent;
  border-bottom-color: transparent;
}

/* Sticky clone — animación equivalente a .sticky.head-tr en styles.css */
body.home-v2 #header.cloned.sticky {
  -webkit-animation: hp2-fadeInDown 600ms ease-in-out both;
  animation: hp2-fadeInDown 600ms ease-in-out both;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  top: 0;
  width: 100%;
  z-index: 99999;
}

body.home-v2 .sticky.head-tr {
  background: rgba(255, 255, 255, 0.92) !important;
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 30px rgba(17, 24, 39, 0.1);
  border-top: 1px solid rgba(17, 24, 39, 0.06);
  border-bottom: 1px solid rgba(17, 24, 39, 0.06);
}

@media screen and (max-width: 991px) {
  /* Evita fondo oscuro #121B22 si alguna hoja aplica .sticky.head-tr del theme */
  body.home-v2 .sticky.head-tr {
    background: rgba(255, 255, 255, 0.92) !important;
  }
}

/* .hp-6 a.button — halo del botón Publicar (styles.css 2867–2870) */
body.home-v2.hp-6 .header-widget a.button,
body.home-v2.hp-6 .header-widget a.button.border {
  border-radius: 8px;
  -webkit-box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.2);
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.2);
}

/* .right-side.sign — alineación login / registro (styles.css 2949–2954) */
body.home-v2 .right-side.sign {
  float: right;
  width: 113px;
  padding: 0 10px;
  margin-top: 20px;
  margin-left: 0 !important;
}

body.home-v2 .header-widget.sign-in {
  height: auto;
}

/* Texto nav y widgets: legible sobre hero (pisa homepage-1 blanco en menu.css) */
body.home-v2 #header-container #navigation.style-1 ul li a,
body.home-v2 #header-container .right-side .header-widget a:not(.button):not(.border),
body.home-v2 #header-container .right-side .header-widget .color-444 {
  color: rgba(17, 24, 39, 0.82) !important;
}
body.home-v2 #header-container .right-side .header-widget a.button,
body.home-v2 #header-container .right-side .header-widget a.button.border {
  color: #fff !important;
  background-color: var(--hp2-brand);
  border-color: var(--hp2-brand);
}

#header-container #navigation.style-1 ul li a.active {
  border-bottom: 3px solid var(--hp2-brand);
  border-radius: 0px;
  background: transparent;
}
#header-container #navigation.style-1 ul li a.active i{
  color: var(--hp2-brand) !important;
}

#header-container #navigation.style-1 ul li:hover {
  border-bottom: 3px solid var(--hp2-brand);
  border-radius: 0px;
  background: transparent;
}
#header-container #navigation.style-1 ul li:hover > a {
  color: var(--hp2-brand) !important;
}
#header-container #navigation.style-1 ul li:hover a i{
  color: var(--hp2-brand) !important;
}


/* Header sticky clonado: mismo criterio (pisa homepage-1 #707070 / hover blanco de menu.css) */
body.home-v2 #header-container #header.cloned.sticky #navigation.style-1 ul li a {
  color: rgba(17, 24, 39, 0.82) !important;
}
body.home-v2 #header-container #header.cloned.sticky #navigation.style-1 ul li:hover > a {
  color: var(--hp2-brand) !important;
}

/* .homepage-1 .header-user-name + .header-widget.sign-in (styles.css 3807–3810), tono home claro */
body.home-v2 .header-user-name,
body.home-v2 .header-user-name:before {
  color: rgba(17, 24, 39, 0.82) !important;
}
body.home-v2 #header-container #header.cloned.sticky .header-user-name,
body.home-v2 #header-container #header.cloned.sticky .header-user-name:before {
  color: rgba(17, 24, 39, 0.78) !important;
}
body.home-v2 #header-container .right-side .header-widget.sign-in a {
  color: rgba(17, 24, 39, 0.82) !important;
}
body.home-v2 #header-container #header.cloned.sticky .header-widget.sign-in a {
  color: rgba(17, 24, 39, 0.78) !important;
}

/* Menú usuario desplegable — posición desktop (styles.css 3093–3094) */
@media screen and (min-width: 1024px) {
  body.home-v2 .header-user-menu ul {
    left: -80px !important;
  }
}

/* Flotación menú usuario (styles.css 7273–7277) */
body.home-v2 .header-user-menu {
  float: right;
  position: relative;
  top: 10px;
  margin-left: 0;
  margin-right: 50px;
}

/* Usuario logueado v2: refuerzo (layout base en menu.css .hp2-header-user-trigger) */
body.home-v2 .header-user-name.hp2-header-user-trigger:before,
body.home-v2 .header-user-name.hp2-header-user-trigger:after {
  display: none !important;
  content: none !important;
}
body.home-v2 .header-user-name.hp2-header-user-trigger {
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  width: auto !important;
  border-color: var(--hp2-border);
}
body.home-v2 .header-user-name.hp2-header-user-trigger .header-user-name__text {
  flex: 0 1 auto !important;
  max-width: 11rem;
}
body.home-v2 .header-user-name.hp2-header-user-trigger .header-user-name__chev {
  transition: transform 0.2s ease, opacity 0.2s ease;
}
body.home-v2 .header-user-menu.user-menu.active .header-user-name.hp2-header-user-trigger .header-user-name__chev,
body.home-v2 .header-user-menu.user-menu:hover .header-user-name.hp2-header-user-trigger .header-user-name__chev {
  transform: rotate(180deg);
  opacity: 1;
}
body.home-v2 .header-user-menu ul {
  z-index: 1000;
  box-shadow: 0 12px 40px rgba(17, 24, 39, 0.14);
  border: 1px solid var(--hp2-border);
}

/* HERO */
.hp2-hero{
  position: relative;
  padding: 120px 0 40px;
  min-height: 496px;
  overflow: hidden;
}
@media (max-width: 991px){
  .hp2-hero{
    padding: 92px 0 40px;
    min-height: 440px;
  }
}
.hp2-hero__bg{ display:none; }
.hp2-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index: 0;
  background-image: url("../images/bg/bg-h-1.jpg");
  background-size: cover;
  background-position: center;
  filter: saturate(1.05) contrast(1.02);
}
.hp2-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index: 0;
  background:
    /* degradé controlado a la izquierda (alineado a --hp2-bg #fefefe) */
    linear-gradient(90deg,
      rgba(254,254,254,.92) 0%,
      rgba(254,254,254,.88) 22%,
      rgba(254,254,254,.62) 40%,
      rgba(254,254,254,.22) 55%,
      rgba(254,254,254,0) 66%
    ),
    /* degradé inferior para fundir con el fondo */
    linear-gradient(180deg,
      rgba(254,254,254,0) 55%,
      rgba(254,254,254,.55) 75%,
      rgba(254,254,254,1) 100%
    ),
    radial-gradient(1000px 600px at 15% 20%, rgba(47,91,255,.14), transparent 60%),
    radial-gradient(900px 560px at 60% 10%, rgba(124,58,237,.10), transparent 60%);
  pointer-events:none;
}
.hp2-hero__content{
  position:relative;
  z-index: 1;
}
.hp2-hero__content{
  /* Estructura en columna para anclar el buscador al fondo */
  min-height: 380px;
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px){
  .hp2-hero__content{ min-height: 400px; }
}
.hp2-hero__content .row{ margin-bottom: 0; }

/* Bloque de textos: más angosto y más abajo */
.hp2-hero__content .row{
  padding-top: 44px;
}
@media (max-width: 991px){
  .hp2-hero__content .row{ padding-top: 18px; }
}

.hp2-kicker{
  background: rgba(255,255,255,.78);
}
.hp2-subtitle{
  max-width: 34rem;
}
.hp2-kicker{
  display:inline-flex;
  gap:.5rem;
  align-items:center;
  font-size:.75rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color: rgba(17,24,39,.65);
  background: rgba(255,255,255,.70);
  border: 1px solid var(--hp2-border);
  padding: .35rem .6rem;
  border-radius: 999px;
}
.hp2-title{
  font-family: 'Lora', serif;
  text-transform:none;
  font-weight: 800;
  font-size: clamp(2.05rem, 3.4vw, 3.15rem);
  line-height: 1.05;
  margin: 16px 0 12px;
  color: var(--hp2-text);
}
/* <i> dentro del h1: Lora no servía itálica a peso 800 (heredado) — forzar itálica con peso que sí tiene variante cargada */
.hp2-title i{
  font-style: italic;
  font-weight: 700;
}
.hp2-title .hp2-accent{
  background: var(--hp2-brand-2);
  -webkit-background-clip:text;
  background-clip:text;
  color: transparent;
}
.hp2-subtitle{
  font-size: 1.02rem;
  color: var(--hp2-muted);
  max-width: 42rem;
  margin-bottom: 18px;
}
.hp2-search-wrap{
  position: relative;
  margin-top: 18px;
  transform: none;
  z-index: 2;
}
@media (max-width: 991px){
  .hp2-search-wrap{
    position: relative;
    transform: none;
    margin-top: 18px;
  }
}

/* Search card */
.hp2-search-frame{
  position: relative;
  overflow: visible;
}

.hp2-tabs-out{
  display: inline-flex;
  gap: 22px;
  align-items: center;
  background: rgb(255 255 255);
  border: 1px solid rgba(17,24,39,.08);
  border-bottom: 0;
  border-radius: 18px 18px 0 0;
  padding: 14px 42px 0;
  margin-left: 0;
  margin-bottom: -1px; /* pega con la tarjeta */
  position: relative;
  z-index: 3;
  box-shadow: none;
  overflow: visible;
}
/* “encastre” curvado con la tarjeta (tipo pestaña) */
.hp2-tabs-out::after{
  content:"";
  position:absolute;
  right: -63px;
  top: 0;
  bottom: -1px;
  width: 64px;
  height: auto; /* stretch */
  background: rgb(255 255 255);
  border-right: 1px solid var(--hp2-border);
  border-top-right-radius: 16px;
  transform: skewX(34deg);
  transform-origin: bottom left;
}

/* Mobile: tabs más compactas y pico más corto */
@media (max-width: 575px){
  .hp2-tabs-out{
    gap: 14px;
    padding: 12px 10px 0;
  }
  .hp2-tabs-out::after{
    right: -50px;
    width: 50px;
  }
  .hp2-tab{
    padding: 10px 8px 12px;
    gap: 8px;
  }
  .hp2-tab span{ font-size: .92rem; }
}
.hp2-tabs-out::before{
  content:"";
  position:absolute;
  inset: auto 0 -1px 0;
  height: 1px;
  background: rgba(255,255,255,.96);
}

.hp2-search{
  margin-top: 0;
  background: rgb(255 255 255);
  border: 1px solid var(--hp2-border);
  border-radius: 0px 22px 22px 22px;
  box-shadow: 0 18px 50px rgba(17,24,39,.10);
  overflow:hidden;
  position: relative;
  z-index: 2;
}
.hp2-search--wide{
  width: 100%;
}

/* Dejar espacio para el buscador colgado */
body.home-v2 .hp2-hero + .hp2-section{
  padding-top: 46px;
}
@media (max-width: 991px){
  body.home-v2 .hp2-hero + .hp2-section{
    padding-top: 46px;
  }
}
.hp2-search--wide{ margin-top: 0; }
.hp2-tab{
  appearance: none;
  border: 0;
  background: transparent;
  padding: 6px 2px 12px;
  font-weight: 800;
  color: rgba(17,24,39,.56);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: relative;
  cursor: pointer;
  border-radius: 0;
  transition:
    color .18s ease,
    opacity .18s ease;
}
.hp2-tab i{
  color: rgba(17,24,39,.34);
  transition: color .18s ease;
}
.hp2-tab__emoji{
  font-size: 1.05rem;
  line-height: 1;
  opacity: .92;
}
.hp2-tab.active .hp2-tab__emoji{
  opacity: 1;
}
.hp2-search__intro{
  margin: 0 0 16px 2px;
}
.hp2-search__eyebrow{
  font-family: 'Lora', serif;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: none;
  color: rgba(17,24,39,.5);
  margin-bottom: 6px;
}
.hp2-search__heading{
  font-family: 'Lora', serif;
  font-size: 1.28rem;
  font-weight: 800;
  line-height: 1.22;
  margin: 0;
  background: var(--hp2-brand-2);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.hp2-search__row--inline{
  align-items: flex-end;
}
@media (min-width: 992px){
  .hp2-search__row--inline{
    flex-wrap: nowrap;
  }
  .hp2-search__row--inline > .hp2-col--grow{
    flex: 1 1 0;
    min-width: 0;
  }
  .hp2-search__row--inline > .hp2-col--price{
    flex: 0 0 120px;
    min-width: 100px;
    max-width: 150px;
  }
  .hp2-search__row--inline > .hp2-col--qbtn{
    flex-shrink: 0;
  }
}
.hp2-tab:hover:not(.active){
  color: var(--hp2-brand);
}
.hp2-tab:hover:not(.active) i{ color: var(--hp2-brand-2); }
.hp2-tab:focus-visible{
  outline: none;
  box-shadow: inset 0 -2px 0 rgba(61,116,194,.55);
}
.hp2-tab.active{
  color: var(--hp2-brand);
  font-weight: 900;
  box-shadow: none;
}
.hp2-tab::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  border-radius: 999px;
  background: transparent;
  transition: background .18s ease, transform .18s ease;
  transform: scaleX(.35);
  transform-origin: center;
}
.hp2-tab:hover:not(.active)::after{
  background: rgba(61,116,194,.42);
  transform: scaleX(.82);
}
.hp2-tab.active::after{
  background: var(--hp2-brand);
  box-shadow: 0 2px 10px rgba(61,116,194,.25);
  transform: scaleX(1);
}
.hp2-tab.active i{ color: var(--hp2-brand-2); }
.hp2-tab.active:hover{
  color: var(--hp2-brand);
}
.hp2-search__body{
  padding: 16px 22px 22px;
}
.hp2-search__row{
  display:flex;
  gap: 16px;
  flex-wrap: wrap;
}
.hp2-search__row + .hp2-search__row{ margin-top: 12px; }
.hp2-col{ flex: 1 1 170px;}
.hp2-col--grow{ flex: 1 1 170px;}
.hp2-col--price{ flex: 1 1 140px;}
.hp2-col--btn{ flex: 0 0 180px; min-width: 180px; }
.hp2-col--q{ flex: 1 1 420px; min-width: 220px; }
.hp2-col--qbtn{ flex: 0 0 200px; min-width: 240px; }
.hp2-label{
  font-size: .78rem;
  font-weight: 800;
  color: rgba(17,24,39,.62);
  margin: 0 0 6px 2px;
}
.hp2-field{
  background: #fff;
  border: 1px solid var(--hp2-border);
  border-radius: 14px;
  padding: 12px 14px;
  height: auto;
  min-height: 52px;
  box-shadow: 0 10px 25px rgba(17,24,39,.05);
}
.hp2-field:focus{
  border-color: rgba(47,91,255,.35);
  box-shadow: 0 0 0 .2rem rgba(47,91,255,.12);
}
.hp2-search .select2-container--bootstrap4 .select2-selection{
  border: 0;
  background: transparent;
  min-height: 26px;
}
.hp2-search .select2-container--bootstrap4 .select2-selection__rendered{
  padding-left: 0;
  color: rgba(17,24,39,.85);
}
.hp2-search .select2-container--bootstrap4 .select2-selection__arrow{
  top: 8px;
}

.hp2-search .op-toggle{
  display: flex;
  gap: 12px;
  flex-wrap: nowrap;
}
.hp2-search .op-toggle__input{
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.hp2-search .op-toggle__label{
  margin: 0;
  cursor: pointer;
  user-select: none;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid rgba(17,24,39,.12);
  background: rgba(255,255,255,.96);
  font-weight: 900;
  font-size: .9rem;
  color: rgba(17,24,39,.62);
  transition: background .15s, color .15s, box-shadow .15s, border-color .15s;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  box-shadow: 0 10px 22px rgba(17,24,39,.06);
}
.hp2-search .op-toggle__hint{
  font-weight: 800;
  font-size: .78rem;
  opacity: .75;
}
.hp2-search .op-toggle__input:checked + .op-toggle__label{
  background: linear-gradient(135deg, #3a3126 0%, #2b241d 100%);
  color: #fff;
  border-color: rgba(76,62,47,.58);
  box-shadow: 0 18px 36px rgba(30,24,19,.18);
}
.hp2-search .op-toggle__input:focus + .op-toggle__label{
  outline: none;
  box-shadow: 0 0 0 .2rem rgba(201,144,73,.24);
}

@media (max-width: 991px){
  .hp2-search .op-toggle{ flex-wrap: wrap; }
}

.hp2-field--withicon{
  display:flex;
  gap: 12px;
  align-items:center;
  padding: 12px 14px;
}
.hp2-field__icon{
  color: rgba(17,24,39,.40);
  flex: 0 0 auto;
}
.hp2-field__control{
  flex: 1 1 auto;
}
.hp2-field--withicon select.form-control,
.hp2-field--withicon input.form-control{
  border: 0;
  box-shadow: none;
  padding: 0;
  height: auto;
  background: transparent;
}
.hp2-field--withicon select.form-control:focus,
.hp2-field--withicon input.form-control:focus{
  box-shadow: none;
}

.hp2-btn{
  border: 0;
  border-radius: 14px;
  padding: .95rem 1.15rem;
  font-weight: 800;
  width: 100%;
  background: var(--hp2-brand-2);
  color: #fff;
  box-shadow: 0 12px 28px rgba(47,91,255,.22);
  min-height: 52px;
  transition: filter .18s ease;
}
.hp2-btn:hover{
  filter: brightness(.98);
}

/* Secciones */
.hp2-section{
  padding: 46px 0;
}
.hp2-section__title{
  font-family:'Lora', serif;
  color: var(--hp2-text);
  font-size: 1.6rem;
  font-weight: 800;
  margin-bottom: 6px;
}
.hp2-section__subtitle{
  color: var(--hp2-muted);
  margin-bottom: 22px;
}

/* Cards destacadas */
.hp2-grid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 16px;
}

/* Featured swiper */
.hp2-featured-swiper{
  padding: 6px 2px 34px;
}
.hp2-featured-controls{
  position: absolute;
  right: 0;
  top: 8px;
  display: flex;
  gap: 10px;
  z-index: 5;
}
.hp2-featured-controls .swiper-button-prev,
.hp2-featured-controls .swiper-button-next{
  position: static;
  width: 40px;
  height: 40px;
  margin: 0;
  border-radius: 999px;
  border: 1px solid rgba(17,24,39,.10);
  background: rgba(255,255,255,.85);
  backdrop-filter: blur(10px);
  box-shadow: 0 10px 25px rgba(17,24,39,.08);
}
.hp2-featured-controls .swiper-button-prev:after,
.hp2-featured-controls .swiper-button-next:after{
  font-size: 14px;
  font-weight: 900;
}
.hp2-featured-swiper .swiper-slide{
  height: auto;
}
.hp2-featured-swiper .swiper-button-prev,
.hp2-featured-swiper .swiper-button-next{
  color: rgba(17,24,39,.45);
}
.hp2-featured-swiper .swiper-button-prev:hover,
.hp2-featured-swiper .swiper-button-next:hover{
  color: var(--hp2-brand);
}
.prop-card{
  grid-column: span 3;
  background: #fff;
  border: 1.5px solid rgba(17,24,39,.10);
  border-radius: 14px;
  overflow: hidden;
  transition: box-shadow .2s, transform .2s;
  height: 100%;
}
.prop-card:hover{
  box-shadow: 0 8px 30px rgba(47,91,255,0.12);
  transform: translateY(-3px);
}

/* Cards destacadas: enlace completo, imagen con overlay, colores de marca
   Aplica tanto al swiper del home como a los grids de listado */
.hp2-featured-swiper a.prop-card--featured,
.hp2-grid--results a.prop-card--featured{
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  grid-column: auto;
  text-decoration: none;
  color: inherit;
  border-radius: 0.9rem;
  border: 1px solid var(--hp2-border);
  box-shadow: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  cursor: pointer;
}
.hp2-featured-swiper a.prop-card--featured:hover,
.hp2-grid--results a.prop-card--featured:hover{
  color: inherit;
  text-decoration: none;
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(61, 116, 194, 0.14);
  border-color: rgba(61, 116, 194, 0.28);
}
.hp2-featured-swiper a.prop-card--featured:focus-visible,
.hp2-grid--results a.prop-card--featured:focus-visible{
  outline: 3px solid rgba(61, 116, 194, 0.45);
  outline-offset: 2px;
}
.hp2-featured-swiper .prop-card--featured .prop-img,
.hp2-grid--results .prop-card--featured .prop-img{
  position: relative;
  height: 190px;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.hp2-featured-swiper .prop-card--featured .prop-img,
.hp2-grid--results .prop-card--featured .prop-img{
  flex: 0 0 auto;
}
.hp2-featured-swiper .prop-badges--row,
.hp2-grid--results .prop-badges--row{
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0.35rem;
  top: 0.65rem;
  left: 0.65rem;
}
.hp2-featured-swiper .prop-badge,
.hp2-grid--results .prop-badge{
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 0.25rem 0.65rem;
  border-radius: 20px;
  line-height: 1.2;
}
.hp2-featured-swiper .prop-badge--permuta,
.hp2-grid--results .prop-badge--permuta{
  background: #000000d4;
  color: #fff;
}
.hp2-featured-swiper .prop-badge--venta,
.hp2-grid--results .prop-badge--venta{
  background: var(--hp2-brand);
  color: #fff;
}
.hp2-featured-swiper .prop-badge--alquiler,
.hp2-grid--results .prop-badge--alquiler{
  background: rgb(255 255 255);
  color: var(--hp2-brand);
}
.hp2-featured-swiper .prop-badge--inversion,
.hp2-grid--results .prop-badge--inversion{
  background: rgba(246, 138, 35, 0.22);
  color: var(--hp2-text);
}
.hp2-featured-swiper .prop-card--featured .prop-body,
.hp2-grid--results .prop-card--featured .prop-body{
  padding: 1.1rem 1.1rem 1rem;
  height: auto;
  min-height: 0;
  justify-content: flex-start;
  flex: 1 1 auto;
}
.hp2-featured-swiper .prop-card--featured .prop-price,
.hp2-grid--results .prop-card--featured .prop-price{
  font-family: var(--font-card-price);
  font-size: 1.2rem;
  font-weight: 700;
  color: #17190f;
  margin-bottom: 0.35rem;
  line-height: 1.3;
}
.hp2-featured-swiper .prop-card--featured .prop-title,
.hp2-grid--results .prop-card--featured .prop-title{
  font-family: var(--font-card-sans);
  font-size: 0.88rem;
  font-weight: 400;
  color: #3B2A1A;
  margin-bottom: 0.35rem;
  line-height: 1.45;
}
.hp2-featured-swiper .prop-card--featured .prop-loc,
.hp2-grid--results .prop-card--featured .prop-loc{
  font-family: var(--font-card-sans);
  font-size: 12px;
  font-weight: 400;
  color: #374151c4;
  margin-bottom: 0.55rem;
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
.hp2-featured-swiper .prop-card--featured .prop-loc i,
.hp2-grid--results .prop-card--featured .prop-loc i{
  color: #dc2626;
  font-size: 0.85em;
}
.hp2-featured-swiper .prop-card--featured .prop-specs,
.hp2-grid--results .prop-card--featured .prop-specs{
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  font-family: var(--font-card-sans);
  font-size: 12px;
  font-weight: 400;
  color: #374151c4;
  margin-bottom: 0.75rem;
}
.hp2-featured-swiper .prop-card--featured .prop-specs span,
.hp2-grid--results .prop-card--featured .prop-specs span{
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}
.hp2-featured-swiper .prop-card--featured .prop-busca,
.hp2-grid--results .prop-card--featured .prop-busca{
  background: var(--prop-busca-cream);
  border: 1px solid #e8e0d4;
  border-radius: 6px;
  padding: 10px 18px;
  font-family: var(--font-card-sans);
  font-size: 0.775rem;
  font-weight: 500;
  line-height: 1.45;
  color: #111827;
  margin-top: auto;
}
.hp2-featured-swiper .prop-card--featured .prop-busca .prop-busca__label,
.hp2-grid--results .prop-card--featured .prop-busca .prop-busca__label{
  font-weight: 700;
  color: #606060;
}
.hp2-featured-swiper .prop-card--featured .prop-busca .prop-busca__target,
.hp2-grid--results .prop-card--featured .prop-busca .prop-busca__target{
  color: var(--hp2-brand-2);
  font-weight: 500;
}

@media (max-width: 1199px){ .prop-card{ grid-column: span 4; } }
@media (max-width: 991px){ .prop-card{ grid-column: span 6; } }
@media (max-width: 575px){ .prop-card{ grid-column: span 12; } }
.prop-img-wrap{
  position: relative;
  height: 170px;
  overflow: hidden;
}
.prop-img-wrap img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s;
  display: block;
}
.prop-card:hover .prop-img-wrap img{ transform: scale(1.05); }
.badge-status{
  font-size: .68rem;
  font-weight: 700;
  border-radius: 20px;
  padding: 3px 10px;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.badge-destacada{ background: var(--hp2-brand); color:#fff; }
.badge-operacion{ background: rgba(17,24,39,.78); color:#fff; }
.badge-tipo{ background: rgba(124,58,237,.92); color:#fff; }
.badge-nueva{ background: #22c55e; color:#fff; }

.prop-badges{
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-start;
}

/* Badges en fila (cards nuevas en listados) */
.prop-badges--row{
  flex-direction: row;
  flex-wrap: wrap;
  gap: 6px;
}

/* Vista lista: imagen más alta que en grid */
body.page-listado.home-v2 .lista-view--list .prop-card--featured.prop-card--lista .prop-img{
  height: 250px;
}
.btn-fav{
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  background: rgba(255,255,255,.92);
  border-radius: 50%;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(17,24,39,.55);
  font-size: .8rem;
  cursor: pointer;
  transition: color .15s;
}
.btn-fav:hover{ color: #EF4444; }
.prop-body{ padding: 1rem; display: flex; flex-direction: column; justify-content: space-between; height: 300px;}
.prop-location{
  font-family: var(--font-prop-sans);
  font-size: .8125rem;
  color: #374151;
  font-weight: 400;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: .3rem;
}
.prop-title{
  font-family: var(--font-prop-sans);
  font-size: .875rem;
  font-weight: 400;
  color: #374151;
  margin-bottom: .35rem;
}
.prop-meta{
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;
  font-family: var(--font-prop-sans);
  font-size: .8125rem;
  color: #6b7280;
  font-weight: 400;
  margin-bottom: .75rem;
}
.prop-meta span{ display:flex; align-items:center; gap: 6px; }
.prop-seeking-label{
  font-size: .7rem;
  font-weight: 700;
  color: rgba(17,24,39,.55);
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: .2rem;
  min-height: 18px;
}
.prop-seeking-val{
  font-size: .82rem;
  font-weight: 600;
  color: rgba(17,24,39,.92);
  margin-bottom: .85rem;
  min-height: 22px;
}
.btn-detail{
  display: block;
  text-align: center;
  border: 1.5px solid var(--hp2-brand);
  color: var(--hp2-brand);
  border-radius: 8px;
  padding: .4rem;
  font-size: .82rem;
  font-weight: 700;
  text-decoration: none;
  transition: background .15s, color .15s;
}
.btn-detail:hover{
  background: var(--hp2-brand);
  color: #fff;
  text-decoration: none;
}
.btn-ver-todas{
  border: 1.5px solid rgba(17,24,39,.10);
  color: rgba(17,24,39,.92);
  font-weight: 700;
  font-size: .88rem;
  border-radius: 25px;
  padding: .6rem 1.6rem;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  transition: border-color .15s, color .15s;
  background: rgba(255,255,255,.65);
}
.btn-ver-todas:hover{
  border-color: var(--hp2-brand);
  color: var(--hp2-brand);
  text-decoration: none;
}

/* Cómo funciona */
.hp2-steps{
  background: #fff;
  border: 1px solid var(--hp2-border);
  border-radius: 20px;
  box-shadow: 0 18px 50px rgba(17,24,39,.08);
  padding: 22px;
}
.hp2-step{
  display:flex;
  gap: 14px;
  height: 100%;
}
.hp2-step__num{
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display:grid;
  place-items:center;
  font-weight: 900;
  color: #fff;
  background: var(--hp2-brand-2);
  box-shadow: 0 10px 22px rgba(47,91,255,.22);
}
.hp2-step__title{
  margin: 0 0 4px;
  font-family:'Lora', serif;
  font-weight: 800;
  font-size: 1.02rem;
  color: var(--hp2-text);
}
.hp2-step__text{
  margin: 0;
  color: var(--hp2-muted);
}

/* CTA */
.hp2-cta{
  background: linear-gradient(90deg, rgba(47,91,255,.92), rgba(124,58,237,.92));
  border-radius: 22px;
  padding: 22px 22px;
  color: #fff;
  box-shadow: 0 18px 46px rgba(47,91,255,.20);
  border: 1px solid rgba(255,255,255,.16);
}
.hp2-cta__title{
  margin: 0 0 4px;
  font-family:'Lora', serif;
  font-weight: 900;
  font-size: 1.25rem;
}
.hp2-cta__text{ margin:0; opacity:.92; }
.hp2-cta__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  background: rgba(255,255,255,.16);
  color: #fff;
  border: 1px solid rgba(255,255,255,.24);
  padding: .75rem 1rem;
  border-radius: 14px;
  font-weight: 900;
  width: 100%;
}
.hp2-cta__btn:hover{
  background: rgba(255,255,255,.22);
  color:#fff;
}

@media screen and (min-width: 1460px) {
	.container, .container-lg, .container-md, .container-sm, .container-xl {max-width: 1380px;}
}
@media screen and (max-width: 1200px) {
	#navigation.style-1 ul a {padding: 6px 5px !important; }
}

/* ── Listados home-v2: barra Refinar (alineación, legibilidad, botones en fila) ── */
body.page-listado.home-v2 .bq-tengo-refine-wrap {
  margin-bottom: 1.5rem;
}
body.page-listado.home-v2 .bq-tengo-refine {
  background: var(--hp2-card);
  border: 1px solid var(--hp2-border);
  border-radius: 16px;
  padding: 1rem 1.1rem 1.1rem;
  box-shadow: 0 10px 36px rgba(17, 24, 39, 0.07);
}
body.page-listado.home-v2 .bq-tengo-refine__title {
  font-family: "Lora", serif;
  font-weight: 800;
  font-size: 1.05rem;
  margin: 0 0 0.75rem;
  padding-bottom: 0.45rem;
  color: var(--text-dark);
  border-bottom: 3px solid var(--hp2-brand);
}
body.page-listado.home-v2 .bq-tengo-refine__fields {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  column-gap: 0.5rem;
  row-gap: 0.5rem;
  margin-top: 20px;
}
body.page-listado.home-v2 .bq-tengo-refine__field {
  display: flex;
  flex-direction: column;
  gap: 0.28rem;
  min-width: 0;
}
body.page-listado.home-v2 .bq-tengo-refine__label {
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--hp2-muted);
  margin: 0;
  line-height: 1.25;
  min-height: 0;
}

/* Labels visibles para identificar filtros */
body.page-listado.home-v2 .bq-tengo-refine__field--select {
  flex: 1 1 0;
  min-width: 120px;
  max-width: min(170px, 100%);
}
body.page-listado.home-v2 .bq-tengo-refine select.bq-tengo-refine__select {
  width: 100%;
  min-height: 40px;
  padding: 0.3rem 1.8rem 0.3rem 0.5rem;
  font-size: 0.84rem;
  line-height: 1.35;
  color: var(--hp2-text);
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-radius: 10px;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 12 12'%3E%3Cpath fill='%2340434a' d='M6 8.2L1.3 3.5h9.4z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.55rem center;
  background-size: 14px;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}
body.page-listado.home-v2 .bq-tengo-refine select.bq-tengo-refine__select:focus {
  border-color: rgba(61, 116, 194, 0.5);
  box-shadow: 0 0 0 0.2rem rgba(61, 116, 194, 0.12);
  outline: 0;
}
body.page-listado.home-v2 .bq-tengo-refine__field--amb {
  flex: 0 0 110px;
  width: 110px;
}
body.page-listado.home-v2 .bq-tengo-refine__field--range {
  flex: 1 1 0;
  min-width: 150px;
  max-width: min(190px, 100%);
}
body.page-listado.home-v2 .bq-tengo-refine__range {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.4rem;
}
body.page-listado.home-v2 .bq-tengo-refine .form-control {
  border-radius: 11px;
  border: 1px solid rgba(17, 24, 39, 0.14);
  color: var(--hp2-text);
  min-height: 40px;
  padding: 0.35rem 0.5rem;
  font-size: 0.875rem;
}
body.page-listado.home-v2 .bq-tengo-refine .form-control::placeholder {
  color: rgba(17, 24, 39, 0.42);
}
body.page-listado.home-v2 .bq-tengo-refine .form-control:focus {
  border-color: rgba(61, 116, 194, 0.5);
  box-shadow: 0 0 0 0.2rem rgba(61, 116, 194, 0.12);
}
body.page-listado.home-v2 .bq-tengo-refine__field--precio {
  flex: 1.6 1 0;
  min-width: 270px;
  max-width: min(360px, 100%);
}
body.page-listado.home-v2 .bq-tengo-refine__field--precio > .bq-tengo-refine__range {
  grid-template-columns: auto 1fr 1fr;
  align-items: center;
  gap: 0.35rem;
}
body.page-listado.home-v2 .bq-moneda-radios {
  display: flex;
  border: 1px solid rgba(17, 24, 39, 0.16);
  border-radius: 10px;
  overflow: hidden;
  background: #f5f5f5;
  padding: 2px;
  gap: 2px;
  align-self: stretch;
}
body.page-listado.home-v2 .bq-moneda-radio {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--hp2-muted);
  cursor: pointer;
  margin: 0;
  padding: 0 0.65rem;
  border-radius: 8px;
  border: none;
  background: transparent;
  transition: all 0.18s ease;
  user-select: none;
  line-height: 1;
  white-space: nowrap;
  min-height: 36px;
  letter-spacing: 0.02em;
}
body.page-listado.home-v2 .bq-moneda-radio:hover {
  color: var(--hp2-text);
}
body.page-listado.home-v2 .bq-moneda-radio input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
body.page-listado.home-v2 .bq-moneda-radio:has(input:checked) {
  background: #fff;
  color: var(--hp2-brand);
  box-shadow: 0 1px 4px rgba(17, 24, 39, 0.10);
  font-weight: 700;
}
body.page-listado.home-v2 .bq-moneda-radio:has(input:checked:not(:disabled)) {
  outline: 2px solid rgba(249, 115, 22, 0.35);
  outline-offset: -1px;
}
body.page-listado.home-v2 .bq-moneda-radios[data-moneda-sel="Pesos"] .bq-moneda-radio:has(input[value="2"]:checked),
body.page-listado.home-v2 .bq-moneda-radios[data-moneda-sel="USD"] .bq-moneda-radio:has(input[value="1"]:checked) {
  z-index: 1;
}
body.page-listado.home-v2 .bq-tengo-refine__field--actions {
  flex: 0 1 auto;
  margin-left: auto;
  align-self: flex-end;
}

/* Chips de filtros activos */
body.page-listado.home-v2 .bq-chips{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin: .75rem 0 .9rem;
}
body.page-listado.home-v2 .bq-chip{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.45rem .65rem;
  border-radius: 999px;
  background: rgba(61,116,194,.08);
  border: 1px solid rgba(61,116,194,.18);
  color: var(--hp2-text);
  font-weight: 700;
  font-size: .85rem;
  text-decoration:none;
}
body.page-listado.home-v2 .bq-chip:hover{
  background: rgba(61,116,194,.12);
  border-color: rgba(61,116,194,.28);
  color: var(--hp2-brand);
  text-decoration:none;
}
body.page-listado.home-v2 .bq-chip__x{
  font-size: .8rem;
  opacity: .7;
}

/* Stepper */
body.page-listado.home-v2 .bq-stepper{
  display:grid;
  grid-template-columns: 34px 1fr 34px;
  align-items: stretch;
  min-height: 42px;
  border: 1px solid rgba(17,24,39,.14);
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}
body.page-listado.home-v2 .bq-stepper__btn{
  border: 0;
  background: rgba(61,116,194,.06);
  color: var(--hp2-brand);
  font-weight: 900;
  font-size: 1.1rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.page-listado.home-v2 .bq-stepper__btn:hover{
  background: rgba(61,116,194,.1);
}
body.page-listado.home-v2 .bq-stepper__value{
  border: 0;
  text-align: center;
  font-weight: 800;
  color: var(--hp2-text);
  background: #fff;
  outline: none;
  min-width: 0;
}
body.page-listado.home-v2 .bq-tengo-refine__actions-inner {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0.55rem;
}

/* Botones compactos en ícono */
body.page-listado.home-v2 .bq-icon-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width: 44px !important;
  height: 44px;
  border-radius: 12px;
  border: 2px solid rgba(17,24,39,.14);
  background: #fff;
  color: var(--hp2-text);
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease, box-shadow .15s ease;
}
body.page-listado.home-v2 .bq-icon-btn i{ font-size: 1rem; line-height: 1; }
body.page-listado.home-v2 .bq-icon-btn:focus-visible{
  outline: none;
  box-shadow: 0 0 0 3px rgba(61,116,194,.25);
  border-color: rgba(61,116,194,.45);
}
body.page-listado.home-v2 .bq-icon-btn--search{
  background: var(--hp2-brand-2);
  border-color: var(--hp2-brand-2);
  color: #fff;
}
body.page-listado.home-v2 .bq-icon-btn--search:hover{
  background: #e67a1a;
  border-color: #e67a1a;
  transform: translateY(-1px);
}
body.page-listado.home-v2 .bq-icon-btn--clear:hover{
  background: rgba(61,116,194,.08);
  border-color: rgba(61,116,194,.28);
  color: var(--hp2-brand);
  transform: translateY(-1px);
}
body.page-listado.home-v2 .bq-icon-btn--clear{
  background: #fff;
  border-color: rgba(17,24,39,.14);
  color: var(--hp2-text);
}

/* Forzar estilos del botón limpiar (pisa reglas legacy con !important en site-compat.css) */
body.page-listado.home-v2 #limpiar_filtros.bq-icon-btn--clear{
  background: #fff !important;
  border-color: rgba(17,24,39,.14) !important;
  color: var(--hp2-text) !important;
  opacity: 1 !important;
  visibility: visible !important;
}
body.page-listado.home-v2 #limpiar_filtros.bq-icon-btn--clear:hover{
  background: rgba(61,116,194,.08) !important;
  border-color: rgba(61,116,194,.28) !important;
  color: var(--hp2-brand) !important;
}
@media (max-width: 991px) {
  body.page-listado.home-v2 .bq-tengo-refine__field--select {
    max-width: none;
    flex: 1 1 calc(50% - 0.75rem);
    min-width: 160px;
  }
  body.page-listado.home-v2 .bq-tengo-refine__field--actions {
    margin-left: 0;
    flex: 1 1 100%;
    align-self: stretch;
  }
  body.page-listado.home-v2 .bq-tengo-refine__actions-inner {
    justify-content: flex-start;
  }
}
@media (max-width: 575px) {
  body.page-listado.home-v2 .bq-tengo-refine__field--select,
  body.page-listado.home-v2 .bq-tengo-refine__field--range {
    flex: 1 1 100%;
    min-width: 0;
    max-width: none;
  }
  body.page-listado.home-v2 .bq-tengo-refine__field--precio {
    max-width: none;
  }
  body.page-listado.home-v2 .bq-tengo-refine__actions-inner {
    flex-direction: column;
    align-items: stretch;
  }
  body.page-listado.home-v2 .bq-icon-btn{
    width: 100%;
  }
}

/* Modal login, go-up, ayuda/registro internas: css/site-compat.css */