/*** COLOR PALETTE
* Main blue:     #26AFEB
* Dark grey:     #38464D
* Light grey:    #F9FAFA
* Accent orange: #FF951F
***/


/**********
* PROJECT BASICS
**********/

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    font-family: 'Lato', 'Arial', sans-serif;
    font-weight: 300;
    color: #38464D;
    font-size: 62.5%;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}

::selection { background-color: rgba(38, 175, 235, 0.5); }

.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

.container {
    max-width: 120rem;
    margin: 0 auto;
}

/**********
* HEADER
**********/


.master-header {
    width: 100%;
    position: relative;
    margin-bottom: 4rem;
}

.logo-box {
    padding: 2% 3%;
}

.logo-box__logo--codingheroes {
    height: 3.4rem;
    float: left;
    margin-top: 0.8rem;
}

.logo-box__logo--js {
    height: 4rem;
    float: right;
}

/**********
* POST
**********/

h2,
p,
.optin,
.comments {
    max-width: 70rem;
    margin: 0 auto;
}

h1 {
    max-width: 90rem;
    text-align: center;
    font-size: 3.6rem;
    font-weight: 300;
    text-transform: uppercase;
    margin: 0 auto;
    line-height: 1.5;
}

h2 {
    font-weight: 600;
    font-size: 2.1rem;
    margin-top: 5rem;
    margin-bottom: 1.2rem;
    line-height: 1.5;
    text-transform: uppercase;
}

.post__details {
    text-align: center;
    margin: 5rem 0;
    font-size: 1.8rem;
    background-color: #F9FAFA;
    padding: 1.5rem 0;
}

.post__details > * {
    vertical-align: middle;
    display: inline-block;
}

.post__author-img {
    height: 48px;
    border-radius: 50%;
    margin-right: 1rem;
}

.post__date,
.post__read-time {
    color: #aaa;
}

.divider:after {
    content:"\00b7";
    margin: 0 2px;
    color: #aaa;
}

.icon-small {
    display: inline-block;
    margin-left: 0.6rem;
    font-size: 1.6rem;
}

