/* ==========================================================================
    FONTS
    -------------------------------------------------------------------------
    Fonts

    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)
    Links

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

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

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

    PAGETYPES
    -------------------------------------------------------------------------
    Home
    Search jobs
      : Cards
        : Result (Override/complement)
    Static pages
      : Side images
    Dynamic pages
    Profile
    Success
    Login
    Register

    UTILITIES
    -------------------------------------------------------------------------
    Backdrop
    Custom CSS Classes

    PLUGINS
    -------------------------------------------------------------------------
    Cookie Banner
========================================================================== */

/*
    FONTS/Fonts
*/

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

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

@font-face {
    font-family: 'McKinsey Sans';
    src: url('../fonts/McKinseySans-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

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

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

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .grid__item--talent-community {
        order: 1;
    }
}

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

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

.button--primary,
.saveButton,
.article--alert .submitButton,
.nextButton,
.formNextButton,
.redirectUrlButton,
.gotoButton,
.ui-dialog-buttonset .ui-button:nth-of-type(1),
.TIN_input_button_Primary,
.button--secondary,
.submitButton,
.previousButton,
.formPreviousButton,
.partialSaveButton,
.homeButton,
.ui-dialog-buttonset .ui-button:nth-of-type(2) {
    transition: .3s ease;

    &:hover,
    &:active {
        box-shadow: 0 .4rem 1.6rem 0 rgba(5, 28, 44, 0.2);
    }
}

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

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .tc_formButton {
        inline-size: 21rem;
    }
}
/*
    ELEMENTS/Indicators:
*/

.alert--error.alert:before {
    align-self: center;
}

.labelRequiredIcon {
    font-size: 1.2rem;
    vertical-align: top;
    padding-left: .4rem;
}

/*
    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--000);
    --t-tc--pill--border--color: var(--t-gs--swatch--neutral--000);
    --t-tc--pill--background--color: var(--t-gs--color--fill--matching);
}

.pill,
.list--pills .list .list__item span {
    display: inline;
    border-start-start-radius: var(--t-gs--border--radius--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)
*/

/*
    WIDGETS/Details: View Fields Grid Layout
*/

@media all and (min-width: 751px) {
    .article--details .article__content__view:not(:has(table)) {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: var(--t-gs--space--xl);
        row-gap: var(--t-gs--space--m);
    }

    .article--details .article__content__view > .article__content__view__field {
        margin-block-end: 0;
        line-break: anywhere;
    }

    .article--details .article__content__view > .field--full-width,
    .article--details .article__content__view > .schema_field_TextareaInput {
        grid-column: span 2;
    }
}

/*
    WIDGETS/Details: Schema Tables (Override)
*/

.article__content__view__field__value:has(table) {
    overflow-x: auto;
}

.article__content__view__field__value td,
.article__content__view__field__value th {
    min-width: 18rem;
}

.article--details .article__content__view > .article__content__view__field:has(table) {
    margin-block-end: 2rem;
}

.article__content__view__field__value table:not(.table--default) {
    border-collapse: separate;
    border-spacing: 0;
    border-radius: var(--t-tc--table--border--radius);
    border-width: var(--t-gs--border--width--s);
    border-style: solid;
    border-color: var(--t-tc--table--border--color);
}

.article__content__view__field__value table:not(.table--default) thead tr th {
    block-size: var(--t-tc--table__th--height);
    padding-block: var(--t-tc--table__th--padding);
    padding-inline: var(--t-tc--table__th--padding);
    background-color: var(--t-tc--table__th--background--color);
    vertical-align: middle;
    font-size: var(--t-tc--table__th--font--size);
    font-weight: var(--t-gs--font--weight--bold);
}

.article__content__view__field__value table:not(.table--default) thead tr th:first-child {
    border-radius: var(--t-tc--table--border--radius) var(--t-gs--border--radius--0) var(--t-gs--border--radius--0) var(--t-gs--border--radius--0);
}

.article__content__view__field__value table:not(.table--default) thead tr th:last-child {
    border-radius: var(--t-gs--border--radius--0) var(--t-tc--table--border--radius) var(--t-gs--border--radius--0) var(--t-gs--border--radius--0);
}

.article__content__view__field__value table:not(.table--default) tbody tr > * {
    block-size: var(--t-tc--table__td--height);
    padding-block: var(--t-tc--table__td--padding);
    padding-inline: var(--t-tc--table__td--padding);
    background-color: var(--t-tc--table--background--color);
    vertical-align: middle;
    word-break: normal;
    font-size: var(--t-tc--table__td--font--size);
}

.article__content__view__field__value table:not(.table--default) tbody tr + tr > * {
    border-block-start-width: var(--t-gs--border--width--s);
    border-block-start-style: solid;
    border-block-start-color: var(--t-tc--table--border--color);
}

.article__content__view__field__value table:not(.table--default) tbody tr:last-child > :first-child {
    border-radius: var(--t-gs--border--radius--0) var(--t-gs--border--radius--0) var(--t-gs--border--radius--0) var(--t-tc--table--border--radius);
}

.article__content__view__field__value table:not(.table--default) tbody tr:nth-child(even) *:not(a) {
    background-color: var(--t-gs--swatch--neutral--5);
}

.article__content__view__field__value table:not(.table--default) > thead tr td,
.article__content__view__field__value table:not(.table--default) > thead tr th,
.article__content__view__field__value table:not(.table--default) > tbody tr td,
.article__content__view__field__value table:not(.table--default) > tbody tr th {
    border-bottom: .1rem solid var(--t-gs--color--border--default);
}

.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--color--text--brand);

    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--color--text--brand);

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

/*
    ELEMENTS/Links
*/

.link {
    text-decoration: underline;
    transition: .3s ease all;
}

.link:hover,
*:not([class*="head"]) > .link:active{
    background-color: var(--t-gs--color--text--link);
    color: var(--t-gs--swatch--neutral--white);
}

*:not([class*="head"]) > .link {
    color: var(--t-gs--color--text--on--fill--default);
}

*:not([class*="head"]) > .link:hover{
    color: var(--t-gs--color--text--brand);
    background-color: var(--t-gs--color--border--transparent);
}

:root {
    --location-preferences-focus-ring-color: #00A9F4;
}

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

