#frame {
    margin: 0 auto;
    padding: 10px 0;
    width: 1140px;
    max-width: 100%;
    text-align: center;
}

#frame input[type=radio] {
    display: none;
}

#frame label {
    cursor: pointer;
    text-decoration: none;
}

#slides {
    padding: 0px;
    border: 1px solid #5a2ca0;
    position: relative;
    z-index: 1;
}

#overflow {
    width: 100%;
    overflow: hidden;
}

#frame1:checked~#slides .inner {
    margin-left: 0;
}

#frame2:checked~#slides .inner {
    margin-left: -100%;
}

#frame3:checked~#slides .inner {
    margin-left: -200%;
}

#frame4:checked~#slides .inner {
    margin-left: -300%;
}

#slides .inner {
    transition: margin-left 800ms cubic-bezier(0.770, 0.000, 0.175, 1.000);
    width: 400%;
    line-height: 0;
    height: 300px;
}

#slides .frame {
    width: 25%;
    float: left;
    display: flex;
    justify-content: left;
    align-items: center;
    height: 100%;
    color: #FFF;
}

.frame-content {
    padding-left: 30px;
    text-shadow: 1px 1px 3px black; 
}

#slides .frame_1 {
    background: url(img/sl-1.jpg);
}

#slides .frame_2 {
    background: url(img/sl-2.jpg);
}

#slides .frame .frame_2 h2{
    text-align: right;
}

#slides .frame_3 {
    background: url(img/sl-3.jpg);
}

#slides .frame_4 {
    background: url(img/sl-4.jpg);
}

#controls {
    margin: -180px 0 0 0;
    width: 100%;
    height: 50px;
    z-index: 3;
    position: relative;
}

#controls label {
    transition: opacity 0.2s ease-out;
    display: none;
    width: 50px;
    height: 50px;
    opacity: .4;
}

#controls label:hover {
    opacity: 1;
}

.slider-click {
    position: absolute;
    z-index: 100;
    top: 10px;
    margin-top: 0px;
}

.slider-name {
    text-align: left;
}

.slider-name h2 {
    color: #fff;
}

#frame1:checked~#controls label:nth-child(2),
#frame2:checked~#controls label:nth-child(3),
#frame3:checked~#controls label:nth-child(4),
#frame4:checked~#controls label:nth-child(1) {
    background:
        url(img/arrow.png) no-repeat;
    float: right;
    margin: 0 -50px 0 0;
    display: block;
}

#frame1:checked~#controls label:nth-last-child(1),
#frame2:checked~#controls label:nth-last-child(4),
#frame3:checked~#controls label:nth-last-child(3),
#frame4:checked~#controls label:nth-last-child(2) {
    background:
        url(img/arrow-left.png) no-repeat;
    float: left;
    margin: 0 0 0 -50px;
    display: block;
}

#bullets {
    margin: 150px 0 0;
    text-align: center;
}

#bullets label {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 100%;
    background: #ccc;
    margin: 0 10px;
}

#frame1:checked~#bullets label:nth-child(1),
#frame2:checked~#bullets label:nth-child(2),
#frame3:checked~#bullets label:nth-child(3),
#frame4:checked~#bullets label:nth-child(4) {
    background: #444;
}

@media screen and (max-width: 900px) {

    #frame1:checked~#controls label:nth-child(2),
    #frame2:checked~#controls label:nth-child(3),
    #frame3:checked~#controls label:nth-child(4),
    #frame4:checked~#controls label:nth-child(1),
    #frame1:checked~#controls label:nth-last-child(2),
    #frame2:checked~#controls label:nth-last-child(3),
    #frame3:checked~#controls label:nth-last-child(4),
    #frame4:checked~#controls label:nth-last-child(1) {
        margin: 0;
    }

    #slides {
        max-width: calc(100% - 140px);
        margin: 0 auto;
    }
}   