body {
    font-family: 'Verdana', sans-serif;
    background-color: #EAEFE9;

    margin: 0 5em 0.5em;
    max-width: 1800px; /*150em;*/
}

@media all and (max-width: 1280px) {
   body {
      margin-left: 2%;
      margin-right: 2%;
   }
}

@media all and (min-width: 160em) {
   body {
      margin-left: auto;
      margin-right: auto
   }
}

a {
    color: #2a99b6;
}

a:hover {
    color: #33bbdf;
}

header a {
	font-weight: bold;
	text-decoration: none;
    color: #FFFFFF;
}

header a:hover {
    color: #FFFFFF;
}

footer {
    width: 95%;
    margin: 0 auto;
    padding: 1em;
}


header {
    width: 95%;
    margin: 0 auto;
/*    padding: 1em;*/
/*    padding: 20px 30px;*/
}

header img.logo {
	margin-left:5%;
}

header div.banner {
	background-image: url('/images/banner2.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding-top: 120px;
    margin:0px;
}

header h1 {
	 background-color: #008428AA;
    color: #FFFFFF;
    margin: 0;
    font-weight: bold;
    padding:0.3% 0.3% 0.3% 3%;
    font-size: 36px;
}

header nav {
	background-color: #008428;
	padding: 1px 4px 4px 4px;
	margin: 0px;
}

header nav ul {
	padding: 0px;
	margin: 0px;
    list-style: none;
}

header nav ul li {
    display: inline;
/*    margin: 0 8px 0 0;
    margin-left: 8px;*/
    padding: 8px;
    font-size: 1.05em;
}

header nav ul li.active {
	border-bottom: 4px solid #00A448;
}

header nav ul li:hover {
    background-color: #00581B;
}

header nav .navbar-parent {
	display: none;
}

img.icon {
    height: 1.05em;
}

hr
{
	color: #008428;
}

/*--- Body ---*/
div.pageframe
{
   width: 95%;
   margin: 0 auto;
	background: #FFFFFF;
}

div.page {
   padding: 1em;
}

div.page img {
	max-width: 95%;
	/*display: block;
	margin-left: auto;
	margin-right: auto;*/
}

div.page a {
	color: #148750;
}

div.page a:hover {
	color: #28B46E;
}

/*----- Text Block -----*/
div.text-block img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

div.text-block-centered{
   text-align: center;
}

div.text-block-two-column-left {
   display: block;
   margin-bottom: auto;
}

@media not screen and (max-width: 640px) {
   div.text-block-two-column-left {
      width: 50%;
   }
}

div.text-block-two-column-right {
   display: block;
   float:right;
   margin-left: auto;
   margin-right: auto;
}

/*----- image and text -----*/
div.image-and-text {
	width: 100%;
	display: table;
	margin-left: auto;
	margin-right: auto;
	border-spacing: 0em;
}

/*--- Mobile small ---*/
@media only screen and (max-width: 640px) {
	div.image-and-text div.row {

	}

	div.image-and-text div.image {
	   width: 100% !important;
	}

	div.image-and-text div.text {

	}
}

/*--- Desktop ---*/
@media not screen and (max-width: 640px) {
	div.image-and-text div.row {
		display: table-row;
	}

	div.image-and-text div.image {
	/*	float: left;*/
	   display: table-cell;
	   vertical-align: middle;
	}

	div.image-and-text div.text {
	 	display: table-cell;
	 	text-align: left;
	 	vertical-align: top;
	}
}

/*----- Floating image -----*/
p.floating-image {
}

p.floating-image ~ .left
{
	/*border: 1px solid lightgray;*/
	background-color: #EAEFE9;
	text-align: center;
	margin: 0px;
	padding: 0px;
	padding-top: 1ex;
}

p.floating-image ~ .right
{
	/*border: 1px solid lightgray;*/
	background-color: #EAEFE9;
	text-align: center;
	margin: 0px;
	padding: 0px;
	padding-top: 1ex;
}

figure.multi-image {
	padding: 0px;
	margin: 0px;
}

figure figcaption
{
	/*border-bottom: 1px solid gray;*/
	padding-left: 1ex;
	padding-right: 1ex;
	padding-bottom: 0.5ex;
	font-size: 90%;
}

/*--- Mobile small ---*/
@media only screen and (max-width: 640px) {
	p.floating-image ~ .left {
		max-width: 100% !important;
	}

	p.floating-image ~ .right {
		max-width: 100% !important;
	}
}

/*--- Desktop ---*/
@media not screen and (max-width: 640px) {
	p.floating-image ~ .left {
		float: left;
		margin-right: 10px;
		margin-bottom: 10px;
	}

	p.floating-image ~ .right {
		float: right;
		margin-left: 10px;
		margin-bottom: 10px;
	}
}

/*----- Flex -----*/
.flex-container {
	display: flex;
  	flex-flow: row wrap;
  	align-items: flex-end;
  	justify-content: space-around;
	background-color: #EAEFE9;
	padding-top: 1ex;
}

.flex-no-border {
	background: none;
	padding: 0px;
}

.flex-item {
	text-align: center;
}

/*--- Mobile small ---*/
@media only screen and (max-width: 640px) {
	.flex-item {
		max-width: 100% !important;
	}
}

/*--- Mobile small ---*/
@media only screen and (min-width: 641px) and (max-width: 800px) {
	.flex-item {
		max-width: 50% !important;
	}
}

/*----- Subpage menu -----*/
table.subpage-table {
	width: 100%;
	border-spacing: 0px;
}

tr.subpage-row {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
   background-color: #EAEFE9;
}

td.subpage-preview {
	width: 30%;
}

td.subpage-descr {
	vertical-align: top;
}

/*-----	Mobile Menu -----*/
/*--- Desktop ---*/
header nav input#menu-toggle {
	display: none;
}
header nav div.link-mobile {
	display: none;
}

