/* ==========================================================================
   careers pages
   ========================================================================== */

section.module_career-search {
    padding: 1em 0 2em 0;
    background-color: #e7eaeb;
}

.module_career-search.career-no-hero:not(.stuck) {
    margin-top: 120px;
    padding-bottom: 1em;
}

.module_career-search.career-no-hero h2 {
    display: none;
}

.module_career-search.stuck {
    position: fixed;
    top: 52px;
    left: 0;
    width: 100%;
    z-index: 99;
    padding: 1em 0;
}

.module_career-search .search-box {
    display: flex;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
}

.module_career-search h2 {
    font: 500 normal 1.25em/1 'IBM Plex Sans';
    padding: 1em 0;
    max-width: 1200px;
    margin: 0 auto;
}

.module_career-search.stuck h2 {
    display: none;
}

.module_career-search input[type=text] {
    padding: .9em 3em .9em 1em;
    border: 0;
    width: 100%;
    font-family: 'IBM Plex Sans';
    font-size: 1em;
}

.module_career-search .keyword-box:after, .module_career-search .location-box:after {
    right: 15px;
    top: 15px;
    content: '';
    width: 20px;
    height: 20px;
    position: absolute;
    background: url('/img/search-gry.svg') no-repeat center top;
    display: block;
}

.module_career-search input[type=submit] {
    background-color: #005789;
    color: #fff;
    padding: .65em 1.25em;
    font: normal 500 1.2em/1 'IBM Plex Sans';
    text-transform: none;
    border-radius: 2px;
}

.module_career-search .location-box, .module_career-search .keyword-box {
    width: 39%;
    position: relative;
    z-index: 1;
}

.module_career-search .location-results, .module_career-search .keyword-results {
    position: absolute;
    width: 100%;
    border: 1px #666 solid;
    background-color: #fff;
    max-height: 400px;
    overflow-y: auto;
    display: none;
}

    .module_career-search .location-results li, .module_career-search .keyword-results li {
        padding: .5em .5em;
        font-size: .85em;
    }

    .module_career-search .location-results span.highlite, .module_career-search .keyword-results span.highlite {
        font-weight: 700;
        color: #005587;
    }

    .module_career-search .location-results li:hover, .module_career-search .location-results li:nth-child(even), .module_career-search .keyword-results li:hover, .module_career-search .keyword-results li:nth-child(even) {
        background-color: #f2f2f2;
    }

section.module_career-bar {
    background-color: #e6e6e6;
    padding: 3em 0;
    text-align: center;
    width: 100%;
}

.module_career-bar .career-box {
    display: flex;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
}

    .module_career-bar .career-box a.callout {
        margin: 0;
        min-width: 250px;
    }

.module_career-bar.career-no-hero {
    position: static;
    background-color: #00568c;
    margin-bottom: 2em;
    padding: 1em 0;
}

    .module_career-bar.career-no-hero .career-box {
        max-width: 1200px;
        margin: 0 auto;
    }

        .module_career-bar.career-no-hero .career-box:after {
            content: " ";
            display: block;
            clear: both;
        }

        .module_career-bar.career-no-hero .career-box a.callout {
            float: left;
            margin-right: 0;
        }

    .module_career-bar.career-no-hero .job-social {
        padding-top: 15px;
    }

.module_career-bar .job-social {
    border-top: 2px #00558C solid;
    background-color: #e6e6e6;
    position: fixed;
    right: 0;
    top: 20%;
    z-index: 100;
    width: 40px;
    padding: 1em .5em;
}

    .module_career-bar .job-social a {
        padding: .25em;
        display: block;
    }

        .module_career-bar .job-social a.txt {
            padding: 0 1.25em;
        }

.careers-site .page-hero div.career-box {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
    display: block;
    text-align: left;
    margin: 0 auto;
}

    .careers-site .page-hero div.career-box a {
        vertical-align: middle;
    }

.careers-site .page-hero-text {
    bottom: 100px;
}

.module_career-bar img {
    height: 20px;
    width: auto;
    position: relative;
}

.module_career-bar a.box {
    border: 1px #ffffff solid;
    padding: 10px;
    font: normal 500 1em/1 'IBM Plex Sans';
    margin: 0 20px;
    text-transform: none;
}

.careers-site #video-wrapper {
    padding: 0 0 26%;
    width: 45%;
    height: 0;
    position: relative;
    margin: 0;
}

