/*   FONTS  */
@import url('https://fonts.googleapis.com/css2?family=Cantarell:wght@400;700&family=Fjalla+One&family=Quicksand&family=Space+Mono&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css');

/*   UTILITIES */
/* Hide Element */
.hide{
    display: none !important;
    visibility: hidden !important;
}
#timer{display: none !important;}
.float-right{ float: right !important; }
.float-left{ float: left !important; }

/*  GLOBAL  */

body {
  /*  font-family: 'Space Mono', monospace;*/
  /*font-family: 'Quicksand', sans-serif;*/
  font-family: 'Cantarell', sans-serif;
  font-size: 1em;
  font-weight: 100;
  color: #333;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0 !important;

}
body.landing-page{
  display: block;
  height: 100vh;

}
/*body.black{
  background-color: #000;
  color: #fff !important;
}*/

a{
  text-decoration: underline;
  color: #000;
}
a:hover, a:focus,a:active{
  text-decoration: none;
}

h1,h2,h3,h4,h5,h6{
/*  font-weight: 400;*/
  text-transform: uppercase;
  font-family: 'Fjalla One', sans-serif;

}
.wrapper{
  background-color: #fff;
  box-shadow: 2px -5px 7px 2px #333;
  padding-top: 4em;
  padding-bottom: 4em;
}
.wrapper form{
  margin-top:3em;
}
main.landing-main{
  display:flex;
  align-items: center;
  justify-content: center;
  height: calc(100vh - 80%);    
}
header.masthead{
  z-index: -1;
  height: 50vh;
/*  aspect-ratio: 1/1;*/
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
header.masthead img{
  position: relative;
}
header.masthead .bg-video-wrap{
  z-index: 0;
/*  aspect-ratio: 1/1;  */
}
header.masthead #bgVideo{
/*  height: 100%;*/
/*  width: auto;*/
/*  max-height: 50vh;*/

}
header.masthead .container{
  text-align: center;
  color: white;
  position:relative;
  height:558px;
  background-color:transparent;
  background-image:url("images/left_backing_desktop.jpg");
  background-repeat: no-repeat;
  background-attachment:scroll;
  background-position:top center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  transition: 0.5s ease;
  transform: translate3d(0, 0, 0);
}
.navbar-toggler{
  background-color: #43aa8bad !important;
  margin-left: 0px;
  border: unset !important;
    border-radius: 5px;
  border: unset !important;
/*  background-color: transparent !important;*/
  border-radius: 0px;
  border-radius: 0 2px 2px 0;
  width: 55px;
    height: 45px;
  transition: all 0.3s;
    position: relative;
}
/*.navbar-toggler-icon{
  background-image: unset !important;
}
span.navbar-toggler-icon:before {
    content: "\f0c9";
    font-family: 'Font Awesome 6 Free';
    font-size: 1.5em;
}*/

.navbar-toggler .icon:before {
    transition-duration: 0.5s;
    position: absolute;
    height: 3px;
    width: 30px;
    background-color: #212121;
    content: "";
    top: -10px;
    left: 0;
    border-radius: 54px;
}
.navbar-toggler .icon:after {
    transition-duration: 0.5s;
    position: absolute;
    height: 3px;
    width: 30px;
    background-color: #212121;
    content: "";
    top: 10px;
    left: 0;
    border-radius: 54px;
}
.navbar-toggler:focus{
  color: transparent !important;
}
.navbar-toggler .icon {
    transition: 0.5s;
    left: 20px;
    border-radius: 54px;
}
.navbar-toggler:hover{
  background-color: #43AA8B;
  width: 45px;
  transition: all 0.3s;
}
.navbar-toggler:hover .icon{
  left: 5px;
  transition: all 0.3s;
}
.navbar-toggler:hover .icon:before {
    transform: rotateZ(43deg) scaleX(0.75) translate(8px, -2px);
}

