.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.ellipsis {
	white-space: nowrap; /* 1 */
	text-overflow: ellipsis; /* 2 */
	overflow: hidden;
}

@font-face {
	font-family: "icomoon";
	src: url("../fonts/icomoon.eot");
	src: url("../fonts/icomoon.eot?#iefix") format("embedded-opentype"), url("../fonts/icomoon.woff") format("woff"), url("../fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon.svgicomoon") format("svg");
	font-weight: 400;
	font-style: normal;
}

[class^="icon-"],
[class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: "icomoon" !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1; /* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.icon-phone:before {
	content: "\e900";
}

.resize-active * {
	-webkit-transition: none !important;
	transition: none !important;
}

body {
	background: #fff url(../images/body-bg.jpg) no-repeat;
	background-size: 100% 100%;
	min-width: 320px;
}

body.test-page {
	background: #fff;
}

a {
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
}

#wrapper {
	position: relative;
	overflow: hidden;
	padding: 0 0 150px;
	width: 100%;
}

#main {
	position: relative;
	overflow: hidden;
}

.form-control {
	font-size: 14px;
	line-height: 16px;
	width: 100%;
	height: 30px;
	box-shadow: none;
	outline: none;
	border: none;
	text-align: left;
	padding: 6px 12px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 500;
}

.heading {
	font-size: 21px;
	font-weight: 500;
	text-transform: uppercase;
	display: block;
}

#header {
	background-color: #444444;
	position: relative;
	overflow: hidden;
	z-index: 2;
}

#header .header-holder {
	padding: 25px 0 19px;
	position: relative;
	overflow: hidden;
}

#header .number {
	font-size: 32px;
	line-height: 35px;
	float: right;
	font-weight: 700;
	margin: 10px 0 0;
	letter-spacing: .8px;
}

#header .number a {
	display: inline-block;
	vertical-align: top;
	position: relative;
	padding: 0 43px 0 0;
	color: #fff;
}

#header .number a:hover {
	opacity: .8;
}

#header .number .icon-phone {
	position: absolute;
	font-size: 30px;
	right: 0;
	top: 2px;
}

#header .language {
	position: absolute;
	right: 0;
	top: 0;
}

#header .language.open .dropdown-menu {
	display: block;
}

#header .language a {
	font-size: 16px;
	line-height: 20px;
	font-weight: 500;
	background: #24408e;
	color: #fff;
	display: block;
	min-width: 110px;
	height: 30px;
	text-align: center;
	text-transform: uppercase;
	padding: 4px 5px;
}

#header .language a:hover {
	background: #152451;
}

#header .dropdown-menu {
	margin: 0;
	padding: 0;
	list-style: none;
	display: none;
}

.logo {
	float: left;
	width: 504px;
}

.logo a {
	display: block;
}

.logo img {
	display: block;
	height: auto;
}

.visual-area {
	position: relative;
	overflow: hidden;
	padding: 15px 0 12px;
}

.visual-slider {
	position: relative;
	overflow: hidden;
}

.visual-slider .mask {
	position: relative;
	overflow: hidden;
	width: 100%;
}

.visual-slider .slideset {
	position: relative;
	overflow: hidden;
}

.visual-slider .slide {
	position: relative;
	overflow: hidden;
}

.visual-slider .image-holder {
	position: relative;
	padding: 0;
	overflow: hidden;
}

.visual-slider .visual-caption {
	background-color: #fff;
	background-color: rgba(255, 255, 255, .74);
	position: absolute;
	padding: 15px 200px 2px 20px;
	right: 0;
	left: 0;
	top: 0;
	z-index: 3;
}

.visual-slider h1 {
	font-size: 24px;
	line-height: 27px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .1px;
	margin: 0 0 20px;
}

.visual-slider .info-holder {
	font-size: 0;
	line-height: 0;
	position: relative;
}

.visual-slider .info-holder:after {
	content: "";
	display: block;
	clear: both;
}

.visual-slider .info-holder > * {
	font-size: 15px;
	line-height: 20px;
}

.visual-slider .modal-number {
	display: inline-block;
	vertical-align: top;
	font-size: 32px;
	line-height: 33px;
	width: 90px;
	margin: 35px 26px 0 0;
}

.visual-slider .modal-number .year {
	font-size: 25px;
	line-height: 26px;
	display: block;
}

.visual-slider .price-holder {
	display: inline-block;
	vertical-align: top;
	width: 487px;
}

.visual-slider .payment {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	margin: 0 31px 0 0;
	color: #444444;
}

.visual-slider .payment .title {
	font-size: 12px;
	line-height: 14px;
	display: block;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: .4px;
	margin: 0 0 -10px;
}

.visual-slider .payment .price {
	font-size: 118px;
	line-height: 120px;
	font-weight: 700;
	display: block;
	letter-spacing: -6.8px;
}

.visual-slider .payment .price sup {
	font-size: 60px;
	line-height: 60px;
	display: inline-block;
	vertical-align: top;
	letter-spacing: 0;
	position: relative;
	top: 11px;
	right: -2px;
}

.visual-slider .payment .price .star {
	font-size: 17px;
	line-height: 20px;
	position: absolute;
	top: 7px;
	right: -7px;
}

.visual-slider .payment .price sub {
	font-size: 13px;
	line-height: 16px;
	display: inline-block;
	vertical-align: bottom;
	letter-spacing: 0;
	text-transform: uppercase;
	display: block;
	text-align: right;
	bottom: 31px;
	right: -3px;
}

.visual-slider .payment .coma {
	font-size: 45px;
	line-height: 45px;
	position: relative;
	left: 4px;
	letter-spacing: 0;
}

.visual-slider .payment.add {
	margin: 0;
}

.visual-slider .payment.add:before {
	background: #EA2439;
	content: "";
	position: absolute;
	left: -17px;
	top: 20px;
	bottom: 20px;
	width: 1px;
}

.visual-slider .total-price {
	display: inline-block;
	vertical-align: top;
	position: relative;
	width: 275px;
	font-weight: 900;
	padding: 0 0 0 31px;
	margin: 12px 0 0;
	color: #EB1F35;
	text-align: center;
	text-transform: uppercase;
}

.visual-slider .total-price .plus {
	font-size: 62px;
	line-height: 62px;
	position: absolute;
	left: 0;
	top: 6px;
}

.visual-slider .total-price .price {
	font-size: 74px;
	line-height: 70px;
	display: block;
	margin: 0 0 -2px;
}

.visual-slider .total-price sup {
	font-size: 56px;
	line-height: 50px;
	top: -11px;
	right: -5px;
}

.visual-slider .total-price .text {
	font-size: 11px;
	line-height: 13px;
	display: block;
	margin: 0 0 11px;
}

.visual-slider .total-price .note {
	font-size: 10px;
	line-height: 13px;
	font-weight: 500;
	color: #000;
	letter-spacing: .3px;
	display: block;
}

.visual-slider img {
	display: block;
	width: 100%;
	height: auto;
}

.visual-pagination {
	background-color: #fff;
	background-color: rgba(255, 255, 255, .87);
	font-size: 0;
	line-height: 0;
	position: absolute;
	padding: 13px 14px;
	margin: 0;
	top: 0;
	right: 0;
	width: 199px;
	z-index: 5;
}

.visual-pagination > * {
	font-size: 15px;
	line-height: 20px;
}

.visual-pagination li {
	position: relative;
	margin: 0 0 13px;
}

.visual-pagination li:last-child {
	margin-bottom: 0;
}

.visual-pagination .image-caption {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
	z-index: 5;
}

.visual-pagination .holder {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: column wrap;
	-ms-flex-flow: column wrap;
	flex-flow: column wrap;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-weight: 700;
	padding: 14px 5px 0;
	text-transform: uppercase;
	color: #fff;
}

.visual-pagination .name {
	font-size: 13px;
	line-height: 15px;
	display: block;
	margin: 0 0 1px;
}

.visual-pagination .number {
	font-size: 33px;
	line-height: 35px;
	display: block;
}

.planning-area {
	position: relative;
	overflow: hidden;
	margin-bottom: 14px;
}

.alert {
	margin: 10px 0px;
    padding:12px;
	border: 1px solid;
	font-size: 11px;
}

.display-error {
    color: #D8000C;
	    border-color: #FFF;
    background-color: #FFBABA;
}

.display-success {
    color: #4F8A10;
    background-color: #DFF2BF;
}

.form-area {
	background: #EB2036 url(../images/form-bg.jpg) no-repeat;
	background-size: 100% 100%;
	padding: 0 28px 32px 33px;
	position: relative;
	overflow: hidden;
	height: 100%;
}

.form-area .heading-area {
	position: relative;
	padding: 18px 0 0;
	text-align: center;
	overflow: hidden;
}

.form-area .heading-area .heading {
	color: #FFF;
	margin: 0 0 12px;
	border: 5px solid white;
}

.form-area .heading-area .arrow {
	width: 40px;
	height: 20px;
	display: block;
	border-style: solid;
	border-width: 20px 20px 0;
	border-color: #ab0200 transparent transparent;
	margin: 0 auto;
}

.form-area .field-holder {
	position: relative;
	overflow: hidden;
	margin: 0 0 10px;
}

.form-area .btn {
	font-size: 24px;
    background-color: #FFF;
    border: 0;
    color: #EB1F35;	
	line-height: 30px;
	width: 100%;
	height: 54px;
	display: block;
	font-weight: 500;
	text-transform: uppercase;
	padding: 0 5px;
	margin: 0 0 21px;
}

.form-area .checkbox-holder {
	position: relative;
	padding: 0 0 0 28px;
	overflow: hidden;
	    color: #FFF;
}

.form-area input[type="checkbox"] {
	width: 16px;
	height: 16px;
	position: absolute;
	left: 2px;
	top: 2px;
	margin: 0;
}

.form-area label {
	font-size: 16px;
	line-height: 20px;
	font-weight: 500;
	letter-spacing: -.1px;
	margin: 0;
}

.timing-area {
	background: #444444;
	color: #FFF;
	position: relative;
	overflow: hidden;
	height: 100%;
}

.timing-area .heading-area {
	background: #444444;
	padding: 18px 18px;
	text-align: center;
	margin: 0;
}

.timing-area .heading-area .heading {
	color: #fff;
	border: 5px solid white;
}

.timing-area .bottom-area {
	position: relative;
	padding: 24px 11px 24px;
	text-align: center;
	overflow: hidden;
}

/*
.timing-area .bottom-area:before {
	background: #000;
	content: "";
	position: absolute;
	top: 0;
	left: 11px;
	right: 11px;
	height: 1px;
}
*/

.timing-area .bottom-area .title {
	font-size: 20px;
	font-weight: 700;
	text-transform: uppercase;
	margin: 0 0 7px;
	display: block;
}

.timing-area .bottom-area address {
	font-size: 13px;
	line-height: 16px;
	text-transform: uppercase;
	font-weight: 500;
	margin: 0;
}

.timing-list {
	font-size: 16px;
	line-height: 19px;
	position: relative;
	overflow: hidden;
	margin: 0 0 20px;
}

.timing-list li {
	background: #545353;
    padding: 3px 10% 3px 10%;
    margin: 4px 0 0;
	overflow: hidden;
}

.timing-list li:nth-child(even) {
	background: #444444;
}

.timing-list .name {
	/*font-weight: 500;*/
	float: left;
	text-transform: uppercase;
	width: 106px;
}

.timing-list .time-holder {
	position: relative;
	overflow: hidden;
	font-weight: 500;
	text-align: center;
	text-transform: uppercase;
	color: #FFF;
}

.timing-list .bar {
	display: inline-block;
	vertical-align: middle;
}

/*.timing-list .start-time {
	float: left;
}

.timing-list .end-time {
	float: right;
}*/

#footer {
	position: relative;
}

