

/* Desktop */
.overlap-background { display: none; }

/* <nav> */
.responsivemenu {
	position: relative;
	z-index: 100;
	min-width: 280px;
	margin-left: 1%;
}

/* main ul */
.responsivemenu-list {
	text-align: left;
	margin: 0 auto 0 auto;
	width: 100%;
	display: table;
	padding: 0px;
}
.responsivemenu-list > li {
	text-align: center;
	display: inline-block;
	position: relative;
}

.responsivemenu-list > li > a .fa {
	display: inline-block;
	font-size: 14px;
	line-height: inherit;
	margin-right: 0px;
}

.responsivemenu-list li ul li a .fa.fa-angle-double-right { font-size: 12px; margin: 0 3px 0 -4px;}

.responsivemenu-list li a .arrow:after {
	border-left: 4px solid rgba(0, 0, 0, 0);
	border-right: 4px solid rgba(0, 0, 0, 0);
	border-top: 4px solid #b3b3b3;
	content: "";
	float: right;
	height: 0;
	margin: 0 0 0 9px;
	position: absolute;
	text-align: right;
	top: 22px;
	width: 0;
}
.responsivemenu-list > li > a {
	display: block;
	color: #000;
	padding: 0 60px 0 0;
	line-height: 22px;
	text-decoration: none;
	position: relative;
	font-size: 20px;
}
.responsivemenu-list > li > a:hover, .responsivemenu-list > li > a:active, .responsivemenu-list > li > a.active { color: #e30613; }
.responsivemenu-list li a:hover .arrow:after {
	border-top-color: #b1b1b1
}
.responsivemenu-list li a.active .arrow:after {
	border-top-color: #b1b1b1
}
.responsivemenu-list li:hover > a .arrow:after {
	border-top-color: #b1b1b1
}
.responsivemenu-list li:hover .responsivemenu-submenu { opacity: 1; }


/* 1st ul */
.responsivemenu-submenu {
	padding: 1%;
	left: 0px;
	position: absolute;
	top: 22px;
	color: #000;
	z-index: 99999999;
	margin: 0px 45px 0 0;
	text-align: left;
	border: 0px none;
	background-color: rgba(255,255,255,0.95);
	display: none;
	-o-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	-moz-transform-origin: 0% 0%;
	-webkit-transform-origin: 0% 0%;
	-o-transition: -o-transform 0.6s, opacity 0.3s;
	-ms-transition: -ms-transform 0.6s, opacity 0.3s;
	-moz-transition: -moz-transform 0.6s, opacity 0.3s;
	-webkit-transition: -webkit-transform 0.6s, opacity 0.3s;
	-webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.5);
	box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.5);
	background-size: 98% 96%;
	background-position: center center;
	background-repeat: no-repeat;
	min-width: 100%;
}
.responsivemenu-submenu .col-3 {
	width: 24.2%;
	margin: 0 .4%;
}

.responsivemenu-submenu li {
	position: relative;
	margin: 0px;
    padding: 3px 10px;
}

.responsivemenu-submenu li a {
	background: #fff;
	background-image: none !important;
	color: #666666 !important;
	border-right: 0 none !important;
	text-align: left;
	display: block;
	padding: 8px 12px 4px 12px;
	text-transform: none;
	font-size: 18px;
	line-height: 18px;
	letter-spacing: normal;
	border-right: 0px solid;
	white-space: nowrap;
}

