/* ============================================================
   LG Inmobiliaria — Overrides manuales
   Ajustes visuales puntuales aplicados post-QA visual.
   ============================================================ */

/* ── ICONOS PNG — alineación en botones y cards ─────────── */
.lgi-icon {
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
  background: transparent !important;
  background-color: transparent !important;
  object-fit: contain;
}
.lg-btn .lgi-icon,
button .lgi-icon {
  margin-right: 6px;
  margin-top: -2px;
}
.lgi-qa-icon .lgi-icon { display: block; margin: 0 auto; }

/* ── ICONOS: eliminar fondo blanco residual en PNG ───────── */
/* mix-blend-mode:multiply integra los blancos del PNG con el
   fondo y evita el "cuadrado" detrás del ícono. */
.lg-services-grid .lg-service-icon .lgi-icon,
.lg-services-grid-page .lg-service-icon .lgi-icon,
.lg-tasacion-cta-icon .lgi-icon {
  mix-blend-mode: multiply;
}

.lg-service-icon {
  isolation: isolate;
}

/* ── 0. NAV — siempre visible con fondo oscuro ──────────── */
/* El nav es position:fixed con texto blanco. Sin fondo oscuro,
   los links son invisibles sobre páginas con fondo claro.    */
.lgi-nav {
  background: #11160d !important;
  box-shadow: 0 2px 24px rgba(0,0,0,.30);
  z-index: 2000;
}

.lgi-nav-mobile {
  z-index: 1999;
}

/* ── 1. HERO — imagen decorativa responsive ─────────────── */
.lg-hero {
  min-height: 100vh;
  isolation: isolate;
  background: #14190e;
}

.lg-hero-bg-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100vh;
  height: 100svh;
  max-width: none;
  object-fit: cover;
  object-position: center center;
  pointer-events: none;
}

#lgi-page .lg-hero-bg-image {
  height: 100vh;
  height: 100svh;
  max-width: none;
}

.lg-hero-bg-image--mobile {
  display: none !important;
}

.lg-hero-overlay {
  z-index: 1;
  background: transparent;
}

.lg-hero::after {
  display: none;
}

.lg-hero .lg-container,
.lg-hero-scroll-hint {
  z-index: 3;
}

/* ── 1.1 HERO PANEL — spacing interno ──────────────────── */
/* align-items:center ya existe en el CSS principal; no se repite */
.lg-hero-panel {
  padding: 24px 22px 20px;
}

.lg-hero-grid {
  grid-template-columns: minmax(300px, 1fr) minmax(0, 560px);
  align-items: center;
  gap: clamp(32px, 6vw, 88px);
}

.lg-hero-content {
  display: flex;
  flex-direction: column;
  grid-column: 2;
  align-items: center;
  justify-self: end;
  width: min(100%, 560px);
  text-align: center;
  transform: translateX(clamp(24px, 3.5vw, 68px));
}

.lg-hero-content .lg-label,
.lg-hero-content .lg-hero-sub,
.lg-hero-panel h3,
.lg-hero-panel > p,
.lg-hero-panel .lg-hero-panel-footer {
  text-align: center;
}

.lg-hero-cta {
  justify-content: center;
}

.lg-hero-desktop-copy {
  display: contents;
}

.lg-hero-content .lg-hero-panel {
  margin-top: 16px;
  max-width: 440px;
  margin-left: auto;
  margin-right: auto;
}

.lg-hero-panel h3 {
  font-size: clamp(1.16rem, 1.45vw, 1.34rem);
  margin-bottom: 6px;
}

.lg-hero-title em {
  display: inline-block;
  font-size: .78em;
  font-weight: 500;
}

/* Mayor separación entre el texto introductorio y los selects */
.lg-hero-panel > p:not(.lg-hero-panel-footer) {
  margin-bottom: 2px;
  font-size: .86rem;
  line-height: 1.45;
  color: rgba(243,255,246,.78);
}
.lg-hero-panel .lg-hero-search {
  margin-top: 10px;
  gap: 10px;
}

#lg-hero-search-form .lgi-cs-trigger {
  background: rgba(143,242,166,.10);
  border-color: rgba(143,242,166,.34);
  color: #f3fff6;
  padding: 10px 13px;
  font-size: .87rem;
}

#lg-hero-search-form .lgi-cs-trigger:hover,
#lg-hero-search-form .lgi-cs-wrap.open .lgi-cs-trigger {
  background: rgba(143,242,166,.16);
  border-color: rgba(143,242,166,.52);
}

#lg-hero-search-form .lgi-cs-value {
  color: rgba(243,255,246,.92);
}

#lg-hero-search-form .lgi-cs-arrow {
  color: rgba(143,242,166,.9);
}

.lg-hero-panel .lg-hero-search-btn {
  padding: 11px;
  font-size: .88rem;
  margin-top: 2px;
}

.lg-hero-panel .lg-hero-panel-footer {
  margin-top: 12px;
  font-size: .74rem;
}

.lg-hero-visual {
  position: relative;
  border-radius: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  padding: 0;
  transition: opacity .18s ease;
  width: min(94%, 620px);
  justify-self: end;
  align-self: center;
  margin-top: 0;
  margin-left: auto;
  transform: translateX(22px);
}

.lg-hero-visual.is-fading {
  opacity: .86;
}

.lg-hero-visual-main {
  display: block;
  border-radius: 18px;
  overflow: hidden;
  aspect-ratio: auto;
  background: transparent;
  position: relative;
  z-index: 2;
}

.lg-hero-visual-main img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

.lg-hero-visual-dots {
  display: none;
}

.lg-hero-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  border: none;
  background: rgba(243,255,246,.32);
  cursor: pointer;
  transition: transform .2s ease, background .2s ease;
}

.lg-hero-dot.active {
  background: #8ff2a6;
  transform: scale(1.15);
}

@media (max-width: 900px) {
  .lg-hero {
    min-height: 100svh;
    align-items: flex-start;
  }

  .lg-hero .lg-container {
    padding-top: calc(var(--nav-h) + 10px);
  }

  .lg-hero-bg-image {
    inset: 0;
    width: 100%;
    height: 100vh;
    height: 100svh;
    object-fit: cover;
    object-position: center center;
  }

  .lg-hero-overlay {
    background: transparent;
  }

  .lg-hero-grid {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .lg-hero-content {
    grid-column: auto;
    transform: none;
  }

  .lg-hero-title {
    margin-top: clamp(82px, 16vh, 145px) !important;
  }

  .lg-hero-content .lg-hero-panel {
    max-width: 100%;
    margin-top: 16px;
  }

  .lg-hero-visual {
    order: 3;
    margin-top: 18px;
    width: 100%;
    max-width: 520px;
    justify-self: center;
    transform: none;
  }

  .lg-hero-panel {
    padding-top: 24px;
  }
  .lg-hero-panel h3 {
    font-size: 1.36rem;
  }
  .lg-hero-panel .lg-hero-search {
    margin-top: 16px;
  }
}

@media (max-width: 600px) {
  .lg-hero {
    min-height: 100svh;
  }

  .lg-hero .lg-container {
    padding-top: calc(var(--nav-h) + 10px);
    padding-bottom: 42px;
  }

  .lg-hero-bg-image--desktop {
    display: none !important;
  }

  .lg-hero-bg-image--mobile {
    display: block !important;
    object-position: center center;
    filter: none;
  }

  .lg-hero-overlay {
    background: transparent;
  }

  .lg-hero-content {
    align-items: center;
    text-align: center;
    width: min(100% - 42px, 430px);
    margin-left: auto;
    margin-right: auto;
  }

  .lg-hero-desktop-copy {
    display: none !important;
  }

  .lg-hero-content .lg-label {
    width: auto;
    max-width: 88%;
    margin: 0 auto 0;
    padding: 5px 10px;
    font-size: .62rem;
    line-height: 1.25;
    letter-spacing: .08em;
  }

  .lg-hero-title {
    font-size: clamp(2.85rem, 14.2vw, 4.45rem);
    line-height: 1.08;
    margin-top: clamp(56px, 11vh, 104px) !important;
    margin-bottom: 14px;
    font-family: var(--ff-title), Manrope, system-ui, sans-serif;
    font-style: normal;
    font-weight: 650;
    letter-spacing: -.015em;
    transform: skewX(-5deg) scaleX(1.05);
    transform-origin: center;
  }

  .lg-hero-title span {
    display: block;
    margin-bottom: .42em;
    line-height: 1.22 !important;
    font-style: normal;
    text-transform: capitalize;
  }

  .lg-hero-title span:last-of-type {
    margin-bottom: 0;
  }

  .lg-hero-title br {
    display: none;
  }

  .lg-hero-title em {
    display: none;
  }

  .lg-hero-sub {
    width: 100%;
    max-width: 390px;
    margin: 0 auto;
    padding: 22px 20px 0;
    color: rgba(243,255,246,.84);
    font-size: .96rem;
    line-height: 1.68;
    background: linear-gradient(180deg, rgba(6,20,13,.88), rgba(6,20,13,.76));
    border: 1px solid rgba(143,242,166,.18);
    border-bottom: 0;
    border-radius: 24px 24px 0 0;
    box-shadow: 0 22px 70px rgba(0,0,0,.26);
  }

  .lg-hero-cta {
    width: 100%;
    max-width: 390px;
    margin: 0 auto;
    padding: 18px 20px 6px;
    background: rgba(6,20,13,.76);
    margin-bottom: 0;
  }

  .lg-hero-cta .lg-btn {
    width: auto;
    min-width: min(100%, 210px);
  }

  .lg-hero-content .lg-hero-panel {
    width: 100%;
    max-width: 390px;
    margin-top: 0;
    border-top: 0;
    border-radius: 0 0 24px 24px;
    box-shadow: 0 28px 70px rgba(0,0,0,.30);
  }

}

/* ── 1.2 HERO — foto cuadrada + bloque verde ───────────────── */
.lg-hero {
  height: 100vh;
  min-height: 100svh;
  margin-bottom: 0;
  background: #14190e;
  overflow: hidden;
}

.lg-hero-bg-image,
.lg-hero-overlay,
.lg-hero-scroll-hint {
  display: none !important;
}

.lg-hero .lg-container {
  width: 100%;
  height: 100vh;
  height: 100svh;
  min-height: 100svh;
  padding: 0;
  display: flex;
  align-items: stretch;
  max-width: none;
}

.lg-hero-grid {
  width: 100%;
  height: 100vh;
  height: 100svh;
  min-height: 100svh;
  display: grid;
  grid-template-columns: 50vw minmax(420px, 1fr);
  align-items: stretch;
  gap: 0;
}

.lg-hero-photo-wrap {
  grid-column: 1;
  align-self: stretch;
  justify-self: stretch;
  width: 100%;
  height: 100%;
  min-height: 100svh;
  aspect-ratio: auto;
  border-radius: 0;
  overflow: hidden;
  background: #0a2f20;
  box-shadow: none;
  position: relative;
}

.lg-hero-photo-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(6,33,22,.10) 0%, rgba(6,33,22,.08) 48%, rgba(6,33,22,.72) 100%),
    linear-gradient(180deg, rgba(6,33,22,.56) 0%, rgba(6,33,22,0) 24%, rgba(6,33,22,0) 68%, rgba(239,246,239,.72) 100%),
    linear-gradient(180deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,.24) 100%);
  pointer-events: none;
}

.lg-hero-photo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lg-hero-content {
  grid-column: 2;
  justify-self: stretch;
  align-self: stretch;
  width: 100%;
  min-height: 100svh;
  margin: 0;
  padding: calc(var(--nav-h) + clamp(24px, 5vh, 52px)) clamp(24px, 4vw, 54px) clamp(24px, 5vh, 52px);
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
  text-align: center;
  align-items: center;
  justify-content: center;
}

.lg-hero-content > * {
  width: min(100%, 700px);
}

.lg-hero-content .lg-label {
  color: rgba(143,242,166,.92);
}

.lg-hero-title {
  color: #f3fff6;
  font-family: var(--ff-title), Georgia, serif;
  font-size: clamp(4.2rem, 7.6vw, 8.2rem);
  line-height: .82;
  letter-spacing: -.075em;
  text-transform: none;
  margin-bottom: clamp(20px, 3vh, 34px);
  text-shadow: 0 18px 42px rgba(0,0,0,.22);
}

.lg-hero-title span {
  display: block;
  transform: skewX(-7deg);
  transform-origin: center;
}

.lg-hero-title em {
  display: block;
  margin-top: clamp(16px, 2.4vh, 26px);
  color: #4cff78;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(3rem, 5.2vw, 5.8rem);
  font-style: italic;
  font-weight: 700;
  line-height: .9;
  letter-spacing: -.055em;
  text-shadow: 0 0 34px rgba(76,255,120,.30), 0 14px 34px rgba(0,0,0,.24);
}

.lg-hero-sub {
  color: rgba(243,255,246,.74);
}

@media (max-width: 900px) {
  .lg-hero {
    height: 100vh;
    height: 100svh;
  }

  .lg-hero .lg-container {
    align-items: stretch;
    height: 100vh;
    height: 100svh;
    padding: 0;
  }

  .lg-hero-grid {
    grid-template-columns: 1fr;
    grid-template-rows: 50svh 50svh;
    gap: 0;
    height: 100vh;
    height: 100svh;
    min-height: 100svh;
  }

  .lg-hero-content {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    min-height: 0;
    height: 50svh;
    justify-content: flex-start;
    border-radius: 0;
    border-left: 0;
    border-right: 0;
    padding: calc(var(--nav-h) + 8px) 22px 12px;
    background: transparent;
    box-shadow: none;
  }

  .lg-hero-photo-wrap {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    height: 100%;
    min-height: 0;
    aspect-ratio: auto;
    border-radius: 0;
    box-shadow: none;
  }

  .lg-hero-photo-wrap::after {
    background:
      linear-gradient(180deg, rgba(6,33,22,.78) 0%, rgba(6,33,22,0) 22%, rgba(6,33,22,0) 66%, rgba(239,246,239,.84) 100%),
      linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.18) 100%);
  }

  .lg-hero-photo {
    object-fit: cover;
    object-position: center center;
  }

  .lg-hero-title {
    margin-top: 0 !important;
    font-size: clamp(3rem, 13vw, 4.85rem);
    line-height: .86;
  }

  .lg-hero-title em {
    margin-top: 12px;
    font-size: clamp(2.4rem, 11vw, 4rem);
  }

  .lg-hero-content .lg-label {
    align-self: center;
    margin-top: 0;
    margin-bottom: clamp(14px, 3.8vh, 28px);
  }
}

@media (max-width: 600px) {
  .lg-hero {
    min-height: 100svh;
  }

  .lg-hero .lg-container {
    padding-bottom: 0;
  }

  .lg-hero-content {
    width: 100%;
    margin: 0;
  }

  .lg-hero-title {
    font-size: clamp(2.45rem, 11.4vw, 3.8rem);
    line-height: .88;
    margin-bottom: 0;
    transform: none;
  }

  .lg-hero-title span {
    margin-bottom: .08em;
  }

  .lg-hero-title em {
    font-size: clamp(2.25rem, 11.8vw, 3.75rem);
  }
}

/* ── 2. BADGE DESTACADA — label sobrio sin estrella ─────── */
.lg-hero {
  height: 100vh !important;
  height: 100svh !important;
  height: 100dvh !important;
  min-height: 100vh !important;
  min-height: 100svh !important;
  min-height: 100dvh !important;
  max-height: 100dvh !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #14190e;
  display: block !important;
  position: relative !important;
  line-height: 0 !important;
  font-size: 0 !important;
}

.lg-hero-fullscreen-picture {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100svh !important;
  height: 100dvh !important;
  max-width: none !important;
}

.lg-hero-fullscreen-img {
  display: block !important;
  width: 100vw !important;
  height: 100vh !important;
  height: 100svh !important;
  height: 100dvh !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.lg-hero-slogan {
  position: absolute !important;
  z-index: 2 !important;
  top: 29% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  display: block !important;
  width: min(86vw, 940px) !important;
  margin: 0 !important;
  color: #f2d28a;
  font-family: var(--ff-title), Georgia, serif !important;
  font-size: clamp(4.2rem, 6.7vw, 6.8rem) !important;
  font-weight: 400 !important;
  line-height: 1.02 !important;
  letter-spacing: -.055em !important;
  text-align: center;
  text-wrap: balance;
  filter: none;
  pointer-events: none !important;
}

.lg-hero-slogan span {
  display: block !important;
  color: #f2d58f;
  background: none;
  -webkit-text-fill-color: #f2d58f;
  -webkit-text-stroke: 0;
  text-shadow:
    0 2px 5px rgba(94,59,13,.72),
    0 9px 22px rgba(0,0,0,.52);
}

.lg-hero-slogan span + span {
  margin-top: .08em;
}

@media (max-width: 640px) {
  body.home .lg-hero-slogan {
    top: calc(var(--nav-h) + clamp(56px, 12vh, 104px)) !important;
    width: min(92vw, 410px) !important;
    font-size: clamp(2.8rem, 13.5vw, 3.65rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.06em !important;
    transform: translateX(-50%) !important;
  }
}

.lg-hero + #propiedades {
  margin-top: 0 !important;
}

.lg-hero > .lg-container,
.lg-hero-grid,
.lg-hero-content,
.lg-hero-photo-wrap,
.lg-hero-scroll-hint,
.lg-hero-overlay {
  display: none !important;
}

.lg-badge-dest-card {
  position: absolute;
  top: 14px;
  bottom: auto;
  right: 14px;
  background: rgba(6,20,13,.86);
  color: #d9f7df;
  border: 1px solid rgba(115,220,130,.35);
  border-radius: 999px;
  padding: 5px 11px;
  font-size: .70rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  line-height: 1;
}

.lg-badge-dest {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: rgba(6,20,13,.82);
  color: #d9f7df;
  border: 1px solid rgba(115,220,130,.3);
  border-radius: 999px;
  padding: 4px 12px;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

/* ── 3. SERVICIOS — cards como links (color + hover) ────── */
.lg-service-card-link {
  display: block;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease;
}

/* Forzar colores correctos dentro del link en sección oscura */
.lg-service-card-link h3 { color: var(--lgi-green-light); }
.lg-service-card-link p  { color: rgba(255,255,255,.65); }

.lg-service-card-link:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 36px rgba(0,0,0,.25);
}

.lg-service-cta {
  display: inline-block;
  margin-top: 12px;
  font-size: .85rem;
  font-weight: 600;
  color: var(--lgi-green-light);
  letter-spacing: .02em;
}

/* Servicios (pagina): centrar cards en pantalla */
.lg-services-grid-page {
  grid-template-columns: repeat(auto-fit, minmax(250px, 320px));
  justify-content: center;
}

.lg-services-grid-page .lg-service-card {
  width: 100%;
}

/* ── 4. TASACIÓN CTA — centrado de label, título y botón ── */
.lg-tasacion-cta-text {
  text-align: center;
}

.lg-tasacion-cta-text .lg-label {
  justify-content: center;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.lg-tasacion-cta-text h2 {
  text-align: center;
}

.lg-tasacion-cta-text .lg-btn {
  display: inline-flex;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
  margin-top: 16px;
}

.lg-tasacion-cta-icon .lgi-icon {
  width: 132px !important;
  height: 132px !important;
}

.lg-tasacion-cta.lg-section {
  padding-top: 34px;
  padding-bottom: 34px;
}

.lg-tasacion-cta .lg-container {
  padding-top: 22px;
  padding-bottom: 10px;
}

.lg-tasacion-cta-icon {
  margin-top: 8px;
}

@media (max-width: 640px) {
  .lg-tasacion-cta-text .lg-btn {
    width: auto;
    max-width: 100%;
  }
}

@media (min-width: 1024px) {
  .lg-tasacion-cta {
    background:
      radial-gradient(1200px 460px at 85% 46%, rgba(143,242,166,.11), transparent 66%),
      linear-gradient(180deg, #091911 0%, #06130d 100%);
    border-top: 1px solid rgba(143,242,166,.14);
    border-bottom: 1px solid rgba(143,242,166,.10);
  }

  .lg-tasacion-cta .lg-container {
    max-width: 100%;
    padding: 0;
  }

  .lg-tasacion-cta-inner {
    position: relative;
    width: 100%;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
    padding: 52px clamp(32px, 7vw, 120px) 40px;
    gap: 28px;
  }

  .lg-tasacion-cta-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin: 0 auto;
  }

  .lg-tasacion-cta-text p {
    color: rgba(243,255,246,.84);
    max-width: 760px;
    margin: 0 auto 24px;
    text-align: center !important;
    line-height: 1.78;
  }

  .lg-tasacion-cta-text .lg-label {
    color: rgba(143,242,166,.86);
    margin-bottom: 10px;
  }

  .lg-tasacion-cta-text h2 {
    color: #f3fff6;
    font-size: clamp(2.1rem, 3.2vw, 3rem);
    margin: 0 0 16px;
    text-shadow: 0 10px 30px rgba(0,0,0,.35);
  }

  .lg-tasacion-cta .lg-btn-green {
    background: rgba(143,242,166,.12);
    border: 1px solid rgba(143,242,166,.38);
    color: #dfffe8;
    border-radius: 999px;
    padding: 12px 26px;
    font-size: .9rem;
    font-weight: 600;
    letter-spacing: .01em;
    box-shadow: none;
    transition: background .25s ease, border-color .25s ease, color .25s ease;
    margin-top: 18px;
  }

  .lg-tasacion-cta .lg-btn-green:hover {
    background: rgba(143,242,166,.20);
    border-color: rgba(143,242,166,.52);
    color: #f3fff6;
  }

  .lg-tasacion-cta-icon {
    opacity: .18;
    color: #8ff2a6;
    font-size: clamp(4.2rem, 5vw, 5.4rem);
  }

  .lg-tasacion-cta-icon .lgi-icon {
    width: clamp(170px, 16vw, 240px) !important;
    height: clamp(170px, 16vw, 240px) !important;
  }
}

/* ── 4b. CONTADOR DE PROPIEDADES — centrado en mobile ─── */
@media (max-width: 640px) {
  .lg-contador {
    text-align: center;
  }
}

/* ── 5. PÁGINAS INTERIORES — espacio bajo el nav fijo ───── */
/* El nav es position:fixed (72px). En páginas sin hero (propiedades,
   servicios, contacto) el contenido arranca en top:0 y queda tapado.
   :not(.lg-hero) excluye el hero del home, que ya tiene su propio
   padding-top calculado. Las subpáginas con .lg-props-page-header
   ya aplican margin-top: var(--nav-h) en el CSS principal.           */
#lgi-main > .lg-inmo:first-child:not(.lg-hero):not(.lg-val-wrap) {
  padding-top: calc(var(--nav-h) + 24px);
}

/* ── 6. SUBTÍTULOS — centrado bajo el título en todas las páginas ── */
/* Cubre: secciones del home, página de servicios, tasación, contacto */
.lg-section-header p,
.lg-val-subtitle,
.lg-contact-wrap .lg-contact-intro,
.lg-props-page-header p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 680px;
}

/* ── 6b. CONTACTO — bajar bloque y centrar en el main ───── */
#lgi-main > .lg-contact-wrap {
  margin-top: clamp(28px, 6vh, 72px);
}

/* Contacto a pantalla completa: el bloque llena el viewport y
   centra el contenido verticalmente. */
.page-id-10 #lgi-main > .lg-contact-wrap {
  min-height: calc(100vh - var(--nav-h));
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 0;
  padding-bottom: 60px;
}

.lg-contact-wrap {
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}

.lg-contact-grid {
  align-items: center;
  gap: clamp(32px, 5vw, 64px);
}

@media (max-width: 768px) {
  .page-id-10 #lgi-main > .lg-contact-wrap {
    width: min(calc(100% - 48px), 520px);
    max-width: 520px;
    margin: 0 auto;
    padding: calc(var(--nav-h) + 20px) 0 56px;
  }

  .page-id-10 .lg-contact-grid {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 34px;
    width: 100%;
    text-align: center;
  }

  .page-id-10 .lg-contact-info,
  .page-id-10 .lg-contact-form-wrap,
  .page-id-10 #lg-form-contact {
    width: 100%;
    max-width: 460px;
    margin-left: auto;
    margin-right: auto;
  }

  .page-id-10 .lg-contact-info h3 {
    font-size: clamp(2.7rem, 13vw, 4.3rem);
    line-height: .92;
    letter-spacing: -.045em;
    margin: 0 auto 18px;
    text-align: center;
  }

  .page-id-10 .lg-contact-info > p {
    max-width: 24rem;
    margin: 0 auto 28px;
    font-size: 1rem;
    line-height: 1.72;
    text-align: center;
  }

  .page-id-10 .lg-ci-items {
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
    align-items: stretch;
  }

  .page-id-10 .lg-ci-item {
    justify-content: center;
    text-align: center;
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(255,255,255,.76);
    border: 1px solid rgba(46,125,50,.10);
  }

  .page-id-10 .lg-ci-item:not(.lg-ci-wa) {
    flex-direction: column;
    gap: 5px;
  }

  .page-id-10 .lg-ci-wa {
    margin-top: 0;
    justify-content: center;
  }

  .page-id-10 .lg-form-row {
    grid-template-columns: 1fr;
  }

  .page-id-10 .lg-form-group {
    align-items: center;
    text-align: center;
  }

  .page-id-10 .lg-form-group input,
  .page-id-10 .lg-form-group textarea {
    width: 100%;
    max-width: 420px;
    text-align: center;
  }

  .page-id-10 .lg-form-group textarea {
    min-height: 138px;
  }

  .page-id-10 .lg-btn-full {
    width: auto;
    min-width: min(100%, 220px);
    margin-left: auto;
    margin-right: auto;
  }
}

