@-webkit-keyframes androidBugfix {
    from {
        padding: 0;
    }
    to {
        padding: 0;
    }
}

body {
    -webkit-animation: androidBugfix infinite 1s;
}

#wrapper .slider_wrapper li:before {
    content: none;
}

.slider_wrapper {
    width: 100%;
    overflow: hidden;
    position: relative;
    margin-top: 1rem;
}

.slider_wrapper,
.slider_wrapper .slides,
.slider_wrapper .slides .img_container,
.slider_wrapper .slides .img_container img  {
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    -ms-user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    user-select: none;

    user-drag: none;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-drag: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

/* If slider is first child in glider-background don't add margin on top */
.glider_background > form:first-child > .slider_wrapper {
    margin-top: 0;
}

#wrapper .slider_wrapper li.slide-container {
    padding: 0;
    margin: 0;
}

.slides {
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);; /* Saf3.1+, Chrome */
    -moz-transform: translateX(-50%); /* FF3.5+ */
    -ms-transform: translateX(-50%); /* IE9 */
    -o-transform: translateX(-50%); /* Opera 10.5+ */
    transform: translateX(-50%);
    top: 0;
    padding: 0;
    display: inline-block;
    /*Maximum 3 pictures*/
    width: 300%;
    max-height: 26rem;
    text-align: center;
}

.slides input {
    display: none;
}

.slide-container {
    display: none;
}

.slide {
    position: relative;
    height: 26rem;
    opacity: 1;
    display: inline-block;
    /*background-color: #fff;*/
    text-align: center;
}