.navbar-toggler:hover .icon:after {
    transform:rotateZ(315deg) scaleX(0.75) translate(6px, 3px);
}
#offcanvasNavbar .nav-item{
  position: relative;
}
#offcanvasNavbar .nav-item :before {
  content: "";
  background-color: #43AA8B;
  display: inline-block;
  width: 2px;
 height:calc(100% - 10px);
 margin: 5px 0;
  position: absolute;
  left: -15px;
  top: 0;
  opacity: 0;
  transition: all 0.3s;
}
#offcanvasNavbar .nav-item:hover a{
  padding-left: 10px;
  transition: all 0.3s;
}
#offcanvasNavbar .nav-item:hover :before {
  opacity: 1;
  left: 0;
  transition: all 0.3s;
}

#offcanvasNavbar .nav-item:after{
  font-size:16px !important;
  font-weight: 400 !important;
  content:"";
  background-image: url("../images/chevron-double-right-regular.svg");
  background-repeat: no-repeat;
  background-position: 0 center;
  background-size: 10px;
 color: #43AA8B;
 height:100%;
 position: absolute;
 left:4%;
 opacity: 0;
 top:0;
 display: flex;
 align-items: center;
 align-content: center;
 font-weight: 700;
 font-size: 16px;
 transition: all 0.3s;
}
#offcanvasNavbar .nav-item:hover:after {
  opacity: 1;
  left: 95%;
  right:0;
 transition: all 0.3s;

}
#offcanvasNavbar .nav-item a{
  color: #fff;
  position: relative;
}
#offcanvasNavbar{
      background-color: #333333d9;
      color:#fff;
}
#offcanvasNavbar .btn-close {
    background-image: unset !important;
    position: relative;
    top: -10px;

}
/*.navbar-toggler-icon{
  background-image: unset !important;
}
span.navbar-toggler-icon:before {
    content: "\f0c9";
    font-family: 'Font Awesome 6 Free';
    font-size: 1.5em;
}*/
.navbar-toggler .icon {
    transition-duration: 0.5s;
     position: absolute;
    height: 3px;
    width: 30px;
    top: 21px;
    left:12px;
    background-color: #212121;
}
.navbar-toggler .icon:before {
    transition-duration: 0.5s;
    position: absolute;
    height: 3px;
    width: 30px;
    background-color: #212121;
    content: "";
        top: -10px;
    left: 0;
}
.navbar-toggler .icon:after {
    transition-duration: 0.5s;
    position: absolute;
    height: 3px;
    width: 30px;
    background-color: #212121;
    content: "";
    top: 10px;
    left: 0;
}
.navbar-toggler:focus{
  color: transparent !important;
}
.navbar-toggler .icon {
    transition: 0.5s;
}
.navbar-toggler:hover .icon:before {
    transform: rotateZ(43deg) scaleX(0.75) translate(8px, -2px);
}

.navbar-toggler:hover .icon:after {
    transform:rotateZ(315deg) scaleX(0.75) translate(6px, 3px);
}

#offcanvasNavbar .btn-close {
    background-image: unset !important;
    color: #fff !important;
    font-size: 20px;
}
.navbar{
  position: absolute;
  z-index: 999999;
}
ul.navbar-nav{
  text-align: left;
}
footer .disclaimer {
  font-size:13px;
}
footer {

  padding: 10px 0 10px 1em;
/*  padding-bottom:80px;*/
  text-align: center;
  background-color: #fff;
}
.black footer {
  color:#999;
}