/* ════════════════════════════════════════════════════════════
   7. TASACIÓN — REDISEÑO VISUAL PREMIUM VERDE OSCURO
   ════════════════════════════════════════════════════════════ */

/* ── 7.0 Admin bar — ocultar en canvas LGI ─────────────── */
body.lgi-canvas #wpadminbar { display: none !important; }
html:has(body.lgi-canvas)   { margin-top: 0 !important; overflow-x: hidden; }
body.lgi-canvas.admin-bar   { margin-top: 0 !important; }

/* ── 7.1 Fondo general ───────────────────────────────────── */
.lg-val-wrap {
  position: relative;
  width: 100%;
  min-height: 100vh;
  padding: 120px 0 96px;
  background:
    radial-gradient(900px 460px at 85% 0%, rgba(55,64,35,.22), transparent 70%),
    linear-gradient(180deg, #0c1109 0%, #14190e 42%, #181e11 100%);
  color: #f3fff6;
  overflow: hidden;
}

.lg-val-wrap::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 50% 100%, rgba(201,168,76,.035), transparent 55%);
}

.lg-val-wrap > .lg-container {
  position: relative;
  z-index: 1;
}

/* ── 7.2 Header ─────────────────────────────────────────── */
.lg-val-header {
  max-width: 860px;
  margin: 0 auto 56px;
  text-align: center;
  padding: 0;
}

.lg-val-header .lg-label {
  justify-content: center;
  color: #8ff2a6;
  background: rgba(143,242,166,.10);
  border: 1px solid rgba(143,242,166,.28);
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  padding: 8px 14px;
  border-radius: 999px;
}

.lg-val-header h2 {
  color: #f6fff8;
  text-shadow: 0 18px 40px rgba(0,0,0,.28);
}

.lg-val-header h2 em {
  color: #8ff2a6;
  font-style: normal;
}

.lg-val-subtitle {
  color: rgba(243,255,246,.78);
  max-width: 760px;
  margin: 18px auto 0 !important;
  text-align: center !important;
  line-height: 1.7;
}

/* ── 7.3 Formulario y bloques ────────────────────────────── */
.lg-val-form-wrap,
.lg-val-form {
  background: transparent;
}

.lg-val-block {
  background: linear-gradient(145deg, rgba(13,65,43,.94), rgba(10,48,33,.96));
  border: 1px solid rgba(143,242,166,.18);
  box-shadow: 0 24px 80px rgba(0,0,0,.24);
  border-radius: 28px;
  padding: 40px 44px;
  color: #f3fff6;
  margin-bottom: 30px;
}

/* Grid de características (bloque 4) */
.lg-val-grid-3 { gap: 20px 18px; }

/* Chips de radios y checkboxes — column-gap / row-gap explícitos */
.lg-val-radios     { column-gap: 10px; row-gap: 14px; flex-wrap: wrap; }
.lg-val-checkboxes { column-gap: 10px; row-gap: 14px; flex-wrap: wrap; }

/* Separador visual entre grupos */
.lg-val-divider {
  border: none;
  border-top: 1px solid rgba(143,242,166,.18);
  margin: 28px 0;
}

/* Label encima de cada grupo de chips — espacio generoso hacia abajo */
.lg-val-check-label,
p.lg-val-check-label {
  margin-bottom: 20px !important;
  margin-top: 0;
  display: block;
}

/* Espacio entre el <label> del campo y el grupo de chips debajo */
.lg-val-field > label + .lg-val-radios,
.lg-val-field > label + .lg-val-checkboxes {
  margin-top: 14px;
}

/* Checkboxes wrap: espacio superior respecto al grid */
.lg-val-checkboxes-wrap { margin-top: 28px; }

/* Ancho del formulario un poco más generoso */
.lg-val-form-wrap { max-width: 960px; }

.lg-val-block-header {
  border-bottom: 1px solid rgba(201,168,76,.18);
  padding-bottom: 18px;
  margin-bottom: 24px;
}

.lg-val-block-header h3 {
  color: #f6fff8;
}

.lg-val-num {
  background: rgba(201,168,76,.08);
  color: #e0c88a;
  border: 1px solid rgba(201,168,76,.45);
  box-shadow: none;
}

/* ── 7.4 Inputs, selects y textareas ────────────────────── */
.lg-val-field label,
.lg-val-check-label {
  color: rgba(243,255,246,.88);
}

.lg-val-field input,
.lg-val-field select,
.lg-val-field textarea {
  background: rgba(245,255,247,.94);
  color: #071b12;
  border: 1px solid rgba(143,242,166,.28);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.35);
}

.lg-val-field input::placeholder,
.lg-val-field textarea::placeholder {
  color: rgba(7,27,18,.48);
}

.lg-val-field input:focus,
.lg-val-field select:focus,
.lg-val-field textarea:focus {
  border-color: #8ff2a6;
  box-shadow:
    0 0 0 4px rgba(143,242,166,.22),
    inset 0 1px 0 rgba(255,255,255,.35);
  outline: none;
}

.lg-val-field select option {
  background: #14190e;
  color: #f3fff6;
}

.req { color: #8ff2a6; }

/* ── 7.5 Radios y checkboxes ─────────────────────────────── */
.lg-val-radio span,
.lg-val-check span {
  background: rgba(244,255,246,.08);
  border: 1px solid rgba(143,242,166,.18);
  color: rgba(243,255,246,.88);
}

.lg-val-radio:hover span,
.lg-val-check:hover span {
  background: rgba(143,242,166,.13);
  border-color: rgba(143,242,166,.34);
}

.lg-val-radio input:checked + span {
  background: rgba(143,242,166,.20);
  border-color: #8ff2a6;
  color: #8ff2a6;
}

.lg-val-check input:checked + span {
  background: rgba(143,242,166,.20);
  border-color: #8ff2a6;
  color: #8ff2a6;
}

.lg-val-radio input { accent-color: #57d86e; }
.lg-val-check input { accent-color: #57d86e; }

/* Checkbox requerido (acepto) */
.lg-val-check-required span {
  border: none !important;
  background: none !important;
  color: rgba(243,255,246,.88) !important;
}

/* ── 7.6 Upload de fotos ─────────────────────────────────── */
.lg-val-tip {
  color: rgba(243,255,246,.74);
  background: rgba(143,242,166,.09);
  border: 1px solid rgba(143,242,166,.16);
  border-left: none;
  border-radius: 18px;
  padding: 14px 16px;
}

.lg-val-tip + .lg-val-upload-area {
  margin-top: 14px;
}

.lg-val-upload-area {
  background: rgba(201,168,76,.025);
  border: 1px dashed rgba(201,168,76,.45);
  border-radius: 16px;
}

.lg-val-upload-label,
.lg-val-upload-label span {
  color: rgba(243,255,246,.88);
}

.lg-val-upload-label small {
  color: rgba(243,255,246,.62);
}

.lg-val-upload-area:hover .lg-val-upload-label,
.lg-val-upload-label:hover {
  background: rgba(201,168,76,.06);
  border-color: transparent;
}

/* ── 7.7 Submit ─────────────────────────────────────────── */
.lg-val-submit-wrap {
  text-align: center;
  margin-top: 42px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.lg-val-submit-wrap .lg-btn {
  margin-left: auto;
  margin-right: auto;
}

.lg-val-submit-note {
  color: rgba(243,255,246,.68);
  width: 100%;
  max-width: 620px;
  margin: 0 auto;
  text-align: center !important;
  display: block;
}

/* Mensajes de validación sobre fondo oscuro */
.lg-val-msg-err {
  background: rgba(183,28,28,.18);
  border-color: rgba(239,154,154,.4);
  color: #ffcdd2;
}

.lg-val-msg-ok {
  background: rgba(76,175,80,.16);
  border-color: rgba(143,242,166,.4);
  color: #8ff2a6;
}

/* Éxito */
.lg-val-success {
  color: #f3fff6;
}

/* ── 7.9 FOOTER MOBILE — versión compacta ── */
@media (max-width: 900px) {
  .lgi-footer-center {
    grid-column: 1 / -1;
    order: -1;
  }
}

@media (max-width: 640px) {
  /* El grid sobreescribe el padding-x del .lg-container con 0 — lo restauramos */
  .lgi-footer-grid {
    justify-items: center;
    gap: 14px;
    padding-top: 24px;
    padding-bottom: 14px;
    padding-left: 24px;
    padding-right: 24px;
    text-align: center;
  }

  .lgi-footer-brand-desc,
  .lgi-footer-grid > .lgi-footer-col:nth-of-type(2),
  .lgi-footer-grid > .lgi-footer-col:nth-of-type(3) {
    display: none;
  }

  .lgi-footer-col h4 {
    display: none;
  }

  .lgi-footer-brand,
  .lgi-footer-col,
  .lgi-footer-contacts {
    width: 100%;
    align-items: center;
    text-align: center;
  }

  .lgi-footer-logo-wrap {
    justify-content: center;
    margin-bottom: 8px;
  }

  .lgi-footer-logo-img {
    width: 240px;
    height: auto;
  }

  /* Nombre de marca más prominente */
  .lgi-footer-brand-name {
    font-size: 1.55rem;
  }

  .lgi-footer-brand-mat {
    margin-bottom: 0;
    font-size: .62rem;
  }

  .lgi-footer-contacts {
    gap: 6px;
  }

  .lgi-footer-ci {
    justify-content: center;
    align-items: center;
    gap: 6px;
    font-size: .76rem;
    line-height: 1.25;
  }

  .lgi-footer-ci svg {
    width: 13px;
    height: 13px;
    margin-top: 0;
  }

  /* Footer bottom también centrado en mobile */
  .lgi-footer-bottom {
    justify-content: center;
    gap: 4px;
    padding-top: 10px;
    padding-bottom: 12px;
    padding-left: 24px;
    padding-right: 24px;
    font-size: .68rem;
    line-height: 1.35;
  }
}

/* ════════════════════════════════════════════════════════════
   8. PROPIEDAD DETALLE — FIX RESPONSIVE / OVERFLOW HORIZONTAL
   ════════════════════════════════════════════════════════════ */

/* ── 8.1 Prevención de overflow en el wrapper de página ── */
/* #lgi-page contiene todo el canvas; overflow-x:hidden aquí
   corta cualquier elemento que escape al viewport. */
#lgi-page {
  overflow-x: hidden;
}

/* ── 8.2 Grid cells: min-width:0 ── */
/* Por spec, los grid-items tienen min-width:auto y se dimensionan
   al min-content de su contenido. Las thumbnails de galería son
   flex-shrink:0 (no encogen), por lo que su suma se convierte en
   el min-content del grid-cell .lg-detail-gallery, que luego
   desborda el viewport en móvil.
   min-width:0 permite que el grid-cell encoja por debajo de su
   contenido, dejando que overflow-x:auto de .lg-gallery-thumbs
   tome el control del scroll horizontal localizado. */
.lg-detail-layout > * {
  min-width: 0;
}

/* ── 8.3 Thumbnails: scroll interno, nunca desborda al padre ── */
.lg-gallery-thumbs {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* ── 8.5 Imagen principal: nunca más ancha que su frame ── */
.lg-gallery-main img {
  max-width: 100%;
}

/* ── 8.6 Info: flex-items contienen su ancho ── */
.lg-detail-info > * {
  max-width: 100%;
}

/* ── 8.7 Texto largo no desborda ── */
.lg-detail-titulo,
.lg-detail-desc,
.lg-detail-dir {
  overflow-wrap: break-word;
  word-break: break-word;
}

/* ── 8.8 Formulario de contacto embebido: columna única a 860px ── */
@media (max-width: 860px) {
  .lg-property-detail .lg-contact-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

/* ── 8.9 Padding lateral ajustado en mobile ── */
@media (max-width: 640px) {
  .lg-property-detail {
    padding-left: 16px;
    padding-right: 16px;
  }
  .lg-detail-carac { gap: 8px; }
  .lg-detail-share { gap: 6px; }
}

/* ── 7.8 Responsive mobile ───────────────────────────────── */
@media (max-width: 768px) {
  .lg-val-wrap {
    padding: 96px 0 64px;
  }

  .lg-val-header {
    margin-bottom: 34px;
  }

  .lg-val-block {
    border-radius: 22px;
    padding: 24px 20px;
  }

  .lg-val-form-wrap { max-width: 100%; }

  .lg-val-grid-2,
  .lg-val-grid-3 {
    grid-template-columns: 1fr;
  }
}

/* ════════════════════════════════════════════════════════════
   9. OFFSET NAV — CASOS ESPECIALES
   ════════════════════════════════════════════════════════════ */

/* ── 9.1 Emprendimientos — evitar doble espaciado ── */
/* .lg-emprendimientos-wrap hereda padding-top:96px de la regla §5,
   pero su primer hijo .lg-section ya tiene padding:88px 0, acumulando
   184px. Se anula el padding del wrapper y se asigna al section. */
.lg-emprendimientos-wrap {
  padding-top: 0 !important;
}
.lg-emprendimientos-wrap > .lg-section:first-child {
  padding-top: calc(var(--nav-h) + 24px);
}

/* ── 9.2 Dashboard — overflow horizontal ── */
/* El panel no usa .lg-inmo como wrapper, así que #lgi-page
   ya cubre el overflow, pero el dash-wrap necesita contenedor seguro */
.lgi-dash-wrap,
.lgi-login-page {
  overflow-x: hidden;
}

/* ── 9.3 Quick actions en mobile — no rompen layout ── */
@media (max-width: 480px) {
  .lgi-dash-quick-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .lgi-quick-action {
    padding: 12px 14px;
    font-size: .82rem;
  }
}

/* ════════════════════════════════════════════════════════════
   10. CUSTOM SELECT — HERO SEARCH PANEL
   Reemplaza el <select> nativo por un dropdown moderno con
   coherencia visual respecto al panel verde oscuro del hero.
   El <select> original permanece en el DOM (oculto) para que
   el JS de búsqueda siga leyendo su valor sin cambios.
   ════════════════════════════════════════════════════════════ */

/* ── 10.0 Ocultar el <select> nativo ── */
.lgi-cs-wrap select {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

/* ── 10.1 Contenedor posicionado ── */
.lgi-cs-wrap {
  position: relative;
  width: 100%;
}

/* ── 10.2 Botón trigger — glassmorphism coherente con el hero ── */
.lgi-cs-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 11px 16px;
  background: rgba(255,255,255,.12);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.26);
  border-radius: 10px;
  color: #fff;
  font-size: .95rem;
  font-family: inherit;
  cursor: pointer;
  text-align: left;
  transition: background .18s, border-color .18s, box-shadow .18s;
  outline: none;
  box-shadow: 0 2px 12px rgba(0,0,0,.14);
}

.lgi-cs-trigger:hover {
  background: rgba(255,255,255,.18);
  border-color: rgba(255,255,255,.40);
  box-shadow: 0 4px 18px rgba(0,0,0,.18);
}

.lgi-cs-wrap.open .lgi-cs-trigger {
  background: rgba(255,255,255,.20);
  border-color: rgba(143,242,166,.55);
  box-shadow: 0 0 0 3px rgba(143,242,166,.18), 0 4px 18px rgba(0,0,0,.18);
}

/* ── 10.3 Texto del valor seleccionado ── */
.lgi-cs-value {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: rgba(255,255,255,.90);
  line-height: 1.3;
}

/* ── 10.4 Flecha chevron ── */
.lgi-cs-arrow {
  flex-shrink: 0;
  margin-left: 10px;
  color: rgba(255,255,255,.70);
  display: flex;
  align-items: center;
  transition: transform .22s cubic-bezier(.4,0,.2,1);
}

.lgi-cs-wrap.open .lgi-cs-arrow {
  transform: rotate(180deg);
  color: #8ff2a6;
}

/* ── 10.5 Dropdown panel ── */
/* position/top/left/width se setean inline por JS al abrir (position:fixed
   para escapar cualquier overflow:hidden ancestral). Los valores CSS son
   el estado base cuando está cerrado. */
.lgi-cs-dropdown {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  width: 100%;
  z-index: 99999;
  background: linear-gradient(160deg, #0d4129 0%, #0a2d1f 100%);
  border: 1px solid rgba(143,242,166,.28);
  border-radius: 12px;
  box-shadow:
    0 12px 48px rgba(0,0,0,.40),
    0 2px 8px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.06);
  padding: 6px;
  max-height: 240px;
  overflow-y: auto;
  /* Oculto por defecto — aparece con transición */
  opacity: 0;
  transform: translateY(-6px) scale(.98);
  pointer-events: none;
  transition:
    opacity .18s cubic-bezier(.4,0,.2,1),
    transform .18s cubic-bezier(.4,0,.2,1);
}

/* Scrollbar minimalista dentro del dropdown */
.lgi-cs-dropdown::-webkit-scrollbar { width: 4px; }
.lgi-cs-dropdown::-webkit-scrollbar-track { background: transparent; }
.lgi-cs-dropdown::-webkit-scrollbar-thumb { background: rgba(143,242,166,.30); border-radius: 4px; }

/* Evita que el scroll de la página interfiera con el del dropdown en mobile */
.lgi-cs-dropdown { overscroll-behavior: contain; }

.lgi-cs-wrap.open .lgi-cs-dropdown {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}

/* ── 10.6 Opciones individuales ── */
.lgi-cs-option {
  padding: 10px 14px;
  border-radius: 8px;
  color: rgba(243,255,246,.88);
  font-size: .92rem;
  cursor: pointer;
  transition: background .13s, color .13s;
  display: flex;
  align-items: center;
  gap: 10px;
  user-select: none;
}

.lgi-cs-option::after {
  content: '';
  margin-left: auto;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.lgi-cs-option:hover {
  background: rgba(143,242,166,.14);
  color: #fff;
}

.lgi-cs-option.selected {
  background: rgba(143,242,166,.18);
  color: #8ff2a6;
  font-weight: 600;
}

/* Checkmark en opción seleccionada */
.lgi-cs-option.selected::after {
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238ff2a6' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* Placeholder / opción vacía — texto más sutil */
.lgi-cs-option[data-value=""] {
  color: rgba(243,255,246,.52);
  font-style: italic;
}

/* ── 10.7 Responsive — trigger más compacto en mobile ── */
@media (max-width: 640px) {
  .lgi-cs-trigger {
    padding: 10px 14px;
    font-size: .90rem;
  }
  .lgi-cs-option {
    padding: 9px 12px;
    font-size: .88rem;
  }
}

/* ── 10.8 TEMA CLARO — filtros, dashboard y formularios ── */
/* En fondos blancos/claros el botón usa texto oscuro con borde
   verde sutil, manteniendo el mismo dropdown verde oscuro. */
.lgi-cs-wrap--light .lgi-cs-trigger {
  background: #fff;
  border: 1.5px solid var(--lgi-border, #dde8dd);
  color: var(--lgi-text, #1a2e20);
  box-shadow: 0 1px 4px rgba(14,31,18,.06);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.lgi-cs-wrap--light .lgi-cs-trigger:hover {
  border-color: var(--lgi-green-bright, #4caf50);
  background: #f8fbf8;
  box-shadow: 0 2px 8px rgba(14,31,18,.10);
}

.lgi-cs-wrap--light.open .lgi-cs-trigger {
  background: #fff;
  border-color: var(--lgi-green-bright, #4caf50);
  box-shadow: 0 0 0 3px rgba(76,175,80,.14), 0 2px 8px rgba(14,31,18,.10);
}

.lgi-cs-wrap--light .lgi-cs-value {
  color: var(--lgi-text, #1a2e20);
}

.lgi-cs-wrap--light .lgi-cs-arrow {
  color: var(--lgi-green, #2e7d32);
}

.lgi-cs-wrap--light.open .lgi-cs-arrow {
  color: var(--lgi-green-bright, #4caf50);
}

/* El panel desplegable es igual en ambos temas — coherencia visual */

/* ════════════════════════════════════════════════════════════════
   PÁGINA PÚBLICA DE PROPIEDADES — fondo beige + filtros verdes
   ════════════════════════════════════════════════════════════════ */

/* ── Fondo de la sección ── */
#lg-app,
#lg-app.lg-inmo {
  background:
    radial-gradient(circle at 90% 10%, rgba(46,125,50,.08), transparent 36%),
    radial-gradient(circle at 5% 90%, rgba(148,110,51,.12), transparent 38%),
    linear-gradient(180deg, #f4eadb 0%, #ead9bf 100%) !important;
  padding-bottom: 60px;
}

/* ── Encabezado de sección (Propiedades, Filtros) ── */
#lg-app .lg-section-header h2,
#lg-app .lg-section-header .lg-section-titulo { color: #173b22; }
#lg-app .lg-section-header p                  { color: rgba(23,59,34,.66); }

/* ── Contador de resultados ── */
#lg-app .lg-contador { color: rgba(23,59,34,.62); }

/* ── Descubrimiento de propiedades ── */
#lg-app .lg-props-discovery {
  max-width: 1200px;
  margin: clamp(38px, 6vw, 84px) auto 56px;
  padding: 0 40px;
  box-sizing: border-box;
}

#lg-app .lg-props-discovery-head {
  text-align: center;
  margin-bottom: clamp(42px, 5vw, 70px);
}

#lg-app .lg-props-discovery-head h1 {
  margin: 0;
  font-family: var(--ff-title);
  font-size: clamp(3.35rem, 6.2vw, 6.35rem);
  line-height: .92;
  color: #173b22;
  letter-spacing: -.06em;
}

#lg-app .lg-props-rail-section {
  margin-top: 34px;
}

#lg-app .lg-props-rail-section > h3,
#lg-app .lg-props-sell-card h3 {
  margin: 0 0 16px;
  font-family: var(--ff-title);
  font-size: clamp(2rem, 3.4vw, 3.35rem);
  line-height: .98;
  color: #173b22;
  letter-spacing: -.045em;
}

#lg-app .lg-props-rail {
  display: flex;
  gap: 22px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  padding: 4px 4px 18px;
  scrollbar-width: thin;
  scrollbar-color: rgba(46,125,50,.34) transparent;
}

#lg-app .lg-props-rail::-webkit-scrollbar {
  height: 8px;
}

#lg-app .lg-props-rail::-webkit-scrollbar-track {
  background: transparent;
}

#lg-app .lg-props-rail::-webkit-scrollbar-thumb {
  background: rgba(46,125,50,.28);
  border-radius: 999px;
}

#lg-app .lg-props-rail .lg-property-card {
  flex: 0 0 clamp(280px, 31vw, 360px);
  scroll-snap-align: start;
}

#lg-app .lg-props-rail-empty {
  margin: 0;
  padding: 22px 24px;
  border: 1px solid rgba(46,125,50,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.55);
  color: rgba(23,59,34,.68);
  text-align: center;
}

#lg-app .lg-props-sell-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 34px;
  padding: 32px 36px;
  border: 1px solid rgba(46,125,50,.18);
  border-radius: 28px;
  background:
    radial-gradient(circle at 12% 0%, rgba(143,242,166,.18), transparent 34%),
    linear-gradient(135deg, #ffffff 0%, #f5eddf 100%);
  box-shadow: 0 20px 54px rgba(64,42,18,.14);
}

#lg-app .lg-props-sell-card h3 {
  margin-bottom: 8px;
}

#lg-app .lg-props-sell-card p {
  max-width: 620px;
  margin: 0;
  color: rgba(23,59,34,.68);
  line-height: 1.65;
}

#lg-app .lg-props-sell-card .lg-btn {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  padding: 12px 22px;
  border-radius: 999px;
}

/* ── Barra de filtros ── */
#lg-app .lg-filters-wrap {
  background: #fff;
  border: 1px solid rgba(46,125,50,.14);
  box-shadow: 0 16px 42px rgba(64, 42, 18, .14);
  margin-top: clamp(44px, 6vw, 76px);
  margin-bottom: 0;
}

