/* ==========================================================================
    LAYOUTS
    -------------------------------------------------------------------------
    Section
      : Action next to title (Override/complement)
      : Tabs in header (Override/complement)
      : Static pages (Override/complement)
      : Job Detail:
                Cards
                Certificates

    ELEMENTS
    -------------------------------------------------------------------------
    Buttons
      : Main
        : Primary (Override/complement)
      : Registratoin Methods
    Indicators
      : Date (New)
      : Pills (New)
        : Good (New)
        : Great (New)
        : Skills (New)
        : Strong (New)
    Links
    Close Session Popup

    COMPONENTS
    -------------------------------------------------------------------------
    Billboards
      : Articles as billboards (New)
    Tables
      : Articles as tables(Override/complement)
    Cards
      : Articles as cards (Override/complement)
    Signature
      : Articles as signatures (New)
    Lists
      : Skills (New)
    Navigation
      : Steps bar (Override/complement)
      : Tabs (Inverting clickable colors - commented and ready to use)
    Expandable

    WIDGETS
    -------------------------------------------------------------------------
    Attachment upload (New)
    Registered
      : Article (Override/complement)
    Search
      : Visible (Override/complement)

    MODULES
    -------------------------------------------------------------------------
    Banner
      : Home (New)
      : Secondary (New)
    Bottom banner
    Section

    PAGETYPES
    -------------------------------------------------------------------------
    Search jobs
      : Cards
        : Result (Override/complement)
      : Search Form
      : Culture Section
    Static pages
      : Side images
    Profile
    Job Detail

    UTILITIES
    -------------------------------------------------------------------------
    XXX

    PLUGINS
    -------------------------------------------------------------------------
    Glightbox
========================================================================== */

/*
    LAYOUTS/Section: Action next to title (Override/complement)
*/

.section__header--action-next-to-title {
    align-items: baseline;
}

.section__header--action-next-to-title .section__header__text {
    flex-grow: 0;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .section__header--action-next-to-title {
        flex-direction: column;
        align-items: flex-start;
    }

    .section__header--action-next-to-title .section__header__text + .section__header__actions {
        margin-block-start: var(--t-gs--space--s2);
    }

}

.section__header.section__header--tabs + *:not([class*="--narrow"]) {
    margin-block-start: var(--t-gs--space--xl);
}

/*
    LAYOUTS/Section: Job Detail: Cards
*/

.full-width__container{
    position: relative;
}

.section.section__video,
.section.section__cards{
    background-color: var(--t-gs--color--surface--secondary);
    margin-block: var(--t-gs--space--l);
}

.section.section__cards .section__content,
.section.section__video .section__content{
    max-inline-size: 90rem;
    margin-inline: auto;
    padding-block: 4rem;
}

.section__cards.cards--with-video{
    background-color: var(--t-gs--swatch--neutral--100);
    width: auto;
    overflow: initial;
    margin: 0;
}

.cards__list{
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}

.card__link{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 25rem;
    transition: .3s ease-in-out;
    width: 100%;
    max-width: 25rem;
    min-height: 20rem;
    margin: 1rem 1.5rem;
    padding: 1.2rem;
    box-shadow: 0 0.6rem 2rem rgba(0, 0, 0, .15), 0 0.4rem 1rem -0.2rem rgba(0, 0, 0, .25);
}

.card__link:hover{
    box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, .35), 0 1.2rem 1rem -0.8rem rgba(0, 0, 0, .3);
}

.card__link:hover .card-title{
    border-bottom: 0.1rem dotted;
}

.card__title{
    color: var(--t-gs--swatch--brand);
    font-size: var(--t-gs--font--size--06);
    font-weight: var(--t-gs--font--weight--medium);
    order: 1;
    margin-top: 1.5rem;
}

.card__image{
    max-height: 14.5rem;
    min-height: 14.5rem;
    overflow: hidden;
}

/*
    LAYOUTS/Section: Job Detail: Certificates
*/

.certificates__list{
    display: flex;
    justify-content: center;
    align-items: center;
}

.certificate__link{
    max-inline-size: 15rem;
    display: inline-block;
    margin-inline: 2rem;
}

@media all and (max-width: 600px){
    .certificates__list{
        flex-direction: column;
    }
}

/*
    ELEMENTS/Buttons: Main: Primary (Override/complement)
    ↳ to be deleted when we get the Application Flow wizard properly configured
*/

/*
    ELEMENTS/Buttons: Registratoin Methods
*/

.form--methods .fieldSpec.button-bar{
    display: flex;
    justify-content: center;
}

@media all and (min-width: 751px){
    .list--methods{
        justify-content: center;
    }
}

@media all and (max-width: 750px){
    .form--methods .fieldSpec.button-bar .button{
        width: 100%;
    }
}

/*
    ELEMENTS/Buttons: Returning Candidate Login
*/

.returning__candidate{
    margin-block-end: var(--t-gs--space--m2);
}

/*
    LAYOUTS/Section: Share widget tablet/mobile (Override/complement)
*/

@media (width <= 1024px) {
    .aside:has(.list--share) .article--actions {
        & .article__content {
            inline-size: 50%;
            padding-inline-end: calc(var(--t-tc--grid--laterals) / 4);

            & .button-bar--cols-1 {
                --t-tc--button-bar__buttons--width: 100%;
            }
        }
    }
    .aside .article:has(.list--share) {
        display: flex;
        align-items: center;
        inset-inline-start: 50%;
        inline-size: 50%;
        padding-block-start: var(--t-gs--space--m);
        padding-block-end: var(--t-gs--space--m);
        padding-inline-end: var(--t-tc--grid--laterals);
        padding-inline-start: calc(var(--t-tc--grid--laterals) / 4);
        position: fixed;
        justify-content: center;
        z-index: 5;
        background-color: var(--t-gs--color--surface--transparent);
        inset-block-end: 0;
        gap: var(--t-gs--space--s);

        & .article__header {
            --t-tc--title--font--weight: 400;
            --t-tc--title--h9: var(--t-gs--font--size--03);
            inline-size: auto;
        }

        & .article__content {
            margin-block-start: var(--t-gs--space--0);
        }

        .list--share {
            gap: var(--t-gs--space--s);

            & .shareButton {
                inline-size: calc(var(--t-gs--size--base)* 7);
                block-size: calc(var(--t-gs--size--base)* 9);
                background-size: auto calc(var(--t-gs--size--base)* 7);

                &.shareButton--linkedin {
                    inline-size: calc(var(--t-gs--size--base)* 10);
                }
            }
        }
    }
}
@media (width <= 750px) {
    .aside:has(.list--share) .article--actions {
        padding-block-end: calc(var(--t-gs--size--base)* 18);
        border-block-start-width: var(--t-gs--border--width--s);
        border-block-start-style: solid;
        border-block-start-color: var(--t-gs--color--border--default);

        & .article__content {
            inline-size: 100%;
            padding-inline-end: var(--t-gs--space--0);
        }
    }
    .aside .article:has(.list--share) {
        inset-inline-start: 0;
        inline-size: 100%;
    }
}

