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

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

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

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

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

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

    UTILITIES
    -------------------------------------------------------------------------
    Spacings
      : Margins

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

@media (width>=1441px) {
    html {
        font-size: 62.5% !important;
    }
}

/* ELEMENTS: Fonts
-------------------------------------------------------------------------- */

/* Light */

@font-face {
    font-family: 'Essentielle';
    font-style: normal;
    font-weight: 300;
    src: url('../fonts/woff2/light/EssentielleLight.woff2'), url('../fonts/tff/light/EssentielleLight.ttf');
    font-display: swap;
}

/*Light Italic */

@font-face {
    font-family: 'Essentielle';
    font-style: italic;
    font-weight: 300;
    src: url('../fonts/woff2/light/EssentielleLightItalic.woff2'), url('../fonts/tff/light/EssentielleLightItalic.ttf');
    font-display: swap;
}

/* Regular */

@font-face {
    font-family: 'Essentielle';
    font-style: normal;
    font-weight: normal;
    src: url('../fonts/woff2/regular/EssentielleRegular.woff2'), url('../fonts/tff/regular/EssentielleRegular.ttf');
    font-display: swap;
}

/* Regular Italic */

@font-face {
    font-family: 'Essentielle';
    font-style: italic;
    font-weight: normal;
    src: url('../fonts/woff2/regular/EssentielleRegularItalic.woff2'), url('../fonts/tff/regular/EssentielleRegularItalic.ttf');
    font-display: swap;
}

/* Bold */

@font-face {
    font-family: 'Essentielle';
    font-style: normal;
    font-weight: bold;
    src: url('../fonts/woff2/bold/EssentielleBold.woff2'), url('../fonts/tff/bold/EssentielleBold.ttf');
    font-display: swap;
}

/* Bold Italic */

@font-face {
    font-family: 'Essentielle';
    font-style: italic;
    font-weight: bold;
    src: url('../fonts/woff2/bold/EssentielleBoldItalic.woff2'), url('../fonts/tff/bold/EssentielleBoldItalic.ttf');
    font-display: swap;
}

/* Black */

@font-face {
    font-family: 'Essentielle';
    font-style: normal;
    font-weight: 900;
    src: url('../fonts/woff2/black/EssentielleBlack.woff2'), url('../fonts/tff/black/EssentielleBlack.ttf');
    font-display: swap;
}

/* Black Italic */

@font-face {
    font-family: 'Essentielle';
    font-style: italic;
    font-weight: 900;
    src: url('../fonts/woff2/black/EssentielleBlackItalic.woff2'), url('../fonts/tff/black/EssentielleBlackItalic.ttf');
    font-display: swap;
}

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

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

/*
    LAYOUTS/Section: Registered
*/

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

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

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

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

        & .article__header {
            border: var(--t-gs--border--width--0);
            clip: rect(0 0 0 0);
            -webkit-clip-path: inset(50%);
            clip-path: inset(50%);
            block-size: .1rem;
            margin-block: -0.1rem;
            margin-inline: -0.1rem;
            overflow: hidden;
            padding-block: 0;
            padding-inline: 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: 0;
        }
    }
}

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

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

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

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

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

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

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

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

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

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

/*
    ELEMENTS/Indicators: 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)
*/

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

/*
    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;
    overflow: hidden;
    line-clamp: 2;
}

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

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

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

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

@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: 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: 0;
    padding-inline-start: 0;
}

.article--details .article__content__view__field__value .list--pills .list li + li {
    margin-block-start: 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/Navigation: Steps bar (Override/complement)
*/

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

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

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

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

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

+TBD+
*/

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

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

    .tabs--skills .tabs__list__item {
        float: inline-start;
        margin-block-end: -.1rem;
        border-block-end-width: .3rem;
        border-block-end-style: solid;
        padding-block: var(--t-gs--space--s) var(--t-gs--space--xs);
        padding-inline: var(--t-gs--space--m2);
        font-weight: var(--t-gs--font--weight--bold);
    }

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

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

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

}

/*
    COMPONENTS: Expandable
*/

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

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

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

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

.js-expandable-items__toggle {
    border: none;
    padding: 0;
    background: none;
    font-size: inherit;
    cursor: pointer;
    text-decoration: none;
}

/*
    WIDGETS/Attachment upload (New)
*/

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

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

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

.article--methods .article__content + .article__content {
    margin-block-start: 0;
}

.article--methods .article__content + .article__content:has(.manualRegisterMethodExtra:not([style*="display: none"])) {
    margin-block-start: var(--t-gs--space--l);
}

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

/*
    Banner: Main
*/

.banner--main {
    overflow-x: hidden;
    margin-block: var(--t-gs--space--xxxl);
    background-image: none;
    background-color: var(--color--white);
}

.banner--main .banner__wrapper {
    position: relative;
}

.banner--main .banner__text {
    z-index: 1;
    row-gap: 1rem;
    position: relative;
    inline-size: 100%;
    justify-content: center;
    background-color: var(--color--black);
}

.banner--main .banner__text__title {
    max-inline-size: 47.4rem;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

.banner__text__subtitle {
    color: var(--color--black);
    font-size: 2rem;
    line-height: var(--line-height--2-4);
    text-transform: inherit;
}

.banner__image--group {
    overflow: hidden;
    position: relative;
}

.banner__image--group::before {
    content: "";
    position: absolute;
    inline-size: 0.6rem;
    inset-block-end: 0;
    inset-block-start: 0;
    inset-inline-start: 0;
    background-color: var(--color--white);
}

.banner__image--group__accent {
    position: absolute;
    inset-inline-end: 0;
    inset-block-start: 0;

    block-size: 35.2rem;
    inline-size: 30.5rem;

    background-color: var(--color--loa);
    border-end-end-radius: 12rem;
}

.banner__image--group__photo {
    position: absolute;
    inset: 0.6rem;

    inline-size: calc(100% - 1.2rem);
    block-size: calc(100% - 1.2rem);

    object-fit: cover;
}

/* Media query to target only desktop */
@media all and (min-width: 1025px) {
    .banner--main .banner__wrapper {
        block-size: 39.5rem;
    }

    .banner--main .banner__text {
        position: absolute;
        inset-block-start: 13.6rem;
        inset-inline-start: 50%;
        transform: translateX(-50%);

        inline-size: 100vw;
        block-size: 21.2rem;

        padding-block: 4.3rem 4.9rem;
        padding-inline: 18.4rem;
    }

    .banner__image--group {
        z-index: 2;
        position: absolute;
        inset-inline-end: 10.8rem;
        inset-block-start: 0.3rem;

        block-size: 38.8rem;
        inline-size: 56.3rem;

        background-color: transparent;
    }
}

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

    .banner--main .banner__wrapper {
        gap: 0;
        display: flex;
        flex-direction: column;
        padding-inline: var(--t-gs--space--xl);
        padding-block-start: 0;
    }

    .banner--main .banner__text {
        order: 1;
        row-gap: var(--t-gs--space--s2);
        inline-size: 100%;
        align-items: center;
        padding-block: 0;
        padding-inline: var(--t-gs--space--l);
        margin-block-end: 2.4rem;
        background-color: transparent;
    }

    .banner--main .banner__text__title {
        color: var(--color--black);
    }

    .banner__image--group {
        order: 2;
        z-index: 0;
        overflow: visible;

        inline-size: 31.1rem;
        block-size: 21.4rem;

        margin-inline: auto;
    }

    .banner__image--group::after {
        content: "";
        position: absolute;
        z-index: -1;
        inset-block-start: 50%;
        inset-inline-start: 50%;
        transform: translate(-50%, -50%);

        inline-size: 100vw;
        block-size: 12rem;

        background-color: var(--color--black);
    }

    .banner__image--group__accent {
        inline-size: 16.8rem;
        block-size: 19.4rem;
    }

    .banner__text__subtitle {
        font-size: 1.4rem;
        line-height: var(--line-height--1-8);
    }
}

