﻿/* AUTO-GENERATED -- DO NOT EDIT
 * This file is rebuilt on every build. Edit the co-located .razor.css source files instead.
 */
/* -------------------------------------------------------------------------- *
 * Atom - A text banner
 * -------------------------------------------------------------------------- */
.a_banner {
	display: inline-block;
	padding: 0.500rem 1rem;
	border-radius: 1.500rem;
}

/* ----- Icon ----- */
.a_banner svg {
	position: relative;
	bottom: -0.375rem;
	margin: -0.500rem 0.250rem 0 0;
}



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Atom - Blockquote
 * -------------------------------------------------------------------------- */
.a_blockquote {
	--blockquote-border-color: var(--colorPrimary);
	--blockquote-fill-color: var(--blockBackground, var(--colorBlack));
	--blockquote-border-width: 0.125rem;
	--blockquote-tail-size: 2.750rem;
	display: block;
	box-sizing: border-box;
	margin: 0;
	padding: 0 1rem;
	transition: all 0.5s ease-in-out 0s;
}

	.a_blockquote:hover {
		cursor: grab;
	}

	.a_blockquote:active {
		cursor: grabbing;
	}

	.a_blockquote ._outer {
		position: relative;
		padding: var(--blockquote-border-width);
		background: linear-gradient(315deg, transparent 2rem, var(--blockquote-border-color) 0);
	}

	/* Overlap the bottom border so the tail opens into the quote body. */
	.a_blockquote ._outer::before,
	.a_blockquote ._outer::after {
		content: "";
		position: absolute;
		clip-path: polygon(0 0, 100% 0, 0 100%);
		pointer-events: none;
	}

	.a_blockquote ._outer::before {
		left: 0;
		top: calc(100% - var(--blockquote-border-width));
		width: var(--blockquote-tail-size);
		height: var(--blockquote-tail-size);
		background: var(--blockquote-border-color);
	}

	.a_blockquote ._outer::after {
		left: var(--blockquote-border-width);
		top: calc(100% - 2 * var(--blockquote-border-width));
		/* Offset the 45-degree edge by the border width (sqrt(2)). */
		width: calc(var(--blockquote-tail-size) - 1.41421356 * var(--blockquote-border-width));
		height: calc(var(--blockquote-tail-size) - 1.41421356 * var(--blockquote-border-width));
		background: var(--blockquote-fill-color);
	}

	/* Reserve tail space when there is no author below the quote. */
	.a_blockquote ._outer:last-child {
		margin-bottom: var(--blockquote-tail-size);
	}

	.a_blockquote ._inner {
		padding: 1.500rem 2rem 1rem 2rem;
		background: linear-gradient(315deg, transparent 2rem, var(--blockquote-fill-color) 0);
	}
	
		.a_blockquote blockquote {
			position: relative;
			margin: 0;
			padding: 0;
			border: none;
			line-height: 1em;
			font-style: normal;
		}
	
		.a_blockquote blockquote  ._stars {

		}

		.a_blockquote figcaption._author {
			display: flex;
			align-items: center;
			padding: 1rem 0 0 2.125rem;
			font-size: 1.125rem;
			font-weight: 700;
			transition: all 0.25s ease-in-out 0.5s;
		}

			.a_blockquote figcaption._author ._avatar {
				display: inline-block;
				flex: 0 0 40px;
				margin-right: 0.750rem;
				border-radius: 1.250rem;
				overflow: hidden;
			}

/* ----- Colour Variations ----- */
.-bgPrimary .a_blockquote {
	--blockquote-border-color: var(--colorWhite);
	--blockquote-fill-color: var(--colorPrimary);
}

/* -------------------------------------------------------------------------- *
 * Atom - Blog Post Meta
 * -------------------------------------------------------------------------- */
.a_blogPostMeta {
	font-size:0.875rem;
	opacity: 0.5;
}

	.a_blogPostMeta a {
		color: var(--colorWhite);
		text-decoration: none;
	}

/* -------------------------------------------------------------------------- *
 * Atom - Standard button element
 * -------------------------------------------------------------------------- */
:root, :host {
	--buttonCornerCut: 0.750rem;
}
.a_button, .a_button:visited {
	display: inline-block;
	position: relative;
	padding: 0.625rem 1rem;
	border: none;
	outline: none;
	background: linear-gradient(315deg, transparent var(--buttonCornerCut), var(--colorPrimary) 0);
	font-size: 1.375rem;
	font-weight: 400;
	line-height: 1.2em;
	color: var(--colorWhite-perpetual);
	text-align: center;
	vertical-align: middle;
	transition: all 0.25s ease-in-out;
	overflow: hidden;
	font-family: var(--fontHeading);
	text-transform: uppercase;
}


	.a_button:hover {
		border: none;
		background: linear-gradient(315deg, transparent var(--buttonCornerCut), var(--colorPrimary-dark) 0);
		cursor: pointer;
	}

	.a_button ._content {
	}

	.a_button svg {
		height: 1rem;
		margin: -0.625rem 0 -0.31250rem 0.500rem;
		vertical-align: middle;
		fill: var(--colorWhite);
	}

	.a_button svg.-after {
		margin: -0.5rem 0 -0.31250rem 0;
		vertical-align: middle;
	}

/* -------------------------------------------------------------------------- *
 * Variant and option styles
 * -------------------------------------------------------------------------- */

/* ----- Button over Primary ----- */
.-bgPrimary .a_button {
	background: linear-gradient(315deg, transparent var(--buttonCornerCut), var(--colorOffBlack) 0);
}
.-bgPrimary .a_button:hover {
	background: linear-gradient(315deg, transparent var(--buttonCornerCut), var(--colorBlack) 0);
}


/* ----- Secondary colour variant -----
	.a_button.-colorSecondary {
		background: linear-gradient(315deg, transparent var(--buttonCornerCut), var(--colorSecondary) 0);
		color: var(--colorOffBlack);
	} ----- */

/* ----- Danger variant -----
	.a_button.-colorDanger {
		background: linear-gradient(315deg, transparent var(--buttonCornerCut), var(--colorDanger) 0);
		color: var(--colorWhite-perpetual);
	} ----- */

/* ----- Grey variant -----
	.a_button.-colorGrey {
		background: linear-gradient(315deg, transparent var(--buttonCornerCut), var(--colorGrey) 0);
		color: var(--colorOffBlack-perpetual);
	} ----- */

/* ----- Tiny ----- */
.a_button.-tiny,
.a_button.-tiny:visited {
	padding: 0.3125rem 1.00rem 0.250rem 1rem;
	font-size: 0.750rem;
	text-transform: uppercase;
	color: var(--colorWhite);
}

/* ----- Small ----- */
.a_button.-small {
	padding: 0.500rem 1rem;
	font-size: 1rem;
	background: linear-gradient(315deg, transparent 0.500rem, var(--colorPrimary) 0);
}

/* ----- Large ----- */
.a_button.-large {
	padding: 0.750rem 0.875rem;
	font-size: 1.250rem;
}

/* ----- Wider ----- */
.a_button.-wider {
	padding-right: 3.500rem;
	padding-left: 3.500rem;
}

/* ----- Widest ----- */
.a_button.-widest {
	width:100%;
}


/* ----- Waiting ----- */
.a_button:disabled {
	cursor: not-allowed;
	background-color: var(--colorOffBlack);
}

.a_button:disabled:hover {
	animation-name: none;
}

/* ----- Icon only and no background ----- */
.a_button.-iconOnly {
	padding: 0.250rem;
	border: none;
	color: var(--colorText);
	font-size: 1.500rem;
	background-color: transparent;
	vertical-align: bottom;
}

	.a_button.-iconOnly ._content {
		margin: 0;
	}

	.a_button.-iconOnly:hover {
		background-color: var(--colorPrimary);
		color: var(--colorWhite-perpetual);
		cursor: pointer;
	}



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll-
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls-
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl-
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts-
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml-
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms-
	 * ---------------------------------------- */
	
}

