@font-face{font-family:Familjen Grotesk;src:url(/fonts/FamiljenGrotesk.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}:root{--kin-blekk: #1a1530;--kin-lavender: #d9d0f1;--kin-lavender-light: #efeaf9;--kin-is: #dcf5ee;--kin-lavender-line: #b0a4c9;--kin-fiolett: #5d2aa8;--kin-sol: #ffd339;--kin-sol-light: #fff3bf;--kin-graf-1: #7b5cf5;--kin-graf-2: #f29d1f;--kin-graf-3: #3f9ae8;--kin-graf-1-soft: #bcaaf9;--kin-graf-track: #f1edfb;--kin-graf-ute: #e5604d;--kin-fjord: var(--kin-graf-3);--kin-ink: #1a1530;--kin-ink-soft: #3e3a4f;--kin-mute: #6b6779;--kin-line: #dedbe6;--kin-ground: #f5f4f1;--kin-white: #ffffff;--kin-tier-optimal-bg: #b9ecd4;--kin-tier-optimal-fg: #1d4d3c;--kin-tier-recommended-bg: #dcf5ee;--kin-tier-recommended-fg: #24523a;--kin-tier-out-bg: #f3dfda;--kin-tier-out-fg: #8a3a2c;--kin-tier-optimal-mark: #2f9d72;--kin-tier-recommended-mark: #8fd4b4;--kin-tier-out-mark: #c4503e;--kin-status-ok-bg: #e4efe7;--kin-status-ok-fg: #2c5a3a;--kin-status-watch-bg: #f3e9cf;--kin-status-watch-fg: #6e5416;--kin-status-out-bg: #f3dfda;--kin-status-out-fg: #8a3a2c;--kin-font: "Familjen Grotesk", "Helvetica Neue", Arial, sans-serif;--kin-font-display: var(--kin-font);--kin-font-body: var(--kin-font);--kin-radius-sm: 2px;--kin-radius-md: 6px;--kin-radius-lg: 10px;--kin-radius-pill: 6px;--kin-control: 48px;--kin-control-sm: 40px;--kin-control-xs: 36px;--kin-gray: #cdc9d8;--kin-action-bg: #ffd339;--kin-action-fg: #1a1530;--kin-secondary-bg: #d9d0f1;--kin-secondary-fg: #3e2a75;--kin-focus: #5d2aa8;--kin-control-line: #6b6779;--kin-on-ink: #ffffff;--kin-on-ink-soft: #cdc9d8;--kin-on-ink-mute: #a29cb3;--kin-solid-white: #ffffff;--kin-destructive-bg: #8a3a2c;--kin-destructive-fg: #ffffff;--kin-scrim: rgba(26, 21, 48, .35);--kin-shadow: 0 24px 60px rgba(26, 21, 48, .14);--kin-display-weight: 450;--kin-display-leading: .92;--kin-display-tracking: -.05em}:root,[data-theme]{--kin-paper: var(--kin-ground);--kin-gran: var(--kin-blekk);--kin-jade: var(--kin-sol);--kin-moss: var(--kin-lavender);--kin-moss-light: var(--kin-lavender-light);--kin-ok-bg: var(--kin-status-ok-bg);--kin-ok-fg: var(--kin-status-ok-fg);--kin-watch-bg: var(--kin-status-watch-bg);--kin-watch-fg: var(--kin-status-watch-fg);--kin-out-bg: var(--kin-status-out-bg);--kin-out-fg: var(--kin-status-out-fg)}:root{--kin-plus-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg transform='rotate(45 50 50)'%3E%3Crect x='38' y='6' width='24' height='88' rx='12'/%3E%3Crect x='6' y='38' width='88' height='24' rx='12'/%3E%3C/g%3E%3C/svg%3E");--kin-raster-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg transform='rotate(45 12 12)'%3E%3Crect x='11.1' y='9' width='1.8' height='6' rx='.9'/%3E%3Crect x='9' y='11.1' width='6' height='1.8' rx='.9'/%3E%3C/g%3E%3C/svg%3E");--kin-flair: var(--kin-ink);--kin-spring: cubic-bezier(.34, 1.56, .64, 1)}[data-theme=dark],.kin-on-dark{--kin-flair: var(--kin-sol)}.kin-plus{display:inline-block;width:.6em;height:.6em;flex:none;background:var(--kin-flair);-webkit-mask:var(--kin-plus-mask) center / contain no-repeat;mask:var(--kin-plus-mask) center / contain no-repeat;transition:transform .52s var(--kin-spring)}.kin-plus--sol{background:var(--kin-sol)}:is(a,button,.kin-spin-on-hover):hover>.kin-plus,.kin-plus.kin-spin-on-hover:hover{transform:rotate(90deg)}.kin-wordmark{display:inline-flex;align-items:flex-start;gap:.06em;font-weight:600;letter-spacing:-.055em;line-height:1}.kin-wordmark .kin-plus{width:.3em;height:.3em;margin-top:.06em;background:var(--kin-flair)}.kin-list{list-style:none;margin:0;padding:0}.kin-list>li{position:relative;padding-left:1.4em}.kin-list>li:before{content:"";position:absolute;left:.15em;top:.525em;width:.5em;height:.5em;background:var(--kin-flair);-webkit-mask:var(--kin-plus-mask) center / contain no-repeat;mask:var(--kin-plus-mask) center / contain no-repeat}.kin-ticks{position:relative;border-radius:var(--kin-radius-sm, 2px)!important}.kin-ticks:after{--kin-tick: 10px;content:"";position:absolute;inset:calc(var(--kin-tick) / -2 - .5px);pointer-events:none;background:var(--kin-flair);opacity:.55;-webkit-mask:var(--kin-plus-mask) left top / var(--kin-tick) var(--kin-tick) no-repeat,var(--kin-plus-mask) right top / var(--kin-tick) var(--kin-tick) no-repeat,var(--kin-plus-mask) left bottom / var(--kin-tick) var(--kin-tick) no-repeat,var(--kin-plus-mask) right bottom / var(--kin-tick) var(--kin-tick) no-repeat;mask:var(--kin-plus-mask) left top / var(--kin-tick) var(--kin-tick) no-repeat,var(--kin-plus-mask) right top / var(--kin-tick) var(--kin-tick) no-repeat,var(--kin-plus-mask) left bottom / var(--kin-tick) var(--kin-tick) no-repeat,var(--kin-plus-mask) right bottom / var(--kin-tick) var(--kin-tick) no-repeat}.kin-raster{position:relative;isolation:isolate}.kin-raster:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--kin-flair);opacity:.1;-webkit-mask:var(--kin-raster-mask) 0 0 / 24px 24px repeat;mask:var(--kin-raster-mask) 0 0 / 24px 24px repeat}.kin-divider{display:flex;align-items:center;gap:14px;color:var(--kin-line);border:0;margin:0}.kin-divider:before,.kin-divider:after{content:"";flex:1;height:1px;background:var(--kin-line)}.kin-divider>.kin-plus{font-size:14px}.kin-ai{display:inline-flex;align-items:center;gap:8px;min-height:28px;padding:0 10px;border-radius:var(--kin-radius-sm);background:var(--kin-lavender-light);color:var(--kin-ink);font-size:13px;font-weight:500}.kin-ai>.kin-plus{--kin-flair: var(--kin-fiolett);font-size:14px}.kin-spinner{display:inline-block;width:20px;height:20px;background:var(--kin-flair);-webkit-mask:var(--kin-plus-mask) center / contain no-repeat;mask:var(--kin-plus-mask) center / contain no-repeat;animation:kin-quarter 1.4s var(--kin-spring) infinite}@keyframes kin-quarter{0%,15%{transform:rotate(0)}45%,65%{transform:rotate(90deg)}95%,to{transform:rotate(180deg)}}@media(prefers-reduced-motion:reduce){.kin-plus{transition:none}:is(a,button,.kin-spin-on-hover):hover>.kin-plus,.kin-plus.kin-spin-on-hover:hover{transform:none}.kin-spinner{animation-duration:3s;animation-timing-function:linear}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg: var(--kin-ground);--bg-soft: var(--kin-lavender-light);--bg-warm: var(--kin-ground);--paper: var(--kin-white);--ink: var(--kin-blekk);--ink-soft: var(--kin-ink-soft);--ink-mute: var(--kin-mute);--line: var(--kin-line);--line-soft: var(--kin-line);--accent: var(--kin-blekk);--accent-deep: var(--kin-blekk);--accent-light: var(--kin-lavender-line);--accent-soft: var(--kin-lavender-light);--accent-ink: var(--kin-white);--data-teal: var(--kin-graf-3);--data-teal-soft: var(--kin-graf-1-soft);--data-green: var(--kin-tier-optimal-mark);--data-amber: var(--kin-graf-2);--data-coral: var(--kin-graf-ute);--data-blue: var(--kin-graf-3);--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--serif: var(--kin-font);--sans: var(--kin-font);--mono: var(--kin-font);--pad-x: clamp(20px, 4vw, 48px);--col: min(1200px, calc(100vw - var(--pad-x) * 2));--ease: cubic-bezier(.2, .7, .2, 1)}html{background:var(--bg);scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--kin-font);font-size:17px;line-height:1.55;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;position:relative}::selection{background:var(--kin-lavender);color:var(--kin-blekk)}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--kin-focus);outline-offset:4px}button,input,textarea{font:inherit}img{max-width:100%}h1,h2,h3,h4{font-family:var(--kin-font);font-weight:450;color:var(--ink);text-wrap:balance;margin:0}h1{font-size:clamp(48px,7vw,96px);line-height:var(--kin-display-leading);letter-spacing:var(--kin-display-tracking)}h2{font-size:clamp(34px,4.6vw,56px);line-height:1.02;letter-spacing:-.045em}h3{font-size:clamp(22px,2vw,26px);line-height:1.15;font-weight:500;letter-spacing:-.025em}p{margin:0;text-wrap:pretty}em,i{font-style:normal}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--kin-gray);border-radius:999px}::-webkit-scrollbar-track{background:transparent}section[id]{scroll-margin-top:72px}.col{width:var(--col);margin-inline:auto}.lede{font-size:19px;line-height:1.5;color:var(--ink-soft);max-width:60ch}.body{color:var(--ink-soft)}.eyebrow{font-family:var(--kin-font);font-size:14px;line-height:1.3;font-weight:500;color:var(--ink-soft);display:inline-flex;align-items:center;gap:10px}.tag{font-size:13px;line-height:1.3;font-weight:500;color:var(--ink-soft)}.num{font-size:13px;line-height:1.3;font-weight:500;color:var(--ink-soft);font-variant-numeric:tabular-nums}.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:24px 48px;margin:20px 0 48px}.sec-head>p{font-size:17px;color:var(--ink-soft);max-width:44ch;justify-self:end}.sec-pad{padding-block:clamp(56px,9vw,96px)}.photo{margin:0;overflow:hidden}.photo img{display:block;width:100%;height:100%;object-fit:cover}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:var(--kin-control);padding:12px 22px;background:var(--kin-action-bg);color:var(--kin-action-fg);border-radius:var(--kin-radius-md);font-family:var(--kin-font);font-size:14px;font-weight:500;line-height:1.2;border:none;cursor:pointer;text-decoration:none;transition:opacity .2s var(--ease)}.btn:hover{opacity:.88}.btn.ghost{background:var(--kin-secondary-bg);color:var(--kin-secondary-fg);border:none}.btn.ghost:hover{opacity:.88}.btn .arr{display:none}.nav-link{transition:color .2s}.nav-link:hover{text-decoration:underline;text-underline-offset:5px}[data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--delay, 0ms)}[data-reveal].visible{opacity:1;transform:translateY(0)}section{position:relative;padding-inline:var(--pad-x)}.page-hero{background:var(--kin-is);padding-block:clamp(40px,6vw,64px) clamp(48px,7vw,80px)}.page-hero h1{margin:28px 0;font-size:clamp(42px,6.4vw,84px);max-width:18ch}.page-hero .lede{color:var(--ink);max-width:56ch}.cta-band{background:var(--kin-lavender-light);padding-block:clamp(64px,10vw,112px)}.cta-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px 48px;align-items:start}.cta-inner h2{max-width:16ch}.cta-side{display:flex;flex-direction:column;align-items:flex-start;gap:24px;max-width:44ch}.cta-side p:first-child{font-size:19px;color:var(--ink-soft)}.cta-side .tag{color:var(--ink-soft)}.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0}.chip{font-size:13px;line-height:1.3;font-weight:500;padding:5px 10px;border-radius:var(--kin-radius-sm);background:var(--kin-lavender-light);color:var(--ink-soft)}.status-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:13px;font-weight:500;background:var(--kin-status-watch-bg);color:var(--kin-status-watch-fg)}.status-pill.ok{background:var(--kin-status-ok-bg);color:var(--kin-status-ok-fg)}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--ink)}a:hover>.text-link,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.project-card{display:flex;flex-direction:column;background:var(--kin-white);border:1px solid var(--line);border-radius:var(--kin-radius-lg);padding:clamp(24px,3vw,40px);text-decoration:none;color:inherit;height:100%}a.project-card:hover{border-color:var(--kin-lavender-line)}.project-brand-visual{display:flex;align-items:center;justify-content:center;height:180px;padding:32px;border-radius:var(--kin-radius-md);margin-bottom:20px;background:var(--kin-lavender-light);border:1px solid var(--line)}.project-card-featured-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(32px,4vw,56px);align-items:start}.project-card-featured-visual{min-width:0}.projects-grid-small{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}@media(max-width:900px){.sec-head{grid-template-columns:1fr;gap:20px;margin-bottom:36px}.sec-head>p{justify-self:start}.project-card-featured-inner{grid-template-columns:minmax(0,1fr);gap:24px}.cta-inner{grid-template-columns:minmax(0,1fr)}.projects-grid-small{grid-template-columns:minmax(0,1fr);gap:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{opacity:1;transform:none;transition:none}*{transition:none!important;animation:none!important}}
