.invis {
  display: none; }

.visible {
  display: block; }

.hero1 {
  padding-bottom: 6vh;
  border-bottom: 1px solid #939393; }

.hero2 {
  padding-top: 3.4vh;
  padding-bottom: 7vh;
  line-height: 1.5em; }

#tech_section_01 {
  margin-left: -15px;
  margin-right: -15px; }
  #tech_section_01 .color-gradient {
    background: -webkit-linear-gradient(#bfbbbd, #bfbbbd 20%, #201f23);
    background: linear-gradient(#bfbbbd, #bfbbbd 20%, #201f23);
    width: 100%; }
  #tech_section_01 #bg_pattern {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
    #tech_section_01 #bg_pattern img {
      width: 100%; }
  #tech_section_01 #bgGraphic {
    margin-top: -50vh;
    z-index: -22; }
    #tech_section_01 #bgGraphic img.bg {
      margin: 0 auto;
      padding: 0; }
  #tech_section_01 #text1 {
    position: absolute;
    width: 100%;
    top: 70px;
    left: 0;
    margin: 0; }
  #tech_section_01 #pinnedCamera {
    position: relative;
    height: 80vh;
    overflow: hidden;
    background-image: url(/images/backgroundGraphic.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 50%; }
  #tech_section_01 #camera {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url(/images/close.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%; }
  #tech_section_01 #cameraParts {
    position: relative;
    height: 100%; }
    #tech_section_01 #cameraParts .part {
      position: absolute;
      background-size: contain;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      height: 100%;
      width: 100%; }
      #tech_section_01 #cameraParts .part#main {
        background-image: url(/images/main.png);
        z-index: 2; }
      #tech_section_01 #cameraParts .part#mainBottom {
        background-image: url(/images/mainBottom.png);
        z-index: 5; }
      #tech_section_01 #cameraParts .part#shellLeftFront, #tech_section_01 #cameraParts .part#shellLeftBack {
        z-index: 3; }
      #tech_section_01 #cameraParts .part#shellLeftBack {
        background-image: url(/images/shellLeftBack.png); }
      #tech_section_01 #cameraParts .part#shellLeftFront {
        background-image: url(/images/shellLeftFront.png); }
      #tech_section_01 #cameraParts .part#shellRightBack {
        z-index: 1;
        background-image: url(/images/shellRightBack.png); }
      #tech_section_01 #cameraParts .part#shellRightFront {
        z-index: 3;
        background-image: url(/images/shellRightFront.png); }
      #tech_section_01 #cameraParts .part#cover {
        background-image: url(/images/cover.png); }
      #tech_section_01 #cameraParts .part#glass {
        background-image: url(/images/glass.png); }
      #tech_section_01 #cameraParts .part#baseFront {
        background-image: url(/images/baseFront.png);
        z-index: 3; }
      #tech_section_01 #cameraParts .part#baseBack {
        background-image: url(/images/baseBack.png);
        z-index: 1; }
      #tech_section_01 #cameraParts .part#callouts {
        background-image: url(/images/callouts.png);
        z-index: 3; }
  #tech_section_01 .fade-in {
    display: block;
    -webkit-animation: fadein .5s;
            animation: fadein .5s; }
  #tech_section_01 .fade-out {
    -webkit-animation: fadeout .5s;
            animation: fadeout .5s;
    opacity: 0; }

@-webkit-keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadein {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes fadeout {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fadeout {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
  #tech_section_01 .hero1 {
    color: #fff;
    padding-top: 7vh;
    margin: 0 0 5vh 0;
    border: 0;
    text-align: center;
    padding-bottom: 0; }
  #tech_section_01 .hero2 {
    color: #fff;
    padding-top: 0;
    text-align: center;
    font-weight: normal; }
  #tech_section_01 #text2 {
    background-color: #201f23;
    margin: 0; }
    #tech_section_01 #text2 .hero2 {
      padding-bottom: 7vh; }
  #tech_section_01 #tech_mobile .hero1, #tech_section_01 #tech_mobile .hero2 {
    color: #404042;
    text-align: left; }
  #tech_section_01 #tech_mobile .row {
    margin-left: 0;
    margin-right: 0; }

.section_02 .hero1 {
  padding-bottom: 6vh;
  border-bottom: 1px solid #939393; }

.hero2 {
  padding-top: 3.4vh;
  padding-bottom: 3.4vh; }

#tech_section_02 {
  position: relative;
  margin-left: -15px;
  margin-right: -15px; }
  #tech_section_02 .left {
    position: absolute;
    top: 0; }
    #tech_section_02 .left .row {
      margin-left: 0;
      margin-right: 0; }

#techImg {
  width: 50vw;
  z-index: 10; }
  #techImg img {
    position: absolute;
    margin-top: 80px;
    margin-bottom: 10px;
    width: 100%;
    max-width: 700px; }

.section_02 .wrapper {
  width: 100%; }

.section_02 .row-wrapper {
  position: relative;
  height: 810px; }

.section_02 .row1 {
  position: relative;
  padding-top: 10vh; }

.section_02 .row2 {
  position: relative;
  padding-bottom: 10vh; }

.section_02 .title {
  display: inline-block;
  text-transform: uppercase;
  text-align: left;
  padding: 10px; }