#footer:after {
	content: "";
	display: block;
	clear: both;
}

.footer-holder {
	background-color: #D91E32;
	position: relative;
	padding: 0 5% 0 10.3%;
}

.footer-holder:after {
	content: "";
	display: block;
	clear: both;
}

.footer-holder .holder {
	font-size: 23px;
	line-height: 26px;
	position: relative;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: .9px;
	padding: 10px 0 10px 90px;
}

.footer-holder .waring-icon {
	width: 65px;
	height: 65px;
	font-size: 53px;
	line-height: 56px;
	font-weight: 700;
	position: absolute;
	background: #fff;
	border: 5px solid #000;
	border-radius: 50%;
	text-align: center;
	left: 0;
	top: -10px;
	color: #ab0200;
}

.footer-holder .waring-icon .icon {
	-moz-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	-o-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	display: block;
}

.footer-holder p {
	margin: 0;
}

@media (min-width: 1150px) {
	.visual-pagination li.style01 .holder {
		padding-top: 65px;
	}
}

@media (max-width: 1149px) {
	.logo {
		width: 470px;
	}

	.visual-slider .image-holder {
		padding: 40px 0 0;
	}

	.visual-slider .visual-caption {
		padding: 10px 175px 5px 15px;
	}

	.visual-slider h1 {
		font-size: 20px;
		line-height: 24px;
		margin: 0 0 15px;
	}

	.visual-slider .modal-number {
		width: 75px;
		margin: 35px 20px 0 0;
	}

	.visual-slider .price-holder {
		width: 380px;
	}

	.visual-slider .payment {
		margin: 0 40px 0 0;
	}

	.visual-slider .payment .title {
		margin: 0;
	}

	.visual-slider .payment .price {
		font-size: 84px;
		line-height: 84px;
	}

	.visual-slider .payment .price sup {
		font-size: 40px;
		line-height: 40px;
		top: 0;
	}

	.visual-slider .payment .price sub {
		right: -20px;
	}

	.visual-slider .total-price {
		width: 260px;
	}

	.visual-slider .total-price .text {
		margin: 0 0 5px;
	}

	.visual-pagination {
		width: 170px;
	}

	.form-area .heading-area {
		margin-bottom: 19px;
	}

	.form-area .field-holder {
		margin: 0 0 30px;
	}

	.footer-holder {
		padding: 0 5%;
	}

	.footer-holder .holder {
		font-size: 21px;
	}
}

