/*
=====================================================================
*   Woo v1.0 Layout Stylesheet
*   url: styleshout.com
*   05-02-2014
=====================================================================

   TOC:
   a. General and Common Styles
   b. Header Styles
   c. Hero Section
   d. Features Section
   e. Pricing Section
   f. Screenshots Section
   g. Call To Action Section
   h. Testimonials Section
   i. Subscribe Section
   j. Footer
   k. lightbox

   todo: check bug in mobile z-index

===================================================================== */

/* ------------------------------------------------------------------ */
/* a. General and Common Styles
/* ------------------------------------------------------------------ */

body { background: #181d21; }

.section-head {
  	padding: 0 4%;
   text-align: center;
}
.section-head h1 {
   font: 20px/36px 'montserrat-bold', sans-serif;
   color: #333;
   text-transform: uppercase;
   letter-spacing: 1.5px;
   margin-bottom: 12px;
}

/* for css animations */
.show { opacity: 1; }
.js #mc_embed_signup input[type="email"],
.js #mc_embed_signup input[type="submit"] {
   opacity: 0;
}


/* ------------------------------------------------------------------ */
/* b. Header Styles
/* ------------------------------------------------------------------ */

header {
   height: 54px;
   width: 100%;
   background: #13171B;
   position: fixed;
   left: 0;
   top: 0;
   z-index: 990;
}

/* header logo */
header .logo {
   margin-left: 36px;
   margin-right: 20px;
   margin-top: 13px;
   float: left;
   width: auto; 
   z-index: 991; 

   /* add position relative since z-index only applies to  
   elements that have been given an explicit position */
   position: relative; 
}
header .logo a {
   display: block;
   margin: 0;
   padding: 0;
   border: none;
   outline: none;
   width: 64px;
   height: 18px;   
}

/* header social */
header .header-social {
   font-size: 20px;
   font-weight: normal;
   line-height: 54px;
   color: #424a56;
   margin: 0 10px 0 0;
   padding: 0;
   float: right;
}
header .header-social li {
   display: inline-block;
   margin-right: 20px;
}
header .header-social li a { color: #fff; }
header .header-social li a:hover { color: #11ABB0; }

/* primary navigation
--------------------------------------------------------------------- */
#nav-wrap, #nav-wrap ul, #nav-wrap li, #nav-wrap a {
	 margin: 0;
	 padding: 0;
	 border: none;
	 outline: none;
}

/* nav-wrap */
#nav-wrap {
   font: 12px 'montserrat-regular', sans-serif;
   text-transform: uppercase;
   letter-spacing: 1.5px;
   float: left;
}

/* hide toggle button */
#nav-wrap > a { display: none; }

ul#nav {
   min-height: 54px;
   width: auto;

   /* left align the menu */
   text-align: left;
}
ul#nav li {
   position: relative;
   list-style: none;
   height: 54px;
   display: inline-block;

}

/* Links */
ul#nav li a {

   /* 8px padding top + 8px padding bottom + 38px line-height = 54px */
   display: inline-block;
   padding: 8px 8px;
   line-height: 38px;
   text-decoration: none;
   text-align: left;
   #color: #58687A;

	-webkit-transition: color .2s ease-in-out;
	-moz-transition: color .2s ease-in-out;
	-o-transition: color .2s ease-in-out;
	-ms-transition: color .2s ease-in-out;
	transition: color .2s ease-in-out;
}
ul#nav li a:hover { color: #fff; }
ul#nav li a:active { background-color: transparent !important; }
ul#nav li.current a { color: #fff; }


/* ------------------------------------------------------------------ */
/* a. Bird Section
/* ------------------------------------------------------------------ */

.floating-form {
    width: 357px;
    padding: 75px 0px 10px 25px;
    font: 13px 'GT Eesti Pro Display Regular', sans-serif;
    background: #F9F9F9;
    border: 1px solid #ddd;
    left: 10px;
    position: fixed;
    box-shadow: -2px -0px 8px rgba(43, 33, 33, 0.06);
    -moz-box-shadow: -2px -0px 8px rgba(43, 33, 33, 0.06);
    -webkit-box-shadow:  -2px -0px 8px rgba(43, 33, 33, 0.06);
    z-index: 3;
}

.contact-opener {
    position: absolute;
    right: -117px;
    top: 350px;
    padding: 9px;
    color: #fff;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.43);
    cursor: pointer;
    border-radius: 0px 6px 6px 0px;
    -webkit-border-radius: 0px 6px 6px 0px;
    -moz-border-radius: 0px 6px 6px 0px;
    box-shadow: -2px -0px 8px rgba(43, 33, 33, 0.06);
    -moz-box-shadow: -2px -0px 8px rgba(43, 33, 33, 0.06);
    -webkit-box-shadow:  -2px -0px 8px rgba(43, 33, 33, 0.06);
}

.contact-opener-bird {
    margin-bottom: -2px;
}

.early-bird-floating-form {
    overflow-y: auto;
    padding-right: 25px;
    max-height: calc(100vh - 85px); 
}

.floating-form-heading {
    font: 17px 'GT Eesti Pro Display Bold', sans-serif;
    color: #f26803;
    text-align: center;
    line-height: 1.3em;
    border-bottom: 1px solid #ddd;
    margin-bottom: 15px;
    padding-bottom: 15px;
    text-shadow: 1px 1px 1px rgba(228, 217, 186, 0.15);
}

.floating-form-description {
    font: 15px 'GT Eesti Pro Display Light', sans-serif;
    color: #324aac;
    text-align: justify;
    padding-bottom: 6px;
}

.floating-form label {
    display: block;
    margin: 0px 0px 15px 0px;
}

.floating-form label > span {
    font: 14px 'GT Eesti Pro Display Bold', sans-serif;
    letter-spacing: -0.02rem;
    width: 150px;
    float: left;
    padding-top: 5px;
    padding-right: 5px;
}

.floating-form span.required {
    color: red;
}

.floating-form .input-model-selector {
    margin: -26px 15px 10px 15px;
}

.floating-form .tel-number-field {
    width: 40px;
    text-align: center;
}