.gotoButton {
    --t-tc--buttons--border--color: var(--t-gs--color--border--on--fill--primary);
    --t-tc--buttons--background--color: var(--t-gs--color--fill--primary);
    --t-tc--buttons--font--color: var(--t-gs--color--text--on--fill--primary);
}

.gotoButton:hover {
    --t-tc--buttons--border--color: var(--t-gs--color--border--on--fill--primary--hover);
    --t-tc--buttons--background--color: var(--t-gs--color--fill--primary--hover);
    --t-tc--buttons--font--color: var(--t-gs--color--text--on--fill--primary--hover);
}

.gotoButton:focus,
.gotoButton:active {
    --t-tc--buttons--outline--width: var(--t-gs--border--width--m);
    --t-tc--buttons--border--color: var(--t-gs--color--border--on--fill--primary--focus);
    --t-tc--buttons--border--width: var(--t-gs--border--width--m);
    --t-tc--buttons--background--color: var(--t-gs--color--fill--primary--focus);
    --t-tc--buttons--font--color: var(--t-gs--color--text--on--fill--primary--focus);
}

.gotoButton.button--disabled,
.gotoButton:disabled {
    --t-tc--buttons--border--color: var(--t-gs--color--border--on--fill--primary--disabled);
    --t-tc--buttons--background--color: var(--t-gs--color--fill--primary--disabled);
    --t-tc--buttons--font--color: var(--t-gs--color--text--on--fill--primary--disabled);
}

/*
    ELEMENTS/Indicators: Date (New)
*/

:root {
    --t-tc--date--width: calc(var(--t-gs--size--base) * 15);
    --t-tc--date--height: calc(var(--t-gs--size--base) * 15);
    --t-tc--date--border--width: var(--t-gs--border--width--s);
    --t-tc--date--border--color: var(--t-gs--swatch--neutral--000);
    --t-tc--date--border--radius: var(--t-gs--border--radius--s);
    --t-tc--date--background--color: var(--t-gs--swatch--neutral--100);
    --t-tc--date--font--size: var(--t-gs--font--size--05);
    --t-tc--date--font--color: var(--t-gs--swatch--neutral--000);
}

.date {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: var(--t-tc--date--border--radius);
    border-width: var(--t-tc--date--border--width);
    border-style: solid;
    border-color: var(--t-tc--date--border--color);
    inline-size: var(--t-tc--date--width);
    block-size: var(--t-tc--date--height);
    background-color: var(--t-tc--date--background--color);
    color: var(--t-tc--date--font--color);
}

.date__day {
    font-size: var(--t-tc--date--font--size);
    font-weight: var(--t-gs--font--weight--bold);
    text-align: center;
    border-block-end-width: var(--t-tc--date--border--width);
    border-block-end-style: solid;
    border-block-end-color: var(--t-tc--date--font--color);
    inline-size: 100%;
}

.date__number {
    --t-tc--date--font--size: var(--t-gs--font--size--08);

    font-size: var(--t-tc--date--font--size);
    font-weight: var(--t-gs--font--weight--bold);
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    html[data-animations="default"] {
        .article--card--event {
            .date {
                --t-tc--date--font--color--transition--duration: 0.3s;
                --t-tc--date--background--color--transition--duration: 0.3s;

                transition-property: background-color, color;
                transition-duration: var(--t-tc--date--font--color--transition--duration), var(--t-tc--date--background--color--transition--duration);
                transition-timing-function: ease-in-out, ease-in-out;
            }

            &:hover .date {
                --t-tc--date--background--color: var(--t-gs--swatch--link--040);
                --t-tc--date--border--color: var(--t-gs--swatch--link--040);
                --t-tc--date--font--color: var(--t-gs--swatch--neutral--100);

                border: none;
                box-sizing: content-box;
            }
        }
    }

}

/*
    ELEMENTS/Indicators: Pills (New)
*/

:root {
    --t-gs--swatch--matching--hue: 160;
    --t-gs--swatch--matching--sat: 70%;
    --t-gs--swatch--matching--100: hsl(var(--t-gs--swatch--matching--hue) var(--t-gs--swatch--matching--sat) 100%);
    --t-gs--swatch--matching--095: hsl(var(--t-gs--swatch--matching--hue) var(--t-gs--swatch--matching--sat) 95%);
    --t-gs--swatch--matching--090: hsl(var(--t-gs--swatch--matching--hue) var(--t-gs--swatch--matching--sat) 90%);
    --t-gs--swatch--matching--070: hsl(var(--t-gs--swatch--matching--hue) var(--t-gs--swatch--matching--sat) 70%);

    --t-gs--color--fill--matching: var(--t-gs--swatch--matching--100);
    --t-gs--color--fill--matching--good: var(--t-gs--swatch--matching--095);
    --t-gs--color--fill--matching--great: var(--t-gs--swatch--matching--090);
    --t-gs--color--fill--matching--strong: var(--t-gs--swatch--matching--070);

    --t-tc--pill--border--color: var(--t-gs--swatch--neutral--000);
    --t-tc--pill--background--color: var(--t-gs--color--fill--matching);
}

.pill,
.list--pills .list .list__item span {
    display: inline;
    border-start-start-radius: var(--t-gs--border--radius--l);
    border-start-end-radius: var(--t-gs--border--radius--l);
    border-end-start-radius: var(--t-gs--border--radius--l);
    border-end-end-radius: var(--t-gs--border--radius--l);
    font-size: var(--t-gs--font--size--02);
    padding-block: var(--t-gs--space--xs);
    padding-inline: var(--t-gs--space--s);
    background-color: var(--t-tc--pill--background--color);
    font-weight: 400;
    vertical-align: middle;
}

.article--card .pill--matching {
    position: absolute;
    z-index: 2;
    inset-inline-start: 0;
    padding-inline: var(--t-gs--space--m2);
}

.results .article--card .pill--matching {
    position: relative;
    padding-inline: var(--t-gs--space--s);
}

/*
    ELEMENTS/Indicators: Pills (Within COMPONENTS/Cards: Articles as cards)
*/

/* Inside a card but 100% wide */
.article--full-pill .pill {
    position: absolute;
    z-index: 2;
    inset-inline-start: 0;
    inset-block-start: 0;
    border-radius: var(--t-gs--border--radius--0);
    padding-inline: var(--t-gs--space--m2);
}

