﻿@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;0,700;1,400;1,600&display=swap");

h1 {
    font-size: 36.4px !important;
}

h2 {
    font-size: 30.94px !important;
}

h3 {
    font-size: 26.299px !important;
}

h4 {
    font-size: 22.35415px !important;
}

h5 {
    font-size: 19.0010275px !important;
}

h6 {
    font-size: 16.150873375px !important;
}

:root {
    /* autoprefixer: off */
    --white: white;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --dk-blue: #0D1D45;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --blue: #0055B8;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --off-blue: #4f82bd;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --lt-blue: #D6EBFF;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --green: #B0D1BE;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --lime: #C2D402;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --purple: #3D2F88;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --grey: #5a5a5a;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --lt-grey: #eeeeee;
    /* autoprefixer: on */
    /* autoprefixer: off */
    --black: #000000;
    /* autoprefixer: on */
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, p, blockquote, th, td, label, .datafield span, .datafield div {
    font-size: 14px;
    line-height: 1.24;
}

@media only screen and (min-width: 1156px) {
    body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, p, blockquote, th, td, label, .datafield span, .datafield div {
        font-size: 14px;
    }
}

body {
    font-size: 14px !important;
    font-family: "Open Sans", sans-serif;
    background: var(--white);
    color: var(--grey);
}

@media all and (min-width: 1156px) {
    body {
        font-size: 14px !important;
    }
}

a {
    color: var(--blue);
}

    a:hover {
        color: var(--off-blue);
    }

h1, h2, h3, h4, h5, h6 {
    font-family: "Open Sans", sans-serif;
    color: var(--grey) !important;
}

.button, .button.button-edit {
    background: var(--blue) !important;
    border-radius: 10px !important;
    border: 0 !important;
    color: white !important;
    font-family: "Open Sans", sans-serif !important;
    font-weight: 700;
    padding: 12px 24px !important;
    text-align: center !important;
    text-transform: uppercase;
}

    .button:hover, .button.button-edit:hover {
        background: var(--blue) !important;
    }

#ctl00_Body___100__divQuickLinks__1,
#ctl00_Body___100__lblQuickContacts__1,
.yourinfo {
    overflow-wrap: break-word;
}

.row.header {
    width: unset;
}

header.header_wrapper {
    background: var(--dk-blue);
    height: auto !important;
    overflow: hidden;
}

    header.header_wrapper #ctl00___1__divLeft__1 {
        background: var(--blue);
        position: relative;
        z-index: 5;
        width: 25%;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 120px;
    }

        header.header_wrapper #ctl00___1__divLeft__1::before, header.header_wrapper #ctl00___1__divLeft__1::after {
            content: "";
            position: absolute;
            top: 0;
            bottom: 0;
            z-index: -1;
        }

        header.header_wrapper #ctl00___1__divLeft__1::before {
            background: inherit;
            width: 100vw;
            right: 0;
        }

        header.header_wrapper #ctl00___1__divLeft__1::after {
            left: 100%;
            background: var(--lime);
            width: 16%;
        }

    header.header_wrapper .logoimage, header.header_wrapper .opseu-memberlinkheader {
        background-size: contain !important;
        width: 185px;
        display: inline-block;
        text-align: center;
        height: 150px;
        margin-top: 0;
    }

        header.header_wrapper .logoimage h2, header.header_wrapper .opseu-memberlinkheader h2 {
            color: rgba(255, 255, 255, 1) !important;
            pointer-events: none;
            height: 1px;
            width: 1px;
        }

    header.header_wrapper .userinfo {
        color: var(--white);
    }

@media all and (min-width: 768px) {
    header.header_wrapper .userinfo {
        margin-top: 52px;
    }
}

header.header_wrapper .userinfo .logoutlink {
    color: var(--white);
}

header.header_wrapper .nav-utility {
    margin-top: 0px !important;
}

