h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
    line-height: 1.4;
    scroll-behavior: smooth;
}

html, body {
    width: 100%;
    height: 100%;
    max-width: 100%;
}

body {
    position: relative;
    background: #fff;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-overflow-scrolling: touch;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -o-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -ms-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    font-smoothing: antialiased;
    overflow-x: hidden !important;
    /* Default CSS rules for the body */
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
}

    body.no-scroll {
        overflow: hidden;
    }

::-moz-selection {
    color: #fff;
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    color: #fff;
    background: #b3d4fc;
    text-shadow: none;
}

img::-moz-selection {
    background: transparent;
}

img::selection {
    background: transparent;
}

img::-moz-selection {
    background: transparent;
}

/* Progress Loader
=================================================================================== */

#progressLoader {
    display: none;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
}

.show-progressLoader {
    display: block;
}


.progressLoader {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
}

    .progressLoader div {
        transform-origin: 40px 40px;
        animation: progressLoader 1.2s linear infinite;
    }

        .progressLoader div:after {
            content: " ";
            display: block;
            position: absolute;
            top: 3px;
            left: 37px;
            width: 6px;
            height: 18px;
            border-radius: 20%;
            background: #f06c00;
        }

        .progressLoader div:nth-child(1) {
            transform: rotate(0deg);
            animation-delay: -1.1s;
        }

        .progressLoader div:nth-child(2) {
            transform: rotate(30deg);
            animation-delay: -1s;
        }

        .progressLoader div:nth-child(3) {
            transform: rotate(60deg);
            animation-delay: -0.9s;
        }

        .progressLoader div:nth-child(4) {
            transform: rotate(90deg);
            animation-delay: -0.8s;
        }

        .progressLoader div:nth-child(5) {
            transform: rotate(120deg);
            animation-delay: -0.7s;
        }

        .progressLoader div:nth-child(6) {
            transform: rotate(150deg);
            animation-delay: -0.6s;
        }

        .progressLoader div:nth-child(7) {
            transform: rotate(180deg);
            animation-delay: -0.5s;
        }

        .progressLoader div:nth-child(8) {
            transform: rotate(210deg);
            animation-delay: -0.4s;
        }

        .progressLoader div:nth-child(9) {
            transform: rotate(240deg);
            animation-delay: -0.3s;
        }

        .progressLoader div:nth-child(10) {
            transform: rotate(270deg);
            animation-delay: -0.2s;
        }

        .progressLoader div:nth-child(11) {
            transform: rotate(300deg);
            animation-delay: -0.1s;
        }

        .progressLoader div:nth-child(12) {
            transform: rotate(330deg);
            animation-delay: 0s;
        }

@keyframes progressLoader {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}



/* SKIP TO CONTENTS ACCESSIBILITY
=================================================================================== */
a.skip-main {
    display: block;
    width: 1px;
    height: 1px;
    position: absolute;
    top: auto;
    left: -9999px;
    overflow: hidden;
    z-index: -9999;
}

    a.skip-main:hover, a.skip-main:focus-visible, a.skip-main:active {
        width: auto;
        height: auto;
        top: 1.6rem;
        left: 1.6rem;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 1.6rem;
        color: #1d4289;
        font-weight: bold;
        margin: 0;
        padding: 1.6rem 2.4rem 1.6rem 2.4rem;
        text-decoration: none;
        text-align: center;
        background: #fff;
        border: 0.2rem solid #1d4289;
        border-radius: 1.6rem;
        overflow: auto;
        z-index: 9999;
    }

    a.skip-main:hover {
        color: #000;
        text-decoration: none;
        background: #fff;
        border: 0.2rem solid #000;
    }

#cookies_warning_v2 {
    display: none;
    width: 90%;
    max-width: 330px;
    height: auto;
    position: fixed;
    right: 20px;
    bottom: 20px;
    margin: 0;
    border: 1px solid #ebebeb;
    border-radius: 4px;
    -o-box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.25);
    box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.25);
    box-sizing: border-box;
    overflow: hidden;
    z-index: 300;
    /* Close Button */
}

    #cookies_warning_v2.dark {
        border: 1px solid #333333;
        -o-box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.35);
        box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.35);
    }

    #cookies_warning_v2 #cookies_row_01 {
        width: 100%;
        height: auto;
        position: relative;
        margin: 0;
        padding: 1.8rem 1.8rem 2.2rem 2rem;
        float: left;
        clear: both;
        background: #fff;
        box-sizing: border-box;
        z-index: 1;
    }

        #cookies_warning_v2 #cookies_row_01 div.title {
            width: 100%;
            height: auto;
            position: relative;
            font-family: Arial, Helvetica, sans-serif;
            font-size: 1.6rem;
            color: #4f4f4f;
            font-weight: bold;
            font-style: normal;
            margin: 0;
            padding: 0 3rem 0 0;
            letter-spacing: 0.02em;
            line-height: 1.3;
            float: left;
            clear: both;
            box-sizing: border-box;
        }

        #cookies_warning_v2 #cookies_row_01 div.text {
            width: 100%;
            height: auto;
            font-family: Arial, Helvetica, sans-serif;
            font-size: 1.2rem;
            color: #595959;
            font-weight: normal;
            font-style: normal;
            margin: 1rem 0 0 0;
            padding: 0;
            letter-spacing: 0.005em;
            line-height: 1.6;
            float: left;
            clear: both;
        }

            #cookies_warning_v2 #cookies_row_01 div.text a {
                color: #595959;
                font-weight: bold;
                text-decoration: none;
            }

    #cookies_warning_v2.dark #cookies_row_01 {
        background: white;
    }

        #cookies_warning_v2.dark #cookies_row_01 div.title {
            color: #2e2e2e;
        }

        #cookies_warning_v2.dark #cookies_row_01 div.text {
            color: #424242;
        }

            #cookies_warning_v2.dark #cookies_row_01 div.text a {
                color: #424242;
            }

    #cookies_warning_v2 a#cookies_close {
        display: block;
        width: 22px;
        height: 22px;
        position: absolute;
        top: 0;
        right: 0;
        color: #737373;
        margin: -2px 0 0 0;
        padding: 0;
        text-decoration: none;
        text-align: left;
        clear: both;
        overflow: hidden;
        text-indent: -9999px;
        transition: all 0.22s ease-in-out;
        z-index: 2;
    }

        #cookies_warning_v2 a#cookies_close::before {
            display: block;
            content: " ";
            width: 2px;
            height: 90%;
            position: absolute;
            top: 50%;
            left: 50%;
            margin: 0;
            padding: 0;
            background: #a6a6a6;
            border-radius: 2px;
            -webkit-transform: translate3d(-50%, -50%, 0) rotate(45deg);
            transform: translate3d(-50%, -50%, 0) rotate(45deg);
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            -webkit-perspective: 1000px;
            -ms-perspective: 1000px;
            perspective: 1000px;
            outline: 1px solid transparent;
            z-index: 2;
        }

        #cookies_warning_v2 a#cookies_close::after {
            display: block;
            content: " ";
            width: 2px;
            height: 90%;
            position: absolute;
            top: 50%;
            left: 50%;
            margin: 0;
            padding: 0;
            background: #a6a6a6;
            border-radius: 2px;
            -webkit-transform: translate3d(-50%, -50%, 0) rotate(-45deg);
            transform: translate3d(-50%, -50%, 0) rotate(-45deg);
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            -webkit-perspective: 1000px;
            -ms-perspective: 1000px;
            perspective: 1000px;
            outline: 1px solid transparent;
            z-index: 2;
        }

        #cookies_warning_v2 a#cookies_close:hover {
            color: #737373;
            text-decoration: none;
        }

.no-touch #cookies_warning_v2 a#cookies_close:hover {
    color: #737373;
    text-decoration: none;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

#cookies_warning_v2.dark a#cookies_close {
    color: #333333;
}

    #cookies_warning_v2.dark a#cookies_close::before {
        background: #737373;
    }

    #cookies_warning_v2.dark a#cookies_close::after {
        background: #737373;
    }

    #cookies_warning_v2.dark a#cookies_close:hover {
        color: #4d4d4d;
    }

.no-touch #cookies_warning_v2.dark a#cookies_close:hover {
    color: #4d4d4d;
}

#cookies_warning_v2 #cookies_row_02 {
    display: none;
    width: 100%;
    height: auto;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.2rem;
    color: #4f4f4f;
    font-weight: bold;
    font-style: normal;
    margin: 0;
    padding: 1rem 1.8rem 1rem 2rem;
    letter-spacing: 0.02em;
    line-height: 1.5;
    float: left;
    clear: both;
    background: #e0e0e0;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

    #cookies_warning_v2 #cookies_row_02 a#disable_GA {
        width: 34px;
        height: 18px;
        position: relative;
        margin: 0 0 0 1rem;
        padding: 0;
        display: inline;
        float: right;
        background: #fff;
        border: 2px solid transparent;
        border-radius: 50px;
        transition: all 0.22s ease-in-out;
        text-align: left;
        text-indent: -9999px;
        overflow: hidden;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        z-index: 1;
    }

        #cookies_warning_v2 #cookies_row_02 a#disable_GA::after {
            display: block;
            content: " ";
            width: 14px;
            height: 14px;
            position: absolute;
            top: 0;
            right: 0;
            margin: 0;
            padding: 0;
            background: #3acc07;
            border-radius: 50%;
            transition: all 0.22s ease-in-out;
        }

        #cookies_warning_v2 #cookies_row_02 a#disable_GA.deactive:after {
            right: 16px;
            background: #bfbfbf;
        }