/*
    Banner: Secondary
*/

.banner--secondary {
    background-color: var(--color--black);

    --t-tc--banner--height: 14rem;
}

.banner--secondary .banner__wrapper {
    --t-tc--banner--padding--top: 5.1rem;
    --t-tc--banner--padding--bottom: 5.1rem;
}

/* Media query to target mobile and tablet */
@media all and (max-width: 1024px) {
    .banner--secondary {
        --t-tc--banner--height: 11rem;
    }

    .banner--secondary .banner__wrapper {
        --t-tc--banner--padding--top: var(--t-gs--space--xxl);
        --t-tc--banner--padding--bottom: var(--t-gs--space--xxl);
    }
}

/*
    PAGETYPES/Home
*/

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

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

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

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

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

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

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

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

.section--search-jobs .article--result + .article--result {
    margin-block-start: 0;
}

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

        .article--card .article__header {
            flex-grow:1;
        }

        .article--card .article__content {
            flex-grow:unset;
        }

    }
}

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

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

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

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

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

/*
    UTILITIES/Spacings: Margins
*/

.section.m--t--n {
    margin-block-start: 0;
}

/*
    PAGETYPES/Students:
*/

.section--content-page {
    margin: 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);
    }
}

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

/*
    PAGETYPES/Static pages: Text content
*/

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

/*
    PAGETYPES/Static pages: Side images
*/

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

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

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

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

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

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

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

/*
    Header
*/

.header,
.body--header-fixed-on-scroll .header--scrolling {
    box-shadow: none;
}

.header__wrapper {
    border-block-end-width: 0.1rem;
    border-block-end-style: solid;
    border-block-end-color: var(--color--black);
}

@media (width >= 1025px) {
    .header__wrapper {
        max-inline-size: 100%;
        padding-inline-end: var(--t-gs--space--l);
        padding-inline-start: var(--t-gs--space--l);
    }
}

.menu__item--jobs-link .menu__link {
    color: var(--color--white);
    block-size: 3.6rem;
    background-color: var(--color--black);

    border-width: 0.1rem;
    border-style: solid;
    border-color: var(--color--black);
}
.menu__item--jobs-link .menu__link:hover,
.menu__item--jobs-link .menu__link:focus-visible {
    background-color: var(--color--loa);
}

.menu__item--jobs-link .menu__text {
    color: inherit;
    line-height: var(--line-height--1-8);
    font-weight: var(--t-gs--font--weight--regular);
}

.menu__item--jobs-link .menu__text::after {
    content: "";
    display: inline-flex;

    block-size: 2rem;
    inline-size: 2rem;

    background-size: contain;
    background-image: var(--custom-icon--magnifying-glass-white);

    vertical-align: sub;
    margin-inline-start: var(--t-gs--space--s);
}

@media (prefers-reduced-motion: no-preference) {
    .menu__item--jobs-link .menu__link,
    .menu__item--jobs-link .menu__text::after {
        transition: background-color 0.2s ease-in-out;
    }
}

.menu__item--jobs-link .menu__link:hover .menu__text::after,
.menu__item--jobs-link .menu__link:focus-visible .menu__text::after {
    background-image: var(--custom-icon--magnifying-glass-black);
}

.menu__item--jobs-link .menu__link:hover .menu__text,
.menu__item--jobs-link .menu__link:focus-visible .menu__text {
    color: var(--color--black);
}

.menu__item--user-icon {
    margin-inline-end: 0.75rem;
    margin-inline-start: 2rem;
}

