/* Subul Real Estate — EN-only overrides (Cormorant Garamond headings, EN type scale, LTR). Loaded last. Owned by lane T6.
   Reference: gen/build-pages.js langs table — EN headings 'Cormorant Garamond' (h1 54 / h2 38 / h3 24 / hero 68, 500),
   body 'IBM Plex Sans' 16px, paragraphs line-height 1.7, tracking normal on every heading role.
   Everything here is scoped to :lang(en) (the layout emits <html lang="en">) so AR never pays for it. */

/* Self-hosted Cormorant Garamond: one variable file (wght 300–700), Latin subset, OFL 1.1 (see fonts/LICENSE).
   Fetched from the Google Fonts CDN (cormorantgaramond/v21, Cormorant 4.001). The reference also requests italic 400 but
   never uses it, so it is not shipped. No <link rel="preload"> is possible from the extension (the head partial is core);
   font-display: swap keeps the fallback serif readable until the file lands. */
@font-face {
    font-family: 'Cormorant Garamond';
    font-style: normal;
    font-weight: 400 600;
    font-display: swap;
    src: url('fonts/cormorant-garamond-latin-wght-normal.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------------------------------------------------------------- heading roles → Cormorant */

/* Every element the reference renders with font-family:var(--head). The AR layers set some of these to
   `font-family: inherit` (Plex) or leave the core sans; EN flips them here. Tracking is normal everywhere. */
:lang(en) .re-h1,
:lang(en) .re-h2,
:lang(en) .re-h3,
:lang(en) .re-hero__title,
:lang(en) .re-project__title,
:lang(en) .re-section__title,
:lang(en) .re-cta__title,
:lang(en) .re-pcard__name,
:lang(en) .re-pcard__price,
:lang(en) .re-post__title,
:lang(en) .re-dcard__name,
:lang(en) .re-stats__value,
:lang(en) .re-stat__value,
:lang(en) .re-step__num,
:lang(en) .re-compare__name,
:lang(en) .re-lead-split__title,
:lang(en) .re-lead__title,
:lang(en) .re-modal__title,
:lang(en) .re-film__title,
:lang(en) .re-dev__quote p,
:lang(en) .re-project .re-facts__value,
:lang(en) .re-project__floor-title,
:lang(en) .re-units__price,
:lang(en) .re-project .re-project__why-card h3,
:lang(en) .re-project__price-value,
:lang(en) .art-title,
:lang(en) .builder-page:has(.builder-richtext) .builder-heading h1 {
    font-family: 'Cormorant Garamond', serif;
    letter-spacing: 0;
}

/* Reference roles that stay in the body face even though they sit inside heading-ish containers:
   devRow name (16/500 Plex, REF:269), icon-card / step titles (18/500, REF:168-169), form sub-title (14px, REF:196). */
:lang(en) .re-dcard--row .re-dcard__name,
:lang(en) .re-dev-card__name,
:lang(en) .re-icard__title,
:lang(en) .re-step__title,
:lang(en) .form-step-title,
:lang(en) .re-project .form-step-title {
    font-family: 'IBM Plex Sans', sans-serif;
    letter-spacing: 0;
}

/* Core sections.css balances every h1-h3 (`text-wrap: balance`); the reference wraps naturally, so the hero reads
   "Every door leads to an / investment." like the design instead of splitting after "leads". */
:lang(en) h1,
:lang(en) h2,
:lang(en) h3 {
    text-wrap: wrap;
}

/* ---------------------------------------------------------------- EN sizes (AR layers ship the AR scale) */

/* h2 roles: 38px / 1.15 — featured post (REF:464), developer-in-focus (REF:393), CTA-band copy (REF:265),
   modal title (REF:195). */
:lang(en) .re-post--featured .re-post__title,
:lang(en) .re-dcard--focus .re-dcard__name,
:lang(en) .re-lead-split__title,
:lang(en) .re-modal__title {
    font-size: 38px;
    line-height: 1.15;
}

/* h3 roles: 24px — project cards (REF:242, lh 1.2), post cards (REF:255, lh 1.3), developer cards (REF:440),
   developer quote (REF:452, lh 1.4). */
:lang(en) .re-pcard__name {
    font-size: 24px;
    line-height: 1.2;
}

:lang(en) .re-post__title {
    font-size: 24px;
    line-height: 1.3;
}

:lang(en) .re-dcard--grid .re-dcard__name {
    font-size: 24px;
    line-height: 1.3;
}

:lang(en) .re-dev__quote p {
    font-size: 24px;
    line-height: 1.4;
}

/* Stat numbers 40/600/1 (REF:388, 400), card price 20/600 (REF:244), step numbers 14px .22em (REF:169),
   compare-table name 18/500 (REF:430). */
:lang(en) .re-stats__value,
:lang(en) .re-stat__value {
    font-size: 40px;
    font-weight: 600;
    line-height: 1;
}

:lang(en) .re-pcard__price {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
}

:lang(en) .re-step__num {
    font-size: 14px;
    letter-spacing: .22em;
}

:lang(en) .re-compare__name {
    font-size: 18px;
    font-weight: 500;
}

/* Page h1 on the core-rendered post / policy templates: 54px / 1.1 like every other EN h1 (REF:474, 159). */
:lang(en) .art-title,
:lang(en) .builder-page:has(.builder-richtext) .builder-heading h1 {
    font-size: 54px;
    font-weight: 500;
    line-height: 1.1;
}

/* ---------------------------------------------------------------- paragraph rhythm: EN L.lh = 1.7 */

/* The block / page layers carry the AR 1.9 on these paragraphs; the reference uses L.lh (1.7) for EN. */
:lang(en) .re-icard__text,
:lang(en) .re-step__text,
:lang(en) .re-split__paragraph,
:lang(en) .re-split__list--plain span,
:lang(en) .re-faq__a,
:lang(en) .re-cta__copy,
:lang(en) .re-dcard--focus .re-dcard__text,
:lang(en) .re-post--featured .re-post__ex,
:lang(en) .re-lead__text,
:lang(en) .re-lead__form .contact-form .form-step-title,
:lang(en) .re-lead__form .contact-form .form-success,
:lang(en) .re-dev__about-lead,
:lang(en) .re-dev__about-copy > .re-muted,
:lang(en) .re-dev__brand-text,
:lang(en) .re-project__lead,
:lang(en) .re-project__text,
:lang(en) .re-project .re-pay,
:lang(en) .re-project__faq-lead,
:lang(en) .prose,
:lang(en) .builder-page:has(.builder-richtext) .builder-heading + .builder-richtext,
:lang(en) .re-footer__tagline,
:lang(en) .re-modal__intro,
:lang(en) .re-modal .form-success {
    line-height: 1.7;
}

/* ---------------------------------------------------------------- ≤ 900: reference [data-h1] 34px / [data-hero] 38px */
@media (max-width: 900px) {
    :lang(en) .art-title,
    :lang(en) .builder-page:has(.builder-richtext) .builder-heading h1 {
        font-size: 34px;
    }
}