#cookies_warning_v2.dark #cookies_row_02 {
    color: #fff;
    background: #737373;
}

#cookies_warning_v2 #cookies_row_03 {
    width: 100%;
    height: auto;
    position: relative;
    margin: 0;
    padding: 1.2rem 1.8rem 1.2rem 0;
    text-align: right;
    float: left;
    clear: both;
    background: #f2f2f2;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    z-index: 1;
}

    #cookies_warning_v2 #cookies_row_03 a#cookies_info {
        display: inline-block;
        width: auto;
        height: auto;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 1.2rem;
        color: #4f4f4f;
        font-weight: bold;
        font-style: normal;
        margin: 0 1.6rem 0 0;
        padding: 0.8rem 0 0.8rem 0;
        letter-spacing: 0.05em;
        line-height: 1.4;
        text-decoration: none;
        background: transparent;
        border: none;
        vertical-align: middle;
        transition: color 0.33s ease-in-out;
    }

        #cookies_warning_v2 #cookies_row_03 a#cookies_info:hover {
            color: #4f4f4f;
            text-decoration: none;
        }

.no-touch #cookies_warning_v2 #cookies_row_03 a#cookies_info:hover {
    color: black;
    text-decoration: none;
}

#cookies_warning_v2 #cookies_row_03 a#cookies_accept {
    display: inline-block;
    width: auto;
    height: auto;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.4rem;
    color: #fff;
    font-weight: bold;
    font-style: normal;
    margin: 0;
    padding: 0.8rem 2.2rem 0.8rem 2.3rem;
    letter-spacing: 0.09em;
    line-height: 1.4;
    text-decoration: none;
    background: #005c99;
    border: none;
    border-radius: 6px;
    vertical-align: middle;
    transition: all 0.33s ease-in-out;
}

    #cookies_warning_v2 #cookies_row_03 a#cookies_accept:hover {
        color: #fff;
        text-decoration: none;
    }

.no-touch #cookies_warning_v2 #cookies_row_03 a#cookies_accept:hover {
    color: #fff;
    text-decoration: none;
    background: #006bb3;
}

#cookies_warning_v2 #cookies_row_03 a#cookies_settings {
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    bottom: 8px;
    left: 8px;
    color: #737373;
    margin: 0;
    padding: 0;
    text-align: left;
    text-decoration: none;
    background: url("../images/cookies_cog.svg") center center no-repeat;
    background-size: 100% auto;
    transition: all 0.22s ease-in-out;
    text-align: left;
    text-indent: -9999px;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    opacity: 0.5;
}

.no-svg #cookies_warning_v2 #cookies_row_03 a#cookies_settings {
    background: url("../images/cookies_cog.png") center center no-repeat;
    background-size: 100% auto;
}

#cookies_warning_v2 #cookies_row_03 a#cookies_settings:hover {
    color: #737373;
    text-decoration: none;
}

.no-touch #cookies_warning_v2 #cookies_row_03 a#cookies_settings:hover {
    color: #262626;
    text-decoration: none;
    opacity: 1;
}

#cookies_warning_v2 #cookies_row_03 a#cookies_settings.active {
    opacity: 1;
}

#cookies_warning_v2.dark #cookies_row_03 {
    background: #333333;
}

    #cookies_warning_v2.dark #cookies_row_03 a#cookies_info {
        color: #c7c7c7;
    }

        #cookies_warning_v2.dark #cookies_row_03 a#cookies_info:hover {
            color: #c7c7c7;
        }

.no-touch #cookies_warning_v2.dark #cookies_row_03 a#cookies_info:hover {
    color: #fff;
}

.no-touch #cookies_warning_v2.dark #cookies_row_03 a#cookies_accept:hover {
    background: #006bb3;
}

#cookies_warning_v2.dark #cookies_row_03 a#cookies_settings {
    opacity: 0.3;
}

.no-touch #cookies_warning_v2.dark #cookies_row_03 a#cookies_settings:hover {
    opacity: 0.7;
}

#cookies_warning_v2.dark #cookies_row_03 a#cookies_settings.active {
    opacity: 0.7;
}

/* RESPONSIVE STYLES */
@media only screen and (max-width: 479px) {
    #cookies_warning_v2 {
        right: 50%;
        -webkit-transform: translateX(50%);
        transform: translateX(50%);
    }

        #cookies_warning_v2 #cookies_text_01 {
            padding: 18px 18px 20px 20px;
        }

        #cookies_warning_v2 #cookies_text_02 {
            padding: 10px 18px 10px 0;
        }
}
/* MAIN LAYOUT
=================================================================================== */
.row {
    width: 100%;
    height: auto;
    position: relative;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    z-index: 1;
}

.contents {
    width: 90%;
    max-width: 1300px;
    height: auto;
    position: relative;
    margin: 0 auto;
    clear: both;
    z-index: 2;
}

    .contents::before {
        display: table;
        content: " ";
    }

    .contents::after {
        display: table;
        content: " ";
        clear: both;
    }

/* IE CLEAR FIX CLASS
=================================================================================== */
.clear {
    display: block;
    width: 100%;
    position: relative;
    height: 0 !important;
    margin: 0;
    padding: 0;
    font-size: 0;
    line-height: 0;
    float: left;
    clear: both;
}

.clearfix::before {
    display: table;
    content: " ";
}

.clearfix::after {
    display: table;
    content: " ";
    clear: both;
}

/* TYPOGRAPHY
=================================================================================== */
h1, h2, h3, h4, h5, h6, p {
    text-rendering: optimizelegibility;
    clear: both;
}

/* H1 */
h1, .h1 {
    display: block;
    position: relative;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 4.2rem;
    color: #252A36;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 0 0 0 3.2rem;
    letter-spacing: 0;
    line-height: 1.2;
}

    h1::before, .h1::before {
        display: block;
        content: " ";
        width: 0.8rem;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        margin: 0;
        padding: 0;
        background-color: #F06C00;
    }

#hero h1, #hero .h1 {
    font-family: "Poppins", Arial, Helvetica, sans-serif;
    font-size: 7.5rem;
    color: rgba(30, 30, 30, 0.6);
    font-weight: 800;
    margin: 0 0 2rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 0.95;
}

    #hero h1::before, #hero .h1::before {
        display: none;
    }

/* H2 */
h2, .h2 {
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 2rem;
    color: #252A36;
    font-weight: 700;
    font-style: normal;
    margin: 0 0 1.6rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.3;
}

    h2.large, .h2.large {
        display: block;
        position: relative;
        font-family: "Open Sans", Arial, Helvetica, sans-serif;
        font-size: 2.2rem;
        color: #252A36;
        font-weight: 600;
        font-style: normal;
        margin: 0 0 4.6rem 0;
        padding: 0 0 2.2rem 0;
        letter-spacing: 0;
        line-height: 1.2;
    }

        h2.large::after, .h2.large::after {
            display: block;
            content: " ";
            width: 100%;
            height: 8px;
            position: absolute;
            bottom: 0;
            left: 0;
            margin: 0;
            padding: 0;
            background-color: #CCE3EA;
        }

#hero h2, #hero .h2 {
    font-family: "Poppins", Arial, Helvetica, sans-serif;
    font-size: 2.8rem;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.2;
    text-shadow: 0 0.1rem 2.5rem rgba(0, 0, 0, 0.5);
}

/* H3 */
h3, .h3 {
    font-family: "Poppins", Arial, Helvetica, sans-serif;
    font-size: 2rem;
    color: #252A36;
    font-weight: 700;
    font-style: normal;
    margin: 0 0 1.6rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.4;
}

    h3.white, .h3.white {
        color: #fff;
    }

/* H4 */
h4, .h4 {
    font-family: "Poppins", Arial, Helvetica, sans-serif;
    font-size: 1.8rem;
    color: #252A36;
    font-weight: 700;
    font-style: normal;
    margin: 0 0 1.6rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.4;
}

#filters_pu h4, #filters_pu .h4 {
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #252A36;
    font-weight: 400;
    font-style: normal;
    margin: 0 0 1.8rem 0;
    padding: 0 0 0.8rem 0;
    letter-spacing: 0;
    line-height: 1.4;
    border-bottom: 2px solid #ccc;
}

/* H5 */
/* H6 */
/* P */
p {
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #252A36;
    font-weight: 400;
    font-style: normal;
    margin: 0 0 1.6rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.6;
}

    p.xsmall {
        font-size: 1.4rem;
        color: #252A36;
        font-weight: 400;
        margin: 0 0 1.2rem 0;
        line-height: 1.6;
    }

    p.white {
        color: #fff;
    }

.text_black {
    color: #000 !important;
}

.text_white {
    color: #fff !important;
}

b, strong {
    font-weight: bolder;
    line-height: inherit;
}

em, i {
    font-style: italic;
    line-height: inherit;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 0.1rem solid #ccc;
    margin: 1.4rem 0 1.4rem 0;
    padding: 0;
    text-align: left;
    box-sizing: content-box;
}

/* HEADER
=================================================================================== */
header#globalheader {
    width: 100%;
    height: auto;
    position: relative;
    margin: 0;
    padding: 2.8rem 0 2.8rem 0;
    float: left;
    clear: both;
    background-color: #E7E8EF;
    z-index: 100;
}

    header#globalheader > .contents {
        width: 90%;
        max-width: 1300px;
    }

