/* ==========================================================================
    LAYOUTS
    -------------------------------------------------------------------------
    Grid
      : Sidebars (Override/complement)
    Section
      : Registered (Override/complement)
      : Tabs in header (Override/complement)
      : Static pages (Override/complement)

    ELEMENTS
    -------------------------------------------------------------------------
    Buttons
      : Main
        : Primary (Override/complement)
    Indicators
      : Date (New)
      : Pills (New)
        : Good (New)
        : Great (New)
        : Skills (New)
        : Strong (New)

    COMPONENTS
    -------------------------------------------------------------------------
    Billboards
      : Articles as billboards (New)
    Tables
      : Articles as tables(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)
    Search
      : Visible (Override/complement)

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

    PAGETYPES
    -------------------------------------------------------------------------
    Home
    Search jobs
      : Cards
        : Result (Override/complement)
    Static pages
      : Side images

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

    PLUGINS
    -------------------------------------------------------------------------
    XXX
========================================================================== */

/*
    CUSTOM FONTS
*/

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-Thin.woff2') format('woff2'),
         url('../fonts/SlalomSans-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-ThinItalic.woff2') format('woff2'),
         url('../fonts/SlalomSans-ThinItalic.woff') format('woff');
    font-weight: 100;
    font-style: italic;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-Light.woff2') format('woff2'),
         url('../fonts/SlalomSans-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-LightItalic.woff2') format('woff2'),
         url('../fonts/SlalomSans-LightItalic.woff') format('woff');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-Regular.woff2') format('woff2'),
         url('../fonts/SlalomSans-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-Italic.woff2') format('woff2'),
         url('../fonts/SlalomSans-Italic.woff') format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-Bold.woff2') format('woff2'),
         url('../fonts/SlalomSans-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-BoldItalic.woff2') format('woff2'),
         url('../fonts/SlalomSans-BoldItalic.woff') format('woff');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-Black.woff2') format('woff2'),
         url('../fonts/SlalomSans-Black.woff') format('woff');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Slalom Sans';
    src: url('../fonts/SlalomSans-BlackItalic.woff2') format('woff2'),
         url('../fonts/SlalomSans-BlackItalic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
}

/*
    LAYOUTS/Grid: Sidebars (Override/complement)
*/

/* Media query to target only desktop */
@media all and (min-width: 1025px) {
    .grid--profile.grid--2--sidebar--subtabs {
        column-gap: var(--t-gs--space--0);
    }

    .grid--profile > .grid__item--subtabs {
        padding-inline-end: var(--t-tc--grid--columns--1);
    }
}

/*
    LAYOUTS/Section: Registered
*/

/* Media query to target only desktop */
@media all and (min-width: 1025px) {
    .section__content--registered {
        margin-inline-start: auto;
        margin-inline-end: auto;
        inline-size: 100%;
        max-inline-size: calc(var(--t-tc--content--w--full) - var(--t-tc--grid--columns--1));
    }
}

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

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

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .aside .article--share {
        position: fixed;
        inset-block-end: 0;
        z-index: 5;
        padding-block: var(--t-gs--space--m);

        & .article__header {
            border: var(--t-gs--border--width--0);
            clip: rect(0 0 0 0);
            -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
            block-size: .1rem;
            margin-block: -.1rem;
            margin-inline: -.1rem;
            overflow: hidden;
            padding-block: var(--t-gs--space--0);
            padding-inline: var(--t-gs--space--0);
            position: absolute;
            inline-size: .1rem;
            white-space: nowrap; /* For long content, line feeds are not interpreted as spaces and small width causes content to wrap 1 word per line: https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe */
        }

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

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .aside:has(.article--share) .article--actions {
        padding-block-end: calc(var(--t-tc--buttons--height) + (var(--t-gs--space--m) * 2));
    }

    .aside .article--share {
        inset-inline-start: 0;
        inset-inline-end: 0;
        inline-size: 100%;
        padding-inline: var(--t-tc--grid--laterals);
    }
}

/* Media query to target only tablet */
@media all and (min-width:751px) and (max-width:1024px) {
    .aside:has(.article--share) .article--actions {
        & .article__content {
            inline-size: calc(50% - var(--t-tc--grid--columns--gap) / 2);

            & .button-bar--cols-1 {
                --t-tc--button-bar__buttons--width: 100%;
            }
        }
    }

    .aside .article--share {
        inset-inline-end: 0;
        inline-size: calc(50% - var(--t-tc--grid--columns--gap) / 2);
        padding-inline-end: var(--t-tc--grid--laterals);

        .list--share {
            justify-content: flex-end;
        }
    }
}

.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-tc--pill--text--color: var(--t-gs--swatch--neutral--100);
    --t-tc--pill--border--color: var(--t-gs--swatch--neutral--000);
    --t-tc--pill--background--color: var(--t-gs--swatch--link);
}

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

/*
    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 {
    --t-tc--pill--border--color: var(--t-gs--color--border--brand);
    --t-tc--pill--text--color: var(--t-gs--swatch--neutral--100);

    border-width: var(--t-gs--border--width--s);
    border-style: solid;
    border-color: var(--t-tc--pill--border--color);
}

.pill--skills-b {
    --t-tc--pill--border--color: var(--t-gs--color--border--brand);
    --t-tc--pill--text--color: var(--t-gs--swatch--neutral--100);

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

/*
    ELEMENTS/Indicators: Pills: Matching
*/

