/* Vercetti Propiedades 2.8.2.3 · Jerarquía tipográfica refinada
   Cargado al final del <head>. No se aplica al panel Admin. */
:root{
  --vc-ui-font:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --vc-ui-title:#1d1a20;
  --vc-ui-body:#655f69;
  --vc-ui-purple:#520b7c;
  --vc-ui-button-radius:999px;
}

/* Una sola familia tipográfica para todo el texto público. */
html,body,
main,header,footer,
p,li,dt,dd,label,
input,select,textarea,button,
h1,h2,h3,h4,h5,h6,
[class*="heading-"],
.font-sec,.big,
.block-info-2-title > *,
.block-callboard-tell,.block-callboard-mail,
.box-counter-main,
.list-terms-1 dd,
.list-marked-3,
.table-custom th,
.form-wrap-list span,
.post-default-time,
.post-simple-time .time,
.quote-modern-time,
.breadcrumbs-custom-path,
.pagination-custom a,
.product-classic-price,
.rd-search-results-live .search-title,
.isotope-filters-line a,
.tabs-line .nav-link,
.card-corporate .card-title a,
.progress-linear .progress-header,
.slick-slider-1 .slick-slider-price,
.rd-file-drop,
.vc-privacy-copy strong{
  font-family:var(--vc-ui-font)!important;
}

body{
  letter-spacing:.01em!important;
}
p,li,dd,dt,label,.big,.small,small{
  letter-spacing:.008em;
}


/* Texto de lectura: peso normal para sostener contraste con los títulos. */
p,li,dd,dt,label,.big,.small,small{
  font-weight:400;
}

/* Jerarquía de títulos aprobada: editorial, con peso medio y contraste consistente. */
h1,.heading-1{
  font-weight:500!important;
  line-height:1.08!important;
  letter-spacing:-.034em!important;
}
h2,.heading-2,
.heading-decoration-2 .heading-inner{
  font-weight:500!important;
  line-height:1.14!important;
  letter-spacing:-.026em!important;
}
h3,.heading-3{
  font-weight:500!important;
  line-height:1.25!important;
  letter-spacing:-.014em!important;
}
h4,.heading-4{
  font-weight:400!important;
  line-height:1.34!important;
  letter-spacing:-.006em!important;
}
h5,.heading-5,h6,.heading-6,.heading-7{
  font-weight:500!important;
  letter-spacing:0!important;
}

/* Las clases históricas 'bold' no deben endurecer los encabezados. */
h1.font-weight-bold,h1 .font-weight-bold,
h2.font-weight-bold,h2 .font-weight-bold,
h3.font-weight-bold,h3 .font-weight-bold,
h4.font-weight-bold,h4 .font-weight-bold,
.heading-inner.font-weight-bold,
.heading-decoration-2 .font-weight-bold{
  font-weight:inherit!important;
}
.heading-decoration-2 .heading-inner.font-weight-bold{
  font-weight:500!important;
}

/* Títulos de tarjetas y módulos: estructura intermedia, no peso excesivo. */
.product-classic-title,
.box-modern-title,
.block-agent-title,
.block-agent-horizontal-title,
.card-corporate .card-title a,
.rd-search-results-live .search-title{
  font-family:var(--vc-ui-font)!important;
  letter-spacing:-.006em!important;
}
.box-modern-title,
.block-agent-title,
.block-agent-horizontal-title,
.card-corporate .card-title a,
.rd-search-results-live .search-title{
  font-weight:500!important;
}
.product-classic-title{
  font-weight:400!important;
  color:var(--vc-ui-body)!important;
}
.vc-card-display-title,
.vc-card-display-title a,
.product-classic .vc-card-display-title,
.product-classic .vc-card-display-title a{
  font-weight:500!important;
  color:var(--vc-ui-title)!important;
}
.box-modern-title .font-weight-bold,
.box-modern-title.font-weight-bold{
  font-weight:500!important;
}
.box-modern-main .product-classic-title,
.heading-decoration-2 + .product-classic-title,
.heading-decoration-2 ~ .product-classic-title:first-of-type{
  font-weight:400!important;
  color:var(--vc-ui-body)!important;
  letter-spacing:0!important;
}

/* Etiquetas editoriales: único lenguaje corporativo. */
.vc-seo-kicker,
.vc-section-kicker,
.vc-zone-kicker,
.vc-zone-resource-eyebrow,
.vc-agent-eyebrow,
.vc-agent-contact-kicker,
.vc-agent-properties-kicker,
.vc-agents-kicker,
.vc-property-kicker,
.vc-home-hero-kicker{
  font-family:var(--vc-ui-font)!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:700!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}