.careers-site #video-wrapper-full {
    padding: 0 0 56%;
    width: 100%;
    height: 0;
    position: relative;
    margin: 2em 0;
}

.modal-wrap #video-wrapper {
    padding: 0 0 46%;
    width: 100%;
}

.careers-site #home-huron-vid {
    width: 100%;
    height: 100%;
    position: absolute;
}

.module_video-hero.hero_text {
    position: relative;
}

    .module_video-hero.hero_text h1 {
        display: inline-block;
        position: absolute;
        left: 50%;
        top: 40%;
        -webkit-transform: translate(-50%, -40%);
        transform: translate(-50%, -40%);
        color: #ffffff;
        font: normal 500 3.5em/1 'IBM Plex Sans';
        text-transform: none;
        margin-bottom: .85em;
    }

.module_video-hero .video-play {
    cursor: pointer;
    color: #fff;
    position: absolute;
    left: 50%;
    top: 60%;
    -webkit-transform: translate(-50%, -60%);
    transform: translate(-50%, -60%);
    width: 34px;
    height: 34px;
    box-sizing: border-box;
    border-style: solid;
    border-width: 17px 0px 17px 34px;
    border-color: transparent transparent transparent #fff;
}

.module_video-hero .video-target {
    width: 100%;
}

.module_video-hero .video-wrapper {
    width: 100%;
    position: relative;
    height: 0;
    padding: 0 0 56.25%;
}

.video-wrapper iframe {
    position: absolute;
    height: 100%;
    width: 100%;
    border: none;
}

.modal-wrap {
    display: none;
    width: 60%;
    position: fixed;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 100001;
}

.modal-bg {
    display: none;
    background-color: rgba(0,0,0,.7);
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 100000;
}

a#career-feedback {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 2000;
    padding: .3em 2em;
    margin-bottom: 0;
}

ul.careers-subnav {
    display: flex;
    justify-content: space-around;
    border-bottom: 1px #e6e6e6 solid;
    max-width: 1200px;
    margin: 1em auto;
}

    ul.careers-subnav li {
        text-transform: uppercase;
        font-size: .875em;
        color: #595959;
        padding: 1em 0;
    }

        ul.careers-subnav li.active {
            border-bottom: 2px solid #00558C;
        }

            ul.careers-subnav li.active a {
                color: #00558C;
            }

.job-overview {
    display: none;
    max-width: 1200px;
    margin: 0 auto;
}

    .job-overview h2, .job-overview h1 + h2, .module_text.job-detail h1 {
        text-align: left;
        color: #2d2d2d;
        font: 400 normal 1.5em/1.5 'IBM Plex Sans';
        margin: 1em 0 .85em 0;
        text-transform: none;
    }

.module_text ul.job-overview-list {
    list-style-type: none;
    margin: 2em 0;
    padding: 0;
}

.job-overview-list li span {
    color: #005587;
    font-weight: 700;
}

.module_text.job-detail .overview-content > h1 {
    font: normal 400 2.125em/1.2 'IBM Plex Sans', sans-serif;
}

.job-listings {
    margin-left: calc((100vw - 1150px) / 2);
    margin-right: 1%;
}

    .job-listings h1 {
        font-size: 1.6em;
        text-align: left;
    }

    .job-listings li {
        border-bottom: 1px solid #eee;
        padding: 1em 0;
        line-height: 1.5em;
    }

        .job-listings li a {
            text-transform: none;
            color: #005587;
            font-size: 1.15em;
        }

    .job-listings .more-listings, a.apply {
        font-size: .85em;
        display: none;
        background-color: #005587;
        color: #fff;
        width: 100%;
        text-align: center;
        padding: .5em 0;
        margin: 2em 0;
    }

a.apply {
    display: block;
    cursor: pointer;
    padding: 1em;
    background-color: #E56A54;
    margin-top: 30px;
}

.job-listings span.highlite {
    font-weight: 700;
}

.job-listings .list-location {
    font-size: .85em;
    display: block;
}

.filter-box {
    background-color: #f2f2f2;
    width: 380px;
    padding: 1em 2em;
}

.job-filters {
    display: none;
}

    .job-filters h2 {
        font-size: 1.5em;
        margin: 1em 0 .5em 0;
        padding-bottom: .5em;
        border-bottom: 1px #ddd solid;
    }

        .job-filters h2 span {
            color: #005587;
        }

