/* ### Elemente ### */

body {
  font-family: 'martel_sansregular', sans-serif;
  font-weight: 400;
  color:#222;
  font-size: 16px;
  margin: 0;
}

.clearfix {clear: both;}

.overflow {overflow: hidden;}

.bangb1 {
    z-index:99;
    transition: all 0.5s ease 0s;
    width: 100%;
    border-bottom:1px solid #ddd;
}

.fixedTop {
    background-color: #fff!important;
    position: fixed;
    z-index:99;
    top:0;
}

.headercontainer {
    margin-left: 6%;
    margin-right: 4%;
    margin-top: 2%;
}

::before, ::after {
    box-sizing: border-box;
}

.headercontainer::after {
    clear: both;
}

.headercontainer::before, .headercontainer::after {
    display: table;
    content: " ";
}

.logo {
    width: 300px;
    float:left;
    padding-right:50px;
    padding-bottom:20px;
}

@media(max-width:1150px){
    .logo {width: 250px;}
     #header .mainnavi ul {margin-top:18px;}
}

.resetcontainer {
    position:relative;
}

.resetcontainer .container {
    width: 100%;
    margin: 0!important;
    padding: 0;
}

.resetcontainer figcaption {
    max-width:25%;
    position:absolute;
    bottom: 5%;
    right:0;
    text-align:right;
    padding:7px 10px;
    font-family: 'open_sanssemibold';
    font-size:115%;
    line-height:26px;
    background-color: #fff;
    color:#000;
    opacity: 0.5;
}

@media (max-width: 767px){
.resetcontainer figcaption {
    max-width:100%;
    bottom: 3%;
    font-size: 100%;
    line-height: 24px;
    text-align: center;
    padding: 5px;}
}

#container {
    padding: 4% 3% 5% 7%;
}

footer {
    padding: 3% 0;
    background-color: #a69483;
}

#footer .container {
    margin-left: 7%;
    margin-right: 3%;
}

#footer h2 {
    font-size: 16px;
    color: #fff;
    margin:0;
}

#footer a, #footer p{color:#444;}

#footer a:hover { color: #fff; }

#footer h2 a {color:#fff;}

#footer a {
    -moz-transition: color .3s, background .3s;
    -webkit-transition: color .3s, background .3s;
    transition: color .3s, background .3s;
}

footer ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

@media(min-width:1200px){
    .headercontainer, #footer .container {margin-left: 15%;margin-right: 15%;}
    #container {padding: 4% 15% 5% 15%;}
}


.scrolltop a {
    position: fixed;
    right: 20px;
    bottom: 20px;
    text-indent: -2000px;
    overflow: hidden;
    cursor: pointer; 
}

.scrolltop a:after {
    font-family:FontAwesome;
    color: #1B1C1E;
    content:"\f106";
    display: block;
    text-indent:0;
    background: #e7e7e7;
    padding: 3px 14px;
    font-size: 25px;
}

.scrolltop a:hover:after {
    color:white;
    background-color: #8aa1bb;
}


/* #####################   Navigation   ############################ */


.mainnavi {float:right;}

.invisible {display: none;}

#header .mod_navigation ul {
    overflow: hidden;
    text-align:center;
    margin:0;
    list-style-type: none;
}

.mainnavi .level_1 a {
    color:#454544;
}

#header .mainnavi ul li {float: left;}

#header .inside {position:inherit;} /* most important */

#header ul.level_1 li { display: block; }

.mainnavi .level_1 a, .mainnavi .level_1 span {
	display: inline-block !important;
}

.mainnavi .level_1 a, .mainnavi .level_1 span, .mainnavi a, .mainnavi span, .mainnavi strong {
    padding: 6px 20px;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 16px;
}

.mainnavi .active, .mainnavi a:hover, .mainnavi strong:hover {
    background-color: #8aa1bb;
    color:#fff;
}


/* #####################    Images   ############################ */


figure {
    margin: 0;
    overflow: hidden;
} 
  
img {
	width:100%;
	height:auto;
}

.siegel img{border-radius:50%;}

.img-original img {
    max-width: 400px;
}

