body, h1, h2, h3, h4, h5, h6 {
	-webkit-font-smoothing: antialiased
}
a.link_normal, label {
	font-weight: 500
}
.owl-carousel, .owl-carousel .owl-item, .owl-theme .owl-dots, .owl-theme .owl-nav {
	-webkit-tap-highlight-color: transparent
}
body {
	background: #fff;
	font-size: 14px;
	line-height: 1.5;
	font-family: Poppins, Arial, sans-serif;
	color: #555
}
h1, h2, h3, h4, h5, h6 {
	color: #333;
}
h3 {
	font-size: 22px;
}
a {
	color: #000;
	text-decoration: none;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	outline: 0;
}
a:focus, a:hover {
	color: #111;
	text-decoration: none;
	outline: 0;
}
a.link_normal {
	position: relative
}
a.link_normal:after {
	font-style: normal;
	font-weight: 400;
	font-family: ElegantIcons;
	content: "\24";
	top: 3px;
	position: relative;
	margin-left: 3px;
}
.btn_1, a.btn_1, strong {
	font-weight: 600;
}
p {
	margin: 0 0 25px;
}
.main_title {
	background-color: rgba(0, 37, 74, .8);
	display: inline-block;
	padding: 15px 15px 0;
	position: absolute;
	margin-left: 15px;
	left: 0;
	bottom: 0;
	z-index: 9;
}
hr {
	margin-top: 20px;
	margin-bottom: 25px;
	border: 0;
	border-top: 1px dotted #ddd;
}
.button_intro, a.button_intro {
	border: none;
	font-family: inherit;
	color: #fff!important;
	background: #4CAF50;
	cursor: pointer;
	padding: 12px 35px;
	display: inline-block;
	outline: 0;
	font-size: 13px;
	text-align: center;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-transform: uppercase;
	font-weight: 600;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	transition: all .5s
}
.btn_1, .button_intro:hover, a.btn_1, a.button_intro:hover {
	background: #06C;
}
.btn_1, a.btn_1, a.btn_quote {
	font-family: inherit;
	cursor: pointer;
	display: inline-block;
	-webkit-transition: all .3s;
}
.btn_1, a.btn_1 {
	border: none;
	color: #fff;
	padding: 7px 20px;
	outline: 0;
	font-size: 12px;
	-moz-transition: all .3s;
	transition: all .3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-transform: uppercase;
}
.btn_1.outiline, a.btn_1.outline, input .btn_1.outiline {
	color: #555;
	background: 0 0;
	border: 2px solid #555;
	padding: 5px 18px;
}
.btn_1.outiline:hover, a.btn_1.outline:hover, input .btn_1.outiline:hover {
	color: #fff;
	background: #4CAF50;
	border: 2px solid #4CAF50;
}
.btn_full, a.btn_full, a.btn_quote {
	border: none;
	-moz-transition: all .3s;
}
.btn_1.medium, a.btn_1.medium {
	padding: 10px 25px;
	font-size: 14px;
}
.btn_1:hover, a.btn_1:hover {
	background: #4CAF50;
}
a.btn_quote {
	color: #fff;
	background: #222;
	padding: 7px 30px;
	outline: 0;
	font-size: 14px;
	transition: all .3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-transform: uppercase;
	font-weight: 500;
	float: right;
	white-space: nowrap;
	text-shadow: none;
	margin-top: 5px;
}
.btn_contact, .btn_full, a.btn_contact, a.btn_full {
	padding: 12px 20px;
	font-size: 14px;
	text-align: center;
	margin-bottom: 10px;
	width: 100%;
	text-transform: uppercase;
	cursor: pointer;
	font-family: inherit;
	outline: 0;
}
.btn-abonne {
    background-color: #28a745;
    color: white;
    padding: 8px 16px;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    border: none;
    transition: background 0.3s ease-in-out;
}
.btn-abonne:hover {
    background-color: #388E3C;
}
#how_to, .quote_banner {
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
}
#logo, #social_footer {
	margin-top: 10px;
}
a.btn_quote:hover {
	color: #222;
	background: #fff;
}
.btn_full, a.btn_full {
	color: #fff;
	background: #06C;
	-webkit-transition: all .3s;
	transition: all .3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-weight: 600;
	display: block;
}
.btn_full:hover, a.btn_full:hover {
	background: #4CAF50;
}
.btn_contact, a.btn_contact {
	border: none;
	color: #fff;
	background: #4CAF50;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-weight: 600;
	display: block;
}
footer, footer a {
	color: rgba(255, 255, 255, .6);
}
#opening {
    display: inline-block;
    color: #FFF;
}
.btn_contact:hover, a.btn_contact:hover {
	background: #06C;
}
#tag_line {
	font-size: 14px;
	color: #FFF;
}
#opening:before {
	font-family: ElegantIcons;
	font-size: 14px;
	position: absolute;
	left: 0;
}

#opening {
	display: inline-block;
}
#opening:before {
	content: "\7d";
	top: -3px;
}
header {
	width: 100%;
	padding: 0;
	background-color: rgba(255, 255, 255, 1);
	z-index: 99999;
	position: fixed;
	left: 0;
	top: 0;
	-moz-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .3);
	box-shadow: 0 0 5px rgba(0, 0, 0, .3);
}
nav {
	margin-top: 20px;
}
#top_line {
	font-size: 12px;
	background-color: #000000;
	transition: all .2s ease-in-out;
	-moz-transition: all .1s ease-in-out;
	-webkit-transition: all .1s ease-in-out;
	-o-transition: all .1s ease-in-out;
	visibility: visible;
	opacity: 1;
	padding: 8px 0;
	margin-bottom: 5px;
}
#top_links {
    display: flex;
    align-items: center; /* Assure un alignement vertical parfait */
    justify-content: flex-end; /* Positionne les éléments à droite */
    gap: 20px; /* Ajoute de l’espace entre les éléments */
}