#header_grid {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: minmax(auto, 211px) auto;
    grid-template-rows: auto;
    grid-template-areas: "main_logo nav_main";
    grid-gap: 1.4rem 2rem;
    align-items: center;
}

    #header_grid > #main_logo {
        grid-area: main_logo;
        text-align: left;
    }

    #header_grid > #menu_button {
        display: none;
        grid-area: menu_button;
        text-align: right;
    }

    #header_grid > nav#main {
        grid-area: nav_main;
        text-align: right;
        overflow: hidden;
    }

#main_logo > a {
    display: block;
    width: 100%;
    max-width: 211px;
    height: auto;
    position: relative;
    text-decoration: none;
    text-align: left;
    text-indent: -9999px;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

    #main_logo > a::before {
        display: block;
        content: "";
        width: 100%;
        height: 0;
        padding-bottom: 17.5355450237%;
        float: left;
        clear: both;
        background: url(images/jhi_logo_slate_211x37.svg) 0 0 no-repeat;
        background-size: 100% auto;
    }

    #main_logo > a:hover {
        text-decoration: none;
    }

.no-touch #main_logo > a:hover {
    text-decoration: none;
}

nav#main > ul {
    list-style: none;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

    nav#main > ul > li {
        display: inline-block;
        width: auto;
        height: auto;
        font-family: "Open Sans", Arial, Helvetica, sans-serif;
        font-size: 1.8rem;
        color: #252A36;
        font-weight: 700;
        font-style: normal;
        margin: 0 0 0 4rem;
        padding: 0;
        letter-spacing: 0;
        line-height: 1.2;
        vertical-align: top;
    }

        nav#main > ul > li > a {
            display: inline-block;
            width: auto;
            position: relative;
            color: #252A36;
            padding: 0.8rem 0 0.8rem 0;
        }

            nav#main > ul > li > a::after {
                display: block;
                content: " ";
                width: 0;
                height: 3px;
                position: absolute;
                bottom: 0;
                left: 50%;
                margin: 0;
                padding: 0;
                background-color: #F06C00;
                border-radius: 2px;
                outline: 1px solid transparent;
                -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
                transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
            }

            nav#main > ul > li > a:hover {
                color: #252A36;
                text-decoration: none;
            }

.no-touch nav#main > ul > li > a:hover {
    color: #252A36;
    text-decoration: none;
}

    .no-touch nav#main > ul > li > a:hover::after {
        width: 100%;
    }

nav#main > ul > li > a.active::after {
    width: 100%;
}

/* MENU BUTTON
=================================================================================== */
a#menu {
    display: block;
    width: 40px;
    height: 26px;
    position: relative;
    margin: 0;
    padding: 0;
    float: right;
    clear: both;
    text-align: left;
    text-indent: -9999px;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    cursor: pointer;
    overflow: visible;
    z-index: 2;
}

    a#menu::before {
        display: block;
        content: " ";
        width: 100%;
        height: 4px;
        position: absolute;
        top: 0;
        left: 50%;
        margin: 0;
        padding: 0;
        background-color: #252A36;
        border-radius: 0;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        transition: all 0.26s ease-in-out;
        border-radius: 2px;
        outline: 1px solid transparent;
        z-index: 1;
    }

    a#menu::after {
        display: block;
        content: " ";
        width: 100%;
        height: 4px;
        position: absolute;
        right: 50%;
        bottom: 0;
        margin: 0;
        padding: 0;
        background-color: #252A36;
        border-radius: 0;
        -webkit-transform: translateX(50%);
        transform: translateX(50%);
        transition: all 0.26s ease-in-out;
        border-radius: 2px;
        outline: 1px solid transparent;
        z-index: 1;
    }

    a#menu span {
        display: block;
        width: 100%;
        height: 4px;
        position: absolute;
        top: 50%;
        left: 0;
        margin: 0;
        padding: 0;
        background-color: #252A36;
        border-radius: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        transition: all 0.26s ease-in-out;
        border-radius: 2px;
        outline: 1px solid transparent;
        z-index: 1;
    }

    a#menu.open::before {
        top: 50%;
        -webkit-transform: translate(-50%, -50%) rotate(-45deg);
        transform: translate(-50%, -50%) rotate(-45deg);
    }

    a#menu.open::after {
        bottom: 50%;
        -webkit-transform: translate(50%, 50%) rotate(45deg);
        transform: translate(50%, 50%) rotate(45deg);
    }

    a#menu.open span {
        opacity: 0;
    }

/* HERO BANNER
=================================================================================== */
#hero {
    display: table;
    width: 100%;
    height: 32.4rem;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    background: url("../images/home_hero.jpg") center center no-repeat fixed;
    background-size: cover;
}

    #hero > #hero_text {
        display: table-cell;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 6rem 0 6rem 0;
        vertical-align: middle;
    }

        #hero > #hero_text > .contents {
            width: 90%;
            max-width: 1280px;
        }

/* PAGE STYLES
=================================================================================== */
.breadcrumbs {
    min-height: 2rem;
    margin: 3.2rem 0 0 0;
}

    .breadcrumbs ul {
        list-style: none;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
        float: left;
        clear: both;
    }

        .breadcrumbs ul > li {
            display: inline-block;
            width: auto;
            height: auto;
            font-family: "Open Sans", Arial, Helvetica, sans-serif;
            font-size: 1.6rem;
            color: #12749A;
            font-weight: 700;
            font-style: normal;
            margin: 0;
            padding: 0;
            letter-spacing: 0;
            line-height: 1.2;
            vertical-align: top;
        }

            .breadcrumbs ul > li > a {
                display: block;
                position: relative;
                color: #12749A;
                padding: 0 0 0 1.8rem;
                text-decoration: none;
            }

                .breadcrumbs ul > li > a::before {
                    display: block;
                    content: " ";
                    width: 0.9rem;
                    height: 1.5rem;
                    position: absolute;
                    top: 2px;
                    left: 0;
                    margin: 0;
                    padding: 0;
                    background: url("../images/breadcrumb_9x15.svg") center center no-repeat;
                    background-size: 100% auto;
                }

                .breadcrumbs ul > li > a:hover {
                    color: #12749A;
                    text-decoration: none;
                }

.no-touch .breadcrumbs ul > li > a:hover {
    color: #12749A;
    text-decoration: underline;
}

.pagetitle {
    margin: 6.8rem 0 0 0;
}

a.hyperlink {
    display: block;
    width: auto;
    height: auto;
    position: relative;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #12749A;
    font-weight: 700;
    font-style: normal;
    margin: 3.2rem 0 0 0;
    padding: 0 4.4rem 0 0;
    text-align: right;
    text-decoration: none;
    letter-spacing: 0;
    line-height: 1.3;
    float: right;
    clear: both;
    transition: all 0.26s ease-in-out;
}

    a.hyperlink.left {
        float: left;
    }

    a.hyperlink::before {
        display: block;
        content: " ";
        width: 3.2rem;
        height: 3.2rem;
        position: absolute;
        top: 50%;
        right: 0;
        margin: 0;
        padding: 0;
        background: url("../images/hyperlink_hover_32x32.svg") center center no-repeat;
        background-size: 100% auto;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        opacity: 0;
        transition: all 0.26s ease-in-out;
        z-index: 1;
    }

    a.hyperlink::after {
        display: block;
        content: " ";
        width: 3.2rem;
        height: 3.2rem;
        position: absolute;
        top: 50%;
        right: 0;
        margin: 0;
        padding: 0;
        background: url("../images/hyperlink_32x32.svg") center center no-repeat;
        background-size: 100% auto;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        opacity: 1;
        transition: all 0.26s ease-in-out;
        z-index: 2;
    }

    a.hyperlink:hover {
        color: #12749A;
        text-decoration: none;
    }

.no-touch a.hyperlink:hover {
    color: #0C4F69;
    text-decoration: underline;
}

    .no-touch a.hyperlink:hover::before {
        opacity: 1;
    }

    .no-touch a.hyperlink:hover::after {
        opacity: 0;
    }

/* LOGIN PAGE STYLES
=================================================================================== */
#api {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

    #api .heading {
        display: none;
        background-color: #777;
    }

    #api .intro {
        width: 100%;
        height: auto;
        margin: 3rem 0 0 0;
        padding: 2.4rem 0 0 0;
        float: left;
        clear: both;
        border-top: 2px solid #CCE3EA;
    }

    #api[data-name=SelfAsserted] .intro {
        margin: 0;
        padding: 0;
        border-top: none;
    }

    #api .claims-provider-list-buttons > .intro {
        display: none;
    }

    #api .divider {
        display: none;
    }

    #api .entry {
        display: grid;
        width: 100%;
        height: auto;
        margin: 1rem 0 0 0;
        padding: 0;
        float: left;
        clear: both;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
        grid-gap: 1rem 2.4rem;
    }

        #api .entry > .working, #api .entry > .buttons {
            margin: 0;
            padding: 0;
            grid-column: span 2;
        }

        #api .entry > .buttons {
            margin: 1rem 0 0 0;
            padding: 0;
            grid-column: span 2;
        }

.password-label {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: auto;
    grid-gap: 0 1rem;
}

    .password-label > label {
        text-align: left;
    }

    .password-label > a#forgotPassword {
        text-align: right;
    }

