*{
    box-sizing:border-box;
}
body, html, a{
    color: #202020;
    font-family:"Encode Sans", Arial, sans;
    font-size:16px;
    line-height:1.4;
    font-weight:400;
}
h1,h2,h3,h4,p,div{
    margin:0;
    padding: 0;
    font-size: 16px;
    line-height:1.4;
}
h1{
    font-size: 2.0em;
    font-weight:300;
}
@media (max-width: 320px) {
    h1 {
        font-size: 1.6em;
    }
}

h2{
    font-size: 1.6em;
    font-weight:300;
    margin-bottom:20px;
    word-wrap: break-word;
}

@media (max-width: 320px)
{
    h2 {
        font-size: 1.3em;
    }
}

h3{
    font-size: 1em;
    font-weight:500;
    margin-bottom:20px;
}
body{
    min-width:320px;
    margin:0;
    padding:0;
    min-height: 100vh;
    background: #202020;
    scroll-behavior: smooth;
}
b{
    font-weight:500;
}
p{
    margin-bottom:10px;
}
ul{
    padding-left:15px;
    list-style-type: none; 
    list-style-image: url('../img/checkerar.svg'); 
    margin: 0 0 20px 0; 
}
li{
    margin-bottom:10px;
    position:relative;
}
img{
    margin:0;
    padding:0;
    border: none;
    max-width:100%;
}
.top-10{
    margin-top:10px;
}
.spacer_20{
    height:20px;
    width:100%; 
}
.spacer_40{
    height:40px;
    width:100%;
}
.spacer_80{
    height:80px;
    width:100%;
}
.two-rows{
    position: relative;
    width:100%;
}
.two-rows .left,.two-rows .right{
    display:inline-block;
    position: relative;
    width:50%;

}
.two-rows .left{
    padding-right:10px;
}
.two-rows .right{
    padding-left:10px;
}

.renovero-cta{
    display:inline-block;
    text-align: center;
    padding:14px;
    background:#203768;
    text-decoration: none;
    color:#FFFFFF;
    cursor: pointer;
}
.renovero-cta:focus, .renovero-cta:hover  {
    padding:12px;
    border: 2px solid #dbdfe7;
}
.renovero-cta:active{
    padding:12px;
    border: 2px solid #FFFFFF;
}
.renovero-cta.soft{
    background:#dbdfe7;
    color:#203768;
}
.renovero-cta.soft:focus, .renovero-cta.soft:hover  {
    padding:12px;
    border: 2px solid #f9b415;
}
.renovero-cta.align-right{
    float:right;
}

.renovero-cta-light {
    background-color: #dbdfe7;
    color: black;
}
.renovero-cta-light:focus, .renovero-cta-light:hover  {
    border-color: #203768;
}

.box-wrapper{
    padding:10px;
}

/* Layout Structure*/
#page-wrapper{
    background:#f3f2f2;
}
#page-header {
    width:100%;	
    background-color: #FFFFFF;
    background-image: url('../img/img_header_stretch.jpg');
    background-repeat: no-repeat;
    background-size: 100% 101.5%;
    
}
#content-wrapper, #logo-wrapper, #footer-content{
    display:flex;
    flex-direction:column;
    padding:0;
}

#logo {
    cursor:pointer;
}

#logo-bar{
    height:40px;
    background:#F3F2F2;
}
#logo-wrapper img{
    width:136px;
}
#teaser-image{
    background: url('../img/img_header.jpg');
    background-size: cover;
    background-position: center center;
    height:150px;
    max-width:1400px;
    margin:auto;
}
#content-wrapper{
    position:relative;
    top:-50px;
    min-height:480px;
    background:#FFFFFF;
    max-width: 620px;
    margin: auto;
}

/* Groups*/
#group-a, #group-b{
    display:none;
}
.group-b #group-b{
    display:block;
}
.group-a #group-a{
    display:block;
}

/* TWO BOXES */
#swag-box{
   display:flex;
   flex-direction: column;
}
.swag-item{
    flex: 0 0 100%;
}
.swag-item img{
    display:block;
    margin:auto;
}

