/* ──────────────────────────────────────────────────────────────────────────
   Devanagari and Bengali-Assamese corrections, loaded for /hi/ and /as/.

   The display type is set for Latin: line-height .91 on the hero, negative
   letter-spacing, ALL-CAPS labels. Latin lowercase sits inside one band, so a
   line box shorter than the font size still clears it. Devanagari hangs its
   matras above the shirorekha and below the baseline, and Bengali-Assamese
   does the same, so those lines collide — the second line of a two-line
   headline lands on the first.

   Neither Bricolage Grotesque nor Hanken Grotesk carries these scripts either,
   so without a face of their own both languages fall back to whatever the
   device has.

   Everything is scoped by :lang(), so English and Arabic are untouched.
   ────────────────────────────────────────────────────────────────────────── */

/* ── The faces ──────────────────────────────────────────────────────────── */
:lang(hi) body,
:lang(hi) h1, :lang(hi) h2, :lang(hi) h3, :lang(hi) h4, :lang(hi) h5, :lang(hi) h6,
:lang(hi) p, :lang(hi) a, :lang(hi) span, :lang(hi) div, :lang(hi) li, :lang(hi) label,
:lang(hi) strong, :lang(hi) em, :lang(hi) small, :lang(hi) td, :lang(hi) th,
:lang(hi) button, :lang(hi) input, :lang(hi) select, :lang(hi) textarea,
:lang(hi) figcaption, :lang(hi) blockquote, :lang(hi) summary, :lang(hi) legend {
  font-family: "Noto Sans Devanagari", "Nirmala UI", system-ui, sans-serif !important;
}

:lang(as) body,
:lang(as) h1, :lang(as) h2, :lang(as) h3, :lang(as) h4, :lang(as) h5, :lang(as) h6,
:lang(as) p, :lang(as) a, :lang(as) span, :lang(as) div, :lang(as) li, :lang(as) label,
:lang(as) strong, :lang(as) em, :lang(as) small, :lang(as) td, :lang(as) th,
:lang(as) button, :lang(as) input, :lang(as) select, :lang(as) textarea,
:lang(as) figcaption, :lang(as) blockquote, :lang(as) summary, :lang(as) legend {
  font-family: "Noto Sans Bengali", "Nirmala UI", system-ui, sans-serif !important;
}

/* ── Room for the matras ─────────────────────────────────────────────────
   The display headings are the ones set below 1.1; at clamp(52px,9.5vw,124px)
   a .91 line box is roughly 11px shorter than the type, and a Devanagari ि or
   ें needs about that much again above the shirorekha. 1.35 clears the font box
   (about 1.3 em in Noto Sans Devanagari) with a little left over. */
:lang(hi) .sl-h1, :lang(as) .sl-h1 { line-height: 1.35; }

:lang(hi) .sl-section-h, :lang(as) .sl-section-h,
:lang(hi) .sl-why-h, :lang(as) .sl-why-h,
:lang(hi) .sl-bhero-h, :lang(as) .sl-bhero-h,
:lang(hi) .ma-title, :lang(as) .ma-title,
:lang(hi) .sl-calc-amt, :lang(as) .sl-calc-amt,
:lang(hi) .sl-feat-head h3, :lang(as) .sl-feat-head h3 { line-height: 1.35; }

:lang(hi) .sl-card-name, :lang(as) .sl-card-name,
:lang(hi) .sl-hcard-name, :lang(as) .sl-hcard-name,
:lang(hi) .sl-witem-title, :lang(as) .sl-witem-title,
:lang(hi) .sl-kind-name, :lang(as) .sl-kind-name,
:lang(hi) .qr-title, :lang(as) .qr-title,
:lang(hi) .ma-sc-title, :lang(as) .ma-sc-title { line-height: 1.45; }

/* Body copy too: 1.4–1.5 is comfortable in Latin and tight in these scripts. */
:lang(hi) body, :lang(as) body { line-height: 1.7; }

/* Some headings in the app carry their line-height in a style attribute, which no
   stylesheet can outrank without this. The value matches the class rules above, so
   nothing moves twice. */
:lang(hi) h1, :lang(as) h1,
:lang(hi) h2, :lang(as) h2,
:lang(hi) h3, :lang(as) h3 { line-height: 1.35 !important; }

/* ── Tracking and caps ───────────────────────────────────────────────────
   The Latin display face is set with negative letter-spacing, which pulls
   Devanagari conjuncts into each other and breaks the shirorekha. And neither
   script has capitals: text-transform does nothing to the letters, but the
   wide tracking that goes with an ALL-CAPS label still pulls words apart. */
:lang(hi) h1, :lang(as) h1, :lang(hi) h2, :lang(as) h2, :lang(hi) h3, :lang(as) h3,
:lang(hi) .sl-h1, :lang(as) .sl-h1,
:lang(hi) .sl-section-h, :lang(as) .sl-section-h,
:lang(hi) .sl-why-h, :lang(as) .sl-why-h,
:lang(hi) .sl-bhero-h, :lang(as) .sl-bhero-h { letter-spacing: 0 !important; }

:lang(hi) .sl-section-eyebrow, :lang(as) .sl-section-eyebrow,
:lang(hi) .sl-feat-eyebrow, :lang(as) .sl-feat-eyebrow,
:lang(hi) .ma-eyebrow, :lang(as) .ma-eyebrow,
:lang(hi) .sl-card-tag, :lang(as) .sl-card-tag,
:lang(hi) .sl-witem-tag, :lang(as) .sl-witem-tag,
:lang(hi) .sl-offer-tag, :lang(as) .sl-offer-tag,
:lang(hi) .sl-vcard-tag, :lang(as) .sl-vcard-tag,
:lang(hi) .ma-msg-new-tag, :lang(as) .ma-msg-new-tag,
:lang(hi) .sl-stat-l, :lang(as) .sl-stat-l {
  text-transform: none !important;
  letter-spacing: 0 !important;
}
