:root {
    --main-bg-color: #ffffff;
    --mid-blue: #00AEEF; /* used for links in body text and also hover (with underline) */
    --light-blue: #0f9cd8;
    --dark-grey: #2c2c2c;
    --light-grey: #dadada;
    --header-height: 100px;
    --header-height-scrolled: 80px;
    --header-height-tablet: 90px;
    --header-height-mobile: 60px;
    --off-white: #e3edec;
    --white: #ffffff;
    
    --margin-desktop: 64px;
    --margin-tablet: 40px;
    --margin-mobile: 20px;

	--grayscale-percentage: 100%;
	--contrast-amount: 1.25;

    --animation-time: 2s; 
}


@font-face {
    font-family: "Roboto-Light";
	src: url("../fonts/Roboto-Light.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}
@font-face {
    font-family: "Roboto-Regular";
	src: url("../fonts/Roboto-Regular.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}
@font-face {
    font-family: "Roboto-Italic";
	src: url("../fonts/Roboto-Italic.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}
@font-face {
    font-family: "Roboto-Medium";
	src: url("../fonts/Roboto-Medium.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}
@font-face {
    font-family: "Roboto-Bold";
	src: url("../fonts/Roboto-Bold.ttf") format("truetype");
	font-weight: normal;
	font-style: normal;
}



html {
    scroll-behavior: smooth;
    
}

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: var(--dark-grey);
}

::-webkit-scrollbar-thumb:hover {
    background: var(--mid-blue);
}

body {
	margin: 0;
	padding: 0;
	font-family: "Roboto-Regular", Arial, serif;
	font-weight: 400;
	font-style: normal;	
	font-size: 1rem;
}

header {
	height: 100px;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 10;
}
	.siteHeader {
		margin: 0;
		padding: 0;
		width: 100%;
		
		/*background: var(--white);*/
	}
	
	.nav-down .siteHeader {
		
	}

		.siteHeader .container,
		#overlay-nav .container {
			margin: 40px auto 0 auto;
			padding: 0 0 0 40px;
			display: flex;
			flex-flow: row nowrap;
			width: 100%;
			/*max-width: 1440px;*/
			justify-content: space-between;
			
			align-items: center;
		}
		
		.siteHeader .container { height: 60px; overflow-y: hidden; }

		body.overlay-active .siteHeader .container,
		body.overlay-active #overlay-nav .container {
			max-width: 1450px;
		}
		body.overlay-active #overlay-nav .container {
			padding-top: 15px;
			justify-content: flex-end;
			
		}
		
			.logo {
				margin: 0;
				padding: 0;
				display: flex;
				flex-flow: row nowrap;
			}
				.logo img {
					margin: 0;					
					padding: 0;
					height: 66px;
					display: block;
    				font-size: 0;
    				vertical-align: baseline;
				}
			
			@media screen and (max-width: 999px) {
				.logo {
					flex-flow: row wrap;
					/*margin-top: 5px;*/
				}
					.logo img {
						/*height: 20px;*/
					}
					#impactLogo {
						
					}
			}
			
			.navigation {
				margin: 0;
				padding: 0;
				background: rgba(255,255,255,0.90);
			}
		body.overlay-active .navigation,
		body.overlay-active .navigationClose {
			padding-right: 10px;
		}
			
			.navigation li a { 
				margin: 0;
				padding: 0;
				font-size: 1rem; 
				font-weight: 400;
				text-decoration: none !important; 
				color: inherit; /* javascript switches color - darkMode */
			}
			
				.navigation li:hover a {
					color: var(--mid-blue);
					transition: color 0.4s ease;
					/*padding-bottom: 17px;
					border-bottom: 4px solid var(--mid-blue);*/
				}
				.navigation li.active a,
				.navigation li.active:hover a {
					color: var(--white);
					/*font-weight: 700;*/
					transition: color 0.4s ease;
					/*padding-bottom: 17px;
					border-bottom: 4px solid var(--mid-blue);*/
				}
				/*
				body.dark-mode .navigation li:hover a,
				body.dark-mode .navigation li.active a {
					color: var(--impact-light-blue);
				}
				*/
			.navigation ul, .navigation ul li { list-style-type: none; }
			
			.navigation ul {
				display: flex;
				flex-flow: row nowrap;
				justify-content: space-between;
				align-items: center;
				margin: 0;
				padding: 0;
			}
			
			.navigation ul li {
				margin: 0;
				padding: 20px 10px;
			}
			
			.navigation ul li.active {
				background: var(--dark-grey);
			}
			
			#nav {
				display: none;
			}

			@media screen and (max-width: 999px) {
				.siteHeader .container {
					margin: 20px auto 0 auto;
					padding: 10px 20px;
					/*max-width: 950px;*/
				}
				body.overlay-active #overlay-nav .container {
					padding: 0;
					/*max-width: 950px;*/
				}
				
				.navigation {
					background: transparent;;
				}
				
					.navigation ul { margin: 0; }
					
					.navigationClose ul li:not(#nav) {
						/*display: none;
						top: -2px;*/
					}
					
			}
			
			@media screen and (max-width: 999px) {
			
					.navigation ul li:not(#nav) {
						display: none;
					}
			
					#nav {
						display: inline-flex;
						align-content: center;
						position: relative;
						flex-wrap: wrap;
					}
			}
	
			img#hamburgerIcon {
				display: block;
				width: 36px;
    			height: auto;
			}
			img#hamburgerIconClose {
				display: none;
			}
			
			body.overlay-active img#hamburgerIcon {
				display: none;
			}
			body.overlay-active img#hamburgerIconClose {
				display: block;
				width: 36px;
			}
			
			
			.menu, .menu.active {
				margin: 0;
				padding: 0;
				width: 50px;
				height: 36px;
				z-index: 100001 !important;
				position: relative;
				/*top: 6px;
				right: 0px;*/
				display: inline-block;
				overflow: hidden;
				cursor: pointer;
			}
			@media screen and (max-width: 999px) {
				.menu {
					/*top: 5px;*/
				}
				.hamburger.menu.active {
					/*top: 2px !important;*/
					/*right: -10px !important;*/
					
					background: none !important;
				}
			}

			/* Navigation - overlay version */

			#overlay-nav {
			  margin: 0;
			  padding: 0;
			  width: 100%;
			  height: 100%;
			  position: fixed;
			  top: 0;
			  left: 0%;
			  z-index: 2 !important;
			  background: rgba(255, 255, 255, 0.9);
			  opacity: 0;
			  visibility: hidden;
			  -webkit-transition: all 0.2s ease-in;
			  transition: all 0.2s ease-in-out;
			}

			/* Open navigiation */

			#overlay-nav.active {
			  margin: 0;
			  padding: 0;
			  width: 100%;
			  height: 100%;
			  position: fixed;
			  opacity: 100;
			  visibility: visible;
			  z-index: 100 !important;
			  -webkit-transition: all 0.4s ease;
			  transition: all 0.4s ease-in-out;
			}

			#nav-content {
			  position: relative;
			  top: calc((50%) - 100px);
			  -webkit-transform: translateY(-50%);
			  transform: translateY(-50%);
			}

			#nav-content ul {
			  margin: 0 auto;
			  padding: 0;
			  list-style: none;
			  text-align: center;
			}
			
			body.overlay-active #nav-content ul {
				 padding-right: 10px;
			}

			#nav-content ul li a {
			  width: 100%;
			  padding: 1em 0;
			  display: block;
			  font-family: "Roboto-Regular", serif;
			  font-weight: 400;
			  font-style: normal;
			  font-size: 1.125em;
			  letter-spacing: 0.03em;
			  text-decoration: none;
			  color: var(--dark-grey);
			}

			#nav-content ul li a:hover {
			  color: var(--mid-blue);
			}

			#nav-content ul li.active a {
			  color: var(--mid-blue);
			}

			#nav-content ul.secondary-links {
				margin-top: 30px;
				padding: 0;
				display: flex;
				flex-flow: row wrap;
				justify-content: center;
				gap: 30px;
			}
				#nav-content ul.secondary-links li a {
					font-size: 1.15em;
				}
			
		.nav-up {
			top: -101px;
		}



