@font-face{font-family:Sora;font-style:normal;font-weight:400;font-display:swap;src:url(/brand/fonts/sora-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/brand/fonts/sora-latin-600-normal.woff2) format("woff2")}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/brand/fonts/sora-latin-700-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/brand/fonts/inter-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/brand/fonts/inter-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/brand/fonts/inter-latin-600-normal.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/brand/fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2")}:root{--xr4-anthrazit:#202c30;--xr4-mint:#58b8a0;--xr4-salbei:#588070;--gradient-marke:linear-gradient(135deg,#64c49c,#54b4a4);--gradient-marke-weich:linear-gradient(135deg,#e9f2ef,#d5e7e2);--gradient-tiefe:linear-gradient(160deg,#0e1415,#202c30 60%,#588070 180%);--ink-950:#0e1415;--ink-900:#161f22;--ink-800:#202c30;--ink-700:#2d3e43;--ink-600:#3f575f;--ink-500:#567681;--ink-400:#799aa5;--ink-300:#acbec3;--ink-200:#d6dee0;--ink-100:#ebeeef;--ink-50:#f6f8f8;--mint-900:#183931;--mint-800:#214f43;--mint-700:#2e6b5c;--mint-600:#3a8874;--mint-500:#58b8a0;--mint-400:#85c6b6;--mint-300:#aed5cc;--mint-200:#d5e7e2;--mint-100:#e9f2ef;--mint-50:#f6f9f8;--sage-700:#3a554a;--sage-600:#4b6d5f;--sage-500:#588070;--sage-400:#77a291;--sage-200:#d4deda;--sage-100:#ebefee;--font-display:"Sora","Segoe UI",system-ui,sans-serif;--font-text:"Inter","Segoe UI",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;--text-display-size:60px;--text-display-line:1.05;--text-display-weight:700;--text-display-tracking:-0.02em;--text-h1-size:48px;--text-h1-line:1.1;--text-h1-weight:700;--text-h1-tracking:-0.02em;--text-h2-size:30px;--text-h2-line:1.2;--text-h2-weight:600;--text-h2-tracking:-0.01em;--text-h3-size:24px;--text-h3-line:1.3;--text-h3-weight:600;--text-h3-tracking:-0.01em;--text-h4-size:20px;--text-h4-line:1.4;--text-h4-weight:600;--text-lead-size:20px;--text-lead-line:1.6;--text-lead-weight:400;--text-body-size:16px;--text-body-line:1.65;--text-body-weight:400;--text-body-sm-size:14px;--text-body-sm-line:1.6;--text-body-sm-weight:400;--text-caption-size:13px;--text-caption-line:1.5;--text-caption-weight:400;--text-eyebrow-size:12px;--text-eyebrow-line:1.2;--text-eyebrow-weight:600;--text-eyebrow-tracking:0.14em;--text-button-size:15px;--text-button-line:1.0;--text-button-weight:600;--text-button-tracking:0.01em;--text-code-size:14px;--text-code-line:1.6;--text-code-weight:400;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--space-5xl:128px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(32,44,48,.06);--shadow-md:0 4px 16px -4px rgba(32,44,48,.1);--shadow-lg:0 12px 32px -8px rgba(32,44,48,.16);--shadow-xl:0 24px 56px -16px rgba(32,44,48,.22);--shadow-akzent:0 16px 40px -20px rgba(88,184,160,.55);--motion-schnell:120ms;--motion-normal:180ms;--motion-langsam:320ms;--motion-kurve:cubic-bezier(.2,.8,.2,1);--motion-kurve-ein:cubic-bezier(.4,0,1,1);--layout-container:1200px;--layout-container-schmal:760px;--layout-rand:24px;--layout-spalten:12;--layout-spaltenabstand:24px;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--color-background:#fff;--color-surface:#f6f8f8;--color-surface-2:#ebeeef;--color-border:#d6dee0;--color-border-strong:#7d99a1;--color-text:#202c30;--color-text-muted:#567681;--color-text-subtle:#799aa5;--color-primary:#202c30;--color-primary-hover:#2d3e43;--color-accent:#37826f;--color-accent-hover:#2b6557;--color-accent-soft:#e9f2ef;--color-on-accent:#fff;--color-erfolg:#288651;--color-erfolg-soft:#e7f3ec;--color-warnung:#9f6917;--color-warnung-soft:#f5efe5;--color-fehler:#c8443c;--color-fehler-soft:#f3e8e7;--color-hinweis:#37826f;--color-hinweis-soft:#e9f2ef}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-background:#0e1415;--color-surface:#161f22;--color-surface-2:#202c30;--color-border:#2d3e43;--color-border-strong:#4b6871;--color-text:#f6f8f8;--color-text-muted:#799aa5;--color-text-subtle:#567681;--color-primary:#58b8a0;--color-primary-hover:#85c6b6;--color-accent:#58b8a0;--color-accent-hover:#aed5cc;--color-accent-soft:#202c30;--color-on-accent:#0e1415;--color-erfolg:#2f9e5f;--color-erfolg-soft:#15472b;--color-warnung:#d08a1e;--color-warnung-soft:#50350c;--color-fehler:#ce5750;--color-fehler-soft:#481714;--color-hinweis:#58b8a0;--color-hinweis-soft:#1b4037}}:root[data-theme=dark]{--color-background:#0e1415;--color-surface:#161f22;--color-surface-2:#202c30;--color-border:#2d3e43;--color-border-strong:#4b6871;--color-text:#f6f8f8;--color-text-muted:#799aa5;--color-text-subtle:#567681;--color-primary:#58b8a0;--color-primary-hover:#85c6b6;--color-accent:#58b8a0;--color-accent-hover:#aed5cc;--color-accent-soft:#202c30;--color-on-accent:#0e1415;--color-erfolg:#2f9e5f;--color-erfolg-soft:#15472b;--color-warnung:#d08a1e;--color-warnung-soft:#50350c;--color-fehler:#ce5750;--color-fehler-soft:#481714;--color-hinweis:#58b8a0;--color-hinweis-soft:#1b4037}:root{--text:var(--color-text);--muted:var(--color-text-muted);--border:var(--color-border);--warn:var(--color-warnung);--danger:var(--color-fehler);--card-solid:var(--color-background);--shadow:var(--shadow-md);--shadow-glow:0 0 0 1px var(--color-border-strong),var(--shadow-akzent);--surface-hover:var(--color-surface);--header-bg:color-mix(in srgb,var(--color-background) 82%,transparent);--code-bg:var(--color-surface);--bg-grad:radial-gradient(1000px 600px at 15% -10%,color-mix(in srgb,var(--xr4-mint) 14%,transparent),transparent 60%),radial-gradient(900px 500px at 100% 0%,color-mix(in srgb,var(--xr4-salbei) 12%,transparent),transparent 55%)}:root[data-theme=dark]{--card-solid:var(--color-surface);--surface-hover:var(--color-surface-2);--header-bg:color-mix(in srgb,var(--color-background) 78%,transparent);--code-bg:var(--color-surface-2);--shadow:var(--shadow-lg);--bg-grad:radial-gradient(1000px 600px at 15% -10%,color-mix(in srgb,var(--xr4-mint) 16%,transparent),transparent 60%),radial-gradient(900px 500px at 100% 0%,color-mix(in srgb,var(--xr4-salbei) 14%,transparent),transparent 55%)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-text);font-size:var(--text-body-size);color:var(--color-text);background:var(--bg-grad),var(--color-background);background-attachment:fixed;min-height:100vh;line-height:var(--text-body-line);-webkit-font-smoothing:antialiased;transition:background-color var(--motion-normal) var(--motion-kurve),color var(--motion-normal) var(--motion-kurve)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:2px}h1,h2,h3,h4{font-family:var(--font-display)}h1{font-size:var(--text-h2-size);line-height:var(--text-h2-line);font-weight:var(--text-h1-weight);letter-spacing:var(--text-h1-tracking);margin:0 0 var(--space-2xs)}h2{font-size:var(--text-h3-size);line-height:var(--text-h3-line);font-weight:var(--text-h2-weight);letter-spacing:var(--text-h2-tracking)}h3{font-size:var(--text-h4-size);line-height:var(--text-h4-line);font-weight:var(--text-h3-weight);letter-spacing:var(--text-h3-tracking);margin:0 0 var(--space-xs)}@media (min-width:768px){h1{font-size:var(--text-h1-size);line-height:var(--text-h1-line)}h2{font-size:var(--text-h2-size)}h3{font-size:var(--text-h3-size)}}code{font-family:var(--font-mono);font-size:var(--text-code-size);background:var(--code-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3xs) var(--space-xs)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--mint-200);color:var(--ink-800)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-lg);background:var(--header-bg);-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--color-border)}@media (min-width:1024px){.site-header{padding:var(--space-sm) var(--space-xl)}}.brand{display:flex;align-items:center;color:var(--color-text);margin-right:var(--space-sm)}.brand:hover{text-decoration:none}.brand img{height:26px;width:auto;display:block}.brand .logo-hell{display:none}:root[data-theme=dark] .brand .logo-hell{display:block}:root[data-theme=dark] .brand .logo-dunkel{display:none}.nav{display:flex;gap:var(--space-3xs);flex-wrap:wrap}.nav a{color:var(--color-text-muted);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);font-weight:500;font-size:var(--text-body-sm-size);transition:color var(--motion-schnell) var(--motion-kurve),background var(--motion-schnell) var(--motion-kurve)}.nav a:hover{color:var(--color-text);background:var(--surface-hover);text-decoration:none}.nav-auth{margin-left:auto;display:flex;gap:var(--space-3xs);align-items:center}.nav-menu{position:relative}.nav-menu>summary{list-style:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:var(--space-2xs);color:var(--color-text-muted);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);font-weight:500;font-size:var(--text-body-sm-size);transition:color var(--motion-schnell) var(--motion-kurve),background var(--motion-schnell) var(--motion-kurve)}.nav-menu>summary::-webkit-details-marker{display:none}.nav-menu>summary:hover,.nav-menu[open]>summary{color:var(--color-text);background:var(--surface-hover)}.nav-menu-caret{font-size:10px;transition:transform var(--motion-schnell) var(--motion-kurve)}.nav-menu[open] .nav-menu-caret{transform:rotate(180deg)}.nav-menu-panel{position:absolute;top:calc(100% + var(--space-2xs));left:0;z-index:60;min-width:220px;display:flex;flex-direction:column;gap:2px;padding:var(--space-2xs);background:var(--card-solid);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.nav-menu-panel a{color:var(--color-text);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--text-body-sm-size);font-weight:500;white-space:nowrap}.nav-menu-panel a:hover{background:var(--surface-hover);text-decoration:none}.container{max-width:var(--layout-container);margin:0 auto;padding:var(--space-xl) var(--space-md)}@media (min-width:768px){.container{padding:var(--space-2xl) var(--space-lg)}}.lead{color:var(--color-text-muted);margin:0 0 var(--space-xs);font-size:var(--text-body-size)}.card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);background:var(--card-solid);box-shadow:var(--shadow)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-gap:var(--space-md);gap:var(--space-md);margin-top:var(--space-lg)}.product-card{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);background:var(--card-solid);transition:transform var(--motion-normal) var(--motion-kurve),box-shadow var(--motion-normal) var(--motion-kurve),border-color var(--motion-normal) var(--motion-kurve)}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-glow);border-color:var(--color-border-strong)}.stack>*+*{margin-top:var(--space-md)}.pill{display:inline-block;font-size:var(--text-eyebrow-size);font-weight:var(--text-eyebrow-weight);letter-spacing:var(--text-eyebrow-tracking);text-transform:uppercase;padding:var(--space-2xs) var(--space-sm);color:var(--color-accent);background:var(--color-accent-soft)}.badge,.pill{border-radius:var(--radius-pill);border:1px solid var(--color-border)}.badge{display:inline-flex;align-items:center;gap:var(--space-2xs);font-size:var(--text-caption-size);font-weight:600;padding:var(--space-3xs) var(--space-sm)}.badge-success{color:var(--color-erfolg);background:var(--color-erfolg-soft)}.badge-warn{color:var(--color-warnung);background:var(--color-warnung-soft)}.badge-muted{color:var(--color-text-muted);background:var(--color-surface)}.price{font-family:var(--font-display);font-size:var(--text-h3-size);font-weight:var(--text-h2-weight);letter-spacing:var(--text-h2-tracking)}.price small{font-size:var(--text-body-sm-size);font-weight:400;color:var(--color-text-muted)}.btn,.price small{font-family:var(--font-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);font-weight:var(--text-button-weight);font-size:var(--text-button-size);letter-spacing:var(--text-button-tracking);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-pill);border:1px solid transparent;cursor:pointer;transition:transform var(--motion-schnell) var(--motion-kurve),background var(--motion-normal) var(--motion-kurve),color var(--motion-normal) var(--motion-kurve)}.btn,.btn:hover{text-decoration:none}.btn:active{transform:translateY(1px)}.btn-primary{color:#fff;background:var(--color-primary);box-shadow:var(--shadow-sm)}:root[data-theme=dark] .btn-primary{color:var(--color-on-accent)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-success{color:var(--color-on-accent);background:var(--color-accent);box-shadow:var(--shadow-akzent)}.btn-success:hover{background:var(--color-accent-hover)}.btn-ghost{color:var(--color-text);background:transparent;border-color:var(--color-border-strong)}.btn-ghost:hover{background:var(--surface-hover)}.btn-block{width:100%}input[type=email],input[type=number],input[type=text],select,textarea{font-family:var(--font-text);font-size:var(--text-body-size);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);padding:var(--space-xs) var(--space-sm)}label{color:var(--color-text-muted);font-size:var(--text-body-sm-size)}.banner{border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);border:1px solid;font-weight:500}.banner-success{color:var(--color-erfolg);background:var(--color-erfolg-soft);border-color:var(--color-erfolg)}.banner-warn{color:var(--color-warnung);background:var(--color-warnung-soft);border-color:var(--color-warnung)}.banner-error{color:var(--color-fehler);background:var(--color-fehler-soft);border-color:var(--color-fehler)}.row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;border-top:1px solid var(--color-border)}.row:first-of-type{border-top:0}.row .grow{flex:1 1}.muted{color:var(--color-text-muted)}.list-none{list-style:none;padding:0;margin:0}.list-check li{position:relative;padding-left:var(--space-lg);margin:var(--space-xs) 0;color:var(--color-text)}.list-check li:before{content:"✓";position:absolute;left:0;color:var(--color-erfolg);font-weight:700}.site-footer{border-top:1px solid var(--color-border);margin-top:var(--space-2xl);padding:var(--space-lg);display:flex;gap:var(--space-md);align-items:center;flex-wrap:wrap;color:var(--color-text-muted);font-size:var(--text-body-sm-size)}@media (min-width:1024px){.site-footer{padding:var(--space-lg) var(--space-xl)}}.site-footer a{color:var(--color-text-muted)}.site-footer a:hover{color:var(--color-text)}.theme-toggle{margin-left:var(--space-xs);width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:transparent;color:var(--color-text);cursor:pointer;line-height:1;transition:background var(--motion-schnell) var(--motion-kurve),border-color var(--motion-schnell) var(--motion-kurve)}.theme-toggle:hover{background:var(--surface-hover);border-color:var(--color-accent)}.theme-toggle svg{width:18px;height:18px;display:block}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}