#lg-app .lg-filters-inner {
  justify-content: center;
  text-align: center;
}

#lg-app .lgi-cs-wrap,
#lg-app .lg-filter-select,
#lg-app .lg-filter-input {
  flex: 0 1 168px;
  width: auto;
  min-width: 136px;
  max-width: 178px;
}

#lg-app .lg-filter-select {
  background: #fbf8f2;
  border-color: rgba(46,125,50,.18);
  color: #173b22;
}

/* ── Custom selects de filtros ── */
#lg-app .lgi-cs-wrap--light .lgi-cs-trigger {
  background: #fbf8f2;
  border: 1.5px solid rgba(46,125,50,.18);
  color: #173b22;
}
#lg-app .lgi-cs-wrap--light .lgi-cs-trigger:hover,
#lg-app .lgi-cs-wrap--light.open .lgi-cs-trigger {
  background: #fff;
  border-color: rgba(46,125,50,.42);
}
#lg-app .lgi-cs-wrap--light .lgi-cs-trigger::after {
  border-top-color: rgba(46,125,50,.72);
}
#lg-app .lgi-cs-wrap--light .lgi-cs-value { color: #173b22; }
#lg-app .lgi-cs-wrap--light .lgi-cs-dropdown {
  background: #fff;
  border: 1px solid rgba(46,125,50,.18);
  box-shadow: 0 10px 32px rgba(64,42,18,.16);
}
#lg-app .lgi-cs-wrap--light .lgi-cs-option       { color: #173b22; }
#lg-app .lgi-cs-wrap--light .lgi-cs-option:hover,
#lg-app .lgi-cs-wrap--light .lgi-cs-option.selected {
  background: rgba(46,125,50,.08);
  color: #2e7d32;
}

/* ── Inputs de precio (número) ── */
#lg-app .lg-filter-input {
  background: #fbf8f2 !important;
  border: 1.5px solid rgba(46,125,50,.18) !important;
  border-radius: 8px !important;
  color: #173b22 !important;
  padding: 9px 12px !important;
  font-size: .875rem !important;
}
#lg-app .lg-filter-input::placeholder { color: rgba(23,59,34,.48) !important; }
#lg-app .lg-filter-input:focus {
  outline: none !important;
  border-color: rgba(46,125,50,.42) !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(46,125,50,.10) !important;
}
/* Quitar spinner nativo de number input */
#lg-app .lg-filter-input::-webkit-inner-spin-button,
#lg-app .lg-filter-input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
#lg-app .lg-filter-input[type="number"] { -moz-appearance: textfield; }

/* ── Toggle "Apto crédito" ── */
#lg-app .lg-filter-check-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
}
#lg-app .lg-filter-check-label input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
/* Track del toggle */
#lg-app .lg-filter-toggle {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 22px;
  background: rgba(46,125,50,.10);
  border: 1.5px solid rgba(46,125,50,.24);
  border-radius: 999px;
  flex-shrink: 0;
  transition: background .2s, border-color .2s;
}
/* Thumb */
#lg-app .lg-filter-toggle::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 14px;
  height: 14px;
  background: rgba(46,125,50,.42);
  border-radius: 50%;
  transition: transform .2s, background .2s;
}
/* Estado activo */
#lg-app .lg-filter-check-label input:checked + .lg-filter-toggle {
  background: rgba(46,125,50,.18);
  border-color: #2e7d32;
}
#lg-app .lg-filter-check-label input:checked + .lg-filter-toggle::after {
  transform: translateX(18px);
  background: #2e7d32;
}
/* Texto del label */
#lg-app .lg-filter-check-text {
  color: #173b22;
  font-size: .875rem;
  font-family: var(--ff-body, sans-serif);
}

#lg-app #lg-btn-filtrar,
#lg-app #lg-btn-limpiar,
#lg-app #lg-btn-mapa {
  display: inline-flex;
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  max-width: max-content;
  margin: 0;
  padding: 8px 14px;
  align-items: center;
  justify-content: center;
}

@media (min-width: 641px) {
  #lg-app .lg-card-actions {
    justify-content: center;
  }

  #lg-app .lg-card-btn-detail {
    flex: 0 0 auto;
    min-width: 128px;
    max-width: max-content;
  }
}

/* ── Encabezado de página (título_sec) ── */
.lg-props-page-header {
  background: linear-gradient(135deg, #11160d, #14190e);
  border-bottom-color: rgba(143,242,166,.18);
}

/* ── Paginación ── */
#lg-app .lg-pagination { margin-top: 12px; }
#lg-app .lg-pagination button {
  background: rgba(143,242,166,.10);
  border: 1.5px solid rgba(143,242,166,.24);
  color: rgba(243,255,246,.80);
  border-radius: 8px;
  transition: background .18s, border-color .18s;
}
#lg-app .lg-pagination button:hover,
#lg-app .lg-pagination button.active {
  background: #8ff2a6;
  border-color: #8ff2a6;
  color: #042014;
  font-weight: 700;
}

/* ── Sin resultados ── */
#lg-app .lg-no-results { color: rgba(23,59,34,.62); }

/* ════════════════════════════════════════════════════════════════
   CONTAINER — página de propiedades con margen en desktop
   ════════════════════════════════════════════════════════════════ */
#lg-app {
  padding-top: 32px;
}
#lg-app .lg-filters-wrap,
#lg-app #lg-contador,
#lg-app .lg-properties-grid,
#lg-app #lg-loading,
#lg-app #lg-paginacion,
#lg-app #lg-map-global {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 40px;
  padding-right: 40px;
  box-sizing: border-box;
}

#lg-app #lg-map-global,
#lg-app #lg-map-global-inner,
#lg-app .leaflet-container {
  position: relative;
  z-index: 1;
}

#lg-app .leaflet-top,
#lg-app .leaflet-bottom {
  z-index: 900;
}

/* En mobile, reducir el padding lateral */
@media (max-width: 640px) {
  #lg-app .lg-props-discovery {
    margin-bottom: 34px;
    padding-left: 22px;
    padding-right: 22px;
  }

  #lg-app .lg-props-discovery-head {
    margin-bottom: 28px;
  }

  #lg-app .lg-props-discovery-head h1 {
    font-size: clamp(2rem, 10vw, 2.65rem);
  }

  #lg-app .lg-props-rail-section {
    margin-top: 30px;
  }

  #lg-app .lg-props-rail-section > h3,
  #lg-app .lg-props-sell-card h3 {
    text-align: left;
    font-size: clamp(1.9rem, 8vw, 2.55rem);
    line-height: 1.02;
    margin-bottom: 18px;
  }

  #lg-app .lg-props-rail {
    gap: 16px;
    margin-left: -6px;
    margin-right: -6px;
    padding-left: 6px;
    padding-right: 6px;
  }

  #lg-app .lg-props-rail .lg-property-card {
    flex-basis: min(82vw, 330px);
  }

  #lg-app .lg-props-sell-card {
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: min(100%, 360px);
    margin-left: auto;
    margin-right: auto;
    padding: 28px 22px;
    gap: 18px;
    border-radius: 26px;
  }

  #lg-app .lg-props-sell-card h3 {
    text-align: center;
    font-size: clamp(1.8rem, 7.2vw, 2.25rem);
    margin-bottom: 10px;
  }

  #lg-app .lg-props-sell-card p {
    max-width: 28ch;
    margin-left: auto;
    margin-right: auto;
    font-size: .95rem;
    line-height: 1.58;
  }

  #lg-app .lg-props-sell-card .lg-btn {
    width: auto;
    min-width: 0;
    max-width: max-content;
    padding: 11px 22px;
  }

  #lg-app .lg-filters-wrap,
  #lg-app #lg-contador,
  #lg-app .lg-properties-grid,
  #lg-app #lg-loading,
  #lg-app #lg-paginacion,
  #lg-app #lg-map-global {
    padding-left: 16px;
    padding-right: 16px;
  }

  #lg-app .lg-filters-wrap {
    width: min(calc(100% - 44px), 400px);
    max-width: 400px;
    margin: 0 auto 30px;
    padding: 22px 18px;
    border: 1px solid rgba(46,125,50,.14);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 46px rgba(64, 42, 18, .14);
  }

  #lg-app .lg-filters-inner {
    align-items: center;
    justify-content: center;
    gap: 12px;
  }

  #lg-app .lgi-cs-wrap,
  #lg-app .lg-filter-select,
  #lg-app .lg-filter-input,
  #lg-app .lgi-cs-wrap--light .lgi-cs-trigger {
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    border-color: rgba(46,125,50,.18) !important;
    background: #fbf8f2 !important;
    color: #173b22 !important;
  }

  #lg-app .lg-filter-input::placeholder {
    color: rgba(23,59,34,.48) !important;
  }

  #lg-app .lgi-cs-wrap--light .lgi-cs-value,
  #lg-app .lg-filter-check-text {
    color: #173b22;
  }

  #lg-app .lg-filter-check-label {
    justify-content: center;
    color: #173b22;
  }

  #lg-app #lg-btn-filtrar,
  #lg-app #lg-btn-limpiar,
  #lg-app #lg-btn-mapa {
    width: auto;
    min-width: 0;
    margin-left: auto;
    margin-right: auto;
    padding-left: 14px;
    padding-right: 14px;
    border: 1.5px solid #2e7d32;
    background: transparent;
    color: #2e7d32;
    box-shadow: 0 0 0 rgba(46,125,50,0);
  }

  #lg-app #lg-btn-filtrar:hover,
  #lg-app #lg-btn-filtrar:focus-visible,
  #lg-app #lg-btn-limpiar:hover,
  #lg-app #lg-btn-limpiar:focus-visible,
  #lg-app #lg-btn-mapa:hover,
  #lg-app #lg-btn-mapa:focus-visible {
    background: rgba(46,125,50,.08);
    border-color: #2e7d32;
    color: #1f6f2a;
    box-shadow: 0 0 24px rgba(46,125,50,.18);
  }
}

/* ════════════════════════════════════════════════════════════════
   LOGO — nav, footer, login
   ════════════════════════════════════════════════════════════════ */

/* ── Nav: logo imagen (header bar) ── */
.lgi-nav-logo {
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.lgi-nav-logo-img {
  width: 400px;
  height: 64px;
  object-fit: cover;
  flex-shrink: 0;
  display: block;
}

@media (max-width: 1100px) {
  .lgi-nav-logo-img { width: 340px; height: 60px; }
}

@media (max-width: 900px) {
  .lgi-nav-logo-img { width: 260px; height: 56px; }
}

@media (max-width: 640px) {
  .lgi-nav-logo-img { width: 400px; height: 64px; }
  .lgi-nav-inner { gap: 6px; }
  .lgi-nav-toggle { margin-left: auto; }
}

@media (max-width: 480px) {
  .lgi-nav-logo-img { width: 330px; height: 58px; }
}

@media (max-width: 380px) {
  .lgi-nav-logo-img { width: 240px; height: 50px; }
}
.lgi-nav-logo-text {
  display: flex;
  flex-direction: column;
  line-height: 1;
}

/* ── Footer: logo (header bar) centrado ── */
.lgi-footer-center {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

.lgi-footer-logo-img {
  width: 440px;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  display: block;
}

.lgi-footer-brand-name {
  font-size: clamp(1.55rem, 2.4vw, 2rem);
  text-align: center;
}

.lgi-footer-brand-mat {
  text-align: center;
}

/* ── Login: logo centrado más grande ── */
.lgi-login-logo-img {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
  margin: 0 auto 14px;
  box-shadow: 0 4px 20px rgba(0,0,0,.35);
}

/* ── 16b. Botones verdes — contorno luminoso ────────────────── */
#lgi-page .lg-btn-green,
#lgi-page .lg-btn-green-sm {
  background: transparent;
  border-color: var(--lgi-green-bright);
  color: var(--lgi-green-bright);
  box-shadow: 0 0 0 rgba(76,175,80,0);
}

#lgi-page .lg-btn-green:hover,
#lgi-page .lg-btn-green:focus-visible,
#lgi-page .lg-btn-green-sm:hover,
#lgi-page .lg-btn-green-sm:focus-visible {
  background: rgba(76,175,80,.10);
  border-color: var(--lgi-green-light);
  color: var(--lgi-green-light);
  box-shadow: 0 0 24px rgba(76,175,80,.38);
}

#lgi-page .lg-section-light .lg-btn-green,
#lgi-page .lg-section-light .lg-btn-green-sm {
  color: var(--lgi-green);
  border-color: var(--lgi-green);
}

#lgi-page .lg-section-light .lg-btn-green:hover,
#lgi-page .lg-section-light .lg-btn-green:focus-visible,
#lgi-page .lg-section-light .lg-btn-green-sm:hover,
#lgi-page .lg-section-light .lg-btn-green-sm:focus-visible {
  color: #1f6f2a;
  border-color: #1f6f2a;
  background: rgba(46,125,50,.08);
  box-shadow: 0 0 24px rgba(46,125,50,.26);
}

/* ── 17. FONDOS DE SECCIONES HOME ────────────────── */
#propiedades {
  position: relative;
  overflow: hidden;
  background: #f4efe3;
}

#propiedades > .lg-props-map-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center center;
  pointer-events: none;
}

#lgi-page #propiedades > .lg-props-map-image {
  height: 100%;
  max-width: none;
}

#propiedades > :not(.lg-props-map-image) {
  position: relative;
  z-index: 2;
}

#servicios {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  align-items: center;
}

#servicios::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(14,18,10,.92), rgba(14,18,10,.72) 42%, rgba(14,18,10,.94));
  pointer-events: none;
}

#servicios > .lg-services-bg-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center center;
  pointer-events: none;
}

#lgi-page #servicios > .lg-services-bg-image {
  height: 100%;
  max-width: none;
}

.lg-services-bg-image--mobile {
  display: none !important;
}

#servicios > :not(.lg-services-bg-image) {
  position: relative;
  z-index: 2;
}

#servicios > .lg-container {
  width: 100%;
}

@media (max-width: 640px) {
  #propiedades > .lg-props-map-image {
    object-position: center center;
  }

  #servicios::before {
    background:
      linear-gradient(180deg, rgba(14,18,10,.94), rgba(14,18,10,.76) 46%, rgba(14,18,10,.95));
  }

  .lg-services-bg-image--desktop {
    display: none !important;
  }

  .lg-services-bg-image--mobile {
    display: block !important;
  }
}

/* ── 18. Propiedades — tipografía editorial y assets sin emojis ── */
.lg-card-placeholder {
  display: grid;
  place-items: center;
  min-height: 230px;
}

.lg-card-placeholder img,
.lg-gallery-placeholder img,
.lgi-prop-thumb-placeholder img,
.lgi-foto-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.lg-badge-dest-card {
  top: 12px;
  right: 12px;
  bottom: auto;
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(14, 18, 10, .9);
  border: 1px solid rgba(165, 214, 167, .34);
  color: #d8f4dd;
  font-family: var(--ff-body);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
  text-shadow: none;
}

.lg-property-card .lg-card-body,
#lg-app .lg-property-card .lg-card-body {
  gap: 9px;
}

.lg-card-precio,
#lg-app .lg-card-precio {
  font-family: var(--ff-body);
  font-size: clamp(1.18rem, 1.7vw, 1.42rem);
  font-weight: 700;
  letter-spacing: .015em;
  color: #2d7d39;
}

.lg-card-titulo,
#lg-app .lg-card-titulo {
  font-family: var(--ff-title);
  font-size: clamp(1.05rem, 1.35vw, 1.28rem);
  font-weight: 650;
  line-height: 1.22;
  letter-spacing: -.018em;
  text-transform: none;
}

.lg-card-dir,
#lg-app .lg-card-dir {
  font-size: .82rem;
  letter-spacing: .01em;
}

.lg-card-carac,
#lg-app .lg-card-carac {
  gap: 10px 16px;
  font-size: .78rem;
}

.lg-card-carac strong,
#lg-app .lg-card-carac strong {
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .72;
}

.lg-detail-titulo {
  max-width: 780px;
  font-size: clamp(2rem, 4.8vw, 3.7rem);
  line-height: .98;
  letter-spacing: -.04em;
  font-weight: 650;
  text-transform: none;
}

.lg-detail-precio {
  font-family: var(--ff-body);
  font-size: clamp(1.45rem, 2.2vw, 2rem);
  font-weight: 750;
  letter-spacing: .02em;
}

.lg-detail-dir {
  font-size: .95rem;
  letter-spacing: .01em;
}

.lg-detail-carac {
  background: rgba(6, 20, 13, .04);
}

.lg-carac-chip {
  align-items: flex-start;
  min-width: 116px;
}

.lg-carac-icon {
  min-width: 52px;
  color: var(--lgi-green);
  font-family: var(--ff-body);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.35;
  text-transform: uppercase;
}

.lg-detail-section h3 {
  font-size: clamp(1.35rem, 2vw, 1.7rem);
  letter-spacing: -.015em;
}

.lg-detail-desc {
  max-width: 760px;
  font-size: 1.02rem;
  line-height: 1.9;
  color: rgba(26, 46, 31, .76);
}

/* ── 19. Propiedades — revisión integral de jerarquía y filtros ── */
#lg-app .lg-props-discovery {
  margin-top: clamp(64px, 8vw, 112px);
}

#lg-app .lg-props-discovery-head {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

#lg-app .lg-props-discovery-head h1 {
  font-size: clamp(3.6rem, 5.5vw, 5.8rem);
  line-height: .94;
  letter-spacing: -.055em;
  text-wrap: balance;
}

#lg-app .lg-props-rail-section {
  margin-top: clamp(54px, 6vw, 78px);
}

#lg-app .lg-props-rail-section > h3 {
  margin-bottom: 24px;
  font-size: clamp(2.8rem, 4.2vw, 4.2rem);
  line-height: .94;
  letter-spacing: -.05em;
}

#lg-app .lg-props-rail .lg-card-titulo {
  font-size: clamp(1.05rem, 1.35vw, 1.28rem);
  line-height: 1.22;
  letter-spacing: -.018em;
}

#lg-app .lg-props-rail .lg-card-precio {
  font-size: clamp(1.18rem, 1.7vw, 1.42rem);
}

#lg-app .lg-filters-wrap {
  width: min(calc(100% - 80px), 1120px);
  max-width: 1120px;
  margin: clamp(64px, 8vw, 104px) auto 0;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid rgba(46,125,50,.20);
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 28px 72px rgba(64,42,18,.18);
}

#lg-app .lg-filters-head {
  padding: 34px 40px 30px;
  background:
    radial-gradient(circle at 88% 0%, rgba(143,242,166,.18), transparent 34%),
    linear-gradient(145deg, #161b10 0%, #11160d 100%);
  text-align: left;
}

#lg-app .lg-filters-head span {
  display: block;
  margin-bottom: 10px;
  color: #8ff2a6;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

#lg-app .lg-filters-head h2 {
  margin: 0 0 10px;
  color: #f4fff6;
  font-family: var(--ff-title);
  font-size: clamp(2rem, 3.2vw, 3.15rem);
  line-height: 1;
  letter-spacing: -.04em;
}

#lg-app .lg-filters-head p {
  max-width: 720px;
  margin: 0;
  color: rgba(243,255,246,.68);
  font-size: .95rem;
  line-height: 1.65;
}

#lg-app .lg-filters-inner {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  align-items: center;
  padding: 32px 40px 36px;
  text-align: left;
}

#lg-app .lg-filters-inner > .lgi-cs-wrap,
#lg-app .lg-filters-inner > .lg-filter-select,
#lg-app .lg-filters-inner > .lg-filter-input {
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
}

#lg-app .lg-filters-inner .lgi-cs-trigger,
#lg-app .lg-filters-inner .lg-filter-input {
  min-height: 48px;
  border-radius: 11px !important;
  background: #faf7f0 !important;
}

#lg-app .lg-filter-check-label {
  justify-self: start;
  min-height: 44px;
  padding: 0 4px;
}

#lg-app .lg-filter-actions {
  grid-column: 2 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  align-items: center;
}

#lg-app .lg-filter-actions .lg-btn {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  max-width: max-content;
  min-height: 42px;
  margin: 0;
  padding: 9px 18px;
  border-radius: 999px;
}

#lg-app #lg-btn-filtrar {
  border-color: #2e7d32;
  background: #2e7d32;
  color: #fff;
  box-shadow: 0 8px 22px rgba(46,125,50,.22);
}

#lg-app #lg-btn-filtrar:hover,
#lg-app #lg-btn-filtrar:focus-visible {
  border-color: #1f6f2a;
  background: #1f6f2a;
  color: #fff;
}

@media (min-width: 641px) and (max-width: 900px) {
  #lg-app .lg-filters-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #lg-app .lg-filter-actions {
    grid-column: auto;
  }
}

@media (max-width: 640px) {
  #lg-app .lg-props-discovery {
    margin-top: 46px;
    padding-left: 20px;
    padding-right: 20px;
  }

  #lg-app .lg-props-discovery-head {
    margin-bottom: 42px;
  }

  #lg-app .lg-props-discovery-head h1 {
    font-size: clamp(2.65rem, 12vw, 3.8rem);
    line-height: .96;
  }

  #lg-app .lg-props-rail-section {
    margin-top: 48px;
  }

  #lg-app .lg-props-rail-section > h3 {
    margin-bottom: 22px;
    font-size: clamp(2.45rem, 11vw, 3.35rem);
    line-height: .95;
    text-align: left;
  }

  #lg-app .lg-props-rail {
    gap: 16px;
    margin-left: -4px;
    margin-right: -4px;
    padding: 4px 4px 16px;
  }

  #lg-app .lg-props-rail .lg-property-card {
    flex-basis: min(84vw, 330px);
  }

  #lg-app .lg-props-rail .lg-card-titulo {
    font-size: 1.08rem;
  }

  #lg-app .lg-props-rail .lg-card-precio {
    font-size: 1.22rem;
  }

  #lg-app .lg-filters-wrap {
    width: min(calc(100% - 32px), 430px);
    max-width: 430px;
    margin: 56px auto 0;
    padding: 0 !important;
    border-radius: 26px;
  }

  #lg-app .lg-filters-head {
    padding: 26px 22px 24px;
    text-align: center;
  }

  #lg-app .lg-filters-head span {
    margin-bottom: 9px;
  }

  #lg-app .lg-filters-head h2 {
    font-size: clamp(1.8rem, 8.5vw, 2.5rem);
  }

  #lg-app .lg-filters-head p {
    font-size: .88rem;
    line-height: 1.55;
  }

  #lg-app .lg-filters-inner {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 22px 18px 24px;
  }

  #lg-app .lg-filters-inner > .lgi-cs-wrap,
  #lg-app .lg-filters-inner > .lg-filter-select,
  #lg-app .lg-filters-inner > .lg-filter-input {
    width: 100%;
    min-width: 0;
    max-width: none;
  }

  #lg-app .lg-filter-check-label {
    justify-self: center;
  }

  #lg-app .lg-filter-actions {
    grid-column: 1;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 4px;
  }

  #lg-app .lg-filter-actions .lg-btn {
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 9px 16px;
  }
}

/* ── 20. Pulido global de experiencia e interacción ───────── */
:root {
  --radius-md: 12px;
  --radius-xl: 24px;
  --shadow-sm: 0 2px 12px rgba(6,14,9,.06);
}

html {
  scroll-padding-top: calc(var(--nav-h) + 20px);
}

#lgi-page :where(section[id], .lg-service-card-page[id]) {
  scroll-margin-top: calc(var(--nav-h) + 24px);
}

.lgi-skip-link {
  position: fixed;
  z-index: 10000;
  top: 10px;
  left: 14px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #fff;
  color: #173b22;
  font-weight: 700;
  transform: translateY(-160%);
  transition: transform .18s ease;
}

.lgi-skip-link:focus {
  transform: translateY(0);
}

.lgi-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.lg-section-header h1 {
  margin-bottom: 14px;
  color: var(--lgi-text);
  font-size: clamp(2.1rem, 4.6vw, 3.8rem);
  letter-spacing: -.04em;
}

.lgi-nav-links-wrap {
  display: flex;
  flex: 1;
  min-width: 0;
}

.lgi-nav-mobile {
  max-height: calc(100dvh - var(--nav-h));
  overflow-y: auto;
  overscroll-behavior: contain;
}

#lgi-page :where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 2px solid #dabc71;
  outline-offset: 3px;
}

#lgi-page :where(button, .lg-btn):disabled {
  cursor: not-allowed;
  opacity: .58;
  transform: none !important;
  box-shadow: none !important;
}

#lg-app .lg-props-discovery .lg-filters-wrap {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto;
}

