﻿/* #region Variables */
:root {
    /* Colors */
    --Reflex: #014B92;
    --Orange: #CC5C28;
    --Navy: #0D2149;
    --Charcoal: #414042;
    --Gray: #B3B3B3;
    --Light-Gray: #CCCCCC;
    --White: #FFFFFF;
    --Black: #000000;
    /* Typography */
    --H1: 70px;
    --H2: 50px;
    --H3: 35px;
    --H3-Alt: 30px;
    --H4: 25px;
    --H5: 20px;
    --P: 18px;
    --P-Alt: 20px;
    --Small-Text: 16px;
    --button: 20px;
    /* Gaps */
    --Default-Gap: 44px;
    --Button-Gap: 10px 20px;
    --Min-Gap: 22px;
}
/* #endregion */


/* #region Global */
.body-content {
    padding-bottom: 0;
}

.body-content section {
    padding-top: 140px;
    padding-bottom: 140px;
}

.breadcrumb-bar {
    position: relative;
    z-index: 2;
}

.desktop-responsive {
    display: inline;
}

.mobile-responsive {
    display: none;
}

img.brand-logo.join-mg-logo {
    position: absolute;
    right: -45px;
    width: 200px;
    margin-top: -15px;
    z-index: 1;
}

#fixed-button.button {
	position: fixed;
    right: 5%;
    border-radius: 0 0 5px 5px;
    z-index: 999;
    transition: all 1s;
}

#fixed-button.button.hide {
    opacity:0;
    top: 0px;
}

#fixed-button.button.show {
    opacity:1;
    top: 40px;
}

h2 {
    display: inline-block;
    font-size: var(--H2);
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
    border-top: 16px solid var(--Orange);
}

h3 {
    font-size: var(--H3);
    font-weight: bold;
}

h4 {
    display: block;
    color: var(--Charcoal);
    font-size: var(--H4);
    font-weight: bold;
    clear: both;
}

h5 {
    font-size: var(--H5);
    font-weight: bold;
    padding-top: 20px;
}

p:not(.footer-row p) {
    font-size: var(--P-Alt);
    color: var(--Charcoal);
    text-align: center;
}

.section-disclaimer {
    display: block;
    font-size: 16px;
    margin-top: 20px;
}

.section-disclaimer a {
    text-decoration: underline;
}

@media screen and (max-width: 991px) {
    .desktop-responsive {
        display: none;
    }

    .mobile-responsive {
        display: inline;
    }

    .body-content section.job-locations * {
        text-align: center;
    }
}

@media screen and (max-width: 768px) {
    .body-content {
        padding-top: 44px;
    }

    img.brand-logo.join-mg-logo {
        right: 0px;
        width: 200px;
    }

    .body-content > .container.featured-box {
        width: 90%;
    }
}

@media screen and (max-width: 575px) {
    img.brand-logo.join-mg-logo {
        display: none;
    }
}
/* #endregion */


/* #region Feature Box */
.body-content > .container.featured-box {
    background: var(--White);
    border: solid 1px var(--Light-Gray);
    padding: 0;
}

.body-content > .container.featured-box > .row {
    margin: 0;
}


    /* #region Thin Banner */
    .featured-box .thin-banner-row {
        padding: 10px;
        width: 45.5%;
        margin: 0 auto;
    }

    .featured-box .thin-banner-row .thin-banner {
        text-transform: uppercase;
        padding: 0 30px;
    }

    .thin-banner-row .thin-banner small,
    .thin-banner-row .thin-banner h3,
    .thin-banner-row .thin-banner h4 {
        display: block;
        font-weight: bold;
        text-align: left;
        padding: 0;
        margin: 0;
        color: var(--White);
    }

    .thin-banner-row .thin-banner small {
        font-size: var(--Small-Text);
        padding-top: 20px;
    }

    .thin-banner-row .thin-banner h3 {
        font-size: var(--H3);
    }

    .thin-banner-row .thin-banner h4 {
        font-size: var(--H4);
        padding-bottom: 20px
    }

    .row .thin-banner-row:first-child {
        margin-left: 0;
    }

    .row .thin-banner-row:last-child {
        margin-right: 0;
    }
    /* #endregion */