.article--boxed--dashlet .article__header__text__title {
    display: flex;
    align-items: center;
    gap: var(--t-gs--space--s2);
    justify-content: space-between;
    font-size: var(--t-gs--font--size--08);
    white-space: nowrap;
    text-overflow: ellipsis;
}

.article--boxed--dashlet .article__header__count {
    font-size: var(--t-gs--font--size--13);
    font-weight: var(--t-gs--font--weight--bold);
}

.article--boxed--dashlet {
    border-color: var(--t-gs--color--border--transparent);
    box-shadow: 0rem 0.4rem 0.8rem 0.2rem hsla(0, 0%, 0%, 0.1);
}

.article--boxed--dashlet .article__content,
.article--boxed--dashlet .article__footer {
    border-block-start-color: var(--t-gs--swatch--neutral--20)
}

/* Media query to target mobile and tablet */
@media all and (max-width:1200px) {
    .article--boxed--dashlet .article__header__text__title {
        white-space: wrap;
    }
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .article--boxed--dashlet .article__header__toggle .toggle__icon{
        color: var(--t-gs--swatch--brand);
    }
    .article--boxed--dashlet .article__header__text__title {
        font-size: var(--t-gs--font--size--06);
    }
}

/* Media query to target only tablet */
@media all and (min-width:751px) and (max-width:1024px) {
    .article--boxed--dashlet.article--accordion > .article__header {
        padding-inline-end: var(--t-tc--boxes--padding--outers);
    }

    .article--boxed--dashlet[class*="--accordion"]:not([class*="--accordion__open"]) > [class*="__content"] {
        display: block;
    }

}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .article--boxed--dashlet {
        display: flex;
        flex-direction: column;
    }

    .article--boxed--dashlet .article__content {
        flex-grow: 1;
    }

}

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

.list--dashlet {
    margin-block-end: -.1rem;
}

.list--dashlet .list__item {
    border-block-end-width: var(--t-gs--border--width--s);
    border-block-end-style: solid;
    border-block-end-color: var(--t-gs--swatch--neutral--20);
}

.list--dashlet .list__item__container {
    display: flex;
    column-gap: var(--t-gs--space--s);
    min-block-size: calc(var(--t-gs--size--base) * 18.6);
    padding-block: var(--t-gs--space--m);
    padding-inline: var(--t-gs--space--m);
    transition: all 0.3s ease;
}

.list--dashlet .list__item:not(.partially-saved) a.list__item__container:hover {
    background-color: var(--t-gs--color--fill--link--hover);
    transition: all 0.3s ease;
}

.list--dashlet .list__item__image {
    flex-shrink: 0;
    align-content: center;
}

.list--dashlet .list__item__text {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    inline-size: 100%;
    row-gap: .4rem;
}

.list--dashlet .list__item__image + .list__item__text {
    inline-size: calc(100% - var(--t-tc--thumbnail--width) - var(--t-gs--space--s));
}

.list--dashlet .list__item__text__title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: var(--t-gs--space--s);
    inline-size: 100%;
    color: var(--t-gs--swatch--brand);
    font-weight: var(--t-gs--font--weight--bold);
}

.list--dashlet a.list__item__container .list__item__text__title__name {
    font-weight: var(--t-gs--font--weight--bold);
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    color: var(--t-gs--color--text--link);
    transition: all 0.3s ease;
}

.list--dashlet .list__item:not(.partially-saved) a.list__item__container:hover .list__item__text__title__name {
    color: var(--t-gs--color--text--on--fill--link--hover);
    transition: all 0.3s ease;
}

.list--dashlet .list__item a.list__item__container:focus .list__item__text__title__name {
    color: var(--t-gs--color--text--on--fill--link--focus);
    transition: all 0.3s ease;
}

.list--dashlet .list__item a.list__item__container:active .list__item__text__title__name {
    color: var(--t-gs--color--text--on--fill--link--active);
    transition: all 0.3s ease;
}

.list--dashlet .list__item__text__subtitle {
    inline-size: 100%;
    font-size: var(--t-gs--font--size--03);
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    transition: all 0.3s ease;
}

.list--dashlet .list__item:not(.partially-saved) a.list__item__container:hover .list__item__text__subtitle {
    transition: all 0.3s ease;
}

.list-controls--bottom {
    font-size: var(--t-gs--font--size--03);
    & .list-controls__pagination button {
        text-decoration: none;
        font-weight: var(--t-gs--font--weight--regular);
        &:hover {
            background-color: var(--custom--electric-blue);
            color: var(--t-gs--color--text--on--fill--link--contrast);
        }
    }
}

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

