header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
/* Open Sans Variable 3.003 (Fontsource 5.3.0), Gewicht 300-800, SIL Open Font License 1.1 */

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 300 800;
  src: url('../../files/System/Layout/fonts/open-sans-latin-ext-wght-normal.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 300 800;
  src: url('../../files/System/Layout/fonts/open-sans-latin-wght-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-display: swap;
  font-weight: 300 800;
  src: url('../../files/System/Layout/fonts/open-sans-latin-ext-wght-italic.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-display: swap;
  font-weight: 300 800;
  src: url('../../files/System/Layout/fonts/open-sans-latin-wght-italic.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

@font-face {
	font-family: 'icomoon';
	src:url('../../files/System/Layout/icons/fonts/icomoon.eot');
	src:url('../../files/System/Layout/icons/fonts/icomoon.eot?#iefix') format('embedded-opentype'),
		url('../../files/System/Layout/icons/fonts/icomoon.svg#icomoon') format('svg'),
		url('../../files/System/Layout/icons/fonts/icomoon.woff') format('woff'),
		url('../../files/System/Layout/icons/fonts/icomoon.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

/* Use the following CSS code if you want to use data attributes for inserting your icons */
[data-icon]:before {
	font-family: 'icomoon';
	content: attr(data-icon);
	speak: none;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
}

/* Use the following CSS code if you want to have a class per icon */
[class^="icon-"]:before, [class*=" icon-"]:before {
	font-family: 'icomoon';
	font-style: normal;
	speak: none;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
}
.icon-user:before {
	content: "\22";
}
.icon-phone:before {
	content: "\23";
}
.icon-arrow-up:before {
	content: "\25";
}
.icon-cancel:before {
	content: "\26";
}
.icon-printer:before {
	content: "\24";
}
.icon-printer-2:before {
	content: "\27";
}
.icon-mobile:before {
	content: "\28";
}
.icon-email:before {
	content: "\29";
}
.icon-home:before {
	content: "\2a";
}
.icon-at:before {
	content: "\2b";
}
.icon-globe:before {
	content: "\2c";
}
.icon-file-pdf:before {
	content: "\2d";
}
.icon-search:before {
	content: "\2e";
}
.icon-rss:before {
	content: "\2f";
}
.icon-download:before {
	content: "\30";
}


/*
	Variable Grid System.
	Learn more ~ http://www.spry-soft.com/grids/
	Based on 960 Grid System - http://960.gs/

	Licensed under GPL and MIT.
*/

/*
  Forces backgrounds to span full width,
  even if there is horizontal scrolling.
  Increase this if your layout is wider.

  Note: IE6 works fine without this fix.
*/

body {
  background: url("../../files/System/Bilder/bg.png");
  font-family: "Open Sans", Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 1em;
  line-height:1.6em;
  hyphens: auto;
  color:#000;
}

html, body {height: 100%;}
#wrap {min-height: 100%;}
#wrap .container {overflow:auto; padding-bottom: 18em;}

/*Opera Fix*/
body:before {
	content:"";
	height:100%;
	float:left;
	width:0;
	margin-top:-32767px;/
}

/* Containers
----------------------------------------------------------------------------------------------------*/
.container {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	width: 100%;
	max-width: 1300px;
	padding: 0 40px;
}

/* Grid >> Global
----------------------------------------------------------------------------------------------------*/


.grid_1,
.grid_2,
.grid_3,
header,
aside,
footer {
	position: relative;
}

.grid_1, aside {width:32%;}
.grid_2 {width:64%;}
.grid_3, footer, header {width:100%;}


/* `Clear Floated Elements
----------------------------------------------------------------------------------------------------*/

/* http://sonspring.com/journal/clearing-floats */

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

/* http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */

.clearfix:before,
.clearfix:after {
  content: '\0020';
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix:after {
  clear: both;
}

/*
  The following zoom:1 rule is specifically for IE6 + IE7.
  Move to separate stylesheet if invalid CSS is a problem.
*/

.clearfix {
  zoom: 1;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
    font-size: 1.2em;
    padding-right: 0.5em;
}

header {margin-bottom:1em}
#topMenu {background-color:#a4a4a4;background-color: rgba(0, 0, 0, 0.3);-webkit-border-radius: 0px 0px 10px 10px;border-radius: 0px 0px 10px 10px;color:#fff;padding: 0.3em 1.3em 0.5em;position:absolute;right:0;top:0;z-index:10;font-size:.9em;white-space:nowrap}
#topMenu a {color:#fff; padding-right:2em}
#topMenu a:hover {color:#00963e}

#logo {background: url("../../files/System/Bilder/Logo-Teichert.png") no-repeat;width:360px;height:97px;overflow:hidden;position:absolute;left:0;top:39px}

#content, aside {-webkit-box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.2);box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.2);background:#fff}
.mod_breadcrumb {
background: #e3e3e3; /* Old browsers */
background: -moz-linear-gradient(top,  #e3e3e3 0%, #f6f6f6 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e3e3e3), color-stop(100%,#f6f6f6)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #e3e3e3 0%,#f6f6f6 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #e3e3e3 0%,#f6f6f6 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #e3e3e3 0%,#f6f6f6 100%); /* IE10+ */
background: linear-gradient(to bottom,  #e3e3e3 0%,#f6f6f6 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e3e3e3', endColorstr='#f6f6f6',GradientType=0 ); /* IE6-9 */
border-bottom:1px solid #ebebeb}

.mod_breadcrumb {
padding: .55em 1.5em;
font-size:.9em}

.mod_search { height: 41px; }
.mod_search .submit {display:none}
aside .mod_search form {margin-bottom:0;}
aside .mod_search .formbody { display: block; }
aside .mod_search .widget-text {width: 100%;}
aside .mod_search input[type=search] {
	border: none;
    border-radius: 20px 20px 20px 20px;
    /*color: #BBBBBB;*/
    font-size: 0.8em;
    height: 25px;
    margin: 8px 5%;
    text-indent: 1.5em;
    width: 86%;
}

#suchergebnisse .mod_search input[type=search] {
	border: 1px solid #bbb;
    border-radius: 20px 20px 20px 20px;
    color: #BBBBBB;
    font-size: 0.8em;
    height: 20px;
    padding: 5px 2%;
    text-indent: 1.5em;
    width: 96%;
	margin-bottom:1em;
}
.radio_container span {padding-right:2em}
#suchergebnisse h3 a {font-size:1.8em;}
#suchergebnisse h3 {margin-top:2em}
.highlight, .error {color:#870055;font-weight: 700}

.mod_breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; margin: 0; padding: 0; list-style: none; line-height: 1.5; }
.mod_breadcrumb li { margin: 0; padding: 0; list-style: none; display: flex; align-items: center; }
.mod_breadcrumb li + li::before { content: ""; width: .4em; height: .4em; margin: 0 .75em 0 .55em; border-top: 1.5px solid #999; border-right: 1.5px solid #999; transform: rotate(45deg); }
.mod_breadcrumb a { text-decoration: none; }
.mod_breadcrumb a:hover { text-decoration: underline; }
.mod_breadcrumb .active { color: #000; font-weight: 700; }

.mod_article {padding:2em 1.5em}

.info {border-bottom:1px solid #bbb; color:#bbb;margin-bottom:0.1em; font-size:.9em}
.layout_short h3 {margin:0 0 .8em; text-align:right; font-size:1.5em}
.layout_short h3 a {color:#004c90}
.teaser, .more {font-size:.8em;line-height:1.5em}
.more {text-align:right;margin-bottom:2em}

footer {background-color:#a4a4a4;background-color: rgba(0, 0, 0, 0.3);-webkit-box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.2);box-shadow:  0px 0px 15px 0px rgba(0, 0, 0, 0.2);margin-top:-15em; color:#fff; font-size:.9em;line-height:1.5em}
#footerwrap {margin: 1em 1.5em; background: url("../../files/System/Bilder/Logo_Footer.png") no-repeat bottom left;height:13em}
.footerAdress {text-align:right; position:absolute;right:1.5em;top:1em;z-index:10}
footer p {margin-bottom: .4em}
.toTop {position:absolute;bottom:1em;right:1.5em;z-index:10}

.captcha_text {display:block}

/*
######################################################
Typo
######################################################
*/

a {color: #00963e;text-decoration: none; transition: all ease .3s;}
a:hover {color: #000;text-decoration: none;}
footer a {color: #fff;}

::selection {background-color: #004c90;color: #FFFFFF;}
::-o-selection {background-color: #004c90;color: #FFFFFF;}
::-moz-selection {background-color: #004c90;color: #FFFFFF;}
::-webkit-selection {background-color: #004c90;color: #FFFFFF;}

p {margin: 0 0 0.8em}
p.short {margin-bottom:0}
.small {font-size:.9em; line-height:1.5em}
h1, h2, h3 {font-weight: 700;line-height: 1.2em;margin: 0;padding: 0;-webkit-hyphens: none;-moz-hyphens: none;-ms-hyphens: none;hyphens: none; color: #004c90;font-style:italic}


h1, aside h2 {font-size: 2.4em;margin: 1em 0 0.7em; clear:both;}
#startseite h1 {font-size: 1.8em;margin: 0 0 0.6em;}
h2 {font-size: 1.8em;margin: 1.5em 0 0.6em;}
h3 {font-size: 1.05em;margin: 0.5em 0 0.1em;color:#444;}

.layout_full h1, h1:first-child, h2:first-child, h3:first-child {margin-top:0}
aside h2 {text-align:right;}


blockquote {display: block;margin: 1.5em 3em 1em; position:relative}

strong, b {font-weight: 700}
abbr, .abbr {border-bottom: dashed 1px #444; cursor: help;}
video {width:100%;height:auto;margin-top:39px}

.mod_article ul, .mod_article ol {margin: .5em 0 1.1em}
.mod_article ol li {list-style-type:decimal}
.mod_article ol li {list-style-type:decimal-leading-zero;margin-left: 1.9em;padding: 0 0.1em 0.5em;}
.mod_article ul li {margin-left: 1.5em;padding: 0 0.2em 0.3em;}
.mod_article ul li {list-style-type:circle}

dl {margin: 0 auto;padding: 1em 0;width: 90%;}
dt {background: #F4F4F4;border: 1px solid #999999;border-radius: 8px 8px 8px 8px;clear: left;float: left;margin-bottom: 2em;padding: 0.5em;width: 30%;}
dd {margin: 0 0 2em 40%;padding: 0;}

code {padding:1em;}
pre {font:1em/1.2em 'courier new',courier,monospace;background:#ddd;padding:1em;margin:0 0 1em 0;overflow:auto;}

table {border-collapse: collapse;margin: 0.3em 0 1em;text-align: left;width: 100%;border:hidden}
caption {padding: .2em .8em 1em;border-bottom: 1px solid #ccc;}
th, td {padding: .4em .8em;border: none;vertical-align: top;}
th:first-child, td:first-child {padding-left:0}
th:last-child, td:last-child {padding-right:0}
th {text-align:center; font-weight: 700;}
caption {font-size: 1.1em;margin-left: -1px; /* Fix FF 1px issue */}
html:first-child caption { /* Opera only */ margin-left: 0;}
table p {margin: 0 0 0.3em;}

.formbody { display: flex; flex-wrap: wrap; justify-content: space-between; }
.formbody .widget { margin-bottom: 1.5em; }
.formbody .widget-text { width: 48%; display: inherit; }
.formbody .widget-textarea { width: 100%; display: inherit; }
.formbody label { display: none; }
.formbody input, .formbody textarea { width: 100%; padding: .2em .8em; border: 1px solid #4b4b4b; border-radius: 15px; }

.formbody .widget-checkbox { width: 100%; }
.formbody .widget-checkbox fieldset span { display: flex; }
.formbody .widget-checkbox label { display: block; }
.formbody .widget-checkbox input { width: auto; margin: .4em 1em auto 0; }

.formbody .widget-submit { margin-left: auto; }
.formbody .widget-submit button { background: #00963e; color: #fff; font-weight: bold; padding: .5em 1.5em; border-radius: 25px; border: none; cursor: pointer; transition: all ease .3s; }
.formbody .widget-submit button:hover { background: #005624; }

figure {display:inline-block;width:100%;text-align:center;margin:1em 0 .5em;vertical-align: top;}
figure.float_left { float: left; max-width: 250px; margin: 0 1em 1em 0; }
figure.float_right { float: right; max-width: 250px; margin: 0 0 1em 1em; }
img { max-width: 100%; height: auto; }
.ce_gallery {margin: 2em 0}
.ce_gallery figure {width: auto;} 
.ce_gallery img {-webkit-box-shadow:  3px 3px 5px 0px rgba(100, 100, 100, 1);box-shadow:  3px 3px 5px 0px rgba(100, 100, 100, 1);}

.imglinks {float:left;margin:0.4em 1em 0 0}

.toggler {display:block;padding:.7em 1em;cursor:pointer;border:1px solid #ccc;margin-top:.8em;position:relative; clear:both;}
.toggler, ul.org li a {-webkit-border-radius: 10px;border-radius: 10px;
background: #f7f7f7;
background: -moz-linear-gradient(top,  #f7f7f7 0%, #e0e0e0 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7f7f7), color-stop(100%,#e0e0e0));
background: -webkit-linear-gradient(top,  #f7f7f7 0%,#e0e0e0 100%);
background: -o-linear-gradient(top,  #f7f7f7 0%,#e0e0e0 100%);
background: -ms-linear-gradient(top,  #f7f7f7 0%,#e0e0e0 100%);
background: linear-gradient(to bottom,  #f7f7f7 0%,#e0e0e0 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#e0e0e0',GradientType=0 );
}
.toggler_active {} 
.accordion {padding:1em 1.2em 1.8em}
.toggler span {font-size:0.9em;display:block;color:#888}
.toggler.toggler_active span, .toggler:hover span {color:#aaa}

.accordion figure img {margin: 1em 0; width:auto}
img.imgsmall {width: 45%; margin: 4px 0 4px 1em;float:right;position:relative;z-index:2}
img.imgfull {width:100%; height:auto; margin:4px 0 4px}
.pic2 figure {width: 30%;float:left;margin:1em 10%}
.pic3 figure {width: 23.33%;float:left;margin:1em 5%}
figcaption {text-align:center; font-size:.8em;line-height:1.5em}



/*
######################################################
Hautpmenü
######################################################
*/


#main ul:before,#main ul:after {content: "";display: table;}
#main ul:after {clear: both;}
#main ul {zoom: 1; text-align:right;margin-top:7em}

#main ul li {display:inline}

#main ul li a {padding: .5em .4em;color: #004c90;font-size: 1.2em;font-style:italic;font-weight: 700;outline: none;}
#main ul li:last-child a {padding-right:0} 
#main ul li:hover a, #main ul li.trail a, #main ul li.active a {color: #00963e;}



/*
######################################################
Submenü
######################################################
*/

#sub ul {margin-bottom:0}

#sub li {display:block;	border-bottom: 1px solid #ccc;	margin: 0; padding: 0;}
#sub li:last-child {border-bottom: none;}

#sub li a {
	padding: 18px 25px;
	display:block;
	text-decoration:none;
    -webkit-transition-duration: .3s;
    -moz-transition-duration: .3s;
    transition-duration: .3s;
    -moz-transition-property: background-color;
	color:#000;
	font-size:1.1em;
}

#sub li:hover a, #sub li a:hover, #sub li.active a  {
	background-color:#eee;background-color: rgba(0, 0, 0, 0.05);
}



/*
######################################################
Footermenü
######################################################
*/

footer ul li {margin-bottom:.4em}
footer ul li {float:left}
footer ul li.first {clear:left}
footer ul li a {border-right: 1px solid #ccc; border-left: 1px solid #777; padding:0 1em}
footer ul li.first a {border-left:none; padding-left:0; color:#777; font-weight: 700}
footer ul li.first a:hover {color:#000;}
footer ul li.last a {border-right:none; padding-right:0}


/*
######################################################
Cookiebar
######################################################
*/

.cookiebar { background-color: rgba(75,75,75,.8); padding: 1em 1.2em; }
.cookiebar__message { margin-right: 0; }
.cookiebar__link { color: #01ce56; text-decoration: none; }
.cookiebar__link:hover { color: #00963e; }
.cookiebar__button { background-color: #00963e; border-radius: 25px; transition: all ease .3s; padding: .6em 2em; }
.cookiebar__button:hover {}

/*
######################################################
sonstiges
######################################################
*/


.invisible {display:none}


/*
######################################################
Contao 5 / Responsive (Update 2026-10)
######################################################
*/

*, *::before, *::after { box-sizing: border-box; }

/* Bilder neben Text (Contao 5 Markup) */
.content-text::after { content: ""; display: table; clear: both; }
.media--right > figure { float: right; width: auto; max-width: 45%; margin: .3em 0 1em 1.5em; }
.media--left > figure { float: left; width: auto; max-width: 45%; margin: .3em 1.5em 1em 0; }

/* Galerie (Contao 5 Markup) */
.content-gallery { margin: 2em 0; }
.content-gallery { --cols: 4; }
.content-gallery--cols-1 { --cols: 1; }
.content-gallery--cols-2 { --cols: 2; }
.content-gallery--cols-3 { --cols: 3; }
.content-gallery--cols-4 { --cols: 4; }
.content-gallery--cols-5 { --cols: 5; }
.content-gallery--cols-6 { --cols: 6; }
.mod_article .content-gallery > ul { display: grid; grid-template-columns: repeat(var(--cols), minmax(0, 1fr)); gap: 1.8em 1.5em; margin: 0; padding: 0; }
.mod_article .content-gallery > ul > li { list-style: none; margin: 0; padding: 0; display: flex; }
.content-gallery figure { margin: 0; width: 100%; display: flex; flex-direction: column; align-items: center; }
.content-gallery figure > a { display: block; }
.content-gallery figure img { display: block; margin: 0 auto; transition: transform ease .3s, box-shadow ease .3s; }
.content-gallery a[data-lightbox] img { box-shadow: 0 2px 8px rgba(0, 0, 0, .25); border-radius: 3px; }
.content-gallery a:hover img { transform: translateY(-2px); }
.content-gallery figcaption { margin-top: .6em; }

/* Seitenleiste nur so hoch wie ihr Inhalt */
aside { align-self: flex-start; }

/* Footer */
footer nav { max-width: calc(100% - 20em); }
footer nav ul { display: flex; flex-wrap: wrap; margin: 0 0 .4em; }
footer ul li, footer ul li.first { float: none; clear: none; }
footer ul li a { display: inline-block; }
footer { background-color: rgba(45, 45, 45, .72); }
footer ul li a { border-right-color: rgba(255,255,255,.35); border-left-color: rgba(0,0,0,.35); }
footer ul li:first-child a { border-left: none; padding-left: 0; color: #fff; font-weight: 700; }
footer a:hover, footer ul li:first-child a:hover { color: #01ce56; }
footer ul li:last-child a { border-right: none; }

/* Cookiebar */
.cookiebar__button { color: #fff; border: none; cursor: pointer; }
.cookiebar__button:hover { background-color: #005624; }

/* Tablet */
@media (max-width: 1000px) {
	.container { padding: 0 20px; }
	header { display: flex; flex-direction: column; align-items: center; padding-top: 3.2em; }
	#topMenu { left: 50%; right: auto; transform: translateX(-50%); }
	#logo { position: static; max-width: 100%; background-size: contain; background-position: center; }
	#main ul { margin-top: 1em; text-align: center; }
	#main ul li { display: inline-block; }
	.grid_2, .grid_3, aside { width: 100%; }
	aside { margin-top: 2em; }
	#wrap .container { padding-bottom: 2em; }
	footer { margin-top: 0; }
	#footerwrap { height: auto; padding-bottom: 5em; background-size: 220px auto; }
	.footerAdress { position: static; text-align: left; margin-bottom: 1.2em; }
	footer nav { max-width: none; }
	.toTop { bottom: 1.5em; }
	.content-gallery--cols-4, .content-gallery--cols-5, .content-gallery--cols-6 { --cols: 3; }
}

/* Smartphone */
@media (max-width: 600px) {
	body { font-size: .95em; }
	.container { padding: 0 10px; }
	#topMenu { font-size: .8em; padding: .3em 1em .5em; }
	#topMenu a { padding-right: 1em; }
	#main ul li a { font-size: 1.05em; padding: .4em .5em; }
	.mod_article { padding: 1.5em 1em; }
	h1, aside h2 { font-size: 1.7em; }
	#startseite h1 { font-size: 1.45em; }
	h2 { font-size: 1.4em; }
	.mod_breadcrumb { padding: .5em 1em; }
	.formbody .widget-text { width: 100%; }
	.media--right > figure, .media--left > figure { float: none; max-width: 100%; margin: 1em 0; }
	.content-gallery { --cols: 2 !important; }
	footer ul li a { padding: 0 .6em; }
}

/* eingebettete Inhalte (Karte, mobile.de) */
iframe { max-width: 100%; border: 0; }

/* Hinweis-Box mobile.de (Verkauf) */
.mobilede-box { margin: 2em 0 1em; padding: 1.5em 1.8em; background: #f4f7fa; border-left: 4px solid #004c90; border-radius: 4px; }
.mobilede-box h2 { margin-top: 0; }
.mobilede-box p:last-child { margin-bottom: 0; }
a.button { display: inline-block; background: #00963e; color: #fff; font-weight: 700; padding: .6em 1.6em; border-radius: 25px; }
a.button:hover { background: #005624; color: #fff; }

/* Karte (MapLibre) */
.maplibre-map { width: 100%; height: 380px; border-radius: 6px; overflow: hidden; clip-path: inset(0 round 6px); background: #e3e3e3; }
.map-route { margin-top: .6em; }
@media (max-width:600px) { .maplibre-map { height: 300px; } }