/* -------------------------------------------------------------------------- *
 * Atom - Burger Button
 * -------------------------------------------------------------------------- */
.a_buttonBurger {
	position: relative;
	width: 3rem;
	height: 3rem;
	padding: 0;
	border: none;
	border-radius: 1.500rem;
	background: var(--colorPrimary);
	font-size:1rem;
	transition: all 0.25s ease-in-out;
}

	.a_buttonBurger ._line {
		position: absolute;
		top: calc(50% - 0.1875rem);
		left: calc(50% - 0.750rem);
		width: 1.500rem;
		height: 0.3125rem;
		border-radius: 0.1875rem;
		background-color: var(--colorWhite);
		transform-origin: center;
		transition: all 0.25s ease-in-out;
	}

	.a_buttonBurger ._lineOne {
		top: calc(50% - 0.8125rem);
	}

	.a_buttonBurger ._lineTwo {
		opacity: 1;
	}

	.a_buttonBurger ._lineThree {
		top: calc(50% + 0.4375rem);
	}

	.a_buttonBurger:hover {
		cursor: pointer;
	}

	.a_buttonBurger ._btnContent {
		font-size: 0;
		opacity: 0;
	}


/* -------------------------------------------------------------------------- *
 * Variant and option styles
 * -------------------------------------------------------------------------- */
