html {
  scroll-behavior: smooth;
}
body{
    min-width:1200px;
    margin:0px;
    font-family: 'Poppins';
    font-weight:100;
    line-height:140%;
    overflow-x:visible;
}
.wrap{
    padding-left:15%;
    padding-right:15%;
    width:70%;
}
.desktop-only{
    display:inline-block;
}
.mobile-only{
    display:none;
}
.mobile-only-important{
    display:none !important;
}
@media only screen and (max-width: 767px) {
    html, body {
        width:100%;
        min-width:100%;
        overflow-x:hidden;
    }
    .wrap {
        padding-left:8%;
        padding-right:8%;
        width: 84%;
    }
    .desktop-only{
        display:none;
    }
    .desktop-only-important{
        display:none !important;
    }
    .mobile-only{
        display:inline-block;
    }
    .mobile-only-important{
        display:inline-block !important;
    }
}
h3 {
    font-size:22px;
}
@media only screen and (max-width: 767px) {
    h3 {
        font-size:18px;
    }
}
h2 {
    font-weight:600;
    font-size:40px;
    line-height:40px;
    margin-top:25px;
    letter-spacing:-1px;    
}
p, li {
    font-size:14px;
    font-weight:300;
    line-height:26px;
    font-family: 'Karla';
}
ul {
    padding-left:20px;
}
.center{
    text-align: center;
}
@media only screen and (max-width: 767px) {
    h2 {
        font-size:30px;
        font-weight:600;
    }
    p {
        font-size:16px;
        line-height:30px;
    }
}

/**********************
     TOP VIDEO AREA
**********************/
.videooverlays{
    background-color:#000000cc;
    background-image:url('images/glow.png');
    background-size:cover;
}
.navwrapper{
    float:right;
}
.nav{
    font-size:14px;
    font-weight:200;
    margin-left:20px;
    text-decoration: none;
    color:white;
}
#videowrapper{
    height:100vh;
    left:0;
    top:0;
    overflow:hidden;
    width:100%;
    position: absolute;
    z-index: -100;
    background:#000000;
}
#overvideo{
    position:relative;
    height:calc(100vh - 80px);
    padding-top:80px;
}
@media only screen and (max-width: 767px) {
    #overvideo {
        height:calc(100vh - 60px);
        padding-top:60px;
    }
}
#video {
    min-width:100%;
    min-height:100%;
}
#quote {
    font-family:'Poppins';
    font-weight:100;
    text-align:center;
    font-size:35px;
    line-height:40px;
    color:white;
    margin-top:30vh;
}
#quote strong{
    font-weight:400;
}
@media only screen and (max-width: 767px) {
    #quote {
        text-align:left;
        font-size:30px;
        line-height:40px;
    }
}
#downarrowwrapper{
    position:absolute;
    bottom:30px;
    width:100%;
    text-align:center;
}

.dropdown {
    position: relative;
    display: inline-block;
}
.dropdown-content a {
    text-decoration: none;
    color:black;
    display:block;
}
.dropdown-content {
    display: none;
    position: absolute;
}
.dropdown-margin{
    display:flex;
    width:400px;
    margin-left:20px;
    margin-right:20px;
    margin-top:10px;
    padding-left:30px;
    padding-bottom:30px;
    padding-top:30px;
    background-color: #ffffff;
    font-family: 'Poppins';
    font-weight:200;
    font-size:15px;
}
.dropdown-margin strong{
    font-weight:400;
    font-size:16px;
}
.dropdown-margin-invert{
    width:200px;
    margin-left:0px;
    padding-top:0px;
    background-color: #fffffff5;
}
.dropdown-margin-invert a{
    color:#F66060;
}
.dropdown-column{
    flex:50%;
}
.nav {
    font-size: 16px;
    cursor:pointer;
}
.nav:hover {
    color: #F56060;
}

