/***********************************************************************************************************************************************
  /$$$$$$  /$$$$$$$$ /$$$$$$  /$$   /$$ /$$$$$$$   /$$$$$$  /$$$$$$$  /$$$$$$$        /$$$$$$$$ /$$$$$$$  /$$$$$$ /$$$$$$$$ /$$$$$$  /$$$$$$$
 /$$__  $$|__  $$__//$$__  $$| $$$ | $$| $$__  $$ /$$__  $$| $$__  $$| $$__  $$      | $$_____/| $$__  $$|_  $$_/|__  $$__//$$__  $$| $$__  $$
| $$  \__/   | $$  | $$  \ $$| $$$$| $$| $$  \ $$| $$  \ $$| $$  \ $$| $$  \ $$      | $$      | $$  \ $$  | $$     | $$  | $$  \ $$| $$  \ $$
|  $$$$$$    | $$  | $$$$$$$$| $$ $$ $$| $$  | $$| $$$$$$$$| $$$$$$$/| $$  | $$      | $$$$$   | $$  | $$  | $$     | $$  | $$  | $$| $$$$$$$/
 \____  $$   | $$  | $$__  $$| $$  $$$$| $$  | $$| $$__  $$| $$__  $$| $$  | $$      | $$__/   | $$  | $$  | $$     | $$  | $$  | $$| $$__  $$
 /$$  \ $$   | $$  | $$  | $$| $$\  $$$| $$  | $$| $$  | $$| $$  \ $$| $$  | $$      | $$      | $$  | $$  | $$     | $$  | $$  | $$| $$  \ $$
|  $$$$$$/   | $$  | $$  | $$| $$ \  $$| $$$$$$$/| $$  | $$| $$  | $$| $$$$$$$/      | $$$$$$$$| $$$$$$$/ /$$$$$$   | $$  |  $$$$$$/| $$  | $$
 \______/    |__/  |__/  |__/|__/  \__/|_______/ |__/  |__/|__/  |__/|_______/       |________/|_______/ |______/   |__/   \______/ |__/  |__/
***********************************************************************************************************************************************/

/* Banner Text */
.banner-container .banner-caption-container
{
	position: absolute;
	z-index: 15;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: flex-start;
	text-align: center;
	max-width: 1200px;
	height: 100%;
}

/* Dark Radial-Gradient behind the caption container to make it easier to read text. */
.banner-container .banner-caption-container::before
{
	content: '';
	position: absolute;
	z-index: 10;
	display: block;
	width: 100%;
	height: 100%;
	background: radial-gradient(rgba(0,0,0,0.2) 0%, transparent 50%);
}

.banner-container .banner-caption-container .banner-caption
{
	display:  inline-block;
	position: relative;
	z-index: 15;
    font-family: 'SourceSans3_bold', sans-serif;
	font-size: calc(45px + (52 - 32) * ((100vw - 300px) / (1600 - 300)));
	font-weight: normal;
	color: #976B45;
	text-shadow: 0px 0px 6px rgba(0,0,0,0.6);
	margin: 0 0 5px 0;
	line-height: 1;
	opacity: 0;
	transition: all 200ms;
	animation: fadein ease-in 1;
	animation-fill-mode: forwards;
	animation-duration: 1s;
	animation-delay: 300ms;
}

.banner-container .banner-caption-container .banner-description
{
	display:  inline-block;
	position: relative;
	z-index: 15;
	font-family: arial;
	font-size: calc(26px + (42 - 26) * ((100vw - 300px) / (1600 - 300)));
	font-weight: normal;
	color: #ffffff;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
	margin: 0;
	line-height: 1;
	opacity: 0;
	transition: all 200ms;
	animation: fadein ease-in 1;
	animation-fill-mode: forwards;
	animation-duration: 1s;
	animation-delay: 600ms;
}

.banner-container .banner-caption-container .banner-link a:link,
.banner-container .banner-caption-container .banner-link a:visited
{
	display: inline-block;
	position: relative;
	z-index: 15;
	font-family: arial;
	font-size: 12pt;
	font-weight: normal;
	color: #ffffff;
	margin: 10px 0 0 0;
	opacity: 0;
	transition: all 200ms;
	background-color: #e56a1b;
	text-decoration: none;
	transition: all 200ms;
	padding: 5px 15px;
	animation: fadein ease-in 1;
	animation-fill-mode: forwards;
	animation-duration: 1s;
	animation-delay: 900ms;
}