/* ----- Active ----- */
.a_buttonBurger.-active {
	
}
	.a_buttonBurger.-active ._lineOne
	{
		top: calc(50% - 0.125em);
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.a_buttonBurger.-active ._lineTwo
	{
		opacity: 0;
	}

	.a_buttonBurger.-active ._lineThree
	{
		top: calc(50% - 0.125em);
		-ms-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.a_buttonBurger.-active:hover {
		
	}


/* ----- Admin Sidebar Toggle ----- */
.a_buttonBurger._adminSidebarToggle {
	position: fixed;
	top: 1rem;
	left: 1rem;
	z-index: 100;
}

/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll-
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls-
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl-
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts-
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml-
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms-
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Atom - Sidebar expand/collapse toggle button
 * -------------------------------------------------------------------------- */
.a_buttonSidebar {
	display: block;
	margin: 0;
	padding: 0.250rem;
	border: 0;
	outline: none;
	background: transparent;
}

	.a_buttonSidebar:hover {
		cursor: pointer;
	}

	.a_buttonSidebar ._iconIsOpen,
	.a_buttonSidebar ._iconIsCollapsed {
		font-size: 1.500rem;
		color: var(--colorWhite-perpetual);
	}


	.a_buttonSidebar.-isOpen ._iconIsOpen {
		display: block;
	}

	.a_buttonSidebar.-isOpen ._iconIsCollapsed {
		display: none;
	}


	.a_buttonSidebar.-isCollapsed ._iconIsOpen {
		display: none;
	}

	.a_buttonSidebar.-isCollapsed ._iconIsCollapsed {
		display: block;
	}

/* ----- Example variant ----- */



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Atom - Website Carbon Badge
 * -------------------------------------------------------------------------- */
.a_websiteCarbonBadge {
	position: relative;
	display: inline-block;
	margin: 1rem 0;
	overflow: hidden;
}

	/* ------ Icon ------ */
	.a_websiteCarbonBadge ._ecoIcon {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
		width: 1.875rem;
		height: 1.875rem;
		padding: 0.500rem;
		border: 0;
		border-radius: 0;
		background: linear-gradient(315deg, transparent 0.750rem, var(--colorPrimary) 0);
	}

		.a_websiteCarbonBadge ._ecoIcon svg {
			width: 1.750rem;
			height: 1.750rem;
		}

	/* ------ Inner Content ------ */
	.a_websiteCarbonBadge ._innerContent {
		padding-left: 2.750rem;
		border: 0.1875rem solid var(--colorPrimary);
		border-radius: 0;
		font-size: 0.875rem;
	}

		.a_websiteCarbonBadge ._innerContent sub {

		}

	.a_websiteCarbonBadge ._innerContent ._carbonPerView {
		display: inline-block;
		padding: 0.250rem 0.500rem 0 0.750rem;
	}

	.a_websiteCarbonBadge ._link {
		display: block;
		position: absolute;
		top:0;
		left: 0;
		z-index: 3;
		width: 100%;
		height: 100%;
		margin: 0;
		padding: 0;
		border: 0;
	}

	/* ------ Outter Content ------ */
	.a_websiteCarbonBadge ._outterContent {
		text-align: right;
	}

	.a_websiteCarbonBadge ._outterContent ._carbonComparison {
		display: inline-block;
		margin-top: 0.250rem;
		font-size: 0.750rem;
	}


/* -------------------------------------------------------------------------- *
 * Atom - Contact Detail Link
 * -------------------------------------------------------------------------- */
.a_contactDetail {
	display: flex;
	align-items: center;
	padding: 1rem 0;
	border: none;
	color: var(--colorWhite);
	font-size: 1.375rem;
	font-weight: 700;
	transition: all 0.25s ease-in-out;
	
}

	.a_contactDetail:visited {
		color: var(--colorWhite);
	}

	.a_contactDetail:hover {
		border: none;
		color: var(--colorSecondary);
	}

	.a_contactDetail svg {
		width: 2rem;
		height: 2rem;
		margin-right: 0.750rem;
	}
/* -------------------------------------------------------------------------- *
 * Atom - Context Menu Item
 * -------------------------------------------------------------------------- */
.a_contextMenuItem ._contextButton {
	width: 100%;
	margin: 0;
	padding: 0.750rem 1rem 0.750rem 0.500rem;
	border: 0;
	outline: none;
	color: var(--colorText);
	text-align: left;
	font-weight: 500;
	font-size: 1rem;
	line-height: 1em;
	transition: all 0.25s ease-in-out;
	overflow: hidden;
	white-space: nowrap;
	background: transparent;
}

	.a_contextMenuItem ._contextButton svg {
		margin: -0.5rem 0.500rem -0.31250rem 0;
		vertical-align: middle;
		transition: all 0.25s ease-in-out;
	}

	.a_contextMenuItem ._contextButton:hover {
		background-color: var(--colorPrimary);
		color: var(--colorWhite-perpetual);
		cursor: pointer;
	}

/* -------------------------------------------------------------------------- *
 * Atom - A_FeatureIcons
 * -------------------------------------------------------------------------- */
.a_featureicons {

}
	.a_featureicons ul._featureIcons {
		display: flex;
		list-style: none;
		margin: 0;
		padding: 0;
	}

		.a_featureicons ._featureIcons li {
			margin-right: 1rem;
		}

			.a_featureicons ._featureIcons li svg {
				height: 2rem;
				fill: var(--colorPrimary);
			}
/* -------------------------------------------------------------------------- *
 * Atom - Image
 * -------------------------------------------------------------------------- */
.a_image {
	display: block;
	max-width: 100%;
}

.a_image > img {
	display: block;
	max-width: 100%;
	height: auto;
	object-fit: cover;
	object-position: var(--pos, 50% 50%);
}

/*
 * Cover - fills the parent like a background image. The focal point stays in view at any box size.
 */
.a_image.-cover {
	width: 100%;
	height: 100%;
}

.a_image.-cover > img {
	width: 100%;
	height: 100%;
	max-width: none;
}

/*
 * Per breakpoint focal positions. Unset breakpoints inherit the larger breakpoint's position.
 */
@media (max-width: 1400px) {
	.a_image > img {
		object-position: var(--pos-ll, var(--pos, 50% 50%));
	}
}

@media (max-width: 1200px) {
	.a_image > img {
		object-position: var(--pos-ls, var(--pos-ll, var(--pos, 50% 50%)));
	}
}

@media (max-width: 1000px) {
	.a_image > img {
		object-position: var(--pos-tl, var(--pos-ls, var(--pos-ll, var(--pos, 50% 50%))));
	}
}

@media (max-width: 800px) {
	.a_image > img {
		object-position: var(--pos-ts, var(--pos-tl, var(--pos-ls, var(--pos-ll, var(--pos, 50% 50%)))));
	}
}

@media (max-width: 600px) {
	.a_image > img {
		object-position: var(--pos-ml, var(--pos-ts, var(--pos-tl, var(--pos-ls, var(--pos-ll, var(--pos, 50% 50%))))));
	}
}

@media (max-width: 400px) {
	.a_image > img {
		object-position: var(--pos-ms, var(--pos-ml, var(--pos-ts, var(--pos-tl, var(--pos-ls, var(--pos-ll, var(--pos, 50% 50%)))))));
	}
}

/* -------------------------------------------------------------------------- *
 * Atom - Checkbox input
 * -------------------------------------------------------------------------- */
.a_inputCheckbox {
	user-select: none;
	padding: 0 0 0.250rem 0;
}

	.a_inputCheckbox ._checkbox {
		position: relative;
		top: 0.250rem;
		display: inline-block;
		width: 1.125rem;
		height: 1.125rem;
		border: 0.125rem solid var(--colorTileBdr);
		background-color: var(--colorTileBg);
		text-align: center;
		user-select: none;
	}

		.a_inputCheckbox ._checkbox svg {
			position: relative;
			width: 1.125rem;
			height: 1.125rem;
			fill: var(--colorTileBg);
		}

	.a_inputCheckbox ._input {
		width: 0;
		height: 0;
		margin: 0;
		padding: 0;
		opacity: 0;
	}

		.a_inputCheckbox ._input:checked + ._checkbox {
			border-color: var(--colorSecondary-dark);
			background-color: var(--colorSecondary);
		}

		.a_inputCheckbox ._input:checked + ._checkbox svg {
		}

	.a_inputCheckbox ._input:disabled {

	}

		.a_inputCheckbox ._input:disabled + ._checkbox  {
			background-color: var(--colorGrey-light);
		}

			.a_inputCheckbox ._input:disabled + ._checkbox:hover  {
				cursor: not-allowed;
			}

		.a_inputCheckbox ._input:disabled + ._checkbox svg  {
			fill: var(--colorGrey-light);
		}



/* ----- Colour variants ----- */
.-bgPrimary .a_inputCheckbox ._checkbox {
	border-color: var(--colorWhite);
}

	.-bgPrimary .a_inputCheckbox ._input:checked + ._checkbox {
		border-color: var(--colorSecondary);
		background-color: var(--colorSecondary);
	}

		.-bgPrimary .a_inputCheckbox ._input:checked + ._checkbox svg {
			fill: var(--colorOffBlack);
		}



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Atom - Radio Input + Label
 * -------------------------------------------------------------------------- */

.a_inputRadio {
	display: block;
	margin: 0 0 0.3125rem 0;
}

	.a_inputRadio label {
		padding:0;
	}

	.a_inputRadio:hover {
		cursor: pointer;
	}
	.a_inputRadio ._radioButton {
		display: inline-block;
		position: relative;
		top: 0.125em;
		box-sizing: border-box;
		width: 1rem;
		height: 1rem;
		margin-right: 0.250rem;
		border: 0.1875em solid var(--colorWhite);
		border-radius: 0.5em;
		background-color: var(--colorWhite);
		box-shadow: 0 0 0 0.0625em var(--colorGrey);
		-webkit-box-shadow: 0 0 0 0.0625em var(--colorGrey);
		-moz-box-shadow: 0 0 0 0.0625em var(--colorGrey);
	}

	.a_inputRadio input {
		display: none;
	}

	.a_inputRadio input:checked ~ ._radioButton {
		background-color: var(--colorPrimary);
	}

/* ----- Colour Variants ----- */
.-bgPrimary .a_inputRadio ._radioButton {
	box-shadow: 0 0 0 0.0625em var(--colorWhite);
	-webkit-box-shadow: 0 0 0 0.0625em var(--colorWhite);
	-moz-box-shadow: 0 0 0 0.0625em var(--colorWhite);
}

	.-bgPrimary .a_inputRadio input:checked ~ ._radioButton {
		background-color: var(--colorOffBlack);
	}
/* -------------------------------------------------------------------------- *
 * Atom - Form Select dropdown
 * -------------------------------------------------------------------------- */
.a_inputSelect {
	position: relative;	
}

	.a_inputSelect select {
		position: relative;
		z-index: 2;
		display: inline-block;
		box-sizing: border-box;
		width: 100%;
		padding: 0.500rem 2.500rem 0.500rem 1.500rem;
		border: 0.125rem solid var(--colorTileBdr);
		outline: none;
		background-color: transparent;
		font-size: 1.125rem;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
	}

	.a_inputSelect select:disabled {
		cursor: not-allowed;
	}

	.a_inputSelect select::-ms-expand {
		display: none;
	}

	.a_inputSelect ._select {
		position: relative;
		z-index: 1;
		background-color: var(--colorTileBg);
	}

	.a_inputSelect svg {
		position: absolute;
		right: 0.125rem;

		z-index: 1;
		font-size: 2.500rem;
		color: var(--colorOffBlack);
		transition: all 0.25s ease-in-out;
	}

		.a_inputSelect select:hover {
			cursor: pointer;
		}
/* -------------------------------------------------------------------------- *
 * Atom - Checkbox Toggle
 * -------------------------------------------------------------------------- */
.a_inputToggle {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 0.500rem;
	padding: 0;
	user-select: none;
}

	.a_inputToggle ._label {
		display: inline-block;
		position: relative;
		bottom: -0.0625rem;
	}

	.a_inputToggle ._toggle {
		display: inline-block;
	}

	.a_inputToggle ._toggleRail {
		display: grid;
		grid-template-columns: 1fr 1fr;
		position: relative;
		align-self: flex-end;
		width: auto;
		height: 1.750rem;
		margin: 0;
		border-radius: 1rem;
		background-color: var(--colorGrey);
		color: var(--colorOffBlack);
	}

	.a_inputToggle ._toggleSlider {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
		width: 50%;
		height: 1.750rem;
		border-radius: 0.875rem;
		background-color: var(--colorPrimary);
		transition: all 0.25s ease-in-out;
	}

		.a_inputToggle:hover ._toggleSlider {
			background-color: var(--colorPrimary-light)
		}

	.a_inputToggle input {
		display: block;
		position: absolute;
		z-index: 3;
		width: 3rem;
		height: 1.750rem;
		margin: 0;
		opacity: 0;
	}

		.a_inputToggle input:hover {
			cursor:pointer;
		}

		.a_inputToggle input:checked ~ ._toggleSlider {
			left: 50%;
		}

	.a_inputToggle ._toggleFalse {
		position: relative;
		z-index: 3;
		grid-column-start: 1;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 0.750rem;
		font-size: 0.875rem;
		transition: all 0.25s ease-in-out;
	}

	.a_inputToggle ._toggleTrue {
		position: relative;
		z-index: 3;
		grid-column-start: 2;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 0.750rem;
		font-size: 0.875rem;
		transition: all 0.25s ease-in-out;
	}

		.a_inputToggle input:not(:checked) ~ ._toggleFalse,
		.a_inputToggle input:checked ~ ._toggleTrue {
			color: var(--colorWhite);
		}


/* -------------------------------------------------------------------------- *
 * Variant and option styles
 * -------------------------------------------------------------------------- */
/* ----- Left align ----- */
	.a_inputToggle.-left label
	{
		flex-direction: row-reverse;
	}

	.a_inputToggle.-left ._toggleRail
	{
		margin: 0 0.5rem 0 0;
	}

/* ----- Secondary colour variant ----- */
.a_inputToggle.-colorSecondary ._toggleSlider {
	background-color:var(--colorSecondary);
}
	.a_inputToggle.-colorSecondary label:hover ._toggleSlider {
		background-color:var(--colorSecondary-light);
	}

/* ----- Grey colour variant ----- */
.a_inputToggle.-colorGrey .toggleSlider {
	background-color:var(--colorGrey);
}
	.a_inputToggle.-colorGrey label:hover ._toggleSlider {
		background-color:var(--colorGrey-light);
	}
/* -------------------------------------------------------------------------- *
 * Atom - Loading Animation
 * -------------------------------------------------------------------------- */
.a_loading {
	display: inline-block;
	width: 3.25em;
	transform-origin: center;
	animation: a_loadingRotate 2s linear infinite;
}

	.a_loading circle {
		fill: none;
		stroke: var(--colorPrimary);
		stroke-width: 2;
		stroke-dasharray: 1, 200;
		stroke-dashoffset: 0;
		stroke-linecap: round;
		animation: a_loadingDash 1.5s ease-in-out infinite;
	}

@keyframes a_loadingRotate {
	100% {
		transform: rotate(360deg);
	}
}

@keyframes a_loadingDash {
	0% {
		stroke-dasharray: 1, 200;
		stroke-dashoffset: 0;
	}

	50% {
		stroke-dasharray: 90, 200;
		stroke-dashoffset: -35px;
	}

	100% {
		stroke-dashoffset: -125px;
	}
}

/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Atom - Nav Item
 * -------------------------------------------------------------------------- */
.a_navItem,
.a_navItem:visited {
	border: none;
	font-size: 1.125rem;
}

	.a_navItem:hover,
	.a_navItem:visited:hover {
		border-bottom: none;
	}

/* -------------------------------------------------------------------------- *
 * Variant and option styles
 * -------------------------------------------------------------------------- */

/* ----- Active ----- */
.a_navItem.-active,
.a_navItem.-active:visited {
	border-bottom: none;
	color: var(--colorPrimary);
}

	.a_navItem.-active:hover {
		border-bottom: none;
		cursor: pointer;
	}

/* ----- Highlight ----- */
.a_navItem.-highlight {
	position: relative;
	display: block;
	padding: 0.500rem 2rem;
	border-radius: 1.500rem;
	border: 0.125rem solid var(--colorSecondary);
	color: var(--colorSecondary);
	transition: all 0.25s ease-in-out;
	overflow: hidden;
	animation-duration: 1s;
	animation-delay: 0;
	animation-iteration-count: 1;
	animation-timing-function: ease-in-out;
}

	.a_navItem.-highlight:hover {
		
	}


		.o_siteTopBar .m_navList li .a_navItem svg {
			display: none;
			float: right;
			font-weight: 700;
		}

/* -------------------------------------------------------------------------- *
 * Admin - Nav Item
 * -------------------------------------------------------------------------- */
.o_adminSideBar .a_navItem, .o_adminSideBar .a_navItem:visited {
	display: block;
	padding: 0.875rem 1.500rem 0.875rem 1.500rem;
	border: none;
	border-left: transparent solid 0.250rem;
	color: var(--colorWhite-perpetual);
	transition: all 0.25s ease-in-out;
	text-decoration: none;
	white-space: nowrap;
}

	.o_adminSideBar .a_navItem:hover {
		background-color: var(--colorPrimary-dark);
	}

		.o_adminSideBar .a_navItem svg {
			vertical-align: middle;
			margin: -0.250rem 0.50rem 0 0;
		}

/* ----- Active ----- */
.o_adminSideBar .a_navItem.-active {
	border: none;
	border-left: var(--colorSecondary) solid 0.250rem;
	background-color: var(--colorPrimary-dark);
}



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */

	.o_siteTopBar .m_navList li .a_navItem {
		font-size: 1.750rem;
	}

	.o_siteTopBar .m_navList li .a_navItem.-highlight {
		color: var(--colorWhite);
		padding: 0;
		border: none;
	}

	.o_siteTopBar .m_navList li .a_navItem svg {
		display: inline-block;
		float: right;

	}
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Atom - Price
 * -------------------------------------------------------------------------- */


/* -------------------------------------------------------------------------- *
 * Atom - A_Video
 * -------------------------------------------------------------------------- */
.a_video .video-container iframe {
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	border: 0;
}
/* -------------------------------------------------------------------------- *
 * Molecule - Contact Details
 * -------------------------------------------------------------------------- */
.m_contactDetails {
	margin: 0;
	padding: 0;
	list-style: none;
}



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

	.m_contactDetails {

	}

		.m_contactDetails li {
			display: inline-block;
			width: 100%;
		}

			.m_contactDetails li .a_contactDetail {
				display: inline-block;
			}
}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Molecule - Context Menu
 * -------------------------------------------------------------------------- */
.m_contextMenu {
	position: relative;
	display: inline-block;
	text-align: right;
}

	.m_contextMenu ._contextMenuFlyout {
		position: absolute;
		top: 0;
		right: 1.375rem;
		z-index: 501;
		display: block;
		min-width: 14rem;
		height: 0;
		padding: 0;
		border: 0 solid var(--colorTileBdr);
		border-radius: 0.500rem;
		background-color: var(--colorTileBg);

		filter: drop-shadow(0 0 0.75rem rgba(0, 0, 0, 0.5));
		opacity: 0;
		overflow: hidden;
	}

		.m_contextMenu ._contextMenuFlyout ._contextMenuList {
			position: relative;
			z-index: 2;
			display: block;
			width: 100%;
			margin: 0;
			padding: 0.125rem 0;
			list-style: none;
		}

		.m_contextMenu ._contextMenuFlyout.-active {
			right: 2.250rem;
			height: auto;
			padding: 0.250rem 0;
			border: 0.0625rem solid var(--colorTileBdr);
			opacity: 1;
			overflow: visible;
		}

	.m_contextMenu ._contextMenuOverlay {
		display: none;

		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 500;
		background-color: transparent;
		opacity: 0;
	}

		.m_contextMenu ._contextMenuFlyout.-active + ._contextMenuOverlay {
			display: block;
		}
/* -------------------------------------------------------------------------- *
 * Molecule - Danger Zone Panel
 * -------------------------------------------------------------------------- */
.m_dangerZone {
	box-sizing: border-box;
	padding: 1rem 1.250rem;
	border: 0.125rem solid var(--colorDanger);
	border-radius: 0.250rem;
}

	.m_dangerZone h3 {
		margin-bottom: 1.500rem;
	}

/* -------------------------------------------------------------------------- *
 * Variant and option styles
 * -------------------------------------------------------------------------- */
/* ----- Example variant ----- */



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Molecule - Contact form
 * -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- *
 * Molecule - Email signup form
 * -------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------- *
 * Molecule - Gallery Modal
 * -------------------------------------------------------------------------- */
.m_galleryModal {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 800;
	width: 100%;
	height: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	transition: all 0.5s ease-in-out;
}

	.m_galleryModal .overlayBg {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 801;
		height: 0;
		background-color: rgba(28, 30, 35,0.8);
		opacity: 0;
		transition: opacity 0.25s ease-in-out;
	}

	.m_galleryModal .a_image > img {
		position: relative;
		z-index: 802;
		opacity: 0;
		max-width: 88vw;
		max-height: 100vh;
		object-fit: contain;
		transition: opacity 0.25s ease-in-out;
	}

	/* ----- Gallery Next/Prev Buttons ----- */
	.m_galleryModal .a_button._galleryNext,
	.m_galleryModal .a_button._galleryPrev {
		position: fixed;
		top: 50%;
		z-index: 803;
		margin-top: -2rem;
		padding: 0.625rem 0.750rem;
		background: linear-gradient(315deg, transparent 0.500rem, var(--colorPrimary) 0);
	}
	.m_galleryModal .a_button._galleryPrev {
		left: -4rem;
	}

	.m_galleryModal .a_button._galleryNext {
		right: -4rem;

	}

		.m_galleryModal .a_button._galleryPrev svg,
		.m_galleryModal .a_button._galleryNext svg {
			position: relative;
			top: -0.1875rem;
			margin: 0;
		}

		.m_galleryModal .a_button._galleryPrev svg {
			transform: rotate(180deg);
		}

		.m_galleryModal .a_button._galleryNext svg {

		}

	/* ----- Gallery Active overrides ----- */
	.m_galleryModal.-active {
		height: 100vh;
	}

		.m_galleryModal.-active .overlayBg {
			height: 100vh;
			opacity: 1;
		}

		.m_galleryModal.-active .a_image > img {
			opacity: 1;
		}

		.m_galleryModal.-active ._galleryPrev {
			left: 1rem;
			transform: none;
		}

		.m_galleryModal.-active ._galleryNext {
			right: 1rem;
			transform: none;
		}


/* -------------------------------------------------------------------------- *
 * Block Preview overrides
 * -------------------------------------------------------------------------- */
._mohBlockPreview .m_galleryModal {
	display: none;
}

/* -------------------------------------------------------------------------- *
 * Molecule - Icon list
 * -------------------------------------------------------------------------- */
.m_listicons {

}
	.m_listicons ul._icons {
		display: flex;
		list-style: none;
		margin: 0;
		padding: 0;
		line-height: 0;
	}

		.m_listicons ._icons li {
			margin-right: 0.500rem;
		}

			.m_listicons ._icons li svg {
				width: 2rem;
				height: 2rem;
				stroke: var(--colorPrimary);
			}
/* -------------------------------------------------------------------------- *
 * Molecule - Tag List
 * -------------------------------------------------------------------------- */
.m_listTags {
	
}

	.m_listTags .a_button {
		position:relative;
		z-index: 4;
		margin: 0 0.500rem 0 0;
	}
/* -------------------------------------------------------------------------- *
 * Molecule - Nav List
 * -------------------------------------------------------------------------- */
nav.m_navList > ul {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin:0;
	padding:0;
	list-style:none;
}

	nav.m_navList > ul li {
		
	}

.o_siteTopBar .m_navList {
	font-size:1.250rem;
	font-weight: 700;
}

	.o_siteTopBar .m_navList  li {
		display:inline-block;
		padding:0 0.400rem;
	}
		.o_siteTopBar .m_navList li:last-child
		{
			display:none;
		}
		/* -------------------------------------------------------------------------- *
 * Admin Sidebar Navigation
 * -------------------------------------------------------------------------- */
		.o_adminSideBar .m_navList {
			width: 100%;
		}

.o_adminSideBar ._navList {
	display: block;
	list-style: none;
	margin: 0;
	padding: 6.500rem 0 0 0;
}

	.o_adminSideBar ._navList li {
		display: block;
		width: 100%;
	}


/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	.o_siteTopBar nav.m_navList {
		position: fixed;
		top: 5.625rem;
		right: -100%;
		box-sizing: border-box;
		width: 100%;
		height: calc(100vh - 5.625rem);
		padding: 2rem 0;
		background-color: var(--colorOffBlack);
		transition: all 0.5s ease-in-out;
		overflow: auto;
	}

	.o_siteTopBar nav.m_navList.-active {

		right: 0;
	}

		.o_siteTopBar nav.m_navList > ul {
			flex-wrap: wrap;
		}

			.o_siteTopBar nav.m_navList > ul li {
				width: 100%;
				padding: 0.750rem 1.500rem;
				text-align: left;
			}

}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Molecule - Breadcrumb list
 * -------------------------------------------------------------------------- */
