/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0); }

#cboxWrapper {
  max-width: none; }

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%; }

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left; }

#cboxContent {
  position: relative; }

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

#cboxTitle {
  margin: 0; }

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer; }

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic; }

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0; }

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; }

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #000;
  opacity: 0.9;
  filter: alpha(opacity=90); }

#colorbox {
  outline: 0; }

#cboxContent {
  margin-top: 20px;
  background: #000; }

.cboxIframe {
  background: #fff; }

#cboxError {
  padding: 50px;
  border: 1px solid #ccc; }

#cboxLoadedContent {
  border: 5px solid #000;
  background: #fff; }

#cboxTitle {
  position: absolute;
  top: -20px;
  left: 0;
  color: #ccc; }

#cboxCurrent {
  position: absolute;
  top: -20px;
  right: 0px;
  color: #ccc; }

#cboxLoadingGraphic {
  background: url(../img/extensions/colorbox/images/loading.gif) no-repeat center center; }

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none; }

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0; }

#cboxSlideshow {
  position: absolute;
  top: -20px;
  right: 90px;
  color: #fff; }

#cboxPrevious {
  position: absolute;
  top: 50%;
  left: 5px;
  margin-top: -32px;
  background: url(../img/extensions/colorbox/images/controls.png) no-repeat top left;
  width: 28px;
  height: 65px;
  text-indent: -9999px; }

#cboxPrevious:hover {
  background-position: bottom left; }

#cboxNext {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -32px;
  background: url(../img/extensions/colorbox/images/controls.png) no-repeat top right;
  width: 28px;
  height: 65px;
  text-indent: -9999px; }

#cboxNext:hover {
  background-position: bottom right; }

#cboxClose {
  position: absolute;
  top: 5px;
  right: 5px;
  display: block;
  background: url(../img/extensions/colorbox/images/controls.png) no-repeat top center;
  width: 38px;
  height: 19px;
  text-indent: -9999px; }

#cboxClose:hover {
  background-position: bottom center; }

#big-header .inside {
  position: relative;
  min-height: 65px; }
#big-header .slider {
  margin: 0;
  position: relative; }
#big-header .flexslider {
  margin: 0;
  padding: 0; }
  #big-header .flexslider .flex-viewport {
    position: relative; }
  #big-header .flexslider .slides {
    margin: 0;
    padding: 0;
    list-style: none;
    position: relative; }
    #big-header .flexslider .slides li {
      overflow: hidden; }
      #big-header .flexslider .slides li img {
        width: 100%; }
  #big-header .flexslider .slider-control {
    background: none;
    height: auto;
    position: absolute;
    padding: 0;
    width: 100%;
    bottom: 0;
    z-index: 1; }
    #big-header .flexslider .slider-control .flex-control-nav {
      text-align: center;
      position: relative;
      top: 0;
      margin: 0;
      padding: 0;
      width: 100%;
      left: auto;
      list-style: none; }
      #big-header .flexslider .slider-control .flex-control-nav li {
        line-height: 100%;
        display: inline-block; }
        #big-header .flexslider .slider-control .flex-control-nav li a {
          display: inline-block;
          width: 12px;
          height: 12px;
          background: rgba(255, 255, 255, 0.6);
          border-radius: 100%;
          text-indent: -9999px;
          margin: 0 2px;
          color: #ffffff;
          border: 3px solid #ffffff; }
          #big-header .flexslider .slider-control .flex-control-nav li a.flex-active {
            background: none;
            border: 3px solid #3366FF;
            width: 14px;
            height: 14px; }

@media screen and (min-width: 48em) {
  #big-header .flexslider {
    margin: 0;
    padding: 0; }
    #big-header .flexslider .flex-viewport {
      position: relative; }
    #big-header .flexslider .slides {
      margin: 0;
      padding: 0;
      list-style: none;
      position: relative; }
    #big-header .flexslider .slider-control {
      top: 50%;
      margin-top: -19px; }
      #big-header .flexslider .slider-control .flex-control-nav {
        display: none; }
      #big-header .flexslider .slider-control .flex-direction-nav {
        list-style: none;
        margin: 0;
        padding: 0; }
        #big-header .flexslider .slider-control .flex-direction-nav a.flex-prev, #big-header .flexslider .slider-control .flex-direction-nav a.flex-next {
          position: absolute;
          display: block;
          width: 39px;
          height: 39px;
          text-indent: -9999px;
          top: 0;
          background: url("../img/prevtnext.png") no-repeat; }
        #big-header .flexslider .slider-control .flex-direction-nav a.flex-prev {
          left: 20px;
          background-position: center left; }
        #big-header .flexslider .slider-control .flex-direction-nav a.flex-next {
          right: 20px;
          background-position: center right; } }
