/* Lesbare Umbrüche für alle Sprachfassungen, ohne Wörter willkürlich zu zerlegen. */
h1,h2,h3,h4{word-break:normal!important;overflow-wrap:break-word;hyphens:auto!important;hyphenate-limit-chars:8 3 3}
.btn{white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:auto!important;text-align:center;min-height:44px;height:auto}
footer .foot-col a{word-break:normal!important;overflow-wrap:normal!important;hyphens:auto}
footer .logo, .mega-menu-locale{hyphens:none}
.language-switcher:not([open])>.language-switcher-menu{display:none}
@media(max-width:480px){
 footer .foot-grid{grid-template-columns:minmax(0,1fr)!important}
 footer .foot-col{min-width:0}
 footer .foot-col a{max-width:100%}
 .showcase-tab-name{font-size:.76rem!important;hyphens:auto!important;word-break:normal!important;overflow-wrap:normal!important}
 #app .scenarios{grid-template-columns:minmax(0,1fr)!important}
 #app .scenarios button{font-size:13px!important;min-height:54px!important;white-space:normal!important;overflow:visible!important}
 #app .scenarios button>span{display:inline-block;margin-right:10px}
}
@media(max-width:380px){
 .page-hero h1{font-size:clamp(1.9rem,9vw,2.4rem)!important}
 .btn{padding-inline:16px!important;font-size:.95rem!important}
}
/* NOVA: Illustrationsbreite an die tatsächliche Kartenbreite anpassen. */
.part-card>div{max-width:100%}
.brush-orange{max-width:100%;white-space:normal!important}
.hero-showcase-content>*{min-width:0}
.hero-review-score{flex-wrap:wrap}
.part-card .part-art{width:min(240px,100%)!important;min-width:0}
a[href^="mailto:"]{word-break:normal!important;overflow-wrap:anywhere;hyphens:none}
@media(max-width:380px){.hero-review-score{gap:12px}.hero-review-score .ref-btn{max-width:100%;white-space:normal}}
p,.st-ref-t,.pd-ll-tpl-s{hyphens:auto!important;hyphenate-limit-chars:8 3 3;word-break:normal}
.immo-prices{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.immo-price{min-width:0}
.immo-price-tag{max-width:calc(100% - 48px);white-space:normal;line-height:1.3}
@media(max-width:840px){.immo-prices{grid-template-columns:minmax(0,1fr)}}
@media(max-width:480px){.bgx-chips{grid-template-columns:minmax(0,1fr)!important}.pd-ll-tpls{grid-auto-columns:94px!important}}
@media(max-width:380px){.btn{font-size:.9rem!important}}

.showcase-tab-name{hyphens:auto!important;word-break:normal!important;overflow-wrap:break-word}

.brush{max-width:100%;white-space:normal!important}
.offer-card,.offer-card>*{min-width:0}
.offer-card .kicker{white-space:normal;overflow-wrap:break-word}
.offer-family,.offer-family-top>*{min-width:0}
.offer-family-top .kicker{white-space:normal;overflow-wrap:break-word}
.offer-family-top .offer-index{flex-shrink:0}

label strong{hyphens:auto!important;word-break:normal;overflow-wrap:break-word}
html[lang] body :is(h1,h2,h3,h4),html[lang] body .display{hyphens:auto!important;-webkit-hyphens:auto!important;hyphenate-limit-chars:8 3 3}
.blog-card-img-link>span{max-width:calc(100% - 20px);box-sizing:border-box;white-space:normal}
@media(min-width:481px) and (max-width:900px){footer .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
footer .foot-col a{hyphens:auto!important;-webkit-hyphens:auto!important}
.sp-footer,.sp-footer>div{flex-wrap:wrap;gap:20px}
.sp-footer a{white-space:nowrap;flex-shrink:0}