.pill.pill--matching {
    border-radius: 0;
    padding-block: 1rem;
    padding-inline: var(--t-gs--space--m);
    color: var(--t-gs--swatch--neutral--016);
}

/*
    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--l);
    --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--color--text--on--fill--link--contrast);
    --t-tc--billboard__content--height--max: calc(var(--t-gs--size--base) * 50);
    --t-tc--billboard__after--background--color: var(--t-gs--color--fill--link--contrast);
    --t-tc--billboard__after--opacity: 0.7;
    --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--100);

                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--color--text--on--fill--link--contrast);
            }

            .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: 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 (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);
}

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

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

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

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

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

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

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .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)
*/

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .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: var(--t-gs--space--s) var(--t-gs--space--xs);
        padding-inline: var(--t-gs--space--m2);
        font-weight: var(--t-gs--font--weight--bold);
    }

    .tabs--skills .tabs__placeholder {
        display: none;
    }

    .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/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: Home (New)
*/

.banner--main--home {
    background-image: var(--t-tc--home__banner--background--image);

    /* Media query to target only desktop */
    @media all and (min-width: 1025px) {
        & {
            --t-tc--banner--height: calc(var(--t-gs--size--base) * 67.5);
        }

    }
}

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

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

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

.banner--recommendations {
    --t-tc--banner--background--color: var(--custom--PrimaryDark);

    .banner__wrapper {
        justify-content: center;
    }

    .banner__text {
        display: flex;
        align-items: center;
        column-gap: var(--t-gs--space--l);
        row-gap: var(--t-gs--space--m);
    }

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

    /* Media query to target mobile and tablet */
    @media all and (max-width: 1024px) {
        .banner__text {
            flex-direction: column;
            text-align: center;
            inline-size: 100%;
        }

        .banner__text__button {
            inline-size: 100%;
        }

    }

    /* Media query to target only desktop */
    @media all and (min-width: 1025px) {
        & {
            --t-tc--banner--height: calc(var(--t-gs--size--base) * 37.5);
        }

    }
}

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

.banner--sure {
    --t-tc--banner--background--color: var(--custom--PrimaryDark);

    .banner__wrapper {
        justify-content: center;
    }

    .banner__text {
        align-items: center;
        row-gap: var(--t-gs--space--m);
    }

    .button-bar__wrap {
        align-items: center;
    }

    .banner__text__title .title,
    .banner__text__button .title {
        color: var(--t-gs--swatch--neutral--100);
    }

    /* Media query to target mobile and tablet */
    @media all and (max-width: 1024px) {
        & {
            --t-tc--accross--width: 100vw;

            inline-size: var(--t-tc--accross--width);
            position: relative;
            inset-inline-start: 50%;
            inset-inline-end: 50%;
            margin-inline-start: calc(-1 * (var(--t-tc--accross--width) / 2));
            margin-inline-end: calc(-1 * (var(--t-tc--accross--width) / 2));
        }

        .banner__text {
            flex-direction: column;
            text-align: center;
            inline-size: 100%;
        }

        .banner__text__button {
            inline-size: 100%;
        }

    }

    /* Media query to target only desktop */
    @media all and (min-width: 1025px) {
        & {
            --t-tc--banner--height: calc(var(--t-gs--size--base) * 31);

            border-radius: var(--t-gs--border--radius--l);
        }

        .banner__text__title .title {
            font-size: var(--t-gs--font--size--13);
        }

    }
}

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

.banner--learn {
    background-image: none;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-color: var(--custom--SlalomBlue);
    min-block-size: 20.6rem;

    .banner__wrapper {
        flex-direction: column;
        justify-content: center;
        text-align: center;
        gap: var(--t-gs--space--m);
    }

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

    /* Media query to target mobile and tablet */
    @media all and (max-width: 1024px) {
        .banner__button {
            inline-size: 100%;
        }

    }

    /* Media query to target only desktop */
    @media all and (min-width: 1025px) {
        .banner__wrapper {
            --t-tc--banner--height: calc(var(--t-gs--size--base) * 48);

            max-inline-size:var(--t-tc--content--w--narrow);
        }

        .banner__text__title .title {
            font-size: var(--t-gs--font--size--13);
        }

    }
}

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

.banner--join {
    --t-tc--banner--background--color: var(--t-gs--color--surface--tertiary);

    .banner__wrapper {
        justify-content: center;
    }

    .banner__text {
        align-items: center;
        row-gap: var(--t-gs--space--m);
    }

    .button-bar__wrap {
        align-items: center;
    }

    /* Media query to target mobile and tablet */
    @media all and (max-width: 1024px) {
        & {
            --t-tc--accross--width: 100vw;

            inline-size: var(--t-tc--accross--width);
            position: relative;
            inset-inline-start: 50%;
            inset-inline-end: 50%;
            margin-inline-start: calc(-1 * (var(--t-tc--accross--width) / 2));
            margin-inline-end: calc(-1 * (var(--t-tc--accross--width) / 2));
        }

        .banner__text {
            flex-direction: column;
            text-align: center;
            inline-size: 100%;
        }

        .banner__text__button {
            inline-size: 100%;
        }

    }

    /* Media query to target only desktop */
    @media all and (min-width: 1025px) {
        & {
            --t-tc--banner--height: calc(var(--t-gs--size--base) * 31);

            border-radius: var(--t-gs--border--radius--s);
        }

    }
}

/*
    MODULES/Bottom banner
*/

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

/*
    PAGETYPES/Home
*/

*:has( > *) + templatebuilder-page-dropzone > .section.section--explore-areas {
    margin-block-start: var(--t-gs--space--0);
}