ul#top_links {
	list-style: none;
	margin: 0;
	padding: 2px 0 0;
	float: right;
}
ul#top_links li {
	display: inline-block;
	border-left: 1px solid rgba(0, 0, 0, .1);
	margin-right: 5px;
	padding-left: 8px;
}
.parallax_window_in, .parallax_window_in.short {
	display: table;
	width: 100%;
	z-index: 2;
	position: relative;
}
ul#top_links li:first-child {
	border-left: none;
	padding-left: 0;
}
ul#top_links a {
	color: #ffffff;
}
ul#top_links a:hover {
	color: rgb(248, 247, 247);
}
.animated {
	-webkit-animation-duration: .5s;
	-moz-animation-duration: .5s;
	-o-animation-duration: .5s;
	animation-duration: .5s;
	-webkit-animation-fill-mode: both;
	-moz-animation-fill-mode: both;
	-o-animation-fill-mode: both;
	animation-fill-mode: both;
	will-change: transform, opacity;
}
.animated.swingInX {
	-webkit-transform-origin: top;
	-moz-transform-origin: top;
	-ie-transform-origin: top;
	-o-transform-origin: top;
	transform-origin: top;
	-webkit-backface-visibility: visible!important;
	-webkit-animation-name: swingInX;
	-moz-backface-visibility: visible!important;
	-moz-animation-name: swingInX;
	-o-backface-visibility: visible!important;
	-o-animation-name: swingInX;
	backface-visibility: visible!important;
	animation-name: swingInX;
}
.animated.flipInX, .animated.swingOutX {
	-webkit-backface-visibility: visible!important;
	-moz-backface-visibility: visible!important;
	-o-backface-visibility: visible!important;
}
@-webkit-keyframes swingOutX {
	0% {
		-webkit-transform: perspective(400px) rotateX(0);
	}
	100% {
		-webkit-transform: perspective(400px) rotateX(-90deg);
	}
}
@-moz-keyframes swingOutX {
	0% {
		-moz-transform: perspective(400px) rotateX(0);
	}
	100% {
		-moz-transform: perspective(400px) rotateX(-90deg);
	}
}
@-o-keyframes swingOutX {
	0% {
		-o-transform: perspective(400px) rotateX(0);
	}
	100% {
		-o-transform: perspective(400px) rotateX(-90deg);
	}
}
@keyframes swingOutX {
	0% {
		transform: perspective(400px) rotateX(0);
	}
	100% {
		transform: perspective(400px) rotateX(-90deg);
	}
}
.animated.swingOutX {
	-webkit-transform-origin: top;
	-webkit-animation-name: swingOutX;
	-moz-animation-name: swingOutX;
	-o-animation-name: swingOutX;
	animation-name: swingOutX;
	backface-visibility: visible!important;
}
@-webkit-keyframes slideDown {
	0% {
		-webkit-transform: translateY(-100%);
	}
	100% {
		-webkit-transform: translateY(0);
	}
}
@-moz-keyframes slideDown {
	0% {
		-moz-transform: translateY(-100%);
	}
	100% {
		-moz-transform: translateY(0);
	}
}
/* Slide Down */

@-o-keyframes slideDown {
	0% {
		-o-transform: translateY(-100%);
	}
	100% {
		-o-transform: translateY(0);
	}
}
@keyframes slideDown {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(0);
	}
}
.animated.slideDown {
	-webkit-animation-name: slideDown;
	-moz-animation-name: slideDown;
	-o-animation-name: slideDown;
	animation-name: slideDown;
}
/* Slide Up */

@-webkit-keyframes slideUp {
	0% {
		-webkit-transform: translateY(0);
	}
	100% {
		-webkit-transform: translateY(-100%);
	}
}
@-moz-keyframes slideUp {
	0% {
		-moz-transform: translateY(0);
	}
	100% {
		-moz-transform: translateY(-100%);
	}
}
@-o-keyframes slideUp {
	0% {
		-o-transform: translateY(0);
	}
	100% {
		-o-transform: translateY(-100%);
	}
}
@keyframes slideUp {
	0% {
		transform: translateY(0);
	}
	100% {
		transform: translateY(-100%);
	}
}
.animated.slideUp {
	-webkit-animation-name: slideUp;
	-moz-animation-name: slideUp;
	-o-animation-name: slideUp;
	animation-name: slideUp;
}
/* Swing In X */

@-webkit-keyframes swingInX {
	0% {
		-webkit-transform: perspective(400px) rotateX(-90deg);
	}
	100% {
		-webkit-transform: perspective(400px) rotateX(0);
	}
}
@-moz-keyframes swingInX {
	0% {
		-moz-transform: perspective(400px) rotateX(-90deg);
	}
	100% {
		-moz-transform: perspective(400px) rotateX(0);
	}
}
@-o-keyframes swingInX {
	0% {
		-o-transform: perspective(400px) rotateX(-90deg);
	}
	100% {
		-o-transform: perspective(400px) rotateX(0);
	}
}
@keyframes swingInX {
	0% {
		transform: perspective(400px) rotateX(-90deg);
	}
	100% {
		transform: perspective(400px) rotateX(0);
	}
}
/* Flip In X */

