﻿.section-orange,
.section-blue,
.section-navy,
.section-white {
    padding: 60px 0;
}

.section-orange {
    background-color: rgb(226, 147, 20, 0.1);
    padding-top: 30px;
    padding-bottom: 0;
}

.section-blue {
    background-color: rgb(70, 132, 146, 0.1);
}

.section-navy {
    background-color: #004762;
}

h1[tabindex="-1"]:focus {
    outline: none !important;
}

/* Custom card styles Start */
.custom-card {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.08);
    margin-bottom: 20px;
}

.custom-card .card-header {
    background-color: #f7f7f7;
    padding: 10px 20px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.custom-card .card-body {
    padding: 20px;
}

.custom-card h5 {
    margin: 0;
}
/* Custom card styles End */

#banner {
    background-color: #004762;
    color: #fff;
    display: flex;
    width: 100%;
}

    #banner .banner-slide {
        display: none;
        width:100%;
    }

    #banner .slick-list {
        height: 440px !important;
    }

    #banner.slick-dotted.slick-slider {
        margin-bottom: 0;
    }

    #banner .slick-dots {
        bottom: 30px;
    }

        #banner .slick-dots li button:before {
            font-size: 20px;
        }

    #banner .banner-data {
        height: 440px;
        width: 100%;
        min-height: 300px;
        text-align: center;
        background-color: #194175;
        background-size: cover;
        background-position: center;
    }

        #banner .banner-data img.banner-img {
            position: absolute;
            object-fit: cover;
            z-index: 0;
            margin-left: 0;
            margin-right: 0;
            height: auto;
            width: 100vw;
        }
        #banner .banner-data .banner-content {
            width: 100%;
            position: relative;
            padding-top: 60px;
            align-items: center;
            display: flex;
            justify-content: center;
            flex-direction: column;
        }
        #banner .banner-data {
            background-color: #004762
        }

    #banner .banner-title,
    #banner .banner-text {
        color: #fff;
        text-align: center;
        width: 100%;
    }

    #banner .banner-title {
        font-weight: bold;
        font-size: 34px;
    }

    #banner .banner-text {
        font-size: 18px;
    }

.open-positions-subheader-title {
    color: #D89016;
    font-family: Roboto Condensed;
    font-weight: Bold;
    font-size: 24px;
    padding-bottom: 20px;
}

#prospect-jobs-section-divider {
    margin-top: 30px;
    margin-bottom: 30px;
}
#prospect-jobs-section{
    margin-bottom: 10px;
}
#prospect-jobs-section > h5 {
    color: #468492;
    font-weight:bold;
}

    #prospect-jobs-section > #prospect-jobs-section-btn-group {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        row-gap: 20px;
    }

#badges-section {
    margin-top: 30px;
}

    #badges-section div.badge-block {
        background-color: #fff;
        border: 1px solid #CCCCCC;
        height: 150px;
        display: flex;
        flex-direction: row;
        justify-items: center;
        align-items: center;
        justify-content: center;
        padding: 10px;
    }

    #badges-section .badge-img {
        margin-right: 0;
    }

    #badges-section .badge-text {
        font-family: "Roboto", Arial, Helvetica, sans-serif;
        font-size: 16px;
        margin-bottom: 0;
        font-weight: 600;
    }

    #badges-section #badge-great-place-work {
        width: 82px;
        height: 116px;
    }

    #badges-section #badge-crain {
        width: auto;
        height: 120px;
    }

    #badges-section #badge-fortune {
        width: 77px;
        height: 116px;
    }

.table-width {
    width: 100%;
}

.homepage-section {
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin-bottom: 30px;
}

    .homepage-section > .homepage-text {
        width: 90%;
    }

.homepage-title {
    font-size: 36px;
    font-weight: bold;
}

.homepage-text {
    font-size: 18px;
    margin-bottom: 0;
}

.video-section,
.video-section > div.row > div.col-12 {
    display: flex;
    flex-direction: column;
    align-items: center;
}

    .video-section .main-video-title,
    .video-section .video-title,
    .video-section .estdate-map,
    .video-section .video-text {
        font-family: 'Roboto', Arial, Helvetica, sans-serif;
        text-align: center;
    }

    .video-section .main-video-title {
        font-size: 40px;
        font-weight: bold;
        text-decoration: underline;
    }

    .video-section .video-title {
        font-size: 24px;
        font-weight: bold;
        text-decoration: underline;
    }

    .video-section .video-text {
        color: #737373;
    }

    .video-section .map-icon {
        color: #1685CF;
        margin-right: 5px;
    }

a.video-title{
    color: #212529;
}

.mobile-center {
    text-align: center;
}

.percent-spacing {
    margin-bottom: 60px;
}

.link-color {
    color: #1685CF;
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
    font-size: 14px;
    font-weight: bold;
}

