/* -------------------------------- 

Primary style

-------------------------------- */
.gp-hero *, .gp-hero *::after, .gp-hero *::before {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}


/* -------------------------------- 

Slider

-------------------------------- */
.gp-hero {
	position:relative;
	background-color:#404965;
	overflow:hidden;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}

ul.gp-hero-slider {
	position:relative;
	margin:0; padding:0;
}
.gp-hero-slider li {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	list-style-type:none;
	list-style-image:none;
	-webkit-transform:translateX(100%);
	-moz-transform:translateX(100%);
	-ms-transform:translateX(100%);
	-o-transform:translateX(100%);
	transform:translateX(100%);
}
.gp-hero-slider li.selected {
	/* this is the visible slide */
	position:relative;
	-webkit-transform:translateX(0);
	-moz-transform:translateX(0);
	-ms-transform:translateX(0);
	-o-transform:translateX(0);
	transform:translateX(0);
}
.gp-hero-slider li.move-left {
	/* slide hidden on the left */
	-webkit-transform:translateX(-100%);
	-moz-transform:translateX(-100%);
	-ms-transform:translateX(-100%);
	-o-transform:translateX(-100%);
	transform:translateX(-100%);
}
.gp-hero-slider li.is-moving, .gp-hero-slider li.selected {
	/* the is-moving class is assigned to the slide which is moving outside the viewport */
	-webkit-transition:-webkit-transform 0.5s;
	-moz-transition:-moz-transform 0.5s;
	transition:transform 0.5s;
}


/* -------------------------------- 

Single slide style

-------------------------------- */
.gp-hero-slider li {
	cursor:pointer;
	background-position:center center;
	background-size:cover;
	background-repeat:no-repeat;
}
.gp-hero-slider .gp-full-width {
	background-color: transparent !important;
	position:absolute;
	width:100%;
	height:100%;
	z-index:1;
	left:0;
	top:0;
	text-align:center;
	/* Force Hardware Acceleration in WebKit */
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	-webkit-transform:translateZ(0);
	-moz-transform:translateZ(0);
	-ms-transform:translateZ(0);
	-o-transform:translateZ(0);
	transform:translateZ(0);
}
.gp-hero-slider .gp-output {
	/* css botton in js */
	width:100%;
	padding:10px 15px 15px 15px;
	background:rgba(0,0,0,0.7);
	box-sizing:border-box;
    position: absolute;
	color:#fff;
}
.gp-hero-slider h2 {
	display:block;
	font-size:1.5rem;
	line-height:1.8rem;
	margin:0;
	padding:0;
	font-weight:bold;
}
.gp-hero-slider p {
	margin:0;
	padding:5px 0 0 0;
	font-size:1.5rem;
	line-height:1.8rem;
 }

@media only screen and (max-width:767px) and (min-width:481px) {
	.gp-hero-slider .gp-output	{height:90px !important;}
}
@media only screen and (max-width:480px) {
	.gp-hero-slider .gp-output	{height:105px !important;}
}


/* -------------------------------- 

Slider navigation

-------------------------------- */
.gp-slider-nav {
	/* height comes from js */
	position:absolute;
	width:100%;
	bottom:0;
	z-index:2;
	text-align:center;
	background-color:rgba(0, 1, 1, 0.5);
	direction:ltr;
}
.gp-slider-nav nav, .gp-slider-nav ul, .gp-slider-nav li {
	background-color: transparent !important;
	height:100%;
}
.gp-slider-nav nav {
	/* height comes from js */
	display:inline-block;
	position:relative;
	overflow:hidden;
	margin:-10px auto 0 auto;
	/*outline:red 1px solid;*/
}
.gp-slider-nav nav ul {
	display:inline-block;
	position:absolute;
	margin:0; padding:10px 0 0 0;
	-webkit-transition:all 0.2s ease-in-out;
    -moz-transition:all 0.2s ease-in-out;
    -o-transition:all 0.2s ease-in-out;
    -ms-transition:all 0.2s ease-in-out;
    transition:all 0.2s ease-in-out;
}
.gp-slider-nav nav .gp-slider-nav ul li {
	list-style-type:none;
	list-style-image:none;
}
.gp-slider-nav .gp-marker {
	/* width comes from js */
	/* height comes from js */
	position:absolute;
	bottom:0;
	left:0;
	border:#ff8a00 6px solid;
	/*color:#d44457;
	box-shadow:inset 0 2px 0 currentColor;*/
	-webkit-transition:-webkit-transform 0.5s, box-shadow 0.2s;
	-moz-transition:-moz-transform 0.5s, box-shadow 0.2s;
	transition:transform 0.5s, box-shadow 0.2s;
}
.gp-slider-nav .gp-marker:after {
	left:50%;
	bottom:-3px;
	margin-bottom:100%;
	border:solid transparent;
	content:" ";
	height:0;
	width:0;
	position:absolute;
	pointer-events:none;
	border-bottom-color:#ff8a00;
	border-width:10px;
	margin-left:-10px;
}
.gp-slider-nav ul::after {
	clear:both;
	content:"";
	display:table;
}
.gp-slider-nav li {
	/* width comes from js */
	display:inline-block;
	float:left;
}
.gp-slider-nav li.selected a {
	color:#2c343b;
	border:0 !important;
}
.gp-slider-nav nav a {
	/* height comes from js */
	display:block;
	position:relative;
	margin:6px;
	/*box-shadow:0 0 6px #fff;*/
	border:#666 1px solid;
	-webkit-transition:background-color 0.2s;
	-moz-transition:background-color 0.2s;
	transition:background-color 0.2s;
}
.gp-slider-nav nav a:hover {
	border:#ff8a00 1px solid;
}


