* {
  position: relative;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*::-moz-selection {
  color: #1670EA;
  background: #000;
}
::selection {
  color: #1670EA;
  background: #000;
}*/

html {
  font-size: 62.5%;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  color: #222;
  margin: 0;
  background-color: #F4F4F4;
}
.black {
  font-family: "Arial Black", "Arial Bold", Gadget, sans-serif;
}

.animate {
  opacity: 0;
}

a, button {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: all 0.2s ease;
}
.button {
  display: inline-block;
  background-color: #F4892C;
  border-radius: 999px;
  color: #FFF;
  padding: 1.2em 1.6em;
  line-height: 0;
  border-style: none;
}
.button:hover {
  background-color: #0E4898;
}
.button.alt {
  background-color: #ffffff00;
  border-radius: 0.2em;
  padding: 1.4em;
}
.button.alt:hover {
  background-color: #ffffff2e;
}
.basic {
  padding-bottom: 0.2em;
  border-bottom: 0.08em solid #ffffff00;
}
.basic.on {
  border-bottom: 0.08em solid #ffffff;
}
.basic:hover {
  border-bottom: 0.08em solid #ffffff;
}
.drk-accent .basic.on {
  border-color: #696969;
}
.drk-accent .basic:hover {
  border-color: #696969;
}

h1, h2, h3, h4, h5, p {
  margin: 0;
  letter-spacing: 0.05rem;
  /*max-width: 73.6rem;*/
  max-width: 64rem;
}

h1 {
  font-weight: 900;
  font-size: 6.4em;
  line-height: 1em;
  margin-left: -0.05em;
}

h2 {
  font-weight: 200;
  font-size: 6.4em;
}

h3 {
  font-weight: 200;
  font-size: 5.4em;
}

h4 {
  font-weight: 700;
  font-size: 4.4em;
  line-height: 1.2em;
}

h5 {
  font-weight: 600;
  font-size: 3.4em;
  line-height: 1.2em;
}

p {
  font-weight: 300;
  /*font-size: 2em;*/
  font-size: 1.8em;
  line-height: 1.6em;
}
.lg {
  font-size: 2.6em;
  line-height: 1.2em;
}
.sm {
  font-size: 1.4em;
}
.x-sm {
  font-size: 1.0em;
}

.lite-txt {
  font-weight: 200;
}

.med-txt {
  font-weight: 600;
}

.thick-txt {
  font-weight: 900;
}

.txt-center {
  text-align: center;
}

.uppercase {
  text-transform: uppercase;
}

.capitalize {
  text-transform: capitalize;
}

.underline {
  text-decoration: underline;
}

img {
  max-width: 100%;
  vertical-align: middle;
  display: inline-block;
}

.anchor {
  position: absolute;
  top: -9.4em;
}

nav {
  position: sticky;
  top: 0;
  /*-webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);*/
  background-color: #F4F4F4;
  transition: all 0.2s ease;
  /*color: #222;*/
  z-index: 999;
}
nav.scroll {
  box-shadow: 0 0 3.2em #0000002e;
}
footer {
  border-top: 0.2em solid #ffffff45;
}
nav article,
footer article {
  justify-content: space-between;
  padding: 0.8em 4.0em;
}
nav ul,
footer ul {
  padding: 0.8em 0;
}
nav ul li,
footer ul li {
  margin: 0 0.8em;
}
nav img {
  height: 3.2em;
}
footer img {
  height: 2.8em;
}

header {
  display: flex;
  align-items: center;
  /*min-height: 90vh;*/
}
header.sign-up {
  min-height: 85vh;
}

section {
  width: 100%;
  padding: 0 1.6em;
  display: flex;
  align-items: center;
}

article {
  width: 100%;
  max-width: 160em;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 0 1.6em;
}

.block {
  flex: 1 1 35.2em;
  padding: 3.2em;
}
.wrap_1024 .block {
  flex: 1 1 48.05em;
}
.wrap_820 .block {
  flex: 1 1 37.85em;
}

.tile {
  width: 100%;
  box-shadow: 1.2em 1.2em 3.2em #00000014;
  padding: 1.6em;
  border-radius: 2.4em;
  background-color: #F4F4F4;
  overflow: hidden;
}
.tile i.fa-plus {
  position: absolute;
  top: 0.8em;
  right: 0.8em;
}
.tile-img {
  display: flex;
  justify-content: center;
  flex: 1 1 36em;
  margin: 1.6em;
}
.tile-txt {
  flex: 1 1 36em;
  padding: 1.6em 0;
}

hr {
  display: block;
  height: 0.2em;
  border: 0;
  border-top: 0.2em solid #FFF;
  opacity: 0.24;
  margin: 0;
}
hr.alt {
  display: block;
  height: 0.2em;
  border: 0;
  border-top: 0.2em solid #E2E2E2;
  opacity: 0.24;
  margin: 0;
  opacity: 1;
}

.unstyled-list {
  list-style-type: none;
  margin: 0;
  text-align: left;
}
.b-list {
  margin: 0 -1.6em;
}
.b-list li {
  padding: 0 1.6em 1.6em;
}

.overflow {
  overflow: hidden;
}

.border {
  border-radius: 1.6em;
}

.pos-a {
  position: absolute;
  top: -1.6em;
  left: 0;
  height: calc(100% + 3.2em);
  z-index: 1;
}
.pos-b,
.pos-c {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 9.6em;
  background-color: #FFF;
}
.pos-c {
  top: unset;
  bottom: 0;
}

.FAQ {
  width: 100%;
  max-width: 64em;
  margin: 0 auto;
}
.FAQ p.drk-accent,
.FAQ i {
  transition: all 0.2s ease;
}
.FAQ p.drk-accent {
  max-height: 0;
  overflow: hidden;
}
.FAQ.open i {
  transform: rotate(180deg);
}
.FAQ.open p.drk-accent {
  max-height: 10em;
}

.mobile-cta {
  position: sticky;
  bottom: 1.6em;
  left: 1.6em;
  aspect-ratio: 1 / 1;
  max-width: 6.4em;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 9999px;
}

/*////////// FORM STYLES //////////*/

form {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  /*margin: -0.5em;*/
}
form.sm {
  font-size: 0.8em;
}
.input-wrap {
  flex: 1 1 27em;
  display: flex;
  flex-wrap: wrap;
  margin: 0.5em;
}
.psuedo-input {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  /*justify-content: space-between;*/
  justify-content: flex-start;
}
.psuedo-input span {
  display: flex;
  flex: 1 1 12em;
  /*flex-wrap: wrap;*/
  flex-wrap: nowrap;
  /*padding: 0.2em 0;*/
  padding: 0.2em;
  /*justify-content: center;*/
}
input,
select,
textarea,
.psuedo-input {
  width: 100%;
  padding: 1em;
  background-color: transparent;
  border: 0.2em solid #cdcbd5;
  border-radius: 0.4em;
}
input,
select,
button,
textarea,
.psuedo-input {
  font-size: 1.6em;
  font-family: inherit;
}
label {
  position: absolute;
  top: 50%;
  left: 1.2rem;
  transform: translateY(-50%);
  font-size: 1.6em;
  color: #565656;
  transition: all 0.2s ease;
}
.valid,
.invalid {
  opacity: 0;
  visibility: hidden;
  color: transparent;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0.8em;
  transition: all 0.2s ease;
}
.pass_toggle {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0.8em;
  transition: all 0.2s ease;
}
.pass_toggle.hide {
  opacity: 0;
  visibility: hidden;
  color: transparent;
}
.static {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0.8rem;
}
input:focus,
input:focus-visible,
select:focus,
select:focus-visible,
textarea:focus,
textarea:focus-visible,
.psuedo-input:focus,
.psuedo-input:focus-visible {
  outline: none;
  border: 0.2em solid #F4892C;
  color: inherit;
}
input:focus + label,
input:not(:placeholder-shown) + label,
select + label,
textarea + label,
.psuedo-input + label {
  top: 0;
	font-size: 1.2em;
	font-weight: 500;
  color: #F4892C;
  background-color: #F4F4F4;
  z-index: 1;
  padding: 0 0.5em;
}
input:user-invalid,
select:user-invalid,
.psuedo-input:user-invalid {
  outline: none;
  border: 0.2em solid #f92c70;
  color: #f92c70;
}
input:user-invalid + label,
input:user-invalid ~ .invalid, 
select:user-invalid + label,
select:user-invalid ~ .invalid,
.psuedo-input:user-invalid + label {
  color: #f92c70;
}
input:user-invalid ~ .invalid,
select:user-invalid ~ .invalid { 
  opacity: 1;
  visibility: visible;
}
input:not(:focus),
select:not(:focus),
textarea:not(:focus),
.psuedo-input:not(:focus) {
  border: 0.2em solid #cdcbd5;
  color: inherit;
}
input:not(:focus) + label,
input:not(:focus) ~ .invalid,
select:not(:focus) + label,
select:not(:focus) ~ .invalid,
textarea:not(:focus) + label,
.psuedo-input:not(:focus) + label {
  color: inherit;
}
input:placeholder-shown ~ .invalid,
select:placeholder-shown ~ .invalid,
textarea:placeholder-shown ~ .invalid {
  opacity: 0;
  visibility: hidden;
  color: transparent;
}
input:user-valid,
select:user-valid,
input[type="date"]:valid,
textarea:user-valid,
.psuedo-input:user-valid {
  outline: none;
  border: 0.2em solid #4CAE88;
}
input:user-valid + label,
input:user-valid ~ .valid,
select:user-valid + label,
select:user-valid ~ .valid,
textarea:user-valid + label,
.psuedo-input:user-valid + label{
  color: #4CAE88;
}
input:user-valid ~ .valid,
select:user-valid ~ .valid { 
  opacity: 1;
  visibility: visible;
}
input:checked {
  accent-color: #F4892C;
}
input::placeholder {
  opacity: 0;
  visibility: hidden;
  color: transparent;
}
.check {
  align-items: flex-start;
  flex-wrap: nowrap;
  margin-top: 1.5em;
}
input[type=checkbox] {
  -webkit-appearance: checkbox;
  appearance: checkbox;
  margin: 0 0.5em 0 0;
  min-width: 1em;
  min-height: 1em;
  max-width: 1.5em;
  max-height: 1.5em;
  padding: 0;
}
input[type=radio] {
  -webkit-appearance: radio;
  appearance: radio;
  margin: 0 0.5em 0 0;
  min-width: 1em;
  min-height: 1em;
  max-width: 1.5em;
  max-height: 1.5em;
  padding: 0;
}
.psuedo-input input[type=checkbox],
.psuedo-input input[type=radio] {
  /*margin: 0 0.5rem 0 0;*/
  min-width: 1rem;
  min-height: 1rem;
  max-width: 1.5rem;
  max-height: 1.5rem;
  padding: 0;
}
input[type=checkbox] + label,
input[type=radio] + label {
  position: relative;
  font-size: inherit;
  color: inherit;
  top: unset;
  left: unset;
  font-weight: inherit;
  transform: none;
  padding: 0;
  text-align: left;
}
input[type=range] {
  -webkit-appearance: none;
  appearance: none;
  min-height: 3.75em;
  outline: none;
  margin: 0;
}
input[type="range"]::-webkit-slider-runnable-track {
  height: 0.25em;
  background-color: #e8e8ec;
  border-radius: 999em;
}
input[type="range"]::-moz-range-track {
  height: 0.25em;
  background-color: #e8e8ec;
  border-radius: 999em;
}
input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 1.2em;
  height: 1.2em;
  border-radius: 999em;
  background: #F4892C;
  cursor: pointer;
  /*margin-top: -0.4em;*/
}
input[type="range"]::-moz-range-thumb {
  width: 1.2em;
  height: 1.2em;
  border-radius: 999em;
  background: #F4892C;
  cursor: pointer;
  /*margin-top: -0.4em;*/
}
textarea {
  resize: vertical;
}