.cc-grower {
  font-size: 13px;
  background-color: #303234;
  color: #ffffff; }
  .cc-grower .cc-banner {
    padding: 15px; }
  .cc-grower .cc-revoke, .cc-grower .cc-window {
    font-family: "Poppins", sans-serif; }
  .cc-grower .cc-link {
    color: #ffffff;
    text-decoration: none; }
    .cc-grower .cc-link:visited, .cc-grower .cc-link:active {
      color: #ffffff; }
    .cc-grower .cc-link:hover {
      text-decoration: underline; }
  .cc-grower .cc-btn {
    text-decoration: none;
    border: 1px solid #ffffff;
    color: #ffffff;
    font-weight: normal; }
    .cc-grower .cc-btn:hover {
      background: none;
      color: #ffffff;
      border-color: #3366FF; }

@font-face {
  font-family: 'Poppins';
  src: url("../fonts/Poppins-Light.eot");
  src: url("../fonts/Poppins-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-Light.woff2") format("woff2"), url("../fonts/Poppins-Light.woff") format("woff"), url("../fonts/Poppins-Light.ttf") format("truetype"), url("../fonts/Poppins-Light.svg#Poppins-Light") format("svg");
  font-weight: 300;
  font-style: normal; }
@font-face {
  font-family: 'Poppins';
  src: url("../fonts/Poppins-Medium.eot");
  src: url("../fonts/Poppins-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Poppins-Medium.woff2") format("woff2"), url("../fonts/Poppins-Medium.woff") format("woff"), url("../fonts/Poppins-Medium.ttf") format("truetype"), url("../fonts/Poppins-Medium.svg#Poppins-Medium") format("svg");
  font-weight: 500;
  font-style: normal; }
@-webkit-viewport {
  width: device-width; }
@-moz-viewport {
  width: device-width; }
@-ms-viewport {
  width: device-width; }
@-o-viewport {
  width: device-width; }
@viewport {
  width: device-width; }
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; }

* {
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 16px; }

body {
  font-family: "Poppins", sans-serif;
  margin: 0;
  padding: 0;
  color: #44474a;
  font-size: 16px;
  font-weight: 300;
  line-height: 160%;
  background: #ffffff;
  -webkit-text-size-adjust: none; }
  body.noscroll {
    overflow: hidden; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle; }

a, a[href^="tel:"] {
  color: #3366FF;
  text-decoration: none;
  outline: none; }
  a:hover, a[href^="tel:"]:hover {
    text-decoration: underline; }

strong {
  font-weight: 500; }

p, a {
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -o-hyphens: auto;
  hyphens: auto; }

/* CLASSES */
.invisible {
  display: none; }

.border-bottom {
  border-bottom: 3px double #d6d6d6;
  padding-bottom: 10px;
  margin-bottom: 20px;
  clear: both; }

.border-top {
  border-top: 3px double #d6d6d6;
  padding-top: 10px;
  margin-top: 20px;
  clear: both; }

.text-center {
  text-align: center; }

ul, ol {
  list-style-position: outside;
  list-style-type: square;
  padding-left: 25px; }

ol {
  list-style-type: decimal; }

.embed-iframe {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  width: 100%;
  height: auto; }
  .embed-iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.col-4, .col-6 {
  margin-bottom: 15px; }

@media screen and (min-width: 30em) {
  .col-6 {
    float: left;
    width: 48%;
    margin-left: 2%;
    margin-right: 2%; }
    .col-6.first {
      margin-left: 0; }
    .col-6.last {
      margin-right: 0; }

  .col-4 {
    float: left;
    width: 48%;
    margin-left: 1%;
    margin-right: 1%; }
    .col-4.last {
      float: none;
      margin: auto;
      clear: both; } }
@media screen and (min-width: 48em) {
  .col-4 {
    float: left;
    width: 32%; }
    .col-4.first {
      margin-left: 0; }
    .col-4.last {
      float: left;
      margin-left: 1%;
      margin-right: 0;
      clear: none; } }
#header .inside {
  padding: 10px 0;
  position: relative;
  margin: auto;
  width: 95%;
  max-width: 1200px; }
#header .logo {
  width: 60%; }