a#forgotPassword {
    display: block;
    width: auto;
    height: auto;
    position: relative;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.2rem;
    color: #12749A;
    font-weight: 700;
    font-style: normal;
    margin: 0;
    padding: 0 3.2rem 0 0;
    text-align: right;
    text-decoration: none;
    letter-spacing: 0;
    line-height: 1.3;
    float: right;
    clear: both;
    transition: all 0.26s ease-in-out;
}

    a#forgotPassword::before {
        display: block;
        content: " ";
        width: 2.4rem;
        height: 2.4rem;
        position: absolute;
        top: -0.4rem;
        right: 0;
        margin: 0;
        padding: 0;
        background: url("../images/hyperlink_hover_32x32.svg") center center no-repeat;
        background-size: 100% auto;
        opacity: 0;
        transition: all 0.26s ease-in-out;
        z-index: 1;
    }

    a#forgotPassword::after {
        display: block;
        content: " ";
        width: 2.4rem;
        height: 2.4rem;
        position: absolute;
        top: -0.4rem;
        right: 0;
        margin: 0;
        padding: 0;
        background: url("../images/hyperlink_32x32.svg") center center no-repeat;
        background-size: 100% auto;
        opacity: 1;
        transition: all 0.26s ease-in-out;
        z-index: 2;
    }

    a#forgotPassword:hover {
        color: #12749A;
        text-decoration: none;
    }

.no-touch a#forgotPassword:hover {
    color: #0C4F69;
    text-decoration: underline;
}

    .no-touch a#forgotPassword:hover::before {
        opacity: 1;
    }

    .no-touch a#forgotPassword:hover::after {
        opacity: 0;
    }

#api .create {
    display: none;
}

/* Forgotten Password */
a.helpLink {
    display: none;
}

.attributeList .buttons {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

#attributeList ul {
    list-style: none;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

    #attributeList ul li {
        width: 100%;
        height: auto;
        margin: 2rem 0 0 0;
        padding: 0;
        float: left;
        clear: both;
    }

        #attributeList ul li:nth-child(1) {
            margin: 0;
        }

#fieldIncorrect,
#requiredFieldMissing,
.verificationInfoText,
.verificationSuccessText,
#emailVerificationControl_success_message,
#claimVerificationServerError {
    width: 100%;
    height: auto;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #252A36;
    font-weight: 700;
    font-style: normal;
    margin: 0 0 2rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.2;
    float: left;
    clear: both;
}

.buttons {
    display: grid;
    width: auto;
    height: auto;
    margin: 2rem 0 0 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    grid-gap: 2rem 2rem;
}

/* YOUR CLIENTS PAGE STYLES
=================================================================================== */
.tile_grid {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 1fr;
    grid-gap: 3rem 10rem;
}

    .tile_grid > a {
        position: relative;
        font-family: "Poppins", Arial, Helvetica, sans-serif;
        font-size: 1.8rem;
        color: #fff;
        font-weight: 700;
        font-style: normal;
        margin: 0;
        padding: 1.6rem 3rem 7.2rem 3rem;
        letter-spacing: 0;
        line-height: 1.4;
        text-align: left;
        text-decoration: none;
        background-color: #252A36;
        border-radius: 12px;
        -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
        transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
        transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    }

        .tile_grid > a::before {
            display: block;
            content: " ";
            width: 3.2rem;
            height: 3.2rem;
            position: absolute;
            bottom: 1.6rem;
            right: 1.6rem;
            margin: 0;
            padding: 0;
            background: url("../images/tilelink_hover_32x32.svg") center center no-repeat;
            background-size: 100% auto;
            opacity: 0;
            transition: all 0.26s ease-in-out;
            z-index: 1;
        }

        .tile_grid > a::after {
            display: block;
            content: " ";
            width: 3.2rem;
            height: 3.2rem;
            position: absolute;
            bottom: 1.6rem;
            right: 1.6rem;
            margin: 0;
            padding: 0;
            background: url("../images/tilelink_32x32.svg") center center no-repeat;
            background-size: 100% auto;
            opacity: 1;
            transition: all 0.26s ease-in-out;
            z-index: 2;
        }

        .tile_grid > a:hover {
            color: #fff;
            text-decoration: none;
        }

.no-touch .tile_grid > a:hover {
    color: #fff;
    text-decoration: underline;
    -o-box-shadow: 0 0.4rem 1rem 0 rgba(37, 42, 54, 0.4);
    box-shadow: 0 0.4rem 1rem 0 rgba(37, 42, 54, 0.4);
    -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, -4, 0, 1);
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, -4, 0, 1);
}

    .no-touch .tile_grid > a:hover::before {
        opacity: 1;
    }

    .no-touch .tile_grid > a:hover::after {
        opacity: 0;
    }

/* DOCUMENT LIBRARY PAGE STYLES
=================================================================================== */
.search_grid {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    grid-gap: 2.4rem 2.4rem;
}

.filters {
    width: 100%;
    height: auto;
    margin: 4rem 0 0 0;
    padding: 2.4rem;
    float: left;
    clear: both;
    background-color: #EFF1F3;
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem;
}

    .filters > .filter {
        font-family: "Open Sans", Arial, Helvetica, sans-serif;
        font-size: 1.6rem;
        color: #fff;
        font-weight: 600;
        font-style: normal;
        margin: 0;
        padding: 0.8rem;
        letter-spacing: 0;
        line-height: 1.6;
        background-color: #12749A;
        border-radius: 0.8rem;
    }

        .filters > .filter > a {
            display: inline-block;
            width: 1.6rem;
            height: 1.6rem;
            position: relative;
            margin: 0 0 0 0.4rem;
            padding: 0;
            vertical-align: middle;
        }

            .filters > .filter > a::before, .filters > .filter > a::after {
                display: block;
                content: " ";
                width: 100%;
                height: 2px;
                position: absolute;
                top: 50%;
                left: 50%;
                margin: 0;
                padding: 0;
                background-color: #fff;
                border-radius: 2px;
                -webkit-transform: translate(-50%, -50%) rotate(45deg);
                transform: translate(-50%, -50%) rotate(45deg);
            }

            .filters > .filter > a::after {
                -webkit-transform: translate(-50%, -50%) rotate(-45deg);
                transform: translate(-50%, -50%) rotate(-45deg);
            }

.table_holder {
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 2.4rem 0 0 0;
    padding: 0;
    float: left;
    clear: both;
    white-space: nowrap;
    overflow-x: auto;
}

table.documents {
    width: 100%;
    min-width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

    table.documents > thead > tr {
        background-color: #fff;
    }

        table.documents > thead > tr > th {
            position: relative;
            font-family: "Poppins", Arial, Helvetica, sans-serif;
            font-size: 1.5rem;
            color: #252A36;
            font-weight: 400;
            font-style: normal;
            margin: 0;
            padding: 1.4rem 1.2rem 1.4rem 1.2rem;
            text-align: left;
            letter-spacing: 0;
            line-height: 1.1;
            cursor: pointer;
        }

            table.documents > thead > tr > th::after {
                position: relative;
                display: inline-block;
                content: " ";
                width: 16px;
                height: 16px;
                margin: 0 0 0 1rem;
                padding: 0;
                background: url("../images/filter_arrow.svg") center center no-repeat;
                background-size: 100% auto;
                vertical-align: middle;
            }

            table.documents > thead > tr > th:nth-child(6) {
                text-align: center;
            }

            table.documents > thead > tr > th:nth-child(7) {
                text-align: center;
            }

            table.documents > thead > tr > th.active::after {
                -webkit-transform: rotate(-180deg);
                transform: rotate(-180deg);
            }

    table.documents > tbody > tr:nth-child(odd) {
        background-color: #ECF5F7;
    }

    table.documents > tbody > tr:nth-child(even) {
        background-color: #fff;
    }

    table.documents > tbody > tr > td {
        font-family: "Open Sans", Arial, Helvetica, sans-serif;
        font-size: 1.4rem;
        color: #252A36;
        font-weight: 400;
        font-style: normal;
        margin: 0;
        padding: 1.1rem 1.0rem 1.1rem 1.0rem;
        text-align: left;
        letter-spacing: 0;
        line-height: 1.2;
    }

        table.documents > tbody > tr > td:nth-child(1) {
            font-weight: 700;
        }

        table.documents > tbody > tr > td:nth-child(2) {
            font-weight: 700;
        }

        table.documents > tbody > tr > td:nth-child(3) {
            font-weight: 400;
        }

        table.documents > tbody > tr > td:nth-child(4) {
            font-weight: 400;
        }

        table.documents > tbody > tr > td:nth-child(6) {
            font-size: 1.4rem;
            text-align: center;
        }

        table.documents > tbody > tr > td:nth-child(7) {
            text-align: center;
        }

a.iconview {
    display: inline-block;
    width: 3.2rem;
    height: 3.2rem;
    margin: 0 0.4rem 0 0.4rem;
    padding: 0;
    background: url("../images/icon_view.svg") center center no-repeat;
}

a.iconsave {
    display: inline-block;
    width: 3.2rem;
    height: 3.2rem;
    margin: 0 0.4rem 0 0.4rem;
    padding: 0;
    background: url("../images/icon_save.svg") center center no-repeat;
}

/* PAGINATION */
.pagination-container {
    width: 100%;
    height: auto;
    margin: 5rem 0 0 0;
    padding: 0;
    text-align: center;
    float: left;
    clear: both;
}

ul.pagination {
    list-style: none;
    width: 100%;
    height: auto;
    font-size: 0;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

    ul.pagination > li.page-item {
        display: inline-block;
        margin: 0 0.3rem 0.6rem 0.3rem;
        vertical-align: top;
    }

        ul.pagination > li.page-item > span.page-link, ul.pagination > li.page-item > a {
            display: block;
            width: auto;
            height: auto;
            position: relative;
            font-family: "Open Sans", Arial, Helvetica, sans-serif;
            font-size: 1.4rem;
            color: #252A36;
            font-weight: 600;
            font-style: normal;
            margin: 0;
            padding: 1rem;
            text-align: left;
            text-decoration: none;
            letter-spacing: 0;
            line-height: 1.2;
            float: left;
            clear: both;
            border-radius: 6px;
            background-color: #F5F5F6;
            -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
            transition: all 0.24s ease-in-out;
        }

            ul.pagination > li.page-item > span.page-link:hover, ul.pagination > li.page-item > a:hover {
                color: #252A36;
                text-decoration: none;
                background-color: #ECF5F7;
            }

.no-touch ul.pagination > li.page-item > span.page-link:hover, .no-touch ul.pagination > li.page-item > a:hover {
    color: #252A36;
    text-decoration: none;
    background-color: #CCE3EA;
    -webkit-transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, -4, 0, 1);
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, -4, 0, 1);
}

