/**
 * 
 * Design und Layout 'abenaa'
 * 
 * 
 * This file gives an overview of the required CSS definitions which
 * needs to be defined for all Website Baker templates added to the 
 * Website Baker addons repository from June 2008 onwards. 
 * 
 * See http://www.w3.org/TR/CSS21/sample.html for the HTML4 
 * default styles applied if nothing else is specified in your stylesheet.
 *
 * To facilitate adaption, you may want to consider separate stylesheets.
 * One for the layout (container for header, footer, content, menu ...),
 * another one for the HTML elements which are shown in the content areas.
 * This can easily be achieved via @import rules
 * 
 * @author     Ines Gesell
 * @copyright  Ines Gesell
 * @license    http://www.gnu.org/licenses/gpl.html
 * @version    1.0
 * @platform   Website Baker 2.13
 *
*/

:root {
    --oi-searchform-bg-color: none;
    --oi-searchform-select-bg-color: #fff;
    --oi-searchform-submit-bg-color: #fdc401;
    --oi-searchform-submit-text-color: #000203;
    --oi-searchform-maxwidth: 50em;
    --oi-searchform-buttonwidth: 9rem;
}

/* roboto-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: url('fonts/roboto-v48-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 200;
  src: url('fonts/roboto-v48-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/roboto-v48-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-v48-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/roboto-v48-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/roboto-v48-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-v48-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 800;
  src: url('fonts/roboto-v48-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/roboto-v48-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* Body und Sideholder    ============================================================================= */
* {
margin:0;
padding:0;
}
html, body{
height:100%;
margin:0;
padding:0;
}
html {
scroll-behavior: smooth;
}
body {
margin : 0 0 0 0;
padding : 0;
font-family: "Roboto", sans-serif;
color : #000203;
background-color : #fff;
overflow-x: hidden;
-webkit-font-smoothing: subpixel-antialiased;
-moz-osx-font-smoothing: auto;
line-height: 1.7em;
font-weight: 400;
-webkit-font-smoothing:antialiased;
-moz-font-smoothing:antialiased;
-o-font-smoothing:antialiased;
font-smoothing:antialiased;
text-rendering:optimizeLegibility;
}
@media (min-width:200px) and (max-width:900px){
body  {font-size: calc(14px + (18 - 14) * ((100vw - 200px) / (800 - 200)));}
}
@media (min-width:900px){
body  {font-size: 18px}
}
a {
font-weight: 700;
color : #1f7516;
text-decoration : none;
border : none;
}
a:hover {
color : #000203;
text-decoration: none;
}
.div_link a {
  padding: 5px 40px 5px 40px;
  background-color: #f1f1f1;
  color : #000203;
  margin: 10px 0;
  display: inline-block;
  text-align: center;
  font-weight: 600;
  text-decoration: none;
}
a img {
border : 0 none;
}
img {
max-width: 100%;
height: auto;
}
hr {
border-top: none;
border-bottom: 1px dashed #4c4f47;
width: 99%;
margin: 2.0em auto;
}
hr.style1 {
border-top: none;
width: 150px;
border-bottom: 7px solid #fcc400;
border-top: none;
margin: 1.5em auto 1.5em auto;
}
hr.style2 {
border-top: none;
width: 150px;
border-bottom: 7px solid #fcc400;
border-top: none;
margin: 1.5em auto 1.5em 0;
}
footer hr {
border-top: none;
width: 150px;
border-bottom: 7px solid #fcc400;
border-top: none;
margin: 1.5em auto 1.5em 0;
}

@media only screen and (max-width: 600px) {
hr {
margin: 1.0em auto;
}
}