/* Offer and CTA */
#centered-wrapper{
    margin:auto;
    max-width:580px;
}
#offer-box{
    transition:all 0.3s;
    background:#f9b415;
}
#offer-box:hover{
    cursor:pointer;
    box-shadow: 0px 0px 40px rgba(0,0,0,0.2);
}
#offer-box-image{
    height:150px;
    width:100%;
    background-image: url('../img/img_teaser.jpg');
    background-size: cover;
    background-position: center center;
}
.cta-wrapper{
    display:flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 40px 0px 20px 0;
}
.cta-wrapper .label{
    flex: 1 1 50%;
    align-self: bottom;
    position:relative;
    min-height:50px;
}
.cta-wrapper .button{
    flex: 1 1 50%;
    align-self: baseline;
    text-align: center;
}
#price-tag{
    position:absolute;
    bottom: -30px;
    right:0;
}
/*FOOTER */
footer{
    background: #202020;
    min-height:100px;
    width:100%;
    min-height:200px;
}
footer a{
    color:#FFFFFF;
}
#footer-content{
    padding:20px;
    color:#FFFFFF;
}


/* SCREEN ADAPTIONS */
@media screen and (min-width: 500px){
    .box-wrapper{
        padding:20px;
    }
    #teaser-image{
        height: 230px;
    }   
}
@media screen and (min-width: 799px){
    .spacer_20{
        height:20px;
        width:100%; 
    }
    .spacer_40{
        height:40px;
        width:100%;
    }
    .spacer_80{
        height:80px;
        width:100%;
    }
    #teaser-image{
        height: 300px;
    }   
    #content-wrapper, #logo-wrapper, #footer-content{
        max-width:1000px;
        margin:auto;
    }
    #content-wrapper{
        position:relative;
        top:-80px;

    }    
    #swag-box{
        flex-direction:row-reverse;
        flex-wrap: wrap;
    }
    .swag-item{
        flex: 0 0 50%;
    }
    .heading{
        flex: 0 0 100%;
        order:1;  
    }
    .box-two{
        order:2;
        align-self: flex-end;
    }
    .box-one{
        order:3;
        align-self: flex-end;
    }
    #centered-wrapper{
        margin-top: 40px;
        margin-bottom: 20px;
    }
    #offer-box:hover{
        transform: scale(1.02);
    }
}





/* Reference and Testimonial*/
#references-box{
    margin:auto;
    display:flex;
    flex-direction:column;
    margin-top:80px;
    max-width:580px;
}
.reference-item{
    transition:all 0.3s;
    margin-top:40px;
    flex: 0 0 100%;
}
.reference-item:hover{
    box-shadow: 0px 0px 40px rgba(0,0,0,0.2);
}
#references-box a{
    text-decoration:none;
}

#journal .journal-image{
    background-image: url('https://media.renovero.ch/cms/60fbb27fae7bfdb503691b99b4c4c7e3/500/katzenklappe-einbauen.jpg');
}
#testimonial .journal-image{
    background-image: url('../img/500_F_38417402.jpg');
}
.journal-image{
    height: 150px;
    overflow:hidden;
    background-size: cover;
    background-position:center center;
}
.journal-text{
    padding:10px;
}
.journal-text h2{
    margin-top:20px;
}
.teaser-link{
    text-align:right;
    color:blue;
    text-decoration: underline;
    padding:10px;
}
.rating img{
    width:80px;
    margin-right:5px;
}
@media screen and (min-width: 500px){
}
@media screen and (min-width: 799px){
    #references-box{
        flex-direction:row;
        flex-wrap:wrap;
        max-width: 100%;
    }
    .reference-item{
        flex: 0 0 50%;
        padding:20px;
    }
}


