/*-------------------------------------------------------*/
/* Table of Content

1. General
2. Typography
3. Navigation
4. Layout
5. Blog
6. Portfolio
7. Shortcodes
8. Footer
9. Responsive

/*-------------------------------------------------------*/


/*-------------------------------------------------------*/
/* General
/*-------------------------------------------------------*/

.clearfix {
  *zoom: 1;

  &:before, &:after {
    display: table;
    line-height: 0;
    content: "";
  }

  &:after {
    clear: both;
  }
}

.clear { clear: both; }
.oh { overflow: hidden; }
.ov { overflow: visible; }
.relative { position: relative; }

.section-wrap {
  padding: 120px 0;
  overflow: hidden;
  background-attachment: fixed;
  background-size: cover;
}

.section-wrap-lg {
  padding: 170px 0;
}

.section-wrap-md {
  padding: 100px 0;
}


.main-container {
  margin: auto;
}

@media (min-width: 1600px) {
  .grid-1440 .main-container,
  .grid-1440 .container {
    width: 1440px;
  }
}


.mobile section { background-attachment: scroll !important; }
.bg-dark { background-color: $bg-dark; }
.bg-light { background-color: $bg-light; }
.bg-white { background-color: #fff; }
.bg-color { background-color: $main-color; }
.white { color: #fff; }
.static { position: static; }
.block { display: block; }
.left { float: left; }
.right { float: right; }
.valign { position: absolute; top: 50%; @include transform (translateY(-50%)); }
.container-fluid.semi-fluid { padding: 0 40px; }
.img-fw { width: 100%; }
.uppercase { text-transform: uppercase; letter-spacing: 0.02em; }
.last { margin-bottom: 0 !important; }
@media (max-width: 991px) { .md-text-center {text-align: center}; }
@media (max-width: 767px) { .sm-text-center {text-align: center}; }
@media (max-width: 480px) { .xs-text-center {text-align: center}; }
img.alignleft {float: left;margin: 10px 20px 10px 0;}
img.alignright { float: right; margin: 10px 0 10px 20px; }
.animation-wrap { overflow: hidden; }


::-moz-selection {
  color: #fff;
  background-color: $bg-dark;
}

::-webkit-selection {
  color: #fff;
  background-color: $bg-dark;
}

::selection {
  color: #fff;
  background-color: $bg-dark;
}

:focus {
  outline: none;
}

body {
  margin: 0;
  padding: 0;
  font-family: $body-font;
  font-size: 17px;
  line-height: 1.5;
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  background: #fff;
  outline: 0;
  overflow-x: hidden;
  overflow-y: auto;
  color: $text-color;

  img {
    border: none;
    max-width: 100%;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -o-user-select: none;
    user-select: none;
  }
}

video {
  height: 100%;
  width: 100%;
}

iframe {
  border: 0;
}


/*-------------------------------------------------------*/
/* Preloader
/*-------------------------------------------------------*/

.loader-mask {
  position:fixed;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background-color:#fff; 
  z-index:99999;
}

.loader {
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 5px;
  width: 5em;
  height: 5em;
  margin:-25px 0 0 -25px;
  text-indent: -9999em;
  border-top: 0.5em solid rgb(43, 43, 43);
  border-right: 0.5em solid rgba(245,245,245,.5);
  border-bottom: 0.5em solid rgba(245,245,245,.5);
  border-left: 0.5em solid rgba(245,245,245,.5);
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}

.loader,
.loader:after {
  border-radius: 50%;
  width: 10em;
  height: 10em;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}


/* Scroll Down icon
-------------------------------------------------------*/

.scroll-down {
  font-size: 16px;
  width: 38px;
  height: 38px;
  background-color: rgba(255,255,255,.2);
  text-align: center;
  line-height: 38px;
  z-index: 50 !important;
  position: absolute;
  bottom: 40px;
  left: 50%;
  margin-left: -19px;
  border-radius: 50%;

  &.bottom-140 {
    bottom: 140px;

    @include bp-sm {
      bottom: 80px;
    }
  }

  a {
    line-height: 38px;
    position: relative;
    z-index: 50 !important;
  }

  i {
    color: #fff;
    -webkit-animation: scroll-down-icon 1s infinite;
    -moz-animation: scroll-down-icon 1s infinite;
    -o-animation: scroll-down-icon 1s infinite;
    animation: scroll-down-icon 1s infinite;
    position: absolute;
    left: 13px;
    font-size: 20px;
  }
}

@-webkit-keyframes scroll-down-icon {
  0%{ bottom: 3px; }
  50%{ bottom: 8px; }
  100%{ bottom: 3px; }
}
@-moz-keyframes scroll-down-icon {
  0%{ bottom: 3px; }
  50%{ bottom: 8px; }
  100%{ bottom: 3px; }
}
@-o-keyframes scroll-down-icon {
  0%{ bottom: 3px; }
  50%{ bottom: 8px; }
  100%{ bottom: 3px; }
}
@keyframes scroll-down-icon {
  0%{ bottom: 3px; }
  50%{ bottom: 8px; }
  100%{ bottom: 3px; }
}

.row.row-4 {
  margin: 0 -2px;
}

.row.row-4 > div {
  padding: 0 2px;
}

.row.row-10 {
  margin: 0 -5px;
}

.row.row-10 > div {
  padding: 0 5px;
}

.row.row-12 {
  margin: 0 -6px;
}

.row.row-12 > div {
  padding: 0 6px;
}

.row.row-16 {
  margin: 0 -8px;
}

.row.row-16 > div {
  padding: 0 8px;
}

.row.row-20 {
  margin: 0 -10px;
}

.row.row-20 > div {
  padding: 0 10px;
}

/* Magnific Popup
-------------------------------------------------------*/
.mfp-bg,.mfp-wrap{position:fixed;left:0;top:0}.mfp-bg,.mfp-container,.mfp-wrap{height:100%;width:100%}.mfp-container:before,.mfp-figure:after{content:''}.mfp-bg{z-index:1250;overflow:hidden;background:#0b0b0b;opacity:.8;filter:alpha(opacity=80)}.mfp-wrap{z-index:1251;outline:0!important;-webkit-backface-visibility:hidden}.mfp-container{text-align:center;position:absolute;left:0;top:0;padding:0 8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-container:before{display:inline-block;height:100%;vertical-align:middle}.mfp-align-top .mfp-container:before{display:none}.mfp-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;z-index:1045}.mfp-close,.mfp-preloader{text-align:center;position:absolute}.mfp-ajax-holder .mfp-content,.mfp-inline-holder .mfp-content{width:100%;cursor:auto}.mfp-ajax-cur{cursor:progress}.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close{cursor:-moz-zoom-out;cursor:-webkit-zoom-out;cursor:zoom-out}.mfp-zoom{cursor:pointer;cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.mfp-auto-cursor .mfp-content{cursor:auto}.mfp-arrow,.mfp-close,.mfp-counter,.mfp-preloader{-webkit-user-select:none;-moz-user-select:none;user-select:none}.mfp-loading.mfp-figure{display:none}.mfp-hide{display:none!important}.mfp-preloader{color:#CCC;top:50%;width:auto;margin-top:-.8em;left:8px;right:8px;z-index:1044}.mfp-preloader a{color:#CCC}.mfp-close,.mfp-preloader a:hover{color:#FFF}.mfp-s-error .mfp-content,.mfp-s-ready .mfp-preloader{display:none}button.mfp-arrow,button.mfp-close{overflow:visible;cursor:pointer;background:0 0;border:0;-webkit-appearance:none;display:block;outline:0;padding:0;z-index:1046;-webkit-box-shadow:none;box-shadow:none}button::-moz-focus-inner{padding:0;border:0}.mfp-close{width:44px;height:44px;line-height:44px;right:0;top:0;text-decoration:none;opacity:.65;filter:alpha(opacity=65);padding:0 0 18px 10px;font-style:normal;font-size:28px;font-family:Arial,Baskerville,monospace}.mfp-close:focus,.mfp-close:hover{opacity:1;filter:alpha(opacity=100)}.mfp-close:active{top:1px}.mfp-close-btn-in .mfp-close{color:#333}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{color:#FFF;right:-6px;text-align:right;padding-right:6px;width:100%}.mfp-counter{position:absolute;top:0;right:0;color:#CCC;font-size:12px;line-height:18px;white-space:nowrap}.mfp-figure,img.mfp-img{line-height:0}.mfp-arrow{position:absolute;opacity:.65;filter:alpha(opacity=65);margin:-55px 0 0;top:50%;padding:0;width:90px;height:110px;-webkit-tap-highlight-color:transparent}.mfp-arrow:active{margin-top:-54px}.mfp-arrow:focus,.mfp-arrow:hover{opacity:1;filter:alpha(opacity=100)}.mfp-arrow .mfp-a,.mfp-arrow .mfp-b,.mfp-arrow:after,.mfp-arrow:before{content:'';display:block;width:0;height:0;position:absolute;left:0;top:0;margin-top:35px;margin-left:35px;border:inset transparent}.mfp-arrow .mfp-a,.mfp-arrow:after{border-top-width:13px;border-bottom-width:13px;top:8px}.mfp-arrow .mfp-b,.mfp-arrow:before{border-top-width:21px;border-bottom-width:21px;opacity:.7}.mfp-arrow-left{left:0}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after{border-right:17px solid #FFF;margin-left:31px}.mfp-arrow-left .mfp-b,.mfp-arrow-left:before{margin-left:25px;border-right:27px solid #3F3F3F}.mfp-arrow-right{right:0}.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{border-left:17px solid #FFF;margin-left:39px}.mfp-arrow-right .mfp-b,.mfp-arrow-right:before{border-left:27px solid #3F3F3F}.mfp-iframe-holder{padding-top:40px;padding-bottom:40px}.mfp-iframe-holder .mfp-content{line-height:0;width:100%;max-width:900px}.mfp-image-holder .mfp-content,img.mfp-img{max-width:100%}.mfp-iframe-holder .mfp-close{top:-40px}.mfp-iframe-scaler{width:100%;height:0;overflow:hidden;padding-top:56.25%}.mfp-iframe-scaler iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}.mfp-figure:after,img.mfp-img{width:auto;height:auto;display:block}img.mfp-img{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:40px 0;margin:0 auto}.mfp-figure:after{position:absolute;left:0;top:40px;bottom:40px;right:0;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6);background:#444}.mfp-figure small{color:#BDBDBD;display:block;font-size:12px;line-height:14px}.mfp-figure figure{margin:0}.mfp-bottom-bar{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto}.mfp-title{text-align:left;line-height:18px;color:#F3F3F3;word-wrap:break-word;padding-right:36px}.mfp-gallery .mfp-image-holder .mfp-figure{cursor:pointer}@media screen and (max-width:800px) and (orientation:landscape),screen and (max-height:300px){.mfp-img-mobile .mfp-image-holder{padding-left:0;padding-right:0}.mfp-img-mobile img.mfp-img{padding:0}.mfp-img-mobile .mfp-figure:after{top:0;bottom:0}.mfp-img-mobile .mfp-figure small{display:inline;margin-left:5px}.mfp-img-mobile .mfp-bottom-bar{background:rgba(0,0,0,.6);bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-img-mobile .mfp-bottom-bar:empty{padding:0}.mfp-img-mobile .mfp-counter{right:5px;top:3px}.mfp-img-mobile .mfp-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:rgba(0,0,0,.6);position:fixed;text-align:center;padding:0}}@media all and (max-width:900px){.mfp-arrow{-webkit-transform:scale(.75);transform:scale(.75)}.mfp-arrow-left{-webkit-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}.mfp-ie7 .mfp-img{padding:0}.mfp-ie7 .mfp-bottom-bar{width:600px;left:50%;margin-left:-300px;margin-top:5px;padding-bottom:5px}.mfp-ie7 .mfp-container{padding:0}.mfp-ie7 .mfp-content{padding-top:44px}.mfp-ie7 .mfp-close{top:0;right:0;padding-top:0}
.mfp-with-zoom .mfp-container,
.mfp-with-zoom.mfp-bg {
  opacity: 0;
  -webkit-backface-visibility: hidden;
  /* ideally, transition speed should match zoom duration */
  -webkit-transition: all 0.3s ease-out; 
  -moz-transition: all 0.3s ease-out; 
  -o-transition: all 0.3s ease-out; 
  transition: all 0.3s ease-out;
}

.mfp-with-zoom.mfp-ready .mfp-container {
    opacity: 1;
}
.mfp-with-zoom.mfp-ready.mfp-bg {
    opacity: 0.8;
}

.mfp-with-zoom.mfp-removing .mfp-container, 
.mfp-with-zoom.mfp-removing.mfp-bg {
  opacity: 0;
}


/* Row multiple items
-------------------------------------------------------*/

// clear the first in row for any block that has the class "items-grid"
.items-grid .col-xs-6:nth-child(2n + 3) { clear: left; }
.items-grid .col-xs-4:nth-child(3n + 4) { clear: left; }
.items-grid .col-xs-3:nth-child(4n + 5) { clear: left; }
.items-grid .col-xs-2:nth-child(6n + 7) { clear: left; }
.items-grid .col-xs-1:nth-child(12n + 13) { clear: left; }
@media (min-width: 768px) {
  // reset previous grid
  .items-grid .col-xs-6:nth-child(2n + 3) { clear: none; }
  .items-grid .col-xs-4:nth-child(3n + 4) { clear: none; }
  .items-grid .col-xs-3:nth-child(4n + 5) { clear: none; }
  .items-grid .col-xs-2:nth-child(6n + 7) { clear: none; }
  .items-grid .col-xs-1:nth-child(12n + 13) { clear: none; }

  // clear first in row for small columns
  .items-grid .col-sm-6:nth-child(2n + 3) { clear: left; }
  .items-grid .col-sm-4:nth-child(3n + 4) { clear: left; }
  .items-grid .col-sm-3:nth-child(4n + 5) { clear: left; }
  .items-grid .col-sm-2:nth-child(6n + 7) { clear: left; }
  .items-grid .col-sm-1:nth-child(12n + 13) { clear: left; }
}
@media (min-width: 992px) {
  // reset previous grid
  .items-grid .col-sm-6:nth-child(2n + 3) { clear: none; }
  .items-grid .col-sm-4:nth-child(3n + 4) { clear: none; }
  .items-grid .col-sm-3:nth-child(4n + 5) { clear: none; }
  .items-grid .col-sm-2:nth-child(6n + 7) { clear: none; }
  .items-grid .col-sm-1:nth-child(12n + 13) { clear: none; }

  // clear first in row for medium columns
  .items-grid .col-md-6:nth-child(2n + 3) { clear: left; }
  .items-grid .col-md-4:nth-child(3n + 4) { clear: left; }
  .items-grid .col-md-3:nth-child(4n + 5) { clear: left; }
  .items-grid .col-md-2:nth-child(6n + 7) { clear: left; }
  .items-grid .col-md-1:nth-child(12n + 13) { clear: left; }
}
@media (min-width: 1200px) {
  // reset previous grid
  .items-grid .col-md-6:nth-child(2n + 3) { clear: none; }
  .items-grid .col-md-4:nth-child(3n + 4) { clear: none; }
  .items-grid .col-md-3:nth-child(4n + 5) { clear: none; }
  .items-grid .col-md-2:nth-child(6n + 7) { clear: none; }
  .items-grid .col-md-1:nth-child(12n + 13) { clear: none; }

  // clear first in row for large columns
  .items-grid .col-lg-6:nth-child(2n + 3) { clear: left; }
  .items-grid .col-lg-4:nth-child(3n + 4) { clear: left; }
  .items-grid .col-lg-3:nth-child(4n + 5) { clear: left; }
  .items-grid .col-lg-2:nth-child(6n + 7) { clear: left; }
  .items-grid .col-lg-1:nth-child(12n + 13) { clear: left; }
}


/* 5 columns
-------------------------------------------------------*/

.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
  position: relative;
  min-height: 1px;
  padding-right: 10px;
  padding-left: 10px;
}

.col-xs-5ths {
  width: 20%;
  float: left;
}

@media (min-width: 767px) {
  .col-sm-5ths {
    width: 20%;
    float: left;
  }
}

@media (min-width: 992px) {
  .col-md-5ths {
    width: 20%;
    float: left;
  }
}

@media (min-width: 1200px) {
  .col-lg-5ths {
    width: 20%;
    float: left;
  }
}


/* Hover Overlays
-------------------------------------------------------*/

.hover-overlay {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  @include transition ($all);

  &.light {
    background-color: rgba(255,255,255,.9);
  }
}

.hover-trigger:hover .hover-overlay {
  opacity: 1;
  visibility: visible;
}

[data-overlay="1"] {
  background-color: rgba(25,25,25,.1);
}

[data-overlay="2"] {
  background-color: rgba(25,25,25,.2);
}

[data-overlay="3"] {
  background-color: rgba(25,25,25,.3);
}

[data-overlay="4"] {
  background-color: rgba(25,25,25,.4);
}

[data-overlay="5"] {
  background-color: rgba(25,25,25,.5);
}

[data-overlay="6"] {
  background-color: rgba(25,25,25,.6);
}

[data-overlay="7"] {
  background-color: rgba(25,25,25,.7);
}

[data-overlay="8"] {
  background-color: rgba(25,25,25,.8);
}

[data-overlay="9"] {
  background-color: rgba(25,25,25,.9);
}

[data-overlay="10"] {
  background-color: rgba(25,25,25,1);
}


/* List Items
-------------------------------------------------------*/
.list-dividers > li {
  position: relative;
  padding: 9px 0;
  border-bottom: 1px solid $border-color;
}

.list-no-dividers > li {
  position: relative;
  padding: 7px 0 !important;
}