<style>
/* Slider */

.slider {
    overflow-x: hidden;
    /* width: 1000px; bei Bedarf anpassen, da hier 100% gewünscht sind, kann man die Angabe einsparen */
}
 
.sliderElements {
    width: 400%; /* Summe der Einzelbreiten der Slides */
}
 
.sliderElements > li {
    float: left;
    width: 25%; /* 100 durch Anzahl der Slides */
}
 
/* Clearfix für die Liste */
.sliderElements:after {
    content: ".";
    display: block;
    height: .1px;
    clear: both;
    visibility: hidden;
    font-size: 0;
    overflow: hidden;
}

.sliderElements {
    position: relative;
    left: 0;
}
 
.slider input:nth-of-type(2):checked ~ .sliderElements {
    left: -100%;
}
 
.slider input:nth-of-type(3):checked ~ .sliderElements {
    left: -200%;
}
 
/* Statt der Pseudoklasse nth-of-type können wir auch mit der ID des inputs arbeiten */
#slide04:checked ~ .sliderElements {
    left: -300%;
}

.sliderElements,
.sliderElements figure,
.sliderControls {
    margin: 0;
}
 
.sliderElements:after {
    content: ".";
    display: block;
    height: .1px;
    clear: both;
    visibility: hidden;
    font-size: 0;
    overflow: hidden;
}
 
.cssSlider {
    overflow-x: hidden;
}
 
.sliderElements {
    list-style: none;
    position: relative;
    left: 0;
    width: 400%;
    margin-bottom: .8em;
    padding: 0;
    -webkit-transition: left .8s ease-in-out;
    -moz-transition: left .8s ease-in-out;
    -o-transition: left .8s ease-in-out;
    transition: left .8s ease-in-out;
}
 
.sliderElements > li {
    float: left;
    width: 25%;
    position: relative;
}
 
#slide02:checked ~ .sliderElements {
    left: -100%;
}
 
#slide03:checked ~ .sliderElements {
    left: -200%;
}
 
#slide04:checked ~ .sliderElements {
    left: -300%;
}
 
/* Bildunterschrift auf dem Bild positionieren */
.sliderElements figcaption {
    display: block;
    color: #fff;
    position: absolute;
    left: 0;
    bottom: 1em;
    padding: .4em;
    background: rgba(0,0,0,.5);
}
 
/* Bilder responsive */
.sliderElements img {
    width: 100%;
    height: auto;
}
 
 
/* inputs aus dem Blickfeld schieben */
.cssSlider input {
    position: absolute;
    left: -99999px;
}
 
/* mittige Ausrichtung der Controls - funktioniert im Zusammenspiel mit inline-block */
.sliderControls {
    text-align: center;
}
 
/* Controls nebeneinander bringen */
.sliderControls li {
    display: inline-block;
}
 
/* Controls auf einheitliche Maße bringen und die Ecken abrunden */
.sliderControls label {
    width: 12px;
    height: 12px;
    line-height: 12px;
    text-align: center;
    border-radius: 50%;
    display: block;
    cursor: pointer;
    background: #4540A0;
    color: #4540A0;
}
 
/* Attributselektor und indirekter Nachfahrkombinator zum ansteuern der labels */
.sliderControls label:hover,
#slide01:checked ~ .sliderControls label[for="slide01"],
#slide02:checked ~ .sliderControls label[for="slide02"],
#slide03:checked ~ .sliderControls label[for="slide03"],
#slide04:checked ~ .sliderControls label[for="slide04"] {
    background: #ddd;
    color: #ddd;
}

/* video container */

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 0px;
    height: 0;
    overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
</style>