.filter-tag {
    font-size: .8em;
    line-height: 1.2;
    display: table;
    margin: .5em 0;
    background-color: #005587;
    color: #fff;
    position: relative;
    cursor: pointer;
    border-radius: 3px;
    padding: .3em .5em .3em 25px;
}

    .filter-tag:before {
        background-color: #fff;
        position: absolute;
        font-weight: 700;
        width: 15px;
        height: 15px;
        font-size: 13px;
        padding-left: 4px;
        line-height: 1;
        left: 5px;
        content: 'x';
        border-radius: 50%;
        color: #005587;
    }

div.sort.persist {
    max-height: 200px;
    overflow-y: scroll;
}

a.filter-link, a.sort-link {
    font-size: .9em;
    display: table;
    color: #005587;
    font-weight: 400;
    margin: .5em 0;
}

.filter-box div span {
    cursor: pointer;
    font-weight: 700;
    color: #005587;
    font-size: .85em;
    display: inline-block;
    margin-top: 10px;
}

    .filter-box div span:before {
        line-height: 11px;
        text-align: center;
        margin: -3px 3px 0 0;
        width: 12px;
        height: 12px;
        background-color: #666;
        vertical-align: middle;
        border-radius: 50%;
        color: #fff;
        display: inline-block;
    }

span.more-filters:before {
    content: '+';
}

span.less-filters:before {
    content: '-';
}

div#alt-access {
    margin-bottom: 40px;
}

    div#alt-access button {
        font: normal 500 1.75em/1 'IBM Plex Sans';
        color: #005587;
        display: block;
        background: #fff;
        border: 1px #005587 solid;
        text-align: center;
        padding: .5em;
        width: 100%;
    }

    div#alt-access div {
        display: none;
        padding: 1.75em;
    }

    div#alt-access li {
        line-height: 1.2;
        margin-bottom: 1em;
    }

input.form-control, textarea.form-control {
    width: 100%;
}

textarea.rm-form-input {
    min-height: 10em;
}

span.help-block.field-validation-error {
    padding-top: .5em;
    display: block;
    color: #e8bf41;
}

.required-field .control-label:before {
    margin-right: .125em;
}

.required-field div.checkbox:after {
    content: none;
}

.module_article #landing_container td {
    font-size: 1em;
}

#landing_container td a {
    border-bottom: none;
}

ul.rm-form-error-summary {
    background-color: transparent;
    color: #e8bf41;
    padding: 5px;
    font: 700 normal 1.4375em/1 'bebas';
    text-transform: uppercase;
    margin-bottom: 1em;
    display: none;
    border-left: none;
}

.rm-form-error-summary li {
    border-bottom: solid 1px #e8bf41;
}

form .form-submit-border {
    display: inline-block;
}

.hide-field {
    display: none;
}

p.rfp-title {
    font-size: .75em;
}

#rfp-progress {
    width: 100%;
    text-align: left;
    height: 30px;
    border: #b4e2fa solid 2px;
}

    #rfp-progress .barlabel {
        position: absolute;
        left: 50%;
        font-size: .75em;
        margin-top: 7px;
        margin-left: -35px;
    }

    #rfp-progress .bar {
        background: url('/img/bg-blu.svg');
        height: 26px;
        width: 49%;
        text-align: center;
        display: inline-block;
    }

        #rfp-progress .bar.zero {
            width: 1%;
        }

        #rfp-progress .bar.fifty {
            width: 50%;
        }

        #rfp-progress .bar.hundred {
            width: 100%;
        }

a.gen-btn {
    height: 42px;
    margin-left: 45px;
    display: inline-block;
    padding: .5em 1.25em .5em 1.75em;
    background: #00568c;
    color: #fff;
    font: normal 400 1.25em/1 'bebas';
    letter-spacing: .1em;
}

/* profile widget */
.profile-widget-wrap {
    margin-bottom: 32px;
}

.profile-widget-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0);
    visibility: hidden;
    z-index: 99;
    webkit-transition: background 0.25s ease-out;
    -moz-transition: background 0.25s ease-out;
    -o-transition: background 0.25s ease-out;
    transition: background 0.25s ease-out;
}

.open .profile-widget-overlay {
    visibility: visible;
    background: rgba(0, 0, 0, .6);
    z-index: 999998;
}

