/* ==========================================================================
    CORE OVERWRITE
    -------------------------------------------------------------------------
    Outline and focus fix

    LAYOUTS
    -------------------------------------------------------------------------
    Grid
      : Sidebars (Override/complement)
    Section
      : Registered (Override/complement)
      : Action next to title (Override/complement)
      : Tabs in header (Override/complement)
      : Static pages (Override/complement)

    ELEMENTS
    -------------------------------------------------------------------------
    Customer Fonts
    Buttons
      : All Buttons - Text transformation (Override/complement)
      : Tertiary (Override/complement)
      : Main
        : Primary (Override/complement)
      : Close dialog button (Override/complement)
      : Tonal submit button (Override/complement)
    Indicators
      : Date (New)
      : Pills (New)
        : Good (New)
        : Great (New)
        : Skills (New)
        : Strong (New)
    Fields (Override/complement)
      : Label padding bottom fix
      : Error fields
      : Multiselect
    Toggle Icon (Override/complement)
    Toggle Search (Override/complement)
    List Control (Override/complement)
    Link (Override/complement)
    Custom Icons
      : Delete (Override/complement)

    COMPONENTS
    -------------------------------------------------------------------------
    Billboards
      : Articles as billboards (New)
    Tables
      : Articles as tables (Override/complement)
      : Table default - Actions (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)
      : Menu link (Override/complement)
    Expandable
    Maching score (Override/complement)
    Tabs (Override/complement)

    WIDGETS
    -------------------------------------------------------------------------
    Attachment upload (New)
    Search
      : Visible (Override/complement)
    Swiper
    Cookies (Override/complement)

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

    PAGETYPES
    -------------------------------------------------------------------------
    Search jobs
      : Cards
        : Result (Override/complement)
    Static pages
      : Side images
    ChoosePassword
      : Article password width
    JobDetail
      : List share

    UTILITIES
    -------------------------------------------------------------------------
    Color Link
      : EF Blue

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

/*
    CORE OVERWRITE/Outline and focus fix
*/

.glightbox-container.glightbox-clean .gclose, .ui-dialog button.ui-button, .TIN_display_Button[id*=TIN_display_Button].TIN_input_button_Primary, .TIN_display_Button[id*=TIN_display_Button].TIN_input_button_Cancel, .TIN_display_Button[id*=TIN_display_Button].TIN_display_CloserButton_NotificationAndDialog, .TIN_display_Button[id*=TIN_display_Button].autoschedule_editor_availability_header_Container_HeaderButton, .autoschedule_Availability .TIN_display_Anchor, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-prev, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-next, .tc_formButton, .button,
.methodButton--later, .methodButton--file, .methodButton--paste, .methodButton--dropbox {
    outline-width: 0;
}

.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, .select2-container--default .select2-search--dropdown .select2-search__field, .form .tox.tox-tinymce,
.dropdown__list {
    --t-tc--fields--border--width: var(--t-gs--border--width--s);
    --t-tc--fields--border--color: var(--custom--03NewSuperGrey);

    &:focus, &:focus-visible {
        --t-tc--fields--border--width: var(--t-gs--border--width--m);
        --t-tc--fields--border--color: var(--custom--EFBlue);
        outline: none;
    }

    &[aria-invalid=true] {
        --t-tc--error--border--color: var(--t-gs--color--border--error);
        border-color: var(--t-tc--error--border--color);
    }
}

*[tabindex="0"]:focus-visible {
    --t-tc--fields--outline--width: var(--t-gs--border--width--m);
    --t-tc--fields--outline--style: var(--t-tc--focus-visible--outline--style);
    --t-tc--fields--outline--color: var(--custom--CornflowerBlue);
    outline: var(--t-tc--fields--outline--width) var(--t-tc--fields--outline--style) var(--t-tc--fields--outline--color);

}

/* Fix padding of article to give space for focus */

.article.article--actions,
.article.article--view-more--aside,
.list--share {
    padding: var(--t-gs--space--xs);
}

/* Fix of article accordeon border */

[class*=--accordion]>[class*=__footer] {
    border-block-start-width: var(--t-gs--border--width--0);
}

