@import url("gridlex.min.css");
 /* ---------------------------------------------------------
   Basisgestaltung und Layoutbereiche
   ---------------------------------------------------------*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}
* {
  margin:0;
  padding:0;
}
html {
  font-family: 'Nunito Sans', Arial, sans-serif;
  font-size: 62.5%;
  -ms-text-size-adjust: 100%; /* Prevent iOS text size adjust after orientation change */
  -webkit-text-size-adjust: 100%;
  background-color:#fff;
}
body {
  font-size: 1.6rem;
  color: #4c4d3c;
  min-width: 320px;
  margin: 0 auto;
}

*, *:before, *:after {
	box-sizing         : border-box;
	-moz-box-sizing    : border-box;
	-webkit-box-sizing : border-box;
}


TABLE, TR, TD, TH {
  font-family: 'Nunito Sans', Arial, sans-serif;
  font-size: 1.6rem;
	vertical-align:top;
	border-spacing: 0px;
	border-style: none;
	border-collapse: collapse;
}

A {
  color:#4c4d3c;
  outline: 0;
}

A IMG,
IMG {
	border:0;
}
B, STRONG {font-weight:700;}
P {
  margin-bottom:35px;
  line-height:1.45em;
}

H1,H2,H3,H4,H5,H6 {
  font-family: 'Nunito Sans', Arial, serif;
  font-weight:700;
  color:#4c4d3c;
  line-height:1;
}
H1 {
  position: relative;
  font-size: 3.6rem;
  color:#ed3424;
  margin-bottom:20px;
}
H2 {
  position: relative;
  font-size: 3.6rem;
  color: #ed3424;
  line-height: 1;
  margin-bottom:20px;
}
H3 {
  font-size: 2.4rem;
  font-weight:400;
  margin-bottom:10px;
}

h5{
  color:#4c4d3c;
  font-size:2.2rem;
  font-weight:370;
  text-align: center;
  padding-bottom:25px;
}

.bg-dark {
  color:#fff;
}
.bg-dark H1,.bg-dark H2, .bg-dark H3 {
  color:#fff;
}

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

.flexcon {display:flex;}

/* Elemente verstecken */
.hideme {
  display:none;
}

/* Clearfix */
.clearfix:after {
	content    : ".";
	display    : block;
	clear      : both;
	font-size  : 0;
	height     : 0;
	visibility : hidden;
}
.clear { clear: both; }

.reframe { max-width:940px; padding: 0 10px; margin: 0 auto; position:relative; }
[class~="grid"],
[class*="grid-"],
[class*="grid_"] {
  margin: 0 -10px 30px;
}
[class*="col-"], [class*="col_"], [class~="col"] {
  padding: 0 10px 20px;
}

.hide-lg {display:none;}

/* HEADER */
HEADER {
  position: relative;
	height:140px;
	background-color: #fff;
  z-index:10001;
  padding:
			0
			env(safe-area-inset-right)
			0
			env(safe-area-inset-left);
}

#logo {
  padding:30px 0 0 40px;
}
#logo A {
  display:block;
  background: url(../logo_alvero_de.svg) no-repeat;
  width: 224px;
  height: 82px;
  background-size:contain;
  text-indent:-999em;
}


#toggleMenu {
  display:none;
}
/*svg*/
.icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  vertical-align:middle;
}
.icon-menu {
  width: 30px;
  height: 24px;
  color:#aaabad;
}
.icon-cross {
  width: 22px;
  height: 22px;
  color:#aaabad;
}

/* NAVIGATION */
#topnavi  {
  position:absolute;
  left:320px; top:53px;
  display:block;
}
#topnavi > UL {
  display:flex;
  list-style: none;
}
#topnavi > UL > LI {
  position: relative;
}

#topnavi > UL > LI > A {
  position:relative;
  display:inline-block;
  font-size: 2.8rem;
  color: #4c4d3c;
  text-decoration:none;
  padding:0 20px;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
#topnavi > UL > LI.current > A,
#topnavi > UL > LI:hover > A,
#topnavi > UL > LI > A.red
 {
  color:#ed3424;
}

/* MAIN */
MAIN {
  padding:
  0
  env(safe-area-inset-right)
  0
  env(safe-area-inset-left);
}
SECTION {overflow:hidden;}

MAIN ul, MAIN OL { margin: 0 0 40px 15px;list-style-type: square; }
MAIN ul li,MAIN OL li  { position: relative;margin-bottom:15px;}

FIGURE IMG {display:block;width:100%;}
MAIN IMG {max-width: 100%; height:auto;}

