/* -- FONTS ----------------------------------------------------------------- */

/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 300;
  src: url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Light'), local('OpenSans-Light'),
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../../../../lib/fonts/open-sans/open-sans-v17-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* -- LAYOUT --------------------------------------------------------------- */
:root { }

html { position: relative; min-height: 100%; margin: 0; padding: 0; font-size: 100%; }

body {
  font-family: "Open Sans","Lucida Sans","Lucida Grande","Lucida Sans Unicode",Calibri,sans-serif;
  position: relative;
  font-size: 1rem;
  color: #333;
  background: transparent;
  line-height: 1.3;
  
}

/* -- HEADER ---------------------------------------------------------------- */
header {
   height: 80px;
   background-color: rgba(255, 255, 255, 1);
   background-color: #eaeaea;
   display: flex;
   justify-content : space-between;
   box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
   position: fixed;
   top:0;
   right:0;
   left:0;
   z-index: 9999;
   transition: transform 0.5s 0.1s ease-in-out;
}
.down header { transform: translate3d(0, -80px, 0); }

.logo a.logo-txt {
  display: block;
  font-size: 36px;
  color: #c14b4b;
  width: 100%;
  margin-left: 0px;
  padding-top: 10px;
  padding-bottom: 20px;
}
.logo a.logo-img img {
  max-width: 230px;
  margin-top: 15px;
  margin-bottom: 15px;
}

