/* Normalise CSS */
html{line-height:1.4;-webkit-text-size-adjust:100%}main{display:block}h1{font-size:2rem;margin:.67rem 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1rem}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1rem}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25rem}sup{top:-.5rem}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;appearance: button;}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}
fieldset{padding:.35rem .75rem .625rem}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;appearance: textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* Framework*/
:root
{
    --lightTextColour: #FFF;
    --darkTextColour: #000;
    --primaryFont: myriad-pro, sans-serif;
    --blueColour: #05ADD8;
    --darkBlueColour: #00609C;
    --greyColour: #D9D9D9;
    --lightGreyColour:#FAFAFA;
    --greenColour:#006046;
    --yellowColour:#F6EA73;

}

html, body {min-width:320px;color:#000000;font-size:16px;font-weight:400;font-family: var(--primaryFont);line-height:1.4;position:relative;display:block;overflow-x:hidden;min-height:100svh;margin:0;padding:0;border:0;}
* {box-sizing: border-box;}
img {display:block;max-width:100%;}
p:first-child {margin-top:0;}
p:last-child {margin-bottom:0;}
h1,h2,h3,h4,h5 {margin:0;}
body[data-input-method="mouse"] * {outline:none !important;}

/* Exceptions */
.exception .wrapper {text-align:center;padding:40px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:50vh;max-width:550px;margin:auto;}
.exception .wrapper::before {content:'';opacity:0.75;display:block;width:100px;height:100px;background-position:center;background-repeat:no-repeat;background-size:contain;margin-bottom:10px;}
.exception[data-exception="error"] .wrapper::before {background-image:url('icons/error.svg');}
.exception[data-exception="maintenance"] .wrapper::before {background-image:url('icons/cogs.svg');}
.exception[data-exception="not-found"] .wrapper::before {background-image:url('icons/warning.svg');}

/* Section */
section {display:block;}
section > .container {margin:auto;display:block;position:relative;}
section > .container.full {max-width:2400px;}
section > .container.main {width:min(1320px, calc(100% - 40px));padding:0px 20px;}
section > .container.narrow {width:min(1080px, calc(100% - 120px));padding: 0px 20px;}
section > .container.veryNarrow {width:min(760px, calc(100% - 120px));padding: 0px 20px;}
@media (max-width:720px)
{
    section > .container.main {width:100%;}
    section > .container.narrow {width:100%;}
}

/* Text Aligns */
.text-align-left {text-align: left;}
.text-align-center {text-align: center;}
.text-align-right {text-align: right;}
             
/* Background Colours */
.bg-lightgrey {background-color:var(--lightGreyColour);color:var(--darkTextColour);}
.bg-grey {background-color:var(--greyColour);color:var(--darkTextColour);}
.bg-blue {background-color:var(--blueColour);color:var(--darkTextColour);}
.bg-darkblue {background-color:var(--darkBlueColour);color:var(--lightTextColour);}
.bg-darkBlue {background-color:var(--darkBlueColour);color:var(--lightTextColour);}
.bg-black {background-color: #000;color:var(--lightTextColour);}

/* Pagination */
ul.pagination{display:flex;flex-direction:row;align-items:center;justify-content:center;margin:20px 0 60px 0;padding:0;}
ul.pagination li{margin:0;padding:0;list-style:none;}
ul.pagination li a{display:block;padding:0 6px;color:#000000;text-decoration:none;font-size:1rem;font-weight:600;}

/* Skip To Content */
.skip-to-content {position:absolute;left:-200%;top:0;display:block;width:100%;text-decoration:none;font-weight:600;text-align:center;background-color:#eee;color:#000;font-size:1rem;padding:10px;outline:none;border:0;}
body[data-input-method="keyboard"] .skip-to-content:focus {position:relative;left:unset;}

/* Buttons */
.primary-button {display:inline-block;appearance: none;border:1px solid var(--greenColour);background-color: var(--greenColour);padding:6px 35px;color:var(--lightTextColour);text-decoration: none;font-size:22px;font-weight:600;border-radius:14px;transition:background-color .25s ease-in-out;}
.primary-button:hover, .primary-button:focus {background-color:#EEE;color: var(--darkTextColour);}

.primary-button.white {display:inline-block;appearance: none;border:1px solid #fff;background-color: #fff;padding:6px 35px;color:var(--darkTextColour);text-decoration: none;font-size:22px;font-weight:600;border-radius:14px;transition:background-color .25s ease-in-out;}
.primary-button.white:hover, .primary-button.white:focus {background-color:#EEE;color: var(--darkTextColour);}

/* Header */
header {position: absolute;top:0;left:0;width:100%;z-index: 3;}
header > .container.main {width:min(1320px, calc(100% - 40px));padding:0px 20px;margin:auto;}
header .wrapper {display:grid;grid-template-columns:200px 1fr;gap:20px;align-items:center;padding:12px 20px;background-color: #fff;margin-top: 40px;border:1px solid #C0C0C0}

/* Header Navigation */
header nav {line-height:120%;}
header nav ul {display:flex;flex-direction:row;list-style:none;margin:0;padding:0;justify-content:end;gap:20px;}
header nav li {font-weight:bold;display:block;position:relative;}
header nav button {appearance:none;position:relative;padding:10px;border:0;background-color:transparent;font-size:inherit;color:inherit;font-weight:inherit;}
header nav button:hover {cursor:pointer;}
header nav a {display:inline-block;text-decoration:none;color:inherit;position:relative;padding:10px;}
header nav ul li:last-of-type a {border: 1px solid #000;}
header nav ul li > ul {display:none;position:absolute;z-index:-1;max-width:200px;left:0; padding-top: 20px;}
header nav ul li:last-child > ul {right:0;left:unset;}
header nav button[aria-expanded="true"] ~ ul {display:block;}
header nav li ul {background-color:#FFF;border:1px solid #c4c4c4;}


/* Footer */
footer {background-color:var(--darkBlueColour);color: #fff;padding: 130px 0px 40px ;}
footer .container {width:min(1320px, calc(100% - 40px));margin:auto;}
footer .container .wrapper {font-size:18px;font-weight:400;padding:10px 20px;text-align:left;}
footer .container .wrapper a {color: #fff;}
footer .container .wrapper .columns {display: flex;justify-content: space-between;gap:20px;flex-wrap:nowrap;}
footer .container .wrapper .columns .column {flex:1;min-width:150px;max-width:325px;}
footer .container .wrapper .columns .column h2 {padding-bottom: 20px;border-bottom: 1px solid #fff;font-size: 22px;font-weight: 600;margin-bottom: 30px;}
footer .container .wrapper .columns .column address {font-style: normal;}
footer .container .wrapper .columns .column .mobile-header{display:none;border:0;padding:0;color:inherit;background-color:transparent;width:100%;font-weight:600;font-size:1.375rem;font-family:"brother-1816", sans-serif;text-align:left;border-bottom:1px solid #FFFFFF;padding-bottom:10px;}
footer .container .wrapper .columns .column nav.footer-navigation ul{margin:0;padding:0;}
footer .container .wrapper .columns .column nav.footer-navigation ul li{margin:0;padding:0;list-style:none;margin-bottom:20px;}
footer .container .wrapper .columns .column nav.footer-navigation ul li a{display:flex;border-bottom:1px solid #ffffff;line-height:100%;padding:0 0 8px 0;flex-direction:row;align-items:center;justify-content:space-between;color:inherit;text-decoration:none;transition:transform 0.3s ease;}
footer .container .wrapper .columns .column nav.footer-navigation ul li a::after{content:'';background-image:url(../core/icons/rightarrow.svg);width:35px;height:20px;display:block;background-size:100%;background-repeat:no-repeat;filter:brightness(0) invert(1);}
footer .container .wrapper .columns .column nav.footer-navigation ul li a:hover::after{-moz-animation:bounce 1s;-webkit-animation:bounce 1s;animation:bounce 1s;}
footer .container .wrapper .columns .column ul.sociallinks {display:flex;flex-direction:row;align-items:center;gap:20px;margin:20px 0px;padding:0;list-style:none;}
footer .container .wrapper .columns .column ul.sociallinks  li img {width: 20px;height: 20px;object-fit: contain;}
footer .container .wrapper .bottom-line {text-align: center;border-top: 1px solid #fff;padding-top:20px;margin-top: 40px;}

/* Mobile */
#mobile-nav-button {display: none; z-index: 2; height: 60px; width: 65px; appearance: none; border: 0px; margin-left:auto;background:transparent; background-image: url(../core/icons/Menu.svg); background-repeat: no-repeat; background-position: center; background-size: auto 40%;}

.mobile-nav-panel { display: none; position: fixed; right: 0; top: 0; width: 100%; max-width: 360px; height:0; z-index: 2; background-color: #fff;} 
.mobile-nav-panel.open { display: block;height:100vh; } 
.mobile-nav-panel .main-panel, .mobile-nav-panel .sub-panel { position: absolute; width: 100%; min-height: 75vh;max-height: 75vh; top: 0; right: 0; background-color: #fff; display: flex; flex-direction: column; gap: 10px; padding: 42px 20px 60px 20px; z-index: 100; overflow: auto; } 
.mobile-nav-panel .sub-panel { display: none; z-index: 101; } 
.mobile-nav-panel .sub-panel.open { display: flex; } 
.mobile-nav-panel .sub-panel .panel-nav { justify-content: space-between; } 
.mobile-nav-panel .sub-panel .heading { font-size: 22px; font-weight: 600; text-align: center;border-bottom: 3px solid black;    margin: 0px 20px;}
.mobile-nav-panel .main-panel .buttons { flex-direction: column; gap: 10px; flex-wrap: unset; width: 220px; text-align: center; margin-top: 10px; } 
.mobile-nav-panel .mobile-nav { list-style: none; width: 100%; display: block; padding: 0px 20px; } 
.mobile-nav-panel .mobile-nav li { margin-bottom: 15px; } 
.mobile-nav-panel .mobile-nav li a, .mobile-nav-panel .mobile-nav li button { appearance: none; display: block; border: 0; border-bottom: 1px solid black; color: black; background-color: transparent; padding: 0; text-align: left; text-decoration: none; font-size: 22px; font-weight: 600; padding: 15px 0px 6px 0px; width: 100%; } 
.mobile-nav-panel .mobile-nav li a {position: relative;padding-right:60px;}
.mobile-nav-panel .mobile-nav li a::after { content: ''; position: absolute; top: 0; bottom: 0; right: 0; height: 100%; aspect-ratio: 1/1; display: block; background-image: url('../core/icons/rightarrow.svg'); background-position: center; background-repeat: no-repeat;filter:invert(1);} 

.mobile-nav-panel .mobile-nav li:hover { cursor: pointer; } 
.mobile-nav-panel .mobile-nav li a.child { margin-left: 18px; font-size: 22px; font-weight: 600; padding-top: 0px; } 
.mobile-nav-panel .mobile-nav li a span, .mobile-nav-panel .mobile-nav li button span { position: relative; } 
.mobile-nav-panel .mobile-nav li a span::after, .mobile-nav-panel .mobile-nav li button span::after { content: ''; display: block; height: 2px; width: 0; position: absolute; bottom: -10px; left: 0; transition: width .25s ease-in-out; background-color: var(--greenColour); } 
.mobile-nav-panel .mobile-nav li:hover a span::after, .mobile-nav-panel .mobile-nav li:hover button span::after { width: 100%; } 
.mobile-nav-panel .mobile-nav li a:hover, .mobile-nav-panel .mobile-nav li button:hover { cursor: pointer; } 
.mobile-nav-panel .mobile-nav.main li:last-child { margin-top: 20px; bottom: 20px; width: calc(100% - 80px); left: 40px; right: 40px; } 
.mobile-nav-panel .mobile-nav.main li:last-child a { background-color: #fff; font-size: 22px; font-weight: 600; text-transform: capitalize; line-height: 1.15; color: #000;border:2px solid #000; padding: 10px 20px; margin-top: 40px; display: block; min-width: 140px; text-align: center; } 
.mobile-nav-panel .mobile-nav.main li:last-child a::after { display: none; } 
.mobile-nav-panel .panel-nav { width: 100%; display: flex; flex-direction: row; justify-content: end; margin-bottom: 30px; } 
.mobile-nav-panel .close-button { appearance: none; font-size: 22px; font-weight: 600; border: 1px solid transparent; background-color: transparent; padding: 18px 60px 18px 10px; color: #000; position: relative; border: 1px solid transparent; border-radius: 5px; } 
.mobile-nav-panel .close-button::after { content: ''; position: absolute; top: 0; bottom: 0; right: 0; height: 100%; aspect-ratio: 1/1; display: block; background-image: url('../core/icons/MobMenuClose.svg'); background-position: center; background-repeat: no-repeat; background-size: auto 60%; } 
.mobile-nav-panel .close-button:hover { border: 1px dashed #000; cursor: pointer; } 
.mobile-nav-panel .back-button { appearance: none; font-size: 22px; font-weight: 600; border: 1px solid transparent; background-color: transparent; padding: 18px 10px 18px 60px; color: #000; position: relative; border: 1px solid transparent; border-radius: 5px; } 
.mobile-nav-panel .back-button::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; height: 100%; aspect-ratio: 1/1; display: block; background-image: url('../core/icons/rightarrow.svg'); background-position: center; background-repeat: no-repeat; transform: rotate(180deg); filter:invert(1);} 
.mobile-nav-panel .back-button:hover { border: 1px dashed #000; cursor: pointer; } 

.mobile-nav-panel .endpanel {position: absolute;bottom:0;left:0;width:100%;height:25vh;padding: 20px 40px ;}
.mobile-nav-panel .endpanel ul.sociallinks {display:flex;flex-direction:row;align-items:center;gap:20px;margin:40px 0px 20px;padding:0;list-style:none;}
.mobile-nav-panel .endpanel ul.sociallinks  li img {width: 28px;height: 28px;object-fit: contain;filter:invert(1)}

	#cc-main {
		/** Change font **/
		--cc-font-family: var(--primaryFont);
		/** Change button primary color  **/
		--cc-btn-primary-bg: var(--blueColour);
		--cc-btn-primary-border-color: var(--blueColour);
		--cc-btn-primary-hover-bg: #000;
		--cc-btn-primary-hover-border-color: #000;
	}
	button[data-cc="show-preferencesModal"]{font-family: var(--primaryFont); background: unset; border: unset; text-decoration: underline; color: #333;padding: 0px;}
	button[data-cc="show-preferencesModal"]:hover, button[data-cc="show-preferencesModal"]:focus{color: #000;}	

@media screen and (max-width: 1090px)
{
    header nav.main-navigation {display: none;}
    #mobile-nav-button {display: block;}
}
@media screen and (max-width: 790px)
{
    footer .container .wrapper .columns {flex-wrap: wrap;}
    footer .container .wrapper .columns .column {max-width:100%;min-width:100%;}


  footer .container .wrapper .columns .column .mobile-header{display:block;position:relative;cursor:pointer;display:flex;flex-direction:row;align-items:center;justify-content:space-between;}
  footer .container .wrapper .columns .column .mobile-header .plus{display:block;position:relative;width:18px;}
  footer .container .wrapper .columns .column .mobile-header .plus::before{content:'';position:absolute;left:50%;top:50%;background-color:#ffffff;height:4px;width:18px;margin-top:-2px;margin-left:-9px;border-radius:2px;}
  footer .container .wrapper .columns .column .mobile-header .plus::after{content:'';position:absolute;left:50%;top:50%;background-color:#ffffff;width:4px;height:18px;margin-left:-2px;margin-top:-9px;transition:transform 1s ease;transform:scaleY(1);border-radius:2px;}
  footer .container .wrapper .columns .column .mobile-wrapper{visibility:hidden;height:0;transform:scaleY(0);transform-origin:top center;transition:transform .25s ease-in-out;}
  footer .container .wrapper .columns .column .mobile-wrapper.open {visibility: visible;height:unset;padding-top:30px;transform: scaleY(1);transition:transform .25s ease-in-out;}
  footer .container .wrapper .columns .column .mobile-wrapper.open .heading{display:none;}
  footer .container .wrapper .columns .column .mobile-header.open .plus::after{transform:scaleY(0);}

}