.banner-container .banner-caption-container .banner-link a:hover
{
	background-color: #E98343;
}

.banner-container .banner-caption-container .banner-link a:active
{
	transform: 	translate(0,2px)
 				scale(0.99, 0.99);
    box-shadow: inset 0 0 5px rgba(0,0,0,0.5);
}

/* Banner image */
.banner-container .banner-media-container > div:first-of-type
{
	width: 100%;
	height: 100%;
	margin: 0 auto;
	transition: all 200ms;
}

/* Banner Pagination */
.banner-container .banner-controls.banner-pagination
{
	position: absolute;
	z-index: 10;
	bottom: 10px;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: center;
}

.banner-container .banner-controls.banner-pagination .swiper-pagination-bullet
{
	width: 12px;
	height: 12px;
	background: #ffffff;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.8));
	opacity: 0.8;
	margin-right: 18px;
	transition: all 200ms;
}

.banner-container .banner-controls.banner-pagination .swiper-pagination-bullet:hover
{
	opacity: 1;
}

.banner-container .banner-controls.banner-pagination .swiper-pagination-bullet:last-of-type
{
	margin-right: 0;
}

.banner-container .banner-controls.banner-pagination .swiper-pagination-bullet-active
{
	background: #f79b2e;
	opacity: 1;
}

.banner-container .banner-controls.banner-pagination .swiper-pagination-bullet-active:hover
{
	background: #F9B971;
	opacity: 1;
}

/* Prevous and Next Buttons */
.banner-container .banner-controls.banner-button
{
	position: absolute;
	z-index: 10;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
	display: block;
	width: 60px;
	height: 60px;
}

.banner-container .banner-controls.banner-button.previous
{
	left: 15px;
}

.banner-container .banner-controls.banner-button.next
{
	right: 15px;
}

.banner-container .banner-controls.banner-button::before
{
	position: relative;
	width: 60px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 40px;
	background-color: #ffffff;
	opacity: 0;
	border: 2px solid #E5E5E5;
	border-radius: 50%;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.5));
	transition: all 200ms;
}

.banner-container .banner-controls.swiper-button-disabled
{
	display: none;
}

.banner-container:hover .banner-controls.banner-button::before
{
	opacity: 0.15;
}

.banner-container .banner-controls.banner-button:hover::before
{
	opacity: 0.6;
}

.banner-container .banner-controls.banner-button:active::before
{
	opacity: 0.8;
}

.banner-container .banner-controls.banner-button.previous::before
{
	content: '\276E';
	margin-left: -5px;
}

.banner-container .banner-controls.banner-button.next::before
{
	content: '\276F';
	margin-right: -5px;
}

@media screen and (max-width:991px)
{
	.banner-container .banner-caption-container
	{
		position: absolute;
		z-index: 15;
		top: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
		display: flex;
		flex-flow: column nowrap;
		justify-content: center;
		align-items: center;
		text-align: center;
		max-width: 1200px;
		height: 100%;
	}

	.banner-container .banner-controls.banner-button.previous
	{
		left: 0;
	}

	.banner-container .banner-controls.banner-button.next
	{
		right: 0;
	}

	.banner-container .banner-controls.banner-button.previous:hover
	{
		background: linear-gradient(to right, rgba(0,0,0,0.3), transparent);
	}

	.banner-container .banner-controls.banner-button.next:hover
	{
		background: linear-gradient(to left, rgba(0,0,0,0.3), transparent);
	}

	.banner-container .banner-controls.banner-button
	{
		width: 80px;
		height: 100%;
		outline: none;
	}

	.banner-container .banner-controls.banner-button::before
	{
		position: relative;
		width: 80px;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 40px;
		background-color: transparent;
		color: #ffffff;
		opacity: 0;
		border: none;
		border-radius: 0;
		filter: drop-shadow(0 0 5px rgba(0,0,0,0.5));
	}
}