/* BASIC SETUP */
* { 
	-webkit-box-sizing: border-box; 
	-moz-box-sizing: border-box; 
	box-sizing: border-box; 
	margin: 0; 
	padding: 0; 
}
html { 
	
}
body { 
	color: #333333; 
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-size: 1em;
	overflow-x: hidden;
}

/* useful styles */
.hr hr { 
	display: none; 
}
.hr, hr { 
	border: 0;
	border-bottom: 1px solid #CCCCCC; 
	margin: 2em 0; 
}
.error { 
	color: #FF0000; 
}
.small { 
	font-size: 0.75em; 
}

/* responsive */
.desktop { 
	display: block !important; 
}
span.desktop { 
	display: inline !important; 
}
table.desktop { 
	display: table !important; 
}
col.desktop { 
	display: table-column !important; 
}
th.desktop, 
td.desktop { 
	display: table-cell !important; 
}
tr.desktop { 
	display: table-row !important; 
}
.mobile, 
span.mobile, 
table.mobile, 
col.mobile, 
th.mobile, 
td.mobile, 
tr.mobile { 
	display: none !important; 
}

/* alignment */
.align-left { 
	text-align: left !important; 
}
.align-center { 
	text-align: center !important; 
}
.align-right { 
	text-align: right !important; 
}
.valign-top { 
	vertical-align: top !important; 
}
.valign-middle { 
	vertical-align: middle !important; 
}
.valign-bottom { 
	vertical-align: bottom !important; 
}
.clear { 
	clear: both; 
	display: block;
	font-size: 0; 
	line-height: 0; 
	height: 0px; 
}
.clearafter:after { 
	content: ''; 
	clear: both; 
	display: block; 
}
.float-left { 
	float: left; 
}
.float-right { 
	float: right; 
}


/* common elements */
p { 
	line-height: 1.4em; 
	margin-bottom: 1em; 
}
img { 
	border: 0; 
}
a {
	color: #8E1932;
	text-decoration: none; 
}
a:hover { 
	color: #777777; 
}

.uppercase {
	text-transform: uppercase;
}


