:root {
  --ink: #18343e;
  --muted: #455b65;
  --link: #293f78;
  --pale: #edf3f6;
  --line: #c4d0d8;
}
* { box-sizing: border-box; }
html { scroll-padding-top: 24px; }
body { overflow-wrap: break-word; }
a { color: inherit; }
a:focus-visible { outline: 3px solid #7364b8; outline-offset: 4px; }
a:hover { text-decoration-thickness: 2px; }
main:focus { outline: none; }
::selection { background: #dad5f1; color: #18343e; }
.margin-zero { margin: 0; }
.mt-zero { margin-top: 0; }
.mt-medium { margin-top: 24px; }
.mb-zero { margin-bottom: 0; }
.mb-small { margin-bottom: 12px; }
.mb-medium { margin-bottom: 24px; }
.mb-large { margin-bottom: 40px; }
.padding-zero { padding: 0; }
.pad-block-small { padding-block: 12px; }
.pad-block-medium { padding-block: 28px; }
.pad-block-large { padding-block: 36px; }
.pad-inline-small { padding-inline: 8px; }
.pad-inline-medium { padding-inline: 24px; }
.pad-hero { padding: 48px; }
.pad-article { padding: 48px; }
.shell { width: min(1248px, calc(100% - 80px)); }
.center { margin-inline: auto; }
.measure { max-width: 68ch; }
.width-hero { width: 66%; }
.width-full { width: 100%; }
.min-width-zero { min-width: 0; }
.height-scene { height: 280px; }
.block { display: block; }
.inline-flex { display: inline-flex; }
.flex { display: flex; }
.grid { display: grid; }
.wrap { flex-wrap: wrap; }
.align-center { align-items: center; }
.gap-small { gap: 12px; }
.gap-medium { gap: 32px; }
.gap-inline-large { column-gap: 56px; }
.index-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.question-columns { grid-template-columns: minmax(180px, 0.42fr) minmax(0, 1fr); }
.relative { position: relative; }
.absolute { position: absolute; }
.top-small { top: 8px; }
.left-small { left: 16px; }
.z-front { z-index: 5; }
.inset-zero { inset: 0; }
.image-bleed { inset: -8px; }
.width-bleed { width: calc(100% + 16px); }
.height-bleed { height: calc(100% + 16px); }
.object-cover { object-fit: cover; }
.clip { overflow: hidden; }
.radius-large { border-radius: 28px; }
.radius-small { border-radius: 12px; }
.radius-pill { border-radius: 999px; }
.shadow-glass { box-shadow: 0 24px 80px #06182140; }
.blur-glass { backdrop-filter: blur(24px); }
.bg-night { background: #122934; }
.bg-glass { background-color: #f5f8fb; }
.bg-paper { background-color: #f5f8fb; }
.bg-landscape { background: linear-gradient(145deg, #c7d8e4 4%, #dcddeb 38%, #a8c6cc 70%, #77999b); }
.bg-lilac { background-color: #ddd8f3; }
.ink-main { color: var(--ink); }
.ink-muted { color: var(--muted); }
.ink-link { color: var(--link); }
.ink-pale { color: var(--pale); }
.ink-transparent { color: transparent; }
.font-sans { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.font-serif { font-family: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif; }
.font-mono { font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace; }
.weight-normal { font-weight: 400; }
.weight-medium { font-weight: 600; }
.size-body { font-size: 18px; }
.size-label { font-size: 16px; }
.size-hero { font-size: clamp(40px, 4.65vw, 67px); }
.size-title { font-size: clamp(40px, 4.35vw, 62px); }
.size-section { font-size: clamp(30px, 3vw, 42px); }
.size-question { font-size: 29px; }
.size-card { font-size: 29px; }
.line-body { line-height: 1.65; }
.line-tight { line-height: 1.13; }
.tracking-tight { letter-spacing: -0.025em; }
.tracking-label { letter-spacing: 0.045em; }
.border-top { border-top: 1px solid var(--line); }
.list-none { list-style: none; }
.no-underline { text-decoration: none; }
.underline { text-decoration-line: underline; }
.underline-offset { text-underline-offset: 5px; }
.tap { min-height: 48px; min-width: 48px; }
.scroll-offset { scroll-margin-top: 28px; }
.hover-tint:hover { background-color: #e8edf5; }
.skip-link { transform: translateY(-200%); }
.skip-link:focus { transform: translateY(0); }
@media (max-width: 760px) {
  .shell { width: calc(100% - 32px); }
  .pad-hero { padding: 28px 24px; }
  .pad-article { padding: 28px 24px; }
  .width-hero { width: 100%; }
  .question-columns { grid-template-columns: minmax(0, 1fr); }
  .index-columns { grid-template-columns: minmax(0, 1fr); }
  .gap-medium { gap: 18px; }
  .gap-inline-large { column-gap: 0; }
  .size-question { font-size: 28px; }
  .size-card { font-size: 28px; }
  .height-scene { height: 208px; }
  .pad-block-large { padding-block: 28px; }
  .mb-large { margin-bottom: 28px; }
  .radius-large { border-radius: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
@media print {
  .bg-night { background: white; }
  .ink-pale { color: #18343e; }
  .shell { width: 100%; }
  .shadow-glass { box-shadow: none; }
  .blur-glass { backdrop-filter: none; }
  .bg-glass, .bg-paper { background-color: white; }
  .pad-article, .pad-hero { padding: 12px; }
  .question-columns { grid-template-columns: minmax(0, 1fr); }
  figure { display: none; }
  .width-hero { width: 100%; }
  .skip-link { display: none; }
  a { color: #18343e; }
}