.footer-menu {
  margin:0;
  padding:0;
  width:100%;
  margin-top:20px;
}
footer ul li {
  color:#333;
  display: inline;
  margin-right:8px;
  margin-left:8px;
}
.footer-links a {
  color:#333;
  font-weight:400;
  font-size:14px;
  text-decoration: none;
}
.footer-nav {
  border-top: 1px solid #E0E0E0;
    padding: 10px 0;
    background: #f2f1f1;
    transition: all 0.3s;
}
.footer-nav:hover {
  background-color: #616161;
  color: #fff;
  transition: all 0.3s;
}
.footer-nav:hover ul li a{
  color:#fff;
  transition: all0.3s;
}
.footer-nav ul li a:hover{
  color: #43AA8B;
  transition: all 0.3s;

}
.black footer ul li, .black .footer-links a {
  color:#999;
}
.footer-links{
  margin: 0;
}
.footer-links a:hover {
  text-decoration:none;
}
.black .footer-links a:hover {
  color:#43AA8B;
}
ul.footer-nav.footer-links {
    margin: 0;
    list-style-type: none;
    padding: 0px 10px;
}
#FAQaccordian{
  border: unset;
}
#FAQaccordian .accordion-item{
  border: 0px !important;
}
#FAQaccordian .accordion-button{
  font-size: 0.8em;
  border-radius: 0 !important;
  color: #333;
  border-top: 3px solid #333;
      padding: 20px 5px;
          box-shadow: unset;
}
.accordion-button:not(.collapsed){
  background-color: transparent;
}
.accordion-body {
    padding-top: 0;
    padding-bottom: 25px;
    padding-right: 5px;
    padding-left: 20px;
}
#FAQaccordian .accordion-button:focus {
    background-color: unset;
}
.accordion-button::after{
  content: "";
  background-image: url("../images/plus-solid-full.svg");
  background-repeat: no-repeat;

}
.accordion-button:not(.collapsed)::after{
  content: "";
  background-image: url("../images/x-solid-full.svg");
  background-repeat: no-repeat;
}
.step-heading h1{
  text-align: center;
  margin:0.5em auto 1em auto;
}
/*  FORM FIELDS / INPUTS  */
.form-control{
  background-color: transparent;
/*  font-size: 0.9em;*/
}
form .input-group:hover i{
/*  color:;*/
}

.file-upload{
  display: none !important;
}
label.file-upload-label {
  position: relative;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #666;
}
label.file-upload-label .input-group-addon{
  border: unset;
}
.file-upload-text{
      padding: 6px 12px;
}
label.file-upload-label:after {
  cursor: pointer;
 content: "choose image";
 display: flex;
 right: 0;
 position: absolute;
 padding: 6px;
 background: #f2f1f1;
 border-left: 1px solid #666;
 font-size: 12px;
 height: calc(100% - 1px);
 align-items: center;
 font-weight: 600;
 text-transform: uppercase;
 transition: all 0.3s;
}
label.file-upload-label:after:hover{
  cursor: pointer;
  background-color: #dbdada;
  transition: all 0.3s;
}

.input-group input.form-control, select.form-control{
  border: unset;
  border-bottom: 1px solid #d2d2d2;
  border-radius: 0px;
}
.file-upload-label:hover .file-upload-text,
.input-group select.form-select:hover,
.input-group input.form-control:hover,
.input-group input.form-control:focus,
.input-group input.form-control:active {
    margin-top: -5px;
    padding-bottom: 11px;
    transition: all 0.3s;
}
.recaptcha{
  margin-top:1em;
}
  .alert-block {
  display:none;
  width: 100%;
      text-align: left;
      margin-top: 0.5em;
      padding-left: 10px;
  font-size:14px;
  line-height:20px;
  color:#FF0000;
  margin-bottom:0px !important;
}
.alert-block.alert-upload-success{
  color: #53a653;
    font-size: 14px;
}
.recaptcha-alert-block {
  display:none;
  font-size:14px;
  color:#FF0000;
  margin:0px;
  clear:both;
  width:100%;
  margin-top:15px;
  margin-bottom:0px;
  padding:0px;
}
select.form-select{
  background-image: url('../images/select-dropdown-cavet-down.png');
  background-position: 99% center;
  background-size: 14px;
  background-repeat: no-repeat;
}
.input-group .input-group-addon{
/*    display: flex;*/
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    font-size: 20px;
    border-bottom: 1px solid #666666;
    font-weight: unset;
    min-width: 40px;
    color: #666666;
}
label.control.control--checkbox.plain-checkbox {
    margin-top: 1em;
    cursor: pointer;
}