/* Inside a card, in header regular flow */
.article--card .pill--skills,
.article--card .pill--blog {
    align-self:baseline;
    margin-block-start: var(--t-tc--card--padding--outers); /* replicating padding of header__content */
    margin-inline-start: var(--t-tc--card--padding--outers); /* replicating padding of header__content */
}

/*
    ELEMENTS/Indicators: Pills (Within WIDGETS/Details)
*/

.article--details .article__content__view__field.pill {
    padding-block-end: var(--t-gs--space--xs);
}

/*
    ELEMENTS/Indicators: Pills: Blog (New)
*/

.pill--blog {
    --t-tc--pill--border--color: var(--t-gs--color--border--brand);
    --t-tc--pill--background--color: var(--t-gs--color--surface--brand);
}

/*
    ELEMENTS/Indicators: Pills: Detail (New)
*/

.pill--detail {
    --t-tc--pill--border--color: var(--t-gs--color--border--brand);
    --t-tc--pill--background--color: var(--t-gs--color--surface--brand);

    display: inline-block;
    margin-block-end: var(--t-gs--space--s);
    border-width: var(--t-gs--border--width--s);
    border-style: solid;
    border-color: var(--t-tc--pill--border--color);
}

/*
    ELEMENTS/Indicators: Pills: Good (New)
*/

.pill--good {
    --t-tc--pill--background--color: var(--t-gs--color--fill--matching--good);
}

/*
    ELEMENTS/Indicators: Pills: Great (New)
*/

.pill--great {
    --t-tc--pill--background--color: var(--t-gs--color--fill--matching--great);
}

/*
    ELEMENTS/Indicators: Pills: Strong (New)
*/

.pill--strong {
    --t-tc--pill--background--color: var(--t-gs--color--fill--matching--strong);
}

/*
    ELEMENTS/Indicators: Pills: Skills (New)
*/

.pill--skills,
.pill--blog,
.list--pills .list .list__item span {
    border-width: var(--t-gs--border--width--s);
    border-style: solid;
    border-color: var(--t-tc--pill--border--color);
}

.pill--skills-b {
    border-width: var(--t-gs--border--width--s);
    border-style: dashed;
    border-color: var(--t-tc--pill--border--color);
}

/*
    ELEMENTS/Indicators: Pills: Cards (New)
*/
.pill--onCard{
    border-start-start-radius: var(--t-gs--border--radius--0);
    border-start-end-radius: var(--t-gs--border--radius--0);
    border-end-start-radius: var(--t-gs--border--radius--0);
    border-end-end-radius: var(--t-gs--border--radius--0);
}

/*
    ELEMENTS/Links
*/

.link:focus{
    outline-color: var(--t-gs--swatch--brand);
}

/*
    ELEMENTS/Close Session Popup
*/

.glightbox-container.glightbox-clean .gclose svg,
.ui-dialog button.ui-button.ui-dialog-titlebar-close .ui-button-icon{
    display: inline-block;
}

/*
    COMPONENTS/Cards: Billboards (New)
*/

:root {
    --t-tc--billboard--height: calc(var(--t-gs--size--base) * 80);
    --t-tc--billboard--border--radius: var(--t-gs--border--radius--m);
    --t-tc--billboard--background--position: center center;
    --t-tc--billboard--transform--scale: 1.2;
    --t-tc--billboard--filter--blur: calc(var(--t-gs--size--base) * 2);
    --t-tc--billboard__content--line--height: calc(var(--t-gs--size--base) * 6);
    --t-tc--billboard__content--font--color: var(--t-gs--swatch--neutral--100);
    --t-tc--billboard__content--height--max: calc(var(--t-gs--size--base) * 50);
    --t-tc--billboard__after--background--color: var(--t-gs--swatch--brand);
    --t-tc--billboard__after--opacity: 1;
    --t-tc--billboard__after--transform--scale: 3;
}

.article--billboard {
    position: relative;
    block-size: var(--t-tc--billboard--height);
    border-radius: var(--t-tc--billboard--border--radius);
    overflow: hidden;
}

.article--billboard .article__banner__image {
    position: absolute;
    inset-block-start: 0;
    inset-block-end: 0;
    inset-inline-start: 0;
    inset-inline-end: 0;
    object-fit: cover;
    z-index: -1;
    block-size: 100%;
    inline-size: 100%;
}

.article--billboard .article__wrapper {
    position: absolute;
    inset-block-end: 0;
    inset-inline-start: 0;
    inset-inline-end: 0;
    padding-block-end: var(--t-gs--space--s);
    padding-inline: var(--t-gs--space--l);
    z-index: 1;
    inline-size: initial;
}