ul.pagination > li.page-item.PagedList-skipToPrevious > a, ul.pagination > li.page-item.PagedList-skipToNext > a, ul.pagination > li.page-item.PagedList-skipToLast > a, ul.pagination > li.page-item.PagedList-skipToFirst > a {
    position: relative;
    width: 3.2rem;
    text-align: left;
    text-indent: -99999px;
    overflow: hidden;
}

    ul.pagination > li.page-item.PagedList-skipToPrevious > a::before, ul.pagination > li.page-item.PagedList-skipToNext > a::before, ul.pagination > li.page-item.PagedList-skipToLast > a::before, ul.pagination > li.page-item.PagedList-skipToFirst > a::before {
        display: block;
        content: " ";
        width: 0.8rem;
        height: 0.8rem;
        position: absolute;
        top: 50%;
        left: 50%;
        margin: 0;
        padding: 0;
        border-top: 2px solid #252A36;
        border-left: 2px solid #252A36;
        -webkit-transform: translate(-0.4rem, -0.4rem) rotate(-45deg);
        transform: translate(-0.4rem, -0.4rem) rotate(-45deg);
    }

    ul.pagination > li.page-item.PagedList-skipToNext > a::before {
        border-top: 2px solid #252A36;
        border-right: 2px solid #252A36;
        border-left: none;
        -webkit-transform: translate(-0.4rem, -0.4rem) rotate(45deg);
        transform: translate(-0.4rem, -0.4rem) rotate(45deg);
    }

    ul.pagination > li.page-item.PagedList-skipToFirst > a::before {
        border-top: 2px solid #252A36;
        border-right: none;
        border-left: 2px solid #252A36;
        -webkit-transform: translate(0rem, -0.4rem) rotate(-45deg);
        transform: translate(0rem, -0.4rem) rotate(-45deg);
    }

    ul.pagination > li.page-item.PagedList-skipToFirst > a::after {
        display: block;
        content: " ";
        width: 0.8rem;
        height: 0.8rem;
        position: absolute;
        top: 50%;
        left: 50%;
        margin: 0;
        padding: 0;
        border-top: 2px solid #252A36;
        border-right: none;
        border-left: 2px solid #252A36;
        -webkit-transform: translate(-0.6rem, -0.4rem) rotate(-45deg);
        transform: translate(-0.6rem, -0.4rem) rotate(-45deg);
    }

    ul.pagination > li.page-item.PagedList-skipToLast > a::before {
        border-top: 2px solid #252A36;
        border-right: 2px solid #252A36;
        border-left: none;
        -webkit-transform: translate(-0.8rem, -0.4rem) rotate(45deg);
        transform: translate(-0.8rem, -0.4rem) rotate(45deg);
    }

    ul.pagination > li.page-item.PagedList-skipToLast > a::after {
        display: block;
        content: " ";
        width: 0.8rem;
        height: 0.8rem;
        position: absolute;
        top: 50%;
        left: 50%;
        margin: 0;
        padding: 0;
        border-top: 2px solid #252A36;
        border-right: 2px solid #252A36;
        border-left: none;
        -webkit-transform: translate(-0.2rem, -0.4rem) rotate(45deg);
        transform: translate(-0.2rem, -0.4rem) rotate(45deg);
    }

ul.pagination > li.page-item.active span.page-link, ul.pagination > li.page-item.active a.page-link {
    color: #fff;
    background-color: #12749A;
}

    ul.pagination > li.page-item.active span.page-link:hover, ul.pagination > li.page-item.active a.page-link:hover {
        color: #fff;
        text-decoration: none;
    }

.no-touch ul.pagination > li.page-item.active span.page-link:hover, .no-touch ul.pagination > li.page-item.active a.page-link:hover {
    color: #fff;
    text-decoration: none;
    background-color: #12749A;
}

ul.pagination > li.page-item.disabled span.page-link, ul.pagination > li.page-item.disabled a.page-link {
    cursor: default;
    background-color: #F5F5F6;
    opacity: 0.5;
}

    ul.pagination > li.page-item.disabled span.page-link:hover, ul.pagination > li.page-item.disabled a.page-link:hover {
        color: #252A36;
        text-decoration: none;
    }

.no-touch ul.pagination > li.page-item.disabled span.page-link:hover, .no-touch ul.pagination > li.page-item.disabled a.page-link:hover {
    color: #252A36;
    text-decoration: none;
    background-color: #F5F5F6;
}

/* FORM STYLES
=================================================================================== */
.formgrid {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-gap: 2.4rem 0;
}

    .formgrid.colx2 {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
        grid-gap: 2.4rem 2.4rem;
        grid-area: item;
    }

        .formgrid.colx2 > .span2 {
            grid-column: span 2;
        }

    .formgrid.colx3 {
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: auto;
        grid-gap: 2.4rem 2.4rem;
    }

        .formgrid.colx3 > .span2 {
            grid-column: span 2;
        }

        .formgrid.colx3 > .span3 {
            grid-column: span 3;
        }

.form label {
    display: block;
    width: 100%;
    height: auto;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #252A36;
    font-weight: 700;
    font-style: normal;
    margin: 0 0 1rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.2;
    float: left;
    clear: both;
}

.form input,
input.input {
    display: block;
    width: 100%;
    height: auto;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #949494;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 1.6rem 1.2rem 1.6rem 1.2rem;
    letter-spacing: 0;
    line-height: 1.2;
    float: left;
    clear: both;
    background: #fff;
    border: 1px solid #949494;
    border-radius: 0.3rem;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: all 0.16s ease-in-out;
}

    .form input::-webkit-input-placeholder,
    input.input::-webkit-input-placeholder {
        color: inherit;
        letter-spacing: 0;
        line-height: inherit;
    }

    .form input::-ms-input-placeholder,
    input.input::-ms-input-placeholder {
        color: inherit;
        letter-spacing: 0;
        line-height: inherit;
    }

    .form input:-ms-input-placeholder,
    input.input:-ms-input-placeholder {
        color: inherit;
        letter-spacing: 0;
        line-height: inherit;
    }

    .form input::-moz-placeholder,
    input.input::-moz-placeholder {
        color: inherit;
        letter-spacing: 0;
        line-height: inherit;
    }

    .form input:-moz-placeholder,
    input.input:-moz-placeholder {
        color: inherit;
        letter-spacing: 0;
        line-height: inherit;
    }

    .form input.placeholder,
    input.input.placeholder {
        color: inherit;
        letter-spacing: 0;
        line-height: inherit;
    }

    .form input:hover,
    input.input:hover {
        color: #949494;
        border: 0.1rem solid #12749A;
        outline: none;
        -o-box-shadow: 0 0 0 0.2rem #12749A;
        box-shadow: 0 0 0 0.2rem #12749A;
    }

    .form input:focus, .form input:disabled,
    input.input:focus,
    input.input:disabled {
        color: #252A36;
        border: 0.1rem solid #252A36;
        outline: none;
        -o-box-shadow: 0 0 0 0.1rem #252A36;
        box-shadow: 0 0 0 0.1rem #252A36;
    }

    .form input:active,
    input.input:active {
        color: #252A36;
        border: 0.1rem solid #252A36;
        outline: none;
        -o-box-shadow: 0 0 0 0.1rem #252A36;
        box-shadow: 0 0 0 0.1rem #252A36;
    }

input[type=search] {
    padding-right: 4.3rem;
    background: #fff url("../images/search_icon.svg") right 10px center no-repeat;
    background-size: 23px auto;
}

input.filtericon {
    padding-right: 4.3rem;
    background: #fff url("../images/filter_icon.svg") right 10px center no-repeat;
    background-size: 23px auto;
}

