@charset "UTF-8";

/* ================================================================== */

/* a. Common Styles

/* ================================================================== */

.section-head h2 { font: 30px/42px montserrat-bold, sans-serif; }
.desc { font: 14px/24px opensans-regular, sans-serif; }
.intro { font: 20px/36px opensans-light, sans-serif; }

/* Left clearing for flexible columns - columns that changes width in
different screen sizes. Makes columns with different heights align
properly.
--------------------------------------------------------------------- */
.first { clear: left; }   /* first column in default screen */
.m-first { clear: none; } /* first column in medium size screens */

/* Flex Slider
/* ------------------------------------------------------------------ */

/* Reset */
.flexslider a:active,
.flexslider a:focus  { outline: none; }
.slides, .flex-control-nav,
.flex-direction-nav { margin: 0; padding: 0; list-style: none; }
.slides li { margin: 0; }

/* Necessary Styles */
.flexslider {
   position: relative;
   zoom: 1;
   margin: 0;
   padding: 0;
}
.flexslider .slides { zoom: 1; }
.flexslider .slides > li { position: relative; }

/* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides > li { display: none; -webkit-backface-visibility: hidden; }
/* Suggested container for slide animation setups. Can replace this with your own */
.flex-container { zoom: 1; position: relative; }

/* Clearfix for .slides */
.slides:before,
.slides:after {
    content: " ";
    display: table;
}
.slides:after {
    clear: both;
}


/* ================================================================== */

/* c. Intro Section

/* ================================================================== */

#intro {
   background: #111 url(../images/intro-bg.jpg) no-repeat center;
   overflow: hidden;
}

/* FlexSlider Intro Slider Styles */
.slides {
   max-height: 660px;
   overflow: hidden;
}
.slider-text {
	color: #737E8C;
   text-align: center;
   width: 85%;
   margin: 156px auto 66px auto;
}
.slider-text h2 {
   font: 56px/78px montserrat-regular, Sans-serif;
   color: #fff;
   text-shadow: 0px 1px 5px rgba(50, 50, 50, .5);
   padding: 0;
   margin: 0;
}
.slider-text h2 span,
.slider-text a { color: #11ABB0; }

.slider-text p {
   font: 17px/36px opensans-light, sans-serif;
   text-shadow: 0px 1px 2px rgba(0, 0, 0, .3);
   padding: 0;
   margin: 18px 10% 0;
}


/* Direction Navigation
--------------------------------------------------------------- */
.flex-direction-nav a {
   display: block;
	width: 40px;
	height: 66px;
	margin: 0;
	background-color: #2D3339;
	cursor: pointer;
	z-index: 99999;
	opacity: 0;
   position: absolute;
	top: 50%;

   font: 0/0 a;
   text-shadow: none;
   color: transparent;

	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.flex-direction-nav a:hover { background-color: #11ABB0; }

.flex-direction-nav .flex-next {
	right: 0px;
	background: #2D3339 url(../images/direction-nav-right.png) no-repeat 53% 50%;
	position: absolute;
}
.flex-direction-nav .flex-prev {
	left: 0px;
	background: #2D3339 url(../images/direction-nav-left.png) no-repeat 47% 50%;
	position: absolute;
}
.flexslider:hover .flex-next,
.flexslider:hover .flex-prev { opacity: 1; }
.flex-direction-nav .flex-disabled {
   opacity: .3 !important;
   filter: alpha(opacity=30);
   cursor: default;
}


/* ================================================================== */

/* d. Services

/* ================================================================== */

#services {
   background: #1b1e21 url(../images/patterns/servicesbg.png);
   padding-top: 156px;
   padding-bottom: 120px;
   color: #4E565F;
}

#services a, #services a:visited  { color: #C4C4C4; }
#services a:hover, #services a:focus { color: #11ABB0; }

#services .section-head h2 { color: #11ABB0; }
#services .section-head p.desc,
#services .section-head .intro { color: #57606B; }

.services-wrapper { margin-top: 42px; }
.services-wrapper .col {
   width: 33.33333%;
   margin-bottom: 30px;
}
.services-wrapper h2 {
   font: 16px/24px montserrat-bold, sans-serif;
   letter-spacing: 1.5px;
   text-transform: uppercase;
   color: #C4C4C4;
   margin-bottom: 18px;
}
.services-wrapper p {
   font-size: 16px;
   line-height: 30px;
}
#services .services-wrapper i { margin-right: 10px; }


/* ================================================================== */

/* e. Portfolio

/* ================================================================== */

#portfolio {
	padding-top: 10px;
	padding-bottom: 120px;
}
#portfolio .section-head h2 { color: #0f9095; }
#portfolio .section-head p.desc { color: #999999; }
#portfolio .section-head .intro { color: #A3A3A3; }

/* Portfolio Content */
#portfolio-wrapper { margin-top: 36px; }
#portfolio-wrapper .col {
   width: 25%;
   margin-bottom: 36px;
}