.floating-form .long {
    width: 120px;
}

.floating-form input.input-field {
    width: 100%;
}

.floating-form .input-field-model {
    margin: -25px 15px 10px 0px;
    text-align: right;
    pointer-events: none;
}

.floating-form input.input-field,
.floating-form .tel-number-field,
.floating-form .textarea-field,
.floating-form .model-select-field {
    font: 14px 'GT Eesti Pro Display Light', sans-serif;
    -webkit-transition: all 0.30s ease-in-out;
    -moz-transition: all 0.30s ease-in-out;
    -ms-transition: all 0.30s ease-in-out;
    -o-transition: all 0.30s ease-in-out; 
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border: 1px solid #aaa;
    box-shadow: 0px 0px 2px #82d2d7;
    -moz-box-shadow: 0px 0px 2px #82d2d7;
    -webkit-box-shadow: 0px 0px 2px #82d2d7;
    /*border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;*/
    padding: 7px;
    outline: none;
    margin: 15px 0 -12px 0;
}

.floating-form .input-field:focus,
.floating-form .tel-number-field:focus,
.floating-form .textarea-field:focus,  
.floating-form .model-select-field:focus {
    border: 1px solid #0C0;
}

.floating-form .textarea-field {
    height: 100px;
    width: 100%;
}

.floating-form input[type="button"],
.floating-form input[type="submit"], .contact-opener {
    /*-moz-box-shadow: inset 0px 0px 0px 0px #ddd;*/
    /*-webkit-box-shadow: inset 0px 0px 0px 0px #ddd;*/
    /*box-shadow: inset 0px 1px 0px 0px #ddd;*/
    background-color: #099ea4;
    border: 1px solid #ddd;
    display: inline-block;
    cursor: pointer;
    color: #fff;
    padding: 6px 10px 6px 10px;
    text-decoration: none;
    font: 13px 'montserrat', sans-serif;
}

.floating-form input[type="button"]:hover,
.floating-form input[type="submit"]:hover, .contact-opener {
    background: rgba(255, 255, 255, 0.5); 
    font-weight: bold;
    color: #099ea4;
}

.floating-form .success {
    background: #D8FFC0;
    padding: 5px 10px 5px 10px;
    margin: 0px 0px 5px 0px;
    border: none;
    font-weight: bold;
    color: #2E6800;
    border-left: 3px solid #2E6800;
}

.floating-form .error {
    background: #FFE8E8;
    padding: 5px 10px 5px 10px;
    margin: 0px 0px 5px 0px;
    border: none;
    font-weight: bold;
    color: #FF0000;
    border-left: 3px solid #FF0000;
}

/* ------------------------------------------------------------------ */
/* a. Cart Section
/* ------------------------------------------------------------------ */

