/* Waltmann Impressum – layout only; font sizes remain centralized in header.css */
.wm-impressum { background: #f9f8f5; padding: 32px 0 75px; color: #292723; }
.wm-impressum-shell { max-width: 1050px; margin: 0 auto; }
.wm-impressum-eyebrow { color: #8b7963; letter-spacing: .14em; font-weight: 600; margin-bottom: 12px; }
.wm-impressum-intro { max-width: 730px; color: #69645d; margin-bottom: 26px; line-height: 1.65; }
.wm-impressum-tabs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 0; }
.wm-impressum-tab { appearance: none; background: #f0ece5; border: 1px solid #ddd5ca; color: #4e473e; padding: 15px 22px; border-radius: 12px 12px 0 0; font-family: inherit; font-weight: 600; cursor: pointer; text-decoration: none !important; transition: background .2s, color .2s, border-color .2s; }
.wm-impressum-tab:hover { background: #e5ded4; }
.wm-impressum-tab[aria-selected="true"] { background: #786956; color: #fff; border-color: #786956; }
.wm-impressum-tab:focus-visible { outline: 2px solid #786956; outline-offset: 3px; }
.wm-impressum-content { background: #fffdf9; border: 1px solid #e5ded5; border-radius: 0 15px 15px 15px; padding: clamp(22px, 4vw, 48px); box-shadow: 0 8px 30px rgba(42, 34, 25, .045); }
.wm-impressum-panel[hidden] { display: none !important; }
.wm-impressum-panel { line-height: 1.7; }
.wm-impressum-heading { margin-top: 0; margin-bottom: 25px; color: #3a322a; text-decoration: none !important; }
.wm-impressum-panel p { margin-bottom: 16px; }
.wm-impressum-panel a:not(.btn) { color: #786956; text-decoration: none !important; }
.wm-impressum-panel a:not(.btn):hover { color: #554735; text-decoration: none !important; }
.wm-impressum-panel a[href]:not(.btn):not([href^="#"]):after { content: " ↗"; display: inline; }
.wm-impressum .contact-form-wrapper { background: #f7f4ef; border: 1px solid #e8e0d5; border-radius: 12px; padding: 24px 20px; }
.wm-impressum .form-control { border: 1px solid #d7cfc3; border-radius: 7px; background: #fff; box-shadow: none; min-height: 42px; }
.wm-impressum textarea.form-control { min-height: 130px; }
.wm-impressum .form-control:focus { border-color: #786956; box-shadow: 0 0 0 2px rgba(120,105,86,.12); }
.wm-impressum #kontakt_submit { background: #786956; color: #fff; border: 0; border-radius: 8px; padding: 11px 28px; }
.wm-impressum #kontakt_submit:hover { background: #5e503f; }
.wm-impressum .responsiveContainer { overflow: hidden; border-radius: 12px; border: 1px solid #e5ded5; }
#impressum_map { display: block; width: 100%; border: 0; height: 450px; }
@media(max-width: 650px) { .wm-impressum { padding-top: 22px; } .wm-impressum-tabs { gap: 7px; } .wm-impressum-tab { border-radius: 9px; padding: 11px 13px; flex: 1 1 42%; } .wm-impressum-content { border-radius: 12px; padding: 22px 16px; } .wm-impressum .contact-form-wrapper { padding: 18px 12px; } }
