/* ==========================================================================
   Fluid Studios defaults
   ========================================================================== */
html,body {
	background:#fff;
	color:#333;
	font-family: 'Open Sans', sans-serif;
	overflow-x:hidden;
	-webkit-font-smoothing: antialiased;
}
/* ALIGNMENT */
.text-left {text-align:left;}
.text-right {text-align:right;}
.text-center {text-align:center;}
.left {float:left;}
.right {float:right;}
.clear {clear:both; height: 1px;}
.clear-cms {display: none;}
/* CMS */
.control-panel {
	z-index:9999;
	width:170px;
	min-height:100px;
	border-radius:10px;
	background:#fff;
	position:fixed;
	top:100px;
	border:solid 1px #2a9bab;
	right:-140px;
	overflow:hidden;
	padding:10px;
	box-shadow:0 0 10px rgba(0,0,0,0.5);
}
.control-panel img {
	margin:2px;
}
.control-panel a {
	float:right;
}
.gallery * {
	transition: none;
}
/* DIVS */
.row {margin-bottom:10px;}
.pad {padding:20px;}
.max-width, .limiter {max-width:1000px; margin:0 auto;}
main, article, aside, header, footer {display:block;}
/* FONTS */
.mark, .highlight {color:#F00; background:none;}
.white {color:#FFF}
.black {color:#000;}
h1 {font-size:24px; line-height:26px; font-weight:normal;}
h2 {font-size:16px; line-height:18px; font-weight:normal;}
h3 {}
h4 {}
h5 {}
/* FORMS */
.req {color: #F00;}
.btn-inverse {color:#ccc;}
.span1.add-on {
	margin-left: -1px;
	float: none;
	width: 8.547008547008547%;
}
form {
	margin:0
}
.btn {
	background: #fff;
	border:solid 1px #ccc;
	box-shadow:none;
}
/* LINKS */
.clickable {cursor:pointer;}
a {text-decoration:none; transition:0.4s}
a:link, a:visited {color:#555;}
a:hover, a:active {color:#000; text-decoration:none;}
.font-small {font-size: 10px;}
.font-standard {font-size: 11px;}
.font-large {font-size: 14px;}
.font-xlarge {font-size: 18px;}

/* ==========================================================================
   div styles - modern desktops
   ========================================================================== */

/* ===== HEADER ===== */
#cookie-bar {
	height:auto !important;
}
#header-top {
	background:#f6f6f6;
	color:#fff;
	line-height:30px;
}
#header-main {
	line-height:25px;
	padding:10px 0;
}
#header-info {
	line-height:20px;
	text-align:right;
} 
.header-social {
	padding:5px 0;
	text-align:right;
	color:#404040;
	font-family: 'Oswald', sans-serif;
	font-size:14px;
	text-transform:uppercase;
} 
.header-social img {
	padding-left:10px;
	margin-top: -5px;
	width: 2.5%;
}

/* ===== SEARCH ===== */
.search-btn {
	height: 30px !important;
}
.search {
	padding: 10px;
	box-sizing: border-box;
	border: 1px solid #999;
	margin: 20px auto;
}
.search header {
	cursor: pointer;
	border-bottom: 1px solid #CCC;
	margin-bottom: 10px;
}
.search header:hover,
.search header:focus,
.search header:active,
.search span.clickable:hover,
.search span.clickable:focus,
.search span.clickable:active {
	color: #07c;
}
.search-content {
	line-height: 18px;
	max-height: 54px;
	overflow: hidden;
}

/* ===== MENU ===== */
.navbar {
	margin-bottom:0;
}

.navbar-inner {
	background:#f6f6f6;
	border:none;
	box-shadow:none;
	text-transform:uppercase;
	font-family: 'Oswald', sans-serif;
	font-size:14px;
	padding-left:0;
	filter:none;
}

/* left or right align menu */
.navbar .nav {
	float:left;
}
/* change menu highglight (top level) */
.navbar .nav > .active > a, .navbar .nav > .active > a:hover, .navbar .nav > .active > a:focus {  
	background:none;
	box-shadow:none;
	color:#404040;
}
.navbar .nav > li > a {
	text-shadow:none;
}
.navbar .nav li.dropdown.open > .dropdown-toggle,
.navbar .nav li.dropdown.active > .dropdown-toggle,
.navbar .nav li.dropdown.open.active > .dropdown-toggle {
	background:none;
	color:#000;
}

.dropdown-menu > .active > a,
.dropdown-menu > .active > a:focus,
.dropdown-menu > .active > a:hover {
	background:#b3b3b3;
	color:#fff;
}

.dropdown-menu > li > a:focus,
.dropdown-menu > li > a:hover,
.dropdown-submenu:focus > a,
.dropdown-submenu:hover > a {
	background:#b3b3b3;
	color:#fff;
}

.menu-left {
	color:#666;
	float:left;
	padding-right:8px;
	padding-top:2px;
	font-size:12px;
	line-height:14px;
	color:#999;
	text-shadow:none;
}
.menu-right {float:right}

/* ===== BANNER ===== */
.banner-wrap {
	background:#fff;
	padding:0;
	margin-bottom:0;
}
.banner {
	width: 100%;
	position:relative;
	overflow: visible;
}
.banner-inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 3;
}
.banner-text-wrap {
  position: absolute;
  top: 0;
  left: 940px;
  right: 0;
  bottom: 0;
}
.banner-text {
	margin-top:20vh;
	text-align:left;
}
.image-banner {
	background:none;
	text-transform:uppercase;
	text-align:left;
	color:#fff;
	margin-top:10px;
	margin-bottom:10px;
	line-height:32px;
	position:relative;
}
.image-banner-bg {
  position: absolute;
  background:rgba(255,255,255,0.9);
  top: 0;
  bottom: 0;
  left:0;
  right: -2000px;
  width: 2000px;
}
.banner-text h1 {
	font-family: 'Oswald', sans-serif;
	color: #b5b5b5;
	position:relative;
	font-size:30px;
	padding: 15px 40px;
	display: table;
	font-weight: 300;
	text-transform: uppercase;
}
.banner-text h2 {
	background:rgba(0,0,0,0.7);
	color:#fff;
	margin:0 auto;
	padding:20px;
	display:table;
}
.general-banner {
}
.general-banner img {
	width: 100%;
}
#banner-home {
}
.mobile-banner {
	display:none;
}
/* ===== CONTENT ===== */
.tagline {
	padding:20px 0;
	font-family: 'Oswald', sans-serif;
	letter-spacing:2px;
	background:#f6f6f6;
	text-align:center;
	font-size:22px;
	color:#4f4e4e;
	text-transform:uppercase;
	font-weight:300;
}
.content1 {
	padding:30px 0;
	background:#fff;
}
.index-img {
	padding:20px 0;
}
.index-grey {
	position:relative;
  	text-align: center;
}
.index-hover {
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	opacity:0;
}
.index-hover:hover {
	opacity:1;
	transition:1s;
}
.index-hover-img {
	position:relative;
}
.index-hover-text {
	background:rgba(255,255,255,0.8);
	font-family: 'Oswald', sans-serif;
	font-weight:300;
	color:#4f4e4e;
	font-size:18px;
	text-align:center;
	line-height:26px;
	position:absolute;
	top:20%;
	bottom:20%;
	left:0;
	right:0;
	width:100%;
	padding:10px 20px;
	box-sizing:border-box;
}

.index-hover-text h1,
.index-hover-text h2 {
	text-transform:uppercase;
}

.content3 {
	padding:30px 0;
}
.general-content1 {
	background:url(../img/architectural-laser-cutting-bg.jpg);
	padding: 30px 0;
}
.general-content1-box {
	background:rgba(255,255,255,0.95);
	padding:40px;
	margin-top:23%;
}
.general-services-box {
	background:rgba(255,255,255,0.95);
	padding:40px;
	font-size:11px;
	margin-top:4%;
}
.general-gallery-box {
	background:rgba(255,255,255,0.95);
	padding:40px;
	margin-top:1%;
}
.general-news-box {
	background:rgba(255,255,255,0.95);
	padding:40px;
	margin-top:8%;
}
.general-mini-box {
	background:rgba(255,255,255,0.95);
	padding:40px;
	font-size:11px;
	box-sizing:border-box;
}
.general-content2 {
}
.content-general1 {
	background:#d4d4d4;
}
/* ===== FOOTER ===== */
footer {
	background:	#f6f6f6;
	font-size:12px;
}
#footer-tagline {
	padding:10px;
}
.footer-main {
	font-family: 'Open Sans', sans-serif;
	color: #4d4d4d;
	padding: 10px 0;
	line-height: 40px;
	font-size: 12px;
}
.footer-main-title {
	text-transform: uppercase;
	font-size: 40px;
	line-height: 40px;
	font-family: 'Oswald', sans-serif;
	color:#4d4d4d;
}
.footer-main-title,
.footer-main-address,
.footer-main-contact {
	float:left;
}
.footer-main-address,
.footer-main-contact {
	padding:0 20px;
}
.footer-logo {
  padding: 5px;
  margin-top: -40px;
  text-align: right;	
}
address {
	padding:20px 0;
	margin-bottom:0;
	line-height:22px;
	color:#000;
}
.share-this {
	text-align:right;
	font-size:12px;
	color:#4d4d4d;
	font-family: 'Open Sans', sans-serif;
}

