
::selection {
    background-color: #4EC6DE;
    color: white;
}

.tabbed {
    width: 900px;
    margin: 40px auto 0 auto;
    height: 470px;
    color: white;
}

.tabbed > input {
    display: none;
}

.tabbed > label {
    display: block;
    float: left;
    padding: 12px 20px;
    margin-right: 5px;
    cursor: pointer;
    transition: background-color .3s;
}

.tabbed > label:hover,
.tabbed > input:checked + label {
    background: #4EC6DE;
    color: white;
}

.tabs {
    clear: both;
    perspective: 600px;
    color: white;
}

.tabs h3 {
    text-decoration: underline;
}

.tabs > div {
    width: 900px;
    position: absolute;
    border: 2px solid #4EC6DE;
    padding: 10px 30px 50px;
    line-height: 1.4em;
    opacity: 0;
    transform: rotateX(-20deg);
    transform-origin: top center;
    transition: opacity .3s, transform 1s;
    z-index: 0;
    color: white;
}

#tab-nav-1:checked ~ .tabs > div:nth-of-type(1),
#tab-nav-2:checked ~ .tabs > div:nth-of-type(2),
#tab-nav-3:checked ~ .tabs > div:nth-of-type(3),
#tab-nav-4:checked ~ .tabs > div:nth-of-type(4)
 {
    transform: rotateX(0);
    opacity: 1;
    z-index: 1;
}

@media screen and (max-width: 700px) {
    .tabbed {
        width: 400px;
    }

    .tabbed > label {
        display: none;
    }

    .tabs > div {
        width: 400px;
        border: none;
        padding: 0;
        opacity: 1;
        position: relative;
        transform: none;
        margin-bottom: 60px;
    }

    .tabs > div h2 {
        border-bottom: 2px solid #4EC6DE;
        padding-bottom: .5em;
    }
}