.section--explore-areas {
    background-color: var(--t-gs--color--background--secondary);
}

*:has( > *) + templatebuilder-page-dropzone > .section.section--discover-our-culture {
    margin-block-start: calc(2 * var(--t-gs--space--l));
}

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

/* Media query to target only tablet */
@media all and (min-width:751px) and (max-width:1024px) {
    .section--discover-our-culture .grid--2 > .grid__item {
        flex: 0 0 100%;
        max-inline-size: 100%;
    }
}

/* Media query to target only desktop */
@media (min-width: 1025px) {
    .section--discover-our-culture .grid__item:first-of-type {
        padding-inline-end: calc(var(--t-tc--grid--columns--gap) + var(--t-tc--grid--columns--1));
    }
}

/*
    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);
}

/*
    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;
        }

    }
}

/* 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);
}

.banner--learn {
    background-image: none;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.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) {
    .subtabs__list__item + .subtabs__list__item {
        margin-inline-start: var(--t-gs--space--0);
    }
}

/* 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 {
    inline-size: 100%;
}

.section--content-page {
    margin: var(--t-gs--space--0);
    min-block-size: 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 {
    inline-size: var(--floating-image--width);
    max-inline-size: var(--floating-image--width);

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

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

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

/*
    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);
}

/*
    ELEMENTS/Fields
*/

.form input[type=color],
.form input[type=date],
.form input[type=datetime-local],
.form input[type=email],
.form input[type=file],
.form input[type=month],
.form input[type=number],
.form input[type=password],
.form input[type=range]:not(.progress-bar__selector,.schema_input_rangeslider_Slider_slider),
.form input[type=search]:not([class*=select2]):not(.AdvancedSelectInputElement),
.form input[type=tel], .form input[type=text]:not([class*=select2]):not(.LiveSearchInput),
.form input[type=time],
.form input[type=url],
.form input[type=week],
.form select,
.form textarea,
.dropdown__placeholder,
textarea.TIN_input_TextArea,
.LiveSearch,
.AdvancedSelect .AdvancedSelectInput,
.source_PLUG_EditorAdvancedSelect,
.select2-container--default .select2-selection--multiple,
.select2-container--default .select2-selection--single {
    border-block-end: solid .2rem var(--t-gs--swatch--link);
}

.select2-container--default .select2-selection--multiple .select2-selection__placeholder, .select2-container--default .select2-selection--single .select2-selection__placeholder,
.select2-container--default .select2-search--inline .select2-search__field {
    font-family: 'Slalom Sans';
}

.form input[type=color]:focus-visible,
.form input[type=date]:focus-visible,
.form input[type=datetime-local]:focus-visible,
.form input[type=email]:focus-visible,
.form input[type=file]:focus-visible,
.form input[type=month]:focus-visible,
.form input[type=number]:focus-visible,
.form input[type=password]:focus-visible,
.form input[type=range]:not(.progress-bar__selector,.schema_input_rangeslider_Slider_slider):focus-visible,
.form input[type=search]:not([class*=select2]):not(.AdvancedSelectInputElement):focus-visible,
.form input[type=tel]:focus-visible,
.form input[type=text]:not([class*=select2]):not(.LiveSearchInput):focus-visible,
.form input[type=time]:focus-visible,
.form input[type=url]:focus-visible,
.form input[type=week]:focus-visible,
.form select:focus-visible,
.form textarea:focus-visible,
.dropdown__placeholder:focus-visible,
textarea.TIN_input_TextArea:focus-visible,
.LiveSearch:focus-visible,
.AdvancedSelect .AdvancedSelectInput:focus-visible,
.source_PLUG_EditorAdvancedSelect:focus-visible,
.select2-container:focus-visible,
.select2-container--default:focus-visible {
    outline: solid .2rem var(--t-gs--swatch--link);
    border-block-end: none;
    box-shadow: none;
}

.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default.select2-container--open .select2-selection--multiple,
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
    outline: solid .2rem var(--t-gs--swatch--link);
    border-block-end: solid 0.2rem transparent;
    box-shadow: none;
}

.select2-container--default .select2-dropdown {
    border-color: var(--t-gs--swatch--neutral--060);
}

.select2-container--default.select2-container--open .select2-dropdown--below {
    border-block-start: solid .1rem var(--t-gs--swatch--neutral--060);
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    border-color: var(--custom--SlalomBlue);
    border-radius: var(--t-gs--border--radius--s);
    background-color: transparent;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: var(--custom--SlalomBlue);
}

.FormCompletionRequest .FormCompletionRequestBlockContainer .hasErrors,
.FormCompletionRequest .FormCompletionRequestBlockContainer .uicore_advancedselect_BaseAdvancedSelect_HasErrors .AdvancedSelectInput,
.form--login .fieldSpec:has(.errorMessage),
.delegate-widget__fieldSpec:has(.errorMessage),
.form .fieldSpec.hasErrors:not(.formfieldSpec,
.datasetField,.MultipleDatasetEntryFormField,
.fieldSpec--in-dataset) input,
.form .fieldSpec.hasErrors:not(.formfieldSpec,.datasetField,.MultipleDatasetEntryFormField,.fieldSpec--in-dataset) select,
.form .fieldSpec.hasErrors:not(.formfieldSpec,.datasetField,.MultipleDatasetEntryFormField,.fieldSpec--in-dataset) textarea,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) input,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) select,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) textarea,
.form .fieldSpec--in-dataset.hasErrors input,
.form .fieldSpec--in-dataset.hasErrors select,
.form .fieldSpec--in-dataset.hasErrors textarea,
.form .datasetfieldSpec.hasErrors input,
.form .datasetfieldSpec.hasErrors select,
.form .datasetfieldSpec.hasErrors textarea {
       --t-tc--fields--border--color: transparent;
}