:root {
    --t-tc--billboard--height: calc(var(--t-gs--size--base) * 80);
    --t-tc--billboard--border--radius: var(--t-gs--border--radius--m);
    --t-tc--billboard--background--position: center center;
    --t-tc--billboard--transform--scale: 1.2;
    --t-tc--billboard--filter--blur: calc(var(--t-gs--size--base) * 2);
    --t-tc--billboard__content--line--height: calc(var(--t-gs--size--base) * 6);
    --t-tc--billboard__content--font--color: var(--t-gs--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;
    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--color--text--default);

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

*:has(> *):not([aria-live="polite"]):not(.extra-panel):not(.article--task) ~ .article.article--applied {
    margin-block-start: var(--t-gs--space--0);
}

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

.table--default tbody tr:nth-child(even) *:not(a){
    background-color: var(--t-gs--swatch--neutral--5);
}

.table--default>thead tr td,
.table--default>thead tr th,
.table--default>tbody tr td,
.table--default>tbody tr th{
    border-bottom: .1rem solid var(--t-gs--color--border--default);
}

.table--cards .toggle__icon:before{
    color: var(--t-gs--swatch--brand);
}

.table--cards tbody tr {
    box-shadow: 0rem .4rem .8rem .2rem hsla(0, 0%, 0%, 0.1);
}

.table--cards tbody td:not(:last-child) {
    border-bottom: .1rem solid var(--t-gs--swatch--neutral--090);
}

.table--cards tbody tr>:first-child :is(.link,.row-title){
    display: inline-block;
    font-family: var(--t-gs--font--family--emphasis);
    font-size: var(--t-gs--font--size--08);
}

.table--cards tbody tr td:nth-last-child(2){
    margin-top: .4rem;
}

.table--cards tbody tr td:last-child .link{
    font-size: var(--t-gs--font--size--03);
}

@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 .list {
    display: flex;
    flex-wrap: wrap;
    row-gap: var(--t-gs--space--s2);
    column-gap: var(--t-gs--space--s);
}

.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/Information Box (New)
*/

.info-box {
    background-color: hsla(211, 100%, 94%, 1);
    border: .1rem solid hsla(217, 47%, 81%, 1);
    margin-block: var(--t-gs--space--l);
    padding: var(--t-gs--space--s);
}

.info-box__content {
    display: flex;
    align-items: flex-start;
    gap: var(--t-gs--space--m);
}

.info-box__icon {
    align-self: anchor-center;
}

.info-box__icon svg {
    display: block;
    width: 2rem;
    height: 2rem;
    color: var(--custom--electric-blue);
}

.info-box__message {
    flex: 1;
    line-height: var(--t-gs--line--height--relaxed);
}

.info-box__message .paragraph:not(:first-child) {
    font-size: var(--t-gs--font--size--03);
    padding-block-end: 0;
}

.info-box__close .close--button {
    background-color: transparent;
    border: none;
}

.info-box__message .link {
    display: inline-block;
}

.section__header+.info-box {
    margin-block: var(--t-gs--space--l) 0;
}

.banner+.info-box {
    margin-block: 0;
}

/* Media query to target mobile only */
@media all and (max-width:750px) {
    .info-box {
        margin-block: var(--t-gs--space--m);
        padding: var(--t-gs--space--s) var(--t-gs--space--s2);
    }

    .info-box__content {
        gap: var(--t-gs--space--s2);
    }
}

/*
    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-start: var(--t-gs--space--s2);
        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;
    }
    .list--steps .list__item__text__title {
        max-inline-size: 11.2rem;
        margin: auto;
        &.t--e {
            text-wrap: initial;
        }
    }
    .list--steps .list__item__text {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        height: 100%;
    }
}

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

.title--tabs {
    font-family: var(--t-gs--font--family--default);
    text-transform: uppercase;
}

.tabs__placeholder:after {
    color: var(--t-gs--swatch--brand);
}

/*
.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+
*/

.tabs__list__item {
    text-transform: uppercase;
}

.tabs__list__item:not(.tabs__list__item--active):hover {
    background-color: var(--t-gs--swatch--neutral--5);
    border-block-end-width: 0;
}

/*
    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/Navigation: Breadcrumbs
*/

.breadcrumbs {
    background-color: var(--t-gs--swatch--neutral--10);
    font-weight: var(--t-gs--font--weight--bold);
}

.breadcrumbs .link {
    text-decoration: none;
    font-weight: var(--t-gs--font--weight--regular);
}

.breadcrumbs .list__item:not(:last-of-type) {
    margin-inline-end: var(--t-gs--space--l);
    &:after {
        transform: translateX(var(--t-gs--space--s2)) rotate(30deg);
    }
}

/*
    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: Cards
*/

.article--card {
    box-shadow: 0 .4rem .8rem .2rem rgba(0, 0, 0, 0.1);
}

.article--card .article__header__text__title{
    font-size: 2.4rem;
}

.article--card > *:not(:first-child) {
    border-top: .1rem solid var(--t-gs--swatch--neutral--090);
}

.article--card .article__header__text {
    & .link {
        text-decoration: underline;
    }
}

html[data-animations="default"] .article--card .button {
    transition: .3s ease all;
}

.article--card .button {
    text-decoration-color: currentColor;
}

.article--card .button:hover{
    color: var(--t-gs--swatch--neutral--white);
}

/*
    COMPONENTS: Forms
*/

.form .button-bar__wrap {
    margin-top: var(--t-gs--space--l);
}

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

.form .Section:first-of-type .Separator .tc_formTitle,
.SeparatorTitle .tc_formTitle {
    font-size: var(--t-tc--title--h4);
    margin-block-end: var(--t-gs--space--xl);
}

.datasetField__button--add {
    justify-content: flex-start;
}

.datasetField__button--remove .action--remove {
    margin-left: auto;
}

:has(>*)~templatebuilder-page-dropzone>.section:first-of-type,
:has(>*)~div.hasPreloader>.section:first-of-type,
:has(>*):not([aria-live=polite])~.section {
    margin-block-start: 1rem;
}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .form .CityField,
    .form .CityField + .SelectFormField,
    .form .PostalCodeField {
        display: inline-block;
        width: calc(100%/3);
        margin: 0 auto;
    }

    .form .fieldSpec.CityField + .fieldSpec.SelectFormField,
    .form .fieldSpec.PostalCodeField {
        padding-left: var(--t-gs--space--l);
    }

    /* Remove button position clearfix */
    .MultipleDatasetEntryFormField--cols-2Z .tc_formField .removeDatasetRow,
    .MultipleDatasetEntryFormField--cols-2Z .tc_formField .action--remove {
        float: inline-end;
        width: 100%;
        justify-content: end;
    }
    .FormField .schema_field_MultipleDatasetEntryInput,
    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField div[id*=multipleDatasetEntry_] {
        display: flex;
        flex-direction: row;
        gap: 0 2rem;
        flex-wrap: wrap;
        background-color: transparent;
    }

    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField div[id*=multipleDatasetEntry_] > .removeDatasetRow,
    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField div[id*=multipleDatasetEntry_] > .action--remove {
        order: 999;
        margin-inline-start: auto;
    }

    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField .datasetFieldContainer {
        flex-basis: 100%;
    }

    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField .datasetFieldContainer:has(> .datasetfieldSpec.DateFormField),
    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField .datasetFieldContainer:has(> .datasetfieldSpec.CheckBoxListFormField) {
        flex-basis: calc(50% - 1rem);
    }

    .MultipleDatasetEntryFormField--with-box .tc_formField div[id*=multipleDatasetEntry_],
    .body--has-mde-box .MultipleDatasetEntryFormField .tc_formField div[id*=multipleDatasetEntry_] {
        background-color: var(--t-gs--swatch--neutral--5);
        padding-block: var(--t-gs--space--xl);
        padding-inline: var(--t-gs--space--xl);
        padding-block-end: var(--t-gs--space--s2);
    }
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .FormField .schema_field_MultipleDatasetEntryInput,
    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField div[id*=multipleDatasetEntry_] {
        display: flex;
        flex-direction: column;
        background-color: transparent;
    }

    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField div[id*=multipleDatasetEntry_] > .removeDatasetRow,
    .MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--preferences) .tc_formField div[id*=multipleDatasetEntry_] > .action--remove {
        order: 999;
    }

    .MultipleDatasetEntryFormField--with-box .tc_formField div[id*=multipleDatasetEntry_],
    .body--has-mde-box .MultipleDatasetEntryFormField .tc_formField div[id*=multipleDatasetEntry_] {
        padding-block: var(--t-gs--space--xl);
        padding-inline: var(--t-gs--space--m);
        padding-block-end: var(--t-gs--space--s);
        background-color: var(--t-gs--swatch--neutral--5);
    }
}

