@font-face {
  font-family: "Pixelion Bangla Headline";
  src: url("./lsss.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:where(.site-frame.lang-bn, .legal-main.lang-bn) {
  font-family: "SolaimanLipi", "Nirmala UI", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: normal;
}

:where(.site-frame.lang-bn, .legal-main.lang-bn) :where(*) {
  letter-spacing: normal !important;
}

.mast-brand small {
  font-weight: 500;
}

.footer-identity span {
  font-weight: 500;
}

.brand-poster figcaption {
  text-transform: none;
  font-weight: 700;
}

:where(.site-frame.lang-bn, .legal-main.lang-bn) :where(h1, h2, h3) {
  font-family: "Pixelion Bangla Headline", "SolaimanLipi", "Nirmala UI", sans-serif;
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: normal;
  text-transform: none;
}

.lang-bn .hero-copy-panel h1,
.lang-bn .hero-copy-panel h1 i {
  font-family: "Pixelion Bangla Headline", "SolaimanLipi", "Nirmala UI", sans-serif;
  line-height: 1.08;
  letter-spacing: normal;
}

.lang-bn :where(p, li) {
  font-size: 16px;
  line-height: 1.65;
}

.lang-bn .mast-brand small,
.lang-bn .mast-nav a,
.lang-bn .mini-download,
.lang-bn .language-switch button,
.lang-bn .release-label,
.lang-bn .eyebrow,
.lang-bn .cut-button,
.lang-bn .acid-badge,
.lang-bn .pdf-steps > div > b,
.lang-bn .pdf-steps strong,
.lang-bn .pdf-steps small,
.lang-bn .free-points span,
.lang-bn .round-download span,
.lang-bn .footer-identity span,
.lang-bn .footer-columns strong,
.lang-bn .footer-columns a,
.lang-bn .footer-bottom,
.lang-bn .legal-hero .kicker,
.lang-bn .legal-toc,
.lang-bn .legal-back {
  font-size: 16px;
  line-height: 1.45;
  text-transform: none;
}

.lang-bn .fact-row span,
.lang-bn .fact-row span b {
  font-size: 16px;
  line-height: 1.35;
  letter-spacing: normal;
  text-transform: none;
}

/* Keep Bangla hero buttons exactly the same size as the English buttons. */
.lang-bn .hero-buttons {
  align-items: center;
  gap: 14px;
}

.lang-bn .hero-buttons .cut-button {
  min-width: 220px;
  min-height: 54px;
  padding: 0 17px 0 21px;
  gap: 24px;
  font-size: 15px;
  line-height: normal;
  white-space: nowrap;
}

.lang-bn .hero-buttons .cut-button span {
  display: inline;
  padding-top: 0;
}

.lang-bn .hero-buttons .cut-button b {
  flex: initial;
  font-size: 20px;
  line-height: normal;
}

@media (min-width: 761px) {
  .lang-bn .hero-buttons .primary-cut {
    width: 254px;
  }

  .lang-bn .hero-buttons .outline-cut {
    width: 220px;
  }
}

.lang-bn .brand-poster figcaption {
  font-size: 15px;
  line-height: 1.4;
  letter-spacing: normal;
  text-transform: none;
}

.lang-bn .poster-stamp span {
  font-size: 16px;
  line-height: 1.1;
  letter-spacing: normal;
  text-transform: none;
}

.lang-bn .ink-kicker,
.lang-bn .formats-heading .ink-kicker {
  margin-bottom: 0;
  font-size: 18px;
  line-height: 1.4;
  letter-spacing: normal;
  text-transform: none;
}

.lang-bn .screen-label {
  font-size: 14px;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: none;
}

.lang-bn .mode-rail button span {
  font-size: 18px;
  line-height: 1.35;
  letter-spacing: normal;
  text-transform: none;
}

.lang-bn .mode-copy h3 {
  line-height: 1.2;
  letter-spacing: normal;
}

.lang-bn .mode-copy p {
  font-size: 16px;
  line-height: normal;
}

.lang-bn .mode-copy li {
  font-size: 16px;
  line-height: 1.45;
}

.lang-bn .section-intro > p,
.lang-bn .pdf-content > p,
.lang-bn .formats-heading p,
.lang-bn .use-card p,
.lang-bn .free-copy p,
.lang-bn .final-download p,
.lang-bn .legal-copy p,
.lang-bn .legal-copy li {
  font-size: 16px;
  line-height: 1.65;
}

.lang-bn .section-intro h2,
.lang-bn .formats-heading h2,
.lang-bn .uses-heading h2,
.lang-bn .pdf-content h2,
.lang-bn .free-copy h2,
.lang-bn .final-download h2,
.lang-bn .legal-hero h1,
.lang-bn .legal-copy h2,
.lang-bn .use-card h3 {
  line-height: 1.18;
  letter-spacing: normal;
}

@media (max-width: 760px) {
  .lang-bn .masthead {
    min-height: 82px;
  }

  .lang-bn .hero-copy-panel h1 {
    font-size: clamp(48px, 15vw, 68px);
  }

  .lang-bn .hero-buttons {
    gap: 14px;
  }

  .lang-bn .hero-buttons .cut-button {
    width: calc(100% - 8px);
    min-height: 54px;
    padding: 0 17px 0 21px;
    white-space: normal;
  }

  .lang-bn .section-intro h2,
  .lang-bn .formats-heading h2,
  .lang-bn .uses-heading h2,
  .lang-bn .pdf-content h2,
  .lang-bn .free-copy h2 {
    font-size: clamp(42px, 12vw, 58px);
  }
}

/* Ultra is intentionally limited to section titles; the hero keeps its own typeface. */
.site-frame h2,
.legal-main h1,
.legal-main h2 {
  font-family: "Ultra", "Pixelion Bangla Headline", "SolaimanLipi", Georgia, serif;
  font-weight: 400;
}

.site-frame.lang-en h2,
.legal-main.lang-en h1,
.legal-main.lang-en h2 {
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.site-frame.lang-bn h2,
.legal-main.lang-bn h1,
.legal-main.lang-bn h2 {
  line-height: 1.18;
  letter-spacing: normal;
}

/* Raise every original 10px English label to a readable 14px. */
.lang-en .release-label,
.lang-en .fact-row span,
.lang-en .brand-poster figcaption,
.lang-en .mode-rail button b,
.lang-en .pdf-title-strip,
.lang-en .acid-badge,
.lang-en .format-note span,
.lang-en .free-points span,
.lang-en .footer-identity span,
.lang-en .footer-columns strong,
.lang-en .footer-bottom,
.lang-en .legal-hero .kicker {
  font-size: 14px;
}

/* Testimonial form: Bangla needs a larger size and calmer spacing than English. */
.lang-bn .testimonials-section,
.lang-bn + .testimonial-modal,
.lang-bn ~ .testimonial-modal {
  font-size: 16px;
}

.lang-bn :where(
  .testimonials-heading p,
  .testimonial-open-button,
  .testimonial-empty,
  .testimonial-flash,
  .testimonial-card,
  .testimonial-field label,
  .testimonial-social-title,
  .testimonial-privacy-note,
  .testimonial-form-actions button
),
html[lang="bn"] .testimonial-modal :where(
  .testimonial-dialog-header p,
  .testimonial-field label,
  .testimonial-social-title,
  .testimonial-privacy-note,
  .testimonial-form-actions button,
  .testimonial-response
) {
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: normal;
  text-transform: none;
}

html[lang="bn"] .testimonial-dialog h2 {
  line-height: 1.18;
  letter-spacing: normal;
}

/* Readable Bangla typography for the Terms and Privacy documents. */
.legal-main.lang-bn .legal-hero p,
.legal-main.lang-bn .legal-copy p,
.legal-main.lang-bn .legal-copy li,
.legal-main.lang-bn .legal-line {
  font-size: 18px;
  line-height: 1.7;
}

.legal-main.lang-bn .legal-copy h2 {
  font-size: 30px;
  line-height: 1.3;
}

.legal-main.lang-bn .legal-toc {
  font-size: 17px;
  line-height: 1.7;
}

.legal-main.lang-bn .legal-toc strong {
  font-size: 20px;
  line-height: 1.35;
}

.legal-main.lang-bn .legal-header .brand small,
.legal-main.lang-bn .legal-actions,
.legal-main.lang-bn .legal-back {
  font-size: 16px;
  line-height: 1.4;
}

/* Keep this final override after the shared Bangla navigation rules. */
.lang-bn .mast-brand small {
  font-size: 13px;
  line-height: 0.45;
}
