/* V115 – final cross-page design and accessibility refinement */
:root{--roscher-lime:#91e000;--roscher-ink:#101715}
html{scroll-padding-top:100px}body{overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}a,button{-webkit-tap-highlight-color:transparent}
:is(a,button,input,select,textarea):focus-visible{outline:3px solid #91e000!important;outline-offset:4px}
.header nav.links a,.unified-header nav.unified-links a{font-weight:700!important;opacity:1!important;visibility:visible!important;white-space:nowrap;text-decoration:none!important;transition:color .18s ease,background-color .18s ease,transform .18s ease!important}
.header nav.links a:not(:hover):not(:focus-visible):not([aria-current="page"]):not([href="kontakt.html"]),.unified-header nav.unified-links a:not(:hover):not(:focus-visible):not([aria-current="page"]):not([href="kontakt.html"]){color:#f7f9f7!important;-webkit-text-fill-color:#f7f9f7!important}
.header nav.links a:is(:hover,:focus-visible,[aria-current="page"]),.unified-header nav.unified-links a:is(:hover,:focus-visible,[aria-current="page"]),.header nav.links a[href="kontakt.html"],.unified-header nav.unified-links a[href="kontakt.html"]{background:#91e000!important;color:#101715!important;-webkit-text-fill-color:#101715!important;opacity:1!important;text-shadow:none!important}
@media(min-width:901px){.header nav.links a,.unified-header nav.unified-links a{padding-inline:clamp(12px,1.15vw,22px)!important}.header nav.links,.unified-header nav.unified-links{gap:clamp(1px,.3vw,7px)!important}}
@media(max-width:900px){.header nav.links a,.unified-header nav.unified-links a{white-space:normal!important;min-height:44px;display:flex;align-items:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* A restrained, consistent premium image treatment. */
.v35-gallery-grid img,.v51-gallery-frame img,.kit-hero-photo img{backface-visibility:hidden}
.v35-gallery-grid .v35-tile{cursor:zoom-in}
.v35-gallery-grid .v35-tile:focus-visible{outline:3px solid #91e000;outline-offset:5px}
/* Keep architecture in the frame on mobile without forcing huge layout shifts. */
@media(max-width:700px){.arch-hero-content h1{overflow-wrap:normal;hyphens:auto}.roscher-footer-main{min-width:0}.roscher-footer-main>*{min-width:0}}