nav.m_navListBreadcrumb {
	
}

	ul.m_navListBreadcrumb {
		display: flex;
		list-style: none;
		margin: 0;
		padding: 0;
		font-weight: 500;
		color: var(--colorWhite);
	}

		ul.m_navListBreadcrumb li {
			display: flex;
			align-items: center;
		}

		ul.m_navListBreadcrumb li  .a_navItem {
			max-width: 16rem;
			color: var(--colorWhite);
			text-decoration: underline;
			overflow: hidden;
			white-space: nowrap;
			text-overflow: ellipsis;
		}

			ul.m_navListBreadcrumb li  .a_navItem:hover {
				color: var(--colorPrimary);
			}

		ul.m_navListBreadcrumb li  .a_navItem.-active {
			opacity: 0.5;
			text-decoration: none;
		}

			ul.m_navListBreadcrumb li  .a_navItem.-disabled:hover {
				cursor: default;
			}


/* -------------------------------------------------------------------------- *
 * Variant and option styles
 * -------------------------------------------------------------------------- */

/* ----- Primary coloured chevrons ----- */
nav.m_navListBreadcrumb.-chevronPrimary li svg {
	color: var(--colorPrimary);
}



/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Molecule - In page contents list
 * -------------------------------------------------------------------------- */
.m_navListPageContents {
	
}

	.m_navListPageContents ul {
		margin: 0;
		padding: 0;
		border-left: 0.0625rem solid var(--colorGrey);
		list-style: none;
		font-weight: 400;
	}

		.m_navListPageContents ul li {
			margin: 0 0 0.750rem 0;
			padding: 0 0 0 1rem;
		}