.form--has-errors .hasErrors input[type=color],
.form--has-errors .hasErrors input[type=date],
.form--has-errors .hasErrors input[type=datetime-local],
.form--has-errors .hasErrors input[type=email],
.form--has-errors .hasErrors input[type=file],
.form--has-errors .hasErrors input[type=month],
.form--has-errors .hasErrors input[type=number],
.form--has-errors .hasErrors input[type=password],
.form--has-errors .hasErrors input[type=range]:not(.progress-bar__selector,.schema_input_rangeslider_Slider_slider),
.form--has-errors .hasErrors input[type=search]:not([class*=select2]):not(.AdvancedSelectInputElement),
.form--has-errors .hasErrors input[type=tel], .form--has-errors .hasErrors input[type=text]:not([class*=select2]):not(.LiveSearchInput),
.form--has-errors .hasErrors input[type=time],
.form--has-errors .hasErrors input[type=url],
.form--has-errors .hasErrors input[type=week],
.form--has-errors .hasErrors select,
.form--has-errors .hasErrors textarea,
.form--has-errors .hasErrors .dropdown__placeholder,
.form--has-errors .hasErrors textarea.TIN_input_TextArea,
.form--has-errors .hasErrors .LiveSearch,
.form--has-errors .hasErrors .AdvancedSelect .AdvancedSelectInput,
.form--has-errors .hasErrors .source_PLUG_EditorAdvancedSelect,
.form--has-errors .hasErrors .select2-container--default .select2-selection--multiple,
.form--has-errors .hasErrors .select2-container--default .select2-selection--single,
.FormCompletionRequest .FormCompletionRequestBlockContainer .hasErrors,
.FormCompletionRequest .FormCompletionRequestBlockContainer .uicore_advancedselect_BaseAdvancedSelect_HasErrors .AdvancedSelectInput,
.delegate-widget__fieldSpec:has(.errorMessage),
.form .fieldSpec.hasErrors:not(.formfieldSpec,
.datasetField,.MultipleDatasetEntryFormField,
.fieldSpec--in-dataset) input,
.form .fieldSpec.hasErrors:not(.formfieldSpec,.datasetField,.MultipleDatasetEntryFormField,.fieldSpec--in-dataset) select,
.form .fieldSpec.hasErrors:not(.formfieldSpec,.datasetField,.MultipleDatasetEntryFormField,.fieldSpec--in-dataset) textarea,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) input,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) select,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) textarea,
.form .fieldSpec--in-dataset.hasErrors input,
.form .fieldSpec--in-dataset.hasErrors select,
.form .fieldSpec--in-dataset.hasErrors textarea,
.form .datasetfieldSpec.hasErrors input,
.form .datasetfieldSpec.hasErrors select,
.form .datasetfieldSpec.hasErrors textarea {
    border-block-end: solid .2rem var(--t-gs--color--border--error);
}

.form--has-errors .hasErrors input[type=color]:focus-visible,
.form--has-errors .hasErrors input[type=date]:focus-visible,
.form--has-errors .hasErrors input[type=datetime-local]:focus-visible,
.form--has-errors .hasErrors input[type=email]:focus-visible,
.form--has-errors .hasErrors input[type=file]:focus-visible,
.form--has-errors .hasErrors input[type=month]:focus-visible,
.form--has-errors .hasErrors input[type=number]:focus-visible,
.form--has-errors .hasErrors input[type=password]:focus-visible,
.form--has-errors .hasErrors input[type=range]:not(.progress-bar__selector,.schema_input_rangeslider_Slider_slider):focus-visible,
.form--has-errors .hasErrors input[type=search]:not([class*=select2]):not(.AdvancedSelectInputElement):focus-visible,
.form--has-errors .hasErrors input[type=tel]:focus-visible, .form--has-errors .hasErrors input[type=text]:not([class*=select2]):not(.LiveSearchInput):focus-visible,
.form--has-errors .hasErrors input[type=time]:focus-visible,
.form--has-errors .hasErrors input[type=url]:focus-visible,
.form--has-errors .hasErrors input[type=week]:focus-visible,
.form--has-errors .hasErrors select:focus-visible,
.form--has-errors .hasErrors textarea:focus-visible,
.form--has-errors .hasErrors .dropdown__placeholder:focus-visible,
.form--has-errors .hasErrors textarea.TIN_input_TextArea:focus-visible,
.form--has-errors .hasErrors .LiveSearch:focus-visible,
.form--has-errors .hasErrors .AdvancedSelect .AdvancedSelectInput:focus-visible,
.form--has-errors .hasErrors .source_PLUG_EditorAdvancedSelect:focus-visible,
.form--has-errors .hasErrors .select2-container--default .select2-selection--multiple:focus-visible,
.form--has-errors .hasErrors .select2-container--default .select2-selection--single:focus-visible,
.FormCompletionRequest .FormCompletionRequestBlockContainer .hasErrors:focus-visible,
.FormCompletionRequest .FormCompletionRequestBlockContainer .uicore_advancedselect_BaseAdvancedSelect_HasErrors .AdvancedSelectInput:focus-visible,
.delegate-widget__fieldSpec:has(.errorMessage):focus-visible,
.form .fieldSpec.hasErrors:not(.formfieldSpec:focus-visible,
.MultipleDatasetEntryFormField:focus-visible,
.fieldSpec--in-dataset) input:focus-visible,
.form .fieldSpec.hasErrors:not(.formfieldSpec,.datasetField,.MultipleDatasetEntryFormField,.fieldSpec--in-dataset) select:focus-visible,
.form .fieldSpec.hasErrors:not(.formfieldSpec,.datasetField,.MultipleDatasetEntryFormField,.fieldSpec--in-dataset) textarea:focus-visible,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) input:focus-visible,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) select:focus-visible,
.form .formfieldSpec.hasErrors:not(.MultipleDatasetEntryFormField) textarea:focus-visible,
.form .fieldSpec--in-dataset.hasErrors input:focus-visible,
.form .fieldSpec--in-dataset.hasErrors select:focus-visible,
.form .fieldSpec--in-dataset.hasErrors textarea:focus-visible,
.form .datasetfieldSpec.hasErrors input:focus-visible,
.form .datasetfieldSpec.hasErrors select:focus-visible,
.form .datasetfieldSpec.hasErrors textarea:focus-visible {
    outline: solid .2rem var(--t-gs--color--border--error);
    border-block-end: none;
    box-shadow: none;
}