.article--billboard .article__header__text__title {
    --t-tc--title--font--color: var(--t-gs--swatch--neutral--100);

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.article--billboard .article__content {
    line-height: var(--t-tc--billboard__content--line--height);
    overflow: hidden;
    color: var(--t-tc--billboard__content--font--color);
    padding-block-end: var(--t-gs--space--l);
}

.article--billboard:after {
    content: "";
    position: absolute;
    inset-block-end: -50%;
    inset-inline-end: -50%;
    inline-size: 100%;
    block-size: 100%;
    background-color: var(--t-tc--billboard__after--background--color);
    border-radius: 50%;
    opacity: var(--t-tc--billboard__after--opacity);
    transform: scale(var(--t-tc--billboard__after--transform--scale));
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    html[data-animations="default"] {
        .article--billboard {
            --t-tc--billboard--transform--transition--duration: 0.3s;
            --t-tc--billboard--filter--transition--duration: 0.3s;
            --t-tc--billboard--color--transition--duration: 0.25s;
            --t-tc--billboard__content--height--max--transition--duration: 0.5s;
            --t-tc--billboard__content--opacity--transition--duration: 0.5s;
            --t-tc--billboard__content--padding--transition--duration: 0.25s;

            .article__banner__image {
                transition-property: transform, filter;
                transition-duration: var(--t-tc--billboard--transform--transition--duration), var(--t-tc--billboard--filter--transition--duration);
                transition-timing-function: ease-in-out, ease-in-out;
            }

            &:hover .article__banner__image {
                transform: scale(var(--t-tc--billboard--transform--scale));
                filter: blur(var(--t-tc--billboard--filter--blur));
            }

            .article__header__text__title {
                --t-tc--title--font--color: var(--t-gs--swatch--neutral--020);

                transition-property: color;
                transition-duration: var(--t-tc--billboard--color--transition--duration);
                transition-timing-function: ease-in-out;
            }

            &:hover .article__header__text__title {
                --t-tc--title--font--color: var(--t-gs--swatch--neutral--100);
            }

            .article__content {
                max-block-size: 0;
                opacity: 0;
                padding-block-end: var(--t-gs--space--0);
                transition-property: max-block-size, opacity, padding;
                transition-duration: var(--t-tc--billboard__content--height--max--transition--duration), var(--t-tc--billboard__content--opacity--transition--duration), var(--t-tc--billboard__content--padding--transition--duration);
                transition-timing-function: ease-in-out, ease-in-out, linear;
            }

            &:hover .article__content {
                max-block-size: var(--t-tc--billboard__content--height--max);
                opacity: 1;
                padding-block-end: var(--t-gs--space--l);
            }

            &::after {
                transform: scale(0);
                transition-property: transform;
                transition-duration: var(--t-tc--billboard--transform--transition--duration);
                transition-timing-function: ease-in-out;
            }

            &:hover::after {
                transform: scale(var(--t-tc--billboard__after--transform--scale));
            }
        }
    }

}

/*
    COMPONENTS/Tables: Articles as Tables (Override/complement)
*/

@media all and (min-width:751px) {
    .grid__item>.article--table:not(:last-of-type) {
        padding-block-end: var(--t-gs--space--xxl);
    }

    .grid__item>.article--table:not(:first-of-type) {
        padding-block-start: var(--t-gs--space--xxl);
    }
}

/*
    COMPONENTS/Cards: Articles as cards (Override/complement)
*/

:root {
    --t-tc--card__banner--height: calc(var(--t-gs--size--base) * 42);
}

.article--card {
    overflow: hidden;
}

.article--card .article__banner {
    block-size: var(--t-tc--card__banner--height);
    inline-size: 100%;
    overflow: hidden;
}

.article--card .article__banner__image {
    block-size: 100%;
    inline-size: 100%;
    object-fit: cover;
}

.article--card .article__banner__date {
    position: absolute;
    inset-block-start: calc(var(--t-tc--card__banner--height) + var(--t-tc--card--padding--outers) - var(--t-tc--date--height));
    inset-inline-start: var(--t-tc--card--padding--outers);
}

.article--card .button--secondary,
.article--card .button--tertiary,
.article--card .button--share {
    --t-tc--buttons--font--size: initial;
}

.article--card .article__footer {
    padding-block-start: calc(var(--t-tc--card--padding--inners));
    padding-block-end: calc(var(--t-tc--card--padding--inners));
}

.article--card .article__footer * {
    white-space: nowrap;
}

.article--card .article__footer *:first-child {
    text-overflow: ellipsis;
    overflow: hidden;
}

.article--card .article__footer > * + * {
    margin-inline-start: var(--t-tc--card--padding--outers);
}

.article--card--event {
    position: relative;
}

.article--card--event .article__banner {
    --t-tc--card__banner--height: calc(var(--t-gs--size--base) * 35);
}

.article--card--event .article__banner + .article__header .article__header__text {
    padding-top: calc(2 * var(--t-tc--card--padding--outers));
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    html[data-animations="default"] {
        .article--card {
            --t-tc--card--color--shadow: rgba(0,0,0,0.10);
            --t-tc--card--border--transition--duration: 0.3s;
            --t-tc--card--border--radius--transition--duration: 0.3s;
            --t-tc--card--box--shadow--transition--duration: 0.3s;
            --t-tc--card__banner--transform--scale: 1.2;
            --t-tc--card__banner--transform--transition--duration: 0.3s;

            transition-property: border, border-radius, box-shadow;
            transition-duration: var(--t-tc--card--border--transition--duration), var(--t-tc--card--border--radius--transition--duration), var(--t-tc--card--box--shadow--transition--duration);
            transition-timing-function: ease-in-out, ease-in-out, ease-in-out;

            &:hover {
                border-color: var(--t-tc--card--color--shadow);
                box-shadow: 0 .4rem .8rem .2rem var(--t-tc--card--color--shadow);
            }

            .article__banner:has(.pill) {
                transition-property: border-radius;
                transition-duration: var(--t-tc--card--border--radius--transition--duration);
                transition-timing-function: ease-in-out;
            }

            &:hover .article__banner:has(.pill) {
                border-start-start-radius: calc(var(--t-tc--card--border--radius) + var(--t-tc--card--border--width));
            }

            .article__banner__image {
                transition-property: transform;
                transition-duration: var(--t-tc--card__banner--transform--transition--duration);
                transition-timing-function: ease-in-out;
            }

            &:hover {
                .article__banner__image {
                    transform: scale(var(--t-tc--card__banner--transform--scale));
                }
            }
        }
    }

}

/*
    COMPONENTS: Signature (New)
*/

.article--signature {
    inline-size: auto;
    border-start-start-radius: 50% 50%;
    margin-inline: var(--t-gs--space--s);
    margin-block: var(--t-gs--space--s2);
    box-shadow: 0 .4rem .8rem .2rem rgba(0,0,0,0.10);
    padding-inline: var(--t-gs--space--l);
    padding-block: var(--t-gs--space--l);
}

.article--signature .article__header {
    --t-tc--thumbnail--width: calc(var(--t-gs--size--base) * 32);
    --t-tc--thumbnail--height: calc(var(--t-gs--size--base) * 32);
    display: flex;
    flex-direction: column;
}

.article--signature .article__header__text__title__phrase {
    padding-block-end: var(--t-gs--space--s);
    display: block;
}

.article--signature .article__header__image {
     align-self: flex-end;
}

.article--signature .article__header__text {
     align-self: flex-start;
     margin-block-start: var(--t-gs--space--l);
}

.article--signature .article__content__footer {
    display: inline-block;
    block-size: calc(var(--t-gs--size--base) * 7);
    margin-block-start: var(--t-gs--space--m2);
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .article--signature {
        box-shadow: unset;
    }

    .article--signature {
        padding: var(--t-gs--space--0);
    }

    .article--signature .article__header {
        flex-direction: row;
        column-gap: var(--t-gs--space--s2);
    }
    .article--signature .article__header__image {
        --t-tc--thumbnail--width: calc(var(--t-gs--size--base) * 24);
        --t-tc--thumbnail--height: calc(var(--t-gs--size--base) * 24);
    }
}

/*
    COMPONENTS/Lists: Skills (New)
*/

.list--pills .list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--t-gs--space--xs);
}

.list--skills .list__item,
.list--pills .list .list__item {
    display: inline-flex;
}

/*
    COMPONENTS/Lists: Skills (Within WIDGETS/Details)
*/