/* -------------------------------------------------------------------------- *
 * Molecule - Pagination List
 * -------------------------------------------------------------------------- */
.m_navListPagination {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

	.m_navListPagination ._ellipsis {
		display: inline-block;
		padding: 0 0.500rem;
	}

	.m_navListPagination .-pagination {
		display: inline-block;
		margin: 0 0.250rem;

	}

		.m_navListPagination .-pagination.-prev {
			position: relative;
			top: 0.125rem;
			width: 1.750rem;
			height: 2.750rem;
			margin-right: 1rem;
			border: none;
		}
			.m_navListPagination .-pagination.-prev svg {
				width: 1.750rem;
				height: 2.750rem;
				fill: var(--colorPrimary);
				transform: rotate(180deg);
			}



		.m_navListPagination .-pagination.-next {
			position: relative;
			top: 0.125rem;
			width: 1.750rem;
			height: 2.750rem;
			margin-left: 1rem;
			border: none;
		}
			.m_navListPagination .-pagination.-next svg{
				width: 1.750rem;
				height: 2.750rem;
				fill: var(--colorPrimary) !important;
			}


			.m_navListPagination .-pagination.-prev.-disabled,
			.m_navListPagination .-pagination.-next.-disabled {
				opacity: 0.5;
				cursor: not-allowed;
			}


		.m_navListPagination .-pagination.-bullet {
			width: 0.750rem;
			height: 0.750rem;
			background-color: var(--colorOffBlack);
			font-size: 0;
		}
			.m_navListPagination .-pagination.-bullet.-active {
				background-color: var(--colorPrimary);
			}

	.m_navListPagination .-pagination.-disabled {

	}
/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
	@media only screen and (max-width: 600px) {
		/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */
		.m_navListPagination ._ellipsis {
			padding: 0 0.250rem;
		}
	}

/* -------------------------------------------------------------------------- *
 * Molecule - Sitemap Nav List
 * -------------------------------------------------------------------------- */
.m_navListSitemap {
	margin: 0;
	padding: 0 0 0 1.500rem;
	border-left: 0.0625rem solid var(--colorGrey);
	list-style: none;
}

	.m_navListSitemap li {
		margin: 0.500rem 0 0 0;
		font-size: 1.250rem;
		font-weight: 400;
	}
/* -------------------------------------------------------------------------- *
 * Atom / Molecule / Organism / View - Name
 * -------------------------------------------------------------------------- */
.m_carouselPagination {
	padding-top: 3rem;
}

	.m_carouselPagination ul {
		margin: 0;
		padding: 0;
		list-style: none;
		text-align: center;
	}

		.m_carouselPagination ul li {
			display: inline-block;
		}

		.m_carouselPagination ul li button {
			display: inline-block;
			width: 0.750rem;
			height: 0.750rem;
			margin: 0 0.500rem;
			padding: 0;
			border: none;
			outline:	none;
			border-radius: 0.500rem;
			background-color: var(--colorOffBlack);
			transition: all 0.25s ease-in-out;
		}
		.m_carouselPagination ul li button:hover {
			width: 2rem;
			cursor: pointer;
		}

			.m_carouselPagination ul li button.-active {
				display: inline-block;
				width: 3rem;
				background-color: var(--colorPrimary);
			}
/* -------------------------------------------------------------------------- *
 * Molecule - Password Validation
 * -------------------------------------------------------------------------- */
.m_passwordValidation {
	margin: 0;
	padding: 0;
	list-style: none;
}
	
	.m_passwordValidation li {
		margin: 0.250rem 0;
	}

	.m_passwordValidation svg {
		vertical-align: middle;
	}

/* -------------------------------------------------------------------------- *
 * Variant and option styles
 * -------------------------------------------------------------------------- */
.m_passwordValidation li ._iconValid {
		display: none;
	}

.m_passwordValidation li.-invalid ._iconInvalid {
		display: inline-block;
	}
.m_passwordValidation li.-invalid ._iconValid {
		display: none;
	}

.m_passwordValidation li.-valid ._iconInvalid {
		display: none;
	}

.m_passwordValidation li.-valid ._iconValid {
		display: inline-block;
	}
/* -------------------------------------------------------------------------- *
 * Molecule - Statistic Donut for the Portal Dashboards
 * -------------------------------------------------------------------------- */
.m_portalStatDonut {
	position: relative;
	padding: 0 2rem;
	text-align: center;
}

	.m_portalStatDonut ._donutRing {
		stroke: var(--colorTileHdr);
	}

	.m_portalStatDonut ._donutFill {
		stroke: var(--colorPrimary);
	}

	.m_portalStatDonut ._donutContent {
		position: absolute;
		top: 0;
		left: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		height: 100%;
	}

		.m_portalStatDonut ._donutContent ._donutValue {
			font-size: 2.750rem;
			font-weight: 600;
		}

		.m_portalStatDonut ._donutContent ._donutDescription {
			font-size: 1.125rem;
			font-weight: 300;
		}

/* -------------------------------------------------------------------------- *
 * Molecule - Statistic Counter for the Portal Dashboards
 * -------------------------------------------------------------------------- */
.m_portalStatistic {
	position: relative;
	height: 100%;
	padding: 1rem;
	text-align: center;
}

	.m_portalStatistic ._statisticContent {
		position: absolute;
		top: 0;
		left: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		height: 100%;
	}

	.m_portalStatistic ._statisticNumber {
		font-size: 6rem;
		font-weight: 600;
	}

	.m_portalStatistic ._statisticDescription {
		font-size: 1.125rem;
		font-weight: 300;
	}

/* -------------------------------------------------------------------------- *
 * Molecule - Statistic Counter with Icon for the Portal Dashboards
 * -------------------------------------------------------------------------- */
.m_portalStatisticIcon {
	position: relative;
	box-sizing: border-box;
	height: 100%;
	padding-bottom: 2rem;
	text-align: center;
}

	.m_portalStatisticIcon ._statisticContent {
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		height: 100%;
	}

	.m_portalStatisticIcon ._statisticIcon {
		font-size: 4.5rem;
		color: var(--colorPrimary);
	}

	.m_portalStatisticIcon ._statisticNumber {
		font-size: 3rem;
		font-weight: 600;
	}

	.m_portalStatisticIcon ._statisticLabel {
		font-size: 1.250rem;
		font-weight: 500;
	}

	.m_portalStatisticIcon ._statisticPreLabel,
	.m_portalStatisticIcon ._statisticPostLabel {
		font-size: 1rem;
		font-weight: 300;
	}


/* -------------------------------------------------------------------------- *
 * Molecule - M_SocialAndContact
 * -------------------------------------------------------------------------- */
.m_socialandcontact ul {
	list-style: none;
	display: flex;
	justify-content: flex-end;
}

.m_socialandcontact a {
	border: none;
	line-height:0;
	padding:0.5rem;
}

.m_socialandcontact li {
	border: none;
	margin-left: 0.5rem;
	display: flex;
	align-items: center;
	
	padding:0;
}
	.m_socialandcontact li:not(.contact) {
		background-color: var(--colorPrimary);
	}
	.m_socialandcontact li.contact a {
		padding:1.05rem;
	}

		.m_socialandcontact .-iconSm {
			height: 1.4rem;
			fill: var(--colorWhite);
			align-items: center;
		}

/* -------------------------------------------------------------------------- *
 * Molecule - Light/Dark Theme Selector
 * -------------------------------------------------------------------------- */
.m_themeSelector {
	display: inline-block;
	position: relative;
	margin-right: 0.500rem;
	white-space: nowrap;
}

	.m_themeSelector ._themeSelector {
		display: inline-block;
		padding: 0.250rem;
		border: 0;
		border-radius: 0.250rem;
		outline: none;
		background-color: transparent;
		transition: all 0.25s ease-in-out;
	}

		.m_themeSelector ._themeSelector:hover {
			background-color: var(--colorSecondary);
			cursor: pointer;
		}

			.m_themeSelector ._themeSelector > ._icon {
				display: block;
			}

/* ----- Flyout Menu ----- */

.m_themeSelector ._themeSelectorFlyout {
	display: none;
	position: absolute;
	right: 0;
	z-index: 100;
	padding: 0.250rem 0;
	border: 0.0625rem solid var(--colorTileBdr);
	border-radius: 0.500rem;
	background-color: var(--colorTileBg);
}

	.m_themeSelector.-active ._themeSelectorFlyout {
		display: block;
	}

	.m_themeSelector ._themeSelectorFlyout ._btnThemeSelect {
		display: flex;
		align-items: center;
		width: 100%;
		margin: 0.250rem 0;
		padding: 0.250rem 1.500rem 0.250rem 1.250rem;
		border: 0;
		outline: none;
		background-color: transparent;
	}

		.m_themeSelector ._themeSelectorFlyout ._btnThemeSelect.-active {
			background-color: var(--colorSecondary);
		}

		.m_themeSelector ._themeSelectorFlyout ._btnThemeSelect:hover {
			cursor: pointer;
			background-color: var(--colorSecondary-light);
		}

		.m_themeSelector ._themeSelectorFlyout ._btnThemeSelect ._content {
			display: inline-block;
			padding-left: 0.500rem;
			font-size: 1rem;
			font-weight: 500;
		}


/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Molecule - Accordion Tile
 * -------------------------------------------------------------------------- */
.m_tileAccordion {
	padding-top: 2rem;
}

	.m_tileAccordion ._accordionButton {
		display: inline-block;
		position: relative;
		box-sizing: border-box;
		width: 100%;
		padding: 0.500rem 3rem 0.500rem 0.750rem;
		border: none;
		outline: none;
		text-align: left;
		background-color: var(--colorPrimary);
		
		user-select: none;
		background: linear-gradient(315deg, transparent 0.750rem, var(--colorPrimary) 0);
		color: var(--colorWhite);
	}

		.m_tileAccordion ._accordionButton.-active {
			background: rgba(255, 255, 255, 0.2);
			color: var(--colorWhite);
		}
	.m_tileAccordion ._accordionButton:hover {
		cursor: pointer;
	}

		.m_tileAccordion ._accordionButton h4 {
			margin-bottom: 0;
			font-family: var(--fontHeading);
		}

		.m_tileAccordion ._accordionButton svg {
			position: absolute;
			top: 0.500rem;
			right: 0.500rem;
			font-size: 2rem;
			transition: all 0.25s ease-in-out;
			color: inherit;
		}

			.m_tileAccordion ._accordionButton.-active svg._accordionExpand {
				opacity: 0;
			}

			.m_tileAccordion ._accordionButton svg._accordionCompress {
				opacity: 0;
			}

			.m_tileAccordion ._accordionButton.-active svg._accordionCompress {
				opacity: 1;
			}

	.m_tileAccordion ._accordionContent {
		max-height: 0;
		overflow: hidden;
		transition: all 0.25s ease-in-out;
		background: linear-gradient(315deg, transparent 1rem, rgba(255, 255, 255, 0.2) 0);
		color: var(--colorWhite);
	}

/* ----- Colour variations ----- */
.o_blockAccordion.-bgPrimary .m_tileAccordion ._accordionButton {
	background: linear-gradient(315deg, transparent 0.750rem, var(--colorBlack) 0);
}
	.o_blockAccordion.-bgPrimary .m_tileAccordion ._accordionButton.-active {
		background: var(--colorBlack);
		color: var(--colorWhite);
	}
	.o_blockAccordion.-bgPrimary .m_tileAccordion ._accordionContent,
	.o_blockAccordion.-bgPrimary .m_tileAccordion ._accordionContent.-active {
		background: linear-gradient(315deg, transparent 1rem, var(--colorBlack) 0);
	}

.o_blockAccordion.-bgWhite .m_tileAccordion ._accordionButton.-active,
.o_blockAccordion.-bgGrey-lighter .m_tileAccordion ._accordionButton.-active {
	background: var(--colorGrey-light);
	color: var(--colorText);
}
.o_blockAccordion.-bgWhite .m_tileAccordion ._accordionContent,
.o_blockAccordion.-bgGrey-lighter .m_tileAccordion ._accordionContent {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-light) 0);
	color: var(--colorText);
}