/* Select 2 focus fix */
.select2-container--focus .select2-selection {
    --t-tc--fields--border--color: var(--custom--EFBlue);
    --t-tc--fields--border--width: var(--t-gs--border--width--m);
}

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

}

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

}

/*
    LAYOUTS/Section: Tabs in header (Override/complement)
*/

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

/*
    ELEMENTS/Customer Fonts
*/

@font-face {
    font-family: "Canela App";
    src: url("../fonts/Canela-Black-Web.woff2") format("woff2"),
         url("../fonts/Canela-Black-Web.woff") format("woff"),
         url("../fonts/Canela-Black.ttf") format("truetype");
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'EF-Sans';
    src: url('../fonts/Optimized-EFSans-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'EF-Sans';
    src: url('../fonts/Optimized-EFSans-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'EF-Sans';
    src: url('../fonts/Optimized-EFSans-Semibold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'EF-Sans';
    src: url('../fonts/Optimized-EFSans-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'EF-Sans';
    src: url('../fonts/Optimized-EFSans-Black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
}

/*
    ELEMENTS/Buttons: All Buttons - Text transformation (Override/complement)
*/

.ui-dialog button.ui-button,
.tc_formButton,
.button {
    text-transform: uppercase;

    &:focus {
        outline: .3rem solid var(--custom--CornflowerBlue);
    }
}

/*
    ELEMENTS/Buttons: Tertiary (Override/complement)
*/

.button--tertiary {
    &:hover {
        text-decoration-color: none;
        text-decoration: none;
    }
}

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

/*
    ELEMENTS/Buttons: Close dialog button (Override/complement)
*/

.ui-dialog button.ui-button.ui-dialog-titlebar-close .ui-button-icon {
    display: block;
}

.ui-dialog .ui-button-icon {
    --button__icon--width: 1.4rem;
    --button__icon--height: 1.4rem;

    color: var(--custom--DarkBlue);
}

.ui-dialog .ui-button-icon:hover {
    color: var(--custom--EFBlue);
}

.ui-dialog .ui-dialog-title {
    --title--font--size: 3rem;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .ui-dialog .ui-dialog-title {
        --title--font--size: 2rem;
    }

    .ui-dialog .ui-dialog-buttonpane .ui-button {
        --button-bar__buttons--width: 100%;
    }
}

/*
    ELEMENTS/Buttons: Tonal submit button (Override/complement)
*/

.button--tonal .submitButton:focus,
.button--tonal:focus {
    outline-width: var(--t-tc--buttons--outline--width);
    outline-style: var(--t-tc--buttons--outline--style);
    outline-color: var(--t-tc--buttons--outline--color);
}

/*
    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(--custom--01NewSuperGrey);
    --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--full);
    border-start-end-radius: var(--t-gs--border--radius--full);
    border-end-start-radius: var(--t-gs--border--radius--full);
    border-end-end-radius: var(--t-gs--border--radius--full);
    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);
    font-weight: 400;
    vertical-align: middle;
    color: var(--custom--01NewSuperGrey);
}

.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/Fields : Label padding bottom fix
*/

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

.select2-selection[aria-expanded=true] {
    --t-tc--fields--border--width: var(--t-gs--border--width--m);
    --t-tc--fields--border--color: var(--custom--EFBlue);
}

/*
    ELEMENTS/Fields : Error fields
*/

.errorMessage:before {
    --t-tc--icon--content: "info";
    --t-tc--icon--fill: 0;
}

/*
    ELEMENTS/Fields : Error bar
*/

.alert--error {
    --t-tc--alert--font--color: rgba(47, 50, 55, 1);
}
.alert:before {
    --t-tc--icon--content: "info";
    --t-tc--icon--font--color: var(--custom--text--dark);
    --t-tc--icon--fill: 0;
}

/*
    ELEMENTS/Fields : Multiselect
*/

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    border-radius: var(--t-gs--border--radius--full);
}

/*
    ELEMENTS/Toggle Icon
*/

.toggle[aria-expanded=false] .toggle__icon:before {
    --t-tc--icon--font--color: var(--custom--DarkBlue);
}

/*
    ELEMENTS/Toggle Search
*/

.toggle--search {
    --t-tc--toggle--background--color: var(--t-gs--color--fill--transparent);
    border-width: var(--t-gs--border--width--m);
    border-color: var(--t-gs--color--border--on--fill--primary);
    border-style: solid;
}

.toggle--search .toggle__icon:before {
    color: var(--t-gs--color--text--on--fill--primary);
}

.toggle--search[aria-expanded=true] {
    --t-tc--toggle--background--color: var(--t-gs--color--fill--transparent);
}

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

@media (width <= 1024px) {
    .section .section__header__tabs:after, .section .section__header__text:after {
        --t-gs--color--border--default: var(--custom--03NewSuperGrey);
    }
}

/*
    ELEMENTS/List Control (Override/complement)
*/

.list-controls {
    font-size: var(--t-gs--font--size--04);
}

.list-controls__text__reset, .list-controls__reset {
    font-style: unset;
}

.list-controls__text__legend {
    color: var(--t-gs--color--text--subdued);
}

.list-controls__pagination__item:not(.currentPageLink) {
    --t-gs--color--text--link: var(--custom--DarkBlue);
}

.list-controls__pagination__item.currentPageLink {
    color: var(--custom--EFBlue);
}

/*
    ELEMENTS/Link (Override/complement)
*/

.link {
    &:hover {
        text-decoration-color: var(--t-gs--swatch--neutral--transparent);
        color: var(--t-gs--color--text--link--hover);
    }

    &:active,
    &:focus {
        border-width: var(--t-gs--border--width--m);
        border-style: solid;
        border-color: var(--custom--CornflowerBlue);
        outline: none;
    }
}

/*
    ELEMENTS/Custom Icons: Delete
*/

.action--delete::before {
    --t-tc--icon--content: unset;
    --t-tc--icon: "";

    background-image: url(../images/icon--delete.svg);
}

.action--edit::before {
    --t-tc--icon--content: unset;
    --t-tc--icon: "";

    background-image: url(../images/icon--edit.svg);
}

/*
    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--0);
    --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--link--040);
    --t-tc--billboard__after--opacity: 0.6;
    --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;

            background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.45) 78.66%);

            .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(--custom--text--light);

                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/Tables: Table default - Actions (Override/complement)
*/

.table--default tbody tr td:last-child {
    display: flex;
    width: 100%;
    flex-direction: row;
    align-items: center;
    column-gap: 1.6rem;
}

/*
    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 .article__header__text__title {
    padding-block: .3rem;
}

.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 .article__footer .button {
    &:hover {
        text-decoration: none;
    }

    &:focus,
    &:focus-visible {
        --t-tc--buttons--outline--width: var(--t-gs--border--width--m);
        outline-style: var(--t-tc--buttons--outline--style);
        outline-color: var(--t-tc--buttons--outline--color);
        border: none;
    }
}

.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/Navigation: Menu visible (Override/complement)
*/

/* all links */
.menu__link {
    text-transform: uppercase;
    font-weight: var(--custom--font--weight--semibold);
}

.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] {
    box-shadow: unset;
    color: var(--custom--EFBlue);
    border-top-color: var(--t-gs--color--border--transparent);
    border-left-color: var(--t-gs--color--border--transparent);
    border-right-color: var(--t-gs--color--border--transparent);
    border-bottom-color: var(--custom--EFBlue);
    border-bottom-width: var(--t-gs--border--width--m);
}

.menu--visible .menu__item:hover .menu__link[aria-haspopup="true"],
.menu--visible .menu__item:hover .menu__link[aria-haspopup="true"]+.submenu__list,
.menu--visible .menu__link[aria-haspopup="true"][aria-expanded="true"],
.menu--visible .menu__link[aria-haspopup="true"][aria-expanded="true"]+.submenu__list {
    border-top-color: var(--t-gs--color--border--transparent);
    margin-top: .1rem;
}

.menu--visible .submenu__item+.submenu__item {
    border-block-start-width: var(--t-gs--border--width--0);
}

/*
    COMPONENTS/Navigation: Menu toggleable (Override/complement)
*/

.menu--toggleable .menu__panel {
    padding-inline-start: var(--t-gs--space--m);
    padding-inline-end: var(--t-gs--space--m);
}

.menu--toggleable .submenu__list {
    padding-block-end: var(--t-gs--space--s2);
    padding-inline-start: var(--t-gs--space--m2);
}

.menu--toggleable .menu__item .menu__link[aria-haspopup="true"]::after {
    --t-tc--icon--wght: var(--custom--font--weight--light);
    --t-tc--icon--font--weight: var(--custom--font--weight--light);

    font-size: 4rem;
}

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

/*
    COMPONENTS: Maching score
*/

.article--matching {
    --t-tc--doughnut--fill-color: var(--custom--EFBlue)
}

.article--matching .chart__percentage {
    --t-tc--doughnut--font--weight: var(--custom--font--weight--black);
    --t-tc--doughnut--fill-color: var(--custom--DarkBlue);

    font-family: var(--t-gs--font--family--emphasis);
}

/*
    COMPONENTS/Tabs (Override/complement)
*/

.tabs__list__item {
    text-transform: unset;
}

.tabs__list__link {
    color: var(--t-gs--color--text--default);
}

.tabs__placeholder:after {
    --t-tc--toggle--width: 4rem;
    --t-tc--toggle--height: 4rem;
    --t-tc--toggle--font--size: 4rem;
    --t-tc--toggle--font--color: var(--custom--02NewSuperGrey);
    --t-tc--icon--font--weight: 300;
}

@media (width >= 1025px) {
    .tabs__list__item {
        font-weight: var(--custom--font--weight--semibold);
    }

    .tabs__list__item--active {
        border-block-end-color: var(--custom--CornflowerBlue);
    }
}

@media (width <= 1024px) {
    .tabs__placeholder {
        padding-block: var(--t-gs--space--0);
        padding-inline: var(--t-gs--space--m);
        padding-right: var(--t-gs--space--0);
    }

    .tabs__placeholder.title {
        --t-tc--title--font--size: var(--t-gs--font--size--04);
        --t-tc--title--font--family: var(--t-gs--font--family--default);
        --t-tc--title--font--weight: var(--custom--font--weight--semibold);
        --t-tc--title--font--color: var(--custom--EFBlue);
    }

    .tabs .tabs__list {
        width: 100%;
        border-right-width: var(--t-gs--border--width--0);
        border-left-width: var(--t-gs--border--width--0);
        border-color: var(--custom--03NewSuperGrey);
        font-weight: var(--custom--font--weight--semibold);
        border-radius: var(--t-gs--border--radius--0);
    }
}

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

}

/*
    WIDGETS/Swiper (Override/complement)
*/

:root {
    --t-tc--swiper__pagination__bullet--border--color: var(--custom--EFBlue)
}

.swiper-controls {
    margin-block: var(--t-gs--space--s);

    & .swiper-pagination {
        & .swiper-pagination-bullet {
            &.swiper-pagination-bullet-active {
                --t-tc--swiper__pagination__bullet--background--color: var(--custom--EFBlue);
            }
        }
    }
}

.swiper-controls {
    & .swiper-button-next, & .swiper-button-prev {
        &.swiper-button-disabled {
            --t-tc--swiper__navigation--font--color: var(--custom--03NewSuperGrey);
        }
    }
}

/*
    WIDGETS/Cookies: Settings button(Override/complement)
    Situation: The button was not showing because the color used for the icon was transparent.
    Explanation: The variable responsible for this color --a-cookieBannerWidget-secondaryButton-background-color is the same used for the background color of the primary button which is the transparent color.
    Solution: Was necessary to overwrite the id of the button so the icon is now visible without change the background color of the primary button.
*/

#cookies-button-settings i:before {
    color: var(--t-gs--swatch--button);
}

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

.banner--main--home {
    --t-tc--banner--height: calc(var(--t-gs--size--base) * 134.5);

    background-image: var(--t-tc--home__banner--background--image);
}

.banner--main--home .banner__wrapper {
    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);
}

