/* Mobile typography: scale long titles down on narrow phones; preserve desktop. */
@media(max-width:560px){
 main .section h2:not(.opening-hours h2){font-size:clamp(1.75rem,8.6vw,2.1rem);line-height:1.2;text-wrap:balance}
 main .section h2 span,main .live-participation h3{text-wrap:balance}
 .live-claim{text-wrap:balance}
 .section-heading{margin-bottom:28px}
 .intro-copy h2{margin-bottom:24px}
 .ah-participation-action{margin-top:22px}
 .ah-participation-action .button{margin-top:22px}
 .format-list>.button{max-width:100%;padding-inline:18px;font-size:.875rem}
 .live-participation .button{padding-inline:14px;font-size:.875rem}
 .footer-links{column-gap:20px;row-gap:0}
 .enquiry input,.enquiry select,.enquiry textarea,.newsletter input{font-size:16px}
}
@media(max-width:360px){
 .section{padding-block:52px}
 .section .eyebrow{letter-spacing:.07em}
 .live-participation{padding:20px}
 .ah-slide-copy{padding:16px}
 .newsletter-note,.form-note{overflow-wrap:anywhere}
}
@media(max-width:360px){html[lang^="de"] #intro-title{font-size:1.625rem}}
@media(max-width:560px){
 .legal-main h1{font-size:clamp(1.75rem,8vw,2.25rem);line-height:1.2;hyphens:auto;overflow-wrap:anywhere;text-wrap:balance}
 .legal-main a{overflow-wrap:anywhere}
}
