/* Hallmark · macrostructure: Long Document (design-led — Tokeno direction C, locked in DESIGN.md) · tone: austere editorial · anchor hue: LED red #FF2A2A
 * genre: editorial · theme: studied-DNA (source: design/direction, direction C) · nav: N9 edge-aligned · footer: Ft2 inline rule
 * enrichment: E5 hand-built SVG (Tonk, the network drawing)
 * motion: scroll-driven, native CSS only (brief §5.6 v1.2, motion.css) — "Kaapeli irti" pinned drawing sequence on the front page;
 *   red rule draws in, text rises ≤24px, table rows stagger, Tonk changes pose, scroll-progress line, cross-document view transitions.
 *   Gated by @supports (animation-timeline: view()) and prefers-reduced-motion: no-preference; otherwise the static site, unchanged.
 * Hallmark · pre-emit critique (lowest per axis across pages): P4 H4 E4 S4 R3 V4
 * contrast: pass (40–41) · honest: pass (46) · chrome: pass (47) · tokens: pass (48) · responsive: pass (49) · mobile: pass (34, 50–57)
 * owner-specified exceptions: gates 22, 23, 24, 35, 38a, 44a — see proof/_hallmark-audit.md
 */
:root{--paper: #F5F3EE;--ink: #111111;--night: #0B0B0C;--led: #FF2A2A;--led-deep: #D40000;--grey-light: #DCDAD4;--grey-dark: #2A2A2E;--streak: #3A3A3A;--font-display: "Bodoni Moda","Times New Roman",serif;--font-text: Tinos,"Times New Roman",serif;--font-hand: "Shantell Sans","Comic Sans MS",sans-serif;--text-h1: clamp(2.625rem,1.65rem + 4vw,5.25rem);--text-h2: clamp(2rem,1.582rem + 1.714vw,3.125rem);--text-h2-xl: clamp(2.5rem,1.757rem + 3.048vw,4.5rem);--text-stat: clamp(4.5rem,3.757rem + 3.048vw,6.5rem);--text-quote: clamp(1.75rem,1.239rem + 2.095vw,3.125rem);--text-statement: clamp(1.625rem,1.3rem + 1.333vw,2.5rem);--text-num: clamp(1.875rem,1.643rem + 0.952vw,2.5rem);--text-status: clamp(1.5rem,1.361rem + 0.571vw,1.875rem);--text-h3: clamp(1.375rem,1.282rem + 0.381vw,1.625rem);--text-list: clamp(1.1875rem,1.095rem + 0.381vw,1.4375rem);--text-lead: clamp(1.125rem,1.032rem + 0.381vw,1.375rem);--text-hand: clamp(1.1875rem,1.118rem + 0.286vw,1.375rem);--text-band: clamp(1.125rem,1.055rem + 0.286vw,1.3125rem);--text-large: clamp(1.0625rem,0.97rem + 0.381vw,1.3125rem);--text-kicker: clamp(1rem,0.907rem + 0.381vw,1.25rem);--text-button: 1.1875rem;--text-body: clamp(1.0625rem,1.016rem + 0.19vw,1.1875rem);--text-label: clamp(1rem,0.954rem + 0.19vw,1.125rem);--text-link: clamp(1.0625rem,1.039rem + 0.095vw,1.125rem);--text-small: clamp(0.9375rem,0.914rem + 0.095vw,1rem);--space-1: 0.25rem;--space-2: 0.5rem;--space-3: 0.75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-18: 4.5rem;--gutter: clamp(1.25rem,-0.143rem + 5.714vw,5rem);--section: clamp(5.5rem,3.457rem + 8.381vw,11rem);--section-near: clamp(5.5rem,3.857rem + 6.857vw,10rem);--hero-top: clamp(2.5rem,1.2rem + 5.333vw,6rem);--photo-top: clamp(3rem,1.7rem + 5.333vw,6.5rem);--photo-h: clamp(16.25rem,11.143rem + 20.952vw,30rem);--column-gap: var(--space-6);--max: 90rem;--rule: 1px;--rule-red: clamp(3px,1.886px + 0.286vw,6px);--rule-red-offset: clamp(7px,4.4px + 0.667vw,14px);--ease-out: cubic-bezier(0.16,1,0.3,1);--dur-press: 80ms;--dur-draw: 480ms;--dur-fade: 260ms}:root{color-scheme: light;--bg: var(--paper);--fg: var(--ink);--accent-text: var(--led-deep);--accent-fill: var(--led-deep);--on-accent: var(--paper);--placeholder: var(--grey-light);--focus: var(--ink);--tk-shell: var(--ink);--tk-line: var(--ink);--tk-lw: 1;--tk-sclera: var(--paper);--tk-streak: var(--streak)}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){color-scheme: dark;--bg: var(--night);--fg: var(--paper);--accent-text: var(--led);--accent-fill: var(--led);--on-accent: var(--night);--placeholder: var(--grey-dark);--focus: var(--paper);--tk-shell: var(--night);--tk-line: var(--paper);--tk-lw: 3.6;--tk-sclera: var(--night);--tk-streak: var(--paper)}}:root[data-theme="dark"]{color-scheme: dark;--bg: var(--night);--fg: var(--paper);--accent-text: var(--led);--accent-fill: var(--led);--on-accent: var(--night);--placeholder: var(--grey-dark);--focus: var(--paper);--tk-shell: var(--night);--tk-line: var(--paper);--tk-lw: 3.6;--tk-sclera: var(--night);--tk-streak: var(--paper)}@font-face{font-family: "Bodoni Moda";font-style: normal;font-weight: 600;font-display: swap;src: url("/assets/fonts/bodoni-moda-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Bodoni Moda";font-style: normal;font-weight: 600;font-display: swap;src: url("/assets/fonts/bodoni-moda-latin-ext.woff2") format("woff2");unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: "Bodoni Moda";font-style: italic;font-weight: 600;font-display: swap;src: url("/assets/fonts/bodoni-moda-italic-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Bodoni Moda";font-style: italic;font-weight: 600;font-display: swap;src: url("/assets/fonts/bodoni-moda-italic-latin-ext.woff2") format("woff2");unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: Tinos;font-style: normal;font-weight: 400;font-display: swap;src: url("/assets/fonts/tinos-400-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: Tinos;font-style: normal;font-weight: 400;font-display: swap;src: url("/assets/fonts/tinos-400-latin-ext.woff2") format("woff2");unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: Tinos;font-style: italic;font-weight: 400;font-display: swap;src: url("/assets/fonts/tinos-400-italic-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: Tinos;font-style: italic;font-weight: 400;font-display: swap;src: url("/assets/fonts/tinos-400-italic-latin-ext.woff2") format("woff2");unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: Tinos;font-style: normal;font-weight: 700;font-display: swap;src: url("/assets/fonts/tinos-700-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: Tinos;font-style: normal;font-weight: 700;font-display: swap;src: url("/assets/fonts/tinos-700-latin-ext.woff2") format("woff2");unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: "Shantell Sans";font-style: normal;font-weight: 400;font-display: swap;src: url("/assets/fonts/shantell-sans-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Shantell Sans";font-style: normal;font-weight: 400;font-display: swap;src: url("/assets/fonts/shantell-sans-latin-ext.woff2") format("woff2");unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}*,*::before,*::after{box-sizing: border-box}html{overflow-x: clip;-webkit-text-size-adjust: 100%;text-size-adjust: 100%}body{margin: 0;overflow-x: clip;background: var(--bg);color: var(--fg);font-family: var(--font-text);font-size: var(--text-body);line-height: 1.55;display: flex;flex-direction: column;min-height: 100dvh}main{flex: 1 0 auto}p,ul,ol,dl,dd,figure,blockquote{margin: 0}ul,ol{padding: 0;list-style: none}a{color: var(--accent-text);text-decoration: underline;text-decoration-thickness: 1px;text-underline-offset: 5px}a:hover{text-decoration-thickness: 2px}a:active{text-decoration-thickness: 3px}:focus-visible{outline: 2px solid var(--focus);outline-offset: 4px}h1,h2,h3{margin: 0;font-family: var(--font-display);font-weight: 600;overflow-wrap: anywhere;min-width: 0}h1{font-size: var(--text-h1);line-height: 1.04;letter-spacing: -0.015em}h2{font-size: var(--text-h2);line-height: 1.06;letter-spacing: -0.01em}h2.plain{letter-spacing: 0}h3{font-size: var(--text-h3);line-height: 1.2}svg{display: block}.vh{position: absolute !important;width: 1px;height: 1px;margin: -1px;padding: 0;border: 0;overflow: hidden;clip-path: inset(50%);white-space: nowrap}.skip{position: absolute;inset-inline-start: var(--space-4);inset-block-start: -10rem;padding: var(--space-3) var(--space-4);background: var(--bg);color: var(--fg)}.skip:focus{inset-block-start: var(--space-4)}.rule{text-decoration-line: underline;text-decoration-color: var(--led);text-decoration-thickness: var(--rule-red);text-underline-offset: var(--rule-red-offset);text-decoration-skip-ink: auto}.label{font-size: var(--text-label);font-style: italic}.small{font-size: var(--text-small);line-height: 1.55}.more{font-size: var(--text-link)}.measure{max-inline-size: 38.75rem}.wrap{inline-size: 100%;max-inline-size: var(--max);margin-inline: auto;padding-inline: var(--gutter)}.grid{display: grid;grid-template-columns: minmax(0,1fr);align-content: start}@media (min-width: 64rem){.grid{grid-template-columns: repeat(12,minmax(0,1fr));column-gap: var(--column-gap)}.c1-4{grid-column: 1 / span 4}.c1-5{grid-column: 1 / span 5}.c1-6{grid-column: 1 / span 6}.c1-7{grid-column: 1 / span 7}.c1-8{grid-column: 1 / span 8}.c1-11{grid-column: 1 / span 11}.c1-12{grid-column: 1 / span 12}.c6-7{grid-column: 6 / span 7}.c7-5{grid-column: 7 / span 5}.c7-6{grid-column: 7 / span 6}.c8-4{grid-column: 8 / span 4}.c8-5{grid-column: 8 / span 5}.c9-4{grid-column: 9 / span 4}}.section{padding-block-start: var(--section)}.site-header{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: var(--space-3) 10px;padding-block: var(--space-5)}.wordmark{color: var(--fg);text-decoration: none;font-family: var(--font-display);font-weight: 600;font-size: 2rem;line-height: 1;letter-spacing: -0.01em}.wordmark:hover{text-decoration: none}.tools{display: flex;align-items: center;gap: 10px;font-size: 1rem}.lang{display: flex;gap: var(--space-2);padding-inline-start: var(--space-3);border-inline-start: var(--rule) solid var(--fg)}.lang [aria-current]{font-weight: 700}.lang a{color: var(--fg);text-decoration: none}.lang a:hover{text-decoration: underline}.tool-button{display: inline-flex;align-items: center;justify-content: center;gap: var(--space-2);min-block-size: 44px;padding: 0 14px;background: transparent;color: var(--fg);border: var(--rule) solid var(--fg);border-radius: 0;font-family: var(--font-text);font-size: 1rem;line-height: 1;cursor: pointer;white-space: nowrap}.tool-button:hover{background: var(--placeholder)}.tool-button:active{transform: translateY(1px)}.tool-button:disabled{opacity: 0.55;cursor: not-allowed}.theme-toggle{inline-size: 44px;padding: 0}.theme-toggle .word{position: absolute;width: 1px;height: 1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap}.theme-toggle .to-light{display: none}.theme-toggle>span{display: inline-flex;align-items: center;gap: var(--space-2)}:root[data-theme="dark"] .theme-toggle .to-dark{display: none}:root[data-theme="dark"] .theme-toggle .to-light{display: inline-flex}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .theme-toggle .to-dark{display: none}:root:not([data-theme="light"]) .theme-toggle .to-light{display: inline-flex}}html:not(.js) .theme-toggle,html:not(.js) .menu-toggle{display: none}.site-nav{flex-basis: 100%;order: 3}.site-nav ul{border-block-start: var(--rule) solid var(--fg)}.site-nav li{border-block-end: var(--rule) solid var(--fg)}.site-nav a{display: flex;align-items: center;min-block-size: 3rem;color: var(--fg);text-decoration: none;font-size: 1.25rem}.site-nav a[aria-current="page"]{text-decoration: underline;text-decoration-thickness: 1px;text-underline-offset: 5px}.js .site-nav:not([data-open]){display: none}@media (min-width: 64rem){.site-header{flex-wrap: nowrap;padding-block: var(--space-9);gap: var(--space-10)}.wordmark{font-size: 2.5rem}.site-nav,.js .site-nav:not([data-open]){display: block;flex-basis: auto;order: 0;margin-inline-start: auto}.site-nav ul{display: flex;align-items: center;gap: var(--space-10);border: 0}.site-nav li{border: 0}.site-nav a{min-block-size: 44px;font-size: 1.125rem;white-space: nowrap}.site-nav a:hover{text-decoration: underline;text-decoration-thickness: 1px;text-underline-offset: 5px}.site-nav .nav-cta{padding: 0 var(--space-5);border: 1.5px solid var(--accent-text);color: var(--accent-text)}.site-nav .nav-cta:hover{text-decoration-thickness: 1px}.tools{gap: var(--space-10)}.lang{gap: 10px;padding-inline-start: var(--space-7);font-size: 1.125rem}.theme-toggle{inline-size: auto;padding: 0 14px}.theme-toggle .word{position: static;width: auto;height: auto;overflow: visible;clip-path: none}.menu-toggle,html:not(.js) .menu-toggle{display: none}}@media (min-width: 64rem) and (max-height: 56rem){.site-header{padding-block: var(--space-5)}}.button{display: flex;align-items: center;justify-content: center;min-block-size: 58px;padding: 0 30px;background: var(--accent-fill);color: var(--on-accent);text-decoration: none;font-size: var(--text-button);font-weight: 700;white-space: nowrap}.button:hover{text-decoration: underline;text-decoration-thickness: 1px;text-underline-offset: 5px}.button:active{transform: translateY(1px)}@media (prefers-reduced-motion: reduce){.button:active,.tool-button:active{transform: none}}.link-row{display: flex;align-items: center;min-block-size: 48px;font-size: var(--text-body)}@media (min-width: 40rem){.button{display: inline-flex}}@media (min-width: 64rem){.kicker,.label,.more,.link-row,.band-cta p,.toc a{line-height: normal}.button{display: inline-flex}.link-row{min-block-size: 0;font-size: var(--text-button)}}.ph{display: flex;align-items: flex-end;background: var(--placeholder);color: var(--fg);padding: var(--space-4);font-size: 0.9375rem;line-height: 1.4}.ph--band{block-size: var(--photo-h)}.ph--tall,.ph--wide{aspect-ratio: 16 / 9}@media (min-width: 64rem){.ph--tall{aspect-ratio: 4 / 5}.ph--wide{aspect-ratio: 4 / 3}}@media (min-width: 64rem){.ph{padding: var(--space-6);font-size: 1rem}}.todo{display: block;inline-size: fit-content;max-inline-size: 100%;padding: var(--space-2) var(--space-3);border: var(--rule) dashed var(--fg);background: var(--placeholder);color: var(--fg);font-family: var(--font-text);font-style: normal;font-weight: 400;font-size: var(--text-small);line-height: 1.45;letter-spacing: 0}.todo b{font-weight: 700}span.todo{display: inline-block;padding: 0 var(--space-2)}.tonk{overflow: visible;block-size: auto}.tonk .tk-shell{fill: var(--tk-shell);stroke: var(--tk-line);stroke-width: var(--tk-lw);stroke-linejoin: round}.tonk .tk-lid{stroke: none}.tonk .tk-streak{fill: none;stroke: var(--tk-streak);stroke-width: 1.3;stroke-linecap: round}.tonk .tk-sclera{fill: var(--tk-sclera);stroke: var(--tk-line);stroke-width: var(--tk-lw)}.tonk .tk-iris{fill: var(--led)}.tonk .tk-hatch{fill: none;stroke: var(--led-deep);stroke-width: 1}.tonk .tk-iris-ring{fill: none;stroke: var(--ink);stroke-width: 3}.tonk .tk-slit{fill: var(--paper)}.tonk .tk-slitline,.tonk .tk-lidline{fill: none;stroke: var(--tk-line);stroke-width: 3;stroke-linecap: round}.tk-mark{fill: none;stroke: var(--fg);stroke-width: 2.4;stroke-linecap: round;stroke-linejoin: round}.tk-arrow{block-size: auto;flex-shrink: 0}.tonk .tk-d{display: none}:root[data-theme="dark"] .tonk .tk-l{display: none}:root[data-theme="dark"] .tonk .tk-d{display: inline}:root[data-theme="dark"] .tonk .tk-streak{stroke-width: 1.4}@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .tonk .tk-l{display: none}:root:not([data-theme="light"]) .tonk .tk-d{display: inline}:root:not([data-theme="light"]) .tonk .tk-streak{stroke-width: 1.4}}.hand{font-family: var(--font-hand);font-size: var(--text-hand);line-height: 1.3}.tonk--hero{inline-size: clamp(120px,99.2px + 5.333vw,176px)}.tonk--closed{inline-size: clamp(96px,75.9px + 5.143vw,150px)}.tonk--content{inline-size: clamp(112px,97.9px + 3.619vw,150px)}.tonk--sketch{inline-size: clamp(112px,97.9px + 3.619vw,150px)}.tonk--lost{inline-size: clamp(132px,112.5px + 5vw,184px)}.tk-arrow--up{inline-size: clamp(72px,63.1px + 2.286vw,96px)}.tk-arrow--right,.tk-arrow--left{inline-size: clamp(100px,85.1px + 3.81vw,140px)}.tk-arrow--down{inline-size: clamp(84px,73.3px + 2.743vw,112px)}.dg{inline-size: 100%;block-size: auto;font-family: var(--font-text)}.dg :is(.ln,.ln-hand){fill: none;stroke: var(--fg)}.dg .tx{fill: var(--fg)}.dg--wide{display: none}@media (min-width: 40rem){.dg--tall{display: none}.dg--wide{display: block}.only-tall{display: none}}.figure{display: flex;flex-direction: column;gap: var(--space-3)}.figure figcaption{font-size: var(--text-small);line-height: 1.5;font-style: italic}.figure figcaption a{font-style: normal;white-space: nowrap}@media (min-width: 64rem){.figure{gap: var(--space-4)}}.hero{padding-block-start: var(--hero-top);row-gap: var(--space-6)}.hero-main{display: flex;flex-direction: column;gap: var(--space-6)}.kicker{font-size: var(--text-kicker);line-height: 1.45;font-style: italic}.lead{font-size: var(--text-lead);line-height: 1.55;max-inline-size: 38.75rem}.actions{display: flex;flex-direction: column;gap: var(--space-2)}@media (min-width: 40rem){.actions{flex-direction: row;align-items: center;gap: var(--space-9)}}.hero-side{display: flex;flex-direction: column;gap: var(--space-2);margin-block-start: var(--space-4)}.status{--led-size: 12px;display: flex;align-items: flex-start;gap: 14px}.status p{font-family: var(--font-display);font-weight: 600;font-size: var(--text-status);line-height: 1.1}.led{inline-size: var(--led-size);block-size: var(--led-size);margin-block-start: calc((var(--text-status) * 1.1 - var(--led-size)) / 2);border-radius: 50%;background: var(--led);flex-shrink: 0}.tonk-point{display: flex;align-items: flex-start;gap: var(--space-1)}.tonk-figure{display: flex;flex-direction: column;align-items: center;gap: var(--space-2);margin-block-start: var(--space-8)}.tonk-figure .hand{text-align: center}@media (min-width: 64rem){.hero{row-gap: 0}.hero-main{gap: var(--space-8)}.lead{margin-block-start: var(--space-2)}.actions{flex-direction: row;align-items: center;gap: var(--space-9);margin-block-start: var(--space-2)}.hero-side{padding-block-start: var(--space-18);margin-block-start: 0}.status{--led-size: 14px;gap: var(--space-4)}.tonk-point{margin-block-start: var(--space-1)}.tk-arrow--up{margin-inline-start: 2px}.tonk-figure{gap: 10px;margin-block-start: var(--space-16)}}.photo-band{padding-block-start: var(--photo-top)}.net{padding-block-start: var(--section-near);row-gap: var(--space-5)}.net .figure{margin-block-start: var(--space-4)}.net-text{display: flex;flex-direction: column;gap: var(--space-5)}.stat-row{display: flex;flex-wrap: wrap;align-items: flex-end;gap: var(--space-4);margin-block-start: var(--space-2)}.stat{display: flex;flex-direction: column;gap: 6px}.stat-number,.quote,.statement{overflow-wrap: anywhere;min-width: 0}.stat-number{font-family: var(--font-display);font-weight: 600;font-size: var(--text-stat);line-height: 1;letter-spacing: -0.02em}.stat-label{font-size: 0.9375rem;line-height: 1.4;max-inline-size: 12.5rem}.stat-tonk{display: flex;flex-direction: column;align-items: center;gap: 6px}.stat-tonk .hand{text-align: center;white-space: nowrap}@media (min-width: 64rem){.net{row-gap: 0}.net-text{gap: var(--space-6)}.stat-row{flex-wrap: nowrap;gap: var(--space-5);margin-block-start: var(--space-5)}.stat-label{font-size: 1.0625rem;max-inline-size: none}.stat-tonk{gap: var(--space-2)}.net .figure{margin-block-start: var(--space-10)}}.open{row-gap: 22px}.quote{font-family: var(--font-display);font-style: italic;font-weight: 600;font-size: var(--text-quote);line-height: 1.16;letter-spacing: -0.01em}.open-body{font-size: var(--text-large);line-height: 1.55}.open-aside{display: flex;flex-direction: column;gap: 22px}.open-aside p{font-size: var(--text-small);line-height: 1.55}@media (min-width: 64rem){.open{row-gap: var(--space-9)}.quote{line-height: 1.14}.open-aside{gap: var(--space-4)}}.service{row-gap: 26px}.numbered{display: flex;flex-direction: column;gap: 26px}.numbered li{display: grid;grid-template-columns: 40px minmax(0,1fr)}.numbered .n{font-family: var(--font-display);font-weight: 600;font-size: var(--text-num);line-height: 1}.numbered .t{display: block;font-family: var(--font-display);font-weight: 600;font-size: var(--text-h3);line-height: 1.2}.numbered .d{display: block;margin-block-start: 6px}.service .more{margin-inline-start: 40px}@media (min-width: 64rem){.service{row-gap: var(--space-12)}.numbered{gap: var(--space-9)}.numbered li{grid-template-columns: 64px minmax(0,1fr)}.numbered .d{margin-block-start: var(--space-2)}.service .more{margin-inline-start: 64px}}.dont{row-gap: var(--space-6)}.dont-list{display: flex;flex-direction: column;gap: 18px}.dont-list li{font-size: var(--text-list);line-height: 1.45}.dont-body{display: flex;flex-direction: column;gap: 18px}.dont-body .more{margin-block-start: 6px}@media (min-width: 64rem){.dont{row-gap: 0}.dont-body .more{margin-block-start: 10px}}.control{row-gap: var(--space-6)}.control-head{display: flex;flex-direction: column;gap: var(--space-6)}.tonk-aside{display: flex;align-items: flex-start;gap: 6px}.tonk-aside .caption{display: flex;flex-direction: column;gap: var(--space-2);padding-block-start: var(--space-2)}.boxed{display: flex;flex-direction: column;gap: 18px;border-block: var(--rule) solid var(--fg);padding-block: 28px 32px}.statement{font-family: var(--font-display);font-weight: 600;font-size: var(--text-statement);line-height: 1.15;letter-spacing: -0.01em}@media (min-width: 64rem){.control{row-gap: 0}.control-head{gap: var(--space-10)}.control-head .tonk-aside{margin-block-start: var(--space-10)}.boxed{gap: var(--space-6);padding-block: var(--space-10) var(--space-11)}}.contact-band{row-gap: 18px}.contact-band h2{font-size: var(--text-h2-xl);line-height: 1;letter-spacing: -0.015em}.contact-band .band-text{display: flex;flex-direction: column;gap: 18px}.contact-band .band-text p{font-size: var(--text-band)}.contact-band .band-cta{display: flex;flex-direction: column;gap: 18px;margin-block-start: 14px}@media (min-width: 64rem){.contact-band{align-items: end;row-gap: 0}.contact-band .band-text{gap: var(--space-5)}.contact-band .band-cta{align-items: flex-start;gap: var(--space-4);margin-block-start: 0}.contact-band .band-cta p{font-size: var(--text-button)}}.page-hero{padding-block-start: var(--hero-top);row-gap: var(--space-10)}@media (min-width: 64rem) and (max-height: 56rem){.hero,.page-hero{padding-block-start: var(--space-12)}}@media (min-width: 64rem) and (max-height: 50rem){.hero,.page-hero{padding-block-start: var(--space-8)}.hero .hero-main{gap: var(--space-6)}.hero .lead,.hero .actions{margin-block-start: 0}}.page-hero .hero-main{gap: var(--space-6)}@media (min-width: 64rem){.page-hero{row-gap: 0}.page-hero .hero-main{gap: var(--space-8)}.page-hero .hero-aside{padding-block-start: var(--space-3)}}.toc{display: flex;flex-direction: column;gap: var(--space-3)}.toc ul{display: flex;flex-direction: column;gap: var(--space-2)}.toc a{font-size: var(--text-link)}.block{row-gap: var(--space-6)}.block-text{display: flex;flex-direction: column;gap: var(--space-5)}.block-text>p{max-inline-size: 38.75rem}@media (min-width: 64rem){.block{row-gap: 0}.block-text{gap: var(--space-6)}.block .aside-figure{margin-block-start: var(--space-10)}.block .span-row{grid-row: span 2}}.rows{border-block-start: var(--rule) solid var(--fg)}.rows>div{display: grid;grid-template-columns: minmax(0,1fr);gap: var(--space-1);padding-block: 14px;border-block-end: var(--rule) solid var(--fg)}.rows dt{font-family: var(--font-display);font-weight: 600;font-size: 1.25rem;line-height: 1.2}@media (min-width: 40rem){.rows>div{grid-template-columns: 12.5rem minmax(0,1fr);gap: var(--space-6);padding-block: var(--space-4)}.rows dt{padding-block-start: 2px}}.table-wrap{display: flex;flex-direction: column;gap: var(--space-4)}.table{inline-size: 100%;border-collapse: collapse;font-variant-numeric: lining-nums tabular-nums}.table caption{caption-side: top;text-align: start;font-style: italic;font-size: var(--text-label);padding-block-end: var(--space-3)}.table th,.table td{text-align: start;vertical-align: top;padding: 14px var(--space-4) 14px 0;border-block-start: var(--rule) solid var(--fg)}.table th:last-child,.table td:last-child{padding-inline-end: 0}.table thead th{font-weight: 400;font-style: italic;font-size: var(--text-small);padding-block-start: 0;border-block-start: 0}.table tbody tr:last-child>*{border-block-end: var(--rule) solid var(--fg)}.table tbody th{font-family: var(--font-display);font-weight: 600;font-size: 1.25rem;line-height: 1.2}.table .num{white-space: nowrap}.table .cond{display: block;margin-block-start: var(--space-1);font-family: var(--font-text);font-weight: 400;font-style: italic;font-size: var(--text-small);line-height: 1.4}.table--prose tbody th{font-family: var(--font-text);font-weight: 700;font-size: inherit;line-height: 1.45}.steps{counter-reset: step;display: flex;flex-direction: column;gap: var(--space-4)}.steps li{display: grid;grid-template-columns: 2rem minmax(0,1fr);counter-increment: step}.steps li::before{content: counter(step);font-family: var(--font-display);font-weight: 600;font-size: 1.375rem;line-height: 1.2}.law{display: flex;flex-direction: column;border-block-start: var(--rule) solid var(--fg)}.law>div{display: flex;flex-direction: column;gap: var(--space-3);padding-block: var(--space-6);border-block-end: var(--rule) solid var(--fg)}.law p,.privacy-block p,.block-text>.open-body{max-inline-size: 38.75rem}.law h3{font-size: var(--text-h3)}.two-col{display: flex;flex-direction: column;gap: 26px}@media (min-width: 64rem){.two-col{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));column-gap: var(--column-gap);row-gap: var(--space-9)}}.contact-rows dd a{font-size: var(--text-large)}@media (min-width: 40rem){.contact-rows>div{grid-template-columns: 8.5rem minmax(0,1fr)}}.privacy-block{padding-block-start: var(--space-12)}.privacy-block h2{font-size: var(--text-h3);line-height: 1.2;letter-spacing: 0}.picture img{display: block;inline-size: 100%;block-size: auto}.picture{max-inline-size: 30rem}.lg-only{display: none}.tonk-sec{row-gap: var(--space-6)}@media (min-width: 64rem){.lg-only{display: block}.sm-only{display: none}.picture{max-inline-size: none}.tonk-sec .tonk-sec-photo{grid-column: 1 / span 5;grid-row: 1 / span 2}.tonk-sec .tonk-sec-text{grid-column: 7 / span 6;grid-row: 1}.tonk-sec .tonk-sec-tonk{grid-column: 7 / span 6;grid-row: 2;align-self: start;margin-block-start: var(--space-6)}}.lost-links{display: flex;flex-direction: column;gap: var(--space-2)}.lost-links a{font-size: var(--text-large)}.updated{font-style: italic}.m-only,.ln-hand,.kaapeli-fx,.tonk .tk-halo,.tonk .tk-dim{display: none}.rule-ghost{display: none}.site-footer{margin-block-start: var(--section-near);border-block-start: var(--rule) solid var(--fg)}.site-footer .wrap{display: flex;flex-direction: column;gap: var(--space-3);padding-block: var(--space-6) var(--space-10);font-size: var(--text-small);line-height: 1.55}.footer-facts{display: flex;flex-direction: column;gap: var(--space-3)}.footer-links{display: flex;gap: var(--space-6)}@media (min-width: 64rem){.site-footer .wrap{flex-direction: row;justify-content: space-between;align-items: flex-start;gap: var(--space-10);padding-block: var(--space-8) var(--space-14)}.footer-facts{gap: var(--space-1)}.footer-links{gap: var(--space-7)}}@media screen and (prefers-reduced-motion: no-preference){@supports (animation-timeline: view()){:root{--rise: 20px;--row-rise: 12px;--pin-top: max(1.5rem,calc(50vh - 21rem))}@keyframes m-appear{from{opacity: 0}}@keyframes m-vanish{to{opacity: 0}}@keyframes m-draw{from{stroke-dashoffset: 1}to{stroke-dashoffset: 0}}@keyframes m-grow{to{transform: scaleX(1)}}.scroll-progress{display: block;position: fixed;inset: 0 0 auto;block-size: 2px;background: var(--led);transform-origin: 0 50%;transform: scaleX(0);pointer-events: none;z-index: 2;animation: m-grow linear both;animation-timeline: scroll(root block)}h1{position: relative}h1>.rule{text-decoration-line: none}.rule-ghost{display: block;position: absolute;inset: 0 0 -0.5em;overflow: hidden;color: transparent;pointer-events: none;user-select: none;transform: translateX(-100%);animation: m-slide var(--dur-draw) var(--ease-out) 200ms both}.rule-ghost-in{display: block;transform: translateX(100%);animation: m-slide var(--dur-draw) var(--ease-out) 200ms both}@keyframes m-slide{to{transform: translateX(0)}}:is(.open>*,.service>h2,.service>.more,.dont h2,.dont-body>.more,.control-head>h2,.boxed>*,.contact-band h2,.band-text>p,.band-cta,.block-text>h2,.block-text>p,.block-text>.todo,.table-wrap>p,.table-wrap>.todo,.table caption){animation: m-rise var(--ease-out) both,m-fade linear both,m-at-top linear both;animation-timeline: view(),view(),scroll(root block);animation-range: entry 0% cover 20%,entry 0px entry 64px,0px 120px;animation-composition: replace,replace,add}@keyframes m-rise{from{transform: translateY(var(--rise))}}@keyframes m-fade{from{opacity: 0}}@keyframes m-at-top{from{opacity: 1}to{opacity: 0}}:is(.table tbody tr,.rows>div,.numbered li,.steps li,.dont-list li,.law>div){animation: m-row var(--ease-out) both,m-fade linear both,m-at-top linear both;animation-timeline: view(),view(),scroll(root block);animation-range: entry 0% cover 15%,entry 0px entry 64px,0px 120px;animation-composition: replace,replace,add}@keyframes m-row{from{transform: translateY(var(--row-rise))}}.tonk{view-timeline: --tonk block}.tonk .tk-m-rot{transform-origin: 100px 125px}.tonk .tk-m-iris{transform-origin: 100px 92px}.tonk .tk-m-rays{transform-origin: 100px -24px}.tonk .tk-halo,.tonk .tk-dim{display: inline}.tonk .tk-halo{fill: var(--led);opacity: 0}.tonk .tk-dim{fill: var(--tk-shell);opacity: 0}.tonk :is(.tk-m-rot,.tk-m-iris,.tk-m-lid,.tk-m-head,.tk-m-body,.tk-m-rays,.tk-halo,.tk-dim){animation-timeline: --tonk;animation-fill-mode: both;animation-timing-function: var(--ease-out)}.tonk--hero :is(.tk-m-rot,.tk-m-iris){animation-range: exit 0% exit 70%}.tonk--hero .tk-m-rot{animation-name: m-hero-rot}.tonk--hero .tk-m-iris{animation-name: m-hero-iris}@keyframes m-hero-rot{to{transform: rotate(7deg)}}@keyframes m-hero-iris{to{transform: translate(9.5px,12.5px)}}.tonk--content :is(.tk-m-rot,.tk-m-iris,.tk-m-lid){animation-range: entry 30% cover 50%}.tonk--content .tk-m-rot{animation-name: m-content-rot}.tonk--content .tk-m-iris{animation-name: m-content-iris}.tonk--content .tk-m-lid{animation-name: m-content-lid}@keyframes m-content-rot{from{transform: rotate(-4deg)}}@keyframes m-content-iris{from{transform: translate(-5px,-5px)}}@keyframes m-content-lid{from{transform: translateY(-44px);opacity: 0}}.tonk--sketch .tk-m-iris{animation-name: m-sketch-iris;animation-range: entry 30% cover 50%}@keyframes m-sketch-iris{from{transform: translate(7px,-1.5px)}}.tonk--closed :is(.tk-m-head,.tk-m-body,.tk-m-iris,.tk-m-rays,.tk-halo,.tk-dim){animation-range: entry 40% cover 55%}.tonk--closed .tk-m-head{animation-name: m-closed-head}.tonk--closed .tk-m-body{animation-name: m-closed-body}.tonk--closed .tk-m-iris{animation-name: m-closed-iris}.tonk--closed .tk-m-rays{animation-name: m-closed-rays}.tonk--closed .tk-halo{animation-name: m-closed-halo}.tonk--closed .tk-dim{animation-name: m-closed-dim}@keyframes m-closed-head{from{transform: translateY(6px)}}@keyframes m-closed-body{from{transform: translateY(-12px)}}@keyframes m-closed-iris{from{transform: scale(0.9)}}@keyframes m-closed-rays{from{opacity: 0;transform: scale(0.5)}}@keyframes m-closed-halo{from{opacity: 0}to{opacity: 0.55}}@keyframes m-closed-dim{from{opacity: 0.6}to{opacity: 0}}.kaapeli .ln{display: none}.kaapeli :is(.ln-hand,.kaapeli-fx){display: inline}.kaapeli-status{--led-size: 12px;display: flex;align-items: flex-start;gap: 14px;margin-block-end: var(--space-4)}.kaapeli-status .led{margin-block-start: calc((var(--ks-size) * 1.15 - var(--led-size)) / 2)}.ks{--ks-size: clamp(1.25rem,1.18rem + 0.286vw,1.5rem);display: grid;font-family: var(--font-display);font-weight: 600;font-size: var(--ks-size);line-height: 1.15}.kaapeli-status{--ks-size: clamp(1.25rem,1.18rem + 0.286vw,1.5rem)}.ks>span{grid-area: 1 / 1}@media (min-width: 64rem) and (min-height: 46rem){.kaapeli{view-timeline: --kaapeli block;block-size: 250vh;align-content: stretch}.kaapeli :is(.net-text,.kaapeli-fig){position: sticky;inset-block-start: var(--pin-top);align-self: start}.kaapeli .tonk--closed :is(.tk-m-head,.tk-m-body,.tk-m-iris,.tk-m-rays,.tk-halo,.tk-dim){animation-timeline: --kaapeli;animation-range: contain 72% contain 80%}}@media (max-width: 63.999rem),(max-height: 45.999rem){.kaapeli-fig{view-timeline: --kaapeli block}.kaapeli-pin{position: sticky;inset-block-start: max(0.75rem,calc(50svh - 18rem))}.kaapeli-pin .dg{max-block-size: calc(100svh - 9rem)}.kaapeli-spacer{display: block;block-size: 130svh}}.kaapeli .ln-hand>:is(.d1,.d2,.d3,.d4,.d5,.d6){stroke-dasharray: 1;animation: m-draw linear both;animation-timeline: --kaapeli}.kaapeli .ln-hand>.d1{animation-range: entry 55% contain 6%}.kaapeli .ln-hand>.d2{animation-range: contain 2% contain 9%}.kaapeli .ln-hand>.d3{animation-range: contain 6% contain 13%}.kaapeli .ln-hand>.d4{animation-range: contain 10% contain 16%}.kaapeli .ln-hand>.d5{animation-range: contain 13% contain 22%}.kaapeli .ln-hand>.d6{animation-range: contain 18% contain 24%}.kaapeli .dh-dash{animation: m-appear linear both;animation-timeline: --kaapeli;animation-range: contain 18% contain 24%}.kaapeli .srv-led{fill: var(--led);animation: m-appear linear both;animation-timeline: --kaapeli;animation-range: contain 20% contain 24%}.kaapeli .dots{stroke: var(--led);stroke-width: 5;stroke-linecap: round;stroke-dasharray: 0 16;animation: m-appear linear both,m-flow linear both;animation-timeline: --kaapeli,--kaapeli;animation-range: contain 22% contain 27%,contain 22% contain 100%}@keyframes m-flow{to{stroke-dashoffset: -640}}.kaapeli .uplink-line{stroke: var(--fg);stroke-width: 1.5;stroke-dasharray: 6 5}.kaapeli .uplink{clip-path: inset(0 100% 0 0);animation: m-wipe linear both;animation-timeline: --kaapeli;animation-range: contain 28% contain 38%}@keyframes m-wipe{to{clip-path: inset(0 0 0 0)}}.kaapeli .slash{stroke: var(--led);stroke-width: 4;stroke-dasharray: 1;animation: m-draw linear both;animation-timeline: --kaapeli;animation-range: contain 46% contain 52%}.kaapeli .uplink-out{animation: m-vanish linear both;animation-timeline: --kaapeli;animation-range: contain 53% contain 62%}.kaapeli .wallcap{animation: m-wallcap linear both;animation-timeline: --kaapeli;animation-range: contain 0% contain 100%}@keyframes m-wallcap{0%,55%{opacity: 0}66%,100%{opacity: 1}}.kaapeli .ks-a{animation: m-vanish linear both;animation-timeline: --kaapeli;animation-range: contain 70% contain 76%}.kaapeli .ks-b{animation: m-appear linear both;animation-timeline: --kaapeli;animation-range: contain 74% contain 80%}@view-transition{navigation: auto}.site-header{view-transition-name: site-header}::view-transition-group(site-header){animation: none}::view-transition-old(site-header){display: none}::view-transition-new(site-header){animation: none}::view-transition-old(root){animation-duration: calc(var(--dur-fade) * 0.75);animation-timing-function: var(--ease-out)}::view-transition-new(root){animation-duration: var(--dur-fade);animation-timing-function: var(--ease-out)}}}