.dropdown:focus-visible .dropdown-content {display: block;}
.dropdown:focus-within .dropdown-content {display: block;}
.dropdown:focus .dropdown-content {display: block;}
.dropdown:hover .dropdown-content {display: block;}
@media only screen and (max-width: 767px) {
    #topnav {
        background-color:#e7e7e7;
        position:fixed;
        top:0;
        left:0;
        height:100%;
        width:100%;
        z-index:100;
        text-align:center;
        display:none;
    }
    .nav {
        color:black;
        display:block;
        margin-top:55px;
        font-size:23px;
        font-weight:300;
    }
    #topnavclose{
        display:block;
        text-align:right;
        padding-right:35px;
        padding-top:60px;
        padding-bottom:30px;
    }
    .dropdown-content{
        position:static;
    }
    .dropdown{
        position:static;
    }
    .dropdown-margin{
        display:block;
        width:100%;
        margin:0;
        margin-top:20px;
        margin-left:10px;
        padding:0;
        background-color:#e7e7e7;
    }
    .dropdown-column{
        margin-bottom:30px;
    }
    .dropdown a {
        margin-bottom:8px;
    }
}

/********************
*  PRODUCTS AREA   */
/*******************/
#products{
    display:grid;
    grid-template-columns: auto auto;
    grid-gap:40px;
}
#products-description{
    padding-top:120px;
}
@media only screen and (max-width: 767px) {
    #products {
        display:flex;
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }
    #products-description{
        padding-top:60px;
    }
}
.product-iframe{
    position:relative;
    height:640px;
    width:340px;
    transform:scale(0.7);
}
@media only screen and (max-width: 767px) {
    .product-iframe{
        margin-top:-60px;
        margin-bottom:20px;
        transform:scale(0.8);
    }
}
#frame{
    overflow:hidden;
    position:absolute;
    top:20px;
    left:20px;
}
#phoneback{
    position:absolute;
    pointer-events: none;
}
#frame-label{
    position:absolute;
    bottom:-40px;
    width:340px;
    font-size:15px;
    text-align:center; margin-top:80px;
}
.product-button{
    display:inline-block;
    border-radius: 5px;
    padding:10px 5px 10px 5px;
    margin-right:10px;
    color:#F66060;
    font-size:12px;
    font-weight:400;
    cursor:pointer;
    border: 0px;
    background-color: transparent;
}
.product-button-select {
    border: 1px solid #F66060;
    padding:10px 15px 10px 15px;
}
@media only screen and (max-width: 767px) {
    .product-button{
        padding:8px 0px 8px 0px;
        font-size:16px;
    }
    .product-button-select {
        padding:8px 10px 8px 10px;
    }
}
.read-more a {
    display:inline-block;
    border-radius:5px;
    color:#ffffff;
    background-color:#000000;
    padding:8px 16px 8px 16px;
    font-size:12px;
    font-weight:400;
    margin-top:30px;
    text-decoration: none;
}
@media only screen and (max-width: 767px) {
    .read-more {
        width:100%;
        text-align:center;
    }
    .read-more a {
        margin-top:15px;
    }
}
.dropdown-margin-lowersection{
    display:flex;
    width:370px;
    margin-left:-160px;
    margin-right:20px;
    margin-top:10px;
    padding-left:30px;
    padding-bottom:30px;
    padding-top:30px;
    background-color: #000000;
    color:#ffffff;
    font-size:14px;
}

/****************
*  TECH AREA   */
/***************/
#tech {
    background-color:black;
    background-image:url('images/our-tech1-visual.jpg');
    background-size:cover;
    background-position:center;
    color:white;
    height:570px;
    padding-top:80px;
}
.tech-text{
    width:550px;
}
.tech-button{
    margin-bottom:20px;
}
@media only screen and (max-width: 767px) {
    #tech {
        background-image:url('images/our-tech-mobile-back.png');
        background-position:right top;
        background-size:contain;
        background-repeat:no-repeat;
        padding-top:60px;
        height:auto;
    }
    .tech-text{
        width:100%;
    }
    .tech-button{
        margin-bottom:15px;
        margin-top:15px;
    }
}
.read-more-tech a{
    display:inline-block;
    border-radius:5px;
    background-color:white;
    padding:8px 16px 8px 16px;
    font-size:12px;
    font-weight:400;
    margin-top:30px;
    color:#000000;
    text-decoration: none;
}
@media only screen and (max-width: 767px) {
    .read-more-tech {
        width:100%;
        text-align:center;
    }
}
.our-tech-mobile-visual {
    display:none;
}
@media only screen and (max-width: 767px) {
    .our-tech-mobile-visual {
        display:block;
        width:100%;
        margin-top:40px;
    }
}