/*--- Mobile ---*/
@media only screen and (max-width: 800px) {
	/*--- Adjust page layout ---*/
	body {
		margin: 0px;
	}

	div.pageframe {
		width: 100%;
	}

	header {
		width: 100%;
	}

	footer {
		width: 90%;
	}

	header div.banner {
		background-image: url('/images/banner2-small.jpg');
		background-position: right;
	   padding-top: 70px;
	}

	header h1 {
		font-size: 28px;
	}

	/*--- Adjust menu ---*/
	header nav {
		position: absolute;
		top: 0px;
		left: 0px;
		width: 98%;
		height:30px;
		padding-left: 1%;
		padding-right: 1%;
	}

	header nav .navbar-nav {
		position: relative;
		display: block;
		left: 30px;
		top: -30px;
		width: calc(100% - 30px);
		transition: left 0.3s ease-in-out;
		background-color: #008428;
		z-index: 2;
	}

	header nav ul li {
		display: block;
	}

	header nav ul li.dropdown {
		padding-bottom: 0;
	}

	header nav ul li a {
		display: block;
		width: 100%;
		text-align: left;
	}

	header nav ul li.active {

	}

	header nav .navbar-parent {
		display: block;
		position: absolute;
		left: 64px;
		top: 5px;
		color: #FFFFFF;
		font-size: 20px;
		z-index: 1;
	}

	/*--- Menu button ---*/
	header nav input#menu-toggle {
		display: none;
	}

	header nav input#menu-toggle + label {
		/*display: block;
		width: 100%;*/
		display: block;
		width: 28px;
		height: 28px;
		background: url('/images/MobileMenu-disabled.png') center right no-repeat;
		background-size: 28px 28px;
		position: relative;
		right: 0;
		top: 1px;
		z-index: 10;
		cursor: pointer;
	}

	header nav input#menu-toggle:checked ~ label {
		background: url('/images/MobileMenu.png') center right no-repeat;
		background-size: 28px 28px;
	}

	header nav input#menu-toggle:checked ~ .navbar-nav {
		left: -110%;
	}

    header nav div.link-mobile {
	    display: block;
        position: absolute;
        right: 16px;
        top: 4px;
        height: 28px;
        vertical-align: middle;
        font-size: 20px;
    }
    header nav li.link-desktop {
	    display: none;
    }

	/*--- Adjust submenus ---*/
   li a.dropdown-title {
	   display: none;
	}

	.dropdown-content {
		width: calc(100% + 16px);
		margin-top: 0.5em;
		margin-left: -8px;
		margin-bottom: 0px;
	   background-color: #EEEEEE;
	}

	.dropdown-content a {
		display: block;
		width: auto;
	   padding: 0.4em 1.5em 0.4em 1.5em;
	   margin: 0;
	   color: #303030;
	}

	.dropdown-content a:hover {
		background-color: #CCCCCC;
	   color: #202020;
	}

	/*--- Adjust subpage menu ---*/
	td.subpage-preview {
		width: 50%;
	}
}

