*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--blau:#1c1b1f;--blau-hell:#2d2c32;--akzent:#1c1b1f;--text:#1c1b1f;--text-hell:#666;--hintergrund:#fff;--weiss:#ede8e0;--grau:#d9d9d9}html{scroll-behavior:smooth}html.snap-scroll{scroll-snap-type:y proximity;scroll-padding-top:70px}body{color:var(--text);background:var(--weiss);font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden}header{z-index:100;background:var(--weiss);border-bottom:1px solid var(--grau);transition:background-color .3s,border-color .3s;position:sticky;top:0}header.header-hero{background:0 0;border-bottom-color:#0000}header.header-hero nav ul a{color:#fff;transition:color .3s}header.header-hero nav ul a:hover{color:#ffffffbf}header.header-hero .btn-nav{background:#fff;color:var(--blau)!important}header.header-hero.is-scrolled{background:var(--weiss)!important;border-bottom-color:var(--grau)!important}header.header-hero.is-scrolled nav ul a{color:var(--text)}header.header-hero.is-scrolled nav ul a:hover{color:var(--blau)}header.header-hero.is-scrolled .btn-nav{background:var(--blau);color:var(--weiss)!important}nav{justify-content:space-between;align-items:center;max-width:1100px;height:70px;margin:0 auto;padding:0 2rem;transition:height .3s;display:flex}.logo{color:var(--blau);letter-spacing:-.5px;font-size:1.5rem;font-weight:700;text-decoration:none}.logo span{color:var(--akzent)}nav ul{align-items:center;gap:2rem;list-style:none;display:flex}nav ul a{color:var(--text);font-weight:500;text-decoration:none;transition:color .2s}nav ul a:hover{color:var(--blau)}.btn-nav{background:var(--blau);border-radius:4px;padding:.5rem 1.2rem;color:var(--weiss)!important;transition:opacity .2s!important}.btn-nav:hover{opacity:.8}main{min-height:calc(100vh - 150px)}footer{background:var(--hintergrund);color:var(--text-hell);border-top:1px solid var(--grau);padding:3rem 2rem 2rem;position:relative}.footer-inner{flex-direction:column;align-items:center;gap:1.5rem;max-width:1100px;margin:0 auto;display:flex}.footer-kontakt{flex-wrap:wrap;justify-content:center;gap:.6rem;font-size:.95rem;display:flex}.footer-kontakt a{color:var(--text-hell);text-decoration:none}.footer-kontakt a:hover{color:var(--text)}.footer-links{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.footer-links a{color:var(--text-hell);font-size:.95rem;text-decoration:none}.footer-links a:hover{color:var(--text)}.container{max-width:1100px;margin:0 auto;padding:0 2rem}.btn{cursor:pointer;border:none;border-radius:6px;padding:.8rem 1.8rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.btn-primary{background:var(--blau);color:var(--weiss)}.btn-primary:hover{opacity:.88}.btn-hell{background:var(--weiss);color:var(--text)}.btn-hell:hover{opacity:.88}.btn-outline{color:var(--weiss);border:2px solid var(--weiss);background:0 0}.btn-outline:hover{background:var(--weiss);color:var(--blau)}section{padding:5rem 0}h1{font-size:clamp(2rem,5vw,3rem);line-height:1.2}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:1.2rem}h1,h2,h3,.tag,.section-tag{text-wrap:balance}p,li{text-wrap:pretty}@keyframes reveal-fade{0%{opacity:0}to{opacity:1}}.reveal,.reveal-left,.reveal-right{opacity:0}@supports (animation-timeline:view()){.reveal:not(.hero-fly),.reveal-left:not(.hero-fly),.reveal-right:not(.hero-fly){animation:linear both reveal-fade}:is(.reveal,.reveal-left,.reveal-right):not(.hero-fly){animation-timeline:view();animation-range:entry 10% cover 30%}}@supports not (animation-timeline:view()){.reveal.is-visible,.reveal-left.is-visible,.reveal-right.is-visible{animation:.45s ease-out both reveal-fade;animation-delay:calc(var(--i,0) * 55ms)}}@media (prefers-reduced-motion:reduce){.reveal,.reveal-left,.reveal-right,.reveal.is-visible,.reveal-left.is-visible,.reveal-right.is-visible{opacity:1!important;animation:none!important;transform:none!important}}.btn:hover,.hover-grow:hover{transform:scale(1.03)}.hover-grow{transition:transform .2s ease-out}.hover-grow-card{transition:transform .2s ease-out,box-shadow .2s ease-out}.hover-grow-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}.blueprint-bg{background-color:var(--weiss);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cpath d='M130 123.5v13M123.5 130h13' stroke='rgba(28,27,31,0.18)' stroke-width='1'/%3E%3C/svg%3E"),linear-gradient(#1c1b1f0f 1px,#0000 1px),linear-gradient(90deg,#1c1b1f0f 1px,#0000 1px),linear-gradient(#1c1b1f08 1px,#0000 1px),linear-gradient(90deg,#1c1b1f08 1px,#0000 1px);background-size:260px 260px,130px 130px,130px 130px,26px 26px,26px 26px}@media (prefers-reduced-motion:no-preference){.blueprint-bg{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cpath d='M130 123.5v13M123.5 130h13' stroke='rgba(28,27,31,0.18)' stroke-width='1'%3E%3Canimate attributeName='stroke-opacity' values='1%3B0.2%3B1' dur='6s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cpath d='M130 123.5v13M123.5 130h13' stroke='rgba(28,27,31,0.18)' stroke-width='1'%3E%3Canimate attributeName='stroke-opacity' values='0.2%3B1%3B0.2' dur='9s' repeatCount='indefinite'/%3E%3C/path%3E%3C/svg%3E"),linear-gradient(#1c1b1f0f 1px,#0000 1px),linear-gradient(90deg,#1c1b1f0f 1px,#0000 1px),linear-gradient(#1c1b1f08 1px,#0000 1px),linear-gradient(90deg,#1c1b1f08 1px,#0000 1px);background-position:0 0,130px 130px,0 0,0 0,0 0,0 0;background-size:260px 260px,260px 260px,130px 130px,130px 130px,26px 26px,26px 26px}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.word-swap{display:inline-block}.word-swap-visual{white-space:nowrap;display:inline-block}.word-swap-letter{display:inline-block}.word-swap-letter.is-out{animation:.35s forwards word-letter-out}.word-swap-letter.is-in{animation:.4s backwards word-letter-in}@keyframes word-letter-out{to{opacity:0;transform:translateY(-.6em)}}@keyframes word-letter-in{0%{opacity:0;transform:translateY(.6em)}}@media (prefers-reduced-motion:reduce){.word-swap-letter.is-out,.word-swap-letter.is-in{opacity:1!important;animation:none!important;transform:none!important}}