section {
	margin: 0;
	padding: 2rem 0 0;
	width: 100%;
	display: flex;
    flex-flow: column wrap;
    justify-content: center;
    align-items: flex-start;
	/*min-height: 50vh;*/
	/*background: var(--white);*/

}
	section#home-intro,
	section#funding-intro,
	section#benefits-intro,
	section#who-intro,
	section#trustees-intro,
	section#legal-intro,
	section#contact-intro {
		height: 100vh;
		flex-flow: row nowrap;
		justify-content: flex-end;
		align-items: flex-start;
		position: relative;
		z-index: 2;
		
		background-image: url("../images/01-homepage-AdobeStock_319391670.jpg");/* original */
		background-repeat: no-repeat;
		background-position: 75% center;
		background-size: cover;
		
	}
	section#funding-intro {
		background-image: url("../images/02-funding-and-investment-AdobeStock_947814396.jpg");/* original */
	}
	section#benefits-intro {
		background-image: url("../images/03-your-benefits-AdobeStock_1109367472.jpg");/* original */
	}
	section#who-intro {
		background-image: url("../images/04-whos-who-AdobeStock_745042824.jpg");/* original */
	}
	section#trustees-intro {
		background-image: url("../images/05-trustess-bulletin-board-AdobeStock_963439942.jpg");/* original */
	}
	section#legal-intro {
		background-image: url("../images/06-legal-documents-AdobeStock_974724492.jpg");/* original */
	}
	section#contact-intro {
		background-image: url("../images/07-contact-us-AdobeStock_1003065092.jpg");/* original */
	}

