
:root{
  --bg:#f6f7fb;
  --surface:#ffffff;
  --surface-soft:#f8fafc;
  --text:#18212f;
  --muted:#667085;
  --line:#e5e7eb;
  --primary:#111827;
  --primary-2:#1f2937;
  --accent:#c59b6d;
  --success:#176b38;
  --success-bg:#effcf3;
  --radius:18px;
  --radius-lg:26px;
  --shadow:0 12px 32px rgba(15,23,42,.10);
  --container:1240px;
  --hero-image:url('/assets/img/hero-bg.svg');
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-sans,Arial,sans-serif);font-size:var(--font-size-base,16px);color:var(--text);background:var(--bg);line-height:1.55}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
input,select,textarea,button{font:inherit}
button{cursor:pointer}
.container{max-width:var(--container-width,var(--container));margin:0 auto;padding:0 20px}
.site-main{padding:30px 0 16px}
.small-muted{color:var(--muted);font-size:.92rem}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-header__inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand__logo{width:52px;height:52px;object-fit:contain;border-radius:14px;background:#fff;box-shadow:var(--shadow);padding:6px}.brand__copy{display:grid;gap:2px}.brand__name{font-size:1.12rem;font-weight:900;line-height:1.1}.brand__tagline{font-size:.83rem;color:var(--muted)}
.nav-toggle{display:none;width:46px;height:44px;border-radius:14px;border:1px solid var(--line);background:#fff}.nav-toggle span{display:block;height:2px;background:var(--primary);margin:7px 10px;border-radius:6px}
.site-nav{display:flex;align-items:center}.nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nav-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;color:var(--muted);font-weight:700}.nav-link:hover,.nav-link.is-active{background:var(--surface-soft);color:var(--primary)}
.hero-block{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:26px;align-items:stretch}.hero{position:relative;overflow:hidden;border-radius:32px;padding:54px;background:linear-gradient(120deg, rgba(15,23,42,.88), rgba(17,24,39,.68)),var(--hero-image) center/cover no-repeat;color:#fff;box-shadow:var(--shadow)}
.hero__eyebrow{display:inline-flex;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.12);color:#f8fafc;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px}.hero__title{margin:0 0 14px;font-size:clamp(2.1rem,5vw,4rem);line-height:1.02}.hero__text{margin:0;max-width:760px;color:rgba(255,255,255,.86);font-size:1.04rem}.hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.hero__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}.hero-stat{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14)}.hero-stat strong{display:block;font-size:1.3rem}
.search-panel,.panel,.card{background:var(--surface);border:1px solid rgba(15,23,42,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.panel{padding:22px}.panel__title{margin:0 0 8px;font-size:1.25rem}.section{display:grid;gap:var(--section-gap,18px)}.section__head{display:flex;justify-content:space-between;align-items:end;gap:14px;flex-wrap:wrap}.section__eyebrow{font-size:.8rem;color:var(--success);font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px}.section__title{margin:0;font-size:2rem;line-height:1.1}.section__text{margin:0;color:var(--muted)}
.button,button{appearance:none;border:none;border-radius:12px;padding:10px 14px;min-height:40px;background:var(--primary);color:#fff;font-weight:800;transition:transform .15s ease, opacity .15s ease, box-shadow .15s ease;box-shadow:0 8px 22px rgba(15,23,42,.12)}.button:hover,button:hover{transform:translateY(-1px)}.button--secondary{background:var(--surface-soft)!important;color:var(--primary)!important;border:1px solid var(--line)!important;box-shadow:none!important}.button--success{background:var(--success)!important}.button--ghost{background:transparent!important;color:var(--primary)!important;border:1px solid var(--line)!important;box-shadow:none!important}.button--danger{background:#b91c1c!important}
.kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi-card{padding:18px 20px;border-radius:22px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:var(--shadow)}.kpi-card__value{font-size:1.9rem;font-weight:900;margin-bottom:6px}.kpi-card__label{color:var(--muted);font-size:.92rem}
.search-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 1fr auto auto;gap:12px}.search-toolbar input,.search-toolbar select,.form-grid input,.form-grid select,.form-grid textarea,.admin-filterbar input,.admin-filterbar select,input,select,textarea{width:100%;padding:12px 14px;border-radius:14px;border:1px solid #dbe3ef;background:#fff;color:var(--text)}textarea{resize:vertical;min-height:120px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(197,155,109,.12)}
.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px}.property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.property-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:26px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;height:100%}.property-card__image-wrap{position:relative;aspect-ratio:16/10;overflow:hidden}.property-card__image{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.property-card:hover .property-card__image{transform:scale(1.04)}.property-card__badge,.property-card__tag{position:absolute;top:14px;padding:8px 12px;border-radius:999px;font-size:.76rem;font-weight:800}.property-card__badge{left:14px;background:rgba(15,23,42,.86);color:#fff}.property-card__tag{right:14px;background:#fff;color:var(--primary)}.property-card__body{display:grid;gap:14px;padding:18px}.property-card__header{display:flex;justify-content:space-between;gap:12px;align-items:start}.property-card__title{margin:0;font-size:1.28rem;line-height:1.15}.property-card__price{font-weight:900;white-space:nowrap}.property-card__meta{display:grid;gap:4px;color:var(--muted);font-size:.92rem}.property-card__stats{display:flex;gap:14px;flex-wrap:wrap;color:#334155;font-size:.92rem}.property-card__actions{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.catalog-sidebar{display:grid;gap:18px;align-self:start;position:sticky;top:108px}.promo-card{padding:22px;border-radius:26px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:var(--shadow)}
.empty-state{padding:32px;border-radius:26px;background:#fff;border:1px dashed rgba(15,23,42,.18);text-align:center;color:var(--muted)}
.detail-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.detail-summary{display:grid;gap:18px}.detail-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:28px;box-shadow:var(--shadow);padding:22px}.detail-title{margin:0;font-size:2.2rem;line-height:1.05}.detail-price{font-size:1.9rem;font-weight:900}.detail-facts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.detail-fact{padding:16px;border-radius:20px;background:var(--surface-soft);border:1px solid #e5edf6}.detail-fact__label{font-size:.8rem;color:var(--muted);margin-bottom:4px}.detail-fact__value{font-size:1.12rem;font-weight:900}.detail-gallery{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px}.detail-gallery__main,.detail-gallery__thumb{border-radius:24px;overflow:hidden;border:1px solid #e5edf6;background:#fff}.detail-gallery__main img{width:100%;height:100%;min-height:480px;object-fit:cover}.detail-gallery__thumb img{width:100%;height:150px;object-fit:cover}.detail-cta{display:grid;gap:12px}.detail-cta .button, .detail-cta button{justify-content:center;text-align:center}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.footer{margin-top:26px;border-top:1px solid rgba(148,163,184,.25);background:transparent}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px;align-items:start}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:1080px){.hero-block,.catalog-layout,.detail-hero,.footer-grid{grid-template-columns:1fr}.property-grid,.related-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-sidebar{position:static}.search-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-gallery{grid-template-columns:1fr}.detail-gallery__main img{min-height:360px}}
@media (max-width:840px){.site-main{padding-top:18px}.site-header__inner{min-height:74px}.nav-toggle{display:block}.site-nav{position:fixed;inset:74px 16px auto 16px;background:rgba(255,255,255,.98);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:14px;opacity:0;pointer-events:none;transform:translateY(-12px);transition:.18s ease}.nav-open .site-nav{opacity:1;pointer-events:auto;transform:none}.nav-list{display:grid;gap:6px}.nav-link{justify-content:flex-start}.hero{padding:34px}.hero__stats,.kpi-strip,.property-grid,.related-grid,.service-grid,.detail-facts{grid-template-columns:1fr}.search-toolbar{grid-template-columns:1fr}.container{padding:0 16px}.brand__tagline{display:none}}


.button--full{width:100%;justify-content:center;text-align:center}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display,var(--font-sans,Arial,sans-serif));letter-spacing:-.02em}
.widget-badge-admin{display:flex;justify-content:flex-start;margin:0 0 12px}
.widget-badge-admin__link{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;border:1px dashed rgba(4,44,18,.22);background:rgba(255,255,255,.92);backdrop-filter:blur(6px);box-shadow:0 8px 20px rgba(31,31,31,.05);color:var(--primary)}
.widget-badge-admin__eyebrow{font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.widget-badge-admin strong{font-size:.84rem}
.page-hero--image{background:
  linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(255,255,255,.88) 100%),
  var(--page-hero-image) center/cover no-repeat}
.contact-map{min-height:420px}
.alert{padding:14px 16px;border-radius:18px;border:1px solid}.alert--success{background:#ecfdf3;border-color:#bbf7d0;color:#166534}.alert--error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.alert--info{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}

.auth-body{min-height:100vh;background:
  radial-gradient(circle at top left, rgba(197,155,109,.12), transparent 32%),
  linear-gradient(180deg, #f4f6fb 0%, #eef2f7 100%);
}
.auth-page{min-height:100vh;padding:24px}
.auth-shell{min-height:calc(100vh - 48px);display:grid;align-items:center}
.auth-shell__wrap{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);background:rgba(255,255,255,.78);border:1px solid rgba(15,23,42,.08);box-shadow:0 30px 70px rgba(15,23,42,.14);backdrop-filter:blur(12px);border-radius:34px;overflow:hidden}
.auth-visual{position:relative;min-height:640px;background:linear-gradient(135deg, rgba(15,23,42,.88), rgba(17,24,39,.52)),var(--auth-image) center/cover no-repeat;color:#fff}
.auth-visual__overlay{position:absolute;inset:0;background:radial-gradient(circle at top right, rgba(255,255,255,.14), transparent 24%),linear-gradient(180deg, rgba(15,23,42,.12), rgba(15,23,42,.24))}
.auth-visual__inner{position:relative;z-index:1;height:100%;padding:36px;display:grid;align-content:space-between;gap:26px}
.auth-brand{display:flex;align-items:center;gap:14px}
.auth-brand__logo{width:60px;height:60px;object-fit:contain;border-radius:18px;background:rgba(255,255,255,.92);padding:8px;box-shadow:0 18px 28px rgba(0,0,0,.16)}
.auth-brand__copy{display:grid;gap:4px}
.auth-brand__title{font-size:1.18rem;font-weight:900;line-height:1.1}
.auth-brand__text{font-size:.95rem;color:rgba(255,255,255,.82)}
.auth-pill{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.16);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.auth-pill--soft{background:var(--surface-soft);color:var(--primary)}
.auth-visual__copy{display:grid;gap:14px;max-width:560px}
.auth-visual__title{margin:0;font-size:clamp(2rem,4vw,3.35rem);line-height:1.02}
.auth-visual__text{margin:0;font-size:1.02rem;color:rgba(255,255,255,.82);max-width:520px}
.auth-visual__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.auth-stat{padding:16px;border-radius:22px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(6px)}
.auth-stat strong{display:block;font-size:1rem;margin-bottom:6px}
.auth-stat span{display:block;font-size:.9rem;color:rgba(255,255,255,.82)}
.auth-card{padding:40px 34px;display:grid;align-content:center;gap:18px;background:rgba(255,255,255,.96)}
.auth-card__header{display:grid;gap:10px}
.auth-card__title{margin:0;font-size:2rem;line-height:1.05}
.auth-card__text{margin:0;color:var(--muted)}
.auth-form{display:grid;gap:14px}
.field-block{display:grid;gap:7px}
.field-block span{font-size:.95rem;font-weight:700;color:var(--text)}
.auth-card .alert{margin:0}
.auth-card__footer{font-size:.88rem;color:var(--muted);padding-top:6px;border-top:1px solid rgba(15,23,42,.08)}
@media (max-width:980px){
  .auth-shell__wrap{grid-template-columns:1fr}
  .auth-visual{min-height:360px}
  .auth-visual__stats{grid-template-columns:1fr}
}
@media (max-width:640px){
  .auth-page{padding:14px}
  .auth-visual__inner,.auth-card{padding:24px 20px}
  .auth-visual{min-height:300px}
}

.page-shell{padding-top:6px;padding-bottom:24px}


/* --- 2026-03-20 responsive/professional refresh --- */
.button, button {
  min-height: 42px;
  padding: 10px 15px;
  font-size: .94rem;
}
.button--secondary,
.button--ghost {
  background: rgba(255,255,255,.78) !important;
  backdrop-filter: blur(6px);
}
.site-header {
  box-shadow: 0 10px 28px rgba(15,23,42,.06);
}
.nav-list {
  gap: 10px;
}
.nav-link {
  min-height: 42px;
  padding: 10px 15px;
}
.grid {
  display: grid;
  gap: 18px;
}
.grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.card {
  background: var(--surface);
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 24px;
  box-shadow: var(--shadow);
  overflow: hidden;
}
.card__body {
  display: grid;
  gap: 12px;
  padding: 20px;
}
.card__title {
  margin: 0;
  font-size: 1.12rem;
  line-height: 1.2;
}
.card__subtitle {
  margin: 0;
  color: var(--muted);
  font-size: .93rem;
}
.page-hero,
.page-banner {
  position: relative;
  overflow: hidden;
  padding: 30px;
  border-radius: 30px;
  border: 1px solid rgba(15,23,42,.08);
  background:
    radial-gradient(circle at top right, rgba(197,155,109,.16), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: var(--shadow);
}
.page-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(23,107,56,.10);
  color: var(--success);
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.page-hero__title {
  margin: 14px 0 10px;
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.03;
}
.page-hero__text {
  margin: 0;
  max-width: 880px;
  color: var(--muted);
  font-size: 1rem;
}
.page-hero__actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 20px;
}
.info-list,
.stack-list,
.clean-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}
.info-list li,
.stack-list li,
.clean-list li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(248,250,252,.9);
  border: 1px solid rgba(15,23,42,.07);
}
.icon-bullet {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(23,107,56,.10);
  color: var(--success);
  font-size: .84rem;
  font-weight: 900;
}
.metric-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.metric-card {
  padding: 20px;
  border-radius: 24px;
  border: 1px solid rgba(15,23,42,.08);
  background: #fff;
  box-shadow: var(--shadow);
}
.metric-card__label {
  color: var(--muted);
  font-size: .88rem;
}
.metric-card__value {
  margin-top: 8px;
  font-size: 1.9rem;
  font-weight: 900;
}
.cta-band {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
  padding: 24px 26px;
  border-radius: 28px;
  border: 1px solid rgba(15,23,42,.08);
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: var(--shadow);
}
.cta-band__copy {
  display: grid;
  gap: 6px;
  max-width: 820px;
}
.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
  gap: 22px;
}
.contact-map,
.contact-card,
.agent-profile__card,
.directory-card {
  background: #fff;
  border: 1px solid rgba(15,23,42,.08);
  border-radius: 28px;
  box-shadow: var(--shadow);
}
.contact-map {
  overflow: hidden;
  min-height: 580px;
}
.contact-map iframe {
  width: 100%;
  height: 100%;
  min-height: 580px;
  border: 0;
}
.contact-sidebar {
  display: grid;
  gap: 18px;
}
.contact-card {
  padding: 24px;
  display: grid;
  gap: 16px;
}
.contact-card__eyebrow {
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--success);
}
.contact-card__title {
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.08;
}
.contact-card__list {
  display: grid;
  gap: 10px;
  color: #334155;
}
.social-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 14px;
  border-radius: 16px;
  border: 1px solid #dbe3ef;
  background: #fff;
  font-weight: 700;
}
.social-link::after {
  content: '↗';
  color: var(--muted);
}
.agent-directory {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.agent-card {
  display: grid;
  gap: 16px;
  padding: 22px;
  border-radius: 24px;
  border: 1px solid rgba(15,23,42,.08);
  background: #fff;
  box-shadow: var(--shadow);
}
.agent-card__head {
  display: flex;
  gap: 16px;
  align-items: center;
}
.agent-card__media {
  width: 92px;
  height: 92px;
  border-radius: 24px;
  overflow: hidden;
  background: #e2e8f0;
  flex: 0 0 auto;
}
.agent-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.agent-card__name {
  margin: 0 0 6px;
  font-size: 1.18rem;
  line-height: 1.15;
}
.agent-card__meta,
.agent-card__contact {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .92rem;
}
.agent-profile {
  display: grid;
  gap: 24px;
}
.agent-profile__hero {
  display: grid;
  grid-template-columns: minmax(300px, .82fr) minmax(0, 1.18fr);
  gap: 0;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(15,23,42,.08);
  background: #fff;
  box-shadow: var(--shadow);
}
.agent-profile__media {
  min-height: 360px;
  background: linear-gradient(180deg, #dfe8f2 0%, #eef4f9 100%);
}
.agent-profile__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.agent-profile__body {
  display: grid;
  gap: 16px;
  padding: 30px;
}
.agent-profile__info {
  display: grid;
  gap: 10px;
}
.agent-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.agent-profile__summary {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
  gap: 24px;
}
.agent-profile__card {
  padding: 24px;
  display: grid;
  gap: 14px;
}
.property-collection {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.footer strong {
  color: var(--text);
}
@media (max-width: 1080px) {
  .metric-grid,
  .agent-directory,
  .property-collection,
  .grid-3,
  .grid-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .contact-layout,
  .agent-profile__summary,
  .agent-profile__hero {
    grid-template-columns: 1fr;
  }
  .contact-map,
  .contact-map iframe {
    min-height: 380px;
  }
}
@media (max-width: 840px) {
  .page-hero,
  .page-banner,
  .cta-band,
  .contact-card,
  .agent-profile__body,
  .card__body {
    padding: 22px 20px;
  }
  .grid-2,
  .grid-3,
  .grid-4,
  .metric-grid,
  .agent-directory,
  .property-collection {
    grid-template-columns: 1fr;
  }
  .agent-card__head {
    align-items: flex-start;
  }
  .agent-card__media {
    width: 82px;
    height: 82px;
    border-radius: 20px;
  }
}

.badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: .76rem;
  font-weight: 800;
  line-height: 1;
  background: rgba(15,23,42,.08);
  color: var(--primary);
}
.badge--info {
  background: #eff6ff;
  color: #1d4ed8;
}
.badge--warning {
  background: #fff8e6;
  color: #9a6700;
}
.badge--success {
  background: #ecfdf3;
  color: #166534;
}
.form-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}
body.nav-open {
  overflow: hidden;
}


/* --- 2026-03-20 Bootstrap 3.4 corporate refinement --- */
:root{
  --bg:#f3f5f8;
  --surface:#ffffff;
  --surface-soft:#f7f9fc;
  --text:#1f2d3d;
  --muted:#667487;
  --line:#dbe3ea;
  --primary:#163b63;
  --primary-2:#102b48;
  --accent:#b89566;
  --success:#1f6b45;
  --success-bg:#eff8f2;
  --radius:18px;
  --radius-lg:28px;
  --shadow:0 16px 36px rgba(16,32,55,.08);
  --container:1170px;
}
html{font-size:15px}
body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.6;color:var(--text);background:
  radial-gradient(circle at top left, rgba(184,149,102,.08), transparent 22%),
  linear-gradient(180deg,#f5f7fa 0%, #eef2f6 100%)}
a{transition:color .18s ease, opacity .18s ease}
a:hover{color:var(--primary)}
.container{max-width:var(--container);padding-left:15px;padding-right:15px}
.site-main{padding:34px 0 18px}
.site-header{background:rgba(255,255,255,.94);border-bottom:1px solid rgba(31,45,61,.08);box-shadow:0 12px 28px rgba(16,32,55,.05)}
.site-header__inner{min-height:86px}
.brand__logo{width:54px;height:54px;border-radius:16px;border:1px solid rgba(31,45,61,.06);box-shadow:0 14px 26px rgba(16,32,55,.08)}
.brand__name{font-size:1.18rem;letter-spacing:.02em}
.brand__tagline{font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}
.nav-link{min-height:42px;padding:10px 16px;color:#5d6979;font-weight:700;letter-spacing:.01em}
.nav-link:hover,.nav-link.is-active{background:#f4f7fb;color:var(--primary);box-shadow:inset 0 0 0 1px rgba(22,59,99,.08)}
.hero,.page-hero,.page-banner{
  border-radius:32px;
  border:1px solid rgba(22,59,99,.08);
  box-shadow:0 22px 48px rgba(16,32,55,.12)
}
.hero{
  background:
    radial-gradient(circle at top right, rgba(184,149,102,.26), transparent 22%),
    linear-gradient(125deg, rgba(10,25,45,.96), rgba(22,59,99,.85)),
    var(--hero-image) center/cover no-repeat;
}
.hero__eyebrow,.page-hero__eyebrow,.section__eyebrow{letter-spacing:.14em}
.hero__text{max-width:700px;color:rgba(245,248,252,.86)}
.hero-stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(6px)}
.search-panel,.panel,.card,.metric-card,.cta-band,.contact-card,.contact-map,.agent-card,.agent-profile__card,.detail-card,.promo-card,.empty-state,.property-card{
  border:1px solid rgba(31,45,61,.08);
  box-shadow:var(--shadow)
}
.panel,.search-panel,.detail-card,.promo-card{background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%)}
.panel__title,.section__title,.detail-title,.card__title,.property-card__title,.contact-card__title,.agent-card__name{color:#13283f}
.section__text,.small-muted,.property-card__meta,.agent-card__contact,.contact-card__list{color:var(--muted)}
.button,button{border-radius:999px;padding:10px 18px;min-height:42px;font-size:14px;letter-spacing:.01em}
.button--secondary,.button--ghost{background:#fff!important;border-color:#ccd6e2!important;color:#223040!important}
.button--secondary:hover,.button--ghost:hover{border-color:#b8c4d3!important;background:#f9fbfd!important}
.button--success{border-color:#184f35!important}
.kpi-card,.metric-card,.detail-fact,.hero-stat,.contact-card,.agent-card,.property-card,.card{overflow:hidden}
.property-card{border-radius:28px}
.property-card__image-wrap{background:#eef2f6}
.property-card__badge{background:rgba(16,43,72,.92)}
.property-card__tag{background:rgba(255,255,255,.94);border:1px solid rgba(31,45,61,.08)}
.property-card__stats{font-size:.88rem;color:#526273}
.detail-fact{background:#f7f9fc;border-color:#e1e8f0}
.detail-gallery__main,.detail-gallery__thumb{border-color:#e1e8f0}
.grid{gap:20px}
.metric-grid,.property-grid,.related-grid,.service-grid,.agent-directory,.property-collection{gap:20px}
.metric-card__value,.kpi-card__value,.detail-price{letter-spacing:-.03em}
.cta-band{padding:26px 28px;background:
  radial-gradient(circle at top right, rgba(184,149,102,.14), transparent 28%),
  linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)}
.contact-card__eyebrow{color:var(--primary)}
.social-link{border-color:#d7e0ea;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%)}
.social-link:hover{border-color:#bfcad8;background:#fff;box-shadow:0 10px 22px rgba(16,32,55,.06)}
.footer{margin-top:34px;border-top:1px solid rgba(31,45,61,.08);background:rgba(255,255,255,.72);backdrop-filter:blur(6px)}
.footer-grid{gap:22px}
.page-shell{padding-top:10px;padding-bottom:28px}
.auth-shell__wrap{border:1px solid rgba(22,59,99,.08);box-shadow:0 34px 76px rgba(16,32,55,.14)}
.auth-visual{background:
  radial-gradient(circle at top right, rgba(184,149,102,.18), transparent 24%),
  linear-gradient(135deg, rgba(10,25,45,.96), rgba(22,59,99,.74)),
  var(--auth-image) center/cover no-repeat}
.auth-card{background:rgba(255,255,255,.98)}
input,select,textarea,.form-control{border-color:#cfd9e6;background:#fff}
input:focus,select:focus,textarea:focus,.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(184,149,102,.12)}
@media (max-width:840px){
  .site-main{padding-top:20px}
  .site-nav{inset:74px 15px auto 15px;background:rgba(255,255,255,.99);border:1px solid rgba(31,45,61,.08);box-shadow:0 18px 34px rgba(16,32,55,.10)}
  .hero{padding:32px 26px}
}

/* --- 2026-03-20 corporate home refresh --- */
.site-header{
  top:0;
  z-index:60;
  background:rgba(255,255,255,.92);
  border-bottom:1px solid rgba(15,23,42,.08);
  box-shadow:0 12px 26px rgba(15,23,42,.05);
}
.site-header__utility{
  background:linear-gradient(90deg, rgba(15,23,42,.98), rgba(31,41,55,.92));
  color:#e5edf7;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.site-header__utility-inner{
  min-height:42px;
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  font-size:.84rem;
}
.site-utility__contact,.site-utility__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.site-utility__link,.site-utility__cta,.site-utility__pill{display:inline-flex;align-items:center;gap:7px}
.site-utility__link{color:#e5edf7;opacity:.92}
.site-utility__link:hover{opacity:1}
.site-utility__pill{padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.08);font-weight:700}
.site-utility__cta{padding:7px 12px;border-radius:999px;background:rgba(197,155,109,.16);border:1px solid rgba(197,155,109,.28);color:#fff;font-weight:800}
.site-header__inner{min-height:88px}
.nav-link{padding:11px 14px;border-radius:999px;font-weight:700}
.nav-link--muted{background:var(--surface-soft);color:var(--text)}
.nav-list__cta{margin-left:4px}
.home-stage{padding-top:12px}
.home-carousel{position:relative;overflow:hidden;border-radius:34px;background:#0f172a;box-shadow:0 28px 56px rgba(15,23,42,.18)}
.home-carousel__viewport{position:relative;min-height:620px}
.home-slide{position:absolute;inset:0;display:grid;align-items:end;opacity:0;pointer-events:none;transform:translateX(3%);transition:opacity .55s ease, transform .55s ease}
.home-slide.is-active{opacity:1;pointer-events:auto;transform:none}
.home-slide__media,.home-slide__content{grid-area:1/1}
.home-slide__media{position:absolute;inset:0}
.home-slide__image,.home-slide__video,.home-slide__embed{position:absolute;inset:0;width:100%;height:100%}
.home-slide__image{background-size:cover;background-position:center center}
.home-slide__image--gradient{background:radial-gradient(circle at top right, rgba(197,155,109,.26), transparent 24%),linear-gradient(135deg, rgba(7,26,38,.92), rgba(17,24,39,.82))}
.home-slide__video{object-fit:cover}
.home-slide__embed{border:0;transform:scale(1.05)}
.home-slide__overlay{position:absolute;inset:0;background:linear-gradient(115deg, rgba(5,11,22,.86) 16%, rgba(5,11,22,.54) 52%, rgba(5,11,22,.22) 100%)}
.home-slide__overlay--warm{background:linear-gradient(115deg, rgba(5,11,22,.84) 14%, rgba(23,23,32,.48) 54%, rgba(95,60,28,.28) 100%)}
.home-slide__overlay--dark{background:linear-gradient(115deg, rgba(5,11,22,.88) 18%, rgba(13,19,33,.66) 52%, rgba(13,19,33,.28) 100%)}
.home-slide__content{position:relative;z-index:2;display:grid;gap:20px;align-content:end;padding:58px;min-height:620px;color:#fff}
.home-slide .hero__title{max-width:920px}
.home-slide .hero__text{max-width:760px;color:rgba(245,248,252,.86);font-size:1.06rem}
.hero__stats--corporate{max-width:880px}
.home-pill-grid,.home-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:980px}
.home-pill-card,.home-contact-card{display:grid;gap:8px;padding:18px 18px 16px;border-radius:22px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(7px)}
.home-pill-card strong,.home-contact-card strong{font-size:1rem;color:#fff}
.home-pill-card span,.home-contact-card span{color:rgba(236,241,247,.8);font-size:.92rem}
.home-contact-card{align-content:start}
.home-carousel__controls{position:absolute;left:24px;right:24px;bottom:22px;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:14px}
.home-carousel__control{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(6px)}
.home-carousel__dots{display:flex;justify-content:center;gap:10px;flex:1}
.home-carousel__dot{width:12px;height:12px;border-radius:999px;border:0;background:rgba(255,255,255,.34);padding:0}
.home-carousel__dot.is-active{background:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.12)}
.home-value-strip{padding-top:18px}
.home-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-value-card{padding:24px;border-radius:28px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);border:1px solid #e5edf6;box-shadow:0 18px 34px rgba(15,23,42,.06)}
.home-value-card__icon{display:inline-flex;margin-bottom:14px}
.card--agent-showcase{display:grid;overflow:hidden}
.card--agent-showcase__media{width:100%;aspect-ratio:1/1;object-fit:cover}
.card__kicker{display:inline-flex;align-items:center;gap:7px;margin-bottom:8px;color:var(--muted);font-size:.84rem;font-weight:800}
.grid{display:grid;gap:18px}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1180px){
  .home-slide__content,.home-carousel__viewport{min-height:580px}
  .home-slide__content{padding:44px}
  .home-pill-grid,.home-contact-grid,.home-value-grid,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:840px){
  .site-header__utility{display:none}
  .site-header__inner{min-height:78px}
  .site-nav{position:fixed;inset:78px 16px auto 16px;background:rgba(255,255,255,.98);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:14px;opacity:0;pointer-events:none;transform:translateY(-12px);transition:.18s ease;max-height:min(calc(100vh - 110px),640px);overflow:auto}
  .nav-open .site-nav{opacity:1;pointer-events:auto;transform:none}
  .nav-list{display:grid;gap:8px}
  .nav-list__cta,.nav-user-badge{margin-left:0}
  .home-carousel{border-radius:28px}
  .home-carousel__viewport,.home-slide__content{min-height:640px}
  .home-slide__content{padding:34px 24px 86px}
  .home-pill-grid,.home-contact-grid,.home-value-grid,.grid-4{grid-template-columns:1fr}
  .home-carousel__controls{left:16px;right:16px;bottom:16px}
}
@media (max-width:580px){
  .brand__name{font-size:1rem}
  .home-slide__content{padding:26px 18px 82px}
  .home-carousel__viewport,.home-slide__content{min-height:660px}
  .home-slide .hero__title{font-size:clamp(1.9rem,8vw,2.8rem)}
  .home-carousel__control{width:42px;height:42px}
}


/* --- 2026-03-21 property map card refinement --- */
.property-map-card{display:grid;gap:14px}
.property-map-card__head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
.property-map-card__frame{border-radius:22px;overflow:hidden;border:1px solid #dbe3ef;background:#eef3f8}
.property-map-card__meta{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:640px){
  .property-map-card__head{align-items:stretch}
}


/* --- 2026-03-21 site polish --- */
body{background:radial-gradient(circle at top left, rgba(184,149,102,.06), transparent 24%),linear-gradient(180deg,#f5f7fb 0%,#f8fafc 100%)}
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.88);backdrop-filter:blur(14px)}
.site-header__inner{display:grid;grid-template-columns:auto 1fr auto auto;gap:18px;align-items:center}
.site-header__actions{display:flex;align-items:center;gap:10px}
.site-header__action{min-height:44px;border-radius:14px !important}
.nav-list{justify-content:center;gap:8px}
.nav-link{min-height:42px;border-radius:14px;transition:all .18s ease}
.nav-link--highlight{background:#fff;border:1px solid rgba(31,45,61,.08);box-shadow:0 10px 20px rgba(15,23,42,.05)}
.nav-link:hover,.nav-link.is-active,.nav-link--highlight:hover{transform:translateY(-1px)}
.nav-list__mobile-cta{display:none}
.home-search-deck{margin-top:-42px;position:relative;z-index:5;background:rgba(255,255,255,.96);border:1px solid rgba(31,45,61,.08);border-radius:28px;box-shadow:0 28px 56px rgba(15,23,42,.12);padding:22px 24px;display:grid;gap:16px}
.home-search-deck__chips{display:flex;flex-wrap:wrap;gap:10px}
.home-search-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border-radius:14px;background:#f8fbff;border:1px solid #dbe6f2;color:#163b63;font-weight:800;text-decoration:none}
.home-search-chip:hover{background:#fff;border-color:#c7d8ea;transform:translateY(-1px)}
.home-trust-section{padding-top:8px}
.home-trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-trust-card{padding:24px;border-radius:24px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);border:1px solid rgba(31,45,61,.08);box-shadow:0 18px 34px rgba(16,32,55,.06)}
.footer--elevated{margin-top:20px}
.footer__shell{display:grid;gap:22px;padding:26px 0 32px}
.footer-brand-card{background:linear-gradient(135deg,#13283f 0%,#1d3e62 100%);color:#fff;border-radius:28px;padding:24px;display:grid;gap:16px;box-shadow:0 22px 46px rgba(15,23,42,.16)}
.footer-brand-card__top{display:flex;align-items:center;gap:14px}
.footer-brand-card__logo{width:58px;height:58px;object-fit:contain;border-radius:16px;background:rgba(255,255,255,.95);padding:8px}
.footer-brand-card__name{display:block;font-size:1.08rem;letter-spacing:.02em}
.footer-brand-card__tag{color:rgba(255,255,255,.70);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}
.footer-brand-card__text{color:rgba(255,255,255,.82);margin:0}
.footer-brand-card__meta{display:flex;flex-wrap:wrap;gap:10px 14px}
.footer-brand-card__meta > span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:.88rem}
.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.footer-links__title{display:block;margin-bottom:12px;color:#13283f}
.footer-links a{display:block;color:#526273;margin-bottom:10px;text-decoration:none}
.footer-links a:hover{color:#163b63}
.footer-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(148,163,184,.35);padding-top:14px;color:#6b7280;font-size:.92rem}
.button,button{min-height:44px;border-radius:14px !important}
.property-card,.panel,.card,.metric-card,.contact-card,.contact-map,.agent-card,.detail-card,.empty-state{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.property-card:hover,.panel:hover,.card:hover,.metric-card:hover,.contact-card:hover,.agent-card:hover{transform:translateY(-2px)}
@media (max-width:1080px){.site-header__inner{grid-template-columns:auto auto auto}.site-nav{justify-self:stretch;grid-column:1 / -1}.footer-links,.home-trust-grid{grid-template-columns:1fr}}
@media (max-width:840px){.site-header__actions{display:none}.nav-list__mobile-cta{display:block}.home-search-deck{margin-top:14px;padding:18px}}


/* === ACTUALIZACION HOUZEZ / UX 2026 === */
.site-header-v2{position:sticky;top:0;z-index:1100;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(15,23,42,.06);box-shadow:0 12px 28px rgba(15,23,42,.05)}
.site-header-top{background:#0f2740;color:#dbe7f3;font-size:.9rem}.site-header-top__inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:16px}.site-header-top__contact,.site-header-top__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.site-header-top a,.site-header-top__pill{display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:none}.site-header-top__pill{padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08)}
.site-navbar{padding:14px 0;background:transparent}.site-brand{display:flex;align-items:center;gap:14px;text-decoration:none;min-width:0}.site-brand__logo{width:52px;height:52px;border-radius:16px;object-fit:contain;background:#fff;border:1px solid rgba(15,23,42,.08);padding:6px}.site-brand__copy{display:grid;min-width:0}.site-brand__name{font-size:1.02rem;font-weight:900;color:#10263d;line-height:1.1}.site-brand__tagline{font-size:.82rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}.site-navbar-toggler{border:1px solid #d9e2ec;border-radius:16px;padding:10px 12px;background:#fff;box-shadow:none}.site-navbar-toggler:focus{box-shadow:none}.site-navbar-toggler__bar{display:block;width:24px;height:2px;background:#10263d;border-radius:999px}.site-navbar-toggler__bar+.site-navbar-toggler__bar{margin-top:5px}
.site-navbar-nav{gap:8px}.site-navbar-nav .nav-link{display:inline-flex;align-items:center;gap:8px;padding:10px 14px!important;border-radius:999px;color:var(--menu-inner-link);font-weight:800}.site-navbar-nav .nav-link:hover,.site-navbar-nav .nav-link.is-active{background:var(--menu-inner-hover-bg);color:var(--menu-inner-hover-text)}.site-navbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.site-navbar-action{white-space:nowrap}.site-user-chip{align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#f4f8fb;border:1px solid #d7e1eb;color:#10263d;font-weight:800}
.home-hero-v3{padding:30px 0 12px;background:radial-gradient(circle at top right, rgba(31,78,121,.10), transparent 36%),linear-gradient(180deg,#f8fbfe 0%,#ffffff 100%)}.home-hero-v3__copy,.home-search-card-v3{background:#fff;border:1px solid #e5edf6;border-radius:32px;box-shadow:0 18px 40px rgba(15,23,42,.06)}.home-hero-v3__copy{padding:40px;display:grid;gap:20px;min-height:100%}.home-hero-v3__eyebrow{display:inline-flex;align-items:center;gap:8px;width:max-content;padding:8px 12px;border-radius:999px;background:#eef4f9;color:#10263d;font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.home-hero-v3__title{margin:0;font-size:clamp(2.25rem,4.5vw,4.1rem);line-height:1.02;color:#10263d;max-width:11ch}.home-hero-v3__text{margin:0;color:#5a6c7f;font-size:1.02rem;max-width:60ch}.home-hero-v3__actions{display:flex;gap:12px;flex-wrap:wrap}.home-hero-v3__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.home-stat-card{padding:18px;border-radius:24px;background:linear-gradient(180deg,#fff 0%,#f9fbfd 100%);border:1px solid #e6edf5}.home-stat-card__label{display:block;font-size:.82rem;color:#64748b}.home-stat-card__value{display:block;margin-top:8px;font-size:1.7rem;line-height:1;color:#10263d}
.home-search-card-v3{padding:28px;display:grid;gap:18px}.home-search-card-v3__chips{display:flex;gap:10px;flex-wrap:wrap}.home-search-chip-v3{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:999px;background:#f3f7fb;border:1px solid #d7e2ee;color:#223040;font-weight:800;text-decoration:none}.home-search-chip-v3:hover{background:#fff}.home-search-card-v3__note{display:grid;gap:4px;padding:14px 16px;border-radius:20px;background:#f7fafc;border:1px solid #e8eef5;color:#5d6f82}
.home-section-v3{padding-top:14px}.home-benefits-v3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.home-benefit-card-v3{padding:24px;border-radius:28px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);border:1px solid #e5edf6;box-shadow:0 16px 34px rgba(15,23,42,.05)}.home-benefit-card-v3__icon{display:inline-flex;margin-bottom:14px}
.catalog-hero-v3,.agents-hero-v3,.agent-profile-v3{padding:18px 0 4px;background:linear-gradient(180deg,#f8fbfe 0%,#ffffff 100%)}.catalog-hero-v3__stat{display:grid;gap:8px;padding:22px;border-radius:28px;background:#fff;border:1px solid #e5edf6;box-shadow:0 16px 34px rgba(15,23,42,.05)}.catalog-hero-v3__stat span{font-size:.88rem;color:#64748b}.catalog-hero-v3__stat strong{font-size:2.4rem;line-height:1;color:#10263d}.catalog-hero-v3__stat small{color:#64748b}
.catalog-filter-card-v3{padding:22px 24px;border-radius:30px;background:#fff;border:1px solid #e5edf6;box-shadow:0 16px 34px rgba(15,23,42,.05)}.catalog-filter-card-v3__actions{display:flex;gap:10px;align-items:end;justify-content:flex-end;flex-wrap:wrap;height:100%}
.catalog-layout-v3,.agents-layout-v3,.agent-profile-v3__layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px}.catalog-sidebar-v3,.agents-sidebar-v3,.agent-profile-v3__sidebar{display:grid;gap:18px;align-content:start}.catalog-mini-list{display:grid;gap:12px;margin-top:14px}.catalog-mini-card{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;align-items:center;text-decoration:none;color:inherit;padding:10px;border-radius:18px;background:#fff;border:1px solid #e6edf5}.catalog-mini-card img{width:88px;height:72px;border-radius:14px;object-fit:cover}.catalog-mini-card strong{display:block;color:#10263d;line-height:1.2}.catalog-mini-card span{display:block;margin-top:4px;color:#64748b;font-size:.9rem}
.agents-list-v3{display:grid;gap:18px}.agent-row-card-v3{display:grid;grid-template-columns:180px minmax(0,1fr);gap:18px;padding:18px;border-radius:28px;background:#fff;border:1px solid #e5edf6;box-shadow:0 16px 34px rgba(15,23,42,.05)}.agent-row-card-v3__media img,.agent-profile-v3__media img{width:100%;height:100%;object-fit:cover;border-radius:22px}.agent-row-card-v3__media{height:180px}.agent-row-card-v3__body{display:grid;gap:14px;min-width:0}.agent-row-card-v3__top{display:flex;justify-content:space-between;gap:14px;align-items:start;flex-wrap:wrap}.agent-row-card-v3__name{margin:0;font-size:1.45rem;line-height:1.1;color:#10263d}.agent-row-card-v3__name a{color:inherit}.agent-row-card-v3__contact{display:flex;gap:12px;flex-wrap:wrap;color:#46576a}.agent-row-card-v3__contact span{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:#f4f8fb;border:1px solid #dde7f0}
.agent-profile-v3__hero{display:grid;grid-template-columns:320px minmax(0,1fr);gap:26px;align-items:center;padding:22px;border-radius:34px;background:#fff;border:1px solid #e5edf6;box-shadow:0 18px 40px rgba(15,23,42,.06)}.agent-profile-v3__media{height:340px}.agent-profile-v3__copy{display:grid;gap:16px}.agent-profile-v3__chips{display:flex;gap:10px;flex-wrap:wrap}
.site-footer-v2{margin-top:42px;padding:34px 0 28px;background:var(--primary);color:#f5f5f0}.site-footer-v2__shell{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:24px;padding-bottom:24px}.site-footer-v2__brand-link{display:flex;align-items:center;gap:14px;color:#fff;text-decoration:none}.site-footer-v2__logo{width:56px;height:56px;border-radius:18px;background:#fff;object-fit:contain;padding:6px}.site-footer-v2__name{display:block;font-size:1.05rem}.site-footer-v2__tag,.site-footer-v2__text,.site-footer-v2__column span{color:rgba(245,245,240,.74)}.site-footer-v2__column{display:grid;gap:10px;align-content:start}.site-footer-v2__title{color:#fff}.site-footer-v2__column a,.site-footer-v2__column span{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#f5f5f0}.site-footer-v2__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);color:rgba(245,245,240,.74);font-size:.92rem}.site-footer-v2__legal{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}.site-footer-v2__legal a{color:#f5f5f0;text-decoration:none}.site-footer-v2__legal a:hover{text-decoration:underline}
#sitePrimaryNav.navbar-collapse{transition:none}.property-grid{gap:20px}.promo-card,.detail-card,.contact-card,.contact-map,.agent-card,.agent-profile__card,.property-card,.panel,.empty-state{border-color:#e5edf6;box-shadow:0 16px 34px rgba(15,23,42,.05)}
@media (max-width:1199.98px){.site-navbar{padding:12px 0}.site-brand__tagline{max-width:220px}.site-navbar-actions{padding-top:14px;display:grid;grid-template-columns:1fr}.site-navbar-action,.site-user-chip{width:100%;justify-content:center}.site-navbar-nav{padding-top:12px}.site-navbar-nav .nav-link{justify-content:flex-start;border-radius:16px}.home-hero-v3__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-layout-v3,.agents-layout-v3,.agent-profile-v3__layout{grid-template-columns:1fr}.site-footer-v2__shell{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767.98px){.site-brand__logo{width:46px;height:46px}.site-brand__name{font-size:.96rem}.site-brand__tagline{display:none}.home-hero-v3__copy,.home-search-card-v3,.catalog-filter-card-v3,.agent-profile-v3__hero{padding:20px}.home-benefits-v3,.home-hero-v3__stats{grid-template-columns:1fr}.agent-row-card-v3{grid-template-columns:1fr}.agent-row-card-v3__media,.agent-profile-v3__media{height:240px}.site-footer-v2__shell{grid-template-columns:1fr}.site-footer-v2__bottom{flex-direction:column}.catalog-filter-card-v3__actions{justify-content:stretch}.catalog-filter-card-v3__actions .button{width:100%}}

/* --- 2026-03-21 home alignment + houzez inspired public refresh --- */
body.page-home{background:#f4f4f4}
.page-home .site-main{padding-top:0}
.site-header-v2{transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.site-header-v2--static{position:relative;top:auto}
.site-header-top__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.site-header-top__actions a{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:#46576a;font-weight:700}
.site-navbar{padding:10px 0}.site-brand{gap:10px}.site-brand__logo{width:48px;height:48px;border-radius:14px}.site-brand__name{font-size:.98rem}.site-brand__tagline{max-width:240px;font-size:.76rem}.site-navbar-nav{gap:4px}.site-navbar-nav .nav-link{padding:8px 12px!important;font-size:.86rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.site-navbar-actions{gap:8px}.site-navbar-action{padding:10px 14px!important;min-height:40px!important;font-size:.86rem}
.page-home .site-header-v2--overlay{position:sticky;top:0;background:rgba(8,25,43,.35);border-bottom:1px solid rgba(255,255,255,.16);box-shadow:none;backdrop-filter:blur(10px)}
.page-home .site-header-v2--overlay .site-header-top{display:none!important}
.page-home .site-header-v2--overlay .site-navbar{padding:14px 0}
.page-home .site-header-v2--overlay .site-brand__logo{background:rgba(255,255,255,.92);border-color:rgba(255,255,255,.24)}
.page-home .site-header-v2--overlay .site-brand__name,
.page-home .site-header-v2--overlay .site-brand__tagline,
.page-home .site-header-v2--overlay .site-navbar-nav .nav-link,
.page-home .site-header-v2--overlay .site-user-chip{color:var(--menu-home-link)}
.page-home .site-header-v2--overlay .site-navbar-nav .nav-link:hover,
.page-home .site-header-v2--overlay .site-navbar-nav .nav-link.is-active{background:var(--menu-home-hover-bg);color:var(--menu-home-hover-text)}
.page-home .site-header-v2--overlay .site-user-chip{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18)}
.page-home .site-header-v2--overlay .button--secondary{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.2)!important;color:#fff!important}
.page-home .site-header-v2--overlay .button{box-shadow:none}
.houzez-home-hero{position:relative;min-height:730px;display:flex;align-items:flex-start;overflow:hidden;background:#0f2338}
.houzez-home-hero__media,.houzez-home-hero__image,.houzez-home-hero__video,.houzez-home-hero__embed,.houzez-home-hero__overlay{position:absolute;inset:0;width:100%;height:100%}
.houzez-home-hero__image{background-position:center;background-size:cover;transform:scale(1.04)}
.houzez-home-hero__video,.houzez-home-hero__embed{object-fit:cover;border:0}
.houzez-home-hero__overlay{background:linear-gradient(180deg, rgba(5,16,28,.30) 0%, rgba(4,17,31,.48) 22%, rgba(5,18,32,.62) 58%, rgba(5,18,32,.30) 100%)}
.houzez-home-hero__content{position:relative;z-index:2;display:grid;align-content:start;justify-items:center;width:100%;padding-top:168px;padding-bottom:110px}
.houzez-home-hero__copy{max-width:860px;text-align:center;color:#fff;display:grid;gap:14px}
.houzez-home-hero__kicker{display:inline-flex;justify-self:center;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.12);backdrop-filter:blur(6px);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.houzez-home-hero__title{margin:0;font-size:clamp(2.6rem,5vw,4rem);line-height:1.04;font-weight:500}
.houzez-home-hero__text{margin:0 auto;max-width:760px;font-size:1.04rem;line-height:1.75;color:rgba(255,255,255,.92)}
.houzez-home-search{width:min(100%,980px);margin-top:64px;display:grid;justify-items:center}
.houzez-home-search__tabs{display:inline-flex;align-items:center;gap:1px;background:rgba(255,255,255,.14);padding:4px;border-radius:16px 16px 0 0;backdrop-filter:blur(8px)}
.houzez-search-tab{position:relative;cursor:pointer}
.houzez-search-tab input{position:absolute;opacity:0;pointer-events:none}
.houzez-search-tab span{display:inline-flex;align-items:center;justify-content:center;min-width:112px;padding:12px 16px;border-radius:12px 12px 0 0;font-size:.88rem;font-weight:800;color:#0f2338;background:#ffffffd1}
.houzez-search-tab input:checked + span{background:#1096df;color:#fff}
.houzez-home-search__panel{width:100%;padding:22px 22px 18px;background:#fff;border-radius:0 0 18px 18px;box-shadow:0 28px 60px rgba(15,23,42,.22);border:1px solid rgba(15,23,42,.08)}
.houzez-home-search__panel .form-label{margin-bottom:8px;font-size:.74rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#0f2338}
.houzez-home-search__panel .form-control,.houzez-home-search__panel .form-select{height:48px;border-radius:0;border-color:#d5dee9;font-size:.95rem;background:#fff;box-shadow:none}
.houzez-home-search__button{height:48px;border-radius:0;background:#1096df!important}
.home-featured-section{padding-top:88px;padding-bottom:10px}.home-section-title{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}.home-section-title--centered{display:grid;justify-items:center;text-align:center}.home-section-title--centered .section__text{max-width:640px}
.property-grid--featured{grid-template-columns:repeat(3,minmax(0,1fr))}
.property-card{border-radius:0;background:#fff;border:1px solid #e1e6ed;box-shadow:none;overflow:hidden}.property-card__image-wrap{position:relative;display:block}.property-card__image{height:285px;object-fit:cover;width:100%}.property-card__image-wrap::after{content:'';position:absolute;left:0;right:0;bottom:0;height:44%;background:linear-gradient(180deg, rgba(15,23,42,0) 0%, rgba(15,23,42,.56) 100%)}.property-card__badge,.property-card__tag{z-index:2}.property-card__badge{top:14px;left:14px;border-radius:4px;font-size:.64rem;padding:4px 7px;letter-spacing:.05em}.property-card__tag{top:14px;right:14px;border-radius:4px;font-size:.64rem;padding:4px 7px;background:var(--tag-default-bg);color:var(--tag-default-text);border:0}.property-card__tag--sale{background:var(--tag-sale-bg);color:var(--tag-sale-text)}.property-card__tag--rent{background:var(--tag-rent-bg);color:var(--tag-rent-text)}.operation-tag{display:inline-flex;align-items:center;width:max-content;padding:8px 12px;border-radius:999px;background:var(--tag-default-bg);color:var(--tag-default-text)!important;border:0}.operation-tag--sale{background:var(--tag-sale-bg);color:var(--tag-sale-text)!important}.operation-tag--rent{background:var(--tag-rent-bg);color:var(--tag-rent-text)!important}.property-card__body{padding:18px 18px 16px;display:grid;gap:12px}.property-card__title{font-size:1.06rem}.property-card__meta{display:grid;gap:4px;font-size:.82rem}.property-card__price{font-size:1.25rem}.property-card__stats{display:flex;flex-wrap:wrap;gap:12px 14px;padding-top:4px;border-top:1px solid #eef2f6;font-size:.84rem}.property-card__actions{padding-top:10px;border-top:1px solid #eef2f6}
.home-highlight-band,.home-agents-section{padding-top:14px}.directory-card--home{border-radius:0;box-shadow:none;border:1px solid #e1e6ed}.directory-card--home .directory-card__media img{height:280px;object-fit:cover}
.property-map-card__head .small-muted,.property-map-card__meta{display:none!important}
@media (max-width:1199.98px){.site-navbar-nav .nav-link{padding:10px 12px!important}.houzez-home-hero{min-height:690px}.houzez-home-hero__content{padding-top:140px}.houzez-home-search{width:min(100%,920px)}.property-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:991.98px){.page-home .site-header-v2--overlay{background:rgba(8,25,43,.58)}.page-home .site-header-v2--overlay .site-navbar-actions{padding-top:14px}.page-home .site-header-v2--overlay .site-navbar-nav .nav-link{justify-content:flex-start}.houzez-home-hero{min-height:auto}.houzez-home-hero__content{padding-top:132px;padding-bottom:84px}.houzez-home-search__tabs{width:100%;justify-content:center}.houzez-search-tab{flex:1}.houzez-search-tab span{width:100%;min-width:0}.property-grid--featured{grid-template-columns:1fr 1fr}}
@media (max-width:767.98px){.site-brand__logo{width:44px;height:44px}.site-navbar{padding:8px 0}.houzez-home-hero__content{padding-top:118px;padding-bottom:62px}.houzez-home-hero__title{font-size:2rem}.houzez-home-hero__text{font-size:.96rem;line-height:1.65}.houzez-home-search{margin-top:40px}.houzez-home-search__tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.houzez-search-tab span{padding:11px 8px;font-size:.8rem}.houzez-home-search__panel{padding:16px}.home-featured-section{padding-top:54px}.property-grid--featured{grid-template-columns:1fr}.property-card__image{height:240px}}


/* V4 fine tuning */
:root{--site-font-base:13px;--site-font-base-mobile:13px}
body{font-size:var(--site-font-base)!important;line-height:1.55}
.panel__title{font-size:1.08rem}
.section__eyebrow{font-size:.72rem;letter-spacing:.11em}
.section__title{font-size:1.72rem;line-height:1.12}
.section__text,.small-muted,.property-card__meta,.property-card__stats,.agent-row-card-v3__contact,.agent-card__meta,.agent-card__contact{font-size:.88rem}
.button,.site-navbar-action,.nav-link,.form-control,.form-select{font-size:.88rem}
.card__title,.property-card__title{font-size:1rem}
.property-card__price{font-size:1.12rem}
.detail-title{font-size:clamp(1.8rem,3vw,2.6rem)}

.site-brand{display:flex;align-items:center;min-width:0}
.site-brand__logo{width:min(100%,280px);height:64px;max-width:280px;border-radius:0;background:transparent;border:0;padding:0;object-fit:contain;object-position:left center}
.site-brand__copy,.site-brand__name,.site-brand__tagline{display:none!important}
.site-navbar-nav .nav-link{font-size:.8rem;letter-spacing:.05em}
.site-navbar-action{padding:9px 13px!important;min-height:38px!important}

.houzez-home-hero__copy{max-width:840px;gap:12px}
.houzez-home-hero__kicker{padding:6px 10px;font-size:.62rem;max-width:min(92vw,760px);line-height:1.45;white-space:normal;text-wrap:balance;text-align:center}
.houzez-home-hero__title{font-size:clamp(2.2rem,4.2vw,3.4rem)}
.houzez-home-hero__text{max-width:700px;font-size:.96rem;line-height:1.7}
.houzez-home-search{width:min(100%,860px);margin-top:48px}
.houzez-home-search--clean .houzez-home-search__panel{padding:18px 18px 16px;border-radius:12px;box-shadow:0 20px 42px rgba(15,23,42,.18)}
.houzez-home-search--clean .form-label{font-size:.68rem;margin-bottom:7px}
.houzez-home-search--clean .form-control,.houzez-home-search--clean .form-select{height:46px;border-radius:8px;font-size:.9rem}
.houzez-home-search--clean .houzez-home-search__button{height:46px;border-radius:8px}

.home-featured-section{padding-top:72px}
.home-agents-section{padding-top:4px}
.agent-directory--compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.directory-card--compact{border-radius:12px;overflow:hidden}
.directory-card--compact .directory-card__media img{height:180px;object-fit:cover}
.directory-card--compact .card__body{padding:14px;gap:8px}
.directory-card--compact .card__title{font-size:.98rem;margin:0}
.button--sm{padding:8px 12px!important;min-height:36px!important;font-size:.82rem!important}

@media (max-width:1199.98px){
  .site-brand__logo{max-width:240px;height:58px}
  .agent-directory--compact{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:991.98px){
  .section__title{font-size:1.56rem}
  .site-brand__logo{max-width:210px;height:52px}
  .agent-directory--compact{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767.98px){
  body{font-size:var(--site-font-base-mobile)!important}
  .section__title{font-size:1.36rem}
  .site-brand__logo{max-width:180px;height:46px}
  .site-navbar-nav .nav-link{font-size:.82rem}
  .houzez-home-hero__content{padding-top:110px;padding-bottom:54px}
  .houzez-home-hero__title{font-size:1.9rem}
  .houzez-home-hero__text{font-size:.92rem}
  .houzez-home-search{margin-top:32px}
  .home-featured-section{padding-top:44px}
  .agent-directory--compact{grid-template-columns:1fr 1fr}
  .directory-card--compact .directory-card__media img{height:150px}
}
@media (max-width:575.98px){
  .agent-directory--compact{grid-template-columns:1fr}
}

/* 2026-03-21 rev3 */
.site-brand__logo{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  width:auto!important;
  height:84px!important;
  max-width:min(360px,42vw)!important;
  object-fit:contain!important;
  display:block;
}
.site-navbar{padding:10px 0}
.site-brand{min-width:0}

.page-hero__eyebrow{font-size:var(--hero-eyebrow-size,.82rem);font-family:var(--hero-text-font,var(--font-sans))}
.page-hero__title{font-size:var(--hero-title-size,clamp(2.05rem,4vw,3.1rem));font-family:var(--hero-title-font,var(--font-display))}
.page-hero__text{font-size:var(--hero-text-size,1rem);font-family:var(--hero-text-font,var(--font-sans))}
.page-hero__mini-stat{display:inline-grid;gap:6px;width:min(320px,100%);padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.92);color:#10263d;border:1px solid rgba(15,23,42,.08);box-shadow:0 14px 32px rgba(15,23,42,.08)}
.page-hero__mini-stat span{font-size:.82rem;color:#64748b}
.page-hero__mini-stat strong{font-size:1.9rem;line-height:1;color:#10263d}
.page-hero__mini-stat small{font-size:.88rem;color:#64748b}

.houzez-home-hero__kicker{font-size:var(--home-hero-eyebrow-size,.62rem)}
.houzez-home-hero__title{font-size:var(--home-hero-title-size,clamp(2.2rem,4.2vw,3.4rem));font-family:var(--home-hero-title-font,var(--font-display))}
.houzez-home-hero__text{font-size:var(--home-hero-text-size,.96rem);font-family:var(--home-hero-text-font,var(--font-sans))}

.property-card__image-wrap,
.catalog-mini-card img{background:#eef3f7}
.property-card__image{
  object-fit:contain!important;
  background:#eef3f7;
  padding:10px;
}
.catalog-mini-card img{
  object-fit:contain!important;
  padding:4px;
}

@media (max-width:1199.98px){
  .site-brand__logo{height:72px!important;max-width:min(300px,48vw)!important}
}
@media (max-width:767.98px){
  .site-brand__logo{height:58px!important;max-width:min(240px,58vw)!important}
  .page-hero__mini-stat{width:100%}
}


/* 2026-03-24 UX refresh */
.houzez-home-hero__content{
  padding-inline:clamp(16px,3vw,24px);
}
.houzez-home-hero__copy{
  width:min(100%,860px);
  margin-inline:auto;
  justify-items:var(--home-hero-items-align,center);
  text-align:var(--home-hero-text-align,center);
}
.houzez-home-hero__kicker{
  justify-self:var(--home-hero-items-align,center);
  text-align:inherit;
}
.houzez-home-hero__title,
.houzez-home-hero__text{
  width:min(100%,760px);
}
.houzez-home-hero__text{
  margin:0;
}
.houzez-home-search{
  width:min(100%,980px);
  margin-inline:auto;
}
.houzez-home-search__panel{
  border-radius:24px;
}
.home-section-title,
.home-agents-section .home-section-title{
  gap:18px;
}
.page-hero,
.page-banner{
  padding:clamp(22px,3vw,34px);
}
.page-hero__text,
.section__text,
.card__subtitle,
.property-card__meta,
.contact-card__text,
.empty-state{
  overflow-wrap:anywhere;
}
@media (max-width:991.98px){
  .houzez-home-hero{
    min-height:auto;
  }
  .houzez-home-hero__content{
    padding-top:132px;
    padding-bottom:72px;
  }
  .houzez-home-search{
    width:100%;
  }
  .home-section-title{
    display:grid;
    justify-items:center;
    text-align:center;
  }
  .home-agents-section .home-section-title .button{
    width:100%;
    justify-content:center;
  }
}
@media (max-width:767.98px){
  .houzez-home-hero__copy,
  .houzez-home-hero__title,
  .houzez-home-hero__text{
    width:100%;
    max-width:100%;
  }
  .houzez-home-hero__content{
    padding-top:108px;
    padding-bottom:44px;
  }
  .houzez-home-hero__title{
    line-height:1.08;
  }
  .houzez-home-search{
    margin-top:26px;
  }
  .houzez-home-search__panel{
    padding:14px;
    gap:12px 0;
  }
  .houzez-home-search__button,
  .page-hero__actions .button,
  .page-hero__actions button,
  .property-card__actions .button,
  .property-card__actions button{
    width:100%;
    justify-content:center;
  }
  .page-hero,
  .page-banner{
    border-radius:24px;
  }
  .page-hero__title{
    line-height:1.08;
  }
  .page-hero__actions{
    display:grid;
  }
  .property-card__body{
    padding:16px 14px;
  }
}
@media (max-width:575.98px){
  .houzez-home-hero__kicker{
    width:100%;
  }
  .section{
    padding-top:34px;
    padding-bottom:34px;
  }
}


/* --- 2026-03-24 mapa público de propiedades --- */
.map-page-hero{
  display:grid;
  gap:14px;
}
.map-page-layout{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
  gap:20px;
  align-items:start;
}
.map-stage-card,
.map-sidebar-card{
  display:grid;
  gap:16px;
}
.map-stage-card__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  flex-wrap:wrap;
}
.map-stage-card__title{
  margin:0;
  font-size:1.7rem;
}
.map-stage-card__meta{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.map-stage-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(23,107,56,.10);
  color:var(--success);
  font-weight:800;
  border:1px solid rgba(23,107,56,.14);
}
.map-stage-pill--soft{
  background:var(--surface-soft);
  color:var(--text);
  border-color:rgba(15,23,42,.08);
}
.map-stage-card__price{
  font-size:1.05rem;
  white-space:nowrap;
}
.map-stage-card__frame{
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
}
.map-stage-card__frame iframe,
.map-stage-card__frame #propertyMapCanvas{
  display:block;
  width:100%;
  height:var(--map-canvas-height, 620px);
  min-height:var(--map-canvas-height, 620px);
  border:0;
}
.map-stage-card__frame #propertyMapCanvas{
  background:#f7faf7;
}
.map-stage-card__actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.map-sidebar-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.map-sidebar-card__count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  min-height:42px;
  padding:6px 10px;
  border-radius:999px;
  background:var(--surface-soft);
  border:1px solid rgba(15,23,42,.08);
  font-weight:900;
}
.map-sidebar-card__list{
  display:grid;
  gap:12px;
  max-height:760px;
  overflow:auto;
  padding-right:4px;
}
.map-property-item{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:12px;
  align-items:center;
  width:100%;
  padding:10px;
  border-radius:20px;
  border:1px solid rgba(15,23,42,.08);
  background:#fff;
  box-shadow:none;
  color:var(--text);
  text-align:left;
}
.map-property-item:hover{
  transform:none;
  border-color:rgba(23,107,56,.24);
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
.map-property-item.is-active{
  border-color:rgba(23,107,56,.35);
  background:linear-gradient(180deg, rgba(23,107,56,.05), rgba(255,255,255,1));
}
.map-property-item img{
  width:88px;
  height:88px;
  border-radius:16px;
  object-fit:cover;
  border:1px solid rgba(15,23,42,.06);
}
.map-property-item__body{
  display:grid;
  gap:4px;
  min-width:0;
}
.map-property-item__body strong,
.map-property-item__body span,
.map-property-item__body small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
}
.map-property-item__body span{
  color:var(--muted);
  white-space:normal;
}
.map-property-item__body small{
  color:var(--primary);
  font-weight:800;
}

.map-popup{
  display:grid;
  gap:8px;
  min-width:180px;
  max-width:min(320px, 72vw);
}
.map-popup__media{
  width:100%;
  aspect-ratio:16/10;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(148,163,184,.24);
  background:#f8fafc;
}
.map-popup__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.map-popup strong,
.map-popup span,
.map-popup small{
  display:block;
}
.map-popup__meta,
.map-popup__summary{
  display:grid;
  gap:4px;
}
.map-popup span{
  color:var(--muted);
}
.map-popup small{
  color:var(--primary);
  font-weight:800;
}
.map-popup__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:4px;
}
.map-popup__actions a{
  color:var(--primary);
  font-weight:700;
  text-decoration:none;
}
.map-popup__actions a:hover{
  text-decoration:underline;
}
@media (max-width:1080px){
  .map-page-layout{
    grid-template-columns:1fr;
  }
  .map-stage-card__frame iframe,
  .map-stage-card__frame #propertyMapCanvas{
    height:min(var(--map-canvas-height, 620px), 500px);
    min-height:min(var(--map-canvas-height, 620px), 500px);
  }
  .map-sidebar-card__list{
    max-height:none;
  }
}
@media (max-width:640px){
  .map-stage-card__head,
  .map-stage-card__actions,
  .map-stage-card__meta{
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
  }
  .map-stage-card__actions .button{
    width:100%;
    justify-content:center;
  }
  .map-stage-card__frame iframe,
  .map-stage-card__frame #propertyMapCanvas{
    height:var(--map-canvas-height-mobile, 380px);
    min-height:var(--map-canvas-height-mobile, 380px);
  }
  .map-property-item{
    grid-template-columns:72px minmax(0,1fr);
    padding:8px;
  }
  .map-property-item img{
    width:72px;
    height:72px;
    border-radius:14px;
  }
}

/* --- 2026-03-24 composición flexible de páginas y mapa ampliado --- */
.custom-page-widget__card{display:grid;gap:18px;padding:28px 30px;border-radius:26px}
.custom-page-widget__actions{display:flex;flex-wrap:wrap;gap:12px}
.map-page-shell{padding-bottom:0}
.map-page-hero--compact{display:flex;justify-content:space-between;align-items:flex-end;gap:18px}
.map-stage-card--wide{gap:18px}
.map-stage-card__frame--xl #propertyMapCanvas{min-height:78vh;max-height:940px}
.map-list-card{display:grid;gap:16px;padding:22px}
.map-list-card__head{margin-bottom:4px}
.map-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.map-property-grid .map-property-item{height:100%}
@media (max-width:1180px){
  .map-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .map-stage-card__frame--xl #propertyMapCanvas{min-height:68vh}
}
@media (max-width:760px){
  .map-page-hero--compact{flex-direction:column;align-items:flex-start}
  .map-property-grid{grid-template-columns:1fr}
  .map-stage-card__frame--xl #propertyMapCanvas{min-height:56vh}
  .custom-page-widget__card{padding:22px}
}

/* 2026-03-26 global UI refresh + valuación full-bleed */
:root{
  --ui-radius-lg:26px;
  --ui-radius-md:20px;
  --ui-shadow-soft:0 18px 44px rgba(15,23,42,.08);
}
.button,.btn{
  border-radius:999px;
}
.detail-card,.panel,.empty-state,.map-list-card,.admin-panel{
  box-shadow:var(--ui-shadow-soft);
}
.valuation-shell{display:grid;gap:0;font-family:var(--valuation-body-font-family, Inter, sans-serif)}
.valuation-stack{display:grid;gap:22px}
.valuation-text-title{font-family:var(--valuation-title-font-family, Inter, sans-serif);font-size:var(--valuation-title-font-size, clamp(1.55rem, 1.2rem + 1vw, 2.2rem))}
.valuation-text-body{font-family:var(--valuation-body-font-family, Inter, sans-serif);font-size:var(--valuation-body-font-size, 1rem)}
.valuation-text-eyebrow{font-family:var(--valuation-eyebrow-font-family, Inter, sans-serif);font-size:var(--valuation-eyebrow-font-size, .78rem)}
.valuation-filter-card,.valuation-form-card{padding:20px}
.valuation-toolbar-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.valuation-map-band{display:grid;gap:16px;padding:20px 0 0}
.valuation-map-band__head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;flex-wrap:wrap}
.valuation-map-canvas{width:100vw;height:var(--valuation-map-height-desktop, min(100dvh, 980px));margin-inline:calc(50% - 50vw);border-top:1px solid rgba(15,23,42,.08);border-bottom:1px solid rgba(15,23,42,.08);background:#eaf0f5}
.valuation-location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.valuation-form-card .valuation-form{display:grid;gap:14px}
.form-grid-span-2{grid-column:span 2}
.valuation-inline-action{padding:.46rem .88rem;min-height:0;font-size:.86rem}
.valuation-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.valuation-preview-link{display:block;border-radius:18px;overflow:hidden;border:1px solid rgba(15,23,42,.08)}
.valuation-preview-link img{width:100%;height:168px;object-fit:cover;display:block}
.valuation-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.valuation-card-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.valuation-card-actions .button{min-width:0}
.valuation-record-card img{width:92px;height:78px;border-radius:14px;object-fit:cover}
.valuation-map-pin{background:transparent;border:none}
.modal-content{border:none;border-radius:24px;box-shadow:0 28px 64px rgba(15,23,42,.18)}
.modal-header,.modal-footer{border-color:rgba(15,23,42,.08)}
@media (max-width:1199.98px){
  .valuation-list-grid{grid-template-columns:1fr}
}
@media (max-width:991.98px){
  .valuation-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767.98px){
  .valuation-map-canvas{height:var(--valuation-map-height-mobile, 68dvh)}
  .valuation-location-grid,.valuation-media-grid{grid-template-columns:1fr}
  .form-grid-span-2{grid-column:auto}
  .valuation-filter-card,.valuation-form-card,.map-list-card{padding:16px}
  .valuation-map-band__head,.valuation-toolbar-head,.map-page-hero--compact{align-items:flex-start;flex-direction:column}
  .valuation-card-actions .button{width:100%;justify-content:center}
}

/* =========================================================
   Revision Bootstrap 5.3 · Compartir propiedades
   Mantiene paleta del sistema y agrega patrones tipo card/badge.
   ========================================================= */
.property-share{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.property-share__label{
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
}
.property-share__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid #dbe3ef;
  background:#fff;
  color:#13283f;
  font-size:.78rem;
  font-weight:900;
  text-decoration:none;
  line-height:1;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.property-share__btn:hover{
  transform:translateY(-1px);
  border-color:rgba(0,174,239,.35);
  box-shadow:0 12px 24px rgba(15,23,42,.10);
}
.property-share__btn--whatsapp{color:#166534;background:#ecfdf3;border-color:#bbf7d0}
.property-share__btn--facebook{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}
.property-share__btn--copy{color:#10263d;background:#f8fafc;border-color:#dbe3ef;box-shadow:none}
.property-share__btn.is-copied{background:var(--success)!important;color:#fff!important;border-color:var(--success)!important}
.property-card__actions--stacked{align-items:stretch;display:grid;gap:10px}
.property-card__primary-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.property-share--card{padding-top:8px;border-top:1px solid #eef2f6}
.property-share--detail{margin-top:14px}
.property-share--sidebar{margin-top:14px;padding-top:14px;border-top:1px solid #eef2f6}
.detail-card.property-detail-card{overflow:hidden}
.property-detail-header{align-items:flex-start;gap:18px}
@media (max-width:767.98px){
  .property-share__label{width:100%}
  .property-share__btn{flex:1 1 auto}
  .property-card__primary-actions{align-items:stretch}
  .property-card__primary-actions .button{width:100%;justify-content:center}
}

/* =========================================================
   Theme Customizer + propiedad card balanceada
   Corrección: título/precio en flujo vertical, ubicación compacta
   ========================================================= */
.button,.site-navbar-action,.property-share__btn{border-radius:var(--button-radius,14px)}
.property-card,.directory-card,.detail-card,.panel{border-color:var(--border-color,#e5edf6)}
.property-card{border-radius:var(--property-card-radius,18px)}
.property-card--balanced{display:flex;flex-direction:column;height:100%;overflow:hidden;background:#fff;border:1px solid var(--border-color,#e5edf6);box-shadow:var(--shadow)}
.property-card--balanced .property-card__body{display:flex!important;flex-direction:column;gap:10px;padding:16px 16px 14px;min-height:268px}
.property-card--balanced .property-card__header{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:6px;width:100%}
.property-card--balanced .property-card__title{width:100%;margin:0;font-size:1.04rem;line-height:1.22;font-weight:800;color:var(--text)}
.property-card--balanced .property-card__title a{color:inherit;text-decoration:none;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.property-card--balanced .property-card__price{display:block;width:100%;font-size:1.14rem;line-height:1.2;font-weight:900;color:var(--text);white-space:normal;word-break:break-word}
.property-card__location{display:flex;align-items:flex-start;gap:6px;width:100%;font-size:.86rem;line-height:1.36;color:var(--muted)}
.property-card__location span:last-child{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.property-card--balanced .property-card__stats{margin-top:auto;padding-top:10px;border-top:1px solid var(--border-color,#e5edf6);display:flex;flex-wrap:wrap;gap:8px 12px;color:#334155;font-size:.84rem}
.property-card--balanced .property-card__excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}
.property-card--balanced .property-card__actions{margin-top:0;padding-top:10px;border-top:1px solid var(--border-color,#e5edf6)}
.property-card--balanced .property-card__primary-actions{gap:10px}
.related-card-lite--balanced{display:grid;grid-template-columns:116px minmax(0,1fr);gap:14px;padding:12px;border:1px solid var(--border-color,#e5edf6);border-radius:var(--property-card-radius,18px);background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.related-card-lite--balanced .related-card-lite__media{border-radius:14px;overflow:hidden;min-height:94px}
.related-card-lite--balanced .related-card-lite__media img{width:100%;height:100%;object-fit:cover}
.related-card-lite--balanced .related-card-lite__body{display:flex;flex-direction:column;gap:5px;min-width:0}
.related-card-lite__title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.2;color:var(--text)}
.related-card-lite__price{font-weight:900;color:var(--text)}
.related-card-lite__location{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-size:.86rem;line-height:1.32}
.related-card-lite__link{margin-top:auto;font-weight:900;color:var(--primary);text-decoration:none}
@media (max-width:767.98px){
  .property-card--balanced .property-card__body{min-height:auto;padding:16px 14px}
  .property-card--balanced .property-card__title{font-size:1rem}
  .property-card--balanced .property-card__price{font-size:1.06rem}
  .related-card-lite--balanced{grid-template-columns:1fr}
  .related-card-lite--balanced .related-card-lite__media{aspect-ratio:16/10}
}

/* =========================================================
   2026-04-28 · Corrección preview imágenes destacadas públicas
   Centrado + autoajuste para evitar que se vea solo la mitad superior.
========================================================= */
.property-card--balanced .property-card__image-wrap,
.related-card-lite--balanced .related-card-lite__media{
  display:grid;
  place-items:center;
  background:#eef3f7;
}

.property-card--balanced .property-card__image,
.related-card-lite--balanced .related-card-lite__media img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center center!important;
  display:block;
  background:#eef3f7;
  padding:0;
}

.property-card--balanced:hover .property-card__image{
  transform:none;
}

/* Operational Page Builder custom widgets */
.custom-page-widget__card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
    background: var(--custom-widget-bg, var(--surface, #fff));
}
.custom-page-widget__media {
    margin: 0;
    overflow: hidden;
    border-radius: calc(var(--radius, 20px) * .85);
    background: rgba(15, 23, 42, .06);
}
.custom-page-widget__media img {
    display: block;
    width: 100%;
    height: min(420px, 48vw);
    object-fit: cover;
}
.custom-page-widget__title {
    font-size: var(--custom-widget-title-size, inherit);
    font-family: var(--custom-widget-title-font, inherit);
}
.custom-page-widget__text {
    font-size: var(--custom-widget-text-size, inherit);
    font-family: var(--custom-widget-text-font, inherit);
}
.custom-page-widget--split .custom-page-widget__card {
    grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
    align-items: center;
}
.custom-page-widget--split .custom-page-widget__actions {
    align-self: center;
}
.custom-page-widget--compact .custom-page-widget__card {
    padding: 1.25rem;
}
.custom-page-widget--highlight .custom-page-widget__card {
    border-color: color-mix(in srgb, var(--primary, #0f2f22) 24%, transparent);
    box-shadow: 0 24px 60px rgba(15, 47, 34, .12);
}
@media (max-width: 860px) {
    .custom-page-widget--split .custom-page-widget__card {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   2026-05-05 · Cuztomizer Page Builder Phase 2
   Standard layout contract for configurable page widgets.
========================================================= */
.page-widget-shell{--page-widget-space-top:0;--page-widget-space-bottom:0;text-align:var(--page-widget-text-align,inherit)}
.page-widget-shell--top-none{padding-top:0!important}.page-widget-shell--top-sm{padding-top:12px!important}.page-widget-shell--top-md{padding-top:24px!important}.page-widget-shell--top-lg{padding-top:42px!important}.page-widget-shell--top-xl{padding-top:72px!important}
.page-widget-shell--bottom-none{padding-bottom:0!important}.page-widget-shell--bottom-sm{padding-bottom:12px!important}.page-widget-shell--bottom-md{padding-bottom:24px!important}.page-widget-shell--bottom-lg{padding-bottom:42px!important}.page-widget-shell--bottom-xl{padding-bottom:72px!important}
.page-widget-shell--container-narrow{max-width:min(960px,100%)}
.page-widget-shell--container-wide{max-width:min(1440px,100%)}
.page-widget-shell--container-full{max-width:none;width:100%;padding-left:0;padding-right:0}
.page-widget-shell--hidden{display:none!important}
.page-widget-shell--mobile-only{display:none!important}
.page-widget-shell--card>.page-hero,.page-widget-shell--card>.panel,.page-widget-shell--card>.detail-card{box-shadow:var(--shadow);border-radius:var(--radius-lg)}
.page-widget-shell--highlight>.page-hero,.page-widget-shell--highlight>.panel,.page-widget-shell--highlight>.detail-card{border-color:color-mix(in srgb,var(--accent,#c59b6d) 40%,transparent);box-shadow:0 24px 64px rgba(15,23,42,.14)}
.custom-page-widget{background:var(--custom-widget-bg,transparent)}
.custom-page-widget__copy{text-align:var(--page-widget-text-align,inherit)}
.custom-page-widget--split.page-widget-shell--image-right .custom-page-widget__media{order:2}
.custom-page-widget--split.page-widget-shell--image-right .custom-page-widget__copy{order:1}
.custom-page-widget--split.page-widget-shell--image-bottom .custom-page-widget__media{order:3}
.custom-page-widget--split.page-widget-shell--image-top .custom-page-widget__media{order:-1}
@media (min-width:861px){.page-widget-shell--desktop-only{display:grid!important}}
@media (max-width:860px){.page-widget-shell--desktop-only{display:none!important}.page-widget-shell--mobile-only{display:grid!important}.page-widget-shell--container-full{padding-left:0;padding-right:0}}
.page-widget-shell{background:var(--custom-widget-bg,transparent)}

/* Cuztomizer Page Builder · Fase 3 */
.page-builder-render{display:grid;gap:clamp(1rem,2vw,1.75rem)}
.page-builder-widget{--pb-widget-bg:transparent;--pb-widget-align:inherit;position:relative;background:var(--pb-widget-bg);text-align:var(--pb-widget-align);padding-block:clamp(1rem,2vw,2rem)}
.page-builder-widget--container-container{max-width:var(--container,1240px);margin-inline:auto;padding-inline:var(--container-padding,1rem)}
.page-builder-widget--container-narrow{max-width:860px;margin-inline:auto;padding-inline:1rem}
.page-builder-widget--container-wide{max-width:1440px;margin-inline:auto;padding-inline:1rem}
.page-builder-widget--container-full{width:100%;padding-inline:0}
.page-builder-widget--top-none{padding-top:0}.page-builder-widget--bottom-none{padding-bottom:0}
.page-builder-widget--top-sm{padding-top:.75rem}.page-builder-widget--bottom-sm{padding-bottom:.75rem}
.page-builder-widget--top-md{padding-top:1.5rem}.page-builder-widget--bottom-md{padding-bottom:1.5rem}
.page-builder-widget--top-lg{padding-top:2.5rem}.page-builder-widget--bottom-lg{padding-bottom:2.5rem}
.page-builder-widget--top-xl{padding-top:4rem}.page-builder-widget--bottom-xl{padding-bottom:4rem}
.page-builder-widget__inner{display:grid;gap:clamp(1rem,2vw,1.5rem)}
.page-builder-widget--layout-split .page-builder-widget__inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}
.page-builder-widget--image-right .page-builder-widget__media{order:2}.page-builder-widget--image-bottom .page-builder-widget__media{order:3}
.page-builder-widget__media{overflow:hidden;border-radius:var(--radius-lg,24px);box-shadow:var(--shadow-sm,0 14px 42px rgba(15,47,34,.12))}
.page-builder-widget__media img{width:100%;height:100%;max-height:420px;object-fit:cover;display:block}
.page-builder-widget__eyebrow,.page-builder-subwidget__eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--accent,#D6A85A);margin:0 0 .5rem}
.page-builder-widget__title{font-family:var(--pb-widget-title-font,var(--font-display,inherit));font-size:var(--pb-widget-title-size,clamp(1.6rem,3vw,2.5rem));line-height:1.05;margin:0 0 .75rem;color:var(--text,#17231C)}
.page-builder-widget__text{font-family:var(--pb-widget-text-font,var(--font-sans,inherit));font-size:var(--pb-widget-text-size,1rem);line-height:1.7;color:var(--muted,#667085);margin:0 0 1rem}
.page-builder-widget__title--muted,.page-builder-widget__text--muted{opacity:.65}
.page-builder-subwidgets{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem;margin-top:1rem}
.page-builder-subwidget{--pb-subwidget-bg:var(--surface,#fff);border:1px solid var(--border,#E7DFD0);border-radius:var(--radius-lg,22px);background:var(--pb-subwidget-bg);padding:clamp(1rem,2vw,1.25rem);box-shadow:0 12px 34px rgba(15,47,34,.08)}
.page-builder-subwidget--style-outline{box-shadow:none;background:transparent}.page-builder-subwidget--style-accent{border-color:var(--accent,#D6A85A)}
.page-builder-subwidget__icon{display:inline-grid;place-items:center;min-width:2.3rem;height:2.3rem;border-radius:999px;background:rgba(214,168,90,.14);color:var(--primary,#0F2F22);font-weight:900;margin-bottom:.75rem}
.page-builder-subwidget__media{margin:0 0 .75rem;border-radius:18px;overflow:hidden}.page-builder-subwidget__media img{width:100%;height:170px;object-fit:cover;display:block}
.page-builder-subwidget__title{font-size:var(--pb-subwidget-title-size,1.05rem);line-height:1.2;margin:0 0 .45rem;color:var(--text,#17231C)}
.page-builder-subwidget__text{font-size:var(--pb-subwidget-text-size,.95rem);line-height:1.55;color:var(--muted,#667085);margin:0 0 .75rem}
.page-builder-subwidget__badge{display:inline-flex;margin-bottom:.65rem;font-size:.72rem;font-weight:800;color:var(--muted,#667085)}
.page-builder-widget--hidden-preview,.page-builder-subwidget--hidden-preview{opacity:.58;outline:2px dashed rgba(185,28,28,.45)}
.page-builder-preview-badge{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;border:1px dashed rgba(15,47,34,.25);border-radius:14px;padding:.65rem .85rem;background:rgba(255,255,255,.72);font-size:.85rem;color:var(--muted,#667085)}
@media (max-width: 780px){.page-builder-widget--layout-split .page-builder-widget__inner{grid-template-columns:1fr}.page-builder-widget--desktop-only{display:none!important}}
@media (min-width: 781px){.page-builder-widget--mobile-only{display:none!important}}

/* Fase Dashboard + Widgets con Imagen · widgets visuales */
.page-builder-widget--image_banner{background:var(--pb-widget-bg,linear-gradient(135deg,rgba(15,47,34,.06),rgba(214,168,90,.08)));border-radius:var(--radius-xl,28px);overflow:hidden}.page-builder-widget--image_banner .page-builder-widget__inner{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}.page-builder-widget--image_banner.page-builder-widget--image-right .page-builder-widget__media{order:2}.page-builder-widget--image_card_grid .page-builder-subwidgets{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}.page-builder-widget--image_card_grid .page-builder-subwidget__media{margin:-.35rem -.35rem .85rem;border-radius:18px}.page-builder-widget--layout-card_grid .page-builder-subwidgets{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.page-builder-widget--layout-banner{border-radius:var(--radius-xl,28px);background:var(--pb-widget-bg,rgba(214,168,90,.1));padding:clamp(1.25rem,3vw,2.5rem)}.page-builder-widget--layout-media .page-builder-widget__inner{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center}.page-builder-widget--layout-highlight{border:1px solid rgba(214,168,90,.35);border-radius:var(--radius-xl,28px);box-shadow:0 18px 50px rgba(15,47,34,.08)}
@media (max-width: 780px){.page-builder-widget--image_banner .page-builder-widget__inner,.page-builder-widget--layout-media .page-builder-widget__inner{grid-template-columns:1fr}.page-builder-widget--image_banner.page-builder-widget--image-right .page-builder-widget__media{order:0}}
