/* Tweet-a-program page styles.

   @file            tweet-a-program.css.fr
   @author          marionm
   @dependencies    none
   ========================================================================== */

/* language overrides
   ========================================================================== */

body {
    font-family: 'Source Sans Pro', Arial, sans-serif;
}

a {
    color: #f77700;
}
a:hover, a:active {
    color: #dd1100;
}

main {
    padding: 0;
    width: 100%;
}

.wrapper {
    max-width: 960px;
    margin: 0 auto;
}

hr {
    border: none;
    border-top: 1px solid #ddd;
    display: block;
    margin: 2.5rem 0;
}

/* h1...h5 */

.h1, .h2, .h3, .h4, .h5, .h6, .p, h1, h2, h3, h4, h5, h6, p {
    font-weight: 400;
    line-height: 1.5;
    margin: 0;
    padding: 0;
}

.h2, h2 {
    color: #dd1100;
    font-size: 2.5rem;
    font-weight: 400;
    margin-bottom: 1rem;
}

.h3, h3 {
    color: #535353;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1.875rem;
}

.h4, h4 {
    color: #dd1100;
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: .125rem;
}

/* lists */ 
.styled-list {
    display: inline-block;
    font-size: 0;
    list-style: none;
    position: relative;
}

.styled-list > * {
    display: block;
    font-size: 16px;
    line-height: 1.3;
    list-style: none;
    margin-bottom: 8px;
    padding-left: 12px;
}

.styled-list > ::before {
    color: #dd1100;
    content: '■';
    display: inline-block;
    font-family: Arial;
    font-size: 9px;
    left: 0;
    line-height: 18px;
    position: absolute;
}

.display-grid { display: grid; }
/* header
   ========================================================================== */

#header {
    background: #efefef;
    background: -moz-linear-gradient(top, #ffffff 0%, #efefef 100%);
    background: -ms-linear-gradient(top, #ffffff 0%, #efefef 100%);
    background: -o-linear-gradient(top, #ffffff 0%, #efefef 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffffff), color-stop(100%, #efefef));
    background: -webkit-linear-gradient(top, #ffffff 0%, #efefef 100%);
    background: linear-gradient(to bottom, #ffffff 0%, #efefef 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#efefef', GradientType=0);
    padding: 1.75rem 0 1.8125rem 0;
    width: 100%;
}

#header > div {
    display: flex;
    justify-content: flex-start;
}

#header img {
    display: block;
    margin: 0 2.5rem 0 0;
}

#header h1 {
    color: #dd1100;
    display: block;
    font-size: 2.9375rem;
    line-height: 2.9375rem;
    margin: .625rem 0 0 0;
}

#header p {
    font-family: 'Source Sans Pro', Arial, sans-serif;
    color: #676767;
    display: block;
    font-size: 1.375rem;
    font-style: italic;
    line-height: 1.875rem;
    margin: .625rem 0 0 0;
    text-align: left;
    white-space: normal;
    word-wrap: break-word;
    font-weight: 400;
    max-width: 80%;
}

/* content
   ========================================================================== */

#content #container {
    display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto;
    padding: 2.5rem 0 0;
}

#left {
    padding: 0 1.5rem 0 0;
    max-width: 630px;
}

#right {
    border-left: 1px solid #ddd;
    padding: 0 0 0 2.5rem;
    max-width: 320px;
}

/* main column
   ========================================================================== */

#left h3 {
    line-height: 1;
    margin: 0;
}

#left img { margin: 0 0 0 -0.375rem; }

#left .tweet-to { 
    position: relative; 
}

#left .tweet-to h3 {
    position: relative;
    top: 30px;
}

#left .educational {
    font-size: 13px;
    line-height: 1.3125rem;
}

/* sidebar
   ========================================================================== */
.announcement {
    display: flex;
    justify-content: center;
    position: relative;
    font-size: .9375rem;
    line-height: 1.375rem;
    align-items: center;
    text-align: left;
}

.announcement > img {
    margin-right: .625rem;
    position: relative;
}

.announcement span {
}

.announcement span::after {
    content: '»';
    margin-left: .25rem;
}

.stripe.stripe-blue .announcement span::after {
    content: '' !important;
}

#right .button {
    background: #f77700;
    border-radius: 3px;
    color: #fff;
    display: table;
    font-size: 13px;
    line-height: 1.25rem;
    margin: 0 auto .9375rem auto;
    padding: .625rem 1.25rem;
    text-align: center;
}

#right .button:hover,
#right .button:active { background: #fd8a00; }

#right .button span {
    background: url('../img/icon-twitter.png') no-repeat 0 2px;
    font-size: 1rem;
    padding: 0 0 0 1.25rem;
}

#sidebar-thumbnails { margin-top: 10px; }

#right .pintrest {
    background: url('../img/pintrest-button.png') no-repeat left top;
    display: block;
    height: 31px;
    margin: 1.25rem 0 0 .25rem;
    width: 274px;
}

#right .pintrest:hover,
#right .pintrest:active { background-position: left bottom; }

#right .note {
    font-size: 16px;
}