.featured-content-row {
    background-color: var(--White);
}

.featured-content {
    margin: 40px 22px;
}

.featured-content h3 {
    color: #cc5c28;
    font-size: var(--H3-Alt);
    font-weight: bold;
    text-align: center;
}

.featured-content p {
    font-size:var(--P-Alt);
    font-weight: 500;
}

.featured-content ul {
    height: 336px;
}

.featured-content .jobs-buttons {
    text-align: center;
}

.featured-content .jobs-buttons a.button {
    font-size: var(--button);
    padding: var(--Button-Gap);
}

@media screen and (max-width: 1260px) {
    .featured-content .jobs-buttons a.button {
        font-size: 18px;
        padding: 5px 15px;
    }
}
/* #endregion */


/* #region Overview */
.body-content > section.overview {
    padding-top: 100px;
    margin-bottom: 100px;
}

.overview h2 {
    display: block;
    text-align: center;
    text-transform: none;
    border: none;
}

.overview p {
    font-size: var(--P-Alt);
    text-align: center;
    margin-bottom: 65px;
}

.overview h4 span.small {
    font-weight: bold;
    font-size: 16px;
}

.overview .icons-list {
    text-align: center;
}

.overview .icons-list .overview-icon {
    width: 64px;
    margin-bottom: 30px;
}

.overview .icons-list h4 {
    font-size: 24px;
}

.overview .section-btn {
    text-align: center;
}

.section-btn .button {
    font-size: var(--button);
    padding: var(--Button-Gap);
    margin-top: 85px;
}
/* #endregion */


/* #region Job Resources */
.body-content section.job-resources {
    background-image: url(/media/r5lhlfmg/futuristic-background-image-with-top-lip.png);
    background-size: cover;
    background-position: top center;
    padding-top: 200px;
    padding-bottom: 300px;
    margin-bottom: 70px;
}

.job-resources .job-resources-slider {
    padding: 0 88px;
}

.job-resources .job-resources-overview > p {
    font-size: var(--P-Alt);
    text-align: center;
    margin-bottom: 85px;
}

.job-resources .job-resources-slide {
    position: relative;
    background-size: cover;
    background-position: center;
    min-height: 480px;
    text-align: center;
    margin-left: var(--Min-Gap);
    margin-right: var(--Min-Gap);
    overflow: hidden;
    transition: all 0.35s ease-out;
    box-shadow: inset 0px -160px 70px -40px rgba(0,0,0,0.75);
}

.job-resources .job-resources-slide:hover {
    box-shadow: none;
}

.job-resources .job-resources-slide::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgb(13, 33, 73);
    opacity: 0;
    transition: all 0.35s ease-out;
}

.job-resources-slide.slick-active {
    transition: all 0.35s ease-out;
    box-shadow: none;
}

.job-resources-slide.slick-active::before,
.job-resources-slide:hover::before {
    opacity: 0.65;
    transition: all 0.35s ease-out;
}

.job-resources .job-resources-slide .job-resources-content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0 var(--Min-Gap);
    color: var(--White);
}

.job-resources-slide .job-resources-content h3 {
    color: var(--White);
    font-size: var(--H3-Alt);
    margin-bottom: 35px;
}

.job-resources-slide.slick-active .job-resources-content h3,
.job-resources-slide:hover .job-resources-content h3 {
    margin-bottom: 0;
    transition: all 0.35s ease-out;
}

.job-resources-slide .job-resources-content p {
    display: none;
    color: var(--White);
    opacity: 0;
    transition: all 0.35s ease-out;
}

.job-resources-slide .job-resources-content > p:last-child {
    margin-bottom: 35px;
    transition: all 0.35s ease-out;
}

.job-resources-slide .job-resources-content .resource-link {
    color: var(--White);
    font-weight: 600;
    text-decoration: underline;
}

.job-resources-slide.slick-active .job-resources-content p,
.job-resources-slide:hover .job-resources-content p {
    display: block;
    opacity: 1;
    transition: all 0.35s ease-out;
}

