/* ------------------------------------------------- */

	.brand1n {
		background: #3f51b5 !important;
	}
	.brand1n:hover {
		background: #3f51b5 !important;
	}
	.brand-text1n {
		color: #3f51b5 !important;
	}
	.brand-text1nQB {
		color: #3f51b5 !important;
	}
	.brand-text1nQBF {
		color: #d73d21 !important;
	}
	.buttonQB1 {
		color: #ffffff;
	}
	.buttonQB2 {
		background: #3f51b5 !important;
	}
	.dropLine {
		background: #3f51b5 !important;
	}
	.pulseButton {
		background: #3f51b5 !important;
	}

	/* custom brand 2 wide */
	.brand2w {
		background: #3f51b5 !important;
	}
	.brand2w:hover {
		background: #3f51b5 !important;
	}
	.brand-text2w {
		color: #3f51b5 !important;
	}
	form {
		max-width: 560px;
		margin: 20px auto;
		padding: 20px;
	}

	.material-symbols-outlined {
		font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 100, 'opsz' 24;
		/*	FILL (Fill): 0/1 = no fill/fill */
		/*	wght (Weight): 1/1000 = thickness of the lines */
		/*	GRAD (Grade): -1000/1000 = used with wght to obtain a certain contrast level */
		/*	opsz (Optical Size): 6/144 = controls the font file’s optical size optimizations */
		font-size: 24px !important;
		fill: #3f51b5;
	}

	span.material-symbols-outlined {
		line-height: 1.5;
	}

/* -------------------------------------------------- */

	/* make footer larger or smaller and force to bottom of page */
	.wrapper {
		margin: auto;
		width: 100%;
	}

	.colorQB {
		background-color: #e8eaf6 !important;
	}

	#content {
		min-height: calc(100vh - 208px);
	}

	#footer {
		width: 100%;
		height: auto;
		position: absolute;
		padding: 6px;
	}

	hr.footerLine {
		height: 1px;
		background-color: #c5cae9;
		border: 0 none;
	}

	.footerAnchor {
		border-radius: 5px;
		padding: 5px;
		display: inline-block;
		width: 125px;
	}

/* -------------------------------------------------- */

	/* center images within carousel vertically */
	.xlide img {
		object-fit: contain;
		height: 100%;
		align-items: center;
	}

/* -------------------------------------------------- */

	.font120 {
		font-size:120%;
	}

/* -------------------------------------------------- */

	/* nav tab bar customisation */
	.tabs .tab a {
		color: #3f51b5;
		font-size: 13px;
		padding-left: 20px;
		padding-right: 20px;
		border-radius: 5px;
	}

	.tabQB {
		color: #3f51b5;
	}

	.tabQB1 {
		background: #e8eaf6;
		color: #3f51b5 !important;
	}

	.sidenavQB {
		background: #e8eaf6;
		color: #3f51b5;
	}

	/* nav tab bar customisation on visited */
	.tabs .tab a:visited {
		background-color: #c5cae9;
	}

	/* nav tab bar customisation on selected */
	.selectedLink {
		background-color: #c5cae9;
	}

	/* nav button bar customisation on selected */
	.selectedButton {
		background: #9fa8da !important;
	}

/* -------------------------------------------------- */

	/* vertically align text */
	.vertical-center {
		margin: 0;
		position: absolute;
		top: 50%;
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}

/* -------------------------------------------------- */

	/* tooltip customisation */
	.material-tooltip {
		background-color: #7986cb;
		color: white;
		font-weight: 600;
		border-radius: 5px;
	}

	.hamburger {
		vertical-align: middle;
	}

	.actionHamburger {
		vertical-align: middle;
		font-size: 18px;
	}

	.borderRadius15 {
		border-radius: 15px;
	}

	/* collection header customisation */
	.collection.with-header .collection-header {
		background-color: #e8eaf6;
	}

	body
	{
		counter-reset: headingCounter;
	}

	.headingCounter:before
	{
		content: counter(headingCounter) ".\0000a0\0000a0";
		counter-increment: headingCounter;
	}

	.paraTab {
		margin-left: 40px;
	}

