html,body{height:100%}html{font-size:16px;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%}body{min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block;object-fit:cover}a{word-break:break-word}button,textarea,input,select{font-family:inherit}:focus{outline:none}:focus-visible{box-shadow:0 0 0 4px rgba(59,130,246,0.18);border-radius:8px}.container{max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media(min-width:640px){.container{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:1024px){.container{padding-left:2.5rem;padding-right:2.5rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.no-scroll{overflow:hidden;height:100%}#mobileMenu{transition:opacity .36s ease,transform .36s cubic-bezier(.2,.9,.3,1);opacity:0;pointer-events:none}#mobileMenu.open{opacity:1;pointer-events:auto}#mobileOverlay{transition:opacity .36s ease}#mobileMenu .iconify{transition:transform .28s ease,opacity .28s ease}nav[aria-label="Hauptnavigation"] a:focus,nav[aria-label="Hauptnavigation"] a:hover{transform:translateY(-1px);transition:transform .18s ease}button:disabled{opacity:.6;cursor:not-allowed}.rounded-2xl{border-radius:16px}.rounded-xl{border-radius:12px}.shadow-md{box-shadow:0 6px 18px rgba(15,23,42,0.06)}.shadow-lg{box-shadow:0 12px 30px rgba(15,23,42,0.08)}.focus-ring{box-shadow:0 0 0 4px rgba(59,130,246,0.18);border-radius:8px}.card-hover{transition:transform .22s cubic-bezier(.2,.9,.3,1),box-shadow .22s ease}.card-hover:hover{transform:translateY(-6px)}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}#cookieConsent{max-width:20rem}#cookieConsent button{min-width:3.25rem}@keyframes subtle-pulse{0%{transform:scale(.995)}50%{transform:scale(1.005)}100%{transform:scale(.995)}}.animated-accent{animation:subtle-pulse 6s ease-in-out infinite}.visually-strong{color:#0f172a}footer address{line-height:1.4}form .input-error{border-color:#ef4444;box-shadow:0 0 0 4px rgba(239,68,68,0.06)}.hidden-visually{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}kbd{background:#111827;color:#fff;padding:.12rem .36rem;border-radius:.35rem;font-size:.85em;box-shadow:inset 0 -1px 0 rgba(255,255,255,0.06)}