#content_nav {
    font-family: "Open Sans", sans-serif;
}

    #content_nav nav {
        padding: 10px;
        background: white;
        position: relative;
        display: flex;
        justify-content: center;
        z-index: 25;
        box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    }

.login #content_nav nav {
    border-top: 0;
}

#content_nav nav > ul {
    max-width: unset;
    width: unset;
}

    #content_nav nav > ul > li > a {
        border-radius: 10px;
        padding: 6px 14px;
        transition: border-radius 0.2s;
    }

    #content_nav nav > ul > li:has(ul):hover > a {
        border-radius: 10px 10px 0 0;
    }

@media all and (min-width: 768px) {
    #content_nav nav > ul ul {
        background: var(--blue);
        border-radius: 0 10px 10px 10px;
    }

        #content_nav nav > ul ul a {
            padding: 10px 20px;
            color: var(--white);
        }
}

#content_nav nav li {
    border: none;
    background: none !important;
    box-shadow: none !important;
    padding: 0;
}

    #content_nav nav li:hover {
        background: none;
    }

        #content_nav nav li:hover > a {
            background: var(--blue) !important;
            color: var(--white);
        }

    #content_nav nav li a {
        color: var(--grey);
        padding-left: 9px;
        font-size: 15px;
        line-height: 20px;
    }

        #content_nav nav li a.current {
            color: var(--white);
            background: var(--blue);
        }

    #content_nav nav li ul li a {
        display: block;
    }

        #content_nav nav li ul li a.current, #content_nav nav li ul li a:hover {
            background: var(--lt-grey) !important;
            color: var(--blue);
        }

@media all and (max-width: 639px) {
    #content_nav nav {
        padding: 0;
    }

    nav ul {
        width: 100% !important;
    }

        nav ul ul {
            background: none !important;
            padding: 0;
        }

        nav ul li.haschildren {
            position: relative;
        }

            nav ul li.haschildren::after {
                content: "";
                display: block;
                position: absolute;
                background: none;
                border: 3px solid var(--grey);
                border-top: 0;
                border-right: 0;
                right: 8px;
                top: 8px;
                transform: rotate(-45deg);
                width: 10px;
                height: 10px;
            }

        nav ul :is(li.haschildren:hover, li.haschildren.current)::after {
            border-color: var(--white) !important;
        }

        nav ul a {
            text-align: center;
            display: block !important;
            border-radius: 0 !important;
            font-size: 18px !important;
            text-decoration: none !important;
        }
}

nav > ul > li.haschildren {
    padding-right: unset;
}

#content_wrapper {
    background: var(--white);
}

    #content_wrapper .shadedpanel {
        background: var(--white) !important;
        border-radius: 20px !important;
        border: 1px solid var(--lt-grey);
        box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    }

    #content_wrapper .panel h4.head-icon-yourinfo,
    #content_wrapper .panel h4.head-icon-quicklinks,
    #content_wrapper .panel h4.head-icon-quickcontacts {
        padding-left: 0;
        background: none;
    }

    #content_wrapper .postcontent {
        margin-bottom: 22.652px;
    }

        #content_wrapper .postcontent img[align=left] {
            display: block;
            float: left;
            margin: 0 0.85em 0.85em 0;
        }

        #content_wrapper .postcontent img[align=center] {
            display: block;
            margin: 0 auto 0.85em;
        }

        #content_wrapper .postcontent img[align=right] {
            display: block;
            margin: 0 0 0.85em 0.85em;
        }

    #content_wrapper .datafield span,
    #content_wrapper .datafield div {
        padding-left: 0.5em;
    }

    #content_wrapper .relateddocuments {
        margin-left: 0 !important;
    }

        #content_wrapper .relateddocuments ul {
            margin-left: 0 !important;
            margin-top: 0.5em;
        }

article img {
    border-radius: 40px;
}

table.dataTable {
    border-bottom: 1px solid #ddd !important;
}

    table.dataTable th {
        border-bottom: 1px solid #ddd !important;
    }

