/*--------------------------------------------------------------
# Variables
--------------------------------------------------------------*/

:root {
    --red: #9C0D38;
    --lightred: #b34660;
    --dark-grey: #2B2C28;
    --blue: #6B818C;
    --dark-blue: #4d5f68;
    --silver: #E7E7E3;
    --grey-text: #D5D5D5;
    --grey-text-dark: #B6B6B6;
    --grey-border: #E5E5E5;
    --grey-placeholder: #757575;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 600;
}



/*--------------------------------------------------------------
# Fonts
--------------------------------------------------------------*/

/* cabin-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Cabin';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/cabin-v27-latin-regular.eot'); /* IE9 Compat Modes */
    src: url('../fonts/cabin-v27-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-v27-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../fonts/cabin-v27-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
    url('../fonts/cabin-v27-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
    url('../fonts/cabin-v27-latin-regular.svg#Cabin') format('svg'); /* Legacy iOS */
}
/* cabin-500 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Cabin';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/cabin-v27-latin-500.eot'); /* IE9 Compat Modes */
    src: url('../fonts/cabin-v27-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-v27-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../fonts/cabin-v27-latin-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
    url('../fonts/cabin-v27-latin-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
    url('../fonts/cabin-v27-latin-500.svg#Cabin') format('svg'); /* Legacy iOS */
}
/* cabin-600 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Cabin';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/cabin-v27-latin-600.eot'); /* IE9 Compat Modes */
    src: url('../fonts/cabin-v27-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-v27-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../fonts/cabin-v27-latin-600.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
    url('../fonts/cabin-v27-latin-600.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
    url('../fonts/cabin-v27-latin-600.svg#Cabin') format('svg'); /* Legacy iOS */
}
/* cabin-700 - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Cabin';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/cabin-v27-latin-700.eot'); /* IE9 Compat Modes */
    src: url('../fonts/cabin-v27-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-v27-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
    url('../fonts/cabin-v27-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
    url('../fonts/cabin-v27-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
    url('../fonts/cabin-v27-latin-700.svg#Cabin') format('svg'); /* Legacy iOS */
}




/*--------------------------------------------------------------
# Globals
--------------------------------------------------------------*/

body {
    background-color: var(--silver);
    font-family: 'Cabin', sans-serif;
    font-weight: 300;
    height: 100%;
    display: flex;
    flex-direction: column;
}



.container,
.container-xl,
.container-fluid {
    padding-left: 20px;
    padding-right: 20px;
}

.container-xl.no-gap {
    padding: 0;
}

@media (min-width: 1400px) {
    .container-xl {
        max-width: 1340px;
    }
}





/* Disable scrolling (for menus) */
.disable-scroll {
    overflow: hidden;
}
.anchor {
    display: block;
    -ms-transform: translateY(-90px);
    -webkit-transform: translateY(-90px);
    transform: translateY(-90px);
}




/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

.header-wrapper {
    top: 0;
    left: 0;
    padding: 1.25rem;
    z-index: 999;
    width: 100%;
    position: fixed;
    transition: transform 300ms;
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}


/* Header buttons */

.header-btn-wrapper {
    display: flex;
    gap: 0.5rem;
}



/* I don't think that's right */

/*body.scrolled-semi .header-btn-wrapper .button.bg-silver {*/
/*    background: #000;*/
/*    color: #FFFFFF;*/
/*}*/
/*body.scrolled-semi .header-btn-wrapper .button.has-icon svg {*/
/*    fill: #FFFFFF;*/
/*}*/





body.contrast-grey:not(.sidebar-open) .header-btn-wrapper .button.bg-silver {
    background: #000;
    color: #FFFFFF;
}
body.contrast-grey:not(.sidebar-open) .header-btn-wrapper .button.has-icon svg {
    fill: #FFFFFF;
}


.menu-wrap.main-menu .menu-wrap-btn-wrapper {
    display: none;
}


/* Header logo */

.header-logo svg,
.header-logo svg path {
    transition: fill 300ms;
}

.header-logo .svg-group-text {
    transform-origin: 0 50%;
    transition: transform 350ms;
}

body.scrolled .header-logo .svg-group-text {
    transform: scale(0);
}

.header-logo.logo-wrap,
.header-logo.logo-wrap svg {
    overflow: visible;
}

.header-logo svg,
.header-logo svg path {
    fill: white;
}

body.contrast-grey .header-logo svg,
body.contrast-grey .header-logo svg path {
    fill: #000;
}

body.banner-hidden .header-logo svg,
body.banner-hidden .header-logo svg path {
    fill: #000;
}

/*body.scrolled-semi .header-logo svg,*/
/*body.scrolled-semi .header-logo svg path {*/
/*    fill: #000;*/
/*}*/




/*--------------------------------------------------------------
# Logo
--------------------------------------------------------------*/

.logo-wrap {
    display: block;
    position: relative;
    overflow: hidden;
    width: 225px;
}
.logo-wrap>.logo {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
}
.logo-wrap>.logo.no-text {
    display: none;
}




/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

body.footer-in-viewport .open-filters-toggle,
body.footer-in-viewport .apply-card-toggle {
    transform: translateY(calc(100% + 1rem));
}

.footer-wrapper {
    position: relative;
    color: #FFFFFF;
    margin-top: auto;
    font-size: 0.95rem;
    z-index: 450;
}
.footer-wrapper .footer-wrap {
    background: var(--red);
    padding: 100px 0 0 0;
    position: relative;
}

.footer-wrapper .footer-wrap:before {
    content: '';
    display: block;
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center center;
    background-image: url('/images/svg/shape-footer.svg');
    pointer-events: none;
    width: 100%;
    height: 100%;
}

.footer-wrapper .footer-wrap-statements {
    background-color: #FFFFFF;
    color: var(--red);
    padding: 15px 0;
    font-size: 0.875rem;
}

.footer-wrapper .footer-wrap-statements-inner {
    display: block;
}

.footer-wrapper .footer-wrap-statements-inner a:hover {
    color: #000;
}


.footer-wrapper .copyright-menu {
    display: inline-block;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-wrapper .copyright-menu > li {
    display: inline-block;
    vertical-align: top;
}

.footer-wrapper .copyright-label {
    display: block;
    margin: 15px 0 0;
}

.footer-wrapper .copyright-label p {
    margin: 0;
}

@media all and (min-width: 768px) {


    .footer-wrapper .copyright-label {
        display: inline-block;
        margin: 0 20px 0 0;
        float: left;
    }



}

/*.footer-wrapper .footer-wrap-statements-inner:hover a:not(:hover) {*/
/*    color: green;*/
/*}*/

.footer-wrapper .footer-wrap-statements-inner a {
    transition: opacity 200ms;
}

.footer-wrapper .footer-wrap-statements-inner p:not(:last-child),
.footer-wrapper .footer-wrap-statements-inner li:not(:last-child) a {
    position: relative;
    margin: 0 10px 0 0;
    padding-right: 10px;
}
.footer-wrapper .footer-wrap-statements-inner a:hover {
    text-decoration: none;
    opacity: 1;
}

.footer-wrapper .footer-wrap-statements-inner p:after,
.footer-wrapper .footer-wrap-statements-inner li:not(:last-of-type) a:after {
    content: '';
    display: inline-block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: var(--red);
    height: 1rem;
    width: 1px;
}





/*.footer-wrapper .footer-wrap-statements-inner p:after,*/
/*.footer-wrapper .footer-wrap-statements-inner a:not(:last-of-type):after {*/
/*    content: '';*/
/*    display: inline-block;*/
/*    height: 1rem;*/
/*    width: 1px;*/
/*    top: 50%;*/
/*    transform: translateY(-50%);*/
/*    position: relative;*/
/*    background: var(--red);*/
/*    left: 5px;*/
/*}*/

.footer-content {
    display: flex;
    gap: 7.5rem;
}

.footer-content .footer-block {
    z-index: 1;
}

.footer-content .footer-block h2 {
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 100;
}

.footer-content .footer-contact {
    margin-left: auto;
}
.footer-content .footer-contact p,
.footer-content .footer-contact .footer-contact-link {
    margin-bottom: 0;
    padding: 5px 0;
}
.footer-content .footer-contact a {
    display: block;
    transition: transform 200ms;
}
.footer-content .footer-contact .footer-contact-link span {
    display: inline-block;
    transition: transform 200ms;
}

.footer-content .footer-contact .footer-contact-link:hover > span {
    text-decoration: none;
    transform: translateX(10px);
}


/* Footer logo */

.footer-logo {
    margin: 0 auto;
    padding: 6.5rem 0 2rem 0;
    width: 65px;
}
.footer-logo svg {
    transition: transform 200ms;
}
.footer-logo a:hover svg {
    transform: translateY(-7px);
}
.footer-logo svg {
    fill: #FFFFFF;
}


/*--------------------------------------------------------------
# Social media
--------------------------------------------------------------*/

.socials-wrap ul li svg {
    transition: transform 200ms;
}

.socials-wrap ul li:hover svg {
    transform: translateY(-5px);
}


/*--------------------------------------------------------------
# Menu
--------------------------------------------------------------*/

.menu-wrap.styled:not(.main-menu) {
    display: block;
    position: relative;
}
.menu-wrap.styled ul.menu {
    display: inline-block;
    position: relative;
    list-style: none;
    padding: 0;
    margin: 0;
}
.menu-wrap.styled ul.menu li {
    display: block;
    position: relative;
    padding: 5px 0;
}
.menu-wrap.styled ul.menu li > a:not(.button) {
    display: inline-block;
    position: relative;
    text-transform: uppercase;
    text-decoration: none;
}




/*--------------------------------------------------------------
# Main menu
--------------------------------------------------------------*/

.menu-wrapper {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 420;
    height: 100vh;
    color: #fff;
}


.menu-wrap.styled.main-menu .menu-inner {
    position: relative;
    margin-right: 0;
    transition: margin-right 250ms;
    text-align: right;
}

.menu-wrap.styled.main-menu ul.menu li a:not(.button) {
    font-weight: 500;
    font-size: 1.95rem;
    padding: 1rem 0;
}
.menu-wrap.styled ul.menu li a:not(.button) {
    transition: opacity 200ms ease-in-out, color 200ms ease-in-out, transform 200ms;
}

.menu-wrap.styled.main-menu ul.menu li a:not(.button):hover {
    transform: translateX(-20px);
}
.menu-wrap.styled:not(.main-menu) ul.menu li a:not(.button):hover {
    transform: translateX(20px);
}

.menu-wrap.styled.opacity:hover ul.menu li a:not(.button) {
    opacity: 0.25;
}
.menu-wrap.styled.opacity ul.menu li a:not(.button):hover {
    opacity: 1;
}

.menu-wrap.styled.theme-red ul.menu:hover li:not(:hover):not(.active) a:not(.button) {
    color: #ff9595;
}





/*--------------------------------------------------------------
# Overlay
--------------------------------------------------------------*/

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.5);
    z-index: 748;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(10px);
    visibility: hidden;
    opacity: 0;
    transition: opacity 200ms;
}

body.has-overlay .overlay {
    visibility: visible;
    opacity: 1;
}




/*--------------------------------------------------------------
# Back to to overview link
--------------------------------------------------------------*/

body.ready .back-to-overview-link {
    transition: 200ms;
}

.back-to-overview-link {
    margin: 3.5rem 0;
    text-transform: uppercase;
    align-items: center;
    display: inline-block;
    font-size: 0.9rem;
    color: #000;
}

.back-to-overview-link:not(.static):hover {
    fill: #9c0d38;
}

.back-to-overview-link svg {
    width: 1.05rem;
    height: 1.05rem;
    margin-right: 0.85rem;
}

.back-to-overview-link a,
.back-to-overview-link .button.link,
.back-to-overview-link svg {
    vertical-align: middle;
    color: currentColor;
}

.back-to-overview-link svg,
.back-to-overview-link svg path {
    fill: currentColor;
}




/*--------------------------------------------------------------
# Columns
--------------------------------------------------------------*/

.row.gap-medium {
    margin-left: -20px;
    margin-right: -20px;
}
.row.gap-medium > div {
    padding-left: 20px;
    padding-right: 20px;
}
.row.gap-large {
    margin-left: -30px;
    margin-right: -30px;
}
.row.gap-large > div {
    padding-left: 30px;
    padding-right: 30px;
}





/*--------------------------------------------------------------
# Media querys
--------------------------------------------------------------*/

@media all and (max-width: 1200px) {

    /* Header wrapper */

    .header-wrapper {
        background: #FFFFFF;
    }


    /* Header logo */

    .header-wrapper .logo-wrap > .logo svg,
    .header-wrapper .logo-wrap > .logo svg path {
        fill: var(--red);
    }


}

@media all and (max-width: 992px) {

    /* Header wrapper */

    body:not(.sidebar-open) .header-wrapper {
        box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    }




    /* Header buttons */

    body.contrast-grey:not(.sidebar-open) .header-btn-wrapper .button.bg-silver {
        background: var(--silver);
        color: #000;
    }
    body.contrast-grey:not(.sidebar-open) .header-btn-wrapper .button.bg-silver svg {
        fill: #000;
    }



    /* Column spacings (used for cards) */

    .row:not(.has-height) .col-lg-3.bottom-medium:not(:last-of-type) {
        margin-bottom: 30px;
    }
    .row:not(.has-height) .col-lg-4.bottom:not(:last-of-type) {
        margin-bottom: 30px;
    }


    .row.has-height {
        margin-bottom: -30px;
    }

    .row.has-height .col-lg-3.bottom-medium {
        margin-bottom: 30px;
    }
    .row.has-height .col-lg-4.bottom {
        margin-bottom: 30px;
    }





    /* Hide the header when the apply card is submitted */

    body.apply-card-posted .header-wrapper {
        transform: translateY(-100%);
    }


}


@media all and (max-width: 768px) {

    /* Header wrapper */

    .header-wrapper {
        padding: 1.25rem 0;
        background: #FFFFFF;
    }




    /* Logo */

    .logo-wrap {
        width: 45px;
    }

    .header-wrapper .logo-wrap > .logo:not(.no-text) {
        display: none;
    }

    .header-wrapper .logo-wrap > .logo.no-text {
        display: block;
        height: 27px;
    }




    /* Header buttons */

    body.contrast-grey:not(.sidebar-open) .header-btn-wrapper .button.bg-silver svg {
        fill: #FFFFFF;
    }
    body.contrast-grey:not(.sidebar-open) .header-btn-wrapper .button.bg-silver {
        background: var(--red);
        color: #FFFFFF;
    }

    .header-btn-wrapper a:not(.hamburger) {
        display: none;
    }
    .header-btn-wrapper .button.hamburger {
        background: var(--red);
        color: #FFFFFF;
    }
    .header-btn-wrapper .button.hamburger svg {
        fill: #FFFFFF;
    }




    /* Main navigation buttons */

    .menu-wrap.main-menu .menu-wrap-btn-wrapper {
        display: flex;
        gap: 1.5rem 0.75rem;
        margin: 1.25rem 0;
        flex-wrap: wrap;
        justify-content: end;
    }
    .menu-wrap.main-menu .menu-wrap-btn-wrapper .button {
        min-width: 200px;
    }
    .menu-wrap.main-menu .menu-wrap-btn-wrapper .button > span {
        padding-left: 0.25rem;
        padding-right: 0.25rem;
    }



    /*.menu-wrap.main-menu .menu-wrap-btn-wrapper {*/
    /*    display: flex;*/
    /*    flex-direction: column;*/
    /*    gap: 0.75rem;*/
    /*    margin: 2rem 0;*/
    /*    flex-wrap: wrap;*/
    /*}*/




    /* Footer */

    .footer-content {
        flex-direction: column;
        gap: 4rem;
    }

    .footer-content .footer-contact {
        margin-left: 0;
    }

    /* Footer logo */

    .footer-logo {
        padding: 3rem 0 2rem 0;
    }

    .footer-wrapper .copyright-menu > li {
        display: block;
    }
    .footer-wrapper .copyright-menu > li:not(:last-child) {
        margin-bottom: 5px;
    }

    /* Footer statements */

    .footer-wrapper .footer-wrap-statements-inner p:after,
    .footer-wrapper .footer-wrap-statements-inner li:not(:last-of-type) a:after {
        display: none;
    }


    /* Footer swoosh shape */

    .footer-wrapper .footer-wrap:before {
        content: '';
        background-position: 0 0;
    }


    .menu-wrap.styled.main-menu ul.menu li a:not(.button) {
        font-size: 1.65rem;
        padding: 0.35rem 0;
    }



}

@media all and (max-width: 575px) {


    .back-to-overview-link {
        margin: 2rem 0;
    }


    .footer-wrapper .footer-wrap {
        padding-top: 60px;
    }


    .menu-wrap.styled.main-menu ul.menu li a:not(.button) {
        font-size: 1.5rem;
        padding: 0.25rem 0;
    }


}





/*.margin-slider {*/
/*    margin: 0 60px;*/
/*    padding: 0 15px;*/
/*}*/




/* Added by Ilan */

@media all and (min-width: 0px) and (max-width: 575px) {
    .xs-hidden { display: none !important; }
}
@media all and (min-width: 576px) and (max-width: 767px) {
    .sm-hidden { display: none !important; }
}
@media all and (min-width: 768px) and (max-width: 991px) {
    .md-hidden { display: none !important; }
}
@media all and (min-width: 992px) and (max-width: 1199px) {
    .lg-hidden { display: none !important; }
}
@media all and (min-width: 1200px) and (max-width: 1399px) {
    .xl-hidden { display: none !important; }
}
@media all and (min-width: 1400px) {
    .xxl-hidden { display: none !important; }
}   



