@font-face {
  font-family: 'Clash Display';
  src: url('/lp-assets/fonts/clash-display-600.woff2') format('woff2');
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: 'Satoshi';
  src: url('/lp-assets/fonts/satoshi-400.woff2') format('woff2');
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: 'Satoshi';
  src: url('/lp-assets/fonts/satoshi-700.woff2') format('woff2');
  font-weight: 700;
  font-display: swap;
}
* { box-sizing: border-box; }
html { color-scheme: dark; scroll-padding-top: 24px; }
body { margin: 0; background: #050505; color: #f4f4f5; font: 400 17px/1.75 'Satoshi', system-ui, sans-serif; }
a { color: inherit; text-underline-offset: .2em; overflow-wrap: anywhere; }
a:hover { color: #c9ccd3; }
a:focus-visible { outline: 2px solid #fff; outline-offset: 5px; border-radius: 2px; }
.page-header, main, footer { width: min(100% - 48px, 840px); margin-inline: auto; }
.page-header { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding-block: 30px; border-bottom: 1px solid #29292e; font-size: 14px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-family: 'Clash Display', system-ui, sans-serif; font-weight: 600; font-size: 21px; text-decoration: none; }
main { padding-block: 76px 60px; }
h1, h2 { font-family: 'Clash Display', system-ui, sans-serif; font-weight: 600; line-height: 1.15; }
h1 { font-size: clamp(42px, 7vw, 70px); letter-spacing: -.03em; margin: 0 0 28px; text-wrap: balance; }
::selection { background: #d7d9de; color: #050505; }
.intro { font-size: clamp(19px, 2.5vw, 24px); line-height: 1.5; max-width: 690px; }
.updated, .reference, footer { font-size: 13px; color: #a6a7ae; }
.contact-card { background: #111114; border: 1px solid #303036; border-radius: 22px; padding: 28px 32px; margin: 38px 0 56px; }
.contact-card h2 { margin: 0; font-size: 26px; }
.contact-card p { color: #c3c4cb; }
.contact-card a { font-weight: 700; font-size: 15px; }
section { margin-block: 40px; }
section h2 { font-size: clamp(25px, 4vw, 32px); letter-spacing: -.025em; }
section p, section li { color: #c3c4cb; }
section strong { color: #f4f4f5; }
ul { padding-left: 1.3em; }
li + li { margin-top: 14px; }
.reference { border-top: 1px solid #29292e; padding-top: 24px; }
footer { display: flex; justify-content: space-between; gap: 24px; border-top: 1px solid #29292e; padding-block: 26px; }
.skip-link { position: absolute; left: 24px; top: -100px; padding: 10px 16px; background: #fff; color: #050505; z-index: 1; }
.skip-link:focus { top: 12px; }
.skip-link:hover { color: #050505; }
@media (max-width: 600px) {
  body { font-size: 16px; }
  main { padding-top: 46px; }
  .contact-card { padding: 24px; }
  .page-header { gap: 12px; }
  .page-header > a:last-child { font-size: 12px; }
}
