/*
 * Site typography
 *
 * Source Sans 3 is the single interface and reading family. Page styles retain
 * their layouts and display scales; this final layer keeps type behavior
 * consistent across pages and themes.
 */

@font-face {
  font-family: "Source Sans 3";
  src: url("assets/fonts/source-sans-3-latin.woff2") format("woff2");
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
}

@font-face {
  font-family: "Source Sans 3";
  src: url("assets/fonts/source-sans-3-italic-latin.woff2") format("woff2");
  font-style: italic;
  font-weight: 400 600;
  font-display: swap;
}

:root {
  --font-sans: "Source Sans 3", sans-serif;
  --font-mono: var(--font-sans);
  --font-weight-regular: 400;
  --font-weight-semibold: 600;
  --type-text-xs: 12px;
  --type-text-sm: 13px;
  --type-text-body: 16px;
  --type-text-lede: 17px;
  --type-text-subheading: 22px;
  --type-leading-body: 1.7;
  --type-leading-heading: 1.15;
  --type-tracking-heading: -0.015em;
  --type-tracking-label: 0.07em;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: var(--font-sans);
  font-kerning: normal;
  font-weight: var(--font-weight-regular);
  letter-spacing: 0;
}

button,
input,
select,
textarea,
code,
kbd,
samp,
pre {
  font-family: var(--font-sans);
  font-kerning: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-sans);
  font-weight: var(--font-weight-semibold);
  letter-spacing: var(--type-tracking-heading);
}

h1 {
  line-height: 1.05;
}

h2 {
  line-height: 1.2;
}

h3,
h4,
h5,
h6 {
  line-height: 1.35;
}

strong,
b,
th {
  font-weight: var(--font-weight-semibold);
}

.prose h2 {
  font-size: var(--type-text-subheading);
  line-height: 1.25;
}

.prose h3,
.card h2,
.card h3 {
  font-size: 16px;
  letter-spacing: 0;
  line-height: 1.35;
}

.prose p,
.prose li {
  font-size: var(--type-text-body);
  line-height: var(--type-leading-body);
}

.lede,
.gallery-intro,
.earth-deck,
.proxima-deck,
.saturn-deck,
.planet-deck {
  font-size: var(--type-text-lede);
  line-height: 1.65;
}

.planet-section p,
.planet-section ul,
.planet-section li,
.earth-copy {
  font-size: 15px;
  line-height: var(--type-leading-body);
}

.planet-section h2 {
  font-size: 15px;
  letter-spacing: var(--type-tracking-label);
  line-height: 1.35;
}

.card p {
  font-size: 14.5px;
  line-height: 1.65;
}

.notice,
.gallery-message,
.earth-image-loading {
  font-size: 14px;
  line-height: 1.65;
}

.founder-meta,
.page-meta,
.planet-meta {
  font-size: var(--type-text-xs);
  letter-spacing: 0;
}

.eyebrow,
.card-kicker {
  font-size: 11px;
  letter-spacing: var(--type-tracking-label);
}

.planet-kicker,
.status-badge,
.badge,
.gallery-brand,
.earth-live,
.earth-caption,
.saturn-fact span,
.moon-table th,
.paper-table th {
  font-size: 11px;
  letter-spacing: var(--type-tracking-label);
}

.fact dt,
.earth-meta dt {
  font-size: 11px;
  letter-spacing: var(--type-tracking-label);
}

.fact dd,
.earth-meta dd {
  font-size: 14px;
  line-height: 1.55;
}

.paper-table,
.moon-table {
  font-size: var(--type-text-sm);
}

.site-nav .nav-dropdown-context,
.site-nav .nav-dropdown-group-label,
.soon-tag {
  font-size: 10.5px;
  letter-spacing: var(--type-tracking-label);
}

.footer-column h2 {
  font-size: 11px;
  letter-spacing: var(--type-tracking-label);
}

.footer-column a,
.footer-bottom {
  font-size: 12.5px;
}

.legal-toc a,
.btn-small {
  font-size: var(--type-text-xs);
}

.btn {
  font-size: var(--type-text-sm);
}

.catalog-context span {
  font-size: 12.5px;
}

.planet-card strong {
  font-size: 14px;
}

.planet-card span {
  font-size: 11px;
  letter-spacing: var(--type-tracking-label);
}

.planet-card small {
  font-size: 12.5px;
}

.fp-watermark,
.fp-watermark a {
  font-family: var(--font-sans) !important;
}

@media (max-width: 700px) {
  .planet-section p,
  .planet-section ul,
  .planet-section li {
    font-size: 15px;
  }
}