.banner--main .banner__text__title.title {
    color: var(--t-tc--banner--font--color);
}

.banner__text__subtitle {
    font-size: var(--t-gs--font--size--05);
    text-transform: unset;
    margin-top: .8rem;
}

/* Media query to target only tablet */
@media all and (min-width:751px) and (max-width:1024px) {
    .banner--main--home {
        --t-tc--banner--height: 20.7rem;

        block-size: var(--t-tc--banner--height);
    }
}

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

        block-size: var(--t-tc--banner--height);
    }

}

/* Media query to target only large desktop */
@media all and (min-width:1441px) {
    .banner--main--home {
        --t-tc--banner--height: 44.9rem;

        block-size: var(--t-tc--banner--height);
    }

}

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

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

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

.banner--secondary--bottom {
    background-image: var(--t-tc--home-banner-secondary-bottom--background--image);
    background-size: cover;
    height: 23.4rem;
}

.banner--secondary .banner__text__title.title {
    color: var(--t-tc--banner--font--color);
}

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

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

    .banner--secondary--skills .banner__text {
        flex-direction: column;
    }

    .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--background--transparent);
        background-color: var(--t-tc--banner--background--color);
        border-radius: var(--t-gs--border--radius--s);
    }
}

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

}

/* 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/Banner: Job (New)
*/