/* Headings */
h1, h2, h3, h4, h5, h6 { 
	font-family: Helvetica, Arial, sans-serif; 
	font-weight: bold; 
	margin: 1.2em 0; 
}
h1 { 
	font-size: 1.6em; 
}
h2 { 
	font-size: 1.2em; 
}
h3 { 
	font-size: 1.1em; 
}
h4, h5, h6 { 
	font-size: 1.1em; 
}
h1:first-child, 
h2:first-child, 
h3:first-child, 
h4:first-child, 
h5:first-child, 
h6:first-child { 
	margin-top: 0; 
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { 
	color: inherit; 
}



/* column styles */
.columns { 
	margin: 15px -15px; 
}
.columns.tight { 
	margin: 5px -5px; 
}
.columns:after { 
	clear: both; 
	content: ''; 
	display: block; 
}
.c10, .c20, .c25, .c30, .c33, .c40, .c50, 
.c60, .c66, .c75, .c70,.c80,.c90, .c100 { 
	display: block;
	float: left; 
	position: relative;
	min-height: 1px; 
}
.columns > .c10, .columns > .c20, .columns > .c25, .columns > .c30, .columns > .c33, .columns > .c40, .columns > .c50, .columns > .c60, .columns > .c66, .columns > .c70, .columns > .c75, .columns > .c80, .columns > .c90, .columns > .c100 { 
	padding: 15px; 
}
.c10 { width: 10%; }
.c20 { width: 20%; }
.c25 { width: 25%; }
.c30 { width: 30%; }
.c33 { width: 33.33%; }
.c40 { width: 40%; }
.c50 { width: 50%; }
.c60 { width: 60%; }
.c66 { width: 66.66%; }
.c70 { width: 70%; }
.c75 { width: 75%; }
.c80 { width: 80%; }
.c90 { width: 90%; }
.c100 { width: 100%; }

.columns.tight .c10, .columns.tight .c20, .columns.tight .c25, .columns.tight .c30, .columns.tight .c33, .columns.tight .c40, .columns.tight .c50, .columns.tight .c60, .columns.tight .c66, .columns.tight .c70, .columns.tight .c75, .columns.tight .c80, .columns.tight .c90, .columns.tight .c100 { 
	padding: 5px; 
}
.c10.float-right, .c20.float-right, .c25.float-right, .c30.float-right, .c33.float-right, .c40.float-right, .c50.float-right, .c60.float-right, .c66.float-right, .c70.float-right, .c75.float-right, .c80.float-right, .c90.float-right, .c100.float-right { 
	float: right; 
}

.lc { 
	padding-right: 40px; 
}
.rc { 
	padding-left: 40px; 
}


/* tables */
table.form, .main table { 
	border: 0;
	border-collapse: collapse;
	margin: 2em 0;
	width: 100%:
}
.main table th,
.main table td {
	border: 1px solid #CCCCCC;
	padding: .5em;
	vertical-align: top;
}
table.form th,
.main table th { 
	text-align: left;
}
table.form td { 
	
}
form table, 
table.form {
	width: 100%;
}
	.main form table th, 
	.main table.form th,
	.main form table td, 
	.main table.form td {
		border: 0;
		vertical-align: middle;
	}


/* tabs */
.tabs { 
	
}
	.tabs a { 
		background: #f0f0f0; 
		color: #333333; 
		display: block; 
		float: left; 
		padding: 1px 5px; 
		text-align: center; 
	}
		.tabs a:hover { 
			background-color: #333333; 
			color: #FFFFFF; 
		}
		.tabs a.active { 
			background-color: #333333; 
			color: #FFFFFF; 
		}



.inset-left,
.inset-right {
	max-width: 50%;
}


/* pagenation */
.page-navigation {
	margin: 2em 0;
}
	.page-navigation a.current {
		color: #333333;
		pointer-events: none;
	}



/* slideshow */
.cycle-slideshow {

}
	.cycle-slideshow * {
		max-width: 100%;
	}
.slideshow-thumbnails {

}
	.slideshow-thumbnails img {
		display: block;
		width: 100%;
	}
	.slideshow-thumbnails .active img {
		opacity: .6;
	}
	
	.cycle-slideshow .group {  
		width: 100%;
	}



/* cycle slideshow controls */
.navi-arrow { 
	background: url(../images/arrow-right.svg) center/60% auto no-repeat rgba(0,0,0,.4); 
	display: block; 
	opacity: .8; 
	position: absolute; 
	/*top: calc(50% - 1em); */ bottom: 0;
	width: 2.6em; height: 2.6em;
	z-index: 1001; 
}
.navi-arrow:hover { 
	opacity: 1; 
}
.navi-arrow.left { 
	left: 0; 
	-ms-transform: rotate(180deg); 
	-webkit-transform: rotate(180deg); 
	transform: rotate(180deg); 
}
.navi-arrow.right { 
	right: 0; 
}

.pager { 
	bottom: 1em; 
	position: absolute; 
	right: 4em; 
	z-index: 1000; 
}
	.pager span { 
		background: #f0f0f0; 
		border-radius: 50%; 
		cursor: pointer; 
		display: inline-block; 
		font-size: 0; 
		height: 12px; 
		margin: 0 3px; 
		transition: all .3s ease; 
		width: 12px; 
	}
	.pager span:hover { 
		opacity: .8; 
	}
	.pager span.cycle-pager-active { 
		background: #202020; 
	}




.read-more-text {
	display: none;
}



.page-navigation {
	font-size: .9em;
	margin: 2em 0;
	text-align: right;
}




/* ----------------------------- PAGE STRUCTURE ----------------------------- */
.root { 
	padding-right: 3%; padding-left: 3%;
	position: relative;
	width: 100%; 
}
	.root > div, .page-width { 
		margin: 0px auto; 
		position: relative; 
		max-width: 1100px; 
	}


header { 
	padding: 0; 
	position: relative; 
	z-index: 1001; 
}
	header > div {
		height: 14vw; max-height: 140px; 
		padding: 3% 0 1%; 
	}
		header .logo { 
			display: block; 
			position: absolute; right: 0; top: 10%; 
			width: 23%; 
		}
			header .logo img { 
				display: block; 
				width: 100%; 
			}
		header .phone {
			font-size: 1.5em;
			position: absolute; top: 10%; left: 0;
		}
			header .phone span {
				display: block;
				font-size: .6em;
				text-transform: uppercase;
			}
		.mobile-menu-toggle { 
			display: none; 
		}


.main-navigation { 
	font-family: 'myriadpro-semibold', sans-serif; 
	font-size: .85em;
	position: absolute; bottom: .3em; left: 0; 
	text-transform: uppercase; 
	z-index: 1002; 
}
	.main-navigation .logo {
		display: none;
	}
	.main-navigation ul { 
		list-style-type: none; 
		margin: 0; 
		padding: 0; 
	}
		.main-navigation li { 
			display: inline-block;
			margin: 0; 
			padding: 0;
			position: relative; 
		}
		
			.main-navigation ul a, 
			.main-navigation ul a:visited { 
				color: #333333;
				display: inline-block; 
				padding: .7em .7em; 
			}
			.main-navigation li:first-child > a { 
				padding-left: 0;
			}
			.main-navigation li:last-child > a { 
				
			}
			.main-navigation ul li.active a { 
				color: #8E1932; 
			}
			
			.main-navigation ul a:hover, 
			.main-navigation ul ul a:hover { 
				color: #8E1932; 
			}
			.main-navigation ul :hover > a, 
			.main-navigation ul ul :hover > a { 
				color: #8E1932; 
			}
				
			.main-navigation ul ul.menu { 
				-webkit-box-shadow: 10px 10px 10px 0px rgba(0,0,0,0.2);
				-moz-box-shadow: 10px 10px 10px 0px rgba(0,0,0,0.2);
				box-shadow: 10px 10px 10px 0px rgba(0,0,0,0.2);
				background-color: #FFFFFF; 
				padding: .9em 0;
				position: absolute; 
				height: auto; 
				left: -1em; 
				top: 99%; 
				visibility: hidden; 
				width: 22em; 
			}
			.main-navigation ul li:hover ul, .main-navigation ul a:hover ul { 
				visibility: visible; 
			}
			
				.main-navigation ul ul.menu li { 
					display: block; 
					float: none; 
				}
				
					.main-navigation ul ul.menu a, 
					.main-navigation ul ul.menu a:visited { 
						border: 0; 
						color: #333333;
						font-size: 1em;
						line-height: 1em; 
						height: auto; 
						padding: .5em 1.8em; 
						text-align: left; 
						text-transform: none; 
					}
					.main-navigation ul ul.menu > li:first-child > a { 
						
					}
					.main-navigation ul ul.menu > li:last-child > a { 
						
					}
					.main-navigation ul ul.menu a:hover { 
						color: #8E1932; 
					}
					.main-navigation ul ul.menu :hover > a { 
						color: #8E1932; 
					}
					.main-navigation ul ul.menu li.active2 a { 
						color: #8E1932; 
					}
					
					.main-navigation ul ul.menu ul {
						font-size: .9em;
						padding: 0 0 1em 1em;
					}
						.main-navigation ul ul.menu ul a {
							padding: .3em 1.8em;
						}




#search-form { 
	border: 0;
	display: block; 
	font-size: .8em;
	margin: 0;
	position: absolute; bottom: 1em; right: 0;
	width: 15em;
}
	#search-form input[type="text"] {
		background: #ededed;
		border: 0;
		margin: 0;
		width: 100%;
	}
	#search-form input[type="image"] {
		margin: 0;
		position: absolute; top: 0; right: 0;
	}
	