/****************
*  NEWS AREA   */
/***************/
.old-news-link {
    float:right;
    margin-top:30px;
    margin-right:8px;
}
.old-news-link a {
    color:black;
    font-size:14px;
    font-weight:500;
}
.news-grid {
    display:grid;
    grid-template-columns: auto auto;
    grid-gap:20px;
}
.main-news-item{
    position:relative;
    min-width:580px;
    height:360px;
    background-size:cover;
    background-position:center;
}
.main-news-item-text{
    position:absolute;
    bottom:0;
    width:250px;
    height:116px;
    background:#ffffffdd;
    padding:5px;
    padding-left:10px;
}
.secondary-news-item{
    position:relative;
    min-width:230px;
    height:170px;
    background-size:cover;
    background-position:center; 
    margin-bottom:20px;
}
.secondary-news-item-text{
    position:absolute;
    bottom:0;
    width:calc(100% - 20px);
    height:75px;
    background:#ffffffdd;
    padding-left:10px;
    padding-right:10px;
}
.news-date{
    font-size:11px;
    font-weight:100;
}
.news-title{
    font-size:13px;
    font-weight:500;
    line-height:13px;
    max-height:26px;
    overflow:hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
}
.news-description{
    margin-top:5px;
    font-size:12px;
    font-weight:100;
    line-height:12px;
    max-height:36px;
    overflow:hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    font-family:'Karla';
}
.news-more a{
    font-size:10px;
    font-weight:500;
    text-decoration: none;
    color:black;
}
@media only screen and (max-width: 767px) {
    .news-grid {
        display:block;
    }
    .main-news-item{
        min-width:100%;
        width:calc(100% + 60px);
        margin-left:-30px;
        margin-right:-30px;
    }
    .news-title{
        font-size:18px;
        line-height:22px;
        max-height:44px;
        padding-right:40px;
    }
    .news-description{
        display:none;
    }
    .main-news-item-text{
        width:100%;
    }
    .secondary-news-item{
        min-width:100%;
    }
    .news-more{
        padding-top:8px;
    }
    .news-more a{
        font-size:14px;
        font-weight:500;
        text-decoration: none;
        color:black;
    }
    .news-date{
        padding-top:6px;
        padding-bottom:6px;
        font-size:13px;
        font-weight:200;
    }
}

