/* =========================================================
   TU PARCELA LISTA — INTERFAZ MINIMALISTA 2026
   Capa visual no destructiva. Mantiene IDs, lógica y flujos.
   ========================================================= */

:root{
  --tpl-ink:#10233f;
  --tpl-muted:#65758b;
  --tpl-line:#e5eaf0;
  --tpl-soft:#f7f9fb;
  --tpl-white:#ffffff;
  --tpl-blue:#075985;
  --tpl-teal:#0f8b8d;
  --tpl-yellow:#f4c430;
  --tpl-shadow:0 18px 50px rgba(16,35,63,.08);
  --tpl-shadow-soft:0 8px 28px rgba(16,35,63,.06);
  --tpl-radius:22px;
}

html{scroll-behavior:smooth}
body{
  background:#fff!important;
  color:var(--tpl-ink)!important;
  letter-spacing:-.01em;
}

.container{max-width:1240px!important}

/* Navegación ligera, similar a productos digitales modernos */
html body .navbar{
  min-height:72px!important;
  padding:0!important;
  background:rgba(255,255,255,.94)!important;
  border-bottom:1px solid rgba(16,35,63,.08)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px)!important;
}
html body .navbar-inner{min-height:72px!important}
html body .brand-logo-img{height:46px!important;max-width:185px!important}
html body .nav-links{gap:6px!important}
html body .nav-links a{
  color:#41516a!important;
  font-size:.91rem!important;
  font-weight:650!important;
  padding:10px 12px!important;
  border-radius:12px!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .nav-links a:hover{
  color:var(--tpl-ink)!important;
  background:#f4f7fa!important;
  transform:none!important;
}
html body .nav-contact-btn{
  min-height:42px!important;
  padding:10px 17px!important;
  border-radius:999px!important;
  background:var(--tpl-ink)!important;
  color:white!important;
  border:0!important;
  box-shadow:none!important;
}

/* Hero editorial limpio: sin collage pesado ni diferencias entre navegadores */
html body .hero.hero-life{
  min-height:auto!important;
  padding:0!important;
  background:
    radial-gradient(circle at 85% 16%,rgba(15,139,141,.12),transparent 28%),
    radial-gradient(circle at 12% 85%,rgba(244,196,48,.12),transparent 24%),
    linear-gradient(180deg,#f7fafc 0%,#fff 100%)!important;
  color:var(--tpl-ink)!important;
  overflow:hidden!important;
}
html body .hero-life-collage,
html body .hero-life-overlay{display:none!important}
html body .hero-life-content{
  max-width:1050px!important;
  min-height:500px!important;
  padding:92px 24px 80px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
html body .hero-life-kicker{
  background:#fff!important;
  color:var(--tpl-blue)!important;
  border:1px solid var(--tpl-line)!important;
  border-radius:999px!important;
  padding:9px 14px!important;
  box-shadow:var(--tpl-shadow-soft)!important;
  font-size:.76rem!important;
  letter-spacing:.13em!important;
}
html body .hero.hero-life h1{
  max-width:980px!important;
  margin:24px auto 20px!important;
  color:var(--tpl-ink)!important;
  font-size:clamp(2.65rem,5.7vw,5.25rem)!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  font-weight:800!important;
  text-shadow:none!important;
}
html body .hero.hero-life p{
  max-width:760px!important;
  margin:0 auto!important;
  color:var(--tpl-muted)!important;
  font-size:clamp(1.02rem,1.7vw,1.25rem)!important;
  line-height:1.62!important;
  text-shadow:none!important;
}
html body .hero-life-values{
  width:100%!important;
  max-width:920px!important;
  margin-top:42px!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:12px!important;
}
html body .hero-life-values>span{
  min-height:86px!important;
  padding:17px 18px!important;
  border:1px solid var(--tpl-line)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.78)!important;
  color:var(--tpl-ink)!important;
  box-shadow:none!important;
  text-align:left!important;
  backdrop-filter:blur(10px)!important;
}
html body .hero-life-values b{color:var(--tpl-ink)!important;font-size:.98rem!important}
html body .hero-life-values small{color:var(--tpl-muted)!important;font-size:.82rem!important;line-height:1.35!important}

/* Selector inicial compacto y sofisticado */
html body #decision-flow{
  margin:0!important;
  padding:72px 24px 78px!important;
  background:#fff!important;
}
html body #decision-flow .decision-box{
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body #decision-flow .decision-eyebrow{
  color:var(--tpl-teal)!important;
  background:transparent!important;
  padding:0!important;
  letter-spacing:.14em!important;
  font-size:.73rem!important;
}
html body #decision-flow h2{
  max-width:720px!important;
  margin:12px auto 10px!important;
  color:var(--tpl-ink)!important;
  font-size:clamp(2rem,3.3vw,3.25rem)!important;
  line-height:1.06!important;
  letter-spacing:-.045em!important;
}
html body #decision-flow .decision-intro{
  max-width:630px!important;
  margin:0 auto 30px!important;
  color:var(--tpl-muted)!important;
  font-size:1.02rem!important;
}
html body #decision-flow .decision-buttons{
  max-width:960px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
