/******************
    - General -
******************/
.smartmenu {
	position:relative;
	display:inline-block;
	padding:0;
  	margin:0;  	
}

.smartmenu:before,
.smartmenu ul,
.smartmenu li,
.smartmenu div,
.smartmenu a,
.smartmenu label,
.smartmenu input,
.smartmenu textarea {
  	margin:0;
  	padding:0;
  	outline:none;
 	border:0;
  	list-style:none;
	-webkit-box-sizing:border-box;
  	   -moz-box-sizing:border-box;
  			box-sizing:border-box;
}

.smartmenu a {
  	cursor:pointer;
}

.smartmenu h4 {
	font-size:28px;
	line-height:28px;
	margin-bottom:10px;
	font-weight:bold;
	border:none;	
}

.smartmenu p {
	font-weight:normal;
	line-height:20px;
	margin:0 0 10px 0;
}

.smartmenu .sm-no-space {
	padding:0 !important;
	margin:0 !important;	
}

.smartmenu .sm-space-20 {
	padding:20px !important;
	margin:0 !important;	
}

.smartmenu.sm-full-width {
 	 display:block;
}

.smartmenu.sm-fixed {
  	position:fixed;
	z-index: 2;
  	top:0;
  	left:0;
  	right:0;
}

.smartmenu.sm-fixed.sm-position-left {
  	top:0;
  	bottom:0;
  	left:0;
  	right:auto;
}

.smartmenu.sm-fixed.sm-position-right {
  	top:0;
  	bottom:0;
  	left:auto;
  	right:0;
}

.smartmenu.sm-fixed.sm-position-bottom {
  	top:auto;
  	bottom:0;
  	left:0;
  	right:0;
}

.smartmenu > li {
  	display:block;
  	vertical-align:top;
  	float:left;
  	height:50px;
}

.smartmenu > li.sm-responsive-toggle {
	display:none;
}

.smartmenu > li.sm-right-item {
  	margin-right:0;
  	float:right;
}

.smartmenu > li > a,
.smartmenu > li.sm-responsive-toggle > span {
  	font-weight:normal;
  	padding:0 20px;
  	line-height:50px;
}

.smartmenu > li.sm-responsive-toggle > span {
	font-weight:bold;
}

.smartmenu li {
  	position:relative;
  	cursor:default;
}

.smartmenu li > a,
.smartmenu > li.sm-responsive-toggle > span {
 	text-decoration:none;
  	display:block;
}

.smartmenu li > ul,
.smartmenu li > div {
  	z-index:1;
}

.smartmenu.sm-position-left > li,
.smartmenu.sm-position-right > li {
  	position:relative !important;
}

.smartmenu.sm-position-left > li,
.smartmenu.sm-position-right > li,
.smartmenu.sm-position-left > li.sm-logo,
.smartmenu.sm-position-right > li.sm-logo {
  	float:none;
}

.smartmenu.sm-position-left > li > a .sm-caret,
.smartmenu.sm-position-right > li > a .sm-caret {
  	float:right;
}

.smartmenu .sm-caret {
  	letter-spacing:0 !important;
  	float:right;
  	margin-left:8px;
}

.smartmenu > li > a .sm-caret {
  	float:none;
}

.smartmenu .sm-single-icon {
  	letter-spacing:0 !important;
}

.smartmenu:after {
  	content:'';
  	display:block;
  	clear:both;
}

/***************
    - Logo -
***************/
.smartmenu > li.sm-logo {
  	float:left;
  	margin-left:0;
  	font-size:0;
}

.smartmenu > li.sm-logo a {
  	padding:0;
  	line-height:0;
}

.smartmenu > li.sm-logo img {
 	max-width:100%;
  	max-height:100%;
  	border:none;
}

/************************
    - Menu dropdown -
************************/
.smartmenu ul,
.smartmenu div.sm-multi-column {
  	position:absolute;
  	display:none;
}

.smartmenu ul > li {
  	min-height:50px;
}

.smartmenu ul > li a {
  	padding:0 20px;
  	line-height:50px;
}

.smartmenu > li > ul,
.smartmenu > li > div.sm-multi-column {
  	top:100%;
  	left:0;
}

.smartmenu > li > ul ul,
.smartmenu > li > div.sm-multi-column ul {
  	top:0;
  	left:100%;
}

.smartmenu > li > ul ul.sm-drop-left,
.smartmenu > li > div.sm-multi-column ul.sm-drop-left {
  	left:auto;
  	right:100%;
}

