/* montserrat-regular - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('./fonts/montserrat-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('./fonts/montserrat-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/montserrat-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('./fonts/montserrat-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('./fonts/montserrat-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('./fonts/montserrat-v15-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
}

/* montserrat-600 - latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('./fonts/montserrat-v15-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('./fonts/montserrat-v15-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('./fonts/montserrat-v15-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('./fonts/montserrat-v15-latin-600.woff') format('woff'), /* Modern Browsers */
       url('./fonts/montserrat-v15-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('./fonts/montserrat-v15-latin-600.svg#Montserrat') format('svg'); /* Legacy iOS */
}

/* Light mode */
:root {
         --body-bg: #FFFFFF;
         --body-color: #000000;
         --font-color: rgba(0, 0, 0, 0.5);
         --font-color-hover: #E46100;
         --background-color: #FFFFFF;
         --background-color-hover: #E46100;

         --formular-bg: #f1f0f5;
         --formular-color: #1a0120;
         --formular-label: #ffffff;
         --formular-botton-color: #ffffff;
         --formular-button-color1: #000000;
         --formular-button-color2: rgba(0, 0, 0, 0.7);

         --max-width: 1200px;
}


a:link, a:visited { font-family: 'Montserrat'; font-size: 1.0em; color: var(--font-color); font-weight: normal; text-decoration: underline; }
a:hover { font-size: 1.0em; color: var(--font-color-hover); font-weight: normal; text-decoration: underline; }

body { background: var(--body-bg); margin: 0; font-family: 'Montserrat'; font-size: 1.0em; color: var(--body-color); text-align: center; }
#wrapper { width: calc(100% - 0px); margin: 0px; padding: 0px 0px; font-size: 1.0em; }


.links         { float:left; }
.rechts         { float:right; }
img         { border: 0px; }
.pad     { padding: 10px; }
.pad_top { padding: 20px 0px; }
.pad_side{ padding: 0px 20px; }
.pad_big { padding: 20px 25px; }
.clear         { clear:both; line-height:0.0em; height: 0px; display: block; background-color: #FFDF00; padding: 0px !important; margin: 0px !important; }
.center         { text-align:center; }
.small        { font-size: 0.8em !important; }
.medium        { font-size: 1.0em !important; }
.big        { font-size: 1.2em !important; }
.line        { border-bottom: 2px #BFBFBF dotted; }
.round        { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; }
.aright  { text-align: right; }
.acenter { text-align: center; }
.ajustifiy { text-align: justify; }
.lineheight { line-height: 1.6em !important; }
.mail { direction: rtl; unicode-bidi: bidi-override; }

.bg1 { background: rgba(0,0,0,0.02); }
.bg2 { background: rgba(0,0,0,0.07); }
.bg3 { background: var(--background-color-hover); color: var(--background-color); }

.w100         { width: 100%; }
.w100pad { width: calc(100% - 20px); padding: 5px 10px; }
.w75         { width: 75%; }
.w75pad         { width: calc(75% - 20px); padding: 5px 10px; }
.w50         { width: 50%; }
.w50pad         { width: calc(50% - 20px); padding: 5px 10px; }
.w33         { width: 33.3%; }
.w33pad         { width: calc(33.3% - 20px); padding: 5px 10px; }
.w25         { width: 25%; }
.w25pad         { width: calc(25% - 20px); padding: 5px 10px; }

p img { width: calc(100% - 50px); height: auto; }

hr { border: 0px; border-top: 5px var(--background-color-hover) dotted; margin: 20px 0px; }

h1, h2, h3, h4, h5 { font-family: 'Montserrat'; color: var(--body-color); font-weight: bold; text-decoration: none; }
h1 { font-size: 3.0em; color: var(--font-color-hover); }
h2 { font-size: 2.2em; }
h3 { font-size: 1.8em; }
h4 { font-size: 1.6em; }
h5 { font-size: 1.2em; }

.bg3 h2, .bg3 h3 { color: var(--background-color); }

#logo { width: 100%; margin: 50px auto 0px auto; padding: 25px 0px 10px 0px; text-align:center; }
#logo a { display: inline-block; width: 30vw; height: auto; }
#logo a img { width: 100%; height: auto; }

a.logo { display: inline-block; width: 100%; height: auto; max-width: 500px; margin: 10px auto; }
a.logo img { width: 90%; height: auto; }

#site { width: 100%; margin: 20px auto; padding: 20px 0px; text-align:center; }
#site .content { display: block; width: calc(100% - 50px); max-width: var(--max-width); margin: 20px auto; }

#footer { width: 100%; margin: 20px auto; padding: 20px 0px 60px 0px; text-align:center; }
#footer a:link, #footer a:visited { font-family: 'Montserrat'; font-size: 1.0em; text-decoration: none; }
#footer a:hover { color: var(--background-color-hover); }
#footer b a { color: var(--background-color-hover); font-weight: bold; }

#impressum {}

#order {
         display: none;
         position: fixed;
         bottom: 0;
         z-index: 10;
         width: calc(100% - 20px);
         padding: 20px 10px;
         background-color: var(--background-color-hover);
         background-size: 100% auto;
         text-align: center;
}

#order a {
         display: inline-block;
         background: var(--background-color) url(../images/hover.gif) center left no-repeat;
         font-size: 1.1em;
         color: #000000;
         padding: 10px 25px;
         text-decoration: none;
         -webkit-border-radius: 60px;
         -moz-border-radius: 60px;
         border-radius: 60px;
}