@-webkit-keyframes flipInX {
	0% {
		-webkit-transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
	100% {
		-webkit-transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
}
@-moz-keyframes flipInX {
	0% {
		-moz-transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
	100% {
		-moz-transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
}
@-o-keyframes flipInX {
	0% {
		-o-transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
	100% {
		-o-transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
}
/* Flip In X */

@keyframes flipInX {
	0% {
		transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
	100% {
		transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
}
.animated.flipInX {
	-webkit-animation-name: flipInX;
	-moz-animation-name: flipInX;
	-o-animation-name: flipInX;
	animation-name: flipInX;
	backface-visibility: visible !important;
}
/* Flip Out X */

@-webkit-keyframes flipOutX {
	0% {
		-webkit-transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
	100% {
		-webkit-transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
}
@-moz-keyframes flipOutX {
	0% {
		-moz-transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
	100% {
		-moz-transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
}
@-o-keyframes flipOutX {
	0% {
		-o-transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
	100% {
		-o-transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
}
@keyframes flipOutX {
	0% {
		transform: perspective(400px) rotateX(0);
		opacity: 1;
	}
	100% {
		transform: perspective(400px) rotateX(90deg);
		opacity: 0;
	}
}
.animated.flipOutX {
	-webkit-animation-name: flipOutX;
	-webkit-backface-visibility: visible !important;
	-moz-animation-name: flipOutX;
	-moz-backface-visibility: visible !important;
	-o-animation-name: flipOutX;
	-o-backface-visibility: visible !important;
	animation-name: flipOutX;
	backface-visibility: visible !important;
}
/* Bounce In Down */

@-webkit-keyframes bounceInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-200px);
	}
	60% {
		opacity: 1;
		-webkit-transform: translateY(30px);
	}
	80% {
		-webkit-transform: translateY(-10px);
	}
	100% {
		-webkit-transform: translateY(0);
	}
}
@-moz-keyframes bounceInDown {
	0% {
		opacity: 0;
		-moz-transform: translateY(-200px);
	}
	60% {
		opacity: 1;
		-moz-transform: translateY(30px);
	}
	80% {
		-moz-transform: translateY(-10px);
	}
}
/* Bounce In Down */

@-moz-keyframes bounceInDown {
	100% {
		-moz-transform: translateY(0);
	}
}
@-o-keyframes bounceInDown {
	0% {
		opacity: 0;
		-o-transform: translateY(-200px);
	}
	60% {
		opacity: 1;
		-o-transform: translateY(30px);
	}
	80% {
		-o-transform: translateY(-10px);
	}
	100% {
		-o-transform: translateY(0);
	}
}
@keyframes bounceInDown {
	0% {
		opacity: 0;
		transform: translateY(-200px);
	}
	60% {
		opacity: 1;
		transform: translateY(30px);
	}
	80% {
		transform: translateY(-10px);
	}
	100% {
		transform: translateY(0);
	}
}
.animated.bounceInDown {
	-webkit-animation-name: bounceInDown;
	-moz-animation-name: bounceInDown;
	-o-animation-name: bounceInDown;
	animation-name: bounceInDown;
}
/* Bounce Out Up */

@-webkit-keyframes bounceOutUp {
	0% {
		-webkit-transform: translateY(0);
	}
	30% {
		opacity: 1;
		-webkit-transform: translateY(20px);
	}
	100% {
		opacity: 0;
		-webkit-transform: translateY(-200px);
	}
}
@-moz-keyframes bounceOutUp {
	0% {
		-moz-transform: translateY(0);
	}
	30% {
		opacity: 1;
		-moz-transform: translateY(20px);
	}
	100% {
		opacity: 0;
		-moz-transform: translateY(-200px);
	}
}
@-o-keyframes bounceOutUp {
	0% {
		-o-transform: translateY(0);
	}
	30% {
		opacity: 1;
		-o-transform: translateY(20px);
	}
	100% {
		opacity: 0;
		-o-transform: translateY(-200px);
	}
}
@keyframes bounceOutUp {
	0% {
		transform: translateY(0);
	}
	30% {
		opacity: 1;
		transform: translateY(20px);
	}
	100% {
		opacity: 0;
		transform: translateY(-200px);
	}
}
.animated.bounceOutUp {
	-webkit-animation-name: bounceOutUp;
	-moz-animation-name: bounceOutUp;
	-o-animation-name: bounceOutUp;
	animation-name: bounceOutUp;
}
/* Parallax Windows */

.parallax_window_in {
	height: 550px;
}
.parallax_window_in.short {
	height: 350px;
}
#sub_content_in {
	display: table-cell;
	padding: 45px 0 0;
	vertical-align: middle;
	text-align: right;
}
.parallax_window_in.short #sub_content_in {
	display: table-cell;
	padding: 45px 0 0;
	vertical-align: bottom;
	text-align: left;
	background: rgba(0, 0, 0, 0.7);
}
/* Text Align Center for Multiple Selectors */

#copy, #hero_video, #hero_video>div, #intro, #social_footer, #social_footer ul, #social_footer ul li a, .box_feat span, .box_style_1.home h3, .phone_feat, .promo_full_wp>div {
	text-align: center;
}
/* Sub Content Styles */

#sub_content_in h1 {
	color: #fff;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 42px;
	margin-bottom: 0;
}
#sub_content_in p {
	color: #fff;
	font-size: 24px;
	font-weight: 300;
}
/* Main Layout */

main {
	background: #fff;
	z-index: 2;
	position: relative;
}
/* Footer Styles */

footer {
	background: #222;
	padding: 30px 0 0;
}
footer h3 {
	font-size: 16px;
	font-weight: 600;
	color: #fff;
}
footer a:hover {
	color: rgba(255, 255, 255, 1);
}
#logo_footer {
	margin: 12px 0 15px;
}
footer ul {
	margin: 0;
	padding: 0 0 20px;
	list-style: none;
}
/* Social Footer */

#social_footer {
	border-top: 1px dotted rgba(255, 255, 255, 0.2);
	padding-top: 30px;
}
#social_footer p {
	font-size: 12px;
	color: #8c8c8c;
}
#social_footer ul {
	margin: 0;
	padding: 0 0 10px;
}
#social_footer ul li {
	display: inline-block;
	margin: 0 5px 10px;
}
#social_footer ul li a {
	color: #fff;
	line-height: 36px;
	display: block;
	font-size: 16px;
	width: 35px;
	height: 35px;
	background-color: #333;
	border-radius: 50%;
}
#social_footer ul li a:hover {
	background: #fff;
	color: #4CAF50;
}
/* Contact Section Background */

#contact_bg {
	background: url(../img/map_footer.png) bottom center no-repeat;
}
/* Contact Details */

ul#contact_details_footer {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}
ul#contact_details_footer li {
	margin-bottom: 20px;
}
ul#contact_details_footer li#address_footer, ul#contact_details_footer li#email_footer, ul#contact_details_footer li#phone_footer {
	position: relative;
	padding-left: 30px;
}
/* Contact Icons */

#address_footer:before, #email_footer:before, #phone_footer:before {
	font-style: normal;
	font-weight: 400;
	font-family: ElegantIcons;
	position: absolute;
	font-size: 20px;
	left: 0;
	color: #4CAF50;
}
#address_footer:before {
	content: "\e009";
	top: -5px;
}
#phone_footer:before {
	content: "\e00b";
	top: -5px;
}
#email_footer:before {
	content: "\e010";
	top: -8px;
}
/* Copyright */

#copy {
	background-color: #1e1e1e;
	padding: 10px 0;
	color: rgba(255, 255, 255, 0.5);
	font-size: 12px;
}
/* Slider Wrapper */

#full-slider-wrapper {
	margin-top: 98px;
}
/* Get Quote Section */

#get_quote {
	background: #4CAF50;
	padding: 30px 0;
	color: #fff;
}
#get_quote h3 {
	color: #fff;
	margin: 5px 0 0;
	font-size: 32px;
	font-weight: 300;
}
/* Box Style 1 - Home Section */

.box_style_1.home {
	padding: 20px 20px 5px;
}
.box_style_1.home ul.feat li {
	border-bottom: 1px dotted #ccc;
	margin-bottom: 15px;
}
.box_style_1.home ul.feat li p {
	margin-bottom: 15px;
}
.box_style_1.home ul.feat li:last-child {
	border-bottom: 0;
}
.box_style_1.home ul.feat li:last-child p {
	margin-bottom: 0;
}
.box_style_1.home h3 {
	background-color: #333;
	color: #fff;
	padding: 15px 10px;
	text-transform: uppercase;
	font-size: 18px;
	margin: -20px -20px 20px;
	border-bottom: 2px solid #fff;
}
/* How To Section */

#how_to {
	background: url(../img/pattern_green.png) #629976;
	padding: 60px 0 30px;
	color: #fff;
	font-size: 14px;
	font-weight: 500;
}
#how_to h3 {
	font-family: 'Gochi Hand', cursive;
	color: #fff;
	font-size: 36px;
	font-weight: 400;
	margin-bottom: 0;
}
#how_to h4 {
	text-transform: uppercase;
	font-size: 18px;
	font-weight: 700;
	color: #FFC;
}
#how_to h4:before, #how_to h4:after {
	display: inline-block;
	width: 20px;
	height: 1px;
	content: '';
	vertical-align: middle;
	background: rgba(255, 255, 255, 0.5);
}
#how_to h4:before {
	margin-right: 10px;
}
#how_to h4:after {
	margin-left: 10px;
}
/* Features Home Section */

#feat_home {
	background-color: #f3f3f3;
}
#feat_home h2 {
	font-size: 24px;
	font-weight: 300;
	margin-bottom: 0;
}
/* Feature Boxes */