/* -------------------------------------------------- */

	/* table highlight colour on hover */
	table.highlight>tbody>tr:hover {
		background-color: #e8eaf6;
	}

	/* table round corners, stop overflows inside table and keep inside containers */
	table {
		cursor: default;
		border-radius: 15px;
		overflow: hidden;
		width: 100%;
	}

	/* various table formats */
	.nopadTable {
		padding: 0px;
		border: none;
	}

	.nopadTableFooter {
		padding: 0px;
		border: none;
		font-weight: normal;
	}

	.resultTable {
		padding: 0px;
		padding-top: 10px;
		padding-bottom: 10px;
		border: none;
	}

	.tableHead th {
		cursor: default;
		border-right: 1px solid #e0e0e0;
	}

	.tableBody td {
		cursor: default;
		padding: 5px;
		border-right: 1px solid #e0e0e0;
	}

	.tableleftHead th {
		cursor: default;
		border-right: 1px solid #e0e0e0;
	}

	.tableleftBody td {
		cursor: default;
		padding: 5px;
		padding-left: 20px;
		border-right: 1px solid #e0e0e0;
	}

	/* highlight table cell only onmouseover */
	.tableHover:hover {
		background-color: #98e698 !important;
	}

	.techTable {
		border-radius: 15px;
	}

	.techTable th, td {
		padding: 20px;
	}

	/* highlight table column and row on onmouseover */
	.crossTable td, th {
		position: relative;
	}

	.crossTable td:hover::before {
		background-color: #e8eaf6;
		content: '\00a0';
		height: 100%;
		left: -5000px;
		position: absolute;
		top: 0;
		width: 10000px;
		z-index: -1;
	}

	.crossTable td:hover::after {
		background-color: #e8eaf6;
		content: '\00a0';
		height: 10000px;
		left: 0;
		position: absolute;
		top: -5000px;
		width: 100%;
		z-index: -1;
	}

/* -------------------------------------------------- */

	/* stop the button drop-down from wrapping in the nav bar */
	ul.select-dropdown, ul.dropdown-content {
		width: auto !important;
		li > span white-space: nowrap;
	}

/* -------------------------------------------------- */

	/* change button to text for the venue modal headers */
	.textbtnvenue {
		border: none;
		background-color: inherit;
		padding: 0px 0px;
		font-size: 21px;
		font-family: heading;
		cursor: pointer;
		display: inline-block;
	}

	/* change button to text for database switching */
	.textbtndbswitch {
		border: none;
		background-color: inherit;
		padding: 0px 0px;
		font-size: 25px;
		font-family: heading;
		font-weight: bold;
		cursor: pointer;
		display: inline-block;
	}

	/* change button to text for database switching for mobile users */
	.textbtndbswitch-mob {
		border: none;
		background-color: inherit;
		padding: 0px 0px;
		font-size: 25px;
		font-weight: bold;
		cursor: pointer;
		display: inline-block;
	}

	/* change button to text for table searches */
	.textbtntable {
		border: none;
		background-color: inherit;
		padding: 0px 0px;
		font-size: 20px;
		font-family: heading;
		cursor: pointer;
		display: inline-block;
	}

	/* change button to text for table searches */
	.textbtncreator {
		border: none;
		background-color: inherit;
		padding: 0px 0px;
		font-size: 20px;
		font-family: body;
		cursor: pointer;
		display: inline-block;
		width: 100%;
	}

	/* change button to text for table searches */
	.textbtntour {
		border: none;
		background-color: inherit;
		padding: 0px 0px;
		font-size: 40px;
		cursor: pointer;
		display: inline-block;
		width: 100%;
	}

	.textbtntour:focus {
		background-color: inherit;
	}

	.textbtn:focus, .textbtn:active {
		background-color: inherit;
	}

	.textbtn:hover {
		background: transparent;
	}

	.textbtn {
		color: #d63907;
	}

	/* change button to text for tour searching */
	.textbtndownload {
		border: none;
		background-color: inherit;
		padding: 0px 0px;
		font-size: 18px;
		font-family: body;
		cursor: pointer;
		display: inline-block;
		text-align: left;
		word-wrap: break-word;
		width: 100%;
	}

	.textbtn1:focus, .textbtn:active {
		background-color: inherit;
	}

	.textbtn1:hover {
		background: transparent;
	}

	.textbtn1 {
		color: #3f51b5;
	}

	/* unset all styling from forms so that a button appears as text */
	.unsetFrom {
		all: unset;
	}

	.btn {
		font-family: Heading !important;
		text-transform: unset !important;
	}

	.dropdown-content {
		font-family: Heading !important;

	}

	.dropdown-content li>a, .dropdown-content li>span {
		color: #3f51b5;
		opacity: 0.75;
	}

	.tab, .sidenav {
		font-family: footer !important;
		text-transform: unset !important;
	}

	.tabPad {
		padding-left: 11px !important;
		padding-right: 11px !important;
		font-size: 15px !important;
	}

	.orangeButton {
		color: #d63907 !important;
	}

