/* Consistent, restrained interactions. Transforms leave layout dimensions intact. */
.quick-grid>a{grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;column-gap:13px;row-gap:0}
.quick-grid>a>i:first-child{grid-column:auto;justify-self:start;font-size:24px}
.quick-grid>a>span{min-width:0;overflow-wrap:anywhere}
.quick-grid>a>.arrow{justify-self:end}
.header .topphone{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:750;line-height:1.3}
.header .rs-phone-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:27px;height:27px;border-radius:50%;background:var(--wine);color:#fff;font-size:13px;transform-origin:50% 50%;animation:rs-phone-ring 9s ease-in-out infinite}
@keyframes rs-phone-ring{0%,82%,100%{transform:rotate(0)}84%,88%{transform:rotate(-14deg)}86%,90%{transform:rotate(14deg)}92%{transform:rotate(-7deg)}94%{transform:rotate(0)}}
.brand a{display:block;transition:transform .22s ease;transform-origin:center}
:is(.button,.melden,.page-cta-button,.elementor-button,.wp-block-button__link,.mega-cta,.quick-grid>a,.news-card,.rs-review-card,.languages summary,.socials a,.menu-toggle,.submenu-toggle){transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease}
:is(.linklist a,.readmore,.rs-review-readmore,.mega-links a,.menu a,.footer a){transition:transform .2s ease,color .2s ease,background-color .2s ease}
:is(.button,.melden,.readmore,.rs-review-readmore,.linklist a,.quick-grid>a) i{transition:transform .2s ease}
:is(#main,.footer) form :is(input[type=submit],input[type=button],button[type=submit],button:not([type])){transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
:is(.brand a,.button,.melden,.quick-grid>a,.linklist a,.news-card>a,.readmore,.rs-review-readmore,.socials a,.elementor-button,.wp-block-button__link):focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.linklist a:focus-visible{background:#e6eff5;color:var(--blue);transform:translateX(3px)}
@media(hover:hover) and (pointer:fine){
.brand a:hover{transform:translateY(-2px) scale(1.025)}
:is(.button,.melden,.elementor-button,.wp-block-button__link):hover{transform:translateY(-2px);box-shadow:0 7px 15px #17344d20}
.welcome .button:hover{background:#edf3f7;color:var(--wine)}
:is(.quick-grid>a,.news-card,.rs-review-card):hover{transform:translateY(-4px);box-shadow:0 9px 22px #17344d14}
.linklist a:hover{transform:translateX(4px);background:#e6eff5;color:var(--blue)}
:is(.readmore,.rs-review-readmore):hover{transform:translateX(3px);color:var(--wine)}
:is(.button,.linklist a,.quick-grid>a,.readmore,.rs-review-readmore):hover .fa-arrow-right{transform:translateX(4px)}
.socials a:hover{transform:translateY(-2px) scale(1.12);color:var(--wine)}
:is(.mega-cta,.menu-toggle,.submenu-toggle):hover{transform:translateY(-1px);background-color:#edf3f7}
.mega-links a:hover{transform:translateX(3px)}
.languages summary:hover,.footer a:hover{color:var(--wine)}
:is(#main,.footer) form :is(input[type=submit],input[type=button],button[type=submit],button:not([type])):hover{transform:translateY(-2px);box-shadow:0 7px 15px #17344d20}
}
@media(max-width:1100px){.header .topphone{font-size:15px;gap:6px}}
@media(max-width:600px){.header .topphone{font-size:13px;gap:5px}.header .rs-phone-icon{width:22px;height:22px;font-size:11px}.quick-grid>a{grid-template-columns:25px minmax(0,1fr) 14px;column-gap:10px}.quick-grid>a>i:first-child{font-size:22px}}
@media(max-width:360px){.header .top-contact{gap:8px}.header .top-contact .socials{gap:8px}.header .topphone{font-size:12px}}
@media(prefers-reduced-motion:reduce){.header .rs-phone-icon{animation:none}:is(.brand a,.button,.melden,.page-cta-button,.elementor-button,.wp-block-button__link,.mega-cta,.quick-grid>a,.news-card,.rs-review-card,.languages summary,.socials a,.menu-toggle,.submenu-toggle,.linklist a,.readmore,.rs-review-readmore,.mega-links a,.menu a,.footer a),:is(.button,.melden,.readmore,.rs-review-readmore,.linklist a,.quick-grid>a) i,:is(#main,.footer) form :is(input[type=submit],input[type=button],button[type=submit],button:not([type])){transition:none!important;transform:none!important}}