.job-resources-container .slider-prev.slider-icons,
.job-resources-container .slider-next.slider-icons {
    width: 30px;
    height: 30px;
    background-color: #000;
    position: absolute;
    bottom: 50%;
    z-index: 500;
    cursor: pointer;
    vertical-align: middle;
}

.job-resources-container .slider-next.slider-icons {
    right: 10px;
    background-position: -30px 0;
}

.job-resources-container .slider-prev.slider-icons {
    left: 10px;
    background-position: 0 0;
}

.job-resources-container .slider-icons {
    background: url("/media/1248/solutions-icon-sprite.png?format=webp&quality=60") no-repeat;
}

@media screen and (max-width: 767px) {
    .job-resources .job-resources-slider {
        padding: 0 40px;
    }
}

@media screen and (max-width: 499px) {
    .job-resources .job-resources-slide {
        min-height: 750px;
    }
}
/* #endregion */


/* #region Turnaround CTA Banner */
/* #endregion */


/* #region Benefits */
.body-content section.benefits {
    background-color: var(--Reflex);
    padding-top: 0;
    padding-bottom: 105px;
    margin-top: -75px;
}

.body-content section.benefits:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    min-height: 150px;
    background-image: url(/media/xzjof2dx/blue-top-section-separator.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    margin-top: -149px;
}

.body-content section.benefits:after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    min-height: 150px;
    background-image: url(/media/iscn3myh/blue-bottom-section-separator.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    margin-top: 100px;
    z-index: 2;
}

.benefits .row {
    padding-top: 100px;
}

.body-content section.benefits * {
    color: var(--White);
}

.benefits .benefits-list .benefit {
    text-align: center;
    margin-top: 50px;
}

.benefits .benefits-list .benefit img {
    width: 90px;
    margin-bottom: 25px;
}

.benefits .benefits-list .benefit h4 {
    font-weight: 500;
    text-transform: uppercase;
}

.benefits .benefits-list .benefit p {
    margin-top: 0px;
}
/* #endregion */


/* #region Locations */
.body-content section.job-locations {
    background-color: var(--Navy);
}

.body-content .job-locations * {
    color: var(--White);
    text-align: left;
}

.job-locations .no-gutters .left {
    padding: 245px 44px 200px;
    padding-left: 0;
}

.job-locations .right {
    padding-top: 245px;
    padding-bottom: 200px;
}

.job-locations p {
    font-size: var(--P-Alt);
}

.job-locations .no-gutters .right .background-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #414042;
}

.job-locations .no-gutters .right .background-image.overlay:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    background-color: #000;
    background-size: cover;
}

.job-locations .no-gutters .right .background-image > div {
    background-size: cover;
    background-position: 25% 50%;
    background-repeat: no-repeat;
    height: 100%;
}

.employment-links .row > div {
    display: contents;
}

.job-locations .employment-links .job-links {
    position: absolute;
    right: 0;
    margin-top: -44px;
}

.job-locations .employment-links a.employment-link {
    display: block;
}

@media screen and (max-width: 991px) {
    .job-locations .no-gutters .left {
        padding: 245px 0px 30px;
    }

    .job-locations .right {
        padding-bottom: 400px;
    }
}
/* #endregion */


/* #region Testimonials */
.body-content section.testimonials {
    background-color: var(--Charcoal);
    padding-top: 0;
    padding-bottom: 105px;
}

.body-content section.testimonials:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    min-height: 150px;
    background-image: url(/media/yphfsj5k/charcoal-top-section-separator.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    margin-top: -149px;
}

.body-content section.testimonials:after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    min-height: 150px;
    background-image: url(/media/hxdj2v1d/charcoal-bottom-section-separator.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    margin-top: 100px;
}

.testimonials .row {
    padding-top: 100px;
}

.testimonials .testimonials-slider {
    padding: 0 88px;
}

.testimonials .testimonials-overview h2 {
    color: var(--White);
}

.testimonials .testimonials-overview > p {
    color: var(--White);
    font-size: var(--P-Alt);
    text-align: center;
    margin-bottom: 85px;
}

.testimonials .testimonials-slide {
    background-color: var(--White);
    text-align: center;
    border: solid 2px var(--Light-Gray);
    border-radius: 10px;
    margin-left: var(--Min-Gap);
    margin-right: var(--Min-Gap);
    margin-top: 31px;
    transition: all 0.35s ease-out;
}

