/***********************************************************************************************************************************************
  /$$$$$$  /$$$$$$$$ /$$$$$$  /$$   /$$ /$$$$$$$   /$$$$$$  /$$$$$$$  /$$$$$$$        /$$$$$$$$ /$$$$$$$  /$$$$$$ /$$$$$$$$ /$$$$$$  /$$$$$$$
 /$$__  $$|__  $$__//$$__  $$| $$$ | $$| $$__  $$ /$$__  $$| $$__  $$| $$__  $$      | $$_____/| $$__  $$|_  $$_/|__  $$__//$$__  $$| $$__  $$
| $$  \__/   | $$  | $$  \ $$| $$$$| $$| $$  \ $$| $$  \ $$| $$  \ $$| $$  \ $$      | $$      | $$  \ $$  | $$     | $$  | $$  \ $$| $$  \ $$
|  $$$$$$    | $$  | $$$$$$$$| $$ $$ $$| $$  | $$| $$$$$$$$| $$$$$$$/| $$  | $$      | $$$$$   | $$  | $$  | $$     | $$  | $$  | $$| $$$$$$$/
 \____  $$   | $$  | $$__  $$| $$  $$$$| $$  | $$| $$__  $$| $$__  $$| $$  | $$      | $$__/   | $$  | $$  | $$     | $$  | $$  | $$| $$__  $$
 /$$  \ $$   | $$  | $$  | $$| $$\  $$$| $$  | $$| $$  | $$| $$  \ $$| $$  | $$      | $$      | $$  | $$  | $$     | $$  | $$  | $$| $$  \ $$
|  $$$$$$/   | $$  | $$  | $$| $$ \  $$| $$$$$$$/| $$  | $$| $$  | $$| $$$$$$$/      | $$$$$$$$| $$$$$$$/ /$$$$$$   | $$  |  $$$$$$/| $$  | $$
 \______/    |__/  |__/  |__/|__/  \__/|_______/ |__/  |__/|__/  |__/|_______/       |________/|_______/ |______/   |__/   \______/ |__/  |__/
***********************************************************************************************************************************************/

/* 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: flex-end;
	align-items: center;
	text-align: center;
	max-width: 1200px;
	height: 100%;
	padding-bottom: 55px;
}

.banner-container .banner-caption-container .banner-caption
{
	display:  inline-block;
	position: relative;
	z-index: 15;
	font-family: luckiest_guy;
	font-size: calc(36px + (61 - 36) * ((100vw - 300px) / (2000 - 300)));
	font-weight: normal;
	color: #d12421;

	/* Using this method for text stroke instead of the 'text-stroke' propery as this also works in IE 11 */
	text-shadow:	-4px -4px 0 #ffffff,
    				4px -4px 0 #ffffff,
    				-4px 4px 0 #ffffff,
    				4px 4px 0 #ffffff,
    				-1px -1px 0 #000,
    				1px -1px 0 #000,
    				-1px 1px 0 #000,
    				1px 1px 7px #000;
    filter: progid:DXImageTransform.Microsoft.Chroma(color='white') progid:DXImageTransform.Microsoft.Alpha(opacity=100) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=4,offY=4) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=-4,offY=4) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=4,offY=-4) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=-4,offY=-4);

	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;
}

@media screen and (max-width:480px)
{
	.banner-container .banner-caption-container .banner-caption
	{
		text-shadow:	-1px -1px 0 #ffffff,
    					1px -1px 0 #ffffff,
    					-1px 1px 0 #ffffff,
    					1px 1px 0 #ffffff,
    					-1px -1px 0 #000,
    					1px -1px 0 #000,
    					-1px 1px 0 #000,
    					1px 1px 7px #000;
		filter: progid:DXImageTransform.Microsoft.Chroma(color='white') progid:DXImageTransform.Microsoft.Alpha(opacity=100) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=1,offY=1) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=-1,offY=1) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=1,offY=-1) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=-1,offY=-1);
	}
}

@media screen and (min-width:2000px)
{
	.banner-container .banner-caption-container .banner-caption
	{
		font-size: 61px;
	}
}

.banner-container .banner-caption-container .banner-description
{
	display:  inline-block;
	position: relative;
	z-index: 15;
	font-family: patua_one;
	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: lato_medium;
	font-size: 12pt;
	font-weight: normal;
	color: #ffffff;
	margin: 10px 0 0 0;
	opacity: 0;
	transition: all 200ms;
	background-color: #308dcd;
	text-decoration: none;
	transition: all 200ms;
	padding: 5px 20px;
	border-radius: 20px;
	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: #66ACDB;
}

.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;
}


@media screen and (max-width:991px)
{
	.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));
	}
}