#header #top-nav {
  display: none; }
#header .mobil-btn {
  display: block;
  position: absolute;
  right: 15px;
  top: 25px;
  width: 25px;
  height: 16px;
  cursor: pointer; }
  #header .mobil-btn span {
    display: block;
    width: 25px;
    height: 3px;
    background: #3366FF; }
    #header .mobil-btn span:before, #header .mobil-btn span::before, #header .mobil-btn span:after, #header .mobil-btn span::after {
      position: absolute;
      content: "";
      width: 25px;
      height: 3px;
      background: #3366FF; }
    #header .mobil-btn span:before, #header .mobil-btn span::before {
      top: 6px; }
    #header .mobil-btn span:after, #header .mobil-btn span::after {
      top: 12px; }

@media screen and (min-width: 38.75em) {
  #header .logo {
    width: 40%; } }
@media screen and (min-width: 48em) {
  #header #top-nav {
    display: block;
    position: absolute;
    right: 60px;
    top: 20px; }
    #header #top-nav ul {
      padding: 0;
      margin: 0;
      list-style: none;
      font-size: 12px; }
      #header #top-nav ul li {
        display: inline-block; }
        #header #top-nav ul li a, #header #top-nav ul li strong {
          color: #44474a;
          padding: 0 10px; }
          #header #top-nav ul li a.active, #header #top-nav ul li a:hover, #header #top-nav ul li strong.active, #header #top-nav ul li strong:hover {
            cursor: pointer;
            color: #3366FF;
            text-decoration: none; }
        #header #top-nav ul li strong {
          color: #3366FF; } }
@media screen and (min-width: 62em) {
  #header #top-nav {
    right: 0px; }
  #header .mobil-btn {
    display: none; } }
#footer {
  background: #303234;
  color: #ffffff;
  font-size: 14px;
  overflow: hidden; }
  #footer .inside {
    padding: 30px 0 15px 0;
    position: relative;
    overflow: hidden;
    margin: auto;
    width: 95%;
    max-width: 1200px; }
  #footer .footer-adress-data {
    overflow: hidden; }
    #footer .footer-adress-data .footer-contact span {
      display: inline-block;
      width: 60px; }
    #footer .footer-adress-data .footer-contact a.email {
      color: #ffffff; }
    #footer .footer-adress-data .footer-contact a[href^="tel:"] {
      color: #ffffff; }
      #footer .footer-adress-data .footer-contact a[href^="tel:"]:hover {
        text-decoration: none; }
  #footer #footer-nav {
    margin: 15px 0 0 0; }
    #footer #footer-nav ul {
      list-style: none;
      padding: 0; }
      #footer #footer-nav ul li a {
        color: #ffffff; }
        #footer #footer-nav ul li a:hover, #footer #footer-nav ul li a.active {
          color: #3366FF;
          text-decoration: none; }
      #footer #footer-nav ul li strong {
        font-weight: 500;
        color: #3366FF; }
  #footer .footer-copyright {
    padding-top: 15px;
    margin-top: 25px;
    text-align: center;
    font-size: 11px;
    border-top: 1px solid #5d5d5d;
    color: #5d5d5d;
    float: left;
    width: 100%;
    border-top: 3px double #5d5d5d; }

@media screen and (min-width: 30em) {
  .footer-adress-data .footer-adress, .footer-adress-data .footer-contact {
    width: 45%;
    float: left; }
  .footer-adress-data .footer-adress {
    margin-right: 5%; }
  .footer-adress-data .footer-contact {
    margin-left: 5%; } }