/*
    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/Header
*/

li.menu__item.menu__item--open,
html.tbd-focus .menu--visible .menu__link--open,
html.tbd-focus .menu--visible .menu__link[aria-haspopup=true][aria-expanded=true],
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: none;
}

.menu--visible .submenu__item:not([aria-current="page"]):hover .submenu__link,
.menu--visible .portalLanguages__item:not(.portalLanguages__item--selected):hover .portalLanguages__link{
    text-decoration: underline;
}

.menu--visible .submenu__item[aria-current="page"]:hover .submenu__link,
.menu--visible .submenu__list--overflows-not .submenu__link[aria-current="page"],
.menu--visible .submenu__list--overflows-not .portalLanguages__link[aria-current="page"]{
    background-color: var(--t-gs--color--fill--brand);
    color: var(--t-gs--swatch--neutral--white);
    text-decoration: none;
}

.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__link:after{
    font-size: 1.9rem;
}

.menu--visible .submenu__list{
    box-shadow: 0 .6rem 1.2rem .4rem rgba(0, 0, 0, 0.12);
}

.toggle--menu .toggle__icon,
.toggle--menu .toggle__icon:before,
.toggle--menu .toggle__icon:after{
    border-radius: 10rem;
    block-size: 0.25rem;
    inline-size: 2.4rem;
}

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

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

.toggle--menu[aria-expanded="true"] .toggle__icon:before,
.toggle--menu[aria-expanded="true"] .toggle__icon:after {
    inset-block-start: 0rem;
}

.menu--toggleable .menu__panel{
    border-block-start-color: var(--t-gs--swatch--neutral--gray);
}

.menu--toggleable .menu__item{
    border-block-end-color: var(--t-gs--swatch--neutral--gray);
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .header__wrapper {
        padding-block-start: unset;
        padding-block-end: unset;
        align-items: stretch;
    }

    .header__wrapper .header__content {
        align-items: center;
        height: auto;
    }

    .header__content,
    .header__content [class*="menu"]:not(.menu__text):not(.menu__thumbnail):not([class*="submenu"]) {
        height: 100%;
    }

    .menu--visible .menu__link{
        transition: 0.2s cubic-bezier(0.18, 0.89, 0.32, 1.28) all;
    }

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

    .header .menu__item:hover .menu__link,
    html.tbd-focus .menu--visible .menu__link--open,
    .menu--visible .menu__link[aria-current="page"],
    html.tbd-focus .menu--visible .menu__link[aria-haspopup=true][aria-expanded=true],
    .menu--visible .menu__link[aria-haspopup=true]:has( ~ .submenu__list .submenu__link[aria-current="page"]),
    .menu--visible .menu__item:hover .menu__link[aria-haspopup=true] {
        border-block-end-width: .3rem;
        border-block-end-color: var(--t-gs--swatch--brand);
        padding-block-start: calc(var(--t-tc--menu__link--padding--v) + .2rem);
        color: var(--t-gs--swatch--brand);
    }

    .menu--visible .menu__list--separator-left, .menu--visible .menu__item--separator-left {
        &:before {
            height: 50%;
            top: calc(var(--t-tc--header--height) / 4);
        }
    }

    .menu--visible .menu__item .menu__link[aria-haspopup=true]::after,
    .menu--visible .menu__item:hover .menu__link[aria-haspopup=true]::after{
        padding-block-start: .3rem;
    }
}

/*
    MODULES/Banner
*/

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

.banner__text__title {
    line-height: 120%;
}

.banner__text__subtitle {
    font-size: var(--t-gs--font--size--08);
    text-transform: unset;
}

.banner__text__button{
    margin-top: 2rem;
}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .banner__text__title br {
        display: initial;
    }
}

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

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

    }
}

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

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

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

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

.banner--skills .banner__text__title,
.banner--skills .banner__text__paragraph {
    text-align: center;
}

.banner--skills .banner__text {
    row-gap: var(--t-gs--space--s2);
}

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

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

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

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

    }
}

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

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

    }
}

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

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

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

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

    }
}

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

    }
}

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

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

/*
    MODULES/Bottom banner
*/

.banner--job-search {
    min-block-size: 16rem;
}

.banner--job-search .banner__wrapper {
    justify-content: center;
}

.banner--job-search .banner__text {
    row-gap: 2rem;
}

.banner--job-search .banner__text .title {
    font-size: var(--t-gs--font--size--08);
    font-family: var(--t-gs--font--family--default);
}

.banner--job-search .banner__text .button .toggle__icon:before {
    --t-tc--icon--content: "search";
    font-weight: 600;
}

.banner--job-search .banner__text .button .toggle__icon {
    padding-left: 1.1rem;
    --t-tc--icon--font--size: var(--t-gs--font--size--05);
}

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

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .banner--job-search .banner__text {
        width: 100%;
        text-align: center;
    }
}

/*
    MODULES/Footer
*/

.footer__content {
    flex-direction: column;
}

