/* Bestehende Gestaltung und Schriftgroessen auf schmalen Bildschirmen. */
@media (max-width: 600px) and (orientation: portrait) {
    body { background-size: auto 300px; background-position: center top; }
    #header { width: 100%; height: auto; padding: 14px 18px 16px; box-sizing: border-box; }
    #logo { float: none; width: 100%; height: auto; margin: 0; }
    #logo img { display: block; width: 100%; max-width: 250px; height: auto; margin: auto; }
    #headerbar { float: none; width: 100%; height: auto; margin: 225px 0 0; text-align: center; background: #fff; }
    #headerbar a { padding: 10px 7px; color: #555; text-shadow: none; }
    #site { height: auto; margin: 0; }
    #site .content, #site .content_02 { width: auto; padding: 0 20px; text-align: left !important; font-size: 16px; line-height: 1.5; }
    .box_small { display: flex; flex-direction: column; float: none; width: auto; margin: 0 0 30px !important; text-align: left; font-size: 14px; line-height: 1.5; }
    .box_small h4 { order: -1; margin: 0 0 18px; }
    .box_small_content { height: auto; }
    .box_small_content img { display: block; margin: 0 auto 20px !important; }
    .box_small_content br:first-of-type { display: none; }
    #Splash { width: 100%; height: auto; margin: 24px 0 0; }
    #splash_pager { position: static; display: flex; flex-direction: row-reverse; justify-content: space-between; width: 100%; height: auto; background: none; }
    #splash_pager span.pre, #splash_pager span.nex { float: none; width: auto; height: auto; padding: 9px 14px; margin: 0; background: #454545; border: 1px solid #777; border-radius: 5px; text-indent: 0; color: #fff; }
    #splash_pager span:focus-visible { outline: 2px solid #07ad0f; outline-offset: 3px; }
    .webprojekte img.pro { float: none; display: block; width: 100%; max-width: 300px; height: auto; margin: 0 auto 22px; }
    .webprojekte img.projekt-logo { aspect-ratio: 3 / 2; }
    .webprojekte .projekt-beschreibung { min-height: 0; }
    #nav { float: none; display: flex; flex-wrap: wrap; justify-content: center; margin-top: 15px; }
    #nav a { margin: 4px; }
    .sx-top-row { display: flex; justify-content: flex-end; clear: both; width: 100%; }
    .sx-top-row .link_to_header { float: none; margin: 15px 0; }
    .content_bg, .content_bg_01, .content_bg_02 { display: flow-root; }
    #impressum { margin-bottom: 0; padding-bottom: 0; }
    #impressum .content { padding-left: 20px; padding-right: 20px; font-size: 14px; }
    #impressum .sx-top-row { box-sizing: border-box; }
    #impressum .content > table, #impressum .content > table > tbody, #impressum .content > table > tbody > tr, #impressum .content > table > tbody > tr > td { display: block; width: 100%; }
    #impressum .content > table > tbody > tr > td:empty, #impressum .content > table > tbody > tr > td:first-child > br { display: none; }
    #impressum img { max-width: 100%; height: auto; }
    #impressum table table, #impressum table table tbody { display: block; width: 100%; }
    #impressum table table tr { display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 0 8px; margin-bottom: 4px; }
    #impressum td { font-size: 14px; line-height: 1.4; }
    #impressum table table td { display: block; width: auto; padding: 0; overflow-wrap: anywhere; }
    #impressum table table td:nth-child(2), #impressum table table tr.sx-empty-row { display: none; }
    #impressum table table td[colspan] { grid-column: 1 / -1; margin-top: 6px; }
    #impressum td.sx-empty-cell > br, #impressum .content > table > tbody > tr:last-child td > br:last-child { display: none; }
    #site > br { display: none; }
    #footer { position: static; height: auto; margin: 0; padding: 12px 14px; background: #353535; box-sizing: border-box; }
    #footer_innen { width: auto; padding: 0; }
    #footer_innen > div { float: none !important; }
    #footer_innen a { display: inline-block; padding: 7px 0; }
    .sx-domain-page .tab1, .sx-domain-page .tab2 { font-size: 16px; line-height: 1.5; }
    body.sx-domain-page { background-size: auto 300px; background-position: center top; }
    .sx-domain-page #header { height: auto; padding-bottom: 20px; }
    .sx-domain-page #headerbar { margin-top: 20px; }
    body.sx-privacy-page { background-size: auto 300px; background-position: center top; }
    .sx-privacy-page #header { height: auto; padding-bottom: 20px; }
    .sx-privacy-page #headerbar { margin-top: 20px; }
    .sx-privacy-page .content { overflow-wrap: anywhere; }
    .sx-domain-table { overflow-x: auto; }
    .sx-domain-table > table { min-width: 700px; }
}