/* -------------------------------------------------------------------------- *
 * Molecule - Blog Post Tile
 * -------------------------------------------------------------------------- */
.m_tileBlogPost {
	position: relative;
	top: 0;
	display: flex;
	flex-wrap: wrap;
	box-sizing: border-box;
	width: calc(33% - 2rem);
	margin: 1rem;
	overflow: hidden;
	background: linear-gradient(315deg, transparent 1rem, var(--colorOffBlack) 0);
	transition: all 0.25s ease-in-out;
	align-content: space-between;
}

	.m_tileBlogPost:hover {
		transform: scale(1.0125);
	}

	.m_tileBlogPost ._tileLink {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 3;
		display: block;
		width: 100%;
		height: 100%;
		border: 0;

	}

	.m_tileBlogPost ._tileBody {
		box-sizing: border-box;
		width: 100%;

		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: auto 1fr 4rem;
		height: 100%;
	}

		.m_tileBlogPost ._tileImg {
			position: relative;
			min-height: 0;
			padding-top: 56.25%;
		}

			.m_tileBlogPost ._tileImg > .a_image {
				position: absolute;
				inset: 0;
			}

		.m_tileBlogPost ._tileBody ._tileContent {
			box-sizing: border-box;
			padding: 1.750rem 1.750rem 0.750rem 1.750rem;
		}

			.m_tileBlogPost ._tileBody ._tileContent h3 {
				font-family: var(--fontHeading);
				font-weight: 400;
			}

		.m_tileBlogPost ._tileBody ._tileFooter {
			grid-row-start: 3;
			box-sizing: border-box;
			padding: 0 1.750rem 1.750rem 1.750rem;
		}

	.m_tileBlogPost .a_blogPostMeta {
		font-size: 1rem;
		margin-top: 1rem;
		color: var(--colorWhite);
	}

		.m_tileBlogPost .a_blogPostMeta a
		{
			border:none;
			font-weight: 500;
		}