@media screen and (max-width: 999px) {

	section#home-intro {
		background-image: url("../images/01-homepage-AdobeStock_319391670_med.jpg");/* original */
	}
	section#funding-intro {
		background-image: url("../images/02-funding-and-investment-AdobeStock_947814396_med.jpg");/* original */
	}
	section#benefits-intro {
		background-image: url("../images/03-your-benefits-AdobeStock_1109367472_med.jpg");/* original */
	}
	section#who-intro {
		background-image: url("../images/04-whos-who-AdobeStock_745042824_med.jpg");/* original */
	}
	section#trustees-intro {
		background-image: url("../images/05-trustess-bulletin-board-AdobeStock_963439942_med.jpg");/* original */
	}
	section#legal-intro {
		background-image: url("../images/06-legal-documents-AdobeStock_974724492_med.jpg");/* original */
	}
	section#contact-intro {
		background-image: url("../images/07-contact-us-AdobeStock_1003065092_med.jpg");/* original */
	}

}

@media screen and (max-width: 749px) {

	section#home-intro {
		background-image: url("../images/01-homepage-AdobeStock_319391670_crop.jpg");/* original */
	}
	section#funding-intro {
		background-image: url("../images/02-funding-and-investment-AdobeStock_947814396_crop.jpg");/* original */
	}
	section#benefits-intro {
		background-image: url("../images/03-your-benefits-AdobeStock_1109367472_crop.jpg");/* original */
	}
	section#who-intro {
		background-image: url("../images/04-whos-who-AdobeStock_745042824_crop.jpg");/* original */
	}
	section#trustees-intro {
		background-image: url("../images/05-trustess-bulletin-board-AdobeStock_963439942_crop.jpg");/* original */
	}
	section#legal-intro {
		background-image: url("../images/06-legal-documents-AdobeStock_974724492_crop.jpg");/* original */
	}
	section#contact-intro {
		background-image: url("../images/07-contact-us-AdobeStock_1003065092_crop.jpg");/* original */
	}

}
	
	section#home-intro .container,
	section#funding-intro .container,
	section#benefits-intro .container,
	section#who-intro .container,
	section#trustees-intro .container,
	section#legal-intro .container,
	section#contact-intro .container {
		margin: 0 auto;
		padding: 0 40px 120px;
		display: flex;
		flex-flow: column wrap;
		justify-content: flex-end;
		width: 100%; 
		max-width: 1440px !important;
		height: 90vh;
	}

		section#home-intro .container h1,
		section#funding-intro .container h1,
		section#benefits-intro .container h1,
		section#who-intro .container h1,
		section#trustees-intro .container h1,
		section#legal-intro .container h1,
		section#contact-intro .container h1 {
			margin: 0;
			padding: 0;
			font-family: "Roboto-Bold", serif;
			font-weight: 700;
			font-style: normal;
			font-size: clamp(2.5rem, 4vw, 4rem);
			line-height: 1.1;
			color: #ffffff;
			max-width: clamp(350px, 50%, 60%);
		}
		section#home-intro .container h3,
		section#funding-intro .container h3,
		section#benefits-intro .container h3,
		section#who-intro .container h3,
		section#trustees-intro .container h3,
		section#legal-intro .container h3,
		section#contact-intro .container h3 {
			margin: 0;
			padding: 0;
			font-family: "Roboto-Regular", serif;
			font-weight: 400;
			font-style: normal;
			font-size: clamp(1.3rem, 2.5vw, 2.5rem);
			line-height: 1.5;
			color: #ffffff;
		}

	section .container {
		margin: 0 auto;
		padding: 40px 40px 0;
		display: flex;
		flex-flow: column wrap;
		justify-content: flex-end;
		width: 100%; 
		max-width: 1440px !important;
		height: 100%;
	}
		section .container h3 {
			margin: 0;
			padding: 0;
			font-family: "Roboto-Regular", serif;
			font-weight: 400;
			font-style: normal;
			font-size: clamp(1.2rem, 1.75vw, 2rem);
			line-height: 1.5;
			max-width: 1100px;
		}

