/* ROSCHER V61 — unified premium editorial system */
:root{--v61-ink:#16211b;--v61-green:#91d800;--v61-cream:#f6f7f3;--v61-muted:#647069}
html{scroll-behavior:smooth}body{font-family:Inter,Arial,Helvetica,sans-serif;color:var(--v61-ink);-webkit-font-smoothing:antialiased}
body :is(h1,h2,h3){letter-spacing:-.035em;text-wrap:balance}body p{line-height:1.7}
:where(a,button,input,textarea,select):focus-visible{outline:3px solid #84c500!important;outline-offset:4px}
.unified-header,.header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.unified-links a,.links a{transition:color .2s ease,opacity .2s ease}
.unified-links a:hover,.links a:hover{color:#79b600}
.hero-architecture{min-height:min(90svh,850px)}.arch-hero-content{max-width:1100px}
.arch-hero-content h1{font-size:clamp(3rem,6.5vw,7rem)!important;line-height:1.03!important;letter-spacing:-.055em!important}
.arch-subtitle{max-width:580px;font-size:clamp(1.05rem,1.5vw,1.35rem)!important;line-height:1.6!important}
#modelle .cards{gap:clamp(22px,3vw,42px)!important}
#modelle .card{border:1px solid #e3e7e1!important;box-shadow:0 14px 45px rgba(18,30,21,.07)!important;background:#fff}
#modelle .card .body{padding:clamp(22px,3vw,40px)!important}
#modelle .card .body h3{font-size:clamp(1.55rem,2.2vw,2.2rem)!important;letter-spacing:-.045em}
#modelle .card .body p{max-width:54ch;color:#57625b}
#modelle .card .v52-open{font-size:12px!important;letter-spacing:.035em!important}
#modelle .card .v51-gallery-frame>img{object-fit:contain!important}
#modelle .card .v53-card-action{color:#17281d!important;font-size:15px!important}
#modelle .card .v53-card-action:hover{color:#5c8a00!important}
.v52-modal{backdrop-filter:blur(12px)}.v52-media img{object-fit:contain!important}
.v35-gallery-grid{gap:clamp(12px,2vw,26px)!important}
.v35-tile img{transition:transform .5s ease}.v35-tile:hover img{transform:scale(1.015)}
.contact a.cta,.cta{transition:transform .2s ease,box-shadow .2s ease}.cta:hover{transform:translateY(-2px)}
@media(max-width:740px){.arch-hero-content h1{font-size:clamp(2.6rem,10vw,4.4rem)!important}.arch-hero-content{padding-inline:20px}#modelle .card .body{padding:24px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* V69: Hero headline must never split individual words on mobile or desktop */
.hero-architecture .arch-hero-content{width:min(100%,1100px);min-width:0;box-sizing:border-box;padding-left:clamp(20px,5vw,72px);padding-right:clamp(20px,5vw,72px)}
.hero-architecture .arch-hero-content h1{font-size:clamp(30px,5.2vw,78px)!important;line-height:1.08!important;letter-spacing:-.045em!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;max-width:100%;text-wrap:balance}
.hero-architecture .arch-hero-content h1 em{display:block;white-space:nowrap;font-size:inherit}
@media(max-width:740px){.hero-architecture .arch-hero-content{padding-left:20px;padding-right:20px}.hero-architecture .arch-hero-content h1{font-size:clamp(27px,7.8vw,51px)!important;line-height:1.12!important;letter-spacing:-.045em!important}.hero-architecture .arch-hero-content h1 em{white-space:normal}}
@media(max-width:360px){.hero-architecture .arch-hero-content h1{font-size:27px!important;letter-spacing:-.055em!important}}