#google-map { 
	width: 100%; 
	height: 300px;
}
	#google-map img {
		max-width: none;
	}


.banner { 
	background: #333333;
	height: 32vw; /*max-height: 360px; */
	overflow: hidden; 
	position: relative; 
}
	.banner .navi-arrow,
	.banner .pager {
		opacity: 0;
		transition: all .3s ease;
	}
	.banner:hover .navi-arrow,
	.banner:hover .pager {
		opacity: 1;
	}
	.banner .cycle-slideshow { 
		width: 100%; 
		height: 100%; 
	}
		.banner .item {
			background: center/cover; 
			display: block; 
			height: 100%; 
			position: absolute;
			width: 100%; 
 		}
			.banner .item .link { 
				display: block; 
				height: 100%; 
				left: 0; 
				position: absolute; 
				top: 0; 
				width: 100%; 
			}
			.banner .root {  
				height: 100%;
			}
				.banner .page-width {  
					display: table;
					width: 100%; height: 100%;
				}
					.banner .item .text { 
						color: #FFFFFF;
						display: table-cell;
						font-size: 1.5em;
						vertical-align: middle;
						width: 100%;
					}
						.banner .item .text .large-paragraph {
							color: inherit;
						}
						.banner .item .text p { 
							margin: 0 0 .2em;
						}


.main { 
	position: relative; 
	padding: 4% 0; 
}
	.main a {
		font-weight: 700;
	}
	.main ul, .main ol { 
		margin-bottom: 1em; 
		margin-left: 1.5em; 
	}
		.main li { 
			margin-bottom: 0.3em; 
		}
	.main iframe {
		display: block; 
		margin: 1.5em 0;
		max-width: 100%; 
	}
	.main img { 
		max-width: 100%; height: auto;
	}
	
	
	.page { 
		
	}
		.page .image { 
		}
			.image a,
			.image img { 
				display: block; 
				width: 100%; 
			}
		.page .text { 
			
		}
	
	
	.gridpage {
		margin-bottom: 4em;
		/*height: 14em;*/
	}
		.gridpage .image {
			margin-bottom: .8em;
		}
		.gridpage .text {
			position: relative;
		}
		.gridpage h2 {
			margin-top: 0;
		}
		.gridpage a.uppercase {
			position: absolute; bottom: -2em; right: 0;
		}
	
	
	/* gallery grid */
	/*.image-thumb { 
		
	}
		.image-thumb img { 
			display: block; 
			width: 100%; 
		}*/
	
	.article-thumb {
		max-width: 100%; max-height: 300px;
	}
	
	
	
	.testimonial { 
		position: relative; 
		margin-bottom: 5%; 
	}
		.testimonial .quote-left { 
			display: block;
			height: 2em;
		}
		
		.testimonial .text { 
			color: #8E1932; 
			font-family: 'FSLolaItalic', Georgia, Times, sans-serif; 
			font-size: 1.3em; 
			padding: .2em 15% 0 0;
		}
			.testimonial .text p { 
				margin-bottom: .5em; 
			}
		.testimonial .title { 
			color: #AFB0B2; 
			font-family: 'FSLolaItalic', Georgia, Times, sans-serif;  
			font-size: 1.1em; 
		}




#reasons-illustration {
	display: block;
	width: 100%;
}