.ct-list-decorated {
  list-style: none;
  padding: 0;
}
.ct-list-decorated li {
  position: relative;
  padding: 12px 0 12px 15px;
  border-bottom: 1px solid #d9d9d9;
}
.ct-list-decorated li:before {
  content: '\f0da';
  font-family: fontawesome;
  font-size: 10px;
  position: absolute;
  left: 0;
  top: 15px;
}
.ct-list-decorated a {
  display: block;
}
.ct-descriptionList {
  counter-reset: descList;
}
.ct-descriptionList dt:before {
  counter-increment: descList;
  content: counter(descList) ". ";
}
.ct-descriptionList dt {
  padding-top: 80px;
}
@media only screen and (max-width: 767px) {
  .ct-descriptionList dt {
    padding-top: 40px;
  }
}
.ct-descriptionList dd {
  color: #666;
  padding-top: 25px;
}
@-webkit-keyframes hvr-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  60% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0deg);
    transform: translateX(1px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0deg);
    transform: translateX(-1px) rotate(0deg);
  }
}
@keyframes hvr-buzz-out {
  10% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  20% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  30% {
    -webkit-transform: translateX(3px) rotate(2deg);
    transform: translateX(3px) rotate(2deg);
  }
  40% {
    -webkit-transform: translateX(-3px) rotate(-2deg);
    transform: translateX(-3px) rotate(-2deg);
  }
  50% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform:translateX(2px) rotate(1deg)
  }
  60% {
    -webkit-transform:translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  70% {
    -webkit-transform: translateX(2px) rotate(1deg);
    transform: translateX(2px) rotate(1deg);
  }
  80% {
    -webkit-transform: translateX(-2px) rotate(-1deg);
    transform: translateX(-2px) rotate(-1deg);
  }
  90% {
    -webkit-transform: translateX(1px) rotate(0deg);
    transform: translateX(1px) rotate(0deg);
  }
  100% {
    -webkit-transform: translateX(-1px) rotate(0deg);
    transform: translateX(-1px) rotate(0deg);
  }
}
.ct-animationFloating--vertical {
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-animation: floating 10s -1s infinite;
  animation: floating 10s -1s infinite;
}
.ct-animationFloating--horizontal {
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-animation: floating-horizontal 10s -1s infinite;
  animation: floating-horizontal 10s -1s infinite;
}
@keyframes floating {
  0%,
  100% {
    -moz-transform: translateY(-5%);
    -o-transform: translateY(-5%);
    -ms-transform: translateY(-5%);
    -webkit-transform: translateY(-5%);
    transform: translateY(-5%);
  }
  50% {
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes floating-horizontal {
  0%,
  100% {
    -moz-transform: translate(-5%, -5%);
    -o-transform: translate(-5%, -5%);
    -ms-transform: translate(-5%, -5%);
    -webkit-transform: translate(-5%, -5%);
    transform: translate(-5%, -5%);
  }
  25% {
    -moz-transform: translate(5%, 5%);
    -o-transform: translate(5%, 5%);
    -ms-transform: translate(5%, 5%);
    -webkit-transform: translate(5%, 5%);
    transform: translate(5%, 5%);
  }
  50% {
    -moz-transform: translate(5%, -5%);
    -o-transform: translate(5%, -5%);
    -ms-transform: translate(5%, -5%);
    -webkit-transform: translate(5%, -5%);
    transform: translate(5%, -5%);
  }
  75% {
    -moz-transform: translate(-5%, 5%);
    -o-transform: translate(-5%, 5%);
    -ms-transform: translate(-5%, 5%);
    -webkit-transform: translate(-5%, 5%);
    transform: translate(-5%, 5%);
  }
}
.not_found .ct-sectionHeader-subtitle {
  display: block;
  padding: 0;
  margin: 0;
}
.not_found p {
  margin: 40px auto;
}
.not_found .btn-group {
  margin-bottom: 40px;
}
@media only screen and (min-width: 768px) {
  .not_found .ct-sectionHeader-title {
    font-size: 72px;
    font-size: 7.2rem;
  }
  .not_found .ct-sectionHeader-title span {
    font-size: 172px;
    font-size: 17.2rem;
  }
  .not_found p {
    width: 50%;
  }
  .not_found .ct-searchForm--default {
    margin-top: 40px;
  }
}
.not_found .ct-sectionHeader .ct-sectionHeader-title {
  color: #fff;
  text-transform: uppercase;
}
.not_found .ct-sectionHeader .ct-sectionHeader-title span {
  color: #fff;
}
.ct-navigation-vertical {
  position: fixed;
  display: none;
  z-index: 100;
  top: 50%;
  right: 20px;
  margin-top: -55px;
}
.ct-navigation-vertical ul {
  list-style: none;
}
.ct-navigation-vertical ul>li>a {
  padding: 0;
}
.ct-navigation-vertical ul>li>a:focus {
  background-color: transparent;
}
.ct-navigation-vertical ul>li:hover>a {
  background-color: #b6becd;
}
.ct-navigation-vertical ul>li.active>a {
  background-color: #b6becd;
}
.ct-navigation-vertical a {
  display: block;
  height: 12px;
  width: 12px;
  background-color: transparent;
  border: 2px solid #b6becd;
  border-radius: 50%;
  margin-bottom: 10px;
}
@media only screen and (min-width: 768px) {
  .ct-navigation-vertical {
    display: block;
  }
}
@media only screen and (min-width: 1200px) {
  .ct-navigation-vertical {
    right: 40px;
  }
}
.ct-cart {
  font-family: "Montserrat", sans-serif;
  position: fixed;
  top: 55px;
  z-index: 4000;
  right: -200px;
  background-color: #fff;
  width: 200px;
  transition:all 250ms cubic-bezier(0.55, 0, 0.1, 1);
  box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.3);
}
.ct-cart ol {
  list-style: none;
  padding-left: 0;
}
.ct-cart ol:after {
  content: "";
  display: table;
  clear: both;
}
.ct-cart__inner {
  position: relative;
}
.ct-cart__product {
  background-color: #fff;
  padding: 10px 10px 20px 10px;
  position: relative;
  z-index: 2;
  min-height: 150px;
}
.ct-cart__product-total {
  display: block;
  margin-bottom: 12px;
  text-align: right;
}
.ct-cart__product-total:before {
  content: "Total: ";
  float: left;
}
.ct-cart__product-name {
  display: block;
}
.ct-cart__product-left,
.ct-cart__product-body {
  float: left;
}
.ct-cart__product-left {
  width: 40px;
}
.ct-cart__product-body {
  width: calc(100% - 40px);
  padding-left: 10px;
}
.ct-cart__product-price,
.ct-cart__product-input {
  font-family: "Open Sans", sans-serif;
}
.ct-cart__product-input {
  width: 40px;
  margin-left: 10px;
}
.ct-cart__product-checkout,
.ct-cart__product-clear {
  box-shadow: none;
  border: none;
}
.ct-cart__product-clear {
  color: #fff;
  background-color: #ee3e53;
  margin-right: 10px;
}
.ct-cart__product-clear:hover {
  background-color: #f26d7d;
}
.ct-cart__product-remove,
.ct-cart__product-checkout {
  float: right
}
.ct-cart__product-remove {
  color: #fff;
  border-radius: 50px;
  background-color: #ee3e53;
  border: 2px solid #ee3e53;
}
.ct-cart__product-remove:hover {
  background-color: #f26d7d;
  border: 2px solid #f26d7d;
}
.ct-cart__message {
  text-align: center;
  text-transform: uppercase;
  height: 40px;
  width: 40px;
  font-size: 14px;
  line-height: 40px;
  padding: 0 10px;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #3bf295;
  transition: all 250ms cubic-bezier(0.55, 0, 0.1, 1);
}
.ct-cart__message-added {
  left: -40px;
}
.ct-cart__product-empty {
  font-family: 'montserrat-regular', sans-serif;
  text-align: center;
  font-size: 20px;
  font-size: 2rem;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -14px;
}
.ct-cart__button {
  display: none;
}
@media only screen and (min-width: 768px) {
  .ct-cart {
    top: 25%;
  }
  .ct-cart__button {
    display: block;
    position: absolute;
    background-color: #ffcc00;
    text-align: center;
    cursor: pointer;
    height: 50px;
    width: 50px;
    top: 0;
    left: -50px;
    font-size: 24px;
    font-size: 2.7rem;
    line-height: 50px;
    box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.3);
    z-index: 1;
  }
  .ct-cart__message-added {
    left: -80px;
  }
}
@media only screen and (min-width: 992px) {
  .ct-cart {
    width: 250px;
    right: -250px;
  }
  .ct-cart__product {
    padding: 10px 20px 20px 20px;
  }
}
.cart-is-open .ct-cart {
  right: 0;
}
.cart-is-open .navbar .ct-cart {
  display: none;
}
.navbar .ct-cart {
  color: #000;
  position: absolute;
  top: 50px;
  right: -25px;
}
.navbar .ct-cart__button {
  display: none;
}
.navbar .ct-cart ol {
  margin-bottom: 10px;
}
.navbar .ct-cart__message-added {
  left: -40px;
}


/* ------------------------------------------------------------------ */
/* c. Hero Section
/* ------------------------------------------------------------------ */

#hero {
   padding-top: 24px;
   background: #ffffff url(img/grey.png);
   overflow: hidden;
}