.open .profile-widget-inner {
    background-color: #f4f4f4;
    position: fixed;
    /* top: 0;
        left: 0;
        bottom: 20px; */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 999999;
    overflow-y: scroll;
    height: calc( 100% - 40px );
    max-width: 1200px;
    width: calc( 100% - 40px );
}

.profile-widget-container {
    color: #2d2d2d;
    background: #e6e6e6;
}

    .profile-widget-container.career-profile-simple .profile-img-container,
    .profile-widget-container.career-profile-simple .meet-container,
    .profile-widget-container.hide-img .profile-img-container {
        display: none;
    }

    .profile-widget-container .profile-img-container {
        background: #ffffff;
        line-height: 0;
    }

        .profile-widget-container .profile-img-container img {
            width: 300px;
            max-width: none;
        }

    .profile-widget-container.career-profile-full,
    .profile-widget-container.meet {
        align-items: center;
    }

    .profile-widget-container.career-profile-regular .meet-container,
    .profile-widget-container.quote .meet-container {
        display: none;
    }

    .profile-widget-container .profile-overlay-close:before {
        /* content: "\2716"; */
        content: "";
        background: url('/-/media/Images/HuronConsultingGroup/Icons/x') no-repeat;
        display: block;
        width: 15px;
        height: 15px;
    }

@supports (-ms-ime-align: auto) {

    .profile-widget-container .profile-overlay-close:before {
        content: "\2715";
    }
}

.profile-widget-container .profile-overlay-close {
    display: none;
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 20px;
    cursor: pointer;
    z-index: 103;
}

.open .profile-widget-container > .profile-overlay-close {
    display: block;
}

.profile-widget-container .meet-container {
    position: relative;
    padding: 30px;
}

    .profile-widget-container .meet-container .meet-header {
        margin: 0 0 10px 0;
        font-size: 34px;
        line-height: 40px;
    }

    .profile-widget-container .meet-container .meet-desc p {
        margin-bottom: 20px;
        margin: 0;
        font-size: 26px !important;
        font-weight: 300;
        line-height: 34px;
    }

    .profile-widget-container .meet-container .meet-read-more {
        display: inline-block;
        position: relative;
        margin-top: 20px;
        font-size: 18px;
        font-weight: 500;
        letter-spacing: 0.09px;
        color: #005789;
        text-decoration: none;
    }

.open .profile-widget-container .meet-container .meet-read-more {
    display: none;
}

.profile-widget-container .meet-container a:after {
    content: "\276F";
    position: absolute;
    right: -20px;
    top: 2px;
    font-size: 14px;
    transform: rotate(90deg)
}

.profile-widget-container .profile-desc-container p {
    margin-bottom: 20px;
}

.profile-widget-container.career-profile-full .quote-container,
.profile-widget-container.meet .quote-container {
    display: none;
}

.profile-widget-wrap .quote-container {
    padding: 30px 0 30px 30px;
}

    .profile-widget-wrap .quote-container blockquote {
        position: relative;
        quotes: "“" "”" "‘" "’";
        font: 400 28px/37px 'IBM Plex Serif';
        border-width: 0px;
        border-style: initial;
        border-color: initial;
        border-image: initial;
        padding-left: 100px;
        margin: 0 100px 10px 0;
    }

        .profile-widget-wrap .quote-container blockquote:before {
            content: "\201C";
            position: absolute;
            left: 5px;
            top: -11px;
            font: normal 700 130px/1 'IBM Plex Serif';
        }

    .profile-widget-wrap .quote-container .quote-byline-container {
        padding-left: 100px;
        font-size: 24px;
        margin: 20px 0 0 20px;
        text-indent: -20px;
    }

        .profile-widget-wrap .quote-container .quote-byline-container a {
            font-size: 24px;
            letter-spacing: 0px;
            color: #00558C;
            text-decoration: none;
            font-weight: 500;
        }

/* .profile-widget-wrap .career-profile-simple .quote-byline-container,.profile-widget-wrap .career-profile-simple .quote-byline-container a {
        font-size: 24px;
        line-height: 44px;
    } */

.profile-widget-wrap .quote-desc-container {
    background: #f4f4f4;
}

.profile-widget-wrap.open .quote-desc-container .quote-container {
    min-width: 300px;
    max-width: 300px;
}

.profile-widget-wrap.open .quote-desc-container blockquote {
    padding: 50px 0 0 0;
    font-size: 26px !important;
    width: 100%;
}