.important-links {
	background: url('../images/boardroom.jpg') center/cover no-repeat #333333;
	font-size: .9em;
}
	.important-links > div {
		padding: 8% 0;
	}
		.important-link {
			background: #FFFFFF;
			display: block;
			height: 10em;
			padding: 1em 1.5em;
		}
			.important-link span {
				display: block;
			}
			.important-link .title {
				font-size: 1.2em;
			}
			.important-link .text {
				color: #404040;
			}
			.important-link img.arrow {
				display: block;
				margin: 1em 0 0;
				width: 1.5em; height: 1.5em;
			}


.featured-links {
	background-color: #8d1831;
	color: #FFFFFF;
}
	.featured-links > div {
		padding: 4% 0;
	}
		.featured-links a {
			color: #d0d0d0;
			display: block;
			transition: all .3s ease;
		}
		.featured-links a:hover {
			color: #FFFFFF;
		}
			.featured-links a span {
				display: block;
			}
			.featured-links a .title {
				font-family: 'FSLolaItalic', Georgia, Times, sans-serif;
				font-size: 1.6em;
			}
			.featured-links a .text {
				font-family: 'FSLolaItalic', Georgia, Times, sans-serif;
			}
			.featured-links a .cta {
				color: #cccccc;
				font-size: .9em;
				margin: .6em 0 0;
				transition: all .3s ease;
			}
			.featured-links a:hover .cta {
				opacity: 1;
			}



/* show / hide content boxes */
.text-expander {
	
}
	.text-expander .heading {
		background-color: #8d1831;
		border-bottom: 2px solid #FFFFFF;
		color: #FFFFFF;
	}
		.text-expander .heading > div {
			
		}
		.text-expander .heading h2 {
			font-size: 1.5em;
			margin: 0;
		}
			.text-expander .heading h2 a {
				color: #FFFFFF;
				display: block;
				padding: .8em 0;
			}
			.text-expander .heading h2 a:after {
				background: url('../images/arrow-right.svg') center/50% auto no-repeat transparent;
				content: '';
				display: block;
				position: absolute; right: 0; top: 0;
				transition: all .3s ease;
				width: 2.6em; height: 2.6em;
			}
			.text-expander .heading h2 a.active:after {
				-ms-transform: rotate(90deg); 
				-webkit-transform: rotate(90deg); 
				transform: rotate(90deg); 
			}
		
		.text-expander .text {
			display: none;
		}
			.text-expander .main { 
				padding: 2% 0; 
			}
				.text-expander .text ul {
					-webkit-column-count: 2; /* Chrome, Safari, Opera */
				    -moz-column-count: 2; /* Firefox */
				    column-count: 2;
					-webkit-column-gap: 4em; /* Chrome, Safari, Opera */
				    -moz-column-gap: 4em; /* Firefox */
				    column-gap: 4em;
				}



.footer-features {
	background: #ededed;
	font-size: .8em;
}
	.footer-features > div {
		padding: 3% 0;
	}
		.footer-features a {
			color: inherit;
		}
		.footer-features a:hover {
			text-decoration: underline;
		}
		.footer-features .megamenu { 
			
		}
			.footer-features .megamenu ul { 
				float: left; 
				list-style-type: none; 
				margin: 0; 
				padding: 0 10% 0 0; 
				width: 33%;
			}
				.footer-features .megamenu ul li {
					margin: 0; 
					padding: 0; 
				}
					.footer-features .megamenu ul li a { 
						display: block; 
						padding: .1em 0;
					}
					.footer-features .megamenu ul li.large a { 
						font-weight: bold;
						text-transform: uppercase;
					}
					
					.footer-features .megamenu ul li:not(.large) + li.large {
						margin-top: 1em;
					}
		
		.signup-form {
			margin: 0;
		}
			.signup-form label {
				display: block;
				height: 0;
				overflow: hidden;
				position: absolute; top: -3em;
			}
			.signup-form input[type="text"] {
				border: 0;
				margin: .1em 0;
				width: 100%;
			}
			.signup-form input[type="email"] {
				border: 0;
				margin: .1em 0;
				width: 100%;
			}
			.signup-form input[type="submit"] {
				display: inline-block;
				text-align: center;
			}
		
		.footer-features .logos { 
			margin: 2em 0;
			position: relative;
			text-align: justify;
			text-align-last: justify;
		}
			.footer-features .logos:after{
			   content: '';
			   display: inline-block;
			   width: 100%;
			}
			.footer-features .logos img {
				display: inline-block;
				filter: grayscale(100%);
				-webkit-filter: grayscale(100%);
				-moz-filter:    grayscale(100%);
				-ms-filter:     grayscale(100%);
				-o-filter:      grayscale(100%);
				transition: all .3s ease;
				max-width: 31%; max-height: 6em;
			}
			.footer-features .logos img:hover {
				filter: none !important;
			}
		
		.footer-features .social { 
			text-align: justify;
			text-align-last: justify;
		}
			.footer-features .social:after{
			   content: '';
			   display: inline-block;
			   width: 100%;
			}
			.social-link { 
				background: center/70% auto no-repeat #404040;
				border-radius: 50%;
				display: inline-block;
				margin: 0 0 0 3%;
				transition: all .3s ease;
				width: 3.5em; height: 3.5em;
			}
			.footer-features .social-link {
				margin: 0;
			}
			.social-link:hover {  
				opacity: .7;
			}
			
			.social-link.facebook { 
				/*background-color: #3C5A99;*/
				background-image: url('../images/social/facebook.svg');
			}
			.social-link.googleplus { 
				/*background-color: #cb3c2f;*/
				background-image: url('../images/social/googleplus.svg');
			}
			.social-link.instagram {  
				/*background-color: #185887;*/
				background-image: url('../images/social/instagram.svg');
			}
			.social-link.linkedin {  
				/*background-color: #0076B3;*/
				background-image: url('../images/social/linkedin.svg');
			}
			.social-link.pinterest {  
				/*background-color: #C91618;*/
				background-image: url('../images/social/pinterest.svg');
			}
			.social-link.youtube {  
				/*background-color: #da2124;*/
				background-image: url('../images/social/youtube.svg');
			}
			.social-link.twitter {  
				/*background-color: #6BACDF;*/
				background-image: url('../images/social/twitter.svg');
			}