.a2a_kit {
	float:right;
    margin: 4px 0;
	margin-left:10px;
}

/* ===== COPYRIGHT ===== */
.top-link {
	float:right;
}
.copy {
	background:#fff;
	font-family: 'Oswald', sans-serif;
	font-size:14px;
	font-weight:300;
	color:#4d4d4d;
	padding:20px 0;
	padding-top:50px;
	line-height:20px;
}

/* FIXES */

/* ==========================================================================
   CMS styles
   ========================================================================== */

/* ===== BLOG PAGE ===== */

.blog {
	margin-bottom:20px;
}
#blog-menu {
	padding:20px;
	color:#fff;
	background:#eee;
	margin-top: 10px;
}

.blog-post-preview {
	padding: 20px;
	margin-bottom: 20px;
	border: 1px solid #eee;
}
.blog-post-preview:last-child {
	margin-bottom: 0;
	border-bottom: none;
}
.blog-post-preview header,
.blog header {
	padding: 0;
	margin : 0 0 10px 0;
	background:none;
	font-size:20px;
	font-weight:700;
}
.blog-post-preview-img {
	width: 25%;
	float: left;
}
.blog-post-preview-content {
	width: 72%;
	float: right;
}
.blog-post-content {
	height: 40px;
	overflow: hidden;
}
.blog-post-more {
	float: right;
	background: #eee;
	color:#555;
	border-radius: 1px;
	padding: 5px 10px;
	margin-top: 20px;
}
.blog-post-preview a:link, .blog-post-preview a:visited {
	color:#555;
}