.article--details .article__content__view__field__value .list--pills .list {
    margin-inline-start: var(--t-gs--space--0);
    padding-inline-start: var(--t-gs--space--0);
}

.article--details .article__content__view__field__value .list--pills .list li + li {
    margin-block-start: var(--t-gs--space--0);
}

/*
    COMPONENTS/Lists: Skills (Within WIDGETS/Skills)
*/

.skills .list--skills:not(.list--skills--active) {
    display: none;
}

.skills .list--skills .list__item {
    margin-block-end: var(--t-gs--space--s);
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .skills .list--skills::-webkit-scrollbar {
        display: none;
    }

}

/*
    COMPONENTS/Navigation: Steps bar (Override/complement)
*/

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .list--steps .list__item__text__subtitle {
        margin-block-end: -.6rem;
        inline-size: calc(var(--t-gs--size--base) * 4);
        block-size: calc(var(--t-gs--size--base) * 4);
        text-indent: -999.9rem;
        overflow: hidden;
    }

}

/*
    COMPONENTS/Navigation: Tabs (Inverting clickable colors - commented and ready to use)
*/

/*
.tabs__list__item:not(.tabs__list__item--active),
.tabs__list__item:not(.tabs__list__item--active):link,
.tabs__list__item:not(.tabs__list__item--active):visited {
    color: inherit;
}

.tabs__list__item:not(.tabs__list__item--active):hover,
.tabs__list__item:not(.tabs__list__item--active):focus,
.tabs__list__item:not(.tabs__list__item--active):active {
    color: var(--t-gs--color--text--link);
}

.tabs__list__item--active,
.tabs__list__item--active:link,
.tabs__list__item--active:visited,
.tabs__list__item--active:hover,
.tabs__list__item--active:focus,
.tabs__list__item--active:active {
    color: var(--t-gs--color--text--link);
}

+TBD+
*/

/*
    COMPONENTS/Navigation: Tabs: Skills (Override/complement)
*/

.tabs--skills .tabs__list__item {
    padding-block: 1rem 0.7rem;
    padding-inline: 1rem;
}

.tabs--skills + * {
    margin-block-start: var(--t-gs--space--l);
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .tabs--skills .tabs__list {
        display: flex;
        position: unset;
        border-block-start: var(--t-gs--border--width--0);
        border-inline-start: var(--t-gs--border--width--0);
        border-inline-end: var(--t-gs--border--width--0);
    }

    .tabs--skills .tabs__list {
        inline-size: 100%;
    }

    .tabs--skills .tabs__list__item {
        float: inline-start;
        margin-block-end: -.1rem;
        border-block-end-width: .3rem;
        border-block-end-style: solid;
        padding-block: 1rem 0.7rem;
        padding-inline: 2rem;
        font-weight: var(--t-gs--font--weight--bold);
        width: 50%;
        text-transform: unset;
        text-align: center;
    }

    .tabs--skills .tabs__list__item:not(.tabs__list__item--active) {
        border-block-end-color: var(--t-gs--color--border--transparent);
    }

    .tabs--skills .tabs__list__item--active {
        border-block-end-color: var(--t-gs--color--border--brand);
    }

}

/*
    COMPONENTS: Expandable
*/

.js-expandable-items {
    display: flex;
    flex-wrap: wrap;
}

.js-expandable-items__item.hidden {
    display: none;
}

.js-expandable-items__item {
    display: flex;
}

.js-expandable-items__item .separator {
    margin-inline-start: var(--t-gs--space--s);
    margin-inline-end: var(--t-gs--space--s);
}

.js-expandable-items__toggle {
    border: none;
    padding: var(--t-gs--space--0);
    background: none;
    font-size: inherit;
    cursor: pointer;
    text-decoration: none;
}

/*
    WIDGETS/Attachment upload (New)
*/

.article--attachments-upload {
    border-radius: var(--t-tc--boxes--border--radius);
    border-width: var(--t-gs--border--width--s);
    border-style: dashed;
    border-color: var(--t-tc--boxes--border--color);
    background-color: var(--t-tc--boxes--background--color);
    padding-block: var(--t-tc--boxes--padding--outers);
    padding-inline: var(--t-tc--boxes--padding--outers);
}

.article--attachments-upload .article__header {
    margin-block-end: var(--t-tc--boxes--padding--outers);
    border-block-end-width: var(--t-gs--border--width--s);
    border-block-end-style: solid;
    border-block-end-color: var(--t-gs--color--border--default);
    padding-block-end: var(--t-tc--boxes--padding--outers);
}

.article--attachments-upload .article__header [data-tc-icon] {
    vertical-align: middle;
}

/*
    WIDGETS/Registered: Article (Override/complement)
*/

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .article--registered {
        margin: var(--t-gs--space--0);
        background-color: unset;
        padding: var(--t-gs--space--0);
    }

}

/*
    WIDGETS/Search: Visible (Override/complement)
*/

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .section[search-type="visible"] .section__header__text {
        display: flex;
        margin-block-end: var(--t-gs--space--l);
    }
}

/*
    MODULES/Banner
*/

.body--banner-campus .banner--main{
    background-position: center 40%;
    position: relative;
}

/* DESKTOP - GRADIENT LAYER */

.banner--main{
    position: relative;
}

.banner--main::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .banner--main::after{
        background: linear-gradient(90deg, rgba(0,0,0,0.42) 40%, transparent 80%);
    }
}

@media all and (max-width:1024px) {

    .body--banner-campus .banner--main{
        background-position: center right;
    }

    /* MOBILE - TRANSLUCENT BLACK LAYER */

    .banner--main::after{
        background: rgba(0,0,0,0.42);
    }
}

/*
    MODULES/Banner: Home (New)
*/

.banner--main--carousel {
    background-image: none;
    --t-tc--banner--height: 38rem;
}

@media (max-width: 768px) {
    .body--search-jobs .banner--main--carousel {
        --t-tc--banner--height: 20rem;
    }
}

@media (min-width: 1800px) {
    .banner--main--carousel {
        --t-tc--banner--height: 48rem;
    }
}

.banner--main--home .banner__wrapper {
    position: relative;
    flex-direction: column;
    align-content: center;
    justify-content: center;
}

.banner--main--home .banner__wrapper > * {
    inline-size: 100%;
}

.banner--main--home .banner__form {
    margin-block-start: var(--t-gs--space--l);
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .banner--main--home {
        block-size: var(--t-tc--banner--height);
    }

}

/*
    MODULES/Banner: Secondary (New)
*/

.banner--secondary {
    --t-tc--banner--background--color: var(--custom--deep-blue);
}

.banner--secondary .banner__wrapper {
    block-size: auto;
    justify-content: center;
}