/* ----- Colour variations ----- */
.o_blockBlogFeed.-bgPrimary .m_tileBlogPost {
	background: linear-gradient(315deg, transparent 1rem, var(--colorPrimary-dark) 0);
}
.o_blockBlogFeed.-bgWhite .m_tileBlogPost {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-lighter) 0);
}
	.o_blockBlogFeed.-bgWhite .m_tileBlogPost .a_blogPostMeta,
	.o_blockBlogFeed.-bgWhite .m_tileBlogPost .a_blogPostMeta a {
		color: var(--colorBlack);
	}

.o_blockBlogFeed.-bgGrey-lighter .m_tileBlogPost {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-light) 0);
}
	.o_blockBlogFeed.-bgGrey-lighter .m_tileBlogPost .a_blogPostMeta,
	.o_blockBlogFeed.-bgGrey-lighter .m_tileBlogPost .a_blogPostMeta a {
		color: var(--colorBlack);
	}


/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */

@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	.m_tileBlogPost {
		width: calc(50% - 2rem);
	}
	
}

@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */
	.m_tileBlogPost {
		width: calc(100% - 2rem);
	}
}


/* -------------------------------------------------------------------------- *
 * Molecule - Call To Action Feature Tile
 * -------------------------------------------------------------------------- */
.m_tileCtaFeature {

}

	.m_tileCtaFeature ._inner {
		display:grid;
		grid-template-columns:3.500rem 1fr;
		grid-template-rows: 1fr;
		gap: 1rem;
		box-sizing: border-box;
		height: 100%;
		padding: 1rem;
		background: linear-gradient(315deg, transparent 1rem, var(--colorOffBlack) 0);
	}

		.m_tileCtaFeature ._inner .a_image > img {
			height: 3.500rem;
		}

/* ----- Colour variant ----- */
.o_blockCallToAction.-bgPrimary .m_tileCtaFeature ._inner {
	background: linear-gradient(315deg, transparent 1rem, var(--colorPrimary-dark) 0);
}
.o_blockCallToAction.-bgWhite .m_tileCtaFeature ._inner {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-lighter) 0);
}
.o_blockCallToAction.-bgGrey-lighter .m_tileCtaFeature ._inner {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-light) 0);
}

/* -------------------------------------------------------------------------- *
 * Molecule - Feature Item Tile
 * -------------------------------------------------------------------------- */
.m_tileFeature {
	color:var(--colorWhite);
}

	.m_tileFeature .a_image > img {
		display: inline-block;
	}

	.m_tileFeature ._inner {
		display: grid;
		grid-template-rows: auto 1fr;
		
	}
		.m_tileFeature ._inner ._bottom {
			padding:1rem;
		}

	/* ----- When whole tile is a link ----- */
	.m_tileFeature a._inner {
		position: relative;
		top: 0;
		color: var(--colorWhite);
		text-decoration: none;
		border-bottom: none;
		transition: all 0.25s ease-in-out;
	}

		.m_tileFeature a._inner:hover {
			top: -0.500rem;
		}
/* -------------------------------------------------------------------------- *
 * Molecule - Logo cloud tile
 * -------------------------------------------------------------------------- */
.m_tileLogo {
	display: flex;
	justify-content: center;
	align-content: center;
	flex-wrap: wrap;
	box-sizing: border-box;
	padding: 0.750rem;
	background: linear-gradient(315deg, transparent 1rem, var(--colorWhite) 0);
}

	.m_tileLogo a {
		border-bottom: none;
		color: var(--colorOffBlack);
	}

	.m_tileLogo .a_image,
	.m_tileLogo .a_image > img {
		width: 100%;
		height: auto;
	}

	.m_tileLogo ._caption {
		margin: 1rem 0 0 0;
		font-size: 0.875rem;
		font-weight: 700;
	}


/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}
/* -------------------------------------------------------------------------- *
 * Molecule - Price Tile
 * -------------------------------------------------------------------------- */