/************
ABOUT US AREA
************/
.about-top-spacer-line{
    margin:auto auto;
    width:600px;
    height:2px;
    background-color:#F0F0F0;
}
.aboutcells{
    display:inline-block;
    width:16%;
    margin-right:3%;
    vertical-align: top;
    padding:25px;
    background-color: #ffffff;
    box-shadow: 0px 0px 4px 3px #f5f5f5;
}
.dot{
    display:none;
}
.dot-selected{
    display:none;
}
@media only screen and (max-width: 767px) {
    .aboutcellswrap{
        padding-left:66px;
        padding-right:66px;
        width:250%;
    }
    #aboutcellsscrollbox{
        margin-left:calc(100% - calc(100% * 1.0952));
        width:calc(100% * 1.1904);
        overflow-x:scroll;
        scroll-behavior: smooth;
    }
    #aboutcellsscrollbox::-webkit-scrollbar {
        background: transparent; /* Chrome/Safari/Webkit */
        width: 0px;
    }
    .dot{
        display:inline-block;
        width:5px;
        height:5px;
        margin:5px;
        border-radius:5px;
        border:1px solid black;
        background-color:white;
    }
    .dot-selected{
        display:inline-block;
        width:7px;
        height:7px;
        margin:5px;
        border-radius:5px;
        background-color:black;
    }
}
.aboutimage{
    margin-top:10px;
    margin-bottom:10px;
}
.smallerh3{
    font-size:14px;
    text-align:left;
    line-height:14px;
    height:28px;
    margin-bottom:0px;
    padding-bottom:0px;
}
.smallerp{
    font-size:13px;
    text-align:left;
    line-height:14px;
    height:60px;
    margin-top:0px;
}
.about-back-gradient{
    height:200px;
    margin-top:-70px;
    width:100%;
    background-image: linear-gradient(#f5f5f5, #ffffff);
}
.about-over-gradient{
    margin-top:-100px;
}
.h3bold{
    display:inline-block;
    color:#F66060;
}
.partner-image{
    width:16.5%;
    margin:-10px 12px -10px 12px;
}
@media only screen and (max-width: 767px) {
    .partner-image {
        width:25%;
    }
    .partner-images-less-margins {
        transform: scale(1.1);
    }
}

/*********************
    CONTACT US AREA
    *****************/

.contactgrid{
    display:grid;
    grid-template-columns: auto auto;
    grid-gap:40px;
    padding-top:70px;
}
.contactsubgrid{
    display:grid;
    grid-template-columns: 200px 200px;
    grid-gap:0px 40px;
}
@media only screen and (max-width: 767px) {
    .contactgrid {
        display:block;
        padding-top:20px;
    }
    .contactsubgrid{
        display:block;
    }
}
#contact{
    color:white;
}
#contact p{
    color:#e0e0e0;
    font-size: 12px;
    line-height:15px;
}
@media only screen and (max-width: 767px) {
    #contact p{
        font-size: 16px;
        line-height:18px;
    }
}
#contact a {
    color:#e0e0e0;
    font-weight:600;
    text-decoration:none;
}
.contactback{
    background-color:#0D0D0D;
    background-image:url("images/contact-glow.png");
    background-repeat:no-repeat;
    background-position: left bottom;
}
.formwidth{
    width:200px;
}
.inputarea{
    border:0px;
    border-bottom:1px solid #F56060;
    margin:0px;
    padding:6px;
}
.inputarea:focus {
    outline-width: 0;
}
.inputareadropdown{
    width:212px;
}

.label{
    font-family:'Karla';
    margin-top:10px;
    font-size:14px;
    color:#e0e0e0;
}
.contact-submit{
    color:white;
    background-color: #F56060;
    border-radius:5px;
    border:0px;
    padding:10px 20px 10px 20px;
    cursor:pointer;
}
.messagefield{
    width:440px;
    resize:vertical;
    font-family: 'Karla';
    min-height:80px;
}
.subjectfield{
    width:440px;
}
.contactsubmitwrapper {
    width:452px;
    text-align:right;
}
#dummyframe{
    margin-top:0px;
    margin-bottom:28px;
    border:0px;
    width:100%;
    height: 60px;
}
@media only screen and (max-width: 767px) {
    .label{
        margin-top:15px;
    }
    .formwidth{
        width:calc(100% - 22px);
        height:20px;
        padding-left:15px;
    }
    .subjectfield{
        width:calc(100% - 22px);
        height:20px;
        padding-left:15px;
    }
    .contactsubmitwrapper {
        width:calc(100% - 12px);
        text-align:center;
    }
    .messagefield{
        width:calc(100% - 30px);
        padding-left:15px;
        padding-right:15px;
        padding-top:10px;
        padding-bottom:10px;
    }
    .inputareadropdown{
        width:100%;
        height:36px;
    }
    #dummyframe{
        margin-top:10px;
        margin-bottom:0px;
        height:40px;
    }
}