.box_feat_2 {
	text-align: center;
	padding: 30px 30px 0;
}
.box_feat_2 h3 {
	color: #629976;
}
.box_feat {
	position: relative;
	margin-bottom: 35px;
	padding-left: 110px;
	color: #555;
}
.box_feat h3 {
	margin-bottom: 7px;
}
.box_feat span {
	width: 90px;
	height: 90px;
	top: 0;
	left: 0;
	position: absolute;
	background-color: #fff;
	border-radius: 50px;
	line-height: 90px;
}
/* Hero Video and Iframe */

#hero_video, iframe {
	height: 100%;
	width: 100%;
}
#book, #hero_video, .header-video {
	position: relative;
}
/* Phone Feature */

.phone_feat {
	font-size: 24px;
	margin: 0 0 -15px;
}
.phone_feat a {
	color: #4CAF50;
	font-weight: 700;
}
.phone_feat a:hover {
	color: #222;
}
/* Intro Title */

.intro_title {
	display: table-cell;
	vertical-align: middle;
}
.intro_title h1 {
	font-size: 45px;
	margin-bottom: 5px;
	color: #fff;
}
/* General Text Styles */

font-weight: 700;
text-transform: uppercase;
/* Header Video Section */

.header-video {
	overflow: hidden;
	background: #000;
}
#hero_video {
	background-size: cover;
	color: #fff;
	font-size: 16px;
	display: table;
	z-index: 99;
}
#hero_video>div {
	display: table-cell;
	vertical-align: middle;
	padding: 0 10%;
}
#hero_video>div h3 {
	font-size: 56px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 90px 0 5px;
	color: #fff;
}
#hero_video>div p {
	font-size: 28px;
	margin-bottom: 45px;
}
video {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	opacity: 0.4;
	width: 100%;
}
.header-video--media, .teaser-video {
	width: 100%;
	height: auto;
}
/* Intro Title Booking Section */

.intro_title_booking {
	margin-top: 170px;
}
.intro_title_booking h2 {
	font-size: 46px;
	margin-bottom: 5px;
	color: #fff;
	font-weight: 700;
	text-transform: uppercase;
}
.intro_title_booking p {
	color: #fff;
	font-size: 21px;
}
/* Booking Container */

#booking_container {
	position: relative;
	height: 700px;
	padding-top: 155px;
	background: url(../img/slides/slide_1.jpg) center top no-repeat #ccc;
	background-size: cover;
	color: #fff;
	width: 100%;
	z-index: 99;
	border-bottom: 3px solid #4CAF50;
}
/* Booking Form */

#book {
	background: rgba(0, 0, 0, 0.75);
	padding: 30px 30px 10px;
}
#book .form-control {
	border: 0;
}
#book .loader, #book_in .loader {
	position: absolute;
	right: 20px;
	bottom: 25px;
}
.error_message {
	margin: 0 0 5px;
	padding: 0;
	display: inline-block;
}
#book .error_message {
	color: #FF9;
}
#book h3 {
	color: #fff;
	margin-top: 0;
	font-weight: 300;
	font-size: 26px;
}
#book p {
	opacity: 0.8;
}
/* Intro Section */

#intro h2 {
	text-transform: uppercase;
	font-weight: 700;
	margin-top: 0;
}
/* About Section */

ul.feat#about {
	list-style: none;
	margin: 20px 0;
	padding: 0;
}
ul.feat#about li, ul.feat#about li p {
	margin-bottom: 20px;
}
ul.feat#about li {
	padding: 20px 25px 10px 85px;
	border: 1px solid #ddd;
	background-color: #f3f3f3;
}
ul.feat#about li h4 {
	color: #362f2d;
}
ul.feat#about li i {
	position: absolute;
	left: 25px;
	top: 25px;
	font-size: 42px;
	color: #4CAF50;
}
/* Promo Section */

.promo_full_wp div h3 {
	font-size: 48px;
	text-transform: uppercase;
	font-weight: 300;
	color: #fff;
	margin-bottom: 30px;
}
.promo_full_wp div h3 span {
	color: #fff;
}
/* General Text Settings */

display: block;
text-transform: none;
font-size: 24px;
/* Promo Full Background */

.promo_full {
	height: auto;
	background: url(../img/promo_bg.jpg) center center no-repeat fixed;
	background-size: cover;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	position: relative;
}
.promo_full_wp {
	display: table;
	width: 100%;
	height: auto;
}
.promo_full_wp>div {
	display: table-cell;
	padding: 5% 0;
	vertical-align: middle;
	color: #fff;
	font-size: 16px;
	box-sizing: content-box;
}
.promo_full_wp div h3 {
	font-size: 48px;
	text-transform: uppercase;
	font-weight: 300;
	color: #fff;
	margin-bottom: 30px;
}
.promo_full_wp div h3 span {
	color: #fff;
}
/* Box Overlay */

.box_overlay, .pic h4 {
	font-size: 14px;
	color: #fff;
}
.box_overlay {
	background-color: rgba(0, 0, 0, 0.7);
	padding: 25px 25px 25px 225px;
	border-radius: 3px;
	position: relative;
	text-align: left;
	min-height: 125px;
}
/* Picture Block */

.pic, .pic h4 {
	position: absolute;
}
.pic {
	left: 25px;
	top: 25px;
	width: 190px;
	height: 80px;
}
.pic h4 {
	left: 95px;
	top: 18px;
	font-weight: 500;
}
.pic h4 small {
	display: block;
	color: #fff;
	margin-top: 3px;
}
.pic figure {
	width: 80px;
	height: 80px;
	overflow: hidden;
}
.pic figure img {
	width: 80px;
	height: auto;
	border: 5px solid rgba(0, 0, 0, 0.2);
}
/* Comment Block */

.comment {
	padding-left: 25px;
	font-style: italic;
	line-height: 1.3;
	font-size: 16px;
}
/* Team Section */

.team-item-img {
	position: relative;
}
.team-item-img .team-item-detail {
	background: rgba(0, 0, 0, 0.8);
	text-align: center;
	color: #fff;
	display: flex;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	transition: all 0.5s ease-in-out;
}
.team-item:hover .team-item-detail {
	opacity: 1;
	visibility: visible;
}
.team-item-img .team-item-detail .team-item-detail-inner {
	margin: auto;
	padding: 25px;
}
.team-item-detail-inner h4 {
	color: #fff;
	text-transform: uppercase;
	font-weight: 500;
}
.team-item-detail-inner .social {
	margin: 0 0 25px;
	padding: 0;
}
.team-item-detail-inner .social li {
	list-style: none;
	display: inline-block;
	margin: 0 5px;
}
.team-item-detail-inner .social li a {
	color: #fff;
}
.team-item-detail-inner .social li a:hover {
	color: #4CAF50;
}
.team-item-info {
	padding-top: 15px;
	text-align: center;
}
.team-item-info h4 {
	margin-bottom: 0;
	text-transform: uppercase;
}
/* Box Styles */

.box_style_1 {
	padding: 10px;
	position: relative;
	background: #f9f9f9;
	margin-bottom: 20px;
}
.box_style_3 {
	background: url(../img/pattern_green.png) #619979;
	padding: 30px 20px 10px;
	color: #fff;
}
.box_style_3 h4 {
	color: #fff;
	text-transform: uppercase;
	font-size: 16px;
}
.box_style_3 h4:after, .box_style_3 h4:before {
	display: inline-block;
	width: 20px;
	height: 1px;
	content: '';
}
/* Box Style 3 Header Line Adjustments */

