﻿@font-face {
    font-display:swap;
    font-family:Overpass;
    font-style:normal;
    font-weight:400;
    src:url(../../Fonts/overpass-v12-latin-regular.woff2) format("woff2");
}
@font-face {
    font-display:swap;
    font-family:Overpass;
    font-style:italic;
    font-weight:400;
    src:url(../../Fonts/overpass-v12-latin-italic.woff2) format("woff2");
}
@font-face {
    font-display:swap;
    font-family:Overpass;
    font-style:normal;
    font-weight:700;
    src:url(../../Fonts/overpass-v12-latin-700.woff2) format("woff2");
}

*, *::before, *::after {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
}

html
{
    font-size:18px;
}

html, body, form.mainform
{
    height: 100%;
}
.wrapper
{
    margin: 0 auto;
}

body 
{
    padding: 0;
    margin: 0;
    background-color: #fff;
    color: #444;
    font-family: Overpass,Helvetica,Arial,sans-serif;
    font-size:14px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1
{
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 2.5rem 0;
    color:#101921;
}

h2
{
    font-size: 1.602rem;
    color:#101921;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 1.125rem 0;
}
h2.subsection
{
    margin-top:3rem;
}

h3
{
    font-size: 1.266rem;
    color:#101921;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 .5rem 0;
}

p
{
    margin: 0 0 1rem 0;
}


/* Font awesome */
.far {
    font-size:18px;
}
.fa-red {
    color:#D00;
}
.fa-blue {
    color:#5f9edf;
}


/*Skip to main content link*/
.skipToContent
{
    left:40px;
    top:-70px;
    position:fixed;
    border:2px solid black;
    background:white;
    text-align:center;
    text-decoration:none;
    z-index:100;
}
.skipToContent:focus
{
    top:40px;
    opacity:1;
    outline:1px solid grey;
}
.skipToContent div
{
    padding:10px;
}

/* Hidden */
#accesslinks, .skiplink
{
    display:none;
}
.sr-only
{
    overflow: hidden;
    clip: rect(0,0,0,0);
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
}

/* Links */
a:link, a:visited
{
    color: #101921;
    text-decoration: none;
}
a:hover, a:active
{
    color: #00263d;
}


/* Css Button */
.cssbutton
{
    display:inline-block;
    margin: 0 10px 5px 0;
}
.cssbutton a
{
    background-color:#fff;
    border:3px solid #101921 !important;
    border-radius:30px;
    padding:4px 30px 2px 3px;
    align-items: center;
    display: inline-flex;
    white-space:nowrap;
    font-size:18px;
    font-weight:700;
    color: #101921 !important;
}
.cssbutton a::before
{
    content: "";
    background-color: #101921;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23fff' width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M33.113 15.015v9.87H0v-9.87z'/%3E%3Cpath d='M40 22.498 27.177 40 19.5 34.064l10.582-14.439L19.589 6.172 27.089 0l12.826 16.444z'/%3E%3C/svg%3E");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: .72em;
    border-radius: 50%;
    display: inline-block;
    margin-right: .72em;
    padding: 18.5px;
    position: relative;
    transform: rotate(20deg);
    transition: transform .3s;
    bottom: 1px;
}
.cssbutton a:hover
{
    text-decoration:none !important;
}
.cssbutton a:hover::before
{
    transform: rotate(0deg);
}
.cssbutton a:focus
{
    outline-offset:4px;
}

.smallcssbutton .cssbutton a
{
    padding-right:20px;
    font-size:0.8rem;
}
.smallcssbutton .cssbutton a::before
{
    padding:12.5px;
}


/* Pick list control */
.picklistctrl
{
    margin: 0px 0px 0px 0px;
    overflow: auto;
    padding: 0px 0px 0px 0px;
    height: 100px;
    border: 1px solid black;
    background-color: white;
}
.picklistctrl .row
{
    padding: 2px 2px 2px 2px;
}
.picklistctrl .checkbox
{
    float:left;
    width:20px;
}
.picklistctrl input
{
    border:0px;
    background-color: white;
}
.picklistctrl .descr
{
    float:left;
    padding-top:3px;
}
.picklistctrl .value
{
    float:right;
}
.picklistctrl .valuectrl
{
    border:solid 1px black;
    width:60px;
}


/* Maximum width */
.maxwidth
{
    margin:0 auto;
    width:100%;
    max-width:1140px;
}


/* Header */
#header
{
    width:100%;
    position:relative;
    z-index:20;
}
.headermaxwidth
{
    margin:0 auto;
    max-width: calc(1640px + 4rem);
    padding: 0 2rem;
}

/* Header cookie consent */
#header #headercookie
{
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    background-color:#101921;
    padding:0 2rem;
    overflow:hidden;
    border-top-left-radius:8px;
    border-top-right-radius:8px;
    font-size:0.85em;
}
#header #headercookieinner
{
    padding:10px 0;
    overflow:hidden;
}
#header #headercookietext
{
    float:left;
    width:calc(100% - 180px);
    color:#fff;
}
#header #headercookietext a
{
    text-decoration: none;
    border-bottom: 1px solid #ccc;
    color:#fff;
}
#header #headercookieclose
{
    float:left;
    width:180px;
    text-align:right;
}
#header #headercookie .cssbutton
{
    margin:0;
}


#header #headerbanner
{
    color:#000;
    text-align:center;
    background-color:#fa8072;
    overflow:hidden;
}
#header #headerbannerinner
{
    padding:10px 2rem;
    display:table;
    width:100%;
}
#header #headerbanner p
{
    margin:0px;
}
#header #headerbanner p a
{
    color:#000 !important;
    text-decoration:underline;
}
#header #headerbannertext
{
    display:table-cell;
    vertical-align:middle;
    font-size:16px;
    padding-right:1rem;
}
#header #headerbannerhide
{
    display:table-cell;
    width:1%;
    vertical-align:middle;
}
#header #headerbannerhide .cssbutton
{
    margin:0;
}



#header #headertopbar
{
    width:100%;
    background-color:#101921;
    height:20px;
}

#header #headermaininner
{
    position:relative;
}

/* Contains log and black nav bar */
#header #headermainlogonav
{
    align-items: center;
    display: flex;
    justify-content: space-between;
}
#header #headermainlogonav a:focus
{
    outline-offset:-8px;
}
#header #headerlogo
{
    background:#101921;
    padding:39px 31px 40px 30px;
}
#header #headerlogo img
{
    height:60px;
    width:110px;
    vertical-align:bottom;
}
#header #headermainnav,
#header #headermainnavinner
{
    display:flex;
    height:72px;
    background:#101921;
    position:relative;
    z-index:12;
}
#header #headermainnav::before
{
    background: #101921;
    content: "";
    height: 72px;
    left: -15px;
    position: absolute;
    transform: skew(-20deg);
    width: 30px;
}
#header #headermainnavinner
{
    justify-content: center;
    max-width: 883px;
    overflow: visible;
    padding: 0 48px;
}
#header .headermainnavitem
{
    align-items: center;
    border: none;
    display: flex;
}
#header .headermainnavitem a
{
    color: #fff;
    height: 72px;
    padding: 24px;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.5;
    position:relative;
    top:1px;
}
#header .headermainnavitem a:focus
{
    outline-offset:-8px;
}

/* Sub menu under the main black menu */
#header #headermainsub
{
    display:flex;
    align-items: center;
    background: transparent;
    border: none;
    height: 48px;
    justify-content: space-between;
    left: auto;
    position: absolute;
    right: 0;
    top: 102px;
    width: auto;
}
#header #headermainsubinner
{
    align-items: center;
    border-top: 1px solid #cfd1d3;
    border-bottom: 1px solid #cfd1d3;
    box-sizing: content-box;
    color: #101921;
    display: flex;
    gap: 0;
    line-height: 1.5;
    padding: 0;
    background-color: #fff;
}
#header #headermainsubinner::before
{
    box-sizing: inherit;
    background-color: #fff;
    border: 1px solid #cfd1d3;
    border-right: 0;
    content: "";
    height: 41px;
    left: -10px;
    position: absolute;
    top: 3px;
    transform: skew(-20deg);
    width: 20px;
}
#header #headermainsubinner span
{
    position:relative;
    font-size: 14px;
    font-weight:700;
    line-height:1.5;
}
#header #headermainsubinner a
{
    padding:10px;
    border-right: 1px solid #cfd1d3;
    white-space:nowrap;
}
#header #headermainsubinner a:hover
{
    text-decoration:underline;
}
#header #headermainsubinner a:focus
{
    outline-offset:-5px;
}
#header #headermainsubmenu
{
    align-items: center;
    display: flex;
    gap: 4px;
    padding: 10px;
    width: 51px;
    box-sizing:inherit;
    border:0;
    background:none;
    font-family:inherit;
    cursor:pointer;
    justify-content: space-between;
}
#header #headermainsubmenu::after
{
    content: "";
    background-position: 50%;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='40' height='40' fill='%23101921' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.502 30.5 0 17.677 5.936 10l14.439 10.582 13.453-10.493 6.172 7.5-16.444 12.826-6.054.085Z'/%3E%3C/svg%3E");
    background-size: 12px 12px;
    height: 12px;
    transition: transform .3s;
    width: 12px;
}
html.menuopen #header #headermainsubmenu::after
{
    transform: rotate(180deg);
}

/* Hovering menu initiated by the Menu */
#header #headermainsubnav
{
    display:none;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 0 8px rgba(0,0,0,.25);
    left: 0;
    padding: 0;
    position: absolute;
    top: 60px;
    width: 100%;
    z-index: 2;
    left: auto;
    min-width: 350px;
    right: 0;
}
#header #headermainsubnav ul
{
    margin: 0;
    padding: 12px 0;
    list-style:none;
    border-bottom:1px solid #cfd1d3;
}
#header #headermainsubnav ul:last-child
{
    border-bottom:0;
}
#header #headermainsubnav ul.headermainsubnavmobile
{
    display:none;
}
#header #headermainsubnav a
{
    line-height: 20px;
    margin: 4px 0;
    padding: 6px 16px;
    font-size:14px;
    display: flex;
}



/* Sub header under main header */
#subheader #subheadercontent
{
    padding:0 2rem;
}
#subheader #subheaderbreadcrumbs
{
    margin:1.5rem 0;
    font-size:0.9rem;
}
#subheader #subheaderbreadcrumbs ul
{
    margin:0;
    padding:0;
    list-style-type:none;
}
#subheader #subheaderbreadcrumbs li
{
    display:inline-block;
}
#subheader #subheaderbreadcrumbs a
{
    color:#06c !important;
    display:inline-block;
}
#subheader #subheaderbreadcrumbs a::after
{
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23%23101921' width='20' height='20' viewBox='0 -1 20 20'%3E%3Cpath d='M1.013.15.153 1a.51.51 0 0 0 0 .728L8.003 9.5l-7.85 7.772a.51.51 0 0 0 0 .728l.86.85a.526.526 0 0 0 .737 0l9.097-8.986a.51.51 0 0 0 0-.728L1.75.15a.526.526 0 0 0-.737 0Z'/%3E%3C/svg%3E");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 10px 15px;
    bottom: 1.5px;
    content: "";
    height: 15px;
    margin-left: .5rem;
    padding: 0 .5rem;
    position: relative;
    width: 10px;
}

/* Sub header on homepage, including hero */
.wrapper.homepage #header
{
    height:700px;
    margin-bottom:3rem;
}
.wrapper.homepage #subheader
{
    position:absolute;
    top:20px;
    left:0;
    right:0;
    height:680px;
}
.wrapper.homepage #subheader .homepageimage
{
    width:100%;
    height:100%;
    object-fit:cover;
}
.wrapper.homepage #subheader #subheaderinner
{
    position:absolute;
    bottom:0;
    width:100%;
    background: linear-gradient(180deg,transparent,rgba(0,0,0,.4),rgba(0,0,0,.7),rgba(0,0,0,.85));
    max-width:unset;
    padding:4rem 0 2rem;
}
.wrapper.homepage #subheader #subheadertitle h1
{
    color: #fff;
    font-size:3rem;
    margin:0;
}
.wrapper.homepage #subheader #subheaderbreadcrumbs
{
    display:none;
}



/* Main area */
#main
{
    margin: 0 auto;
    overflow:hidden;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    flex-wrap:wrap;
    max-width:1140px;
    padding:0 2rem;
    font-size:19px;
}

/* Main content area */
#maincontent
{
    width:66.66%;
    margin-bottom:3rem;
}
#maincontent a
{
    color:#101921;
    text-decoration:none;
    border-bottom:1px solid #ccc;
}
#maincontent a:hover
{
    border-bottom:1px solid #002F70;
}

/* the h1.pageTitle should be hidden within the content (because it should have been copied to the header) - but re-appear if content is inline-edited */
#maincontent h1.pageTitle,
#maincontent h2.pageTitle
{
    display:none;
}
#maincontent .fr-box h1.pageTitle,
#maincontent .fr-box h2.pageTitle
{
    display:unset;
}

/* Widgets - note, the padding is set by the individual widgets, due to the separator line */
#mainwidgets
{
    width:33.33%;
    padding-left:4.375rem;
    margin-bottom:3rem;
}
#mainwidgets a:hover
{
    text-decoration:underline;
}

/* Logos */
#mainlogos
{
    width:100%;
}
#mainlogos #mainlogosinner
{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin:20px 0;
}
#mainlogos #mainlogosinner img
{
    margin:10px 20px;
    width:100%;
}


/* If full width (i.e. there are no widgets) */
#main.mainfullwidth
{
    display:block;
}
#main.mainfullwidth #maincontent
{
    width:100%;
}
#main.mainfullwidth #mainwidgets
{
    display:none;
}

/* Individual widget */
#mainwidgets .mainwidget
{
    width:100%;
    margin-bottom:3rem;
}
#mainwidgets .mainwidgetcontainer
{
}
#mainwidgets .mainwidgetheader h2
{
    font-size: 1.4rem;
    color: #101921;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 0.7875rem;
}
#mainwidgets .mainwidgetcontent
{
    position:relative;
}
#mainwidgets .mainwidthseparator
{
    border-top:1px dotted #a0a0a0;
    height:1px;
    margin-bottom:1rem;
}


/* Popup with header */
#headerpopup
{
    width:100%;
    background-color:#fff;
    padding:4px 10px;
}
#headerpopup #headerpopupleft
{
    font-size:2em;
}
#mainpopup
{
    width:100%;
}
#mainpopupcontent
{
    padding:10px;
}
#mainpopup #popupmenuright
{
    float:right;
}


#footer
{
    background: #101921;
    color: #fff;
    font-size: .8rem;
    padding-top:4rem;
    overflow:hidden;
}
#footergrid
{
    display:grid;
    column-gap:1em;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    row-gap:1em;
}
.footerleft ul
{
    margin:0 0 1rem;
    padding:0;
    list-style:none;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
#footerlogo a
{
    margin:2rem 0 5rem;
    display:flex;
    justify-content:center;
    width:100%;
}
#footerlogo img
{
    height:70px;
    width:138px;
}
#footeraddress
{
    font-style: normal;
    margin-bottom: 1rem;
    font-size:16px;
    line-height:1.5;
    text-align:center;
}
#footersocial li
{
    padding:0 .3rem;
}
#footersocial a
{
    align-items: center;
    background-color:#fff;
    background-image: none;
    border-color: #aaa;
    border-radius: 50%;
    color: #000;
    display: flex;
    height: 3rem;
    justify-content: center;
    margin-top: 1rem;
    padding: 0;
    text-align: center;
    width: 3rem;
    font-size:1.7rem;
    border: 3px solid transparent;
}
#footersocial a:hover
{
    background-color: #000;
    border-color: #fff;
    color: #fff;
    text-decoration: none;
}
#footersocial svg
{
    height:20px;
    width:20px;
}
#footersocial a:hover svg
{
    fill: #fff;
}
#footerlogos h2
{
    color:#fff;
}
#footerlogos ul
{
    justify-content: space-evenly !important;
}
#footerlogos li
{
    display:block;
}
#footerlogos a
{
    color: #101921;
    text-decoration: none;
}
#footerlogos svg
{
    display: block;
    height: 110px;
    transition: opacity .2s;
    width: 150px;        
}
#footerlogos a:hover svg
{
    opacity: .85;
}
#footer .footerlinks h3
{
    font-size: 18px;
    letter-spacing: -.02em;
    line-height: 110%;
    color:#fff;
    margin-bottom:10px;
}
#footer .footerlinks h3 a
{
    display:none;
}
#footer .footerlinks ul
{
    margin:0;
    padding:0;
    list-style-type:none;
}
#footer .footerlinks li
{
    display:block;
    padding:5px 0;
}
#footer .footerlinks a
{
    color:#fff !important;
    font-weight:400;
    text-decoration:none;
}
#footernav
{
    display: flex;
    justify-content: center;
    padding: 1rem;
}
#footernav ul
{
    margin: 0 0 1rem;
    padding: 1rem 0;
}
#footernav li
{
    display:inline-block;
}
#footernav a
{
    color: #fff;
    display: block;
    margin: 0 .5rem 0 0;
    padding: 5px 0;
}


/* Red Star */
.redHilite
{
    color: #c00;
}

/* Error */
.errorText
{
    color:#D32737;
}


/* Box */
.boxbuttons
{
    margin-top:25px;
}


/* Input controls */
input[type="text"], input[type="password"], textarea, select
{
    font-family: Overpass,Helvetica,Arial,sans-serif;
    font-size:1em;
    padding:10px;
    border:1px solid #b8bdc9;
    border-radius:4px;
    background-color:#fff;
}



/* General container for main content area controls */
.formattedcontrols
{
    position:relative;
}
/* Limited width so it doesn't go full width on large screens */
.formattedcontrols .limitedwidth
{
    max-width:300px;
    width:100%;
}
.formattedcontrols .fullwidth
{
    width:100%;
}
.formattedcontrols textarea.fullwidth
{
    resize:vertical;
}
.formattedcontrols select
{
    max-width:100%;
}
.formattedcontrols .blockspan
{
    display:inline-block;
    margin-right:10px;
}


/* Info label */
.infolabelerror p
{
    padding-left:30px;
    min-height: 25px;
    background: url("../../../../../../../../images/shared/error2.png") no-repeat;
    color:#a40000;
}
.infolabelinfo p
{
    padding-left:30px;
    min-height:25px;
    background: url("../../../../../../../../images/shared/info2.png") no-repeat top left;
    color:#204a87;
}


/* Allow for accessibility on radiobuttonlist/checkboxlist */
fieldset.radiobuttonlist, fieldset.checkboxlist
{
    border:0;
    padding:0;
    margin:10px 0;
}
fieldset.radiobuttonlist legend, fieldset.checkboxlist legend
{
    width:100%;
    margin:0;
    padding:0;
    *margin-left: -7px;
}


/* Radio list */
.listwithproperwrap input {
    float:left;
    margin-top:3px;
}
.listwithproperwrap label {
    margin:0 0 6px 25px;
    display:block;
}
.listwithproperwrap > label:last-child,
.listwithproperwrap span:last-child label {
    margin-bottom:0;
}
.listwithproperwrap br {
    display:none;
}


.editContentContainer
{
    position:relative;
    min-height:25px;
}
.editContentContainerHighlight
{
    background-color:rgba(255,0,0,0.3);
}
.editContentEdit
{
    position:absolute;
    top:0;
    right:0;
    border:1px dotted #c0c0c0;
    margin-bottom:2px;
}
.editContentEdit img
{
    margin:3px 0 3px 3px;
    display:block;
}



.cmsHighlight {
    border:1px solid #6F5098;
    overflow:hidden;
    margin-bottom:18px;
}
.cmsHighlightHeader {
    font-size:1.3em;
    padding:5px;
    background-color:#6F5098;
    color:#fff;
}
.cmsHighlight p:not(.cmsHighlightHeader) {
    margin-left:10px;
    margin-right:10px;
}


/* FontAwesome */
.fa-mar-r {
    margin-right:5px;
}
.fa-mar-l {
    margin-left:5px;
}
.fa-red {
    color:#D32737;
}
.fa-green {
    color:#080;
}
.fa-blue {
    color:#5f9edf;
}


@media screen and (max-width:1700px)
{
    .wrapper.homepage #subheader #subheadertitle h1
    {
        font-size:2.4rem;
    }
}


@media screen and (max-width:1326px)
{
    #main
    {
        font-size:18px;
    }
}


@media screen and (max-width:1199px)
{
    html
    {
        font-size:16px;
    }

    .headermaxwidth
    {
        width:100%;
        margin:0;
    }
    #header #headertopbar
    {
        display:none;
    }
    #header #headermain
    {
        padding:0;
        background-color:#101921;
    }
    #header #headerlogo
    {
        padding:14px 32px;
    }
    #header #headerlogo img
    {
        height:36px;
        width:63px;
    }

    #header #headermainsub
    {
        display:block;
        position:relative;
        width:100%;
        height:50px;
        top:unset;
        background-color:#fff;
    }
    #header #headermainsubinner
    {
        display:flex;
        justify-content:flex-end;
        padding-left:2rem;
        height:49px;
    }
    #header #headermainsubinner::before
    {
        display:none;
    }
    #header #headermainsubinner a
    {
        padding:14px 8px;
        border-left: 1px solid #cfd1d3;
        border-right:0;
    }
    #header #headermainsubinner a span
    {
        font-size:12px;
    }
    #header #headermainsubmenu
    {
        width:48px;
        gap:5px;
        font-size:17px;
        box-sizing:border-box;
        width:65px;
        padding: 16px 8px 15px !important;
    }

    #header #headermainsubnav
    {
        box-shadow:none;
        position:relative;
        top:0;
        height:100vh;
        border-radius:0;
        overflow:scroll;
    }
    #header #headermainsubnav ul
    {
        padding-bottom:126px;
    }
    #header #headermainsubnav a
    {
        padding: 8px 32px
    }

    #subheader #subheadercontent
    {
        max-width:90%;
    }
    html.menuopen .wrapper.homepage #subheader
    {
        display:none;
    }

    #main
    {
        max-width:90%;
        font-size:17px;
    }
    #maincontent
    {
        width:100%;
        padding-right:2.375rem;
    }
    #mainwidgets
    {
        padding-left:0;
    }

    #footer
    {
        padding:0;
    }
    #footerlogo a
    {
        margin-bottom:3rem;
    }

    #footergrid
    {
        display:block;
    }
    #footer .footerlinks
    {
        border-top:1px solid #aaa;
        padding:.5rem 1rem;
    }
    #footer .footerlinks h3
    {
        margin-bottom:0;
        line-height:1.5;
    }
    #footer .footerlinks h3 span
    {
        display:none;
    }
    #footer .footerlinks h3 a
    {
        display:flex;
        justify-content:space-between;
        cursor:pointer;
        font-size:14px;
        font-weight:700;
        padding:14px 0;
        letter-spacing:normal;
        align-items: center;
    }
    #footer .footerlinks h3 a::after
    {
        content: "";
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='40' height='40' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.502 30.5 0 17.677 5.936 10l14.439 10.582 13.453-10.493 6.172 7.5-16.444 12.826-6.054.085Z'/%3E%3C/svg%3E");
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: 12px 12px;
        height: 12px;
        transition: transform .3s;
        width: 12px;
    }
    #footer .footerlinks h3 a.open::after
    {
        transform: rotate(180deg);
    }
    #footer .footerlinks ul
    {
        display:none;
        margin-bottom:1rem;
    }
    #footer .footerlinks li
    {
        padding:10px 0;
    }
}

@media screen and (max-width:1023px)
{
    .cssbutton a
    {
        font-size:16px;
        padding:4px 25px 2px 3px;
    }
    .cssbutton a::before
    {
        background-size:.55em;
        margin-right:.6em;
        padding:14px;
    }

    #header #headercookie
    {
        position:relative;
        top:unset;
        border-bottom:1px solid #40474d;
        border-radius:0;
    }

    #header #headerbannertext
    {
        font-size:15px;
    }

    #subheader #subheadercontent
    {
        max-width:100%;
    }

    #main
    {
        display:block;
        max-width:100%;
    }
    #maincontent
    {
        padding:0 0 3rem;
    }
    #mainwidgets
    {
        display:flex;
        flex-wrap:wrap;
    }
    #mainwidgets .mainwidget
    {
        width:50%;
    }
    #mainwidgets .mainwidget:nth-child(odd)
    {
        padding-right:2rem;
    }
    #mainwidgets .mainwidget:nth-child(even)
    {
        padding-left:2rem;
    }
}

@media screen and (max-width:768px)
{
    h1
    {
        font-size: 2.5rem;
    }

    #header #headercookietext,
    #header #headercookieclose
    {
        float:none;
        width:100%;
    }
    #header #headercookieclose
    {
        text-align:right;
    }

    #header #headerbannerinner
    {
        display:block;
    }
    #header #headerbannertext,
    #header #headerbannerhide
    {
        display:block;
        padding:0;
        width:100%;
        text-align:left;
    }
    #header #headerbannerhide
    {
        text-align:right;
    }

    #header #headermainnav,
    #header #headermainsubinner a:not(:last-child)
    {
        display:none;
    }
    #header #headermainsubnav ul:not(:last-child)
    {
        padding-bottom:12px;
    }
    #header #headermainsubnav ul.headermainsubnavmobile
    {
        display:block;
    }



    .wrapper.homepage #subheader #subheadertitle h1
    {
        font-size:1.8125rem;
    }

    #mainwidgets
    {
        display:block;
    }
    #mainwidgets .mainwidget
    {
        width:100%;
    }
    #mainwidgets .mainwidget:nth-child(odd),
    #mainwidgets .mainwidget:nth-child(even)
    {
        padding:0;
    }
}