/*////////// END FORM STYLE //////////*/

/*////////// TOGGLE CLASSES //////////*/

.flex {
  display: flex;
}
.wrap {
  flex-wrap: wrap;
}
.nowrap {
  flex-wrap: nowrap;
}
.rvs-wrap {
  flex-wrap: wrap-reverse;
}
.ai-start {
  align-items: flex-start;
}
.ai-end {
  align-items: flex-end;
}
.ai-stretch {
  align-items: stretch;
}
.ai-center {
  align-items: center;
}
.ac-start {
  align-content: flex-start;
}
.as-center {
  align-self: center;
}
.as-start {
  align-self: flex-start;
}
.as-end {
  align-self: flex-end;
}
.jc-start {
  justify-content: flex-start;
}
.jc-end {
  justify-content: flex-end;
}
.jc-center {
  justify-content: center;
}
.jc-between {
  justify-content: space-between;
}
.jc-around {
  justify-content: space-around;
}

.flex-unset {
  flex: unset;
}

/*////////// END  //////////*/

/*////////// WIDTHS  //////////*/

._w-100 {
  width: 100%;
}
._mw-100 {
  max-width: 100%;
}
._mw-75 {
  max-width: 75rem;
}
._mw-90 {
  max-width: 90rem;
}
._mw-120 {
  max-width: 120rem;
}
._mw-140 {
  max-width: 140rem;
}