@media screen and (min-width: 48em) {
  #footer .footer-adress-data {
    overflow: hidden;
    width: 65%;
    float: left;
    margin-right: 5%; }
  #footer #footer-nav {
    margin: 0 0 0 5%;
    float: right;
    width: 25%; }
    #footer #footer-nav ul {
      text-align: right; } }
#wrapper {
  background: #ffffff; }

#container {
  min-height: 420px;
  overflow: hidden; }

#main .inside {
  position: relative;
  padding: 40px 0 50px 0;
  margin: auto;
  width: 95%;
  max-width: 1200px; }

.mod_article {
  clear: both;
  position: relative; }
  .mod_article:after, .mod_article::after {
    content: "";
    display: table;
    clear: both; }

@media screen and (min-width: 48em) {
  #main .inside {
    position: relative; } }
#navigation, #navigation-mobil {
  display: none;
  background: rgba(68, 71, 74, 0.9);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 100;
  padding-top: 50px; }
  #navigation ul, #navigation-mobil ul {
    font-size: 14px;
    margin: 0 auto;
    list-style: none;
    padding: 0; }
    #navigation ul li, #navigation-mobil ul li {
      display: block;
      position: relative; }
      #navigation ul li a, #navigation ul li strong, #navigation-mobil ul li a, #navigation-mobil ul li strong {
        display: block;
        position: relative;
        padding: 5px 15px;
        color: #ffffff;
        text-transform: uppercase; }
        #navigation ul li a.active, #navigation ul li a:hover, #navigation ul li a.trail, #navigation ul li strong.active, #navigation ul li strong:hover, #navigation ul li strong.trail, #navigation-mobil ul li a.active, #navigation-mobil ul li a:hover, #navigation-mobil ul li a.trail, #navigation-mobil ul li strong.active, #navigation-mobil ul li strong:hover, #navigation-mobil ul li strong.trail {
          cursor: pointer;
          color: #3366FF;
          text-decoration: none; }
        #navigation ul li a.active, #navigation ul li a.trail, #navigation ul li strong.active, #navigation ul li strong.trail, #navigation-mobil ul li a.active, #navigation-mobil ul li a.trail, #navigation-mobil ul li strong.active, #navigation-mobil ul li strong.trail {
          font-weight: 500; }
      #navigation ul li strong, #navigation-mobil ul li strong {
        font-weight: 500; }
      #navigation ul li.submenu:hover ul.level_2, #navigation-mobil ul li.submenu:hover ul.level_2 {
        display: block; }
    #navigation ul.level_2, #navigation-mobil ul.level_2 {
      text-align: left;
      display: none;
      position: absolute;
      top: 55px;
      left: 0px;
      background: #ffffff;
      padding: 0;
      padding-top: 0px;
      padding-bottom: 0px;
      min-width: 100%;
      box-shadow: 0px 5px 4px -4px rgba(0, 0, 0, 0.3);
      z-index: 101;
      white-space: nowrap; }
      #navigation ul.level_2 li, #navigation-mobil ul.level_2 li {
        float: none;
        display: block; }
        #navigation ul.level_2 li a, #navigation ul.level_2 li strong, #navigation-mobil ul.level_2 li a, #navigation-mobil ul.level_2 li strong {
          padding-top: 5px;
          padding-bottom: 5px; }
  #navigation .close-btn, #navigation-mobil .close-btn {
    display: block;
    color: #ffffff;
    position: absolute;
    top: 15px;
    right: 15px;
    cursor: pointer;
    width: 25px;
    height: 25px;
    text-indent: -9999px; }
    #navigation .close-btn:before, #navigation .close-btn::before, #navigation-mobil .close-btn:before, #navigation-mobil .close-btn::before {
      display: inline-block;
      width: 30px;
      height: 1px;
      position: absolute;
      content: "";
      top: 10px;
      left: -4px;
      background: #ffffff;
      -webkit-transform: rotateZ(45deg);
      -moz-transform: rotateZ(45deg);
      -o-transform: rotateZ(45deg);
      transform: rotateZ(45deg); }
    #navigation .close-btn:after, #navigation .close-btn::after, #navigation-mobil .close-btn:after, #navigation-mobil .close-btn::after {
      display: inline-block;
      width: 30px;
      height: 1px;
      position: absolute;
      content: "";
      top: 10px;
      left: -4px;
      background: #ffffff;
      -webkit-transform: rotateZ(-45deg);
      -moz-transform: rotateZ(-45deg);
      -o-transform: rotateZ(-45deg);
      transform: rotateZ(-45deg); }