html body #decision-flow .decision-option-card{
  position:relative!important;
  min-height:168px!important;
  padding:24px!important;
  display:grid!important;
  grid-template-columns:46px 1fr!important;
  grid-template-rows:auto 1fr!important;
  column-gap:17px!important;
  align-items:start!important;
  text-align:left!important;
  border:1px solid var(--tpl-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  color:var(--tpl-ink)!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transform:none!important;
}
html body #decision-flow .decision-option-card:hover{
  border-color:#c8d4df!important;
  box-shadow:var(--tpl-shadow)!important;
  transform:translateY(-3px)!important;
}
html body #decision-flow .decision-option-card::before,
html body #decision-flow .decision-option-card::after,
html body #decision-flow .decision-card-glow{display:none!important}
html body #decision-flow .decision-step{
  position:absolute!important;
  right:20px!important;
  top:18px!important;
  color:#a4b0bf!important;
  font-size:.75rem!important;
  font-weight:800!important;
  background:transparent!important;
}
html body #decision-flow .decision-icon{
  width:46px!important;
  height:46px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  background:#f2f7f7!important;
  font-size:1.35rem!important;
  grid-row:1 / span 2!important;
}
html body #decision-flow .decision-card-copy{display:block!important;padding-right:28px!important}
html body #decision-flow .decision-card-copy strong{
  display:block!important;
  color:var(--tpl-ink)!important;
  font-size:1.22rem!important;
  line-height:1.2!important;
  letter-spacing:-.025em!important;
}
html body #decision-flow .decision-card-copy>span{
  display:block!important;
  margin-top:8px!important;
  color:var(--tpl-muted)!important;
  font-size:.91rem!important;
  line-height:1.5!important;
}
html body #decision-flow .decision-card-copy em{
  display:inline-flex!important;
  margin-top:18px!important;
  color:var(--tpl-blue)!important;
  font-size:.88rem!important;
  font-style:normal!important;
  font-weight:800!important;
}

/* Presupuesto como panel claro y focalizado */
html body #decision-flow .budget-box{
  max-width:700px!important;
  margin:30px auto 0!important;
  padding:30px!important;
  border:1px solid var(--tpl-line)!important;
  border-radius:22px!important;
  background:#fff!important;
  color:var(--tpl-ink)!important;
  box-shadow:var(--tpl-shadow)!important;
}
html body #decision-flow .budget-orbit{display:none!important}
html body #decision-flow .budget-kicker{color:var(--tpl-teal)!important}
html body #decision-flow .budget-box h3{color:var(--tpl-ink)!important;font-size:1.7rem!important}
html body #decision-flow .budget-box p{color:var(--tpl-muted)!important}
html body #decision-flow #budget-input,
html body #decision-flow .combo-fields input,
html body #decision-flow .combo-fields select{
  min-height:54px!important;
  border:1px solid #dbe2ea!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--tpl-ink)!important;
  box-shadow:none!important;
}
html body #decision-flow #budget-go{
  min-height:52px!important;
  border-radius:14px!important;
  background:var(--tpl-ink)!important;
  color:#fff!important;
  box-shadow:none!important;
}

