/* Ketshop V16: gemeinsamer responsiver Feinschliff */
img,svg,video{max-width:100%}
.hero-copy,.hero-in>div,.hero-inner>div,.intro-inner>div,.features-in>div,.case-grid>div,.project-grid>*{min-width:0}
h1,h2,h3{overflow-wrap:break-word;text-wrap:balance}
p,li{overflow-wrap:break-word}
.header .nav a.btn,.header .nav a.btn:hover,.header .nav a.btn:focus-visible{color:#fff!important}
.header .nav a.btn:hover{background-color:#890611!important}
.header .nav a:not(.btn):focus-visible{outline-offset:3px}
@media(max-width:1100px){
 .header .nav{max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}
 .header .nav a{white-space:normal}
 .header .nav .btn{flex-shrink:0}
}
@media(max-width:780px){
 .hero h1,.ref-hero h1,.case h2,.legal-hero h1{overflow-wrap:break-word;hyphens:auto}
 .project-grid,.use-grid,.step-grid{min-width:0}
 .project,.project-bottom,.project-bottom>div{min-width:0}
 .cta-in,.cta-inner{min-width:0}
}
@media(max-width:520px){
 .container{max-width:100%}
 .header .brand{flex-shrink:0}
 .hero-art{max-width:100%;height:auto}
 .hero-copy .btn,.hero-actions .btn{max-width:100%}
 .case h2{font-size:clamp(2.1rem,10vw,3.1rem);overflow-wrap:anywhere}
 .cta h2{overflow-wrap:break-word}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