footer { 
	background: #404040;
	color: #FFFFFF;
	font-size: .8em;
	padding: 1% 0;
}
	footer > div { 
		
	}
		footer a { 
			color: inherit;
		}
		footer a:hover {
			text-decoration: underline; 
		}
		
		footer .contact { 
			
		}
		
		footer .info { 
			
		}



#signup-popup { 
	background: #8E1932; 
	color: #FFFFFF;
	display: none;
	padding: 40px; 
}
	#signup-popup * { 
		-webkit-box-sizing: border-box; 
		-moz-box-sizing: border-box; 
		box-sizing: border-box; 
	}
	#signup-popup p { 
		font-size: 1.1em; 
	}
	#signup-popup input[type="text"], 
	#signup-popup input[type="email"] { 
		background: #FFFFFF; 
		border: 0; 
		font-size: 1.2em; 
		margin: .1em 0;
		padding: .5em; 
		width: 100%; 
	}
	#signup-popup input[type="submit"] { 
		background: #8E1932; 
		border: 2px solid #FFFFFF; 
		color: #FFFFFF; 
		/*float: right;*/
		display: inline-block;
		padding: .5em; 
		font-size: 1.2em; 
		cursor: pointer; 
	}
	#signup-popup input[type="submit"]:hover { 
		background: #FFFFFF; 
		color: #8E1932; 
	}




/* FANCYBOX PAGE */
body.popup { 
	background-image: none; 
 }
	.popup-root { 
		
	}@font-face {
    font-family: 'myriadpro-regular';
    src: url('fonts/myriadpro-regular.eot');
    src: url('fonts/myriadpro-regular.eot?#iefix') format('embedded-opentype'),
         url('fonts/myriadpro-regular.woff') format('woff'),
         url('fonts/myriadpro-regular.ttf') format('truetype'),
         url('fonts/myriadpro-regular.svg#myriadpro-regular') format('svg');
    font-weight: normal;
    font-style: normal;
}

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

@font-face {
    font-family: 'FSLolaItalic';
    src: url('fonts/fslolaitalic.eot');
    src: url('fonts/fslolaitalic.eot?#iefix') format('embedded-opentype'),
         url('fonts/fslolaitalic.woff') format('woff'),
         url('fonts/fslolaitalic.ttf') format('truetype'),
         url('fonts/fslolaitalic.svg#fslolaitalic') format('svg');
    font-weight: normal;
    font-style: normal;
}form { 
	margin: 2em 0;
}
fieldset { 
	border: 0; 
}

input, 
textarea { 
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	font-family: 'Open Sans', Helvetica, Arial, sans-serif; 
	font-size: 1em; 
}

input[type="text"], 
input[type="email"], 
input[type="search"], 
input[type="password"], 
textarea { 
	-webkit-appearance: none;
	border: 1px solid #CCCCCC; 
	border-radius: 0; 
	display: inline-block; 
	margin: .3em 0; 
	padding: .5em; 
	vertical-align: middle; 
}
textarea { 
	min-height: 8em; 
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
	color: #707070;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	color: #707070;
	opacity: 1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	color: #707070;
	opacity: 1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: #707070;
}

select { 
	border: 1px solid #CCCCCC;
	font-size: 1em;
	vertical-align: middle;
	width: 100%; 
}
	select option {
		padding: .5em;
	}



/* submit, button */
input[type="submit"], 
input[type="button"] { 
	-webkit-appearance: none;
	background: #737373;
	border: 0;
	border-radius: 0;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block; 
	font-size: 1.1em;
	margin: .3em 0;
	padding: .3em 1em;
	width: auto; 
	vertical-align: middle;
}
input[type="submit"]:hover, 
input[type="button"]:hover { 
	background-color: #000000; 
}

input[type="submit"].small-button, 
input[type="button"].small-button {
	background: transparent;
	color: #8E1932;
	padding-left: 0; padding-right: 0;
	text-align: center;
	text-transform: uppercase;
}