@media screen and (max-width: 999px) {

	section .container {
		/*padding: 0 30px;*/
		width: 100% !important;
		max-width: 999px !important;
	}

}

.full-width.list-header {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #BFD2D9;
	width: 100%;
}
	.full-width.list-header h4, .full-width.list-header h4 strong {
		font-weight: 500;
	}

.full-width.list-header.noRule {
	padding-bottom: 20px;
	border-bottom: none;
}
/*** start 2025 grid update ***/

.grid-container-title {
    margin: 20px 0;
    padding: 0;
	width: 100%;
}
	.grid-container-title.addedSpace {
		margin-top: 40px;
	}

.grid-container {
  margin: 0 auto;
  padding: 0;
  width: 100%;
  max-width: 1400px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto;
  grid-auto-flow: row;
  /*justify-content: center;*/
  gap: 30px;
}	

.grid-item {
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-rows: auto 1fr 2fr;
    gap: 30px;
    row-gap: 0;
}
	.grid-item.no-header,
	.grid-item.no-description {
		grid-template-rows: auto 2fr;
	}

.grid-item-header {
	margin: 0;
	padding: 0;
	display: flex;
	align-items: flex-start;
	height: fit-content;
}
.grid-item-description {
	margin: 0;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #BFD2D9;
	display: flex;
	align-items: flex-start;
}
.grid-item-list {
	margin: 0;
	padding: 20px 0 0;
	background: #fff;
	display: flex;
	align-items: flex-start;
}
	.grid-item p {
		margin: 0 0 1rem 0;
		padding: 0;
		font-size: 1rem;
	}
		.grid-item-list a {
			margin: 0;
			padding: 0;
			/*color: #2c2c2c;*/
			color: var(--mid-blue);
			text-decoration: none;
			font-size: 1rem;
			line-height: 1.6;
			font-weight: 500;
		}
			.grid-item-list a:hover {
				color: var(--mid-blue);
				text-underline-offset: 0.3em;
				text-decoration: underline;
			}


/*** end 2025 grid update ***/



.grid {
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 40px 40px;
}

.grid.previous {
	gap: 0px 40px;
}

.grid.whos-who {
	grid-template-columns: 1fr 1fr;
	gap: 20px 40px;
}

.grid-divider {
	margin-bottom: 10px;
	padding-bottom: 10px;
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #BFD2D9;
}

