/*
 * Phase 1 typography: public homepage only.
 * Readex Pro is self-hosted; every runtime selector has a double scope boundary.
 */

@font-face {
  font-family: "Readex Pro";
  font-style: normal;
  font-weight: 160 700;
  font-display: swap;
  src: url("../fonts/readex-pro/readex-pro-arabic-wght-normal.woff2") format("woff2");
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}

@font-face {
  font-family: "Readex Pro";
  font-style: normal;
  font-weight: 160 700;
  font-display: swap;
  src: url("../fonts/readex-pro/readex-pro-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;
}

body.hxl-home-typography.public-home.r3-public-page {
  --hxl-home-font: "Readex Pro", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  --font-body: var(--hxl-home-font);
  --font-heading: var(--hxl-home-font);
  --hxl-font: var(--hxl-home-font);
  --hxl-font-ui: var(--hxl-home-font);
  --hxl-font-display: var(--hxl-home-font);
  font-family: var(--hxl-home-font) !important;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.62;
  font-synthesis: none;
}

html[dir="rtl"] body.hxl-home-typography.public-home.r3-public-page {
  --hxl-home-font: "Readex Pro", Tahoma, Arial, "Segoe UI", sans-serif;
  line-height: 1.72;
}

body.hxl-home-typography.public-home.r3-public-page :where(
  h1, h2, h3, h4, h5, h6,
  p, a, button, span, strong, small, bdi, label
) {
  font-family: var(--hxl-home-font) !important;
}

body.hxl-home-typography.public-home.r3-public-page .hxl-brand__tile {
  font-family: var(--hxl-home-font) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

body.hxl-home-typography.public-home.r3-public-page .hxl-brand__wordmark {
  font-family: var(--hxl-home-font) !important;
  font-weight: 700 !important;
  letter-spacing: 0.035em !important;
}

body.hxl-home-typography.public-home.r3-public-page :where(
  .premium-nav-links a,
  .premium-mobile-menu a,
  .shared-language-selector__label,
  .shared-language-selector__option
) {
  font-size: 0.875rem;
  font-weight: 600 !important;
  letter-spacing: 0.005em !important;
  line-height: 1.35;
  text-transform: none !important;
}

body.hxl-home-typography.public-home.r3-public-page .hero-brandline {
  font-size: 0.78rem;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.4;
}

body.hxl-home-typography.public-home.r3-public-page .public-hero-title {
  max-width: 15ch;
  font-size: clamp(3rem, 5.5vw, 5.35rem);
  font-weight: 700 !important;
  letter-spacing: -0.012em !important;
  line-height: 1.12;
  text-shadow: 2px 2px 0 rgba(192, 164, 97, 0.1);
}

body.hxl-home-typography.public-home.r3-public-page .hero-copy-large {
  max-width: 62ch;
  font-size: clamp(1rem, 1.45vw, 1.16rem);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.68;
}

body.hxl-home-typography.public-home.r3-public-page .r3-public-signal span {
  font-size: 0.96rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
}

body.hxl-home-typography.public-home.r3-public-page .section-kicker {
  font-size: 0.78rem;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.35;
  text-transform: none !important;
}

body.hxl-home-typography.public-home.r3-public-page .r3-public-section .section-heading-premium h2 {
  font-size: clamp(1.8rem, 3.4vw, 2.7rem);
  font-weight: 700 !important;
  letter-spacing: -0.008em !important;
  line-height: 1.2;
}

body.hxl-home-typography.public-home.r3-public-page .r3-public-section .section-heading-premium p {
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.68;
}

body.hxl-home-typography.public-home.r3-public-page :where(
  .r3-platform-card h3,
  .r3-product-card .product-title,
  .r3-empty-state h3
) {
  font-size: 1.12rem;
  font-weight: 600 !important;
  letter-spacing: -0.004em !important;
  line-height: 1.42;
  text-shadow: none;
}

body.hxl-home-typography.public-home.r3-public-page :where(
  .r3-platform-card p,
  .r3-card-copy,
  .r3-empty-state p
) {
  font-size: 0.94rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.65;
}

body.hxl-home-typography.public-home.r3-public-page :where(
  .product-meta span,
  .news-meta span,
  .r3-state
) {
  font-size: 0.78rem;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.35;
  text-transform: none !important;
}

body.hxl-home-typography.public-home.r3-public-page .r3-state {
  font-weight: 600 !important;
}

body.hxl-home-typography.public-home.r3-public-page :where(
  .product-meta span,
  .news-meta span
) {
  font-weight: 600 !important;
}

body.hxl-home-typography.public-home.r3-public-page :where(
  .btn,
  .simple-text-link,
  .r3-platform-card > a
) {
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.35;
  text-transform: none !important;
}

body.hxl-home-typography.public-home.r3-public-page .btn-primary {
  font-weight: 700 !important;
}

body.hxl-home-typography.public-home.r3-public-page .product-actions > strong {
  font-size: 1rem;
  font-weight: 700 !important;
  letter-spacing: 0;
  line-height: 1.35;
}

body.hxl-home-typography.public-home.r3-public-page .r3-footer-grid h2 {
  font-size: 0.9rem;
  font-weight: 600 !important;
  letter-spacing: 0.01em;
  line-height: 1.4;
  text-transform: none;
}

body.hxl-home-typography.public-home.r3-public-page .r3-footer-grid :where(p, a) {
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.65;
}

html[dir="rtl"] body.hxl-home-typography.public-home.r3-public-page :where(
  .premium-nav-links a,
  .premium-mobile-menu a,
  .shared-language-selector__label,
  .shared-language-selector__option,
  .public-hero-title,
  .hero-copy-large,
  .section-kicker,
  .r3-public-section .section-heading-premium h2,
  .r3-public-section .section-heading-premium p,
  .r3-platform-card h3,
  .r3-platform-card p,
  .r3-product-card .product-title,
  .r3-card-copy,
  .product-meta span,
  .news-meta span,
  .r3-state,
  .btn,
  .simple-text-link,
  .r3-platform-card > a,
  .r3-empty-state h3,
  .r3-empty-state p,
  .r3-footer-grid h2,
  .r3-footer-grid p,
  .r3-footer-grid a
) {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html[dir="rtl"] body.hxl-home-typography.public-home.r3-public-page .public-hero-title {
  line-height: 1.3;
}

html[dir="rtl"] body.hxl-home-typography.public-home.r3-public-page .r3-public-section .section-heading-premium h2 {
  letter-spacing: 0 !important;
  line-height: 1.34;
  text-transform: none !important;
}

@media (max-width: 1024px) {
  body.hxl-home-typography.public-home.r3-public-page .premium-nav-inner {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
  }

  body.hxl-home-typography.public-home.r3-public-page .public-nav-actions {
    display: none;
  }

  body.hxl-home-typography.public-home.r3-public-page .premium-mobile-toggle {
    display: inline-flex;
  }
}

@media (max-width: 767.98px) {
  body.hxl-home-typography.public-home.r3-public-page .public-hero-title {
    font-size: clamp(2.3rem, 10.5vw, 3.2rem);
    line-height: 1.16;
  }

  html[dir="rtl"] body.hxl-home-typography.public-home.r3-public-page .public-hero-title {
    line-height: 1.34;
  }

  body.hxl-home-typography.public-home.r3-public-page .hero-copy-large,
  body.hxl-home-typography.public-home.r3-public-page .r3-public-section .section-heading-premium p {
    font-size: 1rem;
  }

  body.hxl-home-typography.public-home.r3-public-page .r3-public-section .section-heading-premium h2 {
    font-size: clamp(1.65rem, 8vw, 2.2rem);
  }
}

@media (max-width: 390px) {
  body.hxl-home-typography.public-home.r3-public-page .public-hero-title {
    font-size: clamp(2.15rem, 10vw, 2.55rem);
  }

  body.hxl-home-typography.public-home.r3-public-page .r3-platform-card h3,
  body.hxl-home-typography.public-home.r3-public-page .r3-product-card .product-title {
    font-size: 1.06rem;
  }
}

@media (max-width: 320px) {
  body.hxl-home-typography.public-home.r3-public-page .public-hero-title {
    font-size: 2rem;
  }

  body.hxl-home-typography.public-home.r3-public-page .hxl-brand__wordmark {
    font-size: 0.85rem;
  }
}