input {
    border-radius: 4px !important;
}

    input[type=text], input[type=password] {
        min-height: 33px;
    }

.emaillink {
    margin-top: 7px;
    display: inline-block;
}

.alwayslabel {
    background: var(--white);
    padding-left: 5px;
    border-radius: 0;
    color: var(--grey);
    width: 100%;
    font-weight: 400 !important;
    font-size: 14px;
    line-height: 20px;
}

    .alwayslabel + input {
        width: 100%;
    }

.required_icon {
    color: red;
    margin-left: 4px;
}

label {
    margin-bottom: 18px;
}

footer {
    background: var(--dk-blue) !important;
}

    footer #footer {
        border: 0;
        padding: 50px 0;
    }

        footer #footer div {
            font-size: 12px;
            color: white;
        }

        footer #footer label {
            color: inherit;
        }

        footer #footer .copyright {
            color: white;
        }

            footer #footer .copyright a {
                color: var(--white);
            }

                footer #footer .copyright a:hover {
                    color: var(--blue);
                }

.eventcalendar .day {
    padding: 3px 5px;
}

    .eventcalendar .day .eventcalendarlink:not([title=""]) {
        color: "";
        background: "";
        padding: 8px 0;
        margin: 5px 0;
        display: block;
        border-radius: 4px;
        text-align: center;
        font-size: 90%;
    }

        .eventcalendar .day .eventcalendarlink:not([title=""]):hover {
            text-decoration: none;
            opacity: 0.8;
        }

.eventcalendar .eventcalendardetails {
    background: none;
}

    .eventcalendar .eventcalendardetails .availableevent {
        border-radius: 0;
        background: none;
    }

        .eventcalendar .eventcalendardetails .availableevent .headline {
            color: "";
        }

.wizardbutton {
    line-height: 31px !important;
}

@media all and (min-width: 768px) {
    .wizardbutton {
        margin-left: 6px;
        margin-right: 6px;
    }
}

.eventdetails .overflow.bar {
    background: none;
    border: 0;
}

    .eventdetails .overflow.bar .wizardbutton {
        margin-left: 14px;
    }

.eventdetails .topbar {
    border: 0;
}

.eventpage {
    border: 0;
}

.login h3 {
    font-size: 22px !important;
}

.login #ctl00_Body___101__lblSignupTitle__1 {
    margin-top: 0 !important;
}

.login #content_wrapper {
    background-size: cover;
}

.login .smallfont {
    margin-top: 1em;
}

.login .loginimage {
    display: none !important;
}

@media all and (min-width: 768px) {
    .login #ctl00_Body___101__divLoginPanelB__1 {
        font-size: 95%;
    }

        .login #ctl00_Body___101__divLoginPanelB__1 a[data-buttonname=lnkForgotUsername] {
            margin-top: 88px;
        }

        .login #ctl00_Body___101__divLoginPanelB__1 a[data-buttonname=lnkForgotPassword] {
            margin-top: 68px;
        }
}

.login #ctl00_Body___101__chkRememberMe__1 {
    white-space: nowrap;
    display: flex;
    align-items: center;
}

@media all and (min-width: 768px) {
    .login #ctl00_Body___101__chkRememberMe__1 {
        margin-top: 9px;
        font-size: 84%;
    }
}

@media all and (min-width: 768px) {
    .login #ctl00_Body___101__divSubmitLeft__1 {
        padding-left: 0 !important;
    }
}

@media only screen and (min-width: 768px) {
    header .logoimage {
        display: block;
        width: 330px;
        float: left;
        margin-top: 5px;
        margin-bottom: 5px;
    }
}

@media only screen and (min-width: 1156px) {
    header .logoimage {
        margin-top: 45px;
        margin-bottom: 15px;
    }
}

.opseudependantinformation #ctl00_Body___462__divHeader__1 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.opseudependantinformation .opseu-buttonbar .button {
    margin-bottom: 8px;
}
