/* Shared Home typography only. No layout, color or spacing rules. */
@font-face {
  font-family: "ROCA";
  src: url("/__l5e/assets-v1/a0f9202d-3ab0-4f33-ad80-50b9775e6d23/roca-two-black.ttf") format("truetype");
  font-style: normal;
  font-weight: 700 900;
  font-display: swap;
}
:root {
  --font-home-heading: "ROCA", Georgia, serif;
  --font-home-body: "Poppins", Arial, sans-serif;
  --home-type-display: 64px;
  --home-type-h1: 48px;
  --home-type-h2: 36px;
  --home-type-h3: 26px;
  --home-type-h4: 20px;
  --home-type-body: 14px;
  --home-type-body-lg: 16px;
  --home-type-small: 12px;
  --home-type-caption: 11px;
  --home-type-button: 14px;
  --home-type-h1-leading: .98;
  --home-type-h2-leading: 1.02;
  --home-type-h3-leading: 1.05;
  --home-type-body-leading: 1.5;
  --home-type-heading-weight: 700;
  --home-type-body-weight: 400;
  --home-type-button-weight: 600;
}
.typography-document { font-family: var(--font-home-body); }
.platform-typography,
.platform-typography :where(*) {
  font-family: var(--font-home-body);
  letter-spacing: 0;
}
.platform-typography {
  font-size: var(--home-type-body);
  line-height: var(--home-type-body-leading);
  font-weight: var(--home-type-body-weight);
}
.platform-typography :where(p, li, dd, blockquote, input, textarea, select, td, [role="cell"], [role="tabpanel"]) {
  font-size: var(--home-type-body);
  line-height: var(--home-type-body-leading);
}
.platform-typography :where(small, label, figcaption, caption, th, [role="columnheader"], .text-xs, .text-sm) {
  font-size: var(--home-type-small);
  line-height: var(--home-type-body-leading);
}
.platform-typography :where(h1, h2, h3, h4, h5, h6, dt, [role="heading"], .font-serif, .font-display, .platform-card-title) {
  font-family: var(--font-home-heading);
  font-weight: var(--home-type-heading-weight);
  letter-spacing: 0;
}
.platform-typography :where(h1, h2, h3, h4, h5, h6, dt, [role="heading"]) :where(span, strong, em, a) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}
.platform-typography :where(.text-base, .text-lg, .text-xl):not(:is(h1, h2, h3, h4, h5, h6, dt, .font-serif, .font-display)) {
  font-size: var(--home-type-body);
  line-height: var(--home-type-body-leading);
}
.platform-typography :where(.font-display):not(:is(h1, h2, h3)) { font-weight: var(--home-type-heading-weight); }
.platform-typography h1 {
  font-size: var(--home-type-h1);
  line-height: var(--home-type-h1-leading);
}
.platform-typography h2 {
  font-size: var(--home-type-h2);
  line-height: var(--home-type-h2-leading);
}
.platform-typography :where(h3, h4, h5, h6, dt, [role="heading"], .platform-card-title),
.platform-typography h2.text-base {
  font-size: var(--home-type-h3);
  line-height: var(--home-type-h3-leading);
}
.platform-typography :where(button, [role="button"], a:not(p a):not(li a):not(dd a):not(h1 a):not(h2 a):not(h3 a):not(h4 a):not(h5 a):not(h6 a), summary) {
  font-size: var(--home-type-button);
  line-height: var(--home-type-body-leading);
  font-weight: var(--home-type-button-weight);
}
/* FAQ disclosure headings retain the card-title hierarchy. */
.platform-typography h3 button {
  font-family: var(--font-home-heading);
  font-size: var(--home-type-h3);
  line-height: var(--home-type-h3-leading);
  font-weight: var(--home-type-heading-weight);
}
.platform-typography footer h3 {
  font-family: var(--font-home-body);
  font-size: var(--home-type-body);
  line-height: var(--home-type-body-leading);
  font-weight: var(--home-type-heading-weight);
}
/* Portalled controls inherit the same body/button tokens outside page wrappers. */
.typography-document :where([role="dialog"], [role="alertdialog"], [role="listbox"], [role="menu"]):not(.home-resource-menu) {
  font-family: var(--font-home-body);
  font-size: var(--home-type-body);
  line-height: var(--home-type-body-leading);
  letter-spacing: 0;
}
.typography-document :where([role="dialog"], [role="alertdialog"]) :where(h1, h2, h3, h4, h5, h6, .platform-card-title) {
  font-family: var(--font-home-heading);
  font-size: var(--home-type-h3);
  line-height: var(--home-type-h3-leading);
  font-weight: var(--home-type-heading-weight);
  letter-spacing: 0;
}
.typography-document :where([role="dialog"], [role="alertdialog"], [role="listbox"], [role="menu"]):not(.home-resource-menu) :where(p, label, input, select, textarea, button, a, [role="option"], [role="menuitem"]) {
  font-family: var(--font-home-body);
  font-size: var(--home-type-body);
  line-height: var(--home-type-body-leading);
  letter-spacing: 0;
}
.typography-document :where([role="dialog"], [role="alertdialog"]) :where(button, a) {
  font-size: var(--home-type-button);
  font-weight: var(--home-type-button-weight);
}
@media (max-width: 767px) {
  :root {
    --home-type-display: 40px;
    --home-type-h1: 36px;
    --home-type-h2: 28px;
    --home-type-h3: 22px;
    --home-type-h4: 18px;
    --home-type-body: 16px;
    --home-type-button: 14px;
  }
}