.blog-post-preview a:hover, .blog-post-preview a:active {
	color:#555;
}
.blog-year-title {

	padding: 5% 0;
	margin: 0 auto;
	font-size: 18px;
	font-weight: bold;
	color:#000;
	border-bottom: 1px solid #999;
	margin-bottom: 10px;
}
.blog-month-title {
	width: 100%;
	font-size: 14px;
	font-weight: bold;
	color:#000;
	margin: 5px 0;
}
.blog-cloud {
	width: 90%;
	padding: 5%;
	margin-top: 5%;
	border-radius: 2px;
	background: #d4d4d4;
}
.blog-cloud a:link, .blog-cloud a:visited {color:#fff !important; text-decoration:none;}
.blog-cloud a:hover, .blog-cloud a:active {color:#000 !important; text-decoration:none;}
.blog-wc-smallest {font-size: 0.6em; padding: 3px;}
.blog-wc-small {font-size: 0.8em; padding: 3px;}
.blog-wc-medium {font-size: 1em; padding: 3px;}
.blog-wc-large {font-size: 1.2em; padding: 5px;}
.blog-wc-largest {font-size: 1.4em; padding: 5px;}
.blog-post-date {
	font-size: 14px;
	float: right;
}

#blog-search {
	margin-bottom:0;
}

.grey {
	color:#8f8f8f;
}

/* ===== CONTACT PAGE ===== */

#contact-msg {
	margin-bottom: 10px;
	display: none;
}
#contact-form {
	margin-bottom: 10px;
}

.contact article {
	padding:20px;
}

.contact aside {
	padding:20px;
	background:#eee;
}

.map-cover {
	position:relative;
}

.map-absolute {
	position:absolute;
	width:100%;
	top:0;
	bottom:0;
}

/* ===== GALLERY ===== */

#galleria {
	width: 100%;
	height: auto;
}

.statement {
	background:#eee;
	font-size:24px;
	line-height:36px;
	padding:40px;
	text-align:center;
}

.mini-gallery aside {
	background:#eee;
	padding:20px;
}

#gallery .tn3a-gallery {
	background:rgba(255,255,255,0.95);
	padding:20px;
}

/* ===== GENERAL ===== */
.statement > div {
	width: 80%;
	padding: 10%;
}