textarea {
    resize: vertical;
    overflow: auto;
    vertical-align: top;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

    input::-webkit-input-placeholder,
    textarea::-webkit-input-placeholder {
        -webkit-transition: opacity 0.5s 0.5s ease;
        transition: opacity 0.5s 0.5s ease;
        opacity: 1;
    }

    input::-ms-input-placeholder,
    textarea::-ms-input-placeholder {
        -ms-transition: opacity 0.5s 0.5s ease;
        transition: opacity 0.5s 0.5s ease;
        opacity: 1;
    }

    input:-ms-input-placeholder,
    textarea:-ms-input-placeholder {
        -ms-transition: opacity 0.5s 0.5s ease;
        transition: opacity 0.5s 0.5s ease;
        opacity: 1;
    }

    input::-moz-placeholder,
    textarea::-moz-placeholder {
        -moz-transition: opacity 0.5s 0.5s ease;
        transition: opacity 0.5s 0.5s ease;
        opacity: 1;
    }

    input:-moz-placeholder,
    textarea:-moz-placeholder {
        -moz-transition: opacity 0.5s 0.5s ease;
        transition: opacity 0.5s 0.5s ease;
        opacity: 1;
    }

    input.placeholder,
    textarea.placeholder {
        transition: opacity 0.5s 0.5s ease;
        opacity: 1;
    }

a.btn,
button.btn,
button.accept-policy,
.form button {
    display: block;
    min-width: 160px;
    width: auto;
    height: auto;
    position: relative;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #fff;
    font-weight: 700;
    font-style: normal;
    margin: 1.5rem 0 0 0;
    padding: 1.4rem 2rem 1.2rem 2rem;
    text-align: center;
    text-decoration: none;
    letter-spacing: 0.01rem;
    line-height: 1.2;
    float: left;
    clear: both;
    background-color: #252A36;
    border: none;
    border-bottom: 0.4rem solid #F06C00;
    border-radius: 0;
    transition: color 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    cursor: pointer;
    z-index: 1;
}

    a.btn::before,
    button.btn::before,
    button.accept-policy::before,
    .form button::before {
        display: block;
        content: "";
        width: 100%;
        height: 0;
        position: absolute;
        bottom: 0;
        left: 0;
        margin: 0;
        padding: 0;
        background-color: #F06C00;
        transition: height 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
        z-index: -1;
    }

    a.btn:hover,
    button.btn:hover,
    button.accept-policy:hover,
    .form button:hover {
        color: #fff;
        text-decoration: none;
    }

.no-touch a.btn:hover,
.no-touch button.btn:hover,
.no-touch button.accept-policy:hover,
.no-touch .form button:hover {
    color: #252A36;
    text-decoration: none;
}

    .no-touch a.btn:hover::before,
    .no-touch button.btn:hover::before,
    .no-touch button.accept-policy:hover::before,
    .no-touch .form button:hover::before {
        height: 100%;
    }

a.btn--icon,
button.btn--icon,
button.accept-policy--icon,
.form button--icon {
    min-width: auto;
    padding: 1.2rem 2rem 1rem 2rem;
}

    a.btn--icon > span,
    button.btn--icon > span,
    button.accept-policy--icon > span,
    .form button--icon > span {
        display: inline-block;
        width: 2.4rem;
        height: 2.4rem;
        margin: 0 0 0 1.2rem;
        padding: 0;
        vertical-align: middle;
    }

        a.btn--icon > span svg,
        button.btn--icon > span svg,
        button.accept-policy--icon > span svg,
        .form button--icon > span svg {
            display: block;
            width: 100%;
            max-width: 100%;
            height: auto;
        }

            a.btn--icon > span svg path,
            button.btn--icon > span svg path,
            button.accept-policy--icon > span svg path,
            .form button--icon > span svg path {
                fill: #fff;
            }

.no-touch a.btn--icon:hover span svg path,
.no-touch button.btn--icon:hover span svg path,
.no-touch button.accept-policy--icon:hover span svg path,
.no-touch .form button--icon:hover span svg path {
    fill: #252A36;
}

a.btn--white,
button.btn--white,
button.accept-policy--white,
.form button--white {
    color: #252A36;
    text-decoration: none;
    background-color: #fff;
    border: none;
    border-bottom: 0.4rem solid #F06C00;
}

    a.btn--white::before,
    button.btn--white::before,
    button.accept-policy--white::before,
    .form button--white::before {
        background-color: #F06C00;
    }

    a.btn--white:hover,
    button.btn--white:hover,
    button.accept-policy--white:hover,
    .form button--white:hover {
        color: #252A36;
        text-decoration: none;
    }

.no-touch a.btn--white:hover,
.no-touch button.btn--white:hover,
.no-touch button.accept-policy--white:hover,
.no-touch .form button--white:hover {
    color: #252A36;
    text-decoration: none;
}

    .no-touch a.btn--white:hover::before,
    .no-touch button.btn--white:hover::before,
    .no-touch button.accept-policy--white:hover::before,
    .no-touch .form button--white:hover::before {
        height: 100%;
    }

/* COOKIES POPUP STYLES
=================================================================================== */
#cookies {
    width: 90%;
    max-width: 400px;
    position: fixed;
    bottom: 20px;
    left: 20px;
    height: auto;
    font-family: "Poppins", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #fff;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 2rem 2rem 2.2rem 2rem;
    text-align: left;
    text-decoration: none;
    letter-spacing: 0.01rem;
    line-height: 1.6;
    float: left;
    clear: both;
    background-color: #252A36;
    border-left: 0.8rem solid #F06C00;
    z-index: 1000;
    -o-box-shadow: 0 0.4rem 1.6rem 0 rgba(0, 0, 0, 0.25);
    box-shadow: 0 0.4rem 1.6rem 0 rgba(0, 0, 0, 0.25);
}

    #cookies > a {
        color: #fff;
        text-decoration: underline;
    }

        #cookies > a:hover {
            color: #fff;
            text-decoration: underline;
        }

.no-touch #cookies > a:hover {
    color: #fff;
    text-decoration: underline;
}

button.accept-policy {
    margin: 2rem 0 0 0;
    color: #252A36;
    text-decoration: none;
    background-color: #fff;
    border: none;
    border-bottom: 0.4rem solid #F06C00;
    float: left;
    clear: both;
}

    button.accept-policy::before {
        background-color: #F06C00;
    }

    button.accept-policy:hover {
        color: #252A36;
        text-decoration: none;
    }

.no-touch button.accept-policy:hover {
    color: #252A36;
    text-decoration: none;
}

    .no-touch button.accept-policy:hover::before {
        height: 100%;
    }

/* FILTERS PAGE STYLES
=================================================================================== */
#filters_modal {
    display: block;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0;
    padding: 0;
    background: rgba(37, 42, 54, 0.6);
    overflow-y: scroll;
    -ms-overflow-y: scroll;
    overflow-x: hidden;
    -ms-overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    z-index: 200;
    visibility: hidden;
    opacity: 0;
    transition: all 0.6s ease-in-out;
    transition-property: visibility, opacity;
}

    #filters_modal > #filters_modal_tb {
        display: table;
        width: 100%;
        height: 100%;
        position: relative;
        margin: 0;
        padding: 0;
        float: left;
        clear: both;
        z-index: 200;
    }

        #filters_modal > #filters_modal_tb > #filters_modal_tbc {
            display: table-cell;
            width: 100%;
            height: 100%;
            margin: 0;
            padding: 2rem 0 2rem 0;
            vertical-align: middle;
        }

    #filters_modal #filters_pu {
        width: 100%;
        max-width: 592px;
        height: auto;
        position: relative;
        margin: 0;
        padding: 3rem 0 3.8rem 0;
        float: left;
        clear: both;
        background-color: #fff;
        border: 1px solid #252A36;
        -o-box-shadow: 0 0.4rem 1.6rem 0 rgba(0, 0, 0, 0.15);
        box-shadow: 0 0.4rem 1.6rem 0 rgba(0, 0, 0, 0.15);
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        transition: -webkit-transform 0.6s ease-in-out;
        transition: transform 0.6s ease-in-out;
        transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
    }

        #filters_modal #filters_pu > .contents {
            width: 86%;
            max-width: 86%;
        }

    #filters_modal.open {
        visibility: visible;
        opacity: 1;
    }

        #filters_modal.open #filters_pu {
            -webkit-transform: translateX(0);
            transform: translateX(0);
        }

.filters_title {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: auto;
    grid-gap: 0 2rem;
}

    .filters_title > div {
        text-align: right;
    }

a#filters_close,
button#clear_filters {
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #12749A;
    font-weight: 700;
    font-style: normal;
    margin: 0;
    padding: 0;
    text-decoration: none;
    text-align: right;
    letter-spacing: 0;
    line-height: 1.2;
    background: none;
    border: none;
}

    a#filters_close:hover,
    button#clear_filters:hover {
        color: #12749A;
        text-decoration: none;
    }

.no-touch a#filters_close:hover,
.no-touch button#clear_filters:hover {
    color: #12749A;
    text-decoration: underline;
}

#filters_pu ul {
    list-style: none;
    width: auto;
    height: auto;
    margin: 0 0 1.6rem 0;
    padding: 0;
    float: left;
    clear: both;
}

    #filters_pu ul > li {
        width: auto;
        height: auto;
        margin: 0 0 1.6rem 0;
        padding: 0;
        float: left;
        clear: both;
    }

    #filters_pu ul.accordion {
        margin: 0 0 1rem 0;
    }

        #filters_pu ul.accordion > li {
            margin: 0;
        }

            #filters_pu ul.accordion > li > span {
                width: auto;
                height: auto;
                position: relative;
                font-family: "Open Sans", Arial, Helvetica, sans-serif;
                font-size: 1.4rem;
                color: #252A36;
                font-weight: 400;
                font-style: normal;
                margin: 0;
                padding: 0 0 0 2.2rem;
                text-align: left;
                letter-spacing: 0.025em;
                line-height: 1.2;
                background: none;
                border: none;
                float: left;
                clear: both;
                cursor: pointer;
            }

                #filters_pu ul.accordion > li > span::before {
                    display: block;
                    content: " ";
                    width: 1rem;
                    height: 1rem;
                    position: absolute;
                    top: 50%;
                    left: 0;
                    margin: 0;
                    padding: 0;
                    -webkit-transform: translateY(-50%) rotate(45deg);
                    transform: translateY(-50%) rotate(45deg);
                    transition: -webkit-transform 0.26s ease-in-out;
                    transition: transform 0.26s ease-in-out;
                    transition: transform 0.26s ease-in-out, -webkit-transform 0.26s ease-in-out;
                    border-top: 2px solid #252A36;
                    border-right: 2px solid #252A36;
                }

                #filters_pu ul.accordion > li > span.active::before {
                    -webkit-transform: translateY(-50%) rotate(135deg);
                    transform: translateY(-50%) rotate(135deg);
                }

            #filters_pu ul.accordion > li ul {
                margin: 1.4rem 0 0 2.2rem;
                overflow: hidden;
                max-height: 0;
                transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
            }

                #filters_pu ul.accordion > li ul.show {
                    max-height: 1000px;
                    transition: max-height 1s ease-in-out;
                }