.smartmenu.sm-position-bottom > li > ul,
.smartmenu.sm-position-bottom > li > div.sm-multi-column {
  	top:auto;
  	bottom:100%;
  	left:0;
}

.smartmenu.sm-position-bottom > li > ul ul,
.smartmenu.sm-position-bottom > li > div.sm-multi-column ul {
  	top:auto;
  	bottom:0;
  	left:100%;
}

.smartmenu.sm-position-bottom > li > ul ul.sm-drop-left,
.smartmenu.sm-position-bottom > li > div.sm-multi-column ul.sm-drop-left {
  	left:-100%;
}

.smartmenu.sm-position-left > li > ul,
.smartmenu.sm-position-left > li > div.sm-multi-column {
  	top:0;
  	left:100%;
}

.smartmenu.sm-position-left > li > ul ul.sm-drop-left,
.smartmenu.sm-position-left > li > div.sm-multi-column ul.sm-drop-left {
 	top:0;
  	left:100%;
}

.smartmenu.sm-position-right > li > ul,
.smartmenu.sm-position-right > li > div.sm-multi-column {
  	top:0;
  	left:auto;
  	right:100%;
}

.smartmenu.sm-position-right > li > ul ul.sm-drop-left,
.smartmenu.sm-position-right > li > div.sm-multi-column ul.sm-drop-left {
  	top:0;
  	left:auto;
  	right:100%;
}

.smartmenu.sm-position-right > li > ul ul,
.smartmenu.sm-position-right > li > div.sm-multi-column > ul ul {
  	top:0;
  	left:auto;
  	right:100%;
}

.smartmenu li:hover > ul,
.smartmenu li:hover > div.sm-multi-column,
.smartmenu li:hover > div.sm-multi-column > ul {
  	display:block;
}

.smartmenu li > div.sm-multi-column > ul,
.smartmenu.sm-position-bottom li > div.sm-multi-column > ul {
  	left:0;
  	float:left;
}

.smartmenu > li > div.sm-multi-column > ul {
  	position:relative;
  	display:inline-block;
}

.smartmenu > li.sm-right-align > ul,
.smartmenu > li.sm-right-align > div.sm-multi-column {
  	left:auto;
  	right:0;
}

.smartmenu.sm-position-left > li.sm-right-align > ul,
.smartmenu.sm-position-left > li.sm-right-align > div.sm-multi-column {
  	left:100%;
  	right:auto;
}

.smartmenu.sm-position-left > li.sm-right-align > ul,
.smartmenu.sm-position-left > li.sm-right-align > div.sm-multi-column {
  	right:100%;
}

/***************************
    - Content dropdown -
***************************/
.smartmenu > li.sm-content-full {
  	position:static;
}

.smartmenu > li.sm-content-full > div {
  	width:100%;
}

.smartmenu > li.sm-content > div,
.smartmenu > li.sm-content-full > div {
  	position:absolute;
  	display:none;
  	left:0;
  	padding:15px;
}

.smartmenu > li.sm-content > div ul,
.smartmenu > li.sm-content-full > div ul {
  	display:block;
  	position:relative;
  	min-width:0;
}

.smartmenu > li.sm-content > div ul li a,
.smartmenu > li.sm-content-full > div ul li a,
.smartmenu > li.sm-content > div ul li a:visited,
.smartmenu > li.sm-content-full > div ul li a:visited {
  	padding:10px 0;
  	line-height:1em;
}

.smartmenu > li.sm-content > div ul li:hover,
.smartmenu > li.sm-content-full > div ul li:hover {
  	background-color:transparent;
}

.smartmenu > li.sm-content > div ul li:hover a,
.smartmenu > li.sm-content-full > div ul li:hover a,
.smartmenu > li.sm-content > div ul li:hover a:visited,
.smartmenu > li.sm-content-full > div ul li:hover a:visited {
  	text-decoration:none;
}

.smartmenu > li.sm-content > div img,
.smartmenu > li.sm-content-full > div img {
  	width:100%;
  	margin:15px 0;
}

.smartmenu > li.sm-content > div .sm-video,
.smartmenu > li.sm-content-full > div .sm-video {
  	position:relative;
  	padding-bottom:56.25%;
  	height:0;
  	margin:15px 0;
  	overflow:hidden;
}

.smartmenu > li.sm-content > div .sm-video > iframe,
.smartmenu > li.sm-content-full > div .sm-video > iframe {
  	position:absolute;
  	left:0;
  	top:0;
  	height:100%;
  	width:100%;
}

.smartmenu > li.sm-content:hover > div,
.smartmenu > li.sm-content-full:hover > div {
  	display:block;
}