/*  START UND CONTAINER ============================================================================= */
.lightcontainer {
margin: 0 auto;
max-width: 1360px;
padding: 0;
}
.lightcontainer1600 {
margin: 0 auto;
padding: 0;
max-width: 1600px; 
}	
.lightcontainer p {
margin : 2.5vh 0 2.5vh 0;
}
.less {
padding: 3.5em 0 3.5em 0;
}
.container_counter {
padding: 0;
background-color: #f1f1f1;
margin: 0 0 0 0;
}
@media only screen and (min-width: 1024px) {
.start {
margin: 0 auto 0 auto;
width: 80%;
}
}
@media only screen and (max-width: 1400px) {
.less {
margin: 0 2.0% 0 2.0%;
width: 96%;
}
}
.telefon p, .telefon a {
color : #000203;
font-weight: 400;
font-size: 0.9em;
margin: 3px 7px;
padding: 0;
}
.telefon i {
font-size: 1.5em;
color: #000203;
}
@media only screen and (max-width: 480px) {
.telefon span  {
display: block;
margin: 0px;
}
}
/*  SUCHE ============================================================================= */
.search_box {
display: inline-block;
margin: 0 10px 10px 0;
}
.search_box button {
border: none;
background: #fff;
}
.search_box button i {
font-size: 1.9em;
}
.search {
color : #000203;
font-weight: 400;
font-size: 0.9em;
background-color : #fff;
border : 1px solid #000203;
padding : 4px;
width: 200px;
}
.searchbutton {
cursor:pointer;
width: 100%;
border:none;
background: #2b7b22;
color:#fff;
margin:0 0 0 20px;
padding: 10px;
border-radius:5px;
}
.searchfield {
border: 1px solid #000203;
color : #000203;
padding: 7px;
margin-right: 15px;
}
.a11y-text {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px;
}
@media only screen and (max-width: 990px) {
.search_box {
display: none;
}
}
/* SKIP TO MAINCONTENT ============================================================================= */
.skip-link {
  position: absolute;
  left: -1000px; /* Off-screen */
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.skip-link:focus {
  position: static; /* Or use absolute positioning and adjust top/left */
  width: auto;
  height: auto;
  /* Add styling to make the link visible on focus */
  background-color: white;
  color: black;
  padding: 10px;
  z-index: 100; /* Ensure it's on top */
}
.top_border {
  background-color: #fcc400;
  background-image: -webkit-linear-gradient(-45deg, #fcc400 50%, #b51c0d 50%);
  min-height: 15px;
}
/* Shrink    ============================================================================= */
@media only screen and (min-width: 991px) {
 /*
#wgsuche {
z-index: 900;
height:auto;
position: absolute;
width: 25%; 
max-width: 420px;
margin-left: 5%;
}
*/


#navicontainer {
width: 100%;
/*
position: fixed;
*/
position: absolute;
top:15px;
left: 0;
padding: 20px 0 10px 0;
z-index: 101;
background-color: #fff;
-webkit-transition: all 1.0s;
-moz-transition: all 1.0s;
transition: all 1.0s;
}
#headercontainer {
display: flex; 
justify-content: left; 
align-items: center;
width: 100%;
position: relative;
z-index: 100;
text-align: center;
margin-top: 155px;
padding: 0 0 0 0;
height: auto;
background-color: #f1f1f1;
}
#wgsuche {
z-index: 90000;
height:auto;
position: absolute;
width: auto; 
padding: 0.3% 2.5% 0.6% 2.5%;
left: 100px;
bottom: 25%;
background: rgba(31,117,22,0.9);
line-height: 1.5em;
color: #ffffff;
text-align: left;
}
#headercontainer > .mod_leafletmaps {
min-width:100%;
}
.topmenubar {
-webkit-transition: all 1.0s;
-moz-transition: all 1.0s;
transition: all 1.0s;
}
.topmenubar ul {
padding-top: 10px;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
}
.telefon p {
-webkit-transition: all ease 1.0s;
-moz-transition: all ease 1.0s;
transition: all ease 1.0s;
display: inline-block;
}

