body a { text-decoration: none; }

/*******************************************************************
    Hero Block Styles
*******************************************************************/

.heroBlock { position: relative; }

.heroBlock_contentRight { text-align: right; }

.heroBlock-media { position: relative; }

.heroBlock-media_fixedLeft {
    display: none;
    position: absolute;
    width: 100vw;
    top: -50vw;
}

.heroBlock-media_fixedLeft img {
    width: 100vw;
    height: auto;
}

.heroBlock-media_right {
    position: relative;
    display: inline-block;
}

.heroBlock-media_right img {
    width: 90vw;
    height: auto;
    margin-top: 20px;
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    border-top: 2px solid #ffffff;
}

.heroBlock-media-caption {
    position: absolute;
    bottom: 20px;
    left: 20px;
    text-align: left;
    color: #fff;
    font: 2.5vw/2.5vw 'din-2014','Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.2rem;
}

.heroBlock-hd {
    position: relative;
    padding-right: 5vw;
    z-index: 1;
}

.heroBlock-bd {
    position: relative;
    margin-right: 5vw;
    border-right: 2px solid #333333;
    padding: 0 20px 10vw 10px;
    margin-bottom: 100px;
}

.heroBlock-bd:after {
    content: ' ';
    background: url('https://smartpress.imgix.net/resources/sites/1_site/assets/page-social-responsibility-badge.png');
    position: absolute;
    right: 0;
    bottom: auto;
    width: 150px;
    height: 150px;
    opacity: 0.4;
    background-size: cover;
}

@media only screen and (min-width: 500px) {
    .heroBlock-media_fixedLeft {
        display: block;
        width: 0;
        top: 0;
    }
    .heroBlock-media_fixedLeft img {
        width: 50vw;
        margin-top: 0;
        margin-right: -10vw;
        border-top: none;
    }
    .heroBlock-media_right img {
        width: 55vw;
        margin-top: 0;
        margin-right: 0;
        border-top: none;
    }
    .heroBlock-media-caption {
        font-size: 1.25vw;
        line-height: 1.25vw;
    }

    .heroBlock-bd {
        max-width: 375px;
        text-align: right;
        display: inline-block;
        margin-right: 18vw;
        padding-bottom: 5vw;
        margin-bottom: -50px;
    }
    .heroBlock-bd:after {
        right: -75px;
        bottom: -150px;
    }
}

@media only screen and (min-width: 720px) {
    .heroBlock-media-caption {
        font-size: 1vw;
        line-height: 1vw;
    }
}

@media only screen and (min-width: 768px) {
    .heroBlock-bd { margin-right: 10vw; }
}

@media only screen and (min-width: 1200px) {
    .heroBlock-media-caption {
        font-size: .75vw;
        line-height: .75vw;
    }
    .heroBlock-media_fixedLeft img { width: 55vw; }
    .hdg_marqueeAdapt {
        color: #fff;
    }
}
@media only screen and (min-width: 1590px) {
    .heroBlock-bd {
        background-color: #fff;
    }
}

/*******************************************************************
    content features
*******************************************************************/
.logo_secondary { margin: 80px 0 20px 0;}

.logo_secondary img { max-width: 250px; }

.logo_secondary_small { max-width: 150px; }

.logo_secondary-link { color: #007ac9 !important; }

.logo_secondary-link:after {
        content: '';
        display: inline-block;
        vertical-align: text-top;
        width: 15px;
        height: 15px;
        margin-left: 5px;
        background-image: url('https://smartpress.imgix.net/resources/sites/1_site/assets/external-link-icon.svg');
        background-repeat: no-repeat;
}

/*******************************************************************
    Global Offsets - containers - and padding
*******************************************************************/
.container_narrow { padding: 0 1rem; }

@media (min-width: 544px) {
    .container_narrow { padding: 0 5rem; }
}

@media (min-width: 978px) {
    .container_narrow { padding: 0 10rem; }
}

.col-padXl { padding: 0 1rem; }

.col-padMd { padding: 2rem 1rem; }

@media (min-width: 1200px) {
    .col-padMd { padding: 0 4rem;  } }

.block_padTop-sm { padding: 4rem 0 0 0; }

.block_padTop-md { padding: 8rem 0 0 0; }


/*******************************************************************
    Typography Styles: Headings, Body Copy and Labels
*******************************************************************/
.hdg_1 { font: 50px/53px 'Didot', Georgia, serif; }

@media (min-width: 544px) {
    .hdg_1 { font: 58px/61px 'Didot', Georgia, serif; }
}

@media (min-width: 1300px) {
    .hdg_1 { font: 65px/68px 'Didot', Georgia, serif; }
}

@media (min-width: 1800px) {
    .hdg_1 { font: 70px/73px 'Didot', Georgia, serif; }
}

.hdg_4 {
    font: 35px/43px 'Didot', Georgia, serif;
    color: #333333;
}
.hdg_5 {
    font: 30px/37px 'Didot', Georgia, serif;
    color: #333333;
}

/*******************************************************************
    UI Styles: Links, buttons, etc
*******************************************************************/

.link {
    font: italic 17px/24px 'Didot', Georgia, serif;
    color: #007AC9;
    text-decoration: none;
}

.link:hover,
.link:focus {
    opacity: 0.6;
}

.row {
    position: relative;
    margin: 0
}

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

.block {
    float: left;
    width: 100%;
    padding: 1rem;
    min-height: 1px
}

.width-1-2 {
    width: 50%;
    box-sizing: border-box;
}

@media (min-width : 768px) {
    .width-sm-1-2 {
        width: 50%;
        box-sizing: border-box;
    }
}

@media (min-width : 1024px) {
    .width-md-3-4 { width: 75% }
}

.hList > * { vertical-align: middle; }