vertical-align: middle;
background: rgba(255, 255, 255, 0.5);
.box_style_3 h4:before {
	margin-right: 10px;
}
.box_style_3 h4:after {
	margin-left: 10px;
}
/* Category Navigation */

ul#cat_nav {
	list-style: none;
	margin: 0;
	padding: 0;
	font-weight: 500;
}
ul#cat_nav li a {
	background-color: #fff;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1);
	padding: 10px;
	display: block;
	margin-bottom: 7px;
	position: relative;
}
ul#cat_nav li a#active {
	background-color: #629976;
	color: #fff;
}
ul#cat_nav li:last-child a {
	margin-bottom: 0;
}
ul#cat_nav li a:before {
	font-style: normal;
	font-weight: 400;
	font-family: ElegantIcons;
	position: absolute;
	font-size: 20px;
	right: 5px;
	top: 5px;
	content: "\35";
}
/* Image Borders */

img.img-responsive.border {
	border-bottom: 3px solid #4CAF50;
}
/* Features List */

ul.feat {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}
ul.feat li {
	padding-left: 70px;
	position: relative;
}
ul.feat li img {
	position: absolute;
	left: 0;
	top: 0;
}
/* Strip Section */

.strip {
	padding: 40px 0 20px;
	border-top: 1px dashed #ddd;
}
.strip h4 {
	margin-top: 0;
}
/* Form Title and Steps */

.form_title {
	position: relative;
	padding-left: 55px;
	margin-bottom: 10px;
}
.form_title h3 {
	margin: 0;
	padding: 0;
}
.form_title h3 strong {
	background-color: #4CAF50;
	width: 40px;
	height: 40px;
	display: inline-block;
	border-radius: 50%;
	color: #fff;
	font-size: 18px;
	line-height: 40px;
	text-align: center;
	position: absolute;
	left: 0;
	top: 0;
}
.form_title p {
	color: #999;
	margin: 0;
	padding: 0;
	font-size: 13px;
	line-height: 14px;
}
.step {
	border-left: 1px solid #ddd;
	padding: 20px 0 20px 31px;
	margin: 0 0 10px 20px;
}
/* Form Options */

.form-group.options {
	border-bottom: 1px dotted #ddd;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
.form-group.options strong {
	position: relative;
	top: 5px;
}
/* Validation Error Labels */

label.error {
	font-size: 11px;
	position: absolute;
	top: -12px;
	right: 0;
	z-index: 99;
	height: 25px;
	line-height: 25px;
	background-color: #4CAF50;
	color: #fff;
	font-weight: 400;
	padding: 0 6px;
}
label.error:after {
	content: '';
	position: absolute;
	border-style: solid;
	border-width: 0 6px 6px 0;
	border-color: transparent #4CAF50;
	display: block;
	width: 0;
	z-index: 1;
	bottom: -6px;
	left: 20%;
}
/* Navigation Buttons */

.button-back {
	float: left;
}
.button-next {
	float: right;
}
a.button-back, a.button-next {
	text-decoration: none;
	color: #fff;
}
.button-back, .button-next {
	border: none;
	font-family: inherit;
	color: #fff;
	background: #000;
	cursor: pointer;
	padding: 7px 20px;
}
display:inline-block;
outline:0;
font-size:12px;
-webkit-transition:all .3s;
-moz-transition:all .3s;
transition:all .3s;
-webkit-border-radius:3px;
-moz-border-radius:3px;
border-radius:3px;
text-transform:uppercase;
font-weight:600;
margin-top:20px;
}
.button-back:hover, .button-next:hover {
	background: #333;
	text-decoration: none;
}
#custom .step {
	clear: left;
	background: #f3f3f3;
	padding: 30px;
	margin: 0;
	border: 0;
}
/* Custom Step Form */

#custom .step label {
	display: block;
	position: relative;
}
#custom .step legend {
	font-size: 11px;
}
#custom .step .form-group {
	margin-bottom: 20px;
}
#custom .step h3 {
	margin: 0 0 20px;
}
/* Stepy Titles (Navigation Tabs) */

.stepy-titles, ul.stepy-titles {
	margin: 0;
	padding: 0;
	list-style: none;
	width: 100%;
	height: 40px;
}
.stepy-titles li {
	cursor: pointer;
	float: left;
	padding: 7px 20px;
	background: #f3f3f3;
	font-weight: 600;
	margin: 0 0 2px 2px;
	position: relative;
	font-size: 16px;
}
.stepy-titles li:first-child {
	margin-left: 0;
}
.stepy-titles li span {
	font-size: 11px;
	display: block;
	font-weight: 400;
}
.stepy-titles .current-step {
	cursor: auto;
	background: #4CAF50;
	padding: 7px 20px;
	color: #fff;
}
/* Form Error */

.form-control.error {
	background: #fdf5f5;
}
.stepy-error {
	display: block;
}
.stepy-error label.error {
	background: url(../img/alert.png) 5px center no-repeat #e34f4f;
	color: #fff;
	display: inline-block;
	font-size: 12px;
	padding: 4px 10px 0 25px;
	margin: 8px 5px 2px 0;
	border-radius: 3px;
	position: static;
	line-height: normal;
	font-weight: 500;
}
.stepy-error label.error:after {
	border-width: 0;
}
/* Submit Button (Final Step) */

input[type=submit].finish {
	border: none;
	font-family: inherit;
	color: #fff;
	background: #4CAF50;
	cursor: pointer;
	padding: 7px 20px;
	display: inline-block;
	outline: 0;
	font-size: 12px;
	transition: all 0.3s;
	border-radius: 3px;
	text-transform: uppercase;
	font-weight: 600;
	float: right;
	margin-top: 20px;
}
input[type=submit].finish:hover {
	background: #333;
}
/* Anti-bot Field */

input#website {
	display: none;
}
/* Styled Select Box */

.styled-select {
	width: 100%;
	overflow: hidden;
	height: 44px;
	background: url(../img/arrow_down.svg) right center no-repeat #fff;
	border: 1px solid #ddd9d1;
	border-radius: 5px;
}
.styled-select select {
	background: none;
	width: 107%;
	padding: 5px 5px 5px 15px;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	height: 41px;
	color: #999;
	margin: 0;
	font-weight: 400;
	appearance: none;
	cursor: pointer;
	outline: 0;
}
.styled-select select:focus {
	color: #555;
	outline: 0;
	box-shadow: none;
}
.styled-select select::-ms-expand {
	display: none;
}
/* Quote Box */

.box_quote {
	padding-right: 30px;
}
.box_quote h3 {
	font-size: 32px;
	margin-top: 0;
}
.box_quote h3 strong {
	color: #4CAF50;
	display: block;
}
.box_quote ul {
	margin: 0 0 25px;
	padding: 0;
	list-style: none;
}
.box_quote ul li {
	position: relative;
	font-size: 16px;
	padding-left: 30px;
	margin-bottom: 10px;
}
.box_quote ul li i {
	position: absolute;
	left: 0;
	top: 0;
	font-size: 20px;
}
/* Call Us Button */