/* Keyvisual */
#keyvisual {
  position: relative;
  display: flex;
  justify-content: center;
  padding:0;
  background-color: #f3f3f3;
}
#keyvisual IMG {
  display:block;
  width:100%;
  height:auto;
}
#keyvisual__text {
  position: absolute;
  left:0;
  top: 50%;
  transform: translateY(-50%);
  width:33%;
  max-width: 530px;
  height:auto;
  color:#4c4d3c;
  padding: 45px 40px 45px 40px;
  background-color: rgba(255, 255, 255, 0.6);
}

/* SECTIONS */
SECTION {
  padding:90px 0 20px;
}

.bg-lightgrey {
  background-color: #efefed;
}
.bg-dark {
  background-color: #4c4d3c;
}
.bg-lightgrey H2, .bg-lightgrey H3 {
  color: #323232;
}

/* STANDARD */
.btn-link, INPUT.btn-submit {
  display: inline-block !important;
  font-size: 1.8rem !important;
  color:#fff !important;
  padding: 7px 30px !important;
  background-color: #ed3424 !important;
  text-decoration: none !important;
}

.box-lightgrey {
  background-color: #efefed;
}

.box-lightgrey__ text{
  font-family: NunitoSans;
  font-size: 24px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.33;
  letter-spacing: normal;
  text-align: center;
  color: #4c4d3c;
}


/* Slider */
#slider {
  padding-top:0;
  margin-bottom:80px;
}
#slider .reframe {
  width:100%;
  max-width:1250px;
  padding: 0 50px;
  overflow:hidden;
}

.product-slider-frame .slick-arrow {
  font-size: 0;
  line-height: 0;
  width: 30px;
  height: 50px;
  border:0;
  outline: none;
  cursor: pointer;
}

/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 50%;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: -45px;
}

.slick-next
{
    right: -45px;
}

.product-slider-frame .slick-prev {

  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 28' height='50' width='50'%3E%3Cpath d='M9.797 8.5c0 0.125-0.063 0.266-0.156 0.359l-6.141 6.141 6.141 6.141c0.094 0.094 0.156 0.234 0.156 0.359s-0.063 0.266-0.156 0.359l-0.781 0.781c-0.094 0.094-0.234 0.156-0.359 0.156s-0.266-0.063-0.359-0.156l-7.281-7.281c-0.094-0.094-0.156-0.234-0.156-0.359s0.063-0.266 0.156-0.359l7.281-7.281c0.094-0.094 0.234-0.156 0.359-0.156s0.266 0.063 0.359 0.156l0.781 0.781c0.094 0.094 0.156 0.219 0.156 0.359z' style='fill:%23ed3424' /%3E%3C/svg%3E");
    background-repeat: repeat;
    background-repeat: no-repeat;
    background-position: center center;
}
.product-slider-frame .slick-next {

  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 28' height='50' width='50'%3E%3Cpath d='M9.297 15c0 0.125-0.063 0.266-0.156 0.359l-7.281 7.281c-0.094 0.094-0.234 0.156-0.359 0.156s-0.266-0.063-0.359-0.156l-0.781-0.781c-0.094-0.094-0.156-0.219-0.156-0.359 0-0.125 0.063-0.266 0.156-0.359l6.141-6.141-6.141-6.141c-0.094-0.094-0.156-0.234-0.156-0.359s0.063-0.266 0.156-0.359l0.781-0.781c0.094-0.094 0.234-0.156 0.359-0.156s0.266 0.063 0.359 0.156l7.281 7.281c0.094 0.094 0.156 0.234 0.156 0.359z' style='fill:%23ed3424' /%3E%3C/svg%3E");
    background-repeat: repeat;
    background-repeat: no-repeat;
    background-position: center center;
}



/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{

    font-size: 4rem;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: #ed3424;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: 1;
    color: #ed3424;
}

.productteaser {
  position: relative;
  background-color: #efefed;
}
.productteaser:nth-child(odd) {
  background-color: #BCBCBC;
}
.stoerer {
  position: absolute;
  right:20px; bottom:20px;
  width: 100px; height:100px;
}



/* FORM */
#contactform  {
    width: 100%;
}
#contactform INPUT, #contactform TEXTAREA {
    font-family: 'Nunito Sans', Arial, sans-serif;
    font-size: 1.8rem;
    color:#4c4d3c;
    display: block;
    flex-basis: auto;
    width: 100%;
    height: 40px;
    padding: 0 30px;
    border: 0;
    background-color: #fff;
}
INPUT.btn-submit {
	width: auto !important;
}
#contactform TEXTAREA {
    padding: 8px 30px;
}