/* image */
input[type="image"] { 
	background: #737373;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	display: block; 
	height: 2.4em;
	margin: .3em 0;
	padding: .6em;
	width: auto; 
	vertical-align: middle;
}
input[type="image"]:hover { 
	background-color: #000000; 
	color: #FFFFFF;
}




/* select style (requires wrapper .select-style) */
.select-style {
	border: 1px solid #CCCCCC;
	display: inline-block;
	padding: 0 .2em;
	margin: .3em 0;
	overflow: hidden;
	position: relative;
	vertical-align: middle;
}
	.select-style select {
		background: none;
		border: 0;
		display: block;
		padding: 0;
		position: relative;
		width: calc(100% + 3em);
	}
		.select-style select option {
			padding: .5em;
		}
	.select-style:after {
		background: url(../images/arrow-down.svg) center/60% auto no-repeat #333333;
		content: '';
		display: block;
		height: 100%;
		pointer-events: none; 
		position: absolute;
		right: 0;
		top: 0;
		width: 2em;
	}


label {
	display: inline-block; 
	font-size: .8em;
	margin: .3em 0;
	width: 100px;
}
table label { width: auto; }


/* inputs widths (easily indent against labels) */
input[type="text"], 
input[type="email"], 
input[type="search"], 
input[type="password"], 
textarea,
select,
.select-style {
	width: calc(100% - 110px); 
}
table input[type="text"], 
table input[type="email"], 
table input[type="search"], 
table input[type="password"], 
table textarea,
table select,
table .select-style {
	width: 100%; 
}





form.formhandler {
	max-width: 600px;
}

	form.formhandler fieldset {
		border-style: none;
		clear: both;
		margin: 0 0 1.5em 0;
		padding: 0;
		
	}
		
		form.formhandler legend {
			display: none;
		}
		
		form.formhandler fieldset ol {
			margin: 0 !important;
			list-style: none;
		}
		
			form.formhandler fieldset li {
				float: left;
				clear: left;
				width: 100%;
			}
				
				form.formhandler fieldset.submit input {
					margin-left: 110px;
				}

				form.formhandler label.inline, 
				form.formhandler label.checkbox {
					display: inline;
					float: none;
					margin: 0;
					width: auto;
				}
				
				form.formhandler input[type="checkbox"] {
					margin: 1em 0 1em 110px;
				}
				
				form.formhandler fieldset.radio {  
					margin-left: 110px;
					padding: .5em 0;
				}
				
				/* nested fieldsets */
				form.formhandler fieldset fieldset {
					margin-bottom: 0;
					border-style: none;
					background-color: transparent;
					background-image: none;
				}
				
				form.formhandler fieldset fieldset label.legend {
					margin-bottom: 1em;
				}
				
				form.formhandler fieldset fieldset ol {
					position: relative;
				}
				
				form.formhandler fieldset fieldset label {
					float: none;
					width: auto;
					margin-right: auto;
				}
.inset-left {
	display: block;
	float: left; 
	margin: 0 30px 30px 0; 
	position: relative;
}
.inset-right { 
	display: block;
	float: right; 
	margin: 0 0 30px 30px; 
	position: relative;
}

.large-paragraph {
	color: #8E1932;
	font-family: 'FSLolaItalic', Georgia, Times, sans-serif;
	font-size: 1.7em;
	line-height: 1.2em;
}

.highlight {
	color: #8E1932;
}

.read-more {
	font-size: 1.2em;
	color: #8E1932;
	text-transform: uppercase;
}/* mobile */
@media only screen and (max-device-width: 480px), only screen and (max-width: 480px) {

body { 
	font-size: .8em;
	-webkit-text-size-adjust: 100%;
}

.mobile { 
	display: block !important; 
}
span.mobile { 
	display: inline !important; 
}
table.mobile {
	display: table !important; 
}
col.mobile { 
	display: table-column !important; 
}
th.mobile, td.mobile { 
	display: table-cell !important; 
}
tr.mobile { 
	display: table-row !important; 
}
.desktop, span.desktop, table.desktop, col.desktop, th.desktop, td.desktop, tr.desktop { 
	display: none !important; 
}

/* column styles */
.columns, 
.columns.tight { 
	margin: 0 -5px; 
}
.columns:after { 
}
.c10, .c20, .c25, .c30, .c33, .c40, .c50, .c60, .c66,.c70,.c75, .c80, .c90, .c100 {  
}
.c10.float-right,.c20.float-right, .c25.float-right, .c30.float-right, .c33.float-right, .c40.float-right, .c50.float-right, .c60.float-right, .c66.float-right, .c70.float-right,.c75.float-right, .c80.float-right,.c90.float-right {  
}
.columns > .c10, .columns > .c20, .columns > .c25, .columns > .c30, .columns > .c33, .columns > .c40, .columns > .c50, .columns > .c60, .columns > .c66, .columns > .c70, .columns > .c75, .columns > .c80, .columns > .c90, .columns > .c100, .columns.tight > .c10, .columns.tight > .c20, .columns.tight > .c25, .columns.tight > .c30, .columns.tight > .c33, .columns.tight > .c40, .columns.tight > .c50, .columns.tight > .c60, .columns.tight > .c66, .columns.tight > .c70, .columns.tight > .c75, .columns.tight > .c80, .columns.tight > .c90, .columns.tight > .c100 { 
	padding: 5px; 
}

.cm10,.cm20, .cm30, .cm33, .cm40, .cm50, .cm60, .cm66, .cm70, .cm80, .cm90,.cm100 { 
	float: left; 
	min-height: 1px; 
}
.cm10 { width: 10%; }
.cm20 { width: 20%; }
.cm25 { width: 25%; }
.cm30 { width: 30%; }
.cm33 { width: 33.33%; }
.cm40 { width: 40%; }
.cm50 { width: 50%; }
.cm60 { width: 60%; }
.cm66 { width: 66.66%; }
.cm70 { width: 70%; }
.cm75 { width: 75%; }
.cm80 { width: 80%; }
.cm90 { width: 90%; }
.cm100 { width: 100%; }

.lc { 
	padding-right: 15px; 
}
.rc { 
	padding-left: 15px; 
}
.cm100.lc,
.cm100.rc,
.lcm,
.rcm {  
	padding-left: 0;
	padding-right: 0;
}


.tablescroll {
	max-width: 100%;
	position: relative;
}
	.tablescroll > div { 
		overflow-x: auto;
	}
		.tablescroll table {
		}
	.tablescroll:after {
		background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
		background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(255,255,255,0)), color-stop(100%,rgba(255,255,255,1)));
		background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
		background: -o-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
		background: -ms-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
		background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
		
		content: '';
		height: 100%;
		pointer-events: none;
		position: absolute; right: 0; top: 0;
		width: 30px;
		z-index: 10;
	}