/* ==========================================================================
   RESPONSIVE OVERRIDES
   ========================================================================== */

/* iPads (landscape) 768x1024 ----------- */
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : landscape) {
  
}

/* iPads (portrait) 768x1024 ----------- */
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) 
and (orientation : portrait) {
  
}
/* Large desktop */
@media (max-width:1920px) {

}
@media (min-width: 1450px) and (max-width: 1700px) {
	
	.banner-text-wrap {
		left: 790px;
	}
	
}
@media (min-width: 1350px) and (max-width: 1449px) {
	
	.banner-text-wrap {
		left:650px;
	}
	
	.banner-text {
		margin-top:10vh;
	}

}
@media (min-width: 1200px) and (max-width: 1349px) {
	
	.banner-text-wrap {
		left:600px;
	}
	
	.banner-text {
		margin-top:6vh;
	}
	.banner-text h1 {
		font-size:26px;
	}

	
}
@media (min-width: 1000px) and (max-width: 1199px) {
	
	.banner-text-wrap {
		left:550px;
	}
	
	.banner-text {
		margin-top:5vh;
	}
	.banner-text h1 {
		font-size:20px;
	}

}
/* Standard desktop */
@media (min-width: 1200px) and (max-width: 1400px) {
	
	.tagline {
		font-size:18px;
	}
	

}
/* Small desktop */
@media (min-width: 980px) and (max-width: 1199px) {
	
	.footer-main-title {
		font-size:31px;
	}	
	.tagline {
		font-size:14px;
	}
	.index-hover-text {
		background: rgba(255,255,255,0.9);
		font-size: 13px;
		top: 9%;
		bottom: 9%;
		padding: 5px 20px;
	}
	.footer-main {font-size:11px;}
}	

@media (max-width: 999px) {.banner-text{display:none;}}
/* Portrait tablet to landscape and desktop */
@media (min-width: 768px) and (max-width: 979px) {
	
	#header-main {
		padding:20px 0;
	}
	.navbar .btn-navbar {
		width:100%;
		color:#000;
		margin-left:0;
		background: none;
		border: none;
		filter: none;
		box-shadow: none;
	}
	.navbar .btn-navbar:hover, .navbar .btn-navbar:focus, .navbar .btn-navbar:active, .navbar .btn-navbar.active, .navbar .btn-navbar.disabled, .navbar .btn-navbar[disabled] {
		color: #000;
		background: none;
	}
	.nav-collapse .nav > li > a:hover, .nav-collapse .nav > li > a:focus, .nav-collapse .dropdown-menu a:hover, .nav-collapse .dropdown-menu a:focus {
		background: none;
		color:#000;
	}
	.dropdown-menu>.active>a, .dropdown-menu>.active>a:hover, .dropdown-menu>.active>a:focus {
		background:none;
		color:#000;
	}
	.navbar-inner {
		background:none;
		border:none;
		box-shadow:none;
	}
	.navbar .nav > .active > a, .navbar .nav > .active > a:hover, .navbar .nav > .active > a:focus {
		background:none;
		color:#000;
		box-shadow:none;
	}
	.navbar .nav li.dropdown.open>.dropdown-toggle, .navbar .nav li.dropdown.active>.dropdown-toggle, .navbar .nav li.dropdown.open.active>.dropdown-toggle {
		background:none;
		color:#000;
	}
	.footer-main-title {
		font-size:25px;
	}
	.footer-main-address,
	.footer-main-contact {
		padding:0 10px;
		font-size:13px;
	}
	.tagline {
		font-size:14px;
	}
	.banner-text {
		display:none;
	}
	.content1 {
		padding:10px 0;
	}
	.index-img {
  		padding: 10px 0;
	}
}