/* kontakt */
#kontakt { cursor: pointer; position: fixed; bottom: 0; z-index: 10; width: calc(100% - 0px); padding: 20px 0px; }
#kontakt .in { display: block; width: calc(100% - 50px); max-width: var(--max-width); margin: 10px auto; }
#kontakt .kinfo { float: left; display: block; width: calc(100% - 380px); padding: 10px 10px 10px 0px; font-size: 0.8em; opacity: 0.5; }
#kontakt h3 { text-transform: uppercase; font-size: 2.4em; font-weight: 200; text-align: center; color: rgba(255,255,255,1.0); margin: 0px 0px 15px 0px; padding: 0px; }
#kontakt h4 { font-size: 1.6em; font-weight: bold; text-align: center; color: rgba(255,255,255,0.9); margin: 0px 0px 10px 0px; padding: 5px 10px;  background-color: rgba(0,0,0,0.8); -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px; }
#kontakt h5 { display: none; font-size: 1.4em; font-weight: bold; text-align: center; color: rgba(255,255,255,0.9); margin: 0px 0px 10px 0px; padding: 5px 10px; background-color: rgba(0,0,0,0.2); -webkit-border-radius: 30px; -moz-border-radius: 30px; border-radius: 30px; }

#kontakt form { display: none; width: calc(100% - 50px); padding: 10px 20px; background-color: rgba(0,0,0,0.1); -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; text-align: left; }
#kontakt form .links { float: left; width: calc(50% - 20px); }
#kontakt form .rechts { float: right; width: calc(50% - 20px); }
#kontakt form hr { border: 0px; border-top: 5px var(--formular-label) dotted; margin: 10px 0px; }

#kontakt form .datenschutz, #kontakt form .kontakt_ok { padding: 5px 0px; margin: 5px 0px; border: 2px transparent solid; }