/*********************
BOTTOM NAVIGATION AREA
*********************/
.bottomnavcells{
    display:inline-block;
    width:23%;
    margin-right:1.5%;
    vertical-align: top;
}
@media screen and (max-width: 767px) {
    .bottomnavcells{
        display:inline-block;
        width:100%;
        margin-right:9%;
        vertical-align: top;
    }
}
@media screen and (max-width: 767px) {
   #more{
        width:calc(90% + 20px);
    }
}
.bottomnavcells a{
    color:#fff;
    text-decoration: none;
}
.social{
    width:20px;
    height:20px;
    margin-right:5px;
}
.blackback{
    background-color:#000;
    color:#fff;
    font-weight:100;
}
.bnav-title{
    margin-top:35px;
    font-weight:400;
    margin-bottom:15px;
}
@media screen and (max-width: 767px) {
   .bnav-title{
        font-size:20px;
        margin-top:35px;
        margin-bottom:35px;
   }
}
.bnav-entry{
    font-weight:200;
    margin-bottom:20px;
    font-size:15px;
    line-height:17px;
    color:#fff;
}
.bnav-subentry{
    font-weight:100;
    font-size:13px;
    line-height:18px;
}
@media screen and (max-width: 767px) {
   .bnav-entry a {
        font-size:20px;
        line-height:30px;
    }
    .bnav-subentry a {
        font-size:18px;
    }
}
#other a {
    text-decoration: none;
}
#other p {
    font-size:12px;
    line-height:15px;
    margin:0px;
    margin-top:2px;
    font-weight:100;
}
.bnav-mobile-breaker{
    display:none;        
}
.bnav-expand {
    display:none;
}
@media screen and (max-width: 767px) {
    .bnav-expand {
        cursor:pointer;
        transform: rotate(180deg);
        display:inline-block;
        float:right;
    }
    #bnav-products {
        display:none;
    }
    #bnav-docs {
        display:none;
    }
    #bnav-modiface {
        display:none;
    }
    .bnav-mobile-breaker{
        display:block;
        margin: 0px -30px;
        width:calc(100% + 60px);
        height:1px;
        background-color:rgba(255, 255, 255, 0.4);
    }
}
.bnav-logos {
    text-align:right;
    margin-top:-50px;
}
.copyright {
    color:#aaaaaa;
}
@media screen and (max-width: 767px) {
    .bnav-logos {
        text-align:left;
        margin-top:50px;
    }
    .bnav-social-float-mobile{
        margin-top:40px;
        float:right;
    }
}

