/* Footer 2 (September 2026): eigene Klassen, damit keine der älteren .footer-Regeln greift.
   Aufbau: Marke mit Kurzprofil und Kontaktknopf, danach Kontakt, Unternehmen, Service, Rechtliches; darunter die Abschlusszeile. */
.site-footer{background:linear-gradient(110deg,#eee5dc,#f3ede7);border-top:1px solid var(--line);color:var(--taupe-800);text-align:left}
.site-footer .site-footer-main{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1.25fr) repeat(3,minmax(0,.8fr));gap:40px clamp(28px,3.5vw,56px);align-items:start;padding-block:64px 52px}
.site-footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:20px;max-width:330px}
.site-footer-logo{display:flex;align-items:center;gap:14px;width:100%;max-width:300px;text-decoration:none}
.site-footer-logo img:first-child{width:52px;height:auto;flex:0 0 52px}
.site-footer-logo span{width:1px;height:34px;background:#c4b4a2;flex:none}
.site-footer-logo img:last-child{width:calc(100% - 81px);max-width:220px;height:auto;min-width:0}
.site-footer-claim{margin:0;font-size:13px;line-height:1.7;color:var(--muted)}
.site-footer-cta{display:inline-flex;align-items:center;gap:14px;min-height:42px;padding:10px 18px;border-radius:8px;background:var(--taupe-600);color:#fff;font-size:12px;font-weight:600;text-decoration:none;transition:background .2s}
.site-footer-cta:hover{background:var(--taupe-700)}
.site-footer h2{margin:0 0 18px;font:600 10px/1.5 Inter,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--taupe-600)}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.site-footer li a{display:inline-flex;align-items:center;min-height:32px;font-size:13px;line-height:1.5;color:var(--taupe-800);text-decoration:none}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer a:focus-visible{outline:2px solid var(--taupe-500);outline-offset:4px;border-radius:2px}
.site-footer-contact{display:grid;gap:12px;font-style:normal}
.site-footer-contact .row{display:grid;grid-template-columns:18px minmax(0,1fr);column-gap:12px;align-items:start;font-size:13px;line-height:1.6;color:var(--taupe-800)}
.site-footer-contact svg{width:18px;height:18px;margin-top:2px;color:#836c4f}
.site-footer-contact a{overflow-wrap:anywhere;color:inherit;text-decoration:none}
.site-footer .site-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;border-top:1px solid #d1c6bb;padding-block:20px 24px;font-size:11px;line-height:1.6;color:var(--muted)}
.site-footer-bottom p{margin:0;color:var(--taupe-800);font-weight:500}
.site-footer-bottom nav{display:flex;flex-wrap:wrap;gap:0 22px}
.site-footer-bottom nav a{display:inline-flex;align-items:center;min-height:32px;color:var(--muted);text-decoration:none}
.site-footer-top{display:inline-flex;align-items:center;gap:8px}
@media(max-width:1100px){
 .site-footer .site-footer-main{grid-template-columns:repeat(4,minmax(0,1fr));padding-block:52px 44px}
 .site-footer-brand{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;max-width:none;gap:20px 32px;padding-bottom:32px;border-bottom:1px solid #d1c6bb}
 .site-footer-claim{flex:1 1 260px;max-width:420px}
}
/* Handy und Tablet (seit 2.15.2): immer zwei Bereiche nebeneinander – oben Kontakt und Unternehmen, darunter Service und
   Rechtliches. Alle vier mit gleicher Überschrift, gleichem Abstand darunter und gleicher Zeilenhöhe (38 px + 2 px). */
@media(max-width:760px){
 .site-footer .site-footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;padding-block:40px 36px}
 .site-footer-brand{flex-direction:column;align-items:flex-start}
 .site-footer-claim{flex:none}
 .site-footer-contact-col,.site-footer-main>nav{min-width:0}
 .site-footer h2{margin-bottom:8px}
 .site-footer ul,.site-footer-contact{gap:2px}
 .site-footer li a{min-height:38px;font-size:14px}
 .site-footer-contact .row{min-height:38px;align-items:center;font-size:14px}
 .site-footer-contact svg{margin-top:0}
 .site-footer-contact .row:has(br){align-items:start;padding-block:8px}
 .site-footer-contact .row:has(br) svg{margin-top:2px}
 .site-footer .site-footer-bottom{flex-direction:column;align-items:flex-start}
 .site-footer-bottom nav a{min-height:40px;font-size:12px}
}
/* Handy: halbe Spalten sind schmal – Schrift 13 px und schmalere Symbolspalte, damit auch die E-Mail-Adresse in eine Zeile passt. */
@media(max-width:480px){
 .site-footer .site-footer-main{column-gap:16px}
 .site-footer li a,.site-footer-contact .row{font-size:13px;line-height:1.6}
 .site-footer-contact .row{grid-template-columns:16px minmax(0,1fr);column-gap:8px}
 .site-footer-contact svg{width:16px;height:16px}
}
/* Kleine Handys (bis 380 px): etwas engerer Spaltenabstand, damit auch lange Übersetzungen einzeilig bleiben. */
@media(max-width:380px){.site-footer .site-footer-main{column-gap:12px}}
/* Sehr schmale Geräte (unter 340 px): Symbole im Kontaktblock ausblenden, zwei Spalten bleiben. */
@media(max-width:340px){
 .site-footer-contact .row{grid-template-columns:minmax(0,1fr)}
 .site-footer-contact svg{display:none}
}