label.control--checkbox input[type="checkbox"]{
  display: none !important;
}
.control__indicator{
  left:0;
 padding: 10px;
 /* height: 25px; */
 background: #f2f1f1;
 display: inline-block;
 position: absolute;
 margin-left: 3px;
 margin-top: 2px;
 border-radius: 10px;
 box-shadow: 1px 1px 1px 0px #00000026 inset;
}
.control__indicator:hover {
    box-shadow: 1px 1px 3px -1px #00000026 inset;
}
.control input:checked ~ .control__indicator {
    background: #43AA8B;
}
label.control--checkbox span{
      display: block;
      text-align: left;
      padding-left: 40px;
  }

.terms-wrap{
  max-height: 400px;
  overflow-y: scroll;
}
/*   AGE GATE SPECIFIC */
.modal{
  background-color:#151515db;
}
.modal-backdrop.fade{
  z-index: 0;
  visibility: hidden;
}
.modal-footer{
  border: none;
}

#ageValidateModal .modal-dialog{
  height: 100%;
  min-width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
}
#ageValidateModal .modal-dialog .modal-header{
  border: unset !important;
  text-align: center;
  flex-direction: column;
}
#ageValidateModal .modal-dialog .modal-header img{
  max-width: 100%;
  margin-bottom: 2em;
}
#ageValidateModal .modal-dialog .modal-content{
  border: none;
  background-color: transparent;
}

#ageValidateModal .modal-dialog .modal-content .modal-body{
  max-width: 500px;
  margin: auto;
  font-size: 1.1em;
  text-align: center;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}


input[type=number] {
  -moz-appearance: textfield;
}
#ageValidateModal input{
    color:#fff;
     font-size: 20px;
     font-weight: 100;
     border-radius: 0;
     background: transparent;
     border:unset;
     border-bottom: 1px solid #fff;
     padding: 10px;
  transition:all 0.3s;
}
#ageValidateModal input:hover, #ageValidateModal input:focus,#ageValidateModal input:active {
    margin-top: -5px;
    padding-bottom: 15px;
}
#ageValidateModal input::placeholder{
color:#fff;
  transition:all 0.3s;
}
#ageValidateModal input:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #fff;
  transition:all 0.3s;
}

#ageValidateModal input:hover::-ms-input-placeholder { /* Microsoft Edge */
  color: #43AA8B;
  transition:all 0.3s;
}

#ageValidateModal input:hover::placeholder{
color:#43AA8B;
transition:all 0.3s;
}
#ageValidateModal input:hover:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #43AA8B;
  transition:all 0.3s;
}

#ageValidateModal input:hover::-ms-input-placeholder { /* Microsoft Edge */
  color: #43AA8B;
  transition:all 0.3s;
}
#ageValidateModal .invalid-feedback{
  font-size: 1em;
}

/*   BUTTONS */
button{
        display:block;
        margin:auto;
      }
.button{
  text-decoration: none !important;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 10px 55px;
  outline: none;
  border: none;
  margin-top: 10px !important;
}

/*   button set : button border only w/ icon */
/*NEXT*/
.btn-bordered-icon-next{
  color: #43AA8B;
  border:2px solid #43AA8B;
  background-color: transparent;
  position: relative;
/*  display: flex;*/
/*  align-items: center;*/
  padding-left:55px;
  transition: all 0.3s;
}
.btn-bordered-icon-next > i{
  position: relative;
  width: 0;
  right: -1em;
  opacity: 0;
  color: #43AA8B;
  transition: all 0.3s;
}
.btn-bordered-icon-next:hover{
  border: 2px solid #3180f7;
  color: #3180f7;
  padding-left:45px;
  transition: all 0.3s;
}
.btn-bordered-icon-next:hover i{
  color: #3180f7;
  right: -0.5em;
  margin-left: 10px;
  opacity: 1;
  transition: all 0.3s;
}