/* For high-res devices */
@media
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {

#hero { 
   background: #ffffff; /* url(img/hero-bg_@2X.png); */
   background-size: 200px 200px;
 }
}

#hero .row { max-width: 1366px; }

/* Hero Text */
.hero-pulse {
   margin: -10px 15px -12px -75px;
}
.hero-text {
   color: #000;
   width: 100%;
   text-align: center;
   margin: 54px auto 24px auto;
}
.hero-text h1 {
   font: 37px/1.2em 'GT Eesti Pro Display Bold', sans-serif;
   letter-spacing: 0.1rem;
   color: #099ea4;
   padding: 0;
   margin: 0;
   text-align: left;
   text-shadow: 1px 1px 3px rgba(150, 150, 150, 0.15);
}
.hero-text h1 span,
.hero-text a { color: #11ABB0; }
.hero-text p {
   font: 18px/30px 'GT Eesti Pro Display Regular', sans-serif;
   padding: 0;
   margin: 15px 0% 0;
   text-align: justify;
   line-height: 1.6em;
   color: #666 !important;
   /*text-shadow: 0 1px 2px rgba(0, 0, 0, .2);*/
}

/* Hero grid (covers image and buy sections) */

.hero-grid {
   display: grid;
   gap: 0px;
   grid-template-columns: 50% 50%;
}

@media screen and (max-width: 768px) {
   .hero-grid {
    /*display: grid;*/
    display: block;
    margin-left: auto;
    margin-right: auto;
    gap: 15px;
    grid-template-columns: auto;
   }
}

/* Hero Image */

@media screen and (min-width: 600px) {
  .hero-image {
    grid: auto / auto-flow auto minmax(0,1fr);
    align-items: start;
    padding-bottom: 15px;
  }
}

/* Hero Buy */

.prod-desc {
   text-align: right;
   margin: 0 20px 0 0;
}

.hero-buy {
   /*display: grid;*/
   gap: 8px;
   grid-template-columns: auto;
   grid-template-rows: 80px 85px 85px 85px auto 100px;
}
.hero-buy img {
   vertical-align: bottom;
}

.prod-get-now {
   color: #369; 
}

.estimate-button {
   display: block;
   margin: 8px auto -40px auto;
}

.prod-selector {
   margin-left: 25px;
   margin-right: 25px;
}

.selector-connectors {
   margin: -15px -35px -15px -120px; 
}

.prod-notation {
   font-size: 0.8em;
   color: #615854;
   position: relative;
   top: -12px;
}

.price-output {
   text-align: center;
   color: #f90;
}

#optionsForm {
   display: flex;
   flex-direction: column;
   gap: 1em;
}

#optionsForm .options-row {
   display: flex;
   gap: 1em;
   justify-content: space-around;
}

#optionsForm .options-row-short {
   display: flex;
   margin-top: -15px;
   gap: 1em;
   justify-content: space-around;
}

#optionsForm .options-row-narrow {
   display: flex;
   gap: 1em;
   justify-content: space-evenly;
}

#optionsForm .option input {
   display: none;
}

#optionsForm .option {
   display: flex;
   cursor: pointer;
   border: 1px solid #099ea4;
   border-radius: 0.3em;
   padding: 0.5em;
   /*width: 7em;*/
   flex-basis: 7em;
   align-items: center;
   text-align: center;
   justify-content: center;
   box-shadow: 0px 0px 4px rgb(130, 210, 215);
   z-index: 1;
}

#optionsForm .option:has(input:disabled) {
   color: #bbb;
   border-color: #eee;
   box-shadow: 0px 0px 1px rgb(70, 70, 70);
   z-index: 1;
}

#optionsForm .option:has(input:checked) {
   background-color: #fc0;
   border: 1px solid #a2a2a2; 
   box-shadow: 0px 0px 4px rgb(200, 200, 200);
   z-index: 1;
}

#optionsForm .results {
   display: flex;
   margin-top: -20px;
   justify-content: space-around;
}

#optionsForm .result-model {
   width: 32%;
   font-family: 'montserrat-regular', sans-serif;
   font-size: 18px;
   line-height: 1.4em;
   color: #369;
   margin-top: 17px;
   text-shadow: 0px 0px 2px rgba(3, 78, 194, 0.2);
}

#optionsForm .total-price {
   width: 160px;
   height: 56px;
   font-size: 15px;
   color: #f3f3f3;
   letter-spacing: 0.1rem;
   margin-left: -35px;
   padding-top: 16px;
   padding-right: 48px;
   padding-left: 0;
   transition-duration: 0.4s;
}

#optionsForm .total-price:hover {
   color: #f90;
   font-size: 16px;
   text-shadow: 0px 0px 3px rgba(78, 71, 67, 0.5);
}

#optionsForm .quantity {
   width: 60px;
   height: 32px;
   text-align: center;
   margin-top: 13px;
   border: 1px solid #4e4743;
}

#optionsForm .currency-selector {
   width: 10%;
   font-family: 'montserrat-bold', sans-serif;
   font-size: 11px;
   margin-top: -13px;
   text-align: center;
}

#optionsForm .toggle-button-cover {
   position: relative;
   box-sizing: border-box;
}

#optionsForm .button-cover {
}

#optionsForm .knobs,
#optionsForm .layer {
   position: absolute;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
}

#optionsForm .button {
   position: relative;
   width: 42px;
   height: 24px;
   overflow: hidden;
}

#optionsForm .button.r,
#optionsForm .button.r .layer {
   border-radius: 100px;
}

#optionsForm .checkbox {
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
   padding: 0;
   margin: 0;
   opacity: 0;
   cursor: pointer;
   z-index: 3;
}

#optionsForm .knobs {
   z-index: 2;
}

#optionsForm .layer {
   width: 100%;
   background-color: #eee;
   transition: 0.3s ease all;
   border: 1px solid #369;
   z-index: 1;
}

/* Currency toggle */
#optionsForm .knobs:before {
   content: "";
   position: absolute;
   top: 3px;
   left: 4px;
   width: 18px;
   height: 10px;
   color: #f90;
   font-size: 10px;
   font-weight: bold;
   text-align: center;
   line-height: 1;
   padding: 9px 4px;
   background-color: #5d88c5;
   border-radius: 50%;
   transition: 0.3s cubic-bezier(0.18, 0.89, 0.35, 1.15) all;
}