/*
.telefon.shrink {
height: 0px;
line-heigth: 0;
margin: 0;
padding: 0;
width: 0px;
}
.telefon.shrink p, .telefon.shrink a, .telefon.shrink i, .telefon.shrink img {
margin-top: 0em;
color: #fff;
height: 0px;
width: 0px;
font-size: 0em;
}
.search.shrink {
line-height: 0;
font-size: 0;
background-color : #fff;
border : none;
padding : 0;
width: 0;
}
.topmenubar ul.shrink {
padding-top: 0px;
}
#navicontainer.shrink {
top:0px;
border-top: 0px;
padding-top: 10px;
-webkit-box-shadow: 0px 10px 12px 0px rgba(0,0,0,0.15);
-moz-box-shadow: 0px 10px 12px 0px rgba(0,0,0,0.15);
box-shadow: 0px 10px 12px 0px rgba(0,0,0,0.15);
}
#navicontainer img {
max-width: 100%;
max-height: 100%;
-webkit-transition: all 1.0s; 
-moz-transition: all 1.0s; 
-ms-transition: all 1.0s; 
-o-transition:  all 1.0s; 
transition: all 1.0s; 
}
#navicontainer.shrink img {
width: 55%;
height: 55%;
padding: 0px;
}
*/
}
/* WG Suche ============================================================================= */
@media only screen and (min-width: 991px) and (max-width: 1300px) {
#wgsuche {
left: 30px; 
bottom: 7%;
}
}
@media only screen and (max-width : 990px) {
#wgsuche{
display: block;
width: 92%;
max-width: 990px;
padding: 4%;
margin-top: 10px;
background: #1f7516;
color: #ffffff;
text-align: left;
visibility: visible;
margin-bottom: 10px;
}
}	
/* headercontainer ============================================================================= */
#headercontainer img {
max-width: none !important;
}
#headercontainer img {
width:100%;
border:none 0;
max-width: none;
padding:0;
margin:0;
}
/*  SECTIONS     ============================================================================= */
.section { clear: both; padding: 0px; margin: 0px; }

/*  col SETUP     ============================================================================= */
.col { display: block; float:left; margin: 0% 0 0% 3.6%; }
.col:first-child { margin-left: 0; }
@media only screen and (max-width: 960px) {
.col { margin: 1% 1% 1% 1%; }
.col:first-child { margin-left: 1%; margin-right: 1%; }
}
/*  GROUPING     ============================================================================= */
.group:before,
.group:after { content:""; display:table; }
.group:after { clear:both; }
.group { zoom:1; /* For IE 6/7 */ }