.ion-social-twitter { color: #00aced; }

p {
    font-size: 2rem;
    line-height: 1.6;
    margin-bottom: 2rem;
}

p.indent { max-width: 60rem; }

.quote-inline {
    max-width: 62rem;
    margin: 0 auto;
    font-style: italic;
}

.quote-inline p { max-width: 62rem; }


blockquote p:before { content:"\201C"; }
blockquote p:after { content:"\201D"; }


.post-link:link,
.post-link:visited {
    font-size: 1.8rem;
    color: #26AFEB;
    text-decoration: none;
    border-bottom: 1px solid #26AFEB;
    transition: color 0.2s, border-bottom 0.2s;
    padding-bottom: 1px;
}

.post-link:hover,
.post-link:active {
    color: #FF951F;
    border-bottom: 1px solid #FF951F;
}

.post-link i {
    font-size: 2.5rem;
    margin-left: 7px;
    line-height: 1;
    
    display: inline-block;
    vertical-align: middle;
    margin-top: -4px;
}

.optin-container {
    background-image: -webkit-linear-gradient(bottom left, #4ED8F7, #26AFEB 70%);
    background-image: linear-gradient(to top right, #4ED8F7, #26AFEB 70%);
    padding: 8rem 0;
    margin-top: 8rem;
}

.optin {
    text-align: center;
    color: #F9FAFA;
}

.optin h2 {
    margin-top: 0;
    margin-bottom: 4rem;
}

.optin p:last-of-type { margin-bottom: 4rem; }

.ck_form {
    /* box-shadow: none !important; */
    font-family: 'Lato', 'Arial', sans-serif !important;
}

.comments-container {
    background-color: #F9FAFA;
}

.comments {
    padding: 8rem 0;
}

.hero {
    height: 60rem;
    position: relative;
    margin: 8rem 0;
}


.hero:hover .hero__quote { transform: translateX(1.5rem); }
.hero:hover .hero__img { transform: translateX(-1.5rem); }
.hero:hover .hero__overlay { background-color: rgba(0,0,0,0.3); }

.hero__quote:hover + .hero__overlay { background-color: rgba(0,0,0,0.7); }

.hero__quote {
    position: absolute;
    font-size: 2.2rem;
    padding: 3rem;
    font-style: italic;
    top: 9rem;
    left: 10%;
    max-width: 40rem;
    color: #F9FAFA;
    z-index: 10;
    transition: transform 0.5s;
}

.hero__img {
    width: calc(100% + 2rem);
    height: 100%;
    background-size: cover;
    background-position: center center;
    z-index: 5;
    transition: transform 0.5s;
}

.hero__overlay {
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,0.7);
    height: 100%;
    width: 100%;
    z-index: 9;
    transition: background-color 0.5s;
}

#hero__img-1 { background-image: url(img/why-js-back-1.jpeg); }
#hero__img-2 { background-image: url(img/why-js-back-2.jpeg); }


.btn:link,
.btn:visited {
    display: inline-block;
    text-align: center;
    color: #F9FAFA;
    font-size: 1.8rem;
    text-decoration: none;
    text-transform: uppercase;
    padding: 2rem 3rem;

    border-radius: 0.5rem;
    -webkit-transition: background-color 0.2s, border 0.2s;
    transition: background-color 0.2s, border 0.2s;
}

.btn-full { 
    background-color: #FF951F;
    border: 1px solid #FF951F;
}

.btn:hover,
.btn:active {
    background-color: #ef8105;
    border: 1px solid #ef8105;
}

/**********
* FOOTER
**********/

.master-footer { 
    padding: 5rem 0;
    border-top: 1px solid #f5f5f5;
}

.footer__text { margin-top: 3rem; }

.footer__text > * {
    display: block;
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 1rem;
}

.ion-ios-heart {
    color: #ff3030;
    margin: 0 2px;
}

.social-plugins {
    margin-top: 5rem;
    text-align: center;
}

#___plusone_0 {
    margin-top: 3px !important;
    margin-right: 30px !important;
    width: 65px !important;
}

.twitter-share-button {
    display: inline-block;
    margin-top: 0px;
    margin-right: 30px;
    vertical-align: top; 
}

.fb-like {
    display: inline-block;
    margin-top: 4px;
    vertical-align: top; 
}







/**********
* MEDIA QUERIES
**********/

@media only screen and (max-width: 1024px) {
    /*
    h1, h2, p,  {
        padding: 0 3%;
    }
    */
}

@media only screen and (max-width: 767px) {
    
    body, html {
        font-size: 50%;
    }
    
    h1 {
        font-size: 2.6rem;
    }
    
    /* HEADER */
    .master-header__heading {
        font-size: 3rem;
        line-height: 1.3;
        margin-bottom: 4rem;
    }
    
    .logo-box {
        padding: 3% 4%;
    }
    
    .logo-box__logo--codingheroes {
        height: 2.5rem;
        float: left;
        margin-top: 0.6rem;
    }

    .logo-box__logo--js {
        height: 3rem;
        float: right;
    }
    
    h1, h2, p, blockquote, .optin, .comments {
        padding: 0 3%;
    }
    
}




@media only screen and (max-width: 500px) {

    .logo-box {
        padding: 7%;
        text-align: center;
    }

    .logo-box__logo--codingheroes {
        height: 2.5rem;
        float: none;
        margin-top: 0;
        margin-bottom: 1.5rem;
    }

    .logo-box__logo--js {
        height: 3rem;
        float: none;
    }
    
    h1, h2, p, blockquote, .optin, .comments {
        padding: 0 5%;
    }
    
}

@media only screen and (max-width: 320px) {
    .master-header__heading {
        font-size: 2.5rem;
        line-height: 1.1;
        margin-bottom: 3rem;
    }
    
    .logo-box__logo--codingheroes {
        height: 2rem;
        margin-bottom: 1rem;
    }

    .logo-box__logo--js {
        height: 2.4rem;
    }
}


