/* Zusatz-Styles für die überarbeitete Kontaktseite (ergänzt hno_styles.css) */
.infobox {
    background: rgb(240,244,248);
    border-left: 4px solid #297dab;
    padding: 20px 24px;
    margin: 0 0 30px 0;
}
.infobox.akut { border-left-color: #9c1f57; }
.infobox h3 { margin-bottom: 10px; }
.infobox p, .infobox li { text-align: left; hyphens: manual; }
.infobox p { margin-bottom: 12px; }
.infobox p:last-child { margin-bottom: 0; }
.infobox ul { margin: 0 0 0 1.2em; }
.infobox ul li { list-style: disc; color: #505d5d; font-size: 1.1em; line-height: 170%; padding: 1px 0; }
.infobox table { width: auto; margin: 0 0 12px 0; background: transparent; border: 0; }
.infobox table td { padding: 2px 24px 2px 0; border: 0; background: transparent; }
.infobox p a, .infobox p a:visited { text-transform: none; font-size: 1em; }

/* Längere Beschriftung der Online-Termin-Buttons (Akut / Selbstzahler) */
#shortcuts-u .termin { width: auto; min-width: 120px; }

.infobox table td { white-space: nowrap; }

/* Komfortsprechstunde-Feld */
.komfort { background: rgb(240,244,248); border-radius: 18px; padding: 28px 32px; margin: 30px 0 10px 0; text-align: center; }
.komfort h3 { text-align: center; margin-bottom: 12px; color: #297dab; }
.komfort p { text-align: center; hyphens: manual; margin-bottom: 14px; }
.komfort ul { list-style: none; margin: 0 0 18px 0; padding: 0; }
.komfort ul li { text-align: center; color: #505d5d; font-size: 1.1em; line-height: 170%; padding: 1px 0; }
.komfort p a.knopf, .komfort p a.knopf:visited { color: #fff; font-size: 0.95em; }
a.knopf, a.knopf:visited {
    display: inline-block;
    background: #9c1f57;
    color: #fff;
    text-transform: uppercase;
    font-size: 0.95em;
    padding: 10px 22px;
    border-radius: 30px;
    text-decoration: none;
}
a.knopf:hover { background: #297dab; color: #fff; }

/* Schwebender Hinweis: Komfortsprechstunde */
.komfort-hinweis { position: fixed; top: 138px; left: 50%; transform: translateX(-50%); z-index: 450; width: max-content; max-width: 94vw; }
.komfort-hinweis[hidden], .kh-panel[hidden] { display: none; }
.komfort-hinweis, .komfort-hinweis * { font-family: poppins, sans-serif; }
.kh-bar { display: flex; align-items: center; justify-content: center; background: #fff; border: 1px solid rgba(156,31,87,.35); border-radius: 999px; box-shadow: 0 2px 10px rgba(0,0,0,.15); padding: 4px 6px 4px 10px; min-width: 380px; }
.kh-toggle, .kh-close { background: none; border: 0; cursor: pointer; color: #9c1f57; margin: 0; }
.kh-toggle { font-size: 1em; font-weight: 500; line-height: 1.3; padding: 8px 12px; text-align: left; flex: 1; }
.kh-close { font-size: 1.3em; line-height: 1; padding: 2px 8px; color: #5c5964; }
.kh-toggle:hover, .kh-close:hover { color: #297dab; }
.kh-panel { background: #fff; border-radius: 14px; box-shadow: 0 4px 16px rgba(0,0,0,.2); padding: 18px 24px 20px; margin-top: 8px; width: 440px; max-width: 94vw; margin-left: auto; margin-right: auto; text-align: left; }
.kh-panel p { text-align: left; font-size: 1em; margin: 0 0 6px 0; hyphens: manual; }
.kh-panel ul { list-style: disc; margin: 0 0 12px 1.2em; padding: 0; }
.kh-panel ul li { font-size: 1em; line-height: 150%; color: #505d5d; padding: 1px 0; }
.kh-panel a.knopf, .kh-panel a.knopf:visited { font-size: 0.9em; padding: 10px 22px; color: #fff; }
@media (max-width: 640px) { .komfort-hinweis { top: 144px; } .kh-bar { min-width: 0; } .kh-toggle { font-size: 0.9em; } }