/*  2 BOXEN   ============================================================================= */
.span_2_of_2 { width: 100%; }
.span_1_of_2 { width: 47.2%; }
@media only screen and (max-width: 960px) {
.span_2_of_2, .span_1_of_2 { width: 98%; }
}
/*  3 BOXEN    ============================================================================= */
.span_3_of_3 { width: 100%; }
.span_2_of_3 { width: 65.47%; }
.span_1_of_3 { width: 30.93%; }
@media only screen and (max-width: 960px) {
.span_3_of_3, .span_2_of_3, .span_1_of_3 { width: 98%; }
}
/* 4 BOXEN*   ============================================================================= */
.span_4_of_4 { width: 100%; }
.span_3_of_4 { width: 74.0%; }
.span_2_of_4 { width: 48.0%; }
.span_1_of_4 { width: 22.3%; }
@media only screen and (max-width: 960px) {
.span_4_of_4, .span_3_of_4, .span_2_of_4, .span_1_of_4 { width: 98%; }
}
/*  5 BOXEN    ============================================================================= */
.span_5_of_5 { width: 100%; }
.span_4_of_5 { width: 79.68%; }
.span_3_of_5 { width: 55.00%; }
.span_2_of_5 { width: 41.00%; }
.span_1_of_5 { width: 10.8%; }
@media only screen and (min-width: 960px) {
#navicontainer .group, #navicontainer .section { display: table; width: 100%;}
#navicontainer .col { float: none; display: table-cell; vertical-align: middle; height: 100%; }
#navicontainer .span_2_of_5 { display: table-cell; vertical-align: middle; height: 100%; width: 20.0%; }
#navicontainer .span_3_of_5 { display: table-cell; vertical-align: middle; height: 100%; text-align: right; width: 80%; }
}
@media only screen and (max-width: 959px) {
.span_1_of_5, .span_2_of_5, .span_3_of_5, .span_4_of_5, .span_5_of_5 { width: 98%;}
#navicontainer .col {  margin: 0% 0% 0% 0%; }
#navicontainer .span_2_of_5 { text-align: center; margin: 15px 2% 5px 2%; width: 96%; }
#navicontainer .span_3_of_5 { text-align: center; width: 100%; }
}
@media only screen and (max-width: 1400px) and (min-width: 960px)  {
#navicontainer .span_2_of_5 { width: 34.0%; padding-left: 1%;}
}
/*  8 BOXEN    ============================================================================= */
.span_7_of_8 { width: 82.4%; }
.span_3_of_8 { width: 31.2%; }
.span_2_of_8 { width: 19.0%; }
.span_1_of_8 { width: 14.0%; }
@media only screen and (max-width: 959px) {
.span_1_of_8, .span_2_of_8, .span_3_of_8, .span_7_of_8 { width: 98%; }
}
/*  3 BOXEN Downloadgalerie */
.span_3_of_down {
width: 69.0%;
text-align: left;
overflow-x: hidden;
}
.span_2_of_down {
width: 17.0%;
font-size: 0.65em;
text-align: right;
overflow-x: hidden;
}
.span_1_of_down {
width: 6.0%;
text-align: left;
overflow-x: hidden;
}
@media only screen and (max-width: 414px) {
.span_3_of_down {
width: 49.0%;
text-align: left;
}
.span_2_of_down {
width: 29.0%;
text-align: right;
}
.span_1_of_down {
width: 12.6%;
padding-right: 2%;
text-align: left;
}
}
/* Inhalt    ============================================================================= */
h1 {
font-family: "Roboto", sans-serif;
line-height: 1.2em;
margin : 1.0vh 0 3.0vh 0;
font-weight: 400;
}
h1 span {
font-weight: 700;
}
@media (min-width:200px) and (max-width:900px){
h1  {font-size: calc(28px + (48 - 28) * ((100vw - 200px) / (800 - 200)));}
}
@media (min-width:900px){
h1  {font-size: 48px}
}
h2 {
font-family: "Roboto", sans-serif;
line-height: 1.3em;
margin : 1.0vh 0 1.0vh 0;
font-weight: 400;
}
h2 span {
font-weight: 700;
}
@media (min-width:200px) and (max-width:900px){
h2  {font-size: calc(24px + (36 - 24) * ((100vw - 200px) / (800 - 200)));}
}
@media (min-width:900px){
h2  {font-size: 36px}
}
h3 {
font-family: "Roboto", sans-serif;
line-height: 1.4em;
margin : 1.0vh 0 1.0vh 0;
font-weight: 600;
}
@media (min-width:200px) and (max-width:900px){
h3  {font-size: calc(20px + (24 - 20) * ((100vw - 200px) / (800 - 200)));}
}
@media (min-width:900px){
h3  {font-size: 24px}
}
h4 {
font-family: "Roboto", sans-serif;
margin : 1.0vh 0 1.0vh 0;
line-height: 1.1em;
font-weight: 500;
}
@media (min-width:200px) and (max-width:900px){
h4  {font-size: calc(18px + (20 - 18) * ((100vw - 200px) / (800 - 200)));}
}
@media (min-width:900px){
h4  {font-size: 20px}
}
main ul, ol {
margin : 2.5vh 0 1.0vh 10px;
}
main ul li {
margin : 0 0 1.5vh 0;
padding:0 0 0 1.4em;
list-style-type: none;
line-height: 1.7em;
background : url(img/li.png) no-repeat 0px 8px;
}
main ol li {
margin:0 0 0.7em 20px;
padding:0 0 0 0.5em ;
}
/* FOTOGALERIE ============================================================================= */
.galleries {
width: 90%;
padding-left: 60px;
}
.galleries img {
padding: 20px 0px 20px 0px;
}
@media only screen and (max-width: 960px) {
.galleries {
width: 90%;
padding-left: 5%;
padding-right: 5%;
}
}
/*  FOOTER 4 BOXEN   ============================================================================= */
#footer {
width:100%;
background-color: #f1f1f1;
text-align: left;
}
#footer-copy {
width: 100%;
background-color : #d8d7d7;
text-align: left;
padding: 10px 0 10px 0;
}
#footer-copy p {
margin: 10px 0 10px 10px;
}
@media only screen and (min-width: 960px) {
#footer img {
margin-top: -110px;
}
}
/* TEAM MITARBEITER ============================================================================= */
#team .col:nth-of-type(3n+4) {
clear: both;
margin-left: 0;
}
#team p {
clear: both;
margin: 0 0 0 0;
}
#team .col {
margin-bottom: 30px;
}
#team .col p:nth-of-type(3n)::before  {
font-family: "Font Awesome 5 Free"; 
font-weight: 900; 
content: "\f2a0";
margin-right: 10px;
}
/* Schriften und Bilder usw.   ============================================================================= */
.mittig {
text-align: center;
}
.btn-email {
font-size: clamp(18px, 2vw, 22px);
border: none;
background: none;
}
@media only screen and (min-width: 960px) {
.right {
text-align: right;
}
}
.fett {
font-weight: 700;
}
.gross {
font-family: "Roboto", sans-serif;
font-size: 1.6em;
font-weight: 700;
}
.klein {
font-size: 0.8em;
line-height: 1.5em;
font-weight: 300;
}
.small {
font-size: 22px;
font-weight: 600;
}
.redstar {
color:#ff4136;
font-weight:800;
}