.portfolio-item .item-wrap {
   background: #fff;
   overflow: hidden;

   -webkit-box-shadow: 0px 1px 1px rgba(50, 50, 50, 0.1);
   -moz-box-shadow:    0px 1px 1px rgba(50, 50, 50, 0.1);
   box-shadow:         0px 1px 1px rgba(50, 50, 50, 0.1);

   -webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.portfolio-item .item-wrap a { display: block; }
.portfolio-item .portfolio-item-meta {
	padding-bottom: 6px;
	padding-left: 0;
	padding-right: 0;
	padding-top: 6px;
}
.portfolio-item .portfolio-item-meta h5 a {
   font: 13px/24px montserrat-bold, sans-serif;
   color: #0f9095;
   margin-left: 7%;
}

/* on hover */
.portfolio-item:hover .item-wrap { background-color: #0f9095; }
.portfolio-item:hover h5 a { color: #fff !important; }







/* Reveal Modal Plugin Styles
---------------------------------------------------*/
.reveal-modal-bg {
   position: fixed;
	height: 100%;
	width: 100%;
	background: #000;
	background: rgba(0,0,0,.8);
	z-index: 100;
	display: none;
	top: 0;
	left: 0;
}
.reveal-modal {
   visibility: hidden;
	top: 100px;
	left: 50%;
	margin-left: -300px;
   width: 600px;
	max-width: 600px;
	background: #fff;
	position: absolute;
	z-index: 101;
	padding: 0;

	-moz-box-shadow: 0 0 10px rgba(0,0,0,.4);
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,.4);
	-box-shadow: 0 0 10px rgba(0,0,0,.4);
}
.reveal-modal .description-box {
	padding-bottom: 1px;
	padding-left: 36px;
	padding-right: 36px;
	padding-top: 9px;
}
.reveal-modal .description-box h4 {
	font: 15px/24px montserrat-bold, sans-serif;
	margin-bottom: 18px;
	color: #111;
}
.reveal-modal .description-box p {
	font: 13px/24px opensans-regular, sans-serif;
   color: #A1A1A1;
   margin-bottom: 18px;
}
.reveal-modal .description-box .categories {
   font: 11px/24px opensans-regular, sans-serif;
   color: #A1A1A1;
   text-transform: uppercase;
   letter-spacing: 1px;
   display: block;
}
.reveal-modal .description-box .categories i {
   margin-right: 8px;
}
.reveal-modal .link-box {
	background: #111;
	text-align: left;
	padding-bottom: 18px;
	padding-left: 36px;
	padding-right: 36px;
	padding-top: 18px;
}
.reveal-modal .link-box a {
   color: #fff;
	font: 11px/24px opensans-regular, sans-serif;
	text-transform: uppercase;
   letter-spacing: 3px;
   cursor: pointer;
}
.reveal-modal a:hover {	color: #00CCCC; }
.reveal-modal a.close-reveal-modal { margin-left: 28px; }










/* Comments
/* ------------------------------------------------------------------ */
#comments {
   background: #E6E8EB;
   padding-bottom: 90px;
   padding-top: 101px;
   border-top: 1px solid #E0E3E6;
}
#comments h3 {
   font: 20px/30px opensans-bold, sans-serif;
   margin-bottom: 6px;
   margin-left: 16.66667%;
   color: #313131;
}

/* Comments List */
ol.commentlist {
   border-top: 1px solid #D5D9DC;
	margin: 29px 0 54px 0;
	padding: 0;
   width: 75%;
   margin-left: 16.66667%;
}
.commentlist > li {
   position: relative;
	list-style: none;
	margin: 0;
	padding: 18px 0 17px 0;
	border-bottom: 1px solid #D5D9DC;
}
.commentlist  li .avatar {
   position: absolute;
   left: -40px;
   display: block;

   height: 50px;
   width: 50px;
}
.commentlist li .avatar img {
   margin-top: 6px;
   height: 50px;
   width: 50px;

   -moz-border-radius: 100% 100% 100% 100%;
	-webkit-border-radius: 100% 100% 100% 100%;
	-khtml-border-radius: 100% 100% 100% 100%;
	border-radius: 100% 100% 100% 100%;
}
.commentlist li .comment-info cite {
   font: 15px/30px opensans-bold, sans-serif;
   color: #454545;
}
.commentlist li .comment-info .comment-meta {
   font-size: 12px;
   line-height: 24px;
   display: block;
}
.commentlist li .comment-info .comment-meta .reply {
   font-family: opensans-semibold, sans-serif;
}
.commentlist li .comment-info .comment-meta .sep {
   margin: 0 5px;
   color: #AEB6B7;
}
.commentlist li .comment-text {
	clear: both;
	margin: 24px 0 0 0;
   padding: 0;
   line-height: 24px;
}

/* children */
.commentlist li ul.children {
   margin: 0;
   padding: 18px 0 0 0;
}
.commentlist li ul.children li {
   padding-left:  5% ;
   padding-top: 17px;
   border-top: 1px solid #D5D9DC;
}


/* comment form */
#comments form {
   margin-top: 30px;
   margin-left: 16.66667%;
}
#comments form label {
   font: 14px/24px opensans-bold, sans-serif;
	margin: 12px 0;
   color: #3d4145;
}
#comments form input,
#comments form textarea,
#comments form select {
   padding: 18px 18px;
	color: #3d4145;
	background: #CFD4D8;
	margin-bottom: 24px;
	border: 0;
	outline: none;
   font-size: 15px;
   line-height: 24px;
   width: 60%;
}
#comments form input:focus,
#comments form textarea:focus,
#comments form select:focus {
	color: #fff;
	background-color: #3d4145;
}
#comments form button.submit {
	font: 18px/30px montserrat-bold, sans-serif;
	text-transform: uppercase;
	letter-spacing: 3px;
	color:#fff;
	background: #11ABB0;
   padding: 18px 24px;
	border: none;
   cursor: pointer;
   height: auto;
   display: block;
   margin-top: 36px;

	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-khtml-border-radius: 3px;
	border-radius: 3px;
}
#comments form button.submit:hover { background: #3d4145; }
#comments form span.required {
	color: #11ABB0;
	font-size: 13px;
}