a.call_us_bt {
	background-color: #4CAF50;
	color: #fff;
	display: inline-block;
	padding: 10px 15px;
	font-size: 18px;
	font-weight: 600;
}
/* Box Style 4 */

.box_style_4 {
	background: #fafafa;
	padding: 25px;
	margin-bottom: 20px;
	border-top: 3px solid #4CAF50;
}
.box_style_4 ul {
	padding: 0 0 0 25px;
	margin: 0;
}
.box_style_4 ul li {
	margin: 0 0 10px;
}
#map {
	width: 100%;
	height: 350px;
	border: 3px solid #ededed;
}
.box_style_4 h3 {
	margin-top: 0;
}
.error_message {
	font-weight: 700;
	color: #e34f4f;
	margin-bottom: 5px;
}
.modal-dialog {
	margin-top: 120px;
}
.gray_bg {
	background-color: #fafafa;
}
.box_style_2 {
	padding: 10px 25px 0;
	margin-bottom: 20px;
	border: 1px dashed #ddd;
}
.box_style_2 h4 {
	margin: 10px 0 20px;
}
.box_style_2 h5 {
	font-size: 21px;
}
.box_style_2 ul {
	padding-left: 20px;
	padding-bottom: 10px;
}
.box_style_2 ul li {
	margin-bottom: 10px;
}
.box_style_2 ul li:last-child {
	margin-bottom: 0;
}
.quote_banner a {
	background-color: #362f2d;
	color: #fff;
	display: block;
	padding: 17px 15px 15px 45px;
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
}
.quote_banner {
	position: relative;
}
.quote_banner:before {
	font-style: normal;
	font-weight: 400;
	font-family: ElegantIcons;
	content: "\e0ee";
	top: 15px;
	font-size: 18px;
	margin-right: 5px;
	position: absolute;
	left: 15px;
	color: #fff;
}
.nomargin, .nopadding {
	margin: 0!important;
}
.quote_banner a:hover {
	background-color: #333;
}
.form-control {
	font-size: 14px;
	color: #333;
	border-radius: 3px;
	height: 40px;
}
#booking .form-group {
	position: relative;
}
#toTop {
	width: 40px;
	height: 40px;
	background-color: rgba(0, 0, 0, .6);
	text-align: center;
	padding: 10px;
	line-height: 20px;
	position: fixed;
	bottom: 10px;
	right: 10px;
	cursor: pointer;
	display: none;
	color: #fff;
	font-size: 20px;
}
#toTop:before {
	font-style: normal;
	font-weight: 400;
	font-family: fontello;
	content: "\e899";
}
ul.list_2 li:before, ul.list_ok li:before {
	font-family: ElegantIcons;
	font-style: normal;
	top: 0;
	left: 0;
}
.nopadding {
	padding: 0!important;
}
.add_bottom_15 {
	margin-bottom: 15px;
}
.add_bottom_30 {
	margin-bottom: 30px;
}
.add_bottom_45 {
	margin-bottom: 45px;
}
.add_bottom_60 {
	margin-bottom: 60px;
}
ul.list_ok {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
	line-height: 22px;
}
ul.list_ok li, ul.list_ok li strong {
	position: relative;
	padding-left: 25px;
}
ul.list_ok li:before {
	font-size: 14px;
	content: "\4e";
	color: #4CAF50;
	position: absolute;
}
ul.list_order {
	list-style: none;
	margin: 0 0 30px;
	padding: 0;
	line-height: 30px;
	font-size: 14px;
}
ul.list_order li {
	position: relative;
	padding-left: 40px;
	margin-bottom: 10px;
}
ul.list_order li span {
	background-color: #4CAF50;
	color: #fff;
	position: abs0olute;
	left: 0;
	top: 0;
	text-align: center;
	font-size: 18px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	line-height: 30px;
}
.panel, .panel-group .panel {
	border-radius: 0;
}
ul.list_2 {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}
ul.list_2 li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 5px;
}
ul.list_2 li strong {
	font-weight: 600;
}
ul.list_2 li:before {
	font-size: 14px;
	content: "\5c";
	color: #4CAF50;
	position: absolute;
}
.margin_60 {
	padding-top: 60px;
	padding-bottom: 60px;
}
.margin_60_35 {
	padding-top: 60px;
	padding-bottom: 35px;
}
.margin_60_25 {
	padding-top: 60px;
	padding-bottom: 25px;
}
.margin_30 {
	margin-top: 30px;
	margin-bottom: 30px;
}
.bg_content {
	display: table;
	width: 100%;
	height: 500px;
	background: url(../img/bg_parallax.jpg) center center no-repeat fixed;
	background-size: cover;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
}
.bg_content>div {
	display: table-cell;
	padding: 0 20%;
	vertical-align: middle;
	text-align: center;
	color: #222;
	font-size: 18px;
	font-weight: 400;
	background: rgba(255, 255, 255, .5);
}
.bg_content div h3 {
	font-size: 48px;
	font-weight: 300;
	color: #222;
}
.bg_content div h3 strong {
	font-weight: 500;
}
#position ul li:after, #position ul li:first-child:before {
	font-weight: 400;
	font-family: fontello;
}
.bg_content div a i {
	color: #4CAF50;
	font-size: 60px;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}