/* Landscape phone to portrait tablet */
@media (max-width: 767px) {
	
	body, html {
		margin:0;
		padding:0;
	}
	header, header div, header article, header aside, header .text-right {
		text-align:center;
	}
	#header-top {
		padding:10px 20px;
		box-shadow:border-box;
	}
	#header-main {
		padding:20px 0;
	}
	.banner-text h1 {
	  margin: 2.5% auto 10px auto;
	  font-size:18px;
	  line-height:18px;
	  padding:10px;
	}
	.banner-text h2 {
	  margin: 0 auto;
	  font-size:14px;
	  line-height:14px;
	  padding:10px;
	}
	.navbar .btn-navbar {
		width:100%;
		color:#000;
		margin-left:0;
		background: none;
		border: none;
		filter: none;
		box-shadow: none;
	}
	.navbar .btn-navbar:hover, .navbar .btn-navbar:focus, .navbar .btn-navbar:active, .navbar .btn-navbar.active, .navbar .btn-navbar.disabled, .navbar .btn-navbar[disabled] {
		color: #000;
		background: none;
	}
	.nav-collapse .nav > li > a:hover, .nav-collapse .nav > li > a:focus, .nav-collapse .dropdown-menu a:hover, .nav-collapse .dropdown-menu a:focus {
		background: none;
		color:#000;
	}
	.dropdown-menu>.active>a, .dropdown-menu>.active>a:hover, .dropdown-menu>.active>a:focus {
		background:none;
		color:#000;
	}
	.navbar-inner {
		background:none;
		border:none;
		box-shadow:none;
	}
	.navbar .nav > .active > a, .navbar .nav > .active > a:hover, .navbar .nav > .active > a:focus {
		background:none;
		color:#000;
		box-shadow:none;
	}
	.navbar .nav li.dropdown.open>.dropdown-toggle, .navbar .nav li.dropdown.active>.dropdown-toggle, .navbar .nav li.dropdown.open.active>.dropdown-toggle {
		background:none;
		color:#000;
	}
	.navbar .nav {
		text-align:left;
	}
	.tagline {
		line-height:25px;
		font-size:17px;
		padding:20px 10px;
	}
	address, .copy {
		text-align:center;
		line-height:20px;
	}
	address {
		padding-bottom:0;
	}
	.top-link {
		float:none;
	}
	#blog-menu input {
		width:75%;
	}
	#blogs {
		width: 65%;
		float: left;
		padding-right: 5%;
	}
	#blog-menu {
		width: 35%;
		float: left;
	}
	.content1, .content2, .content3, .general-content1, .general-content2{
		padding:20px;
		box-sizing:border-box;
	}
	footer, footer div, footer article, footer aside, footer .text-right, .share-this {
		text-align:center;
	}
	.copy {
		padding:10px 20px;
		box-sizing:border-box;
	}
	.index-img {padding:0;}
	.index-grey img {opacity:0;}
	.index-hover {opacity:1;  padding: 20px;}
	.index-hover img {opacity:1;}
	.tagline {
		padding:20px;
		letter-spacing:1px;
		font-size:15px;
		margin-top:20px;
		line-height:30px;
	}
	.carousel-wrap {display:none;}
	.index-grey {margin-top:20px; opacity:1;}
	.header-social img {
    	width: 4%;
	}	
}
@media (max-width: 650px) {
	
	.index-hover-text {
    	line-height: 35px;
    	top: 10%;
    	bottom: 10%;
    	font-size: 19px;
	}	

}
/* Landscape phones and down iphone 320x480 */
@media (max-width: 480px) {
	#cookie-bar {
		font-size:12px;
	}
	.row-fluid [class*="span"] {
		margin-bottom:25px;
	}
	.row-fluid [class*="span"]:last-child {
		margin-bottom:10px;
	}
	.banner,
	.general-banner {
		display:none;
	}
	.mobile-banner {
		display:block;
		position:relative;
	}
	.mobile-banner .banner-text {
		position:absolute;
		top:0;
		left:0;
		right:0;
		bottom:0;
		padding:50px 20px;
		box-sizing:border-box;
	}
	#blog-menu input {
		width:75%;
	}
	.blog header {
		text-align:left;
	}
	
	.blog-post-date {
		font-size:10px;
	}
	.tagline {
		padding:20px;
		letter-spacing:1px;
		font-size:15px;
		margin-top:20px;
		line-height:30px;
	}
	.carousel-wrap {display:none;}
	.index-grey {margin-top:20px; opacity:1;}
	footer {
		font-size:10px;
	}
	.copy {
		line-height:30px;
	}
	#header-main {
		padding:35px 0;
	}
	.index-hover-text {
    	line-height: 28px;
    	top: 0px;
    	bottom: 0%;
    	font-size: 13px;
	}
	.index-hover-text h1, .index-hover-text h2 {font-size:17px;}
	.index-img {
    	padding: 0;
	}
	.footer-main {    
    	padding: 10px 9px;
	}
	.index-hover {
    	padding: 0 20px;
	}
	.header-social img {
    	width: 4%;
	}
}