/*----- Dropdown -----*/
@media not screen and (max-width: 800px) {
	li a, .dropdown-button {
	   display: 	inline-block;
	   text-align: center;
	}

	li a:hover, .dropdown:hover .dropdown-button {

	}

	li.dropdown {
	   display: inline-block;
	}

	.dropdown-content {
	   display: none;
	   position: absolute;
	   margin-left: -8px;
	   margin-top: 8px;
	   z-index: 1;
	   background-color: #EEEEEE;
	   border-left: 1px solid #008428;
	   border-bottom: 2px solid #008428;
	   border-right: 1px solid #008428;
	}

	.dropdown-content a {
	   display: block;
	   padding: 0.8em 1.5em 0.8em 1.5em;
	   text-align: left;
	   color: #303030;
	   border-left: 1px solid #008428;
	   border-top: 1px solid #EEEEEE;
		border-bottom: 1px solid #EEEEEE;
	}

	.dropdown-content a:hover {
		background-color: #CCCCCC;
		border-top: 1px solid #BBBBBB;
		border-bottom: 1px solid #BBBBBB;
	   color: #202020;
	}

	.dropdown:hover .dropdown-content {
	   display: block;
	}
}

/*----- Slideshow -----*/
.slideshow-frame
{
	height: auto;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0px;
	text-align: center;
	background-color: #101010;
}

.slider-holder
{
	margin-left: 0px;
	margin-right: 0px;
	margin-top: 0px;
	overflow: hidden;
}

.image-holder
{
   clear: both;
   position: relative;
   display: flex;
  	align-items: center;

   -webkit-transition: left 2s;
   -moz-transition: left 2s;
   -o-transition: left 2s;
   transition: left 2s;
 }

.slider-image
{
   float: left;
   margin: 0px;
   padding: 0px;
   position: relative;
   height: auto;
}

.slide-index
{
	color: white;
	padding: 0.25em;
	background-color: #101010A0;
	position: absolute;
	top: 0px;
}

.slide-description
{
	color: white;
	padding: 0px;
	margin: 0px;
	border-top: 1px solid black;
	background-color: #101010A0;
	position: absolute;
	bottom: 0px;
}

.button-holder
{
   position: relative;
   top: 0px;
   border-top: 1px solid black;
   overflow-x: scroll;
   white-space: nowrap;
}

a.slider-change
{
   display: inline-block;
   width: 64px;
   height: 48px;
   background-color: black;
   padding: 0px;
}

img.slider-change
{
	width: 64px;
	height: 48px;
	margin: 0px;
}

table td { padding:0.2em; }

.table-row-center
{
    /*border-left: 1px solid gray;
    border-right: 1px solid gray;*/
    border-bottom: 1px solid lightgray;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

.table-image
{
    min-width: 150px;
}

/*----- Blog -----*/
.blog-title {
   display: inline-block;
   min-width: 54%;
}

.blog-date {
   float: right;
   padding: 1em;
   font-size: 0.85em;
}

.blog-preview-date {
   max-width: 45%;
   font-size: 0.85em;
}
@media only screen and (max-width: 800px) {
   .blog-preview-date {
      display: block;
      max-width: 100%;
      width: 100%;
      text-align: right;
   }
}

.blog-preview-image {
   min-height:200px;
   object-fit: cover;
}

.blog-title {
   display: inline-block;
   min-width: 54%;
}

/*----- Archiv -----*/
.archive-link-top {
   float:right;
   padding-top: 1em;
}

.archive-link-bottom {
   margin-right: auto;
   text-align: right;
}