/* FOOTER */
FOOTER {
  position:relative;
  border-top: 5px solid #4c4d3c;
  clear:both;
  padding:
  70px
  env(safe-area-inset-right)
  0
  env(safe-area-inset-left);
}
FOOTER [class~="grid"],FOOTER [class~="grid-center"] {
  padding-top:0;
  padding-bottom:0;
  margin-bottom:0;
}

FOOTER A {
  color: #636363;
  text-decoration:none;
}

FOOTER H4 {
  font-size: 2.4rem;
  margin-bottom:25px;
}
FOOTER P,
FOOTER LI {
  line-height:1.75;
}

FOOTER UL {
  list-style: none;
  margin:0 0 25px 0;
}
FOOTER LI {
  position:relative;
  padding-left:0;
}

.red-link {
  color:#ed3424;
  font-weight:700;
}

.social-icon {
  margin-right:15px;
}

FOOTER .meta {
  background-color:#4c4d3c;
  color:#fff;
  min-height:40px;
}
FOOTER .meta [class*="col-"], FOOTER .meta [class*="col_"], FOOTER .meta [class~="col"] {
  padding-bottom: 0;
}
FOOTER .meta A {
  display: inline-block;
  color:#fff;
  padding:9px 0;
}
FOOTER .meta A:first-child {
  margin-right:70px;
}

FOOTER .alert-small {
  font-size: 10px;
    line-height: 1.4;
}

/* ---------------------------------------------------------
   @media
   ---------------------------------------------------------*/


@media screen and (max-width: 1140px) {

  #topnavi > UL > LI > A {
    font-size: 2.3rem;
    padding:0 15px;
  }

}

/* ---------------------------------------------------------*/
@media screen and (max-width: 1024px) {

    #toggleMenu {
      display:block;
      position:absolute;
      right:40px;
      top:55px;
      height:22px;
      width:30px;
      text-align:center;
      cursor:pointer;
      z-index: 2005;
    }
    .openNav #toggleMenu {
      display:block;
    }
    .openNav HEADER {
      position: fixed;
      width:100%;
    }

    #toggleMenu .icon-cross { display:none;margin:0 0 0 6px; }  /*svg*/
    .openNav #toggleMenu .icon-cross { display:block; }   /*svg*/
    .openNav #toggleMenu .icon-menu { display:none; }  /*svg*/


   #topnavi  {
     display:none;
     left:0; top:140px;
     width:100%;
     max-width:1024px;
     height: calc(100vh - 140px);
     overflow:auto;
   }
   .openNav #topnavi  {
      display:block;
      background-color: #fff;
    }
   #topnavi > UL {
     display:flex;
     flex-direction: column;
     background-color: #fff;
     border-top:1px solid #e8e8e8;
   }
   #topnavi > UL > LI {
     height:auto;
     overflow: visible;
     list-style: none;
   }

   #topnavi > UL > LI > A {
     display: flex;
     justify-content: center;
     align-items: center;
     padding:19px 15px;
     font-size: 2.8rem;
     line-height: 1.75;
     color:#4c4d3c;
     text-decoration: none;
     border-bottom:1px solid #e8e8e8;
   }
   #topnavi > UL > LI > A:hover {
     color:#ed3424;
   }


   #keyvisual__text {
    width:50%;
    padding: 45px 40px 45px 40px;
    }

    #slider .reframe {
      overflow-x: hidden;
    }


}

/* ---------------------------------------------------------*/

@media screen  and (max-width: 768px) {

  #logo {
    padding:40px 0 40px 20px;
  }
  #logo A {
    width: 150px;
    height: 60px;
  }

  #keyvisual {
    flex-direction: column;
    margin-bottom:50px;
  }

  #keyvisual__text {
    position: relative;
    width:100%;
    max-width: 100%;
    padding:40px 10px;
    left: 0;
    top: 0;
    transform: translateY(0%);
    background-color: #efefed;
  }

  SECTION {
    margin-bottom:20px;
    padding: 20px 0 20px;
  }

  #kontakt {
    margin-bottom:0;
  }

  .stoerer {
    right:20px; bottom:20px;
    width: 70px; height:70px;
  }

}

/* ---------------------------------------------------------*/
@media screen and (max-width: 576px) {


}

/* ---------------------------------------------------------*/
@media screen and (max-width: 400px) {
  .box-lightgrey {
    height: 240px;
  }


}

/* ---------------------------------------------------------*/
@media screen and (max-width: 360px) {


}

/* Ende @media */
/* ---------------------------------------------------------*/

/* END */
