/*
THEME NAME: CMO Labs
DESCRIPTION: Custom theme developed by DaddyDesign.com for CMO Labs
VERSION: 1
AUTHOR: Daddy Design
AUTHOR URI: http://www.daddydesign.com/
*/

/* General Settings */
*{ margin: 0; padding: 0; }
img { border: 0; }

html, body { height: 100%; }
body{
font-family: 'Open Sans', sans-serif;
font-size: 15px;
color: #444;
background: #fff; 
}

p { margin-bottom: 20px; line-height: 24px; }

a{ color: #444; text-decoration: none; outline: none; }
a:hover{ text-decoration: none; }

.wf{ font-family: 'Open Sans Condensed', sans-serif; }

/* HTML5 Elements */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main { display: block; }

/* Loader */
.loader{ position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: block; background: #000; text-indent: -9000px; z-index: 9; }
#loader{ position: fixed; z-index: 9999999; }
.loader:before {
content: '';
height: 20px;
width: 20px;
position: absolute;
left:50%; 
top:50%; 
margin-top: -10px;
margin-left: -10px;
-webkit-animation: rotation .6s infinite linear;
-moz-animation: rotation .6s infinite linear;
-o-animation: rotation .6s infinite linear;
animation: rotation .6s infinite linear;
border-left: 6px solid rgba(255, 255, 255, .3);
border-right: 6px solid rgba(255, 255, 255, .3);
border-bottom: 6px solid rgba(255, 255, 255, .3);
border-top: 6px solid rgba(255, 255, 255, 1);
border-radius: 100%;
text-indent: -9000px;
-webkit-box-sizing: border-box; 
-moz-box-sizing: border-box; 
box-sizing: border-box;
}
.loader.big:before { height: 40px; width: 40px; margin-top: -20px; margin-left: -20px; }
@-webkit-keyframes rotation { from { -webkit-transform: rotate(0deg); } to { -webkit-transform: rotate(359deg); } }
@-moz-keyframes rotation { from { -moz-transform: rotate(0deg); } to { -moz-transform: rotate(359deg); } }
@-o-keyframes rotation { from { -o-transform: rotate(0deg); } to { -o-transform: rotate(359deg); } }
@keyframes rotation { from { transform: rotate(0deg); } to { transform: rotate(359deg); } }

/* Box Method */
.box{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

/* Round Button */
.btn{
width: auto;
height: 46px;
display: inline-block;
font-size: 18px;
font-weight: bold;
color: #f79420;
line-height: 46px;
text-transform: uppercase;
padding: 0 26px;
background-color: transparent;
border: 2px solid #f79420;
border-radius: 6px; 
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;
overflow: hidden;
}
.btn.white{ color: #fff; border-color: #fff; }
a:hover.btn{ color: #fff; background-color: #f79420; }
a:hover.btn.white{ color: #f79420; background-color: #fff; }

/* With Background Image */
.with_bg{
background-color: #000;
background-repeat: no-repeat;
background-position: center;
-webkit-background-size: cover; 
-moz-background-size: cover; 
-o-background-size: cover; 
background-size: cover;
}
.with_bg::before{
content: '';
display: block; 
width: 100%; 
height: 100%; 
position: absolute;
top: 0;
left: 0;
background: #000; 
-webkit-opacity: 0.3;
-moz-opacity: 0.3;
opacity: 0.3;
z-index: 1;
}

/* Image Resizing */
.img img{ display: block; width: auto; max-width: 100%; height: auto; margin: 0 auto; position: relative; }

/* Container */
#container{ width: 100%; height: 100%; float: left; position: relative; }

/* Header */
#header{ width: 260px; display: block; position: fixed; top: 0; left: 0; bottom: 0; padding: 30px; border-right: 1px solid #ddd; overflow: hidden; z-index: 999; }
#header::after{ content: ''; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: #fff; -webkit-opacity: 0.85; -moz-opacity: 0.85; opacity: 0.85; z-index: -1; }

#header h1#logo{ width: 200px; height: 43px; float: left; margin: 0 0 30px; text-indent: -9000px; }
#header h1#logo a{ display: block; width: 200px; height: 43px; background: url(images/logo.svg) no-repeat center; }

#nav_btn{ display: none; }
#header .toggle{ display: block; }
#header #nav{ width: 100%; float: left; position: relative; }
#header #nav ul.menu{ width: 100%; float: left; list-style: none; }
#header #nav ul.menu li{ width: 100%; float: left; position: relative; }
#header #nav ul.menu li a{ display: block; font-size: 18px; font-weight: bold; text-transform: uppercase; padding: 4px 0; position: relative; }
#header #nav ul.menu li.menu-item-has-children a{ padding-right: 22px; }
#header #nav ul.menu li a:hover{ color: #f79420; }
#header #nav ul.menu li a.active{ color: #f79420; }
#header #nav ul.menu li.menu-item-has-children > a::after{ 
content: ''; 
width: 14px;
height: 20px; 
display: block; 
position: absolute; 
top: 50%; 
right: 0; 
margin-top: -10px; 
background: url(images/arrow_down_orange.svg) no-repeat center top 50%;
-webkit-background-size: 14px 8px; 
-moz-background-size: 14px 8px;  
-o-background-size: 14px 8px; 
background-size: 14px 8px;
}
#header #nav ul.menu li.menu-item-has-children > a.active::after{ 
-webkit-transform: rotate(180deg);
-moz-transform: rotate(180deg);
-o-transform: rotate(180deg);
-ms-transform: rotate(180deg);
transform: rotate(180deg);  
}
#header #nav ul.menu li.menu-item-has-children ul.sub-menu{ width: 100%; float: left; display: none; padding: 0 0 10px; list-style: none; }
#header #nav ul.menu li.menu-item-has-children ul.sub-menu li a{ font-size: 16px; text-transform: none; padding: 2px 0; }

#header ul.contact{ display: block; position: absolute; bottom: 0; left: 0; right: 0; padding: 30px; list-style: none; z-index: 9; }
#header ul.contact li{ display: block; font-size: 15px; font-weight: bold; margin: 2px 0; }
#header ul.contact li.phone{ font-size: 21px; color: #f79420; }
#header ul.contact li.phone a{ color: #f79420; }
#header ul.contact li a:hover{ color: #f79420; }

/* Wrapper */
#wrapper{ width: 100%; display: block; position: absolute; top: 0; left: 0; right: 0; bottom: 0; overflow: visible; }

/* Main */
#main{ width: 100%; min-height: 100%; float: left; background: #fff; padding-left: 260px; position: relative; }
#home #main{ min-height: inherit; }

/* Section */
.section{ width: 100%; float: left; position: relative; }

/* Entry */
.entry{ width: 100%; max-width: 1100px; display: block; padding: 60px; margin: 0 auto; overflow: hidden; position: relative; }
.entry .header{ width: 100%; float: left; text-align: center; margin: 0 0 40px; position: relative; }
.entry .header::after{ content: '\00b0 \00b0 \00b0'; display: block; font-size: 30px; font-weight: bold; color: #ddd; line-height: 30px; padding-top: 40px; }
.entry .header h3.parent{ font-size: 24px; line-height: 32px; text-transform: uppercase; margin: 0 0 8px; }
.entry .header h1{ font-size: 60px; color: #f79420; line-height: 70px; }
.entry .header h2.sub_title{ font-size: 42px; color: #f79420; font-weight: 100; line-height: 52px; padding: 15px 0 0; }
.entry .content{ width: 100%; float: left; position: relative; }
.entry .footer{ width: 100%; float: left; position: relative; }

/* Home */
#hero{ height: 100%; background-color: #000; }
#hero.with_bg::before{ -webkit-opacity: 0.4; -moz-opacity: 0.4; opacity: 0.4; }
#hero .header{
width: 100%;
max-width: 1380px; 
display: block;
padding: 80px 80px 80px 340px;
position:absolute; 
top: 50%; 
left: 50%; 
-webkit-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%); 
transform: translate(-50%,-50%);
color: #fff;
text-align: center; 
z-index: 9;
}
#hero .header h1{ font-size: 44px; font-weight: normal; line-height: 56px; margin: 0 0 20px; }
#hero .header ul{ max-width: 620px; display: block; margin: 0 auto 20px; }
#hero .header ul li{ display: inline-block; font-size: 24px; font-weight: bold; line-height: 31px; padding: 0 8px 10px; }
#hero .header ul li::before { content: '\2022'; margin-right: 6px; }

#cta{ color: #fff; text-align: center; padding: 40px; background: #f79420; }
#cta .header{ display: block; max-width: 980px; margin: 0 auto; }
#cta .header h2{ font-size: 44px; font-weight: normal; line-height: 56px; margin: 0 0 30px; }

#clients{ text-align: center; padding: 60px 50px 50px; }
#clients .header{ display: block; max-width: 980px; padding: 0 10px; margin: 0 auto 40px; }
#clients .header h2{ font-size: 60px; color: #f79420; line-height: 70px; }
#clients .header h3.sub_title{ font-size: 32px; font-weight: 100; line-height: 42px; padding: 12px 0 0; }
#clients ul.logos{ display: block; text-align: left; list-style: none; }
#clients ul.logos li{ width: 16.6666%; display: inline-block; padding: 10px; margin-right: -4px;  vertical-align: top; }
#clients ul.logos li span{ display: block; background: #eee; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; overflow: hidden; }

/* Projects */
.project .footer{ padding-top: 20px; }
.project .footer .preview{ width: 100%; float: left; padding: 14px 4px; border-bottom: 1px solid #ddd; }
.project .footer .preview:first-child{ border-top: 1px solid #ddd; }
.project .footer .preview a{ display: block; color: #333; }
.project .footer .preview a:hover{ color: #f79420; }
.project .footer .preview h3{ font-size: 22px; line-height: 32px; margin: 0 0 3px; }
.project .footer .preview span{ display: block; font-size: 14px; font-style: italic; line-height: 21px; }

/* Footer */
#error404 .content{ text-align: center !important; }

/* Footer */
#footer{ width: 100%; float: left; padding-left: 260px; position: relative; }
#footer .wrapper{ width: 100%; float: left; background: #3c3c3c; }

#footer .nav{ width: 100%; float: left; padding: 30px; background: #444; }
#footer .nav ul{ width: 100%; float: left; position: relative; list-style: none; }
#footer .nav ul li{ width: 25%; float: left; padding: 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; position: relative; }
#footer .nav ul li a{ display: block; font-family: 'Open Sans Condensed', sans-serif; font-size: 22px; font-weight: bold; color: #aaa; margin: 0 0 10px; cursor: default; }
#footer .nav ul li ul.sub-menu{ width: 100%; float: left; clear: both; list-style: none; position: relative; }
#footer .nav ul li ul.sub-menu li{ width: 100%; padding: 0; margin: 0; }
#footer .nav ul li ul.sub-menu li span{ display: block; font-family: 'Open Sans', sans-serif; font-size: 15px; color: #aaa; font-weight: normal; padding: 2px 0; margin: 0; }
#footer .nav ul li ul.sub-menu li a{ display: block; font-family: 'Open Sans', sans-serif; font-size: 15px; font-weight: normal; padding: 2px 0; margin: 0; cursor: pointer; }
#footer .nav ul li ul.sub-menu li a:hover{ color: #f79420; }
#footer .nav ul li ul#social li a{ 
padding: 4px 0 4px 28px;
background-repeat: no-repeat; 
background-position: left center; 
-webkit-background-size: 20px; 
-moz-background-size: 20px;  
-o-background-size: 20px; 
background-size: 20px; 
}
#footer .nav ul li ul#social li.facebook a{ background-image: url(images/facebook.svg); }
#footer .nav ul li ul#social li.twitter a{ background-image: url(images/twitter.svg); }
#footer .nav ul li ul#social li.linkedin a{ background-image: url(images/linkedin.svg); }

#footer .meta{ width: 100%; float: left; font-size: 11px; color: #999; line-height: 17px; text-align: center; padding: 20px; }
#footer .meta a{ color: #999; }
#footer .meta a:hover{ color: #f79420; }
#footer .meta span{ display: inline-block; }
#footer .meta span span{ display: inline; }
#footer .meta span.copyright::after{ content: ' / '; display: inline-block; padding: 0 6px; margin: 0 -4px 0 0; }

/* Forms */
.wpcf7{ max-width: 600px; display: block; clear: both; margin: 0 auto !important; padding: 0 !important; }
.wpcf7-form{ width: 100%; display: block; overflow: hidden; position: relative; }
.wpcf7-form fieldset{ width: 100%; float: left; display: block; border: 0; border-bottom: 1px dotted #ccc; padding: 0 0 20px; margin: 0 0 30px; }
.wpcf7-form label{ display: block; font-size: 15px; font-weight: bold; line-height: 20px; text-transform: uppercase; padding: 0 0 0 5px; margin: 0 0 8px; }
.wpcf7-form div.form_radios{ width: 100%; float: left; margin: 0 0 20px; position: relative; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.wpcf7-form div.form_radios .wpcf7-list-item{ display: inline-block; padding: 0 4px 4px 0; }
.wpcf7-form div.form_field{ width: 100%; float: left; margin: 0 0 20px; position: relative; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.wpcf7-form div.form_field span{ display: block; }
.wpcf7-form div.form_field input, 
.wpcf7-form div.form_field select,
.wpcf7-form div.form_field textarea { 
width: 100%; 
display: block; 
font-family: inherit; 
color: inherit;
font-size: 15px; 
font-weight: bold;
padding: 12px 14px;
background: none;
border: 1px solid #ddd;
-webkit-box-sizing: border-box; 
-moz-box-sizing: border-box; 
box-sizing: border-box;
-webkit-appearance: none;
border-radius: 6px; 
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;	
outline: none;
}
.wpcf7-form div.form_field textarea { height: 140px; }
.wpcf7-form div.form_field select{ 
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
text-indent: 0.01px;
text-overflow: '';
padding-right: 32px;
background: url(images/arrow_down.svg) no-repeat right 12px top 50%;
-webkit-background-size: 10px 6px; 
-moz-background-size: 10px 6px;  
-o-background-size: 10px 6px; 
background-size: 10px 6px;
}
.wpcf7-form div.form_field select::-ms-expand { display: none; }
.wpcf7-form div.form_field input::-webkit-input-placeholder{ color: #333; }
.wpcf7-form div.form_field input:-moz-placeholder{ color: #333; }
.wpcf7-form div.form_field input::-moz-placeholder{ color: #333; }
.wpcf7-form div.form_field input:-ms-input-placeholder{ color: #333; }
.wpcf7-form div.form_field select::-webkit-input-placeholder{ color: #333; }
.wpcf7-form div.form_field select:-moz-placeholder{ color: #333; }
.wpcf7-form div.form_field select::-moz-placeholder{ color: #333; }
.wpcf7-form div.form_field select:-ms-input-placeholder{ color: #333; }
.wpcf7-form div.form_field textarea::-webkit-input-placeholder{ color: #333; }
.wpcf7-form div.form_field textarea:-moz-placeholder{ color: #333; }
.wpcf7-form div.form_field textarea::-moz-placeholder{ color: #333; }
.wpcf7-form div.form_field textarea:-ms-input-placeholder{ color: #333; }

.wpcf7-form div.submit{ width: 100%; float: left; clear: both; margin: 0 0 20px; position: relative; }
div.wpcf7 img.ajax-loader{ position: absolute; top: 50%; right: 0; margin-top: -8px; }
.wpcf7-form div.submit input { 
width: auto; 
float: left; 
font-family: 'Open Sans Condensed', sans-serif;  
font-size: 18px;
font-weight: bold !important;
color: #f79420; 
text-transform: uppercase; 
padding: 12px 20px;
margin: 0; 
border: 2px solid #f79420;
background: none; 
-webkit-background-size: 120px; 
-moz-background-size: 120px; 
-o-background-size: 120px; 
background-size: 120px;
position: relative; 
cursor: pointer;
outline: none;
-webkit-appearance: none;
border-radius: 6px; 
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;	
z-index: 9; 
}
.wpcf7-form div.submit input:hover{ color: #fff; background: #f79420; }

div.wpcf7-response-output{ 
clear: both;
color: #333 !important;
font-size: 15px;
font-weight: bold;
line-height: 22px;
border: 1px solid #ddd !important;
background: #f9f9f9;
margin: 0 0 20px !important; 
padding: 25px 20px !important;
color: inherit; 
text-align: center;
border-radius: 6px; 
-moz-border-radius: 6px; 
-webkit-border-radius: 6px;
}
div.wpcf7-validation-errors{ color: #fff !important; border: 1px solid #ff0000 !important; background: #ff0000; }

span.wpcf7-not-valid-tip {
width: auto !important;
height: 1px;
position: absolute;
overflow: hidden;
background: transparent !important;
border: 0 !important;
border-top: 1px solid #ff0000 !important;
text-indent: -9000px;
top: 0 !important;
left: 5px !important;
right: 5px !important;
bottom: inherit !important;
padding: 0 !important;
}

/* Content Block Universal Code */
/* Begin Images */
.content-block img{ display: block; max-width: 100%; height: auto; padding: 0 0 30px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.content-block .aligncenter { display: block; margin: 0 auto; }
.content-block .alignleft{ max-width: 50%; display: inline-block; float: left; padding-right: 30px; vertical-align: top; }
.content-block .alignright{ max-width: 50%; display: inline-block; float: right; padding-left: 30px; vertical-align: top; }
.content-block .alignleft img, .content-block .alignright img{ padding-left: 0; padding-right: 0; }
.content-block .wp-caption{ width: auto !important; text-align: center; margin: 0 0 20px; background: #fff; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.content-block .wp-caption.alignleft, .content-block .wp-caption.alignright{ width: 50% !important; padding: 0; }
.content-block .wp-caption.alignleft{ margin-right: 30px; }
.content-block .wp-caption.alignright{ margin-left: 30px; }
.content-block .wp-caption p.wp-caption-text{ display: block; font-size: 15px; line-height: 22px; padding: 10px 12px; margin: 0; background-color: #fff; }
.content-block .wp-caption img{ padding: 10px 10px 0; margin: 0 auto; }
/* END Images */

/* Begin Image Gallery */
.content-block .gallery{ display: block; max-width: 1020px; padding: 10px 0 30px; margin: 0 auto; overflow: hidden; }
.content-block .gallery .gallery_item{ width: 16.6666%; float: left; }
.content-block .gallery .gallery_item a{ display: block; padding: 5px; margin: 5px; background: #fff; }
.content-block .gallery .gallery_item a img{ display: block; width: auto; max-width: 100%; height: auto; padding: 0; margin: 0 auto; }
/* END Image Gallery */

/* Video */
.content-block embed, .content-block iframe, .content-block object{ max-width: 100%; }
.content-block video { max-width: 100%; height: auto; }

.content-block{ -ms-word-break: break-all; word-break: break-all; word-break: break-word; }
.content-block a{ color: #f79420; }
.content-block a:hover{ text-decoration: underline; }

.content-block blockquote{ 
font-family: 'Open Sans Condensed', sans-serif;
font-size: 28px;
font-weight: 100;
line-height: 40px;
padding: 15px 0;
margin: 0 0 20px;
position: relative;
}
.content-block blockquote p{ line-height: 40px; }
.content-block blockquote p:last-child{ margin-bottom: 0; }
.content-block blockquote span{ display: block; font-size: 20px; line-height: 30px; padding: 6px 0 0; }
.content-block .bqimg{ width: 100%; float: left; padding-top: 10px; }
.content-block .bqimg blockquote{ padding-top: 0; }

.content-block h1, .content-block h2, .content-block h3, .content-block h4, .content-block h5{ font-family: 'Open Sans Condensed', sans-serif; font-size: 100%; font-weight: bold; padding: 12px 0; }
.content-block h1:first-child, .content-block h2:first-child, .content-block h3:first-child, .content-block h4:first-child, .content-block h5:first-child{ padding-top: 0; }
.content-block h1{ font-size: 46px; line-height: 56px; }
.content-block h2{ font-size: 42px; line-height: 52px; }
.content-block h3{ font-size: 36px; line-height: 46px; }
.content-block h4{ font-size: 30px; line-height: 40px; }
.content-block h5{ font-size: 24px; line-height: 34px; }

.content-block ul, .content-block ol{ padding: 0 0 20px 40px; }
.content-block ul{ list-style: square; }
.content-block ul li, .content-block ol li{ padding: 0 0 8px; line-height: 26px; }
.content-block ul li p, .content-block ol li p{ margin: 0 0 15px; }
/* END Content Block Universal Code */

/* Modal Window */
#modal, #mask{
display:none;
width: 100%;
height: 100%;
position:fixed;
top:0px;
left:0px;
z-index: 999998;
}
#mask{ background: #000; }

.modal_window{
display:none;
position: absolute;
top: 0; 
right: 0; 
left: 0; 
bottom: 0;
margin: 0 0 45px;
z-index: 99999999;
}
.modal_window .loader{ background-color: transparent !important; }

.controls{
display:none;
width: 100%;
height: 100%;
position: relative;
z-index: 99999999;
}
.controls .wrap{ width: 100%; display: block; position: absolute; bottom: -45px; text-align: center; }
.controls .btns{ width: auto; display: inline-block; margin: 0 auto; }
.controls .btns span{ width: auto; height: 30px; display: inline-block; font-size: 16px; color: #999; line-height: 30px; background: #fff; border-right: 1px solid #000; vertical-align: top; }
.controls .btns span.prev_btn, .controls .btns span.next_btn{ font-size: 21px; line-height: 28px; }
.controls .btns span.next_btn{ border-right: 0; }
.controls .btns .disabled{ color: #aaa; padding: 0 12px;  }
.controls .btns span a{ display: block; color: #333; padding: 0 12px; cursor: pointer; }
.controls .btns span a:hover{ color: #f79420; text-decoration: none; }