@media (max-width: 991px) {
	#wrapper {
		padding: 0 0 100px;
	}

	.heading {
		font-size: 29px;
	}

	#header .number {
/*		padding-top: 35px;
*/		font-size: 28px;
	}

	#header .number .icon-phone {
		font-size: 26px;
		top: 5px;
	}

	.logo {
		width: 370px;
	}

	.visual-slider .image-holder {
		padding: 25px 0 0;
	}

	.visual-slider .visual-caption {
		padding: 10px 155px 10px 15px;
	}

	.visual-slider h1 {
		font-size: 16px;
		line-height: 20px;
		letter-spacing: 0;
		margin: 0 0 5px;
	}

	.visual-slider .modal-number {
		font-size: 26px;
		line-height: 28px;
		width: 65px;
		margin: 13px 15px 0 0;
	}

	.visual-slider .modal-number .year {
		font-size: 21px;
		line-height: 23px;
	}

	.visual-slider .price-holder {
		width: 320px;
	}

	.visual-slider .payment .title {
		font-size: 11px;
		line-height: 13px;
	}

	.visual-slider .payment .price {
		font-size: 60px;
		line-height: 60px;
		float: left;
		letter-spacing: 0;
	}

	.visual-slider .payment .price sup {
		font-size: 28px;
		line-height: 30px;
	}

	.visual-slider .payment .price .star {
		font-size: 14px;
		line-height: 17px;
		top: 0;
	}

	.visual-slider .payment .price sub {
		font-size: 11px;
		line-height: 13px;
		right: -24px;
		bottom: 24px;
	}

	.visual-slider .payment .coma {
		font-size: 35px;
		line-height: 35px;
		left: 2px;
	}

	.visual-slider .payment.add:before {
		left: -10px;
	}

	.visual-slider .total-price {
		padding: 0 0 0 26px;
		margin: 0;
		width: 140px;
	}

	.visual-slider .total-price .plus {
		font-size: 45px;
		line-height: 45px;
	}

	.visual-slider .total-price .price {
		font-size: 40px;
		line-height: 40px;
		margin: 0;
	}

	.visual-slider .total-price sup {
		font-size: 34px;
		line-height: 36px;
		right: 0;
	}

	.visual-slider .total-price .text {
		margin: 0;
	}

	.visual-pagination {
		width: 150px;
		padding: 10px 14px;
	}

	.visual-pagination li {
		margin: 0 0 10px;
	}

	.visual-pagination .name {
		font-size: 11px;
		line-height: 13px;
	}

	.visual-pagination .number {
		font-size: 26px;
		line-height: 30px;
	}

	.planning-area {
		margin-bottom: 40px;
	}

	.form-area .heading-area {
		margin-bottom: 14px;
	}

	.form-area .field-holder {
		margin: 0 0 20px;
	}

	.timing-area .bottom-area .title {
		font-size: 25px;
	}

	.timing-list li {
		padding: 5px 7% 2px;
	}

	.timing-list .name {
		width: 120px;
	}

	.footer-holder {
		padding: 0;
	}

	.footer-holder .holder {
		font-size: 18px;
		line-height: 22px;
		padding: 10px 0 10px 75px;
		letter-spacing: .5px;
	}
}