/* Configurator for Skitty*/
#content-wrapper.formscreen{
    top:-100px;
}
#dynamic-wrapper{
    z-index: 2;
    position: relative;
}
#alignator{
    position:relative;
    top:-30px;
}
#configurator{
    background:#f9b415;
    min-height:250px;
}
#progress{
    width:100%;
    height:5px;
    background:#F3F2F2;
}
#progress-indicator{
    height:5px;
    color: #FFFFFF;
    background:#203768;
    text-align:center;
    transition: all 0.3s;
}
#blocking-layover{
    position:fixed;
    top:0px;
    left:0px;
    opacity:0;
    background:#000000;
    width:0px;
    height:0px;
    transition: opacity 0.4s;
}
.locked #blocking-layover{
    opacity:0.4;
    width:100vw;
    height:100vh;
}
.configurator-step{
    min-height:200px;
}
#configurator-navigation{
    display:flex;
    margin-bottom:20px;
}
#configurator-navigation .back,
#configurator-navigation .next{
    flex: 1 1 40%;
}
#configurator-navigation .next{
    text-align:right;
}
/*Option Item*/
.option-item{
    background:#FFFFFF;
    filter: brightness(97%);
    position: relative;
    padding:10px;
    padding-bottom:20px;
    margin-bottom:20px;
    transition:all 0.3s;
}
.option-item:hover, .option-item:focus{
    filter: brightness(100%);
    background:#FFFFFF;
    transform: scale(1.02);
}
.option-image{
    display:inline-block;
    width:70px;
    height:80px;
    margin-top:10px;
    background-size: cover;
    background-position: center center;
}
.option-content{
    display:inline-block;
    vertical-align: top;
    padding-left:20px;
    padding-bottom:10px;
    width:calc(100% - 75px);
}
.option-top{
    cursor: pointer;
}
.info-price{
    text-align:right;
    font-size:21px;
}
.info-price span{
    font-size:50%;
    display:inline-block;
    padding:4px;
}
.next-wrapper{
    padding: 20px 0;
}
.next-btn{
    cursor: pointer;
    font-size: 10px;
    padding:5px;
    float:right;
    transform:scale(1.05);
    border-radius: 5px;
    background-color:#dbdfe7;
    transition: all 0.3s;
}
.option-top:hover .next-btn, .next-btn:hover, .next-btn.highlight{
    transform:scale(1.2);
    border-radius: 5px;
    background-color:#203768;
    color:#FFFFFF;
}
.info-icon{
    width:30px;
    height:30px;
    margin-left:-15px;
    position:absolute;
    bottom:-5px;
    left:50%;
    cursor: pointer;
    transition: all 0.5s;
}
.option-bottom{
    max-height:0px;
    overflow:hidden;
    transition: max-height 0.5s;
}
.option-bottom.open{
    max-height:700px;
    padding-bottom:20px;
}
.info-icon.open{
    transform:  rotate(180DEG);
}
#animated .foreground{
    text-align: center;
    color:#FFF;
}
#animated .foreground div{
    opacity:0.3;
    transition: all 0.2s;
}
#animated .foreground div.visible{
    color:#202020;
    opacity:1;
}

@media screen and (min-width: 500px){
    #content-wrapper.formscreen{
        top:-160px;
    }
}
@media screen and (min-width: 799px){
    #content-wrapper.formscreen{
        top:-230px;
    }
}

/* S11 Window Messures*/
.teaser-wrapper{
    width:100%;
    background: #FFFFFF;
    padding:20px;
    margin-bottom:20px;
}
.teaser-wrapper img{
    display:inline-block;
    width:45%;
}
.teaser-wrapper p{
    margin-left:2%;
    text-align: left;
    display:inline-block;
    width:45%;
}
#s11 .label-text{
    display:inline-block;
    width:30%;
}
#s11 input{
    display:inline-block;
    width:70%;
}
#s11 .next-btn{
    padding:15px;
}

.clear{
    clear:both;
    width:100%;
}