.FormField .schema_field_MultipleDatasetEntryInput,
.MultipleDatasetEntryFormField .tc_formField div[id*=multipleDatasetEntry_],
.datasetField__row {
    background-color: var(--t-gs--swatch--neutral--095);
}

/*
    ELEMENTS/Buttons
*/

.button--primary,
.saveButton,
.article--alert .submitButton,
.nextButton,
.formNextButton,
.redirectUrlButton,
.gotoButton,
.ui-dialog-buttonset .ui-button:nth-of-type(1),
.TIN_input_button_Primary {

    &:focus {
        outline-width: 0;
        border: dashed .1rem var(--custom--DarkBlue);
    }

    &:focus-visible {
        background-color: var(--custom--DarkBlue);
    }
}

.button--secondary,
.submitButton,
.previousButton,
.formPreviousButton,
.partialSaveButton,
.homeButton,
.ui-dialog-buttonset .ui-button:nth-of-type(2) {

    border-width: var(--t-gs--border--width--m);

    &:focus-visible {
        border-color: var(--custom--DarkBlue);
    }
}

.button--tertiary,
.button--cancel,
.cancelButton,
.clearButton,
.TIN_display_Anchor,
.TIN_input_button_Cancel {

    border-width: var(--t-gs--border--width--m);

    &:focus-visible {
        border-color: var(--custom--DarkBlue);
    }
}

.methodButton--later,
.methodButton--file,
.methodButton--paste,
.methodButton--dropbox {
    border-width: var(--t-gs--border--width--m);
}

.methodButton--later:hover,
.methodButton--file:hover,
.methodButton--paste:hover,
.methodButton--dropbox:hover,
.methodButton--later:active,
.methodButton--file:active,
.methodButton--paste:active,
.methodButton--dropbox:active,
.methodButton--later:focus-visible,
.methodButton--file:focus-visible,
.methodButton--paste:focus-visible,
.methodButton--dropbox:focus-visible {
    border-color: var(--custom--DarkBlue);
}

.jobShareMethods {
    --a-jobShareMethods-button-border-radius: var(--t-gs--border--radius--0);
}

.list--steps:after {
    border-block-end-color: var(--t-gs--swatch--neutral--080);
}

@media (width >= 751px) {
    .list--steps .list__item__text__subtitle {
        border-width: var(--t-gs--border--width--0);
        background-color: var(--t-gs--swatch--neutral--080);
    }
}

/*
    ELEMENTS/Tables
*/

.table--default thead tr th:first-child, .tableField thead tr th:first-child,
.table--default tbody tr:last-child>:first-child, .tableField tbody tr:last-child>:first-child,
.table--default tbody tr>:first-child {
    border-inline-end-width: var(--t-gs--border--width--s);
    border-inline-end-style: solid;
    border-inline-end-color: var(--t-tc--table--border--color);
}

/*
    MODULES/Header
*/

.menu__item:hover .menu__link {
    text-decoration: underline;
    text-decoration-thickness: var(--t-gs--border--width--m);
    text-underline-offset: 0.4rem;
}

html.tbd-focus .menu--visible .menu__link--open,
html.tbd-focus .menu--visible .menu__link[aria-haspopup=true][aria-expanded=true],
.menu--visible .menu__item:hover .menu__link[aria-haspopup=true] {
    box-shadow: none;
    border-color: var(--t-gs--swatch--neutral--100);
    background-color: var(--t-gs--swatch--neutral--100);
}

.menu--visible .submenu__list {
    padding-block-start: 4rem;
    border-color: var(--t-gs--swatch--neutral--100);
    background-color: var(--t-gs--swatch--neutral--100);
    box-shadow: none;
    border-radius: 0;
}

.menu--visible .submenu__item+.submenu__item,
.menu--visible .portalLanguages__item+.portalLanguages__item {
    border-block-start-color: var(--t-gs--swatch--neutral--100);
}

.toggle--menu .toggle__icon,
.toggle--menu .toggle__icon:before,
.toggle--menu .toggle__icon:after {
    inline-size: calc(var(--t-gs--size--base) * 5);
}

.toggle--menu .toggle__icon:hover {
    background-color: var(--t-tc--toggle--font--color);
}

