@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');

:root { font-family: 'DM Sans', sans-serif; color: #eaeef1; background: #11171e; color-scheme: dark; }
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: radial-gradient(ellipse at 80% 0%, #23373588, transparent 50%); }
.page-shell { max-width: 1000px; margin: auto; padding: 32px 44px; }
.site-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.brand-logo { display: block; width: 300px; max-width: 100%; height: auto; }
.brand-link { max-width: 100%; }
nav { display: flex; gap: 8px 24px; flex-wrap: wrap; }
a { color: #c6efaa; text-underline-offset: 4px; }
a:hover { color: #fff; }
a:focus-visible { outline: 3px solid #c6efaa; outline-offset: 5px; border-radius: 2px; }
nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
nav a[aria-current='page'] { color: #fff; }
main { max-width: 720px; margin: 64px auto; }
.eyebrow { color: #c6efaa; font-size: 12px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; }
h1, h2, h3 { font-family: Manrope, sans-serif; }
h1 { font-size: clamp(36px, 6vw, 54px); line-height: 1.15; letter-spacing: -1.8px; margin: 16px 0; }
h2 { font-size: 23px; line-height: 1.4; letter-spacing: -.5px; margin: 36px 0 12px; }
h3 { font-size: 18px; line-height: 1.5; margin: 24px 0 8px; }
p, li { color: #b8c3cc; font-size: 16px; line-height: 1.8; }
p { margin: 12px 0; }
li { margin: 10px 0; }
ul { padding-left: 24px; }
strong { color: #eaeef1; }
.lead { font-size: 19px; line-height: 1.7; }
.updated, .release-date { color: #aab5be; font-size: 14px; }
.contents { display: flex; gap: 4px 20px; flex-wrap: wrap; border-block: 1px solid #35404a; padding: 16px 0; margin: 28px 0; }
.contents a { min-height: 44px; display: inline-flex; align-items: center; }
section { scroll-margin-top: 24px; }
.release { border-top: 1px solid #35404a; padding: 28px 0 12px; margin-top: 32px; }
.release h2 { margin-top: 8px; }
.release-date { margin: 0; }
footer { border-top: 1px solid #29343e; padding: 24px 0; }
footer p { font-size: 13px; color: #aab5be; }
.skip-link { position: absolute; top: -100px; left: 20px; padding: 12px; background: #11171e; }
.skip-link:focus { top: 12px; }
@media (max-width: 600px) {
  .page-shell { padding: 24px 20px; }
  .brand-logo { width: 260px; }
  main { margin: 40px auto; }
  nav { gap: 4px 20px; }
}