/*  Shopping Cart */
#cart{
    background:#202020;
    color: #FFFFFF;
    border: 1px solid #dbdfe7;
    position:fixed;
    bottom:0px;
    width:100%;
    max-width: 580px;
    overflow:hidden;
}
.cart-icon{
    margin:20px;
    float:left;
}
.cart-top{
    vertical-align: bottom;
    text-align:right;
    padding:20px;
    font-size:10px;
}
.cart-price{
    font-size:21px;
    font-weight:500;
    padding-left:5px;
}
.cart-bottom{
    padding:0px 10px 10px 10px;
}
.cart-bottom img{
    position:relative;
    top:2px;
}
.cart-back{
    padding: 5px;
    font-size:10px;
    cursor: pointer;
}
@media screen and (min-height: 1000px){
    #cart{
        position:relative;
    }
}


/* Contact form */
label{
    display:block;
}
label .notification{
    display:block;
    font-size:10px;
    font-weight:500;
    margin-top:5px;
}
label .error{
    display:none;
    color:#FF0000;
    font-size: 10px;
    font-weight: 500;
}
label.error input{
    border:1px solid #FF0000;
    color:#FF0000;
}
.missing .error.missing, .invalid .error.invalid, .min .error.min{
    display:block;
}
input{
    width:100%;
    margin-top:5px;
    padding:10px;
}
input[type="checkbox" i]{
    display:inline-block;
    width: inherit;
}
.centered img{
    display:block;
    margin: auto;
}
.price_display{
    font-size:21px;
    text-align:right;
}
@media screen and (min-width: 799px){
    .configurator-page #content-wrapper, .configurator-page #logo-wrapper, .configurator-page #footer-content{
        max-width:620px;
    } 
}

/* LOADER */
.lds-ring {
    display:block;
    position: relative;
    margin:40px auto 40px auto;
    width: 64px;
    height: 64px;
  }
  .lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 51px;
    height: 51px;
    margin: 6px;
    border: 6px solid #fff;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #fff transparent transparent transparent;
  }
  .lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
  }
  .lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
  }
  .lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
  }
  @keyframes lds-ring {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  
#animated .bar{
      background: rgba(32,55,104,0.3);
      width:100%;
      height:6px;
      border: 1px solid #dbdfe7;
}
#animated .bar div{
    background: #FFFFFF;
    width: 0%;
    height:4px;
}

 /* MS EDGE */
 @supports (-ms-ime-align: auto) and (max-width: 499px){
        .swag-item, .reference-item{
            flex-basis: 0;
        }
        @media screen and (min-width: 799px){
            .swag-item, .reference-item{
                flex-basis: 50%;
            }
            .swag-item.heading {
                flex-basis: 100%;
            }
        }
  }

  /*IE 10 11*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {  
    #swag-box{
       /* display:block;*/
       flex-direction:row;
       flex-wrap:wrap;
       align-items: center
    }
    .swag-item{
        flex: 1 1 100%;
    }
    #references-box{
        flex-direction:row;
        flex-wrap:wrap;
    }

 }
@media screen and (min-width: 500px) and (-ms-high-contrast: active), screen and (min-width: 500px) and (-ms-high-contrast: none){}
@media screen and (min-width: 799px) and (-ms-high-contrast: active), screen and (min-width: 799px) and (-ms-high-contrast: none){
    #swag-box{
         display:block;
         overflow:hidden;
     }
     .swag-item.box-two{
         width:60%;
         margin:auto;
     }
     #centered-wrapper{
         width:580px;
     }
     .reference-item{
         flex: 1 1 45%;
         margin:auto;
     }
}
/* S16 buyOrOffer */
.teaser-without-background-wrapper{
    width:100%;
    padding:20px;
    margin-bottom:20px;
}

.hoverable {
    transition: transform .2s, box-shadow .2s;
    cursor: pointer;
}

.hoverable:hover {
    transform: scale(1.03);
    box-shadow: 0 0 15px rgba(0,0,0,.2);   
}

.option-not-available {
    filter: grayscale(100%);
    opacity: 0.4;
}

.option-not-available .renovero-cta {
    cursor: default;
}

.option-not-available .renovero-cta:focus, .option-not-available .renovero-cta:hover  {
    cursor: default;
    border: 2px solid #203768;
}