@media screen and (max-width: 999px) {

	.grid-container,
	.grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}
		.grid.previous {
			align-items: flex-end;
			gap: 0;
		}
		.grid.whos-who {
			grid-template-columns: 1fr;
			gap: 0;
		}
	
	.grid-item-list.empty { margin: 0 !important; padding: 0; display: none !important; }

}

	.grid div.grid-item {
		display: flex;
		flex-flow: column nowrap;
		justify-content: center;
		align-items: center;
		
		background: #efefef;
		position: relative;
		overflow: hidden !important;
	}
	
	.grid-item a, .grid-item a:hover {
		text-decoration: none !important;
	}
	
	.grid-item .thumb { 
		display: flex;
		flex-flow: column wrap;
		position: relative;
		z-index: 5;
	}
		.grid-item a .thumb img {
			transform: scale(1);
			transition: all 0.5s ease;
		}
		.grid-item a:hover .thumb img {
			transform: scale(1.05);
			transition: all 0.5s ease;
		}
	.grid div.grid-item a .label { 
		margin: 0;
		padding: 15px 20px;
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		width: 100%;
		background: var(--light-grey);
		color: var(--dark-grey);
		transition: all 0.5s ease;
		z-index: 6;
	}
		.grid div.grid-item a:hover .label {
			background: var(--mid-blue);
			color: var(--white);
			transition: all 0.5s ease;
		}

	.grid div.grid-item-list {
		margin: 0 0 20px 0;
		padding: 0;
		display: flex;
		flex-flow: column nowrap;
		justify-content: stretch;
		align-items: stretch;
		
		background: none;
	}
	.grid.aligned div.grid-item-list {
		display: grid;
		grid: 1fr 1fr / auto-flow;
	}

	@media screen and (max-width: 999px) {
	
		.grid div.grid-item-list,
		.grid.aligned div.grid-item-list {
			margin: 0 0 20px 0;
			padding: 0;
			display: flex;
			flex-flow: column nowrap;
			justify-content: stretch;
			align-items: stretch;
			
			background: none;
		}
	
	}

	.grid.previous div.grid-item-list,
	.grid.whos-who div.grid-item-list {
		margin: 0;
	}
	
		.grid div.grid-item-list .list-header {
			margin: 0 0 10px;
			padding: 0 0 10px;
			border-bottom: 1px solid #BFD2D9;
			width: 100%;

		}
		.grid div.grid-item-list .list-header.empty {
			padding-bottom: 0;
		}
			.grid div.grid-item-list .list-header h4,
			.grid div.grid-item-list .list-header.noRule h4 {
				margin: 0;
				padding: 0;
				font-weight: 600;
			}
			.grid.previous div.grid-item-list h4 {
				margin-top: 20px;
			}
			.grid.previous div.grid-item-list:first-of-type h4 {
				margin-top: 10px;
			}
			
			.grid div.grid-item-list .list-header p {
				margin: 0;
				padding: 0;
				font-size: 1rem;
			}
			
		.grid div.grid-item-list .list {
			margin: 0;
			padding: 0;

		}
		
		.grid div.grid-item-list a,
		.container a {
			margin: 0;
			padding: 0;
			/*color: #2c2c2c;*/
			color: var(--mid-blue);
			text-decoration: none;
			font-size: inherit;
			line-height: 1.6;
			font-weight: 500;
		}
			.grid div.grid-item-list a:hover,
			.container a:hover {
				color: var(--mid-blue);
				text-underline-offset: 0.3em;
				text-decoration: underline;
			}
			
		.container .grid-item-list p {
			margin: 0;
		}
			
		.container p {
			margin: 0 0 1rem 0;
			
			max-width: 1100px;
		}


footer .container {
	margin: 0 auto;
	padding: 40px 40px 20px;
	display: flex;
	flex-flow: column wrap;
	justify-content: flex-end;
	width: 100%; 
	max-width: 1440px !important;
}

	footer .container .columns {
		margin: 40px 0 0 0;
		padding: 20px 0 0 0;
		border-top: 1px solid #BFD2D9;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0;
		justify-content: center;
		align-items: center;
	}
	
	footer .container .columns .column.logo {
		justify-content: flex-end;
		order: 2;
	}
		footer .container .columns .column.logo img {
			height: 48px;
		}
	footer .container .columns .column.copyright {
		justify-content: flex-start;
		order: 1;
	}
	
	footer .container .columns .column p {
		font-size: 1rem;
	}


	@media screen and (max-width: 999px) {
	
		footer .container .columns {
			grid-template-columns: 1fr;
		}
			footer .container .columns .column.logo {
				padding: 0 0 20px 0;
				justify-content: flex-start;
				order: 1;
			}
			footer .container .columns .column.copyright {
				order: 2;
			}
		
	}



/*** modal ***/

::backdrop {
  /*background-image: linear-gradient(45deg, magenta, rebeccapurple, dodgerblue, green);*/
  background: var(--dark-grey);
  opacity: 0.95;
}
dialog {
	padding: 40px;
	/*background: #e23e0a;*/
	background-image: linear-gradient(180deg, #ff7a0c, #e23e0a);
	color: var(--white);
	border: none;
	border-radius: 3px;
	width: 80%;
	max-width: 800px;
}
dialog h3 {
	padding-bottom: 15px;
}	
dialog p {
	padding-bottom: 15px;
}
dialog button {
	margin: 0;
	padding: 10px 20px;
	background: var(--white);
	color: #e23e0a;
	border: none;
	border-radius: 3px;
	
	display: flex;
	justify-self: flex-end;
	
	cursor: pointer;
}


dialog[open] {
  animation: fadeIn 0.3s ease-in-out forwards;
}

@keyframes fadeIn {
  0%{
    opacity:0;
  }
  100%{
    opacity:1;
    /*background-color: green;*/
  }
}


/*** show and hide previous years pension increases ***/
.show-hidden-content > button {
	border: none;
	background: none;
}

.show-hidden-content:hover,
.show-hidden-content:hover > button  {
	cursor: pointer;
	color: var(--mid-blue);
}

#previous-pension-increases,
#previous-annual-report,
#previous-deed-amendment,
#previous-deed-appointment-removal {
	height: auto;
	transition: height 0.25s ease-in;
}
	#previous-pension-increases .grid-divider,
	#previous-annual-report .grid-divider,
	#previous-deed-amendment .grid-divider,
	#previous-deed-appointment-removal .grid-divider {
		margin-bottom: 10px;
		padding-bottom: 10px;
		width: 100%;
		height: 1px;
		border-bottom: 1px solid #BFD2D9;
	}
	#previous-pension-increases h4,
	#previous-annual-report h4,
	#previous-deed-amendment h4,
	#previous-deed-appointment-removal h4 {
		margin-top: 30px;
		font-weight: 500;
	}
		#previous-pension-increases h4:first-of-type,
		#previous-annual-report h4:first-of-type,
		#previous-deed-amendment h4:first-of-type,
		#previous-deed-appointment-removal h4:first-of-type {
			margin-top: 15px;
		}
	