/* xinha */
.inset-left { 
	float: none; 
	height: auto;
	margin: 1em 0;
	width: 100%;
}
.inset-right { 
	float: none; 
	height: auto;
	margin: 1em 0; 
	width: 100%;
}



.navi-arrow { 
	/*height: 30px; 
	width: 30px; */
}
.navi-arrow:hover { 
}
.navi-arrow.left { 
}
.navi-arrow.right { 
}
.pager span { 
	font-size: 0; 
	height: 8px; 
	width: 8px; 
}


.text-expander .heading h2 {
	font-size: 1.1em;
}
.text-expander .text {
	font-size: .9em;
}


.read-more {
	display: none;
}
.read-more-text {
	display: block;
}



.root { 
	width: 100%; 
}
	.root > div, .page-width { 
		width: 100%;
	}

.page-navigation {
	font-size: .8em;
	text-align: center;
}





/* ----------------------------- PAGE STRUCTURE ----------------------------- */

header { 
	height: auto;
	z-index: 10001;
}
	header > div {
		height: auto;
		padding: 2% 0;
	}
		header .logo { 
			margin: .5em 0 2em; 
			position: static; 
			width: 140px; 
		}
			header .logo img {  }
		
		header .phone {
			display: none;
		}
		#search-form {
			width: calc(100% - 170px);
		}
	
	.mobile-menu-toggle {
		cursor: pointer;
		display: block;
		height: 20px;
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		-o-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		position: absolute; right: 0; top: 10px; 
		width: 22px;
	}
		.mobile-menu-toggle span {
			display: block;
			position: absolute;
			height: 3px;
			background: #000000;
			border-radius: 2px;
			left: 0;
			-webkit-transform: rotate(0deg);
			-moz-transform: rotate(0deg);
			-o-transform: rotate(0deg);
			transform: rotate(0deg);
			-webkit-transition: .25s ease-in-out;
			-moz-transition: .25s ease-in-out;
			-o-transition: .25s ease-in-out;
			transition: .25s ease-in-out;
			width: 100%;
		}
		.mobile-menu-toggle span:nth-child(1) {
			top: 0px;
		}
		.mobile-menu-toggle span:nth-child(2), .mobile-menu-toggle span:nth-child(3) {
			top: 7px;
		}
		.mobile-menu-toggle span:nth-child(4) {
			top: 14px;
		}
		body.mobile-menu .mobile-menu-toggle span:nth-child(1) {
			top: 7px;
			width: 0%;
			left: 50%;
		}
		body.mobile-menu .mobile-menu-toggle span:nth-child(2) {
			-webkit-transform: rotate(45deg);
			-moz-transform: rotate(45deg);
			-o-transform: rotate(45deg);
			transform: rotate(45deg);
		}
		body.mobile-menu .mobile-menu-toggle span:nth-child(3) {
			-webkit-transform: rotate(-45deg);
			-moz-transform: rotate(-45deg);
			-o-transform: rotate(-45deg);
			transform: rotate(-45deg);
		}
		body.mobile-menu .mobile-menu-toggle span:nth-child(4) {
			top: 7px;
			width: 0%;
			left: 50%;
		}