.navbar { background: transparent;  margin: 0 auto;  padding: 0;  border-radius:0; width: 1140px; }
.navbar .nav { padding-top: 12px; }
.navbar ul li a { color: #333; }
.navbar ul > li.active > a { color: #fafafa;  background: #c14b4b; }
.navbar ul > li > a:hover { color: #fafafa;  background: #c14b4b; }
.navbar ul > li.open > a:focus { color: #fafafa;  background: #c14b4b; }
.navbar .nav .open > a { color: #fafafa;  background: #e6b7b7; }
.navbar ul.dropdown-menu { padding: 4px; background: #fff; color: #333; border: 0;}
.navbar .navbar-toggle { background: #c14b4b;  color:#fff;  margin-top:17px; }
.navbar .navbar-toggle .icon-bar { background:#fafafa; }

ul.cart-nav li a  { padding: 6px; }
ul.cart-nav li a i { color: #333; font-size: 18px; }

/* Large Devices, Wide Screens */
@media only screen and (max-width : 1600px) {}

/* Medium Devices, Desktops */
@media only screen and (max-width : 1170px) {
  .logo a.logo-img img { width: 200px; margin-top: 14px; margin-left: 15px; }
}

/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
  .logo a.logo-img img {  }
  .navbar-collapse.collapse.in { margin: 0; border: 0; background: #efefef;  width: 100%; transition: none;}
}

/* Extra Small Devices, Phones */
@media only screen and (max-width : 480px) {
  .logo a.logo-img img { width: 120px; margin-top: 30px; }
}

/* Custom, iPhone Retina */
@media only screen and (max-width : 320px) {}

@media only screen and (min-width : 768px) {
  /* Make Navigation Toggle on Desktop Hover */
  .dropdown:hover .dropdown-menu { display: block; }
}


#page {
  height:100%;
  min-height: 100vh;
  width: 100%;
  display: grid;
  grid-template-rows: 80px 1fr 150px;
  grid-template-columns: 100%;
  grid-template-areas: "header" "content" "footer";
}

header { grid-area: header; }
footer { grid-area: footer; }

#wrapper {
  width: 100%;
  grid-area: content;
  background: transparent;
  padding: 0;
  position: relative;
  z-index: 9;
  padding-bottom: 100px;
}

.container div.se-cont.container { width: 100% !Important; }
.se-row { margin-right: -15px; margin-left: -15px; }

/* -- ÜBERSCHRIFTEN --------------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
  font-family: "Open Sans","Lucida Sans","Lucida Grande","Lucida Sans Unicode",Calibri,sans-serif;
  font-weight: 300;
  line-height: 1.1;
  margin: 0 0 0.25em;
}
h1 { color: #333; font-size: 2.2rem; }
h2 { color: #333; font-size: 1.7rem; }
h3 { color: #333; margin-top: 40px; font-size: 1.5rem; }
h4 { color: #333; font-size: 1.3rem; }
h5 { color: #333; font-size: 1.1rem; }
h6 { color: #333; font-size: 1rem; }
.se-section h1, .se-section h2, .se-section h3, .se-section h4, .se-section h5 { margin-top: 0; }

/* -- SOCIAL ---------------------------------------------------------------- */
.social {}
.social li a i { color: #333 }
.social li a:hover i { color: #c14b4b }

/* -- RECHTLICHES ----------------------------------------------------------- */
.rechtliches p { margin: 0; padding: 0; }
.rechtliches p a { margin: 0; padding: 0; }

/* -- FOOTER ---------------------------------------------------------------- */
footer {
    background-color: #eaeaea;
    color: #333;
    font-size: 14px;
    width: 100%;
    height: auto;
    border-top: 2px solid #d03e4a;
    padding-top: 10px;
}
footer .container { background: transparent; padding-top: 10px; }
footer h4 { color: #d03e4a; border-bottom: 1px dotted #ddd; padding-bottom: 3px; }
footer .copyright,
footer .copyright a { color: #666; background-color: #efefef; padding: 2px 0 2px 0; margin-top: 10px; font-size: 0.75rem; }
footer a,
footer a:link,
footer a:active,
footer a:visited
{
    color: #666;
    font-size: inherit;
}
footer .kontakt span { float:left; width: 55px; }


#shop-modal-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 9999;
}

/* -- SUCHE ----------------------------------------------------------------- */
.search-popup {
  height: 100vh;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(10px);
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
}
.search-popup:target {
  opacity: 1;
  visibility: visible;
}
.search-popup-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 25%;
  padding: 20px;
  background-color: white;
  box-shadow: 0 2rem 4rem rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  overflow: hidden;
}
.search-popup .float-right { float: right; text-align: right; }
.search-popup h5 { margin-bottom: 10px; }

.shop-suchergebnis { margin: 20px 0;  }
.katse { border: 1px solid #ddd; padding: 10px; background-color: #eaeaea; text-decoration: none; color: #333; margin-bottom: 10px; }
.katse:hover { background-color: #fafafa; }

/* -- SHOP-Sidebar ---------------------------------------------------------- */
#shop-sidebar {
  position: fixed;
  top: 20%;
  right: 5px;
  z-index: 9998;
}
#shop-sidebar ul {
  display: inline-block;
  list-style: none;
  margin: 0;
  padding: 0;
}
#shop-sidebar ul li {
  border: 1px solid #ddd;
  border-radius: 4px;
  margin-bottom: 5px;
}
#shop-sidebar ul li a {
  color: #333;
  font-size: 22px;
  padding: 8px 4px;
}
#shop-sidebar ul li a:hover {
  color: #c14b4b;
}

.tools {
  position: absolute;
  top: 10vh;
  left: 0;
  background-color: #889;
  border: 1px solid #6e6e80;
  border-left: 0;
}
.tools > li {
  margin: 8px 8px;
}
.tools > li.separator {
  margin: 8px 4px;
  border-top: 1px solid #6e6e80;
  border-bottom: 1px solid #a3a3b1;
}
.tool-btn > label {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  border: 1px solid #4b4b57;
  font-size: 12px;
  border-radius: 2px;
  padding: 8px;
  color: #cdcdd4;
  background-color: #889;
  box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.2), inset 1px 1px 1px rgba(255, 255, 255, 0.3), inset -1px -1px 1px rgba(0, 0, 0, 0.3);
  transition: background-color 125ms;
}
.tool-btn > input[type=radio] {
  position: absolute;
  font-size: 0;
  left: -100%;
}
.tool-btn > input[type=radio]:checked + label {
  background-color: #4b4b57;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.3);
}
.tool-btn > input[type=radio]:focus + label {
  box-shadow: 0 0 15px 1px #3498db;
}


/* -- MEDIA-QUERIES --------------------------------------------------------- */

/* Large Devices, Wide Screens */
@media only screen and (max-width : 1600px) {}
/* Medium Devices, Desktops */
@media only screen and (max-width : 992px) {}
/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
  footer h4 { padding-top: 16px; }
  .search-popup-content {
    top: 40%;
    left: 15%;
    transform: translate(-10%, -10%);
    width: auto;
    padding: 10px;
  }
}
/* Extra Small Devices, Phones */
@media only screen and (max-width : 480px) {}
/* Custom, iPhone Retina */
@media only screen and (max-width : 320px) {}


