@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(*),[data-astro-transition-scope]{animation:none!important}}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Regular.woff2)format("woff2"),url(/fonts/DMSans-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Italic.woff2)format("woff2"),url(/fonts/DMSans-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-SemiBold.woff2)format("woff2"),url(/fonts/DMSans-SemiBold.ttf)format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Bold.woff2)format("woff2"),url(/fonts/DMSans-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-ExtraBold.woff2)format("woff2"),url(/fonts/DMSans-ExtraBold.ttf)format("truetype");font-weight:800;font-style:normal;font-display:swap}:root{--color-bg:#111;--color-bg-2:#1c1c1c;--color-bg-3:#1a1a1a;--color-text:#fff;--color-text-muted:#a0a0a0;--color-accent-1:#00dae1;--color-accent-1-hover:#00f0f8;--color-accent-1-active:#00b0b6;--color-accent-2:#f105a6;--color-accent-2-hover:#ff2db8;--color-border:#ffffff1a;--glass-bg:#ffffff0d;--glass-border:#ffffff1f;--glass-blur:16px;--shadow-sm:0 2px 8px #0006;--shadow-md:0 4px 24px #0009;--shadow-accent:0 0 24px #00dae126;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-smooth:.3s ease;--transition-slow:.5s ease-out;--transition-zoom:.45s cubic-bezier(.22, 1, .36, 1);--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--space-8:96px;--space-9:128px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--font:"DM Sans", sans-serif;--max-w:1280px;--container-padding:24px;--grad-main:linear-gradient(135deg, #00dae1 0%, #7b00ff 50%, #f105a6 100%);--grad-duotone:linear-gradient(90deg, #00dae1 0%, #f105a6 100%);--flow-orb-opacity:.58;--flow-mesh-opacity:.2;--flow-line-opacity:.22;--flow-line-opacity-strong:.35;--cursor-glow-size:320px}[data-theme=light]{--color-bg:#fff;--color-bg-2:#f5f5f5;--color-bg-3:#e8e8e8;--color-text:#000;--color-text-muted:#505050;--color-accent-1:#00b8be;--color-accent-2:#c4007f;--color-border:#0000001a;--glass-bg:#0000000a;--glass-border:#00000014;--flow-orb-opacity:.35;--flow-mesh-opacity:.12;--flow-line-opacity:.18}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{text-rendering:optimizespeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}img,picture,video,canvas,svg{image-orientation:from-image;max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}ul[role=list],ol[role=list]{list-style:none}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}body{font-family:var(--font);color:var(--color-text);background:var(--color-bg);transition:background var(--transition-smooth), color var(--transition-smooth);font-size:18px;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font);color:var(--color-text);line-height:1.2}.text-display{letter-spacing:-.02em;font-size:clamp(48px,6vw,80px);font-weight:800;line-height:1.1}.text-h1{font-size:clamp(36px,4.5vw,56px);font-weight:700;line-height:1.2}.text-h2{font-size:clamp(28px,3.5vw,40px);font-weight:700;line-height:1.2}.text-h3{font-size:clamp(22px,2.5vw,32px);font-weight:600;line-height:1.3}.text-h4{font-size:clamp(18px,2vw,24px);font-weight:600;line-height:1.4}.text-body{font-size:18px;font-weight:400;line-height:1.6}.text-body-sm{font-size:16px;font-weight:400;line-height:1.6}.text-caption{color:var(--color-text-muted);font-size:14px;font-weight:400;line-height:1.5}.text-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent-1);font-size:11px;font-weight:700}.text-gradient{background:var(--grad-duotone);-webkit-text-fill-color:transparent;background-clip:text}.skip-link{background:var(--color-accent-1);color:#000;z-index:9999;border-radius:var(--radius-sm);padding:.5rem 1rem;font-weight:700;position:absolute;top:-100%;left:1rem}.skip-link:focus{top:1rem}.container{width:100%;max-width:var(--max-w);padding-inline:var(--container-padding);margin-inline:auto}.section{padding-block:var(--space-8);z-index:2;background:var(--color-bg);position:relative}@media (width<=768px){.section{padding-block:var(--space-7)}}.section--alt{background:var(--color-bg-2)}.section--alt2{background:var(--color-bg-3)}.section--has-flow>.container{z-index:1;position:relative}.grad-border{border-radius:var(--radius-md);position:relative}.grad-border:before{content:"";border-radius:inherit;background:var(--grad-main);-webkit-mask-composite:xor;pointer-events:none;padding:1.5px;position:absolute;inset:0;mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-position:0 0,0 0;mask-size:auto,auto;mask-repeat:repeat,repeat;mask-clip:content-box,border-box;mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.btn{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:var(--font);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;border:none;padding:14px 28px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.btn--primary{background:var(--color-accent-1);color:#000;box-shadow:var(--shadow-accent)}@media (hover:hover) and (pointer:fine){.btn--primary:hover{background:var(--color-accent-1-hover);transform:scale(1.02);box-shadow:0 0 32px #00dae140}}.btn--primary:active{background:var(--color-accent-1-active);transform:scale(.99)}.btn--secondary{color:var(--color-accent-1);border:2px solid var(--color-accent-1);background:0 0}@media (hover:hover) and (pointer:fine){.btn--secondary:hover{background:#00dae114;transform:scale(1.02)}}.btn--ghost{color:var(--color-text);border:2px solid var(--color-border);background:0 0}@media (hover:hover) and (pointer:fine){.btn--ghost:hover{border-color:var(--color-text);transform:scale(1.02)}}.btn--pink{background:var(--color-accent-2);color:#fff}@media (hover:hover) and (pointer:fine){.btn--pink:hover{background:var(--color-accent-2-hover);transform:scale(1.02)}}.btn--violet{color:#fff;background:#7c3aed;box-shadow:0 4px 20px #7c3aed4d}@media (hover:hover) and (pointer:fine){.btn--violet:hover{background:#6d28d9;transform:scale(1.02);box-shadow:0 4px 28px #7c3aed73}}.btn--lg{padding:18px 36px;font-size:18px}.btn:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}.btn:disabled,.btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none;transform:none}.badge{letter-spacing:.04em;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.badge--teal{color:var(--color-accent-1);background:#00dae126;border:1px solid #00dae14d}.badge--pink{color:var(--color-accent-2);background:#f105a626;border:1px solid #f105a64d}.badge--violet{color:#7b00ff;background:#7b00ff26;border:1px solid #7b00ff4d}.badge--gold{color:#f5a623;background:#f5a62326;border:1px solid #f5a6234d}.badge--neutral{background:var(--color-bg-3);color:var(--color-text-muted);border:1px solid var(--color-border)}.badge--madeira{color:#7b44f0;background:#7b44f026;border:1px solid #7b44f04d}.badge--dot:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.card{color:inherit;background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:blur(var(--glass-blur));border-radius:var(--radius-md);transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);padding:28px;text-decoration:none;display:block}@media (hover:hover) and (pointer:fine){.card:hover{border-color:#00dae126}.card--clickable:hover{box-shadow:var(--shadow-md);border-color:#00dae133;transform:translateY(-4px)}}.card--clickable:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}.card__icon{border-radius:var(--radius-sm);width:44px;height:44px;margin-bottom:var(--space-3);background:#00dae11a;border:1px solid #00dae133;justify-content:center;align-items:center;font-size:20px;display:flex}.card__icon--pink{background:#f105a61a;border-color:#f105a633}.card__icon--violet{color:#a855f7;background:#7b00ff1a;border-color:#7b00ff33}.card__title{margin-bottom:var(--space-2);font-size:20px;font-weight:700}.card__text{color:var(--color-text-muted);margin-bottom:var(--space-3);font-size:15px;line-height:1.6}.card__link{color:var(--color-accent-1);transition:gap var(--transition-base);align-items:center;gap:6px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.card__link:hover{gap:10px}}.card--expandable{flex-direction:column;display:flex}.card__extra{opacity:0;height:0;transition:height .35s,opacity .35s;overflow:hidden}.card--expanded .card__extra{opacity:1}.card__extra-title{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent-1);margin-bottom:var(--space-2);margin-top:var(--space-3);font-size:12px;font-weight:700}.card__extra-list{margin:0 0 var(--space-3);flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.card__extra-list li{color:var(--color-text-muted);padding-left:16px;font-size:14px;position:relative}.card__extra-list li:before{content:"→";color:var(--color-accent-1);font-size:12px;position:absolute;left:0}.card__extra-text{color:var(--color-text-muted);margin-top:var(--space-3);margin-bottom:var(--space-2);font-size:14px;line-height:1.6}.card__expand-btn{color:var(--color-accent-1);cursor:pointer;padding:0;padding-top:var(--space-3);transition:gap var(--transition-base), color var(--transition-base);background:0 0;border:none;align-items:center;gap:6px;margin-top:auto;font-size:14px;font-weight:700;display:inline-flex}@media (hover:hover) and (pointer:fine){.card__expand-btn:hover{gap:10px}}.card__expand-btn svg{transition:transform var(--transition-smooth);flex-shrink:0}.card--expanded .card__expand-btn svg{transform:rotate(180deg)}.term{border-bottom:1px dotted var(--color-accent-1);color:inherit;cursor:help;text-decoration:none;position:relative}.term[data-tip]:focus-visible:after{content:attr(data-tip);background:var(--color-bg-3);border:1px solid var(--glass-border);white-space:normal;text-align:center;z-index:20;pointer-events:none;max-width:220px;color:var(--color-text-muted);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:400;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000059}.term[data-tip]:focus-visible:before{content:"";border:5px solid #0000;border-top-color:var(--glass-border);z-index:21;pointer-events:none;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}@media (hover:hover) and (pointer:fine){.term[data-tip]:hover:after{content:attr(data-tip);background:var(--color-bg-3);border:1px solid var(--glass-border);white-space:normal;text-align:center;z-index:20;pointer-events:none;max-width:220px;color:var(--color-text-muted);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:400;animation:.16s forwards tooltip-in;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000059}.term[data-tip]:hover:before{content:"";border:5px solid #0000;border-top-color:var(--glass-border);z-index:21;pointer-events:none;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}}@keyframes tooltip-in{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (prefers-reduced-motion:reduce){.term[data-tip]:focus-visible:after{animation:none}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:reduce){.term[data-tip]:hover:after{animation:none}}.card--tall{scroll-snap-align:start;flex-direction:column;flex:0 0 340px;padding:0;display:flex;overflow:hidden}.card__preview{aspect-ratio:4/3;flex-shrink:0;width:100%;overflow:hidden}.card__preview img{object-fit:cover;width:100%;height:100%;transition:scale var(--transition-zoom);animation:18s ease-in-out infinite alternate preview-kenburns;display:block}.services-scroll .card:nth-child(2) .card__preview img{animation-delay:-5s}.services-scroll .card:nth-child(3) .card__preview img{animation-delay:-10s}.services-scroll .card:nth-child(4) .card__preview img{animation-delay:-15s}@keyframes preview-kenburns{0%{transform:translate(0,0)scale(1)}to{transform:translate(-2.5%,-1.5%)scale(1.1)}}@media (hover:hover) and (pointer:fine){.card--tall:hover .card__preview img{scale:1.05}}.card__body-inner{flex-direction:column;flex:1;padding:24px 28px 28px;display:flex}.card__body-inner .card__icon{margin-bottom:var(--space-3)}.card__body-inner .card__link{padding-top:var(--space-3);margin-top:auto}.card--featured{border-color:#0000;position:relative}.card--featured:before{content:"";border-radius:inherit;background:var(--grad-duotone);-webkit-mask-composite:xor;pointer-events:none;padding:1px;animation:3s ease-in-out infinite featured-glow;position:absolute;inset:-1px;mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-position:0 0,0 0;mask-size:auto,auto;mask-repeat:repeat,repeat;mask-clip:content-box,border-box;mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}@keyframes featured-glow{0%,to{opacity:.6}50%{opacity:1}}@media (hover:hover) and (pointer:fine){.card--featured:hover{box-shadow:0 12px 40px #00dae11f,0 0 0 1px #00dae11a}}@media (prefers-reduced-motion:reduce){.card--featured:before{opacity:.8;animation:none}}.card--social{filter:grayscale();transition:transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base), filter var(--transition-base);position:relative;overflow:hidden}.card__social-bg{color:var(--color-text-muted);pointer-events:none;justify-content:flex-end;align-items:center;padding-right:16px;display:flex;position:absolute;inset:0}.card__social-bg svg{opacity:.4;width:80px;height:80px}@media (hover:hover) and (pointer:fine){.card--social:hover{filter:grayscale(0);border-color:#a855f74d;transform:translateY(-4px);box-shadow:0 12px 40px #0000004d,0 0 32px #a855f71f}}.about-teaser__portrait--tools{justify-content:center;align-items:center;padding:18px 14px;display:flex}.about-teaser__tools{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;display:flex}.about-teaser__tool{border-radius:var(--radius-sm);background:var(--glass-bg);border:1px solid var(--glass-border);width:38px;height:38px;color:var(--color-text-muted);transition:color var(--transition-base), background var(--transition-base), border-color var(--transition-base), transform var(--transition-base);justify-content:center;align-items:center;display:flex}.about-teaser__tool svg{width:20px;height:20px}@media (hover:hover) and (pointer:fine){.about-teaser__tool--adobe:hover{color:red;border-color:#ff00004d}.about-teaser__tool--vscode:hover{color:#007acc;border-color:#007acc4d}.about-teaser__tool--github:hover{color:#fff;border-color:#ffffff4d}.about-teaser__tool--hostinger:hover{color:#ff6700;border-color:#ff67004d}.about-teaser__tool--vercel:hover{color:#fff;border-color:#ffffff4d}.about-teaser__tool--claude:hover{color:#d4a574;border-color:#d4a5744d}.about-teaser__tool--procreate:hover{color:#5c5cff;border-color:#5c5cff4d}.about-teaser__tool:hover{transform:translateY(-2px)}}.form__field{gap:var(--space-2);flex-direction:column;display:flex}.form__label{color:var(--color-text);font-size:14px;font-weight:600}.form__label .required{color:var(--color-accent-1);margin-left:2px}.form__input,.form__select,.form__textarea{font-family:var(--font);color:var(--color-text);background:var(--color-bg-2);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-base), box-shadow var(--transition-base);appearance:none;outline:none;width:100%;padding:12px 16px;font-size:16px}.form__input::placeholder,.form__textarea::placeholder{color:var(--color-text-muted)}.form__input:focus,.form__select:focus,.form__textarea:focus{background:linear-gradient(var(--color-bg-2), var(--color-bg-2)) padding-box, linear-gradient(90deg, var(--color-accent-1) 0%, #7b00ff 33%, var(--color-accent-2) 66%, var(--color-accent-1) 100%) border-box;background-size:auto,200% 100%;border:1px solid #0000;animation:4s linear infinite form-border-flow;box-shadow:0 0 0 3px #00dae114}@keyframes form-border-flow{0%{background-position:0 0,0 0}to{background-position:0 0,100% 0}}@media (prefers-reduced-motion:reduce){.form__input:focus,.form__select:focus,.form__textarea:focus{border-color:var(--color-accent-1);background:var(--color-bg-2);animation:none;box-shadow:0 0 0 3px #00dae11f}}.form__input--error{border-color:var(--color-accent-2)}.form__input--error:focus{box-shadow:0 0 0 3px #f105a61f}.form__textarea{resize:vertical;min-height:120px}.form__hint{color:var(--color-text-muted);font-size:12px}.form__error{color:var(--color-accent-2);font-size:12px}.form__honeypot{display:none}.form__message{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.form__message[hidden]{display:none}.form__message--success{color:var(--color-accent-1);background:#00dae114;border:1px solid #00dae14d}.form__message--error{color:var(--color-accent-2);background:#f105a614;border:1px solid #f105a64d}.form__message--warning{color:#ffc800;background:#ffc80014;border:1px solid #ffc80040}.form__radio-group{gap:var(--space-2) var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.form__radio-label{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;display:flex}.form__radio-label input[type=radio]{appearance:none;border:2px solid var(--color-border);background:var(--color-bg-2);cursor:pointer;width:18px;height:18px;transition:border-color var(--transition-base), background var(--transition-base);border-radius:50%;flex-shrink:0}.form__radio-label input[type=radio]:checked{border-color:var(--color-accent-1);background:var(--color-accent-1);box-shadow:inset 0 0 0 3px var(--color-bg-2)}.form__radio-label input[type=radio]:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px}.form__check-group{gap:var(--space-2) var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.form__check-label{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;display:flex}.form__check-label input[type=checkbox]{appearance:none;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-2);cursor:pointer;width:18px;height:18px;transition:border-color var(--transition-base), background var(--transition-base);flex-shrink:0;position:relative}.form__check-label input[type=checkbox]:checked{border-color:var(--color-accent-1);background:var(--color-accent-1)}.form__check-label input[type=checkbox]:checked:after{content:"";border:2px solid #000;border-top:none;border-left:none;width:6px;height:10px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.form__check-label input[type=checkbox]:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.form__message--success{align-items:center;gap:var(--space-3);display:flex;position:relative;overflow:hidden}.form__message--success.form__message--animate:before{content:"";pointer-events:none;z-index:0;background:linear-gradient(90deg,#0000 0%,#00dae124 40%,#00dae112 60%,#0000 100%);animation:1.2s ease-out forwards success-wave;position:absolute;inset:0}@keyframes success-wave{0%{transform:translate(-100%)}to{transform:translate(140%)}}.form__success-icon{color:var(--color-accent-1);z-index:1;flex-shrink:0;position:relative}.form__success-icon circle{stroke-dasharray:66;stroke-dashoffset:66px}.form__success-icon path{stroke-dasharray:22;stroke-dashoffset:22px}.form__message--animate .form__success-icon circle{animation:.45s cubic-bezier(.22,.68,.32,1) .1s both check-circle}.form__message--animate .form__success-icon path{animation:.3s cubic-bezier(.22,.68,.32,1) .45s both check-mark}@keyframes check-circle{to{stroke-dashoffset:0}}@keyframes check-mark{to{stroke-dashoffset:0}}.form__message--error.form__message--animate{animation:.55s error-pulse}@keyframes error-pulse{0%{box-shadow:0 0 #f105a600}40%{box-shadow:0 0 0 7px #f105a626}to{box-shadow:0 0 #f105a600}}.kontakt-direct__icon{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--color-accent-1);transition:background var(--transition-base), border-color var(--transition-base), color var(--transition-base);background:#00dae114;border:1px solid #00dae12e;flex-shrink:0;justify-content:center;align-items:center;display:flex}.kontakt-direct__icon--pink{color:var(--color-accent-2);background:#f105a614;border-color:#f105a62e}.kontakt-direct__icon--neutral{border-color:var(--glass-border);color:var(--color-text-muted);background:#ffffff0d}@media (hover:hover) and (pointer:fine){.kontakt-direct__item:hover .kontakt-direct__icon{background:#00dae124;border-color:#00dae152}.kontakt-direct__item:hover .kontakt-direct__icon--pink{background:#f105a624;border-color:#f105a652}}.kontakt-direct__link{display:inline-block;position:relative}.kontakt-direct__link:after{content:"";background:linear-gradient(90deg, var(--color-accent-1), var(--color-accent-2));transform-origin:0;height:1px;transition:transform .35s cubic-bezier(.22,.68,.32,1);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}@media (hover:hover) and (pointer:fine){.kontakt-direct__link:hover:after{transform:scaleX(1)}}.kontakt-direct__link:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion:reduce){.form__message--success.form__message--animate:before,.form__message--animate .form__success-icon circle,.form__message--animate .form__success-icon path,.form__message--error.form__message--animate{animation:none}.form__success-icon circle,.form__success-icon path{stroke-dashoffset:0}.kontakt-direct__link:after{transition:none}}.header{z-index:100;transition:transform .28s cubic-bezier(.22,1,.36,1);position:sticky;top:0}.header.is-hidden{transform:translateY(-100%)}.nav{border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(var(--glass-blur));transition:background var(--transition-smooth);background:#1b1b1bd9}[data-theme=light] .nav{background:#ffffffe6}.nav__inner{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:var(--max-w);padding:18px var(--container-padding);margin-inline:auto;display:flex}.nav__logo{letter-spacing:-.02em;color:var(--color-text);flex-shrink:0;align-items:center;gap:10px;font-size:18px;font-weight:800;text-decoration:none;display:flex}.nav__logo img{width:auto;height:52px}[data-theme=light] .nav__logo img{filter:invert()}.nav__links{gap:var(--space-1);list-style:none;display:flex}.nav__links a{color:var(--color-text-muted);border-radius:var(--radius-sm);transition:color var(--transition-base);padding:7px 14px;font-size:15px;font-weight:600;text-decoration:none;position:relative}.nav__links a:after{content:"";background:var(--color-accent-1);width:0;height:2px;transition:width var(--transition-base);border-radius:1px;position:absolute;bottom:5px;left:14px}@media (hover:hover) and (pointer:fine){.nav__links a:hover{color:var(--color-text)}.nav__links a:hover:after{width:calc(100% - 28px)}}.nav__links a[aria-current=page]{color:var(--color-accent-1)}.nav__links a[aria-current=page]:after{width:calc(100% - 28px)}.nav__links a:focus-visible,.nav__logo:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px;border-radius:var(--radius-sm)}.nav__actions{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.nav__theme-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:34px;height:34px;color:var(--color-text);transition:border-color var(--transition-base), background var(--transition-base), color var(--transition-base);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}@media (hover:hover) and (pointer:fine){.nav__theme-toggle:hover{border-color:var(--color-accent-1);background:#00dae10f}}.nav__theme-toggle:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}.nav__theme-icon{line-height:0;display:none}.nav__theme-icon--sun{display:block}[data-theme=light] .nav__theme-icon--sun{display:none}[data-theme=light] .nav__theme-icon--moon{display:block}.nav__burger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:11px 7px;display:none}.nav__burger span{background:var(--color-text);width:22px;height:2px;transition:transform var(--transition-base), opacity var(--transition-base);border-radius:2px;display:block}.nav__burger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav__burger.is-open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav__burger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav__burger:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px;border-radius:var(--radius-sm)}.nav__drawer{background:var(--color-bg-2)}.nav__drawer ul{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;list-style:none;display:flex}.nav__drawer a{color:var(--color-text-muted);padding:var(--space-2) 0;transition:color var(--transition-base);font-size:16px;font-weight:600;text-decoration:none;display:block}.nav__drawer a[aria-current=page]{color:var(--color-accent-1)}@media (hover:hover) and (pointer:fine){.nav__drawer a:hover{color:var(--color-accent-1)}}.nav__drawer a:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px;border-radius:var(--radius-sm)}.nav__drawer-footer{align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border);margin-top:var(--space-3);display:flex}.lang-switcher{font-family:var(--font);letter-spacing:.06em;color:var(--color-text-muted);border-radius:var(--radius-sm);border:1px solid var(--color-border);transition:color var(--transition-base), border-color var(--transition-base);white-space:nowrap;padding:6px 10px;font-size:12px;font-weight:700;text-decoration:none}.nav__drawer-footer .lang-switcher{padding:8px 18px}@media (hover:hover) and (pointer:fine){.lang-switcher:hover{color:var(--color-text);border-color:var(--color-text-muted)}}.lang-switcher:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}@media (width>=769px){.nav__drawer{display:none}}@media (width<=768px){.nav__links,.nav__actions .btn,.nav__actions .lang-switcher,.nav__actions .nav__theme-toggle{display:none}.nav__burger{display:flex}.nav__drawer{max-height:0;transition:max-height .35s;overflow:hidden}.nav__drawer.is-open{border-top:1px solid var(--color-border);max-height:500px;padding:var(--space-4) var(--container-padding)}}.hero{padding-block:var(--space-9);text-align:center;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(80% 60% at 50% 0,#00dae114,#0000 60%);position:absolute;inset:0}.hero--flow:before{display:none}.hero--page{z-index:1;position:sticky;top:0}.hero--flow{z-index:1;will-change:transform;flex-direction:column;justify-content:center;min-height:80svh;display:flex;position:sticky;top:0}.hero__inner{z-index:1;max-width:var(--max-w);padding-inline:var(--container-padding);margin-inline:auto;position:relative}.hero__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent-1);margin-bottom:var(--space-3);font-size:13px;font-weight:700}.hero__headline{letter-spacing:-.02em;margin-bottom:var(--space-4);font-size:clamp(40px,6vw,80px);font-weight:800;line-height:1.1}.hero__headline span{color:var(--color-accent-1)}.hero__sub{color:var(--color-text-muted);max-width:520px;margin-inline:auto;margin-bottom:var(--space-6);font-size:18px;line-height:1.6}.hero__ctas{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}@media (width<=768px){.hero{padding-block:var(--space-7)}.hero__sub{font-size:16px}}.footer{background:var(--color-bg-2);border-top:1px solid var(--color-border);padding-block:var(--space-8);position:relative;overflow:hidden}.footer__logo-bg{object-fit:cover;object-position:center;opacity:.05;pointer-events:none;user-select:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}[data-theme=light] .footer__logo-bg{opacity:.06;filter:invert()}.footer__brand-col{gap:var(--space-4);flex-direction:column;display:flex}.footer__brand{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.footer__brand-name{color:var(--color-text);letter-spacing:-.02em;font-family:DM Sans,sans-serif;font-size:22px;font-weight:700;line-height:1}.footer__social{gap:var(--space-2);flex-direction:column;display:flex}.footer__social-link{color:var(--color-text-muted);transition:color var(--transition-base);align-items:center;gap:8px;font-size:14px;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.footer__social-link:hover{color:var(--color-accent-2)}}.footer__social-link:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px;border-radius:var(--radius-sm)}.footer__copy--address{font-size:12px}.footer:before{content:"";pointer-events:none;background:radial-gradient(80% 60% at 50% 100%,#f105a60f,#0000 60%);position:absolute;inset:0}.footer__inner{z-index:1;max-width:var(--max-w);padding-inline:var(--container-padding);margin-inline:auto;position:relative}.footer__top{gap:var(--space-7);padding-bottom:var(--space-7);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6);grid-template-columns:1fr auto;display:grid}.footer__brand{letter-spacing:-.02em;color:var(--color-text);margin-bottom:var(--space-3);align-items:center;gap:10px;font-size:18px;font-weight:800;text-decoration:none;display:flex}.footer__brand img{width:auto;height:40px}[data-theme=light] .footer__brand img{filter:invert()}.footer__tagline{color:var(--color-text-muted);max-width:320px;font-size:15px;line-height:1.6}.footer__nav{gap:var(--space-7);display:flex}.footer__nav-group h4{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3);font-size:12px;font-weight:700}.footer__nav-group ul{gap:var(--space-2);flex-direction:column;list-style:none;display:flex}.footer__nav-group a{color:var(--color-text-muted);transition:color var(--transition-base);font-size:15px;text-decoration:none}@media (hover:hover) and (pointer:fine){.footer__nav-group a:hover{color:var(--color-accent-1)}}.footer__nav-group a:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px;border-radius:var(--radius-sm)}.footer__bottom{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.footer__copy{color:var(--color-text-muted);font-size:13px}.footer__copy strong{color:var(--color-accent-1)}.footer__legal{gap:var(--space-4);display:flex}.footer__legal a{color:var(--color-text-muted);transition:color var(--transition-base);font-size:13px;text-decoration:none}@media (hover:hover) and (pointer:fine){.footer__legal a:hover{color:var(--color-text)}}.footer__brand:focus-visible,.footer__legal a:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px;border-radius:var(--radius-sm)}@media (width<=768px){.footer__top{grid-template-columns:1fr}.footer__nav{gap:var(--space-5);flex-wrap:wrap}.footer__bottom{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none;animation:none}[data-parallax],[data-hero-scroll]{will-change:auto}}.theme-switching,.theme-switching *,.theme-switching :before,.theme-switching :after{transition-property:background-color,color,border-color;transition-duration:.3s;transition-timing-function:ease}:root{--anim-duration:.85s;--anim-easing:cubic-bezier(.22, 1, .36, 1);--anim-distance:52px}.js [data-animate]{opacity:0;transform:translateY(var(--anim-distance));transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing)}.js [data-animate].is-visible{opacity:1;transform:translateY(0)}.js [data-animate-from-left]{opacity:0;transform:translateX(calc(-1 * var(--anim-distance)));transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing)}.js [data-animate-from-left].is-visible{opacity:1;transform:translate(0)}.js [data-animate-from-right]{opacity:0;transform:translateX(var(--anim-distance));transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing)}.js [data-animate-from-right].is-visible{opacity:1;transform:translate(0)}.js [data-animate-scale]{opacity:0;transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing);transform:scale(.93)}.js [data-animate-scale].is-visible{opacity:1;transform:scale(1)}.js [data-animate-delay="1"],.js [data-animate-from-left][data-animate-delay="1"],.js [data-animate-from-right][data-animate-delay="1"],.js [data-animate-scale][data-animate-delay="1"]{transition-delay:.12s}.js [data-animate-delay="2"],.js [data-animate-from-left][data-animate-delay="2"],.js [data-animate-from-right][data-animate-delay="2"],.js [data-animate-scale][data-animate-delay="2"]{transition-delay:.24s}.js [data-animate-delay="3"],.js [data-animate-from-left][data-animate-delay="3"],.js [data-animate-from-right][data-animate-delay="3"],.js [data-animate-scale][data-animate-delay="3"]{transition-delay:.38s}.js [data-animate-delay="4"],.js [data-animate-from-left][data-animate-delay="4"],.js [data-animate-from-right][data-animate-delay="4"],.js [data-animate-scale][data-animate-delay="4"]{transition-delay:.52s}.js [data-animate-delay="5"],.js [data-animate-from-left][data-animate-delay="5"],.js [data-animate-from-right][data-animate-delay="5"],.js [data-animate-scale][data-animate-delay="5"]{transition-delay:.66s}.js [data-animate-group]>*{opacity:0;transform:translateY(var(--anim-distance));transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing)}.js [data-animate-group].is-visible>*{opacity:1;transform:translateY(0)}.js [data-animate-group].is-visible>:first-child{transition-delay:0s}.js [data-animate-group].is-visible>:nth-child(2){transition-delay:.13s}.js [data-animate-group].is-visible>:nth-child(3){transition-delay:.26s}.js [data-animate-group].is-visible>:nth-child(4){transition-delay:.39s}.js [data-animate-group].is-visible>:nth-child(5){transition-delay:.5s}.js [data-animate-group].is-visible>:nth-child(6){transition-delay:.59s}.js [data-animate-group].is-visible>:nth-child(7){transition-delay:.68s}.js [data-animate-group].is-visible>:nth-child(8){transition-delay:.76s}@keyframes fade-up{0%{opacity:0;transform:translateY(var(--anim-distance))}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}[data-parallax],[data-hero-scroll]{will-change:transform}.flow-orb{width:var(--orb-size,520px);height:var(--orb-size,520px);filter:blur(var(--orb-blur,80px));opacity:var(--flow-orb-opacity,.58);pointer-events:none;mix-blend-mode:screen;will-change:transform, border-radius;--orb-x:0px;--orb-y:0px;--orb-center-x:0%;--orb-center-y:0%;z-index:0;border-radius:42% 58% 55% 45%/48% 44% 56% 52%;animation:22s ease-in-out infinite flow-orb-morph;position:absolute}.flow-orb--teal{background:radial-gradient(circle,#00dae1 0%,#00dae180 45%,#0000 70%)}.flow-orb--pink{background:radial-gradient(circle,#f105a6e6 0%,#f105a673 45%,#0000 70%);animation-duration:26s;animation-direction:reverse}.flow-orb--violet{background:radial-gradient(circle,#a900ffe6 0%,#a900ff73 45%,#0000 70%);animation-duration:28s;animation-delay:-8s}.flow-orb--duotone{opacity:var(--flow-orb-opacity,.58);background:conic-gradient(from 140deg,#00dae18c,#7b00ff73,#f105a68c,#00dae18c);animation-duration:30s}.flow-orb--top-left{top:-12%;left:-10%}.flow-orb--top-right{top:-14%;right:-12%}.flow-orb--bottom-left{bottom:-16%;left:-12%}.flow-orb--bottom-right{bottom:-15%;right:-8%}.flow-orb--center{--orb-center-x:-50%;--orb-center-y:-50%;top:50%;left:50%}.flow-orb--sm{--orb-size:min(320px, 40vw);--orb-blur:55px}.flow-orb--md{--orb-size:min(520px, 55vw);--orb-blur:80px}.flow-orb--lg{--orb-size:min(720px, 70vw);--orb-blur:95px}@keyframes flow-orb-morph{0%,to{transform:translate3d(calc(var(--orb-center-x) + var(--orb-x)), calc(var(--orb-center-y) + var(--orb-y)), 0) scale(1) rotate(0deg);border-radius:42% 58% 55% 45%/48% 44% 56% 52%}33%{transform:translate3d(calc(var(--orb-center-x) + var(--orb-x) + 24px), calc(var(--orb-center-y) + var(--orb-y) - 18px), 0) scale(1.06) rotate(8deg);border-radius:60% 40% 42% 58%/55% 62% 38% 45%}66%{transform:translate3d(calc(var(--orb-center-x) + var(--orb-x) - 18px), calc(var(--orb-center-y) + var(--orb-y) + 22px), 0) scale(.96) rotate(-6deg);border-radius:48% 52% 62% 38%/40% 55% 45% 60%}}.flow-orb{transform:translate3d(calc(var(--orb-center-x) + var(--orb-x)), calc(var(--orb-center-y) + var(--orb-y)), 0)}[data-theme=light] .flow-orb{opacity:calc(var(--flow-orb-opacity,.32) * .55);mix-blend-mode:multiply}@media (width<=768px){.flow-orb{--orb-blur:80px;opacity:calc(var(--flow-orb-opacity,.32) * .8);animation:none}}@media (prefers-reduced-motion:reduce){.flow-orb{animation:none}}.flow-mesh{pointer-events:none;z-index:0;opacity:var(--flow-mesh-opacity,.1);filter:blur(45px);will-change:transform;background:radial-gradient(50% 40% at 22% 28%,#00dae1e6,#0000 65%),radial-gradient(45% 40% at 78% 72%,#f105a6e6,#0000 65%),radial-gradient(55% 45% at 62% 18%,#7b00ffb3,#0000 70%),radial-gradient(40% 35% at 18% 80%,#00dae199,#0000 70%);animation:38s ease-in-out infinite flow-mesh-drift;position:absolute;inset:-10%}.flow-mesh--strong{opacity:calc(var(--flow-mesh-opacity,.1) * 1.6)}.flow-mesh--subtle{opacity:calc(var(--flow-mesh-opacity,.1) * .6)}@keyframes flow-mesh-drift{0%,to{transform:translate(0,0)scale(1)rotate(0)}50%{transform:translate(-3%,1.5%)scale(1.07)rotate(8deg)}}[data-theme=light] .flow-mesh{opacity:calc(var(--flow-mesh-opacity,.1) * .5);mix-blend-mode:multiply}@media (prefers-reduced-motion:reduce){.flow-mesh{animation:none}}@media (width<=768px){.flow-mesh{filter:blur(40px);animation:none}}.js [data-animate-flow]{opacity:0;transform:translateY(calc(var(--anim-distance) + 8px));clip-path:inset(0 100% 0 0);transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing), clip-path .9s var(--anim-easing)}.js [data-animate-flow].is-visible{opacity:1;clip-path:inset(0);transform:translateY(0)}.js [data-animate-stream]>*{opacity:0;transform:translateX(calc(-1 * var(--anim-distance))) translateY(8px);transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing)}.js [data-animate-stream].is-visible>*{opacity:1;transform:translate(0)translateY(0)}.js [data-animate-stream].is-visible>:first-child{transition-delay:0s}.js [data-animate-stream].is-visible>:nth-child(2){transition-delay:.12s}.js [data-animate-stream].is-visible>:nth-child(3){transition-delay:.24s}.js [data-animate-stream].is-visible>:nth-child(4){transition-delay:.36s}.js [data-animate-stream].is-visible>:nth-child(5){transition-delay:.48s}.js [data-animate-stream].is-visible>:nth-child(6){transition-delay:.6s}.js [data-animate-stream].is-visible>:nth-child(7){transition-delay:.72s}.js [data-animate-stream].is-visible>:nth-child(8){transition-delay:.84s}@media (prefers-reduced-motion:reduce){.js [data-animate-flow],.js [data-animate-stream]>*{opacity:1;clip-path:none;transition:none;transform:none}}.cursor-glow{width:var(--cursor-glow-size,380px);height:var(--cursor-glow-size,380px);pointer-events:none;opacity:0;will-change:transform;z-index:9998;mix-blend-mode:screen;filter:blur(18px);background:radial-gradient(circle,#ffffff0e 0%,#ffffff08 25%,#ffffff03 50%,#ffffff01 75%,#0000 100%);border-radius:50%;transition:opacity .6s,background .35s;position:fixed;top:0;left:0}.cursor-glow--cta{background:radial-gradient(circle,#00dae11f 0%,#00dae10f 25%,#00dae105 55%,#00dae101 78%,#0000 100%)}.cursor-glow--pink{background:radial-gradient(circle,#f105a61f 0%,#f105a60f 25%,#f105a605 55%,#f105a601 78%,#0000 100%)}.cursor-glow--visible{opacity:1}[data-theme=light] .cursor-glow{mix-blend-mode:multiply;background:radial-gradient(circle,#00000008 0%,#0000 70%)}@media (hover:none){.cursor-glow{display:none}}@media (prefers-reduced-motion:reduce){.cursor-glow{display:none}}.section-header{text-align:center;max-width:640px;margin-inline:auto;margin-bottom:var(--space-7)}.section-header .text-label{margin-bottom:var(--space-2);display:block}.section-header .text-h2{margin-bottom:var(--space-3)}.section-header__sub{color:var(--color-text-muted);font-size:18px;line-height:1.6}.section-header--row{justify-content:space-between;align-items:flex-end;gap:var(--space-5);text-align:left;max-width:100%;margin-inline:0;display:flex}@media (width<=768px){.section-header--row{flex-direction:column;align-items:flex-start}}.hero--page{padding-block:var(--space-8);min-height:80vh}.hero--compact{padding-block:var(--space-7);min-height:auto}.services-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (width<=1100px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.services-grid{grid-template-columns:1fr}}.services-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:20px;padding-bottom:16px;display:flex;overflow-x:auto}.services-scroll::-webkit-scrollbar{height:4px}.services-scroll::-webkit-scrollbar-track{background:var(--color-bg-2);border-radius:2px}.services-scroll::-webkit-scrollbar-thumb{background:var(--color-accent-1);opacity:.5;border-radius:2px}.services-nav{gap:var(--space-2);display:none}@media (hover:hover) and (pointer:fine){.services-nav{display:flex}.services-scroll{scrollbar-width:none}.services-scroll::-webkit-scrollbar{display:none}}.services-nav__btn{border:1px solid var(--color-border);background:var(--glass-bg);width:44px;height:44px;color:var(--color-text);cursor:pointer;transition:border-color var(--transition-base), color var(--transition-base), opacity var(--transition-base);border-radius:50%;place-items:center;display:grid}.services-nav__btn:hover:not(:disabled){border-color:var(--color-accent-1);color:var(--color-accent-1)}.services-nav__btn:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}.services-nav__btn:disabled{opacity:.3;cursor:default}.services-progress{height:3px;margin-top:var(--space-2);background:var(--color-bg-2);border-radius:2px;display:none;overflow:hidden}@media (hover:hover) and (pointer:fine){.services-progress{display:block}}.services-progress__bar{background:var(--grad-duotone);border-radius:2px;width:25%;height:100%;display:block}.projects-teaser__grid,.projects-grid{margin-top:var(--space-6);grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=900px){.projects-teaser__grid,.projects-grid{grid-template-columns:1fr}}.project-card{border-radius:var(--radius-md);background:var(--glass-bg);border:1px solid var(--glass-border);transition:transform var(--transition-base), box-shadow var(--transition-base);color:inherit;text-decoration:none;display:block;overflow:hidden}@media (hover:hover) and (pointer:fine){a.project-card:hover,.project-card--clickable:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}}.project-card--clickable{cursor:pointer}a.project-card:focus-visible,.project-card--clickable:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}.project-card--placeholder{cursor:default;opacity:.6}.project-card[hidden]{display:none}.project-card__image{aspect-ratio:16/10;background:var(--color-bg-3);position:relative;overflow:hidden}.project-card__image--empty{padding:var(--space-3);justify-content:flex-start;align-items:flex-start;display:flex}.project-card__image img{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform var(--transition-zoom)}@media (hover:hover) and (pointer:fine){a.project-card:hover .project-card__image img,.project-card--clickable:hover .project-card__image img{transform:scale(1.04)}}.project-card__labels{top:var(--space-3);left:var(--space-3);z-index:2;gap:var(--space-2);flex-wrap:wrap;display:flex;position:absolute}.project-card__image--empty .project-card__labels{position:relative;top:auto;left:auto}.project-card__body{padding:var(--space-4)}.project-card__title{margin-bottom:var(--space-1);font-size:18px;font-weight:700}.project-card__hint{color:var(--color-text-muted);transition:color var(--transition-base);font-size:13px;display:block}@media (hover:hover) and (pointer:fine){.project-card--clickable:hover .project-card__hint{color:var(--color-accent-1)}}.testimonials-section{padding-block:var(--space-8)}.testimonials-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=900px){.testimonials-grid{grid-template-columns:1fr}}.testimonial-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);gap:var(--space-5);flex-direction:column;padding:28px;display:flex}.testimonial-card__stars{gap:3px;display:flex}.testimonial-card__star{color:var(--color-border)}.testimonial-card__star--filled{color:var(--color-accent-1)}.testimonial-card__quote{color:var(--color-text-muted);flex:1;font-size:16px;font-style:italic;line-height:1.65}.testimonial-card__footer{padding-top:var(--space-3);border-top:1px solid var(--color-border);flex-direction:column;gap:2px;display:flex}.testimonial-card__client{color:var(--color-text);font-size:14px;font-weight:700}.testimonial-card__project{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.about-teaser__inner{align-items:center;gap:var(--space-7);display:flex}.about-teaser__avatars{flex-shrink:0;display:flex}.about-teaser__avatar{object-fit:cover;border:2px solid var(--color-bg-2);border-radius:50%;width:64px;height:64px;margin-left:-16px}.about-teaser__avatar:first-child{margin-left:0}.about-teaser__content{flex:1}.about-teaser__content .text-label{margin-bottom:var(--space-2);display:block}.about-teaser__text{color:var(--color-text-muted);margin-bottom:var(--space-4);font-size:18px;line-height:1.6}.about-teaser__text--muted{opacity:.85;font-size:15px}@media (width<=768px){.about-teaser__inner{align-items:flex-start;gap:var(--space-4);flex-direction:column}}.closing-cta{position:relative;overflow:hidden}.closing-cta__glow{pointer-events:none;z-index:0;background:radial-gradient(60% 80% at 10%,#00dae11a 0%,#0000 70%),radial-gradient(60% 80% at 90%,#f105a61a 0%,#0000 70%);position:absolute;inset:0}.closing-cta .container{z-index:1;position:relative}.closing-cta__card{max-width:780px;padding:var(--space-7) var(--space-6);border-radius:var(--radius-lg);text-align:center;background:linear-gradient(var(--color-bg-2), var(--color-bg-2)) padding-box, linear-gradient(135deg, #00dae180, #a900ff59, #f105a680) border-box;box-shadow:0 0 80px #00dae10d, 0 0 80px #f105a60d, var(--shadow-md);border:1px solid #0000;margin-inline:auto;position:relative;overflow:hidden}.closing-cta__arc{pointer-events:none;z-index:0;width:100%;height:120px;position:absolute;top:0;left:0}.closing-cta__content{z-index:1;align-items:center;gap:var(--space-5);flex-direction:column;display:flex;position:relative}.closing-cta__trust{align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}.closing-cta__trust-item{color:var(--color-text-muted);align-items:center;gap:6px;font-size:13px;display:flex}.closing-cta__trust-item svg{color:var(--color-accent-1);flex-shrink:0}.closing-cta__sep{color:var(--color-border);font-size:16px}.closing-cta__heading{margin:0}.closing-cta__sub{color:var(--color-text-muted);max-width:480px;font-size:18px;line-height:1.6}.closing-cta__actions{align-items:center;gap:var(--space-4);flex-direction:column;justify-content:center;display:flex}.closing-cta__email{color:var(--color-text-muted);text-underline-offset:3px;transition:color var(--transition-base), text-decoration-color var(--transition-base);font-size:14px;text-decoration:underline #0000}.closing-cta__email:hover{color:var(--color-text);text-decoration-color:var(--color-text-muted)}.closing-cta__whatsapp{margin-top:var(--space-3);color:var(--color-text-muted);font-size:15px}.closing-cta__whatsapp a{color:var(--color-accent-1);text-underline-offset:3px;transition:text-decoration-color var(--transition-base);text-decoration:underline #0000}.closing-cta__whatsapp a:hover{text-decoration-color:var(--color-accent-1)}.closing-cta--tight{padding-block-start:var(--space-5)}.closing-cta__inner{text-align:center;align-items:center;gap:var(--space-4);flex-direction:column;max-width:640px;margin-inline:auto;display:flex}@media (width<=640px){.closing-cta__card{padding:var(--space-6) var(--space-4)}.closing-cta__sep{display:none}}.service-block__inner{gap:var(--space-7);grid-template-columns:1fr 1fr;align-items:start;display:grid}.service-block__inner--with-visual{grid-template-columns:1fr 1fr;align-items:center}.service-block__content{flex-direction:column;display:flex}.service-block__visual{border-radius:var(--radius-lg);position:relative;overflow:hidden;box-shadow:0 8px 40px -8px #0000002e,0 2px 8px -2px #0000001a}.service-block__img{border-radius:var(--radius-lg);width:100%;height:auto;transition:transform var(--transition-zoom);display:block}.service-block__visual:hover .service-block__img{transform:scale(1.02)}.service-block__header .text-h2{margin-top:var(--space-3);margin-bottom:var(--space-4)}.service-block__text{color:var(--color-text-muted);font-size:18px;line-height:1.6}.service-block__features{gap:var(--space-3);margin-top:var(--space-5);flex-direction:column;list-style:none;display:flex}.service-block__feature{align-items:center;gap:var(--space-3);font-size:16px;display:flex}.service-block__check{color:var(--color-accent-1);flex-shrink:0;font-size:18px;font-weight:700}@media (width<=900px){.service-block__inner,.service-block__inner--with-visual{grid-template-columns:1fr}.service-block__visual{order:-1}}.pricing-table{border:1px solid var(--color-border);border-radius:var(--radius-md);margin-block:var(--space-6);overflow:hidden}.pricing-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.pricing-row:last-child{border-bottom:none}.pricing-row:nth-child(odd){background:var(--glass-bg)}.pricing-row__type{color:var(--color-text);font-size:15px}.pricing-row__price{color:var(--color-text-muted);white-space:nowrap;font-size:14px;font-weight:700}.pricing-row__price--highlight{color:var(--color-accent-1)}.pricing-trust{color:var(--color-text-muted);text-align:center;max-width:600px;margin-inline:auto;font-size:16px;font-style:italic;line-height:1.6}.pricing-cta{margin-top:var(--space-6);justify-content:center;display:flex}@media (width<=600px){.pricing-row{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);flex-direction:column}}.social-partner__inner{max-width:600px}.social-partner__inner .text-h3{margin-bottom:var(--space-3)}.social-partner__text{color:var(--color-text-muted);margin-bottom:var(--space-4);font-size:17px;line-height:1.6}.stabs__nav{justify-content:center;gap:var(--space-2);margin-bottom:var(--space-8);scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:16px;display:flex;overflow-x:auto}.stabs__nav::-webkit-scrollbar{display:none}.stabs__btn{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:10px;padding:14px 24px;font-family:inherit;font-size:15px;font-weight:600;transition:background .2s,color .2s,border-color .2s,box-shadow .2s;display:inline-flex;position:relative}.stabs__btn:after{content:"";opacity:0;width:60%;height:3px;transition:opacity var(--transition-base);background:currentColor;border-radius:2px;position:absolute;bottom:-10px;left:20%}.stabs__btn--active:after{opacity:1}.stabs__btn--active.stabs__btn--teal:after{background:#00dae1}.stabs__btn--active.stabs__btn--pink:after{background:#f105a6}.stabs__btn--active.stabs__btn--violet:after{background:#7b00ff}.stabs__btn--active.stabs__btn--madeira:after{background:#7b44f0}.stabs__btn--active:not([class*=--teal]):not([class*=--pink]):not([class*=--violet]):not([class*=--madeira]):after{background:#ffffff80}.stabs__btn:hover{color:var(--color-text);background:#ffffff14}.stabs__btn--active{color:var(--color-text);background:#ffffff0f}.stabs__btn--active.stabs__btn--teal{border-color:#00dae1;box-shadow:inset 0 0 0 1px #00dae133,0 4px 16px #00dae11f}.stabs__btn--active.stabs__btn--pink{border-color:#f105a6;box-shadow:inset 0 0 0 1px #f105a633,0 4px 16px #f105a61f}.stabs__btn--active.stabs__btn--violet{border-color:#7b00ff;box-shadow:inset 0 0 0 1px #7b00ff33,0 4px 16px #7b00ff1f}.stabs__btn--active.stabs__btn--madeira{border-color:#7b44f0;box-shadow:inset 0 0 0 1px #7b44f033,0 4px 16px #7b44f01f}.stabs__btn-icon{flex-shrink:0;align-items:center;display:flex}.stabs__btn--madeira .stabs__btn-icon{color:#7b44f0}.stabs__price{letter-spacing:-.01em;color:var(--color-text-muted);margin:-4px 0 12px;font-size:22px;font-weight:700}.stabs__price--teal{color:#00dae1}.stabs__calc-link{color:var(--color-accent-1);transition:color var(--transition-fast);border-bottom:1px solid;font-weight:600;text-decoration:none}.stabs__calc-link:hover{color:var(--color-accent-1-hover)}.stabs__price--pink{color:#f105a6}.stabs__price--violet{color:#7b00ff}.stabs__btn--teal .stabs__btn-icon{color:#00dae1}.stabs__btn--pink .stabs__btn-icon{color:#f105a6}.stabs__btn--violet .stabs__btn-icon{color:#7b00ff}.stabs__panel{display:none}.stabs__panel--active{animation:.32s both stab-in;display:block}@keyframes stab-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.stabs__inner{gap:var(--space-9);grid-template-columns:1fr 1fr;align-items:center;display:grid}.stabs__content{gap:var(--space-4);flex-direction:column;display:flex}.stabs__text{color:var(--color-text-muted);font-size:17px;line-height:1.75}.stabs__sub-heading{letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:calc(-1 * var(--space-2));font-size:12px;font-weight:700}.stabs__features{grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;list-style:none;display:grid}.stabs__feature{background:#ffffff0d;border:1px solid #ffffff24;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;font-size:14px;font-weight:500;line-height:1.4;display:flex}.stabs__check{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:flex}.stabs__check--teal{color:#00dae1;background:#00dae126}.stabs__check--pink{color:#f105a6;background:#f105a626}.stabs__check--violet{color:#7b00ff;background:#7b00ff26}.stabs__feature:has(.stabs__check--teal){border-left:2px solid #00dae159}.stabs__feature:has(.stabs__check--pink){border-left:2px solid #f105a659}.stabs__feature:has(.stabs__check--violet){border-left:2px solid #7b00ff59}@media (width<=600px){.stabs__features{grid-template-columns:1fr}}.stabs__visual{aspect-ratio:4/3;background:var(--color-bg-2);border-radius:16px;overflow:hidden}.stabs__visual img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-zoom);display:block}.stabs__visual:hover img{transform:scale(1.03)}.stabs__partner-logo{max-width:110px;height:auto;margin:0 0 1.25rem;display:block}@media (width<=900px){.stabs__inner{gap:var(--space-6);grid-template-columns:1fr}.stabs__visual{aspect-ratio:16/9;order:-1}}@media (width<=768px){.stabs__btn{padding:10px 16px;font-size:14px}}.filter-bar{gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.filter-btn{font-family:var(--font);color:var(--color-text-muted);background:var(--glass-bg);border:1px solid var(--color-border);cursor:pointer;transition:color var(--transition-base), background var(--transition-base), border-color var(--transition-base);border-radius:20px;padding:7px 18px;font-size:14px;font-weight:600}@media (hover:hover) and (pointer:fine){.filter-btn:hover{color:var(--color-text);border-color:var(--color-text-muted)}}.filter-btn--active{color:var(--color-accent-1);border-color:var(--color-accent-1);background:#00dae114}.projects-empty{text-align:center;color:var(--color-text-muted);padding-block:var(--space-6)}.story-block{gap:var(--space-7);grid-template-columns:1fr 1.5fr;align-items:start;display:grid}.story-block .text-h2{margin-top:var(--space-2)}.story-block__text{color:var(--color-text-muted);padding-top:4px;font-size:18px;line-height:1.8}.story-timeline{flex-direction:column;gap:0;margin:0;padding:4px 0 0;list-style:none;display:flex}.story-timeline__item{gap:var(--space-4);padding-bottom:var(--space-6);grid-template-columns:110px 1fr;display:grid;position:relative}.story-timeline__item:before{content:"";background:linear-gradient(to bottom, var(--color-accent-1) 0%, var(--color-accent-2) 100%);opacity:.35;width:1px;position:absolute;top:8px;bottom:0;left:110px}.story-timeline__item:last-child{padding-bottom:0}.story-timeline__item:last-child:before{display:none}.story-timeline__year{letter-spacing:.08em;color:var(--color-accent-1);text-align:right;padding-top:2px;padding-right:var(--space-4);white-space:nowrap;font-size:12px}.story-timeline__body{padding-left:var(--space-4);position:relative}.story-timeline__body:before{content:"";background:var(--color-accent-1);width:9px;height:9px;box-shadow:0 0 8px var(--color-accent-1);border-radius:50%;position:absolute;top:8px;left:-5px}.story-timeline__label{color:var(--color-text);margin-bottom:var(--space-1);font-size:16px;font-weight:600;line-height:1.4;display:block}.story-timeline__text{color:var(--color-text-muted);margin:0;font-size:15px;line-height:1.75}@media (width<=900px){.story-block{grid-template-columns:1fr}.story-timeline__item{grid-template-columns:90px 1fr}.story-timeline__item:before{left:90px}.story-timeline__year{font-size:11px}}.team-grid{grid-template-columns:repeat(2,minmax(0,480px));justify-content:center;gap:24px;display:grid}.team-card{border-radius:var(--radius-md);background:var(--glass-bg);border:1px solid var(--glass-border);overflow:hidden}.team-card__image{aspect-ratio:1;background:var(--color-bg-3);position:relative;overflow:hidden}.team-card__photo{object-fit:cover;object-position:center 72%;width:100%;height:100%;transition:transform var(--transition-zoom)}.team-card__overlay{padding:var(--space-5);opacity:0;pointer-events:none;background:linear-gradient(#00000026 0%,#0009 50%,#000000eb 100%);align-items:flex-end;transition:opacity .4s;display:flex;position:absolute;inset:0}.team-card__overlay-text{color:#fff;font-size:14px;line-height:1.65;transition:transform .4s;transform:translateY(10px)}@media (hover:hover) and (pointer:fine){.team-card:hover .team-card__photo{transform:scale(1.05)}.team-card:hover .team-card__overlay{opacity:1}.team-card:hover .team-card__overlay-text{transform:translateY(0)}}.team-card__body{padding:var(--space-4) var(--space-4) var(--space-5)}.team-card__name{margin-bottom:var(--space-1);font-size:18px;font-weight:700}.team-card__role{margin-bottom:var(--space-3);display:block}.team-card__text{color:var(--color-text-muted);font-size:15px;line-height:1.6}@media (width<=900px){.team-grid{grid-template-columns:1fr;max-width:480px}}.team-partner{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--glass-border)}.team-partner__label{margin-bottom:var(--space-4);opacity:.6;display:block}.team-partner__card{align-items:center;gap:var(--space-4);max-width:480px;display:flex}.team-partner__photo{object-fit:cover;object-position:top;opacity:.85;border-radius:50%;flex-shrink:0;width:72px;height:72px}.team-partner__info{flex-direction:column;gap:2px;display:flex}.team-partner__name{font-size:15px;font-weight:600}.team-partner__role{opacity:.55;font-size:12px}.team-partner__text{color:var(--color-text-muted);margin-top:var(--space-1);font-size:14px;line-height:1.5}.approach-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}@media (width<=768px){.approach-grid{grid-template-columns:1fr}}.kontakt-grid{gap:var(--space-8);grid-template-columns:1fr 360px;align-items:start;display:grid}.kontakt-form{gap:var(--space-5);flex-direction:column;display:flex}.kontakt-form__row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.form__fieldset{border:none;margin:0;padding:0}.form__fieldset legend{color:var(--color-text);margin-bottom:var(--space-3);font-size:14px;font-weight:600}.form__radio-group,.form__check-group{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.form__radio-label,.form__check-label{color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-base);align-items:center;gap:8px;font-size:15px;display:flex}@media (hover:hover) and (pointer:fine){.form__radio-label:hover,.form__check-label:hover{color:var(--color-text)}}.form__radio-label input,.form__check-label input{accent-color:var(--color-accent-1);cursor:pointer;flex-shrink:0;width:16px;height:16px}.kontakt-direct{padding:var(--space-5);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md)}.kontakt-direct .text-label{margin-bottom:var(--space-2);display:block}.kontakt-direct .text-h3{margin-bottom:var(--space-5)}.kontakt-direct__whatsapp{gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-5);border-radius:var(--radius-md);background:#00dae10d;border:1px solid #00dae140;flex-direction:column;display:flex}.kontakt-direct__whatsapp .btn{align-self:flex-start;align-items:center;gap:var(--space-2);display:inline-flex}.kontakt-direct__whatsapp-note{color:var(--color-text-muted);font-size:14px;line-height:1.55}.kontakt-direct__list{gap:var(--space-4);margin-bottom:var(--space-5);flex-direction:column;list-style:none;display:flex}.kontakt-direct__item{align-items:center;gap:var(--space-3);display:flex}.kontakt-direct__icon{color:var(--color-accent-1);text-align:center;flex-shrink:0;width:24px;font-size:18px}.kontakt-direct__link{color:var(--color-text-muted);transition:color var(--transition-base);font-size:15px;text-decoration:none}@media (hover:hover) and (pointer:fine){.kontakt-direct__link:hover{color:var(--color-accent-1)}}.kontakt-direct__address{color:var(--color-text-muted);font-size:15px;font-style:normal;line-height:1.6}.kontakt-direct__item:has(.kontakt-direct__address){align-items:flex-start}.kontakt-direct__response{color:var(--color-text-muted);padding-top:var(--space-4);border-top:1px solid var(--color-border);font-size:14px}@media (width<=900px){.kontakt-grid,.kontakt-form__row{grid-template-columns:1fr}}.usp-section .section-header{margin-bottom:var(--space-7)}.ablauf-section{background:var(--color-bg-2)}.ablauf-steps{gap:var(--space-6);margin-top:var(--space-8);grid-template-columns:repeat(4,1fr);display:grid}.ablauf-step{gap:var(--space-3);flex-direction:column;display:flex}.ablauf-step__head{margin-bottom:var(--space-2);align-items:center;gap:0;display:flex}.ablauf-step__num{color:#00dae1;letter-spacing:.04em;background:0 0;border:1.5px solid #00dae1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:13px;font-weight:800;display:flex;box-shadow:0 0 12px #00dae12e}.ablauf-step__line{height:2px;margin-left:var(--space-3);background:linear-gradient(90deg,#00dae166 0%,#7b00ff26 100%);flex:1}.ablauf-step__icon{color:#00dae1;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.ablauf-step__icon--final{color:#f105a6;background:#f105a60f;border-color:#f105a640}.ablauf-step__title{color:var(--color-text);font-size:17px;font-weight:700;line-height:1.3}.ablauf-step__text{color:var(--color-text-muted);flex:1;font-size:14px;line-height:1.65}.ablauf-step__badge{letter-spacing:.06em;text-transform:uppercase;color:#00dae1;background:#00dae11f;border:1px solid #00dae140;border-radius:20px;align-self:flex-start;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.ablauf-step__badge--muted{color:var(--color-text-muted);background:#ffffff0f;border-color:#ffffff1a}@media (width<=900px){.ablauf-steps{gap:var(--space-7) var(--space-5);grid-template-columns:1fr 1fr}.ablauf-step__line{display:none}}@media (width<=560px){.ablauf-steps{gap:var(--space-6);grid-template-columns:1fr}}.usp-section{position:relative;overflow:hidden}.usp-section__arc{pointer-events:none;width:100%;height:100%;opacity:var(--flow-line-opacity-strong,.35);z-index:0;position:absolute;inset:0}.usp-section__arc svg{width:100%;height:100%}.usp-section__arc-path{stroke-dasharray:2400;stroke-dashoffset:2400px;animation:18s ease-in-out infinite usp-arc-flow}@keyframes usp-arc-flow{0%,to{stroke-dashoffset:2400px}50%{stroke-dashoffset:0}}.usp-section .container{z-index:1;position:relative}@media (prefers-reduced-motion:reduce){.usp-section__arc-path{stroke-dashoffset:0;animation:none}}.project-card__image:after{content:"";pointer-events:none;mix-blend-mode:screen;z-index:1;background:linear-gradient(125deg,#0000 30%,#00dae138 48%,#f105a642 58%,#0000 76%);transition:transform .9s cubic-bezier(.22,.68,.32,1);position:absolute;inset:0;transform:translate(-120%)}@media (hover:hover) and (pointer:fine){a.project-card:hover .project-card__image:after,.project-card--clickable:hover .project-card__image:after{transform:translate(120%)}}.project-card__label{isolation:isolate;overflow:hidden}.project-card__label:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(110deg,#0000 40%,#ffffff59 50%,#0000 60%);animation:6s ease-in-out infinite badge-shimmer;position:absolute;inset:0;transform:translate(-120%)}@keyframes badge-shimmer{0%,45%{transform:translate(-120%)}55%,to{transform:translate(120%)}}@media (prefers-reduced-motion:reduce){.project-card__image:after,.project-card__label:before{display:none}}.about-teaser--flow{position:relative;overflow:hidden}.about-teaser--flow .about-teaser__inner{gap:var(--space-8);align-items:center}.about-teaser__portraits{aspect-ratio:13/10;flex-shrink:0;width:520px;max-width:100%;margin-left:auto;position:relative}.about-teaser__portraits .about-teaser__orb{--orb-size:300px;--orb-blur:90px;opacity:calc(var(--flow-orb-opacity,.32) * .9)}.about-teaser__orb--teal{top:auto;bottom:-8%;left:-15%}.about-teaser__orb--violet{top:-10%;left:auto;right:-10%}.about-teaser__orb--pink{inset:auto -8% 5% auto}.about-teaser__line{pointer-events:none;opacity:.55;z-index:1;width:100%;height:100%;position:absolute;inset:0}.about-teaser__path{stroke-dasharray:1200;stroke-dashoffset:1200px;animation:12s ease-in-out infinite about-line-flow}@keyframes about-line-flow{0%,to{stroke-dashoffset:1200px}50%{stroke-dashoffset:0}}.about-teaser__portrait{aspect-ratio:21/26;border-radius:var(--radius-md);background:var(--color-bg-3);border:1.5px solid var(--glass-border);width:40.4%;box-shadow:var(--shadow-md);z-index:2;transition:box-shadow .4s,border-color .4s;animation:7s ease-in-out infinite portrait-float;position:absolute;overflow:hidden}.about-teaser__portrait:after{content:"";border-radius:inherit;pointer-events:none;transition:box-shadow .4s;position:absolute;inset:0;box-shadow:0 0 #0000}.about-teaser__portrait picture{width:100%;height:100%;display:block}.about-teaser__portrait img{object-fit:cover;object-position:center 72%;width:100%;height:100%;transition:transform var(--transition-zoom);display:block}@media (hover:hover) and (pointer:fine){.about-teaser__portrait:hover img{transform:scale(1.05)}}.about-teaser__portrait--enno{animation-delay:0s;top:2.5%;left:1.9%}.about-teaser__portrait--liv{z-index:3;animation-delay:-2.3s;top:22.5%;left:32.7%}.about-teaser__portrait--darian{animation-delay:-4.6s;top:5%;left:59.6%}@media (hover:hover) and (pointer:fine){.about-teaser__portrait--enno:hover{border-color:#00dae18c;box-shadow:0 12px 40px #00000073,0 0 24px #00dae159}.about-teaser__portrait--liv:hover{border-color:#f105a68c;box-shadow:0 12px 40px #00000073,0 0 24px #f105a659}.about-teaser__portrait--darian:hover{border-color:#a900ff8c;box-shadow:0 12px 40px #00000073,0 0 24px #a900ff59}}@keyframes portrait-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (width<=900px){.about-teaser__portraits{width:100%;max-width:420px;margin-inline:auto}}@media (prefers-reduced-motion:reduce){.about-teaser__portrait{animation:none}.about-teaser__path{stroke-dashoffset:0;animation:none}}.pricing-row{transition:background-color var(--transition-base);position:relative}.pricing-row__icon{width:28px;height:28px;color:var(--color-accent-1);margin-right:var(--space-3);background:#00dae11a;border:1px solid #00dae133;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.pricing-row__icon--pink{color:var(--color-accent-2);background:#f105a61a;border-color:#f105a633}.pricing-row__icon--violet{color:#a855f7;background:#a900ff1a;border-color:#a900ff38}.pricing-row__type{align-items:center;display:inline-flex}@media (hover:hover) and (pointer:fine){.pricing-row:hover{background:#00dae10a}.pricing-row:has(.pricing-row__icon--pink):hover{background:#f105a60a}.pricing-row:has(.pricing-row__icon--violet):hover{background:#a900ff0a}}.pricing-row--highlight{border-radius:var(--radius-md) var(--radius-md) 0 0;isolation:isolate;background:linear-gradient(90deg,#00dae10f,#f105a60f);position:relative}.pricing-row--highlight:before{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;z-index:0;background:linear-gradient(90deg,#00dae100 0%,#00dae1cc 30%,#f105a6cc 70%,#f105a600 100%) 0 0/200% 100%;padding:1.5px;animation:6s linear infinite pricing-shimmer;position:absolute;inset:0;mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-position:0 0,0 0;mask-size:auto,auto;mask-repeat:repeat,repeat;mask-clip:content-box,border-box;mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}@keyframes pricing-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.pricing-table[data-animate-stream]>.pricing-row{opacity:0;transform:translateX(calc(-1 * var(--anim-distance))) translateY(4px);transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing)}.pricing-table[data-animate-stream].is-visible>.pricing-row{opacity:1;transform:translate(0)translateY(0)}.pricing-row__price--link{transition:color var(--transition-base), gap var(--transition-base);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.pricing-row__price--link:after{content:"→";transition:transform var(--transition-base)}@media (hover:hover) and (pointer:fine){.pricing-row__price--link:hover{color:var(--color-accent-1)}.pricing-row__price--link:hover:after{transform:translate(3px)}.pricing-row__price--highlight.pricing-row__price--link:hover{color:var(--color-accent-1)}}@media (prefers-reduced-motion:reduce){.pricing-row__price--link:after,.pricing-row__price--link:hover:after{transition:none;transform:none}.pricing-row--highlight:before{animation:none}}.filter-bar{position:relative}.filter-bar__indicator{background:linear-gradient(90deg, var(--color-accent-1), #a900ff, var(--color-accent-2));transform-origin:0;width:40px;height:2px;transition:transform .45s cubic-bezier(.22, .68, .32, 1), opacity var(--transition-base);pointer-events:none;background-size:200% 100%;border-radius:2px;animation:6s linear infinite filter-indicator-flow;position:absolute;bottom:-6px;left:0;transform:translate(0)scaleX(1)}.filter-bar__indicator[hidden]{display:none}@keyframes filter-indicator-flow{0%{background-position:0 0}to{background-position:200% 0}}.filter-btn{position:relative}.filter-btn--active{background:#00dae114}@media (prefers-reduced-motion:reduce){.filter-bar__indicator{transition:none;animation:none}}.project-modal__backdrop{animation:.28s forwards modal-backdrop-in}.project-modal__container{animation:.32s cubic-bezier(.22,.68,.32,1) forwards modal-scale-in}@keyframes modal-backdrop-in{0%{opacity:0;backdrop-filter:blur()}to{opacity:1;backdrop-filter:blur(16px)}}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.94)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes modal-scale-out{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.94)translateY(8px)}}@keyframes modal-backdrop-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.project-modal__backdrop,.project-modal__container{animation:none}}.js [data-animate-diagonal]>*{opacity:0;transform:translate(calc(-1 * var(--anim-distance)), calc(var(--anim-distance) * .6));transition:opacity var(--anim-duration) var(--anim-easing), transform var(--anim-duration) var(--anim-easing)}.js [data-animate-diagonal].is-visible>*{opacity:1;transform:translate(0)}.js [data-animate-diagonal].is-visible>:first-child{transition-delay:0s}.js [data-animate-diagonal].is-visible>:nth-child(2){transition-delay:.1s}.js [data-animate-diagonal].is-visible>:nth-child(3){transition-delay:.2s}.js [data-animate-diagonal].is-visible>:nth-child(4){transition-delay:.3s}.js [data-animate-diagonal].is-visible>:nth-child(5){transition-delay:.4s}.js [data-animate-diagonal].is-visible>:nth-child(6){transition-delay:.5s}@media (prefers-reduced-motion:reduce){.js [data-animate-diagonal]>*{opacity:1;transition:none;transform:none}}.team-card{transition:transform var(--transition-smooth), border-color var(--transition-base);position:relative}.team-card:before{content:"";border-radius:inherit;background:var(--team-grad,linear-gradient(135deg, #00dae199, #f105a699));-webkit-mask-composite:xor;opacity:0;pointer-events:none;z-index:1;padding:1.5px;transition:opacity .4s;position:absolute;inset:0;mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-position:0 0,0 0;mask-size:auto,auto;mask-repeat:repeat,repeat;mask-clip:content-box,border-box;mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}@media (hover:hover) and (pointer:fine){.team-card:hover{transform:translateY(-4px)}.team-card:hover:before{opacity:1}}.team-card--enno{--team-grad:linear-gradient(135deg, #00dae1, #00dae14d)}.team-card--liv{--team-grad:linear-gradient(135deg, #f105a6, #f105a64d)}.team-card--darian{--team-grad:linear-gradient(135deg, #00dae1 0%, #a900ff 50%, #f105a6 100%)}.approach-grid .card__icon svg{transition:transform var(--transition-zoom)}@media (hover:hover) and (pointer:fine){.approach-grid .card:hover .card__icon svg{transform:scale(1.08)}}.approach-grid .card__icon [data-flow-stroke]{stroke-dasharray:120;stroke-dashoffset:120px;transition:stroke-dashoffset .7s cubic-bezier(.22,.68,.32,1)}@media (hover:hover) and (pointer:fine){.approach-grid .card:hover .card__icon [data-flow-stroke]{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.approach-grid .card__icon [data-flow-stroke]{stroke-dashoffset:0;transition:none}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:reduce){.approach-grid .card:hover .card__icon svg{transform:none}}.card__icon{transition:color var(--transition-base), background var(--transition-base), border-color var(--transition-base)}.card__icon svg{transition:filter var(--transition-smooth)}@media (hover:hover) and (pointer:fine){.card--clickable:hover .card__icon{color:var(--color-accent-1);background:#00dae129;border-color:#00dae14d}.card--clickable:hover .card__icon svg{filter:drop-shadow(0 0 6px #00dae180)}.card--clickable:hover .card__icon--pink{color:var(--color-accent-2);background:#f105a629;border-color:#f105a64d}.card--clickable:hover .card__icon--pink svg{filter:drop-shadow(0 0 6px #f105a680)}.approach-grid .card:hover .card__icon{color:var(--color-accent-1);background:#00dae129;border-color:#00dae14d}.approach-grid .card:hover .card__icon svg{filter:drop-shadow(0 0 8px #00dae180)}}@media (prefers-reduced-motion:reduce){.card__icon svg{transition:none}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:reduce){.card--clickable:hover .card__icon svg,.card--clickable:hover .card__icon--pink svg,.approach-grid .card:hover .card__icon svg{filter:none}}.faq-item[open]{position:relative}.faq-item[open]:before{content:"";pointer-events:none;background:linear-gradient(#00dae100 0%,#00dae1 30%,#f105a6 70%,#f105a600 100%) 0 0/100% 200%;width:2px;animation:3s ease-in-out infinite faq-indicator-flow;position:absolute;top:10%;bottom:10%;left:0}@keyframes faq-indicator-flow{0%,to{background-position:0 0}50%{background-position:0 100%}}.faq-item[open] .faq-item__answer{animation:.3s faq-answer-fade}@keyframes faq-answer-fade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.faq-item[open]:before,.faq-item[open] .faq-item__answer{animation:none}}.stats-band{z-index:2;background:var(--color-bg);border-block:1px solid var(--color-border);padding-block:var(--space-6);position:relative}.stats-band__grid{gap:var(--space-5);grid-template-columns:repeat(4,1fr);display:grid}.stats-band__item{align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;display:flex}.stats-band__value{background:var(--grad-duotone);-webkit-text-fill-color:transparent;font-variant-numeric:tabular-nums;background-clip:text;font-size:clamp(32px,4vw,48px);font-weight:800;line-height:1.1}.stats-band__label{color:var(--color-text-muted);font-size:15px}@media (width<=768px){.stats-band{padding-block:var(--space-5)}.stats-band__grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr)}}.project-card__image--scroll{container-type:size}.project-card__image--scroll img{object-fit:fill;height:auto}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.project-card__image--scroll img{transition:transform 6s cubic-bezier(.33,0,.4,1)}a.project-card:hover .project-card__image--scroll img,.project-card--clickable:hover .project-card__image--scroll img{transform:translateY(calc(100cqh - 100%))}}.process{gap:var(--space-6);flex-direction:column;max-width:720px;margin:0 auto;padding:0;list-style:none;display:flex;position:relative}.process:before{content:"";background:linear-gradient(to bottom, var(--color-accent-1) 0%, var(--color-accent-1) 55%, var(--color-accent-2) 100%);transform-origin:top;width:2px;transition:transform 1.4s cubic-bezier(.22,1,.36,1) .2s;position:absolute;top:12px;bottom:12px;left:27px;transform:scaleY(0)}.js .process.is-visible:before,.no-js .process:before{transform:scaleY(1)}.process__step{align-items:flex-start;gap:var(--space-5);display:flex;position:relative}.process__marker{z-index:1;background:var(--color-bg-2);border:1.5px solid var(--glass-border);width:56px;height:56px;box-shadow:var(--shadow-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.process__num{letter-spacing:.04em;color:var(--color-accent-1);font-size:15px;font-weight:800}.process__step:nth-child(3) .process__num{color:#a855f7}.process__step:nth-child(4) .process__num{color:var(--color-accent-2)}.process__card{padding:var(--space-5);border-radius:var(--radius-md);background:var(--glass-bg);border:1px solid var(--glass-border);transition:border-color var(--transition-smooth);flex:1}@media (hover:hover) and (pointer:fine){.process__step:hover .process__card{border-color:#00dae159}.process__step:nth-child(3):hover .process__card{border-color:#a900ff59}.process__step:nth-child(4):hover .process__card{border-color:#f105a659}}.process__title{margin-bottom:var(--space-2);font-size:18px;font-weight:700}.process__text{color:var(--color-text-muted);font-size:16px;line-height:1.65}@media (width<=600px){.process{gap:var(--space-5)}.process:before{left:21px}.process__step{gap:var(--space-4)}.process__marker{width:44px;height:44px}.process__num{font-size:13px}.process__card{padding:var(--space-4)}}@media (prefers-reduced-motion:reduce){.process:before{transform:scaleY(1)}}.usp-rows{max-width:980px;margin:0;margin-inline:auto;padding:0;list-style:none}.usp-row{--usp-accent:var(--color-accent-1);align-items:center;gap:var(--space-5);padding-block:var(--space-5);border-top:1px solid var(--color-border);grid-template-columns:56px 1fr minmax(260px,38%);display:grid}.usp-rows .usp-row:last-child{border-bottom:1px solid var(--color-border)}.usp-row--quality{--usp-accent:#a855f7}.usp-row--price{--usp-accent:var(--color-accent-2)}.usp-row__index{letter-spacing:.16em;color:var(--usp-accent);opacity:.7;font-size:12px;font-weight:700}.usp-row__word{letter-spacing:-.03em;transition:color var(--transition-smooth), transform var(--transition-smooth);font-size:clamp(40px,6vw,76px);font-weight:800;line-height:1.05}.usp-row__text{color:var(--color-text-muted);font-size:16px;line-height:1.6}.usp-row__text strong{color:var(--color-text);font-weight:700}@media (hover:hover) and (pointer:fine){.usp-row:hover .usp-row__word{color:var(--usp-accent);transform:translate(8px)}.usp-row:hover .usp-row__index{opacity:1}}@media (width<=768px){.usp-row{gap:var(--space-2);padding-block:var(--space-4);grid-template-columns:1fr}.usp-row__index{margin-bottom:2px}.usp-row__word{font-size:clamp(36px,10vw,52px)}}.type-band{white-space:nowrap;padding-block:var(--space-4) var(--space-6);user-select:none;pointer-events:none;overflow:hidden}.type-band__track{will-change:transform;align-items:baseline;gap:.6em;display:inline-flex}.type-band__word{letter-spacing:-.02em;text-transform:uppercase;color:#0000;-webkit-text-stroke:1.5px #ffffff38;font-size:clamp(56px,8.5vw,116px);font-weight:800;line-height:1.1}.type-band__word--fill{color:var(--color-text);-webkit-text-stroke:0;opacity:.92}.type-band__sep{color:var(--color-accent-1);font-size:clamp(28px,4vw,52px);transform:translateY(-.3em)}.type-band__sep--pink{color:var(--color-accent-2)}[data-theme=light] .type-band__word{-webkit-text-stroke-color:#11111140}@media (prefers-reduced-motion:reduce){.type-band__track{will-change:auto;transform:none}}.faq-section .section-header{text-align:center;max-width:640px;margin-inline:auto;margin-bottom:var(--space-7)}.faq-list{gap:var(--space-2);flex-direction:column;max-width:800px;margin-inline:auto;display:flex}.faq-item{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);transition:border-color var(--transition-base), background-color var(--transition-base), box-shadow var(--transition-base);overflow:hidden}.faq-item[open]{background-color:#00dae10a;border-color:#00dae14d;box-shadow:0 0 24px #00dae114}.faq-item__question{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5);font-size:var(--font-size-md);font-weight:var(--font-weight-semi);color:var(--color-text);line-height:var(--line-height-tight);cursor:pointer;user-select:none;transition:color var(--transition-base);list-style:none;display:flex}.faq-item__question::-webkit-details-marker{display:none}.faq-item[open]>.faq-item__question{color:var(--color-accent-1)}.faq-item__question-text{flex:1}.faq-item__icon{color:var(--color-text-muted);transition:transform var(--transition-smooth), color var(--transition-base);flex-shrink:0;align-items:center;display:flex}.faq-item[open]>.faq-item__question>.faq-item__icon{color:var(--color-accent-1);transform:rotate(180deg)}.faq-item__body{transition:height var(--transition-smooth);overflow:hidden}.faq-item__answer{padding:var(--space-4) var(--space-5) var(--space-5);font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:var(--line-height-body);border-top:1px solid var(--glass-border)}@media (prefers-reduced-motion:reduce){.faq-item__body{transition:none}}@media (width>=768px){.faq-item__question{padding:var(--space-5) var(--space-6)}.faq-item__answer{padding:var(--space-4) var(--space-6) var(--space-5)}}.rechner{max-width:760px;padding-bottom:var(--space-8);margin-inline:auto}.rechner__step-title{margin-bottom:var(--space-2)}.rechner__step-sub{color:var(--color-text-muted);margin-bottom:var(--space-4)}.rechner__note{color:var(--color-text-muted);margin-top:var(--space-3);font-size:.9rem}.rechner__progress{margin-bottom:var(--space-5)}.rechner__progress-text{color:var(--color-text-muted);margin-bottom:var(--space-2);font-size:.85rem}.rechner__progress-track{background:var(--color-border);border-radius:2px;height:4px;overflow:hidden}.rechner__progress-fill{--progress:0%;width:var(--progress);background:var(--grad-duotone);height:100%;transition:width var(--transition-smooth);border-radius:2px}.rechner__progress-steps{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.rechner__progress-step{min-width:32px;height:32px;padding-inline:var(--space-2);border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);color:var(--color-text-muted);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);font-size:.8rem}.rechner__progress-step:hover:not(:disabled){border-color:var(--color-accent-1);color:var(--color-text)}.rechner__progress-step[aria-current=step]{border-color:var(--color-accent-1);color:var(--color-accent-1);font-weight:700}.rechner__progress-step:disabled{opacity:.35;cursor:default}.rechner-options__fieldset{margin:0 0 var(--space-4);border:0;padding:0}.rechner-options__legend{margin-bottom:var(--space-3);font-weight:600}.rechner-options{gap:var(--space-3);display:grid}.rechner-option{cursor:pointer;display:block;position:relative}.rechner-option__input{opacity:0;pointer-events:none;position:absolute;inset:0}.rechner-option__card{padding:var(--space-3) var(--space-4);border:1px solid var(--glass-border);border-radius:var(--radius-md);background:var(--glass-bg);transition:border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);display:block}.rechner-option:hover .rechner-option__card{border-color:var(--color-accent-1);transform:translateY(-1px)}.rechner-option__input:checked+.rechner-option__card{border-color:var(--color-accent-1);box-shadow:var(--shadow-accent)}.rechner-option__input:focus-visible+.rechner-option__card{outline:2px solid var(--color-accent-1);outline-offset:2px}.rechner-option__head{align-items:center;gap:var(--space-2);display:flex}.rechner-option__label{font-weight:600}.rechner-option__price{color:var(--color-accent-1);white-space:nowrap;margin-left:auto;font-weight:600}.rechner-option__desc{margin-top:var(--space-1);color:var(--color-text-muted);font-size:.9rem;display:block}.rechner-option__badge{margin-top:var(--space-2)}.rechner-option__control{border:2px solid var(--color-text-muted);color:#0000;width:20px;height:20px;transition:border-color var(--transition-fast), background var(--transition-fast), color var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;line-height:1;display:inline-flex}.rechner-option__control--checkbox{border-radius:var(--radius-sm)}.rechner-option__control--checkbox:after{content:"✓"}.rechner-option__control--radio{border-radius:50%}.rechner-option__control--radio:after{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}.rechner-option__input:checked+.rechner-option__card .rechner-option__control{border-color:var(--color-accent-1);color:var(--color-bg)}.rechner-option__input:checked+.rechner-option__card .rechner-option__control--checkbox{background:var(--color-accent-1)}.rechner-option__input:checked+.rechner-option__card .rechner-option__control--radio{color:var(--color-accent-1)}.rechner-tip__btn{border:1px solid var(--color-border);width:20px;height:20px;color:var(--color-text-muted);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-style:italic;font-weight:700;display:inline-flex}.rechner-tip__btn:hover,.rechner-tip__btn[aria-expanded=true]{border-color:var(--color-accent-1);color:var(--color-accent-1)}.rechner-tip__text{margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-left:2px solid var(--color-accent-1);background:var(--glass-bg);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:.85rem;font-weight:400;display:block}.rechner-tip__text[hidden]{display:none}.rechner__included{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--glass-bg);border:1px solid var(--glass-border)}.rechner__included-title{margin-bottom:var(--space-2);font-weight:600}.rechner__included-list{gap:var(--space-1);color:var(--color-text-muted);font-size:.9rem;display:grid}.rechner__included-item:before{content:"✓ ";color:var(--color-accent-1)}.rechner-stepper{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.rechner-stepper__btn{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);width:44px;height:44px;color:var(--color-text);cursor:pointer;transition:border-color var(--transition-fast);font-size:1.25rem}.rechner-stepper__btn:hover{border-color:var(--color-accent-1)}.rechner-stepper__value{text-align:center;min-width:2ch;font-size:1.25rem;font-weight:700}.rechner-stepper__note{color:var(--color-text-muted);font-size:.9rem}.rechner__nav{justify-content:space-between;gap:var(--space-3);margin-top:var(--space-5);display:flex}.rechner__nav [data-nav-back][hidden],.rechner__nav [data-nav-next][hidden]{display:none}.rechner__nav [data-nav-next]{margin-left:auto}.rechner-bar{z-index:40;background:var(--color-bg-2);border-top:1px solid var(--color-border);box-shadow:var(--shadow-md);position:fixed;bottom:0;left:0;right:0}.rechner-bar__inner{align-items:baseline;gap:var(--space-3);padding-block:var(--space-3);flex-wrap:wrap;display:flex}.rechner-bar__label{color:var(--color-text-muted);font-size:.85rem}.rechner-bar__value{font-size:1.1rem;font-weight:700}.rechner-bar__monthly{color:var(--color-text-muted);font-size:.9rem}.rechner-bar__hint{color:var(--color-accent-2);margin-left:auto;font-size:.85rem}.rechner-result__heading{margin-bottom:var(--space-4)}.rechner-result__lines{gap:var(--space-2);margin-bottom:var(--space-4);display:grid}.rechner-result__line{justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);font-size:.95rem;display:flex}.rechner-result__line-value{white-space:nowrap;font-weight:600}.rechner-result__totals{gap:var(--space-2);margin-bottom:var(--space-4);display:grid}.rechner-result__total{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.rechner-result__total-value{background:var(--grad-duotone);color:#0000;background-clip:text;font-size:1.4rem;font-weight:700}.rechner-result__quote-note{margin-bottom:var(--space-4);color:var(--color-text-muted)}.rechner-result__promo{margin-bottom:var(--space-4)}.rechner-result__promo-row{gap:var(--space-2);display:flex}.rechner-result__promo-row .form__input{flex:1}.rechner-result__promo-msg{margin-top:var(--space-2);font-size:.85rem}.rechner-result__promo-msg--error{color:var(--color-accent-2)}.rechner-result__promo-msg--ok{color:var(--color-accent-1)}.rechner-result__disclaimer,.rechner-result__tax{color:var(--color-text-muted);margin-bottom:var(--space-2);font-size:.85rem}.rechner-form{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border);gap:var(--space-3);justify-items:start;display:grid}.rechner-form__note{color:var(--color-text-muted)}.rechner-form__social{align-items:flex-start}.rechner-form__row{gap:var(--space-3);width:100%;display:grid}.rechner-form__edit-hint{color:var(--color-text-muted);font-size:.85rem}@media (width>=640px){.rechner-options{grid-template-columns:repeat(2,1fr)}.rechner-form__row{grid-template-columns:1fr 1fr}}.project-modal{z-index:900;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.project-modal[hidden]{display:none}.project-modal__backdrop{backdrop-filter:blur(4px);cursor:pointer;background:#000000d9;animation:.2s fade-in;position:absolute;inset:0}.project-modal__container{background:var(--color-bg-2);border:1px solid var(--glass-border);border-radius:var(--radius-lg);width:100%;max-width:960px;max-height:calc(100dvh - var(--space-7));scrollbar-width:thin;scrollbar-color:var(--color-bg-3) transparent;animation:.22s scale-in;position:relative;overflow-y:auto}.project-modal__close{top:var(--space-4);right:var(--space-4);z-index:10;background:var(--glass-bg);border:1px solid var(--color-border);width:40px;height:40px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-base), background var(--transition-base), border-color var(--transition-base);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}@media (hover:hover) and (pointer:fine){.project-modal__close:hover{color:var(--color-text);background:var(--color-bg-3);border-color:var(--color-text-muted)}}.project-modal__close:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:2px}.project-modal__inner{grid-template-columns:1.1fr 1fr;min-height:400px;display:grid}.project-modal__image-wrap{border-radius:var(--radius-lg) 0 0 var(--radius-lg);background:var(--color-bg-3);overflow:hidden}.project-modal__image{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.project-modal__content{padding:var(--space-8) var(--space-6) var(--space-6);gap:var(--space-4);flex-direction:column;display:flex}.project-modal__badges{gap:var(--space-2);flex-wrap:wrap;align-self:flex-start;display:flex}.project-modal__title{letter-spacing:-.02em;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:800;line-height:1.15}.project-modal__desc{color:var(--color-text-muted);flex:1;font-size:16px;line-height:1.65}.project-modal__scope{gap:var(--space-2);flex-direction:column;display:flex}.project-modal__scope-label{margin:0}.project-modal__tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.project-modal__tag{background:var(--glass-bg);border:1px solid var(--color-border);color:var(--color-text-muted);letter-spacing:.04em;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600}.project-modal__review{padding:var(--space-4);border-left:2px solid var(--color-accent-1);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--glass-bg);gap:var(--space-2);flex-direction:column;margin:0;display:flex}.project-modal__review[hidden]{display:none}.project-modal__review-stars{gap:3px;display:flex}.project-modal__review-star{color:var(--color-border)}.project-modal__review-star--filled{color:var(--color-accent-1)}.project-modal__review-quote{color:var(--color-text-muted);margin:0;font-size:14px;font-style:italic;line-height:1.65}.project-modal__review-author{color:var(--color-text);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.project-modal__cta{align-self:flex-start;align-items:center;gap:var(--space-2);margin-top:var(--space-2);display:inline-flex}.project-modal__cta[hidden]{display:none}@media (width<=700px){.project-modal{padding:var(--space-3);align-items:flex-end}.project-modal__container{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92dvh}.project-modal__inner{grid-template-columns:1fr}.project-modal__image-wrap{border-radius:var(--radius-lg) var(--radius-lg) 0 0;aspect-ratio:16/9;height:auto}.project-modal__content{padding:var(--space-5) var(--space-4) var(--space-6)}}.cookie-consent{bottom:var(--space-5);right:var(--space-5);max-width:360px;width:calc(100vw - var(--space-6));background:var(--color-bg-2);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-md), 0 0 0 1px #00dae114;z-index:9000;position:fixed}.cookie-consent__title{color:var(--color-text);margin:0 0 var(--space-2);font-size:15px;font-weight:700}.cookie-consent__body{color:var(--color-text-muted);margin:0 0 var(--space-4);font-size:13px;line-height:1.5}.cookie-consent__link{color:var(--color-accent-1);text-underline-offset:2px;text-decoration:underline}.cookie-consent__actions{gap:var(--space-3);justify-content:flex-end;display:flex}.btn--sm{padding:8px 18px;font-size:14px}@media (width<=400px){.cookie-consent{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:100%;bottom:0;right:0}}.whatsapp-fab{right:var(--space-4);bottom:var(--space-4);z-index:800;width:54px;height:54px;color:var(--color-accent-1);background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);opacity:0;pointer-events:none;transition:opacity var(--transition-smooth), transform var(--transition-smooth), border-color var(--transition-base), box-shadow var(--transition-base);border:1px solid #00dae159;border-radius:50%;place-items:center;display:grid;position:fixed;transform:translateY(12px);box-shadow:0 8px 28px #00000059}.whatsapp-fab--visible{opacity:1;pointer-events:auto;transform:translateY(0)}@media (hover:hover) and (pointer:fine){.whatsapp-fab:hover{border-color:var(--color-accent-1);box-shadow:0 8px 32px #00dae140}}.whatsapp-fab:focus-visible{outline:2px solid var(--color-accent-1);outline-offset:3px}[data-theme=light] .whatsapp-fab{box-shadow:0 8px 28px #00000026}@media (width<=768px){.whatsapp-fab{right:var(--space-3);bottom:var(--space-3)}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