/* Botones de texto: tono natural, menos duro y forma común. */
.button,
a.button,
button.button,
input.button,
.vc-home-search-submit,
.vc-alert-button,
.vc-modal-primary-action,
.vc-publish-primary,
.vc-publish-secondary,
.vc-agent-submit,
.vc-valuation-submit,
.vc-privacy-btn-primary,
.vc-privacy-btn-secondary,
.vc-side-action,
.vc-outline-action,
.vc-zone-secondary-link,
.vc-zone-service-action,
.vc-hero-action,
.vc-dossier-action,
.vc-closed-similar-action,
.vc-agents-profile-button,
.vc-link-button{
  font-family:var(--vc-ui-font)!important;
  font-weight:600!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* CTA convencionales: redondeados. Los controles cuadrados/iconográficos se respetan. */
.button:not(.button-square),
a.button:not(.button-square),
button.button:not(.button-square),
input.button:not(.button-square),
.vc-home-search-submit,
.vc-alert-button,
.vc-modal-primary-action,
.vc-publish-primary,
.vc-publish-secondary,
.vc-agent-submit,
.vc-valuation-submit,
.vc-privacy-btn-primary,
.vc-privacy-btn-secondary,
.vc-side-action,
.vc-outline-action,
.vc-zone-secondary-link,
.vc-zone-service-action,
.vc-hero-action,
.vc-dossier-action,
.vc-closed-similar-action,
.vc-agents-profile-button,
.vc-link-button{
  border-radius:var(--vc-ui-button-radius)!important;
}
.button:not(.button-square),a.button:not(.button-square),button.button:not(.button-square){
  border-width:1.5px!important;
}

/* Mantiene geometría en grupos de botones conectados. */
.button-group .button:not(:first-child){
  border-top-left-radius:0!important;
  border-bottom-left-radius:0!important;
}
.button-group .button:not(:last-child){
  border-top-right-radius:0!important;
  border-bottom-right-radius:0!important;
}

/* Hover sutil y coherente. */
.button:not(.button-square),
.vc-home-search-submit,
.vc-publish-primary,
.vc-publish-secondary,
.vc-agent-submit,
.vc-valuation-submit,
.vc-side-action,
.vc-outline-action,
.vc-zone-secondary-link,
.vc-zone-service-action{
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease!important;
}
.button:not(.button-square):hover,
.vc-home-search-submit:hover,
.vc-publish-primary:hover,
.vc-publish-secondary:hover,
.vc-agent-submit:hover,
.vc-valuation-submit:hover,
.vc-side-action:hover,
.vc-outline-action:hover,
.vc-zone-secondary-link:hover,
.vc-zone-service-action:hover{
  transform:translateY(-1px);
}

/* La navegación y el footer usan la misma familia, conservando su jerarquía propia. */
.rd-navbar,.rd-navbar a,.rd-navbar button,
.page-footer,.page-footer a{
  font-family:var(--vc-ui-font)!important;
}

@media(max-width:767.98px){
  h1,.heading-1{letter-spacing:-.03em!important}
  h2,.heading-2{letter-spacing:-.022em!important}
}

/* 2.8.2.3 · Contraste editorial: título > módulo > descripción */
.heading-decoration-2 .heading-inner{font-weight:500!important}
.box-modern-title{font-weight:500!important;color:var(--vc-ui-title)!important}
.box-modern-title .font-weight-bold{font-weight:500!important}
.box-modern-main h4.product-classic-title{font-weight:400!important;color:var(--vc-ui-body)!important;line-height:1.55!important}
.heading-decoration-2 + h4.product-classic-title{font-weight:400!important;color:var(--vc-ui-body)!important;line-height:1.55!important}
.section.text-center > .container > h4.product-classic-title{font-weight:400!important;color:var(--vc-ui-body)!important;line-height:1.55!important}
html[data-vc-theme="dark"] .product-classic-title,
html[data-vc-theme="dark"] .box-modern-main h4.product-classic-title,
html[data-vc-theme="dark"] .heading-decoration-2 + h4.product-classic-title{color:#bdb7c1!important}
html[data-vc-theme="dark"] .box-modern-title,
html[data-vc-theme="dark"] .vc-card-display-title,
html[data-vc-theme="dark"] .vc-card-display-title a{color:#f4f0f5!important}