.responsivemenu-submenu li.hover a { background-color: #e5efff; }
.responsivemenu-list .responsivemenu-submenu li.hover a.active-sub { color: #e30613; }

/* 2nd ul */
.responsivemenu-submenu-sub{
	width:100% !important;
	position: absolute;
	left:100% !important;
	top:0 !important;
	display:none;
	margin:0px !important;
	padding:0px !important;
	border:solid 0px !important;
	transform:none !important;
	opacity:1 !important;
	visibility:visible !important;
}
.responsivemenu-submenu-sub li { position:relative; background-color: #F0F0F1; }
.responsivemenu-submenu-sub li a { border-bottom: 1px solid #FFF; }

.responsivemenu-list li:hover .responsivemenu-submenu { display: block; }

.responsivemenu-list .responsivemenu-submenu .responsivemenu-submenu-sub {
	min-width: 220px;
	position: absolute;
	left: 100%;
	top: 0;
	margin: 0px;
	padding: 0px;
	opacity: 0;
	-o-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	-moz-transform-origin: 0% 0%;
	-webkit-transform-origin: 0% 0%;
	-o-transition: -o-transform 0.4s, opacity 0.4s;
	-ms-transition: -ms-transform 0.4s, opacity 0.4s;
	-moz-transition: -moz-transform 0.4s, opacity 0.4s;
	-webkit-transition: -webkit-transform 0.4s, opacity 0.4s;
}

.responsivemenu-list .responsivemenu-submenu li:hover .responsivemenu-submenu-sub {
	opacity: 1;
	list-style: none;
	padding: 2px;
	border: solid 1px #eeeeee;
	background-color: #fff;
}
.responsivemenu-list .responsivemenu-submenu li:hover .responsivemenu-submenu-sub {
	display: block;
}
.responsivemenu-list .responsivemenu-submenu .responsivemenu-submenu-sub .responsivemenu-submenu-sub-2 {
	min-width: 220px;
	position: absolute;
	left: 100%;
	top: 0;
	margin: 0px;
	padding: 0px;
	opacity: 0;
	-o-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	-moz-transform-origin: 0% 0%;
	-webkit-transform-origin: 0% 0%;
	-o-transition: -o-transform 0.4s, opacity 0.4s;
	-ms-transition: -ms-transform 0.4s, opacity 0.4s;
	-moz-transition: -moz-transform 0.4s, opacity 0.4s;
	-webkit-transition: -webkit-transform 0.4s, opacity 0.4s;
}

.responsivemenu-list .responsivemenu-submenu .responsivemenu-submenu-sub li:hover .responsivemenu-submenu-sub-2 {
	opacity: 1;
	list-style: none;
	padding: 2px;
	border: solid 1px #eeeeee;
	background-color: #fff;
}

.responsivemenu-submenu li {
	position: relative;
	padding: 0px;
	margin: 0px;
	display: block;
}

.responsivemenu-click {
	display: none;
}
.responsivemenu-click-lvl2 {
	display: none;
}

/* Default Theme */
.responsivemenu-list li:hover > a {
	text-decoration: none;
}
.responsivemenu-list > li > a:hover {
	text-decoration: none;
}
.responsivemenu-list > li > a.active {
	text-decoration: none;
}
.responsivemenu-submenu > li > a:hover {
	background-color: rgba(0,0,0,0.08) !important;
	border-radius: 0px !important;
	text-decoration: none;
	text-decoration: none;
}
.responsivemenu-submenu .fa {
	margin-right: 7px;
}



/* responsive */
/*@media only screen and (min-width: 1085px) and (max-width: 1200px) { 
	.responsivemenu-list li a {
		padding: 0 25px;
		font-size: 20px;
	}
}
@media only screen and (min-width: 985px) and (max-width: 1084px) { 
	.responsivemenu-list li a {
		padding: 0 20px;
		font-size: 19px;
	}
}
@media only screen and (min-width: 885px) and (max-width: 984px) { 
	.responsivemenu-list li a {
		padding: 0 15px;
		font-size: 18px;
	}
}
@media only screen and (min-width: 781px) and (max-width: 884px) { 
	.responsivemenu-list li a {
		padding: 0 8px;
		font-size: 18px;
	}
}*/


@media only screen and (min-width: 781px) and (max-width: 1200px) {
	.responsivemenu {
		margin-left: 2%;
	}
	.responsivemenu-list li a .arrow:after {
		display: none !important;
	}
}

@media only screen and (min-width: 781px) {
	.responsivemenu-list li:hover > .responsivemenu-submenu { display: block !important; }
	.responsivemenu-submenu li:hover > .responsivemenu-submenu-sub { display: block !important;	}
	.responsivemenu-submenu-sub li:hover > .responsivemenu-submenu-sub-sub { display: block !important;	}
	.responsivemenu-list li:hover > .responsivemenu-submenu { display: block !important; }
}

/*------------------------------------ Mobile CSS ---------------------------------------------*/
@media only screen and (max-width: 780px) {
	.responsivemenu-offcanvas-opener .responsivemenu {
		left: 0px;
		-webkit-transition: all 0.4s ease-in-out;
		-moz-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		-ms-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
	}

	.responsivemenucontainer.responsivemenu-offcanvas-opener {
		display: block;
		padding-left: 280px; 
	}

	.overlap-background {
		left: 0;
		z-index: 102;
		width: 100%;
		height: 100%;
		position: fixed;
		-webkit-backface-visibility: hidden;
		top: 0;
		display: none;
		background-color: rgba(0, 0, 0, 0.45);
		cursor: pointer;
	}

	.responsivemenu-offcanvas-opener .overlap-background {
		position: fixed;
		-webkit-backface-visibility: hidden;
	}

	.responsivemenu-list > li:hover > a {
		/*background-color: rgba(0,0,0,0.08) !important;*/
		text-decoration: none;
	}

	/* Default Theme */
	.responsivemenu-submenu > li:hover > a {
		/*background-color: #b1b1b1;*/
	}
	.responsivemenu > .responsivemenu-list > li > a.active {
		/*background-color: #b1b1b1;*/
	}
	.responsivemenu > .responsivemenu-list > li > a:hover {
		/*background-color: #b1b1b1;*/
	}

	.responsivemenu-list li:hover .responsivemenu-submenu {
		display: none;
	}
	.responsivemenu-list li:hover .responsivemenu-submenu .responsivemenu-submenu-sub {
		display: none;
	}
	.responsivemenu-list .responsivemenu-submenu .responsivemenu-submenu-sub li:hover .responsivemenu-submenu-sub-2 {
		display: none;
		list-style: none;
		padding: 2px;
		border: solid 1px #eeeeee;
		background-color: #fff;
	}
	.responsivemenu-list li:first-child a {
		-webkit-border-radius: 0px 0px 0px 0px;
		-moz-border-radius: 0px 0px 0px 0px;
		border-radius: 0px 0px 0px 0px;
	}
	.responsivemenu-list li:last-child a {
		-webkit-border-radius: 0px 4px 0px 0px;
		-moz-border-radius: 0px 0px 0px 0px;
		border-radius: 0px 0px 0px 0px;
		border-right: 0px solid;
	}

	.responsivemenucontainer {
		overflow: hidden;
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		min-height: 800px;
		-webkit-transition: all 0.4s ease-in-out;
		-moz-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		-ms-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
	}

	/* Mobile click to drop arrow */
	.responsivemenu-click {
		height: 43px;
		width: 43px;
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		cursor: pointer;
		background-color: #e5efff;
	}

	.responsivemenu-click i {
		display: block;
		height: 23px;
		width: 25px;
		margin-top: 11px;
		margin-right: 8px;
		background-size: 25px;
		font-size: 21px;
		color: rgba(0,0,0,0.25);
		float: right;
	}

	.responsivemenu-click-lvl2 {
		height: 43px;
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		cursor: pointer;
		width: 100%;
	}

	.responsivemenu-click-lvl2 i {
		display: block;
		height: 23px;
		width: 25px;
		margin-top: 11px;
		margin-right: 8px;
		background-size: 25px;
		font-size: 21px;
		color: rgba(0,0,0,0.25);
		float: right;
	}

	.ws-activearrow > i {
		transform: rotate(180deg);
	}

	.responsivemenu-rotate {
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		-o-transform: rotate(180deg);
		transform: rotate(180deg);
	}

	/*2nd UL Style*/
	.responsivemenu-submenu-sub {
		width: 100% !important;
		position: static !important;
		left: 100% !important;
		top: 0 !important;
		display: none;
		margin: 0px !important;
		padding: 0px !important;
		border: solid 0px !important;
		transform: none !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.responsivemenu-submenu-sub li {
		margin: 0px 0px 0px 0px !important;
		padding: 0px;
		position: relative;
	}

	.responsivemenu-submenu-sub a {
		display: block;
		padding: 10px 25px 10px 25px;
		border-bottom: solid 1px #ccc;
		font-weight: normal;
	}

	.responsivemenu-submenu-sub li a.active {
		/*color: #000 !important;*/
	}

	.responsivemenu-submenu-sub li:hover > a {
		/*background-color: #333333 !important;
		color: #fff;*/
	}

	.responsivemenu-list > li > a .fa {
		margin-right: 6px;
	}

	.responsivemenu-submenu-sub-2 {
		width: 100% !important;
		position: static !important;
		left: 100% !important;
		top: 0 !important;
		display: none;
		margin: 0px !important;
		padding: 0px !important;
		border: solid 0px !important;
		transform: none !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	.responsivemenu-submenu-sub-2 li {
		margin: 0px 0px 0px 0px !important;
	}

	.responsivemenu-submenu-sub-2 a {
		display: block;
		color: #000;
		padding: 10px 25px;
		background: #000 !important;
		border-bottom: solid 1px #ccc;
		font-weight: normal;
	}

	.responsivemenu-submenu-sub-2 li a.active {
		color: #000 !important;
	}
	.responsivemenu-submenu-sub-2 li:hover > a {
		background-color: #606060 !important;
		color: #fff;
	}
	.responsivemenu {
		position: relative;
	}

	.responsivemenu .responsivemenu-list {
		height: 100%;
		overflow-y: auto;
		display: block !important;
	}

	.responsivemenu .responsivemenu-list > li {
		width: 100%;
		display: block;
		float: none;
		border-right: none;
		background-color: transparent;
		position: relative;
		white-space: inherit;
	}

	.responsivemenu > .responsivemenu-list > li > a {
		padding: 9px 32px 9px 17px;
		font-size: 14px;
		text-align: left;
		border-right: solid 0px;
		background-color: transparent;
		color: #666666;
		line-height: 25px;
		border-bottom: 1px solid;
		border-bottom-color: rgba(0,0,0,0.13);
		position: static;
	}

	.responsivemenu > .responsivemenu-list > li > a > .fa {
		font-size: 16px;
		color: #bfbfbf;
	}
	.responsivemenu .responsivemenu-list li a .arrow:after {
		display: none !important;
	}
	.responsivemenu .responsivemenu-list li ul li a .fa.fa-caret-right {
		font-size: 12px !important;
		color: #8E8E8E;
	}

	.responsivemenu-list .responsivemenu-submenu {
		transform: none !important;
		opacity: 1 !important;
		display: none;
		position: relative !important;
		top: 0px;
		background-color: #fff;
		/*border: solid 1px #ccc;*/
		padding: 0px;
		visibility: visible !important;
			
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;

	}

	.responsivemenu-list .responsivemenu-submenu li a {
		line-height: 20px;
		background-color: #e5efff !important;
		font-size: 13px !important;
		padding: 8px 0px 8px 18px;
		color: #8E8E8E;
	}

	.responsivemenu-list .responsivemenu-submenu li a:hover {
		background-color: #e5efff !important;
		color: #666666;
	}
	.responsivemenu-list .responsivemenu-submenu li:hover > a {
		background-color: #e5efff !important;
		color: #666666;
	}
	.responsivemenu-list .responsivemenu-submenu li .responsivemenu-submenu-sub li a {
		line-height: 20px;
		background-color: #e7e7e7 !important;
		border-bottom: none;
		padding-left: 28px;
	}
	.responsivemenu-list .responsivemenu-submenu li .responsivemenu-submenu-sub li .responsivemenu-submenu-sub-2 li a {
		line-height: 20px;
		height: 36px;
		background-color: #e7e7e7 !important;
		border-bottom: none !important;
		padding-left: 38px;
		color: #8e8e8e;
	}
	.responsivemenu {
		width: 280px;
		left: -280px;
		height: 100%;
		position: fixed;
		-webkit-backface-visibility: hidden;
		top: 0;
		margin: 0;
		background-color: #fff;
		border-radius: 0px;
		z-index: 103;
		-webkit-transition: all 0.4s ease-in-out;
		-moz-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		-ms-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
		border: none !important;
		background-color: #fff !important;
	}

	/* Navigation arrow Animation */
	.animated-arrow {
		position: relative;
		float: right;
		right: 0;
		top: 0;
		z-index: 102;
		-webkit-transition: all 0.4s ease-in-out;
		-moz-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		-ms-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
		padding: 18px 35px 16px 10px;
	}

	.responsivemenu-offcanvas-opener .animated-arrow {
		position: fixed;
		left: 280px;
		background-color: #FFF;
		z-index: 9999;
		right: auto;
		padding: 15px 35px 28px 10px;
	}

	.animated-arrow {
		cursor: pointer;
		display: block;
		padding: 18px 35px 16px 10px;
		margin: 0px 5px 5px 0;
	}

	.animated-arrow span, .animated-arrow span:before, .animated-arrow span:after {
		cursor: pointer;
		height: 3px;
		width: 23px;
		background: #1e4398;
		position: absolute;
		display: block;
		content: '';
	}

	.animated-arrow span:before {
		top: -7px;
	}

	.animated-arrow span:after {
		bottom: -7px;
	}

	.animated-arrow span, .animated-arrow span:before, .animated-arrow span:after {
		transition: all 500ms ease-in-out;
	}

	.responsivemenu-offcanvas-opener .animated-arrow span {
		background-color: transparent;
	}

	.responsivemenu-offcanvas-opener .animated-arrow span:before, .animated-arrow.active span:after {
		top: 7px;
	}

	.responsivemenu-offcanvas-opener .animated-arrow span:before {
		transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		bottom: 0px;
	}

	.responsivemenu-offcanvas-opener .animated-arrow span:after {
		transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}

	/*Animation None */
	.responsivemenu-list li > .responsivemenu-submenu {
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		visibility: visible !important;
	}

	.responsivemenu-list li:hover > .responsivemenu-submenu {
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		visibility: visible !important;
	}

	.responsivemenu-submenu li > .responsivemenu-submenu-sub {
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		visibility: visible !important;
	}

	.responsivemenu-submenu li:hover > .responsivemenu-submenu-sub {
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.responsivemenu-submenu-sub li > .responsivemenu-submenu-sub-2 {
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.responsivemenu-submenu-sub li:hover > .responsivemenu-submenu-sub-2 {
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		transform: none !important;
		-o-transform: none !important;
		-moz-transform: none !important;
		-webkit-transform: none !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

}

@media only screen and (max-width: 1500px) {
	.responsivemenu-list > li > a { padding: 0 48px 0 0; }
}
@media only screen and (max-width: 1400px) {
	.responsivemenu-list > li > a {	padding: 0 35px 0 0; }
}
@media only screen and (max-width: 1280px) {
	.responsivemenu-list > li > a { padding: 0 16px 0 0; }
	.responsivemenu-list li a { font-size: 18px; }
}
@media only screen and (max-width: 1024px) {
	.responsivemenu-list > li > a { padding: 0 21px 0 0; }
	.responsivemenu-list li a {
		font-size: 16px;		
	}
}
@media only screen and (max-width: 980px) {
	.responsivemenu-list > li > a { padding: 0 16px 0 0; }
	.responsivemenu-list li a {
		font-size: 15px;
	}
}
@media only screen and (max-width: 900px) {
	.responsivemenu-list > li > a { padding: 0 10px 0 0; }
	.responsivemenu-list li a {
		font-size: 14px;
	}
}

@media only screen and (min-width: 780px) and (max-width: 1023px) {
	.responsivemenu-list > li > a > .fa { display: none !important; }
	.responsivemenu {
		font-size: 16px !important;
	}
}