.filters_buttons {
    display: grid;
    width: 100%;
    height: auto;
    margin: 1rem 0 0 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(2, auto);
    grid-template-rows: auto;
    grid-gap: 2rem 2rem;
    align-items: center;
}

    .filters_buttons > div:nth-child(1) {
        text-align: left;
    }

    .filters_buttons > div:nth-child(2) {
        text-align: right;
    }

button.filter {
    width: auto;
    height: auto;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.6rem;
    color: #fff;
    font-weight: 700;
    font-style: normal;
    margin: 0;
    padding: 1.2rem 2rem 1.2rem 2rem;
    text-align: left;
    letter-spacing: 0.025em;
    line-height: 1.2;
    background-color: #12749A;
    border: none;
    border-radius: 6px;
    float: left;
    clear: both;
    cursor: pointer;
    transition: all 0.33s ease-in-out;
}

    button.filter:hover {
        color: #fff;
        background-color: #12749A;
    }

.no-touch button.filter:hover {
    color: #fff;
    background-color: #252A36;
}

/* Checkbox */
label.checkbox {
    display: block;
    width: 100%;
    height: auto;
    position: relative;
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 1.4rem;
    color: #252A36;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    padding: 0 0 0 2.8rem;
    text-align: left;
    letter-spacing: 0.025em;
    line-height: 1.2;
    float: left;
    clear: both;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    cursor: pointer;
}

.no-touch label.checkbox:hover {
    color: #12749A;
}

label.checkbox > span.check {
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    background: #fff;
    border: 1px solid #252A36;
    border-radius: 2px;
    z-index: 2;
}

    label.checkbox > span.check::after {
        display: none;
        content: " ";
        width: 6px;
        height: 11px;
        position: absolute;
        top: 0;
        left: 4px;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        -webkit-transform: rotate(35deg);
        transform: rotate(35deg);
    }

label.checkbox > input[type=checkbox] {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0;
}

    label.checkbox > input[type=checkbox]:checked ~ span.check {
        background: #12749A;
    }

        label.checkbox > input[type=checkbox]:checked ~ span.check:after {
            display: block;
        }

/* ACCOUNT PAGE STYLES
=================================================================================== */
.account {
    padding: 5rem 0 5rem 0;
    background-color: #252A36;
}

    .account > .contents {
        width: 90%;
        max-width: 90%;
    }

.account_grid {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: 1fr 2fr;
    grid-template-rows: auto;
    grid-gap: 3.2rem 4rem;
}

    .account_grid > .column {
        text-align: left;
    }

.account_form {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    grid-gap: 8rem 2.4rem;
}

    .account_form > .item {
        text-align: left;
    }

        .account_form > .item > label {
            color: #fff;
        }

        .account_form > .item.span2 {
            grid-column: span 2;
        }

/* PAGE STYLES
=================================================================================== */

.contents {
    font-family: Arial, sans-serif;
    font-size: 1.6rem;
    line-height: 1.5;
}

    .contents h1 {
        font-size: 3.2rem;
        font-weight: bold;
        margin-bottom: 20px;
    }

    .contents h3 {
        font-size: 1.6rem;
        font-weight: bold;
        margin-top: 20px;
        margin-bottom: 10px;
    }

    .contents ul {
        /*list-style-type: none;*/
        padding: 5px;
        margin-left: 10px;
    }

        .contents ul li {
            margin-bottom: 10px;
        }




    .contents br {
        line-height: 1.5;
    }





/* PAGE STYLES
=================================================================================== */
/* PAGE STYLES
=================================================================================== */
/* FOOTER
=================================================================================== */
footer#globalfooter {
    width: 100%;
    height: auto;
    position: relative;
    margin: 9rem 0 0 0;
    padding: 6rem 0 6rem 0;
    float: left;
    clear: both;
    background-color: #EFF1F3;
    z-index: 1;
}

    footer#globalfooter > .contents {
        width: 90%;
        max-width: 1300px;
    }

#footer_grid {
    display: grid;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 1fr;
    grid-gap: 0 0;
}

    #footer_grid > .column {
        border-left: 1px solid grey;
    }

        #footer_grid > .column > .contents {
            width: 80%;
            max-width: 80%;
        }

ul.footer_nav {
    list-style: none;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

    ul.footer_nav > li {
        width: 100%;
        height: auto;
        font-family: "Open Sans", Arial, Helvetica, sans-serif;
        font-size: 1.6rem;
        color: #252A36;
        font-weight: 700;
        font-style: normal;
        margin: 0 0 1.2rem 0;
        padding: 0;
        letter-spacing: 0;
        line-height: 1.4;
        float: left;
        clear: both;
        vertical-align: top;
    }

        ul.footer_nav > li > ul {
            list-style: none;
            width: 100%;
            height: auto;
            margin: 1rem 0 0 0;
            padding: 0;
            float: left;
            clear: both;
        }

            ul.footer_nav > li > ul > li {
                width: 100%;
                height: auto;
                font-family: "Open Sans", Arial, Helvetica, sans-serif;
                font-size: 1.6rem;
                color: #252A36;
                font-weight: 700;
                font-style: normal;
                margin: 0 0 1.2rem 0;
                padding: 0 0 0 3rem;
                letter-spacing: 0;
                line-height: 1.4;
                float: left;
                clear: both;
                vertical-align: top;
            }

        ul.footer_nav > li > a {
            color: #252A36;
            text-decoration: none;
        }

            ul.footer_nav > li > a:hover {
                color: #252A36;
                text-decoration: none;
            }

.no-touch ul.footer_nav > li > a:hover {
    color: #252A36;
    text-decoration: underline;
}

ul.footer_social {
    list-style: none;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    float: left;
    clear: both;
}

    ul.footer_social > li {
        width: 100%;
        height: auto;
        font-family: "Open Sans", Arial, Helvetica, sans-serif;
        font-size: 1.4rem;
        color: #252A36;
        font-weight: 700;
        font-style: normal;
        margin: 0 0 1.2rem 0;
        padding: 0;
        letter-spacing: 0;
        line-height: 1.4;
        float: left;
        clear: both;
        vertical-align: top;
    }

        ul.footer_social > li > a {
            color: #252A36;
            text-decoration: none;
        }

            ul.footer_social > li > a svg {
                width: 16px;
                height: 16px;
                margin: 0 1.6rem 0 0;
                vertical-align: middle;
            }

                ul.footer_social > li > a svg path {
                    fill: #252A36;
                }

            ul.footer_social > li > a:hover {
                color: #252A36;
                text-decoration: none;
            }

.no-touch ul.footer_social > li > a:hover {
    color: #AA1F2E;
    text-decoration: underline;
}

    .no-touch ul.footer_social > li > a:hover svg path {
        fill: #AA1F2E;
    }

#footer_legal {
    width: 100%;
    height: auto;
    margin: 4rem 0 0 0;
    padding: 0;
    float: left;
    clear: both;
}

/* LINKS
=================================================================================== */
a {
    color: #000;
    text-decoration: none;
    -webkit-text-decoration-skip: inherit;
    -moz-text-decoration-skip: inherit;
    -ms-text-decoration-skip: inherit;
    -o-text-decoration-skip: inherit;
    text-decoration-skip: inherit;
    /*-ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  @include hyphens(auto);*/
}

    a:hover {
        color: #000;
        /*color: darken(#000, 10%);*/
        /*color: lighten(#000, 10%);*/
        text-decoration: none;
    }

.no-touch a:hover {
    color: #000;
    text-decoration: none;
}

a img {
    border: 0;
}

a[href^=tel], a[href^=sms] {
    color: inherit;
    text-decoration: none;
    cursor: default;
}

a[x-apple-data-detectors] {
    font-family: inherit !important;
    font-size: inherit !important;
    color: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-decoration: none !important;
}

/* Disable Link CSS + <a href="/" onclick="return false;" class="disabled">123n</a> */
a.disabled {
    pointer-events: none !important;
    cursor: default !important;
}

/* Turns Text Overflow to ellipsis ... KEEP AT BOTTOM OF A-TAGS */
.ellipsis a {
    display: inline-block;
    max-width: 100%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

/* IMAGE STYLES
=================================================================================== */
img {
    vertical-align: top;
    border-style: none;
}

/* TABLES
=================================================================================== */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

td, th {
    padding: 0;
}

/* OUTDATED BROWSER WARNING!
=================================================================================== */
#outdated_browser {
    display: none;
    width: 100%;
    height: auto;
    position: fixed;
    top: 0;
    left: 0;
    margin: 0;
    padding: 3rem 2rem 3rem 2rem;
    text-align: center;
    background-color: #df374b;
    z-index: 5000;
}

    #outdated_browser > .contents {
        width: 90%;
        max-width: 750px;
    }

@supports not (display: grid) {
    #outdated_browser {
        display: block;
    }
}

#outdated_browser h6 {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 2.4rem;
    color: #fff;
    font-weight: bold;
    font-style: normal;
    margin: 0 0 1.2rem 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.2;
    text-align: center;
}