/*////////// END  //////////*/

/*////////// MARGIN & PADDING  //////////*/

._mt_1-6 {
  margin-top: 1.6rem;
}
._mt_3-2 {
  margin-top: 3.2rem;
}
._mt_6-4 {
  margin-top: 6.4rem;
}
._mt_9-6 {
  margin-top: 9.6rem;
}
._mb_1-6 {
  margin-bottom: 1.6rem;
}
._mb_3-2 {
  margin-bottom: 3.2rem;
}
._mb_6-4 {
  margin-bottom: 6.4rem;
}
._mb_9-6 {
  margin-bottom: 9.6rem;
}
._m-auto {
  margin: 0 auto;
}
._pb_0 {
  padding-bottom: 0 !important;
}
.pad_0 {
  padding: 0;
}
.pad_1-6 {
  padding: 1.6em;
}

/*////////// END  //////////*/

/*////////// COLORS //////////*/

.wht-txt {
  color: #FFF;
}
.wht-accent {
  color: #CECECE;
}
.drk-accent {
  color: #696969;
}
.org-accent {
  color: #F4892C;
}
.grn-accent {
  color: #4CAE88;
}
.grad-bkg {
  background: linear-gradient(45deg, #FBB204, #E6A813);
}
.lite-bkg {
  background-color: #EFEFEF;
}
.wht-bkg {
  background-color: #FFF;
}
.gry-bkg {
  background-color: #E6E6E6;
}
.drk-bkg {
  background-color: #000;
}
.drker-bkg {
  background-color: #0e0e0e;
}
.blk-bkg {
  background-color: #000;
}
.org-bkg {
  background-color: #F4892C;
}
.org-border {
  border-color: #F4892C;
  border-style: solid;
}

.fade-up {
  position: absolute;
  top: 3.2em;
  right: 3.2em;
  bottom: 3.2em;
  left: 3.2em;
  background: linear-gradient(180deg, #22222200, #222222);
}
.fade-up.alt {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, #22222200, 75%, #000000);
}

/*////////// END  //////////*/

.kill {
  display: none;
}

/*////////// MEDIA QUERIES //////////*/
@media (min-width: 2000px) {
  html {
    font-size: 14px;
  }
}
@media (min-width: 3000px) {
  html {
    font-size: 18px;
  }
}
@media (max-width: 1200px) {
  
}
@media (max-width: 1024px) {

  h1 {
    font-size: 6.4em;
  }
  h2 {
    font-size: 5.4em;
  }
  h3 {
    font-size: 4.4em;
  }
  h4 {
    font-size: 3.4em;
  }
  h5 {
    font-size: 2.6em;
  }
  p {
    font-size: 1.8em;
  }

  article._mt_9-6 {
    margin-top: 6.4rem;
  }
  article._mb_9-6 {
    margin-bottom: 6.4rem;
  }
  article._mt_6-4 {
    margin-top: 3.2rem;
  }
  article._mb_6-4 {
    margin-bottom: 3.2rem;
  }

  .pos-a {
    top: unset;
    right: -1.6em;
    left: unset;
    height: auto;
    width: 6.4em;
    bottom: -0.8em;
  }

  .show_1024 {
    display: block;
  }
  .kill_1024 {
    display: none;
  }
}
@media (max-width: 820px) {

  p {
    font-size: 2em;
  }

}
@media (max-width: 768px) {

}
@media (max-width: 520px) {

  .show_520 {
    display: flex;
  }

  body.scroll-lock {
    overflow: hidden !important;
  }

  h1 {
    font-size: 4.4em;
  }
  h2 {
    font-size: 4.4em;
  }
  h3 {
    font-size: 3.0em;
  }
  h4 {
    font-size: 2.4em;
  }
  h5 {
    font-size: 2.0em;
  }
  p {
    font-size: 1.6em;
  }
  .lg {
    font-size: 1.8em;
  }
  /*.sm {
    font-size: 1.2em;
  }*/

  .button.alt {
    padding: 1.2em;
  }

  nav article,
  footer article {
    padding: 0.8em 2.4em;
  }
  footer article {
    justify-content: center;
  }
  footer ul li {
    margin: 0.8em;
  }
  nav img,
  footer img{
    height: 2.4em;
  }

  article._mt_9-6 {
    margin-top: 3.2rem;
  }
  article._mb_9-6 {
    margin-bottom: 3.2rem;
  }
  article._mt_6-4 {
    margin-top: 1.6rem;
  }
  article._mb_6-4 {
    margin-bottom: 1.6rem;
  }
  .block {
    padding: 1.6em;
  }

  .fade-up {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

  .tile.flex {
    padding: 0;
  }

  .ul-wrap_520 {
    flex-wrap: wrap;
  }
  .kill_520 {
    display: none;
  }

}
@media (max-width: 390px) {

}
@media (max-width: 375px) {
  
}
@media (max-width: 320px) {
  
}
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  /* IE10+ specific styles go here */
  
}
/* Landscape */
@media only screen 
  and (min-device-width: 428px) 
  and (max-device-width: 926px)
  and (orientation: landscape) { 
    
}