/* BUTTON NACH OBEN ============================================================================= */
.cd-top {
display: inline-block;
height: 60px;
width: 60px;
position: fixed;
z-index: 100;
bottom: 30px;
right: 30px;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
border: 1px solid rgba(255, 255, 255, 0.5);
overflow: hidden;
text-indent: 100%;
white-space: nowrap;
background: #1f7516 url(img/cd-top-arrow.svg) no-repeat center 50%;
visibility: hidden;
opacity: 0;
-webkit-transition: opacity .3s 0s, visibility 0s .3s;
-moz-transition: opacity .3s 0s, visibility 0s .3s;
transition: opacity .3s 0s, visibility 0s .3s;
}
.cd-top.cd-is-visible, .cd-top.cd-fade-out, .no-touch .cd-top:hover {
-webkit-transition: opacity .3s 0s, visibility 0s 0s;
-moz-transition: opacity .3s 0s, visibility 0s 0s;
transition: opacity .3s 0s, visibility 0s 0s;
}
.cd-top.cd-is-visible {
visibility: visible;
opacity: 1;
}
.cd-top.cd-fade-out {
opacity: 1.0;
}
.no-touch .cd-top:hover {
background-color: #4c4f47;
opacity: 1;
}

/* FADE IN PAGE */
@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
.fade-in {
opacity:0; 
-webkit-animation:fadeIn ease-in 1;  
-moz-animation:fadeIn ease-in 1;
animation:fadeIn ease-in 1;
-webkit-animation-fill-mode:forwards; 
animation-fill-mode:forwards;
-webkit-animation-duration:1s;
-moz-animation-duration:1s;
animation-duration:1s;
}
.fade-in.one {
-webkit-animation-delay: 0.7s;
-moz-animation-delay: 0.7s;
animation-delay: 0.7s;
animation-duration: 0.9s;
}