.banner--secondary.banner--secondary--bottom .banner__wrapper {
    justify-content: flex-start;
    padding-inline-start: 8rem;
    padding-inline-end: 8rem;
}

.banner--secondary--bottom {
    margin-block: var(--t-gs--space--xxl);
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .banner--secondary .banner__wrapper {
        padding-block-start: var(--t-gs--space--xxxl);
        padding-block-end: var(--t-gs--space--xxxl);
    }

    .banner--secondary--top + * {
        margin-block-start: var(--t-gs--space--xl);
    }

    .banner--secondary .banner__text__title * + * {
        margin-inline-start: var(--t-gs--space--m);
    }
}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .banner--secondary .banner__text__title * + * {
        margin-inline-start: var(--t-gs--space--m);
    }

    .banner--secondary--bottom {
        --t-tc--banner--background--color: var(--t-gs--color--background--transparent);
    }

    .banner--secondary--bottom .banner__wrapper {
        --t-tc--banner--background--color: var(--t-gs--color--surface--tertiary);
        background-image: var(--t-tc--banner--background--bottom--image);
        background-size: cover;
        background-position: center center;
        background-color: var(--t-tc--banner--background--color);
        border-radius: var(--t-gs--border--radius--s);
        height: 20rem;
    }
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .banner--secondary .banner__wrapper {
        padding-block-start: var(--t-gs--space--xl);
    }

    .banner--secondary .banner__text__title {
        text-align: center;
    }

    .banner--secondary .banner__text--inline .banner__text__title {
        display: block;
        margin-block-end: var(--t-gs--space--l);
    }

    .banner--secondary--top + * {
        margin-block-start: var(--t-gs--space--s2);
    }

}

/* Media query to target only tablet */
@media all and (min-width:751px) and (max-width:1024px) {
    .banner--secondary .banner__text__title .button + .banner__text__title__conjunction,
    .banner--secondary .banner__text__title .banner__text__title__conjunction + .button {
        margin-inline-start: var(--t-gs--space--m);
    }

    .banner--secondary .banner__wrapper {
        padding-block-end: var(--t-gs--space--xl);
    }

}

.banner__text__title__conjunction {
    color: var(--t-gs--swatch--neutral--100);
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .banner--secondary .banner__wrapper {
        padding-block-end: var(--t-gs--space--xxxl);
    }

    .banner--secondary .banner__text__title .button {
        inline-size: 100%;
    }

    .banner--secondary .banner__text__title .button:nth-of-type(2) {
        margin-block-start: var(--t-gs--space--l);
    }

}

/*
    MODULES/Bottom banner
*/

.body--students .section--content-page:has(.bottom-banner) {
    position: relative;
}

/*
    MODULES/Section
*/
.section--w--full{
    padding-block-start: var(--t-gs--space--xxxl);
    padding-block-end: var(--t-gs--space--xl);
}

/*
    PAGETYPES/Search jobs: Cards: Result (Override/complement)
*/

.section--search-jobs .article--result {
    --t-tc--result--border--radius: var(--t-gs--border--radius--0);
    --t-tc--result--padding--outers--h: var(--t-gs--space--0);
}

.section--search-jobs .article--result + .article--result {
    margin-block-start: var(--t-gs--space--0);
}

.section--search-jobs .article--result + .article--result:before {
    content: '';
    position: absolute;
    inset-block-start: 0;
    inset-inline-end: 0;
    inset-inline-start: 0;
    border-block-start-width: var(--t-gs--border--width--s);
    border-block-start-style: solid;
    border-block-start-color: var(--t-gs--color--border--default);
}

/*
    PAGETYPES/Search jobs: Search Form
*/

.body--search-jobs .tc_formLabel:has(>.screenReaderVisibility:only-child){
    padding-block-end: var(--t-tc--fieldSpec--padding--inners);
}

/*
    PAGETYPES/Search jobs: Culture Section
*/

.image--container .grid__item--main{
    display: flex;
    justify-content: center;
    align-content: center;
}

/*
    PAGETYPES/Search blogs and Search events: Cards: Result (Override/complement)
*/
@media all and (min-width:750px) {
    .section--search-cards {
        .results__panel>* {
            flex-basis: calc(50% - var(--t-tc--grid--columns--gap));
            max-inline-size: calc(50% - var(--t-tc--grid--columns--gap));
        }
        .article--card .article__header {
            flex-grow:1;
        }
        .article--card .article__content {
            flex-grow:unset;
        }
    }
}

@media all and (min-width:750px) {
    .section--search-cards {
        .article--card .article__header__text>*{
            overflow: auto;
            white-space: unset;
            text-overflow: unset;
        }
    }
}

/* PAGETYPES: Open positions: Results without toggle (Override/complement)
   -------------------------------------------------------------------------- */

/* Media query to target only desktop */
@media all and (min-width:750px) {
    .article--result.article--non-toggle .article__content {
        max-block-size: unset;
        visibility: visible;
        margin-block-start: var(--t-tc--result--padding--inners--v);
    }

    .article--non-toggle .article__header__actions {
        display: none;
    }
 }

/* PAGETYPES: Reg/App methods: Article
   -------------------------------------------------------------------------- */

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .article--registered {
        margin: var(--t-gs--space--0);
        background-color: unset;
        padding: var(--t-gs--space--0);
    }
}

/* PAGETYPES: Profile
   -------------------------------------------------------------------------- */

@media all and (min-width: 1025px){
    .body--profile .grid__item--maintwo{
        max-inline-size: 80%;
    }
}

/* PAGETYPES: job Detail
   -------------------------------------------------------------------------- */

.job--detail-title {
    font-size: 2.8rem;
    font-weight: var(--t-gs--font--weight--bold);
    padding-bottom: 2.5rem;
}

.body--job-detail .main__wrapper{
        max-inline-size: 100%;
        padding-inline-start:0;
        padding-inline-end: 0;
    }

@media all and (max-width: 1024px){
    .body--job-detail .main__wrapper .main-panel{
        padding-inline-start: var(--t-tc--grid--laterals);
        padding-inline-end: var(--t-tc--grid--laterals);
    }
}

/* UTILITIES: XXX
   -------------------------------------------------------------------------- */
.paragraph--inline {
    margin-inline-end: var(--t-gs--space--s);
}

.section__header__text__subtitle--margin-start {
    margin-block-start: var(--t-gs--space--l);
}

.paragraph--padding-end {
    padding-block-end: var(--t-gs--space--m2);
}

.section--discover-our-culture {
    margin-block-start: var(--t-gs--space--xxxl);
    margin-block-end: var(--t-gs--space--xxxl);
}

.banner--secondary--image {
    background-color: var(--t-gs--swatch--brand);
}