.slide img {
    vertical-align: middle;
    max-height: 26rem;
    min-height: 26rem;
    max-width: none;
    height: auto;
    width: auto;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

label {
    cursor: pointer;
}

.slide label {
    cursor: pointer;
    top: 50%;
    height: 4rem;
    width: 4rem;
    line-height: 3.85rem;
    display: none;
    position: absolute;
    z-index: 9;
    color: #fff;
    font-size: 2.3rem;
    margin: -2rem auto 0;
    box-sizing: border-box;
    text-align: center;
}

.slide label:before {
    position: absolute;
    left: 0;
    height: 4rem;
    width: 4rem;
    content: "";
    background-color: #585147;
    border-radius: 50%;
    z-index: -1;
    opacity: 0.6;
}

.slide label:after {
    content: "";
    position: absolute;
    top: -500px;
    bottom: -500px;
    left: -500px;
    right: -500px;
}

.slide label.prev {
    right: 0;
    margin-right: 25px;
}

.slide label.next {
    left: 0;
    margin-left: 25px;
}

.img_container {
    overflow: hidden;
    position: relative;
    max-width: 720px;
}

.img_container span {
    color: #000;
    font-family: "GalaxiePolaris-Book", sans-serif;
    font-size: 0.9rem;
    bottom: 0;
    display: none;
    min-height: 1.8rem;
    padding-bottom: 0.2rem;
    padding-top: 0.2rem;
    margin: 0 auto;
    position: absolute;
    text-align: center;
    z-index: 1;
    left: 0;
    right: 0;
    width: 100%;
}

.img_container span:before {
    content: "";
    /* Opacity causes pixel bug, so use rgba background*/
    background-color: rgba(255, 255, 255, 0.85);
    position: absolute;
    width: 100%;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: -1;
}

/* Add :nth-child(n) to fix chrome repaint bug: http://stackoverflow.com/questions/14201694/chrome-webkit-not-rendering-css-display-change-on-inputchecked-element-elem*/
input:checked + .slide-container + input + .slide-container .img_container span,
.slide-container.centerElement .img_container span {
    display: inline-block;
}

input:checked + .slide-container,
.slide-container.leftElement {
    display: inline-block;
    z-index: 2;
    opacity: 1;
    width: 25%;
    text-align: right;

}

input:checked + .slide-container + input + .slide-container,
.slide-container.centerElement {
    /* 24% of 300% = 72% of 100% = 720px of 1000px*/
    width: 24%;
    max-width: 720px;
    box-sizing: border-box;
    margin: 0 15px;
    display: inline-block;
    opacity: 1;
    z-index: 4;
}

input:checked + .slide-container + input + .slide-container + input + .slide-container,
.slide-container.rightElement {
    display: inline-block;
    opacity: 1;
    z-index: 2;
    width: 25%;
    text-align: left;
}

input:checked + .slide-container .slide label.prev,
input:checked + .slide-container + input + .slide-container + input + .slide-container .slide label.next,
.slide-container.leftElement .slide label.prev,
.slide-container.rightElement .slide label.next {
    display: block;
    visibility: visible;
}

input:checked + .slide-container .slide .img_container:before,
input:checked + .slide-container + input + .slide-container + input + .slide-container .slide .img_container:before,
.slide-container.leftElement .slide .img_container:before,
.slide-container.rightElement .slide .img_container:before {
    display: block;
    visibility: visible;
    background-color: rgba(255, 255, 255, 0.5);
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    content: "";
    z-index: 2;
}

/* Set hover background-color to grey if the background div is grey */
.glider_background:nth-of-type(even) input:checked + .slide-container .slide .img_container:before,
.glider_background:nth-of-type(even) input:checked + .slide-container + input + .slide-container + input + .slide-container .slide .img_container:before,
.glider_background:nth-of-type(even) .slide-container.leftElement .slide .img_container:before,
.glider_background:nth-of-type(even) .slide-container.rightElement .slide .img_container:before {
    background-color: rgba(236, 236, 234, 0.5);
}

.no-js input:checked + .slide-container .slide .img_container:hover label:before,
.no-touch input:checked + .slide-container .slide .img_container:hover label:before,
.no-js input:checked + .slide-container + input + .slide-container + input + .slide-container .img_container:hover label:before,
.no-touch input:checked + .slide-container + input + .slide-container + input + .slide-container .img_container:hover label:before,
.no-js .slide-container.leftElement .slide .img_container:hover label:before,
.no-touch .slide-container.leftElement .slide .img_container:hover label:before,
.no-js .slide-container.rightElement .img_container:hover label:before,
.no-touch .slide-container.rightElement .img_container:hover label:before {
    opacity: 0.75;
}

input:checked + .slide-container .slide .img_container,
input:checked + .slide-container + input + .slide-container + input + .slide-container .slide .img_container,
.slide-container.leftElement .slide .img_container,
.slide-container.rightElement .slide .img_container {
    cursor: pointer;
}

.no-js input:checked + .slide-container .slide .img_container:hover:before,
.no-touch input:checked + .slide-container .slide .img_container:hover:before,
.no-js input:checked + .slide-container + input + .slide-container + input + .slide-container .img_container:hover:before,
.no-touch input:checked + .slide-container + input + .slide-container + input + .slide-container .img_container:hover:before,
.no-js .slide-container.leftElement .slide .img_container:hover:before,
.no-touch .slide-container.leftElement .slide .img_container:hover:before,
.no-js .slide-container.rightElement .slide .img_container:hover:before,
.no-touch .slide-container.rightElement .slide .img_container:hover:before {
    display: none;
    opacity: 0;
    visibility: hidden;
}

/* Below 1000px show only one picture and move next/previous arrows inside the current element */
@media only screen and (max-width: 999px) {

    /* Disable Left and Right Images, but do NOT hide them (because the they contain the next/revious arrow*/
    input:checked + .slide-container,
    input:checked + .slide-container + input + .slide-container + input + .slide-container,
    .slide-container.rightElement,
    .slide-container.leftElement {
        width: 0;
        height: 400px;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
    }

    /*Position input in center, otherwise browser jumps to input when label is clicked*/
    /*input {*/
    /*position: fixed;*/
    /*top: 50%;*/
    /*left: -5000px;*/
    /*display: block;*/
    /*height: 1px;*/
    /*width: 1px;*/
    /*}*/
    input:checked + .slide-container + input + .slide-container + input + .slide-container,
    .slide-container.rightElement {
        left: auto;
        right: 0;
    }

    /* Allow overflow on left/right container so the arrows are shown */
    input:checked + .slide-container .img_container,
    input:checked + .slide-container + input + .slide-container + input + .slide-container .img_container,
    .slide-container.rightElement,
    .slide-container.leftElement {
        overflow: visible;
    }

    /* Hide images from left/right container */
    input:checked + .slide-container .img_container img,
    input:checked + .slide-container + input + .slide-container + input + .slide-container .img_container img,
    .slide-container.leftElement .img_container img,
    .slide-container.rightElement .img_container img {
        display: none;
        visibility: hidden;
    }

    input:checked + .slide-container + input + .slide-container,
    .slide-container.centerElement {
        width: 100%;
        display: inline-block;
        opacity: 1;
        z-index: 4;
        margin: 0;
    }

    input:checked + .slide-container + input + .slide-container .img_container,
    .slide-container.centerElement {
        display: inline-block;
        max-width: 100%;
    }

    /* Position arrows */
    .slider_wrapper input:checked + .slide-container .slide label.prev,
    .slider_wrapper input:checked + .slide-container + input + .slide-container + input + .slide-container .slide label.next,
    .slide-container.leftElement .slide label.prev,
    .slide-container.rightElement .slide label.next {
        position: absolute;
        z-index: 10;
        bottom: auto;
        margin: 0;
        top: 4rem;
    }

    .slider_wrapper input:checked + .slide-container .slide label.prev,
    .slide-container.leftElement .slide label.prev {
        left: 0.5rem;
        right: auto;
    }

    .slider_wrapper input:checked + .slide-container + input + .slide-container + input + .slide-container .slide label.next,
    .slide-container.rightElement .slide label.next {
        left: auto;
        right: 0.5rem;
    }

    .slides {
        position: static;
        padding: 0;
        display: inline-block;
        max-width: 100%;
        min-width: 100%;
        max-height: none;
        text-align: center;
        -webkit-transform: translateX(0);; /* Saf3.1+, Chrome */
        -moz-transform: translateX(0); /* FF3.5+ */
        -ms-transform: translateX(0); /* IE9 */
        -o-transform: translateX(0); /* Opera 10.5+ */
        transform: translateX(0);
        left: auto;
        top: auto;
        width: 100%;
    }

    .slide {
        background-color: transparent;
        max-width: 100%;
        min-width: 100%;
        height: auto;
    }

    .slide img {
        /* Allow image to be higher than 26rem */
        max-height: 100%;
        max-width: 100%;
        min-height: 0;
    }

    .img_container span {
        top: 0;
        bottom: auto;
    }

    .slide label:after {
        left: -50%;
        right: -50%;
    }
}

/* Set height of slider */
@media only screen and (max-width: 999px) and  (max-height: 700px) and (min-height: 600px) {
    input:checked + .slide-container + input + .slide-container .img_container {
        height: 400px;
    }
}

/* Set height of slider */
@media only screen and (max-width: 999px) and  (max-height: 599px) and (min-height: 400px) {
    input:checked + .slide-container + input + .slide-container .img_container {
        height: 350px;
    }
}

/* Set height of slider */
@media only screen and (max-width: 999px) and  (max-height: 399px) {
    input:checked + .slide-container + input + .slide-container .img_container {
        height: 250px;
    }
}

/*SINGLE IMAGE SLIDER*/
.single_image img {
    position: relative;
    -webkit-transform: translateX(-50%);; /* Saf3.1+, Chrome */
    -moz-transform: translateX(-50%); /* FF3.5+ */
    -ms-transform: translateX(-50%); /* IE9 */
    -o-transform: translateX(-50%); /* Opera 10.5+ */
    transform: translateX(-50%);
    left: 50%;
}

/**************/
/* FULLSCREEN */
/**************/

.img_container .sliderFullScreen {
    position: absolute;
    top: 11px;
    right: 11px;
    width: 22px;
    height: 22px;
    z-index: 20;
    opacity: 0.7;
    display: none;
}

.js input:checked + .slide-container + input + .slide-container .img_container .sliderFullScreen {
    display: inline-block;
}

.img_container .sliderFullScreen img {
    width: 100%;
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    min-height: 0;
    min-width: 0;
    vertical-align: top;
}

.img_container .sliderFullScreen:hover {
    opacity: 1;
}