#outdated_browser p {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 1.4rem;
    color: #fff;
    font-weight: normal;
    font-style: normal;
    margin: 0;
    padding: 0;
    letter-spacing: 0;
    line-height: 1.5;
    text-align: center;
}

/* NO JAVASCRIPT WARNING!
=================================================================================== */
html.js #noscript_warning {
    display: none;
}

html.no-js #noscript_warning {
    width: 100%;
    height: auto;
    position: fixed;
    bottom: 0;
    left: 0;
    margin: 0;
    padding: 3rem 2rem 3rem 2rem;
    text-align: center;
    background-color: #f2db4f;
    z-index: 5000;
}

#noscript_warning h6 {
    font-family: Verdana, Geneva, sans-serif;
    font-size: 2rem;
    color: #212121;
    font-weight: bold;
    font-style: normal;
    margin: 0 0 1rem 0;
    padding: 0;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.2;
}

#noscript_warning p {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.4rem;
    color: #212121;
    font-weight: normal;
    font-style: normal;
    margin: 0;
    padding: 0;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.4;
}

/* RESPONSIVE STYLES
=================================================================================== */
.hidden {
    display: none;
}

.invisible {
    visibility: hidden;
}

/* Visible */
.visible_desktop {
    display: inline-block !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_desktop {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_desktop {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_desktop {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_desktop {
        display: none !important;
    }
}

.visible_desktop_tablet_land {
    display: inline-block !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_desktop_tablet_land {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_desktop_tablet_land {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_desktop_tablet_land {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_desktop_tablet_land {
        display: none !important;
    }
}

.visible_desktop_tablet {
    display: inline-block !important;
}

@media only screen and (max-width: 767px) {
    .visible_desktop_tablet {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_desktop_tablet {
        display: none !important;
    }
}

.visible_tablet {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_tablet {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_tablet {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_tablet {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_tablet {
        display: none !important;
    }
}

.visible_tablet_land {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_tablet_land {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_tablet_land {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_tablet_land {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_tablet_land {
        display: none !important;
    }
}

.visible_tablet_port {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_tablet_port {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_tablet_port {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_tablet_port {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_tablet_port {
        display: none !important;
    }
}

.visible_tablet_phone {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_tablet_phone {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_tablet_phone {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_tablet_phone {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_tablet_phone {
        display: inline-block !important;
    }
}

.visible_phone {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_phone {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_phone {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_phone {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_phone {
        display: inline-block !important;
    }
}

.visible_phone_land {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_phone_land {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_phone_land {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_phone_land {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_phone_land {
        display: none !important;
    }
}

.visible_phone_port {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .visible_phone_port {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .visible_phone_port {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .visible_phone_port {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .visible_phone_port {
        display: inline-block !important;
    }
}

/* Hidden */
.hidden_desktop {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hidden_desktop {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .hidden_desktop {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .hidden_desktop {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 479px) {
    .hidden_desktop {
        display: inline-block !important;
    }
}

.hidden_desktop_tablet {
    display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hidden_desktop_tablet {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .hidden_desktop_tablet {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .hidden_desktop_tablet {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 479px) {
    .hidden_desktop_tablet {
        display: inline-block !important;
    }
}

.hidden_tablet {
    display: inline-block !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hidden_tablet {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .hidden_tablet {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .hidden_tablet {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 479px) {
    .hidden_tablet {
        display: inline-block !important;
    }
}

.hidden_tablet_phone {
    display: inline-block !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hidden_tablet_phone {
        display: none !important;
    }
}

@media screen and (max-width: 1023px) {
    .hidden_tablet_phone {
        display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .hidden_tablet_phone {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .hidden_tablet_phone {
        display: none !important;
    }
}

.hidden_phone {
    display: inline-block !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hidden_phone {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .hidden_phone {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .hidden_phone {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .hidden_phone {
        display: none !important;
    }
}

.hidden_phone_land {
    display: inline-block !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hidden_phone_land {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .hidden_phone_land {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .hidden_phone_land {
        display: none !important;
    }
}

@media only screen and (max-width: 479px) {
    .hidden_phone_land {
        display: inline-block !important;
    }
}

.hidden_phone_port {
    display: inline-block !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .hidden_phone_port {
        display: inline-block !important;
    }
}

@media screen and (max-width: 1023px) {
    .hidden_phone_port {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .hidden_phone_port {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 479px) {
    .hidden_phone_port {
        display: none !important;
    }
}

/* DEVICE PARALLAX
=================================================================================== */
/* LARGE DESKTOP - ABOVE 1280PX
=================================================================================== */
@media only screen and (min-width: 1281px) {
    /* Styles */
}
/* IPAD/TABLET (LANDSCAPE)
=================================================================================== */
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    /* Clients */
    .tile_grid {
        grid-gap: 3rem 6rem;
    }
}
/* IPAD/TABLET/IPHONE XR (PORTRAIT)
=================================================================================== */
@media only screen and (max-width: 1023px) {
    /* Header */
    header#globalheader {
        padding: 1.6rem 0 1.6rem 0;
    }

    #header_grid {
        display: grid;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
        float: left;
        clear: both;
        grid-template-columns: minmax(auto, 180px) auto;
        grid-template-areas: "main_logo menu_button";
        grid-gap: 1.4rem 2rem;
        align-items: center;
    }

        #header_grid > #main_logo {
            grid-area: main_logo;
            text-align: left;
        }

        #header_grid > #menu_button {
            display: block;
            grid-area: menu_button;
            text-align: right;
        }

        #header_grid > nav#main {
            display: none;
            grid-area: nav_main;
            text-align: left;
        }

        #header_grid.open {
            grid-template-areas: "main_logo menu_button" "nav_main nav_main";
        }

            #header_grid.open > nav#main {
                display: block;
            }

    nav#main > ul {
        padding: 0 0 0.6rem 0;
    }

        nav#main > ul > li {
            width: 100%;
            margin: 0.4rem 0 0.4rem 0;
            float: left;
            clear: both;
        }
    /* Clients */
    .tile_grid {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 3rem 6rem;
    }
    /* Document Library */
    table.documents > thead > tr > th {
        font-size: 1.6rem;
        padding: 1.2rem 1.2rem 1.2rem 1.2rem;
    }

        table.documents > thead > tr > th::after {
            width: 12px;
            height: 12px;
        }

    table.documents > tbody > tr > td {
        font-size: 1.6rem;
        padding: 1.2rem 1.2rem 1.2rem 1.2rem;
    }

        table.documents > tbody > tr > td:nth-child(4) {
            font-size: 1.2rem;
        }
}
/* IPHONE/MOBILE (LANDSCAPE)
=================================================================================== */
@media only screen and (max-width: 767px) {
    /* Typography */
    h1, .h1 {
        font-size: 3.2rem;
    }

    #hero h1, #hero .h1 {
        font-size: 3.6rem;
    }

    #hero h2, #hero .h2 {
        font-size: 2rem;
    }
    /* Hero */
    #hero {
        height: auto;
    }
    /* Page Styles */
    .breadcrumbs {
        margin: 2.4rem 0 0 0;
    }

    .pagetitle {
        margin: 4.8rem 0 0 0;
    }
    /* Login */
    #api .entry {
        grid-template-columns: 1fr;
        grid-gap: 3rem 2.4rem;
    }

        #api .entry > .working, #api .entry > .buttons {
            grid-column: span 1;
        }

        #api .entry > .buttons {
            margin: 0;
            grid-column: span 1;
        }
    /* Clients */
    .tile_grid {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 3rem 3rem;
    }
    /* Documents */
    .search_grid {
        grid-template-columns: 1fr;
    }

    .filters {
        padding: 1.6rem;
        gap: 1.6rem;
    }
    /* Account */
    .account_grid {
        grid-template-columns: 1fr;
    }

    .account_form {
        grid-template-columns: 1fr;
        grid-gap: 2.4rem 2.4rem;
    }
    /* Footer */
    footer#globalfooter {
        margin: 6.4rem 0 0 0;
        padding: 4.8rem 0 4.8rem 0;
    }

    #footer_grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-gap: 3rem 0;
    }

        #footer_grid > .column {
            padding: 0 0 2rem 0;
            border-left: none;
            border-bottom: 1px solid grey;
        }

            #footer_grid > .column > .contents {
                width: 100%;
                max-width: 100%;
            }
}
/* IPHONE/MOBILE (PORTRAIT)
=================================================================================== */
@media only screen and (max-width: 479px) {
    /* Typography */
    h1, .h1 {
        font-size: 3rem;
        padding: 0 0 0 2rem;
    }

        h1::before, .h1::before {
            width: 0.4rem;
        }
    /* Clients */
    .tile_grid {
        grid-template-columns: 1fr;
        grid-gap: 2rem 0;
    }
    /* Document Library */
}

@media print {
    *,
    *::before,
    *::after {
        background: transparent !important;
        color: #000 !important; /* Black prints faster */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

        a[href]::after {
            content: " (" attr(href) ")";
        }

        a.skip-main {
            display: none;
        }

    abbr[title]::after {
        content: " (" attr(title) ")";
    }
    /*
  * Don't show links that are fragment identifiers,
  * or use the `javascript:` pseudo protocol
  */
    a[href^="#"]::after {
        content: "";
    }

    a[href^="javascript:"]::after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }
    /*
  * Printing Tables:
  * http://css-discuss.incutio.com/wiki/Printing_Tables
  */
    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
        background-color: greenyellow;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
