/* ==========================================================================
    LAYOUTS
    -------------------------------------------------------------------------
    Section (Override/complement)

    ELEMENTS
    -------------------------------------------------------------------------
    XXX

    COMPONENTS
    -------------------------------------------------------------------------
    XXX

    WIDGETS
    -------------------------------------------------------------------------
    Forms (Override/complement)
      : Boxed (New)

    MODULES
    -------------------------------------------------------------------------
    Banner

    PAGETYPES
    -------------------------------------------------------------------------
    XXX

    UTILITIES
    -------------------------------------------------------------------------
    XXX
========================================================================== */

/*
    LAYOUTS/Section (Override/complement)
*/

* + .section__header__text__subtitle {
    margin-top: var(--spacer--m);
}

* + .section__header__text__paragraph {
    margin-top: var(--spacer--m);
}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .section__header__text__subtitle {
        font-size: 1.8rem;
    }

}

/*
    ELEMENTS/XXX
*/

/*
    COMPONENTS/Header
*/

.header {
    border-bottom: solid 1px var(--buttons--border--color);
}

.menu__link:after {
    font-size: 1.8rem;
}

.menu__text {
    font-size: 1.8rem;
    font-weight: bold;
    font-stretch: condensed;
}

.menu--visible .menu__link[aria-haspopup="true"][aria-expanded="true"], .menu--visible .menu__item:hover .menu__link[aria-haspopup="true"] {
    --menu__link--border--color: transparent;
    color: var(--color--clickeable);
}

.menu__link[aria-expanded=true]:after, .menu__item:hover .menu__link[aria-haspopup="true"]::after {
    color: var(--color--clickeable);
}

.menu--visible .menu__item:hover .menu__link[aria-haspopup=true] {
    box-shadow: none;
    border-bottom-color: transparent;
}

.menu--visible .menu__item:hover .menu__link[aria-haspopup=true]+.submenu__list--overflows-not, .menu--visible .menu__link[aria-haspopup=true][aria-expanded=true]+.submenu__list--overflows-not {
    top: 6.5rem;
}

.portalLanguages__link, .submenu__link {
    color: var(--color--clickeable);
    font-size: 1.8rem;
    font-stretch: condensed;
}

.menu--visible .submenu__item:not([aria-current="page"]):hover .submenu__link {
    color: var(--color--white);
}

.menu--visible .submenu__list {
    box-shadow: none;
    border-color: var(--buttons--border--color);
}

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

@media (max-width: 1025px) {
    :root {
        --header--height: 6.8rem;
    }

    .header__logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .menu__link {
        color: var(--color--font--alt);
    }

    .portalLanguages__link, .submenu__link {
        color: var(--color--font--alt);
    }

    .menu__link[aria-expanded=true]:after, .menu__item:hover .menu__link[aria-haspopup="true"]::after {
        color: var(--color--font--alt);
    }
}

/*
    COMPONENTS/Main
*/

.main .link {
    color: var(--color--brand--sub-1);
}

/*
    COMPONENTS/Footer
*/


/*
    MODULES/Footer (New)
*/

.footer {
    background: var(--color--footer--gradient);
    border: none;
}

.footer__content {
    flex-direction: column;
    padding-block: calc(7rem - var(--footer--padding--top));
}

.footer__divider {
    margin-block: 2.6rem;
    width: 100%;
    height: .1rem;
    background: var(--color--white);
}

.footer__social__item {
    width: 2.5rem;
    height: 2.5rem;
}

.footer__links {
    gap: 6.4rem;
}

.footer__links__item {
    color: var(--color--white);
    font-family: var(--font--alt);
    font-size: 1.8rem;
    font-weight: normal;
    font-stretch: condensed;
}

.footer__social__item+.footer__social__item {
    margin-left: 3.4rem;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .footer__content {
        padding-block: calc(4rem - var(--footer--padding--top));
    }

    .footer__social__item {
        width: 2rem;
        height: 2rem;
    }

    .footer__social__item+.footer__social__item {
        margin-left: var(--spacer--xl);
    }

    .footer__divider {
        margin-block: 2.4rem;
    }

    .footer__links {
        gap: var(--spacer--l);
        flex-direction: column;
        align-items: baseline;
        margin-right: auto;
        margin-left: var(--spacer--xl);
    }

    .footer__links__item {
        line-height: normal;
        font-weight: var(--font--weight--regular);
    }
}

/*
    WIDGETS/Forms (Override/complement)
*/

.Separator {
    margin-bottom: var(--spacer--m);
}

/* Media query to target mobile and tablet */
@media all and (max-width:1024px) {
    .Separator > legend {
        font-size: 2.2rem;
    }

}

/* Media query to target only desktop */
@media all and (min-width:1025px) {
    .Separator > legend {
        font-size: 2.6rem;
    }

}

/*
    WIDGETS/Forms: Boxed (New)
*/

.form--boxed {
    box-shadow: none;
    border-color: transparent;
    background-color: transparent;
}

/* Media query to target only mobile */
@media all and (max-width:750px) {
    .form--boxed {
        padding: var(--spacer--m);
    }

}

/* Media query to target tablet and desktop */
@media all and (min-width:751px) {
    .form--boxed {
        padding: var(--spacer--l);
    }

}

/*
MODULES/Banner (New)
*/

.banner--main {
    background-image: var(--banner--background--image);
}

/*
MODULES/Banner: Pages
*/

.banner--error {
    background-image: var(--banner--background--image--error);
}