#optionsForm .checkbox:checked + .knobs:before {
   content: "";
   left: 20px;
   background-color: #5d88c5;
}

#optionsForm .checkbox:checked ~ .layer {
   background-color: #eee;
}

#optionsForm .knobs,
#optionsForm .knobs:before,
#optionsForm .layer {
   transition: 0.3s ease all;
}

/* Hero CTA Buttons */

#hero .buttons {
   text-align: center;
   margin: 20px 0 4px 0;
}
#hero .buttons .button {
   font: 14px/24px 'montserrat-bold', sans-serif;
   text-transform : uppercase;
   letter-spacing: 2px;
}
#hero .buttons .trial {
   background: #f64b39;
   margin-right: 40px;

   -webkit-animation-delay: 10s;
      -moz-animation-delay: 10s;
       -ms-animation-delay: 10s;
        -o-animation-delay: 10s;
   -webkit-animation-iteration-count: 3;
      -moz-animation-iteration-count: 3;  
}
#hero .buttons .trial:hover { background: #F86A5A; }
#hero .buttons .learn-more {}

/* ------------------------------------------------------------------ */
/* d. Features Section
/* ------------------------------------------------------------------ */

#insights {
   background: #fff;
   padding-bottom: 78px;
   overflow: hidden;
}
#insights .feature {
   margin-top: 40px;
   margin-bottom: 54px;
}
#insights .right {
   padding-left: 32px;
   padding-bottom: 4px;
   float: right;   
}
#insights .left {
   padding-right: 32px;
   float: left;
   padding-top: 46px;
}
#insights h3 {
   font: 16px/24px 'montserrat-bold', sans-serif;
   text-transform: uppercase;
   letter-spacing: 1px;
   color: #222;
}
.fluid-video-wrapper { margin-top: 18px; }

#insights .cpu-ddos {
   max-width: 100%;
   height: auto;
   text-align: center;
}
#insights .box-note {
   margin-left: auto;
   margin-right: auto;
   width: 85%;
   padding: 4px 0 0;
   font-size: 80%;
   line-height: 1.3;
   color: #786d66 !important;
   text-align: center;
}

@media screen and (pointer: fine) {
#insights .box-intro-image {
   max-width: 100%;
   height: auto;
   text-align: center;
   margin: -80px auto auto;
   transition: transform 1.5s cubic-bezier(.22,1,.36,1);
 }
#insights .box-intro-image .box-intro-image:hover {
   transform: scale(1.06);
 }
}

#insights .box-intro-note {
   width: 1170px; 
   text-align: right;
}

/* ------------------------------------------------------------------ */
/* d. Features2 Section
/* ------------------------------------------------------------------ */

#insights2 {
   background: #fff;
   padding-top: 16px;
   padding-bottom: 0px;
   overflow: hidden;
}
#insights2 .feature {
   margin-top: 40px;
   margin-bottom: 54px;
}
#insights2 .right {
   padding-left: 32px;
   padding-bottom: 0px;
   float: right;
}
#insights2 .left {
   padding-right: 32px;
   float: left;
   padding-top: 46px;
}
#insights2 h3 {
   font: 16px/24px 'montserrat-bold', sans-serif;
   text-transform: uppercase;
   letter-spacing: 1px;
   color: #222;
}
.fluid-video-wrapper { margin-top: 18px; }

@media screen and (pointer: fine) {
#insights2 .overall_architecture {
   max-width: 100%;
   height: auto;
   text-align: center;
   margin: -105px auto 15px;
   transition: transform 1.5s cubic-bezier(.22,1,.36,1);
 }
#insights2 .overall_architecture .overall_architecture:hover {
   transform: scale(1.06);
 }
}

/*----------------------------------------------*/
/*	e. Pricing Section
/*----------------------------------------------*/

#pricing {
   background: #F7F7F7;
   padding-top: 65px;
   padding-bottom: 77px;   
   border-top: 1px solid #F0F0F0;
   border-bottom: 1px solid #F0F0F0;
   text-align: center;
}
#pricing .price-block {
   background: #fff;
   border: 1px solid #E6E6E6;
   text-align: center;
   margin-bottom: 36px;
}
.plan-title {
   font: 15px/30px 'montserrat-regular', sans-serif;
   padding: 30px 20px 6px 20px;
   margin-bottom: 0px;
   text-align: center;
   text-transform: uppercase;
   letter-spacing: 2px;
}
.plan-title .fa {
   display: block;
   margin-bottom: 6px;
   font-size: 26px;
}
.plan-price {
   font-family: 'montserrat-bold', sans-serif;
   font-size: 30px;
   color: #333;
   padding: 6px 30px 6px 30px;
   margin-bottom: 0;
   text-align: center;
   letter-spacing: .5px;
}
.plan-price span {
   font-family: 'opensans-light', sans-serif;
   font-size: 15px;
   color: #999;	
   display: block;
   margin-top: 0;
}

ul.features {
   margin: 12px 0 0 0;
   list-style: none;
}
ul.features li {
   line-height: 39px;
   margin-bottom: 0;
}
ul.features li:nth-child(odd) { }
ul.features li:nth-child(even) { }

.plan-sign-up {
   padding: 24px 15px;
   margin: 0;
   text-align: center;
}
.plan-sign-up .button {
   font: 13px/24px 'montserrat-bold', sans-serif;
   text-transform: uppercase;
   letter-spacing: 2px;
}

/*----------------------------------------------*/
/*      e. Models Section
/*----------------------------------------------*/