#lg-app .lg-props-sell-card {
  margin-top: 34px;
}

#lg-app .lg-contador {
  scroll-margin-top: calc(var(--nav-h) + 24px);
}

#lg-app .lg-loading {
  gap: 12px;
  color: #173b22;
  font-size: .9rem;
  font-weight: 600;
}

#lg-app .lg-paginacion button {
  min-width: 44px;
  min-height: 44px;
  border: 1px solid rgba(46,125,50,.22);
  border-radius: 10px;
}

.lg-card-badges-right {
  position: absolute;
  z-index: 3;
  top: 12px;
  right: 12px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

.lg-card-badges-right .lg-badge-estado-card,
.lg-card-badges-right .lg-badge-dest-card {
  position: static;
  inset: auto;
}

.lg-property-card {
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.lg-property-card:focus-within {
  border-color: rgba(46,125,50,.44);
  box-shadow: 0 16px 42px rgba(6,14,9,.16);
}

.lg-card-btn-wa,
.lg-paginacion button,
.lgi-nav-toggle {
  min-width: 44px;
  min-height: 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.06);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: background .2s ease, border-color .2s ease, transform .15s ease;
}

.lgi-nav-toggle:hover {
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.28);
}

.lgi-nav-toggle:active {
  transform: scale(.94);
}

.lgi-nav-toggle span {
  height: 2.6px;
  border-radius: 3px;
  background: #f8fbf9;
  box-shadow: 0 0 6px rgba(0,0,0,.18);
}

.lg-contact-form-wrap.lg-form-card {
  padding: clamp(24px, 4vw, 38px);
  border: 1px solid rgba(46,125,50,.14);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 22px 58px rgba(6,14,9,.12);
}

.lg-contact-wrap {
  padding-bottom: clamp(64px, 8vw, 104px);
}

.lg-contact-info h1 {
  font-size: clamp(2.4rem, 5vw, 4.4rem);
  line-height: .96 !important;
  letter-spacing: -.045em;
}

.lg-ci-item,
.lg-ci-item a,
.lgi-footer-ci {
  min-width: 0;
  overflow-wrap: anywhere;
}

.lg-inmo > .lg-section-header,
.lg-services-grid-page {
  width: min(calc(100% - 48px), 1200px);
  margin-left: auto;
  margin-right: auto;
}

.lg-services-grid-page {
  padding-bottom: clamp(64px, 8vw, 104px);
}

.lg-service-card,
.lg-stat-card,
.lg-form-card,
.lg-val-block {
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.lg-service-card:hover,
.lg-service-card:focus-within {
  transform: translateY(-4px);
}

.lg-val-header h1 {
  margin: 0 0 12px;
  color: #f6fff8;
  font-size: clamp(2.2rem, 5vw, 3.6rem);
  text-shadow: 0 18px 40px rgba(0,0,0,.28);
}

.lg-val-header h1 em {
  color: #e0c88a;
  font-style: normal;
}

.lg-val-radio input,
.lg-val-check:not(.lg-val-check-required) input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  overflow: hidden;
  display: block;
}

.lg-val-radio input:focus-visible + span,
.lg-val-check:not(.lg-val-check-required) input:focus-visible + span,
.lg-val-upload-area:focus-within .lg-val-upload-label {
  outline: 2px solid #dabc71;
  outline-offset: 3px;
}

.lg-val-success {
  border: 1px solid rgba(201,168,76,.3);
  background: linear-gradient(145deg, #1a2012, #11160d);
  color: #f3fff6;
}

.lg-val-success h3 {
  color: #f3fff6;
}

.lg-val-success p {
  color: rgba(243,255,246,.76);
}

.lgi-wa-float {
  right: calc(20px + env(safe-area-inset-right));
  bottom: calc(20px + env(safe-area-inset-bottom));
}

@media (max-width: 640px) {
  .lgi-nav-links-wrap {
    display: none;
  }

  #lg-app .lg-props-discovery .lg-filters-wrap {
    width: 100%;
    max-width: 430px;
  }

  #lg-map-global-inner {
    height: 310px !important;
  }

  .lg-contact-form-wrap.lg-form-card {
    padding: 24px 18px;
    border-radius: 20px;
  }

  .lg-contact-form-wrap :where(label, input, textarea) {
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {
  #lgi-page *,
  #lgi-page *::before,
  #lgi-page *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* ── 21. CTA de venta y sección de confianza ─────────────── */
#lgi-page #lg-app .lg-props-sell-card .lg-btn {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  width: fit-content !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 44px;
  margin: 0 !important;
  padding: 11px 22px !important;
  align-items: center;
  justify-content: center;
  border: 1px solid #c9a84c !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #e2c579, #c9a84c 58%, #b3924a) !important;
  color: #201a08 !important;
  line-height: 1.1;
  white-space: nowrap;
  box-shadow: 0 6px 20px rgba(0,0,0,.18) !important;
}

#lgi-page #lg-app .lg-props-sell-card .lg-btn:hover,
#lgi-page #lg-app .lg-props-sell-card .lg-btn:focus-visible {
  border-color: #e0c88a !important;
  background: linear-gradient(180deg, #ecd18b, #d5b65a 58%, #bf9d4f) !important;
  color: #201a08 !important;
  transform: translateY(-2px);
}

.lg-trust-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 94% 84%, rgba(201,168,76,.04), transparent 55%),
    linear-gradient(145deg, #191f13, #11160d);
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  align-items: center;
}

.lg-trust-section::before {
  content: '';
  position: absolute;
  top: -180px;
  right: -150px;
  width: 420px;
  height: 420px;
  border: 1px solid rgba(46,125,50,.10);
  border-radius: 50%;
  box-shadow: 0 0 0 54px rgba(46,125,50,.025), 0 0 0 108px rgba(46,125,50,.018);
  pointer-events: none;
}

.lg-trust-section > .lg-container {
  position: relative;
  z-index: 1;
  width: 100%;
}

.lg-trust-section .lg-trust-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  gap: clamp(48px, 7vw, 96px);
  align-items: stretch;
}

.lg-trust-section .lg-trust-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.lg-trust-section .lg-label {
  width: fit-content;
  margin-bottom: 18px;
  padding: 7px 12px;
  border: 1px solid rgba(201,168,76,.24);
  border-radius: 999px;
  background: transparent;
  color: #dabc71;
}

.lg-trust-section .lg-trust-text h2 {
  max-width: 700px;
  margin-bottom: 18px;
  color: #f3f1e8;
  font-size: clamp(3rem, 5.4vw, 5.7rem);
  line-height: .9;
  letter-spacing: -.06em;
}

.lg-trust-section .lg-trust-sub {
  max-width: 680px;
  margin-bottom: 34px;
  color: #b7bcac;
  font-size: clamp(1rem, 1.4vw, 1.12rem);
  line-height: 1.8;
}

.lg-trust-section .lg-trust-items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 32px;
}

.lg-trust-section .lg-trust-item {
  min-width: 0;
  padding: 18px;
  border: 1px solid rgba(201,168,76,.16);
  border-radius: 18px;
  background: rgba(10,14,7,.25);
  box-shadow: none;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.lg-trust-section .lg-trust-item:hover {
  border-color: rgba(201,168,76,.4);
  transform: translateY(-3px);
  box-shadow: 0 16px 36px rgba(29,55,35,.11);
}

.lg-trust-section .lg-trust-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin: 0;
  border-radius: 14px;
  background: rgba(201,168,76,.06);
  border: 1px solid rgba(201,168,76,.2);
  color: #dabc71;
  font-family: var(--ff-body);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  box-shadow: 0 8px 20px rgba(6,33,22,.18);
}

.lg-trust-section .lg-trust-item > div {
  min-width: 0;
}

.lg-trust-section .lg-trust-item strong {
  margin-bottom: 5px;
  color: #eeeede;
  font-size: .93rem;
  line-height: 1.3;
}

.lg-trust-section .lg-trust-item > div > span {
  display: block;
  color: #abb29e;
  font-size: .79rem;
  line-height: 1.5;
}

#lgi-page .lg-trust-section .lg-btn-green {
  align-self: flex-start;
  border-color: #2e7d32;
  border-radius: 999px;
  background: #2e7d32;
  color: #fff;
  box-shadow: 0 12px 28px rgba(46,125,50,.22);
}

#lgi-page .lg-trust-section .lg-btn-green:hover,
#lgi-page .lg-trust-section .lg-btn-green:focus-visible {
  border-color: #1f6f2a;
  background: #1f6f2a;
  color: #fff;
}

.lg-trust-section .lg-trust-stats {
  align-content: center;
  gap: 14px;
  padding: clamp(24px, 3.4vw, 38px);
  border: 1px solid rgba(201,168,76,.24);
  border-radius: 34px;
  background:
    radial-gradient(circle at 90% 8%, rgba(201,168,76,.06), transparent 40%),
    linear-gradient(145deg, #161b10 0%, #11160d 100%);
  box-shadow: 0 28px 72px rgba(6,33,22,.24);
}

.lg-trust-stats-head {
  grid-column: 1 / -1;
  margin-bottom: 8px;
}

.lg-trust-stats-head span {
  display: block;
  margin-bottom: 8px;
  color: #dabc71;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.lg-trust-stats-head strong {
  display: block;
  color: rgba(243,255,246,.88);
  font-family: var(--ff-title);
  font-size: clamp(1.35rem, 2.3vw, 2rem);
  font-weight: 600;
  line-height: 1.2;
}

.lg-trust-section .lg-stat-card {
  min-height: 150px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  border: 1px solid rgba(201,168,76,.16);
  border-radius: 20px;
  background: rgba(255,255,255,.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

.lg-trust-section .lg-stat-card:hover {
  border-color: rgba(201,168,76,.34);
  background: rgba(201,168,76,.06);
  transform: translateY(-3px);
}

.lg-trust-section .lg-stat-num {
  margin-bottom: 10px;
  color: #e0c88a;
  font-size: clamp(2.5rem, 4vw, 4.1rem);
  line-height: .85;
  letter-spacing: -.04em;
}

.lg-trust-section .lg-stat-label {
  max-width: 18ch;
  color: rgba(243,255,246,.66);
  font-size: .78rem;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .lg-trust-section .lg-trust-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .lg-trust-section .lg-trust-text h2,
  .lg-trust-section .lg-trust-sub {
    max-width: none;
  }

  .lg-trust-section .lg-trust-stats {
    width: min(100%, 680px);
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  #lgi-page #lg-app .lg-props-sell-card .lg-btn {
    width: fit-content !important;
    max-width: calc(100vw - 88px) !important;
    padding: 11px 20px !important;
    font-size: .88rem;
  }

  .lg-trust-section {
    padding-top: 68px;
    padding-bottom: 68px;
  }

  .lg-trust-section .lg-label {
    margin-left: auto;
    margin-right: auto;
  }

  .lg-trust-section .lg-trust-text {
    text-align: center;
  }

  .lg-trust-section .lg-trust-text h2 {
    font-size: clamp(3rem, 15vw, 4.35rem);
  }

  .lg-trust-section .lg-trust-sub {
    font-size: .96rem;
    line-height: 1.7;
  }

  .lg-trust-section .lg-trust-items {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .lg-trust-section .lg-trust-item {
    text-align: left;
  }

  #lgi-page .lg-trust-section .lg-btn-green {
    align-self: center;
    width: auto;
    min-width: 0;
    padding: 12px 22px;
  }

  .lg-trust-section .lg-trust-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 20px 14px;
    border-radius: 26px;
  }

  .lg-trust-section .lg-stat-card {
    min-height: 126px;
    padding: 18px 10px;
    border-radius: 16px;
  }

  .lg-trust-section .lg-stat-num {
    font-size: clamp(2.25rem, 12vw, 3.2rem);
  }
}

/* ── 22. Formulario de propiedad — operación en mobile ───── */
@media (max-width: 640px) {
  .lg-val-block--operation {
    padding: 24px 18px;
    border-radius: 24px;
  }

  .lg-val-block--operation .lg-val-block-header {
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 24px;
    padding-bottom: 18px;
  }

  .lg-val-block--operation .lg-val-num {
    width: 40px;
    height: 40px;
    min-width: 40px;
    font-size: .9rem;
  }

  .lg-val-block--operation .lg-val-block-header h3 {
    padding-top: 3px;
    font-size: clamp(1.35rem, 6.5vw, 1.75rem);
    line-height: 1.12;
    text-align: left;
  }

  .lg-val-block--operation .lg-val-field > label {
    display: block;
    margin-bottom: 12px;
    color: rgba(243,255,246,.72);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.4;
    text-transform: uppercase;
  }

  .lg-val-block--operation .lg-val-radios--objective {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 0 !important;
  }

  .lg-val-block--operation .lg-val-radios--objective .lg-val-radio {
    display: block;
    width: 100%;
  }

  .lg-val-block--operation .lg-val-radios--objective .lg-val-radio span {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 52px;
    padding: 14px 46px 14px 16px;
    align-items: center;
    border-radius: 15px;
    background: rgba(255,255,255,.065);
    color: rgba(243,255,246,.88);
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.35;
    text-align: left;
  }

  .lg-val-block--operation .lg-val-radios--objective .lg-val-radio span::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 16px;
    width: 20px;
    height: 20px;
    border: 1px solid rgba(201,168,76,.42);
    border-radius: 50%;
    transform: translateY(-50%);
  }

  .lg-val-block--operation .lg-val-radios--objective .lg-val-radio input:checked + span {
    border-color: #c9a84c;
    background: rgba(201,168,76,.12);
    color: #f3fff6;
    box-shadow: 0 8px 22px rgba(0,0,0,.14);
  }

  .lg-val-block--operation .lg-val-radios--objective .lg-val-radio input:checked + span::after {
    content: '✓';
    display: grid;
    place-items: center;
    border-color: #c9a84c;
    background: #c9a84c;
    color: #062116;
    font-size: .72rem;
    font-weight: 900;
  }

  .lg-val-block--operation .lg-val-divider {
    margin: 28px 0 24px;
  }

  .lg-val-block--operation .lg-val-radios--urgency {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 0 !important;
    padding: 6px;
    border: 1px solid rgba(201,168,76,.18);
    border-radius: 16px;
    background: rgba(0,0,0,.10);
  }

  .lg-val-block--operation .lg-val-radios--urgency .lg-val-radio {
    display: block;
    min-width: 0;
  }

  .lg-val-block--operation .lg-val-radios--urgency .lg-val-radio span {
    display: grid;
    place-items: center;
    width: 100%;
    min-height: 54px;
    padding: 9px 6px;
    border-color: transparent;
    border-radius: 12px;
    background: transparent;
    color: rgba(243,255,246,.68);
    font-size: .76rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
  }

  .lg-val-block--operation .lg-val-radios--urgency .lg-val-radio input:checked + span {
    border-color: rgba(201,168,76,.3);
    background: #c9a84c;
    color: #062116;
    box-shadow: 0 6px 18px rgba(0,0,0,.16);
  }
}

/* ── 23. Selector de ubicación para propiedades recibidas ── */
.lg-val-location-picker {
  margin-top: 10px;
  padding: 22px;
  border: 1px solid rgba(143,242,166,.18);
  border-radius: 22px;
  background: rgba(0,0,0,.12);
}

.lg-val-location-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 16px;
}

.lg-val-location-head > div {
  min-width: 0;
}

.lg-val-location-head label {
  display: block;
  margin-bottom: 6px;
  color: #f3fff6;
  font-size: .98rem;
  font-weight: 700;
}

.lg-val-location-head p {
  max-width: 620px;
  margin: 0;
  color: rgba(243,255,246,.62);
  font-size: .84rem;
  line-height: 1.55;
}

.lg-val-location-btn {
  flex: 0 0 auto;
  min-height: 42px;
  padding: 9px 16px;
  border: 1px solid rgba(201,168,76,.36);
  border-radius: 999px;
  background: transparent;
  color: #e0c88a;
  font-size: .82rem;
  font-weight: 700;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.lg-val-location-btn:hover,
.lg-val-location-btn:focus-visible {
  border-color: #c9a84c;
  background: rgba(201,168,76,.1);
  transform: translateY(-1px);
}

.lg-val-location-map {
  width: 100%;
  height: 420px;
  overflow: hidden;
  border: 2px solid rgba(143,242,166,.22);
  border-radius: 18px;
  background: #dfe8dd;
  box-shadow: 0 18px 48px rgba(0,0,0,.22);
}

.lg-val-location-map.is-invalid {
  border-color: #ff8a80;
  box-shadow: 0 0 0 4px rgba(255,82,82,.14), 0 18px 48px rgba(0,0,0,.22);
}

.lg-val-location-status {
  margin: 12px 2px 0 !important;
  color: rgba(243,255,246,.66);
  font-size: .8rem;
  line-height: 1.45;
}

.lg-val-location-status.is-selected {
  color: #dabc71;
}

.lg-val-location-status.is-error {
  color: #ffb4ad;
}

.lg-val-location-map .leaflet-control-attribution {
  font-size: 9px;
}

@media (max-width: 640px) {
  .lg-val-location-picker {
    margin-top: 4px;
    padding: 16px;
    border-radius: 18px;
  }

  .lg-val-location-head {
    flex-direction: column;
    gap: 14px;
  }

  .lg-val-location-btn {
    width: fit-content;
    min-width: 0;
    min-height: 44px;
  }

  .lg-val-location-map {
    height: 330px;
    border-radius: 15px;
  }
}

/* ── WhatsApp flotante: dorado con líneas negras ───────── */
.lgi-wa-float {
  background: linear-gradient(180deg, #d8b76a, #c9a84c 55%, #b3924a) !important;
  box-shadow: 0 4px 20px rgba(201,168,76,.45) !important;
}
.lgi-wa-float:hover {
  transform: scale(1.1);
  box-shadow: 0 6px 28px rgba(201,168,76,.6) !important;
}
.lgi-wa-float::before {
  border-color: rgba(201,168,76,.4) !important;
}
.lgi-wa-float svg {
  position: relative;
  z-index: 1;
}

/* ── 22. SERVICIOS — Página (premium / oliva profundo) ───── */
body.page-id-19 {
  background: #14190e !important;
}
body.page-id-19 #lgi-page {
  background:
    radial-gradient(1200px 480px at 78% -4%, rgba(38,44,28,.85), transparent 62%),
    radial-gradient(900px 420px at 8% 2%, rgba(202,168,76,.04), transparent 55%),
    linear-gradient(180deg, #0f140b 0%, #14190e 34%, #1a2012 100%);
}
body.page-id-19 #lgi-main > .lg-inmo:first-child {
  padding: 160px 24px 100px !important;
}
body.page-id-19 .lg-section-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 1060px;
  margin: 0 auto clamp(48px, 6vw, 88px);
}
body.page-id-19 .lg-section-header .lg-label {
  display: inline-block;
  padding: 7px 18px;
  border: 1px solid rgba(201,168,76,.35);
  border-radius: 999px;
  color: #c9a84c;
  letter-spacing: .22em;
  font-size: .7rem;
  margin-bottom: 22px;
}
body.page-id-19 .lg-section-header h1 {
  width: 100%;
  max-width: 1060px;
  font-family: var(--ff-title);
  font-size: clamp(2.8rem, 5.4vw, 5.6rem);
  font-style: normal;
  font-weight: 600;
  line-height: .96 !important;
  text-transform: uppercase;
  white-space: normal;
  text-wrap: balance;
  margin: 0 auto 20px;
  letter-spacing: .025em;
  transform: none;
  background: linear-gradient(178deg, #fbf2d6 0%, #ecd193 30%, #cfa95f 58%, #c0a355 78%, #a8863f 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter:
    drop-shadow(0 2px 2px rgba(10,8,0,.55))
    drop-shadow(0 10px 34px rgba(0,0,0,.5))
    drop-shadow(0 0 46px rgba(204,168,84,.16));
}
@media (max-width: 640px) {
  body.page-id-19 .lg-section-header h1 {
    font-size: clamp(2rem, 10vw, 2.7rem);
    line-height: 1 !important;
    letter-spacing: .015em;
  }
}
body.page-id-19 .lg-section-header p {
  color: rgba(243,241,232,.68);
  font-size: clamp(1rem, 1.5vw, 1.13rem);
  max-width: 560px;
  line-height: 1.8;
}
body.page-id-19 .lg-services-grid-page {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 28px;
  max-width: 1180px;
  margin: 0 auto;
}
body.page-id-19 .lg-service-card-page {
  flex: 1 1 300px;
  max-width: 380px;
  position: relative;
  background: linear-gradient(180deg, rgba(30,36,22,.96), rgba(16,20,12,.99));
  border: 1px solid rgba(201,168,76,.16);
  border-radius: 20px;
  padding: 46px 34px 40px;
  text-align: center;
  box-shadow: 0 22px 60px rgba(10,14,8,.42);
  transition: transform .32s cubic-bezier(.4,0,.2,1), box-shadow .32s ease, border-color .32s ease;
  overflow: hidden;
}
body.page-id-19 .lg-service-card-page::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,.55), transparent);
  opacity: .7;
}
body.page-id-19 .lg-service-card-page::after {
  content: "";
  position: absolute;
  top: -120px;
  right: -120px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201,168,76,.10), transparent 68%);
  pointer-events: none;
}
body.page-id-19 .lg-service-card-page:hover {
  transform: translateY(-7px);
  border-color: rgba(201,168,76,.4);
  box-shadow: 0 30px 80px rgba(10,14,8,.5);
}
body.page-id-19 .lg-service-icon {
  justify-content: center;
  margin-bottom: 28px;
}
body.page-id-19 .lg-service-icon .lgi-icon {
  width: 150px !important;
  height: 150px !important;
  object-fit: contain;
  filter: drop-shadow(0 8px 22px rgba(0,0,0,.42));
}
body.page-id-19 .lg-service-card-page h3 {
  font-family: var(--ff-title);
  font-size: 1.4rem;
  font-weight: 500;
  color: #f3f1e8;
  margin-bottom: 14px;
}
body.page-id-19 .lg-service-card-page p {
  font-size: .947rem;
  color: rgba(243,241,232,.62);
  line-height: 1.8;
}

@media (max-width: 720px) {
  body.page-id-19 #lgi-main > .lg-inmo:first-child { padding: 90px 18px 80px !important; }
  body.page-id-19 .lg-services-grid-page { grid-template-columns: 1fr; gap: 20px; }
  body.page-id-19 .lg-service-card-page { padding: 36px 26px 32px; }
}