.testimonials .testimonials-slide.slick-active {
    border: solid 2px var(--Orange);
    transition: all 0.35s ease-out;
}

.testimonials-slide .testimonials-content {
    margin-top: 55px;
}

.testimonials-slide .testimonials-content .quotation-mark {
    width: 64px;
    margin: auto;
    margin-top: -86px;
    filter: grayscale(100%);
    transition: all 0.35s ease-out;
}

.testimonials-slide.slick-active .testimonials-content .quotation-mark {
    filter: grayscale(0%);
    transition: all 0.35s ease-out;
}

.testimonials-slide .testimonials-content p {
    font-weight: 500;
    margin-bottom: 35px;
    font-style: italic;
}

.testimonials-container .slider-icons {
    width: 27px;
    height: 48px;
    position: absolute;
    bottom: 50%;
    z-index: 500;
    cursor: pointer;
    vertical-align: middle;
}

.testimonials-container .slider-next.testimonials-slider-icon {
    background: url("/media/prkbrh2f/right-testimonials-arrows.png?format=webp&quality=60") no-repeat;
    background-size: contain;
    right: 10px;
}

.testimonials-container .slider-prev.testimonials-slider-icon {
    background: url("/media/fmth0rxi/left-testimonials-arrows.png?format=webp&quality=60") no-repeat;
    background-size: contain;
    left: 10px;
}

.testimonials-container .slider-icons {
    background: url("/media/1248/solutions-icon-sprite.png?format=webp&quality=60") no-repeat;
}
/* #endregion */


/* #region Equal Opportunity Employer */
.body-content section.eoe {
    padding-top: 0;
    padding-bottom: 140px;
    margin-top: 240px;
}

.eoe .eoe-overview > p {
    font-size: var(--P-Alt);
    text-align: center;
}

.eoe .eoe-logo-emblem {
    display: block;
    width: 100px;
    margin: 50px auto 0;
}
/* #endregion */


/* #region CTA Banner */
.body-content section.cta-banner {
    background-image: url("/media/ezeprhhw/cta-honeycomb-background.png?format=webp&quality=60");
    background-size: cover;
    background-position: top center;
    padding-top: 170px;
    padding-bottom: 50px;
}


section.cta-banner .cta-banner-text,
section.cta-banner .cta-banner-text h3,
section.cta-banner .cta-banner-text p {
    color: var(--White);
    text-align: left;
}

section.cta-banner .cta-banner-text {
    margin-right: 100px;
}

section.cta-banner h3 {
    font-size: var(--H3);
    text-transform: uppercase;
}

section.cta-banner p {
    font-size: calc(var(--P-Alt) + 2px);
}

section.cta-banner .cta-banner-button {
    background: transparent;
    padding: 0;
    margin: 0;
    margin-bottom: 15px;
    box-shadow: inset 10px 0px 5px -5px rgba(0,0,0,0.65);
}

section.cta-banner .cta-banner-button a {
    font-size: calc(var(--H3-Alt) - 5px);
    padding: var(--Button-Gap);
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    box-shadow: inset 10px 0px 5px -5px rgba(0,0,0,0.65);
}

section.cta-banner .cta-banner-button a:hover {
    transform: scale(1);
    padding-left: 50px;
}

@media screen and (max-width: 1259px) {
    section.cta-banner .list-wrapper {
        display: block;
    }

    section.cta-banner .cta-banner-text,
    section.cta-banner .cta-banner-text h3,
    section.cta-banner .cta-banner-text p {
        text-align: center;
    }

    section.cta-banner .cta-banner-text {
        margin-right: 0px;
    }

    section.cta-banner .cta-banner-button {
        display: table;
        padding-bottom: 20px;
        margin: auto;
        margin-bottom: 0;
        box-shadow: inset 10px 0px 5px -5px rgba(0,0,0,0.5);
    }
}
/* #endregion */

/* Job Post page used by sub-sites */

.job-post-content, .job-post-content p, .job-post-content .content-header h2 {
    text-align: left !important;
}