#models {
   background: #F7F7F7;
   padding-top: 64px;
   padding-bottom: 77px;
   border-top: 1px solid #F0F0F0;
   border-bottom: 1px solid #F0F0F0;
   text-align: center;
}
#models .price-block {
   background: #fff;
   border: 1px solid #E6E6E6;
   text-align: center;
   margin-bottom: 36px;
}
.plan-title {
   font: 15px/30px 'montserrat-regular', sans-serif;
   padding: 30px 20px 6px 20px;
   margin-bottom: 0px;
   text-align: center;
   text-transform: uppercase;
   letter-spacing: 2px;
}
.plan-title .fa {
   display: block;
   margin-bottom: 6px;
   font-size: 26px;
}
.plan-price {
   font-family: 'montserrat-bold', sans-serif;
   font-size: 30px;
   color: #333;
   padding: 6px 30px 6px 30px;
   margin-bottom: 0;
   text-align: center;
   letter-spacing: .5px;
}
.plan-price span {
   font-family: 'opensans-light', sans-serif;
   font-size: 15px;
   color: #999;
   display: block;
   margin-top: 0;
}
ul.features {
   margin: 12px 0 0 0;
   list-style: none;
}
ul.features li {
   line-height: 39px;
   margin-bottom: 0;
}
ul.features li:nth-child(odd) { }
ul.features li:nth-child(even) { }

.plan-sign-up {
  padding: 24px 15px;
  margin: 0;
  text-align: center;
}
.plan-sign-up .button {
  font: 13px/24px 'montserrat-bold', sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
}

/* ------------------------------------------------------------------ */
/* c. Setup
/* ------------------------------------------------------------------ */

@media (min-width: 768px) {
.video-embedded {
   width: 100%;
  }
}

.video-laptop {
   display: block;
   margin-top: 28px;
   margin-left: auto;
   margin-right: auto; 
}

.slogan {
   display: block;
   margin-top: 0px;
   margin-bottom: 80px;
   margin-left: auto;
   margin-right: auto;
}

@media (min-width:768px) {
   .col-sm-12 {
   width: 100%;
   }
}

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
}

.embed-responsive .embed-responsive-item,
.embed-responsive embed,
.embed-responsive iframe,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border: 0;
}
.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}

.embed-responsive-4by3 {
  padding-bottom: 75%;
}

.ct-embed .ct-mediaBox-poster,
.ct-embed .embed-responsive-item {
  position: absolute;
  top: 5%;
  left: 17.9%;
  z-index: 1;
  width: 876px;
  height: 548px;
}
@media only screen and (max-width: 1199px) {
  .ct-embed .ct-mediaBox-poster,
  .ct-embed .embed-responsive-item {
    width: 705px;
    height: 452px;
  }
}
@media only screen and (max-width: 991px) {
  .ct-embed .ct-mediaBox-poster,
  .ct-embed .embed-responsive-item {
    width: 540px;
    height: 338px;
  }
}
.ct-embed .embed-responsive-item {
  background-color: #000;
}
.ct-embed .ct-playButton {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #F5DEB3;
  -moz-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
  .ct-mediaBox .embed-responsive-16by9 {
    padding-bottom: 0;
    width: 420px;
    height: 238px;
    margin: 0 auto;
    text-align: center;
  }
  .ct-mediaBox img {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
  }
  .ct-mediaBox .ct-mediaBox-poster,
  .ct-mediaBox .ct-embed .embed-responsive-item,
  .ct-embed .ct-mediaBox .embed-responsive-item {
    width: 316px;
    height: 199px;
    left: 12.7%;
    top: -9%;
  }
}

@media only screen and (max-width: 479px) {
  .ct-mediaBox .embed-responsive-16by9 {
    padding-bottom: 0;
    width: 360px;
    height: 240px;
    margin: 0 auto;
    text-align: center;
  }
  .ct-mediaBox img {
    max-width: 360px;
  }
  .ct-mediaBox .ct-mediaBox-poster,
  .ct-mediaBox .ct-embed .embed-responsive-item,
  .ct-embed .ct-mediaBox .embed-responsive-item {
    width: 270px;
    height: 170px;
    left: 12.5%;
    top: 5%;
  }
}

@media only screen and (max-width: 767px) {
  .ct-mediaBox .slogan {
    margin: 0 auto 25px auto;
    max-width: 100%;
  }
}

#setup {
   background: #fff url(img/grey.png);
   padding-top: 64px;
   padding-bottom: 120px;
}
/* For high-res devices */
@media
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {

   #setup {
      background: #fff url(img/grey_@2X.png);
      background-size: 397px 322px;
   }

}

/* Portfolio Content */
#setup-wrapper .columns { padding: 0; }
.item .item-wrap {
   background: #fff;
   overflow: hidden;
   position: relative;

   -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;
}
.item .item-wrap a {
   display: block;
   cursor: pointer;
}

/* overlay */
.item .item-wrap .overlay {
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;

	opacity: 0;
	-moz-opacity: 0;
	filter:alpha(opacity=0);

   -webkit-transition: opacity 0.3s ease-in-out;
	-moz-transition: opacity 0.3s ease-in-out;
	-o-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;

   background: url(img/overlay-bg.png) repeat;
}
.item .item-wrap .link-icon {
   display: block;
   color: #fff;
   height: 30px;
   width: 30px;
   font-size: 18px;
   line-height: 30px;
   text-align: center;

   opacity: 0;
	-moz-opacity: 0;
	filter:alpha(opacity=0);

   -webkit-transition: opacity 0.3s ease-in-out;
	-moz-transition: opacity 0.3s ease-in-out;
	-o-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;

   position: absolute;
   top: 50%;
   left: 50%;
   margin-left: -15px;
   margin-top: -15px;
}
.item .item-wrap img {
   vertical-align: bottom;

   -webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

/* on hover */
.item:hover .overlay {
	opacity: 1;
	-moz-opacity: 1;
	filter:alpha(opacity=100);
}
.item:hover .link-icon {
   opacity: 1;
	-moz-opacity: 1;
	filter:alpha(opacity=100);
}
.item:hover .item-wrap img {
   -moz-transform: scale(1.2);
	-o-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}


/* ------------------------------------------------------------------ */
/* g. Call To Action Section
/* ------------------------------------------------------------------ */

#call-to-action {
   background: #23292F;
   padding-top: 85px;
   padding-bottom: 48px;
}
#call-to-action h1 {
   font: 18px/24px 'montserrat-bold', sans-serif;
   text-transform: uppercase;
   letter-spacing: 3px;
   color: #fff;
}
#call-to-action h1 span { display: none; }
#call-to-action .header-col h1:before {
   font-family: 'FontAwesome';
   content: "\f093";
   padding-right: 18px;
   padding-top: 6px;
   font-size: 72px;
   line-height: 72px;
   text-align: center;
   float: right;
   color: #EBEEEE;  
}
#call-to-action .action { margin-top: 30px; }
#call-to-action .action .button { text-align: center; }
#call-to-action h2 {
   font: 28px/36px 'montserrat-bold', sans-serif;
   color: #EBEEEE;
   margin-bottom: 12px;
}
#call-to-action h2 a {
   color: inherit;
}
#call-to-action p {
   color: #697B8B; 
   font-size: 17px; 
   padding-right: 5px; 
}
#call-to-action p span {
	font-family: 'opensans-semibold', sans-serif; 
	color: #A9B5C0;
}