/* responsive navigation */
.main-navigation { 
	background: #FFFFFF; 
	-webkit-box-shadow: 0px 0px 13px 3px rgba(0,0,0,0.75);
	-moz-box-shadow: 0px 0px 13px 3px rgba(0,0,0,0.75);
	box-shadow: 0px 0px 13px 3px rgba(0,0,0,0.75);
	font-size: 1.1em;
	height: 100%; 
	left: 0; 
	margin-left: -75%; 
	padding: 20px; 
	position: fixed; 
	right: auto; 
	top: 0; 
	transition: all .3s ease;
	width: 70%; 
	z-index: 1003; 
}
body.mobile-menu .main-navigation { 
	margin-left: 0; 
	overflow-x: hidden; 
	overflow-y: auto; 
}
	.main-navigation .logo { 
		display: block; 
		margin: 0 0 20px;
		width: 140px; 
	}
		.main-navigation .logo img { 
			display: block; 
			width: 100%;
		}
	.main-navigation ul { 
		padding-bottom: 20px; 
		text-align: left; 
	}
		.main-navigation ul li { 
			display: block;
			float: none;
		}
			.main-navigation ul a, 
			.main-navigation ul a:visited { 
				border-right: 0;
				font-size: .9em;
				height: auto; 
				line-height: normal; 
				padding: .3em 1em .3em 0; 
			}
			.main-navigation ul li.active a { 
				
			}
			.main-navigation li:first-child > a {  }
			.main-navigation li:last-child > a { 
				border: 0; 
				padding-right: 0; 
			}
			.main-navigation ul a:hover, 
			.main-navigation ul ul a:hover { 
				background: transparent; 
				
			}
			.main-navigation ul :hover > a, 
			.main-navigation ul ul :hover > a { 
				background: transparent; 
				
			}
			.main-navigation ul a:hover { 
				background: transparent; 
				
			}
			
			.main-navigation ul ul.menu { 
				border-top: 0;
				box-shadow: none !important;
				height: auto;
				left: auto;
				padding: .3em 0 10px 10px;
				position: static;
				top: auto;
				visibility: visible;
				width: auto;
			}
				.main-navigation ul ul.menu li { 
					background: transparent; 
					padding: 0; 
				}
					.main-navigation ul ul.menu a, 
					.main-navigation ul ul a:visited { 
						background: none; 
						font-size: .8em; 
						padding: .5em 0; 
					}
					.main-navigation ul ul.menu a.active2 { 
						background-color: transparent; 
					}
					.main-navigation ul ul.menu li:first-child > a { 
						padding-top: .5em;
					}
					.main-navigation ul ul.menu li:last-child > a { 
						padding-bottom: .5em;
					}
					/* style the second level hover */
					.main-navigation ul ul.menu a:hover { 
						background: transparent; 
					}
					.main-navigation ul ul.menu :hover > a { 
						background: transparent; 
					}
		/* make the second level visible when hover on first level list OR link */
		.main-navigation ul li:hover ul, 
		.main-navigation ul a:hover ul {  }
		
		.main-navigation ul ul.menu ul {
			font-size: .9em;
			padding: 0;
		}
			.main-navigation ul ul.menu ul a {
				padding: .3em 1em;
			}




.banner { 
	/*height: auto;  height: 200px */
	font-size: .65em;
}
	.banner .navi-arrow {
		display: none
	}
	.banner .pager {
		display: none;
	}
	.banner .cycle-slideshow {  }
		.banner .item { /*padding-top: 60%;*/ }
			.banner .item .link {  }
			.banner .item .text {  }
				.banner .item .text p {  }


.page .image {
	margin-bottom: 1.5em;
}


.gridpage {
	height: auto;
}
	.gridpage .image {
		
	}
	.gridpage .text {
	}
	.gridpage a.uppercase {
		
	}


footer { 
}
	
	.footer-features .megamenu { 
		float: none; 
		margin: 0 0 2em;
	}
		.footer-features .megamenu ul { 
			width: 50%;
		}
			.footer-features .megamenu ul li a span { 
				display: none; 
			}
	
	.footer-features .social {  
		
	}
	
	.footer-features .logos { 
		
	}
	
	.footer-features .social { 
		text-align: left;
	}
	
	footer .contact,
	footer .info { 
		float: none; 
		text-align: center; 
		width: 100%;
	}



/* fancybox forced responsiveness */
.fancybox-wrap {
	max-width: calc(100% - 40px);
}
.fancybox-inner {
	max-width: 100%;
}


}




/* medium size screens */
@media only screen and (min-device-width: 480px) and (max-device-width: 1040px), only screen and (min-width: 480px) and (max-width: 1040px) {

body { 
	font-size: calc(.4em + .8vw);
}

.cr10 { width: 10%; }
.cr20 { width: 20%; }
.cr25 { width: 25%; }
.cr30 { width: 30%; }
.cr33 { width: 33.33%; }
.cr40 { width: 40%; }
.cr50 { width: 50%; }
.cr60 { width: 60%; }
.cr66 { width: 66.66%; }
.cr70 { width: 70%; }
.cr75 { width: 75%; }
.cr80 { width: 80%; }
.cr90 { width: 90%; }
.cr100 { width: 100%; }

.lcr {
	padding-left: 20px;
}
.rcr {
	padding-right: 20px;
}




.root {  
	
}



}