/* Layoutkorrekturen: lange Texte und Karten bleiben innerhalb ihrer Rahmen. */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:clip}
main,section,article,header,footer,nav,figure{min-width:0}
:is(.seo-wrap,.seo-article-grid,.seo-prose,.seo-cards,.seo-cards a,.seo-related-links,.seo-cta,.wonder-inner,.warm-photo-strip,.story-grid,.story-copy,.values-grid,.service-list,.service-list-new,.footer-top,.footer-bottom,.contact-grid,.contact-person,.stats,.hero-intro,.now-head,.now-lead){min-width:0;max-width:100%}
:is(.seo-cards a,.seo-cards h3,.seo-cards p,.seo-cards b,.seo-related-links a,.seo-cta p,.seo-prose p,.seo-prose li,.wonder p,.warm-quote,.story-copy p,.values-grid p,.footer p,.contact-person p){overflow-wrap:anywhere;word-break:normal;hyphens:auto}
:is(.seo-page-hero h1,.seo-services h2,.seo-cta h2,.seo-related h2,.wonder h2,.seo-prose h2){overflow-wrap:break-word;hyphens:auto;max-width:100%}
.seo-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.seo-cards a{min-width:0;overflow:hidden}
.seo-article-grid>*{min-width:0}
.seo-article figure img{max-width:100%;height:auto}
img,video,iframe{max-width:100%}
@media(max-width:1100px){.seo-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.seo-cards a{padding:clamp(16px,2.2vw,28px)}}
@media(max-width:760px){.seo-cards,.seo-article-grid,.warm-photo-strip{grid-template-columns:minmax(0,1fr)}.seo-page-hero h1{font-size:clamp(36px,8.5vw,62px)}.seo-cards a{min-height:0}.seo-related-links a{max-width:100%}}
@media(max-width:420px){.seo-page-hero{padding-left:20px;padding-right:20px}.seo-cta,.seo-related,.seo-article,.seo-services{padding-left:20px;padding-right:20px}.seo-page-hero h1{font-size:clamp(34px,9vw,44px)}.seo-prose{font-size:16px}}
