.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--bg: #eef0f6;--surface: #ffffff;--fg: #14172b;--muted: #5b6080;--line: #d4d8e6;--accent: #e0661b;--accent-soft: #f8dcc8;--glow: #9aa7ff;--display: "Familjen Grotesk", "Helvetica Neue", Arial, sans-serif;--body: "IBM Plex Sans", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--shadow: 0 30px 60px -30px rgba(20, 23, 43, .35);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--shadow: 0 30px 60px -30px rgba(0, 0, 0, .8);color-scheme:dark}}:root[data-theme=dark]{--shadow: 0 30px 60px -30px rgba(0, 0, 0, .8);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.6;overflow-x:hidden;transition:background-color .5s,color .5s}img{max-width:100%}.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}h1,h2,h3{font-family:var(--display);line-height:1.05;text-wrap:balance;margin:0}.label{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.planes{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.grid{position:absolute;inset:-20% -10%;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;opacity:.55;mask-image:radial-gradient(ellipse at 50% 30%,#000 20%,transparent 70%)}.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}.orb.a{width:46vw;height:46vw;background:var(--glow);top:-10vw;right:-12vw}.orb.b{width:30vw;height:30vw;background:var(--accent);bottom:-8vw;left:-10vw;opacity:.25}main{position:relative;z-index:1}header.top{position:sticky;top:0;z-index:5;backdrop-filter:blur(12px);background:color-mix(in srgb,var(--bg) 70%,transparent);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}header.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:14px}.brand{font-family:var(--mono);font-size:14px;text-decoration:none}.brand b{color:var(--accent);font-weight:500}nav{display:flex;gap:20px;font-size:14px;align-items:center}nav a{text-decoration:none;color:var(--muted)}nav a:hover{color:var(--fg)}.langswitch{font-family:var(--mono);font-size:12px;border:1px solid var(--line);border-radius:999px;padding:4px 10px}.hero{padding-block:clamp(64px,12vw,140px) 72px}.prompt{font-family:var(--mono);font-size:14px;color:var(--muted);margin-bottom:28px}.prompt span{color:var(--accent)}.hero h1{font-size:clamp(42px,8vw,108px);font-weight:700;letter-spacing:-.03em}.hero h1 em{font-style:normal;color:var(--accent)}.hero p{max-width:60ch;color:var(--muted);font-size:18px;margin:28px 0 0}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.chip{font-family:var(--mono);font-size:12px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface)}section{padding-block:72px}.sechead{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:36px}.sechead h2{font-size:clamp(32px,5vw,56px);letter-spacing:-.02em}.work{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;perspective:1200px}.card{position:relative;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:28px;min-height:260px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;box-shadow:var(--shadow);transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.8,.2,1),border-color .3s,background-color .5s}.card:hover{border-color:var(--accent)}.card .meta{display:flex;justify-content:space-between;gap:12px}.card h3{font-size:clamp(26px,3vw,36px);letter-spacing:-.02em}.card p{margin:8px 0 0;color:var(--muted);max-width:46ch}.card .open{font-family:var(--mono);font-size:13px;color:var(--accent)}.card.big{grid-column:span 2;min-height:320px}.track{position:relative;border-left:1px solid var(--line);margin-left:8px}.step{position:relative;display:block;padding:0 0 40px 32px;text-decoration:none;color:inherit}.step:before{content:"";position:absolute;left:-6px;top:8px;width:11px;height:11px;border-radius:50%;background:var(--bg);border:2px solid var(--accent)}a.step:hover h3{color:var(--accent)}.step .row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.badge{font-family:var(--mono);font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--accent);color:var(--accent)}.step h3{font-size:22px;margin-top:2px;transition:color .2s}.step p{margin:6px 0 0;color:var(--muted);max-width:62ch}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tags span{font-family:var(--mono);font-size:11px;padding:3px 8px;border-radius:6px;background:var(--accent-soft)}footer{padding-block:72px 120px;border-top:1px solid var(--line)}footer h2{font-size:clamp(32px,6vw,72px);letter-spacing:-.03em;margin-top:12px}footer p{color:var(--muted);max-width:60ch}.links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.btn{font-family:var(--mono);font-size:13px;text-decoration:none;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.case{padding-block:32px 96px}.case .bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:56px}.case h1{font-size:clamp(44px,9vw,116px);letter-spacing:-.03em}.case .lede{font-size:20px;max-width:58ch;color:var(--muted);margin:24px 0 48px}.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;border-top:1px solid var(--line);padding-top:24px}.facts div{min-width:0}.facts b{display:block;font-weight:500;margin-top:4px}.points{margin:56px 0 0;padding:0;list-style:none;display:grid;gap:20px;max-width:70ch}.points li{padding-left:28px;position:relative;font-size:18px}.points li:before{content:"→";position:absolute;left:0;color:var(--accent);font-family:var(--mono)}.casehead{padding:40px;border-radius:28px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.picker{position:fixed;z-index:30;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--surface);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow)}.picker .label{padding:0 4px}.mode{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer;padding:0;transition:transform .3s,background-color .5s}.mode:hover{transform:rotate(-20deg)}.mode svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;grid-area:1 / 1;transition:opacity .3s,transform .4s}.mode .moon{fill:currentColor;stroke:none}.mode[data-dark=true] .sun,.mode:not([data-dark=true]) .moon{opacity:0;transform:scale(.5) rotate(-90deg)}.picker .divider{width:1px;height:20px;background:var(--line)}.sw{width:26px;height:26px;border-radius:50%;border:2px solid var(--line);cursor:pointer;padding:0;background:linear-gradient(135deg,var(--a) 0 50%,var(--b) 50% 100%);transition:transform .2s}.sw[aria-pressed=true]{border-color:var(--fg);transform:scale(1.12)}@media(max-width:720px){.work{grid-template-columns:1fr}.card.big{grid-column:auto}.facts{grid-template-columns:1fr 1fr}nav a:not(.langswitch){display:none}.casehead{padding:24px}.picker .label{display:none}}::view-transition-group(*){animation-duration:.6s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