/* ── HOME: verde oliva oscuro (paleta /servicios) ─────────── */
body.home .lg-hero {
  background: linear-gradient(180deg, #10150c 0%, #14190e 55%, #171d11 100%) !important;
}
body.home .lg-section-dark {
  background: linear-gradient(180deg, #13180e 0%, #14190e 60%, #191f12 100%) !important;
}
body.home .lg-cta-section {
  background: linear-gradient(180deg, #11160d 0%, #14190e 55%, #1a2012 100%) !important;
}
.lg-cta-section,
body.home .lg-cta-section {
  min-height: 50vh;
  min-height: 50svh;
  display: flex;
  align-items: center;
}
.lg-cta-section > .lg-container {
  width: 100%;
}

/* ── ACENTOS DORADOS — botones, cards, formularios ───────── */
:root {
  --lgi-gold:        #c9a84c;
  --lgi-gold-bright: #e0c366;
  --lgi-gold-soft:   rgba(201,168,76,.14);
  --lgi-gold-border: rgba(201,168,76,.35);
}

/* Botones principales (green → dorado) */
.lg-btn-green,
.lg-btn-green-sm,
#lgi-page .lg-btn-green,
#lgi-page .lg-btn-green-sm {
  background: linear-gradient(180deg, #e7cd7d, #c9a84c 58%, #b3924a) !important;
  border-color: #c9a84c !important;
  color: #201a08 !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.18) !important;
}
.lg-btn-green:hover,
.lg-btn-green-sm:hover,
#lgi-page .lg-btn-green:hover,
#lgi-page .lg-btn-green:focus-visible,
#lgi-page .lg-btn-green-sm:hover,
#lgi-page .lg-btn-green-sm:focus-visible {
  background: linear-gradient(180deg, #f0d68a, #d5b65a 55%, #bf9d4f) !important;
  border-color: #e0c366 !important;
  color: #201a08 !important;
  box-shadow: 0 8px 24px rgba(201,168,76,.2) !important;
  text-shadow: none;
}

/* Botones outline → dorado */
.lg-btn-outline-light,
.lg-btn-outline-dark {
  border-color: var(--lgi-gold-border) !important;
  color: #e0c366 !important;
}
.lg-btn-outline-light:hover,
.lg-btn-outline-dark:hover {
  border-color: var(--lgi-gold-bright) !important;
  background: var(--lgi-gold-soft) !important;
  color: #f0d68a !important;
}

/* CTA general y WhatsApp siguen con su identidad propia (no se toca lg-btn-wa) */

/* Cards de propiedades — borde y acentos dorados */
.lg-property-card,
#lg-app .lg-property-card {
  border: 1px solid rgba(201,168,76,.22);
  box-shadow: 0 14px 44px rgba(20,25,14,.18);
}
.lg-property-card:hover,
#lg-app .lg-property-card:hover {
  border-color: var(--lgi-gold-border);
  box-shadow: 0 22px 60px rgba(20,25,14,.26);
}
.lg-card-precio,
#lg-app .lg-card-precio {
  color: #b3924a;
}
.lg-card-btn-detail,
#lg-app .lg-card-btn-detail {
  background: linear-gradient(180deg, #e7cd7d, #c9a84c 58%, #b3924a);
  border-color: #c9a84c;
  color: #201a08;
}
.lg-card-btn-detail:hover {
  background: linear-gradient(180deg, #f0d68a, #d5b65a 55%, #bf9d4f);
  border-color: #e0c366;
  color: #201a08;
}

/* Cards de servicios (home + página) — borde/header dorado */
.lg-service-card {
  border: 1px solid rgba(201,168,76,.22);
}
.lg-service-card:hover {
  border-color: var(--lgi-gold-border);
}
.lg-service-card h3 { color: #e0c366; }
.lg-service-card::before {
  background: linear-gradient(90deg, transparent, rgba(201,168,76,.5), transparent);
}
.lg-service-card-link h3 { color: #e0c366; }
.lg-service-cta { color: #e0c366; }

/* Detalle de propiedad — precio, chips y botones dorados */
.lg-detail-precio { color: #b3924a; }
.lg-carac-icon { color: #b3924a; }

/* Formulario "Vender / Alquilar" — acentos dorados */
.lg-val-header .lg-label,
.lg-val-header h2 em {
  color: #e0c366;
}
.lg-val-header .lg-label {
  border-color: var(--lgi-gold-border);
  background: var(--lgi-gold-soft);
}
.lg-val-block {
  background: linear-gradient(145deg, rgba(18,23,13,.97), rgba(12,16,9,.99));
  border-color: rgba(201,168,76,.22);
}
.lg-val-divider { border-top-color: rgba(201,168,76,.22); }
.lg-val-field input,
.lg-val-field select,
.lg-val-field textarea {
  border-color: rgba(201,168,76,.3);
  background: transparent !important;
  color: #f3f1e8;
}
.lg-val-field input:focus,
.lg-val-field select:focus,
.lg-val-field textarea:focus {
  border-color: #c9a84c;
  box-shadow: 0 0 0 4px rgba(201,168,76,.22), inset 0 1px 0 rgba(255,255,255,.35);
}
.lg-val-field input::placeholder,
.lg-val-field textarea::placeholder { color: rgba(243,241,232,.46); }
.lg-val-radio span,
.lg-val-check span {
  border-color: rgba(201,168,76,.3);
  background: rgba(201,168,76,.06);
  color: rgba(243,241,232,.9);
}
.lg-val-radio:hover span,
.lg-val-check:hover span {
  border-color: rgba(201,168,76,.5);
  background: rgba(201,168,76,.12);
}
.lg-val-radio input:checked + span,
.lg-val-check input:checked + span {
  border-color: #c9a84c;
  background: rgba(201,168,76,.18);
  color: #e0c366;
}
.lg-val-radio input,
.lg-val-check input { accent-color: #c9a84c; }
.lg-val-tip {
  color: rgba(243,241,232,.8);
  background: rgba(201,168,76,.08);
  border-color: rgba(201,168,76,.2);
}
.req { color: #e0c366; }
.lg-val-submit-wrap .lg-btn,
.lg-val-submit-wrap .lg-btn-xl {
  background: linear-gradient(180deg, #e7cd7d, #c9a84c 58%, #b3924a) !important;
  border-color: #c9a84c !important;
  color: #201a08 !important;
}
.lg-val-submit-wrap .lg-btn:hover,
.lg-val-submit-wrap .lg-btn-xl:hover {
  background: linear-gradient(180deg, #f0d68a, #d5b65a 55%, #bf9d4f) !important;
  color: #201a08 !important;
}

/* ── TASACIÓN CTA — oliva oscuro (todos los tamaños) ─────── */
.lg-tasacion-cta.lg-section {
  background: linear-gradient(180deg, #10150c 0%, #0c1109 100%) !important;
  border-top: 1px solid rgba(201,168,76,.10);
  border-bottom: 1px solid rgba(201,168,76,.08);
  min-height: 50vh;
  min-height: 50svh;
  display: flex;
  align-items: center;
}
.lg-tasacion-cta > .lg-container {
  width: 100%;
}
.lg-tasacion-cta-inner {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.lg-tasacion-cta-text .lg-label {
  color: #dabc71 !important;
}
.lg-tasacion-cta-text h2 {
  color: #f3f1e8 !important;
}
.lg-tasacion-cta-text p {
  color: rgba(243,241,232,.78) !important;
}
.lg-tasacion-cta-icon {
  opacity: .7 !important;
}

@media (max-width: 640px) {
  .lg-tasacion-cta.lg-section {
    padding-top: 0 !important;
  }
  .lg-tasacion-cta .lg-container {
    padding-top: 2px !important;
  }
}

/* ════════════════════════════════════════════════════════════
   PROPIEDADES — estética oliva oscuro + dorado (copia /servicios)
   ════════════════════════════════════════════════════════════ */
body.page-id-9 {
  background: #14190e !important;
}
body.page-id-9 #lgi-page {
  background:
    radial-gradient(1200px 480px at 78% -4%, rgba(38,44,28,.85), transparent 62%),
    radial-gradient(900px 420px at 8% 2%, rgba(202,168,76,.04), transparent 55%),
    linear-gradient(180deg, #0f140b 0%, #14190e 34%, #1a2012 100%);
}
body.lgi-canvas #lg-app,
body.lgi-canvas #lg-app.lg-inmo {
  background:
    radial-gradient(1200px 480px at 78% -4%, rgba(38,44,28,.85), transparent 62%),
    radial-gradient(900px 420px at 8% 2%, rgba(202,168,76,.04), transparent 55%),
    linear-gradient(180deg, #0f140b 0%, #14190e 34%, #1a2012 100%) !important;
}

/* Encabezado editorial (igual que /servicios) */
body.lgi-canvas #lg-app .lg-props-discovery {
  margin-top: clamp(26px, 4vw, 54px);
  padding-top: clamp(12px, 2vw, 24px);
}
body.lgi-canvas #lg-app .lg-props-discovery-head {
  display: flex;
  flex-direction: column;
  align-items: center;
}
body.lgi-canvas #lg-app .lg-props-discovery-head::before {
  content: "PROPIEDADES";
  display: inline-block;
  padding: 7px 18px;
  border: 1px solid rgba(201,168,76,.35);
  border-radius: 999px;
  color: #c9a84c;
  background: rgba(201,168,76,.05);
  letter-spacing: .28em;
  font-size: .66rem;
  font-weight: 600;
  margin-bottom: 26px;
  box-sizing: border-box;
}
body.lgi-canvas #lg-app .lg-props-discovery-head h1 {
  width: 100%;
  max-width: 1060px;
  font-family: var(--ff-title);
  font-size: clamp(2.8rem, 5.4vw, 5.6rem);
  font-weight: 600;
  line-height: .96;
  text-transform: uppercase;
  font-style: normal;
  font-variant: normal;
  letter-spacing: .025em;
  text-wrap: balance;
  background: linear-gradient(180deg, #efd477 0%, #c9a84c 54%, #9f7935 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  filter:
    drop-shadow(0 2px 1px rgba(8,10,5,.7))
    drop-shadow(0 14px 32px rgba(0,0,0,.38));
}
body.lgi-canvas #lg-app .lg-props-discovery-head::after {
  content: "";
  width: 92px;
  height: 1px;
  margin-top: 30px;
  background: linear-gradient(90deg, transparent, #c9a84c 30%, #c9a84c 70%, transparent);
  box-shadow: 0 0 16px rgba(201,168,76,.25);
}

/* Títulos de rails y sell card */
body.lgi-canvas #lg-app .lg-props-rail-section > h3,
body.lgi-canvas #lg-app .lg-props-sell-card h3 {
  color: #f3f1e8;
}

/* Sell card — como cards de /servicios */
body.lgi-canvas #lg-app .lg-props-sell-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(30,36,22,.96), rgba(16,20,12,.99));
  border: 1px solid rgba(201,168,76,.2);
  border-radius: 22px;
  box-shadow: 0 22px 60px rgba(10,14,8,.42);
}
body.lgi-canvas #lg-app .lg-props-sell-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,.55), transparent);
}
body.lgi-canvas #lg-app .lg-props-sell-card p {
  color: rgba(243,241,232,.62);
}

/* Barra de filtros — oscura + dorada */
body.lgi-canvas #lg-app .lg-filters-wrap {
  background: rgba(21,26,15,.92);
  border: 1px solid rgba(201,168,76,.2);
  box-shadow: 0 28px 72px rgba(0,0,0,.34);
}
body.lgi-canvas #lg-app .lg-filters-head {
  background: linear-gradient(145deg, #0c1109 0%, #11160d 100%);
}
body.lgi-canvas #lg-app .lg-filters-head span { color: #e0c366; }
body.lgi-canvas #lg-app .lg-filters-head h2 { color: #f3f1e8; }
body.lgi-canvas #lg-app .lg-filters-head p { color: rgba(243,241,232,.64); }

/* Inputs, selects y custom selects — dorados sobre oscuro */
body.lgi-canvas #lg-app .lg-filters-inner .lgi-cs-trigger,
body.lgi-canvas #lg-app .lg-filter-select,
body.lgi-canvas #lg-app .lg-filter-input {
  background: rgba(12,16,9,.78) !important;
  border-color: rgba(201,168,76,.32) !important;
  color: #f3f1e8 !important;
}
body.lgi-canvas #lg-app .lg-filter-input::placeholder {
  color: #a9af9d !important;
}
body.lgi-canvas #lg-app .lg-filter-input:focus {
  border-color: rgba(201,168,76,.6) !important;
  background: rgba(16,20,12,.95) !important;
  box-shadow: 0 0 0 3px rgba(201,168,76,.14) !important;
}
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-trigger::after {
  border-top-color: rgba(201,168,76,.75) !important;
}
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-trigger:hover,
body.lgi-canvas #lg-app .lgi-cs-wrap--light.open .lgi-cs-trigger {
  border-color: rgba(201,168,76,.6) !important;
  background: rgba(20,25,14,.9) !important;
}
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-value { color: #f3f1e8 !important; }
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-dropdown {
  background: #161b10 !important;
  border: 1px solid rgba(201,168,76,.28) !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.5) !important;
}
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option { color: rgba(243,241,232,.85) !important; }
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option:hover,
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option.selected {
  background: rgba(201,168,76,.14) !important;
  color: #e0c366 !important;
}

/* Toggle "Apto crédito" */
body.lgi-canvas #lg-app .lg-filter-toggle {
  background: rgba(201,168,76,.12);
  border-color: rgba(201,168,76,.38);
}
body.lgi-canvas #lg-app .lg-filter-toggle::after {
  background: rgba(201,168,76,.65);
}
body.lgi-canvas #lg-app .lg-filter-check-label input:checked + .lg-filter-toggle {
  background: rgba(201,168,76,.22);
  border-color: #c9a84c;
}
body.lgi-canvas #lg-app .lg-filter-check-label input:checked + .lg-filter-toggle::after {
  background: #c9a84c;
}
body.lgi-canvas #lg-app .lg-filter-check-text { color: rgba(243,241,232,.85) !important; }

/* Botones de filtros */
body.lgi-canvas #lg-app #lg-btn-filtrar {
  background: linear-gradient(180deg, #e7cd7d, #c9a84c 58%, #b3924a) !important;
  border: 1.5px solid #c9a84c !important;
  color: #201a08 !important;
  box-shadow: 0 6px 22px rgba(201,168,76,.3) !important;
}
body.lgi-canvas #lg-app #lg-btn-filtrar:hover {
  background: linear-gradient(180deg, #f0d68a, #d5b65a 55%, #bf9d4f) !important;
  border-color: #e0c366 !important;
  color: #201a08 !important;
}
body.lgi-canvas #lg-app #lg-btn-limpiar,
body.lgi-canvas #lg-app #lg-btn-mapa {
  background: transparent !important;
  border: 1.5px solid rgba(201,168,76,.5) !important;
  color: #e0c366 !important;
  box-shadow: 0 0 0 rgba(0,0,0,0) !important;
}
body.lgi-canvas #lg-app #lg-btn-limpiar:hover,
body.lgi-canvas #lg-app #lg-btn-mapa:hover {
  background: rgba(201,168,76,.12) !important;
  border-color: #e0c366 !important;
  color: #f0d68a !important;
}

/* Cards de propiedades — oscuras con línea dorada superior */
body.lgi-canvas #lg-app .lg-property-card {
  position: relative;
  background: linear-gradient(180deg, rgba(30,36,22,.97), rgba(16,20,12,.99));
  border: 1px solid rgba(201,168,76,.18);
  border-radius: 18px;
  box-shadow: 0 20px 54px rgba(10,14,8,.4);
  overflow: hidden;
}
body.lgi-canvas #lg-app .lg-property-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  z-index: 2;
  background: linear-gradient(90deg, transparent, rgba(201,168,76,.55), transparent);
  pointer-events: none;
}
body.lgi-canvas #lg-app .lg-property-card:hover {
  border-color: rgba(201,168,76,.42);
  box-shadow: 0 30px 78px rgba(10,14,8,.5);
}
body.lgi-canvas #lg-app .lg-card-titulo { color: #f3f1e8; }
body.lgi-canvas #lg-app .lg-card-titulo a:hover { color: #e0c366; }
body.lgi-canvas #lg-app .lg-card-dir { color: rgba(243,241,232,.66); }
body.lgi-canvas #lg-app .lg-card-carac { color: rgba(243,241,232,.72); border-top-color: rgba(201,168,76,.16); }
body.lgi-canvas #lg-app .lg-card-carac strong { color: #c0c5b1; opacity: 1; }
body.lgi-canvas #lg-app .lg-card-precio { color: #e4cb7d; }

/* Contador, sin resultados, rail vacío, scrollbar y paginación */
body.lgi-canvas #lg-app #lg-contador,
body.lgi-canvas #lg-app .lg-no-results { color: rgba(243,241,232,.68) !important; }
body.lgi-canvas #lg-app .lg-props-rail { scrollbar-color: rgba(201,168,76,.4) transparent; }
body.lgi-canvas #lg-app .lg-props-rail::-webkit-scrollbar-thumb { background: rgba(201,168,76,.35); }
body.lgi-canvas #lg-app .lg-props-rail-empty {
  background: rgba(14,18,10,.6);
  border-color: rgba(201,168,76,.2);
  color: rgba(243,241,232,.66);
}
body.lgi-canvas #lg-app .lg-paginacion button {
  background: rgba(201,168,76,.1);
  border: 1.5px solid rgba(201,168,76,.28);
  color: rgba(243,241,232,.8);
}
body.lgi-canvas #lg-app .lg-paginacion button:hover,
body.lgi-canvas #lg-app .lg-paginacion button.active {
  background: #c9a84c;
  border-color: #c9a84c;
  color: #201a08;
  font-weight: 700;
}

@media (max-width: 640px) {
  body.lgi-canvas #lg-app .lg-props-discovery {
    margin-top: 24px;
    padding-top: 4px;
  }
  body.lgi-canvas #lg-app .lg-props-discovery-head::before { font-size: .65rem; margin-bottom: 16px; }
  body.lgi-canvas #lg-app .lg-props-discovery-head h1 {
    font-size: clamp(2rem, 10vw, 2.7rem);
    line-height: 1;
    letter-spacing: .015em;
  }
  body.lgi-canvas #lg-app .lg-props-discovery-head::after { margin-top: 22px; }
}