.section_02.threeD .row .title {
  background-color: rgba(255, 158, 145, 0.4); }

.section_02.learning .row .title {
  background-color: rgba(255, 198, 41, 0.4); }

.section_02.id .row .title {
  background-color: rgba(3, 227, 3, 0.3); }

.section_02.recognition .row .title {
  background-color: rgba(11, 80, 255, 0.3); }

.threeD-color {
  background-color: #fff8f8;
  -webkit-transition: background-color 0.5s;
  transition: background-color 0.5s; }

.learning-color {
  background-color: #fefdef;
  -webkit-transition: background-color 0.5s;
  transition: background-color 0.5s; }

.id-color {
  background-color: #f2fff6;
  -webkit-transition: background-color 0.5s;
  transition: background-color 0.5s; }

.recognition-color {
  background-color: #e8f9ff;
  -webkit-transition: background-color 0.5s;
  transition: background-color 0.5s; }

#tech_section_04 .row {
  background-color: #f2f2f2;
  padding-bottom: 100px; }

#tech_section_04 .hero1, #tech_section_04 .hero2 {
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 0;
  border: 0;
  font-family: "FaktProBlond", sans-serif; }

#tech_section_04 .hero1 {
  padding-top: 80px;
  margin-bottom: 30px;
  letter-spacing: .02em; }

#tech_section_04 .hero2 {
  margin-bottom: 60px; }

#tech_section_04 h3 {
  text-align: right; }
  #tech_section_04 h3 .specs-title {
    border: solid 1px;
    display: inline-block;
    padding: 5px 10px;
    font-family: "FaktProMedium", sans-serif;
    font-size: .9em; }

#tech_section_04 .specs-body {
  line-height: 1.5em;
  letter-spacing: 0.02em;
  list-style-type: none;
  font-family: "FaktProNormal", sans-serif;
  font-size: 1.05em; }
  #tech_section_04 .specs-body li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  #tech_section_04 .specs-body .details {
    display: inline-block; }
  #tech_section_04 .specs-body #longDetail.details {
    padding-left: .3em; }

#tech_section_04 .specs {
  padding-top: 80px; }

#tech_section_04 .specs .row {
  padding-bottom: 2vh; }

#tech_section_04 .laser {
  text-transform: uppercase;
  font-family: "FaktProBlond", sans-serif;
  letter-spacing: 0.15em;
  font-size: .85em;
  padding-left: 25px; }

#tech_section_05 #tech_order_img {
  background-image: url(/images/order_simple_1920.jpg);
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: contain; }

#tech_section_05 .text {
  position: relative;
  height: 80vh;
  z-index: 1; }
  #tech_section_05 .text .col {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

#tech_section_05 .asterisk {
  padding-top: 3vh;
  font-size: 1em;
  width: 80%; }
  #tech_section_05 .asterisk .bold {
    font-family: "FaktProNormal", sans-serif; }

#tech_section_05 .hero1 {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none; }

#tech_section_05 .hero2 {
  padding-bottom: 5vh; }

@media only screen and (min-width: 319px) and (max-width: 407px) {
  #tech_section_02 {
    height: 3240px; }
  .laser {
    padding-left: 15px; }
  #tech_section_04 h3 {
    text-align: left; } }

@media only screen and (min-width: 408px) and (max-width: 640px) {
  #tech_section_02 {
    height: 3240px; }
  .section_02 .hero1 {
    padding-bottom: 0; }
  .laser {
    padding-left: 15px; }
  #tech_section_04 h3 {
    text-align: left; } }

@media only screen and (min-width: 641px) and (max-width: 767px) {
  #tech_section_02 {
    height: 3430px; }
  .section_02 .hero1 {
    padding-bottom: 0; }
  .laser {
    padding-left: 15px; }
  #tech_section_04 h3 {
    text-align: left; } }

@media only screen and (min-width: 768px) and (max-width: 1500px) {
  #tech_section_01 #tech_closed {
    content: url(/images/tech_tablet_closed.jpg); }
  #tech_section_01 #tech_open {
    content: url(/images/tech_tablet_open.jpg); }
  #tech_section_01 #tech_exploded {
    content: url(/images/tech_tablet_exploded.jpg); } }

@media only screen and (max-width: 768px) {
  #tech_section_01 #tech_closed {
    content: url(/images/tech_mobile_closed.jpg); }
  #tech_section_01 #tech_open {
    content: url(/images/tech_mobile_open.jpg); }
  #tech_section_01 #tech_exploded {
    content: url(/images/tech_mobile_exploded.jpg); } }

@media screen and (max-width: 767px) {
  #tech_section_05 #tech_order_img {
    background-image: none; } }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #tech_section_02 {
    height: 3240px; }
  #tech_section_05 .hero2-1 .split {
    display: block; } }

@media only screen and (min-width: 992px) and (max-width: 1280px) {
  #tech_section_02 {
    height: 3240px; }
  #tech_section_05 .hero2.hero2Global {
    font-size: 1.2em; } }

@media only screen and (min-width: 1281px) {
  #tech_section_02 {
    height: 3240px; } }

@media only screen and (min-width: 1921px) {
  #tech_section_05 {
    background-color: #fdfbfa; }
    #tech_section_05 #tech_order_img {
      background-image: url(/images/order_simple_2880.jpg); } }
