﻿@keyframes page-load {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.nav .nav-content {
    position: relative;
    width: 100%;
    max-width: 138.4rem;
    padding-left: 3.2rem;
    padding-right: 3.2rem;
    margin: auto;
}

@media only screen and (max-width: 1447px) {
    .nav .nav-content {
        box-sizing: border-box;
        max-width: 100%;
    }
}

@media only screen and (max-width: 959px) {
    .nav .nav-content {
        padding-left: 1.6rem;
        padding-right: 1.6rem;
    }
}

.nav .nav-content > ul > li > a {
    text-decoration: none;
}

/* ==========================================================================
  Helper classes
  ========================================================================== */
.nav {
    background-image: linear-gradient(225deg, #1697aa 0%, #256fb8 51%, #1c2858 100%);
    max-height: 6.4rem;
    transition: transform 0.4s;
    box-sizing: border-box;
}

    .nav .nav-content > ul {
        display: flex;
        margin: 0 -1.25em;
    }

        .nav .nav-content > ul > li {
            font-weight: bold;
        }

            .nav .nav-content > ul > li > a {
                font-size: 1.25em;
                position: relative;
                display: block;
                padding: .85em 1em;
                color: #FFFFFF;
            }

                .nav .nav-content > ul > li > a::after {
                    content: '';
                    height: 0.8rem;
                    position: absolute;
                    left: 1em;
                    right: 1em;
                    bottom: 0;
                    background-color: #FFFFFF;
                    border-top-right-radius: .8rem;
                    opacity: 0;
                    transition: 0.2s;
                }

                .nav .nav-content > ul > li > a:focus::after, .nav .nav-content > ul > li > a:active::after {
                    opacity: 1;
                }

            .nav .nav-content > ul > li.current > a::after, .nav .nav-content > ul > li:hover > a::after {
                opacity: 1;
            }

            .nav .nav-content > ul > li:first-child > a {
                padding-top: .6em;
                padding-bottom: .6em;
                overflow: hidden;
                max-width: 0;
                padding-right: 0;
                padding-left: 0;
                opacity: 0;
                visibility: hidden;
            }

                .nav .nav-content > ul > li:first-child > a::after {
                    display: none;
                }

            .nav .nav-content > ul > li.useful-link {
                display: none;
            }

            .nav .nav-content > ul > li .nav-next-level {
                display: none;
            }

    .nav .nav-content .language-selector {
        display: none;
    }

.sticky-wrapper {
    position: relative;
    z-index: 60;
}

    .sticky-wrapper + .sticky-wrapper {
        z-index: 50;
    }

    .sticky-wrapper.is-sticky .nav .nav-content > ul > li:first-child > a {
        padding-left: 1em;
        padding-right: 1em;
        max-width: 2rem;
        opacity: 1;
        visibility: visible;
    }

    .sticky-wrapper.is-sticky + .main {
        padding-top: 6.4rem;
    }

    .sticky-wrapper + .sticky-wrapper {
        height: auto !important;
    }

@media only screen and (min-width: 960px) {
    .nav {
        margin-top: 0 !important;
    }

        .nav .nav-content > ul > li .nav-level-1 {
            position: absolute;
            left: -1.6rem;
            right: -1.6rem;
            background-color: #FFFFFF;
            box-shadow: 0 0.6rem 1rem rgba(0, 0, 0, 0.2);
            border-bottom-right-radius: 10rem;
            padding-left: 3.2rem;
            padding-right: 3.2rem;
            padding-top: 3.6rem;
            padding-bottom: 5.5rem;
            display: flex;
            opacity: 0;
            visibility: hidden;
        }

        .nav .nav-content > ul > li .nav-level-1-links, .nav .nav-content > ul > li .nav-level-1-news {
            box-sizing: border-box;
            padding-left: 3.2rem;
            padding-right: 3.2rem;
        }

        .nav .nav-content > ul > li .nav-level-1-links {
            width: 41.66667%;
        }

            .nav .nav-content > ul > li .nav-level-1-links h3 .material-icons {
                display: none;
            }

            .nav .nav-content > ul > li .nav-level-1-links ul {
                margin-top: .625em;
            }

                .nav .nav-content > ul > li .nav-level-1-links ul li {
                    border-bottom: solid 1px #D1D3D4;
                }

                    .nav .nav-content > ul > li .nav-level-1-links ul li a {
                        font-size: 1.125em;
                        display: inline-block;
                        padding: .5555555556em 0;
                        color: #256fb8;
                    }

                    .nav .nav-content > ul > li .nav-level-1-links ul li .nav-level-2 {
                        display: none;
                    }

        .nav .nav-content > ul > li .nav-level-1-news {
            width: 58.33333%;
        }

            .nav .nav-content > ul > li .nav-level-1-news ul {
                background-color: #F8F8F8;
                border-top: solid 1px #D1D3D4;
                border-bottom: solid 1px #D1D3D4;
                padding-left: 3.2rem;
                padding-right: 3.2rem;
                padding-top: .75em;
                padding-bottom: .75em;
                margin-top: .875em;
            }

                .nav .nav-content > ul > li .nav-level-1-news ul li {
                    padding: 1.25em 0;
                }

                    .nav .nav-content > ul > li .nav-level-1-news ul li h5 {
                        font-size: 1em;
                    }

                    .nav .nav-content > ul > li .nav-level-1-news ul li h4 {
                        font-size: 1.5em;
                        font-weight: normal;
                    }

                    .nav .nav-content > ul > li .nav-level-1-news ul li h3 {
                        font-weight: normal;
                    }

                    .nav .nav-content > ul > li .nav-level-1-news ul li + li {
                        border-top: solid 1px #D1D3D4;
                    }

            .nav .nav-content > ul > li .nav-level-1-news .more {
                font-size: 1.125em;
                color: #256fb8;
                padding: 1em 1.6rem;
                display: flex;
                border-bottom: solid 1px #D1D3D4;
                text-decoration: none;
            }

                .nav .nav-content > ul > li .nav-level-1-news .more:hover span, .nav .nav-content > ul > li .nav-level-1-news .more:focus span, .nav .nav-content > ul > li .nav-level-1-news .more:active span {
                    text-decoration: underline;
                }

                .nav .nav-content > ul > li .nav-level-1-news .more span {
                    flex-grow: 1;
                    padding: 0 1.6rem;
                }

                .nav .nav-content > ul > li .nav-level-1-news .more .material-icons {
                    padding: 0 1.6rem;
                    text-decoration: none;
                }

        .nav .nav-content > ul > li:hover > a::after, .nav .nav-content > ul > li.faux-hover > a::after {
            opacity: 1;
        }

        .nav .nav-content > ul > li:hover .nav-level-1, .nav .nav-content > ul > li.faux-hover .nav-level-1 {
            opacity: 1;
            visibility: visible;
        }

        .nav .nav-content #nav-search-toggle {
            display: none;
        }

        .nav .nav-content .nav-search-container {
            position: absolute;
            top: -6.4rem;
            height: 6.4rem;
            left: 8rem;
            right: 3.2rem;
            z-index: 20;
            display: flex;
            transition: 0.2s;
            opacity: 0;
            visibility: hidden;
        }

            .nav .nav-content .nav-search-container .nav-search {
                padding-right: 4.8rem;
                display: flex;
                align-items: center;
                height: 100%;
                flex-grow: 1;
            }

                .nav .nav-content .nav-search-container .nav-search label[for="nav-search-toggle"] {
                    position: absolute;
                    right: 0;
                    top: 0;
                    color: #FFFFFF;
                    display: block;
                    cursor: pointer;
                    overflow: hidden;
                    max-height: 12.8rem;
                    transition: 0.2s;
                }

                    .nav .nav-content .nav-search-container .nav-search label[for="nav-search-toggle"] .material-icons {
                        display: block;
                        font-size: 2em;
                        line-height: 6.4rem;
                        line-height: 6.4rem;
                    }

                .nav .nav-content .nav-search-container .nav-search .nav-search-form {
                    flex-grow: 1;
                }

                    .nav .nav-content .nav-search-container .nav-search .nav-search-form form {
                        display: flex;
                        align-items: center;
                    }

                        .nav .nav-content .nav-search-container .nav-search .nav-search-form form label[for="nav-search"] {
                            position: relative;
                            left: 2rem;
                            display: block;
                            margin-right: -2.4rem;
                            z-index: 20;
                        }

                        .nav .nav-content .nav-search-container .nav-search .nav-search-form form #nav-search {
                            width: 100%;
                            padding-left: 5rem;
                        }

    .sticky-wrapper.is-sticky .nav .nav-content .nav-search-container {
        visibility: visible;
        opacity: 1;
    }

    .sticky-wrapper.is-sticky .nav .nav-content #nav-search-toggle:checked ~ .nav-search-container {
        top: 0;
    }

        .sticky-wrapper.is-sticky .nav .nav-content #nav-search-toggle:checked ~ .nav-search-container .nav-search label[for="nav-search-toggle"] {
            max-height: 6.4rem;
        }

    .sticky-wrapper.is-sticky .nav .nav-content #nav-search-toggle:checked ~ ul > li.current a::after {
        opacity: 0;
    }

    .sticky-wrapper.is-sticky .nav .nav-content #nav-search-toggle:checked ~ ul > li > a:hover::after {
        opacity: 0;
    }
}