.bg_content div a:hover i {
	color: #222;
}
#position {
	color: #fff;
	font-size: 13px;
	margin-top: 42px;
}
#position ul li:first-child {
	padding-left: 20px;
}
#position ul li:first-child:before {
	content: '\eaf4';
	font-style: normal;
	position: absolute;
	left: 0;
	top: 1px;
	color: #fff;
}
#position ul {
	margin: 0;
	padding: 0;
	float: right;
}
#position ul li a {
	color: #fff;
	opacity: .7;
}
#position ul li a:hover {
	color: #fff;
	opacity: 1;
}
#position ul li {
	display: inline-block;
	padding-right: 8px;
	margin-right: 3px;
	position: relative;
}
#position ul li:after {
	content: '\e9ee';
	font-style: normal;
	position: absolute;
	right: 0;
	top: 1px;
}
#position ul li:last-child:after {
	content: '';
}
#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	bottom: 0;
	background-color: #fff;
	z-index: 999999;
}
.sk-spinner-wave.sk-spinner {
	margin: -15px 0 0 -25px;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 50px;
	height: 30px;
	text-align: center;
	font-size: 10px;
}
.ie8 .sk-spinner-wave.sk-spinner {
	display: none;
}
.sk-spinner-wave div {
	background-color: #ccc;
	height: 100%;
	width: 6px;
	display: inline-block;
	-webkit-animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
	animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
}
.sk-spinner-wave .sk-rect2 {
	-webkit-animation-delay: -1.1s;
	animation-delay: -1.1s;
}
.sk-spinner-wave .sk-rect3 {
	-webkit-animation-delay: -1s;
	animation-delay: -1s;
}
.sk-spinner-wave .sk-rect4 {
	-webkit-animation-delay: -.9s;
	animation-delay: -.9s;
}
.sk-spinner-wave .sk-rect5 {
	-webkit-animation-delay: -.8s;
	animation-delay: -.8s;
}
@-webkit-keyframes sk-waveStretchDelay {
	0%, 100%, 40% {
		-webkit-transform: scaleY(.4);
		transform: scaleY(.4);
	}
	20% {
		-webkit-transform: scaleY(1);
		transform: scaleY(1)
	}
	;
}
@keyframes sk-waveStretchDelay {
	0%, 100%, 40% {
		-webkit-transform: scaleY(.4);
		transform: scaleY(.4)
	}
	20% {
		-webkit-transform: scaleY(1);
		transform: scaleY(1)
	}
}
.panel {
	-webkit-box-shadow: none;
	box-shadow: none
}
.panel-title a {
	display: block;
	color: #333
}
.panel-default>.panel-heading {
	background-color: #f9f9f9
}
.panel-heading {
	border-top-left-radius: 0;
	border-top-right-radius: 0
}
.loader {
	margin-left: 5px;
	position: absolute
}
blockquote.styled {
	font-style: italic;
	font-size: 16px;
	line-height: 1.7
}
.tab-content {
	padding: 30px;
	background-color: #fff;
	border: 1px solid #ddd;
	border-top: none;
	margin-bottom: 25px;
	-webkit-border-bottom-right-radius: 3px;
	-webkit-border-bottom-left-radius: 3px;
	-moz-border-radius-bottomright: 3px;
	-moz-border-radius-bottomleft: 3px;
	border-bottom-right-radius: 3px;
	border-bottom-left-radius: 3px
}
.owl-carousel .animated {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}
.owl-carousel .owl-animated-in {
	z-index: 0
}
.owl-carousel .owl-animated-out {
	z-index: 1
}
.owl-carousel .fadeOut {
	-webkit-animation-name: fadeOut;
	animation-name: fadeOut
}
@-webkit-keyframes fadeOut {
	0% {
		opacity: 1
	}
	100% {
		opacity: 0
	}
}
@keyframes fadeOut {
	0% {
		opacity: 1
	}
	100% {
		opacity: 0
	}
}
.owl-height {
	-webkit-transition: height .5s ease-in-out;
	-moz-transition: height .5s ease-in-out;
	-ms-transition: height .5s ease-in-out;
	-o-transition: height .5s ease-in-out;
	transition: height .5s ease-in-out
}
.owl-carousel {
	display: none;
	width: 100%;
	position: relative;
	z-index: 1
}
.owl-carousel .owl-stage {
	position: relative;
	-ms-touch-action: pan-Y
}
.owl-carousel .owl-stage:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0
}
.owl-carousel .owl-stage-outer {
	position: relative;
	overflow: hidden;
	-webkit-transform: translate3d(0, 0, 0)
}
.owl-carousel .owl-item {
	position: relative;
	min-height: 1px;
	float: left;
	-webkit-backface-visibility: hidden;
	-webkit-touch-callout: none
}
.owl-carousel .owl-item img {
	display: block;
	width: 100%;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d
}
.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {
	display: none
}
.owl-carousel .owl-dot, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-nav .owl-prev {
	cursor: pointer;
	cursor: hand;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}
.owl-carousel.owl-loaded {
	display: block
}
.owl-carousel.owl-loading {
	opacity: 0;
	display: block
}
.owl-carousel.owl-hidden {
	opacity: 0;
}
.owl-carousel.owl-refresh .owl-item {
	display: none
}
.owl-carousel.owl-drag .owl-item {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}
.owl-carousel.owl-grab {
	cursor: move;
	cursor: -webkit-grab;
	cursor: -o-grab;
	cursor: -ms-grab;
	cursor: grab
}
.owl-carousel.owl-rtl {
	direction: rtl
}
.owl-carousel.owl-rtl .owl-item {
	float: right
}
.no-js .owl-carousel {
	display: block
}
.owl-carousel .owl-item .owl-lazy {
	opacity: 0;
	-webkit-transition: opacity .4s ease;
	-moz-transition: opacity .4s ease;
	-ms-transition: opacity .4s ease;
	-o-transition: opacity .4s ease;
	transition: opacity .4s ease
}
.owl-carousel .owl-video-wrapper {
	position: relative;
	height: 100%;
	background: #000
}
.owl-carousel .owl-video-play-icon {
	position: absolute;
	height: 80px;
	width: 80px;
	left: 50%;
	top: 50%;
	margin-left: -40px;
	margin-top: -40px;
	background: url(owl.video.play.html) no-repeat;
	cursor: pointer;
	z-index: 1;
	-webkit-backface-visibility: hidden;
	-webkit-transition: scale .1s ease;
	-moz-transition: scale .1s ease;
	-ms-transition: scale .1s ease;
	-o-transition: scale .1s ease;
	transition: scale .1s ease
}
.owl-carousel .owl-video-play-icon:hover {
	-webkit-transition: scale(1.3, 1.3);
	-moz-transition: scale(1.3, 1.3);
	-ms-transition: scale(1.3, 1.3);
	-o-transition: scale(1.3, 1.3);
	transition: scale(1.3, 1.3)
}
.owl-carousel .owl-video-playing .owl-video-play-icon, .owl-carousel .owl-video-playing .owl-video-tn {
	display: none
}
.owl-carousel .owl-video-tn {
	opacity: 0;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
	-webkit-transition: opacity .4s ease;
	-moz-transition: opacity .4s ease;
	-ms-transition: opacity .4s ease;
	-o-transition: opacity .4s ease;
	transition: opacity .4s ease
}
.owl-carousel .owl-video-frame {
	position: relative;
	z-index: 1;
	height: 100%;
	width: 100%
}
.owl-theme .owl-nav {
	position: absolute;
	top: 50%;
	width: 100%;
	margin-top: -50px
}
.owl-theme .owl-nav .owl-prev {
	position: absolute;
	left: 2%;
	width: 50px;
	height: 50px
}
.owl-theme .owl-nav .owl-next {
	position: absolute;
	right: 2%;
	width: 50px;
	height: 50px
}
.owl-theme .owl-nav [class*=owl-] {
	color: #FFF;
	font-size: 36px;
	margin: 5px;
	background: rgba(0, 0, 0, .5);
	display: inline-block;
	cursor: pointer;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	font-style: normal;
	font-weight: 400;
	font-family: fontello;
	text-align: center;
	line-height: 48px
}
.owl-theme .owl-nav .owl-prev:before {
	content: "\e89a";
	left: -2px;
	position: relative
}
.owl-theme .owl-nav .owl-next:before {
	content: "\e89b";
	right: -2px;
	position: relative
}
.owl-theme .owl-nav [class*=owl-]:hover {
	background: rgba(0, 0, 0, .8)
}
.owl-theme .owl-nav .disabled {
	opacity: .5;
	cursor: default
}
.owl-theme .owl-nav.disabled+.owl-dots {
	margin-top: 10px
}
.owl-theme .owl-dots {
	text-align: center;
	margin-top: 20px
}
.owl-theme .owl-dots .owl-dot {
	display: inline-block;
	zoom: 1
}
.owl-theme .owl-dots .owl-dot span {
	width: 10px;
	height: 10px;
	margin: 5px 7px;
	background: #D6D6D6;
	display: block;
	-webkit-backface-visibility: visible;
	-webkit-transition: opacity .2s ease;
	-moz-transition: opacity .2s ease;
	-ms-transition: opacity .2s ease;
	-o-transition: opacity .2s ease;
	transition: opacity .2s ease;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px
}
.owl-item, figure.animated a img {
	-webkit-backface-visibility: hidden
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
	background: #06C
}
.owl-item {
	-webkit-transform: translateZ(0) scale(1, 1)
}
figure.animated {
	overflow: hidden;
	border-bottom: 3px solid #4CAF50
}
figure.animated a img {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	-webkit-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	-o-backface-visibility: hidden;
	backface-visibility: hidden
}
figure.animated a:hover img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1)
}
body#confirmation {
	background-color: #4CAF50;
}
#success {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 300px;
	height: 150px;
	margin-top: -120px;
	margin-left: -195px;
	text-align: center;
	background-color: #fff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	border-radius: 5px;
	padding: 45px;
	box-sizing: content-box
}
#success h4 {
	margin: 15px 0 0;
	font-weight: 300;
}
#success small {
	color: #777;
}
#success h4 span {
	display: block;
	font-size: 24px
}
@-webkit-keyframes checkmark {
	0% {
		stroke-dashoffset: 50px
	}
	100% {
		stroke-dashoffset: 0
	}
}
@-ms-keyframes checkmark {
	0% {
		stroke-dashoffset: 50px
	}
	100% {
		stroke-dashoffset: 0
	}
}
@keyframes checkmark {
	0% {
		stroke-dashoffset: 50px
	}
	100% {
		stroke-dashoffset: 0
	}
}
@-webkit-keyframes checkmark-circle {
	0% {
		stroke-dashoffset: 240px
	}
	100% {
		stroke-dashoffset: 480px
	}
}
@-ms-keyframes checkmark-circle {
	0% {
		stroke-dashoffset: 240px
	}
	100% {
		stroke-dashoffset: 480px
	}
}
@keyframes checkmark-circle {
	0% {
		stroke-dashoffset: 240px
	}
	100% {
		stroke-dashoffset: 480px
	}
}
.inlinesvg .svg svg {
	display: inline
}
.icon--order-success svg path {
	-webkit-animation: checkmark .25s ease-in-out .7s backwards;
	animation: checkmark .25s ease-in-out .7s backwards
}
.icon--order-success svg circle {
	-webkit-animation: checkmark-circle .6s ease-in-out backwards;
	animation: checkmark-circle .6s ease-in-out backwards
}
.iCheck-helper {
	background: #4CAF50 !important;
	/* Vert Domisys */
}
.cart-icon {
    font-size: 18px;
    text-decoration: none;
    color: #ffffff; /* Pour correspondre au style des liens */
    display: flex;
    align-items: center;
    position: relative;
}