.menu__item--user-icon .menu__link {
    padding: var(--t-gs--space--xs);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.menu__item--user-icon .menu__text {
    display: none;
}

.menu__item--user-icon .menu__link::after {
    content: "";
    display: inline-flex;

    block-size: 2rem;
    inline-size: 2rem;

    background-size: contain;
    background-image: var(--custom-icon--user--normal);
}

.menu__item--user-icon .menu__link:hover::after,
.menu__item--user-icon .menu__link:focus-visible::after {
    background-image: var(--custom-icon--user--hover);
}

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

.menu__link[aria-expanded=true]:after,
.menu__link[aria-expanded=false]:after {
    color: var(--color--black);
    block-size: 2rem;
    inline-size: 2rem;
}

.menu--visible .menu__item--languages .menu__link {
    block-size: 3.6rem;
    padding-block: var(--t-gs--space--xxs);
    padding-inline: var(--t-gs--space--xs);
}
.menu--visible .menu__item--languages .menu__link:hover,
.menu--visible .menu__item--languages .menu__link:focus,
.menu--visible .menu__item--languages .menu__link:focus-visible {
    background-color: var(--color--loa);
}

.menu--visible .menu__item--languages .menu__link .menu__text {
    font-size: var(--t-gs--font--size--03);
    line-height: var(--line-height--2-0);
}

.thumbnail,
.FileField .photoInputPreview,
.FileField .photoPreviewUnselected:before,
.autoschedule_Availability_AvailableIcon,
.autoschedule_Availability_UnavailableIcon,
.autoschedule_Availability_BusyIcon,
.autoschedule_Availability_SelectedIcon {
    border: 0;
}

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

.menu--visible .menu__item.menu__item--profile {
    margin-inline-start: var(--t-gs--space--s2);
}

.menu--visible .menu__item.menu__item--profile .menu__link {
    gap: var(--t-gs--space--s);
}

.menu__thumbnail {
    display: inline-flex;

    block-size: 2.4rem;
    inline-size: 2rem;

    background-size: contain;
    background-image: var(--custom-icon--user--normal);
}

.menu__text {
    line-height: var(--line-height--1-8);
}

.menu--visible .menu__item.menu__item--profile:hover .menu__thumbnail,
.menu--visible .menu__item.menu__item--profile.menu__item--open .menu__thumbnail,
.menu--visible .menu__item.menu__item--profile .menu__link:focus .menu__thumbnail,
.menu--visible .menu__item.menu__item--profile .menu__link:focus-visible .menu__thumbnail {
    background-image: var(--custom-icon--user--hover);
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .menu__item--jobs-link .menu__link {
        block-size: 2.4rem;
        padding-block: 0.3rem;
    }

    .menu__item--jobs-link .menu__text {
        font-size: var(--t-gs--font--size--03);
    }

    .menu__item--user-icon {
        margin-inline-end: 0;
        margin-inline-start: var(--t-gs--space--s2);
    }
}

/*
    Footer
*/

.footer {
    border-block-start-width: 0;
}

.footer__links__item,
.footer__rights__copy,
.footer__links__divider {
    display: inline-block;
    line-height: var(--line-height--1-9);
}

.footer__links__divider {
    width: 0.1rem;
    color: var(--color--white);
}

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

@media (width <= 1024px) {
    .footer {
        font-size: var(--t-gs--font--size--04);
    }
}

@media (width >= 1025px) {
    .footer__links__divider {
        margin-inline: 1.9rem;
    }
}

@media (width >= 751px) {
    .footer__social__item+.footer__social__item {
        margin-inline-start: var(--t-gs--space--m);
    }
}

.footer__content + .footer__content {
    margin-block-start: 2rem;
}

.footer__social__item--x,
.footer__social__item--tiktok,
.footer__social__item--spotify,
.footer__social__item--youtube,
.footer__social__item--linkedin,
.footer__social__item--instagram {
    width: 3.4rem;
    height: 3.6rem;
    block-size: 3.6rem;
    line-height: var(--line-height--3-6);
    inline-size: 3.4rem;
    max-inline-size: 100%;
}

.footer__social__item--linkedin {
    background-size: contain;
    background-image: var(--custom-icon--linkedin--normal);
}
.footer__social__item--linkedin:hover,
.footer__social__item--linkedin:focus {
    background-image: var(--custom-icon--linkedin--hover);
}

.footer__social__item--instagram {
    background-size: contain;
    background-image: var(--custom-icon--instagram--normal);
}
.footer__social__item--instagram:hover,
.footer__social__item--instagram:focus {
    background-image: var(--custom-icon--instagram--hover);
}

.footer__social__item--tiktok {
    background-size: contain;
    background-image: var(--custom-icon--tiktok--normal);
}
.footer__social__item--tiktok:hover,
.footer__social__item--tiktok:focus {
    background-image: var(--custom-icon--tiktok--hover);
}

.footer__social__item--x {
    background-size: contain;
    background-image: var(--custom-icon--x--normal);
}
.footer__social__item--x:hover,
.footer__social__item--x:focus {
    background-image: var(--custom-icon--x--hover);
}

.footer__social__item--youtube {
    background-size: contain;
    background-image: var(--custom-icon--youtube--normal);
}
.footer__social__item--youtube:hover,
.footer__social__item--youtube:focus {
    background-image: var(--custom-icon--youtube--hover);
}

.footer__social__item--spotify {
    background-size: contain;
    background-image: var(--custom-icon--spotify--normal);
}
.footer__social__item--spotify:hover,
.footer__social__item--spotify:focus {
    background-image: var(--custom-icon--spotify--hover);
}

.footer__links__item,
.footer__links__divider,
.footer__social__item--x,
.footer__social__item--tiktok,
.footer__social__item--spotify,
.footer__social__item--youtube,
.footer__social__item--linkedin,
.footer__social__item--instagram {
    --t-tc--focus--outline--color: var(--color--white);
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .footer__wrapper {
        padding-inline-end: var(--t-gs--space--xl);
        padding-inline-start: var(--t-gs--space--xl);
    }

    .footer__content + .footer__content {
        flex-direction: column-reverse;
        margin-block-start: var(--t-gs--space--xxxl);
    }

    .footer__content + .footer__content .footer__social {
        flex-wrap: wrap;
        block-size: 8.8rem;
        inline-size: 13.4rem;
        align-items: stretch;
        align-content: space-between;
        justify-content: space-between;
        margin-block-end: var(--t-gs--space--xxxl);
        margin-block-start: 0;
    }

    .footer__content .footer__links {
        gap: var(--t-gs--space--m);
        width: 100%;
        flex-direction: column;
    }

    .footer__links__divider {
        visibility: hidden;
    }

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

    .footer__social__item + .footer__social__item.footer__social__item--x {
        margin-inline-start: 0;
    }

    .footer__links__divider-mobile {
        width: 100%;
        height: 0.1rem;
        line-height: 0.1rem;
        background-color: var(--color--white);
    }
}

/*
    Buttons
*/

.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 {
    line-height: var(--line-height--1-8);
    font-weight: var(--t-gs--font--weight--regular);
}

/*
    Steps
*/

.list--steps {
    margin-block-end: var(--t-gs--space--xxxl);
}

.list--steps .list__item__text__title {
    color: var(--color--black);
    line-height: var(--line-height--1-8);
    font-weight: var(--t-gs--font--weight--regular);
}

.list--steps:after,
.list--steps .list__item .list__item__text:after {
    border-radius: var(--t-gs--border--radius--s);
}

@media (width >= 751px) {
    .list--steps .list__item__text__subtitle {
        margin-block-start: 1rem;
    }
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .list--steps .list__item .list__item__text {
        margin-block-end: var(--t-gs--space--s2);
    }

    .list--steps .list__item__text__subtitle,
    .list--steps .list__item__text__subtitle span {
        line-height: var(--line-height--1-8);
    }

    .list--steps .list__item__text__subtitle span {
        display: inline-block;
    }
}

/*
    Titles/Paragraphs/List/Tables
*/

.title--h1,
.title--hero {
    line-height: var(--line-height--3-8);
}

.title--h2 {
    line-height: var(--line-height--3-4);
}

.title--h7 {
    line-height: var(--line-height--2-4);
}

.paragraph {
    padding-block-end: 0;
}

.paragraph,
.paragraph .link,
.list--bullet li {
    line-height: var(--line-height--2-0);
}

.paragraph .link {
    display: inline-block;
}

.tableField tbody tr td,
.tableField tbody tr th,
.tableField thead tr th,
.table--default tbody tr td,
.table--default tbody tr th,
.table--default thead tr th,
.table--default tbody tr td:last-child .link {
    line-height: var(--line-height--1-8);
}

.tableField thead tr th ,
.table--default thead tr th {
    border-block-end-color: var(--color--section--border);
}

.tableField,
.table--default {
    table-layout: fixed;
}

.tableField tbody tr td,
.table--default tbody tr > * {
    padding-block: 2.6rem;
}

.tableField tbody tr th,
.table--default tbody tr th {
    font-weight: var(--t-gs--font--weight--regular);
}

.preloader__icon,
.form__loader__icon {
    border-color: var(--color--loa);
    border-inline-end-color:var(--t-gs--color--border--transparent);
}

.body--profile .table--cards tbody tr>*,
.body--profile .table--cards tbody tr td:last-child .link,
.body--profile .table--cards tbody tr td[data-th]:nth-child(n+2):not(:last-child):before {
    font-size: 1.5rem;
}

.body--profile .table--cards tbody tr>:first-child {
    font-size: 1.8rem;
    block-size: 7.6rem;
    line-height: var(--line-height--2-2);
    font-weight: var(--t-gs--font--weight--extra-bold);
    padding-block: 2.6rem;
}

.body--profile .table--cards tbody tr td:last-child {
    padding-block: var(--t-gs--space--s2);
}

.body--profile .table--cards tbody tr td[data-th]:nth-child(n+2):not(:last-child):before {
    content: attr(data-th) ": ";
    display: inline-block;
    line-height: var(--line-height--2-0);
}

.body--profile .table--cards tbody tr td:nth-child(2) {
    display: block;
    block-size: inherit;
    padding-block-start: var(--t-tc--card--padding--outers);
    border-block-start-style: solid;
    border-block-start-width: var(--t-tc--card--border--width);
    border-block-start-color: var(--t-tc--card--border--color);

    padding-inline: var(--t-gs--space--m);
    padding-block-end: var(--t-gs--space--xs);
}

.body--profile .table--cards tbody tr td:nth-child(3) {
    border-block-start: 0;
    padding-block-start: calc(var(--t-tc--card--padding--inners) * .5);
}

/* Country / Application date: on mobile, hide it in the collapsed state and reveal it together with the other fields when the row is expanded, same as the base library already does for columns nth-child(n+3) */
.body--profile .table--cards:not(.table--cards--with-no-toggle) tbody tr:not(.table__row--open) td:nth-child(2) {
    display: none;
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .title--h1,
    .title--hero {
        font-size: 2.5rem;
        line-height: var(--line-height--3-0);
    }

    .title--h2 {
        font-size: 2.4rem;
        line-height: var(--line-height--2-9);
    }

    .title--h7,
    .paragraph {
        line-height: var(--line-height--1-8);
    }
}

/*
    Forms
*/

.labelRequiredIcon {
    color: var(--color--black);
}

.tc_formDescription a,
.delegate-widget__fieldSpec .description, .FormCompletionRequestHeaderDescription, .FormCompletionRequestFieldBorderDescription, .schema_field_MultipleDatasetEntryInput .FormField .FieldBorderDescription, .schema_field_MultipleDatasetEntryInput .description, .tc_formDescription, .tc_formDescription > div {
    line-height: var(--line-height--2-0);
}

.tc_formDescription a {
    display: inline-block;
}

.select2-results .select2-results__options .select2-results__option, .tc_formDescription > ul li,
.delegate-widget__fieldSpec__label, .form--login label, .form--methods label, .FormCompletionRequestFieldBorderLabel, .FormCompletionRequestFormTitle, .schema_field_MultipleDatasetEntryInput .FormField .FieldBorderLabel, .tc_formLabel, .table--default.table--in-wizard tbody tr td[data-th]:not(.table__td--action):before {
    line-height: var(--line-height--1-8);
}

.form select:not([multiple]), .body--ismobile.body--Safari .form input[type=date], .body--ismobile.body--Safari .form input[type=month], .ICO_components_input_date_MonthAndYearInput, .ICO_components_input_date_MonthAndDayInput, .uicore_advancedselect_BaseAdvancedSelect_AdvancedSelectDownArrow, .uicore_advancedselect_BaseAdvancedSelect_AdvancedSelectDownArrow:hover, .TimeInput, .dropdown__placeholder {
    background-position: right calc(var(--t-tc--fields__icon--width) - var(--t-gs--space--l)) center;
}

.select2-results .select2-results__options .select2-results__option {
    font-size: var(--t-gs--font--size--03);
}

.Separator .tc_formTitle {
    color: var(--color--black);
    font-size: 3.2rem;
    line-height: var(--line-height--3-8);
}

.datasetField__row {
    margin: 0;
    inline-size: 100%;
    border-radius: var(--t-gs--border--radius--s);
}

.datasetField .action--add {
    margin-inline-end: var(--t-gs--space--m);
}

.datasetField__row:not(.datasetField__row--sample) + .datasetField__row {
    margin-block-start: var(--t-gs--space--xl);
}

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

.addDatasetRow:hover, .RowEditorAddAnotherLink:hover, .action--add:hover,
.removeDatasetRow:hover, .removeFile:hover, [id*=dropboxRemove_]:hover, .fileInputCancelButton:hover, .action--remove:hover {
    color: inherit;
    border-bottom: 0.1rem solid var(--color--black);
}

.addDatasetRow, .removeDatasetRow, .removeFile, [id*=dropboxRemove_], .fileInputCancelButton, .RowEditorAddAnotherLink, .action {
    align-items: flex-end;
    justify-content: center;
}

.FileField .tc_formField>input[type=file],
.form--methods .fieldSpec input[type=file] {
    padding-block: 0.25rem;
}

.FileField .tc_formField>input[type=file]::file-selector-button {
    color: var(--color--black);
    border: 0.1rem solid var(--color--disabled-form-border);
    font-weight: var(--t-gs--font--weight--regular);
    border-radius: 0.5rem;
}

.FileField .tc_formField>input[type=file]::file-selector-button:hover {
    background-color: var(--color--section--background);
}

.TextField .description,
.TextField .tc_formDescription:not(:last-child) {
    padding-block-end: 0;
}

.TextField .tc_formDescription ul li {
    color: var(--color--black);
    line-height: var(--line-height--2-0);
}

.RadioButtonList .RadioButton label,
.RadioButtonListFormField .tc_formField .cb label,
.CheckBoxListFormField .tc_formField .cb-a11y label,
.ICO_components_input_CheckboxList .checkboxList .labeledCheckbox label {
    font-size: var(--t-gs--font--size--03);
    line-height: var(--line-height--1-8);
    font-weight: var(--t-gs--font--weight--bold);
}

.form input[type=radio],
.form input[type=checkbox] {
    line-height: var(--line-height--1-8);
    accent-color: var(--color--black);
}

.RadioButtonList .RadioButton,
.AcceptanceCheckboxField .tc_formField,
.RadioButtonListFormField .tc_formField .cb,
.CheckBoxListFormField .tc_formField .cb-a11y,
.ICO_components_input_CheckboxList .checkboxList .labeledCheckbox {
    align-items: flex-end;
}

.form textarea,
textarea.TIN_input_TextArea {
    padding-block-start: var(--t-gs--space--s);
}

.CurrencyField .CurrencyField_format label {
    display: block;
    padding-block-end: var(--t-tc--fieldSpec--padding--inners);
}

.AcceptanceCheckboxField:not(.hasErrors) .tc_formField:first-child .tc_formSublabel {
    line-height: var(--line-height--1-8);
    font-weight: var(--t-gs--font--weight--bold);
}

@media (width >= 1025px) {
    .fieldSpec.fieldSpec--files {
        inline-size: calc(30.1rem - (var(--t-gs--space--xl)));
    }

    .fieldSpec.fieldSpec--files {
        clear: inline-end;
        float: inline-start;
        padding-inline-end: var(--t-gs--space--xl);
    }

    .fieldSpec.fieldSpec--files:last-of-type {
        padding-inline-end: 0;
    }

    .fieldSpec.fieldSpec--files .tc_formDescription:not(:last-child) {
        min-block-size: 8.8rem;
    }
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .tc_formDescription a,
    .delegate-widget__fieldSpec .description, .FormCompletionRequestHeaderDescription, .FormCompletionRequestFieldBorderDescription, .schema_field_MultipleDatasetEntryInput .FormField .FieldBorderDescription, .schema_field_MultipleDatasetEntryInput .description, .tc_formDescription {
        line-height: var(--line-height--1-8);
    }

    .Separator .tc_formTitle {
        font-size: 2.5rem;
        line-height: var(--line-height--3-0);
    }

    .datasetField .action--add {
        margin-inline-end: 0;
    }

    .fieldSpec.fieldSpec--files {
        padding-block-end: var(--t-gs--space--xl);
    }

    .fieldSpec.fieldSpec--files:last-of-type {
        padding-block-end: var(--t-gs--space--l);
    }
}

/*
    Page: ApplicationMethods
*/

.body--application-methods :has(>*):not([aria-live=polite])~.section {
    margin-block-start: var(--t-gs--space--m);
}

.body--application-methods :has(>*):not([aria-live=polite])~.section + .section {
    margin-block-start: 8rem;
}

.body--application-methods :has(>*):not([aria-live=polite])~.section + .section .article__header + * {
    margin-block-start: var(--t-gs--space--l);
}

.body--application-methods :has(>*):not([aria-live=polite])~.section + .section .article__footer {
    margin-block-end: var(--t-gs--space--xl);
    margin-block-start: var(--t-gs--space--m);
}

.body--log-in .extra--section-bottom,
.body--application-methods .extra--section-bottom {
    background-color: var(--color--section--background);
    padding-block-start: var(--t-gs--space--xxxl);
}

.body--log-in .extra--section-bottom {
    padding-block-end: var(--t-gs--space--xxxl);
}

.body--application-methods .extra--section-bottom {
    padding-block-end: 6.4rem;
}

.body--log-in .extra--section-bottom .section--application-methods .article__header + *,
.body--application-methods .extra--section-bottom .section--application-methods .article__header + * {
    margin-block-start: var(--t-gs--space--xxl);
}

.body--application-methods .section--application-methods .grid--methods {
    margin: 0;
}

.body--application-methods .section--application-methods .grid--methods > .grid__item {
    padding: 0;
}

@media (width >= 751px) {
    .body--application-methods [class*="--w--narrower"] {
        max-inline-size: 64rem;
    }

    .body--application-methods .section--application-methods .article--methods > div {
        gap: var(--t-gs--space--xxxl);
        display: flex;
        row-gap: var(--t-gs--space--xxxl);
        column-gap: var(--t-gs--space--xxxl);
        flex-direction: column;
        justify-content: center;
    }

    .body--application-methods .section--application-methods .grid--methods {
        gap: var(--t-gs--space--xl);
        row-gap: var(--t-gs--space--xxxl);
        column-gap: var(--t-gs--space--xl);
        justify-content: center;
    }

    .body--application-methods .section--application-methods .grid--methods > .grid__item {
        flex: 0 0 19rem;
        max-inline-size: 19rem;
    }

    .body--application-methods .section--application-methods .grid--methods > .grid__item.list__item--linkedin > div {
        min-inline-size: 26.4rem;
        padding-inline-start: 4.4rem;
    }
}

:has(>*):not([aria-live=polite])~.section,
:has(>*)~div.hasPreloader>.section:first-of-type,
:has(>*)~templatebuilder-page-dropzone>.section:first-of-type {
    @media (max-width: 1025px) {
        & {
            margin-block-start: var(--t-gs--space--xxxl)
        }
    }
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .body--application-methods .section:first-of-type .section__content {
        margin-block-start: var(--t-gs--space--xl);
    }

    .body--application-methods :has(>*):not([aria-live=polite])~.section + .section {
        margin-block-start: var(--t-gs--space--xl);
    }

    .body--application-methods :has(>*):not([aria-live=polite])~.section + .section .article__footer {
        margin-block-end: var(--t-gs--space--m);
    }

    .body--log-in .extra--section-bottom,
    .body--application-methods .extra--section-bottom {
        padding-block-start: var(--t-gs--space--l);
    }

    .body--log-in .extra--section-bottom {
        padding-block-end: var(--t-gs--space--l);
    }

    .body--application-methods .extra--section-bottom {
        padding-block-end: var(--t-gs--space--xxxl);
    }

    .body--log-in .extra--section-bottom .section--application-methods .article__header,
    .body--application-methods .extra--section-bottom .section--application-methods .article__header {
        text-align: center;
    }

    .body--application-methods .section--application-methods .grid--methods {
        row-gap: var(--t-gs--space--l);
    }
}

/*
    Page: Register
*/

.body--register .section {
    margin-block: var(--t-gs--space--m);
}

.body--register .form:not(.form--grid) .fieldSpec + .button-bar {
    padding-block-start: var(--t-gs--space--l);
}

@media (width >= 751px) {
    .body--register:not(.body--application-confirmation) [class*="--w--narrow"] {
        max-inline-size: 80.8rem;
    }
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .body--register .form:not(.form--grid) .fieldSpec + .button-bar {
        padding-block-start: var(--t-gs--space--s);
    }
}

/*
    Page: Login
*/

@media (width >= 1025px) {
    .body--log-in .grid--dividers:has(.article--registered) {
        --t-tc--grid--dividers--width--min: 31.6rem;
    }
}

.body--log-in .grid--dividers>.grid__item>.article {
    min-inline-size: 100%;
    max-inline-size: 100%;
}

.form--login .comment,
.form--login .comment .link {
    display: inline-flex;
    font-size: 1.5rem;
    line-height: var(--line-height--2-0);
}

.form--login .comment .link {
    gap: var(--t-gs--space--s);
}

.form--login .comment .link::before {
    content: "";
    display: flex;
    block-size: 2rem;
    object-fit: contain;
    inline-size: 2rem;
    align-items: center;
    background-image: var(--custom-icon--link--normal);
}

.form--login .comment .link:hover::before {
    background-image: var(--custom-icon--link--hover);
}

.form--login .extraActions {
    padding-block-end: 0;
}

.body--log-in .list--social-login .list__item {
    margin-block-end: 0;
    margin-inline-end: var(--t-gs--space--xl);
}

.body--log-in .extra--section-bottom__wrapper--create {
    padding-block: var(--t-gs--space--xxxl);
}

.body--log-in .extra--section-bottom__wrapper--create .article__footer,
.body--log-in .extra--section-bottom__wrapper--create .article__header + * {
    margin-block-start: var(--t-gs--space--xl);
}

.body--log-in .social-login .list--bullet {
    margin-block-end: 0;
}

.body--log-in .social-login .list--bullet .list__item {
    line-height: var(--line-height--2-0);
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .body--log-in .article__header + * {
        margin-block-start: var(--t-gs--space--l);
    }

    .body--log-in .list--social-login {
        text-align: center;
    }

    .body--log-in .list--social-login .list__item {
        width: 100%;
        margin-inline-end: 0;
    }

    .body--log-in .list--social-login .list__item:not(:last-of-type) {
        margin-block-end: var(--t-gs--space--xl);
    }

    .body--log-in .extra--section-bottom__wrapper--create {
        padding-block: var(--t-gs--space--xl);
    }
}

/*
    Page: Error
*/

.body--error .article--error,
.body--forgot-password .article--password {
    margin-block-start: var(--t-gs--space--xxxl);
}

/*
    Page: Success
*/

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .body--forgot-password .article--password {
        margin-block-start: var(--t-gs--space--s);
    }

    .body--success .article--success .article__footer {
        margin-block-start: var(--t-gs--space--xxxl);
    }

    .body--success.body--toolbox .section--toolbox .title--h2 {
        margin-block-start: calc(-1 * var(--t-gs--space--s));
    }
}