.toggle--menu[aria-expanded="false"] .toggle__icon:before {
    inset-block-start: -.6rem;
}

.toggle--menu[aria-expanded="false"] .toggle__icon:after {
    inset-block-start: .6rem;
}

.menu--toggleable .menu__panel {
    background-color: var(--custom--DarkBlue);
}

.menu--visible .menu__link--open, .menu--visible .menu__link[aria-haspopup="true"][aria-expanded="true"], .menu--visible .menu__item:hover .menu__link[aria-haspopup="true"] {
    .menu--visible .menu__item:has(&) {
        box-shadow: none;
    }
}

.menu--visible .menu__list--separator-left, .menu--visible .menu__item--separator-left {
    border-inline-start-width: var(--t-gs--border--width--m);
}

.menu--visible .menu__list--separator-left, .menu--visible .menu__item--separator-left {
    &:before {
        border-inline-start-width: var(--t-gs--border--width--m);
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    html[menu-type="toggleable"] {
        --t-tc--menu--width: 37.5rem;
    }
}

@media (max-width: 1024px) {
    .menu__item:hover .menu__link {
        text-decoration: none;
    }

    .menu__link {
        padding-block-end: 1rem;
    }

    .menu--toggleable .menu__item {
        border-block-end-color: var(--custom--SlalomBlue);
    }

    .menu__link:after {
        font-weight: 200;
        font-size: 4rem;
    }
}

/*
    MODULES/Banner
*/

.banner_bottom-image {
    background-image: url(../images/bannerBottom.webp);
    block-size: 0.6rem;
    background-size: cover;
}

.banner--main .title {
    color: var(--t-gs--swatch--neutral--100);
    font-size: 4.8rem;
}

.banner--main .tc_formLabel {
    color: var(--t-gs--swatch--neutral--100);
}

.banner__form .button-bar.ButtonBarField {
    inline-size: auto;
}

@media (min-width: 1600px) {
    html {
        font-size: 62.5%;
      }
}

@media all and (max-width:625px) {
    .banner--main--home {
        background-position: calc(50% + 1.5rem) center;
    }

    .banner_bottom-image {
        block-size: 0.5rem;
    }
}

@media all and (max-width:480px) {
    .banner_bottom-image {
        block-size: 0.4rem;
    }
}

@media all and (max-width:395px) {
    .banner_bottom-image {
        block-size: 0.3rem;
    }
}

@media all and (min-width:751px) {
    .banner--main .form--grid .fieldSpec:nth-child(1) {
        inline-size: 40rem;
    }
}

@media (min-width: 751px) and (max-width: 1024px) {
    .banner--main--home {
        min-block-size: 25.3rem;
    }

    .banner--main .title {
        font-size: var(--t-gs--font--size--13);
    }

    .banner_bottom-image {
        block-size: 0.3rem;
    }
}

@media all and (max-width:750px) {
    .banner--main .form--grid .button-bar {
        inline-size: auto;
    }

     .banner--main--home {
        min-block-size: 31rem;
    }

    .banner--main .title {
        font-size: var(--t-gs--font--size--11);
    }
}

/*
    MODULES/Footer - Footer Top
*/

.footer {
    border-block-start-width: var(--t-gs--border--width--0);
    font-size: var(--t-gs--font--size--04);
}

.footer_top {
    background-color: var(--custom--DarkBlue);
}

.footer_top .footer__wrapper {
    padding-block-start: var(--t-gs--space--xxxl);
    padding-block-end: var(--t-gs--space--l);
}

.footer_top .footer__content {
    flex-direction: column;
}

.footer_top .footer__content .section_columns {
    display: grid;
    grid-template-columns: auto repeat(3, 1fr);
    gap: 0 7rem;
    align-items: flex-start;
    margin-block-end: 4.8rem;
}

.footer__col .footer__col-title {
    margin-block-end: var(--t-gs--space--xl);
    text-transform: uppercase;
    line-height: 2rem;
    font-weight: var(--t-gs--font--weight--bold);
}

.footer .link {
    color: var(--t-gs--swatch--neutral--100);
    display: inline-block;
}

.footer .link:hover,
.footer .link:focus,
.footer .link:active,
.footer .link:focus-visible {
    color: var(--t-gs--swatch--neutral--100);
}

.linkNewsroom {
    margin-block-start: var(--t-gs--space--xl);
}

.footer__locations:not(:last-child) {
    margin-block-end: var(--t-gs--space--m);
    line-height: 2rem;
}

.footer__location .link {
    line-height: 100%;
}

.footer__social__item {
    max-inline-size: 21rem;
}

.footer__col.col-newsroom {
    min-inline-size: 37rem;
}

.footer__col.col-social {
    max-inline-size: 18rem;
}

.footer__socialItem:not(:last-child) {
    margin-block-end: var(--t-gs--space--m);
    line-height: 2rem;
}

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

.footer_top .footer__content .section_disclaimer__mail {
    padding-block-end: var(--t-gs--space--s2);
    margin-block-end: var(--t-gs--space--s2);
    border-block-end: solid .1rem var(--custom--SlalomBlue);
    margin-block-start: 0.6rem;
}

.section_disclaimer__textBottom {
    margin-block-start: 0.6rem;
}

@media (max-width: 1024px) {
    .footer_top .footer__wrapper {
        block-size: 98.2rem;
    }

    .footer_top .footer__content .section_columns {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 4rem 2rem;
    }

    .footer__logo {
        grid-column: 1 / 2;
        grid-row: 1;
    }

    .col-newsroom {
        grid-column: 1 / 2;
        grid-row: 2;
    }

    .col-locations {
        grid-column: 1 / 2;
        grid-row: 3;
    }

    .col-social {
        grid-column: 2 / 3;
        grid-row: 3;
        justify-self: center;
    }

    .footer__logo .logo.logo--footer {
        justify-content: flex-start;
    }

    .footer_top .footer__content {
        align-items: flex-start;
    }

    .footer__col.col-social {
        max-inline-size: none;
    }

    .footer__col.col-newsroom {
        min-inline-size: auto;
    }

    .footer_top .footer__content .section_disclaimer {
    margin-block-start: 0;
}
}

@media (max-width: 750px) {
    .footer_top .footer__wrapper {
        min-block-size: 108.2rem;
        block-size: auto;
    }

    .footer__logo {
        grid-column: 1 / 3;
    }

    .col-newsroom {
        grid-column: 1 / 3;
    }

    .col-locations {
        grid-column: 1 / 2;
    }
}

/*
    MODULES/Footer - Footer Bottom
*/

.footer_bottom {
    background-color: var(--custom--PrimaryDark);
}

.footer_bottom .footer__wrapper {
    padding-block: var(--t-gs--space--l);
    block-size: 9.2rem;
}

.footer_bottom .footer__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: var(--t-gs--font--size--03);
    font-weight: var(--t-gs--font--weight--regular);
    text-transform: uppercase;
}