.smartmenu > li.sm-content > div,
.smartmenu > li.sm-content-full > div {
  	top:100%;
}

.smartmenu.sm-position-bottom > li.sm-content > div,
.smartmenu.sm-position-bottom > li.sm-content-full > div {
  	top:auto;
  	bottom:100%;
}

.smartmenu.sm-position-left > li.sm-content > div,
.smartmenu.sm-position-left > li.sm-content-full > div {
  	top:0;
  	left:100%;
}

.smartmenu.sm-position-right > li.sm-content > div,
.smartmenu.sm-position-right > li.sm-content-full > div {
  	top:0;
  	right:100%;
  	left:auto;
}

.smartmenu > li.sm-content.sm-right-align > div,
.smartmenu > li.sm-content-full.sm-right-align > div {
  	left:auto;
  	right:0;
}

.smartmenu.sm-position-left > li.sm-content.sm-right-align > div,
.smartmenu.sm-position-left > li.sm-content-full.sm-right-align > div {
  	left:100%;
  	right:auto;
}

/********************
    - Mega menu -
********************/
.smartmenu .sm-submenu {
	width:auto;	
}

.smartmenu .sm-submenu > li {
	min-height:0 !important;	
}

.smartmenu .sm-submenu > li > a {
	padding:10px 0;
	margin:0;
}

.smartmenu .sm-submenu span {
	display:block;
	clear:both;
}

.smartmenu .sm-submenu .sm-icon {
	width:1.3em;
	text-align:center;
	line-height:1em;
	vertical-align:middle;	
	letter-spacing:0 !important;
}

.smartmenu .sm-submenu .sm-submenu-description {
	padding-top:3px;	
}

.smartmenu .sm-submenu-with-image img {
	float:left !important;
	width:auto !important;
	margin:0 !important;
}

.smartmenu .sm-submenu-with-image span {
	padding-left:50px;
	clear:none;
}

.smartmenu .sm-submenu-with-image .sm-submenu-title {
	padding-top:4px !important;
}

.smartmenu .sm-custom-bg {
	background-repeat:no-repeat;
	background-position:right bottom;
}

/*****************
    - Images -
*****************/
.smartmenu .sm-image {
	display:block;
    max-width:100%;
    height:auto;
}

.smartmenu .sm-title {
	font-weight:bold;
	font-size:16px;
	line-height:23px;
}

.smartmenu .sm-description {
    font-size:15px;
	line-height:22px;
}

/******************
    - Contact -
******************/
.smartmenu .sm-map-canvas {
	width:100%;
	height:435px;
}

.smartmenu .sm-map-canvas img {
    max-width:none;
}

.smartmenu .sm-contact-form {
	padding:20px;
}

.smartmenu input[type=text],
.smartmenu input[type=email],
.smartmenu textarea {
  	width:100%;
	max-width:100%;
	max-height:150px;
    margin:0;
	padding:8px;
	border-radius:0;
	font:inherit;    
   	-webkit-transition:all .3s;
	   -moz-transition:all .5s;
	   		transition:all .5s;
}

.smartmenu input.sm-button {
  	cursor:pointer;
  	display:inline-block;
  	text-decoration:none;
  	text-align:center;
  	font-weight:normal;
  	padding:15px;
}

.smartmenu input[type=submit] {
	clear:both;
	display:block;
	float:right;
	margin:0;
	padding:8px 30px;    
	font:inherit;
    font-weight:bold;
    border:0;   
	text-decoration:none;
	cursor:pointer;
	-webkit-transition:all .3s;
	   -moz-transition:all .5s;
	   		transition:all .5s;
}

input:focus {
    outline:0;
}

/**********************
    - Grid system -
**********************/
.smartmenu .sm-row {
  	display:block;
}

.smartmenu .sm-row .sm-col {
  	display:inline-block;
  	margin-bottom:5px;
  	padding:5px;
  	vertical-align:top;
  	float:left;
}

.smartmenu .sm-row .sm-col > .sm-grid-wrapper {
  	padding:10px 15px;
  	-webkit-border-radius:5px;
  	   -moz-border-radius:5px;
  			border-radius:5px;
}