.footer__content--top,
.footer__content--bottom {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.footer__content--top {
    row-gap: 2.4rem;
    padding-bottom: 1.6rem;
    border-bottom: .1rem solid var(--t-gs--swatch--neutral--070);
    margin-bottom: 1.6rem;
}

.footer__content--top .logo--footer {
    height: 6.4rem;
}

.footer__content--top .logo--footer img {
    block-size: 100%;
}

.footer__content--top .footer__social {
    align-self: flex-end;
}

.footer__content--bottom {
    row-gap: 1.6rem;
}

.footer__content--bottom .footer__links {
    justify-content: end;
    column-gap: var(--t-gs--space--m);
}

.footer__content--bottom .footer__links__item.link {
    text-decoration: none;
    color: var(--t-gs--swatch--neutral--020);
}

.footer__content--bottom .footer__rights__copy {
    text-align: end;
    font-size: 1.6rem;
    font-weight: 300;
}

.footer__content--bottom .footer__rights {
    align-self: flex-start;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .footer__content--bottom {
        margin-block-start: unset;
    }

    .footer__content--bottom .footer__links {
        justify-content: left;
        row-gap: .8rem;
    }

    .footer__content--bottom .footer__rights__copy {
        text-align: left;
    }
}

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

.section--my-dashboard div[data-widgetid="eventsList"] .list--dashlet .list__item__text__title {
    color: inherit;
}

.section--my-dashboard div[data-widgetid="eventsList"] .list--dashlet,
.section--my-dashboard div[data-widgetid="eventsList"] .list__item {
    pointer-events: none;
}

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

.article--result .toggle:hover, .article--result .toggle:focus{
    --t-tc--toggle--background--color: var(--t-gs--color--fill--transparent);
}

/*
    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:
   -------------------------------------------------------------------------- */
.paragraph {
    line-height: 2.2rem;
}

.paragraph--small {
    font-size: var(--t-gs--font--size--01);
    line-height: 1.6rem;
}

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

.paragraph.centered {
    text-align: center;
}

.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-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: var(--t-gs--font--size--06);
}

.w--full {
    width: 100%;
}

.WebsitesField > .tc_formLabel {
    font-family: var(--t-gs--font--family--emphasis);
    font-size: var(--t-tc--title--h5);
    margin-block-start: var(--t-gs--space--m);
    & + .tc_formDescription {
        margin-block-end: var(--t-gs--space--m);
    }
}

/* Media query to target only desktop */
@media (min-width: 1025px) {
    .subtabs__list__item + .subtabs__list__item {
        margin-inline-start: var(--t-gs--space--0);
    }
}

/* gLightbox Modal - Content Adaptive
   ==========================================================================
   Makes the withdraw modal (and other gLightbox popups) adapt to content
   with proper max-height and scrolling for long content.
========================================================================== */

/* Desktop: content-adaptive with max-height and scrolling */
@media (min-width: 751px) {
    .glightbox-container .ginner-container {
        max-height: 90vh;
        overflow-y: auto;
    }

    .glightbox-container .gslide-external {
        max-height: 90vh;
        overflow-y: auto;
    }
}

/* Mobile: content-adaptive with viewport-based max-height and scrolling */
@media all and (max-width: 750px) {
    .glightbox-container .ginner-container,
    .gslide-external {
        max-block-size: calc(100vh - var(--t-tc--grid--laterals)*2);
        block-size: auto;
        overflow-y: auto;
    }
    .body .glightbox-container .ginner-container,
    .body .glightbox-container .gslide-external {
        max-block-size: auto;
        block-size: auto !important;
    }

    .body.body--my-job-applications .glightbox-container .gslide-inner-content .gslide-external {
        block-size: 35rem !important;
    }
}

@media (min-width: 751px) {
    /* Add to body--popup so it doesn't take full height if not needed */
    .body--popup .main {
        min-height: auto;
        height: auto;
    }
    .body--popup .section {
        min-height: auto;
    }

    .body .glightbox-container .gslide-inner-content {
        width: auto;
    }

    .body .glightbox-container .gslide-inner-content .ginner-container,
    .body .glightbox-container .gslide-inner-content .gslide-external {
        block-size: auto !important;
        padding: 2rem;
    }

    .body.body--my-job-applications .glightbox-container .gslide-inner-content .gslide-external {
        block-size: 37rem !important;
    }
}

/* UTILITIES: Backdrop
   -------------------------------------------------------------------------- */

.body--backdrop .main {
    background-color: var(--t-gs--swatch--neutral--5);
}

.body--backdrop .section__content {
    background-color: var(--t-tc--main--background--color);
    padding: var(--t-gs--space--xl);
}

.body--backdrop .section__header {
    padding: 0 var(--t-gs--space--xl);
}

/* UTILITIES: Custom CSS Classes
   -------------------------------------------------------------------------- */

/* Hide asterisk in required fields */
.form__item--hidden-asterisk span[class*="requiredField"],
.form__item--hidden-asterisk span[class*="labelRequiredIcon"] {
    display: none;
}

/* Adds asterisk to not required fields */
.no-required-with-asterisk .tc_formLabel::after {
    content: "*";
    font-size: 1.2rem;
    color: var(--t-gs--swatch--error);
    padding-left: .4rem;
    vertical-align: top;
}

/* Hide 'more' link on checkbox lists (legacy parity + wrapper-safe variant) */
.CheckBoxListFormField.CheckBoxListFormField--hiddenMore .CheckBoxListFormField_more,
.CheckBoxListFormField--hiddenMore .CheckBoxListFormField_more {
    display: none;
}

.hasDatesToValidate.MultipleDatasetEntryFormField .tc_formField .datasetFieldContainer:has(> .datasetfieldSpec[hidden]) {
    display: none;
}

/*Multiple dataset with hidden 'remove' or 'add another' options*/
*[class*="fieldSpec"].MultipleDatasetEntryFormField--hiddenRemove .removeDatasetRow,
*[class*="fieldSpec"].MultipleDatasetEntryFormField--hiddenRemove .datasetField__button--remove,
*[class*="fieldSpec"].MultipleDatasetEntryFormField--hiddenRemove .action--remove,
*[class*="fieldSpec"].MultipleDatasetEntryFormField--hiddenAdd .addDatasetRow,
*[class*="fieldSpec"].MultipleDatasetEntryFormField--hiddenAdd .datasetField__button--add,
*[class*="fieldSpec"].MultipleDatasetEntryFormField--hiddenAdd .action--add {
    display: none;
}

/*Multiple dataset with 'add another' and 'remove' aligned at bottom (this is the default)*/
*[class*="fieldSpec"].MultipleDatasetEntryFormField:not(.MultipleDatasetEntryFormField--hiddenRemove) [id^="multipleDatasetEntry_"] {
    position: relative;
    padding-bottom: 0.50rem;
    padding-top: 1rem;
}

/*
    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/Dynamic pages
*/