.banner--success {
    background-image: var(--banner--background--image--success);
}

.banner--cookies {
    background-image: var(--banner--background--image--cookies);
}

/*
    MODULES/Cookies: Video unabled
*/

.embed-container {
    background-image: var(--cookie--video--unabled);
    background-size: contain;
}

.body iframe[data-type="document"] {
    background-color: var(--color--grey--medium);
    background-image: var(--cookie--document--unabled); /* if the image is disabled or not define, we set a back-color before to show instead */
    background-size: cover;
    background-position: center;
}

/*
    MODULES/Calendar
*/

.SchedulingField .schedulerWidget, .SchedulingField .tc_formField {
    display: flex;
    justify-content: space-between;
}

.datepicker-skin-scheduling {
    width: 46%;
}

.results {
    width: 46%;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-next span:before, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-prev span:before {
    color: var(--color--brand--sub-1);
    font-size: 1.2rem;
    font-weight: bold;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-header .ui-datepicker-title {
    font-size: 2.4rem;
    font-weight: bold;
    font-stretch: condensed;
    color: var(--color--font);
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar th {
    background-image: linear-gradient(to bottom, #ee3035 0%, #ad122a 100%);
    color: var(--color--white);
    font-size: 1.6rem;
    font-weight: bold;
    font-stretch: normal;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td {
    font-family: BakerMcKenzieBernini;
    font-size: 1.6rem;
    font-weight: normal;
    font-stretch: condensed;
    color: var(--color--font);
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a.ui-state-active {
    font-weight: normal;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td a.ui-state-hover, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td span.ui-state-hover {
    background-color: var(--color--brand--sub-1);
    color: var(--color--white);
    text-decoration: none;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.selectable-day a {
    text-decoration: none;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-current-day a.ui-state-active {
    background-color: var(--color--darkRed);
    color: var(--color--white);
    font-weight: bold;
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a:not(.ui-state-active):after, .datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today span:not(.ui-state-active):after {
    border: solid 0.2rem var(--buttons--border--color);
}

.datepicker-skin-scheduling .ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a:hover {
    color: var(--color--white);
}

.ButtonBarField [class*=Button], .button {
    text-transform: uppercase;
}

.SchedulingField .schedulerWidget .results .availability, .SchedulingField .tc_formField .results .availability {
    border-bottom: .1rem solid var(--color--black);
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem .allDay, .SchedulingField .schedulerWidget .results .resultsList .resultItem .location, .SchedulingField .schedulerWidget .results .resultsList .resultItem .time, .SchedulingField .tc_formField .results .resultsList .resultItem .allDay, .SchedulingField .tc_formField .results .resultsList .resultItem .location, .SchedulingField .tc_formField .results .resultsList .resultItem .time {
    font-family: BakerMcKenzieBernini;
    font-size: 1.6rem;
    font-weight: normal;
    font-stretch: condensed;
    font-style: normal;
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem, .SchedulingField .tc_formField .results .resultsList .resultItem {
    border-bottom: none;
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem:hover, .SchedulingField .tc_formField .results .resultsList .resultItem:hover {
    background-color: var(--color--brand--sub-1);
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem.selected, .SchedulingField .tc_formField .results .resultsList .resultItem.selected {
    background-color: var(--color--darkRed);
}

.SchedulingField .schedulerWidget .results .resultsList .resultItem .location, .SchedulingField .tc_formField .results .resultsList .resultItem .location {
    display: none;
}

@media all and (max-width:750px) {
    .SchedulingField .schedulerWidget, .SchedulingField .tc_formField {
        display: block;
    }

    .datepicker-skin-scheduling {
        width: 100%;
    }

    .results {
        width: 100%;
        margin-top: 2.4rem;
    }
}

/*
    MODULES/Ui Dialog
*/

.ui-widget-header {
    border: none;
    background: transparent;
    color: var(--color--grey--darkest);
    font-family: BakerMcKenzieBernini;
    font-size: 4.8rem;
    font-weight: bold;
    font-stretch: condensed;
    font-style: normal;
    line-height: 1.06;
    letter-spacing: normal;
    text-align: left;
}

.ui-dialog .ui-dialog-title {
    white-space: normal;
}

.ui-dialog .ui-dialog-content {
    padding: 1.6rem 0;
    font-family: BakerMcKenzieBernini;
    font-size: 1.8rem;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    text-align: left;
    color: var( --color--grey--darkest);
}

.ui-dialog .ui-dialog-titlebar {
    border-bottom: 0.1rem solid var(--buttons--border--color);
    padding: 1.6rem 0;
}

.ui-button.ui-dialog-titlebar-close {
    position: absolute;
    top: 0;
}

@media all and (max-width:750px) {
    .ui-widget-header {
        font-size: 2.8rem;
        line-height: 1.11;
    }

    .ui-dialog .ui-dialog-titlebar {
        padding: 0 0 1.6rem 0;
    }
}

/*
    PAGETYPES/Login
*/

.body--login .main {
    background: linear-gradient(to bottom, #ee3035 0%, #ad122a 62%);
}

/*
    PAGETYPES/Success
*/

.article--success .article__header__image {
    height: 8rem;
}

@media (min-width: 751px) {
    .article__header:not(.article__header--center) .article__header__image {
        margin-right: 0;
    }
}

/*
    PAGETYPES/Error
*/

.article--error .article__header__image {
    height: 8rem;
}

/*
    UTILITIES/XXX
*/