.smartmenu .sm-row .sm-col.c-12 {width:100%;}
.smartmenu .sm-row .sm-col.c-11 {width:91.66666666666667%;}
.smartmenu .sm-row .sm-col.c-10 {width:83.33333333333334%;}
.smartmenu .sm-row .sm-col.c-9 	{width:75%;}
.smartmenu .sm-row .sm-col.c-8 	{width:66.66666666666667%;}
.smartmenu .sm-row .sm-col.c-7 	{width:58.333333333333336%;}
.smartmenu .sm-row .sm-col.c-6 	{width:50%;}
.smartmenu .sm-row .sm-col.c-5 	{width:41.66666666666667%;}
.smartmenu .sm-row .sm-col.c-4 	{width:33.333333333333336%;}
.smartmenu .sm-row .sm-col.c-3 	{width:25%;}
.smartmenu .sm-row .sm-col.c-2 	{width:16.666666666666668%;}
.smartmenu .sm-row .sm-col.c-1 	{width:8.333333333333334%;}

/***********************
    - Search place -
***********************/
.smartmenu .sm-search {
  	position:relative;
  	overflow:hidden;
}

.smartmenu .sm-search form > label {
  	position:absolute;
  	cursor:text;
  	left:0;
  	top:0;
  	padding:0 20px;
  	line-height:50px;
}

.smartmenu .sm-search input {
  	height:50px;
  	padding:0 27.5px;
  	font-size:inherit;
  	-webkit-appearance:none;
  	width:0;
  	opacity:0.01;
}

.smartmenu .sm-search input:focus {
  	width:150px;
  	opacity:1;
}

.smartmenu .sm-search input:focus + label {
  	display:none;
}

.smartmenu.sm-position-right .sm-search,
.smartmenu.sm-position-left .sm-search {
  	float:none;
}

.smartmenu.sm-position-right .sm-search input,
.smartmenu.sm-position-left .sm-search input {
  	width:100%;
}

/***********************
    - Social links -
***********************/
.smartmenu .sm-social > a {
	padding:0 10px;
}

