#header {}
@media (min-width: 900px) { #header { margin-bottom: 30px; } }
@media (max-width: 899.99px) { #header { margin-bottom: 25px; } }
#header > .content-wrapper {}

/*----------------------------------------------------------------------------------------------------*/

#header > .content-wrapper > .card {
	position: relative;
	overflow: hidden;
	
	box-shadow: 0 5px 15px 0 rgba(0,0,0,.3);
	
	text-align: center;
	color: #FFF;
    
    isolation: isolate;
}
#header > .content-wrapper > .card:before {
	content: '';
	display: block;
}
@media (min-width: 900px) {
	#header > .content-wrapper > .card { border-radius: 40px; }
	#header > .content-wrapper > .card:before { padding-top: 66%; }
}
@media (max-width: 899.99px) {
	#header > .content-wrapper > .card { border-radius: 30px; }
	#header > .content-wrapper > .card:before { padding-top: 150%; }
}

/*----------------------------------------------------------------------------------------------------*/

#header > .content-wrapper > .card > .background {
    position: absolute; top: 0; left: 0;
	height: 100%; width: 100%;
    
    isolation: isolate;
}
#header > .content-wrapper > .card > .background > img,
#header > .content-wrapper > .card > .background > video {
    display: block; height: 100%; width: 100%;
    object-fit: cover;
    object-position: center;
    
    pointer-events: none;
}
#header > .content-wrapper > .card > .background:after {
	content: '';
	position: absolute; top: 0; left: 0;
	height: 100%; width: 100%;
	
	background-color: #000;
	
	opacity: .3;
}

/*----------------------------------------------------------------------------------------------------*/

#header > .content-wrapper > .card > .content {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}
#header > .content-wrapper > .card > .content > .hook,
#header > .content-wrapper > .card > .content > .title {
	text-transform: uppercase;
	font-family: 'Stretch Pro';
}
#header > .content-wrapper > .card > .content > .title { max-width: 650px; }
#header > .content-wrapper > .card > .content > .controls {
	align-self: stretch;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
#header > .content-wrapper > .card > .content > .controls > a {
	font-size: 13px;
	font-weight: 700;
}
@media (min-width: 900px) {
	#header > .content-wrapper > .card > .content {
		top: 30px; left: 30px;
		height: calc(100% - 60px); width: calc(100% - 60px);
	}
	#header > .content-wrapper > .card > .content > .hook { font-size: 24px; }
	#header > .content-wrapper > .card > .content > .title { font-size: 40px; }
	#header > .content-wrapper > .card > .content > .controls > a {
		position: relative;
		display: inline-flex;
		padding: 15px 40px;

		background-color: transparent;
		border-radius: 100px;
		border: solid 1px;

		text-align: center;
		font-style: italic;

		cursor: pointer;

		transition:
			background-color .4s ease-out,
			border-color	 .4s ease-out,
			color			 .4s ease-out;

		isolation: isolate;
	}
	#header > .content-wrapper > .card > .content > .controls > a:hover {
		background-color: #FFF;
		border-color: transparent;
		color: #000;
	}
	#header > .content-wrapper > .card > .content > .controls > .back-btn {}
	#header > .content-wrapper > .card > .content > .controls > .prev-btn { padding-right: 60px; }
	#header > .content-wrapper > .card > .content > .controls > .prev-btn:after {
		content: '';
		position: absolute; top: 50%; right: 35px; transform: translateY(-50%) rotate(-90deg); z-index: 1;
		display: block; width: 15px; height: 15px;

		background-color: currentColor;

		-webkit-mask-image: url("../../images/icons/arrow.down.svg");
		mask-image: url("../../images/icons/arrow.down.svg");
		-webkit-mask-position: center;
		mask-position: center;
		-webkit-mask-size: contain;
		mask-size: contain;
		-webkit-mask-repeat: no-repeat;
		mask-repeat: no-repeat;
	}
}
@media (max-width: 899.99px) {
	#header > .content-wrapper > .card > .content {
		top: 25px; left: 25px;
		height: calc(100% - 50px); width: calc(100% - 50px);
	}
	#header > .content-wrapper > .card > .content > .hook { font-size: 18px; }
	#header > .content-wrapper > .card > .content > .title { font-size: 24px; }
	#header > .content-wrapper > .card > .content > .controls > a {
		display: inline-block;
		text-decoration: none;
	}
	#header > .content-wrapper > .card > .content > .controls > a > span {
		background-image: linear-gradient(to bottom, transparent calc(100% - 1px), currentColor calc(100% - 1px), currentColor 100%);
		background-size: 0% 100%;
		background-repeat: no-repeat;
		background-position: bottom right;
		background-origin: content-box;
		
		transition: background-size .4s ease-out;
	}
	#header > .content-wrapper > .card > .content > .controls > a:hover > span {
		background-size: 100% 100%;
		background-position: bottom left;
	}
}