@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--ring-draw:0deg}}}@font-face{font-family:Oswald;src:url(/fonts/oswald-400-700.9dde37975475.woff2)format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-regular.3d851198ccdb.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-medium.fb58b2d775f9.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-semibold.2b4dc557f3c1.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Poppins;src:url(/fonts/poppins-bold.dd8426172756.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--font-head:"Oswald", "Haettenschweiler", "Arial Narrow", sans-serif;--font-body:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", "IBM Plex Mono", monospace;--t-h1:clamp(34px, 5vw, 52px);--t-h2:clamp(26px, 3vw, 34px);--t-h3:22px;--t-h4:18px;--t-lede:18px;--t-body:16px;--t-small:14px;--t-caption:13px;--t-label:12px;--t-stat:clamp(26px, 2.4vw, 34px);--lh-h1:1.08;--lh-h2:1.12;--lh-h3:1.2;--lh-h4:1.25;--lh-lede:1.55;--lh-body:1.65;--lh-small:1.55;--lh-label:1.2;--lh-stat:1;--track-label:.18em;--track-dense:.12em;--optical-shift:.14em;--icon-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5l3.5 3.5L13 4.5'/%3E%3C/svg%3E");--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--block-pad:clamp(var(--s-7), 6vw, var(--s-9));--radius-sm:4px;--radius:10px;--radius-lg:18px;--radius-pill:999px;--border-w:1px;--accent-stroke:1px;--wrap:1740px;--wrap-narrow:760px;--gutter:clamp(16px, 4vw, 40px);--header-h:64px;--toc-reserve:248px;--ease:cubic-bezier(.22, 1, .36, 1);--dur-fast:.15s;--dur:.2s;--dur-slow:.3s;--dur-enter:.5s;--stagger:40ms;--shadow-raised:0 18px 44px #00000029;--shadow-control:inset 0 1px 0 #ffffff2e, 0 1px 2px #0000001f, 0 6px 14px -6px #00000047;--accent:#21ce99;--accent-ink:#10231c;--coral:#e5654e;--over-text:#f5f4f1;--over-muted:#c9c7c0;--over-line:#ffffff61;--over-fill:#ffffff1f}:root,[data-theme=light]{--bg:#f5f4f1;--bg2:#ece9e4;--surface:#fff;--surface2:#f8f7f5;--text:#1b1b19;--muted:#5e5e58;--faint:#6e6e69;--border:#14141221;--border-soft:#14141212;--border-strong:#14141242;--accent-text:#007553;--slot-bg:#eceae6;--slot-ink:#b5b3ac;--inv-bg:#161615;--inv-text:#f2f1ee;--inv-muted:#a3a39e;--inv-line:#ffffff1a;--inv-slot-bg:#222221;--inv-slot-ink:#4a4a46;--tint-roadmap:#e9f1ec;--tint-checklist:#ece9e4;--note-bg:#1b1b19;--note-ink:#f5f4f1;--note-line:#14141233}[data-theme=dark]{--bg:#161615;--bg2:#1d1d1c;--surface:#222221;--surface2:#2a2a29;--text:#f2f1ee;--muted:#a3a39e;--faint:#6e6e69;--border:#ffffff1a;--border-soft:#ffffff0f;--border-strong:#ffffff38;--accent-text:#21ce99;--slot-bg:#1f1f1e;--slot-ink:#4a4a46;--inv-bg:#0d0d0c;--inv-text:#f2f1ee;--inv-muted:#a3a39e;--inv-line:#ffffff14;--inv-slot-bg:#1a1a19;--inv-slot-ink:#3d3d39;--tint-roadmap:#17201c;--tint-checklist:#1d1d1c;--note-bg:#f2f1ee;--note-ink:#161615;--note-line:#ffffff38}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--s-5));interpolate-size:allow-keywords}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--t-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);margin:0}img{max-width:100%;display:block}[hidden]{display:none!important}h1,h2,h3,h4{font-family:var(--font-head);line-height:var(--lh-h2);letter-spacing:0;text-wrap:balance;margin:0;font-weight:600}h1{font-size:var(--t-h1);line-height:var(--lh-h1)}h2{font-size:var(--t-h2);line-height:var(--lh-h2)}h3{font-size:var(--t-h3);line-height:var(--lh-h3)}h4,.h4{font-size:var(--t-h4);line-height:var(--lh-h4);font-weight:500}p{text-wrap:pretty;margin:0}blockquote{margin:0}a{color:inherit}code{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.9em}.wrap{width:100%;max-width:var(--wrap);padding-inline:var(--gutter);margin-inline:auto}.wrap--narrow{max-width:var(--wrap-narrow)}.stack{gap:var(--s-4);display:grid}.stack--lg{gap:var(--s-6)}.stack--sm{gap:var(--s-2)}.grid{gap:var(--s-4);grid-template-columns:repeat(var(--cols,3), minmax(0, 1fr));display:grid}@media (max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.grid{grid-template-columns:1fr}}.split{gap:var(--s-7);grid-template-columns:var(--split,1fr 1fr);align-items:start;display:grid}@media (max-width:900px){.split{grid-template-columns:1fr}}.row{gap:var(--s-3);flex-wrap:wrap;align-items:center;display:flex}.block{padding-block:var(--block-pad);border-top:var(--border-w) solid transparent;position:relative}.block--alt{background:var(--bg2)}.block--tight{padding-block:var(--s-7)}.block--inverted{background:var(--inv-bg);color:var(--inv-text);--text:var(--inv-text);--muted:var(--inv-muted);--border:var(--inv-line);--surface:transparent;--surface2:var(--inv-slot-bg);--control-surface:var(--inv-slot-bg);--faint:var(--inv-muted);--slot-bg:var(--inv-slot-bg);--slot-ink:var(--inv-slot-ink);--accent-text:var(--accent)}.block--roadmap{background:var(--tint-roadmap)}.block--checklist{background:var(--tint-checklist)}.eyebrow{font-family:var(--font-head);font-size:var(--t-label);font-weight:500;line-height:var(--lh-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted)}.lead{font-size:var(--t-lede);line-height:var(--lh-lede);color:var(--muted);max-width:62ch}.muted{color:var(--muted)}.small{font-size:var(--t-small);line-height:var(--lh-small)}body.show-notes .block{border-top-color:var(--note-line)}.note{top:0;right:var(--gutter);z-index:5;align-items:center;gap:var(--s-2);padding:3px var(--s-2);border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--note-bg);color:var(--note-ink);font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.06em;white-space:nowrap;max-width:calc(100vw - var(--gutter) * 2);display:none;position:absolute;overflow:hidden}body.show-notes .note{display:flex}.note b{flex:none;font-weight:600}.note em{opacity:.55;text-overflow:ellipsis;min-width:0;font-style:normal;overflow:hidden}@media (max-width:700px){.note__desc{display:none}}.note button{all:unset;cursor:pointer;padding-inline:var(--s-1);opacity:.55}.note button:hover{opacity:1}.block.is-off>.wrap,.block.is-off>:not(.note){display:none}.block.is-off{padding-block:var(--s-2);background:repeating-linear-gradient(-45deg, transparent 0 6px, var(--note-line) 6px 7px);opacity:.5;min-height:34px}.devbar{left:50%;bottom:var(--s-4);z-index:200;align-items:center;gap:var(--s-1);padding:var(--s-1);border-radius:var(--radius-pill);background:var(--note-bg);color:var(--note-ink);font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.08em;text-transform:uppercase;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #00000038}.devbar a,.devbar button{all:unset;cursor:pointer;padding:6px var(--s-3);border-radius:var(--radius-pill);opacity:.6}.devbar a:hover,.devbar button:hover{opacity:1}.devbar [aria-pressed=true]{opacity:1;background:#80808047}@media print{.note,.devbar{display:none!important}}.btn{justify-content:center;align-items:center;gap:var(--s-2);padding:calc(11px + var(--optical-shift)) 22px calc(11px - var(--optical-shift));border:var(--border-w) solid var(--accent-text);display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.btn{border:var(--border-w) solid color-mix(in srgb, var(--accent-text) 55%, transparent)}}.btn{border-radius:var(--radius-pill);background:var(--control-surface,var(--surface));color:var(--accent-text);font-family:var(--font-body);font-size:var(--t-small);white-space:nowrap;cursor:pointer;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), background-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur-slow) var(--ease);font-weight:500;line-height:1.2;text-decoration:none}.btn:after{content:"";height:max(100%,44px);position:absolute;top:50%;left:0;right:0;translate:0 -50%}.btn:hover{border-color:var(--accent-text);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.btn[data-cta]{background-color:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-control);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), background-color var(--dur) var(--ease), background-position var(--dur-enter) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur-slow) var(--ease);background-image:linear-gradient(100deg,#0000 34%,#ffffff4d 46%,#0000 58%);background-position:150% 0;background-repeat:no-repeat;background-size:260% 100%}.btn[data-cta]:hover,.btn[data-cta]:focus-visible{background-position:-50% 0}.btn[data-cta]:hover{box-shadow:var(--shadow-control), 0 10px 22px -8px #00000057}.btn[data-cta]:active{box-shadow:var(--shadow-control)}.btn--ghost{background:var(--control-surface,var(--surface));color:var(--text);border-color:var(--border)}.btn--ghost:hover{border-color:var(--border-strong);background:var(--surface2)}.btn:disabled,.btn[aria-disabled=true]{background:var(--surface2);color:var(--faint);cursor:not-allowed;box-shadow:none;border-color:#0000;transform:none}.btn--lg{padding:calc(16px + var(--optical-shift)) 32px calc(16px - var(--optical-shift));font-size:var(--t-body)}.btn--sm{padding:calc(7px + var(--optical-shift)) 14px calc(7px - var(--optical-shift));font-size:var(--t-caption)}.btn--half{justify-content:center;width:50%;min-width:140px}.btn--arrow{background:var(--control-surface,var(--surface));width:40px;height:40px;color:var(--text);border-color:var(--border);justify-content:center;padding:0;font-size:1rem}.btn--arrow:hover{border-color:var(--border-strong);background:var(--surface2)}.btn--arrow:disabled{opacity:.3;cursor:default;transform:none}.icon{flex:none;display:block}.icon--flip{rotate:180deg}.slot{border:var(--border-w) dashed var(--border-strong);border-radius:var(--radius);background:var(--slot-bg);background-image:repeating-linear-gradient(-45deg, transparent 0 10px, var(--slot-ink) 10px 11px);color:var(--muted);font-family:var(--font-mono);font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:var(--s-3);aspect-ratio:var(--ratio,16 / 9);place-items:center;display:grid;position:relative;overflow:hidden}.slot--sq{--ratio:1}.slot--wide{--ratio:21 / 9}.slot--tall{--ratio:3 / 4}.slot--round{--ratio:1;border-radius:var(--radius-pill)}.slot--logo{--ratio:16 / 9}.slot--icon{--ratio:1;border-radius:var(--radius-sm);flex:none;width:40px;font-size:0}.card{gap:var(--s-3);padding:var(--s-5);border:var(--border-w) solid var(--border);border-radius:var(--radius-lg);background:var(--surface);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur-slow) var(--ease);flex-direction:column;display:flex}.card--link{cursor:pointer;text-decoration:none}.card--link:hover,.card--link:focus-within{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.card--link:active{transform:translateY(0)}.card--clickable{cursor:pointer;position:relative}.card--clickable:hover,.card--clickable:focus-within{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.card--clickable:active{transform:translateY(0)}.card :where(.slot)>:where(img,video){transition:scale var(--dur-slow) var(--ease)}.card--link:hover :where(.slot)>:where(img,video),.card--link:focus-within :where(.slot)>:where(img,video),.card--clickable:hover :where(.slot)>:where(img,video),.card--clickable:focus-within :where(.slot)>:where(img,video){scale:1.03}.card--clickable .card__link:before{content:"";position:absolute;inset:0}.card--clickable :where(a,button):not(.card__link){z-index:1;position:relative}.card--flat{background:0 0;border-color:#0000;padding:0}.card--bare{padding:0;overflow:hidden}.card--bare .card__body{padding:var(--s-5)}.card__body{gap:var(--s-2);display:grid}.pill{background:var(--control-surface,var(--surface));padding:4px var(--s-3);border:var(--border-w) solid var(--border);border-radius:var(--radius-pill);background:var(--surface2);font-size:var(--t-label);font-family:var(--font-head);letter-spacing:var(--track-dense);text-transform:uppercase;color:var(--muted);font-weight:500;display:inline-block}.pill--link{cursor:pointer;transition:color var(--dur-fast) var(--ease), border-color var(--dur) var(--ease), background-color var(--dur-fast) var(--ease);text-decoration:none}.pill--link:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface)}.list{gap:var(--s-3);margin:0;padding:0;list-style:none;display:grid}.list--check li{gap:var(--s-3);align-items:baseline;display:flex}.list--check li:before{content:"—";color:var(--muted);font-family:var(--font-mono)}.field{display:grid}.field>span{font-size:var(--t-small);color:var(--muted);margin-bottom:var(--s-2)}form.stack{gap:0}form.stack>:where(h3,p,.field,.split,.check,.btn)~:where(h3,p,.field,.split,.check,.btn),.modal__inner>:where(h3,p,.field,.split,.check,.btn)~:where(h3,p,.field,.split,.check,.btn){margin-top:var(--s-4)}form.stack .split,.modal__inner .split{row-gap:0}.modal__inner>*~form{margin-top:var(--s-4)}form.stack{container-type:inline-size}@media (max-width:900px){form.stack .split{grid-template-columns:var(--split,1fr 1fr)}.modal__inner .split>.field~.field{margin-top:var(--s-4)}}@container (max-width:22rem){form.stack .split{grid-template-columns:1fr}form.stack .split>.field~.field{margin-top:var(--s-4)}}.input{width:100%;padding:12px var(--s-4);border:var(--border-w) solid var(--border-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font:inherit;font-size:var(--t-small)}.input:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-color:var(--accent-text)}.input[aria-invalid=true]{border-width:2px;border-color:var(--coral)}.field-error{color:var(--text);margin-top:var(--s-2);font-weight:600}textarea.input{resize:vertical;min-height:120px}select.input{appearance:none;cursor:pointer}input[type=file].input{padding:var(--s-2) var(--s-3);background:var(--surface2);color:var(--muted);font-size:var(--t-caption);cursor:pointer}input[type=file].input::file-selector-button{margin-right:var(--s-3);padding:calc(7px + var(--optical-shift)) 14px calc(7px - var(--optical-shift));border:var(--border-w) solid var(--border-strong);border-radius:var(--radius-pill);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--t-caption);cursor:pointer;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);font-weight:500;line-height:1.2}input[type=file].input:hover::file-selector-button{border-color:var(--accent-text);color:var(--accent-text)}input[type=file].input:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-color:var(--accent-text)}.check{gap:var(--s-3);padding:var(--s-3) var(--s-4);border:var(--border-w) solid var(--border-strong);border-radius:var(--radius);background:var(--surface2);cursor:pointer;transition:border-color var(--dur) var(--ease);align-items:start;display:flex}.check:hover{border-color:var(--accent-text)}.check input[type=checkbox]{appearance:none;width:20px;height:20px;font-size:var(--t-small);line-height:var(--lh-small);border:var(--border-w) solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);flex:none;place-content:center;margin:calc(.5lh - 10px) 0 0;display:grid}.check input[type=checkbox]:after{content:"";background:var(--accent-ink);width:16px;height:16px;-webkit-mask:var(--icon-check) center / contain no-repeat;-webkit-mask:var(--icon-check) center / contain no-repeat;-webkit-mask:var(--icon-check) center / contain no-repeat;mask:var(--icon-check) center / contain no-repeat;-webkit-mask:var(--icon-check) center / contain no-repeat;transition:scale var(--dur) var(--ease);scale:0}.check input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.check input[type=checkbox]:checked:after{scale:1}.check input[type=checkbox]:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--text);outline-offset:3px;border-radius:var(--radius-sm)}.block--hero{padding-block:0}.hero__media{aspect-ratio:auto;border-inline:0;border-top:0;border-radius:0;height:34vh;min-height:220px}.hero__body{padding-block:var(--s-7)}.hero__body--split{gap:var(--s-7);grid-template-columns:1.6fr 1fr;align-items:start;display:grid}@media (max-width:900px){.hero__body--split{grid-template-columns:1fr}}.hero__over{position:relative}.hero__media--tall{height:calc(100vh - var(--header-h));min-height:480px}.hero__over:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#00000040 45%,#000000b8 100%);position:absolute;inset:0}.hero__overlay{z-index:1;inset-inline:0;bottom:var(--s-7);color:var(--over-text);--text:var(--over-text);--muted:var(--over-muted);--border:var(--over-line);--border-strong:var(--over-line);--accent-text:var(--accent);--surface2:var(--over-fill);--control-surface:var(--over-fill);--faint:var(--over-muted);text-shadow:0 1px 24px #0000008c;position:absolute}.hero__overlay .lead{max-width:46ch}.hero__body .stack,.hero__overlay .stack{gap:var(--s-2)}.hero__overlay--centred>.lead{margin-block-start:calc(var(--s-2) - var(--s-5))}.hero__body .stack>.row,.hero__overlay .stack>.row{margin-block-start:var(--s-2)}.hero__overlay--aside,.hero__body--aside{align-items:end;gap:var(--s-7);grid-template-columns:1fr auto;display:grid}.hero__overlay--aside h1{font-size:clamp(2.4rem,1.2rem + 4.4vw,4.6rem)}.hero__overlay--aside .lead{max-width:64ch}.hero__cta{gap:var(--s-3);flex-wrap:wrap;justify-content:end;display:flex}@media (max-width:900px){.hero__overlay--aside,.hero__body--aside{align-items:start;gap:var(--s-5);grid-template-columns:1fr}.hero__cta{justify-content:start}}.hero__overlay--centred{text-align:center;justify-items:center;gap:var(--s-5);display:grid;bottom:12vh}.hero__overlay--centred .lead{max-width:62ch}.hero__overlay--centred h1{max-width:24ch;margin-inline:auto;font-size:clamp(2.6rem,1.4rem + 4.2vw,4.4rem)}.hero__overlay--centred .row{justify-content:center}.hero__hyps{gap:var(--s-3);flex-wrap:wrap;justify-content:center;display:flex}.hero__hyp{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (max-width:700px){.hero__overlay--centred{bottom:var(--s-7)}}.hero__side{padding:var(--s-5);border:var(--border-w) solid var(--border);border-radius:var(--radius-lg);background:var(--surface);display:grid}.hero__fact{gap:var(--s-1);padding-block:var(--s-4);display:grid}.hero__fact+.hero__fact{border-top:var(--border-w) solid var(--border-soft)}.hero__fact:first-child{padding-top:0}.hero__fact:last-child{padding-bottom:0}.sidetoc{--toc-w:200px;left:var(--s-4);top:calc(var(--header-h) + var(--s-6));z-index:50;width:var(--toc-w);gap:var(--s-3);padding:var(--s-4);border:var(--border-w) solid var(--border);border-radius:var(--radius-lg);background:var(--surface);opacity:0;visibility:hidden;max-height:70vh;transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease), visibility var(--dur);grid-template-rows:auto minmax(0,1fr);display:grid;position:fixed;transform:translate(-8px)}.sidetoc.is-vis{opacity:1;visibility:visible;transform:none}@media (max-width:1100px){.sidetoc{display:none}}.crumbs{border-bottom:var(--border-w) solid var(--border);font-size:var(--t-small);color:var(--muted)}.crumbs .wrap{gap:var(--s-2);padding-block:var(--s-3);flex-wrap:wrap;align-items:center;display:flex}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--text)}.crumbs__sep{opacity:.5}.crumbs [aria-current=page]{color:var(--text)}@media (min-width:1101px){.wrap{max-width:min(var(--wrap), 100% - var(--toc-reserve) * 2)}.hdr__bar{max-width:var(--wrap)}}.stats{grid-template-columns:repeat(var(--n,4), minmax(0, 1fr));gap:0;display:grid}.stats__cell{padding-inline:var(--s-5);border-left:var(--border-w) solid var(--border);min-width:0}.stats--two{row-gap:var(--s-6);grid-template-columns:repeat(2,minmax(0,1fr))}.stats--two>.stats__cell:nth-child(2n){padding-inline-end:0}.stats--full>.stats__cell:nth-child(4n+1),.stats--full.stats--two>.stats__cell:nth-child(odd){border-left:0;padding-inline-start:0}@media (max-width:1500px){.stats{row-gap:var(--s-6);grid-template-columns:repeat(2,minmax(0,1fr))}.stats>.stats__cell:nth-child(2n){padding-inline-end:0}.stats--full>.stats__cell:nth-child(odd){border-left:0;padding-inline-start:0}}@media (max-width:560px){.stats{grid-template-columns:1fr}.stats>.stats__cell:nth-child(n){border-left:0;padding-inline:0}}.stats__n{font-family:var(--font-head);font-size:var(--t-stat);letter-spacing:0;font-weight:600;line-height:var(--lh-stat);overflow-wrap:anywhere;text-wrap:balance;max-width:100%}.stats__c{color:var(--muted);font-size:var(--t-small);margin-top:var(--s-2);overflow-wrap:anywhere}.rail{gap:var(--s-4);scroll-snap-type:x mandatory;scrollbar-width:none;--rail-bleed:32px;--rail-bleed-x:min(var(--rail-bleed), var(--gutter));padding-inline:var(--rail-bleed-x);margin-inline:calc(var(--rail-bleed-x) * -1);scroll-padding-inline:var(--rail-bleed-x);padding-bottom:calc(var(--s-2) + var(--rail-bleed));margin-bottom:calc(var(--rail-bleed) * -1);padding-top:var(--s-2);margin-top:calc(var(--s-2) * -1);display:flex;overflow-x:auto}.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:start;flex:0 0 calc((100% - (var(--per,3) - 1) * var(--s-4)) / var(--per,3));min-width:240px}@media (max-width:1000px){.rail{--per:2}}@media (max-width:640px){.rail{--per:1}}.rail-head{justify-content:space-between;align-items:end;gap:var(--s-4);flex-wrap:wrap;display:flex}.feature-grid__head{align-items:end;column-gap:var(--s-6);grid-template-columns:minmax(0,1fr) max-content;display:grid}.feature-grid__head>.stack{min-width:0}.feature-grid__head :where(h2,.lead){overflow-wrap:anywhere}.feature-grid__head>.btn{justify-self:end}@media (max-width:640px){.feature-grid__head{row-gap:var(--s-4);grid-template-columns:minmax(0,1fr)}.feature-grid__head>.btn{justify-self:start}}.rail-nav{gap:var(--s-3);display:flex}.review{gap:var(--s-4);padding:var(--s-6)}.review p{font-size:1.02rem;line-height:1.55}.review>p~:last-child{margin-block-start:auto}.arrowlink{align-items:center;gap:var(--s-2);font-size:var(--t-small);color:var(--text);font-weight:550;text-decoration:none;display:inline-flex}.arrowlink:after{content:"→";transition:transform var(--dur) var(--ease)}.card--link:hover .arrowlink:after,.arrowlink:hover:after{transform:translate(4px)}.casecard__img{--ratio:16 / 9;border-radius:0}.keypoints{margin:0;padding:0;list-style:none;display:grid}.keypoints li{gap:var(--s-3);padding-block:var(--s-3);border-top:var(--border-w) solid var(--border);grid-template-columns:auto 1fr;align-items:baseline;display:grid}.keypoints b{font-size:var(--t-h4);letter-spacing:-.02em}.keypoints span{font-size:var(--t-small);color:var(--muted)}.keypoints--nofig li{grid-template-columns:1fr}.picklist{gap:var(--s-1);align-content:start;display:grid}.picklist__item{all:unset;cursor:pointer;padding:var(--s-3) var(--s-4);border-radius:var(--radius);font-size:var(--t-small);color:var(--muted);border:var(--border-w) solid transparent}.picklist__item:hover{color:var(--text);background:var(--surface2)}.picklist__item[aria-pressed=true]{color:var(--text);background:var(--surface2);border-color:var(--border-strong);font-weight:550}.picklist--ruled{gap:0}.picklist--ruled .picklist__item{border:0;border-bottom:var(--border-w) solid var(--border);padding:var(--s-4) 0;font-size:var(--t-h4);background:0 0;border-radius:0}.picklist--ruled .picklist__item:hover{color:var(--text);background:0 0}.picklist--ruled .picklist__item[aria-pressed=true]{background:0 0}.industry-list{gap:var(--s-5)}.rail.industry-list>*{flex-basis:calc((100% - (var(--per,3) - 1) * var(--s-5)) / var(--per,3))}.industry{gap:var(--s-5);padding:var(--s-6)}.industry .slot--icon{width:70px}.industry.card--bare{gap:0;padding:0}.industry.card--bare .industry__content{padding:var(--s-6)}.industry__content{gap:var(--s-5);flex:1;align-content:space-between;display:grid}.industry__copy{gap:var(--s-2);display:grid}.industry__head{align-items:flex-start;gap:var(--s-4);display:flex}.industry__head h3{align-items:center;min-height:2.5em;display:flex}@media (max-width:640px){.industry,.industry.card--bare .industry__content{padding:var(--s-5)}}.teamcard__name{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.pill--in{border-radius:var(--radius-pill);flex:none;place-items:center;width:28px;height:28px;padding:0;text-decoration:none;display:grid}.pill--in:hover{color:var(--text);border-color:var(--border-strong)}.gallery{position:relative}.gallery__frame{--ratio:16 / 9;border-radius:var(--radius-lg)}.gallery__nav{inset-inline:var(--s-4);pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery__nav .btn{pointer-events:auto;background:var(--bg)}.techstack__item{flex-wrap:nowrap;align-items:center}.techstack__item>.small{min-width:0}.techserv{gap:var(--s-7);grid-template-columns:2fr 1fr;align-items:start;display:grid}@media (max-width:900px){.techserv{grid-template-columns:1fr}}.techserv .slot--icon{width:56px}.block--ishow{padding-block:0}.ishow{min-height:78vh;padding-block:var(--s-6);color:var(--over-text);--text:var(--over-text);--muted:var(--over-muted);--border:var(--over-line);--border-strong:var(--over-line);--accent-text:var(--accent);--surface2:var(--over-fill);--control-surface:var(--over-fill);--faint:var(--over-muted);grid-template-rows:auto 1fr auto;display:grid;position:relative}.ishow__media{isolation:isolate;position:absolute;inset:0}.ishow__frame{aspect-ratio:auto;opacity:0;transition:opacity 0s var(--ease) var(--dur-slow);--slot-bg:#1d1d22;--slot-ink:#43434c;border:0;border-radius:0;position:absolute;inset:0}.ishow__frame.is-on{z-index:1;opacity:1;transition:opacity var(--dur-slow) var(--ease)}.ishow__scrim{background:linear-gradient(#00000073 0%,#0000004d 45%,#000000c7 100%);position:absolute;inset:0}.ishow__top,.ishow__row{z-index:1;position:relative}.ishow__top{justify-content:space-between;align-items:start;gap:var(--s-4);display:flex}.ishow__controls{align-items:center;gap:var(--s-4);flex-shrink:0;display:flex}.ishow__play{color:var(--over-text);border-color:var(--over-line);background:0 0}.ishow__play:hover{background:var(--over-fill)}.ishow__top h2{font-size:clamp(2.2rem,1.2rem + 3.4vw,4rem)}.ishow__arrow{z-index:2;border-color:var(--over-line);color:var(--over-text);background:0 0;position:absolute;top:50%;transform:translateY(-50%)}.ishow__arrow:hover{background:var(--over-fill);transform:translateY(-50%)}.ishow__arrow--prev{left:var(--gutter)}.ishow__arrow--next{right:var(--gutter)}@media (min-width:1101px){.ishow__arrow--prev{left:calc(var(--toc-reserve) - var(--s-3))}}.ishow__row{grid-template-columns:repeat(var(--n,4), minmax(0, 1fr));gap:var(--s-5);align-items:end;display:grid}.ishow__item{gap:var(--s-3);cursor:pointer;align-content:end;display:grid}@media (min-width:901px){.ishow__item.is-outside-desktop-window{display:none}.ishow__row{padding-block:var(--s-2);overflow:clip}}.ishow__item h3{transition:opacity var(--dur) var(--ease)}.ishow__item:not(.is-on) h3{opacity:.75}.ishow__item:not(.is-on):hover h3{opacity:1}.ishow__desc,.ishow__more{opacity:0;max-width:34ch;display:none;translate:0 6px}.ishow__item.is-on .ishow__desc,.ishow__item.is-on .ishow__more{opacity:1;transition:opacity var(--dur) var(--ease), translate var(--dur) var(--ease);translate:0}.ishow__item.is-on .ishow__desc{color:var(--over-muted);font-size:var(--t-small);display:block}.ishow__item.is-on .ishow__more{display:inline-flex}@starting-style{.ishow__item.is-on .ishow__desc,.ishow__item.is-on .ishow__more{opacity:0;translate:0 6px}}.ishow-mobile{display:none}@media (max-width:900px){.ishow{display:none}.ishow-mobile{gap:var(--s-5);padding-block:var(--s-6);display:grid}.ishow-mobile__heading{gap:var(--s-4);display:grid}.ishow-mobile__track{gap:var(--s-4);margin-left:var(--gutter);scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;grid-auto-columns:calc(100% - 48px);grid-auto-flow:column;display:grid;position:relative;overflow-x:auto}.ishow-mobile__track::-webkit-scrollbar{display:none}.ishow-mobile__track[data-single]{margin-right:var(--gutter);grid-auto-columns:100%}.ishow-mobile__slide{scroll-snap-align:start;scroll-snap-stop:always;isolation:isolate;min-width:0;min-height:420px;color:var(--over-text);--accent-text:var(--accent);--muted:var(--over-muted);background:#1d1d22;align-items:end;display:grid;position:relative}.ishow-mobile__image{z-index:-1;position:absolute;inset:0}.ishow-mobile__image :is(img,video,.slot__placeholder){object-fit:cover;width:100%;height:100%}.ishow-mobile__image:after{content:"";background:linear-gradient(#00000073,#000000e6);position:absolute;inset:0}.ishow-mobile__copy{gap:var(--s-4);padding:var(--s-5);overflow-wrap:anywhere;display:grid}.ishow-mobile__copy h3{color:var(--accent)}.ishow-mobile__copy p{color:var(--over-text)}.ishow-mobile__copy .arrowlink{color:var(--accent)}.ishow-mobile__controls{justify-content:center;align-items:center;gap:var(--s-5);display:flex}.ishow-mobile__controls .btn{width:44px;height:44px}.ishow-mobile__controls [role=status]{text-align:center;font-variant-numeric:tabular-nums;min-width:5ch}}.technology-promo__image{aspect-ratio:16/9}.technology-promo__image img,.technology-promo__image picture{width:100%;height:100%}.technology-promo__image img{object-fit:cover}.acc{border-top:var(--border-w) solid var(--border)}.acc details{border-bottom:var(--border-w) solid var(--border-soft)}.acc summary{align-items:center;gap:var(--s-4);padding:var(--s-5) 0;cursor:pointer;font-size:var(--t-h4);font-weight:550;list-style:none;display:flex}.acc summary::-webkit-details-marker{display:none}.acc summary:after{content:""}.acc__body{padding:0 0 var(--s-5);color:var(--muted);max-width:78ch}.steps{counter-reset:step;gap:var(--s-4);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}@media (max-width:1200px){.steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.steps{grid-template-columns:1fr}}.steps>li{counter-increment:step;padding-top:var(--s-4);border-top:var(--border-w) solid var(--border-strong);position:relative}.steps>li:before{content:"0" counter(step);font-family:var(--font-head);font-size:var(--t-label);letter-spacing:var(--track-dense);color:var(--muted);margin-bottom:var(--s-2);font-weight:600;display:block}.mediarow{gap:var(--s-5);display:grid}.mediarow>li,.mediarow>div{gap:var(--s-5);grid-template-columns:220px 1fr;align-items:start;display:grid}@media (max-width:760px){.mediarow>li,.mediarow>div{grid-template-columns:1fr}}.timeline{gap:0;display:grid}.timeline>li{gap:var(--s-4);padding-bottom:var(--s-6);grid-template-columns:40px 1fr;display:grid;position:relative}.timeline>li:not(:last-child):before{content:"";width:var(--border-w);background:var(--border);position:absolute;top:40px;bottom:0;left:19px}.results{gap:var(--s-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.results .result--long{grid-column:span 2}@media (max-width:900px){.results{grid-template-columns:repeat(2,minmax(0,1fr))}.results .result--long{grid-column:span 2}}@media (max-width:560px){.results{grid-template-columns:1fr}.results .result--long{grid-column:auto}}.result{min-height:190px;padding:var(--s-5);border:var(--border-w) solid var(--border);border-radius:var(--radius-lg);background:var(--surface);position:relative;overflow:hidden}.result__head{align-items:baseline;gap:var(--s-3);flex-flow:wrap;display:flex}.result__n{font-size:var(--t-h2);letter-spacing:-.04em;transition:font-size var(--dur) var(--ease), color var(--dur) var(--ease);flex:none;font-weight:600;line-height:1;display:block}.result__front{color:var(--muted);font-size:var(--t-label);line-height:1.45}.result__back{margin-top:var(--s-4);font-size:var(--t-small);opacity:0;visibility:hidden;transition:opacity var(--dur) var(--ease), visibility var(--dur)}.result--expanded .result__n{font-size:var(--t-h3);color:var(--accent-text)}.result--expanded .result__back{opacity:1;visibility:visible}.result--interactive{--fold:54px;cursor:pointer;clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--fold)), calc(100% - var(--fold)) 100%, 0 100%);transition:clip-path var(--dur) var(--ease)}.result--interactive:after{content:"";border-top-left-radius:var(--radius-lg);background:var(--border);clip-path:polygon(0 0,100% 0,0 100%);transform-origin:100% 100%;width:54px;height:54px;transition:transform var(--dur) var(--ease);position:absolute;bottom:0;right:0}.result--interactive .result__head{padding-right:44px}.result--interactive .result__n{overflow-wrap:anywhere;max-width:100%}.result--expanded{--fold:0px}.result--expanded:after{transform:scale(0)}.result__toggle{top:var(--s-3);right:var(--s-3);border:var(--border-w) solid var(--border);width:44px;height:44px;color:var(--text);cursor:pointer;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;border-radius:50%;place-items:center;display:grid;position:absolute}.result--expanded .result__toggle{color:var(--accent-text);border-color:currentColor}.result__toggle span{transition:transform var(--dur) var(--ease);font-size:26px;line-height:1}.result--pinned .result__toggle span{transform:rotate(45deg)}.result__toggle:focus-visible{outline-offset:-5px;outline:2px solid}@media (prefers-reduced-motion:reduce){.result,.result:after,.result__n,.result__back,.result__toggle,.result__toggle span{transition:none}}.flip{perspective:1000px}.flip__inner{transform-style:preserve-3d;transition:transform .5s var(--ease);min-height:190px;position:relative}.flip:hover .flip__inner,.flip:focus-within .flip__inner{transform:rotateY(180deg)}.flip__face{backface-visibility:hidden;justify-content:center;gap:var(--s-2);padding:var(--s-5);border:var(--border-w) solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex;position:absolute;inset:0}.flip__face--back{background:var(--surface2);transform:rotateY(180deg)}.toc{gap:var(--s-1);display:grid}.toc a{color:var(--muted);font-size:var(--t-small);text-decoration:none}.toc a:hover{color:var(--text)}.sidetoc .toc{--fade-t:0px;--fade-b:0px;scrollbar-width:none;min-height:0;-webkit-mask-image:linear-gradient(to bottom, transparent, #000 var(--fade-t), #000 calc(100% - var(--fade-b)), transparent);-webkit-mask-image:linear-gradient(to bottom, transparent, #000 var(--fade-t), #000 calc(100% - var(--fade-b)), transparent);-webkit-mask-image:linear-gradient(to bottom, transparent, #000 var(--fade-t), #000 calc(100% - var(--fade-b)), transparent);mask-image:linear-gradient(to bottom, transparent, #000 var(--fade-t), #000 calc(100% - var(--fade-b)), transparent);overflow-y:auto}.sidetoc .toc::-webkit-scrollbar{display:none}.sidetoc .toc.is-fade-t{--fade-t:var(--s-5)}.sidetoc .toc.is-fade-b{--fade-b:var(--s-5)}.filters{gap:var(--s-2);flex-wrap:wrap;display:flex}.filters .pill{cursor:pointer}.filters .pill[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.logos{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.logos .slot{border-radius:var(--radius)}.logos a{gap:var(--s-2);text-decoration:none;display:grid}.logos a span{font-size:var(--t-label);color:var(--muted);text-align:center}.logos a:hover span{color:var(--text)}.rich{gap:var(--s-4);max-width:72ch;display:grid}.rich--wide{max-width:none}.rich h2{margin-top:var(--s-5)}.rich ul,.rich ol{padding-left:var(--s-5);gap:var(--s-2);margin:0;display:grid}.rich table{border-collapse:collapse;width:100%;font-size:var(--t-small)}.rich th,.rich td{border:var(--border-w) solid var(--border);padding:var(--s-3);text-align:left}.rich th{background:var(--surface2)}.rich figcaption{font-size:var(--t-small);color:var(--muted);margin-top:var(--s-2)}.aside-note{padding:var(--s-4);border-left:3px solid var(--border-strong);background:var(--surface);border-radius:0 var(--radius) var(--radius) 0}.sublist>li{gap:2px;display:grid}.painrail>.card{gap:var(--s-4)}.painrail .slot--sq{width:100%;max-width:160px}.locations{gap:var(--s-7);grid-template-columns:var(--split,1fr 1.4fr);align-items:start;display:grid}.locations__content h2,.locations__intro{white-space:pre-line}.locations__visual{min-width:0}.locations__map{aspect-ratio:950/550;width:100%;position:relative}.locations__map-art{background:var(--muted);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.locations__map-art{background:color-mix(in srgb, var(--muted) 34%, transparent)}}.locations__map-art{-webkit-mask:url(/assets/hygge-world-map.svg) 50%/contain no-repeat;mask:url(/assets/hygge-world-map.svg) 50%/contain no-repeat}.location-pin{z-index:1;width:28px;height:35px;filter:drop-shadow(0 4px 4px var(--text));display:block;position:absolute;translate:-50% -100%}@supports (color:color-mix(in lab, red, red)){.location-pin{filter:drop-shadow(0 4px 4px color-mix(in srgb, var(--text) 28%, transparent))}}.location-pin{pointer-events:none}.location-pin svg{width:100%;height:100%;display:block}.location-pin path{fill:var(--text);transition:fill var(--dur) var(--ease)}.location-pin.is-active path{fill:var(--accent-text)}.locations__cards{align-items:stretch}.location-card{background:var(--bg2);width:100%;min-width:0;min-height:100%;color:inherit;font:inherit;text-align:left;appearance:none;align-items:flex-start}.location-card__head{gap:var(--s-2);align-items:center;display:flex}.location-card__flag{object-fit:cover;width:30px;height:20px;box-shadow:0 0 0 var(--border-w) var(--border-strong);flex:none}.location-card__address{overflow-wrap:anywhere}@media (max-width:900px){.locations{grid-template-columns:1fr}}@media (max-width:560px){.locations__map{aspect-ratio:950/620}.location-pin{width:24px;height:30px}}.ctasteps{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.ctasteps .slot--icon{width:70px}.hdr{z-index:100;background:var(--bg);border-bottom:var(--border-w) solid var(--border);position:sticky;top:0}.hdr__bar{height:var(--header-h);align-items:center;gap:var(--s-5);display:flex}.hdr__logo{letter-spacing:-.02em;flex:none;width:clamp(96px,11vw,160px);height:32px;font-size:1.1rem;font-weight:600;text-decoration:none;display:block;position:relative}.hdr__logo-image{object-fit:contain;object-position:left center}.hdr__logo-image--dark,[data-theme=dark] .hdr__logo-image--light{display:none}[data-theme=dark] .hdr__logo-image--dark{display:block}.hdr__nav{gap:var(--s-1);margin-left:auto;display:flex}.navlink{all:unset;cursor:pointer;padding:calc(var(--s-2) + var(--optical-shift)) var(--s-3) calc(var(--s-2) - var(--optical-shift));border-radius:var(--radius-sm);font-size:var(--t-small);color:var(--muted);white-space:nowrap;transition:color var(--dur-fast) var(--ease);text-decoration:none;position:relative}.navlink:hover,.navlink[aria-expanded=true]{color:var(--text)}.navlink:after{content:"";left:var(--s-3);right:var(--s-3);height:var(--accent-stroke);border-radius:var(--radius-pill);background:var(--accent-text);transition:scale var(--dur) var(--ease);position:absolute;bottom:2px;scale:0 1}.navlink:hover:after,.navlink:focus-visible:after,.navlink[aria-expanded=true]:after{scale:1}.mega{background:var(--bg);border-bottom:var(--border-w) solid var(--border);box-shadow:var(--shadow-raised);opacity:0;transition:opacity var(--dur) var(--ease), translate var(--dur) var(--ease), display var(--dur) allow-discrete;inset-inline:0;display:none;position:absolute;top:100%;translate:0 -8px}.mega.is-open{opacity:1;display:block;translate:0}@starting-style{.mega.is-open{opacity:0;translate:0 -8px}}.mega__grid{gap:var(--s-6);padding-block:var(--s-6);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (max-width:900px){.mega__grid{grid-template-columns:1fr 1fr}}.mega__col{gap:var(--s-3);align-content:start;display:grid}.mega__col>a.mega__cat{font-weight:600;font-size:var(--t-small);text-decoration:none}.mega__sub{gap:var(--s-2);display:grid}.mega__sub a{font-size:var(--t-small);color:var(--muted);transition:color var(--dur-fast) var(--ease);text-decoration:none}.mega__sub a:hover{color:var(--accent-text)}.mega--drop .mega__sub{padding-block:var(--s-6);max-width:260px}.mega--drop .mega__cat{margin-top:var(--s-2);color:var(--text);font-weight:600}@media (max-width:1279px){.hdr__nav{margin-left:0;overflow-x:auto}.hdr__bar{gap:var(--s-3)}.mega{box-shadow:none;border-bottom:0;min-width:240px;position:static}.mega__grid{gap:var(--s-4);padding-block:var(--s-4);grid-template-columns:1fr}}.ftr{border-top:var(--border-w) solid var(--border);background:var(--bg2);padding-block:var(--s-8) var(--s-6)}.ftr__grid{align-items:start;gap:var(--s-6);grid-template-columns:1.4fr repeat(3,minmax(0,1fr));display:grid}@media (max-width:760px){.ftr__grid{grid-template-columns:1fr 1fr}}.ftr__heading{line-height:var(--lh-h4);text-wrap:balance;font-size:var(--t-label);font-family:var(--font-head);letter-spacing:normal;text-transform:none;color:var(--muted);margin:0;font-weight:500}.ftr a{width:fit-content;color:var(--muted);font-size:var(--t-small);transition:color var(--dur-fast) var(--ease);text-decoration:none;display:inline-block;position:relative}.ftr a:after{content:"";height:var(--accent-stroke);border-radius:var(--radius-pill);background:var(--accent-text);transform-origin:0;transition:scale var(--dur) var(--ease);inset-inline:0;position:absolute;bottom:-2px;scale:0 1}.ftr a:hover,.ftr a:focus-visible{color:var(--accent-text)}.ftr a:hover:after,.ftr a:focus-visible:after{scale:1}.ftr__base{margin-top:var(--s-7);padding-top:var(--s-4);border-top:var(--border-w) solid var(--border);justify-content:space-between;gap:var(--s-4);font-size:var(--t-small);color:var(--muted);flex-wrap:wrap;display:flex}.modal{border-radius:var(--radius-lg);background:var(--bg);width:min(100% - 32px,520px);max-width:520px;max-height:calc(100dvh - 32px);color:var(--text);opacity:0;transition:opacity var(--dur-slow) var(--ease), scale var(--dur-slow) var(--ease), translate var(--dur-slow) var(--ease), display var(--dur-slow) allow-discrete, overlay var(--dur-slow) allow-discrete;border:none;margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto;translate:0 8px;scale:.96}.modal[open]{opacity:1;translate:0;scale:1}@starting-style{.modal[open]{opacity:0;translate:0 8px;scale:.96}}.modal::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:background var(--dur-slow) var(--ease), backdrop-filter var(--dur-slow) var(--ease), display var(--dur-slow) allow-discrete, overlay var(--dur-slow) allow-discrete;background:0 0}.modal[open]::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c}@starting-style{.modal[open]::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();background:0 0}}.modal__inner{padding:var(--s-6);display:grid}.modal__heading{align-items:start;gap:var(--s-3);grid-template-columns:minmax(0,1fr) 44px;display:grid}.modal__heading+p{margin-top:var(--s-4)}.modal__x{all:unset;cursor:pointer;top:var(--s-4);right:var(--s-5);color:var(--muted);font-size:1.25rem;line-height:1;position:absolute}.modal__heading .modal__x{box-sizing:border-box;width:44px;height:44px;margin-top:calc((var(--t-h3) * var(--lh-h3) - 44px) / 2);place-items:center;display:grid;position:static}.modal__x{transition:color var(--dur-fast) var(--ease)}.modal__x:hover{color:var(--text)}.modal button[type=submit]{white-space:normal;overflow-wrap:anywhere;text-align:center;width:fit-content;min-width:0;max-width:100%;min-height:44px}@media (max-width:760px){.modal:not(.modal--lightbox){overscroll-behavior-y:contain;border-radius:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0}.modal:not(.modal--lightbox) .modal__inner{padding:max(var(--s-5), env(safe-area-inset-top)) max(var(--s-5), env(safe-area-inset-right)) max(var(--s-5), env(safe-area-inset-bottom)) max(var(--s-5), env(safe-area-inset-left))}.modal button[type=submit]{width:100%}}.mega__all{margin-bottom:var(--s-6);font-size:var(--t-small);color:var(--text);font-weight:600;text-decoration:none;display:inline-block}.card--link,.card--clickable{position:relative}.card--link:after,.card--clickable:after{content:"";border:var(--accent-stroke) solid var(--accent-text);border-radius:inherit;clip-path:inset(100% 0 0);transition:clip-path var(--dur-enter) var(--ease);pointer-events:none;position:absolute;inset:0}.card--link:hover:after,.card--link:focus-within:after,.card--clickable:hover:after,.card--clickable:focus-within:after,.location-card[aria-pressed=true]:after{clip-path:inset(0)}.card--accent-title:is(.card--link,.card--clickable):is(:hover,:focus-within) :is(h3,h4),.card--accent-title:is(.card--link,.card--clickable):is(:hover,:focus-within) .arrowlink{color:var(--accent-text)}.casecard .arrowlink{font-family:var(--font-head);font-size:var(--t-h4);letter-spacing:0;font-weight:500}.picklist--ruled .picklist__item,.stats__cell,.acc details,.mega__sub a,.mega__cat{position:relative}.picklist--ruled .picklist__item:after{content:"";inset-inline:0;bottom:calc(var(--border-w) * -1);height:var(--accent-stroke);background:var(--accent-text);transform-origin:0;transition:scale var(--dur-slow) var(--ease);position:absolute;scale:0 1}.picklist--ruled .picklist__item:hover:after,.picklist--ruled .picklist__item:focus-visible:after,.picklist--ruled .picklist__item[aria-pressed=true]:after{scale:1}.picklist--ruled .picklist__item[aria-pressed=true]{color:var(--accent-text)}.picklist:not(.picklist--ruled) .picklist__item:hover,.picklist:not(.picklist--ruled) .picklist__item:focus-visible{border-color:var(--accent-text)}.picklist:not(.picklist--ruled) .picklist__item[aria-pressed=true]{color:var(--accent-text);background:var(--surface2);border-color:var(--accent-text)}.steps>li:after{content:"";inset-inline:0;top:calc(var(--border-w) * -1);height:var(--accent-stroke);background:var(--accent-text);transform-origin:0;transition:scale var(--dur-slow) var(--ease);pointer-events:none;position:absolute;scale:0 1}.steps>li:hover:after,.steps>li:focus-within:after{scale:1}.stats__cell:before{content:"";left:calc(var(--border-w) * -1);width:var(--accent-stroke);background:var(--accent-text);transform-origin:bottom;transition:scale var(--dur-slow) var(--ease);position:absolute;top:0;bottom:0;scale:1 0}.stats__cell:hover:before,.stats__cell:focus-within:before{scale:1}.stats--full>.stats__cell:nth-child(4n+1):before,.stats--full.stats--two>.stats__cell:nth-child(odd):before{content:none}.acc details:before,.acc details:after{content:"";height:var(--accent-stroke);background:var(--accent-text);transition:scale var(--dur-enter) var(--ease);pointer-events:none;position:absolute;inset-inline:0;scale:0 1}.acc details:before{top:calc(var(--border-w) * -1);transform-origin:0}.acc details:after{bottom:calc(var(--border-w) * -1);transform-origin:100%}.acc details:hover:before,.acc details:hover:after,.acc details:focus-within:before,.acc details:focus-within:after,.acc details[open]:before,.acc details[open]:after{scale:1}.acc summary{--faq-mark:34px;position:relative}.acc summary:after{flex:0 0 var(--faq-mark);height:var(--faq-mark);border-radius:var(--radius-pill);border:var(--border-w) solid var(--border);color:var(--muted);background:linear-gradient(currentColor 0 0) center / 12px var(--accent-stroke) no-repeat, linear-gradient(currentColor 0 0) center / var(--accent-stroke) 12px no-repeat;transition:background-size var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur-fast) var(--ease);margin-inline-start:auto}.acc summary:before{content:"";width:var(--faq-mark);height:var(--faq-mark);border-radius:var(--radius-pill);border:var(--accent-stroke) solid var(--accent-text);clip-path:inset(100% 0 0);transition:clip-path var(--dur-enter) var(--ease);pointer-events:none;position:absolute;right:0}.acc summary:hover:before,.acc summary:focus-visible:before,.acc details[open] summary:before{clip-path:inset(0)}.acc summary:hover,.acc details[open] summary{color:var(--accent-text)}.acc details[open] summary:after{color:var(--accent-text);background-size:12px var(--accent-stroke), var(--accent-stroke) 0}.techstack__item .slot--icon{position:relative}.techstack__item .slot--icon:after{content:"";border:var(--accent-stroke) solid var(--accent-text);border-radius:inherit;clip-path:inset(100% 0 0);transition:clip-path var(--dur-enter) var(--ease);pointer-events:none;position:absolute;inset:0}.techstack__item:hover .slot--icon:after,.techstack__item:focus-within .slot--icon:after{clip-path:inset(0)}.logos a{padding:var(--s-2);transition:color var(--dur-fast) var(--ease)}.logos a .slot--logo:after{content:"";border:var(--accent-stroke) solid var(--accent-text);border-radius:inherit;clip-path:inset(100% 0 0);transition:clip-path var(--dur-enter) var(--ease);pointer-events:none;position:absolute;inset:0}.logos a:hover .slot--logo:after,.logos a:focus-visible .slot--logo:after{clip-path:inset(0)}.logos a:hover span,.logos a:focus-visible span{color:var(--accent-text)}.logos a:focus-visible{outline:none}@property --ring-draw{syntax:"<angle>";inherits:false;initial-value:0deg}@supports (overflow-clip-margin:1px){.card--link:after,.card--clickable:after,.techstack__item .slot--icon:after,.logos a .slot--logo:after{inset:calc(var(--border-w) * -1)}.card--bare,.techstack__item .slot--icon,.logos a .slot--logo{overflow-clip-margin:var(--border-w);overflow:clip}}@supports ((-webkit-mask-image:conic-gradient(#000, #000)) or (mask-image:conic-gradient(#000, #000))){.card--link:after,.card--clickable:after,.acc summary:before,.techstack__item .slot--icon:after,.logos a .slot--logo:after{clip-path:none;--ring-draw:0deg;-webkit-mask-image:conic-gradient(from 180deg, #000 var(--ring-draw), transparent 0 calc(360deg - var(--ring-draw)), #000 0);-webkit-mask-image:conic-gradient(from 180deg, #000 var(--ring-draw), transparent 0 calc(360deg - var(--ring-draw)), #000 0);-webkit-mask-image:conic-gradient(from 180deg, #000 var(--ring-draw), transparent 0 calc(360deg - var(--ring-draw)), #000 0);mask-image:conic-gradient(from 180deg, #000 var(--ring-draw), transparent 0 calc(360deg - var(--ring-draw)), #000 0);transition:--ring-draw var(--dur-enter) var(--ease)}.card--link:hover:after,.card--link:focus-within:after,.card--clickable:hover:after,.card--clickable:focus-within:after,.location-card[aria-pressed=true]:after,.acc summary:hover:before,.acc summary:focus-visible:before,.acc details[open] summary:before,.techstack__item:hover .slot--icon:after,.techstack__item:focus-within .slot--icon:after,.logos a:hover .slot--logo:after,.logos a:focus-visible .slot--logo:after{--ring-draw:180deg}}.logos--loop{--logos-edge:clamp(32px, 6vw, 96px);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--logos-edge), #000 calc(100% - var(--logos-edge)), transparent 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--logos-edge), #000 calc(100% - var(--logos-edge)), transparent 100%);-webkit-mask-image:linear-gradient(to right, transparent 0, #000 var(--logos-edge), #000 calc(100% - var(--logos-edge)), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 var(--logos-edge), #000 calc(100% - var(--logos-edge)), transparent 100%);display:block;overflow:hidden}.logos--loop .logos__track{gap:var(--s-3);width:max-content;animation:logos-marquee var(--marquee-duration,40s) linear infinite;display:flex}.logos--loop .logos__seq{gap:var(--s-3);display:flex}.logos--loop .logos__seq>a{flex:0 0 160px}.logos--loop:hover .logos__track{animation-play-state:paused}.logos--loop:has(:focus-visible) .logos__track{animation-play-state:paused}@keyframes logos-marquee{to{translate:calc(var(--marquee-distance,0px) * -1) 0}}.ishow__item.is-on h3,.ishow__item.is-on .ishow__more,.ishow__item:hover h3,.ishow__item:focus-within h3{color:var(--accent-text)}.toc a{padding:calc(var(--s-1) + var(--optical-shift)) var(--s-2) calc(var(--s-1) - var(--optical-shift));border-radius:var(--radius-sm);border-left:var(--accent-stroke) solid transparent;transition:color var(--dur-fast) var(--ease), background-color var(--dur-fast) var(--ease), border-color var(--dur) var(--ease)}.toc a[aria-current=location]{color:var(--accent-text);background:var(--surface2);border-left-color:var(--accent-text)}.toc a:hover,.toc a:focus-visible{color:var(--accent-text)}.mega__sub a:after,a.mega__cat:after{content:"";height:var(--accent-stroke);background:var(--accent-text);transform-origin:0;transition:scale var(--dur) var(--ease);inset-inline:0;position:absolute;bottom:-2px;scale:0 1}.mega__sub a:hover:after,.mega__sub a:focus-visible:after,a.mega__cat:hover:after,a.mega__cat:focus-visible:after{scale:1}a.mega__cat:before{content:"";height:var(--accent-stroke);background:var(--accent-text);transform-origin:100%;transition:scale var(--dur) var(--ease);inset-inline:0;position:absolute;top:-2px;scale:0 1}a.mega__cat:hover:before,a.mega__cat:focus-visible:before{scale:1}a.mega__cat:hover,a.mega__cat:focus-visible{color:var(--accent-text)}.mega__cat--static,.mega__label{color:var(--muted);cursor:default;margin:0}.mega__cat--static{color:var(--text);font-weight:600}@media (prefers-reduced-motion:reduce){.logos--loop .logos__track{animation:none}.steps>li:after,.card--link:after,.card--clickable:after,.acc summary:before,.techstack__item .slot--icon:after,.logos a .slot--logo:after,.location-pin path{transition:none}.logos--loop{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}.select__native{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.select{justify-content:space-between;align-items:center;gap:var(--s-3);text-align:left;cursor:pointer;font-family:var(--font-body);display:flex}.select[data-placeholder]{color:var(--faint)}.select__icon{color:var(--muted);transition:rotate var(--dur) var(--ease);place-content:center;display:grid}.select[data-state=open] .select__icon{rotate:180deg}.select[data-state=open]{border-color:var(--accent-text)}.select__panel{z-index:200;width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height);border:var(--border-w) solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised);opacity:0;transition:opacity var(--dur) var(--ease), translate var(--dur) var(--ease);overflow:hidden;translate:0 -4px}.select__panel[data-state=open]{opacity:1;translate:0}.select__list{padding:var(--s-1)}.select__option{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);border-radius:var(--radius-sm);font-size:var(--t-small);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;display:flex}.select__option[data-highlighted]{background:var(--surface2);color:var(--accent-text)}.select__option[data-state=checked]{color:var(--accent-text);font-weight:500}.select__check{place-content:center;display:grid}@media (prefers-reduced-motion:reduce){.select__panel{transition:none}}input.input:not([type=file]),.select{padding-block:calc(12px + var(--optical-shift)) calc(12px - var(--optical-shift))}.select__option{padding-block:calc(var(--s-2) + var(--optical-shift)) calc(var(--s-2) - var(--optical-shift))}.check,.picklist__item{padding-block:calc(var(--s-3) + var(--optical-shift)) calc(var(--s-3) - var(--optical-shift))}.picklist--ruled .picklist__item{padding-block:calc(var(--s-4) + var(--optical-shift)) calc(var(--s-4) - var(--optical-shift))}.acc summary{padding-block:calc(var(--s-5) + var(--optical-shift)) calc(var(--s-5) - var(--optical-shift))}@supports selector(::details-content){.acc details::details-content{opacity:0;block-size:0;transition:block-size var(--dur-slow) var(--ease), opacity var(--dur) var(--ease), content-visibility var(--dur-slow) allow-discrete;overflow:hidden}.acc details[open]::details-content{opacity:1;block-size:auto}}.sidetoc>.eyebrow{text-transform:none;letter-spacing:0}.js-reveal .block,.js-reveal .block :where(.grid,.rail,.stats)>*{transition:opacity var(--dur-enter) var(--ease), translate var(--dur-enter) var(--ease);transition-delay:calc(var(--i,0) * var(--stagger))}:is(.js-reveal .is-revealing :where(.grid,.rail,.stats)>*,.js-reveal .is-revealing:not(:has(.grid,.rail,.stats))){opacity:0;translate:0 12px}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(2){--i:1}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(3){--i:2}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(4){--i:3}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(5){--i:4}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(6){--i:5}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(7){--i:6}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(8){--i:7}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(9){--i:8}.js-reveal .block :where(.grid,.rail,.stats)>:nth-child(n+10){--i:9}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.js-reveal .is-revealing,.js-reveal .is-revealing :where(.grid,.rail,.stats)>*{opacity:1;translate:none}}html{scroll-behavior:smooth}body{margin:0;overflow-x:clip}body:has(.modal[open]){padding-right:var(--scroll-lock-gap,0px);overflow:hidden}.wireframe-site{min-height:100vh}.wireframe-site .slot>img,.wireframe-site .slot>video{object-fit:cover;width:100%;height:100%;display:block}:is(.wireframe-site .slot:has(>img),.wireframe-site .slot:has(>video)){background-image:none;border-color:#0000;padding:0}.wireframe-site .block--generous{padding-block:var(--s-9)}.wireframe-site .hdr__toggle{display:none}.wireframe-site .hdr--static{position:static}.wireframe-site .hero__body--centred{text-align:center;justify-items:center}.wireframe-site .founder__sign{font-family:var(--font-body);font-style:italic;font-size:var(--t-small);color:var(--muted)}.wireframe-site .steps--plain>li:before{display:none}.wireframe-site .steps--vertical{grid-template-columns:1fr}@keyframes wireframe-stat-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.wireframe-site .stats__n{animation:.5s ease-out both wireframe-stat-in}.wireframe-site .stats--static .stats__n{animation:none}.wireframe-site .logos .slot>img{filter:grayscale();transition:filter .2s}.wireframe-site .logos a:hover .slot>img,.wireframe-site .logos--colour .slot>img{filter:none}.wireframe-site .logos--loop{scroll-behavior:smooth;scrollbar-width:none}.wireframe-site .modal--lightbox{width:min(1100px,92vw)}.wireframe-site .gallery:has(~.modal--lightbox) .gallery__frame{cursor:zoom-in}.wireframe-site .rich--full{max-width:none}.wireframe-site .theme-toggle{border:1px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--text);transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);border-radius:50%;flex:none;place-items:center;padding:0;display:inline-grid}.wireframe-site .theme-toggle__icon{stroke-width:1.75px;width:16px;height:16px;transition:transform var(--dur) var(--ease);transform:rotate(0)scale(1)}@media (hover:hover) and (pointer:fine){.wireframe-site .theme-toggle:hover{border-color:var(--border-strong);background:var(--surface2);color:var(--accent-text)}.wireframe-site .theme-toggle:hover .theme-toggle__icon{transform:rotate(16deg)scale(1.08)}}.wireframe-site .theme-toggle--mobile{display:none}.wireframe-draft{z-index:190;left:var(--s-3);bottom:var(--s-3);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);padding:8px 14px;position:fixed}.wireframe-site .sidetoc{pointer-events:none}.wireframe-site .sidetoc .toc{pointer-events:auto}@media (max-width:1279px){.wireframe-site .hdr__toggle{width:44px;height:44px;color:var(--text);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.wireframe-site .hdr__burger,.wireframe-site .hdr__burger:before,.wireframe-site .hdr__burger:after{border-radius:var(--radius-pill);width:20px;height:2px;transition:background-color var(--dur-fast) var(--ease), rotate var(--dur) var(--ease), translate var(--dur) var(--ease);background:currentColor;display:block}.wireframe-site .hdr__burger{position:relative}.wireframe-site .hdr__burger:before,.wireframe-site .hdr__burger:after{content:"";position:absolute;inset-inline:0}.wireframe-site .hdr__burger:before{translate:0 -6px}.wireframe-site .hdr__burger:after{translate:0 6px}.wireframe-site .hdr__toggle[aria-expanded=true] .hdr__burger{background:0 0}.wireframe-site .hdr__toggle[aria-expanded=true] .hdr__burger:before{translate:0;rotate:45deg}.wireframe-site .hdr__toggle[aria-expanded=true] .hdr__burger:after{translate:0;rotate:-45deg}.wireframe-site .hdr__bar>.btn{margin-left:auto}.wireframe-site .hdr__nav{inset:var(--header-h) 0 0;padding:0 var(--gutter) var(--s-7);background:var(--bg);overscroll-behavior:contain;flex-direction:column;align-items:stretch;gap:0;display:none;position:fixed;overflow:hidden auto}.wireframe-site .hdr--static .hdr__nav{height:calc(100dvh - var(--header-h));position:absolute;bottom:auto}.wireframe-site .hdr__nav.is-open{display:flex}.wireframe-site .hdr__nav .navlink{text-align:left;width:100%;min-height:48px;padding-block:var(--s-2);font-size:var(--t-body);color:var(--text);border-bottom:0;align-items:center;padding-inline:0;display:flex}.wireframe-site .theme-toggle--desktop{display:none}.wireframe-site .hdr__nav .theme-toggle--mobile{align-self:flex-start;width:44px;height:44px;margin-top:auto;display:inline-grid}.wireframe-site .theme-toggle--mobile .theme-toggle__icon{width:20px;height:20px}.wireframe-site .hdr__nav>div>.navlink{z-index:1;background:var(--bg);position:sticky;top:0}.wireframe-site .hdr__nav .navlink:after,.wireframe-site .hdr__nav .mega__sub a:after,.wireframe-site .hdr__nav a.mega__cat:after,.wireframe-site .hdr__nav a.mega__cat:before{display:none}.wireframe-site .hdr__nav .mega .wrap{padding-inline:0}.wireframe-site .hdr__nav .mega__sub{gap:0}.wireframe-site .hdr__nav .mega__sub>*{align-items:center;min-height:44px;display:flex}}@media (max-width:900px){.wireframe-site .sidetoc{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.wireframe-site .theme-toggle:hover .theme-toggle__icon{transform:none}}
