:root{color-scheme:light dark;--color-paper: #09090b;--color-paper: light-dark(#fbfbfa, #09090b);--color-paper-raised: #121215;--color-paper-raised: light-dark(#ffffff, #121215);--color-paper-sunken: #050507;--color-paper-sunken: light-dark(#f2f2f0, #050507);--color-ink: #f4f4f5;--color-ink: light-dark(#1c1c1f, #f4f4f5);--color-ink-raised: #1c1c20;--color-ink-raised: light-dark(#e8e8e6, #1c1c20);--color-ink-soft: #a1a1aa;--color-ink-soft: light-dark(#52525b, #a1a1aa);--color-ink-mute: #8b8b95;--color-ink-mute: light-dark(#5f5f6a, #8b8b95);--color-line: rgb(255 255 255 / 8%);--color-line: light-dark(rgb(0 0 0 / 10%), rgb(255 255 255 / 8%));--color-line-strong: rgb(255 255 255 / 16%);--color-line-strong: light-dark(rgb(0 0 0 / 20%), rgb(255 255 255 / 16%));--color-line-control: rgb(255 255 255 / 42%);--color-line-control: light-dark(#8f8f99, rgb(255 255 255 / 42%));--color-accent: #a78bfa;--color-accent: light-dark(#7c3aed, #a78bfa);--color-accent-deep: #8b5cf6;--color-accent-deep: light-dark(#6d28d9, #8b5cf6);--color-accent-bright: #d946ef;--color-accent-bright: light-dark(#c026d3, #d946ef);--gradient-accent: linear-gradient(135deg, #8b5cf6, #d946ef);--gradient-accent: linear-gradient( 135deg, light-dark(#7c3aed, #8b5cf6), light-dark(#c026d3, #d946ef) );--color-glow: rgb(139 92 246 / 15%);--color-glow: light-dark(rgb(124 58 237 / 12%), rgb(139 92 246 / 15%));--color-accent-wash: rgb(139 92 246 / 10%);--color-accent-wash: light-dark(rgb(124 58 237 / 8%), rgb(139 92 246 / 10%));--color-on-accent: #17151f;--color-on-accent: light-dark(#fff, #17151f);--color-danger: #f87171;--color-danger: light-dark(#dc2626, #f87171);--color-danger-fill: #b91c1c;--color-danger-fill: light-dark(#dc2626, #b91c1c);--color-success: #34d399;--color-success: light-dark(#047857, #34d399);--color-brand-violet: #5e17b8;--color-brand-purple: #a928d9;--color-brand-magenta: #ed4fcf;--color-paper-mute: #a1a1aa;--color-paper-mute: light-dark(#52525b, #a1a1aa);--color-line-on-ink: rgb(255 255 255 / 10%);--color-line-on-ink: light-dark(rgb(0 0 0 / 12%), rgb(255 255 255 / 10%));--color-line-on-ink-strong: rgb(255 255 255 / 24%);--color-line-on-ink-strong: light-dark(rgb(0 0 0 / 28%), rgb(255 255 255 / 24%));--font-display: "Syne", "Schibsted Grotesk", -apple-system, blinkmacsystemfont, sans-serif;--font-sans: "Schibsted Grotesk", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-md: clamp(1rem, .97rem + .16vw, 1.0625rem);--text-lg: clamp(1.125rem, 1.06rem + .32vw, 1.3125rem);--text-xl: clamp(1.375rem, 1.2rem + .85vw, 1.75rem);--text-2xl: clamp(1.75rem, 1.35rem + 2vw, 2.75rem);--text-3xl: clamp(2.25rem, 1.6rem + 3.2vw, 4rem);--text-4xl: clamp(2.75rem, 1.8rem + 4.75vw, 5.5rem);--text-display: clamp(3rem, 1.4rem + 7.2vw, 7.5rem);--text-wordmark: 1.375rem;--weight-regular: 400;--weight-medium: 500;--weight-display: 700;--weight-semibold: 600;--weight-wordmark: 700;--leading-tight: .98;--leading-snug: 1.15;--leading-body: 1.65;--tracking-tight: -.02em;--tracking-display: -.035em;--tracking-wide: .1em;--space-3xs: .25rem;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.25rem;--space-xl: 3.5rem;--space-2xl: 5.5rem;--space-3xl: clamp(4.5rem, 2.75rem + 7vw, 8rem);--space-section: clamp(6rem, 3.5rem + 10vw, 12rem);--space-gallery: clamp(2.5rem, 1.5rem + 4vw, 5rem);--container-max: 87.5rem;--gutter: clamp(1.25rem, 5vw, 4rem);--measure: 38rem;--measure-wide: 44rem;--measure-statement: 26ch;--control-h: 2.75rem;--control-h-lg: 3.25rem;--header-h: 4.8125rem;--radius-xs: 2px;--radius-sm: 6px;--radius-md: 12px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgb(0 0 0 / 40%);--shadow-sm: 0 1px 2px light-dark(rgb(0 0 0 / 8%), rgb(0 0 0 / 40%));--shadow-md: 0 .5rem 1.5rem -.75rem rgb(0 0 0 / 60%);--shadow-md: 0 .5rem 1.5rem -.75rem light-dark(rgb(0 0 0 / 16%), rgb(0 0 0 / 60%));--shadow-lift: 0 1.5rem 3.5rem -1rem rgb(0 0 0 / 70%);--shadow-lift: 0 1.5rem 3.5rem -1rem light-dark(rgb(0 0 0 / 20%), rgb(0 0 0 / 70%));--image-radius: var(--radius-xs);--image-frame: 0 0 0 1px var(--color-line-strong);--image-frame-hover: 0 0 0 1px var(--color-line-control);--image-bg: #121215;--image-bg: light-dark(#efefec, #121215);--glow-card: 0 0 3rem -.5rem var(--color-glow);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .15s;--duration-base: .25s;--duration-slow: .45s;--duration-slower: .7s;--z-filter: 40;--z-header: 50;--z-menu: 80;--z-skip-link: 100}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}@font-face{font-family:Syne;src:url(/_astro/syne.BVsvWWA4.woff2) format("woff2-variations");font-weight:400 800;font-style:normal;font-display:swap;ascent-override:98%;descent-override:22%;line-gap-override:0%}@font-face{font-family:Schibsted Grotesk;src:url(/_astro/schibsted-grotesk.Bb8VGrTG.woff2) format("woff2-variations");font-weight:400 900;font-style:normal;font-display:swap;size-adjust:100%;ascent-override:96%;descent-override:24%;line-gap-override:0%}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;--sticky-offset: calc(var(--header-h) + 1rem);scroll-padding-block-start:var(--sticky-offset);-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;min-height:100svh;display:flex;flex-direction:column;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E")}body>*{position:relative;z-index:1}main{flex:1}img,picture,svg,video{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);text-wrap:balance}p{text-wrap:pretty}::selection{background:var(--color-ink);color:var(--color-paper)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-xs)}.on-ink :focus-visible{outline-color:var(--color-accent-bright)}.accent-text{background:var(--gradient-accent);background-clip:text;-webkit-background-clip:text;color:transparent;padding-block-end:.06em}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--gutter)}.container--narrow{max-width:calc(var(--measure-wide) + var(--gutter) * 2)}.section{padding-block:var(--space-section)}.section--tight{padding-block:var(--space-3xl)}.section--ruled{border-block-start:1px solid var(--color-line)}.section--ink{background:var(--color-paper-sunken);color:var(--color-ink);border-block-start:1px solid var(--color-line)}.section-head{max-width:var(--measure-wide)}.section-title{font-size:var(--text-3xl);margin-block:var(--space-2xs) var(--space-md)}.section-lede{font-size:var(--text-lg);color:var(--color-ink-soft);max-width:var(--measure)}.section--ink .section-lede{color:var(--color-paper-mute)}.overline{display:block;font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-ink-soft)}.section--ink .overline,.on-ink .overline{color:var(--color-paper-mute)}.page-hero{padding-block:var(--space-3xl) var(--space-xl)}.page-title{font-size:var(--text-display);letter-spacing:var(--tracking-display);margin-block:var(--space-2xs) var(--space-lg)}.page-lede{font-size:var(--text-lg);color:var(--color-ink-soft);max-width:var(--measure)}.accent-dot{color:var(--color-accent)}.wordmark{font-family:var(--font-display);font-size:var(--text-wordmark);font-weight:var(--weight-wordmark);letter-spacing:var(--tracking-tight);text-decoration:none;min-height:var(--control-h);transition:color var(--duration-fast) var(--ease-out)}.wordmark-lockup{display:inline-flex;align-items:center;gap:var(--space-2xs)}.wordmark .accent-dot{transition:color var(--duration-fast) var(--ease-out)}@media(hover:hover){a.wordmark:hover .accent-dot{color:var(--color-accent-deep)}}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:var(--space-sm);left:var(--space-sm);z-index:var(--z-skip-link);background:var(--color-ink);color:var(--color-paper);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-medium);text-decoration:none;opacity:0;pointer-events:none;transform:translateY(-.5rem)}.skip-link:focus-visible{opacity:1;pointer-events:auto;transform:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:var(--control-h);padding:.625rem 1.375rem;border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--weight-medium);letter-spacing:-.005em;text-align:center;text-decoration:none;transition:background-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.button:active{transform:scale(.98)}.button--lg{min-height:var(--control-h-lg);padding:.875rem 1.75rem;font-size:var(--text-lg)}.button--primary{background:var(--gradient-accent);color:#fff;position:relative;isolation:isolate}.button--primary:after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--gradient-accent);filter:blur(1rem);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.button--outline{background:transparent;color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-line-control)}.button--paper{background:var(--color-ink);color:var(--color-paper)}.button--ghost{background:transparent;color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-line-on-ink-strong)}@media(hover:hover){.button--primary:hover:after{opacity:.55}.button--outline:hover{box-shadow:inset 0 0 0 1px var(--color-ink)}.button--paper:hover{background:var(--color-accent-bright);color:#fff}.button--ghost:hover{box-shadow:inset 0 0 0 1px var(--color-ink)}}.link-arrow{display:inline-flex;align-items:center;gap:.5em;min-height:var(--control-h);font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--color-ink);text-decoration:none}.link-arrow:after{content:"→";transition:translate var(--duration-base) var(--ease-out)}@media(hover:hover){.link-arrow:hover{color:var(--color-accent)}.link-arrow:hover:after{translate:.3em 0}}.link-arrow:focus-visible:after{translate:.3em 0}.spec-list{list-style:none;padding:0;margin:0;border-block-start:1px solid var(--color-line)}.spec-list>li{padding-block:var(--space-xs);border-block-end:1px solid var(--color-line);color:var(--color-ink-soft)}.section--ink .spec-list,.on-ink .spec-list{border-color:var(--color-line-on-ink)}.section--ink .spec-list>li,.on-ink .spec-list>li{border-color:var(--color-line-on-ink);color:var(--color-paper-mute)}.tag{display:inline-flex;align-items:center;border-radius:var(--radius-pill);padding:.25rem .75rem;font-size:var(--text-sm);color:var(--color-ink-soft);box-shadow:inset 0 0 0 1px var(--color-line-strong)}picture{display:contents}.media{overflow:hidden;border-radius:var(--image-radius);background:var(--image-bg);box-shadow:var(--image-frame)}.media>img,.media :where(picture)>img{width:100%;height:auto}@media(prefers-reduced-motion:no-preference){html.js [data-reveal]{opacity:0;transform:translateY(1rem);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out),clip-path var(--duration-slower) var(--ease-out);transition-delay:var(--reveal-delay, 0ms)}html.js [data-reveal=wipe]{transform:none;clip-path:inset(0 0 100% 0)}html.js [data-reveal].is-visible{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}@media(prefers-reduced-motion:no-preference){html.js [data-enter]{animation:enter-rise var(--duration-slow) var(--ease-out) both;animation-delay:calc(var(--enter-step, 0) * 90ms)}}@keyframes enter-rise{0%{opacity:0;transform:translateY(.75rem)}}@view-transition{navigation:auto}@media(prefers-reduced-motion:no-preference){::view-transition-group(*){animation-duration:var(--duration-slow);animation-timing-function:var(--ease-out)}::view-transition-group(root){animation-duration:var(--duration-base)}::view-transition-group(.card){animation-duration:var(--duration-base)}::view-transition-old(.card),::view-transition-new(.card){animation-duration:var(--duration-fast)}::view-transition-old(root){animation:vt-leave .18s var(--ease-in-out) both}::view-transition-new(root){animation:vt-arrive var(--duration-base) var(--ease-out) both}}@keyframes vt-leave{to{opacity:0}}@keyframes vt-arrive{0%{opacity:0;transform:translateY(.5rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}@view-transition{navigation:none}}
