/* Explicit typography roles override candidate-specific sizes only in the assembled site. */
body.composition-site{
 --nf-type-section:48px;--nf-type-subheading:24px;--nf-type-card:20px;--nf-type-statement:32px;
 --nf-type-body:16px;--nf-type-compact:14px;--nf-type-caption:12px;--nf-type-ui:12px;--nf-type-eyebrow:10px;--nf-type-currency:16px;
 --nf-type-value:22px;--nf-type-metric:40px;--nf-type-total:56px;
 --nf-type-display:'Tenor Sans',sans-serif;--nf-type-text:'Manrope',sans-serif;
}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type]{font-family:var(--nf-type-text)!important;font-style:normal!important;letter-spacing:normal!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) :is([data-nf-type=section],[data-nf-type=subheading],[data-nf-type=card],[data-nf-type=statement],[data-nf-type=value],[data-nf-type=metric],[data-nf-type=total]){font-family:var(--nf-type-display)!important;font-weight:400!important;letter-spacing:-.025em!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=section]{font-size:var(--nf-type-section)!important;line-height:1.12!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=subheading]{font-size:var(--nf-type-subheading)!important;line-height:1.25!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=card]{font-size:var(--nf-type-card)!important;line-height:1.25!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=statement]{font-size:var(--nf-type-statement)!important;line-height:1.25!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=body]{font-size:var(--nf-type-body)!important;line-height:1.75!important;font-weight:400!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=compact]{font-size:var(--nf-type-compact)!important;line-height:1.6!important;font-weight:400!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) :is([data-nf-type=caption],[data-nf-type=note]){font-size:var(--nf-type-caption)!important;line-height:1.6!important;font-weight:400!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=eyebrow]{font-size:var(--nf-type-eyebrow)!important;line-height:1.5!important;font-weight:600!important;letter-spacing:.14em!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=ui]{font-size:var(--nf-type-ui)!important;line-height:1.5!important;font-weight:500!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=emphasis]{font-size:var(--nf-type-compact)!important;line-height:1.6!important;font-weight:600!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=value]{font-size:var(--nf-type-value)!important;line-height:1.3!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=metric]{font-size:var(--nf-type-metric)!important;line-height:1.15!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=total]{font-size:var(--nf-type-total)!important;line-height:1.1!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=currency]{font-size:var(--nf-type-currency)!important;line-height:1.5!important;font-weight:400!important}
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) :is([data-nf-type=body],[data-nf-type=compact],[data-nf-type=caption],[data-nf-type=note]) :is(strong,b):not([data-nf-type]){font-family:var(--nf-type-text)!important;font-weight:600!important}
/* Template roles override inherited form-control/icon sizes without changing icon geometry. */
body.composition-site :is(#site-header,#mobile-menu,#hero,#key-parameters,#about,#architecture,#gallery,#location,#amenities,#lots,#payment,#investment,#brochure,#developer,#purchase,#faq,#related,#cta,#expert-cta,#footer) [data-nf-type=ui]>span:not([class]):not([data-nf-type]){font:inherit!important}
body.composition-site #investment .v5-total>#nf-inv-resultProfit{font:inherit!important}
@media(max-width:1100px){body.composition-site{--nf-type-section:40px;--nf-type-metric:36px;--nf-type-total:48px}}
@media(max-width:700px){body.composition-site{--nf-type-section:32px;--nf-type-subheading:22px;--nf-type-card:20px;--nf-type-statement:28px;--nf-type-body:14px;--nf-type-compact:14px;--nf-type-value:20px;--nf-type-metric:32px;--nf-type-total:40px}}

/* All text roles grow together on large screens. */
@media(min-width:1920px){body.composition-site{--nf-type-section:56px;--nf-type-subheading:28px;--nf-type-card:24px;--nf-type-statement:38px;--nf-type-body:18px;--nf-type-compact:16px;--nf-type-caption:13px;--nf-type-ui:13px;--nf-type-eyebrow:11px;--nf-type-currency:18px;--nf-type-value:26px;--nf-type-metric:48px;--nf-type-total:66px}}
@media(min-width:2560px){body.composition-site{--nf-type-section:64px;--nf-type-subheading:32px;--nf-type-card:28px;--nf-type-statement:44px;--nf-type-body:20px;--nf-type-compact:18px;--nf-type-caption:14px;--nf-type-ui:14px;--nf-type-eyebrow:12px;--nf-type-currency:20px;--nf-type-value:30px;--nf-type-metric:56px;--nf-type-total:76px}}
@media(min-width:3440px){body.composition-site{--nf-type-section:72px;--nf-type-subheading:36px;--nf-type-card:30px;--nf-type-statement:48px;--nf-type-body:22px;--nf-type-compact:20px;--nf-type-caption:15px;--nf-type-ui:15px;--nf-type-eyebrow:13px;--nf-type-currency:22px;--nf-type-value:34px;--nf-type-metric:62px;--nf-type-total:84px}}
@media(min-width:3840px){body.composition-site{--nf-type-section:80px;--nf-type-subheading:40px;--nf-type-card:32px;--nf-type-statement:52px;--nf-type-body:24px;--nf-type-compact:22px;--nf-type-caption:16px;--nf-type-ui:16px;--nf-type-eyebrow:14px;--nf-type-currency:24px;--nf-type-value:36px;--nf-type-metric:68px;--nf-type-total:92px}}