/*
    Page: Profile
*/

.body--profile .extra--section-top {
    padding-block: var(--t-gs--space--xl);
    background-color: var(--color--loa);
    margin-block-end: var(--t-gs--space--m);
}

.body--profile .extra--section-top .navigation {
    gap: 6.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.body--profile .extra--section-top .navigation .link {
    font-size: 1.5rem;
    line-height: var(--line-height--2-0);
}

.body--profile .section__header + :not(templatebuilder-page-dropzone) {
    margin-block-start: var(--t-gs--space--xxxl);
}

.body--profile .article--details .article__header__text__title {
    font-size: 2.8rem;
    font-weight: var(--t-gs--font--weight--extra-bold);
}

.body--profile .article--details .article__header + .article__content {
    margin-block-start: var(--t-gs--space--l);
}

.body--profile .article--details .MultipleDataSetFieldLabel,
.body--profile .article--details .article__content__view__field__label,
.body--profile .article--details.regular-fields-label--inline .article__content__view__field__label + .article__content__view__field__value {
    font-size: 1.5rem;
    line-height: var(--line-height--2-0);
}

.body--profile .article--details.regular-fields-grid .article__content__view {
    display: grid;
    row-gap: var(--t-gs--space--s2);
    column-gap: var(--t-gs--space--xxxl);
    align-items: start;
    justify-items: stretch;
    grid-auto-flow: column;
    margin-block-end: 0;
    grid-template-rows: repeat(2, auto);
}

.body--profile .article--details.regular-fields-grid .article__content__view .MultipleDataSetField,
.body--profile .article--details.regular-fields-grid .article__content__view .article__content__view__field {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    align-content: center;
    padding-block-end: 0;
}

.body--profile .article--details + .article--details {
    padding-block-start: var(--t-gs--space--xxxl);
    border-block-start-color: var(--color--black);
}

.body--profile .attachments-wrapper .list__item__text__title {
    font-size: 1.5rem;
    line-height: var(--line-height--2-0);
}

.body--profile .list--attachments .list__item__actions {
    gap: var(--t-gs--space--s);
    color: var(--color--black);
    display: flex;
    align-items: baseline;
    justify-content: flex-start;
}

.body--profile .list--attachments .list__item__actions .link {
    line-height: var(--line-height--1-8);
}

.body--profile .list--attachments .list__item__actions .link--error {
    color: var(--color--error);
}

.body--profile .article--my-applications.article--table .title--h7 {
    font-weight: var(--t-gs--font--weight--extra-bold);
}

.body--profile .js_views + .article--my-applications {
    margin-block-start: var(--t-gs--space--l);
    padding-block-start: var(--t-gs--space--xxxl);

    border-block-start-style: solid;
    border-block-start-width: 0.1rem;
    border-block-start-color: var(--color--black)
}

.body--profile .article--my-applications + .article--my-applications {
    margin-block-end: var(--t-gs--space--xxxl);
    padding-block-end: var(--t-gs--space--xxxl);

    border-block-end-style: solid;
    border-block-end-width: 0.1rem;
    border-block-end-color: var(--color--black);
}

.body--profile .section__content--data .article__header__text__title,
.body--profile .view-section--communication .view-section--communication--title {
    font-size: 2rem;
    line-height: var(--line-height--2-4);
    font-weight: var(--t-gs--font--weight--bold);
}

.body--profile .view-section--files .list--attachments .list__item {
    font-size: 1.5rem;
    line-height: var(--line-height--2-0);
}

.body--profile .view-section--communication .view-section--communication--title {
    padding-block-end: 2rem;
}

.body--profile .view-section--communication .view-section--communication--subtitle {
    padding-block-end: var(--t-gs--space--s);
}

.body--profile .article--details.view-section--communication .article__content__view__field.view-section--communication--subtitle:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value>:not(.table) {
    font-size: 1.5rem !important;
    line-height: var(--line-height--2-0) !important;
    font-weight: var(--t-gs--font--weight--bold) !important;
}

.body--profile .view-section--communication .view-section--communication--option-one {
    padding-block-end: var(--t-gs--space--xxs);
}

.body--profile .view-section--communication .view-section--communication--option-one .article__content__view__field__label,
.body--profile .view-section--communication .view-section--communication--option-two .article__content__view__field__label {
    line-height: var(--line-height--2-0);
    font-weight: var(--t-gs--font--weight--regular);
}

.body--profile .view-section--communication .view-section--communication--option-one .article__content__view__field__value,
.body--profile .view-section--communication .view-section--communication--option-two .article__content__view__field__value {
    display: inline-block;
    line-height: var(--line-height--2-0);
    font-weight: var(--t-gs--font--weight--bold);
}

.body--profile .section__content--preferences {
    margin-block-start: 2rem;
}

.body--profile .section__content--preferences + .section__content--data {
    padding-block-end: var(--t-gs--space--l);
    margin-block-start: var(--t-gs--space--l);

    border-block-end-style: solid;
    border-block-end-width: 0.1rem;
    border-block-end-color: var(--color--black);
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .body--profile .extra--section-top {
        padding-block: var(--t-gs--space--s2);
        margin-block-end: 0;
        margin-block-start: var(--t-gs--space--s);
    }

    .body--profile .extra--section-top .navigation {
        row-gap: var(--t-gs--space--m);
        flex-wrap: wrap;
        column-gap: var(--t-gs--space--l);
        flex-direction: row;
        justify-content: flex-start;
    }

    .body--profile .section--profile-header .section__header {
        gap: var(--t-gs--space--l);
        align-items: normal;
        flex-direction: column;
        justify-content: center;
    }

    .body--profile .section__header + :not(templatebuilder-page-dropzone) {
        margin-block-start: var(--t-gs--space--l);
    }

    .body--profile .article--details .article__header__text__title {
        font-size: 2.4rem;
    }

    .body--profile .article--details .article__header + .article__content {
        margin-block-start: var(--t-gs--space--m);
    }

    .body--profile .article--details.regular-fields-grid .article__content__view {
        display: flex;
        row-gap: var(--t-gs--space--m);
        column-gap: inherit;
        flex-direction: column;
    }

    .body--profile .article--details + .article--details {
        padding-block-start: var(--t-gs--space--l);
    }

    .body--profile .js_views + .article--my-applications {
        padding-block-start: var(--t-gs--space--l);
    }

    .body--profile .article--my-applications + .article--my-applications {
        margin-block-end: var(--t-gs--space--l);
    }

    .body--profile .view-section--communication .view-section--communication--title {
        padding-block-end: var(--t-gs--space--m);
    }

    .body--profile .section__content--preferences {
        margin-block-start: var(--t-gs--space--l);
    }

    .body--profile .view-section--communication .view-section--communication--option-one .article__content__view__field__value,
    .body--profile .view-section--communication .view-section--communication--option-two .article__content__view__field__value {
        font-size: 1.4rem;
        line-height: var(--line-height--1-8);
    }

    .body--profile .section__content--data .article__header__text__title {
        font-size: 1.6rem;
        line-height: var(--line-height--1-9);
    }

    .body--profile .article--details.view-section--communication .article__content__view__field.view-section--communication--title:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value>:not(.table) {
        font-size: 1.6rem !important;
        line-height: var(--line-height--1-9) !important;
    }

    .body--profile .section--toolbox {
        margin-block-start: var(--t-gs--space--xl) !important;
    }

    .body--profile .view-section--languages .article__header + .article__content,
    .body--profile .view-section--work-history .article__header + .article__content,
    .body--profile .view-section--education-history .article__header + .article__content {
        margin-block-start: var(--t-gs--space--xl);
    }
}

/*
    Page: Profile Edit
*/

.body--profile-edit .article__header + * {
    margin-block-start: var(--t-gs--space--l);
}

@media (width >= 751px) {
    .body--profile-edit [class*="--w--narrow"] {
        max-inline-size: 90rem;
    }
}

/*
    Field: Availabilities table (built at runtime by js/specifics.js -> initAvailabilityTable())
    On Page: Profile Edit
*/

/* Hide the raw per-day checkbox columns before JS replaces them with a table, to avoid a flash of the old layout on load */
.body--profile-edit .separator--availabilities ~ .fieldSpec.CheckBoxListFormField.fieldSpecPadder {
    display: none;
}

.table--availabilities {
    overflow-x: auto;
    inline-size: 100%;
}

.table--availabilities th,
.table--availabilities td,
.table.table--availabilities thead tr th {
    text-align: center;
}

.table--availabilities tbody th {
    text-align: start;
    border-inline-end-style: solid;
    border-inline-end-width: var(--t-gs--border--width--s);
    border-inline-end-color: var(--color--section--border);
}

.table--availabilities tbody tr:not(:last-child) > * {
    border-block-end-style: solid;
    border-block-end-width: var(--t-gs--border--width--s);
    border-block-end-color: var(--color--section--border);
}

.availabilities-table__row-toggle .toggle__icon {
    display: none;
}

.availabilities-table__day-label,
.availabilities-table__row-toggle {
    display: none;
}

.availabilities-table__row-label {
    display: block;
    line-height: var(--line-height--1-8);
}

/* Media query to target only mobile: the table becomes an accordion, one card per time slot, matching the mobile mockup */
@media all and (max-width: 1025px) {
    .table--availabilities,
    .table--availabilities thead,
    .table--availabilities tbody,
    .table--availabilities tr,
    .table--availabilities th,
    .table--availabilities td {
        display: block;
    }

    /* The generic responsive-table behavior forces any row with non-empty cells back to display:table-row (.article--details .table tbody>tr:has(td:not(:empty))), which outweighs the block-level rule above; this table already provides its own mobile card layout, so it needs higher specificity to keep rows as block-level cards */
    .article--details.view-section--availability .table--default.table--availabilities tbody tr {
        display: block;
    }

    .table--availabilities thead {
        display: none;
    }

    .table--availabilities tbody tr {
        overflow: hidden;
        border-style: solid;
        border-color: var(--color--black);
        border-width: var(--t-tc--card--border--width);
        border-radius: var(--t-tc--card--border--radius);
        margin-block-end: var(--t-gs--space--l);
    }

    .table--availabilities tbody tr > :first-child {
        inline-size: 100%;
        block-size: 7.6rem;
        padding-block: 2.6rem;
    }

    .table--availabilities tbody .table__row--open > :first-child {
        border-block-end-style: solid;
        border-block-end-color: var(--color--black);
        border-block-end-width: var(--t-gs--border--width--s);
    }

    .table--availabilities tbody tr:last-of-type {
        margin-block-end: 0;
    }

    .table--availabilities tbody tr:not(:last-child) > * {
        border-block-end: none;
    }

    .table--availabilities tbody th {
        border-inline-end: none;
        padding: var(--t-tc--card--padding--outers);
    }

    .table--availabilities tbody td {
        display: none;
        text-align: start;
        padding-inline: var(--t-tc--card--padding--outers);
        padding-block: var(--t-gs--space--s);
    }

    .table--availabilities tbody tr.table__row--open td {
        gap: var(--t-gs--space--s);
        display: flex;
        align-items: center;
        padding-block: var(--t-gs--space--xs);
    }

    .table--availabilities tbody tr.table__row--open td:not(:last-child) {
        border-block: 0;
    }

    .table--availabilities tbody tr.table__row--open td:first-of-type {
        padding-block-start: var(--t-tc--card--padding--outers);
    }

    .table--availabilities tbody tr.table__row--open td:last-child {
        padding-block-end: var(--t-tc--card--padding--outers);
    }

    .availabilities-table__row-toggle {
        display: inline-flex;
        position: absolute;
        inset-inline-end: var(--t-tc--card--padding--outers);
        inset-block-start: var(--t-tc--card--padding--outers);
    }

    .availabilities-table__row-label {
        font-size: 1.8rem;
        line-height: var(--line-height--2-2);
        font-weight: var(--t-gs--font--weight--bold);
    }

    .availabilities-table__row-toggle .toggle__icon {
        display: var(--t-tc--icon--display);
        block-size: var(--t-gs--space--l);
    }

    .availabilities-table__day-label {
        cursor: pointer;
        display: inline-block;
        line-height: var(--line-height--1-8);
        font-weight: var(--t-gs--font--weight--bold);
    }

    .view-section--availability .availabilities-table__day-label {
        cursor: inherit;
    }

    .view-section--availability .availabilities-table__day-label::after {
        content: ":";
        margin-inline-end: var(--t-gs--space--xs);
        margin-inline-start: calc(-1 * var(--t-gs--space--xs));
    }

    .view-section--availability .table--availabilities tbody tr.table__row--open td {
        gap: var(--t-gs--space--xxs);
    }

    .view-section--availability .table--availabilities tbody tr.table__row--open td span {
        line-height: var(--line-height--2-0);
    }

    .table--availabilities tbody tr td:last-child {
        inline-size: 100%;
    }

    .table--availabilities tbody tr:last-child > :first-child {
        border-radius: 0;
    }

    /* The generic responsive-table behavior auto-adds its own toggle affordance to any table present at page load; this table already provides its own via .availabilities-table__row-toggle, so we hide the duplicate to avoid two chevrons per row */
    .view-section--availability .toggle--card {
        display: none;
    }
}

/*
    Sections: Work History / Education History / Languages
    On Page: Profile

    All three now render as raw, system-generated markup (not controlled by our templates): a series of
    <ul class="MultipleDataSetFields"> (one per entry, each entry's fields as label/value <li> pairs),
    separated by <br>.

    Work History fields: Position Title, Employer, Date Started, Date Ended.
    Education History fields: University, Degree, Major, Date Started, Date Finished, GPA.
    Languages fields: Language, Level.

    We restyle them here into cards: an icon + bold title, a subtitle line, and a combined date range where
    applicable, arranged in a grid.
*/

.view-section--languages .article__content__view__field__value,
.view-section--work-history .article__content__view__field__value,
.view-section--education-history .article__content__view__field__value {
    gap: 0 var(--t-gs--space--xxxl);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.view-section--languages .article__content__view__field__value br,
.view-section--work-history .article__content__view__field__value br,
.view-section--education-history .article__content__view__field__value br {
    display: none;
}

.view-section--languages .MultipleDataSetFields,
.view-section--work-history .MultipleDataSetFields,
.view-section--education-history .MultipleDataSetFields {
    margin: 0 0 var(--t-gs--space--l);
    list-style: none;
    border-block-end: 0
}

.view-section--languages .MultipleDataSetField,
.view-section--work-history .MultipleDataSetField,
.view-section--education-history .MultipleDataSetField {
    display: block;
    padding-block-end: 2rem;
}

.view-section--languages .MultipleDataSetField:last-of-type,
.view-section--work-history .MultipleDataSetField:last-of-type,
.view-section--education-history .MultipleDataSetField:last-of-type {
    padding-block-end: 0;
}

.view-section--languages .MultipleDataSetFieldLabel,
.view-section--work-history .MultipleDataSetFieldLabel,
.view-section--education-history .MultipleDataSetFieldLabel {
    clip: rect(0, 0, 0, 0);
    border: 0;
    margin: -0.1rem;
    padding: 0;
    overflow: hidden;
    position: absolute;
    block-size: 0.1rem;
    inline-size: 0.1rem;
    white-space: nowrap;
}

.view-section--languages .MultipleDataSetFieldValue,
.view-section--work-history .MultipleDataSetFieldValue,
.view-section--education-history .MultipleDataSetFieldValue {
    font-size: 1.5rem;
}

.body--profile .article--details .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldValue,
.article--details.view-section--languages .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldLabel,
.article--details.view-section--languages .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldValue,
.article--details.view-section--work-history .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldLabel,
.article--details.view-section--work-history .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldValue,
.article--details.view-section--education-history .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldLabel,
.article--details.view-section--education-history .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldValue {
    display: inline-block;
    line-height: var(--line-height--2-0) !important;
}

.article--details.view-section--languages .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldValue,
.article--details.view-section--work-history .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldValue,
.article--details.view-section--education-history .article__content__view__field:not(.article__content__view__field--not-format,.tf_skills) .article__content__view__field__value > :not(.table) .MultipleDataSetFieldValue {
    margin-block-start: 0;
}

/* Position Title / University: icon + bold title */
.view-section--languages .MultipleDataSetField:first-child,
.view-section--work-history .MultipleDataSetField:first-child,
.view-section--education-history .MultipleDataSetField:first-child {
    gap: var(--t-gs--space--s);
    display: flex;
    align-items: center;
    font-weight: var(--t-gs--font--weight--bold);
    justify-content: flex-start;
}

.view-section--work-history .MultipleDataSetField:first-child::before,
.view-section--education-history .MultipleDataSetField:first-child::before {
    content: "";
    display: inline-block;
    block-size: 2.4rem;
    inline-size: 2.4rem;

    flex-shrink: 0;

    background-size: contain;
    background-repeat: no-repeat;
}

.view-section--work-history .MultipleDataSetField:first-child::before {
    background-image: var(--custom-icon--work);
}

.view-section--education-history .MultipleDataSetField:first-child::before {
    background-image: var(--custom-icon--education);
}

/* Date Started + Date Ended / Date Finished: combined on a single line */
.view-section--work-history .MultipleDataSetField:nth-child(3),
.view-section--work-history .MultipleDataSetField:nth-child(4),
.view-section--work-history .MultipleDataSetField:nth-child(3) .MultipleDataSetFieldValue,
.view-section--work-history .MultipleDataSetField:nth-child(4) .MultipleDataSetFieldValue,
.view-section--education-history .MultipleDataSetField:nth-child(4),
.view-section--education-history .MultipleDataSetField:nth-child(5),
.view-section--education-history .MultipleDataSetField:nth-child(4) .MultipleDataSetFieldValue,
.view-section--education-history .MultipleDataSetField:nth-child(5) .MultipleDataSetFieldValue {
    display: inline;
}

.view-section--work-history .MultipleDataSetField:nth-child(3)::after,
.view-section--education-history .MultipleDataSetField:nth-child(4)::after {
    display: inline;
    content: " - ";
}

/* Education History: hide Major and GPA, they're not part of this card design */
.view-section--education-history .MultipleDataSetField:nth-child(3),
.view-section--education-history .MultipleDataSetField:nth-child(6) {
    display: none;
}

/* Media query to target only mobile: collapse the multi-column grid to a single column for readability */
@media all and (max-width: 750px) {
    .view-section--languages .article__content__view__field__value,
    .view-section--work-history .article__content__view__field__value,
    .view-section--education-history .article__content__view__field__value {
        row-gap: var(--t-gs--space--m);
        grid-template-columns: 1fr;
    }
}

/*
    Section: Toolbox
    On Pages: Profile / Success
*/

.body--toolbox:not(.body--profile) .section--toolbox {
    margin-block-start: 8rem;
}

.body--profile .section--toolbox {
    margin-block-start: var(--t-gs--space--xxxl);
}

.body--toolbox .section--toolbox .title--h2 {
    font-size: 2.8rem;
}

.body--toolbox .section--toolbox .section__header__text .section__header__text__subtitle {
    margin-block-start: var(--t-gs--space--m);
}

.body--toolbox .section--toolbox .section__header__text .section__header__text__subtitle,
.body--toolbox .section--toolbox .section__header__text .section__header__text__subtitle strong {
    line-height: var(--line-height--2-0);
}

.body--toolbox .section--toolbox .title--h2,
.body--toolbox .section--toolbox .section__header__text .section__header__text__subtitle strong {
    font-weight: var(--t-gs--font--weight--extra-bold);
}

.body--toolbox .section--toolbox .grid {
    gap: var(--t-gs--space--xl);
    margin: 0;
}

.body--toolbox .section--toolbox .grid > .grid__item {
    padding: 0;
}

.body--toolbox .section--toolbox .section__header + :not(templatebuilder-page-dropzone) {
    margin-block-start: var(--t-gs--space--l);
}

.body--toolbox .section--toolbox .section__content .article__header__image,
.body--toolbox .section--toolbox .section__content .article__header__image img {
    margin: 0;
    block-size: 100%;
    inline-size: 100%;
}

.body--toolbox .section--toolbox .section__content .article__content .paragraph {
    display: flex;
}

.body--toolbox .section--toolbox .section__content .article__content .paragraph .link {
    gap: var(--t-gs--space--s);
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.body--toolbox .section--toolbox .section__content .article__content .icon--external-link {
    display: block;
    block-size: 2rem;
    object-fit: contain;
    inline-size: 2rem;
    background-image: var(--custom-icon--link--normal);
}

.body--toolbox .section--toolbox .section__content .article__content .link:hover .icon--external-link,
.body--toolbox .section--toolbox .section__content .article__content .link:focus .icon--external-link {
    background-image: var(--custom-icon--link--hover);
}

.body--toolbox .section--toolbox .section__content .article__footer {
    margin-block-start: var(--t-gs--space--s2);
}

.body--toolbox .section--toolbox .article__header__image {
    overflow: hidden;
    position: relative;
    aspect-ratio: 4 / 3;
}

.body--toolbox .section--toolbox .article__header__image__accent {
    position: absolute;
    inset-inline-end: 0;
    inset-block-start: 0;

    block-size: 32rem;
    inline-size: 30rem;

    background-color: var(--color--loa);
    border-end-end-radius: 12rem;
}

.body--toolbox .section--toolbox .article__header__image picture {
    inset: 0.6rem;
    display: block;
    position: absolute;

    block-size: calc(100% - 1.2rem);
    inline-size: calc(100% - 1.2rem);
}

.body--toolbox .section--toolbox .article__header__image picture img {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
}

/* Media query to target only mobile */
@media all and (max-width: 1025px) {
    .body--toolbox .section--toolbox {
        margin-block-end: var(--t-gs--space--s);
    }

    .body--toolbox .section--toolbox * + .section__header__text__subtitle {
        margin-block-start: var(--t-gs--space--xs);
    }

    .body--toolbox .section--toolbox .article__header__image__accent {
        block-size: 23.6rem;
        inline-size: 18rem;
    }

    .body--toolbox .section--toolbox .section__header__text .section__header__text__subtitle strong {
        display: block;
        line-height: var(--line-height--1-9);
        margin-block-end: var(--t-gs--space--xs);
    }

    .body--toolbox .section--toolbox .section__header__text .section__header__text__subtitle {
        line-height: var(--line-height--1-8);
    }
}

/*
    Page: Manage Your Data / Communication Preferences
*/

.body--manage-your-data .section__content .article {
    margin-block-start: var(--t-gs--space--xxxl);
}

.body--manage-your-data .article__header + * {
    margin-block-start: var(--t-gs--space--l);
}

.body--manage-your-data .article__footer {
    margin-block-start: var(--t-gs--space--s);
}

.body--communication-preferences .title {
    font-size: 2.8rem;
    font-weight: var(--t-gs--font--weight--extra-bold);
}

.body--communication-preferences .article__header + * {
    margin-block-start: var(--t-gs--space--xl);
}

.body--modal .main__wrapper {
    padding: var(--t-gs--space--xxxl);
}

/* Media query to target only mobile */
@media all and (max-width: 750px) {
   .body--modal .main__wrapper {
        padding: var(--t-gs--space--l);
    }

    .body--communication-preferences .title {
        font-size: 2.4rem;
    }

    .body--communication-preferences .article__header + * {
        margin-block-start: var(--t-gs--space--l);
    }
}

/*
    Component: Dialog
*/

.ui-dialog .ui-dialog-titlebar {
    border-bottom-color: var(--color--black);
    --dividers--border--color: var(--color--black);
}

.ui-dialog .ui-dialog-title {
    font-size: 2.8rem;
    line-height: var(--line-height--3-4);
    font-weight: var(--t-gs--font--weight--extra-bold);
}

.ui-dialog * + .ui-dialog-content p {
    font-size: 1.5rem;
    line-height: var(--line-height--2-0);
}

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

    .ui-dialog * + .ui-dialog-buttonpane {
        padding-top: var(--t-gs--space--l);
        --modal--padding--outers--v: var(--t-gs--space--l);
    }
}