@media screen and (max-width: 999px) {

	#previous-pension-increases .grid-divider,
	#previous-annual-report .grid-divider,
	#previous-deed-amendment .grid-divider,
	#previous-deed-appointment-removal .grid-divider {
		margin-bottom: 0;padding-bottom: 0;
		border-bottom: none;
	}

}

.expanded .grid.previous {
	align-items: flex-end;
}


.mouse-scroll {
    display: block;
    margin: 0 auto 0.125rem;
    width: 27px;
}
.mouse-scroll > .mouse {
    height: 42px;
    width: 24px;
    border-radius: 14px;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    transform: none;
    border: 2px solid #ffffff;
    top: 170px;
    -webkit-animation: mouse-scroll 1.2s linear infinite;
    -moz-animation: mouse-scroll 1.2s linear infinite;
}
.mouse-scroll > .mouse > .wheel {
    display: block;
    margin: 5px auto;
    background-color: #ffffff;
    position: relative;
    height: 4px;
    width: 4px;
    border: 2px solid #ffffff;
    border-radius: 8px;
    -webkit-animation: mouse-wheel 1.2s linear infinite;
    -moz-animation: mouse-wheel 1.2s linear infinite;
}
.mouse-text {
    display: block;
    margin: 1vh auto 0 auto;
    text-align: center;
    color: #ffffff;
    font-family: Roberto, sans-serif;
    font-weight: bold;
    font-size: 1em;
    letter-spacing: 0.05em;
    -webkit-animation: mouse-fade 1.2s linear infinite;
    -moz-animation: mouse-fade 1.2s linear infinite;
}

.scroll-down {
    position: absolute;
    bottom: 30px;
    right: 0;
    text-align: center;
    height: 100px;
    z-index: 10;
    text-decoration: none;
    width: 50px;

	background-size: 0% 1px;
	text-decoration: none;
	
	display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    justify-self: center;
    align-self: center;
    width: 100%;
}
.scroll-down:hover {
	background-size: 0% 1px;
	text-decoration: none;
}

@-webkit-keyframes mouse-scroll {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
	25% {
		opacity: 0.5;
		-webkit-transform: translateY(0.5em);
		-ms-transform: translateY(0.5em);
		transform: translateY(0.5em);
	}
	50% {
		opacity: 0;
		-webkit-transform: translateY(1em);
		-ms-transform: translateY(1em);
		transform: translateY(1em);
	}
	75% {
		opacity: 0;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}
@-moz-keyframes mouse-scroll {
	0% {
		top: 1px;
	}
	25% {
		top: 2px;
	}
	50% {
		top: 3px;
	}
	75% {
		top: 2px;
	}
	100% {
		top: 1px;
	}
}

@-webkit-keyframes mouse-fade {
	0% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
	33% {
		opacity: 0.5;
		-webkit-transform: translateY(0.5em);
		-ms-transform: translateY(0.5em);
		transform: translateY(0.5em);
	}
	50% {
		opacity: 0;
		-webkit-transform: translateY(1em);
		-ms-transform: translateY(1em);
		transform: translateY(1em);
	}
	100% {
		opacity: 0;
		-webkit-transform: translateY(1em);
		-ms-transform: translateY(1em);
		transform: translateY(1em);
	}
	75% {
		opacity: 0;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}

#consent-banner {
    width: 100%;
    background: rgba(2, 33, 82, 0.9);
    color: #fff;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 3147483647;
}