.article--details .article__header__text__title {
    font-family: var(--t-gs--font--family--default);
    font-size: var(--t-gs--font--size--07);
}

.article.article--collapsible{
    padding: 1.6rem;
}

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

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

/* Wizard Interests checkbox fields column structure */

.wizard--interests .Section3 ~ .Section:not(:last-of-type) {
    display: inline-flex;
    flex-direction: column;
    width: 30%;
    min-inline-size: auto;
    margin-inline-end: 2.4rem;
    & .Separator {
        margin-block-end: 0;
    }
}

.wizard--interests .Section3 ~ .Section:is(.Section15, .Section12, .Section9, .Section6) {
    margin-inline-end: 0;
}

.wizard--interests .Section3 ~ .Section:not(:last-of-type) a {
    color: var(--t-gs--color--text--on--fill--default);
    text-decoration: underline;
    transition: .3s ease all;
    &:hover {
        color: var(--t-gs--color--text--link);
    }
}

:root {
    --black-color: #000;
    --white-color: #fff;
    --violet-color: #2251FF;
}

.form input[type=checkbox] {
    appearance: none;
    -webkit-appearance: none;
    width: 1.3rem;
    height: 1.3rem;
    border: 0.1rem solid var(--t-gs--color--fill--primary);
    border-radius: 0.2rem;
    cursor: pointer;
    transition: .3s ease all;
    &:hover {
        background-color: var(--t-gs--swatch--neutral--090);
    }
    &:checked {
        background-color: var(--t-gs--swatch--brand);
        border-color: var(--t-gs--swatch--brand);
    }
    &:checked::after {
        content: '';
        display: block;
        width: 0.35rem;
        height: 0.7rem;
        border: solid var(--white-color);
        border-width: 0 0.20rem 0.20rem 0;
        transform: rotate(45deg);
        margin: 0.05rem auto 0;
    }
}

.AcceptanceCheckboxField .tc_formField .tc_formSublabel {
    font-weight: var(--t-gs--font--weight--regular);
}

/* Media query to target only tablet */
@media all and (min-width:751px) and (max-width:1024px) {
    .wizard--interests .Section3 ~ .Section:not(:last-of-type) {
        width: 48%;
        margin-inline-end: 0;
        &:nth-child(even) {
            margin-inline-end: 2.4rem;
        }
    }
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .wizard--interests .Section3 ~ .Section:not(:last-of-type) {
        width: 100%;
        margin-inline-end: 0;
    }
}

/*
    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/Profile
*/

.body--profile .subtabs__list__item {
    text-transform: uppercase;
}

.body--profile .subtabs__list__item--selected {
    border-bottom: .3rem solid var(--t-gs--swatch--brand);
    padding-block-end: 0.9rem;
    color: var(--t-gs--swatch--neutral--020);
}

.body--my-job-applications .main__wrapper {
    padding-block-end: 3.45rem;
}

.body--my-job-applications [class*="table"] .row-title{
    font-weight: var(--t-gs--font--weight--regular);
}

.body--my-job-applications .list--links--bottom {
    margin-block-start: 8rem;
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .body--my-job-applications .article--table td[data-th="Actions"] {
        inline-size: 25%;
        & div {
            display: inline-block;
            & + div {
                margin-left: 1.6rem;
                & .link {
                    color: var(--t-gs--swatch--error);
                }
            }
        }
    }
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .body--my-job-applications .article--table td[data-th="Actions"] div + div .link {
        color: var(--t-gs--swatch--error);
    }
    .body--my-job-applications .article--table td[data-th="Actions"] div:first-of-type {
        display: none;
    }
    .body--my-job-applications .table--cards tbody tr td:last-child>*+* {
        margin-left: 0;
    }
}

/*
    PAGETYPES/Success
*/

.body--success.body--backdrop .section__content {
    margin-inline: auto;
    padding: 5rem 7.8rem var(--t-gs--space--xxxl);
}

.article--success.article__header {
    row-gap: var(--t-gs--space--s2);
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .body--success.body--backdrop .section__content {
        width: unset;
        padding: 3rem 4.8rem var(--t-gs--space--xl);
    }
}

/*
    PAGETYPES/Login
*/

.body--backdrop .grid__item:first-child > .article {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.body--backdrop .grid__item:first-child > .article .article__content .paragraph:not(.paragraph--small) {
    margin: auto 0;
}

.body--backdrop .grid__item:first-child > .article .article__content .grid--methods {
    justify-content: space-around;
    flex-wrap: wrap-reverse;
}

.body--backdrop .grid__item:first-child > .article .article__content:first-child {
    margin-block-start: var(--t-gs--space--l);
}

.body--backdrop .grid__item:first-child > .article .article__content .list__item {
    max-inline-size: unset;
}

.body--backdrop .grid--dividers--v>.grid__item:not(:first-of-type):before {
    border-inline-start-color: var(--t-gs--swatch--neutral--30);
}

.body--backdrop .grid--dividers:has(.article--registered) {
    min-block-size: 40.7rem;
}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .body--backdrop .grid__item:first-child > .article .article__content .list__item--drive {
        order: 3;
        padding-block-start: 0;
    }
    .body--backdrop .grid__item:first-child > .article .article__content .list__item {
        padding-block: var(--t-gs--space--l) 0;
    }
}

/* Media query to target only tablet */
@media all and (min-width:751px) and (max-width:1024px) {
    .body--backdrop .grid__item:first-child > .article .article__content .list__item {
        padding-block: var(--t-gs--space--xxxl);
    }
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .body--backdrop .grid__item:first-child > .article .article__content:first-child {
        padding-block-end: var(--t-gs--space--l);
    }
}

/*
    PAGETYPES/Register
*/

.body--register.body--backdrop .section__content {
    padding: var(--t-gs--space--xl) var(--t-gs--space--xxxl);
}

.body--register .tc_formButton {
    width: 100%;
}

/* ==========================================================================
    MEET OUR PEOPLE CAROUSEL
    -------------------------------------------------------------------------
    Scoped styles for the `MeetOurPeople.code` PAB embed. The component is
    rendered by the `listModels/meetOurPeople.jsx` list model, which builds
    the legacy McKinsey `article--slider-alumni` block on top of the canonical
    list widget runtime (templatesfeatures/list) and bootstraps Swiper through
    `SwiperElement.init` (default breakpoints: mobile 1, tablet ≥75.10rem 2,
    desktop ≥102.50rem 4 slides per view).

    All selectors are scoped to `.article--slider-alumni--meet-our-people` or
    `.swiper--meet--people` so they never bleed into the other sliders that
    share the page.

    Visual reference: legacy McKinsey careers/Dashboard.page > article--slider-alumni
    (circular profile + name + subtitle + arrows + bullet pagination).
========================================================================== */

