:root{
  --bg:#eef0f4; --ink:#0c1020; --soft:#3a4260; --dot:rgba(12,16,32,.13); --hot:#2448e8; --on-hot:#fff; --rule:rgba(12,16,32,.14);
  --m:clamp(20px,3vw,40px); color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#07090f; --ink:#eef1f8; --soft:#a9b1c6; --dot:rgba(238,241,248,.14); --hot:#6e8cff; --on-hot:#07090f; --rule:rgba(238,241,248,.16); color-scheme:dark}
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink)}
body{font:400 17px/1.6 "Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(var(--dot) .8px,transparent 1.2px);background-size:12px 12px;background-attachment:fixed}
::selection{background:var(--hot);color:var(--on-hot)}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1.5px;text-decoration-color:var(--hot)}
a:hover{color:var(--hot)}
a:focus-visible,:focus-visible{outline:3px solid var(--hot);outline-offset:4px;border-radius:2px}
.page{max-width:760px;margin:0 auto;padding:calc(var(--m) + env(safe-area-inset-top,0px)) var(--m) calc(var(--m) + env(safe-area-inset-bottom,0px))}
header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;font-size:16px}
header nav{display:flex;flex-wrap:wrap;gap:6px clamp(14px,2vw,28px)}
header nav a{text-decoration:none;padding-block:4px}
header nav a:hover,header nav a[aria-current]{text-decoration:underline}
header a.home{font-weight:800;font-size:20px;letter-spacing:-.03em;color:var(--ink);text-decoration:none}
article{background:var(--bg);padding-block:48px 24px}
h1{margin:0 0 8px;font-weight:800;font-size:clamp(36px,6vw,64px);line-height:1;letter-spacing:-.04em}
.meta{margin:0 0 32px;color:var(--soft);font-size:15px}
h2{margin:40px 0 8px;font-weight:800;font-size:22px;letter-spacing:-.02em;line-height:1.25}
p,ul{margin:0 0 14px}
ul{padding-left:1.2em}
li{margin-bottom:6px}
strong{font-weight:500}
.soft{color:var(--soft)}
footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding-top:24px;border-top:1px solid var(--rule);font-size:14px;color:var(--soft);background:var(--bg)}
footer nav{display:flex;flex-wrap:wrap;gap:6px 16px}
.card{margin:24px 0;padding:20px 24px;border:1px solid var(--rule);border-radius:16px}
.card p:last-child{margin-bottom:0}
.big{font-size:clamp(22px,2.6vw,30px);font-weight:500;letter-spacing:-.01em}
.skip{position:absolute;left:var(--m);top:-60px;padding:8px 12px;background:var(--hot);color:var(--on-hot);z-index:9}
.skip:focus{top:8px}