.siegel.img-original img {
    max-width: 200px;
}

@media (min-width: 48em){
    .img-original img {float: right;}
    .siegel.img-original img {float: left;}
    #kontakt-sidebar{margin-top:52px;}
}


/* #####################   Fonts   ############################ */


h1 {
    font-size: 26px;
    margin: 0 0 20px;
    padding: 0;
    text-transform: uppercase;
    line-height: 140%;
    color: #576e88;
}

@media (max-width: 950px){
    h1 {font-size: 22px;}
}

h2 {
    font-family: 'martel_sansdemibold', sans-serif;
    font-weight: normal;
    font-size: 18px;
    margin: 20px 0 10px;
    padding: 0;
    text-transform: uppercase;
    color: #576e88;
}

h3 {
    font-size: 16px;
    margin: 0 0 10px 0;
    padding: 0;
    text-transform: uppercase;
    color:#897867;
    line-height:140%;
    font-family: 'martel_sansdemibold', sans-serif;
    font-weight: 500;
}

.semibold {
    font-family:'martel–sansdemibold';
}

strong {
    font-weight:600;
}

a {
    color: #606061;
    text-decoration:none;
}

@media(min-width:992px){
 a[href^="tel:"] {
  pointer-events: none;
 }
}

a, span, em {
    -moz-transition: all .3s;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.tel:before {
    content:"\f095";
    font-family:"FontAwesome";
    margin-right:5px;
}

.mail:before {
    content:"\f0e0";
    font-family:"FontAwesome";
    margin-right:5px;
}

.pfeil:before {
    content:"\f044";
    font-family:"FontAwesome";
    margin-right:5px;
}

.pdf:before {
    content:"\f1c1";
    font-family:"FontAwesome";
    margin-right:5px;
}

/* #####################   Text   ############################ */

ul {
    padding-left:1px;
    list-style:none;
    margin:10px 0 30px 0;
}

li {
    margin: 0 0 10px;
	line-height: 1.5;
	color:#444;
}

.content-text li:before {
    font-family: "FontAwesome";
    content:"\f0c8";
    color:#7188a2;
    margin-right:8px;
    font-size:14px;
}

/* #####################   Galerie   ############################ */

.content-gallery  ul {
    margin:0;
    padding:0;
    list-style-type:
    none;
}

.content-gallery .row {grid-gap: .5em;}

.content-gallery li {
    padding: 0;
    margin:0;
    line-height:.7em;
}

.content-gallery img  {
    -moz-opacity: 1;
    -webkit-opacity: 1;
    opacity: 1;

    -moz-transition: opacity .5s;
    -webkit-transition: opacity .5s;
    transition: opacity .5s;

    -moz-transition: all .5s;
    -webkit-transition: all .5s;
    transition: all .5s;
}

.content-gallery img:hover {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}

/* #####################   Form   ############################ */

.formbody {
    width: 95%;
    position: relative;
}

form .widget {
  margin: 5px 0;
}

.submit {
    padding:7px 12px 3px 12px;
    border:none;
    font-family: 'martel_sansregular', sans-serif;
    font-weight: 400;
    background-color:#7188a2;
    color:#fff;
    font-size:16px;
    cursor:pointer;
}

input.text, textarea, select {
    padding: 10px;
    border-color: #ccc;
    font-size: 16px;
    width: 100%;
    color: #000;
    border: 1px solid #e7e7e7;
}

input.text:hover, textarea, select:hover {
    border-color: #999;
}

.checkbox_container span {
    display: block;
    margin: 3px 0;
}

.formbody .mandatory span.mandatory {
    position: absolute;
    right: 0;
}

span.mandatory {color:red;}

fieldset {
  border: 0;
  margin: 20px 0 20px 0;
  padding: 0;
}

label {
  font-size: 14px;
  margin-top: 20px;
  text-transform: uppercase;
  color: #666;
}

.anreise {
    background-color:#7188a2;
    color:#fff;
    padding:5px 12px;
}

.anreise:hover, .submit:hover {
    background-color:#555;
    color:#fff;
    transition: all .5s;
}