/*BACK*/
.btn-bordered-icon-prev{
  color: #43AA8B;
  border:2px solid #43AA8B;
  background-color: transparent;
  position: relative;
  display: flex;
  align-items: center;
  padding-right:55px;
  transition: all 0.3s;
}
.btn-bordered-icon-prev > i{
  position: relative;
  width: 0;
  left: 1em;
  opacity: 0;
  color: #43AA8B;
  transition: all 0.3s;
}
.btn-bordered-icon-prev:hover{
  border: 2px solid #3180f7;
  color: #3180f7;
  padding-right:45px;
  transition: all 0.3s;
}
.btn-bordered-icon-prev:hover i{
  color: #3180f7;
  left: -1.25em;
  margin-right: 10px;
  opacity: 1;
  transition: all 0.3s;
}

/*SEND / SUBMIT*/
.btn-bordered-icon-send{
  color: #43AA8B;
  border:2px solid #43AA8B;
  background-color: transparent;
  position: relative;
  display: flex;
  align-items: center;
  padding-left:55px;
  transition:all 0.3s;
}
.btn-bordered-icon-send > i{
  position: relative;
  width: 0;
  right: 1em;
  opacity: 0;
  color: #43AA8B;
  transition: all 0.3s;
}
.btn-bordered-icon-send:hover{
  border: 2px solid #3180f7;
  color: #3180f7;
  padding-left:45px;
}
.btn-bordered-icon-send:hover i{
  color: #3180f7;
  right: -0.5em;
  opacity: 1;
  margin-left:10px;
  transition: all 0.3s;
}

/*LARGE CLAIM BTN*/
.btn-bordered-icon-claim{
  font-size: 24px;
  font-weight: 400;
  color: #43AA8B;
  border:2px solid #43AA8B;
  background-color: transparent;
  position: relative;
/*  display: flex;*/
  align-items: center;
  padding-left:75px;
  padding-right:75px;
  padding-top:15px;
  padding-bottom:15px;
  transition:all 0.3s;
}
.btn-bordered-icon-claim > i{
  position: relative;
  width: 0;
  right: 1em;
  opacity: 0;
  color: #43AA8B;
  transition: all 0.3s;
}
.btn-bordered-icon-claim:hover{
  border: 2px solid #3180f7;
  color: #3180f7;
  padding-left:65px;
}
.btn-bordered-icon-claim:hover i{
  color: #3180f7;
  right: -0.5em;
  opacity: 1;
  margin-left:10px;
  transition: all 0.3s;
}

/*   FULLSCREEN BACKGROUND HTML5 VIDEO */
.bg-video-wrap{
  width: 100%;
  height: 100%;
  background: #000;
  position: absolute;
  z-index: -1;
  max-height: 100vh;
  overflow: hidden;
   max-height: 100vh;
}


#bgVideo{
  opacity: 0.6;
  position: fixed;
  z-index: -1;
  width: 100%;
  height: auto;
  left: 0;
}

/*  LANDING PAGE  */
.ready-wrap{
  width:100%;
  background: rgb(242, 241, 241);
      padding: 2em 0;
}
.ready-wrap .btn-bordered-icon-next{
  display: inline-block;
}
.ready-checklist{
  padding-left:0;
  text-align: left;
  list-style-type: none;
}
.ready-checklist .control__indicator{
  box-shadow: 1px 1px 1px 0px #00000026 inset;
  border: 1px solid #99999954;
  background-color: #fff;
}
.cover-container header{
  z-index: 99;
}
.cover-container{
  align-items: center; 
  justify-content: center; 
  text-align:center;
  position: relative;
  z-index: 9;
  flex-wrap: wrap;
  min-height: 100vh;
/*    justify-content: flex-end;*/
/*    padding-bottom: 4em;*/
    overflow: hidden;
}
.cover-container img{
  margin-bottom: 3em;
}