.footer_bottom .footer__content .footer__row {
    inline-size: 100%;
}

.footer_bottom .footer__content .footer__row .footer__rights,
.footer_bottom .footer__content .footer__row .footer__links {
    display: inline-flex;
}

.footer_bottom .footer__content .footer__row .footer__rights,
.footer_bottom .footer__content .footer__row .footer__links__item:not(:last-child) {
    margin-inline-end: var(--t-gs--space--xxxl);
}

.footer_bottom .footer__rowText {
    color: var(--t-gs--swatch--link--070);
    margin-block-end: 1rem;
}

.footer__links__item.link {
    font-weight: var(--t-gs--font--weight--regular);
}

.section_disclaimer__mail .link,
.section_disclaimer__mailTop .link {
    font-weight: var(--t-gs--font--weight--regular);
    text-decoration: underline;
}

@media (max-width: 1024px) {
    .footer_bottom .footer__wrapper {
        block-size: 23rem;
    }

    .footer_bottom .footer__content .footer__row .footer__links {
        display: flex;
        flex-direction: column;
        justify-self: flex-start;
        align-items: flex-start;
    }

    .footer_bottom .footer__content .footer__row .footer__rights,
    .footer_bottom .footer__content .footer__row .footer__links__item:not(:last-child) {
        margin-inline-end: 0;
        margin-block-end: var(--t-gs--space--m);
    }
}

@media (max-width: 750px) {
    .footer_bottom .footer__wrapper {
        block-size: 23.6rem;
    }

    .footer_bottom .footer__content .footer__row .footer__rights,
    .footer_bottom .footer__content .footer__row .footer__links__item:not(:last-child) {
        margin-inline-end: 0;
        margin-block-end: var(--t-gs--space--s2);
    }

    .footer * {
        line-height: 2.2rem;
    }

    .footer__content>*+* {
        margin-block-start: 0;
    }
}

/*
    PAGETYPES/Home
*/

.swiper-controls {
    & .swiper-button-next, & .swiper-button-prev {
        color: var(--t-tc--swiper__navigation--border--color);
    }
}

.link:hover {
    color: var(--custom--DarkBlue);
}

.link:focus {
    outline-color: var(--custom--SlalomBlue);
    text-decoration: underline;
    color: var(--custom--DarkBlue);
}

.link:active {
    outline-width: var(--t-tc--focus--outline--width);
    outline-style: var(--t-tc--focus--outline--style);
    outline-offset: 0;
    outline-color: var(--custom--SlalomBlue);
    text-decoration: underline;
    color: var(--custom--DarkBlue);
}

.link:focus-visible {
    box-shadow: none;
     outline-width: var(--t-tc--focus--outline--width);
    outline-style: var(--t-tc--focus--outline--style);
    outline-offset: 0;
    outline-color: var(--custom--SlalomBlue);
    color: var(--custom--DarkBlue);
}

.article--card .article__header__text {
    & .link:hover,
    & .link:focus,
    & .link:active {
        text-decoration: underline;
    }
}

.article--billboard .article__header__text__title.tile {
    font-size: var(--t-gs--font--size--13);
}

:root {
    .jobShareMethods {
        --a-jobShareMethods-button-hover-border-color: transparent;
        --a-jobShareMethods-button-active-border-color: transparent;
        --a-jobShareMethods-button-focus-border-color: transparent;
        --a-jobShareMethods-button-focus-outline-color: var(--custom--SlalomBlue);
        --a-jobShareMethods-button-active-outline-color: var(--custom--SlalomBlue);
    }
}

@media all and (min-width:751px) {
    .section__header .section__header__text__title.title {
        font-size: var(--t-gs--font--size--13);
    }
}

/*
    PAGETYPES/Search Jobs
*/

.recordsFrom,
.recordsTo {
    font-weight: var(--t-gs--font--weight--bold);
}

.toggle__icon:hover {
    background-color: var(--t-gs--swatch--neutral--095);
}

.search--toggleable .search__panel {
    background-color: var(--t-gs--swatch--neutral--095);
}

