@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-grotesque-latin.woff2) format("woff2");font-weight:400 800;font-stretch:75% 100%;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122}@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-grotesque-latin-ext.woff2) format("woff2");font-weight:400 800;font-stretch:75% 100%;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+1E00-1E9F,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-latin.woff2) format("woff2");font-weight:400 600;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122}@font-face{font-family:Newsreader;src:url(/fonts/newsreader-latin-ext.woff2) format("woff2");font-weight:400 600;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+1E00-1E9F,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono-latin.woff2) format("woff2");font-weight:400 500;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+2000-206F,U+20AC,U+2122}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono-latin-ext.woff2) format("woff2");font-weight:400 500;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+1E00-1E9F,U+2C60-2C7F,U+A720-A7FF}:root{--surface: #EDEFF2;--surface-raised: #FFFFFF;--surface-sunken: #DFE3E8;--ink: #10141A;--ink-muted: #48525E;--line: #C7CDD4;--line-strong: #6E7783;--nakyvissa: #0069B4;--nakymattomissa: #A85200;--poistettava: #B3241C;--field-a: #1E7FC8;--field-b: #E07A2E;--scrim: rgb(237 239 242 / .82);--font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--font-body: "Newsreader", ui-serif, Georgia, serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", monospace;--step-caption: .8125rem;--step-data: .9375rem;--step-ui: 1rem;--step-body: 1.125rem;--step-subtitle: 1.25rem;--step-title: clamp(1.625rem, 1.2rem + 1.9vw, 2.375rem);--step-display: clamp(2.5rem, 1.4rem + 5vw, 5.5rem);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 20px;--space-5: 32px;--space-6: 52px;--space-7: 84px;--radius: 3px;--measure: 66ch;--content-max: 1180px;--t-micro: .14s;--t-ui: .26s;--ease-out: cubic-bezier(.16, 1, .3, 1);--z-field: 0;--z-content: 10;--z-sticky: 20;--z-overlay: 30}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--surface: #0B0F14;--surface-raised: #151C25;--surface-sunken: #070A0E;--ink: #E8EDF2;--ink-muted: #94A0AD;--line: #26303B;--line-strong: #6B7784;--nakyvissa: #4FA6E8;--nakymattomissa: #FFA24D;--poistettava: #FF6B5E;--field-a: #4FA6E8;--field-b: #FF9B4A;--scrim: rgb(11 15 20 / .82)}}:root[data-theme=dark]{--surface: #0B0F14;--surface-raised: #151C25;--surface-sunken: #070A0E;--ink: #E8EDF2;--ink-muted: #94A0AD;--line: #26303B;--line-strong: #6B7784;--nakyvissa: #4FA6E8;--nakymattomissa: #FFA24D;--poistettava: #FF6B5E;--field-a: #4FA6E8;--field-b: #FF9B4A;--scrim: rgb(11 15 20 / .82)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--font-body);font-size:var(--step-body);line-height:1.62;font-synthesis-weight:none;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);font-weight:650;line-height:1.12;text-wrap:balance;margin:0 0 var(--space-3);letter-spacing:-.018em}h1{font-size:var(--step-display);line-height:1.02;letter-spacing:-.032em;font-variation-settings:"wdth" 105}h2{font-size:var(--step-title);margin-top:var(--space-6)}h3{font-size:var(--step-subtitle);margin-top:var(--space-5)}p{margin:0 0 var(--space-4);text-wrap:pretty}a{color:var(--nakyvissa);text-underline-offset:.18em;text-decoration-thickness:from-font}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--nakyvissa);outline-offset:3px;border-radius:2px}img{max-width:100%;height:auto;display:block}hr{border:0;border-top:1px solid var(--line);margin:var(--space-6) 0}.mono,.data{font-family:var(--font-mono);font-size:var(--step-data);font-variant-numeric:tabular-nums}.ui{font-family:var(--font-display);font-size:var(--step-ui);font-weight:480;line-height:1.45}.caption{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted);line-height:1.5}.muted{color:var(--ink-muted)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.skip{position:absolute;left:var(--space-3);top:-100px;z-index:var(--z-overlay);background:var(--surface-raised);color:var(--ink);padding:var(--space-3) var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius);font-family:var(--font-display)}.skip:focus{top:var(--space-3)}#kentta{position:fixed;inset:0;z-index:var(--z-field);width:100%;height:100%;display:block;pointer-events:none}.no-webgl #kentta,.no-js #kentta{display:none}#kentta{-webkit-mask-image:linear-gradient(to right,rgb(0 0 0 / .16),rgb(0 0 0 / .26) 34%,#000 72%),linear-gradient(to bottom,rgb(0 0 0 / .2),#000 20%,#000 76%,rgb(0 0 0 / .28));mask-image:linear-gradient(to right,#00000029,#00000042 34%,#000 72%),linear-gradient(to bottom,#0003,#000 20% 76%,#00000047);-webkit-mask-composite:source-in;mask-composite:intersect}.kuori{position:relative;z-index:var(--z-content)}.rajaus{width:min(100% - 2 * var(--space-4),var(--content-max));margin-inline:auto}.mitta{max-width:var(--measure)}.ylapalkki{position:sticky;top:0;z-index:var(--z-sticky);background:var(--scrim);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.ylapalkki>div{display:flex;align-items:center;gap:var(--space-4);padding-block:var(--space-3);flex-wrap:wrap}.merkki{display:inline-flex;align-items:center;min-height:44px}.merkki img{height:26px;width:auto}.merkki .tumma{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .merkki .vaalea{display:none}:root:not([data-theme=light]) .merkki .tumma{display:block}}:root[data-theme=dark] .merkki .vaalea{display:none}:root[data-theme=dark] .merkki .tumma{display:block}:root[data-theme=light] .merkki .vaalea{display:block}:root[data-theme=light] .merkki .tumma{display:none}.ylapalkki nav{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-left:auto}.ylapalkki nav a{font-family:var(--font-display);font-size:.9375rem;font-weight:480;color:var(--ink);text-decoration:none;padding-block:var(--space-2);border-bottom:2px solid transparent}.ylapalkki nav a:hover,.ylapalkki nav a[aria-current=page]{border-bottom-color:var(--nakyvissa);color:var(--nakyvissa)}.hakunappi{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-3);background:var(--surface-raised);color:var(--ink-muted);border:1px solid var(--line-strong);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--step-caption);cursor:pointer}.hakunappi:hover{color:var(--ink);border-color:var(--nakyvissa)}.hakunappi kbd{font:inherit;border:1px solid var(--line-strong);border-radius:2px;padding:0 4px;background:var(--surface-sunken)}.teema{min-width:44px;justify-content:center}.no-js .hakunappi{display:none}.alkuun{padding-block:clamp(var(--space-6),11vh,140px) var(--space-6)}.alkuun h1{max-width:17ch}.alkuun .johdanto{font-size:var(--step-subtitle);max-width:54ch;color:var(--ink)}.luvut{display:flex;flex-wrap:wrap;gap:var(--space-5);margin-top:var(--space-5)}.luvut div{display:flex;flex-direction:column;gap:2px}.luvut b{font-family:var(--font-display);font-size:2rem;font-weight:700;line-height:1;letter-spacing:-.03em}.luvut span{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted)}.ruudukko{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(268px,1fr))}.ruudukko.tiivis{grid-template-columns:repeat(auto-fit,minmax(184px,1fr))}.kortti{display:flex;flex-direction:column;gap:var(--space-2);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);transition:border-color var(--t-ui) var(--ease-out),transform var(--t-ui) var(--ease-out)}.kortti:hover{border-color:var(--nakyvissa);transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.kortti:hover{transform:none}}.kortti h3{margin:0;font-size:1.0625rem;line-height:1.25}.kortti a.paalinkki{color:var(--ink);text-decoration:none}.kortti a.paalinkki:hover{color:var(--nakyvissa)}.kortti figure{margin:0 0 var(--space-2);background:var(--surface-sunken);border-radius:2px;overflow:hidden}.kortti figure img{aspect-ratio:4 / 3;object-fit:contain;width:100%}.kortti .kuvaus{margin:0;font-family:var(--font-body);font-size:.9375rem;line-height:1.55;color:var(--ink-muted)}.vuosi{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--nakymattomissa);letter-spacing:.04em}.tiedot{display:grid;grid-template-columns:auto 1fr;gap:2px var(--space-3);margin:var(--space-2) 0 0}.tiedot dt{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted)}.tiedot dd{font-family:var(--font-mono);font-size:var(--step-caption);margin:0;font-variant-numeric:tabular-nums}.lataa{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:auto;padding-top:var(--space-3);font-family:var(--font-display);font-size:.9375rem;font-weight:520;color:var(--nakyvissa);text-decoration:none;min-height:44px}.lataa:hover{text-decoration:underline}.lataa .koko{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted)}.aikajana{margin-top:var(--space-5)}.vuosikymmen{display:grid;grid-template-columns:6.5rem 1fr;gap:var(--space-4);padding-block:var(--space-4);border-top:1px solid var(--line)}.vuosikymmen>h3{margin:0;position:sticky;top:88px;align-self:start;font-family:var(--font-mono);font-size:1.125rem;font-weight:500;color:var(--nakymattomissa);letter-spacing:.02em}.vuosikymmen ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.vuosikymmen li{display:flex;gap:var(--space-3);align-items:baseline;flex-wrap:wrap}.vuosikymmen li .v{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted);min-width:6.2rem;font-variant-numeric:tabular-nums}.vuosikymmen li a{font-family:var(--font-display);font-size:var(--step-ui);font-weight:480}@media(max-width:640px){.vuosikymmen{grid-template-columns:1fr;gap:var(--space-2)}.vuosikymmen>h3{position:static}}.merkit{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.merkit figure{margin:0;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-3);text-align:center}.merkit img{height:74px;width:100%;object-fit:contain;margin-inline:auto}.merkit figcaption{margin-top:var(--space-2);font-family:var(--font-mono);font-size:.75rem;line-height:1.4;color:var(--ink-muted)}:root[data-theme=dark] .merkit img,:root:not([data-theme=light]) .merkit img{filter:invert(1) hue-rotate(180deg)}@media(prefers-color-scheme:light){:root:not([data-theme=dark]) .merkit img{filter:none}}.artikkeli{padding-block:var(--space-6)}.artikkeli .mitta>p{font-size:var(--step-body)}.artikkeli figure{margin:var(--space-5) 0}.artikkeli figure img{border-radius:var(--radius);background:var(--surface-sunken)}.artikkeli figcaption{margin-top:var(--space-2);font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted)}.artikkeli ul{padding-left:1.15em}.artikkeli li{margin-bottom:var(--space-3)}.meta{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted);margin-bottom:var(--space-5)}.haku[hidden]{display:none}.haku{position:fixed;inset:0;z-index:var(--z-overlay);background:var(--scrim);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:clamp(var(--space-4),8vh,96px) var(--space-4) var(--space-4);overflow-y:auto}.haku>div{width:min(100%,720px);margin-inline:auto}.haku input{width:100%;min-height:56px;padding:0 var(--space-4);background:var(--surface-raised);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius);font-family:var(--font-display);font-size:var(--step-subtitle)}.haku input::placeholder{color:var(--ink-muted)}.haku ul{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:1px}.haku li a{display:flex;gap:var(--space-3);align-items:baseline;flex-wrap:wrap;padding:var(--space-3);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);text-decoration:none;min-height:44px}.haku li a:hover,.haku li[data-valittu] a{border-color:var(--nakyvissa);color:var(--nakyvissa)}.haku .laji{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--nakymattomissa);min-width:7.5rem}.haku .tyhja{padding:var(--space-4);color:var(--ink-muted);font-family:var(--font-mono);font-size:var(--step-data)}.alatunniste{margin-top:var(--space-7);border-top:1px solid var(--line);padding-block:var(--space-5) var(--space-6);font-family:var(--font-display);font-size:.9375rem}.alatunniste .rivit{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.alatunniste p{margin:0 0 var(--space-2)}.alatunniste .yhteys{font-family:var(--font-mono);font-size:var(--step-caption);color:var(--ink-muted)}.varoitus{margin:0;padding:var(--space-3);border-left:3px solid var(--nakymattomissa);background:var(--surface-sunken);border-radius:0 var(--radius) var(--radius) 0;font-family:var(--font-mono);font-size:var(--step-caption);line-height:1.5}@media(max-width:720px){.ylapalkki>div{display:grid;grid-template-columns:1fr auto auto;grid-template-areas:"merkki haku teema" "nav nav nav";gap:var(--space-2) var(--space-2);padding-block:var(--space-2)}.merkki{grid-area:merkki}.merkki img{height:22px}.hakunappi{grid-area:haku}.teema{grid-area:teema}.ylapalkki nav{grid-area:nav;margin-left:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:var(--space-3);padding-bottom:2px;-webkit-overflow-scrolling:touch}.ylapalkki nav::-webkit-scrollbar{display:none}.ylapalkki nav a{white-space:nowrap;font-size:.875rem}.hakunappi kbd{display:none}.alkuun{padding-block:var(--space-5) var(--space-5)}.luvut{gap:var(--space-4)}.luvut b{font-size:1.625rem}}
