
/* ROSCHER V17 — gemeinsamer Design-Feinschliff */
:root{--roscher-accent:#91e000;--roscher-ink:#111517;--roscher-soft:#f4f5f2}
html{scroll-behavior:smooth;scroll-padding-top:112px}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #91e000!important;outline-offset:4px!important}
:where(.header,.unified-header){background:#111416!important;box-shadow:0 8px 30px rgba(0,0,0,.18)!important}
:where(.nav,.unified-nav){max-width:1580px!important;min-height:104px!important;gap:20px!important}
:where(.brand,.unified-brand){flex:0 0 auto;max-width:300px!important;width:clamp(190px,23vw,300px)!important}
:where(.brand,.unified-brand) img{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(0,0,0,.18))}
:where(.links,.unified-links){gap:clamp(12px,1.6vw,26px)!important}
:where(.links,.unified-links) a{transition:color .2s ease,border-color .2s ease,background .2s ease}
:where(.links,.unified-links) a:hover{color:#a9ef37}
:where(.btn,.nav-plan,.roscher-footer-cta){transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
:where(.btn,.nav-plan,.roscher-footer-cta):hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,0,0,.16)}
.hero{min-height:clamp(490px,65vh,760px)!important;background-position:center 53%!important}
.hero:before{background:linear-gradient(90deg,rgba(8,12,13,.84) 0%,rgba(8,12,13,.57) 44%,rgba(8,12,13,.08) 100%)!important}
.hero-inner{padding-block:clamp(70px,10vh,130px)!important}
.hero h1{max-width:950px;text-wrap:balance}
:where(.section,.gallery-wrap,.config-section){scroll-margin-top:115px}
:where(.house-card,.gallery-card,.reference-card,.service-card){transition:transform .25s ease,box-shadow .25s ease}
:where(.house-card,.gallery-card,.reference-card,.service-card):hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.13)}
:where(.house-card,.gallery-card,.reference-card) img{object-fit:cover}
.roscher-footer{margin-top:0}
.roscher-footer-visual{background-position:center center!important}
@media(max-width:1100px){:where(.nav,.unified-nav){min-height:88px!important}:where(.brand,.unified-brand){width:230px!important}:where(.links,.unified-links){gap:12px!important;font-size:12px!important}}
@media(max-width:900px){:where(.brand,.unified-brand){width:min(240px,62vw)!important}:where(.nav,.unified-nav){min-height:78px!important;padding:10px 5%!important}.hero{min-height:550px!important}.hero-inner{padding-block:65px!important}}
@media(max-width:600px){.hero{min-height:570px!important;background-position:60% center!important}.hero:before{background:linear-gradient(90deg,rgba(8,12,13,.85),rgba(8,12,13,.48))!important}.hero h1{font-size:clamp(39px,11vw,64px)!important;letter-spacing:-1.4px!important}.hero .actions{gap:10px}.hero .btn{width:100%;text-align:center}.roscher-footer-visual-inner{padding-inline:6%!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