#navigation-mobil {
  overflow: auto; }
  #navigation-mobil ul {
    text-align: center;
    font-size: 20px;
    line-height: 130%; }
    #navigation-mobil ul.level_2 {
      -webkit-box-shadow: none;
      -moz-box-shadow: none;
      -o-box-shadow: none;
      box-shadow: none;
      font-size: 17px;
      top: auto;
      position: relative;
      background: none;
      display: block;
      text-align: center;
      white-space: normal; }

@media screen and (min-width: 62em) {
  #navigation-mobil {
    display: none; }

  #navigation {
    border-top: 1px solid #eeeeee;
    display: block;
    position: relative;
    top: auto;
    padding-top: 0;
    background: none; }
    #navigation ul {
      text-align: center; }
      #navigation ul li {
        display: inline-block; }
        #navigation ul li a, #navigation ul li strong {
          color: #44474a;
          padding: 15px 20px; }
          #navigation ul li a.active, #navigation ul li a:hover, #navigation ul li a.trail, #navigation ul li strong.active, #navigation ul li strong:hover, #navigation ul li strong.trail {
            color: #3366FF; }
        #navigation ul li strong {
          color: #3366FF; } }
@media screen and (min-width: 87.5em) {
  #navigation ul li a, #navigation ul li strong {
    padding: 10px 20px; }
  #navigation ul.level_2 {
    top: 45px; } }
/* Audio */
.player-wrapper, .youtube-wrapper, .vimeo-wrapper {
  width: 100%;
  margin: 15px 0;
  max-width: 100%; }
  .player-wrapper video, .youtube-wrapper video, .vimeo-wrapper video {
    width: 100%;
    max-width: 100% !important; }
  .player-wrapper audio, .youtube-wrapper audio, .vimeo-wrapper audio {
    width: 100%;
    max-width: 100% !important; }

.youtube-wrapper, .vimeo-wrapper {
  position: relative;
  width: 100% !important;
  height: auto !important;
  padding-top: 56.25%; }
  .youtube-wrapper h1, .youtube-wrapper h2, .youtube-wrapper h3, .youtube-wrapper h4, .youtube-wrapper h5, .youtube-wrapper h6, .vimeo-wrapper h1, .vimeo-wrapper h2, .vimeo-wrapper h3, .vimeo-wrapper h4, .vimeo-wrapper h5, .vimeo-wrapper h6 {
    position: absolute;
    top: 0; }
  .youtube-wrapper iframe, .vimeo-wrapper iframe {
    position: absolute;
    top: 55px;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100% !important;
    height: 100% !important; }

