/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}
/* poppins-latin-600-normal */
@font-face {
	font-family: 'Poppins';
	font-style: normal;
	font-display: swap;
	font-weight: 600;
	src: url(fonts/Poppins/latin-600-normal.woff2) format('woff2'), url(fonts/Poppins/latin-600-normal.woff) format('woff');
	unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* poppins-latin-ext-600-normal */
@font-face {
	font-family: 'Poppins';
	font-style: normal;
	font-display: swap;
	font-weight: 600;
	src: url(fonts/Poppins/latin-ext-600-normal.woff2) format('woff2'), url(fonts/Poppins/latin-ext-600-normal.woff) format('woff');
	unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* poppins-latin-600-italic */
@font-face {
	font-family: 'Poppins';
	font-style: italic;
	font-display: swap;
	font-weight: 600;
	src: url(fonts/Poppins/latin-600-italic.woff2) format('woff2'), url(fonts/Poppins/latin-600-italic.woff) format('woff');
	unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* poppins-latin-ext-600-italic */
@font-face {
	font-family: 'Poppins';
	font-style: italic;
	font-display: swap;
	font-weight: 600;
	src: url(fonts/Poppins/latin-ext-600-italic.woff2) format('woff2'), url(fonts/Poppins/latin-ext-600-italic.woff) format('woff');
	unicode-range: U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
	:root {
  --oi-main-fontstack: "Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;
  --oi-title-fontstack: Poppins,"Helvetica Neue",Arial Black;
}
html, body {
	padding: 0px;
	margin: 0px;
	min-height: 100vh!important;
	background-color: #ffffff;
	font-family: var(--oi-main-fontstack);
	color: #333;
	line-height: 1.44em;
}
a { color: #18AD87; text-decoration: underline; display: inline-block; }
a:hover, a:focus { text-decoration: underline; }
a:visited { color: inherit; }
h1, h2, h3, h4, .title, .subtitle { font-family: var(--oi-title-fontstack); line-height: 1em; }
h1 + *, h2 + *, h3 + *, p + *, iframe + *, figure + *, ul + *, ol + *, .block + *, .padded-bottom + * { margin-top: 1rem; }
h1, .title { font-size: 1.4rem; margin-top: 2rem; font-weight: 600; }
h2 { font-size: 1.7em; margin-top: 2rem; font-weight: 500; }
h3 { font-size: 1.4em; margin-top: 2rem; }
h1:first-child, h2:first-child, h3:first-child, .title { margin-top: 0; }
* > *:first-child { margin-top: 0; }
strong { font-weight: 700; }
em { font-style: italic; }
p, time, li, td, th, footer, div { font-weight: 300; }
code, pre { font-family: monospace; color: #444; background-color: #efefef; }
code { padding: 0.125em 0.25em; }
pre { max-width: 100%; overflow-x: auto; padding: 16px; margin-bottom: 16px; }
pre code { padding: 0; }
ul { list-style: disc; }
ol { list-style: decimal; }
ul { padding: 0; margin-left: 2em; }
section { padding-block: 2em; }
button, .button { border: 0px; font-size: 1em; background-color: #efefef; color: black; text-decoration: none; display: inline-block; padding: 0.5em 1em; cursor: pointer; vertical-align: top; line-height: 1.25em; }
a.button:hover, button:hover, button:focus, a.button:focus { background-color: #333333!important; color: #efefef!important; }

header h1 { margin-top: 0; }
header nav ul {
	width: min-content;
	text-align: center;
	margin: 0 auto;
	font-size: 1.2em;
	position: relative;
	font-family: font-family: var(--oi-title-fontstack);
	display: flex;
}
header nav ul li { display: inline-block; }
header nav ul > li > a { padding: 0.5em 1em; display: inline-block; width: 100%; color: inherit; font-family: var(--oi-title-fontstack); }
header nav ul > li > a:hover, header nav ul > li > a:focus,header nav ul > li > a[aria-selected=true] { background: white; color: black; }
header a { text-decoration: none; }
footer { width: 100%; padding-bottom: 3em; }
footer a { color: inherit; }

/* Some common styling classes */
.holder { position: relative; width: 1080px; max-width: 100%; margin: auto; }
.holder > *:last-child { margin-bottom: 0; }
.padded { padding: 1rem; }
.padded-bottom { padding: 1rem; margin-bottom: 1rem; }
.padded-inline { padding-inline: 1rem; }
.doublepadded { padding: 2rem; }
.spaced { margin-bottom: 1rem; }
.centred { text-align: center; }
.tallpadded { padding-block: 3rem; }

.skip-to-content-link { position: absolute; top: -3rem; right: 0.5rem; z-index: 2000; transition: top 0.3s; padding: 0.5rem 1rem; }
.skip-to-content-link:focus { top: 0.25rem; }

.grid {
	display: flex;
	flex-flow: row wrap;
	gap: 0.5em;
	align-items: stretch;
	list-style: none;
	margin-inline: 0;
	margin-bottom: 1em;
}
.grid > li { flex-grow: 1; width: 300px; }
.grid > li > * {
	padding: 2em;
	text-decoration: none;
	display: block;
	height: 100%;
}
/* Main colour palette */
.c1-bg, a.c1-bg:visited { background-color: #2254F4; color: white; }
.c2-bg, a.c2-bg:visited { background-color: #178CFF; color: black; }
.c3-bg, a.c3-bg:visited { background-color: #00B6FF; color: black; }
.c4-bg, a.c4-bg:visited { background-color: #08DEF9; color: black; }
.c5-bg, a.c5-bg:visited { background-color: #1DD3A7; color: black; }
.c6-bg, a.c6-bg:visited { background-color: #0DBC37; color: black; }
.c7-bg, a.c7-bg:visited { background-color: #67E767; color: black; }
.c8-bg, a.c8-bg:visited { background-color: #722EA5; color: white; }
.c9-bg, a.c9-bg:visited { background-color: #E6007C; color: white; }
.c10-bg, a.c10-bg:visited { background-color: #EF3AAB; color: black; }
.c11-bg, a.c11-bg:visited { background-color: #D73058; color: white; }
.c12-bg, a.c12-bg:visited { background-color: #D60303; color: white; }
.c13-bg, a.c13-bg:visited { background-color: #FF6700; color: black; }
.c14-bg, a.c14-bg:visited { background-color: #F9BC26; color: black; }

/* Secondary palette */
.s1-bg, a.s1-bg:visited { background-color: #2f529f; color: white; }
.s2-bg, a.s2-bg:visited { background-color: #00ace8; color: black; }
.s3-bg, a.s3-bg:visited { background-color: #7dc5ea; color: black; }

/* Greyscale */
.b1-bg, a.b1-bg:visited { background-color: #000000; color: white; }
.b2-bg, a.b2-bg:visited { background-color: #333333; color: white; }
.bk-bg, a.bk-bg:visited { background-color: #6D6D6D; color: white; }
.b3-bg, a.b3-bg:visited { background-color: #999999; color: black; }
.b4-bg, a.b4-bg:visited { background-color: #bbbbbb; color: black; }
.b5-bg, a.b5-bg:visited { background-color: #dfdfdf; color: black; }
.b6-bg, a.b6-bg:visited { background-color: #ffffff; color: black; }

/* Hover/focus styles */
a.c1-bg:hover, a.c2-bg:hover, a.c3-bg:hover, a.c4-bg:hover, a.c5-bg:hover, a.c6-bg:hover, a.c7-bg:hover, a.c8-bg:hover, a.c9-bg:hover, a.c10-bg:hover, a.c11-bg:hover, a.c12-bg:hover, a.c13-bg:hover, a.c14-bg:hover,
a.b1-bg:hover, a.b2-bg:hover, a.b3-bg:hover, a.b4-bg:hover, a.b5-bg:hover, a.b6-bg:hover,
a.s1-bg:hover, a.s2-bg:hover, a.s3-bg:hover,
a.c1-bg:focus, a.c2-bg:focus, a.c3-bg:focus, a.c4-bg:focus, a.c5-bg:focus, a.c6-bg:focus, a.c7-bg:focus, a.c8-bg:focus, a.c9-bg:focus, a.c10-bg:focus, a.c11-bg:focus, a.c12-bg:focus, a.c13-bg:focus, a.c14-bg:focus,
a.b1-bg:focus, a.b2-bg:focus, a.b3-bg:focus, a.b4-bg:focus, a.b5-bg:focus, a.b6-bg:focus,
a.s1-bg:focus, a.s2-bg:focus, a.s3-bg:focus { background-color: #000000; color: white; }
.c1-bg a, .c2-bg a, .c3-bg a, .c4-bg a, .c5-bg a, .c6-bg a, .c7-bg a, .c8-bg a, .c9-bg a, .c10-bg a, .c11-bg a, .c12-bg a, .c13-bg a, .c14-bg a, .b1-bg a, .b2-bg a, .b3-bg a, .b4-bg a, .b5-bg a, .b6-bg a, .b6-bg a{ color: inherit; }

.warning { color: rgb(95, 82, 7); background-color: rgb(251, 245, 208); filter: drop-shadow(0px 0px 1px rgb(95, 82, 7)); }
.error { color: #721c24; background-color: #f8d7da; filter: drop-shadow(0 0 1px #f5c6cb)); }
.info { color: #004085; background-color: #cce5ff; filter: drop-shadow(0 0 1px #b8daff)); }




@media only screen and (max-width: 800px) {
	.doublepadded { padding: 1em; }
	.tallpadded { padding-block: 2rem; }
	footer > div { display: block; }
	footer > div > div { margin-bottom: 1rem; }
	footer > div > div:last-child { text-align: inherit; margin-bottom: 0; }
}