/* ===================================================================
 *  01. webfonts and iconfonts - (_document-setup)
 *
 * ------------------------------------------------------------------- */
 @import url("font-awesome/css/font-awesome.min.css");
 @import url("micons/micons.css");
 @import url("fonts.css");
 
 
 /* ===================================================================
  *  02. base style overrides - (_document-setup)
  *
  * ------------------------------------------------------------------- */
 html {
   font-size: 10px;
 }
 @media only screen and (max-width: 1024px) {
   html {
     font-size: 9.375px;
   }
 }
 @media only screen and (max-width: 768px) {
   html {
     font-size: 10px;
   }
 }
 @media only screen and (max-width: 400px) {
   html {
     font-size: 9.375px;
   }
 }
 
 html, body {
   height: 100%;
 }
 
 body {
   background: #111111;
   font-family: "librebaskerville-regular", serif;
   font-size: 1.6rem;
   line-height: 3rem;
   color: #353535;
   margin: 0;
   padding: 0;
 }
 
 /* ------------------------------------------------------------------- 
  * links - (_document-setup) 
  * ------------------------------------------------------------------- */
 a, a:visited {
   color: #07617d;
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 
 a:hover, a:focus {
   color: #000000;
 }
 
 
 /* ===================================================================
  *  03. typography & general theme styles - (_document-setup.scss) 
  *
  * ------------------------------------------------------------------- */
 h1, h2, h3, h4, h5, h6,
 .h01, .h02, .h03, .h04, .h05, .h06 {
   font-family: "montserrat-bold", sans-serif;
   color: #151515;
   font-style: normal;
   text-rendering: optimizeLegibility;
   margin-bottom: 2.1rem;
 }
 
 h3, .h03, h4, .h04 {
   margin-bottom: 1.8rem;
 }
 
 h5, .h05, h6, .h06 {
   margin-bottom: 1.2rem;
 }
 
 h1, .h01 {
   font-size: 3.1rem;
   line-height: 1.35;
   letter-spacing: -.1rem;
 }
 @media only screen and (max-width: 600px) {
   h1, .h01 {
     font-size: 2.6rem;
     letter-spacing: -.07rem;
   }
 }
 
 h2, .h02 {
   font-size: 2.4rem;
   line-height: 1.25;
 }
 
 h3, .h03 {
   font-size: 2rem;
   line-height: 1.5;
 }
 
 h4, .h04 {
   font-size: 1.7rem;
   line-height: 1.76;
 }
 
 h5, .h05 {
   font-size: 1.4rem;
   line-height: 1.7;
   text-transform: uppercase;
   letter-spacing: .2rem;
 }
 
 h6, .h06 {
   font-size: 1.3rem;
   line-height: 1.85;
   text-transform: uppercase;
   letter-spacing: .2rem;
 }
 
 p img {
   margin: 0;
 }
 
 p.lead {
   font-family: "montserrat-regular", sans-serif;
   font-size: 2rem;
   line-height: 1.8;
   color: #4f4f4f;
   margin-bottom: 3.6rem;
 }
 @media only screen and (max-width: 768px) {
   p.lead {
     font-size: 1.8rem;
   }
 }
 
 em, i, strong, b {
   font-size: 1.6rem;
   line-height: 3rem;
   font-style: normal;
   font-weight: normal;
 }
 
 em, i {
   font-family: "librebaskerville-italic", serif;
 }
 
 strong, b {
   font-family: "librebaskerville-bold", serif;
 }
 
 small {
   font-size: 1.1rem;
   line-height: inherit;
 }
 
 blockquote {
   margin: 3rem 0;
   padding-left: 5rem;
   position: relative;
 }
 
 blockquote:before {
   content: "\201C";
   font-size: 10rem;
   line-height: 0px;
   margin: 0;
   color: rgba(0, 0, 0, 0.3);
   font-family: arial, sans-serif;
   position: absolute;
   top: 3.6rem;
   left: 0;
 }
 
 blockquote p {
   font-family: "librebaskerville-italic", georgia, serif;
   font-style: italic;
   padding: 0;
   font-size: 1.9rem;
   line-height: 1.895;
 }
 
 blockquote cite {
   display: block;
   font-size: 1.3rem;
   font-style: normal;
   line-height: 1.615;
 }
 
 blockquote cite:before {
   content: "\2014 \0020";
 }
 
 blockquote cite a,
 blockquote cite a:visited {
   color: #4f4f4f;
   border: none;
 }
 
 abbr {
   font-family: "librebaskerville-bold", serif;
   font-variant: small-caps;
   text-transform: lowercase;
   letter-spacing: .05rem;
   color: #4f4f4f;
 }
 
 var, kbd, samp, code, pre {
   font-family: Consolas, "Andale Mono", Courier, "Courier New", monospace;
 }
 
 pre {
   padding: 2.4rem 3rem 3rem;
   background: #F1F1F1;
 }
 
 code {
   font-size: 1.4rem;
   margin: 0 .2rem;
   padding: .3rem .6rem;
   white-space: nowrap;
   background: #F1F1F1;
   border: 1px solid #E1E1E1;
   border-radius: 3px;
 }
 
 pre > code {
   display: block;
   white-space: pre;
   line-height: 2;
   padding: 0;
   margin: 0;
 }
 
 pre.prettyprint > code {
   border: none;
 }
 
 del {
   text-decoration: line-through;
 }
 
 abbr[title], dfn[title] {
   border-bottom: 1px dotted;
   cursor: help;
 }
 
 mark {
   background: #FFF49B;
   color: #000;
 }
 
 hr {
   border: solid #d2d2d2;
   border-width: 1px 0 0;
   clear: both;
   margin: 2.4rem 0 1.5rem;
   height: 0;
 }
 
 /* ------------------------------------------------------------------- 
  * Lists - (_document-setup.scss)  
  * ------------------------------------------------------------------- */
 ol {
   list-style: decimal;
 }
 
 ul {
   list-style: disc;
 }
 
 li {
   display: list-item;
 }
 
 ol, ul {
   margin-left: 1.7rem;
 }
 
 ul li {
   padding-left: .4rem;
 }
 
 ul ul, ul ol,
 ol ol, ol ul {
   margin: .6rem 0 .6rem 1.7rem;
 }
 
 ul.disc li {
   display: list-item;
   list-style: none;
   padding: 0 0 0 .8rem;
   position: relative;
 }
 ul.disc li::before {
   content: "";
   display: inline-block;
   width: 8px;
   height: 8px;
   border-radius: 50%;
   background: #07617d;
   position: absolute;
   left: -17px;
   top: 11px;
   vertical-align: middle;
 }
 
 dt {
   margin: 0;
   color: #07617d;
 }
 
 dd {
   margin: 0 0 0 2rem;
 }
 
 /* ------------------------------------------------------------------- 
  * Spacing - (_document-setup)  
  * ------------------------------------------------------------------- */
 button, .button {
   margin-bottom: 1.2rem;
 }
 
 fieldset {
   margin-bottom: 1.5rem;
 }
 
 input,
 textarea,
 select,
 pre,
 blockquote,
 figure,
 table,
 p,
 ul,
 ol,
 dl,
 form,
 .fluid-video-wrapper,
 .ss-custom-select {
   margin-bottom: 3rem;
 }
 
 /* ------------------------------------------------------------------- 
  * floated image - (_document-setup)  
  * ------------------------------------------------------------------- */
 img.pull-right {
   margin: 1.5rem 0 0 3rem;
 }
 
 img.pull-left {
   margin: 1.5rem 3rem 0 0;
 }
 
 /* ------------------------------------------------------------------- 
  * block grids paddings
  * ------------------------------------------------------------------- */
 .bgrid {
   padding: 0 20px;
 }
 @media only screen and (max-width: 1024px) {
   .bgrid {
     padding: 0 18px;
   }
 }
 @media only screen and (max-width: 768px) {
   .bgrid {
     padding: 0 15px;
   }
 }
 @media only screen and (max-width: 600px) {
   .bgrid {
     padding: 0 10px;
   }
 }
 @media only screen and (max-width: 400px) {
   .bgrid {
     padding: 0;
   }
 }
 
 /* ------------------------------------------------------------------- 
  * tables - (_document-setup.scss)  
  * ------------------------------------------------------------------- */
 table {
   border-width: 0;
   width: 100%;
   max-width: 100%;
   font-family: "librebaskerville-regular", sans-serif;
 }
 
 th,
 td {
   padding: 1.5rem 3rem;
   text-align: left;
   border-bottom: 1px solid #E8E8E8;
 }
 
 th {
   color: #151515;
   font-family: "montserrat-bold", sans-serif;
 }
 
 td {
   line-height: 1.5;
 }
 
 th:first-child,
 td:first-child {
   padding-left: 0;
 }
 
 th:last-child,
 td:last-child {
   padding-right: 0;
 }
 
 .table-responsive {
   overflow-x: auto;
   -webkit-overflow-scrolling: touch;
 }
 
 /* ------------------------------------------------------------------- 
  * pace.js styles - minimal  - (_document-setup.scss)
  * ------------------------------------------------------------------- */
 .pace {
   -webkit-pointer-events: none;
   pointer-events: none;
   -webkit-user-select: none;
   -moz-user-select: none;
   user-select: none;
 }
 
 .pace-inactive {
   display: none;
 }
 
 .pace .pace-progress {
   position: fixed;
   z-index: 900;
   top: 0;
   right: 100%;
   width: 100%;
   height: 6px;
 }
 
 
 /* ===================================================================
  *  04. Preloader
  *
  * ------------------------------------------------------------------- */
 #preloader {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: #0F1215;
   z-index: 800;
   height: 100%;
   width: 100%;
 }
 
 .no-js #preloader, .oldie #preloader {
   display: none;
 }
 
 #loader {
   position: absolute;
   left: 50%;
   top: 50%;
   width: 60px;
   height: 60px;
   margin-left: -30px;
   margin-top: -30px;
   padding: 0;
   border-radius: 100%;
   -webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
   animation: sk-scaleout 1.0s infinite ease-in-out;
 }
 
 @-webkit-keyframes sk-scaleout {
   0% {
     -webkit-transform: scale(0);
   }
   100% {
     -webkit-transform: scale(1);
     opacity: 0;
   }
 }
 @keyframes sk-scaleout {
   0% {
     -webkit-transform: scale(0);
     transform: scale(0);
   }
   100% {
     -webkit-transform: scale(1);
     transform: scale(1);
     opacity: 0;
   }
 }
 
 
 /* ===================================================================
  *  05. forms - (_forms.scss)
  *
  * ------------------------------------------------------------------- */
 fieldset {
   border: none;
 }
 
 input[type="email"],
 input[type="number"],
 input[type="search"],
 input[type="text"],
 input[type="tel"],
 input[type="url"],
 input[type="password"],
 textarea,
 select {
   display: block;
   height: 6rem;
   padding: 1.5rem 2rem;
   border: 0;
   outline: none;
   vertical-align: middle;
   color: #444444;
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.4rem;
   line-height: 3rem;
   max-width: 100%;
   background: rgba(0, 0, 0, 0.1);
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 
 .ss-custom-select {
   position: relative;
   padding: 0;
 }
 .ss-custom-select select {
   -webkit-appearance: none;
   -moz-appearance: none;
   -ms-appearance: none;
   -o-appearance: none;
   appearance: none;
   text-indent: 0.01px;
   text-overflow: '';
   margin: 0;
   line-height: 3rem;
   vertical-align: middle;
 }
 .ss-custom-select select option {
   padding-left: 2rem;
   padding-right: 2rem;
 }
 .ss-custom-select select::-ms-expand {
   display: none;
 }
 .ss-custom-select::after {
   content: '\f0d7';
   font-family: 'FontAwesome';
   position: absolute;
   top: 50%;
   right: 1.5rem;
   margin-top: -10px;
   bottom: auto;
   width: 20px;
   height: 20px;
   line-height: 20px;
   font-size: 18px;
   text-align: center;
   pointer-events: none;
   color: #252525;
 }
 
 /* IE9 and below */
 .oldie .ss-custom-select::after {
   display: none;
 }
 
 textarea {
   min-height: 25rem;
 }
 
 input[type="email"]:focus,
 input[type="number"]:focus,
 input[type="search"]:focus,
 input[type="text"]:focus,
 input[type="tel"]:focus,
 input[type="url"]:focus,
 input[type="password"]:focus,
 textarea:focus,
 select:focus {
   color: #000000;
 }
 
 label, legend {
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.4rem;
   margin-bottom: .6rem;
   color: #020202;
   display: block;
 }
 
 input[type="checkbox"],
 input[type="radio"] {
   display: inline;
 }
 
 label > .label-text {
   display: inline-block;
   margin-left: 1rem;
   font-family: "montserrat-regular", sans-serif;
   line-height: inherit;
 }
 
 label > input[type="checkbox"],
 label > input[type="radio"] {
   margin: 0;
   position: relative;
   top: .15rem;
 }
 
 /* ------------------------------------------------------------------- 
  * Style Placeholder Text - (_forms.scss)
  * ------------------------------------------------------------------- */
 ::-webkit-input-placeholder {
   color: #8e8e8e;
 }
 
 :-moz-placeholder {
   color: #8e8e8e;
   /* Firefox 18- */
 }
 
 ::-moz-placeholder {
   color: #8e8e8e;
   /* Firefox 19+ */
 }
 
 :-ms-input-placeholder {
   color: #8e8e8e;
 }
 
 .placeholder {
   color: #8e8e8e !important;
 }
 
 /* ------------------------------------------------------------------- 
  * Change Autocomplete styles in Chrome - (_forms.scss)
  * ------------------------------------------------------------------- */
 input:-webkit-autofill,
 input:-webkit-autofill:hover,
 input:-webkit-autofill:focus
 input:-webkit-autofill,
 textarea:-webkit-autofill,
 textarea:-webkit-autofill:hover
 textarea:-webkit-autofill:focus,
 select:-webkit-autofill,
 select:-webkit-autofill:hover,
 select:-webkit-autofill:focus {
   border: none;
   -webkit-text-fill-color: #fabc5a;
   transition: background-color 5000s ease-in-out 0s;
 }
 
 
 /* ===================================================================
  *  06. buttons - (_button-essentials.scss)
  *
  * ------------------------------------------------------------------- */
 .button,
 a.button,
 button,
 input[type="submit"],
 input[type="reset"],
 input[type="button"] {
   display: inline-block;
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.4rem;
   text-transform: uppercase;
   letter-spacing: .3rem;
   height: 5.4rem;
   line-height: 5.4rem;
   padding: 0 3rem;
   margin: 0 .3rem 1.2rem 0;
   background: #A5A5A5;
   color: #222222;
   text-decoration: none;
   cursor: pointer;
   text-align: center;
   white-space: nowrap;
   border: none;
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 
 .button:hover,
 a.button:hover,
 button:hover,
 input[type="submit"]:hover,
 input[type="reset"]:hover,
 input[type="button"]:hover,
 .button:focus,
 button:focus,
 input[type="submit"]:focus,
 input[type="reset"]:focus,
 input[type="button"]:focus {
   background: #989898;
   color: #000000;
   outline: 0;
 }
 
 .button.button-primary,
 a.button.button-primary,
 button.button-primary,
 input[type="submit"].button-primary,
 input[type="reset"].button-primary,
 input[type="button"].button-primary {
   background: #151515;
   color: #FFFFFF;
 }
 
 .button.button-primary:hover,
 a.button.button-primary:hover,
 button.button-primary:hover,
 input[type="submit"].button-primary:hover,
 input[type="reset"].button-primary:hover,
 input[type="button"].button-primary:hover,
 .button.button-primary:focus,
 button.button-primary:focus,
 input[type="submit"].button-primary:focus,
 input[type="reset"].button-primary:focus,
 input[type="button"].button-primary:focus {
   background: #030303;
 }
 
 button.full-width, .button.full-width {
   width: 100%;
   margin-right: 0;
 }
 
 button.medium, .button.medium {
   height: 5.7rem !important;
   line-height: 5.7rem !important;
   padding: 0 1.8rem !important;
 }
 
 button.large, .button.large {
   height: 6rem !important;
   line-height: 6rem !important;
   padding: 0rem 3rem !important;
 }
 
 button.stroke, .button.stroke {
   background: transparent !important;
   border: 3px solid #313131;
   line-height: 4.8rem;
 }
 
 button.stroke.medium, .button.stroke.medium {
   line-height: 5.1rem !important;
 }
 
 button.stroke.large, .button.stroke.large {
   line-height: 5.4rem !important;
 }
 
 button.stroke:hover, .button.stroke:hover {
   border: 3px solid #f9a828;
   color: #f9a828;
 }
 
 button::-moz-focus-inner,
 input::-moz-focus-inner {
   border: 0;
   padding: 0;
 }
 
 
 /* ===================================================================
  *  07. other components - (_others.scss)
  *
  * ------------------------------------------------------------------- */
 
 /**
  * alert box - (_alert-box.scss)
  * -------------------------------------------------------------------
  */
 .alert-box {
   padding: 2.1rem 4rem 2.1rem 3rem;
   position: relative;
   margin-bottom: 3rem;
   border-radius: 3px;
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.5rem;
 }
 .alert-box .close {
   position: absolute;
   right: 1.8rem;
   top: 1.8rem;
   cursor: pointer;
 }
 
 .ss-error {
   background-color: #ffd1d2;
   color: #e65153;
 }
 
 .ss-success {
   background-color: #c8e675;
   color: #758c36;
 }
 
 .ss-info {
   background-color: #d7ecfb;
   color: #4a95cc;
 }
 
 .ss-notice {
   background-color: #fff099;
   color: #bba31b;
 }
 
 /* ------------------------------------------------------------------- 
  * additional typo styles - (_additional-typo.scss)
  * ------------------------------------------------------------------- */
 /* drop cap 
  * ----------------------------------------------- */
 .drop-cap:first-letter {
   float: left;
   margin: 0;
   padding: 1.5rem .6rem 0 0;
   font-size: 8.4rem;
   font-family: "montserrat-bold", sans-serif;
   line-height: 6rem;
   text-indent: 0;
   background: transparent;
   color: #151515;
 }
 
 /* line definition style 
  * ----------------------------------------------- */
 .lining dt, .lining dd {
   display: inline;
   margin: 0;
 }
 .lining dt + dt:before,
 .lining dd + dt:before {
   content: "\A";
   white-space: pre;
 }
 .lining dd + dd:before {
   content: ", ";
 }
 .lining dd + dd:before {
   content: ", ";
 }
 .lining dd:before {
   content: ": ";
   margin-left: -0.2em;
 }
 
 /* dictionary definition style 
  * ----------------------------------------------- */
 .dictionary-style dt {
   display: inline;
   counter-reset: definitions;
 }
 .dictionary-style dt + dt:before {
   content: ", ";
   margin-left: -0.2em;
 }
 .dictionary-style dd {
   display: block;
   counter-increment: definitions;
 }
 .dictionary-style dd:before {
   content: counter(definitions,decimal) ". ";
 }
 
 /** 
  * Pull Quotes
  * -----------
  * markup:
  *
  * <aside class="pull-quote">
  *		<blockquote>
  *			<p></p>
  *		</blockquote>
  *	</aside>
  *
  * --------------------------------------------------------------------- */
 .pull-quote {
   position: relative;
   padding: 2.1rem 3rem 2.1rem 0px;
 }
 .pull-quote:before, .pull-quote:after {
   height: 1em;
   position: absolute;
   font-size: 10rem;
   font-family: Arial, Sans-Serif;
   color: rgba(0, 0, 0, 0.3);
 }
 .pull-quote:before {
   content: "\201C";
   top: 33px;
   left: 0;
 }
 .pull-quote:after {
   content: '\201D';
   bottom: -33px;
   right: 0;
 }
 .pull-quote blockquote {
   margin: 0;
 }
 .pull-quote blockquote:before {
   content: none;
 }
 
 /** 
  * Stats Tab
  * ---------
  * markup:
  *
  * <ul class="stats-tabs">
  *		<li><a href="#">[value]<em>[name]</em></a></li>
  *	</ul>
  *
  * Extend this object into your markup.
  *
  * --------------------------------------------------------------------- */
 .stats-tabs {
   padding: 0;
   margin: 3rem 0;
 }
 .stats-tabs li {
   display: inline-block;
   margin: 0 1.5rem 3rem 0;
   padding: 0 1.5rem 0 0;
   border-right: 1px solid #ccc;
 }
 .stats-tabs li:last-child {
   margin: 0;
   padding: 0;
   border: none;
 }
 .stats-tabs li a {
   display: inline-block;
   font-size: 2.5rem;
   font-family: "montserrat-bold", sans-serif;
   border: none;
   color: #252525;
 }
 .stats-tabs li a:hover {
   color: #07617d;
 }
 .stats-tabs li a em {
   display: block;
   margin: .6rem 0 0 0;
   font-size: 1.4rem;
   font-family: "montserrat-regular", sans-serif;
   color: #4f4f4f;
 }
 
 /**
  * skillbars - (_skillbars.scss)
  * -------------------------------------------------------------------
  */
 .skill-bars {
   list-style: none;
   margin: 6rem 0 3rem;
 }
 .skill-bars li {
   height: .6rem;
   background: #a1a1a1;
   width: 100%;
   margin-bottom: 6rem;
   padding: 0;
   position: relative;
 }
 .skill-bars li strong {
   position: absolute;
   left: 0;
   top: -3rem;
   font-family: "montserrat-bold", sans-serif;
   color: #313131;
   text-transform: uppercase;
   letter-spacing: .2rem;
   font-size: 1.5rem;
   line-height: 2.4rem;
 }
 .skill-bars li .progress {
   background: #313131;
   position: relative;
   height: 100%;
 }
 .skill-bars li .progress span {
   position: absolute;
   right: 0;
   top: -3.6rem;
   display: block;
   font-family: "montserrat-regular", sans-serif;
   color: white;
   font-size: 1.1rem;
   line-height: 1;
   background: #313131;
   padding: .6rem .6rem;
   border-radius: 3px;
 }
 .skill-bars li .progress span::after {
   position: absolute;
   left: 50%;
   bottom: -5px;
   margin-left: -5px;
   border-right: 5px solid transparent;
   border-left: 5px solid transparent;
   border-top: 5px solid #313131;
   content: "";
 }
 .skill-bars li .percent5 {
   width: 5%;
 }
 .skill-bars li .percent10 {
   width: 10%;
 }
 .skill-bars li .percent15 {
   width: 15%;
 }
 .skill-bars li .percent20 {
   width: 20%;
 }
 .skill-bars li .percent25 {
   width: 25%;
 }
 .skill-bars li .percent30 {
   width: 30%;
 }
 .skill-bars li .percent35 {
   width: 35%;
 }
 .skill-bars li .percent40 {
   width: 40%;
 }
 .skill-bars li .percent45 {
   width: 45%;
 }
 .skill-bars li .percent50 {
   width: 50%;
 }
 .skill-bars li .percent55 {
   width: 55%;
 }
 .skill-bars li .percent60 {
   width: 60%;
 }
 .skill-bars li .percent65 {
   width: 65%;
 }
 .skill-bars li .percent70 {
   width: 70%;
 }
 .skill-bars li .percent75 {
   width: 75%;
 }
 .skill-bars li .percent80 {
   width: 80%;
 }
 .skill-bars li .percent85 {
   width: 85%;
 }
 .skill-bars li .percent90 {
   width: 90%;
 }
 .skill-bars li .percent95 {
   width: 95%;
 }
 .skill-bars li .percent100 {
   width: 100%;
 }
 
 /* ===================================================================
  *  08. common and reusable styles 
  *
  * ------------------------------------------------------------------- */
 .section-intro {
   text-align: center;
   position: relative;
   margin-bottom: 1.5rem;
 }
 .section-intro h1 {
   font-family: "librebaskerville-bold", serif;
   font-size: 4.8rem;
   line-height: 1.375;
   color: #151515;
 }
 .section-intro h3 {
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.8 rem;
   line-height: 1.667;
   color: rgba(242, 242, 242, 0.5);
   text-transform: uppercase;
   letter-spacing: .3rem;
   margin-bottom: 1.2rem;
 }
 .section-intro .lead {
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.8;
   line-height: 1.833;
 }
 .section-intro.with-bottom-sep {
   padding-bottom: 4.2rem;
   position: relative;
 }
 .section-intro.with-bottom-sep::after {
   display: inline-block;
   height: 1px;
   width: 200px;
   background-color: rgba(242, 242, 242, 0.1);
   text-align: center;
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * section-intro
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
   .section-intro h1 {
     font-size: 4.4rem;
   }
   .section-intro .lead {
     font-size: 1.7rem;
   }
 }
 @media only screen and (max-width: 768px) {
   .section-intro h1 {
     font-size: 4rem;
   }
   .section-intro h3 {
     font-size: 1.7rem;
   }
 }
 @media only screen and (max-width: 600px) {
   .section-intro h1 {
     font-size: 3.4rem;
   }
   .section-intro h3 {
     font-size: 1.7rem;
   }
 }
 @media only screen and (max-width: 500px) {
   .section-intro h3 {
     font-size: 1.5rem;
   }
 }
 @media only screen and (max-width: 400px) {
   .section-intro h1 {
     font-size: 3.1rem;
   }
 }
 .wide {
   max-width: 1300px;
 }
 
 .narrow {
   max-width: 800px;
 }
 
 .js .animate-this, .js .animate-intro {
   opacity: 0;
 }
 
 .oldie .animate-this,
 .oldie .animate-intro
 .no-cssanimations .animate-this,
 .no-cssanimations .animate-intro {
   opacity: 1;
 }
 
 
 /* ===================================================================
  *  09. header styles - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 header {
   width: 100%;
   height: auto;
   position: absolute;
   left: 0;
   top: 0;
   z-index: 700;
 }
 header .row {
   height: auto;
   max-width: 1300px;
   position: relative;
 }
 
 /* ------------------------------------------------------------------- 
  * header logo - (_layout.css) 
  * ------------------------------------------------------------------- */
 header .header-logo {
   position: absolute;
   left: 32px;
   top: 12px;
   -moz-transition: all 1s ease-in-out;
   -o-transition: all 1s ease-in-out;
   -webkit-transition: all 1s ease-in-out;
   -ms-transition: all 1s ease-in-out;
   transition: all 1s ease-in-out;
 }
 header .header-logo a {
   display: block;
   margin: 0;
   padding: 0;
   outline: 0;
   border: none;
   width: 120px;
   height: 120px;
   font: 0/0 a;
   text-shadow: none;
   color: transparent;
   -moz-transition: all 0.5s ease-in-out;
   -o-transition: all 0.5s ease-in-out;
   -webkit-transition: all 0.5s ease-in-out;
   -ms-transition: all 0.5s ease-in-out;
   transition: all 0.5s ease-in-out;
 }
 
 /* ------------------------------------------------------------------- 
  * menu trigger - (_layout.css) 
  * ------------------------------------------------------------------- */
 #header-menu-trigger {
   display: block;
   position: fixed;
   right: 32px;
   top: 30px;
   height: 42px;
   width: 42px;
   line-height: 42px;
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.4rem;
   text-transform: uppercase;
   letter-spacing: .2rem;
   color: rgba(255, 255, 255, 0.5);
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 #header-menu-trigger.opaque {
   background-color: #000000;
 }
 #header-menu-trigger.opaque .header-menu-text {
   background-color: #000000;
 }
 #header-menu-trigger:hover, #header-menu-trigger:focus {
   color: #FFFFFF;
 }
 #header-menu-trigger .header-menu-text {
   display: block;
   position: absolute;
   top: 0;
   left: -75px;
   width: 75px;
   text-align: center;
   background-color: transparent;
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 #header-menu-trigger .header-menu-icon {
   display: block;
   height: 3px;
   width: 24px;
   background-color: #FFFFFF;
   position: absolute;
   top: 50%;
   right: 9px;
   margin-top: -1.5px;
 }
 #header-menu-trigger .header-menu-icon::before, 
 #header-menu-trigger .header-menu-icon::after {
   content: '';
   width: 100%;
   height: 100%;
   background-color: inherit;
   position: absolute;
   left: 0;
 }
 #header-menu-trigger .header-menu-icon::before {
   top: -9px;
 }
 #header-menu-trigger .header-menu-icon::after {
   bottom: -9px;
 }
 
 /* ------------------------------------------------------------------- 
  * off-canvas menu - (_layout.scss) 
  * ------------------------------------------------------------------- */
 #menu-nav-wrap {
   background: #0C0C0C;
   color: rgba(255, 255, 255, 0.25);
   font-size: 1.5rem;
   line-height: 1.6;
   padding: 3.6rem 3rem;
   height: 100%;
   width: 240px;
   position: fixed;
   right: 0;
   top: 0;
   visibility: hidden;
   overflow-y: auto;
   z-index: 800;
   -webkit-transform: translateZ(0);
   -webkit-backface-visibility: hidden;
   -webkit-transform: translateX(100%);
   -ms-transform: translateX(100%);
   transform: translateX(100%);
   -moz-transition: all 0.4s ease-in-out;
   -o-transition: all 0.4s ease-in-out;
   -webkit-transition: all 0.4s ease-in-out;
   -ms-transition: all 0.4s ease-in-out;
   transition: all 0.4s ease-in-out;
 }
 #menu-nav-wrap a, #menu-nav-wrap a:visited {
   color: rgba(255, 255, 255, 0.5);
 }
 #menu-nav-wrap a:hover, #menu-nav-wrap a:focus, #menu-nav-wrap a:active {
   color: white;
 }
 #menu-nav-wrap h3 {
   color: white;
   font-family: "montserrat-regular", sans-serif;
   font-size: 2rem;
   line-height: 1.5;
   margin-bottom: 1.5rem;
 }
 #menu-nav-wrap .nav-list {
   font-family: "montserrat-regular", sans-serif;
   margin: 3.6rem 0 1.5rem 0;
   padding: 0 0 1.8rem 0;
   list-style: none;
   line-height: 3.6rem;
 }
 #menu-nav-wrap .nav-list li {
   padding-left: 0;
   border-bottom: 1px dotted rgba(255, 255, 255, 0.03);
   line-height: 4.2rem;
 }
 #menu-nav-wrap .nav-list li:first-child {
   border-top: 1px dotted rgba(255, 255, 255, 0.03);
 }
 #menu-nav-wrap .nav-list li a {
   color: rgba(255, 255, 255, 0.60);
   display: block;
 }
 
 #menu-nav-wrap span.h03 {
   color: #FFFFFF !important
 }
 
 #menu-nav-wrap .nav-list li a:hover, 
 #menu-nav-wrap .nav-list li a:focus {
   color: white;
 }
 #menu-nav-wrap .header-social-list {
   list-style: none;
   display: inline-block;
   margin: 0;
   font-size: 2.1rem;
 }
 #menu-nav-wrap .header-social-list li {
   margin-right: 12px;
   padding-left: 0;
   display: inline-block;
 }
 #menu-nav-wrap .header-social-list li a {
   color: rgba(255, 255, 255, 0.60);
 }
 #menu-nav-wrap .header-social-list li a:hover, 
 #menu-nav-wrap .header-social-list li a:focus {
   color: white;
 }
 #menu-nav-wrap .header-social-list li:last-child {
   margin: 0;
 }
 #menu-nav-wrap .close-button {
   display: block;
   height: 30px;
   width: 30px;
   border-radius: 3px;
   background-color: rgba(0, 0, 0, 0.3);
   position: absolute;
   top: 36px;
   right: 30px;
   font: 0/0 a;
   text-shadow: none;
   color: transparent;
 }
 #menu-nav-wrap .close-button span::before, 
 #menu-nav-wrap .close-button span::after {
   content: "";
   display: block;
   height: 2px;
   width: 12px;
   background-color: #fff;
   position: absolute;
   top: 50%;
   left: 9px;
   margin-top: -1px;
 }
 #menu-nav-wrap .close-button span::before {
   -webkit-transform: rotate(-45deg);
   -ms-transform: rotate(-45deg);
   transform: rotate(-45deg);
 }
 #menu-nav-wrap .close-button span::after {
   -webkit-transform: rotate(45deg);
   -ms-transform: rotate(45deg);
   transform: rotate(45deg);
 }
 #menu-nav-wrap .sponsor-text {
   font-family: "librebaskerville-regular", serif;
   font-size: 1.4rem;
   line-height: 3rem;
 }
 #menu-nav-wrap .sponsor-text span {
   color: rgba(255, 255, 255, 0.5);
 }
 
 /* menu is open */
 .menu-is-open #menu-nav-wrap {
   -webkit-transform: translateX(0);
   -ms-transform: translateX(0);
   transform: translateX(0);
   visibility: visible;
   -webkit-overflow-scrolling: touch;
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * header section 
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 768px) {
   header .header-logo a {
     width: 60px;
     height: 60px;
     left: 32px;
     top: 48px;
     background-size: contain;
   }
 }
 @media only screen and (max-width: 400px) {
   #header-menu-trigger .header-menu-text {
     display: none;
   }
 }
 
 
 /* ===================================================================
  *  10. home - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 #home {
   width: 100%;
   height: 100%;
   background-repeat: no-repeat;
   background-position: center 30%;
   -webkit-background-size: cover;
   -moz-background-size: cover;
   background-size: cover;
   background-attachment: fixed;
   min-height: 804px;
   position: relative;
   opacity: .90;
 }
 #home .overlay {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   opacity: 0.8;
 }
 
 .home-content-table {
   width: 100%;
   height: 100%;
   display: table;
   position: relative;
   text-align: center;
 }
 
 .home-content-tablecell {
   display: table-cell;
   vertical-align: middle;
   z-index: 500;
 }
 .home-content-tablecell .row {
   position: relative;
   padding-top: 16.2rem;
   padding-bottom: 15rem;
 }
 .home-content-tablecell h3 {
   font-family: "montserrat-bold", sans-serif;
   font-size: 2.2rem;
   color: white;
   text-transform: uppercase;
   letter-spacing: .3rem;
   margin: 0 0 .9rem 0;
 }
 .home-content-tablecell h1 {
   font-family: "montserrat-bold", serif;
   font-size: 9rem;
   line-height: 1.133;
   color: #FFFFFF;
 }
 .home-content-tablecell .more {
   margin: 4.8rem 0 0 0;
 }
 .home-content-tablecell .more .button {
   border-color: #FFFFFF;
   color: #FFFFFF;
 }
 
 /* home social-list */
 .home-social-list {
   position: absolute;
   left: 48px;
   bottom: 54px;
   margin: 0;
   padding: 0;
   list-style: none;
   font-size: 2.4rem;
   line-height: 1.75;
   text-align: center;
 }
 .home-social-list::before {
   display: block;
   content: "";
   width: 2px;
   height: 42px;
   background-color: rgba(255, 255, 255, 0.3);
   margin-left: auto;
   margin-right: auto;
   margin-bottom: 12px;
 }
 .home-social-list li {
   padding-left: 0;
 }
 .home-social-list li a, .home-social-list li a:visited {
   color: #FFFFFF;
 }
 .home-social-list li a:hover, 
 .home-social-list li a:focus, 
 .home-social-list li a:active {
   color: #151515;
 }
 
 /* scroll down */
 .scrolldown {
   position: absolute;
   bottom: 0;
   right: 0;
   -webkit-transform: rotate(90deg);
   -ms-transform: rotate(90deg);
   transform: rotate(90deg);
   -webkit-transform-origin: right top 0;
   -ms-transform-origin: right top 0;
   transform-origin: right top 0;
   float: right;
 }
 .scrolldown i {
   padding-left: 9px;
 }
 .scrolldown a:hover, .scrolldown a:focus, .scrolldown a:active {
   color: #151515 !important;
 }
 
 html[data-useragent*='MSIE 10.0'] .scrolldown,
 .oldie .scrolldown {
   display: none;
 }
 
 .scroll-icon {
   display: inline-block;
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.4rem;
   text-transform: uppercase;
   letter-spacing: .3rem;
   color: #FFFFFF !important;
   background: transparent;
   position: relative;
   top: 36px;
   right: 42px;
   -webkit-animation: animate-it 3s ease infinite;
   animation: animate-it 3s ease infinite;
 }
 
 /* vertical animation */
 @-webkit-keyframes animate-it {
   0%, 60%, 80%, 100% {
     -webkit-transform: translateX(0);
   }
   20% {
     -webkit-transform: translateX(-5px);
   }
   40% {
     -webkit-transform: translateX(20px);
   }
 }
 @keyframes animate-it {
   0%, 60%, 80%, 100% {
     -webkit-transform: translateX(0);
   }
   20% {
     -webkit-transform: translateX(-5px);
   }
   40% {
     -webkit-transform: translateX(20px);
   }
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * home section 
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1200px) {
   .home-content-tablecell h3 {
     font-size: 2.1rem;
   }
   .home-content-tablecell h1 {
     font-size: 7rem;
   }
 }
 @media only screen and (max-width: 1024px) {
   .home-content-tablecell h3 {
     font-size: 2rem;
   }
   .home-content-tablecell h1 {
     font-size: 6rem;
   }
 }
 @media only screen and (max-width: 768px) {
   .home-content-tablecell .row {
     max-width: 600px;
   }
   .home-content-tablecell h3 {
     font-size: 1.8rem;
   }
   .home-content-tablecell h1 {
     font-size: 5.2rem;
   }
   .home-content-tablecell h1 br {
     display: none;
   }
 
   .home-social-list {
     left: 36px;
     bottom: 30px;
     font-size: 2.1rem;
   }
   .home-social-list::before {
     height: 30px;
   }
 
   .scrolldown .scroll-icon {
     font-size: 1.2rem;
     top: 24px;
     right: 10px;
   }
 }
 @media only screen and (max-width: 600px) {
   #home {
     min-height: 702px;
   }
 
   .home-content-tablecell .row {
     max-width: 480px;
     padding-top: 12rem;
     padding-bottom: 12rem;
   }
   .home-content-tablecell h3 {
     font-size: 1.7rem;
   }
   .home-content-tablecell h1 {
     font-size: 4.8rem;
   }
 }
 @media only screen and (max-width: 500px) {
   .home-content-tablecell .row {
     max-width: 420px;
   }
   .home-content-tablecell h3 {
     font-size: 1.5rem;
   }
   .home-content-tablecell h1 {
     font-size: 4.2rem;
   }
 
   .home-social-list {
     left: 30px;
     bottom: 30px;
     font-size: 1.8rem;
   }
   .home-social-list::before {
     height: 24px;
   }
 }
 @media only screen and (max-width: 400px) {
   #home {
     min-height: 654px;
   }
 
   .home-content-tablecell .row {
     padding-top: 4.8rem;
     padding-bottom: 10.8rem;
   }
   .home-content-tablecell h3 {
     font-size: 1.4rem;
   }
   .home-content-tablecell h1 {
     font-size: 3.6rem;
   }
 }
 
 
 /* ===================================================================
  *  11. about - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 #about {
   position: relative;
   padding: 4.2rem 0 12rem;
   background-color: #FFFFFF;
   min-height: 696px;
   text-align: center;
 }
 #about .about-wrap {
   max-width: 850px;
 }
 #about span {
   color: #07617d;
 }
 #about h3 {
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.8rem;
   line-height: 1.667;
   color: #07617d;
   text-transform: uppercase;
   letter-spacing: .3rem;
   position: relative;
 }
 #about h3::before {
   display: block;
   content: "";
   width: 3px;
   height: 9.6rem;
   background-color: rgba(149, 149, 149, 0.7);
   margin: 0 auto 2.4rem;
 }
 #about .lead {
   font-family: "librebaskerville-bold", serif;
   font-size: 4rem;
   line-height: 1.8;
   color: #2e383f;
   margin-top: 6rem;
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * about 
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
   #about {
     min-height: 636px;
   }
   #about .about-wrap {
     max-width: 800px;
   }
   #about .lead {
     font-size: 3.8rem;
   }
 }
 @media only screen and (max-width: 900px) {
   #about .about-wrap {
     max-width: 720px;
   }
   #about .lead {
     font-size: 3.6rem;
   }
 }
 @media only screen and (max-width: 768px) {
   #about h3 {
     font-size: 1.7rem;
   }
   #about .about-wrap {
     max-width: 600px;
   }
   #about .lead {
     font-size: 3.1rem;
   }
 }
 @media only screen and (max-width: 600px) {
   #about {
     min-height: auto;
   }
   #about .about-wrap {
     max-width: 500px;
   }
   #about .lead {
     margin-top: 4.8rem;
     font-size: 2.8rem;
   }
 }
 @media only screen and (max-width: 500px) {
   #about h3 {
     font-size: 1.5rem;
   }
   #about .lead {
     font-size: 2.5rem;
   }
 }
 @media only screen and (max-width: 400px) {
   #about {
     padding: 4.2rem 0 9.6rem;
   }
   #about .about-wrap {
     max-width: 380px;
   }
   #about .lead {
     font-size: 2.3rem;
   }
 }
 
 
 /* ===================================================================
  *  12. services - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 #services {
   background-color: #19191b;
   background-image: url(../images/services-bg.jpg);
   background-repeat: no-repeat;
   background-position: center;
   -webkit-background-size: cover;
   -moz-background-size: cover;
   background-size: cover;
   min-height: 800px;
   position: relative;
   padding: 15rem 0 15rem;
   color: rgba(255, 255, 255, 0.3);
 }
 #services .overlay {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background-color: rgba(5, 5, 5, 0.7);
 }
 #services .gradient-overlay {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   opacity: .4;
   background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.85) 0%, transparent 100%);
   background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.85) 0%, transparent 100%);
   background: linear-gradient(to bottom, rgba(0, 0, 0, 0.85) 0%, transparent 100%);
   filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d9000000', endColorstr='#00000000',GradientType=0 );
 }
 #services .section-intro h3 {
   color: rgba(242, 242, 242, 0.5);
 }
 #services .section-intro h1 {
   color: #FFFFFF;
 }
 #services .section-intro .lead {
   color: rgba(242, 242, 242, 0.6);
 }
 #services .services-content {
   text-align: center;
   max-width: 1040px;
 }
 #services .services-list {
   margin-top: 1.2rem;
   text-align: center;
 }
 #services .services-list .service-item {
   margin-bottom: 3rem;
   padding: 0 50px;
 }
 #services .services-list .service-item p {
   color: rgba(242, 242, 242, 0.5);
 }
 #services .services-list .icon {
   display: inline-block;
   margin-bottom: 1.5rem;
 }
 #services .services-list .icon i {
   font-size: 5.4rem;
   color: #f9a828;
 }
 #services .services-list .h05 {
   font-size: 1.7rem;
   line-height: 1.765;
   color: #FFFFFF;
   margin-bottom: 3rem;
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * services
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
   #services .services-list .service-item {
     padding: 0 40px;
   }
 }
 @media only screen and (max-width: 900px) {
   #services .services-list .service-item {
     padding: 0 30px;
   }
 }
 @media only screen and (max-width: 768px) {
   #services {
     padding: 12rem 0 12rem;
   }
   #services .services-content {
     max-width: 550px;
   }
   #services .services-list .service-item {
     padding: 0 15px;
   }
   #services .services-list .icon i {
     font-size: 5.1rem;
   }
 }
 @media only screen and (max-width: 600px) {
   #services .services-list .service-item {
     padding: 0 10px;
   }
   #services .services-list .icon i {
     font-size: 5rem;
   }
 }
 @media only screen and (max-width: 400px) {
   #services .services-list .service-item {
     padding: 0;
   }
 }
 
 
 /* ===================================================================
  *  13. produits - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 #produits {
   background: #FFFFFF;
   min-height: 800px;
   position: relative;
   padding: 0;
 }
 #produits .intro-wrap {
   padding: 15rem 0 21rem;
   background: #111111;
 }
 #produits .section-intro h3 {
   color: rgba(242, 242, 242, 0.5);
 }
 #produits .section-intro h1 {
   color: #FFFFFF;
 }
 #produits .section-intro .lead {
   color: rgba(242, 242, 242, 0.6);
 }
 #produits .produits-content {
   margin-top: -22.2rem;
 }
 #produits .bricks-wrapper:before, 
 #produits .bricks-wrapper:after {
   content: "";
   display: table;
 }
 #produits .bricks-wrapper:after {
   clear: both;
 }
 #produits .bricks-wrapper .brick {
   float: left;
   width: 50%;
   padding: 0;
   margin: 0;
 }
 #produits .bricks-wrapper .brick:nth-child(2n+1) {
   clear: both;
 }
 
 /* ------------------------------------------------------------------- 
  * masonry entries - (_layout.css) 
  * ------------------------------------------------------------------- */
 .bricks-wrapper .item-wrap {
   position: relative;
   overflow: hidden;
 }
 .bricks-wrapper .item-wrap .overlay {
   cursor: zoom-in;
 }
 .bricks-wrapper .item-wrap .overlay img {
   vertical-align: bottom;
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 .bricks-wrapper .item-wrap .overlay::before {
   content: "";
   display: block;
   background: rgba(0, 0, 0, 0.8);
   opacity: 0;
   visibility: hidden;
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   -moz-transition: all 0.5s ease-in-out;
   -o-transition: all 0.5s ease-in-out;
   -webkit-transition: all 0.5s ease-in-out;
   -ms-transition: all 0.5s ease-in-out;
   transition: all 0.5s ease-in-out;
   z-index: 1;
 }
 .bricks-wrapper .item-wrap .overlay::after {
   content: "...";
   font-family: georgia, serif;
   font-size: 3rem;
   z-index: 1;
   display: block;
   height: 30px;
   width: 30px;
   line-height: 30px;
   margin-left: -15px;
   margin-top: -15px;
   position: absolute;
   left: 50%;
   top: 50%;
   text-align: center;
   color: #FFFFFF;
   opacity: 0;
   visibility: hidden;
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
   -webkit-transform: scale(0.5);
   -ms-transform: scale(0.5);
   transform: scale(0.5);
 }
 .bricks-wrapper .item-wrap .item-text {
   position: absolute;
   top: 0;
   left: 0;
   padding: 3.6rem 0 0 3rem;
   margin-right: 6rem;
   z-index: 3;
 }
 .bricks-wrapper .item-wrap .item-text .folio-title {
   color: #FFFFFF;
   font-size: 2.2rem;
   line-height: 1.364;
 }
 .bricks-wrapper .item-wrap .item-text .folio-types {
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.1rem;
   line-height: 1.5rem;
   text-transform: uppercase;
   letter-spacing: .1rem;
   color: rgba(255, 255, 255, 0.7);
   display: block;
 }
 .bricks-wrapper .item-wrap .details-link {
   display: block;
   background-color: transparent;
   border: 1px solid rgba(255, 255, 255, 0.3);
   height: 4.6rem;
   width: 4.6rem;
   line-height: 4.6rem;
   color: white;
   text-align: center;
   z-index: 2;
   border-radius: 3px;
   position: absolute;
   top: 3.6rem;
   right: 3rem;
 }
 .bricks-wrapper .item-wrap .details-link i {
   font-size: 2rem;
   line-height: 4.2rem;
 }
 .bricks-wrapper .item-wrap .details-link:hover, .bricks-wrapper .item-wrap .details-link:focus {
   background-color: #FFFFFF;
   color: #000000;
 }
 .bricks-wrapper .item-wrap .item-text, .bricks-wrapper .item-wrap .details-link {
   opacity: 0;
   visibility: hidden;
   -webkit-transform: translateY(100%);
   -ms-transform: translateY(100%);
   transform: translateY(100%);
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 .bricks-wrapper .item-wrap:hover .overlay::before {
   opacity: 1;
   visibility: visible;
 }
 .bricks-wrapper .item-wrap:hover .overlay::after {
   opacity: 1;
   visibility: visible;
   -webkit-transform: scale(1);
   -ms-transform: scale(1);
   transform: scale(1);
 }
 .bricks-wrapper .item-wrap:hover .overlay img {
   -webkit-transform: scale(1.05);
   -ms-transform: scale(1.05);
   transform: scale(1.05);
 }
 .bricks-wrapper .item-wrap:hover .item-text, .bricks-wrapper .item-wrap:hover .details-link {
   opacity: 1;
   visibility: visible;
   -webkit-transform: translateX(0);
   -ms-transform: translateX(0);
   transform: translateX(0);
 }
 
 /* ------------------------------------------------------------------- 
  * Light Gallery Overrides - (_layout.css) 
  * ------------------------------------------------------------------- */
 .lg-sub-html {
   padding: 12px 20% 15px;
 }
 .lg-sub-html a, .lg-sub-html a:visited {
   color: #f9a828;
 }
 .lg-sub-html a:hover, .lg-sub-html a:focus {
   color: #FFFFFF;
 }
 @media only screen and (max-width: 1024px) {
   .lg-sub-html {
     padding: 12px 15% 15px;
   }
 }
 @media only screen and (max-width: 768px) {
   .lg-sub-html {
     padding: 12px 40px 15px;
   }
 }
 
 .lg-sub-html h4 {
   color: #FFFFFF;
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.8rem;
   line-height: 1.333;
 }
 
 .lg-sub-html p {
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.3rem;
   line-height: 2.4rem;
   margin: .6rem 0 0;
   color: rgba(255, 255, 255, 0.6);
 }
 
 .lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
   border-color: #f9a828;
 }
 
 .lg-progress-bar .lg-progress {
   background-color: #FFFFFF;
 }
 
 #lg-counter {
   font-family: "montserrat-regular", sans-serif;
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * produits
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 768px) {
   #produits .intro-wrap {
     padding: 12rem 0 21rem;
   }
 }
 @media only screen and (max-width: 600px) {
   #produits .bricks-wrapper .brick {
     float: none;
     width: 100%;
   }
 
   .bricks-wrapper .item-wrap .item-text .folio-title {
     font-size: 2rem;
     line-height: 1.5;
   }
 }
 
 
 /* ===================================================================
  *  14. calendar - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 #calendar {
   background: #FFFFFF;
   padding: 12rem 0 7.8rem;
   text-align: center;
 }
 #calendar h2 {
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.8rem;
   line-height: 1.667;
   color: #07617d;
   text-transform: uppercase;
   letter-spacing: .3rem;
   position: relative;
   margin-bottom: 4.2rem;
 }
 
 #calendar .flex-container {
   width: 80%;
   max-width: 900px;
   margin: 0 auto;
 }
 
 #testimonial-slider {
   margin: 0 0 3rem 0;
   position: relative;
 }
 #testimonial-slider .slides {
   padding-bottom: 3rem;
 }
 #testimonial-slider p {
   font-family: "librebaskerville-bold", serif;
   font-size: 3rem;
   line-height: 1.8;
   color: #151515;
 }
 #testimonial-slider p::before, #testimonial-slider p::after {
   display: inline-block;
   font-family: "librebaskerville-bold", serif;
   font-size: 3.6rem;
   line-height: 1;
 }
 #testimonial-slider p::before {
   content: '\201C';
 }
 #testimonial-slider p::after {
   content: '\201D';
 }
 #testimonial-slider .testimonial-author {
   margin-top: 4.2rem;
 }
 #testimonial-slider .testimonial-author img {
   width: 7.4rem;
   height: 7.4rem;
   margin: 0 auto 1.2rem auto;
   display: block;
   border-radius: 50%;
   vertical-align: middle;
 }
 #testimonial-slider .testimonial-author .author-info {
   display: inline-block;
   vertical-align: middle;
   text-align: center;
   font-family: "librebaskerville-bold", sans-serif;
   font-size: 2rem;
   margin-top: .9rem;
   margin-bottom: 3rem;
   color: #151515;
 }
 #testimonial-slider .testimonial-author .author-info span {
   display: block;
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.6rem;
   line-height: 1.313;
   letter-spacing: 0;
   text-transform: none;
   color: rgba(0, 0, 0, 0.5);
   margin-top: .3rem;
 }
 
 /* control nav */
 #calendar .flex-control-nav {
   width: 100%;
   text-align: center;
   display: block;
   position: absolute;
   bottom: -1.5rem;
 }
 #calendar .flex-control-nav li {
   margin: 0 6px;
   display: inline-block;
   zoom: 1;
 }
 
 #calendar .flex-control-paging li a {
   width: 9px;
   height: 9px;
   background-color: #959595;
   display: block;
   cursor: pointer;
   border-radius: 50%;
   font: 0/0 a;
   text-shadow: none;
   color: transparent;
 }
 #calendar .flex-control-paging li a:hover {
   background-color: #555555;
 }
 #calendar .flex-control-paging li a.flex-active {
   background-color: #000000;
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * calendar
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
   #testimonial-slider p {
     font-size: 2.8rem;
   }
 }
 @media only screen and (max-width: 768px) {
   #calendar h2 {
     font-size: 1.7rem;
   }
 
   #testimonial-slider p {
     font-size: 2.5rem;
   }
   #testimonial-slider .testimonial-author img {
     width: 6.6rem;
     height: 6.6rem;
   }
   #testimonial-slider .testimonial-author .author-info {
     font-size: 1.8rem;
   }
   #testimonial-slider .testimonial-author .author-info span {
     font-size: 1.5rem;
   }
 }
 @media only screen and (max-width: 600px) {
   #calendar .flex-container {
     width: 90%;
   }
 
   #testimonial-slider p {
     font-size: 2.2rem;
   }
 }
 @media only screen and (max-width: 500px) {
   #calendar h2 {
     font-size: 1.5rem;
   }
 }
 @media only screen and (max-width: 400px) {
   #calendar .flex-container {
     width: 100%;
   }
 
   #testimonial-slider p {
     font-size: 2rem;
   }
 }
 
 
 /* ===================================================================
  *  15. clients - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 #clients {
   background-color: #e9eaea;
   padding: 4.8rem 0 4.8rem;
 }
 #clients .client-lists .owl-item {
   opacity: .6;
   -moz-transition: all 0.6s ease-in-out;
   -o-transition: all 0.6s ease-in-out;
   -webkit-transition: all 0.6s ease-in-out;
   -ms-transition: all 0.6s ease-in-out;
   transition: all 0.6s ease-in-out;
 }
 #clients .client-lists .owl-item:hover {
   opacity: 1;
 }
 #clients .owl-carousel .owl-nav {
   margin-top: 1.8rem;
   margin-bottom: 1.5rem;
   text-align: center;
   -webkit-tap-highlight-color: transparent;
 }
 #clients .owl-carousel .owl-nav [class*='owl-'] {
   color: #FFFFFF;
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.4rem;
   height: 3rem;
   line-height: 3rem;
   margin: .6rem;
   padding: 0 10px;
   background: rgba(0, 0, 0, 0.5);
   display: inline-block;
   cursor: pointer;
   border-radius: 3px;
 }
 #clients .owl-carousel .owl-nav [class*='owl-']:hover {
   background: rgba(0, 0, 0, 0.7);
   color: #FFFFFF;
   text-decoration: none;
 }
 #clients .owl-carousel .owl-nav .disabled {
   background: rgba(0, 0, 0, 0.2);
   cursor: default;
 }
 #clients .owl-carousel .owl-nav.disabled + .owl-dots {
   margin-top: 1.8rem;
 }
 #clients .owl-carousel .owl-dots {
   text-align: center;
   -webkit-tap-highlight-color: transparent;
 }
 #clients .owl-carousel .owl-dots .owl-dot {
   display: inline-block;
   zoom: 1;
   *display: inline;
 }
 #clients .owl-carousel .owl-dots .owl-dot span {
   width: 9px;
   height: 9px;
   background-color: #959595;
   margin: 6px 6px;
   display: block;
   -webkit-backface-visibility: visible;
   transition: opacity 200ms ease;
   border-radius: 50%;
 }
 #clients .owl-carousel .owl-dots .owl-dot.active span,
 #clients .owl-carousel .owl-dots .owl-dot:hover span {
   background-color: #000000;
 }
 
 
 /* ===================================================================
  *  16. contact - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 #contact {
   background-color: #111111;
   padding: 12rem 0 12rem;
   position: relative;
 }
 #contact .overlay {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   opacity: .75;
   background-color: #000000;
 }
 #contact .section-intro h1 {
   color: white;
 }
 #contact .section-intro h3 {
   color: rgba(255, 255, 255, 0.5);
 }
 #contact .section-intro p.lead {
   color: rgba(255, 255, 255, 0.6);
 }
 
 .contact-content {
   max-width: 1024px;
   margin-top: 3rem;
   color: #FFFFFF;
   z-index: 600;
   position: relative;
 }
 .contact-content h5 {
   color: #FFFFFF;
   margin-bottom: 5.4rem;
 }
 .contact-content h6 {
   color: #555555;
   font-size: 1.4rem;
 }
 
 /* contact info */
 .contact-info .cinfo {
   margin-bottom: 4.2rem;
 }
 
 /* contact form */
 #contact form {
   margin-top: 0;
   margin-bottom: 3rem;
 }
 #contact form .form-field {
   position: relative;
 }
 #contact form .form-field:before, #contact form .form-field:after {
   content: "";
   display: table;
 }
 #contact form .form-field:after {
   clear: both;
 }
 #contact form .form-field label {
   font-family: "montserrat-bold", sans-serif;
   font-size: 1rem;
   line-height: 1.4;
   position: absolute;
   bottom: 1.5rem;
   right: 0;
   text-transform: uppercase;
   letter-spacing: .05rem;
   padding: .6rem 2rem .6rem 2rem;
   margin: 0;
   color: #000000;
   background: #f9a828;
   border-radius: 3px;
 }
 #contact form .form-field label::after {
   position: absolute;
   right: 15px;
   top: 1px;
   margin-top: -6px;
   border-left: 5px solid transparent;
   border-right: 5px solid transparent;
   border-bottom: 5px solid #f9a828;
   content: "";
 }
 #contact form ::-webkit-input-placeholder {
   color: rgba(255, 255, 255, 0.3);
 }
 #contact form :-moz-placeholder {
   color: rgba(255, 255, 255, 0.3);
   /* Firefox 18- */
 }
 #contact form ::-moz-placeholder {
   color: rgba(255, 255, 255, 0.3);
   /* Firefox 19+ */
 }
 #contact form :-ms-input-placeholder {
   color: rgba(255, 255, 255, 0.3);
 }
 #contact form .placeholder {
   color: rgba(255, 255, 255, 0.3) !important;
 }
 
 #contact input[type="text"],
 #contact input[type="password"],
 #contact input[type="email"],
 #contact textarea {
   width: 100%;
   color: rgba(255, 255, 255, 0.6);
   margin-bottom: 3.6rem;
   background: rgba(255, 255, 255, 0.1);
 }
 
 #contact input[type="text"]:focus,
 #contact input[type="password"]:focus,
 #contact input[type="email"]:focus {
   color: #FFFFFF;
 }
 
 #contact textarea {
   min-height: 21rem;
   padding: 1.8rem 2rem;
 }
 #contact textarea:focus {
   color: #FFFFFF;
 }
 
 #contact button.submitform {
   font-size: 1.5rem;
   display: block;
   letter-spacing: .2rem;
   height: 6rem;
   line-height: 6rem;
   padding: 0 3rem;
   width: 100%;
   background: #f9a828;
   color: #000000;
   margin-top: .6rem;
 }
 #contact button.submitform:hover, #contact button.submitform:focus {
   background: #f89e0f;
 }
 
 #message-warning, #message-success {
   display: none;
   background: #000000;
   padding: 3rem;
   margin-bottom: 3.6rem;
   width: 100%;
 }
 
 #message-warning {
   color: #D32B2E;
 }
 
 #message-success {
   color: #f9a828;
 }
 
 #message-warning i,
 #message-success i {
   margin-right: 10px;
 }
 
 /* form loader */
 #submit-loader {
   display: none;
   position: relative;
   left: 0;
   top: 1.8rem;
   width: 100%;
   text-align: center;
   margin-bottom: 4.2rem;
 }
 #submit-loader .text-loader {
   display: none;
   font-family: "montserrat-bold", sans-serif;
   font-size: 1.4rem;
   color: #FFFFFF;
   letter-spacing: .2rem;
   text-transform: uppercase;
 }
 
 .oldie #submit-loader .s-loader {
   display: none;
 }
 .oldie #submit-loader .text-loader {
   display: block;
 }
 
 /* --------------------------------------------------------------- 
  * loader animation - (_layout.scss)
  * --------------------------------------------------------------- */
 .s-loader {
   margin: 1.2rem auto 3rem;
   width: 70px;
   text-align: center;
   -webkit-transform: translateX(0.45rem);
   -ms-transform: translateX(0.45rem);
   transform: translateX(0.45rem);
 }
 
 .s-loader > div {
   width: 9px;
   height: 9px;
   background-color: #FFFFFF;
   border-radius: 100%;
   display: inline-block;
   margin-right: .9rem;
   -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
   animation: sk-bouncedelay 1.4s infinite ease-in-out both;
 }
 
 .s-loader .bounce1 {
   -webkit-animation-delay: -0.32s;
   animation-delay: -0.32s;
 }
 
 .s-loader .bounce2 {
   -webkit-animation-delay: -0.16s;
   animation-delay: -0.16s;
 }
 
 @-webkit-keyframes sk-bouncedelay {
   0%, 80%, 100% {
     -webkit-transform: scale(0);
     -ms-transform: scale(0);
     transform: scale(0);
   }
   40% {
     -webkit-transform: scale(1);
     -ms-transform: scale(1);
     transform: scale(1);
   }
 }
 @keyframes sk-bouncedelay {
   0%, 80%, 100% {
     -webkit-transform: scale(0);
     -ms-transform: scale(0);
     transform: scale(0);
   }
   40% {
     -webkit-transform: scale(1);
     -ms-transform: scale(1);
     transform: scale(1);
   }
 }
 /* ------------------------------------------------------------------- 
  * responsive:
  * contact 
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 900px) {
   .contact-info {
     width: 38%;
   }
 }
 @media only screen and (max-width: 768px) {
   .contact-content {
     max-width: 600px;
     text-align: center;
   }
 
   .contact-info {
     width: 100%;
     margin-top: 3.6rem;
   }
 }
 @media only screen and (max-width: 600px) {
   .contact-content {
     max-width: 480px;
   }
 }
 @media only screen and (max-width: 400px) {
   .contact-info {
     width: 100% !important;
     float: none !important;
     clear: both !important;
     margin-left: 0;
     margin-right: 0;
     padding: 0;
   }
 }
 
 
 /* ===================================================================
  *  17. footer - (_layout.scss)
  *
  * ------------------------------------------------------------------- */
 footer {
   margin: 0 0 5.4rem 0;
   padding: 0;
   font-size: 1.5rem;
   color: rgba(255, 255, 255, 0.4);
 }
 footer a, footer a:visited {
   color: #FFFFFF;
 }
 footer a:hover, footer a:focus {
   color: #f9a828;
 }
 footer .row {
   max-width: 1024px;
 }
 footer h4.h05 {
   color: #FFFFFF;
   position: relative;
   padding-bottom: 4.2rem;
   margin-bottom: 3.6rem;
 }
 footer h4.h05::after {
   display: block;
   content: "";
   width: 100px;
   height: 1px;
   background-color: rgba(255, 255, 255, 0.1);
   position: absolute;
   bottom: 0;
   left: 0;
 }
 
 /* footer main
  * --------------------------------- */
 .footer-main {
   padding-top: 9.6rem;
   padding-bottom: 3rem;
 }
 .footer-main ul {
   font-size: 1.5rem;
   margin-left: 0;
 }
 .footer-main ul li {
   list-style: none;
   padding-left: 0;
 }
 .footer-main ul a, .footer-main ul a:visited {
   color: rgba(255, 255, 255, 0.4);
 }
 .footer-main ul a:hover, .footer-main ul a:focus {
   color: #FFFFFF;
 }
 .footer-main .subscribe-form {
   position: relative;
 }
 .footer-main #mc-form {
   margin: 0;
   padding: 0;
 }
 .footer-main #mc-form input[type="email"] {
   height: 6rem;
   padding: 1.5rem 8rem 1.5rem 2rem;
   margin-bottom: 1.5rem;
   width: 100%;
   background-color: rgba(0, 0, 0, 0.9);
 }
 .footer-main #mc-form button {
   background-color: #f9a828;
   color: #000000;
   width: 6rem;
   height: 6rem;
   line-height: 6rem;
   margin: 0;
   padding: 0;
   position: absolute;
   right: 0;
   top: 0;
 }
 .footer-main #mc-form button:hover {
   background-color: #f89e0f;
 }
 .footer-main #mc-form button i {
   font-size: 2.6rem;
   line-height: 6rem;
   margin: 0;
   position: relative;
   left: .2rem;
 }
 .footer-main #mc-form label {
   color: #f9a828;
   font-family: "montserrat-regular", sans-serif;
 }
 
 /* footer bottom
  * --------------------------------- */
 .footer-bottom {
   margin-top: 3rem;
   text-align: center;
   font-family: "montserrat-regular", sans-serif;
   font-size: 1.4rem;
 }
 .footer-bottom .copyright span {
   display: inline-block;
 }
 .footer-bottom .copyright span::after {
   content: "|";
   display: inline-block;
   padding: 0 1rem 0 1.2rem;
   color: rgba(255, 255, 255, 0.1);
 }
 .footer-bottom .copyright span:last-child::after {
   display: none;
 }
 
 #go-top {
   position: fixed;
   bottom: 42px;
   right: 30px;
   z-index: 700;
   display: none;
 }
 #go-top a {
   text-decoration: none;
   border: 0 none;
   display: block;
   height: 63px;
   width: 60px;
   line-height: 63px;
   text-align: center;
   background-color: #000000;
   color: #888;
   text-align: center;
   text-transform: uppercase;
   -moz-transition: all 0.3s ease-in-out;
   -o-transition: all 0.3s ease-in-out;
   -webkit-transition: all 0.3s ease-in-out;
   -ms-transition: all 0.3s ease-in-out;
   transition: all 0.3s ease-in-out;
 }
 #go-top a i {
   font-size: 1.7rem;
   line-height: inherit;
 }
 #go-top a:visited {
   background: #000000;
   color: #888;
 }
 #go-top a:hover, #go-top a:focus {
   background: #000000;
   color: #FFFFFF;
 }
 
 /* ------------------------------------------------------------------- 
  * responsive:
  * footer
  * ------------------------------------------------------------------- */
 @media only screen and (max-width: 768px) {
   #go-top {
     bottom: 0;
     right: 0;
   }
 
   .footer-main {
     text-align: center;
   }
   .footer-main .row {
     max-width: 480px;
   }
   .footer-main [class*="col-"] {
     margin-bottom: 3.6rem;
   }
 
   footer h4.h05 {
     padding-bottom: 3rem;
     margin-bottom: 3rem;
   }
 
   footer h4.h05::after {
     left: 50%;
     margin-left: -50px;
   }
 }
 @media only screen and (max-width: 600px) {
   .footer-bottom {
     padding-bottom: .6rem;
   }
   .footer-bottom .copyright span {
     display: block;
   }
   .footer-bottom .copyright span::after {
     display: none;
   }
 }
 