.accordion-wrapper {
  clear: both;
  margin-bottom: 3px; }
  .accordion-wrapper.last {
    margin-bottom: 30px; }
  .accordion-wrapper .toggler {
    background: #3366FF;
    padding: 12px 25px;
    color: #ffffff;
    position: relative; }
    .accordion-wrapper .toggler:after, .accordion-wrapper .toggler::after {
      content: "\02795";
      float: right;
      color: #ffffff; }
    .accordion-wrapper .toggler.active:after, .accordion-wrapper .toggler.active::after {
      content: "\2796";
      color: #ffffff; }
    .accordion-wrapper .toggler:hover {
      cursor: pointer; }
  .accordion-wrapper .accordion {
    background: #f5f5f5;
    padding: 20px 25px;
    overflow: hidden;
    overflow: hidden; }

.text:after, .text::after {
  content: "";
  display: table;
  clear: both; }

.hyperlink {
  margin: 10px 0; }
  .hyperlink a {
    padding: 8px 10px;
    background: #3366FF;
    color: #ffffff;
    border: none;
    display: inline-block; }
    .hyperlink a:hover {
      text-decoration: none;
      background: #303234; }

form {
  margin: 0;
  background: #eeeeee;
  padding: 20px; }
  form legend {
    font-size: 20px;
    margin-bottom: 20px; }
  form label, form legend {
    display: block;
    font-weight: 500; }

textarea, input[type="text"], input[type="search"], input[type="password"], input[type="number"], input[type="email"], input[type="tel"], select {
  box-sizing: border-box;
  color: #44474a;
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  margin: 5px 0;
  padding: 5px 10px;
  text-align: left;
  width: 100%;
  border: none; }

.widget {
  margin-bottom: 5px;
  width: 100%;
  position: relative; }
  .widget p.error {
    margin: 0;
    font-size: 13px;
    color: #a60000; }
  .widget:after, .widget::after {
    content: "";
    display: table;
    clear: both; }

.widget-submit {
  width: auto;
  clear: both; }
  .widget-submit .submit {
    padding: 8px 10px;
    background: #3366FF;
    color: #ffffff;
    border: none; }
    .widget-submit .submit:hover {
      background: #303234;
      cursor: pointer; }

.widget-radio legend, .widget-checkbox legend {
  font-size: 16px;
  margin-bottom: 0; }
  .widget-radio legend .invisible, .widget-checkbox legend .invisible {
    display: none; }
  .widget-radio legend .mandatory, .widget-checkbox legend .mandatory {
    display: inline;
    width: auto;
    float: none;
    padding: 0; }
.widget-radio label, .widget-checkbox label {
  display: inline-block;
  margin: 0 10px;
  float: none;
  width: auto;
  font-weight: 300; }
.widget-radio .checkbox, .widget-checkbox .checkbox {
  float: left;
  display: inline-block;
  margin: 5px 5px 5px 0px; }

.widget-checkbox label {
  width: 80%;
  margin-left: 10px;
  margin-right: 0px;
  float: left; }
.widget-checkbox span {
  float: left;
  width: 100%;
  display: block; }

.widget-explanation {
  margin: 20px 0; }

@media screen and (min-width: 48em) {
  form label {
    width: 20%;
    margin-right: 5%;
    display: block;
    float: left; }

  textarea, input[type="text"], input[type="search"], input[type="password"], input[type="number"], input[type="email"], input[type="tel"], select, .widget-explanation {
    width: 75%;
    float: left; }

  .widget p.error {
    position: absolute;
    left: 0px;
    bottom: -15px; }

  .widget-radio legend {
    float: left;
    width: 20%;
    margin-right: 5%; }

  .widget-checkbox span {
    padding-left: 25%; }

  .widget-submit, .widget-explanation {
    margin-left: 25%; } }
h1, h2, h3, h4, h5, h6 {
  line-height: 160%;
  margin-top: 20px;
  margin-bottom: 10px;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto; }

h1 {
  font-size: 22px;
  margin-bottom: 25px;
  position: relative;
  color: #3366FF;
  margin-top: 0;
  text-transform: uppercase;
  text-align: center; }

h2 {
  font-size: 20px;
  margin-top: 30px;
  margin-bottom: 15px;
  position: relative; }
  h2:after, h2::after {
    position: absolute;
    content: "";
    height: 3px;
    width: 70px;
    left: 0;
    right: 0;
    background: #3366FF;
    z-index: 2;
    bottom: -5px;
    z-index: 1; }

h3 {
  font-size: 18px; }

h4, h5, h6 {
  font-size: 16px; }

h3, h4 {
  color: #3366FF; }

h5 {
  border-left: 3px solid #3366FF;
  padding-left: 10px; }

h6 {
  text-transform: uppercase;
  font-size: 14px;
  margin-top: 0; }

.image_container {
  position: relative; }
  .image_container img {
    -moz-box-shadow: 0px 0 12px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 0 12px rgba(0, 0, 0, 0.2);
    -o-box-shadow: 0px 0 12px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0 12px rgba(0, 0, 0, 0.2);
    border: 5px solid #ffffff; }
  .image_container a {
    color: #44474a; }
    .image_container a:hover {
      color: #3366FF;
      text-decoration: none; }
      .image_container a:hover .caption {
        color: #3366FF; }
  .image_container.with_link {
    margin-top: 6px;
    text-align: center; }
    .image_container.with_link img {
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      -o-box-shadow: none;
      box-shadow: none;
      border: none;
      width: 100%; }
    .image_container.with_link .caption {
      font-weight: 700;
      padding: 0;
      color: #44474a;
      font-size: 16px;
      margin-top: 10px; }
    .image_container.with_link:hover .caption {
      color: #3366FF; }
  .image_container.float_right {
    margin-bottom: 20px; }
  .image_container.float_left {
    margin-bottom: 20px; }
  .image_container .caption {
    font-size: 13px;
    line-height: 1.5;
    padding: 5px;
    color: #5d5d5d; }

/* Galerie */
.gallery:after, .gallery::after {
  content: "";
  display: table;
  clear: both; }
.gallery ul {
  padding: 0;
  margin: 0 -10px;
  list-style: none; }
  .gallery ul.cols_1 li, .gallery ul.cols_2 li, .gallery ul.cols_3 li, .gallery ul.cols_4 li, .gallery ul.cols_5 li, .gallery ul.cols_6 li, .gallery ul.cols_7 li, .gallery ul.cols_8 li, .gallery ul.cols_9 li, .gallery ul.cols_10 li, .gallery ul.cols_11 li, .gallery ul.cols_12 li {
    padding: 10px;
    float: left;
    width: 50%; }
  .gallery ul.cols_1 li {
    width: 100%; }
.gallery img {
  width: 100%; }
.gallery .image_container img {
  width: 100%; }
.gallery .image_container .caption {
  position: absolute;
  bottom: 0;
  background: rgba(255, 255, 255, 0.8);
  width: 100%;
  padding: 5px 10px; }

#cboxTitle {
  padding: 0 10px;
  color: #ffffff;
  width: 100%;
  bottom: 5px;
  top: auto;
  font-size: 13px; }

#cboxCurrent {
  font-size: 13px; }

@media screen and (min-width: 30em) {
  .image_container.float_right {
    float: right;
    margin-left: 4%;
    margin-bottom: 25px; }
  .image_container.float_left {
    float: left;
    margin-right: 4%;
    margin-bottom: 25px; }

  /* Galerie */
  .gallery ul.cols_3 li, .gallery ul.cols_4 li, .gallery ul.cols_5 li, .gallery ul.cols_6 li, .gallery ul.cols_7 li, .gallery ul.cols_8 li, .gallery ul.cols_9 li, .gallery ul.cols_10 li, .gallery ul.cols_11 li, .gallery ul.cols_12 li {
    width: 33.3333%; } }
@media screen and (min-width: 38.75em) {
  /* Galerie */
  .gallery ul.cols_4 li, .gallery ul.cols_5 li, .gallery ul.cols_6 li, .gallery ul.cols_7 li, .gallery ul.cols_8 li, .gallery ul.cols_9 li, .gallery ul.cols_10 li, .gallery ul.cols_11 li, .gallery ul.cols_12 li {
    width: 25%; } }
@media screen and (min-width: 48em) {
  /* Galerie */
  .gallery ul.cols_5 li, .gallery ul.cols_10 li, .gallery ul.cols_11 li, .gallery ul.cols_12 li {
    width: 20%; }
  .gallery ul.cols_6 li {
    width: 16.6667%; }
  .gallery ul.cols_7 li {
    width: 14.2857%; }
  .gallery ul.cols_8 li {
    width: 12.5%; }
  .gallery ul.cols_9 li {
    width: 11.1111%; } }
@media screen and (min-width: 62em) {
  /* Galerie */
  .gallery ul.cols_10 li {
    width: 10%; }
  .gallery ul.cols_11 li {
    width: 9.0909%; }
  .gallery ul.cols_12 li {
    width: 8.3333%; } }
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto; }

table {
  margin-top: 20px;
  border-collapse: collapse;
  width: 100%;
  max-width: 100%;
  background-color: transparent;
  margin-bottom: 30px; }
  table caption, table th {
    font-weight: 500; }
  table td, table th {
    padding: 15px 25px;
    vertical-align: top;
    border-bottom: 3px solid #eeeeee; }
  table thead th {
    background: #3366FF;
    color: #ffffff; }
  table tfoot td {
    background: #f5f5f5; }
  table th {
    background: #f5f5f5; }