/* -------------------------------------------------- */

	/* autocomplete always drops downwards with a fixed width and height */
	.autocomplete-content.dropdown-content {
		top: 46px !important;
		max-height: 250px !important;
		left: 0 !important;
		right: 0 !important;
		z-index: 10;
	}

/* -------------------------------------------------- */

	/* add a small line height padding */
	.adjust-line-height {
		padding-bottom: 10px;
	}

/* -------------------------------------------------- */

	/* remove large padding at bottom of card */
	.card-content .row:last-of-type {
		margin-bottom: 0;
	}

/* -------------------------------------------------- */

	/* change placeholder colour, was almost unreadable */
	/* Chrome, Firefox, Opera, Safari 10.1+ */
	::placeholder {
		color: grey;
		/* Firefox */
		opacity: 0.6;
	}

	/* Internet Explorer 10-11 */
	:-ms-input-placeholder {
		color: grey;
	}

	/* Microsoft Edge */
	::-ms-input-placeholder {
		color: grey;
	}

/* -------------------------------------------------- */

	/* round modal corners */
	.modalRound {
		border-radius: 15px;
	}

/* -------------------------------------------------- */

	/* change the colour on the range-field drag button */
	input[type=range]::-webkit-slider-thumb {
		background-color: #3f51b5;
	}
	input[type=range]::-moz-range-thumb {
		background-color: #3f51b5;
	}
	input[type=range]::-ms-thumb {
		background-color: #3f51b5;
	}

/* -------------------------------------------------- */

	/* change the colour of the radio button when selected */
	[type="radio"]:checked+span:after, [type="radio"].with-gap:checked+span:after {
		background-color: #3f51b5;
	}

	[type="radio"]:checked+span:after, [type="radio"].with-gap:checked+span:before, [type="radio"].with-gap:checked+span:after {
		border: 2px solid #3f51b5;
	}

	/* change the colour of the checkbox button when selected */
	[type="checkbox"].filled-in:checked+span:not(.lever):after {
		border: 2px solid #3f51b5;
		background-color: #3f51b5;
	}

/* -------------------------------------------------- */

	/* styling for tour image modal */
	.modaltourImage {
		border-radius: 15px;
		width: 100%;
		height: auto;
	}

	.modalTour {
		background-color: #d1c4e9;
		max-height: 100%;
		overflow-y: hidden;
	}

	.modalTour .modal-content {
		padding: 10px;
	}

	/* styling for venue image modal */
	.modalVenue {
		background-color: #e8eaf6;
		max-height: 100%;
		overflow-y: auto;
	}

/* -------------------------------------------------- */

	/* styling for 'live' image */
	.sitelink {
		align-self: flex-end;
	}

	.headerimage {
		height: 42px;
	}

	.footerimage {
		height: 14px;
	}

	.tourimage {
		height: 42px;
		vertical-align: bottom;
	}

	.action {
		display: flex;
	}

/* -------------------------------------------------- */

	/* prevent images highlighting in blue when clicked */
	img {
		-khtml-user-select: none;
		-o-user-select: none;
		-moz-user-select: none;
		-webkit-user-select: none;
		user-select: none;
	}

/* -------------------------------------------------- */

	/* Hide scrollbar for IE, Edge and Firefox */
	.container {
		overflow: -moz-scrollbars-none;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}

	/* Hide scrollbar for Chrome, Safari and Opera */
	.container::-webkit-scrollbar {
		display: none;
	}

/* -------------------------------------------------- */