.sm-social.twitter:hover 		{background-color:#54aee1 !important;}
.sm-social.facebook:hover 		{background-color:#4772af !important;}
.sm-social.googleplus:hover 	{background-color:#dd4b39 !important;}
.sm-social.behance:hover 		{background-color:#18a3fe !important;}
.sm-social.dribbble:hover 		{background-color:#ef5b92 !important;}
.sm-social.pinterest:hover 		{background-color:#cb2027 !important;}
.sm-social.vimeo:hover 			{background-color:#44bbff !important;}
.sm-social.stumbleupon:hover 	{background-color:#ec4b24 !important;}
.sm-social.linkedin:hover 		{background-color:#0073B2 !important;}
.sm-social.youtube:hover 		{background-color:#cd181f !important;}
.sm-social.instagram:hover 		{background-color:#31547a !important;}

/*********************
    - Responsive -
*********************/
@media screen and (max-width:768px) {
	
	/* Main */
  	.smartmenu[class*='sm-response'] > li {
    	position:relative;
  	}
	
	.smartmenu[class*='sm-response'] > li.sm-responsive-toggle {
		display:block;	
	}
  
  	.smartmenu[class*='sm-response'] > li > ul,
  	.smartmenu[class*='sm-response'] > li > div.sm-multi-column > ul,
  	.smartmenu[class*='sm-response'] > li > ul ul,
  	.smartmenu[class*='sm-response'] > li > div.sm-multi-column > ul ul {
    	left:0;
    	right:0;
    	width:auto !important;
    	margin-right:0;
  	}
	
  	.smartmenu[class*='sm-response'] > li > ul ul,
  	.smartmenu[class*='sm-response'] > li > div.sm-multi-column > ul ul {
    	top:100%;
    	margin-left:50px !important;
  	}
  
  	.smartmenu[class*='sm-response'].sm-position-bottom > li > ul ul,
  	.smartmenu[class*='sm-response'].sm-position-bottom > li > div.sm-multi-column > ul ul,
  	.smartmenu[class*='sm-response'].sm-position-bottom > li > ul ul.sm-drop-left,
  	.smartmenu[class*='sm-response'].sm-position-bottom > li > div.sm-multi-column > ul ul.sm-drop-left {
    	left:0;
    	top:auto;
    	bottom:100%;
  	}
	
  	.smartmenu[class*='sm-response'].sm-position-left > li > ul,
  	.smartmenu[class*='sm-response'].sm-position-left > li > div.sm-multi-column > ul,
  	.smartmenu[class*='sm-response'].sm-position-right > li > ul,
  	.smartmenu[class*='sm-response'].sm-position-right > li > div.sm-multi-column > ul {
    	top:100%;
    	left:0;
    	right:0;
  	}
	
  	.smartmenu[class*='sm-response'].sm-position-left > li > ul ul,
  	.smartmenu[class*='sm-response'].sm-position-left > li > div.sm-multi-column > ul ul,
  	.smartmenu[class*='sm-response'].sm-position-right > li > ul ul,
  	.smartmenu[class*='sm-response'].sm-position-right > li > div.sm-multi-column > ul ul,
  	.smartmenu[class*='sm-response'].sm-position-left > li > ul ul.sm-drop-left,
  	.smartmenu[class*='sm-response'].sm-position-left > li > div.sm-multi-column > ul ul.sm-drop-left,
  	.smartmenu[class*='sm-response'].sm-position-right > li > ul ul.sm-drop-left,
  	.smartmenu[class*='sm-response'].sm-position-right > li > div.sm-multi-column > ul ul.sm-drop-left {
    	left:0;
    	right:0;
    	top:100%;
  	}
	
  	.smartmenu[class*='sm-response'].sm-position-left > li.sm-content > div,
  	.smartmenu[class*='sm-response'].sm-position-left > li.sm-content-full > div,
  	.smartmenu[class*='sm-response'].sm-position-right > li.sm-content > div,
  	.smartmenu[class*='sm-response'].sm-position-right > li.sm-content-full > div {
    	top:100%;
    	left:0;
    	right:0;
  	}
	
  	.smartmenu[class*='sm-response'] li > div {
    	top:100%;
    	left:0 !important;
    	right:0;
    	width:auto !important;
  	}
  
  	.smartmenu[class*='sm-response'] li > div.sm-multi-column > ul {
    	width:100% !important;
  	}
	
  	.smartmenu[class*='sm-response'] .sm-row .sm-col {
    	display:block;
    	margin-right:0;
    	width:100% !important;
    	float:none;
  	}
	
  	/* Simple */
  	.smartmenu.sm-response-simple > li {
    	position:static;
  	}
  
  	.smartmenu.sm-response-simple > li > a {
    	font-size:0;
  	}
	
  	.smartmenu.sm-response-simple > li > a i {
    	letter-spacing:0 !important;
  	}
	
  	.smartmenu.sm-response-simple > li > a .sm-caret {
    	display:none;
  	}
	
  	.smartmenu.sm-response-simple > li.sm-logo {
    	display:none;
  	}
	
  	.smartmenu.sm-response-simple > li.sm-search {
    	position:relative;
  	}
	
  	/* Stack */
  	.smartmenu.sm-response-stack > li {
   	 	display:block;
    	float:none;
  	}
	
  	.smartmenu.sm-response-stack > li.sm-content-full {
    	position:relative;
  	}
	
  	.smartmenu.sm-response-stack > li.sm-logo {
    	text-align:center;
  	}
	
  	.smartmenu.sm-response-stack > li.sm-logo img {
    	position:relative;
  	}
	
  	.smartmenu.sm-response-stack > li.sm-logo,
  	.smartmenu.sm-response-stack > li.sm-right-item {
    	position:relative;
    	width:100%;
  	}
	
  	.smartmenu.sm-response-stack > li > a .sm-caret {
    	float:right;
  	}
	
  	.smartmenu.sm-response-stack .sm-search {
    	float:none;
  	}
	
  	.smartmenu.sm-response-stack .sm-search input {
    	width:100%;
  	}
	
  	/* Switch */
  	.smartmenu.sm-response-switch > li {
    	display:none;
		float:none;
		position:relative;
		width:100%;
  	}
	
  	.smartmenu.sm-response-switch > li.sm-logo {
    	display:block;
  	}
	
  	.smartmenu.sm-response-switch > li.sm-logo img {
    	position:relative;
    	z-index:1;
  	}
	
  	.smartmenu.sm-response-switch:before {
    	font-family:FontAwesome;
    	content:'\f0c9';
    	position:relative;
    	float:right;
    	cursor:pointer;
    	line-height:50px;
    	height:50px;
    	padding:0 20px;
    	z-index:2;
  	}
	
  	.smartmenu.sm-response-switch:hover:before {
    	opacity:0;
  	}
	
  	.smartmenu.sm-response-switch:hover > li {
    	display:block;
  	}
	
  	.smartmenu.sm-response-switch > li > a .sm-caret {
    	float:right;
  	}
	
  	.smartmenu.sm-response-switch .sm-search {
    	float:none;
  	}
	
  	.smartmenu.sm-response-switch .sm-search input {
    	width:100%;
  	}
	
  	/* Response margin */
  	.smartmenu.sm-response-margin > li > ul,
  	.smartmenu.sm-response-margin li > div {
    	margin-left:50px !important;
  	}
	
}

@media screen and (max-width:480px) {
	.smartmenu.sm-response-switch > li {
    	float:none;
		min-width:100%;
  	}
}