/* journal bottom nav */
.journal-bottom-nav {
   margin-top: 36px;
   margin-left: 16.66667%;
   padding-top: 5px;
   border-top: 1px solid #D1D6DB;
}
.bottom-nav {
    margin: 0;
    padding: 12px 0;
    font: 14px/36px opensans-bold, sans-serif;
 }
.bottom-nav li {
    display: inline-block;
    margin: 0;
    padding: 0;
    line-height: 24px;
}
.bottom-nav li i { margin-left: 5px; }
.bottom-nav li a:hover { color: #3d4145; }
.bottom-nav .sep {
   font: 16px/36px opensans-light, sans-serif;
   margin: 0 6px;
   color: #C0C7CE;
}



/* ================================================================== */

/* n. Media Queries

/* ================================================================== */


/* small screens
--------------------------------------------------------------------- */
@media only screen and (max-width: 836px) {

   /* adjust sections padding top */
   #services, #portfolio,
   #journal, #about { padding-top: 120px; }

   /* adjust font size */
   .intro, .testimonies .client-cite { font-size: 18px; }

   /* intro section
   -------------------------------------------------------------------- */
   .slider-text h2 { font: 48px/66px montserrat-regular, Sans-serif; }

   /* services section
   -------------------------------------------------------------------- */
   #services .section-head .col { width: 100%; }
   #services .services-wrapper { margin-top: 12px; }
   #services .services-wrapper .col { width: 50%; }
   #services .services-wrapper .col { margin-bottom: 0; }

   /* portfolio section
   -------------------------------------------------------------------- */
   #portfolio #portfolio-wrapper { margin-top: 12px; }
   #portfolio #portfolio-wrapper .col { width: 33.33333%; }

   /* journal section
   -------------------------------------------------------------------- */
   #journal .blog-entries { margin-top: 30px; }

   /* about section
   -------------------------------------------------------------------- */
   #about .process-wrap .col { width: 50%; }

   /* Call To Action Section
   /* ----------------------------------------------------------------- */
   #call-to-action p { font-size: 16px; }
   #call-to-action .button { font-size: 14px; }

   /* about section
   -------------------------------------------------------------------- */
   #about .section-head .col { width: 100%; }

   /* contact section
   ----------------------------------------------------------------------- */
   #contact label { width: 25%; }
   #contact button.submit { margin-left: 25%; }
   #contact input,
	#contact textarea,
	#contact select { width: 70%; }
   #message-warning, #message-success { width: 95%; }

   /* left clearing */
   .first { clear: none; }
   .m-first { clear: left; }

 

}



/* mobile wide
---------------------------------------------------------------------- */

@media only screen and (max-width: 767px) {

   /* center align some text */
   .section-head, .intro, #about h3,
   #journal .entry-header {
      text-align: center;
   }


   /* mobile navigation
   -------------------------------------------------------------------- */

   header.mobile { height: 66px; }
   header.mobile .logo a { top: 22px; }

   .mobile #nav-wrap {
      position: absolute;
      top: 0;
      right: 20px;
      width: auto;
      margin: 0;
   }
   .mobile #nav-wrap > a {
	   width: 48px;
		height: 48px;
		text-align: left;
		background-color: #11ABB0;
		position: relative;
      border: none;
      float: right;

      font: 0/0 a;
      text-shadow: none;
      color: transparent;
      }

	.mobile #nav-wrap > a:before,
   .mobile #nav-wrap > a:after {
	   position: absolute;
		border: 2px solid #fff;
		top: 35%;
		left: 25%;
		right: 25%;
		content: '';
	}
   .mobile #nav-wrap > a:after { top: 60%; }

   /* toggle buttons */
	.mobile #nav-wrap:not( :target ) > a:first-of-type,
	.mobile #nav-wrap:target > a:last-of-type  {
	   display: block;
	}

   /* hide menu panel */
   .mobile #nav-wrap ul#nav {
      height: auto;
		display: none;
      clear: both;
   }
   .mobile #nav-wrap ul#nav li {
      display: block;
      width: 100%;
      height: 100%;
      text-align: left;
   }
   .mobile #nav-wrap ul#nav > li.active a {
      color: #11ABB0 !important;
      background: none;
   }

   /* display menu panels */
	.mobile #nav-wrap:target > ul#nav	{
	   display: block;
      padding: 12px 25px 24px 25px;
      background: #4c4e5a;
      margin: 0;
      clear: both;
   }
   .mobile #nav-wrap ul#nav li { border-bottom: 1px dotted #595B6A; }
   .mobile #nav-wrap ul#nav li a {
      margin: 0;
      padding: 0;
      font-size: 13px;
      margin: 10px 0;
      line-height: 14px;
      border: none;
   }

    /* intro section
   -------------------------------------------------------------------- */
   .slider-text { margin-top: 120px; margin-bottom: 48px; }
   .slider-text h2 { font: 43px/54px montserrat-regular, sans-serif; }
   .slider-text p {
      font: 14px/30px opensans-regular, sans-serif;
      margin-top: 30px;
   }
   .slides {
      overflow: hidden;
      min-height: 300px;
   }

   /* portfolio section
   --------------------------------------------------------------------- */
    .reveal-modal {
   	margin-left: -42%;
		width: 84%;
   }

   /* journal section
   --------------------------------------------------------------------- */
   #journal .entry-header .author-image {
      display: none;
   }
   #journal .entry-header .entry-title {
      padding-left: 20px;
      margin-bottom: 18px;
   }
   #journal .entry .post-content {
      padding-left: 20px;
      margin-top: 6px;
   }
   #journal .entry .post-meta time,
   #journal .entry .post-meta .dauthor {
      display: inline;
   }
   #journal .entry .post-meta .dauthor:before {
      content: "/";
      padding-left: 5px;
      padding-right: 5px;
   }

   /* about section
   ----------------------------------------------------------------------- */
   .testimonials {
      text-align: center;
   }
   .testimonials .client-author .name {
      position: static;
   }
   .testimonials .client-author span {
      display: inline;
   }
   .testimonials .client-author span:before {
      content: "/";
      padding-left: 5px;
      padding-right: 5px;
   }

   /* Call To Action Section
   /* ----------------------------------------------------------------- */
   #call-to-action {
      text-align: center;
      padding-top: 60px;
      padding-bottom: 42px;
   }
   #call-to-action h2 {
      font: 30px/36px montserrat-bold, sans-serif;
      letter-spacing: -0.5px;
      margin-bottom: 6px
   }
   #call-to-action .button {
      padding-top: 12px;
      padding-bottom: 12px;
   }

   /* contact section
   ----------------------------------------------------------------------- */
   #contact label {
      display: block;
      float: none;
      width: auto;
   }
   #contact input,
	#contact textarea,
	#contact select {
      width: 100%;
      margin-bottom: 30px;
	}
   #contact button.submit {
      margin-left: 0;
   }
   #message-warning,
   #message-success {
      width: 100%;
   }


 
}

/* mobile narrow
  -------------------------------------------------------------------------- */

@media only screen and (max-width: 460px) {

   /* intro section
   ------------------------------------------------------------------------- */
   .slider-text { margin-top: 108px; margin-bottom: 36px; }
   .slider-text h2 { font: 32px/42px montserrat-regular, sans-serif; }
   .slider-text p {
      font: 12px/24px opensans-regular, sans-serif;
      margin-top: 24px;
   }

    /* journal section
   ------------------------------------------------------------------------- */
   #journal .entry-title h3 {
     font-size: 28px;
     line-height: 36px;
   }

}