/* Public surfaces only: dashboard and login retain their own palette. */
body.lgi-canvas { background: #11160d !important; }
#lgi-page {
  background: radial-gradient(1000px 600px at 90% 0%, rgba(49,58,33,.28), transparent 70%),
    linear-gradient(180deg, #0f140b, #14190e 45%, #1a2012);
}
.lg-inmo {
  --lgi-bg: #11160d;
  --lgi-bg-alt: #1a2012;
  --lgi-card: #171d11;
  --lgi-border: rgba(201,168,76,.2);
  --lgi-text: #f3f1e8;
  --lgi-text-mid: #c4c6ba;
  --lgi-text-muted: #afb5a1;
  --lgi-green: #c9a84c;
  --lgi-green-light: #e0c88a;
  --lgi-green-bright: #dabc71;
  --lgi-green-pale: rgba(201,168,76,.07);
  color: var(--lgi-text);
}

/* Navigation and footer: generous logo space without narrow text columns. */
.lgi-nav { border-bottom: 1px solid rgba(201,168,76,.14); }
.lgi-nav-inner { gap: clamp(16px, 2vw, 36px); }
.lgi-nav-logo { flex: 0 1 390px; min-width: 0; }
.lgi-nav-logo-img { width: 100%; object-fit: contain !important; }
.lgi-nav-links-wrap { margin-left: auto; }
.lgi-nav-links li a { white-space: nowrap; }
.lgi-nav-links li a:hover,
.lgi-nav-links li a.active {
  background: rgba(201,168,76,.075);
  color: #e0c88a;
  box-shadow: inset 0 -1px rgba(201,168,76,.5);
}
.lgi-nav-mobile {
  background: #11160d;
  border-color: rgba(201,168,76,.2);
  box-shadow: 0 22px 40px rgba(0,0,0,.3);
}
.lgi-nav-mobile a { border-color: rgba(201,168,76,.15); }
.lgi-nav-mobile a:hover,
.lgi-nav-mobile a.active { color: #e0c88a; }
.lgi-nav-toggle { flex-shrink: 0; border-color: rgba(201,168,76,.3); }
.lgi-nav-toggle span { background: #e0c88a; }
.lgi-footer { border-top: 1px solid rgba(201,168,76,.16); }
.lgi-footer-grid {
  grid-template-columns: 1.15fr .85fr .85fr 1.4fr;
  gap: 36px 44px;
  padding: 44px 32px 36px;
}
.lgi-footer-brand .lgi-footer-logo-img {
  width: 320px;
  max-width: 100%;
  height: auto;
  margin: 20px 0 1px -18px;
}
.lgi-footer-brand-desc { max-width: 320px; }
#lgi-page .lgi-footer-col h4 {
  font-family: var(--ff-body);
  color: #dabc71;
  font-size: .7rem;
  letter-spacing: .16em;
  margin-bottom: 18px;
}
.lgi-footer-col ul li a,
.lgi-footer-ci { font-size: .84rem; color: #b5b9a9; }
.lgi-footer-col ul li a:hover,
.lgi-footer-ci:hover { color: #e0c88a; }
.lgi-footer-ci svg { color: #dabc71; }
.lgi-footer-bottom {
  border-color: rgba(201,168,76,.14);
  color: #989f8b;
  width: 100%;
  padding: 22px 32px;
}

/* Home: retain the hero artwork, carry the olive palette through every section. */
#lgi-page .lg-section-header h2 {
  font-weight: 600;
  font-size: clamp(2rem, 3.5vw, 3.25rem);
  line-height: 1.14;
  letter-spacing: -.02em;
  text-wrap: balance;
}
#lgi-page .lg-section-header h2 em,
#lgi-page .lg-cta-section h2 em { color: #e0c88a; }
body.home .lg-section-header .lg-label,
body.home .lg-cta-section .lg-label { color: #dabc71; }
body.home .lg-section-header p { color: #b7bcac; margin-top: 16px; }
body.home #propiedades .lg-section-header .lg-label {
  color: #73500d;
  text-shadow: 0 1px 0 rgba(255,255,255,.45);
}
body.home #propiedades .lg-section-header h2 {
  color: #182719;
  text-shadow: 0 1px 0 rgba(255,255,255,.42);
}
body.home #propiedades .lg-section-header p {
  color: #39473b;
  text-shadow: 0 1px 0 rgba(255,255,255,.38);
}
body.home #propiedades .lg-section-cta .lg-btn-outline-dark {
  background: #182719 !important;
  border-color: #182719 !important;
  color: #fffdf5 !important;
  box-shadow: 0 8px 20px rgba(24,39,25,.2);
}
body.home #propiedades .lg-section-cta .lg-btn-outline-dark:hover,
body.home #propiedades .lg-section-cta .lg-btn-outline-dark:focus-visible {
  background: #2f4932 !important;
  border-color: #2f4932 !important;
  color: #fffdf5 !important;
  box-shadow: 0 10px 24px rgba(24,39,25,.3) !important;
}
body.home .lg-property-card {
  background: linear-gradient(180deg, #1e2416, #10140c);
  border-radius: 18px;
  border-color: rgba(201,168,76,.22);
}
body.home .lg-card-precio { color: #e0c88a; }
body.home .lg-services-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; }
body.home .lg-service-card {
  flex: 1 1 190px;
  max-width: 290px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 32px 22px 28px;
  background: linear-gradient(180deg, #1e2416, #10140c);
  border-radius: 18px;
  box-shadow: inset 0 1px rgba(201,168,76,.16), 0 16px 36px rgba(0,0,0,.16);
}
body.home .lg-service-card h3 { color: #f3f1e8; margin-bottom: 16px !important; }
body.home .lg-service-card p { color: #b7bcac; }
body.home .lg-service-cta {
  margin-top: auto;
  padding-top: 22px;
  color: #e0c88a;
  font-size: .74rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
body.home .lg-service-icon .lgi-icon { width: 108px !important; height: 108px !important; }
body.home .lg-trust-text h2 { font-weight: 600; letter-spacing: -.035em; }

/* Refined controls, shared by cards and the property search. */
#lgi-page .lg-badge-op {
  padding: 6px 11px;
  border: 1px solid rgba(201,168,76,.4);
  border-radius: 999px;
  background: rgba(16,21,12,.94);
  color: #e0c88a;
  font-size: .63rem;
  font-weight: 600;
  letter-spacing: .09em;
}
.lg-property-card:focus-within { border-color: #c9a84c; }
#lg-app .lgi-cs-wrap { background: transparent !important; border-radius: 11px; }
#lg-app .lgi-cs-arrow { color: #dabc71; }
#lg-app .lgi-cs-wrap.open .lgi-cs-trigger {
  box-shadow: 0 0 0 3px rgba(201,168,76,.12);
}
#lg-app .lgi-cs-option.selected::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dabc71' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
}
#lg-app .lgi-cs-dropdown::-webkit-scrollbar-thumb { background: rgba(201,168,76,.35); }
body.lgi-canvas #lg-app .lg-props-rail-section > h3 {
  font-size: clamp(1.8rem, 3vw, 2.75rem);
  font-weight: 600;
  letter-spacing: -.02em;
}
#lg-app .lg-loading { color: #b7bcac; }
#lg-app #lg-properties-grid > [role="alert"] { color: #ffc7b0 !important; }
#lg-app .lg-filter-check-label input:focus-visible + .lg-filter-toggle {
  outline: 2px solid #dabc71;
  outline-offset: 4px;
}

/* Contact and valuation: quiet, transparent fields rather than white panels. */
#lgi-page .lg-contact-info h1,
#lgi-page .lg-val-header h1 {
  font-weight: 600;
  font-size: clamp(2.15rem, 4.4vw, 4.25rem);
  line-height: 1.08 !important;
  letter-spacing: .02em;
  text-transform: uppercase;
  text-wrap: balance;
  color: #e0c88a;
  text-shadow: 0 8px 30px rgba(0,0,0,.2);
}
#lgi-page .lg-contact-info h1 { margin-bottom: 22px; }
.lg-contact-wrap .lg-contact-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); }
.lg-contact-wrap .lg-contact-info > p { margin-bottom: 28px !important; color: #b7bcac; }
.lg-contact-wrap .lg-contact-form-wrap {
  background: linear-gradient(160deg, rgba(30,36,22,.85), rgba(14,18,10,.95));
  border-color: rgba(201,168,76,.24);
  border-radius: 20px;
  box-shadow: inset 0 1px rgba(201,168,76,.1), 0 24px 56px rgba(0,0,0,.18);
}
.lg-contact-wrap .lg-ci-item {
  min-width: 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(201,168,76,.16);
  border-radius: 0;
  padding: 12px 0;
  align-items: flex-start;
  color: #d2d4c8;
}
.lg-contact-wrap .lg-ci-item > span:first-child {
  min-width: 76px;
  color: #aeb5a0;
  font-size: .78rem;
  line-height: 1.7;
}
.lg-contact-wrap .lg-ci-item a { color: #e0c88a; }
.lg-contact-wrap .lg-ci-wa { color: #b2d7ac !important; }
.lg-contact-wrap .lg-ci-wa:hover { color: #d5efcb !important; background: rgba(127,174,106,.08); }
.lg-contact-wrap .lg-form-group :is(input, textarea),
.lg-val-field :is(input, select, textarea) {
  background: transparent !important;
  color: #f3f1e8;
  border: 1px solid rgba(201,168,76,.32);
  border-radius: 10px;
  box-shadow: none;
  min-height: 46px;
  text-align: left;
  color-scheme: dark;
}
.lg-contact-wrap .lg-form-group { align-items: stretch; text-align: left; }
.lg-contact-wrap .lg-form-group :is(input, textarea)::placeholder,
.lg-val-field :is(input, textarea)::placeholder { color: #a9af9d; }
.lg-contact-wrap .lg-form-group :is(input, textarea):focus,
.lg-val-field :is(input, select, textarea):focus {
  border-color: #c9a84c;
  box-shadow: 0 0 0 3px rgba(201,168,76,.12);
}
.lg-contact-wrap .lg-req { color: #e0c88a; }
.lg-contact-wrap .lg-form-msg.ok { background: #1f3020; color: #c8e3b5; border-color: #6a8854; }
.lg-contact-wrap .lg-form-msg.err { background: #301b17; color: #ffd1bd; border-color: #ab6b53; }
.lg-val-block { border-radius: 20px; }
.lg-val-upload-area .lg-val-upload-label { border: 0; border-radius: 16px; }
.lg-val-check-required input[type="checkbox"] { accent-color: #c9a84c; }
.lg-val-location-picker { border-color: rgba(201,168,76,.24); }
.lg-val-location-map:not(.is-invalid) { border-color: rgba(201,168,76,.24); }

/* Detail: editorial hierarchy with the same dark surfaces as the listing. */
#lgi-page .lg-detail-titulo {
  font-size: clamp(1.85rem, 2.8vw, 2.65rem);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: .008em;
  text-transform: uppercase;
  text-wrap: balance;
}
.lg-property-detail .lg-detail-precio { color: #e0c88a; }
.lg-property-detail .lg-badge-estado { filter: brightness(1.7) saturate(.55); }
.lg-property-detail .lg-detail-carac { background: rgba(201,168,76,.025); padding: 12px; }
.lg-property-detail .lg-carac-chip { background: transparent; }
.lg-property-detail .lg-carac-chip .lg-carac-icon { color: #dabc71; }
.lg-property-detail .lg-detail-desc { color: #c4c6ba; }
.lg-property-detail .lg-detail-section h3 { border-bottom: 1px solid rgba(201,168,76,.2); padding-bottom: 16px; margin-bottom: 20px !important; }
.lg-property-detail .lg-share-btn { background: transparent; border: 1px solid rgba(201,168,76,.25); color: #c9cdbd; min-height: 36px; }
.lg-property-detail .lg-share-btn:hover { color: #e0c88a; border-color: #c9a84c; }
.lg-property-detail .lg-gallery-main,
.lg-property-detail .lg-gallery-placeholder { border-radius: 18px; overflow: hidden; }
.lg-property-detail .lg-thumb.active { border-color: #c9a84c; }
.lg-inmo :is(.lg-btn-wa, .lg-btn-wa-lg, .lg-btn-wa-full) {
  background: linear-gradient(180deg, #e7cd7d, #c9a84c 58%, #b3924a) !important;
  border-color: #c9a84c !important;
  color: #201a08 !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.18) !important;
}
.lg-inmo :is(.lg-btn-wa, .lg-btn-wa-lg, .lg-btn-wa-full):hover {
  background: linear-gradient(180deg, #f0d68a, #d5b65a 55%, #bf9d4f) !important;
  border-color: #e0c366 !important;
  color: #201a08 !important;
  box-shadow: 0 8px 24px rgba(201,168,76,.2) !important;
}
.lg-props-page-header { border-bottom-color: rgba(201,168,76,.2); }
#lgi-page .lg-props-page-title {
  color: #e0c88a;
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .02em;
  text-wrap: balance;
}

@media (max-width: 1000px) {
  .lgi-footer-grid { column-gap: 28px; grid-template-columns: 1fr 1fr; }
}
@media (max-width: 900px) {
  .lgi-nav-inner { gap: 12px; }
  .lgi-nav-logo { flex: 1 1 auto; max-width: 360px; }
  .lgi-nav-logo-img { width: 100%; height: 58px; }
  .lgi-nav-links-wrap { display: none; }
}
@media (max-width: 768px) {
  .lg-contact-wrap .lg-contact-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  body.page-id-19 .lg-services-grid-page { width: 100%; padding-bottom: 0; }
  body.home .lg-service-card { flex-basis: 100%; max-width: 430px; }
  body.home .lg-trust-text h2 { font-size: clamp(2.6rem, 12vw, 3.8rem); }
  #lgi-page .lg-contact-info h1,
  #lgi-page .lg-val-header h1 { font-size: clamp(1.85rem, 8.5vw, 2.6rem); }
  .lg-contact-wrap .lg-form-group :is(input, textarea),
  .lg-val-field :is(input, select, textarea) { font-size: 1rem; }
  .lg-contact-wrap .lg-ci-items { gap: 0; }
  .lg-contact-wrap .lg-ci-item { align-items: center; }
  .lg-contact-wrap .lg-form-row { grid-template-columns: minmax(0, 1fr); }
  .lgi-footer-grid { gap: 32px 24px; padding: 38px 24px 32px; text-align: left; }
  #lgi-page .lgi-footer-grid > .lgi-footer-col { display: block; }
  #lgi-page .lgi-footer-col h4 { display: block; }
  .lgi-footer-brand { display: block; }
  .lgi-footer-brand-desc { max-width: 100%; }
  .lgi-footer-logo-img { width: 280px; height: auto; margin-bottom: 10px; }
  .lgi-footer-col { text-align: left; }
  .lgi-footer-grid > .lgi-footer-col:last-child { grid-column: 1 / -1; }
  .lgi-footer-contacts { align-items: flex-start; text-align: left; gap: 14px; }
  .lgi-footer-col ul li a { display: inline-block; padding: 5px 0; }
  .lgi-footer-bottom { padding: 20px 24px 92px; gap: 10px; justify-content: center; text-align: center; }
}

/* Compact footer: large identity, concise directory and icon-only contact. */
.lgi-footer--minimal {
  border-top: 1px solid rgba(201,168,76,.18);
}

.lgi-footer-compact {
  padding: 14px 32px 0;
}

.lgi-footer-logo-row {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

#lgi-page .lgi-footer-logo-row .lgi-footer-logo-img {
  width: min(100%, 780px);
  height: 112px;
  margin: 0;
  object-fit: cover;
  object-position: center;
}

.lgi-footer-tagline {
  max-width: 640px;
  margin: -2px auto 16px !important;
  color: #aeb3a2;
  font-size: .79rem;
  line-height: 1.5;
  text-align: center;
}

.lgi-footer-directory {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 0 16px;
  border-top: 1px solid rgba(201,168,76,.12);
}

.lgi-footer-link-group {
  min-width: 0;
}

.lgi-footer-group-title {
  display: block;
  margin-bottom: 9px;
  color: #dabc71;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .16em;
  line-height: 1;
  text-transform: uppercase;
}

.lgi-footer-link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 15px;
}

#lgi-page .lgi-footer-link-list a {
  border-bottom: 1px solid transparent;
  color: #b7bcac;
  font-size: .74rem;
  line-height: 1.35;
  white-space: nowrap;
  transition: color .2s ease, border-color .2s ease;
}

#lgi-page .lgi-footer-link-list a:hover,
#lgi-page .lgi-footer-link-list a:focus-visible {
  border-color: rgba(224,200,138,.6);
  color: #e0c88a;
}

.lgi-footer-contact-actions {
  display: flex;
  justify-content: center;
  gap: 8px;
}

#lgi-page .lgi-footer-contact-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(201,168,76,.3);
  border-radius: 50%;
  background: rgba(201,168,76,.04);
  color: #dabc71;
  transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}

#lgi-page .lgi-footer-contact-actions a:hover,
#lgi-page .lgi-footer-contact-actions a:focus-visible {
  border-color: #dabc71;
  background: rgba(201,168,76,.12);
  color: #f0d994;
  transform: translateY(-2px);
}

.lgi-footer-contact-actions svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.lgi-footer-contact-actions a:first-of-type svg {
  fill: currentColor;
  stroke: none;
}

.lgi-footer--minimal .lgi-footer-bottom {
  width: 100%;
  padding: 14px 0 16px;
  border-color: rgba(201,168,76,.12);
  color: #89907d;
  font-size: .68rem;
}

@media (max-width: 900px) {
  .lgi-footer-contact-actions {
    justify-content: center;
  }
}

@media (max-width: 640px) {
  .lgi-footer-compact {
    padding: 12px 20px 0;
  }

  #lgi-page .lgi-footer-logo-row .lgi-footer-logo-img {
    width: min(100%, 360px);
    height: 62px;
  }

  .lgi-footer-tagline {
    max-width: 320px;
    margin: 0 auto 14px !important;
    font-size: .73rem;
  }

  .lgi-footer-directory {
    padding: 13px 0 15px;
  }

  .lgi-footer-contact-actions {
    justify-content: center;
  }

  .lgi-footer--minimal .lgi-footer-bottom {
    align-items: flex-start;
    padding: 13px 76px 18px 0;
    gap: 6px;
    text-align: left;
  }
}

/* Identidad Gimenez & Ostoni: capa cromática sin alterar layouts ni estados. */
:root {
  --lgi-gold: var(--go-gold);
  --lgi-gold-bright: #bc9658;
  --lgi-gold-soft: rgba(168,129,64,.14);
  --lgi-gold-border: rgba(168,129,64,.35);
}

/* Las páginas y superficies oscuras conservan su contraste; la home y el
   panel usan marfil como lienzo claro donde no hay imagen o bloque especial. */
body.lgi-canvas { background: var(--go-ivory) !important; }
body.home #lgi-page { background: var(--go-ivory); }
#propiedades { background: var(--go-ivory); }

.lgi-nav,
.lgi-nav.scrolled,
.lgi-nav--dark,
.lgi-nav-mobile { background: var(--go-forest) !important; }
.lgi-footer { background: var(--go-forest); }
.lgi-nav,
.lgi-footer--minimal { border-color: rgba(168,129,64,.3); }
.lgi-nav-links li a:hover,
.lgi-nav-links li a.active {
  background: rgba(247,243,234,.1);
  color: var(--go-ivory);
  box-shadow: inset 0 -1px var(--go-gold);
}
.lgi-nav-mobile a:hover,
.lgi-nav-mobile a.active { color: var(--go-ivory); }
.lgi-nav-toggle span { background: var(--go-ivory); }
.lgi-footer-tagline,
.lgi-footer--minimal .lgi-footer-bottom { color: #d6e1d9; }
#lgi-page .lgi-footer-contact-actions a { color: var(--go-ivory); border-color: rgba(247,243,234,.42); }
#lgi-page .lgi-footer-contact-actions a:hover,
#lgi-page .lgi-footer-contact-actions a:focus-visible { color: var(--go-ivory); border-color: var(--go-gold); }

/* Una sola estética para acciones primarias; WhatsApp flotante conserva
   su icono, enlaces y animación. El ocre permanece en detalles pequeños. */
#lgi-page .lg-btn-green,
#lgi-page .lg-btn-green-sm,
.lg-val-submit-wrap .lg-btn,
.lg-val-submit-wrap .lg-btn-xl,
.lg-inmo :is(.lg-btn-wa, .lg-btn-wa-lg, .lg-btn-wa-full),
body.lgi-canvas #lg-app #lg-btn-filtrar,
#lgi-page #lg-app .lg-props-sell-card .lg-btn,
.lg-card-btn-detail,
#lg-app .lg-card-btn-detail,
.lgi-login-btn {
  background: var(--go-forest) !important;
  border-color: var(--go-forest) !important;
  color: var(--go-ivory) !important;
  text-shadow: none;
}
#lgi-page .lg-btn-green:hover,
#lgi-page .lg-btn-green:focus-visible,
#lgi-page .lg-btn-green-sm:hover,
#lgi-page .lg-btn-green-sm:focus-visible,
.lg-val-submit-wrap .lg-btn:hover,
.lg-val-submit-wrap .lg-btn-xl:hover,
.lg-inmo :is(.lg-btn-wa, .lg-btn-wa-lg, .lg-btn-wa-full):hover,
body.lgi-canvas #lg-app #lg-btn-filtrar:hover,
#lgi-page #lg-app .lg-props-sell-card .lg-btn:hover,
.lg-card-btn-detail:hover,
.lgi-login-btn:hover {
  background: #183d33 !important;
  border-color: #183d33 !important;
  color: var(--go-ivory) !important;
}
.lgi-wa-float { background: var(--go-forest) !important; box-shadow: 0 4px 20px rgba(33,77,64,.35) !important; }
.lgi-wa-float:hover { box-shadow: 0 6px 28px rgba(33,77,64,.5) !important; }
.lgi-wa-float::before { border-color: rgba(33,77,64,.4) !important; }
.lgi-wa-float svg path { stroke: var(--go-ivory); }

/* Bordes y focus de controles oscuros; no se alteran los avisos de estado. */
.lg-contact-wrap .lg-form-group :is(input, textarea),
.lg-val-field :is(input, select, textarea) { border-color: rgba(150,138,118,.5); }
.lg-contact-wrap .lg-form-group :is(input, textarea):focus,
.lg-val-field :is(input, select, textarea):focus,
body.lgi-canvas #lg-app .lg-filter-input:focus {
  border-color: var(--go-gold) !important;
  box-shadow: 0 0 0 3px rgba(168,129,64,.16) !important;
}

/* Los títulos grandes dejan de ser superficies doradas; el ocre queda en
   filetes, badges y hover, sobre las secciones oscuras que ya funcionaban. */
body.page-id-19 .lg-section-header h1,
body.lgi-canvas #lg-app .lg-props-discovery-head h1 {
  background: none;
  color: var(--go-ivory);
  -webkit-text-fill-color: var(--go-ivory);
}
body.home .lg-hero-slogan,
body.home .lg-hero-slogan span,
#lgi-page .lg-contact-info h1,
#lgi-page .lg-val-header h1 {
  color: var(--go-ivory);
  -webkit-text-fill-color: var(--go-ivory);
}
body.home #propiedades .lg-section-header h2 { color: var(--go-forest); }
body.home #propiedades .lg-section-header p { color: var(--go-graphite); }
body.home #propiedades .lg-section-header .lg-label { color: var(--go-gold); }
body.home #propiedades .lg-section-cta .lg-btn-outline-dark,
body.home #propiedades .lg-section-cta .lg-btn-outline-dark:hover,
body.home #propiedades .lg-section-cta .lg-btn-outline-dark:focus-visible {
  background: var(--go-forest) !important;
  border-color: var(--go-forest) !important;
  color: var(--go-ivory) !important;
}

/* HOME: misma fotografía a pantalla completa, ahora con el PNG real.
   El recorte se ajusta por ancho sin cambiar la imagen ni las demás secciones. */
body.home .lg-hero {
  display: flex !important;
  align-items: center;
  height: auto !important;
  min-height: max(680px, 88svh) !important;
  max-height: none !important;
  padding: calc(var(--nav-h) + 26px) clamp(20px, 6vw, 96px) 54px !important;
  background: var(--go-ivory) !important;
  isolation: isolate;
  line-height: normal !important;
  font-size: 1rem !important;
}
body.home .lg-hero-fullscreen-picture,
body.home .lg-hero-fullscreen-img {
  width: 100% !important;
  height: 100% !important;
}
body.home .lg-hero-fullscreen-picture { z-index: 0; }
body.home .lg-hero-fullscreen-img {
  object-fit: cover !important;
  object-position: center center !important;
}
body.home .lg-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(247,243,234,.68), rgba(247,243,234,.36) 33%, transparent 65%);
}
body.home .lg-hero-copy {
  position: relative;
  z-index: 2;
  width: min(100%, 565px);
  color: var(--go-graphite);
}
body.home .lg-hero-eyebrow {
  display: inline-block;
  margin-bottom: 18px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--go-gold);
  color: var(--go-forest);
  font: 700 .75rem/1.3 var(--ff-body);
  letter-spacing: .16em;
  text-transform: uppercase;
}
body.home .lg-hero .lg-hero-slogan {
  position: static !important;
  width: auto !important;
  transform: none !important;
  font-family: var(--ff-title) !important;
  font-size: clamp(3.8rem, 6.3vw, 6.6rem) !important;
  font-weight: 600 !important;
  line-height: .95 !important;
  letter-spacing: -.04em !important;
  text-align: left;
  text-wrap: balance;
}
body.home .lg-hero .lg-hero-slogan span {
  color: var(--go-graphite);
  -webkit-text-fill-color: var(--go-graphite);
  text-shadow: 0 1px 14px rgba(247,243,234,.45);
}
body.home .lg-hero .lg-hero-slogan span + span {
  margin-top: 0;
  color: var(--go-forest);
  -webkit-text-fill-color: var(--go-forest);
}
body.home .lg-hero-description {
  max-width: 490px;
  margin: 22px 0 24px !important;
  color: var(--go-graphite);
  font: 500 clamp(.91rem, 1.25vw, 1.04rem)/1.6 var(--ff-body);
  text-shadow: 0 1px 9px rgba(247,243,234,.7);
}
body.home .lg-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; }
body.home .lg-hero-actions .lg-btn { justify-content: center; }
body.home .lg-hero-actions .lg-btn-outline-dark {
  background: rgba(247,243,234,.9) !important;
  border-color: var(--go-forest) !important;
  color: var(--go-graphite) !important;
}
body.home .lg-hero-actions .lg-btn-outline-dark:hover,
body.home .lg-hero-actions .lg-btn-outline-dark:focus-visible {
  background: var(--go-ivory) !important;
  border-color: var(--go-gold) !important;
  color: var(--go-forest) !important;
}

/* El formulario usa lg-hs-* y el submit/redirect ya soportados por el JS;
   se presenta debajo de la foto para evitar superposiciones en mobile. */
body.home .lg-home-search { background: var(--go-ivory); padding: 22px 0 26px; }
body.home .lg-home-search-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  align-items: end;
  gap: 14px;
  padding: 20px;
  background: #fff;
  border: 1px solid var(--go-border);
  border-radius: var(--radius-lg);
  box-shadow: 0 7px 24px rgba(40,44,43,.08);
}
body.home .lg-home-search-form label { display: block; min-width: 0; }
body.home .lg-home-search-form label span {
  display: block;
  margin-bottom: 8px;
  color: var(--go-taupe);
  font: 700 .7rem/1.3 var(--ff-body);
  letter-spacing: .11em;
  text-transform: uppercase;
}
body.home .lg-home-search-form select {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid var(--go-border-strong);
  border-radius: 8px;
  background: var(--go-ivory);
  color: var(--go-graphite);
  font: 500 .85rem/1.3 var(--ff-body);
}
body.home .lg-home-search-form select:focus-visible,
body.home .lg-home-search-form .lg-btn:focus-visible {
  outline: 2px solid var(--go-gold);
  outline-offset: 2px;
}
body.home .lg-home-search-submit { min-height: 46px; }

/* Las mismas cards y consultas reales, con badges de operación de marca. */
body.home #lgi-page .lg-property-card .lg-badge-venta {
  background: var(--go-forest);
  border-color: var(--go-forest);
  color: var(--go-ivory);
}
body.home #lgi-page .lg-property-card .lg-badge-alquiler {
  background: var(--go-gold);
  border-color: var(--go-gold);
  color: #101a15;
}
body.home .lg-property-card:hover { transform: translateY(-2px); }
body.home .lg-property-card:hover .lg-card-image img { transform: scale(1.02); }
body.home #propiedades .lg-section-header .lg-label {
  display: inline-block;
  border-bottom: 1px solid var(--go-gold);
  padding-bottom: 7px;
}

@media (max-width: 1024px) {
  body.home .lg-hero-fullscreen-img { object-position: 62% center !important; }
  body.home .lg-hero .lg-hero-slogan { font-size: clamp(3.7rem, 7vw, 5.3rem) !important; }
}
@media (max-width: 760px) {
  body.home .lg-home-search-form { grid-template-columns: 1fr; }
  body.home .lg-home-search-submit { width: 100%; }
}
@media (max-width: 640px) {
  body.home .lg-hero {
    min-height: clamp(610px, 90svh, 720px) !important;
    padding: calc(var(--nav-h) + 26px) 20px 38px !important;
    align-items: flex-start !important;
  }
  body.home .lg-hero-fullscreen-img { object-position: 80% center !important; }
  body.home .lg-hero::before {
    background: linear-gradient(180deg, rgba(247,243,234,.88), rgba(247,243,234,.58) 33%, transparent 65%);
  }
  body.home .lg-hero .lg-hero-slogan {
    font-size: clamp(3.15rem, 12vw, 4rem) !important;
    line-height: .94 !important;
  }
  body.home .lg-hero-description { margin: 14px 0 16px !important; font-size: .87rem; line-height: 1.48; }
  body.home .lg-hero-actions .lg-btn { padding: 11px 14px; white-space: normal; }
  body.home .lg-home-search { padding: 14px 0 20px; }
  body.home .lg-home-search-form { padding: 16px; gap: 12px; }
}
@media (max-width: 375px) {
  body.home .lg-hero .lg-hero-slogan { font-size: clamp(2.85rem, 12vw, 3.25rem) !important; }
  body.home .lg-hero-actions { flex-direction: column; }
  body.home .lg-hero-actions .lg-btn { width: 100%; }
}

/* ============================================================
   FICHA DE PROPIEDAD: GALERIA PROTAGONISTA Y COLUMNA DE DATOS
   ============================================================ */
body.single-lg_property #lgi-page,
body.single-lg_property #lgi-main {
  background: var(--go-forest);
}

.single-lg_property .lg-property-detail {
  width: 100%;
  max-width: 1500px;
  padding-right: clamp(24px, 4vw, 64px);
  padding-bottom: 88px;
  padding-left: clamp(24px, 4vw, 64px);
}

body.single-lg_property #lgi-main > .lg-property-detail {
  padding-top: var(--nav-h) !important;
}

.single-lg_property .lg-detail-layout {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 420px);
  gap: clamp(36px, 4vw, 64px);
  align-items: center;
  min-height: calc(100svh - var(--nav-h));
  margin-bottom: 0;
  padding-top: clamp(36px, 5vh, 64px);
  padding-bottom: clamp(36px, 5vh, 64px);
}

.single-lg_property .lg-detail-gallery {
  min-width: 0;
}

.single-lg_property .lg-gallery-main {
  aspect-ratio: 16 / 10;
  border: 1px solid rgba(247,243,234,.2);
  border-radius: 12px;
  background: #173a30;
  box-shadow: 0 20px 48px rgba(8,30,24,.2);
}

.single-lg_property .lg-gallery-main #lg-main-img-link {
  overflow: hidden;
}

body.single-lg_property #lgi-page .lg-gallery-main img {
  width: 100%;
  height: 100% !important;
  max-width: none;
  object-fit: cover;
  object-position: center;
}

.single-lg_property .lg-gallery-prev,
.single-lg_property .lg-gallery-next {
  width: 46px;
  height: 46px;
  border: 1px solid rgba(247,243,234,.35);
  background: rgba(33,77,64,.82);
  box-shadow: 0 6px 18px rgba(8,30,24,.18);
}

.single-lg_property .lg-gallery-thumbs {
  gap: 12px;
  margin-top: 16px;
  padding: 2px 2px 8px;
}

.single-lg_property .lg-thumb {
  width: 104px;
  height: 72px;
  border-radius: 5px;
  opacity: .66;
}

.single-lg_property .lg-thumb:hover,
.single-lg_property .lg-thumb.active {
  opacity: 1;
}

.single-lg_property .lg-detail-info {
  top: calc(var(--nav-h) + 24px);
  gap: 15px;
  padding: 24px 0 24px clamp(28px, 3vw, 44px);
  border: 0;
  border-left: 1px solid rgba(168,129,64,.65);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.single-lg_property #lgi-page .lg-detail-titulo {
  color: var(--go-ivory);
  font-size: clamp(2rem, 2.9vw, 2.8rem);
  font-weight: 500;
  line-height: 1.08;
  letter-spacing: -.025em;
  text-transform: none;
}

.single-lg_property .lg-detail-precio {
  color: #e7c77b;
  font-size: clamp(1.8rem, 2.5vw, 2.15rem);
  font-weight: 600;
}