.main--job {
    --t-tc--main--background--color: var(--custom--footerGrey);
}

.main--job .main__wrapper {
    --t-tc--main--padding--top: var(--t-gs--space--xxxl);
    --t-tc--main--padding--bottom: var(--t-gs--space--xxxl);
    --t-tc--grid--laterals: var(--t-gs--space--xxxl);

    background-color: var(--custom--text--light);
    margin-top: calc(var(--t-gs--size--base) * -30);
    margin-block-end: calc(var(--t-gs--space--base) * 20);
}

.banner--main--job {
    --t-tc--banner--height: calc(var(--t-gs--size--base) * 134.5);
}

.banner--main--job .banner__wrapper {
    padding-block-end: calc(var(--t-gs--size--base) * 30);
}

/*
    MODULES/Breadcrumbs
*/

.breadcrumbs {
    background-color: var(--t-gs--swatch--neutral--transparent);
    color: var(--custom--text--light);
    margin-block-start: var(--t-gs--space--s);
}

.list--links--top .list__item:not(:last-of-type):after {
    border-inline-start-color: var(--custom--text--light);
}

/*
    MODULES/Bottom banner
*/

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

/*
    Modules/banner form
*/
.banner__form .tc_formLabel {
    --t-tc--labels--font--color: var(--custom--text--light);
}

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