@media (max-width: 767px) {
	#wrapper {
		padding: 0 0 50px;
	}

	.heading {
		font-size: 27px;
	}

	#header .number {
		font-size: 24px;
		line-height: 37px;
		margin: 0;
		float: none;
		text-align: center;
		display: block;
	}

	#header .number a {
		padding: 10px 0 0 0;
	}

	#header .number .icon-phone {
		font-size: 23px;
		right: -30px;
		top: 15px;
	}

	.logo {
		float: none;
		display: block;
		width: 163px;
		margin: 0 auto 5px;
	}

	.visual-area {
		padding: 25px 0 12px;
	}

	.visual-slider .slide img {
		position: relative;
		/*width: 767px;
		left: 50%;
		margin: 0 0 0 -384px;*/
	}

	.visual-slider .image-holder {
		padding: 30px 0 0;
	}

	.visual-slider .visual-caption {
		padding: 10px;
	}

	.visual-slider h1 {
		font-size: 14px;
		line-height: 18px;
		text-align: center;
	}

	.visual-slider .modal-number {
		text-align: center;
		display: block;
		margin: 0 auto 5px;
	}

	.visual-slider .price-holder {
		display: block;
		margin: 0 auto 5px;
	}

	.visual-slider .total-price {
		display: block;
		margin: 0 auto;
	}

	.visual-slider .total-price .plus {
		top: 50%;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	.visual-pagination {
		position: relative;
		padding: 10px 5px;
		text-align: center;
		width: 100%;
	}

	.visual-pagination li {
		display: inline-block;
		vertical-align: top;
		width: 33.33%;
		padding: 0 5px;
		margin: 0;
	}

	.visual-pagination .image-caption {
		left: 5px;
		right: 5px;
	}

	.visual-pagination .holder {
		padding: 0 10px;
	}

	.planning-area {
		margin-bottom: 25px;
	}

	.planning-area .same-height {
		height: auto !important;
		margin-top: 20px;
	}

	.form-area {
		padding: 0 15px 10px;
	}

	.form-area .btn {
		font-size: 20px;
		line-height: 26px;
		margin: 0 0 15px;
		padding: 2px 5px 0;
		height: 45px;
	}

	.form-area label {
		font-size: 14px;
		line-height: 18px;
		letter-spacing: 0;
	}

	.timing-area .bottom-area .title {
		font-size: 22px;
	}

	.timing-list {
		font-size: 14px;
		line-height: 17px;
		margin: 0 0 15px;
	}

	.timing-list li {
		padding: 4px 5% 3px;
	}

	.timing-list .name {
		width: 110px;
	}

	.footer-holder .holder {
		letter-spacing: 0;
	}

	.footer-holder .waring-icon {
		font-size: 36px;
		line-height: 41px;
		width: 45px;
		height: 45px;
		border-width: 3px;
		top: 50%;
		margin: -21px 0 0;
	}
}

@media (max-width: 479px) {
	.heading {
		font-size: 22px;
	}

	.logo {
		width: 163px;
	}

	.visual-slider .price-holder {
		width: 280px;
	}

	.visual-slider .payment {
		margin: 0 30px 0 0;
	}

	.visual-slider .payment .price {
		font-size: 46px;
		line-height: 46px;
	}

	.visual-slider .payment .price sup {
		font-size: 22px;
		line-height: 24px;
	}

	.visual-slider .payment .price sub {
		bottom: 18px;
	}

	.visual-slider .payment.add:before {
		top: 10px;
	}

	.visual-slider .payment.add .price sub {
		right: -32px;
	}

	.visual-pagination li {
		margin: 0 0 10px;
		width: 50%;
	}

	.form-area .heading-area .arrow {
		width: 30px;
		height: 15px;
		border-width: 15px 15px 0;
	}

	.timing-area .bottom-area .title {
		font-size: 19px;
	}

	.footer-holder .holder {
		font-size: 15px;
		line-height: 18px;
		padding: 10px 5px 10px 55px;
	}
}