.table--default tbody tr td:last-child .action+.action--td {
     margin-inline-start: var(--t-gs--space--xs);
}

.action .action--td {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.action .action--td a {
    text-decoration: none;
    color: inherit;
    font-size: 2.00rem;
}

/* Media query to target only desktop */
@media (min-width: 1025px) {
    .grid-home {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
    .grid-home .grid__item.grid__item--aside-left {
        padding-inline-end: calc(var(--t-tc--grid--columns--gap) + var(--t-tc--grid--columns--1))
    }
    .subtabs__list__item + .subtabs__list__item {
        margin-inline-start: var(--t-gs--space--0);
    }
    .section--discover-our-culture__secondary .grid--2--sidebar .grid__item--aside-left{
        order: 1;
    }
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .section--discover-our-culture {
        text-align: center;
    }
}

/*
    PLUGINS/Glightbox
*/

.glightbox-container {
    padding-inline-end: var(--t-tc--grid--laterals);
    padding-inline-start: var(--t-tc--grid--laterals);
}

.glightbox-container .ginner-container,
.gslide-external {
    block-size: 50vh;
}

.goverlay,
.glightbox-mobile .goverlay {
    background: var(--t-gs--color--surface--overlay--dark);
    will-change: unset;
}

.glightbox-clean .gslide-media {
    box-shadow: none;
    border-radius: var(--t-gs--space--s);
    padding-block-start: var(--t-gs--space--xxl);
}

.glightbox-clean .gprev,
.glightbox-clean .gnext {
    display: none;
}

.body--popup .main__wrapper {
    padding-block-start: var(--t-gs--space--0);
    padding-block-end: var(--t-gs--space--0);
}

.body--popup, .glightbox-open {
    block-size: 100%;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .glightbox-container .ginner-container,
    .gslide-external {
        block-size: calc(100vh - var(--t-tc--grid--laterals)*2);
        max-block-size: 100vh;
    }
}

/*
    PAGETYPES/Students:
*/

.body--students .section--content-page:has([class*="--bottom-image"]) {
    padding: var(--t-gs--space--0);
}

.body--students [class*="--bottom-image"] .image__container img {
    width: 100%;
}

.section--content-page {
    margin: var(--t-gs--space--0);
    min-height: 9rem;
    padding: var(--t-gs--space--m2);
}

.section--content-page:nth-child(1) {
    background: var(--t-gs--color--background--default);
    .body--students & {
        background: var(--t-gs--color--background--default);
    }
}

.section--content-page:nth-child(2) {
    background: linear-gradient(hsla(214, 100%, 95%, 1), var(--t-gs--color--background--default) 50%);
    .body--students & {
        background: linear-gradient(var(--t-gs--color--background--default), hsla(214, 100%, 95%, 1));
    }
}

.section--content-page:nth-child(3) {
    background: hsla(var(--t-gs--swatch--brand--base--hue) var(--t-gs--swatch--brand--base--sat), 98%, 1);
    .body--students & {
        background: hsl(214, 100%, 95%);
    }
}

.section--content-page:nth-child(4) {
    background: var(--t-gs--color--background--default);
    .body--students & {
        background: var(--t-gs--color--background--default);
    }
}

.body--students .section--content-page:nth-child(5) {
    background: hsl(214, 100%, 95%);
}

.body--students .section--content-page:nth-child(6) {
    background: var(--t-gs--color--background--default);
}

.body--students .section--content-page:nth-child(7) {
    background:
        linear-gradient(hsla(250, 100%, 93%, 0.48), hsla(250, 100%, 93%, 0)),
        hsl(214, 100%, 95%);
}

.body--students .section--content-page:nth-child(8) {
    background: hsl(214, 100%, 95%);
}

.section--content-page * ~ article {
    margin-block-start: calc(var(--t-gs--space--base) * 16);
}

/*
    PAGETYPES/Static pages: Text content
*/

.section--content-page .section__content p ~ p,
.section--content-page .article__content p ~ p {
    margin-block-start: var(--t-gs--space--m2);
}

/*
    PAGETYPES/Static pages: Side images
*/

.section--content-page [class*="--with-image"] {
    --floating-image--width: calc(var(--t-gs--size--base) * 128);
    .body--students & {
        --floating-image--width: 47.5%;
    }

    display: flex;
    flex-direction: row;
    align-items: center;
}

.section--content-page [class*="--with-image"] .image__container {
    width: var(--floating-image--width);
    max-width: var(--floating-image--width);

    &.image--left {
        order: -1;
        margin-right: 5%;
    }

    &.image--right {
        order: 99;
        margin-left: 5%;
    }
}

.section--content-page [class*="--with-image"] .image__container ~ * {
    max-width: calc(95% - var(--floating-image--width));
}

@media all and (min-width: 751px) {
    [class*="--w--narrow--2"] {
        margin-inline-start: auto;
        margin-inline-end: auto;
        inline-size: 100%;
        max-inline-size: var(--t-tc--content--w--narrow--2)
    }
}

/*
    PAGETYPES/Blog detail
*/
.grid--blog-detail>.grid__item:not(:first-of-type):before {
    border-block-start-width: var(--t-gs--border--width--s);
    border-block-start-style: solid;
    border-block-start-color: var(--t-gs--color--border--default);
    inset-block: var(--t-gs--space--s2);
    position: relative;
    content: '';
    margin-block-end: var(--t-gs--space--xl);
}

/* CUSTOM STYLES */

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-SemiboldItalic.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-SemiboldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-BoldItalic.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-Bold.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-Semibold.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-Semibold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-Medium.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-MediumItalic.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-LightItalic.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-Light.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-Regular.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'St Jude Sans';
    src: url('../fonts/StJudeSansWeb-RegularItalic.woff2') format('woff2'),
        url('../fonts/StJudeSansWeb-RegularItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

.toggle--menu .toggle__icon,
.toggle--menu .toggle__icon:before,
.toggle--menu .toggle__icon:after {
    background-color: var(--t-gs--swatch--neutral--100);
}

.body--home.body--header-fixed-on-scroll .body__content,
.body--search-jobs.body--header-fixed-on-scroll .body__content {
    padding-block-start: 0;
}

.body--header-fixed-on-scroll .header {
    z-index: 9999;
    position: sticky;
    margin-top: -6rem;
}

.header {
    --t-tc--header--background--color: var(--custom--deep-blue);
    background-color: var(--t-tc--header--background--color);
    transition: background-color 0.3s ease;
}

.body--home .header,
.body--search-jobs .header {
    top: 4rem;
    margin-top: -7rem;
    /* background-image: linear-gradient(180deg, hsl(0 0% 0% / .5), transparent); */
}

@media (max-width: 1024px) {
    .html--menu--open .body--home .header,
    .html--menu--open .body--search-jobs .header {
        --t-tc--header--background--color: var(--custom--deep-blue);
        margin-top: -6rem;
    }

    html[menu-type=toggleable][menu-panelFrom="right"][menu-panelEffect="over"] .menu__panel{
        inset-block-start: 14rem;
    }

    .menu--toggleable .toggle--menu[aria-expanded=true]:before{
        top: 0;
    }

    .toggle--menu[aria-expanded=true] .toggle__icon{
        z-index: 20;
    }
}

.menu__link {
    font-size: var(--t-gs--font--size--02);
    font-weight: var(--t-gs--font--weight--regular);
}

.header__menu {
    text-transform: uppercase;
}

.body--header-fixed-on-scroll .header--scrolling {
    --t-tc--header--background--color: var(--custom--deep-blue);
    top: -0.1rem;
}

.header__logo {
    color: var(--t-gs--swatch--neutral--100);
    font-weight: var(--t-gs--font--weight--bold);
    font-size: 2rem;
    transition: color .3s ease-in-out;;
}

.header__logo:hover {
    color: var(--t-gs--swatch--brand);
}

.body--header-fixed-on-scroll .header--scrolling .header__logo:hover {
    color: var(--t-gs--swatch--neutral--100);
}

.banner__form {
    --t-tc--labels--font--color: var(--t-gs--swatch--neutral--100);
    font-weight: var(--t-gs--font--weight--regular);
}

.banner--main .banner__text__title::after {
    content: '';
    display: block;
    width: 15rem;
    height: 0.5rem;
    background-color: var(--t-gs--swatch--brand);
    margin-block-start: var(--t-gs--space--m);
}

.body--profile .banner--main .banner__text__title:nth-child(1):after {
    display: none;
}

.body--profile .banner--main .banner__text__title:nth-child(1) {
    margin-block-end: var(--t-gs--space--m);
}

.banner__text--boxed {
    background-color: unset;
    padding-block-start: 4rem;
    padding-block-end: 4rem;
    z-index: 1;

    --t-tc--title--font--color: var(--t-gs--swatch--neutral--100);
    --t-tc--title--font--size: 3.6rem;
    border: unset;
}

.banner__text--boxed .title--hero {
    --t-tc--title--font--size: 3.6rem;
}

@media (min-width: 768px) {
    .banner__text--boxed {
        max-width: 76%;
        min-width: 59.5rem;
        padding-inline-start: 4rem;
        padding-inline-end: 4rem;
    }
    .banner__text--boxed .banner__text__title {
        max-width: 100%;
        overflow: visible;

    }
}

.banner__text__title.banner__text__title__phrase {
    font-weight: var(--t-gs--font--weight--bold);
    font-size: var(--t-gs--font--size--06);
}

.banner--main--carousel {
    position: relative;
    overflow: hidden;
    background-color: var(--t-gs--swatch--neutral--000);
    margin-block-start: 11rem;
}

.banner--main--carousel .banner__text__title,
.banner--secondary .banner__text__title {
    color: var(--t-gs--swatch--neutral--100);
}

.banner--main--carousel .banner__wrapper {
    position: relative;
    z-index: 1;
}

.banner--main--carousel .banner--background {
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right center;
    opacity: 0;
    animation: fadeInOut 15s infinite;
}

.banner--main--carousel img:nth-child(1) {
    animation-delay: 0s;
}

.banner--main--carousel img:nth-child(2) {
    animation-delay: 5s;
}

.banner--main--carousel img:nth-child(3) {
    animation-delay: 10s;
}

@keyframes fadeInOut {
    0% { opacity: 0; }
    10% { opacity: 1; }
    30% { opacity: 1; }
    40% { opacity: 0; }
    100% { opacity: 0; }
}

@media all and (max-width: 750px) {
    .banner--main--carousel::after {
        background: rgba(0, 0, 0, 0.42);
    }
}

.footer {
    border-block-start-width: var(--t-gs--border--width--0);
    --t-tc--footer--background--color: var(--t-gs--swatch--neutral--000);
    --t-tc--footer--font--color: var(--t-gs--swatch--neutral--100);
}

.footer__links {
    --t-gs--color--text--link: var(--t-gs--swatch--neutral--100);
    font-size: var(--t-gs--font--size--03);
}

.swiper-controls .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    --t-tc--swiper__pagination__bullet--background--color: var(--t-gs--swatch--brand);
}

.swiper-controls {
    --t-tc--swiper__pagination__bullet--border--color: var(--t-gs--swatch--brand);
}

.swiper-controls .swiper-button-next,
.swiper-controls .swiper-button-prev {
    color: var(--t-gs--swatch--brand);
}

.swiper-controls .swiper-button-next:hover,
.swiper-controls .swiper-button-prev:hover {
    --t-tc--swiper__navigation--background--color: none;
}

.list-controls__text__legend span {
    font-weight: var(--t-gs--font--weight--bold);
}

.toggle[aria-expanded=false] .toggle__icon:before {
    color: var(--t-gs--swatch--neutral--000);
}

.results--listed .paragraph--inline {
    margin-inline-end: var(--t-gs--space--0);
}

.grid__item--filters .submitButton {
    width: 100%;
}

@media (width >= 1025px) {
    .grid--2--sidebar--filters>.grid__item--filters {
        flex: 0 0 28.4rem;
        max-inline-size: 28.4rem;
    }
    .grid--2--sidebar--filters>.grid__item--main {
        padding-inline-start: 10.8rem;

    }
}

.article--billboard {
    position: relative;
    overflow: hidden;
}

.article--billboard::before {
    content: "";
    position: absolute;
    inset-block-end: 0;
    inset-inline-start: 0;
    inline-size: 100%;
    block-size: 40%;
    background: linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
    pointer-events: none;
}

/*
    MARK: Overriding :focus-visible of checkboxes and radio buttons
*/

html:not(.tbd-focus) {
    --t-tc--focus--outline--color: currentColor;

    & .form input[type=radio]:focus-visible,
    & .form input[type=checkbox]:focus-visible,
    & .CheckBoxListFormField .tc_formField .CheckBoxListFormField_more:focus {
        --t-tc--fields--outline--width: var(--t-gs--border--width--m);
        --t-tc--fields--outline--color: var(--t-tc--fields--border--color);
        outline-offset: var(--t-gs--space--xxs);
    }
    & .tc_formDescription a:focus-visible {
        outline-width: var(--t-gs--border--width--m);
    }
}
#sj-header {
    z-index: 10000 !important;
}