#cart-count {
    font-weight: bold;
    background: red;
    color: white;
    padding: 2px 4px; /* Réduction du padding */
    border-radius: 50%;
    font-size: 12px; /* Taille plus petite */
    margin-left: 5px;
    position: absolute;
    top: -3px;
    right: -8px;
}

.btn-reminder {
    background-color: white; /* ✅ Fond blanc */
    color: black; /* ✅ Texte noir */
    padding: 8px 16px; 
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    border: 1px solid #ccc; /* ✅ Bordure légère pour le contraste */
    transition: background 0.3s ease-in-out;
}

.btn-reminder:hover {
    background-color: #f0f0f0; /* ✅ Effet léger au survol */
}

.forgot-password {
    display: block;
    text-align: center;
    margin-top: 12px;
    font-size: 14px;
    color: #28a745;
    text-decoration: none;
}

.forgot-password:hover {
    text-decoration: underline;
}

.video-wrapper {
  position: relative;
  display: inline-block;
}
.play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 60px;
  color: white;
  cursor: pointer;
}

/* ====================================================================
   STYLES SPÉCIFIQUES AUX BLOCS DE PROMOTION DOMISYS
   ==================================================================== */

/* Conteneur principal de la carte promo */
.promo-card-domisys {
    /* La bordure gris clair est fournie par le fond de la page et le padding du conteneur */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05); /* Légère ombre pour soulever la carte */
    padding: 30px !important; /* Augmenter le padding interne */
    min-height: 250px;
}

/* Texte de l'offre (Gauche) */
.promo-card-domisys .promo-text {
    flex-grow: 1; /* Prend l'espace restant */
    padding-right: 20px;
    line-height: 1.2;
}

/* Slogan principal (Caractéristiques clés) */
.promo-card-domisys .promo-slogan {
    font-size: 1.4rem; /* Taille du titre/slogan */
    line-height: 1.1;
    font-weight: 600;
    color: #4CAF50 !important; /* Couleur verte pour le slogan */
}

/* Pourcentage de réduction (Taille de l'impact) */
.promo-card-domisys .promo-discount {
    font-size: 3.8rem; /* Très grand pour le -14% / -20% */
    font-weight: 700;
    color: #dc3545 !important; /* Couleur rouge vif */
    margin-top: 10px;
    margin-bottom: 5px;
}

/* Prix final sous le pourcentage */
.promo-card-domisys .promo-price {
    font-size: 1.2rem;
    font-weight: 500;
    color: #4CAF50 !important; /* Couleur verte pour le prix */
}

/* Image du produit (Droite) */
.promo-card-domisys .promo-image {
    /* Assurez-vous que l'image ne dépasse pas la hauteur désirée */
    display: flex;
    align-items: center;
    justify-content: center;
    /* Ajustement si nécessaire pour l'alignement vertical */
}

/* Ajustement pour les petits écrans (tablette/mobile) */
@media (max-width: 768px) {
    .promo-card-domisys {
        flex-direction: column; /* Empiler le texte et l'image */
        min-height: auto;
    }
    .promo-card-domisys .promo-text {
        padding-right: 0;
        text-align: center; /* Centrer le texte sur mobile */
        margin-bottom: 15px;
    }
    .promo-card-domisys .promo-slogan {
        font-size: 1.2rem;
    }
}

/* Règle pour uniformiser la taille des images des produits dans la grille */
.product-img-uniform-wrapper {
    height: 180px; /* Hauteur fixe pour l'espace de l'image (ajuster si 180px est trop grand/petit) */
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px; /* Espace sous l'image */
}
.product-img-uniform-wrapper img {
    max-height: 100%;
    width: auto; 
    object-fit: contain; /* L'image s'adapte à l'espace sans être coupée, gardant le ratio */
}
