/*
 * via-solutions.de: Darstellung für schmale Bildschirme (Wunsch tk, 27.10.2026).
 * Die alte Seite hatte eine feste Breite von 1010 px. Oberhalb von 1029 px gilt unverändert fileadmin/css/basic.css (1:1),
 * diese Regeln greifen nur darunter: Spalten untereinander, Menü per Knopf, Bilder und Tabellen auf Bildschirmbreite.
 */
.vso-mobil {
	display: none;
}

@media (max-width: 1029px) {
	body {
		font-size: 87.5%;
		background-image: none;
	}
	/* Reihenfolge: Kopf, Menü, Inhalt, rechte Spalte, dann linke Spalte (Wetter) und Funktionsmenü, Fuß */
	div#container {
		width: auto;
		background: none;
		display: flex;
		flex-direction: column;
	}
	div#menuleft,
	div#leftborder {
		display: contents;
	}
	#umenue {
		order: 1;
	}
	div#contbox {
		order: 2;
	}
	div#contentleft {
		order: 3;
		margin-top: 15px !important;
	}
	div#fktmenue {
		order: 4;
	}
	div#footer {
		order: 5;
	}
	div#header1 {
		position: static;
	}
	div#datum {
		width: auto;
		padding: 5px 10px 0 0;
	}
	div#header2 img {
		width: 100%;
		height: auto;
	}

	/* linke Spalte (Menü, Wetter, Funktionsmenü) über dem Inhalt */
	div#menuleft,
	div#contbox,
	#boxleft,
	#boxright {
		float: none;
		width: auto;
		background-image: none;
	}
	div#leftborder {
		margin-top: 0;
		background: none;
	}
	#umenue,
	div#contentleft {
		width: auto;
		margin: 0;
		padding: 0;
		background: none;
	}
	.start {
		width: auto;
	}
	.vso-menue-knopf {
		display: block;
		background: #00468a;
		color: #ffffff;
		font-size: 14px;
		font-weight: bold;
		padding: 10px 15px;
		cursor: pointer;
		border-bottom: 1px solid #b0b2b7;
	}
	.vso-menue-knopf::before {
		content: "\2630\00a0\00a0";
	}
	#umenue ul#subNav {
		display: none;
	}
	#vso-menue-schalter:checked ~ ul#subNav {
		display: block;
	}
	#umenue ul,
	#umenue ul ul {
		font-size: 14px;
	}
	#subNav li a,
	.subNav-cur {
		padding-top: 10px;
		padding-bottom: 8px;
	}
	/* Wetter: nur auf der Startseite (alt linke Spalte), unter dem Menü zentriert */
	div#contentleft h3 {
		margin-top: 0;
	}
	div#contentleft .wcom-default {
		margin: 10px auto !important;
	}
	div#fktmenue {
		float: none;
		width: auto;
		height: auto;
		padding: 8px 10px;
		background: #f3f5f7;
		text-align: left;
	}
	div#fktmenue ul {
		padding: 0;
	}
	div#fktmenue ul li {
		float: none;
		display: inline-block;
	}
	div#fktmenue ul li a {
		float: none;
		display: inline;
	}

	/* Inhalt */
	#headerboxleft {
		background: none;
		height: auto;
		overflow: hidden;
		border-bottom: 1px solid #b0b2b7;
	}
	#pfad,
	#back {
		padding-top: 8px;
		padding-bottom: 6px;
		height: auto;
	}
	#boxleft {
		text-align: left;
	}
	#boxlin {
		margin: 0 10px;
		padding-right: 0;
	}
	#boxlin p[align="justify"] {
		text-align: left;
	}
	#boxlin .imageblock,
	#boxlin .imageCol,
	#boxlin .image,
	#boxlin .csc-caption {
		max-width: 100% !important;
		box-sizing: border-box;
	}
	#boxlin .imageblock[style*="float"] {
		float: none !important;
		margin: 0 0 10px 0 !important;
	}
	#boxlin .imageCol {
		float: none !important;
		margin-left: 0 !important;
	}
	#boxlin .imageCol .image {
		margin-bottom: 5px;
	}
	#boxlin img {
		max-width: 100%;
		height: auto;
	}
	#boxlin table {
		width: 100% !important;
		max-width: 100%;
	}
	#boxlin table.csc-uploads td,
	#boxlin .csc-uploads a {
		word-break: break-word;
	}
	#boxlin iframe,
	#boxlin #map {
		max-width: 100%;
	}
	#druck {
		margin: 5px 10px 0 10px;
	}

	/* rechte Spalte: Suche und Kästen unter dem Inhalt, mittig */
	#boxright {
		margin: 15px auto 0 auto;
		width: 224px;
		background: none;
	}
	#boxrin {
		padding-top: 0;
	}
	div#footer {
		background: none;
		height: auto;
		padding: 10px;
		text-align: center;
	}
}