#right .note img {
    margin: 0 .25rem -0.25rem .25rem;
    vertical-align: baseline;
}

#right .small-button {
    background: #dd1100;
    color: #fff;
    display: inline-block;
    margin: 8px 0 0 0;
    padding: .3125rem .625rem;
}

#right .small-button:hover {
    background: #fe0000;
}

#right .can-cant { 
    font-size: 16px;
    margin: 0.75rem 0 .5rem 0; 
}

/* resources
   ========================================================================== */

#content #resources {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 2rem;
    row-gap: 2rem;
    border-top: 1px solid #ddd;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    margin: 2.5rem 0;
}

#content #resources h4 {
    font-size: 1.125rem;
    font-weight: 600;
    color: #f77700;
}

#content #resources a:hover h4 {
    color: inherit;
}

#resources img { border: 1px solid #dadada; }

/* ==========================================================================
   Misc
   ========================================================================== */

.stripe {
    font-size: .9375rem;
    line-height: 1.3125rem;
    display: block;
    text-align: center;
    padding: .56rem 0;
    font-weight: 600;
}

.stripe.stripe-blue {
    background: #4c84ad;
    color: #fff;
}

.stripe.stripe-blue img {
    filter: saturate(0) brightness(2);
}

.stripe.stripe-yellow {
    background: #FFF2D7;
}

.font-16px {
    font-size: 16px;
}


/* ==========================================================================
   responsive breakpoint styles
   ========================================================================== */

/* styles for large screens (1200px)
   ========================================================================== */

@media all and (max-width: 1200px) {
    .wrapper {
        padding: 0 3.25rem;
    }
}

/* styles for medium screens (900px)
   ========================================================================== */

@media all and (max-width: 900px) {

    #header img {
        margin: 0 1.56rem 0 0;
        max-width: 116px;
        height: auto;
    }

    #header h1 {
        font-size: 2.625rem;
        line-height: 2.875rem;
    }

    #header p {
        max-width: 100%;
    }

    .wrapper {
        padding: 0;
    }

    .internal-wrapper {
        padding: 0 4rem;
    }

    #content #container {
        grid-template-columns: 1fr;
        row-gap: 1rem;
        padding: 2.5rem 2rem .625rem;
    }

    #left {
        padding: 0;
        margin: 0 auto;
        max-width: 100%;
        width: 100%;
    }

    #left .internal-wrapper {
        max-width: 600px;
        margin: 0 auto;
    }

    #right {
        border: 0;
        padding: 0;
        max-width: 100%;
    }

    #right .button {  
        margin-bottom: 2.5rem; 
    }


    #right #sidebar-thumbnails img {
        width: 100%;
        height: auto;
    }

    #withTweet {
        order: -1;
        margin-bottom: 2.5rem;
        border-bottom: 2px solid #ddd;
    }

    #content #withTweet.internal-wrapper {
        
        padding-bottom: 2.5rem;
    }

    #withTweet ul {
        max-width: 254px;
    }

    #withTweet div:first-child ul {
        margin-right: 8.125rem;
    }

    #right .small-button {
        margin-left: 10rem;
    }

    #content #resources {
        grid-template-columns: repeat(2, 1fr);
        padding-top: 0;
        margin-top: 0;
        border: 0;
        column-gap: 3.3125rem;
        padding-left:6rem;
        padding-right:6rem;
    }

    #content #resources h4 {
        max-width: 90%;
    }

    .margin-b-1-7-8__900 {
        margin-bottom: 1.875rem;
    }

    .margin-t-1-1-4__900 {
        margin-top: 1.25rem;
    }
    
}

/* styles for small screens (600px)
   ========================================================================== */

#content #resources img {
    max-width: 100%;
    height: auto;
}

@media all and (max-width: 600px) {

    #header {
        padding-top: 1.875rem;
        padding-bottom: 1.875rem;
    }

    .wrapper {
        padding: 0 0.9375rem;
    }

    #header > div {
        flex-wrap: wrap;
    }

    #header img {
        margin: 0 0 0.625rem 0;
        width: 136px;
        max-width: 136px;
    }

    #header p {
        margin-top: .9375rem;
    }

    .stripe {
        padding: .56rem 2.4375rem;
    }

    .announcement {
        justify-content: flex-start;
    }

    #content #container {
        padding: 0;
        padding-top: 1.5rem;
    }

    #content .internal-wrapper {
        padding: 0 1.5rem;
    }

    #left img {
        height: auto;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    #right .small-button {
        margin-left: 0;
    }

    #left .tweet-to h3 {
        top: 10px;
    }

    #content #resources {
        grid-template-columns: 267px;
        justify-content: center;
    }

    #content #resources div {
        text-align: center;
    }

    #content #resources h4 {
        max-width: 280px;
        text-align: left;
    }

}

/* styles for minimum supported screen width (320px)
   ========================================================================== */

@media all and (max-width: 360px) {

    #left .tweet-to h3 {
        top: 0;
    }

    #left h2 {
        margin-top: 2rem;
        font-size: 2rem;
    }

    #left .tweet-to img {
        margin-top: 1rem;
    }
}

/* printer styles
   ========================================================================== */

@media print {}