/* ------------------------------------------------------------------
/* h. Testimonials
/* ------------------------------------------------------------------ */

#testimonials {
   background: #10999E url(img/escheresque.png);
   padding-top: 112px;
   padding-bottom: 66px;
   position: relative;
   min-height: 198px;
   width: 100%;
   overflow: hidden;
   text-align: center;
}

/* For high-res devices */
@media
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi) {

	#testimonials {
		background: #10999E url(img/escheresque_@2X.png);
		background-size: 46px 29px;
	}
  
}

#testimonials .quote-left, 
#testimonials .quote-right {
   position: absolute;
   top: 50%;
   color: #fff;
   font-size: 40px;
   margin-top: -25px;
}
#testimonials .quote-left { left: 5%; }
#testimonials .quote-right { right: 5%; }

#testimonials .text-container {
   width: 86%;
   margin: 0 auto;
}
#testimonials h1 {
   font: 16px/24px 'montserrat-bold', sans-serif;
   color: #6AECF0;
   text-transform: uppercase;
   letter-spacing: 2px;   
   margin-bottom: 36px;
}

/*	Blockquotes */
#testimonials blockquote {
   margin: 0 0px 30px 0px;
   padding-left: 0;
   position: relative;   
}
#testimonials blockquote:before { content: none; }
#testimonials blockquote p {
   font-family: 'opensans-semibold', sans-serif;
   font-style: normal;
   color: #fff;
   padding: 0;
   font-size: 26px;
   line-height: 42px;   
}
#testimonials blockquote cite {
   display: block;
   font-size: 12px;
   font-style: normal;
   line-height: 18px;
   color: #fff;
}
#testimonials blockquote cite:before { content: "\2014 \0020"; }
#testimonials blockquote cite a,
#testimonials blockquote cite a:visited { color: #8B9798; border: none }

/* 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; padding: 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;
}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child { display: block; }

/* Slider Styles */
.slides { zoom: 1; }
.slides > li {
   /*margin-right: 5px; */
   overflow: hidden;
}

/* Control Nav */
.flex-control-nav {
   width: 100%;
   text-align: center;
}
.flex-control-nav li {
   margin: 0 6px;
   display: inline-block;
   zoom: 1;
   *display: inline;
}
.flex-control-paging li a {
   width: 12px;
   height: 12px;
   display: block;
   background: #ddd;
   background: rgba(255, 255, 255, .3);
   cursor: pointer;
   text-indent: -9999px;
   border-radius: 20px;
   box-shadow: inset 0 0 3px rgba(255, 255, 255, .3);
}
.flex-control-paging li a:hover {
    background: #CCC;
    background: rgba(255, 255, 255, .7);
}
.flex-control-paging li a.flex-active {
    background: #fff;
    background: rgba(255, 255, 255, .9);
    cursor: default;
}


/* ------------------------------------------------------------------ */
/* i. Updates Section
/* ------------------------------------------------------------------ */

#updates {
   background: #23292F;
   padding-top: 96px;
   padding-bottom: 66px;
   overflow: hidden;
   text-align: center;
}

#updates a, #updates a:visited  { color: #fff; }
#updates a:hover, #updates a:focus { color: #11ABB0; }

#updates h1 { color: #fff; }
#updates p {
   color: #7A7A7A;
   text-align: center;
   padding: 0;
}

/* mailchimp signup form */
#mc_embed_signup {
   background: none;
   clear: both;
   display: block;
   margin: 6px auto 30px auto;
   width: 70%;
  	text-align: center;   
}
#mc_embed_signup:before,
#mc_embed_signup:after {
    content: " ";
    display: table;
}
#mc_embed_signup:after {
    clear: both;
}
#mc_embed_signup input[type="submit"] {
   float: right;
   height: 60px;
   margin: 0;
   padding: 0 20px;
   font-size: 16px;
   line-height: 60px;
   width: 47%;  
}
#mc_embed_signup input[type="email"] {
   display: inline;
   float: left;
   height: 60px;
   margin: 0;
   padding: 18px 20px;
   font-size: 18px;
   line-height: 24px;
   font-family: 'montserrat-regular',sans-serif;
   width: 47%;  
   text-align: center;
}


/* ------------------------------------------------------------------ */
/* j. Footer
/* ------------------------------------------------------------------ */

footer {
   padding-top: 84px;
   margin-bottom: 60px;
   color: #3c4753;
   font-size: 13px;
   line-height: 24px;
   position: relative;   
}

