/* Careers page-only Timber styles. */

.ad-page-page--careers {
    background: var(--ad-color-white);
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: normal;
}

.ad-careers-hero h1,
.ad-careers-love h2 {
    color: var(--ad-low-risk-display);
    letter-spacing: 0;
}

.ad-page-page--careers {
    --ad-low-risk-display: var(--ad-color-periwinkle);
}

.ad-careers-hero {
    padding: 92px 0 88px;
    background: var(--ad-color-mist);
    text-align: center;
}

.ad-careers-hero__inner {
    max-width: min(1120px, calc(100% - 128px));
}

.ad-careers-hero .ad-page-overline {
    margin: 0 0 20px;
    color: var(--ad-color-teal-deep);
    font-size: var(--ad-type-size-sm);
    font-weight: var(--ad-font-weight-bold);
    letter-spacing: 1px;
}

.ad-careers-hero h1 {
    max-width: none;
    font-size: clamp(44px, 4.8vw, 64px);
    line-height: 1.05;
}

.ad-careers-hero p:not(.ad-page-overline) {
    max-width: 1100px;
    margin: 20px auto 0;
    color: var(--ad-color-blue-deep);
    font-size: var(--ad-fluid-h3);
    font-weight: var(--ad-font-weight-semibold);
    line-height: 1.2;
}

.ad-careers-video {
    padding: 0;
    margin: 0;
    background: var(--ad-color-black);
}

.ad-timber-site-shell .ad-careers-video video {
    display: block;
    width: 100%;
    max-width: none;
    max-height: 720px;
    object-fit: cover;
}

.ad-careers-love {
    padding: 82px 0 86px;
    background: var(--ad-gradient-teal-blue-wash);
}

.ad-careers-love__panel {
    width: min(1130px, calc(100% - 128px));
    margin: 0 auto;
    padding: 44px 80px 46px;
    background: var(--ad-color-white);
    text-align: center;
}

.ad-careers-love h2 {
    font-size: clamp(34px, 3.4vw, 46px);
    line-height: 1.12;
}

.ad-careers-love p {
    max-width: 980px;
    margin: 24px auto 0;
    color: var(--ad-color-blue-deep);
    font-size: clamp(18px, 1.55vw, 22px);
    font-weight: var(--ad-font-weight-medium);
    line-height: 1.35;
}

.ad-careers-jobs {
    min-height: 320px;
    padding: 84px 0 210px;
    background: var(--ad-color-white);
}

.ad-careers-bamboo .BambooHR-ATS-board {
    max-width: 100% !important;
    font-family: inherit !important;
}

.ad-careers-bamboo .BambooHR-ATS-board h2 {
    padding-bottom: 20px !important;
    margin-bottom: 40px !important;
    border-bottom: 2px solid var(--ad-color-cool-divider) !important;
    color: var(--ad-color-blue-deep) !important;
    font-size: 28px !important;
    font-weight: var(--ad-font-weight-bold) !important;
}