.toggle--search[aria-expanded=true] {
    --t-tc--toggle--background--color: transparent;
}

@media (min-width: 751px) {
    .grid__item--filters .section__header .section__header__text__title.title {
        font-size: var(--t-gs--font--size--06);
    }

    .grid__item--filters .tc_formButton {
        inline-size: 100%;
    }

    .section--search-jobs .section__content__results .button--secondary {
        min-inline-size: 12rem;
    }

    .section--search-jobs .section__content__results .article__header__text__title.title {
        font-size: var(--t-gs--font--size--09);
    }
}

@media (max-width: 750px) {
    .button--secondary, .submitButton, .previousButton, .formPreviousButton, .partialSaveButton, .homeButton, .ui-dialog-buttonset .ui-button:nth-of-type(2) {
        border-width: 0;
    }

    .section--search-jobs .search--toggleable .submitButton {
        --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);

        html[data-animations="default"] & {
            --t-tc--buttons__before--background--color--initial: var(--t-gs--swatch--button--090);
            --t-tc--buttons__before--background--color--final: var(--t-gs--color--fill--primary--hover);
        }

        &:focus {
            --t-tc--buttons--border--color: var(--t-gs--color--border--on--fill--primary--focus);
            --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);
        }

        &: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);
        }

        &:active {
            --t-tc--buttons--border--color: var(--t-gs--color--border--on--fill--primary--focus);
            --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);
        }

        &.button--disabled,
        &: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/Sort by
*/

[data-component=sorting-control] [data-component=select] {
    --a-portalcorecomponent-dropdown-trigger-background-color: var(--t-tc--fields--background--color);
    --a-portalcorecomponent-dropdown-trigger-hover-color: var(--a-gs--color--text--on--fill--default);
    --a-portalcorecomponent-dropdown-color: var(--a-gs--color--text--on--fill--default);
    --a-portalcorecomponent-dropdown-trigger-border-top: none;
    --a-portalcorecomponent-dropdown-trigger-border-right: none;
    --a-portalcorecomponent-dropdown-trigger-border-bottom: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-border-left: none;
    --a-portalcorecomponent-dropdown-trigger-border-top-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-border-top-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-border-bottom-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-border-bottom-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-border-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-hover-background-color: var(--t-tc--fields--background--color);
    --a-portalcorecomponent-dropdown-trigger-hover-border-top: none;
    --a-portalcorecomponent-dropdown-trigger-hover-border-right: none;
    --a-portalcorecomponent-dropdown-trigger-hover-border-bottom: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-hover-border-left: none;
    --a-portalcorecomponent-dropdown-trigger-hover-border-top-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-hover-border-top-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-hover-border-bottom-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-hover-border-bottom-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-hover-border-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-active-background-color: var(--t-tc--fields--background--color);
    --a-portalcorecomponent-dropdown-trigger-active-border-top: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-active-border-right: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-active-border-bottom: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-active-border-left: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-active-border-top-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-active-border-top-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-active-border-bottom-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-active-border-bottom-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-active-border-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-focus-background-color: var(--t-tc--fields--background--color);
    --a-portalcorecomponent-dropdown-trigger-focus-border-top: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-focus-border-right: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-focus-border-bottom: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-focus-border-left: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-focus-border-top-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-focus-border-top-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-focus-border-bottom-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-focus-border-bottom-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-focus-border-radius: 0;
    --a-portalcorecomponent-dropdown-option-hover-color: var(--t-gs--swatch--neutral--100);
    --a-portalcorecomponent-dropdown-trigger-selected-background-color: var(--t-tc--fields--background--color);
    --a-portalcorecomponent-dropdown-trigger-selected-color: var(--a-gs--color--text--on--fill--default);
    --a-portalcorecomponent-dropdown-trigger-selected-border-top: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-selected-border-right: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-selected-border-bottom: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-selected-border-left: solid .2rem var(--t-gs--swatch--link);
    --a-portalcorecomponent-dropdown-trigger-selected-border-top-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-selected-border-top-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-selected-border-bottom-left-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-selected-border-bottom-right-radius: 0;
    --a-portalcorecomponent-dropdown-trigger-selected-border-radius: 0;
    --a-portalcorecomponent-dropdown-option-color: var(--a-gs--color--text--on--fill--default);
    --a-portalcorecomponent-dropdown-option-selected-background-color: var(--t-tc--fields--background--color);
    --a-portalcorecomponent-dropdown-menuList-border-top: solid .1rem var(--t-gs--swatch--neutral--060);
    --a-portalcorecomponent-dropdown-menuList-border-right: solid .1rem var(--t-gs--swatch--neutral--060);
    --a-portalcorecomponent-dropdown-menuList-border-bottom: solid .1rem var(--t-gs--swatch--neutral--060);
    --a-portalcorecomponent-dropdown-menuList-border-left: solid .1rem var(--t-gs--swatch--neutral--060);
    --a-portalcorecomponent-dropdown-option-focus-background-color: var(--t-gs--swatch--neutral--080);
    --a-portalcorecomponent-dropdown-option-focus-color: var(--a-gs--color--text--on--fill--default);
}

/*
    PAGETYPES/Job Detail
*/

@media (min-width: 751px) {
    .body--jobDetail .grid__item--main .article__header__text__title.title {
        font-size: var(--t-gs--font--size--09);
    }
}

.body--jobDetail .tabs__list__item {
    inline-size: 100%;
}

@media (width >= 1025px) {
    .body--jobDetail .tabs__list__item {
        text-align: center;
    }
}