footer a, footer a:visited { color: #0A6567; }
footer a:hover, footer a:focus { color: #fff; }

footer .info {
   padding-right: 90px;
   color: #c2c2c2;
}
footer .footer-logo a {
   display: block;
   margin-bottom: 12px;
   margin-top: 12px;
   margin-left: 3px;
}
footer .footer-logo a img {
   height: 92px;
   width: 92px;
   margin-top: -45px;
}

footer .right-cols .columns {
   padding-right: 5px;
   padding-left: 5px;
   width: 33.33333%; ;
}
footer .right-cols .columns p {
   margin-bottom: 6px;
   color: #c2c2c2;
}
footer h3 {
   font: 13px/24px 'opensans-semibold', sans-serif;
   margin-bottom: 0;
   font-weight: normal;
   color: #fff;
   text-transform: uppercase;
   letter-spacing: 1px;
}
footer h3:before {
   font-family: 'FontAwesome';   
   margin: 0 0 6px 3px;
   font-size: 30px;
   line-height: 48px;
   text-align: left;
   color: #738291;
   display: block;
}
footer h3.address:before { content: "\f041"; }
footer h3.social:before { content: "\f0c0"; }
footer h3.contact:before { content: "\f0e0"; }

footer ul {
   margin: 0;
   padding: 0;
}
footer ul li {
   margin: 0;
   line-height: 24px;
}
footer ul li a,
footer ul li a:visited { color: #c2c2c2; }
footer ul li a:hover,
footer ul li a:focus { color: #fff; }

/* copyright */
footer .copyright {
   margin: 0;
   padding: 0 18px;
   color: #c2c2c2;
   clear: both;
}

/* Go To Top Button */
#go-top {
	position: absolute;
	top: -24px;
   left: 50%;
   margin-left: -30px;
   text-align: center;
   z-index: 889;
}
#go-top a {
	text-decoration: none;
	border: 0 none;
	display: block;
	width: 60px;
	height: 60px;
	background: #525252;

	-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;

   color: #fff;
   font-size: 21px;
   line-height: 60px;
   border-radius: 100%;
}
#go-top a:hover { background: #0F9095; }


/* ------------------------------------------------------------------ */
/* k. lightbox
/* ------------------------------------------------------------------ */

#imagelightbox {
   cursor: pointer;
   position: fixed;
   z-index: 995;
   -ms-touch-action: none;
   touch-action: none;
   -webkit-box-shadow: 0 0 3.125em rgba( 0, 0, 0, .3 ); /* 50 */
   -moz-box-shadow: 0 0 3.125em rgba( 0, 0, 0, .3 ); /* 50 */
   box-shadow: 0 0 3.125em rgba( 0, 0, 0, .3 ); /* 50 */
}

/* activity indication */
#imagelightbox-loading,
#imagelightbox-loading div { border-radius: 50%; }
#imagelightbox-loading {
   width: 2.5em; /* 40 */
   height: 2.5em; /* 40 */
   background-color: #444;
   background-color: rgba( 0, 0, 0, .5 );
   position: fixed;
   z-index: 999;
   top: 50%;
   left: 50%;
   padding: 0.625em; /* 10 */
   margin: -1.25em 0 0 -1.25em; /* 20 */
   -webkit-box-shadow: 0 0 2.5em rgba( 0, 0, 0, .3 ); /* 40 */
   -moz-box-shadow: 0 0 2.5em rgba( 0, 0, 0, .3 ); /* 40 */
   box-shadow: 0 0 2.5em rgba( 0, 0, 0, .3 ); /* 40 */
}
#imagelightbox-loading div {
   width: 1.25em; /* 20 */
   height: 1.25em; /* 20 */
   background-color: #fff;

   -webkit-animation: imagelightbox-loading .5s ease infinite;
   -moz-animation: imagelightbox-loading .5s ease infinite;
   -o-animation: imagelightbox-loading .5s ease infinite;
   animation: imagelightbox-loading .5s ease infinite;
}

@-webkit-keyframes imagelightbox-loading {
	from { opacity: .5; -webkit-transform: scale( .75 ); }
	50% { opacity: 1; -webkit-transform: scale( 1 ); }
	to { opacity: .5; -webkit-transform: scale( .75 ); }
}   
@-moz-keyframes imagelightbox-loading {
	from { opacity: .5; -moz-transform: scale( .75 ); }
	50% { opacity: 1; -moz-transform: scale( 1 ); }
	to { opacity: .5; -moz-transform: scale( .75 ); }
}
@-o-keyframes imagelightbox-loading {
	from { opacity: .5; -o-transform: scale( .75 ); }
	50% { opacity: 1; -o-transform: scale( 1 ); }
	to { opacity: .5; -o-transform: scale( .75 ); }
}
@keyframes imagelightbox-loading {
	from { opacity: .5; transform: scale( .75 ); }
	50% { opacity: 1; transform: scale( 1 ); }
	to { opacity: .5; transform: scale( .75 ); }
}

/* lightbox overlay */
#imagelightbox-overlay {
   background-color: #383838;
   background-color: rgba( 0, 0, 0, .8 );
   position: fixed;
   z-index: 994;
   top: 0;
   right: 0;
   bottom: 0;
   left: 0;
}

/* close button */
#imagelightbox-close {	  
   position: fixed;
   z-index: 999;
   top: 2.5em; /* 40 */
   right: 2.5em; /* 40 */ 
}

#imagelightbox-close i {	  
	display: block;
	background: #fff;
	padding: 10px;
	border-radius: 100%;

	-webkit-box-shadow: 0 0 2.5em rgba( 0, 0, 0, .5 ); /* 40 */
	-moz-box-shadow: 0 0 2.5em rgba( 0, 0, 0, .5 ); /* 40 */
	box-shadow: 0 0 2.5em rgba( 0, 0, 0, .5 ); /* 40 */
}
a#imagelightbox-close { color: #333; }
a#imagelightbox-close:hover, a#imagelightbox-close:focus { color: #11ABB0; }

/* lightbox caption */
#imagelightbox-caption {
	text-align: center;
	color: #fff;
	background-color: #000;
	position: fixed;
	z-index: 999;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 0.625em; /* 10 */
}

#imagelightbox-loading,
#imagelightbox-overlay,
#imagelightbox-close,
#imagelightbox-caption {
	-webkit-animation: fade-in .25s linear;
	-moz-animation: fade-in .25s linear;
	-o-animation: fade-in .25s linear;
	animation: fade-in .25s linear;
}

@-webkit-keyframes fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}
@-moz-keyframes fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}
@-o-keyframes fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}
@keyframes fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

@media only screen and (max-width: 41.250em) { /* 660 */

	#container	{ width: 100%; }
	#imagelightbox-close	{
		top: 1.25em; /* 20 */
		right: 1.25em; /* 20 */
	}

} 