/* Formulare */
form { }
form label { display: block; font-size: 0.9em; padding: 0px 0px 0px 0px; color: var(--formular-label); }
form a { color: var(--formular-link) !important; }
form .check { display: block; margin: 5px 0px; color: var(--formular-white); }
form .block { display: block; width: calc(50% - 0px); float: left; }
form .block.full { display: block; width: calc(100% - 0px); float: none; }
form .error { border: 2px #000000 solid !important; }

input, textarea, select {
         border: 2px #ffffff solid;
         background-color: var(--formular-bg);

         width: calc(100% - 24px - 10px);
         padding: 6px 12px;
         margin: 4px 10px 4px 0px;

         font-family: var(--main-font);
         font-size: 1.1em;
         color: var(--formular-color);

         vertical-align: top;

         -webkit-box-shadow: inset 2px 2px 4px 0px rgba(0, 0, 0, 0.05);
         -moz-box-shadow:    inset 2px 2px 4px 0px rgba(0, 0, 0, 0.05);
         box-shadow:         inset 2px 2px 4px 0px rgba(0, 0, 0, 0.05);

         -webkit-border-radius: 5px;
         -moz-border-radius: 5px;
         border-radius: 5px;
}
select { width: calc(100% - 0px - 10px); padding: 10px 15px; margin: 5px 10px 5px 0px; }

input[type="submit"] {
         float: right;
         cursor: pointer;
         background: linear-gradient(to bottom, var(--formular-button-color1) 0%, var(--formular-button-color2) 100%);
         width: auto;

         margin-top: 10px;
         padding: 10px 30px;

         text-align: center;
         font-size: 1.3em;
         font-weight: 300;
         text-shadow: rgba(0,0,0,0.1) 1px 1px 1px;
         color: var(--formular-botton-color);
         text-decoration:none;

         -webkit-border-radius: 30px;
         -moz-border-radius: 30px;
         border-radius: 30px;

         border: 0px;
         border-bottom: 2px var(--main-color) solid;

         -webkit-box-shadow: 0px 15px 10px -10px rgba(0,0,0,0.25);
         -moz-box-shadow: 0px 15px 10px -10px rgba(0,0,0,0.25);
         box-shadow: 0px 15px 10px -10px rgba(0,0,0,0.25);
}

input[type="submit"]:hover {
         color: var(--formular-botton-color);
         background: linear-gradient(to bottom, var(--formular-button-color2) 0%, var(--formular-button-color1) 100%);
         text-decoration:none;
}

input[type="checkbox"] { display:none; }
input[type="checkbox"] + label { width: 50px !important; height: 20px !important; padding: 1px !important; margin: 0px !important; border-radius: 20px !important; border: 2px solid rgba(255,255,255,1.0) !important; background-color: rgba(0,0,0,0.5) !important; display: inline-block; content: ""; float: left; margin-right: 10px !important; transition: background-color 0.5s linear !important; margin-top: 0px; }
input[type="checkbox"] + label:hover { cursor: pointer; }
input[type="checkbox"] + label::before { width: 16px; height: 16px; border-radius: 16px; background-color: #fff !important; display: block; content: ""; float: left; margin: 2px 0 0 2px; transition: margin 0.1s linear; }
input[type="checkbox"]:checked+label{ background-color: #62ae00 !important; }
input[type="checkbox"]:checked+label::before { margin: 2px 0 0 32px; }

#error_massage {
         display: block;
         width: calc(100% - 40px) !important;
         background: #000000 !important;

         margin: 10px 0px !important;
         padding: 10px 20px;

         -webkit-border-radius: 20px;
         -moz-border-radius: 20px;
         border-radius: 20px;

         text-align: center;
         color: #FFFFFF;
}
#error_massage.hide { display: none; }



@media (max-width: 900px) {
         body { font-size: 1.1em; }
         #logo a { display: inline-block; width: 80vw; height: auto; }
         #site .content { max-width: 90vw; text-align: justify; }
         h1 { font-size: 2.0em; }
         h2 { font-size: 1.8em; }
         h3 { font-size: 1.6em; }
         h4 { font-size: 1.4em; }
         h5 { font-size: 1.2em; }

         #impressum .w50 { width: 100%; text-align: center; }
         #impressum b { display: block; width: 100%; text-align: center; }
         #impressum .w50pad { display: inline; text-align: center; }

         /*#kontakt { position: relative; bottom: 0; z-index: 10; width: calc(100% - 0px); margin: 0px; padding: 10px 0px; }  */
         #kontakt .kinfo {  width: calc(100% - 380px); padding: 10px 10px 0px 0px; font-size: 0.6em;}
         #kontakt h3 { font-size: 1.8em; margin: 0px 0px 15px 0px; padding: 0px; }
         #kontakt h4 { font-size: 1.2em; }
         input, textarea, select { font-size: 1.0em; }
         #kontakt textarea { height: 70px; font-size: 0.9em; }
         #kontakt form .links, #kontakt form .rechts { width: calc(50% - 10px); }
}
@media (max-width: 720px) {
         #order a { font-size: 1.0em; }
         #order a span { display: none; }

         #kontakt { font-size: 0.9em; }
         #kontakt .kinfo {  width: calc(100% - 380px); padding: 0px 10px 0px 0px; font-size: 0.6em;}
         #kontakt h3 { font-size: 1.5em; }
         #kontakt h4 { font-size: 1.2em; }
         #kontakt h4 span { display: block; }
         #kontakt form .links, #kontakt form .rechts { float: none; width: calc(100% - 0px); }
}

@media (max-width: 580px) {
         form .block { display: block; width: calc(100% - 0px); float: none; }
         #kontakt .kinfo { float: none; width: calc(100% - 0px); padding: 10px 0px 10px 0px; font-size: 0.6em;}
         #kontakt input[type="submit"] { float: none; width: 100%; font-size: 1.1em; }
         #kontakt h4 { font-size: 1.1em; }
}