.profile-widget-wrap.open .quote-desc-container .quote-byline-container {
    padding: 0;
}

.profile-widget-wrap.open .quote-desc-container .profile-desc-container {
    padding: 30px;
}

    .profile-widget-wrap.open .quote-desc-container .profile-desc-container p {
        font-size: 18px;
        line-height: 28px;
    }

@media only screen and (max-width: 76.25em) /* 1220px */
{
    section.module_career-search, .careers-site .page-hero div.career-box {
        padding: 30px;
    }
}

@media (max-width: 768px) {

    .careers-site .page-hero-text {
        bottom: auto;
    }

    .careers-site .page-hero div.career-box a {
        width: auto;
        margin-bottom: 2em;
    }

    .page-hero div.career-box a.callout {
        margin-top: 0;
    }

    section.module_career-bar {
        margin-top: 0;
        padding: 0 2em 2em 2em;
        position: static;
    }

    .module_career-bar div {
        flex-wrap: wrap;
        justify-content: space-around;
    }

    .module_career-bar .job-social a {
        display: inline;
    }

    .module_career-bar .job-social {
        bottom: 0;
        top: auto;
        width: 100%;
        height: 45px;
        display: flex;
        justify-content: space-around;
        padding: .5em;
    }

    .module_career-bar .career-box a.callout {
        display: block;
        margin-top: 1em;
    }

    section.module_career-search {
        padding: 0 2em 1em 2em;
    }

    .careers-site .page-hero div.career-box {
        padding: 0;
    }

    .module_career-search .search-box {
        flex-wrap: wrap;
    }

    .module_career-search .location-box, .module_career-search .keyword-box, .module_career-search input[type=submit], .filter-box, .module_career-bar div, .module_career-bar a.box {
        width: 100%;
    }

    .module_career-search input[type=text], .module_career-search input[type=submit] {
        margin: .5em 0;
    }

    ul.careers-subnav {
        display: block;
        padding: 0 2em;
        border-bottom: 0;
    }

        ul.careers-subnav li {
            min-height: 35px;
            border-bottom: 1px #595959 solid;
            font-size: 1.25em;
        }

            ul.careers-subnav li:after {
                content: ' ';
                width: 15px;
                height: 10px;
                display: inline-block;
                background: url(/-/media/Images/HuronConsultingGroup/Icons/arrow-right) no-repeat right center;
                float: right;
                margin-right: 30px;
            }

    .job-listings {
        margin-left: 0;
    }

    .module_career-search .location-results {
        top: 90px;
    }

    .module_video-hero.hero_text h1 {
        font-size: 1.75em;
        text-align: center;
        width: 100%;
        top: 20px;
    }

    .careers-site .module_gallery .gallery img {
        margin-right: -200px;
    }

    .careers-site #video-wrapper {
        padding: 0 0 56%;
        width: 100%;
        margin-top: 20px;
    }

    .profile-widget-wrap {
        margin: 0 -30px;
    }

        .profile-widget-wrap .flex {
            flex-direction: row;
        }

            .profile-widget-wrap .flex > * {
                margin-bottom: 0;
            }

    .open .profile-widget-container .meet-container .profile-overlay-close {
        display: block;
    }

    .open .profile-widget-container > .profile-overlay-close {
        display: none;
    }

    .profile-widget-wrap .profile-widget-overlay {
        display: none;
    }

    .profile-widget-wrap .profile-widget-inner {
        position: relative;
        margin: 0;
        overflow: visible;
        top: auto;
        left: auto;
        transform: none;
        width: auto;
        height: auto;
    }

    .profile-widget-container .profile-img-container img {
        width: 100%;
    }

    .profile-widget-wrap .quote-container blockquote {
        padding: 50px 0 0 0;
        margin-right: 20px;
        font-size: 28px !important;
    }

        .profile-widget-wrap .quote-container blockquote:before {
            left: -5px;
            top: -25px;
        }

    .profile-widget-wrap .quote-container .quote-byline-container {
        padding: 0 0 0 .8em;
        text-indent: -.8em;
        line-height: 28px;
        margin: 20px 0 0 0;
    }

    .profile-widget-wrap.open .quote-desc-container .quote-container {
        min-width: auto;
        max-width: none;
        width: 100%;
    }

    .profile-widget-wrap .flex {
        flex-direction: column;
    }

    .profile-widget-container.flex > * {
        margin-bottom: 0;
    }
}