/* Zona de resultados más aireada */
html body .filter-section{
  margin:0!important;
  padding:68px 0 90px!important;
  background:var(--tpl-soft)!important;
}
html body .parcelas-layout{gap:24px!important;align-items:start!important}
html body .parcelas-sidebar{
  border:1px solid var(--tpl-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:none!important;
  padding:16px!important;
}
html body .sidebar-header{padding:4px 4px 14px!important;border:0!important}
html body .sidebar-header h3{color:var(--tpl-ink)!important;font-size:1rem!important}
html body .filter-buttons-wrapper{gap:7px!important}
html body .filter-btn{
  min-height:44px!important;
  justify-content:flex-start!important;
  padding:10px 12px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#526174!important;
  box-shadow:none!important;
  font-size:.88rem!important;
  font-weight:650!important;
}
html body .filter-btn:hover{background:#f4f7fa!important;color:var(--tpl-ink)!important;transform:none!important}
html body .filter-btn.active{background:#eef6f6!important;color:#086f73!important;border-color:#d4eaea!important}
html body .v3-results-head{
  min-height:auto!important;
  margin-bottom:22px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .v3-results-copy h2{color:var(--tpl-ink)!important;font-size:clamp(1.7rem,2.6vw,2.4rem)!important;letter-spacing:-.04em!important}
html body .parcelas-filter-note{color:var(--tpl-muted)!important}
html body .parcelas-count-pill{
  background:#fff!important;
  color:#526174!important;
  border:1px solid var(--tpl-line)!important;
  box-shadow:none!important;
}
html body .v3-map-button{
  background:var(--tpl-ink)!important;
  color:#fff!important;
  border:0!important;
  border-radius:999px!important;
  box-shadow:none!important;
}

/* Tarjetas inmobiliarias limpias */
html body .parcelas-grid{gap:20px!important}
html body .parcela-card,
html body .casa-card{
  border:1px solid var(--tpl-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transform:none!important;
}
html body .parcela-card:hover,
html body .casa-card:hover{
  transform:translateY(-4px)!important;
  border-color:#ced8e2!important;
  box-shadow:var(--tpl-shadow)!important;
}
html body .parcela-card .card-image,
html body .casa-card .card-image{border-radius:0!important;background:#edf1f5!important}
html body .parcela-card .card-body,
html body .casa-card .card-body{padding:20px!important}
html body .parcela-card h3,
html body .casa-card h3{color:var(--tpl-ink)!important;letter-spacing:-.025em!important}
html body .card-description{color:var(--tpl-muted)!important;line-height:1.5!important}
html body .card-actions button,
html body .card-actions a{
  min-height:43px!important;
  border-radius:12px!important;
  box-shadow:none!important;
}

/* Barra flotante de proyecto: menos invasiva */
html body .project-selection-bar,
html body .project-dock,
html body .quote-dock{
  left:50%!important;
  right:auto!important;
  width:min(1180px,calc(100% - 32px))!important;
  transform:translateX(-50%)!important;
  border:1px solid rgba(16,35,63,.1)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 16px 44px rgba(16,35,63,.13)!important;
  backdrop-filter:blur(18px)!important;
}

/* Accesibilidad y movimiento sobrio */
button,a{transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

@media(max-width:900px){
  html body .nav-contact-btn{display:none!important}
  html body .hero-life-content{min-height:450px!important;padding:74px 18px 62px!important}
  html body .hero.hero-life h1{font-size:clamp(2.45rem,10.5vw,4rem)!important}
  html body .hero-life-values{grid-template-columns:1fr!important;max-width:650px!important}
  html body .hero-life-values>span{text-align:center!important;min-height:auto!important}
  html body #decision-flow{padding:56px 16px 62px!important}
  html body #decision-flow .decision-buttons{grid-template-columns:1fr!important;max-width:650px!important}
  html body .parcelas-sidebar{position:relative!important;top:auto!important;width:100%!important}
}

@media(max-width:620px){
  html body .navbar-inner{min-height:64px!important}
  html body .brand-logo-img{height:40px!important}
  html body .hero-life-content{padding:62px 16px 50px!important}
  html body .hero.hero-life h1{font-size:clamp(2.25rem,12vw,3.25rem)!important}
  html body .hero.hero-life p{font-size:.98rem!important}
  html body .hero-life-values{margin-top:28px!important}
  html body #decision-flow .decision-option-card{min-height:150px!important;padding:20px!important;grid-template-columns:42px 1fr!important}
  html body #decision-flow .decision-icon{width:42px!important;height:42px!important}
  html body #decision-flow .budget-box{padding:22px 18px!important}
  html body .filter-section{padding:48px 0 80px!important}
  html body .v3-results-head{align-items:flex-start!important;gap:14px!important}
}