.connect-section {
    background-color: #F0F2F5;
    border: 1px solid #CCCCCC;
    border-radius: 24px;
    padding: 15px 20px;
    width: fit-content;
    min-width: 350px;
    margin-bottom: 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

    .connect-section > span {
        color: #3D3D3D;
        font-family: 'Roboto', Arial, Helvetica, sans-serif;
        font-weight: bold;
    }

    .connect-section i {
        color: #B72B26;
        margin-right: 10px;
    }

    .connect-section img {
        padding: 0 8px;
        height: 24px;
    }

.thumbnail-video {
    cursor: pointer;
    margin-bottom: 20px;
    width: 100%;
}

#benefits-btn {
    margin-top: 40px;
}

#great-place-work-section {
    margin-bottom: 30px;
}

    #great-place-work-section .homepage-title,
    #great-place-work-section .homepage-text,
    #great-place-work-data-section #great-place-work-text {
        text-align: center;
    }

#great-place-work-data-section {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
}

    #great-place-work-data-section > div > a {
        display: table;
        margin: auto;
    }

    #great-place-work-data-section #ninety-six-percent {
        display: block;
        height: auto;
        width: 100%;
        max-width: 150px;
        margin: auto;
    }

    #great-place-work-data-section #great-place-work-text {
        font-size: 18px;
        margin-bottom: 30px;
    }

#great-place-work-img {
    width: 100%;
}

.events-carousel button.slick-arrow {
    border: 2px solid #000;
    color: #000;
    background: white;
    height: 40px;
    width: 25px;
    z-index: 1;
}

    .events-carousel button.slick-arrow.slick-next {
        right: 5px;
    }

    .events-carousel button.slick-arrow.slick-prev {
        left: 5px;
    }

        .events-carousel button.slick-arrow.slick-prev:before,
        .events-carousel button.slick-arrow.slick-next:before {
            border-style: solid;
            border-width: 2px 2px 0 0;
            content: '';
            color: #000;
            display: inline-block;
            height: 10px;
            position: relative;
            top: 0;
            transform: rotate(45deg);
            vertical-align: top;
            width: 10px;
        }

    .events-carousel button.slick-arrow.slick-next:before {
        transform: rotate(45deg);
        left: -2px;
    }

    .events-carousel button.slick-arrow.slick-prev:before {
        transform: rotate(-135deg);
        left: 2px;
    }

.events-carousel div.slick-track picture > img {
    padding: 5px;
}

/* Custom white circular arrows for main banner */
.custom-slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: white;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    font-size: 28px;
    line-height: 44px;
    text-align: center;
    z-index: 10;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    opacity: 1;
    transition: background 0.2s ease-in-out;
}
.custom-slick-arrow:hover,
.custom-slick-arrow:focus {
    background: rgba(255,255,255,1);
    color: #004762;
    opacity: 1;
}
.custom-slick-arrow:focus {
    outline: none;
}
.custom-slick-arrow:focus:not(:focus-visible) {
    background: transparent;
    color: white;
}
.custom-slick-arrow:focus-visible {
    background: rgba(255,255,255,1);
    color: #004762;
}

/* Hide Slick's default arrow pseudo-elements so they don't show under our custom arrows */
#banner .slick-prev:before,
#banner .slick-next:before {
    content: none !important;
}

/* Ensure arrows don't overlap banner content; keep some padding area on the sides */
#banner .banner-data .banner-content {
    padding-left: 70px;
    padding-right: 70px;
}
.slick-prev.custom-slick-arrow {
    left: 18px;
}
.slick-next.custom-slick-arrow {
    right: 18px;
}

@media (min-width: 576px) {
    #banner .banner-title,
    #banner .banner-text {
        width: 80%;
    }
    #banner .banner-data .banner-content {
        padding-top: 30px;
    }

    #banner .slick-dots {
        bottom: 16px;
    }
    #great-place-work-data-section {
        flex-direction: row;
    }

        #great-place-work-data-section > div > a {
            display: inline;
            margin: auto;
        }

        #great-place-work-data-section #ninety-six-percent {
            width: 150px;
            margin-right: 30px;
        }

        #great-place-work-data-section #great-place-work-text {
            text-align: left;
        }
    #badges-section div.badge-block {       
        margin-bottom: -3em;
    }
    #dont-settle{
        margin-bottom: 75px;
    }
    #dont-settle .homepage-title {
        width: 60%;
    }
    #dont-settle .homepage-text {
        width: 60%;
        font-size: 21px;
        margin-top: 17px;
    }
    #open-positions .homepage-title {
       margin-bottom: 15px;
    }
    #open-positions .homepage-text{
        width: 70%;
    }
    .open-positions-subheader-title{
        padding-bottom: 16.5px;
    }
}