.m_tilePrice {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	height: 100%;
	padding: 1rem;
	background: linear-gradient(315deg, transparent 1rem, var(--colorOffBlack) 0);
}


	.m_tilePrice ._tileContent {
		padding: 2rem 0.500rem 0.500rem 0.500rem;
	}

		.m_tilePrice ._tileContent ._priceHeading {
			margin-bottom: 0.250rem;
			font-size: 1.250rem;
		}

		.m_tilePrice ._tileContent ._price ._monthlyPrice,
		.m_tilePrice ._tileContent ._price ._oneOffPrice {
			display: inline-block;
			font-size: 3rem;
			line-height: 3rem;
			font-family: var(--fontHeading);
			font-weight:200;
		}

		.m_tilePrice ._tileContent ul._priceFeatures {
			margin: 0;
			padding: 0 0 0 1.750rem;
			list-style: none;
		}

			.m_tilePrice ._tileContent ul._priceFeatures li {
				position: relative;
				padding-bottom: 0.500rem;
			}

				.m_tilePrice ._tileContent ul._priceFeatures li svg {
					position: absolute;
					top: 0.0625rem;
					left: -1.750rem;
					color: var(--colorPrimary);
				}
	
			/* ----- Header ----- */
			.m_tilePrice ._tileHeader {
				position: absolute;
				top: -1.250rem;
				left: 0;
				width: 100%;
				text-align: center;
			}

	/* ----- Footer ----- */
	.m_tilePrice ._tileFooter {
		padding-bottom: 1rem;
		text-align: center;
	}

/* ----- Colour variant ----- */
.o_blockPricing.-bgPrimary .m_tilePrice {
	background: linear-gradient(315deg, transparent 1rem, var(--colorPrimary-dark) 0);
}
.o_blockPricing.-bgPrimary .m_tilePrice hr {
	background: var(--colorPrimary);
}
.o_blockPricing.-bgPrimary ._priceHeading .-txtPrimary {
	color: var(--colorWhite);
}
.o_blockPricing.-bgPrimary .m_tilePrice ._tileContent ul._priceFeatures li svg {
	color: var(--colorWhite);
}
.o_blockPricing.-bgPrimary .m_tilePrice ._tileContent .m_listicons ._icons li svg {
	stroke: var(--colorWhite);
}

.o_blockPricing.-bgWhite .m_tilePrice {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-lighter) 0);
}
.o_blockPricing.-bgGrey-lighter .m_tilePrice {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-light) 0);
}


/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}


/* -------------------------------------------------------------------------- *
 * Molecule - M_TileProgramme
 * -------------------------------------------------------------------------- */
.m_tileProgramme {
	height: 100%;
}

.m_tileProgramme ._inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-sizing: border-box;
	height: calc(100% - 2rem);
	padding: 1rem;
	margin: 1rem;
	align-items: flex-start;
	background: linear-gradient(315deg, transparent 1rem, var(--colorOffBlack) 0);
}

	.m_tileProgramme ._inner ._body {
		width: 100%;
		padding: 0 0 1rem 0;
	}

	.m_tileProgramme ._inner ._footer {
		width: 100%;
	}

.m_tileProgramme a{
	margin-top:2rem;
}

/* ----- Colour variations ----- */
.o_blockProgrammePicker.-bgPrimary .m_tileProgramme ._inner {
	background: linear-gradient(315deg, transparent 1rem, var(--colorPrimary-dark) 0);
}
	.o_blockProgrammePicker.-bgPrimary .m_tileProgramme ._inner .-txtPrimary {
		color: var(--colorWhite);
	}
	.o_blockProgrammePicker.-bgPrimary .m_tileProgramme ._inner .m_listicons ._icons li svg {
		stroke: var(--colorWhite);
	}

.o_blockProgrammePicker.-bgWhite .m_tileProgramme ._inner {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-lighter) 0);
}
.o_blockProgrammePicker.-bgGrey-lighter .m_tileProgramme ._inner {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-light) 0);
}

/* -------------------------------------------------------------------------- *
 * Molecule - Statistic Tile
 * -------------------------------------------------------------------------- */
.m_tileStatistic {
	margin-top: 2rem;
	padding: 2rem 1rem;
	text-align: center;
	background: linear-gradient(315deg, transparent 1rem, var(--colorOffBlack) 0);
}


	.m_tileStatistic:nth-child(4n+4) {
		border-right: none;
	}

	.m_tileStatistic ._statistic {
		display: inline-block;
		width: 100%;
		font-size: 3rem;
		font-weight: 400;
		font-family: var(--fontHeading);
		color:var(--colorPrimary);
		margin-bottom:2rem;
	}

	.m_tileStatistic ._description {
		font-weight:400;
	}

/* ----- Colour Variations ----- */
.o_blockStatistics.-bgWhite .m_tileStatistic {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-lighter) 0);
}
.o_blockStatistics.-bgGrey-lighter .m_tileStatistic {
	background: linear-gradient(315deg, transparent 1rem, var(--colorGrey-light) 0);
}


/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	.m_tileStatistic:nth-child(2n+2) {
		border-right: none;
	}
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	.m_tileStatistic {
		border-right: none;
		border-bottom: 0.125rem solid var(--colorGrey);
	}
	.m_tileStatistic:last-of-type {
		border-bottom: none;
	}
}

/* -------------------------------------------------------------------------- *
 * Molecule - Timeline List Item
 * -------------------------------------------------------------------------- */
.m_tileTimeline {
	position: relative;
	padding: 0;
}

	.m_tileTimeline ._order {
		color: var(--colorPrimary);
		background: linear-gradient(315deg, transparent 0.5rem, var(--colorPrimary) 0);
		padding: 0.15rem;
		width:2.5rem;
		margin-bottom:2rem;
	}
		.m_tileTimeline ._order ._inner {
			width: 2.5rem;
			height: 2.5rem;
			background: linear-gradient(315deg, transparent 0.45rem, var(--blockBackground, var(--colorBlack)) 0);
			display: flex;
			justify-content: center;
			align-items: center;
			font-weight: 600;
			font-family: var(--fontHeading);
			font-size: 1.250rem;
		}

	.m_tileTimeline ._date {
		position: relative;
		display: inline-block;
		margin-bottom: 0.750rem;
		padding: 0 0.500rem 0 1.250rem;
		font-size: 0.875rem;
		font-weight: 700;
	}

		.m_tileTimeline ._date::before {
			content: '';
			position: absolute;
			top: 0.500rem;
			left: 0.250rem;
			width: 0.500rem;
			height: 0.500rem;
			border-radius: 0.250rem;
			background-color: var(--colorPrimary);
		}

	.m_tileTimeline ._heading {
		font-size: 1.500rem;
		font-weight: 700;
	}

	.m_tileTimeline ._description {

	}

/* ----- Colour Variations ----- */
.-bgPrimary .m_tileTimeline ._order {
	background: linear-gradient(315deg, transparent 0.5rem, var(--colorWhite) 0);
	color: var(--colorWhite);
}

/* -------------------------------------------------------------------------- *
 * Responsive variants
 * -------------------------------------------------------------------------- */
@media only screen and (max-width: 1400px) {
	/* ---------------------------------------- *
	 * Laptop Large / .-ll- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1200px) {
	/* ---------------------------------------- *
	 * Laptop Small / .-ls- / 12 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 1000px) {
	/* ---------------------------------------- *
	 * Tablet Large / .-tl- / 8 columns
	 * ---------------------------------------- */
	
}
@media only screen and (max-width: 800px) {
	/* ---------------------------------------- *
	 * Tablet Small / .-ts- / 6 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 600px) {
	/* ---------------------------------------- *
	 * Mobile Large / .-ml- / 4 columns
	 * ---------------------------------------- */

}
@media only screen and (max-width: 400px) {
	/* ---------------------------------------- *
	 * Mobile Small / .-ms- / 2 columns
	 * ---------------------------------------- */
	
}

/* -------------------------------------------------------------------------- *
 * Organism - Human Sitemap
 * -------------------------------------------------------------------------- */
.o_humanSitemap {
	
}

	.o_humanSitemap nav {
	
	}

		.o_humanSitemap nav ul {
			margin: 0;
			padding: 0;
			list-style:none;
		}

			.o_humanSitemap nav ul li {
				padding: 0.125rem 0;
				font-size: 1.250rem;
				font-weight: 400;
			}

				.o_humanSitemap nav ul li ul {
					margin: 0 0 0 0.500rem;
					padding: 0 0 0 1rem;
				}