.ad-careers-bamboo .BambooHR-ATS-Department-Header {
    display: block !important;
    margin: 40px 0 15px !important;
    color: var(--ad-color-teal-deep) !important;
    font-size: 18px !important;
    font-weight: var(--ad-font-weight-semibold) !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

.ad-careers-bamboo .BambooHR-ATS-Department-Item,
.ad-careers-bamboo .BambooHR-ATS-Jobs-List,
.ad-careers-bamboo .BambooHR-ATS-Jobs-Item {
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    list-style: none !important;
}

.ad-careers-bamboo .BambooHR-ATS-Jobs-Item {
    position: relative !important;
    display: flex !important;
    flex-wrap: wrap !important;
    row-gap: 12px !important;
    align-items: center !important;
    justify-content: flex-end !important;
    padding: 22px 10px !important;
    border-bottom: 1px solid var(--ad-border-card-soft) !important;
    background-color: var(--ad-color-white) !important;
    transition: background-color 0.2s ease !important;
}

.ad-careers-bamboo .BambooHR-ATS-Jobs-Item:hover {
    background-color: var(--ad-color-mist) !important;
}

.ad-careers-bamboo .BambooHR-ATS-Jobs-Item a {
    z-index: 2 !important;
    margin-right: auto !important;
    color: var(--ad-color-black) !important;
    font-size: 16px !important;
    font-weight: var(--ad-font-weight-medium) !important;
    text-decoration: none !important;
}

.ad-careers-bamboo .BambooHR-ATS-Jobs-Item a::before {
    position: absolute !important;
    z-index: 1 !important;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "" !important;
}

.ad-careers-bamboo .BambooHR-ATS-Location {
    display: inline-flex !important;
    flex: 0 0 180px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 0 !important;
    margin-right: 20px !important;
    background: transparent !important;
    color: var(--ad-color-muted) !important;
    font-size: 15px !important;
    font-weight: var(--ad-font-weight-medium) !important;
    pointer-events: none !important;
}

.ad-careers-bamboo .BambooHR-ATS-Location::before {
    display: inline-block !important;
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    margin-right: 8px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 46' fill='none'%3E%3Cpath d='M23 41.4443C22.5625 41.4443 22.1875 41.3193 21.875 41.0693C21.5625 40.8193 21.3281 40.4912 21.1719 40.085C20.5781 38.335 19.8281 36.6943 18.9219 35.1631C18.0469 33.6318 16.8125 31.835 15.2188 29.7725C13.625 27.71 12.3281 25.7412 11.3281 23.8662C10.3594 21.9912 9.875 19.7256 9.875 17.0693C9.875 13.4131 11.1406 10.3193 13.6719 7.78808C16.2344 5.22559 19.3438 3.94434 23 3.94434C26.6563 3.94434 29.75 5.22559 32.2812 7.78808C34.8438 10.3193 36.125 13.4131 36.125 17.0693C36.125 19.9131 35.5781 22.2881 34.4844 24.1943C33.4219 26.0693 32.1875 27.9287 30.7813 29.7725C29.0938 32.0225 27.8125 33.8975 26.9375 35.3975C26.0938 36.8662 25.3906 38.4287 24.8281 40.085C24.6719 40.5225 24.4219 40.8662 24.0781 41.1162C23.7656 41.335 23.4063 41.4443 23 41.4443ZM23 21.7568C24.3125 21.7568 25.4219 21.3037 26.3281 20.3975C27.2344 19.4912 27.6875 18.3818 27.6875 17.0693C27.6875 15.7568 27.2344 14.6475 26.3281 13.7412C25.4219 12.835 24.3125 12.3818 23 12.3818C21.6875 12.3818 20.5781 12.835 19.6719 13.7412C18.7656 14.6475 18.3125 15.7568 18.3125 17.0693C18.3125 18.3818 18.7656 19.4912 19.6719 20.3975C20.5781 21.3037 21.6875 21.7568 23 21.7568Z' fill='%2331aab9'/%3E%3C/svg%3E") !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    content: "" !important;
}

.ad-careers-bamboo .BambooHR-ATS-Jobs-Item::after {
    display: block !important;
    flex-shrink: 0 !important;
    padding: 10px 24px !important;
    border-radius: var(--ad-radius-pill) !important;
    background-color: var(--ad-color-teal) !important;
    color: var(--ad-color-black) !important;
    content: "APPLY" !important;
    font-size: 13px !important;
    font-weight: var(--ad-font-weight-bold) !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}

@media (max-width: 1100px) {

    .ad-careers-love__panel,
.ad-careers-hero__inner {
        width: min(100% - 48px, 720px);
        max-width: none;
    }

    .ad-careers-love__panel {
        padding: 40px 36px;
    }
}

@media (max-width: 640px) {

    .ad-page-page--careers {
        font-size: 14.1458px;
        line-height: 20.14px;
    }

    .ad-careers-hero {
        padding: 76px 0 64px;
    }

    .ad-careers-hero__inner {
        width: min(100% - 40px, 390px);
    }

    .ad-careers-hero h1 {
        font-size: clamp(36px, 10vw, 44px);
        line-height: 1.02;
    }

    .ad-careers-hero p:not(.ad-page-overline) {
        margin-top: 18px;
        font-size: clamp(20px, 6vw, 26px);
        line-height: 1.22;
    }

    .ad-careers-video video {
        min-height: 360px;
        object-fit: cover;
    }

    .ad-careers-love {
        padding: 52px 0;
    }

    .ad-careers-love__panel {
        width: min(100% - 40px, 390px);
        padding: 34px 22px 36px;
    }

    .ad-careers-love h2 {
        font-size: 34px;
        line-height: 1.08;
    }

    .ad-careers-love p {
        font-size: 18px;
        line-height: 1.42;
    }

    .ad-careers-jobs {
        min-height: 240px;
        padding: 58px 0 120px;
    }

    .ad-careers-bamboo .BambooHR-ATS-Jobs-Item {
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        gap: 16px !important;
        padding: 24px 0 !important;
    }

    .ad-careers-bamboo .BambooHR-ATS-Jobs-Item a {
        width: 100% !important;
        margin: 0 !important;
    }

    .ad-careers-bamboo .BambooHR-ATS-Location {
        width: 100% !important;
        flex: unset !important;
        margin: 0 !important;
    }

    .ad-careers-bamboo .BambooHR-ATS-Jobs-Item::after {
        align-self: flex-start !important;
        margin-top: 5px !important;
        margin-left: 0 !important;
    }
}
