/* Original artwork remains unmodified. */
:root{color-scheme:light dark}
.brand{display:inline-flex;align-items:center;gap:12px;letter-spacing:0}
.brand .brand-logo{display:block;width:64px;height:64px;flex:none;background:#faf9f6;border-radius:50%}
.brand .brand-name{color:inherit;font-size:26px;font-weight:800;letter-spacing:-.06em;line-height:1.05}
.brand-name small{display:block;font-size:8px;font-weight:600;letter-spacing:.22em;margin-top:5px}
.site-header .nav{height:90px}
.site-header nav a{position:relative;padding:12px 0}
.site-header nav a:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:2px;background:#95c11f;transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.site-header nav a:hover:after,.site-header nav a:focus-visible:after{transform:scaleX(1)}
a,button,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #95c11f;outline-offset:5px}
.primary,.button,.nav-cta,.service-examples,.gallery-control{transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease}
.primary:hover,.button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #00000018}
.launch-photo{overflow:hidden}.launch-photo img{transition:transform .7s ease}
.work-card{transition:transform .3s ease,box-shadow .3s ease}.work-card:focus-visible{outline-offset:6px}
#leistungen .service-grid article{transition:padding-left .25s ease,border-color .25s ease}
.faq-list summary{min-height:44px}.faq-list summary:hover{color:#c3df88}
/* Correct inherited light/dark text and a narrow contact grid. */
#leistungen .service-grid article h3{color:#1e262a}
#leistungen .service-grid article p{color:#51595d}
.contact{display:block;color:#f2f2ef}.contact .container{min-width:0}
footer .brand{color:#f2f2ef}
.notice-track{animation:none;width:auto;white-space:normal}.notice-track span{min-width:0;padding:0}.notice-track [aria-hidden]{display:none}
@media(hover:hover) and (pointer:fine){.work-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px #0002}.launch-photo:hover img{transform:scale(1.015)}#leistungen .service-grid article:hover{padding-left:12px;border-color:#658510}}
@media(prefers-reduced-motion:no-preference){.reveal-pending{opacity:0;transform:translateY(16px)}.reveal-ready{transition:opacity .6s ease,transform .6s ease;opacity:1;transform:none}.intro h1{animation:hero-in .65s ease both}@keyframes hero-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
@media(max-width:680px){.site-header .nav{height:auto;min-height:88px;flex-wrap:wrap;gap:8px;padding-block:10px}.site-header .brand{gap:6px}.brand .brand-logo{width:52px;height:52px}.brand .brand-name{font-size:23px}.site-header nav{display:flex;order:3;flex-basis:100%;justify-content:space-between;gap:14px}.site-header nav a{font-size:13px;min-height:44px;display:flex;align-items:center}.nav-cta{padding:10px}.launch-hero h1{font-size:clamp(38px,9.5vw,64px)}.launch-hero .intro{padding-top:46px}.contact-grid a{overflow-wrap:anywhere}.footer-top{gap:20px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-pending{opacity:1;transform:none}}
.site-header .brand>.brand-name{color:#1e262a}footer .brand>.brand-name{color:#f2f2ef}
#leistungen .service-examples{color:#39551b;min-height:44px;padding-block:10px}
@media(max-width:900px){.site-header .nav-cta{display:inline-flex}}
@media(max-width:680px){.site-header .nav nav{gap:12px}.site-header .nav nav a:nth-child(3){display:flex}.site-header .nav-cta{font-size:12px}}
#leistungen .section-heading p,.about-copy p,.faq .section-heading p,.faq-list p{color:#51595d}
#leistungen .section-label,.about .section-label,.faq .section-label,.about-meta span{color:#62686b}
#leistungen h2 span,.about h2 span,.faq h2 span{color:#62686b}
.works{color:#f2f2ef}.faq-list summary:hover{color:#39551b}