.single-lg_property .lg-detail-dir,
.single-lg_property .lg-detail-share {
  color: rgba(247,243,234,.72);
}

.single-lg_property .lg-badge-estado {
  color: #dceade !important;
  filter: none;
  font-size: .72rem;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.single-lg_property .lg-badge-dest {
  border-color: rgba(247,243,234,.3);
  background: rgba(247,243,234,.06);
  color: var(--go-ivory);
  font-size: .66rem;
  font-weight: 600;
}

.single-lg_property .lg-detail-carac {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px 24px;
  padding: 15px 0;
  border-top: 1px solid rgba(247,243,234,.16);
  border-bottom: 1px solid rgba(247,243,234,.16);
  border-radius: 0;
  background: transparent;
}

.single-lg_property .lg-carac-chip {
  min-width: 0;
  gap: 10px;
  padding: 7px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.single-lg_property .lg-carac-chip .lg-carac-icon {
  color: #d7b86e;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.single-lg_property .lg-carac-chip strong {
  color: var(--go-ivory);
  font-size: .84rem;
  font-weight: 500;
}

.single-lg_property .lg-detail-ctas .lg-btn {
  min-height: 48px;
  border-radius: 7px;
  box-shadow: none !important;
}

body.single-lg_property #lgi-page .lg-btn-wa-full {
  border-color: var(--go-ivory) !important;
  background: var(--go-ivory) !important;
  color: var(--go-forest) !important;
}

body.single-lg_property #lgi-page .lg-btn-wa-full:hover,
body.single-lg_property #lgi-page .lg-btn-wa-full:focus-visible {
  border-color: #fff !important;
  background: #fff !important;
  color: #183d33 !important;
}

.single-lg_property .lg-detail-share > span {
  flex: 0 0 100%;
  margin-bottom: 2px;
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.single-lg_property .lg-detail-share .lg-share-btn {
  flex: 1 1 0;
  border-color: rgba(247,243,234,.28);
  border-radius: 6px;
  color: rgba(247,243,234,.84);
  text-align: center;
  white-space: nowrap;
}

.single-lg_property .lg-detail-layout ~ .lg-detail-section {
  width: min(100%, 1120px);
  margin-right: auto;
  margin-left: auto;
}

.single-lg_property .lg-detail-layout + .lg-detail-section {
  padding-top: clamp(52px, 7vw, 88px);
}

.single-lg_property .lg-detail-section h3 {
  color: var(--go-ivory);
  border-bottom-color: rgba(168,129,64,.55);
  font-weight: 500;
}

.single-lg_property .lg-detail-desc {
  color: rgba(247,243,234,.78);
}

body.single-lg_property #lgi-page .lg-property-detail .lg-contact-form-wrap {
  border: 1px solid rgba(168,129,64,.28);
  border-radius: 14px;
  background: var(--go-ivory);
  box-shadow: 0 18px 42px rgba(8,30,24,.16);
}

body.single-lg_property #lgi-page .lg-property-detail .lg-contact-form-wrap .lg-form-group label {
  color: var(--go-forest);
}

body.single-lg_property #lgi-page .lg-property-detail .lg-contact-form-wrap .lg-form-group :is(input, textarea) {
  border-color: rgba(33,77,64,.24);
  background: #fff !important;
  color: var(--go-graphite);
  color-scheme: light;
}

body.single-lg_property #lgi-page .lg-property-detail .lg-contact-form-wrap .lg-form-group :is(input, textarea)::placeholder {
  color: var(--go-taupe);
}

body.single-lg_property #lgi-page .lg-property-detail .lg-contact-form-wrap .lg-form-group :is(input, textarea):focus {
  border-color: var(--go-gold);
  box-shadow: 0 0 0 3px rgba(168,129,64,.14);
}

@media (max-width: 1100px) {
  .single-lg_property .lg-property-detail {
    max-width: 920px;
  }

  .single-lg_property .lg-detail-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
    min-height: 0;
    padding-top: 36px;
    padding-bottom: 64px;
  }

  .single-lg_property .lg-detail-info {
    position: static;
    padding: 32px 0 0;
    border-top: 1px solid rgba(168,129,64,.65);
    border-left: 0;
  }
}

@media (max-width: 640px) {
  .single-lg_property .lg-property-detail {
    padding-right: 16px;
    padding-bottom: 56px;
    padding-left: 16px;
  }

  .single-lg_property .lg-detail-layout {
    gap: 28px;
    padding-top: 24px;
    padding-bottom: 48px;
  }

  .single-lg_property .lg-gallery-main {
    aspect-ratio: 4 / 3;
    border-radius: 9px;
  }

  .single-lg_property .lg-gallery-prev,
  .single-lg_property .lg-gallery-next {
    width: 44px;
    height: 44px;
  }

  .single-lg_property .lg-gallery-thumbs {
    gap: 9px;
    margin-top: 12px;
  }

  .single-lg_property .lg-thumb {
    width: 82px;
    height: 60px;
    border-radius: 4px;
  }

  .single-lg_property .lg-detail-info {
    gap: 14px;
    padding: 26px 0 0;
  }

  body.single-lg_property #lgi-page .lg-detail-titulo {
    font-size: clamp(1.75rem, 8vw, 2.2rem);
  }

  .single-lg_property .lg-detail-carac {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .single-lg_property .lg-detail-layout + .lg-detail-section {
    padding-top: 28px;
  }

  body.single-lg_property .lgi-wa-float {
    display: none;
  }
}

@media (max-width: 340px) {
  .single-lg_property .lg-detail-carac {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* ============================================================
   LIENZO CLARO UNIFICADO PARA LAS PAGINAS PUBLICAS
   ============================================================ */
body:is(.page-id-9, .page-id-19, .page-id-37, .page-id-10, .single-lg_property) #lgi-page,
body:is(.page-id-9, .page-id-19, .page-id-37, .page-id-10, .single-lg_property) #lgi-main {
  background: var(--go-ivory);
}

body:is(.page-id-9, .page-id-19, .page-id-37, .page-id-10, .single-lg_property) .lg-inmo {
  --lgi-bg: var(--go-ivory);
  --lgi-bg-alt: #efe9dd;
  --lgi-card: #fff;
  --lgi-border: rgba(40,44,43,.14);
  --lgi-text: var(--go-graphite);
  --lgi-text-mid: #50554e;
  --lgi-text-muted: var(--go-taupe);
  --lgi-green: var(--go-forest);
  --lgi-green-light: #c7ddd1;
  --lgi-green-bright: var(--go-forest);
  --lgi-green-pale: #e9efe9;
  color: var(--go-graphite);
}

/* Propiedades: buscador y resultados sobre marfil. */
body.page-id-9 #lgi-page,
body.page-id-9.lgi-canvas #lg-app,
body.page-id-9.lgi-canvas #lg-app.lg-inmo {
  background: var(--go-ivory) !important;
}

body.page-id-9.lgi-canvas #lg-app .lg-props-discovery-head::before {
  border-color: rgba(168,129,64,.34);
  background: rgba(168,129,64,.06);
  color: var(--go-gold);
}

body.page-id-9.lgi-canvas #lg-app .lg-props-discovery-head h1 {
  background: none;
  color: var(--go-forest);
  -webkit-text-fill-color: var(--go-forest);
  filter: none;
  font-size: clamp(3rem, 5.4vw, 5.7rem);
  font-weight: 600;
  letter-spacing: -.045em;
  line-height: .96;
  text-transform: none;
}

body.page-id-9.lgi-canvas #lg-app .lg-props-discovery-head::after {
  background: linear-gradient(90deg, transparent, var(--go-gold) 30%, var(--go-gold) 70%, transparent);
  box-shadow: none;
}

body.page-id-9.lgi-canvas #lg-app .lg-filters-wrap,
body.page-id-9.lgi-canvas #lg-app .lg-props-sell-card,
body.page-id-9.lgi-canvas #lg-app .lg-property-card {
  border-color: rgba(33,77,64,.14);
  background: #fff;
  box-shadow: 0 16px 42px rgba(40,44,43,.08);
}

body.page-id-9.lgi-canvas #lg-app .lg-filters-head {
  background: #fff;
  border-bottom-color: rgba(33,77,64,.12);
}

body.page-id-9.lgi-canvas #lg-app .lg-filters-head span { color: var(--go-gold); }
body.page-id-9.lgi-canvas #lg-app .lg-filters-head h2,
body.page-id-9.lgi-canvas #lg-app .lg-props-rail-section > h3,
body.page-id-9.lgi-canvas #lg-app .lg-props-sell-card h3 { color: var(--go-forest); }
body.page-id-9.lgi-canvas #lg-app .lg-filters-head p,
body.page-id-9.lgi-canvas #lg-app .lg-props-sell-card p { color: var(--go-taupe); }

body.page-id-9.lgi-canvas #lg-app .lg-filters-inner .lgi-cs-trigger,
body.page-id-9.lgi-canvas #lg-app .lg-filter-select,
body.page-id-9.lgi-canvas #lg-app .lg-filter-input {
  border-color: rgba(33,77,64,.22) !important;
  background: #fbfaf7 !important;
  color: var(--go-graphite) !important;
}

body.page-id-9.lgi-canvas #lg-app .lg-filter-input::placeholder {
  color: var(--go-taupe) !important;
}

body.page-id-9.lgi-canvas #lg-app .lg-filter-input:focus,
body.page-id-9.lgi-canvas #lg-app .lgi-cs-wrap--light.open .lgi-cs-trigger {
  border-color: var(--go-forest) !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(33,77,64,.12) !important;
}

body.page-id-9.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-value {
  color: var(--go-graphite) !important;
}

body.page-id-9.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-dropdown {
  border-color: rgba(33,77,64,.18) !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(40,44,43,.14) !important;
}

body.page-id-9.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option {
  color: var(--go-graphite) !important;
}

body.page-id-9.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option:hover,
body.page-id-9.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option.selected {
  background: #e9efe9 !important;
  color: var(--go-forest) !important;
}

body.page-id-9.lgi-canvas #lg-app .lg-filter-toggle {
  border-color: rgba(33,77,64,.3);
  background: #e9efe9;
}

body.page-id-9.lgi-canvas #lg-app .lg-filter-toggle::after { background: var(--go-taupe); }
body.page-id-9.lgi-canvas #lg-app .lg-filter-check-label input:checked + .lg-filter-toggle {
  border-color: var(--go-forest);
  background: rgba(33,77,64,.18);
}
body.page-id-9.lgi-canvas #lg-app .lg-filter-check-label input:checked + .lg-filter-toggle::after { background: var(--go-forest); }
body.page-id-9.lgi-canvas #lg-app .lg-filter-check-text { color: var(--go-graphite) !important; }

body.page-id-9.lgi-canvas #lg-app #lg-btn-limpiar,
body.page-id-9.lgi-canvas #lg-app #lg-btn-mapa {
  border-color: var(--go-forest) !important;
  background: transparent !important;
  color: var(--go-forest) !important;
}

body.page-id-9.lgi-canvas #lg-app #lg-btn-limpiar:hover,
body.page-id-9.lgi-canvas #lg-app #lg-btn-mapa:hover {
  border-color: var(--go-forest) !important;
  background: #e9efe9 !important;
  color: var(--go-forest) !important;
}

body.page-id-9.lgi-canvas #lg-app .lg-property-card::before,
body.page-id-9.lgi-canvas #lg-app .lg-props-sell-card::before {
  background: linear-gradient(90deg, transparent, rgba(168,129,64,.45), transparent);
}

body.page-id-9.lgi-canvas #lg-app .lg-property-card:hover {
  border-color: rgba(33,77,64,.3);
  box-shadow: 0 22px 54px rgba(40,44,43,.13);
}

body.page-id-9.lgi-canvas #lg-app .lg-card-titulo { color: var(--go-graphite); }
body.page-id-9.lgi-canvas #lg-app .lg-card-titulo a:hover { color: var(--go-forest); }
body.page-id-9.lgi-canvas #lg-app .lg-card-dir { color: var(--go-taupe); }
body.page-id-9.lgi-canvas #lg-app .lg-card-carac {
  border-top-color: rgba(33,77,64,.12);
  color: var(--go-graphite);
}
body.page-id-9.lgi-canvas #lg-app .lg-card-carac strong { color: var(--go-forest); }
body.page-id-9.lgi-canvas #lg-app .lg-card-precio { color: var(--go-forest); }
body.page-id-9.lgi-canvas #lg-app #lg-contador,
body.page-id-9.lgi-canvas #lg-app .lg-no-results { color: var(--go-taupe) !important; }
body.page-id-9.lgi-canvas #lg-app .lg-props-rail-empty {
  border-color: rgba(33,77,64,.14);
  background: rgba(255,255,255,.6);
  color: var(--go-taupe);
}
body.page-id-9.lgi-canvas #lg-app .lg-paginacion button {
  border-color: rgba(33,77,64,.22);
  background: #fff;
  color: var(--go-forest);
}
body.page-id-9.lgi-canvas #lg-app .lg-paginacion button:hover,
body.page-id-9.lgi-canvas #lg-app .lg-paginacion button.active {
  border-color: var(--go-forest);
  background: var(--go-forest);
  color: var(--go-ivory);
}

/* Servicios: tarjetas blancas y jerarquia editorial verde. */
body.page-id-19 #lgi-page { background: var(--go-ivory); }
body.page-id-19 .lg-section-header h1 {
  background: none;
  color: var(--go-forest);
  -webkit-text-fill-color: var(--go-forest);
  filter: none;
  font-size: clamp(3rem, 5.4vw, 5.7rem);
  font-weight: 600;
  letter-spacing: -.045em;
  text-transform: none;
}
body.page-id-19 .lg-section-header .lg-label {
  border-color: rgba(168,129,64,.34);
  background: rgba(168,129,64,.06);
  color: var(--go-gold);
}
body.page-id-19 .lg-section-header p { color: var(--go-taupe); }
body.page-id-19 .lg-service-card-page {
  border-color: rgba(33,77,64,.14);
  background: #fff;
  box-shadow: 0 16px 42px rgba(40,44,43,.08);
}
body.page-id-19 .lg-service-card-page::before {
  background: linear-gradient(90deg, transparent, rgba(168,129,64,.45), transparent);
}
body.page-id-19 .lg-service-card-page::after {
  background: radial-gradient(circle, rgba(33,77,64,.06), transparent 68%);
}
body.page-id-19 .lg-service-card-page:hover {
  border-color: rgba(33,77,64,.3);
  box-shadow: 0 24px 58px rgba(40,44,43,.13);
}
body.page-id-19 .lg-service-icon .lgi-icon {
  filter: drop-shadow(0 8px 18px rgba(40,44,43,.12));
}
body.page-id-19 .lg-service-card-page h3 { color: var(--go-forest); }
body.page-id-19 .lg-service-card-page p { color: var(--go-taupe); }

/* Contacto: datos sobre el lienzo y formulario blanco. */
body.page-id-10 #lgi-page .lg-contact-info h1 {
  color: var(--go-forest);
  -webkit-text-fill-color: var(--go-forest);
  font-weight: 600;
  letter-spacing: -.035em;
  text-transform: none;
}
body.page-id-10 .lg-contact-wrap .lg-contact-info > p { color: var(--go-taupe); }
body.page-id-10 .lg-contact-wrap .lg-ci-item {
  border-bottom-color: rgba(33,77,64,.14);
  background: transparent;
  color: var(--go-graphite);
}
body.page-id-10 .lg-contact-wrap .lg-ci-item > span:first-child { color: var(--go-taupe); }
body.page-id-10 .lg-contact-wrap .lg-ci-item a { color: var(--go-forest); }
body.page-id-10 .lg-contact-wrap .lg-ci-wa { color: var(--go-forest) !important; }
body.page-id-10 .lg-contact-wrap .lg-ci-wa:hover {
  background: rgba(33,77,64,.06);
  color: #183d33 !important;
}
body.page-id-10 .lg-contact-wrap .lg-contact-form-wrap {
  border-color: rgba(33,77,64,.14);
  background: #fff;
  box-shadow: 0 18px 46px rgba(40,44,43,.1);
}
body.page-id-10 .lg-contact-wrap .lg-form-group label { color: var(--go-forest); }
body.page-id-10 .lg-contact-wrap .lg-form-group :is(input, textarea) {
  border-color: rgba(33,77,64,.22);
  background: #fbfaf7 !important;
  color: var(--go-graphite);
  color-scheme: light;
}
body.page-id-10 .lg-contact-wrap .lg-form-group :is(input, textarea)::placeholder { color: var(--go-taupe); }
body.page-id-10 .lg-contact-wrap .lg-form-group :is(input, textarea):focus {
  border-color: var(--go-forest);
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(33,77,64,.12);
}

/* Tasacion: bloques blancos, controles claros y estados verdes. */
body.page-id-37 .lg-val-wrap {
  background: var(--go-ivory) !important;
  color: var(--go-graphite);
}
body.page-id-37 .lg-val-wrap::before {
  background: radial-gradient(800px 420px at 82% 0%, rgba(33,77,64,.05), transparent 68%);
}
body.page-id-37 #lgi-page .lg-val-header h1 {
  color: var(--go-graphite);
  -webkit-text-fill-color: var(--go-graphite);
  font-weight: 600;
  letter-spacing: -.035em;
  text-transform: none;
}
body.page-id-37 #lgi-page .lg-val-header h1 em {
  color: var(--go-forest);
  -webkit-text-fill-color: var(--go-forest);
}
body.page-id-37 .lg-val-header .lg-label {
  border-color: rgba(168,129,64,.34);
  background: rgba(168,129,64,.06);
  color: var(--go-gold);
}
body.page-id-37 .lg-val-subtitle { color: var(--go-taupe); }
body.page-id-37 .lg-val-block,
body.page-id-37 .lg-val-success {
  border-color: rgba(33,77,64,.14);
  background: #fff;
  color: var(--go-graphite);
  box-shadow: 0 16px 42px rgba(40,44,43,.08);
}
body.page-id-37 .lg-val-block-header {
  border-bottom-color: rgba(33,77,64,.12);
}
body.page-id-37 .lg-val-block-header h3,
body.page-id-37 .lg-val-success h3 { color: var(--go-forest); }
body.page-id-37 .lg-val-num {
  border-color: rgba(33,77,64,.28);
  background: #e9efe9;
  color: var(--go-forest);
}
body.page-id-37 .lg-val-divider { border-top-color: rgba(33,77,64,.12); }
body.page-id-37 .lg-val-field label,
body.page-id-37 .lg-val-check-label { color: var(--go-graphite); }
body.page-id-37 .lg-val-field :is(input, select, textarea) {
  border-color: rgba(33,77,64,.22);
  background: #fbfaf7 !important;
  color: var(--go-graphite);
  color-scheme: light;
}
body.page-id-37 .lg-val-field :is(input, textarea)::placeholder { color: var(--go-taupe); }
body.page-id-37 .lg-val-field :is(input, select, textarea):focus {
  border-color: var(--go-forest);
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(33,77,64,.12);
}
body.page-id-37 .lg-val-field select option {
  background: #fff;
  color: var(--go-graphite);
}
body.page-id-37 .lg-val-radio span,
body.page-id-37 .lg-val-check span {
  border-color: rgba(33,77,64,.2);
  background: #fbfaf7;
  color: var(--go-graphite);
}
body.page-id-37 .lg-val-radio:hover span,
body.page-id-37 .lg-val-check:hover span {
  border-color: rgba(33,77,64,.38);
  background: #e9efe9;
}
body.page-id-37 .lg-val-radio input:checked + span,
body.page-id-37 .lg-val-check input:checked + span {
  border-color: var(--go-forest);
  background: #e9efe9;
  color: var(--go-forest);
}
body.page-id-37 .lg-val-radio input,
body.page-id-37 .lg-val-check input { accent-color: var(--go-forest); }
body.page-id-37 .lg-val-check-required span {
  background: none !important;
  color: var(--go-graphite) !important;
}
body.page-id-37 .lg-val-tip {
  border-color: rgba(33,77,64,.14);
  background: #e9efe9;
  color: var(--go-graphite);
}
body.page-id-37 .lg-val-upload-area {
  border-color: rgba(33,77,64,.3);
  background: #fbfaf7;
}
body.page-id-37 .lg-val-upload-label,
body.page-id-37 .lg-val-upload-label span { color: var(--go-graphite); }
body.page-id-37 .lg-val-upload-label small { color: var(--go-taupe); }
body.page-id-37 .lg-val-location-picker {
  border-color: rgba(33,77,64,.14);
  background: #f7f5ef;
}
body.page-id-37 .lg-val-location-head label { color: var(--go-forest); }
body.page-id-37 .lg-val-location-head p,
body.page-id-37 .lg-val-location-status { color: var(--go-taupe); }
body.page-id-37 .lg-val-location-status.is-selected { color: var(--go-forest); }
body.page-id-37 .lg-val-location-btn {
  border-color: var(--go-forest);
  color: var(--go-forest);
}
body.page-id-37 .lg-val-location-btn:hover,
body.page-id-37 .lg-val-location-btn:focus-visible { background: #e9efe9; }
body.page-id-37 .lg-val-submit-note,
body.page-id-37 .lg-val-success p { color: var(--go-taupe); }
body.page-id-37 .req { color: var(--go-gold); }

/* Detalle de propiedad: misma base marfil, sin perder la composicion. */
body.single-lg_property #lgi-page,
body.single-lg_property #lgi-main { background: var(--go-ivory); }
body.single-lg_property .lg-gallery-main {
  border-color: rgba(33,77,64,.16);
  box-shadow: 0 20px 48px rgba(40,44,43,.12);
}
body.single-lg_property .lg-gallery-prev,
body.single-lg_property .lg-gallery-next {
  border-color: rgba(247,243,234,.5);
  background: rgba(33,77,64,.84);
}
body.single-lg_property .lg-detail-info { border-left-color: rgba(168,129,64,.62); }
body.single-lg_property #lgi-page .lg-detail-titulo { color: var(--go-forest); }
body.single-lg_property .lg-detail-precio { color: var(--go-gold); }
body.single-lg_property .lg-detail-dir,
body.single-lg_property .lg-detail-share { color: var(--go-taupe); }
body.single-lg_property .lg-badge-estado {
  color: var(--go-forest) !important;
}
body.single-lg_property .lg-badge-dest {
  border-color: rgba(33,77,64,.26);
  background: #e9efe9;
  color: var(--go-forest);
}
body.single-lg_property .lg-detail-carac {
  border-top-color: rgba(33,77,64,.14);
  border-bottom-color: rgba(33,77,64,.14);
}
body.single-lg_property .lg-carac-chip .lg-carac-icon { color: var(--go-gold); }
body.single-lg_property .lg-carac-chip strong { color: var(--go-graphite); }
body.single-lg_property #lgi-page .lg-btn-wa-full {
  border-color: var(--go-forest) !important;
  background: var(--go-forest) !important;
  color: var(--go-ivory) !important;
}
body.single-lg_property #lgi-page .lg-btn-wa-full:hover,
body.single-lg_property #lgi-page .lg-btn-wa-full:focus-visible {
  border-color: #183d33 !important;
  background: #183d33 !important;
  color: var(--go-ivory) !important;
}
body.single-lg_property .lg-detail-share .lg-share-btn {
  border-color: rgba(33,77,64,.24);
  color: var(--go-forest);
}
body.single-lg_property .lg-detail-share .lg-share-btn:hover {
  border-color: var(--go-forest);
  background: #e9efe9;
  color: var(--go-forest);
}
body.single-lg_property .lg-detail-section h3 {
  border-bottom-color: rgba(168,129,64,.42);
  color: var(--go-forest);
}
body.single-lg_property .lg-detail-desc { color: var(--go-graphite); }
body.single-lg_property .lg-contact-wrap .lg-contact-info > p { color: var(--go-taupe); }
body.single-lg_property .lg-contact-wrap .lg-ci-item {
  border-bottom-color: rgba(33,77,64,.14);
  color: var(--go-graphite);
}
body.single-lg_property .lg-contact-wrap .lg-ci-item > span:first-child { color: var(--go-taupe); }
body.single-lg_property .lg-contact-wrap .lg-ci-item a,
body.single-lg_property .lg-contact-wrap .lg-ci-wa { color: var(--go-forest) !important; }
body.single-lg_property #lgi-page .lg-property-detail .lg-contact-form-wrap {
  border-color: rgba(33,77,64,.14);
  background: #fff;
  box-shadow: 0 18px 42px rgba(40,44,43,.1);
}