/*  STEPS  */
.steps-breadcrumbs{
  background-color: #fff;
  position: relative;
  margin-bottom:3em;
}
/*.steps-breadcrumbs:before{
  content:"";
  position: absolute;
  top:50%;
  left: 0;
  height:1px;
  width:100%;
  background-color: #ccc;

}*/
.steps-breadcrumbs .inner-breadcrumb{
  margin: auto;
  z-index: 9;
  text-align: center;
/*  background-color: #fff;*/
/*  border:1px solid #ccc;*/
}
.col-lg-6.col-12.inner-breadcrumb .col{
  position: relative;
}
.col-lg-6.col-12.inner-breadcrumb .col:before {
    content: "";
    position: absolute;
    left: 0;
    height: 1px;
    background-color: #f2f1f1;
    width: 50%;
    top: 50%;
    z-index: -1;
}
.col-lg-6.col-12.inner-breadcrumb .col:after {
    content: "";
    position: absolute;
    right: 0;
    height: 1px;
    background-color: #f2f1f1;
    width: 50%;
    top: 50%;
    z-index: -1;
}
.col-lg-6.col-12.inner-breadcrumb .col.active:before,
.col-lg-6.col-12.inner-breadcrumb .col.active:after {
    background-color: #43AA8B;
}
.col-lg-6.col-12.inner-breadcrumb .col.visited:before,
.col-lg-6.col-12.inner-breadcrumb .col.visited:after{
    background-color: #43AA8B;
}
.col-lg-6.col-12.inner-breadcrumb .col.active i {
  background-color: #43AA8B;
  color:#fff;
}
.col-lg-6.col-12.inner-breadcrumb .col.visited i{
    background: #fff;
    border: 1px solid #43AA8B;
    color: #43AA8B;
  }
.col-lg-6.col-12.inner-breadcrumb .col.visited i:before {
    content: "\f00c";
}
.col-lg-6.col-12.inner-breadcrumb .col i {
    background: #f2f1f1;
/*    padding: 6px 10px;*/
    border-radius: 2px;
}
.col i {
/*    border: 1px solid #ccc;*/
    padding: 12px 14px;
    text-align: center;
}

.col.active {
/*    flex: 6 0   0%;*/
}


.main-content{
  padding-bottom: 3em;
  background-color: #fff;
}
.main-content .content{
  padding: 1em;
/*  border:1px solid #ffffff;*/
}
textarea.form-control{
      border: 0;
    border-bottom: 1px solid #666;
    min-height: 120px;
}
.input-group input.form-control{
  border-color: #666666; 
/*  color: #43AA8B;*/
}
.input-group select.form-select{
/*  color: #43AA8B;*/

}
.input-group select.form-select option:not(:first-child){
/*  color: #43AA8B;*/
}
.input-group select.form-select option:first-child{
/*  color: #333;*/
}
.input-group input, .input-group select{
/*  color: #666;*/
}
.input-group select{
  border: unset;
  border-bottom: 1px solid #666;
}
.input-group:hover .input-group-addon i{
  color: #43AA8B;
transition: all 0.3s;
}
label.plain-checkbox:hover .control__indicator {
    box-shadow: 1px 1px 3px -1px #00000026 inset;
}
/*ONBOARDING*/
.onboardingDiv {
  position:absolute;
  top:10%;
  left:50%;
  width:300px;
  left: 0; 
  right: 0; 
  margin-left: auto; 
  margin-right: auto; 
  background-color:#fff;
  box-shadow: 0px 0px 10px #333;
  padding-bottom:15px;  
  z-index:9999;
  display:none;
}
.onboardingDiv .imageHolder {
  text-align:center;
  background-color:#191919;
}
.onboardingDiv .imageHolder img {
  display:block;
  margin:0 auto;
}
.onboarding-content {
  position: relative;
  display:block;
  text-align:center;
  padding:15px;
  margin-left:20px;
  margin-right:20px;
  padding-bottom:10px;
  background-color:#fff;
}
.onboardingDiv .btn-primary {
  margin:0 auto !important;
  float:none;
}

@media screen and (max-width:430px){
  .cover-container{
/*    align-items: end; */
  }
}

/*responsive backgroud video*/
@media (min-aspect-ratio: 16/9) {
    #bgVideo {
        width:100%;
        height: auto;
    }
}
@media (max-aspect-ratio: 16/9) {
    #bgVideo { 
        width:100%;
        height:auto;
    }
}