.article--slider-alumni--meet-our-people {
    margin-block-start: var(--t-gs--space--xxl);
    margin-block-end: var(--t-gs--space--xxl);
    .article--slider-alumni {
        margin-block-start: var(--t-gs--space--xxl);
    }
}

.article--slider-alumni--meet-our-people .swiper-container {
    margin-block-start: var(--t-gs--space--m2);
    margin-block-end: var(--t-gs--space--m);
    max-width: 83.4rem;
}

.article--slider-alumni--meet-our-people .swiper-slide {
    padding-top: .5rem;
}

.article--slider-alumni--meet-our-people .slider-alumni__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition-duration: 0.3s;
}

.article--slider-alumni--meet-our-people .slider-alumni__img {
    inline-size: 17.4rem;
    block-size: 17.4rem;
    margin-block: var(--t-gs--space--s);
    overflow: hidden;
    border-radius: 50%;
}

.article--slider-alumni--meet-our-people .slider-alumni__img img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
    object-position: center;
}

.article--slider-alumni--meet-our-people .slider-alumni__name {
    color: var(--t-gs--swatch--neutral--80);
    font-size: var(--t-gs--font--size--04);
    font-weight: var(--t-gs--font--weight--bold);
    margin-block-start: var(--t-gs--space--s);
}

.article--slider-alumni--meet-our-people .slider-alumni__info {
    color: var(--t-gs--swatch--neutral--80);
    font-size: var(--t-gs--font--size--04);
    font-weight: var(--t-gs--font--weight--regular);
    margin-block-start: var(--t-gs--space--xs);
    max-inline-size: 18ch;
}

.article--slider-alumni--meet-our-people .swiper--meet--people {
    padding-block-end: var(--t-gs--space--m);
}

.article--slider-alumni--meet-our-people .swiper-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--t-gs--space--xl);
    margin-block-start: var(--t-gs--space--l);
}

.article--slider-alumni--meet-our-people .swiper-button-prev--meet--people,
.article--slider-alumni--meet-our-people .swiper-button-next--meet--people {
    position: static;
    inset: auto;
    inline-size: 2.4rem;
    block-size: 2.4rem;
    margin: 0;
    cursor: pointer;
    color: var(--custom--electric-blue);
    padding: 2rem;
}

.article--slider-alumni--meet-our-people .swiper-button-prev--meet--people:hover,
.article--slider-alumni--meet-our-people .swiper-button-next--meet--people:hover,
.article--slider-alumni--meet-our-people .swiper-button-prev--meet--people:focus-visible,
.article--slider-alumni--meet-our-people .swiper-button-next--meet--people:focus-visible {
    color: var(--t-gs--swatch--neutral--100);
}

.article--slider-alumni--meet-our-people .swiper-button-prev--meet--people.swiper-button-disabled,
.article--slider-alumni--meet-our-people .swiper-button-next--meet--people.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    background-color: var(--t-gs--color--fill--transparent);
}

.article--slider-alumni--meet-our-people .swiper-pagination--meet--people {
    position: static;
    inset: auto;
    inline-size: auto;
    display: inline-flex;
    align-items: center;
    gap: var(--t-gs--space--s2);
}

.article--slider-alumni--meet-our-people .swiper-pagination--meet--people .swiper-pagination-bullet {
    inline-size: 0.8rem;
    block-size: 0.8rem;
    background-color: var(--t-gs--swatch--brand);
    border-color: var(--t-gs--swatch--brand);
    opacity: 1;
    transition: background-color 0.2s ease;
}

.article--slider-alumni--meet-our-people .swiper-pagination--meet--people .swiper-pagination-bullet-active {
    background-color: var(--t-gs--swatch--neutral--20);
    border-color: var(--t-gs--swatch--neutral--20);
    border-width: 0.5rem;
}

.swiper-controls {
    & .swiper-button-next, & .swiper-button-prev {
        &:focus {
            color: var(--t-gs--swatch--neutral--100);
        }
    }
}

.article--slider-alumni--meet-our-people .article__footer {
    margin-block-start: var(--t-gs--space--m);
    text-align: end;
}

.article--slider-alumni--meet-our-people .article__footer a {
    color: var(--t-gs--color--text--link);
    font-weight: var(--t-gs--font--weight--bold);
}

/* Hide tooltip text by default; surfaced on hover/focus by global rules */
.article--slider-alumni--meet-our-people .link__tooltip {
    position: absolute;
    inset-inline-start: -999.9rem;
}

@media all and (max-width: 751px) {
    .article--slider-alumni--meet-our-people .swiper-controls {
        margin-block-start: var(--t-gs--space--0);
    }
    .article--slider-alumni--meet-our-people .swiper--meet--people {
        margin-block-start: var(--t-gs--space--0);
        padding-block-start: var(--t-gs--space--0);
    }
}

@media all and (min-width: 1025px) {
    .article--slider-alumni--meet-our-people .slider-alumni__name,
    .article--slider-alumni--meet-our-people .slider-alumni__info {
        font-size: var(--t-gs--font--size--04);
    }
}

/* ==========================================================================
    PLUGINS/Cookie Banner
    -------------------------------------------------------------------------
    Transforms the platform CookieBannerWidget from a fixed bottom bar into
    a centered popup modal with dark overlay — matching the legacy portal
    design. Targets the new widget's generated class hooks.
========================================================================== */

/* Override widget CSS variables: white background, dark overlay */
[data-component="cookie-banner"] {
    --a-cookieBannerWidget-wrapper-background-color: rgba(39, 39, 39, 0.75);
    --a-cookieBannerWidget-wrapper-color: rgba(39, 39, 39, 0.75);
}

/* Overlay: dark semi-transparent backdrop covering the entire viewport */
.CookieBannerWidget .f0b96510.idaebebd {
    pointer-events: auto;
}