/*
    MODULES/Footer
*/

:root {
    --footer__logos--gap: var(--t-gs--space--xl);
}

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

.footer__center-text {
    font-family: var(--t-gs--font--family--emphasis);
    font-size: var(--t-gs--font--size--06);
    font-weight: var(--custom--font--weight--black);
    color: var(--t-gs--color--text--default);
    line-height: 120%;
}

.footer__social__item {
    block-size: calc(var(--t-gs--size--base) * 10.5);
    max-inline-size: calc(var(--t-gs--size--base) * 10.5);
}

@media (width <= 750px) {
    .footer__content>*+* {
        margin-block-start: var(--t-gs--space--l);
    }
}

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

.brand__list__link {
    color: var(--custom--text--light);
    font-size: var(--t-gs--font--size--03);
    font-weight: var(--custom--font--weight--semibold);
    text-transform: uppercase;
}

.footer__wrapper--subsidiaries {
    --t-tc--footer--padding--top: var(--t-gs--space--xxxl);
    --t-tc--footer--padding--bottom: var(--t-gs--space--xxxl);

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

.footer__title {
    margin-block-end: calc(var(--t-gs--space--base) * 7);
    margin-block-start: calc(var(--t-gs--space--base) * 7);
}

.footer__logos {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: var(--footer__logos--gap);
}

.footer__logos--3cols {
    justify-content: center;
}

.footer__logos--2cols {
    margin-block-end: var(--t-gs--space--xl);
    margin-block-start: var(--t-gs--space--xl);
}

.footer__subsidiaries__link {
    flex: 1 1 calc(50% - var(--footer__logos--gap));
}

.footer__logos .footer__subsidiaries__image {
    max-height: 13rem;
    width: auto;
    height: auto;
}

.footer__logos--2cols .footer__subsidiaries__image {
    max-height: 14rem;
}

.footer__logos + .footer__logos {
    margin-top: var(--footer__logos--gap);
}

.brand__list {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.brand__list__title {
    font-size: var(--t-gs--font--size--04);
    font-weight: var(--custom--font--weight--semibold);
}

.item--title--filiales {
    margin-block-start: calc(var(--t-gs--space--base) * 2.5);
    margin-block-end: calc(var(--t-gs--space--base) * 2.5);
}

.item--title--importateur {
    margin-block-start: calc(var(--t-gs--space--base) * 5);
    margin-block-end: calc(var(--t-gs--space--base) * 2);
}

.footer__wrapper--rights {
    --t-tc--footer--padding--top: calc(var(--t-gs--space--base) * 5);
    --t-tc--footer--padding--bottom: calc(var(--t-gs--space--base) * 5);
}

.footer__rights-dynamicLinks {
    border-top-width: var(--t-gs--border--width--s);
    border-top-style: solid;
    border-top-color: rgba(127, 167, 207, 1);
    background-color: var(--custom--DarkBlue);
}

.footer__rights-dynamicLinks .footer__links {
    margin-block-start: var(--t-gs--space--m);
    margin-block-end: var(--t-gs--space--xl);
    row-gap: var(--t-gs--space--m);
}

.footer__rights-dynamicLinks .footer__links .link {
    text-transform: uppercase;
    color: var(--custom--text--light);
    font-weight: var(--custom--font--weight--semibold);
    font-size: var(--t-gs--font--size--03);
}

.footer__rights {
    align-items: center;
    text-align: center;
    justify-content: center;
    margin-block-start: calc(var(--t-gs--space--base) * 7);
    margin-block-end: calc(var(--t-gs--space--base) * 7);
    font-size: var(--t-gs--font--size--03);
}

@media (width >= 1025px) {
    .footer__links__divider {
        margin-inline-start: var(--t-gs--space--m);
        margin-inline-end: var(--t-gs--space--m);
    }
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .footer__wrapper--subsidiaries {
        --t-tc--grid--laterals: 11%;
        --t-tc--footer--padding--top: var(--t-gs--space--l);
        --t-tc--footer--padding--bottom: var(--t-gs--space--l);
    }

    .footer__rights {
        margin-block-start: var(--t-gs--space--m);
        margin-block-end: var(--t-gs--space--m);
    }

    .footer__logos {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        column-gap: var(--footer__logos--gap);
        row-gap: var(--footer__logos--gap);
      }
      .footer__logos > a {
        flex: 1 1 calc(50% - var(--footer__logos--gap));
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
      }

      .footer__logos--3cols > a:last-child {
        flex-basis: 100%;
      }

      .footer__subsidiaries__image {
        max-height: 5.6rem;
        width: auto;
        height: auto;
      }

      .footer__logos + .footer__logos {
        margin-top: var(--footer__logos--gap);
      }
}

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

/* 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--white {
    background-color: var(--t-gs--color--background--transparent);
}

.banner--secondary--white .banner__text__title.title {
    color: var(--t-gs--color--text--default);
}

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

    .subtabs__list__item + .subtabs__list__item {
        margin-inline-start: var(--t-gs--space--0);
    }

}

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

/*
    PAGETYPES/ChoosePassword: Article password width
*/

@media (width >= 1025px) {
    .article--password {
        --t-tc--article--width--max: var(--t-tc--content--w--narrow);
    }
}

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

/*
    PAGETYPES/JobDetail: List share
*/

.body--job-detail .list--share {
    padding-left: 0;
}

.body--job-detail .list--share .shareButton {
    background-position: left top;
    inline-size: calc(var(--t-gs--size--base) * 10.5);
}

/*
    UTILITIES/Color:
*/

.color--EFBlue {
    --t-gs--color--text--link: var(--custom--EFBlue);
    --t-tc--title--font--color: var(--custom--EFBlue);
}

.color--darkBlue {
    --t-gs--color--text--link: var(--custom--DarkBlue);
    --t-tc--title--font--color: var(--custom--DarkBlue);
}

.color--dark {
    --t-gs--color--text--link: var(--custom--text--dark);
    --t-tc--title--font--color: var(--custom--text--dark);

    color: var(--t-gs--color--text--link);
}

.color--light {
    --t-gs--color--text--link: var(--custom--text--light);
    --t-tc--title--font--color: var(--custom--text--light);

    color: var(--custom--text--light);
}

/*
    UTILITIES/Bold:
*/

.t--b {
    font-weight: var(--t-gs--font--weight--bold);
}