:root{--fluid-screen-min:320px;--fluid-screen-design:1440px;--fluid-screen-max:1920px;--fluid-screen:clamp(var(--fluid-screen-min), 100vw, var(--fluid-screen-max));--fluid-screen-sm:clamp(var(--fluid-screen-min), 100vw, 576px);--fluid-screen-md:clamp(var(--fluid-screen-min), 100vw, 768px);--fluid-screen-lg:clamp(var(--fluid-screen-min), 100vw, 1024px);--fluid-unit:calc(var(--fluid-screen) / 1440);--breakpoint-xs:480px;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1440px;--breakpoint-2xl:1920px;--font-display-uploaded:var(--font-family-extenda-peta);--font-display-primary:var(--font-family-soehne-dreiviertelfett);--font-heading-secondary:var(--font-family-soehne-halbfett);--font-body-primary:var(--font-family-soehne-buch);--font-fallback:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-weight-buch:400;--font-weight-halbfett:600;--font-weight-dreiviertelfett:700;--font-weight-display:var(--font-weight-dreiviertelfett);--font-weight-heading:var(--font-weight-halbfett);--font-weight-body:var(--font-weight-buch);--font-size-12:clamp(.6875rem, calc(var(--fluid-unit) * 12), 1rem);--font-size-14:clamp(.75rem, calc(var(--fluid-unit) * 14), 1.1667rem);--font-size-16:clamp(.875rem, calc(var(--fluid-unit) * 16), 1.3333rem);--font-size-18:clamp(.9375rem, calc(var(--fluid-unit) * 18), 1.5rem);--font-size-20:clamp(1rem, calc(var(--fluid-unit) * 20), 1.6667rem);--font-size-24:clamp(1.125rem, calc(var(--fluid-unit) * 24), 2rem);--font-size-32:clamp(1.5rem, calc(var(--fluid-unit) * 32), 2.6667rem);--font-size-40:clamp(1.75rem, calc(var(--fluid-unit) * 40), 3.3333rem);--font-size-48:clamp(1.875rem, calc(var(--fluid-unit) * 48), 4rem);--font-size-64:clamp(2.5rem, calc(var(--fluid-unit) * 64), 5.3333rem);--line-height-none:1;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--letter-spacing-tight:-.04em;--letter-spacing-snug:-.02em;--letter-spacing-none:0;--letter-spacing-wide:.08em;--gray-0:#fff;--gray-100:#bfbfbf;--gray-150:#c2c2c2;--gray-200:#b5b5b5;--gray-225:#b1b1b1;--gray-250:#b0b0b0;--gray-275:#ababab;--gray-300:#a6a6a6;--gray-350:#9f9f9f;--gray-400:#9c9c9c;--gray-450:#969696;--gray-950:#0f0f0f;--lime-500:#8dc63f;--lime-700:#4f7116;--color-near-black:var(--gray-950);--color-white:var(--gray-0);--color-lime:var(--lime-500);--color-lime-on-light:var(--lime-700);--color-soft-grey:var(--gray-100);--color-background:var(--color-near-black);--color-foreground:var(--color-white);--color-accent:var(--color-lime);--color-accent-on-light:var(--color-lime-on-light);--color-text-muted:var(--color-soft-grey);--space-4:clamp(.25rem, calc(var(--fluid-unit) * 4), .3333rem);--space-8:clamp(.5rem, calc(var(--fluid-unit) * 8), .6667rem);--space-12:clamp(.625rem, calc(var(--fluid-unit) * 12), 1rem);--space-16:clamp(.75rem, calc(var(--fluid-unit) * 16), 1.3333rem);--space-20:clamp(.875rem, calc(var(--fluid-unit) * 20), 1.6667rem);--space-24:clamp(1rem, calc(var(--fluid-unit) * 24), 2rem);--space-32:clamp(1.25rem, calc(var(--fluid-unit) * 32), 2.6667rem);--space-40:clamp(1.5rem, calc(var(--fluid-unit) * 40), 3.3333rem);--space-48:clamp(2rem, calc(var(--fluid-unit) * 48), 4rem);--space-56:clamp(2.5rem, calc(var(--fluid-unit) * 56), 4.6667rem);--space-64:clamp(3rem, calc(var(--fluid-unit) * 64), 5.3333rem);--space-80:clamp(3.5rem, calc(var(--fluid-unit) * 80), 6.6667rem);--space-96:clamp(4rem, calc(var(--fluid-unit) * 96), 8rem);--space-120:clamp(5rem, calc(var(--fluid-unit) * 120), 10rem);--space-152:clamp(6rem, calc(var(--fluid-unit) * 152), 12.6667rem);--space-160:clamp(6.5rem, calc(var(--fluid-unit) * 160), 13.3333rem);--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--radius-full:999px;--shadow-none:none;--shadow-xs:0 1px 2px #00000014;--shadow-sm:0 4px 12px #0000001f;--shadow-md:0 12px 32px #00000029;--shadow-lg:0 24px 56px #00000038;--shadow-xl:0 40px 96px #00000047;--z-base:0;--z-content:1;--z-raised:2;--z-dropdown:20;--z-sticky:30;--z-nav:100;--z-overlay:200;--z-modal:300;--z-toast:400;--z-tooltip:500;--z-max:999;--color-primary:var(--lime-500);--color-primary-on-light:var(--lime-700);--color-secondary:var(--gray-100);--color-surface:var(--gray-950);--color-surface-inverse:var(--gray-0);--color-border:currentColor;--color-text-primary:var(--gray-0);--color-text-secondary:var(--gray-100);--color-text-inverse:var(--gray-950);--color-placeholder-surface:var(--gray-300);--color-placeholder-surface-light:var(--gray-150);--color-placeholder-surface-mid:var(--gray-225);--color-placeholder-surface-strong:var(--gray-200);--spacing-2xs:var(--space-4);--spacing-xs:var(--space-8);--spacing-sm:var(--space-12);--spacing-md:var(--space-16);--spacing-lg:var(--space-24);--spacing-xl:var(--space-40);--spacing-2xl:var(--space-64);--spacing-3xl:var(--space-80);--spacing-section:var(--space-152);--section-rhythm:calc(8.2143rem + var(--fluid-unit) * 68.57);--radius-control:var(--radius-xs);--radius-button:var(--radius-xs);--radius-card:var(--radius-md);--radius-panel:var(--radius-md);--radius-pill:var(--radius-full);--surface-shadow:var(--shadow-none);--card-shadow:var(--shadow-none);--dropdown-shadow:var(--shadow-md);--modal-shadow:var(--shadow-lg);--page-gutter:var(--space-24);--page-content-inline:calc(100% - (var(--page-gutter) * 2));--grid-column-count:12;--layout-columns:var(--grid-column-count);--layout-content-width:var(--page-content-inline);--layout-section-padding-top:var(--space-40);--layout-section-gap:var(--space-152);--layout-grid-column-gap:var(--space-24);--layout-grid-row-gap:var(--space-64);--width-content:var(--layout-content-width);--ratio-hero-visual:1392 / 302;--height-hero-visual:calc(var(--fluid-unit) * 256);--height-hero-tagline:calc(var(--fluid-unit) * 192);--line-thickness-1:max(1px, calc(var(--fluid-unit) * 1));--line-thickness-2:max(1px, calc(var(--fluid-unit) * 2));--layout-hero-visual-height:var(--height-hero-visual);--layout-hero-tagline-height:var(--height-hero-tagline);--layout-hero-heading-width:var(--layout-content-width);--layout-hero-heading-indent:calc(var(--fluid-unit) * 354);--layout-hero-cta-top:calc(var(--fluid-unit) * 26);--space-inline-cta-gap:var(--space-8);--duration-fast:.2s;--duration-medium:.45s;--duration-slow:.6s;--ease-premium:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--transition-line:transform var(--duration-medium) var(--ease-premium);--button-background:transparent;--button-text:currentColor;--button-hover:currentColor;--navbar-height:calc(var(--fluid-unit) * 64);--navbar-layer:var(--z-nav);--navbar-overlay-layer:var(--z-overlay);--navbar-grid-layer:var(--z-modal);--footer-layer-background:var(--z-base);--footer-layer-content:var(--z-content);--footer-layer-primary:var(--z-raised);--footer-spacing:var(--space-24);--hero-gap:1em;--hero-cta-layer:var(--z-content);--card-padding:var(--space-24);--project-card-radius:var(--radius-none);--project-rail-layer:var(--z-content);--project-hover-frame-layer:var(--z-content);--project-logo-layer:var(--z-raised);--cta-color:var(--color-foreground);--cta-gap:var(--space-inline-cta-gap);--cta-line-thickness:var(--line-thickness-1);--type-h1-size:var(--font-size-64);--type-h1-line-height:var(--line-height-none);--type-h1-letter-spacing:var(--letter-spacing-tight);--type-h1-width:var(--layout-content-width);--type-h1-indent:calc(var(--fluid-unit) * 354);--type-h2a-size:var(--font-size-48);--type-h2a-line-height:var(--line-height-none);--type-h2a-letter-spacing:var(--letter-spacing-tight);--type-h2a-width:calc(var(--fluid-unit) * 684);--type-h2a-indent:calc(var(--fluid-unit) * 88);--type-h2b-size:var(--font-size-48);--type-h2b-line-height:var(--line-height-none);--type-h2b-letter-spacing:var(--letter-spacing-tight);--type-h2b-width:calc(var(--fluid-unit) * 566);--type-h2b-indent:calc(var(--fluid-unit) * 120);--type-h3-size:var(--font-size-40);--type-h3-line-height:var(--line-height-none);--type-h3-letter-spacing:var(--letter-spacing-tight);--type-h3-width:calc(var(--fluid-unit) * 330);--type-h4a-size:var(--font-size-32);--type-h4a-line-height:var(--line-height-none);--type-h4a-letter-spacing:var(--letter-spacing-tight);--type-h4a-width:calc(var(--fluid-unit) * 461);--type-h4a-indent:calc(var(--fluid-unit) * 64);--type-h4b-size:var(--font-size-32);--type-h4b-line-height:var(--line-height-none);--type-h4b-letter-spacing:var(--letter-spacing-tight);--type-h4b-max-width:calc(var(--fluid-unit) * 647);--type-h4b-min-width:calc(var(--fluid-unit) * 408.33);--type-h5-size:var(--font-size-12);--type-h5-line-height:var(--line-height-none);--type-h5-letter-spacing:var(--letter-spacing-snug);--type-h6-size:var(--font-size-24);--type-h6-line-height:var(--line-height-tight);--type-h6-letter-spacing:var(--letter-spacing-tight);--type-accent-size:var(--font-size-24);--type-accent-line-height:var(--line-height-none);--type-accent-letter-spacing:var(--letter-spacing-tight);--type-body-size:var(--font-size-16);--type-body-line-height:var(--line-height-none);--type-body-letter-spacing:var(--letter-spacing-none);--type-body-xl-size:var(--font-size-24);--type-body-xl-line-height:var(--line-height-snug);--type-body-xl-letter-spacing:var(--letter-spacing-none);--type-body-lg-size:var(--font-size-20);--type-body-lg-line-height:var(--line-height-normal);--type-body-lg-letter-spacing:var(--letter-spacing-none);--type-body-md-size:var(--font-size-16);--type-body-md-line-height:var(--line-height-normal);--type-body-md-letter-spacing:var(--letter-spacing-none);--type-body-sm-size:var(--font-size-14);--type-body-sm-line-height:var(--line-height-normal);--type-body-sm-letter-spacing:var(--letter-spacing-none);--type-link-size:var(--font-size-16);--type-link-line-height:var(--line-height-snug);--type-link-letter-spacing:var(--letter-spacing-none);--type-button-size:var(--font-size-16);--type-button-line-height:var(--line-height-none);--type-button-letter-spacing:var(--letter-spacing-snug);--type-caption-size:var(--font-size-12);--type-caption-line-height:var(--line-height-snug);--type-caption-letter-spacing:var(--letter-spacing-none);--type-label-size:var(--font-size-12);--type-label-line-height:var(--line-height-none);--type-label-letter-spacing:var(--letter-spacing-wide);--type-hero-heading-size:var(--font-size-64);--type-hero-heading-line-height:var(--line-height-none);--type-hero-heading-letter-spacing:var(--letter-spacing-tight);--type-cta-size:var(--font-size-24);--type-cta-line-height:var(--line-height-none);--type-cta-letter-spacing:var(--letter-spacing-tight)}@media (max-width:768px){:root{--page-gutter:clamp(1rem, calc(100vw * 16 / 390), 2rem);--page-content-inline:calc(100% - (var(--page-gutter) * 2));--layout-content-width:var(--page-content-inline);--layout-section-gap:clamp(5rem, calc(100vw * 96 / 390), 9rem);--layout-grid-column-gap:var(--page-gutter)}}
*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;min-height:100%}body{min-height:100%}img,picture,svg,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0}
html,body{background:var(--color-background);color:var(--color-foreground)}html{scrollbar-width:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}body{font-family:var(--font-body-primary), var(--font-fallback);font-weight:var(--font-weight-body);isolation:isolate;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body.is-page-transitioning{cursor:progress}body.is-app-initializing{cursor:progress;overflow:hidden}[data-app-content]{display:contents}body.is-app-initializing [data-app-content]{pointer-events:none;-webkit-user-select:none;user-select:none}body.is-page-transitioning a,body.is-page-transitioning button,body.is-page-transitioning input,body.is-page-transitioning textarea,body.is-page-transitioning select{pointer-events:none}html.lenis,html.lenis body{block-size:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}.skip-link{z-index:var(--z-nav);padding:var(--space-8) var(--space-12);background:var(--color-foreground);color:var(--color-background);font-family:var(--font-heading-secondary), var(--font-fallback);font-size:var(--type-body-size);font-weight:var(--font-weight-heading);line-height:var(--type-body-line-height);transform:translateY(calc(-100% - var(--space-24)));transition:transform var(--duration-fast) var(--ease-premium);text-decoration:none;position:fixed;inset-block-start:var(--space-16);inset-inline-start:var(--space-16)}.skip-link:focus-visible{transform:translateY(0)}::selection{background:var(--color-accent);color:var(--color-background)}:focus-visible{outline-offset:.15em;outline:2px solid}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){:root{--duration-fast:1ms;--duration-medium:1ms;--duration-slow:1ms;--transition-line:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}
.page-shell{gap:var(--layout-section-gap);inline-size:var(--layout-content-width);flex-direction:column;margin-inline:auto;display:flex}.page-shell.page-shell--rhythm{gap:var(--section-rhythm)}.site-main{z-index:var(--z-content);background:var(--color-background);min-block-size:100svh;display:flow-root;position:relative}body:has([data-page=not-found]) footer{display:none}
.type-h1,.type-h2-a,.type-h2-b,.type-h3,.type-h6,.type-accent{font-family:var(--font-display-primary), var(--font-fallback);font-weight:var(--font-weight-display);text-wrap:wrap}.type-h4-a,.type-h4-b,.type-h5,.type-link,.type-button,.type-label{font-family:var(--font-heading-secondary), var(--font-fallback);font-weight:var(--font-weight-heading);text-wrap:wrap}.type-body,.type-body-xl,.type-body-lg,.type-body-md,.type-body-sm,.type-caption{font-family:var(--font-body-primary), var(--font-fallback);font-weight:var(--font-weight-body);text-wrap:pretty}.type-h1{max-width:var(--type-h1-width);font-size:var(--type-h1-size);line-height:var(--type-h1-line-height);letter-spacing:var(--type-h1-letter-spacing);text-indent:var(--type-h1-indent);padding-inline-start:0}.type-h2-a{max-width:var(--type-h2a-width);font-size:var(--type-h2a-size);line-height:var(--type-h2a-line-height);letter-spacing:var(--type-h2a-letter-spacing);text-indent:var(--type-h2a-indent);padding-inline-start:0}.type-h2-b{max-width:var(--type-h2b-width);font-size:var(--type-h2b-size);line-height:var(--type-h2b-line-height);letter-spacing:var(--type-h2b-letter-spacing);text-indent:var(--type-h2b-indent);padding-inline-start:0}.type-h3{max-width:var(--type-h3-width);font-size:var(--type-h3-size);line-height:var(--type-h3-line-height);letter-spacing:var(--type-h3-letter-spacing)}.type-h6{font-size:var(--type-h6-size);line-height:var(--type-h6-line-height);letter-spacing:var(--type-h6-letter-spacing)}.type-accent{font-size:var(--type-accent-size);line-height:var(--type-accent-line-height);letter-spacing:var(--type-accent-letter-spacing)}.type-h4-a{max-width:var(--type-h4a-width);font-size:var(--type-h4a-size);line-height:var(--type-h4a-line-height);letter-spacing:var(--type-h4a-letter-spacing);text-indent:var(--type-h4a-indent);padding-inline-start:0}.type-h4-b{min-width:var(--type-h4b-min-width);max-width:var(--type-h4b-max-width);font-size:var(--type-h4b-size);line-height:var(--type-h4b-line-height);letter-spacing:var(--type-h4b-letter-spacing)}.type-h5{font-size:var(--type-h5-size);line-height:var(--type-h5-line-height);letter-spacing:var(--type-h5-letter-spacing)}.type-link{font-size:var(--type-link-size);line-height:var(--type-link-line-height);letter-spacing:var(--type-link-letter-spacing)}.type-button{font-size:var(--type-button-size);line-height:var(--type-button-line-height);letter-spacing:var(--type-button-letter-spacing)}.type-label{font-size:var(--type-label-size);line-height:var(--type-label-line-height);letter-spacing:var(--type-label-letter-spacing)}.type-body{font-size:var(--type-body-size);line-height:var(--type-body-line-height);letter-spacing:var(--type-body-letter-spacing)}.type-body-xl{font-size:var(--type-body-xl-size);line-height:var(--type-body-xl-line-height);letter-spacing:var(--type-body-xl-letter-spacing)}.type-body-lg{font-size:var(--type-body-lg-size);line-height:var(--type-body-lg-line-height);letter-spacing:var(--type-body-lg-letter-spacing)}.type-body-md{font-size:var(--type-body-md-size);line-height:var(--type-body-md-line-height);letter-spacing:var(--type-body-md-letter-spacing)}.type-body-sm{font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-line-height);letter-spacing:var(--type-body-sm-letter-spacing)}.type-caption{font-size:var(--type-caption-size);line-height:var(--type-caption-line-height);letter-spacing:var(--type-caption-letter-spacing)}