/* Outer wrapper: convert from bottom bar to full-viewport centered container */
.CookieBannerWidget #cookies-wrapper {
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-block: var(--t-gs--space--l);
    max-height: 100vh;
    max-height: 100dvh;
    overflow-y: auto;
}

/* Inner wrapper: constrained white box, centered */
.CookieBannerWidget .cookies__wrapper {
    max-width: 55%;
    margin: 0;
    padding: var(--t-gs--space--m);
    outline: var(--black-color) auto 0.30rem;
    background-color: var(--white-color);
}

/* Logo: McKinsey & Company as background image on info block */
.CookieBannerWidget .cookies__info {
    background-image: url(../images/logo--default.svg);
    background-size: 16rem;
    background-position: top left;
    background-repeat: no-repeat;
    padding-top: 8rem;
}

/* Text and buttons: horizontal padding inside the popup */
.CookieBannerWidget .f078ce16,
.CookieBannerWidget .eeb700c5 {
    padding-inline: var(--t-gs--space--l);
    font-family: Theinhard, Arial, Helvetica, sans-serif;
    font-size: 1.40rem;
    line-height: 2.10rem;
    color: var(--black-color);
}

/* Links: bold, blue underline with offset */
.CookieBannerWidget .f078ce16 a {
    font-weight: 500;
    text-decoration: underline;
    text-decoration-color: var(--violet-color);
    text-underline-offset: .3rem;
    text-decoration-thickness: .2rem;
    color: var(--violet-color);
}

/* Buttons: common styles matching legacy */
.CookieBannerWidget .eeb700c5 button {
    border-radius: 0;
    padding: 0.80rem 2.00rem;
    font-size: 1.40rem;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: fit-content;
    white-space: nowrap;
}

/* Reject + Settings buttons: outlined style matching legacy */
.CookieBannerWidget #cookies-reject-all-button,
.CookieBannerWidget #cookies-button-settings {
    background-color: var(--white-color);
    color: var(--violet-color);
    border: 0.10rem solid var(--violet-color);
    margin: 0 0 0 2.40rem;
}

/* Accept button: blue background, white text, no border to match legacy */
.CookieBannerWidget #cookies-accept-all-button,
.CookieBannerWidget #cookies-save-close-button,
.CookieBannerWidget button[data-component="primary-button"] {
    border: none;
    background-color: var(--violet-color);
    color: rgb(255, 255, 255);
    margin: 0;
}

/* Button hover/focus/active states: maintain base appearance to match legacy */
.CookieBannerWidget #cookies-accept-all-button:hover,
.CookieBannerWidget #cookies-accept-all-button:focus,
.CookieBannerWidget #cookies-accept-all-button:active,
.CookieBannerWidget #cookies-save-close-button,
.CookieBannerWidget #cookies-save-close-button:hover,
.CookieBannerWidget #cookies-save-close-button:focus,
.CookieBannerWidget #cookies-save-close-button:active,
.CookieBannerWidget button[data-component="primary-button"],
.CookieBannerWidget button[data-component="primary-button"]:hover,
.CookieBannerWidget button[data-component="primary-button"]:focus,
.CookieBannerWidget button[data-component="primary-button"]:active {
    background-color: var(--violet-color);
    color: rgb(255, 255, 255);
    border: none;
    border-radius: 0;
    padding: 0.80rem 2.00rem;
    font-size: 1.40rem;
    font-weight: 500;
    box-shadow: none;
    width: auto;
    min-width: fit-content;
}

.CookieBannerWidget #cookies-reject-all-button:hover,
.CookieBannerWidget #cookies-reject-all-button:focus,
.CookieBannerWidget #cookies-reject-all-button:active {
    background-color: var(--white-color);
    color: var(--violet-color);
    border: 0.10rem solid var(--violet-color);
    border-radius: 0;
    padding: 0.80rem 2.00rem;
    font-size: 1.40rem;
    font-weight: 500;
    box-shadow: none;
    width: auto;
    min-width: fit-content;
}

.CookieBannerWidget #cookies-button-settings:hover,
.CookieBannerWidget #cookies-button-settings:focus,
.CookieBannerWidget #cookies-button-settings:active {
    background-color: var(--white-color);
    color: var(--violet-color);
    border: 0.10rem solid var(--violet-color);
    border-radius: 0;
    padding: 0.80rem 2.00rem;
    font-size: 1.40rem;
    font-weight: 500;
    box-shadow: none;
    width: auto;
    min-width: fit-content;
}

/* Settings button: show as text, not icon */
.CookieBannerWidget #cookies-button-settings span {
    display: inline;
}

.CookieBannerWidget #cookies-button-settings i {
    display: none;
}

/* Settings expanded: content flows as column */
.CookieBannerWidget .cookies__open .cookies__settings {
    flex-direction: column;
}

.CookieBannerWidget .cookies__open .cookies__wrapper {
    align-self: flex-start;
}

/* Settings content: full width in column mode */
.CookieBannerWidget .cookies__settings__content {
    padding-block: var(--t-gs--space--m) 0;
    width: 100%;
}

.CookieBannerWidget .cookies__settings__option__title {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

/* Toggle switch: blue background when checked to match legacy, and gray when unchecked */
.CookieBannerWidget .cookies__settings__option__switch input:checked + span {
    background-color: var(--violet-color);
}

.CookieBannerWidget .cookies__settings__option__switch input:not(:checked) + span {
    background-color: #c8c8c8;
}

/* Media query to target only mobile */
@media all and (max-width: 750px) {
    .CookieBannerWidget .cookies__wrapper {
        max-width: 95%;
    }

    .CookieBannerWidget .f078ce16,
    .CookieBannerWidget .eeb700c5 {
        padding-inline: 0;
    }

    .CookieBannerWidget .eeb700c5 {
        flex-wrap: wrap;
        gap: var(--t-gs--space--s);
    }

    .CookieBannerWidget :is(#cookies-accept-all-button, #cookies-reject-all-button, #cookies-button-settings),
    .CookieBannerWidget :is(#cookies-accept-all-button, #cookies-reject-all-button, #cookies-button-settings):is(:hover, :active, :focus) {
        margin-left: 0;
        width: 100%;
    }
}

/* Media query to target only tablet */
@media all and (min-width: 751px) and (max-width: 1024px) {
    .CookieBannerWidget .cookies__wrapper {
        max-width: 75%;
    }
}