/***********************
    SUB PAGES
***********************/
.main-content {
    font-family:'Karla';
    font-size:17px;
    line-height:23px;
    max-width:900px;
    margin:50px auto 0px auto;
}
.main-content p {
    font-size:17px;
    line-height:23px;
}
.main-content li {
    font-size:17px;
    line-height:23px;
    padding-bottom:2px;
}
@media screen and (max-width: 767px) {
    .main-content p {
        line-height:30px;
    }
    .main-content li {
        line-height:30px;
    }
}
.float-indent{
    overflow:hidden;
}
.float-indent li {
    margin-bottom:10px;
}
.two-columns{
    columns:2;
}
.two-columns-desktop{
    columns:2;
}
@media screen and (max-width: 767px) {
    .two-columns-desktop{
        columns:1;
    }
}
.reduce-top-margin-desktop{
    margin-top:-50px;
}
@media screen and (max-width: 767px) {
    .reduce-top-margin-desktop{
        margin-top:0px;
    }
}
.biglist {
    columns:1 !important;
    width:calc(100% - 40px) !important;
    margin-bottom:-20px;
}
.biglist li{
    padding-bottom:20px !important;
}
.main-content a {
    font-weight:600;
    color:#F66060;
}
.main-content video {
    margin-top:20px;
}
@media screen and (max-width: 767px) {
    .main-content video {
        width: 100%;
    }
}
.main-content h1 {
    margin-top:80px;
    margin-bottom:40px;
    line-height:50px;
}
.main-content h2 {
    margin-top:30px;
}
.main-content h3 {
    margin-top:40px;
}
.main-content strong {
    color:#F66060;
}
.main-content-legal strong {
    color:#000000;
}
.main-content-box {
    display:inline-block;
    padding:10px 40px;
    width:calc(40% - 50px);
    box-shadow: 0px 0px 10px 5px #ededed;
    margin-bottom:50px;
    margin-right:50px;
    vertical-align:top;
}
.main-content-box-wide {
    display:block;
    padding:10px 40px;
    width:calc(100% - 80px);
    margin-right:0px;
    box-shadow: 0px 0px 10px 5px #ededed;
    margin-bottom:50px;
}
.main-content-box-shift{
    margin-right:-50px;
}
@media screen and (max-width: 767px) {
   .main-content-box {
        display:block;
        padding:10px 40px;
        width:calc(100% - 80px);
        margin-right:0px;
    }
    .main-content-box-shift{
        margin-right:0px;
    }
}
#text-section-wrapper{
    position:relative;
    height:420px;
    width:100%;
    overflow:hidden;
    background-color:#f5f5f5;
    padding-top:20px;
    margin-top:20px;
}
#text-section-reveal{
    position:absolute;
    margin-bottom:40px;
    width:100%;
    height:100%;
    background:linear-gradient(transparent 50%, #ededed, #ededed);
    text-align:center;
}
.text-section-bottom{
    display:inline-block;
    border-radius:5px;
    color:#ffffff;
    background-color:#000000;
    padding:8px 16px 8px 16px;
    font-size:12px;
    font-weight:400;
    margin-top:30px;
    text-decoration: none;
    margin-top:330px;
    cursor:pointer;
}
.text-section{
    padding-bottom:40px;
    background-color:#f5f5f5;
}
.flexcolumns{
    display:flex;
}
.narrow-on-desktop{
    width:450px;
}
.indent-on-desktop{
    margin-left:80px;
}
@media screen and (max-width: 767px) {
   .flexcolumns{
        flex-direction: column-reverse;
    }
    .narrow-on-desktop{
        width:auto;
    }
    .indent-on-desktop{
        margin-left:0px;
    }
    .mobile-reverse{
        flex-direction: column;   
    }
}
.flexcolumn-1{

}
.flexcolumn-2{
    margin-left:50px;
}
@media screen and (max-width: 767px) {
    .flexcolumn-2{
        margin-left:0px;
    }
}
.boxshadow {
    box-shadow: 0px 0px 10px 5px #ededed;
}
.max-width-for-mobile{
    max-width:none;
}
@media screen and (max-width: 767px) {
    .max-width-for-mobile{
        max-width:100%;
    }
}
.subpage-article-wrapper{
    display:inline-block;
    margin-right:40px;
    box-shadow: 0px 0px 10px 5px #ededed;
    width:200px;
    text-align:center;
    padding-bottom:16px;
    padding-top:8px;
}
@media screen and (max-width: 767px) {
    .subpage-article-wrapper{
        display:block;
        margin-bottom:40px;
        margin-left:auto;
        margin-right:auto;
    }
}
.subpage-article-header{
    margin:0px;
}
.subpage-article-newslink{
    font-size:10px;
}
.subpage-article-image{
    max-width:100%;
    margin-bottom:8px;
}
.subpage-article-link {
    border-radius:5px;
    color:#ffffff !important; 
    background-color:#000000;
    padding:8px 16px 8px 16px;
    margin-bottom:16px;
    font-size:12px;
    font-weight:400;
    text-decoration: none;
    cursor:pointer;    
}
.indent-image{
    margin-top:30px;
    margin-left:50px;
}
@media screen and (max-width: 767px) {
    .indent-image{
        margin:0px;
        width:100%;
    }
}
.padded-video{
    width:calc(100% - 200px);
    margin:20px 100px;
}
@media screen and (max-width: 767px) {
    .padded-video{
        width:100%;
        margin:0px;
    }
}
.tracker-crops{
    width:calc(100% + 80px);
    margin: 0px -40px -14px -40px;
}
.tracker-crop2{
    height:calc(100% + 26px);
    margin: -10px 0px -16px 0px;
    padding-left:40px;
}
.nail-box{
     width:calc(100% - 150px);
}
@media screen and (max-width: 767px) {
    .tracker-crop2{
        height:auto;
        width:calc(100% + 80px);
        margin: 0px -40px -14px -40px;
        padding-left:0px;
    }
    .nail-box{
         width:auto;
    }
}
.checkmark li:before{
    content: '✓';
    color:#F66060;
    margin-right:20px;
}
.checkmark li {
  list-style: none;
}
@media screen and (max-width: 767px) {
    .checkmark li:before{
        content: '✓';
        color:#F66060;
        margin-left:-20px;
        margin-right:8px;
    }
    .checkmark li {
      list-style: none;
      line-height: 22px;
      margin-top:16px;
    }
}
.pricing-vids {
    width:250px;
}
@media screen and (max-width: 767px) {
    .pricing-vids {
        width:100%;
    }
}