@media (max-width: 640px) {
  body.page-id-37 .lg-val-block--operation .lg-val-field > label { color: var(--go-graphite); }
  body.page-id-37 .lg-val-block--operation .lg-val-radios--objective .lg-val-radio span {
    border-color: rgba(33,77,64,.18);
    background: #fbfaf7;
    color: var(--go-graphite);
  }
  body.page-id-37 .lg-val-block--operation .lg-val-radios--objective .lg-val-radio input:checked + span {
    border-color: var(--go-forest);
    background: #e9efe9;
    color: var(--go-forest);
    box-shadow: none;
  }
  body.page-id-37 .lg-val-block--operation .lg-val-radios--objective .lg-val-radio input:checked + span::after {
    border-color: var(--go-forest);
    background: var(--go-forest);
    color: var(--go-ivory);
  }
  body.page-id-37 .lg-val-block--operation .lg-val-radios--urgency {
    border-color: rgba(33,77,64,.14);
    background: #f7f5ef;
  }
  body.page-id-37 .lg-val-block--operation .lg-val-radios--urgency .lg-val-radio span {
    color: var(--go-taupe);
  }
  body.page-id-37 .lg-val-block--operation .lg-val-radios--urgency .lg-val-radio input:checked + span {
    border-color: var(--go-forest);
    background: var(--go-forest);
    color: var(--go-ivory);
    box-shadow: none;
  }
}

/* Catalogos secundarios: Venta, Alquiler, Credito y Temporario. */
body:is(.page-id-38, .page-id-39, .page-id-40, .page-id-41, .page-id-42) #lgi-page,
body:is(.page-id-38, .page-id-39, .page-id-40, .page-id-41, .page-id-42) #lgi-main {
  background: var(--go-ivory);
}

body:is(.page-id-38, .page-id-39, .page-id-40, .page-id-41, .page-id-42) .lg-inmo {
  --lgi-bg: var(--go-ivory);
  --lgi-bg-alt: #efe9dd;
  --lgi-card: #fff;
  --lgi-border: rgba(40,44,43,.14);
  --lgi-text: var(--go-graphite);
  --lgi-text-mid: #50554e;
  --lgi-text-muted: var(--go-taupe);
  --lgi-green: var(--go-forest);
  --lgi-green-light: #c7ddd1;
  --lgi-green-bright: var(--go-forest);
  --lgi-green-pale: #e9efe9;
  color: var(--go-graphite);
}

body:is(.page-id-38, .page-id-39, .page-id-40, .page-id-41) .lg-props-page-header {
  border-bottom-color: rgba(33,77,64,.14);
  background: var(--go-ivory);
}

body:is(.page-id-38, .page-id-39, .page-id-40, .page-id-41) #lgi-page .lg-props-page-title {
  color: var(--go-forest);
  font-size: clamp(2.2rem, 4vw, 3.8rem);
  font-weight: 600;
  letter-spacing: -.035em;
  text-transform: none;
}

body.lgi-canvas #lg-app,
body.lgi-canvas #lg-app.lg-inmo {
  background: var(--go-ivory) !important;
}

body.lgi-canvas #lg-app .lg-filters-wrap,
body.lgi-canvas #lg-app .lg-property-card {
  border-color: rgba(33,77,64,.14);
  background: #fff;
  box-shadow: 0 16px 42px rgba(40,44,43,.08);
}

body.lgi-canvas #lg-app .lg-filters-head {
  border-bottom-color: rgba(33,77,64,.12);
  background: #fff;
}

body.lgi-canvas #lg-app .lg-filters-head span { color: var(--go-gold); }
body.lgi-canvas #lg-app .lg-filters-head h2 { color: var(--go-forest); }
body.lgi-canvas #lg-app .lg-filters-head p { color: var(--go-taupe); }

body.lgi-canvas #lg-app .lg-filters-inner .lgi-cs-trigger,
body.lgi-canvas #lg-app .lg-filter-select,
body.lgi-canvas #lg-app .lg-filter-input {
  border-color: rgba(33,77,64,.22) !important;
  background: #fbfaf7 !important;
  color: var(--go-graphite) !important;
}

body.lgi-canvas #lg-app .lg-filter-input::placeholder { color: var(--go-taupe) !important; }
body.lgi-canvas #lg-app .lg-filter-input:focus,
body.lgi-canvas #lg-app .lgi-cs-wrap--light.open .lgi-cs-trigger {
  border-color: var(--go-forest) !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(33,77,64,.12) !important;
}
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-value { color: var(--go-graphite) !important; }
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-dropdown {
  border-color: rgba(33,77,64,.18) !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(40,44,43,.14) !important;
}
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option { color: var(--go-graphite) !important; }
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option:hover,
body.lgi-canvas #lg-app .lgi-cs-wrap--light .lgi-cs-option.selected {
  background: #e9efe9 !important;
  color: var(--go-forest) !important;
}

body.lgi-canvas #lg-app .lg-filter-toggle {
  border-color: rgba(33,77,64,.3);
  background: #e9efe9;
}
body.lgi-canvas #lg-app .lg-filter-toggle::after { background: var(--go-taupe); }
body.lgi-canvas #lg-app .lg-filter-check-label input:checked + .lg-filter-toggle {
  border-color: var(--go-forest);
  background: rgba(33,77,64,.18);
}
body.lgi-canvas #lg-app .lg-filter-check-label input:checked + .lg-filter-toggle::after { background: var(--go-forest); }
body.lgi-canvas #lg-app .lg-filter-check-text { color: var(--go-graphite) !important; }

body.lgi-canvas #lg-app #lg-btn-limpiar,
body.lgi-canvas #lg-app #lg-btn-mapa {
  border-color: var(--go-forest) !important;
  background: transparent !important;
  color: var(--go-forest) !important;
}
body.lgi-canvas #lg-app #lg-btn-limpiar:hover,
body.lgi-canvas #lg-app #lg-btn-mapa:hover {
  border-color: var(--go-forest) !important;
  background: #e9efe9 !important;
  color: var(--go-forest) !important;
}

body.lgi-canvas #lg-app .lg-property-card:hover {
  border-color: rgba(33,77,64,.3);
  box-shadow: 0 22px 54px rgba(40,44,43,.13);
}
body.lgi-canvas #lg-app .lg-card-titulo { color: var(--go-graphite); }
body.lgi-canvas #lg-app .lg-card-titulo a:hover { color: var(--go-forest); }
body.lgi-canvas #lg-app .lg-card-dir { color: var(--go-taupe); }
body.lgi-canvas #lg-app .lg-card-carac {
  border-top-color: rgba(33,77,64,.12);
  color: var(--go-graphite);
}
body.lgi-canvas #lg-app .lg-card-carac strong { color: var(--go-forest); }
body.lgi-canvas #lg-app .lg-card-precio { color: var(--go-forest); }
body.lgi-canvas #lg-app #lg-contador,
body.lgi-canvas #lg-app .lg-no-results { color: var(--go-taupe) !important; }
body.lgi-canvas #lg-app .lg-paginacion button {
  border-color: rgba(33,77,64,.22);
  background: #fff;
  color: var(--go-forest);
}
body.lgi-canvas #lg-app .lg-paginacion button:hover,
body.lgi-canvas #lg-app .lg-paginacion button.active {
  border-color: var(--go-forest);
  background: var(--go-forest);
  color: var(--go-ivory);
}

/* Emprendimientos comparte el mismo lenguaje claro. */
body.page-id-42 .lg-emprendimientos-wrap > .lg-section:first-child {
  background: var(--go-ivory);
}
body.page-id-42 .lg-section-header .lg-label { color: var(--go-gold); }
body.page-id-42 #lgi-page .lg-section-header h2 {
  color: var(--go-graphite);
  font-weight: 600;
  letter-spacing: -.035em;
}
body.page-id-42 #lgi-page .lg-section-header h2 em { color: var(--go-forest); }
body.page-id-42 .lg-section-header p { color: var(--go-taupe); }
body.page-id-42 .lg-emp-card {
  border-color: rgba(33,77,64,.14);
  background: #fff;
  box-shadow: 0 16px 42px rgba(40,44,43,.08);
}
body.page-id-42 .lg-emp-card:hover {
  border-color: rgba(33,77,64,.3);
  box-shadow: 0 22px 54px rgba(40,44,43,.13);
}
body.page-id-42 .lg-emp-card-icon { color: var(--go-forest); }
body.page-id-42 .lg-emp-card h3 { color: var(--go-gold); }
body.page-id-42 .lg-emp-card p,
body.page-id-42 .lg-section-cta p { color: var(--go-taupe) !important; }

/* Beige tostado: reduce la luminosidad sin perder contraste. */
:root {
  --go-page-bg: #e7dccb;
  --go-surface: #f4eee4;
}

body.home #lgi-page,
body.home #propiedades,
body.home .lg-home-search,
body:is(.page-id-9, .page-id-10, .page-id-19, .page-id-37, .page-id-38, .page-id-39, .page-id-40, .page-id-41, .page-id-42, .single-lg_property) #lgi-page,
body:is(.page-id-9, .page-id-10, .page-id-19, .page-id-37, .page-id-38, .page-id-39, .page-id-40, .page-id-41, .page-id-42, .single-lg_property) #lgi-main {
  background: var(--go-page-bg) !important;
}

body:is(.page-id-9, .page-id-10, .page-id-19, .page-id-37, .page-id-38, .page-id-39, .page-id-40, .page-id-41, .page-id-42, .single-lg_property) .lg-inmo {
  --lgi-bg: var(--go-page-bg);
  --lgi-bg-alt: #ded0bd;
  --lgi-card: var(--go-surface);
}

body.home .lg-home-search-form,
body.lgi-canvas #lg-app .lg-filters-wrap,
body.lgi-canvas #lg-app .lg-props-sell-card,
body.lgi-canvas #lg-app .lg-property-card,
body.page-id-19 .lg-service-card-page,
body.page-id-37 .lg-val-block,
body.page-id-37 .lg-val-success,
body.page-id-10 .lg-contact-wrap .lg-contact-form-wrap,
body.single-lg_property #lgi-page .lg-property-detail .lg-contact-form-wrap,
body.page-id-42 .lg-emp-card {
  background: var(--go-surface) !important;
}

body.lgi-canvas #lg-app,
body.lgi-canvas #lg-app.lg-inmo,
body:is(.page-id-38, .page-id-39, .page-id-40, .page-id-41) .lg-props-page-header,
body.page-id-37 .lg-val-wrap,
body.page-id-42 .lg-emprendimientos-wrap > .lg-section:first-child {
  background: var(--go-page-bg) !important;
}

body.page-id-9.lgi-canvas #lg-app,
body.page-id-9.lgi-canvas #lg-app.lg-inmo {
  background: var(--go-page-bg) !important;
}

/* Buscador de propiedades: verde institucional en la cabecera. */
body.lgi-canvas #lg-app .lg-filters-wrap {
  overflow: visible;
  border-color: rgba(33,77,64,.24);
  box-shadow: 0 18px 44px rgba(73,55,34,.12);
}

body.lgi-canvas #lg-app .lg-filters-head {
  position: relative;
  overflow: hidden;
  border-radius: inherit;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  border-bottom: 1px solid rgba(168,129,64,.48);
  background: linear-gradient(135deg, var(--go-forest) 0%, #183d33 100%) !important;
}

body.lgi-canvas #lg-app .lg-filters-head::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: min(34%, 320px);
  height: 100%;
  background: linear-gradient(120deg, transparent, rgba(247,243,234,.07));
  pointer-events: none;
}

body.lgi-canvas #lg-app .lg-filters-head span {
  color: #e2bf72 !important;
}

body.lgi-canvas #lg-app .lg-filters-head h2 {
  color: var(--go-ivory) !important;
}

body.lgi-canvas #lg-app .lg-filters-head p {
  color: rgba(247,243,234,.74) !important;
}

body.lgi-canvas #lg-app .lg-filters-inner {
  border-radius: inherit;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background: linear-gradient(180deg, rgba(33,77,64,.055), transparent 72%), var(--go-surface);
}

/* Home: buscador compacto superpuesto a la fotografía del hero. */
body.home .lg-home-search {
  position: relative;
  z-index: 5;
  margin-top: -150px;
  padding: 0 0 40px;
  background: transparent !important;
}

body.home .lg-home-search .lg-container {
  padding-right: clamp(20px, 4vw, 48px);
  padding-left: clamp(20px, 4vw, 48px);
}

body.home .lg-home-search-form {
  width: min(100%, 960px);
  margin: 0 auto;
  padding: 18px;
  border: 1px solid rgba(33,77,64,.2);
  border-radius: 24px;
  background: rgba(244,238,228,.96) !important;
  box-shadow: 0 22px 54px rgba(44,35,24,.2);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

body.home .lg-home-search-form select {
  background-color: rgba(255,255,255,.82);
}

/* Home: Servicios y Confianza abandonan los fondos oscuros. */
body.home #servicios {
  min-height: 0;
  display: block;
  padding-top: clamp(88px, 9vw, 132px);
  padding-bottom: clamp(88px, 9vw, 132px);
  background: var(--go-page-bg) !important;
}

body.home #servicios::before {
  background:
    radial-gradient(circle at 12% 18%, rgba(33,77,64,.07), transparent 34%),
    radial-gradient(circle at 88% 82%, rgba(168,129,64,.09), transparent 32%);
}

body.home #servicios .lg-section-header .lg-label {
  color: var(--go-gold);
}

body.home #servicios .lg-section-header h2 {
  color: var(--go-forest);
}

body.home #servicios .lg-section-header h2 em {
  color: var(--go-gold);
}

body.home #servicios .lg-service-card {
  border-color: rgba(33,77,64,.16);
  background: var(--go-surface);
  box-shadow: 0 16px 38px rgba(73,55,34,.1);
}

body.home #servicios .lg-service-card:hover,
body.home #servicios .lg-service-card:focus-visible {
  border-color: rgba(33,77,64,.36);
  background: #f8f3ea;
  box-shadow: 0 22px 48px rgba(73,55,34,.15);
}

body.home #servicios .lg-service-card h3 {
  color: var(--go-forest);
}

body.home #servicios .lg-service-card p {
  color: var(--go-taupe);
}

body.home #servicios .lg-service-cta {
  color: var(--go-gold);
}

body.home .lg-trust-section {
  min-height: 0;
  display: block;
  padding-top: clamp(88px, 9vw, 132px);
  padding-bottom: clamp(88px, 9vw, 132px);
  background:
    radial-gradient(circle at 90% 12%, rgba(33,77,64,.07), transparent 30%),
    var(--go-surface) !important;
}

body.home .lg-trust-section::before {
  border-color: rgba(33,77,64,.1);
  box-shadow: 0 0 0 54px rgba(33,77,64,.025), 0 0 0 108px rgba(33,77,64,.018);
}

body.home .lg-trust-section .lg-label {
  border-color: rgba(168,129,64,.34);
  color: var(--go-gold);
}

body.home .lg-trust-section .lg-trust-text h2 {
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-trust-sub {
  color: var(--go-taupe);
}

body.home .lg-trust-section .lg-trust-item {
  border-color: rgba(33,77,64,.14);
  background: var(--go-page-bg);
  box-shadow: 0 10px 26px rgba(73,55,34,.07);
}

body.home .lg-trust-section .lg-trust-item:hover {
  border-color: rgba(33,77,64,.32);
  box-shadow: 0 16px 36px rgba(73,55,34,.12);
}

body.home .lg-trust-section .lg-trust-icon {
  border-color: rgba(33,77,64,.2);
  background: rgba(33,77,64,.08);
  color: var(--go-forest);
  box-shadow: none;
}

body.home .lg-trust-section .lg-trust-item strong {
  color: var(--go-graphite);
}

body.home .lg-trust-section .lg-trust-item > div > span {
  color: var(--go-taupe);
}

body.home .lg-trust-section .lg-trust-stats {
  border-color: rgba(168,129,64,.26);
  background:
    radial-gradient(circle at 90% 8%, rgba(168,129,64,.08), transparent 40%),
    var(--go-page-bg);
  box-shadow: 0 24px 58px rgba(73,55,34,.13);
}

body.home .lg-trust-section .lg-trust-stats-head span {
  color: var(--go-gold);
}

body.home .lg-trust-section .lg-trust-stats-head strong {
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-stat-card {
  border-color: rgba(33,77,64,.14);
  background: rgba(244,238,228,.78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.38);
}

body.home .lg-trust-section .lg-stat-card:hover {
  border-color: rgba(33,77,64,.3);
  background: var(--go-surface);
}

body.home .lg-trust-section .lg-stat-num {
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-stat-label {
  color: var(--go-taupe);
}

@media (max-width: 760px) {
  body.home .lg-hero {
    min-height: 850px !important;
    align-items: flex-start !important;
    padding-top: calc(var(--nav-h) + 38px) !important;
  }

  body.home .lg-home-search {
    margin-top: -360px;
    padding-bottom: 29px;
  }

  body.home .lg-home-search-form {
    width: min(100%, 430px);
    padding: 18px;
    border-radius: 22px;
  }
}

/* Home: contenedores verdes sobre las superficies beige. */
body.home .lg-home-search-form {
  border-color: rgba(226,191,114,.4);
  background: linear-gradient(135deg, var(--go-forest), #183d33) !important;
  box-shadow: 0 22px 54px rgba(25,48,40,.28);
}

body.home .lg-home-search-form label span {
  color: #e2bf72;
}

body.home .lg-home-search-form select {
  border-color: rgba(247,243,234,.42);
  background-color: var(--go-ivory);
  color: var(--go-graphite);
}

body.home #lgi-page .lg-home-search-form .lg-home-search-submit {
  border-color: #d5b15f !important;
  background: #d5b15f !important;
  color: #14271f !important;
  box-shadow: 0 8px 20px rgba(9,29,23,.22) !important;
}

body.home #lgi-page .lg-home-search-form .lg-home-search-submit:hover,
body.home #lgi-page .lg-home-search-form .lg-home-search-submit:focus-visible {
  border-color: #e4c87f !important;
  background: #e4c87f !important;
  color: #14271f !important;
}

body.home #servicios .lg-service-card {
  border-color: rgba(226,191,114,.28);
  background: linear-gradient(155deg, var(--go-forest), #183d33);
  box-shadow: 0 18px 42px rgba(25,48,40,.2);
}

body.home #servicios .lg-service-card:hover,
body.home #servicios .lg-service-card:focus-visible {
  border-color: rgba(226,191,114,.58);
  background: linear-gradient(155deg, #285b4c, #1c4439);
  box-shadow: 0 24px 50px rgba(25,48,40,.28);
}

body.home #servicios .lg-service-card h3 {
  color: var(--go-ivory);
}

body.home #servicios .lg-service-card p {
  color: rgba(247,243,234,.72);
}

body.home #servicios .lg-service-cta {
  color: #e2bf72;
}

body.home .lg-trust-section .lg-trust-item {
  border-color: rgba(226,191,114,.24);
  background: linear-gradient(145deg, var(--go-forest), #1a4237);
  box-shadow: 0 12px 28px rgba(25,48,40,.17);
}

body.home .lg-trust-section .lg-trust-item:hover {
  border-color: rgba(226,191,114,.52);
  background: linear-gradient(145deg, #285b4c, #1d473b);
  box-shadow: 0 18px 38px rgba(25,48,40,.24);
}

body.home .lg-trust-section .lg-trust-icon {
  border-color: rgba(226,191,114,.34);
  background: rgba(226,191,114,.1);
  color: #e2bf72;
}

body.home .lg-trust-section .lg-trust-item strong {
  color: var(--go-ivory);
}

body.home .lg-trust-section .lg-trust-item > div > span {
  color: rgba(247,243,234,.68);
}

body.home .lg-trust-section .lg-trust-stats {
  border-color: rgba(226,191,114,.32);
  background:
    radial-gradient(circle at 92% 8%, rgba(226,191,114,.1), transparent 38%),
    linear-gradient(145deg, var(--go-forest), #183d33);
  box-shadow: 0 26px 60px rgba(25,48,40,.24);
}

body.home .lg-trust-section .lg-trust-stats-head span {
  color: #e2bf72;
}

body.home .lg-trust-section .lg-trust-stats-head strong {
  color: var(--go-ivory);
}

body.home .lg-trust-section .lg-stat-card {
  border-color: rgba(226,191,114,.2);
  background: rgba(247,243,234,.08);
  box-shadow: inset 0 1px 0 rgba(247,243,234,.08);
}

body.home .lg-trust-section .lg-stat-card:hover {
  border-color: rgba(226,191,114,.42);
  background: rgba(247,243,234,.12);
}

body.home .lg-trust-section .lg-stat-num {
  color: #e2bf72;
}

body.home .lg-trust-section .lg-stat-label {
  color: rgba(247,243,234,.68);
}

/* Home: superficies claras con el verde reservado para detalles. */
body.home .lg-trust-section .lg-trust-text h2 {
  width: 100%;
  max-width: none;
  margin-right: auto;
  margin-left: auto;
  color: var(--go-forest);
  font-size: clamp(3.5rem, 6vw, 6.4rem);
  line-height: .92;
  letter-spacing: -.055em;
  text-align: center;
}

body.home #servicios .lg-service-card {
  border-color: rgba(33,77,64,.18);
  background: #fbf8f2;
  box-shadow:
    inset 0 4px 0 var(--go-forest),
    0 16px 38px rgba(73,55,34,.11);
}

body.home #servicios .lg-service-card:hover,
body.home #servicios .lg-service-card:focus-visible {
  border-color: rgba(33,77,64,.38);
  background: #fffdf8;
  box-shadow:
    inset 0 4px 0 #2f6655,
    0 22px 48px rgba(73,55,34,.16);
}

body.home #servicios .lg-service-card h3 {
  color: var(--go-forest);
}

body.home #servicios .lg-service-card p {
  color: var(--go-taupe);
}

body.home #servicios .lg-service-cta {
  margin-top: 22px;
  padding: 7px 12px;
  border: 1px solid rgba(33,77,64,.16);
  border-radius: 999px;
  background: rgba(33,77,64,.07);
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-trust-item {
  border-color: rgba(33,77,64,.16);
  border-left: 4px solid var(--go-forest);
  background: #fffdf8;
  box-shadow: 0 12px 28px rgba(73,55,34,.09);
}

body.home .lg-trust-section .lg-trust-item:hover {
  border-color: rgba(33,77,64,.34);
  border-left-color: var(--go-forest);
  background: #fff;
  box-shadow: 0 18px 38px rgba(73,55,34,.14);
}

body.home .lg-trust-section .lg-trust-icon {
  border-color: rgba(33,77,64,.2);
  background: rgba(33,77,64,.09);
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-trust-item strong {
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-trust-item > div > span {
  color: var(--go-taupe);
}

body.home .lg-trust-section .lg-trust-stats {
  border-color: rgba(33,77,64,.2);
  background:
    radial-gradient(circle at 92% 8%, rgba(33,77,64,.07), transparent 38%),
    #fffdf8;
  box-shadow:
    inset 0 4px 0 var(--go-forest),
    0 24px 56px rgba(73,55,34,.14);
}

body.home .lg-trust-section .lg-trust-stats-head span {
  color: var(--go-gold);
}

body.home .lg-trust-section .lg-trust-stats-head strong {
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-stat-card {
  border-color: rgba(33,77,64,.14);
  background: rgba(33,77,64,.065);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65);
}

body.home .lg-trust-section .lg-stat-card:hover {
  border-color: rgba(33,77,64,.3);
  background: rgba(33,77,64,.1);
}

body.home .lg-trust-section .lg-stat-num {
  color: var(--go-forest);
}

body.home .lg-trust-section .lg-stat-label {
  color: var(--go-taupe);
}

@media (max-width: 640px) {
  body.home .lg-trust-section .lg-trust-text h2 {
    font-size: clamp(3.15rem, 13vw, 4.5rem);
    letter-spacing: -.06em;
  }
}

/* Panel de resultados: tarjeta verde y cifras blancas. */
body.home .lg-trust-section .lg-trust-stats {
  border-color: rgba(226,191,114,.32);
  background:
    radial-gradient(circle at 92% 8%, rgba(226,191,114,.11), transparent 38%),
    linear-gradient(145deg, var(--go-forest), #183d33);
  box-shadow: 0 26px 60px rgba(25,48,40,.24);
}

body.home .lg-trust-section .lg-trust-stats-head strong {
  color: var(--go-ivory);
}

body.home .lg-trust-section .lg-stat-card,
body.home .lg-trust-section .lg-stat-card:hover {
  border-color: rgba(247,243,234,.18);
  background: rgba(247,243,234,.08);
  box-shadow: inset 0 1px 0 rgba(247,243,234,.08);
}

body.home .lg-trust-section .lg-stat-num {
  color: #fff;
}

body.home .lg-trust-section .lg-stat-label {
  color: rgba(247,243,234,.72);
}
