/*==========  Sections  ==========*/

.header {
    position: relative;
    z-index: 1;
    background-image: url('../images/pat-back.svg');
    background-position: center;
    background-repeat: repeat;
    background-size: 7%;
    background-color: #fff;
}

.header .page-title {
    padding: 0 30px 0 30px;
    font-size: 60px;
    line-height: 1em;
    letter-spacing: 10px;
    color: #FFF;
}

.header .page-description {
    margin: 30px auto;
    max-width: 600px;
    font-size: 18px;
    line-height: 2em;
    color: #FFF;
}

.header .scroll-button {
    color: #FFF;
    font-size: 20px;
    padding: 15px 20px 15px 20px;
    display: inline-block;
    background: #3093A2;
    cursor: pointer;
    transition-duration: 0.4s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.header .scroll-button:hover {
    background: #246f7b;
}

.header .scroll-button:active {
    background: #194c53;
}

.main-content {
    margin: 0px auto;
    position: relative;
}

.main-content .section-inner, .main-content .post-wrapper {
    *zoom: 1;
}

.main-content .section-inner:before, .main-content .post-wrapper:before, .main-content .section-inner:after, .main-content .post-wrapper:after {
    content: "";
    display: table;
}

.main-content .section-inner:after, .main-content .post-wrapper:after {
    clear: both;
}

.footer {
    background-image: url('../images/pat-back.svg');
    background-position: center;
    background-repeat: repeat;
    background-size: 7%;
    background-color: #fff;
    padding: 10px 0px 0px 0px;
    position: relative;
    z-index: 1;
}

.footer .good-bye {
    font-size: 18px;
    line-height: 36px;
}

.footer .good-bye p {
    display: block;
    margin: 0px auto 30px auto;
    max-width: 300px;
    clear: both;
}

.section .section-inner {
    margin: 0px auto;
    width: 1024px;
}

@media only screen {
    .section .section-inner {
        width: auto;
        max-width: 1024px;
    }
}

/*==========  Stem  ==========*/

.stem-wrapper {
    position: fixed;
    top: 0px;
    bottom: 0px;
    left: 50%;
}

.stem-wrapper.color-yellow .stem-background {
    background: #E9E566;
}

.stem-wrapper.color-green .stem-background {
    background: #35C189;
}

.stem-wrapper.color-white .stem-background {
    background: red;
}

.stem-wrapper .stem, .stem-wrapper .stem-background {
    position: absolute;
    top: 0px;
    left: -30px;
    width: 60px;
}

.stem-wrapper .stem {
    background: #1e4f56;
    height: 100%;
}

.stem-wrapper .stem-background {
    background: #39ACBD;
    height: 50%;
    transition-duration: 0.5s;
}

.stem-padding, .single-stem-icon {
    width: 60px;
    height: 60px;
    margin: 0px auto;
    background: transparent url(../images/lined.png) repeat-y top center;
}

.single-stem-icon.scroll-to-top {
    cursor: pointer;
    background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/22043/scroll-to-top-icon.png);
}

/*==========  Post wrapper ==========*/

.post-wrapper {
    *zoom: 1;
}

.post-wrapper:before, .post-wrapper:after {
    content: "";
    display: table;
}

.post-wrapper:after {
    clear: both;
}

.post-wrapper .post {
    position: relative;
    width: 432px;
    padding: 0px 0px 60px 0px;
    clear: both;
    opacity: 1;
    perspective: 1000px;
}

.post-wrapper .post.hidden .post-content {
    transform: translateY(100px) rotateX(30deg);
    opacity: 0;
}

.post-wrapper .post:hover .post-content, .post-wrapper .post.active .post-content {
    opacity: 1;
}

.post-wrapper .post:hover .post-content .meta, .post-wrapper .post.active .post-content .meta {
    opacity: 1;
    transform: none;
}

.post-wrapper .post:nth-child(even) {
    float: right;
}

.post-wrapper .post:nth-child(odd) {
    float: left;
}

.post-wrapper .post:nth-child(even) .stem-overlay {
    left: -110px;
}

.post-wrapper .post:nth-child(odd) .stem-overlay {
    right: -110px;
}

.post-wrapper .post.music-icon .stem-overlay .icon {
    background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/22043/music-icon.png);
}

.post-wrapper .post.bitbucket-icon .stem-overlay .icon {
    background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/22043/bitbucket-icon.png);
}

.post-wrapper .post.m-icon .stem-overlay .icon {
    background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/22043/m-icon.png);
}

.post-wrapper .post.twitter-icon .stem-overlay .icon {
    background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/22043/twitter-icon.png);
}

.post-wrapper .post .stem-overlay {
    position: absolute;
    top: 0px;
    bottom: 0px;
    width: 60px;
}

.post-wrapper .post .stem-overlay .icon {
    background: transparent no-repeat center center;
    height: 60px;
    width: 60px;
    cursor: pointer;
}

.post-wrapper .post .stem-overlay .stem-mask {
    position: absolute;
    top: 60px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background: transparent url(../images/lined.png) repeat-y top center;
}

.post-wrapper .post .post-content {
    opacity: 0.3;
    transition-duration: 0.4s;
    transform: none;
}

.post-wrapper .post .post-content .meta {
    color: rgba(255, 255, 255, 0.3);
    margin: 0px 0px 15px 0px;
    letter-spacing: 1px;
    opacity: 0;
    transition-duration: 1s;
    transition-delay: 0.2s;
    transform: translateY(-5px);
}

.post-wrapper .post .post-content .post-title {
    font-size: 32px;
    line-height: 42px;
    margin: 0px 0px 15px 0px;
}

/*==========  Media queries  ==========*/

@media only screen and (max-width: 1080px) {
    .main-content, .main-content .section-inner {
        max-width: none;
    }
    .stem-wrapper {
        left: 80px;
    }
    .stem-padding, .single-stem-icon {
        margin: 0px;
        float: left;
        margin-left: 50px;
    }
    .post-wrapper .post, .post-wrapper .post:nth-child(even), .post-wrapper .post:nth-child(odd) {
        width: auto;
        margin-left: 110px;
        float: none;
    }
    .post-wrapper .post .stem-overlay, .post-wrapper .post:nth-child(even) .stem-overlay, .post-wrapper .post:nth-child(odd) .stem-overlay {
        left: -60px;
        right: auto;
    }
    .post-wrapper .post .post-content {
        padding: 0px 50px;
    }
}

@media only screen and (max-width: 700px) {
    .header .page-title {
        font-size: 40px;
    }
    .post-wrapper .post {
        margin-left: 90px !important;
    }
    .post-wrapper .post .post-content {
        padding: 0 25px;
    }
    .stem-wrapper {
        left: 60px;
    }
    .stem-padding, .single-stem-icon {
        margin-left: 30px;
    }
}

.clearfix {
    *zoom: 1;
}

.clearfix:before, .clearfix:after {
    content: "";
    display: table;
}

.clearfix:after {
    clear: both;
}