@media only screen and (max-width: 1447px) {
    .nav .nav-content > ul > li .nav-level-1 {
        padding: 3.2rem;
        border-radius: 0;
    }

    .nav .nav-content > ul > li .nav-level-1-links, .nav .nav-content > ul > li .nav-level-1-news {
        padding-left: 1.6rem;
        padding-right: 1.6rem;
    }
}

@media only screen and (max-width: 1279px) {
    .nav .nav-content > ul > li > a {
        padding-left: .7em;
        padding-right: .7em;
    }

        .nav .nav-content > ul > li > a::after {
            left: .7em;
            right: .7em;
        }
}

@media only screen and (max-width: 959px) {
    .nav {
        position: fixed;
        top: 10.4rem !important;
        bottom: 0;
        left: 0;
        right: 0;
        padding-bottom: 1.6rem;
        max-height: none;
        background-image: none;
        padding-left: 1.6rem;
        padding-right: 1.6rem;
        transform: translateX(100%);
    }

        .nav .nav-content {
            /*overflow-y: scroll;*/
            overflow-x: hidden;
            position: absolute;
            top: 0;
            bottom: 0;
            max-height: 100%;
            left: 1.6rem;
            right: 1.6rem;
            padding-left: 0;
            padding-right: 0;
            width: auto;
            z-index: 20;
        }

            .nav .nav-content .language-selector {
                display: block;
                background-color: #FFFFFF;
                font-size: 1.125em;
                color: #256fb8;
                padding: 0 1.6rem;
            }

                .nav .nav-content .language-selector #language-selector-toggle {
                    display: none;
                }

                    .nav .nav-content .language-selector #language-selector-toggle:checked ~ .language-selector-languages {
                        max-height: 20em;
                    }

                    .nav .nav-content .language-selector #language-selector-toggle:checked ~ label[for="language-selector-toggle"] .material-icons:last-child {
                        transform: scaleY(-1);
                    }

                .nav .nav-content .language-selector label[for="language-selector-toggle"] {
                    display: flex;
                    padding: .6111111111em 0;
                    font-weight: bold;
                    align-items: center;
                }

                    .nav .nav-content .language-selector label[for="language-selector-toggle"] .material-icons:first-child {
                        margin-right: .2222222222em;
                    }

                    .nav .nav-content .language-selector label[for="language-selector-toggle"] .material-icons:last-child {
                        margin-left: auto;
                        font-size: 3.2rem;
                    }

                .nav .nav-content .language-selector .language-selector-languages {
                    overflow: hidden;
                    transition: 0.4s;
                    max-height: 0;
                }

                    .nav .nav-content .language-selector .language-selector-languages li {
                        padding: 0.5em 3.2rem;
                    }

                        .nav .nav-content .language-selector .language-selector-languages li:first-child {
                            padding-top: 1.2222222222em;
                            border-top: solid 1px #D1D3D4;
                        }

                        .nav .nav-content .language-selector .language-selector-languages li:last-child {
                            padding-bottom: 1.2222222222em;
                        }

                        .nav .nav-content .language-selector .language-selector-languages li a {
                            color: #256fb8;
                        }

            .nav .nav-content #nav-search-toggle {
                display: none;
            }

            .nav .nav-content .nav-search-container .nav-search {
                background-color: #FFFFFF;
                border-top: solid 1px #D1D3D4;
                padding: 1.5em 1.6rem;
            }

                .nav .nav-content .nav-search-container .nav-search label[for="nav-search-toggle"] {
                    display: none;
                }

                .nav .nav-content .nav-search-container .nav-search form {
                    display: flex;
                    align-items: center;
                    position: relative;
                }

                    .nav .nav-content .nav-search-container .nav-search form label[for="nav-search"] {
                        position: absolute;
                        left: 2rem;
                        z-index: 20;
                        color: #727272;
                    }

                    .nav .nav-content .nav-search-container .nav-search form #nav-search {
                        flex-grow: 1;
                        padding-left: 5rem;
                        box-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.2) !important;
                    }

                        .nav .nav-content .nav-search-container .nav-search form #nav-search:hover, .nav .nav-content .nav-search-container .nav-search form #nav-search:focus, .nav .nav-content .nav-search-container .nav-search form #nav-search:active {
                            box-shadow: none !important;
                        }

            .nav .nav-content > ul {
                display: block;
                margin-left: 0;
                margin-right: 0;
                margin-bottom: 3.2rem;
                /*overflow: hidden;*/
                position: relative;
                padding-bottom: 3.5em;
            }

                .nav .nav-content > ul > li {
                    font-size: 1.125em;
                }

                    .nav .nav-content > ul > li:first-child {
                        display: none;
                        border-top: none;
                    }

                    .nav .nav-content > ul > li:nth-child(2) {
                        background-color: #FFFFFF;
                    }

                        .nav .nav-content > ul > li:nth-child(2) > a {
                            background-image: linear-gradient(225deg, #1697aa 0%, #256fb8 51%, #1c2858 100%);
                            color: #FFFFFF;
                            border-right: solid 1px #D1D3D4;
                        }

                    .nav .nav-content > ul > li:last-child a {
                        border-bottom-right-radius: 5rem;
                    }

                    .nav .nav-content > ul > li > a::after {
                        display: none;
                    }

                    .nav .nav-content > ul > li h3 {
                        font-size: 1em;
                        background-color: #FFFFFF;
                        -webkit-tap-highlight-color: transparent;
                        border-top: solid 1px #D1D3D4;
                    }

                        .nav .nav-content > ul > li h3 span {
                            display: block;
                            line-height: 1.5;
                            padding: 0.63889em 1.6rem;
                            box-sizing: border-box;
                            background-image: linear-gradient(225deg, #1697aa 0%, #256fb8 51%, #1c2858 100%);
                            color: #FFFFFF;
                            border-right: solid 1px #D1D3D4;
                            display: flex;
                            align-items: center;
                        }

                            .nav .nav-content > ul > li h3 span .material-icons {
                                font-size: 3.2rem;
                            }

                .nav .nav-content > ul li {
                    display: flex;
                    transition: 0.4s;
                    border-top: solid 1px #D1D3D4;
                }

                    .nav .nav-content > ul li a {
                        color: #1c2858;
                        background-color: #F3F4F4;
                        padding: 0.77778em 1.6rem;
                        box-sizing: border-box;
                        flex-grow: 1;
                        font-size: 1em;
                    }

                    .nav .nav-content > ul li.current.selected > a {
                        text-decoration: underline;
                        font-weight: bold;
                    }

                    .nav .nav-content > ul li.useful-link {
                        display: block;
                        font-weight: normal;
                    }

                        .nav .nav-content > ul li.useful-link > a {
                            color: #256fb8;
                        }

                            .nav .nav-content > ul li.useful-link > a .material-icons {
                                position: relative;
                                top: -.1111111111em;
                                margin-right: .1111111111em;
                            }

                    .nav .nav-content > ul li.faux-hover > a::after, .nav .nav-content > ul li:hover > a::after, .nav .nav-content > ul li.current > a::after {
                        display: none;
                    }

                    .nav .nav-content > ul li .nav-next-level {
                        display: block;
                        border-radius: 0;
                        padding: 0;
                        border: none;
                        background-color: #FFFFFF;
                        background-image: none;
                        text-shadow: none;
                        text-align: center;
                        width: 6.7rem;
                        border-left: solid 1px #D1D3D4;
                    }

                        .nav .nav-content > ul li .nav-next-level .material-icons {
                            font-size: 3.2rem;
                        }

                    .nav .nav-content > ul li .nav-level-1,
                    .nav .nav-content > ul li .nav-level-2 {
                        position: absolute;
                        top: 0;
                        left: 100%;
                        width: 100%;
                        visibility: hidden;
                        transition: 0.4s;
                        padding: 0;
                        border-bottom-right-radius: 5rem;
                        margin-bottom: 3.2rem;
                    }

                        .nav .nav-content > ul li .nav-level-1 .nav-level-1-links,
                        .nav .nav-content > ul li .nav-level-2 .nav-level-1-links {
                            display: block;
                            padding: 0;
                            font-weight: normal;
                        }

                        .nav .nav-content > ul li .nav-level-1 .nav-level-1-news,
                        .nav .nav-content > ul li .nav-level-2 .nav-level-1-news {
                            display: none;
                        }

                        .nav .nav-content > ul li .nav-level-1 ul li:last-child *:last-child,
                        .nav .nav-content > ul li .nav-level-2 ul li:last-child *:last-child {
                            border-bottom-right-radius: 5rem;
                        }

        .nav .menu-overlay {
            display: block;
            position: fixed;
            border-radius: 0;
            border: none;
            top: 0;
            bottom: 0;
            padding: 0;
            left: -100%;
            width: 200%;
            background-color: rgba(0, 0, 0, 0.32);
            background-image: none;
            visibility: hidden;
            opacity: 0;
            transition: 0.4s;
        }

            .nav .menu-overlay span {
                visibility: hidden;
            }

        .nav.nav-level-1-selected .nav-content > ul > li, .nav.nav-level-2-selected .nav-content > ul > li {
            margin-left: -100%;
            margin-right: 100%;
        }

            .nav.nav-level-1-selected .nav-content > ul > li.selected .nav-level-1, .nav.nav-level-2-selected .nav-content > ul > li.selected .nav-level-1 {
                visibility: visible;
                left: 0;
            }

                .nav.nav-level-1-selected .nav-content > ul > li.selected .nav-level-1 .selected .nav-level-2, .nav.nav-level-2-selected .nav-content > ul > li.selected .nav-level-1 .selected .nav-level-2 {
                    visibility: visible;
                }

            .nav.nav-level-2-selected .nav-content > ul > li.selected .nav-level-1 {
                left: -100%;
            }

    .sticky-wrapper.is-sticky + .sticky-wrapper .nav {
        top: 6.4rem !important;
    }

    .sticky-wrapper.is-sticky + .sticky-wrapper + .main {
        padding-top: 0;
    }

    .nav-active .nav {
        transform: translateX(0);
    }

        .nav-active .nav .menu-overlay {
            opacity: 1;
            visibility: visible;
        }
}

.nav .nav-content > ul > li .nav-level-1-news {
    overflow: hidden;
}

    .nav .nav-content > ul > li .nav-level-1-news .nav-cta-item {
        position: relative;
        background-color: #F8F8F8;
        height: 100%;
        padding: 3.2rem;
        margin-top: .875em;
        border-top: solid 1px #D1D3D4;
        border-bottom: solid 1px #D1D3D4;
    }

        .nav .nav-content > ul > li .nav-level-1-news .nav-cta-item h4 {
            font-size: 1.8rem;
            font-weight: 500;
            margin-top: 1em;
        }

        .nav .nav-content > ul > li .nav-level-1-news .nav-cta-item img {
            position: absolute;
            top: 3.8rem;
            right: 0;
            max-width: 12rem;
        }

        .nav .nav-content > ul > li .nav-level-1-news .nav-cta-item p {
            position: relative;
            z-index: 20;
            font-weight: 400;
            margin-bottom: .875em;
            max-width: 70%;
        }

        .nav .nav-content > ul > li .nav-level-1-news .nav-cta-item .link-list ul {
            padding: 0;
            margin: 0;
            border-top: 0;
            border-bottom: 0;
        }

            .nav .nav-content > ul > li .nav-level-1-news .nav-cta-item .link-list ul li {
                padding: .875em 0;
            }

                .nav .nav-content > ul > li .nav-level-1-news .nav-cta-item .link-list ul li:first-child {
                    margin-top: 0;
                    padding-top: 0;
                }