@media (min-width: 768px) {
    #banner  {
        height: 440px;
        justify-content: start;
    }

    #banner .banner-title,
    #banner .banner-text {
        width: 80%;
    }

    #banner .banner-title {
        width: 70%;
    }

    #banner .banner-text {
        font-size: 22px;
        width: 60%;
    }
    #banner .slick-dots {
        bottom: 16px;
    }

    #prospect-jobs-section > #prospect-jobs-section-btn-group {
        flex-direction: row;
        justify-content: center;
    }

    #badges-section div.badge-block {
        height: 187px;
        margin-bottom: -5em;
    }
    #badges-section #badge-great-place-work {
        width: 111px;
        height: 156px;
    }
    #badges-section #badge-crain {
        height: 140px;
    }
    #badges-section #badge-fortune {
        width: 97px;
        height: 145px;
    }

    .table-width {
        width: 700px;
    }

    .homepage-section > .homepage-text {
        width: 650px;
    }
    #dont-settle{
        padding-top: 30px;
    }
    #dont-settle .homepage-title {
        width: 80%;
    }
    #dont-settle .homepage-text {
        width: 70%;
    }
    #open-positions .homepage-title {
        margin-bottom: 12px;
    }

    .open-positions-subheader-title {
        padding-bottom: 10px;
    }

    .video-section,
    .video-section > div.row > div.col-12 {
        align-items: start;
    }

        .video-section .main-video-title,
        .video-section .video-title,
        .video-section .estdate-map,
        .video-section .video-text {
            text-align: left;
        }
}

@media (min-width: 992px) {
    #banner  {
        height: 305px;
    }
       
    #banner .slick-list {
        height: 305px !important;
    }
        #banner .banner-data img.banner-img {
            min-height: 305px;
        }
    #banner .banner-title,
    #banner .banner-text {
        width: 60%;
    }

    #banner .banner-title {
        width: 50%;
        font-size: 36px;
    }

    #banner .banner-text {
        width: 65%;
        font-size: 18px;
    }
    #banner .slick-dots {
        bottom: 6px;
    }

    #badges-section div.badge-block {
        padding: 31px 22px 31px 27px;
        height: 157px;
        margin-bottom: -3em;
    }
    #badges-section .badge-text{
        font-size: 18px;
    }
    #badges-section .badge-img {
        margin-right: 20px;
    }
    #badges-section #badge-great-place-work {
        width: 91px;
        height: 128px;
    }
    #badges-section #badge-crain {
        height: 140px;
    }
    #open-positions > .homepage-title {
        font-size: 48px;
    }

    #open-positions > .homepage-text {
        font-size: 22px;
        width: 100%;
    }

    .video-section .main-video-title {
        font-size: 30px;
    }

    .mobile-center {
        text-align: left;
    }

    .percent-spacing {
        margin-bottom: 0;
    }

    #great-place-work-text {
        font-size: 21px;
    }

    #great-place-work-section .homepage-title,
    #great-place-work-section .homepage-text {
        text-align: left;
    }
    #dont-settle {
        padding-top: 0px;
    }
}

@media (min-width: 1200px) {
    #banner  {
        height: 379px;
    }
    #banner .slick-list {
        height: 379px !important;
    }
        #banner .banner-data img.banner-img {
            min-height: 380px;
        }

    #banner .banner-title,
    #banner .banner-text {
        width: 50%;
    }

    #banner .banner-title {
        font-size: 42px;
    }

    #banner .banner-text {
        font-size: 24px;
    }

    #badges-section .badge-img {
        margin-right: 12px;
    }

    #badges-section div.badge-block {
        height: 160px;
    }
    #badges-section div.badge-block {
        padding: 15px 17px 14px 17px;
    }

    #badges-section .badge-text {
        font: normal normal 17px/22px Roboto;
        font-weight: Bold;
    }
    #badges-section #badge-crain {
        height: 140px;
    }
    #badges-section #badge-fortune {
        width: 85px;
        height: 127px;
    }

    .table-width {
        width: 730px;
    }

    .video-section .main-video-title {
        font-size: 40px;
    }
}

@media (min-width: 1900px) {
    #banner {
        height: 430px;
    }
    #banner .slick-list {
        height: 430px !important;
    }
        #banner .banner-data img.banner-img {
            min-height: 430px;
        }
      
    #banner .banner-title {
        width: 38%;
    }

    #banner .banner-text {
        width: 45%;
    }

    #banner .banner-title {
        font-size: 45px;
    }

    #banner .banner-text {
        font-size: 23px;
    }
    #banner .slick-dots {
        bottom: 30px;
    }
    #badges-section .badge-text {
        font: normal normal 18px/24px Roboto;
        font-weight: Bold;
    }
    #open-positions .homepage-text {
        font-size: 22px;
        width: 100%;
    }
    #dont-settle {
        margin-bottom: 40px;
    }

        #dont-settle .homepage-title {
            width: 100%;
        }

        #dont-settle .homepage-text {
            width: 35%;
            font-size: 24px;
            margin-top: 12px;
        }

    #local-global-opportunities .homepage-text {
        width: 40%;
    }
}