/* ==============================================
  	ZUS�TZLICHE CSS F�R BARRIEREFREIHEIT
   ============================================== */

/* Screen Reader Only Text */
.sr-only {
    position: absolute;
    left: -10000px;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Skip Link Styling */
.skip-link {
    position: absolute;
    top: -40px;
    left: 6px;
    background: #000;
    color: #fff;
    padding: 8px;
    text-decoration: none;
    z-index: 10000;
    border-radius: 4px;
}

.skip-link:focus {
    top: 6px;
}

/* Focus Indicators */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
    outline: 2px solid #005fcc;
    outline-offset: 2px;
}

/* Mobile Menu Icon */
.mobile-menu-toggle .menu-icon {
    display: inline-block;
    width: 20px;
    height: 15px;
    position: relative;
    margin-left: 8px;
}

.mobile-menu-toggle .menu-icon span {
    display: block;
    height: 2px;
    width: 100%;
    background: currentColor;
    margin-bottom: 3px;
    transition: 0.3s;
}

.mobile-menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.mobile-menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(3) {
    transform: rotate(-45deg) translate(7px, -6px);
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .skip-link:focus {
        background: #000;
        color: #fff;
        outline: 3px solid #fff;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* Address styling reset */
address {
    font-style: normal;
}

/* Definition list styling for opening hours */
dt {
    font-weight: bold;
    display: inline-block;
    min-width: 100px;
}

dd {
    display: inline;
    margin-left: 0;
}

dd:after {
    content: "\A";
    white-space: pre;
}

/** 
    Suchformular 
    Variablen siehe Dateianfang
**/

section.searchform {
    z-index: 90000;
    height: auto;
    max-width: var(--oi-searchform-maxwidth);
    padding: 1% 1.5%;
    background: var(--oi-searchform-bg-color);
    color : #ffffff;
    text-align: left;
}
section.searchform .head,
section.searchform h2.head {
    background-color: transparent;
    font-size: 1.4em;
    font-weight: 600;
    padding-left: 0;
}
section.searchform label {
    background-color: transparent;
    color: var(--oi-color-white);
    font-weight: 600;
    display: inline-block;
    width: 8rem;
}
section.searchform select {
    height: auto;
    background-color: var(--oi-searchform-select-bg-color);
    border: 1px solid var(--oi-searchform-select-bg-color);
    color : #000203;
    font-weight: 600;
    margin: 0 0 10px;
    padding: 3px;
    outline: 0 none;
}
section.searchform select.sel-lg {
    width: 12.1rem;
}
section.searchform select.sel-sm {
    width: 5.9rem;
}
@media only screen and (max-width: 400px) {
section.searchform label {
    width: 6rem;
}
section.searchform select.sel-lg {
    width: 10.1rem;
}
section.searchform select.sel-sm {
    width: 4.9rem;
}
}
section.searchform input[type="submit"],
section.searchform button[type="submit"] {
    cursor: pointer;
    font-weight: 600;
    width: var(--oi-searchform-buttonwidth);
    border: none;
    background: var(--oi-searchform-submit-bg-color);
    color: var(--oi-searchform-submit-text-color);
    margin: 5px 0 10px 0;
    padding: 0.7rem 0 0.7rem 0;
	width: 95%;
}
section.searchform span.sf-resultcountwrapper {
    margin-left: 15px;
    margin-top: 5px;
    font-weight: 500;
}
section.searchform span.sf-resultcount {
    font-size: 1.6em;
}

/* Fieldset und Legend Styles für Barrierefreiheit */
section.searchform fieldset {
    border: none;
    padding: 0;
    margin: 0;
    min-width: 0;
}

section.searchform legend {
    padding: 0;
    margin: 0;
}