/** nav arrows **/
a.gp-nav-arrow			{display:inline-block; vertical-align:top; z-index:99;}
a.gp-nav-arrow-prev		{margin:30px 15px 0 0;}
a.gp-nav-arrow-next		{margin:30px 0 0 15px;}
a.gp-nav-arrow-hidden	{height:0; opacity:0; overflow:hidden;}
.gp-slider-nav .fa							{width:20px; height:20px; font-size:15px; font-weight:bold; background:rgba(0,0,0,0.8); color:#fff; margin:auto; line-height:18px; border-radius:50%;}
.gp-slider-nav .fa-angle-right				{/*padding:6px 6px 3px 9px;*/}
.gp-slider-nav .fa-angle-left				{/*padding:6px 9px 3px 6px;*/}


/** play / stop **/
DIV.gp-play-stop		{/*display:none !important;*/ /* remove this line for accessability */}
@media screen and (min-width:991px) { /* play / stop for accessability over 990 */
	DIV.gp-play-stop			{display:table; padding:4px; background-color:rgba(255,255,255,0.6); border-radius:8px; position:absolute; left:10px; top:10px; z-index:999;}
	A#gp-play-stop				{width:24px; height:24px; display:table; position:relative; border-radius:6px;}
	A#gp-play-stop.playing		{background:rgba(1,1,1,0.7) url('../PauseTicker.png') no-repeat center center;}
	A#gp-play-stop.resting		{background:rgba(1,1,1,0.7) url('../StartTicker.png') no-repeat center center;}
}

@media only screen and (max-width:480px) {
	.gp-slider-nav .gp-marker		{width:90px !important; height:81px !important;} /* !!!  height  !!! */
	.gp-slider-nav nav				{height:91px !important;} /* !!!  height  !!! */
	.gp-slider-nav					{display:flex; height:81px !important;} /* !!!  height  !!! */
	.gp-slider-nav li				{width:90px !important;}
	.gp-slider-nav nav ul li a		{height:71px !important; margin:5px; font-size:1.3rem;} /* !!!  height  !!! */
	/*.gp-slider-nav nav a::before	{top:8px;}*/ /** if put css icons in A **/
	a.gp-nav-arrow-prev		{margin:26px 5px 0 0;}
	a.gp-nav-arrow-next		{margin:26px 0 0 5px;}
}


/* -------------------------------- 

Single slide animation

-------------------------------- */
@media only screen and (min-width:768px) {
	.gp-hero-slider .gp-half-width {
		opacity:0;
		-webkit-transform:translateX(40px);
		-moz-transform:translateX(40px);
		-ms-transform:translateX(40px);
		-o-transform:translateX(40px);
		transform:translateX(40px);
	}
	.gp-hero-slider .move-left .gp-half-width {
		-webkit-transform:translateX(-40px);
		-moz-transform:translateX(-40px);
		-ms-transform:translateX(-40px);
		-o-transform:translateX(-40px);
		transform:translateX(-40px);
	}
	.gp-hero-slider .selected .gp-half-width {
		/* this is the visible slide */
		opacity:1;
		-webkit-transform:translateX(0);
		-moz-transform:translateX(0);
		-ms-transform:translateX(0);
		-o-transform:translateX(0);
		transform:translateX(0);
	}
	.gp-hero-slider .is-moving .gp-half-width {
		/* this is the slide moving outside the viewport 
		wait for the end of the transition on the <li> parent before set opacity to 0 and translate to 40px/-40px */
		-webkit-transition:opacity 0s 0.5s, -webkit-transform 0s 0.5s;
		-moz-transition:opacity 0s 0.5s, -moz-transform 0s 0.5s;
		transition:opacity 0s 0.5s, transform 0s 0.5s;
	}
	.gp-hero-slider li.selected.from-left .gp-half-width:nth-of-type(2),
	.gp-hero-slider li.selected.from-right .gp-half-width:first-of-type {
		/* this is the selected slide - different animation if it's entering from left or right */
		-webkit-transition:opacity 0.4s 0.2s, -webkit-transform 0.5s 0.2s;
		-moz-transition:opacity 0.4s 0.2s, -moz-transform 0.5s 0.2s;
		transition:opacity 0.4s 0.2s, transform 0.5s 0.2s;
	}
	.gp-hero-slider li.selected.from-left .gp-half-width:first-of-type,
	.gp-hero-slider li.selected.from-right .gp-half-width:nth-of-type(2) {
		/* this is the selected slide - different animation if it's entering from left or right */
		-webkit-transition:opacity 0.4s 0.4s, -webkit-transform 0.5s 0.4s;
		-moz-transition:opacity 0.4s 0.4s, -moz-transform 0.5s 0.4s;
		transition:opacity 0.4s 0.4s, transform 0.5s 0.4s;
	}
	.gp-hero-slider .gp-full-width h2,
	.gp-hero-slider .gp-full-width p,
	.gp-hero-slider .gp-full-width .gp-btn {
		opacity:0;
		-webkit-transform:translateX(100px);
		-moz-transform:translateX(100px);
		-ms-transform:translateX(100px);
		-o-transform:translateX(100px);
		transform:translateX(100px);
	}
	.gp-hero-slider .move-left .gp-full-width h2,
	.gp-hero-slider .move-left .gp-full-width p,
	.gp-hero-slider .move-left .gp-full-width .gp-btn {
		opacity:0;
		-webkit-transform:translateX(-100px);
		-moz-transform:translateX(-100px);
		-ms-transform:translateX(-100px);
		-o-transform:translateX(-100px);
		transform:translateX(-100px);
	}
	.gp-hero-slider .selected .gp-full-width h2,
	.gp-hero-slider .selected .gp-full-width p,
	.gp-hero-slider .selected .gp-full-width .gp-btn {
		/* this is the visible slide */
		opacity:1;
		-webkit-transform:translateX(0);
		-moz-transform:translateX(0);
		-ms-transform:translateX(0);
		-o-transform:translateX(0);
		transform:translateX(0);
	}
	.gp-hero-slider li.is-moving .gp-full-width h2,
	.gp-hero-slider li.is-moving .gp-full-width p,
	.gp-hero-slider li.is-moving .gp-full-width .gp-btn {
		/* this is the slide moving outside the viewport 
		wait for the end of the transition on the li parent before set opacity to 0 and translate to 100px/-100px */
		-webkit-transition:opacity 0s 0.5s, -webkit-transform 0s 0.5s;
		-moz-transition:opacity 0s 0.5s, -moz-transform 0s 0.5s;
		transition:opacity 0s 0.5s, transform 0s 0.5s;
	}
	.gp-hero-slider li.selected h2 {
		-webkit-transition:opacity 0.4s 0.2s, -webkit-transform 0.5s 0.2s;
		-moz-transition:opacity 0.4s 0.2s, -moz-transform 0.5s 0.2s;
		transition:opacity 0.4s 0.2s, transform 0.5s 0.2s;
	}
	.gp-hero-slider li.selected p {
		-webkit-transition:opacity 0.4s 0.3s, -webkit-transform 0.5s 0.3s;
		-moz-transition:opacity 0.4s 0.3s, -moz-transform 0.5s 0.3s;
		transition:opacity 0.4s 0.3s, transform 0.5s 0.3s;
	}
	.gp-hero-slider li.selected .gp-btn {
		-webkit-transition:opacity 0.4s 0.4s, -webkit-transform 0.5s 0.4s, background-color 0.2s 0s;
		-moz-transition:opacity 0.4s 0.4s, -moz-transform 0.5s 0.4s, background-color 0.2s 0s;
		transition:opacity 0.4s 0.4s, transform 0.5s 0.4s, background-color 0.2s 0s;
	}
}


/* -------------------------------- 

Javascript disabled

-------------------------------- */
.no-js .gp-hero-slider li {
	display:none;
}
.no-js .gp-hero-slider li.selected {
	display:block;
}

.no-js .gp-slider-nav {
	display:none;
}
