body,
button,
input,
select,
textarea {
  font-family: var(--font-body);
}

h1,
h2,
h3,
h4,
h5,
h6,
.hero-text h1,
.product-archive__header h1,
.info-hero h1,
.info-step-band__heading h2,
.trilaesim-how-showcase__copy h2,
.front-faq__heading h2,
.journal-hero h1,
.default-page__hero h1,
.journal-single__header h1,
.not-found-page h1,
.journal-card__title,
.footer-brand h2,
.site-footer h2,
.woocommerce div.product .product_title {
  font-family: var(--font-display);
  letter-spacing: -0.02em;
}

.hero-text h1,
.product-archive__header h1,
.info-hero h1,
.journal-hero h1,
.default-page__hero h1,
.journal-single__header h1,
.not-found-page h1 {
  font-weight: 800;
  line-height: 1.06;
}

.front-faq__heading h2,
.trilaesim-how-showcase__copy h2,
.info-step-band__heading h2,
.support-cta__content h2,
.section-heading h2 {
  font-weight: 800;
  line-height: 1.1;
}

.hero-description,
.section-text,
.trilaesim-how-showcase__text,
.front-faq__heading p:last-child,
.info-hero p,
.journal-hero p:not(.section-eyebrow),
.default-page__hero p,
.journal-single__header p,
.not-found-page__content > p,
.prose-content {
  font-size: clamp(1rem, 1.25vw, 1.12rem);
  line-height: 1.65;
}

.section-eyebrow,
.info-hero__eyebrow,
.front-faq__eyebrow,
.trilaesim-how-showcase__eyebrow,
.journal-card__meta {
  font-weight: 800;
  letter-spacing: 0.11em;
}

.button,
.esim-categories__button,
.info-hero__button,
.trilaesim-how-showcase__link,
.product-archive__tabs a,
.front-faq__action a,
.site-header a,
.main-navigation a {
  font-weight: 750;
}

.esim-product-card__title,
.archive-product-card__title,
.front-faq__item summary,
.trilaesim-how-showcase__step-copy strong {
  font-weight: 750;
  line-height: 1.22;
}

.esim-product-card__price,
.archive-product-card__price {
  font-weight: 800;
}

@media (max-width: 640px) {
  h1,
  .hero-text h1,
  .product-archive__header h1,
  .info-hero h1,
  .journal-hero h1,
  .default-page__hero h1,
  .journal-single__header h1,
  .not-found-page h1 {
    letter-spacing: -0.018em;
  }

  .hero-description,
  .section-text,
  .info-hero p,
  .front-faq__heading p:last-child,
  .trilaesim-how-showcase__text {
    font-size: 1rem;
    line-height: 1.6;
  }
}
