/* HomeHNI brand typography. See docs/typography.md for usage. */
@font-face {
    font-family: "Manrope";
    src: url("../fonts/manrope/Manrope-Variable.ttf") format("truetype");
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
}
/* Global text typography. Keep glyph-based icon libraries on their own fonts. */
#hni-project-root {
    --hni-font-family: "Manrope", "Segoe UI", "Noto Sans", Arial, sans-serif;
    --bs-font-sans-serif: "Manrope", "Segoe UI", "Noto Sans", Arial, sans-serif;
    --bs-body-font-family: "Manrope", "Segoe UI", "Noto Sans", Arial, sans-serif;
}
#hni-project-root body,
#hni-project-root body *:not(:where(
    [class^="ri-"], [class*=" ri-"],
    [class^="flaticon-"], [class*=" flaticon-"],
    .fa, .fas, .far, .fab, .fal, .fad, .fat,
    .fa-solid, .fa-regular, .fa-brands, .fa-light, .fa-thin, .fa-duotone,
    .bx, .bxs, .bxl, [class^="bx-"], [class*=" bx-"],
    .lni, [class^="lni-"], [class*=" lni-"],
    .glyphicon, .material-icons, .material-icons-outlined, .material-symbols-outlined,
    [class^="icon-"], [class*=" icon-"], [class^="icofont-"], [class*=" icofont-"],
    [class^="zmdi"], [class*=" zmdi"], .bootstrap-icons, .bi
)) {
    font-family: var(--hni-font-family) !important;
}
#hni-project-root input::placeholder,
#hni-project-root textarea::placeholder {
    font-family: var(--hni-font-family) !important;
}

/* Explicit role weights override legacy page styles without changing layout sizes. */
#hni-project-root body {
    font-weight: 400;
    line-height: 1.6;
}
#hni-project-root :is(p, .description, .property-description, .hni-body) {
    font-weight: 400 !important;
}
#hni-project-root :is(h1, h2, .h1, .h2, .hni-heading) {
    font-weight: 700 !important;
    line-height: 1.25;
}
#hni-project-root :is(h3, h4, h5, h6, .h3, .h4, .h5, .h6, .hni-subheading) {
    font-weight: 600 !important;
    line-height: 1.35;
}
#hni-project-root :is(input, select, textarea, .form-control, .form-select, .hni-filter) {
    font-weight: 400 !important;
}
#hni-project-root :is(label, .form-label, .input-group-text) {
    font-weight: 500 !important;
}
#hni-project-root :is(button, .btn, .default-btn, [role="button"], input[type="submit"], input[type="button"], .mobile-post-property-btn, .hni-cta) {
    font-weight: 600 !important;
}
#hni-project-root :is(nav a, nav button, .nav-link, .navbar-nav a, .mobile-visible-navigation a, .mobile-visible-navigation button, .hni-nav) {
    font-weight: 600 !important;
}
#hni-project-root :is(.property-title, .property-name, .project-title, .project-title-main, .fp-title, .hni-property-title) {
    font-weight: 600 !important;
}
#hni-project-root :is(.price, .price-tag, .price-value, .property-price, .fp-price, .unit-price, .hni-price) {
    font-weight: 700 !important;
    font-variant-numeric: lining-nums tabular-nums;
}
#hni-project-root :is(input[type="number"], input[type="tel"], .property-specs, .property-specifications, .hni-specs, .hni-numeric) {
    font-variant-numeric: lining-nums tabular-nums;
}