body.landing {
  display: block;
  overflow-y: auto;
  background: var(--white-color);
}
body.landing ::-moz-selection {
  background: var(--primary-color-80);
  color: var(--white-color);
}
body.landing ::selection {
  background: var(--primary-color-80);
  color: var(--white-color);
}
body.landing ::-moz-selection {
  background: var(--primary-color-80);
  color: var(--white-color);
}

.home-box .box-sleeve {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: clamp(3em, 10vh, 8em) 1em;
}
.home-box .larger {
  font-size: 1.25em;
}
.home-box h1 {
  font-size: calc(0.75vw + 2.125em);
  font-weight: normal;
  margin-bottom: 1rem;
}
.home-box h2 {
  font-size: calc(0.75vw + 2em);
  font-weight: bold;
  margin-bottom: 1em;
  background: -webkit-gradient(linear, left top, right top, from(var(--primary-color)), to(var(--secondary-color)));
  background: linear-gradient(to right, var(--primary-color), var(--secondary-color));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.home-box.box-intro {
  text-align: center;
  background: url("../img/bgn-hero.webp") center, -webkit-gradient(linear, left top, right top, from(var(--primary-color)), to(var(--secondary-color)));
  background: url("../img/bgn-hero.webp") center, linear-gradient(to right, var(--primary-color), var(--secondary-color));
  background-blend-mode: multiply;
  background-size: cover;
  background-attachment: fixed;
  color: var(--white-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1em;
  position: relative;
}
.home-box.box-intro * {
  z-index: 2;
}
.home-box.box-intro .box-sleeve {
  width: 100%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.home-box.box-intro p {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.home-box.box-intro p:not(:last-child) {
  margin-bottom: 1em;
}
.home-box.box-intro:after {
  content: "";
  display: block;
  z-index: 1;
  position: absolute;
  inset: auto 0 0 auto;
  background: url(../img/bgn-hero-btm-rgh.webp) no-repeat;
  background-size: cover;
  aspect-ratio: 1/1;
  width: calc(4vw + 6em);
}
.home-box.box-info {
  text-align: center;
  background: var(--light-gray-color);
}
.home-box.box-login {
  position: relative;
}
.home-box.box-login * {
  z-index: 2;
}
.home-box.box-login h2, .home-box.box-login p {
  text-align: center;
}
.home-box.box-login p {
  margin-bottom: 1em;
}
.home-box.box-login .box-sleeve {
  width: 100%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.home-box.box-login:before {
  content: "";
  display: block;
  z-index: 1;
  position: absolute;
  inset: 0 auto auto 0;
  background: url(../img/bgn-login-top-lft.webp) no-repeat;
  background-size: cover;
  aspect-ratio: 1/1;
  width: calc(4vw + 6em);
}

@media (max-width: 575px) {
  .home-box h1 {
    font-size: calc(0.75vw + 2.125em);
  }
}
.logo {
  background: url("../img/myads-logo.webp") no-repeat;
  background-size: contain;
  aspect-ratio: 750/876;
  width: calc(4vw + 10em);
  margin: 0 auto 2em;
}
.logo span {
  display: none;
}

.box-features {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1em 1fr 1em 1fr 1em 1fr 1em 1fr;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 1em;
  margin: 0 0 2em;
}
.box-features > div {
  padding: 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  gap: 1em;
  background: var(--white-color-50);
  border-radius: var(--b-radius-md);
  -webkit-box-shadow: 0 0.5em 1.5em var(--theme-color-10);
          box-shadow: 0 0.5em 1.5em var(--theme-color-10);
  -webkit-transition: 300ms ease all;
  transition: 300ms ease all;
  cursor: pointer;
  position: relative;
  isolation: isolate;
}
.box-features > div:before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(var(--white-color)), to(transparent));
  background: linear-gradient(to bottom, var(--white-color), transparent);
  border-radius: var(--b-radius-md);
  z-index: 1;
  -webkit-transition: 300ms ease all;
  transition: 300ms ease all;
}
.box-features > div i {
  font-size: calc(0.75vw + 1.75em);
  line-height: 1;
  position: relative;
  isolation: isolate;
  z-index: 2;
}
.box-features > div i:before {
  background: radial-gradient(circle at 25% 25%, var(--white-color-50), transparent), radial-gradient(circle at 75% 75%, var(--gray-color-20), transparent), var(--primary-color);
  color: var(--white-color);
  line-height: 1;
  padding: 0.5em;
  border-radius: 50%;
  -webkit-transition: 300ms ease all;
  transition: 300ms ease all;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.box-features > div i:after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, var(--gray-color-30), transparent 50%), radial-gradient(circle at center, var(--gray-color-30), var(--gray-color-10));
  z-index: -2;
  border-radius: 50%;
  -webkit-transform: translateY(50%) scaleY(0.2) scaleX(0.9);
          transform: translateY(50%) scaleY(0.2) scaleX(0.9);
  -webkit-filter: blur(20px);
          filter: blur(20px);
  -webkit-transition: 300ms ease all;
  transition: 300ms ease all;
}
.box-features > div p {
  line-height: 1.3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.375em;
  z-index: 2;
}
.box-features > div p br {
  display: none;
}
.box-features > div p strong {
  font-size: 1.125em;
}

@media (hover: hover) {
  .box-features > div:hover {
    -webkit-box-shadow: 0 1em 3em var(--theme-color-20);
            box-shadow: 0 1em 3em var(--theme-color-20);
    background: var(--primary-color);
    color: var(--white-color);
  }
  .box-features > div:hover:before {
    opacity: 0.5;
  }
  .box-features > div:hover i:before {
    -webkit-transform: translateY(-15px) scale(1.1);
            transform: translateY(-15px) scale(1.1);
  }
  .box-features > div:hover i:after {
    -webkit-transform: translateY(50%) scaleY(0.15) scaleX(0.75);
            transform: translateY(50%) scaleY(0.15) scaleX(0.75);
    opacity: 0.7;
    -webkit-filter: blur(25px);
            filter: blur(25px);
  }
}
@media (min-width: 992px) {
  .box-features {
    margin-top: 5em;
  }
  .box-features > div i {
    margin-top: -1.375em;
  }
}
@media (max-width: 991px) {
  .box-features {
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .box-features {
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 575px) {
  .box-features {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
footer {
  --footer-bg: var(--gray-color);
  --footer-color: var(--white-color);
  --footer-radius: 50px;
  --footer-padding: 6em 2.5em 1em;
  --footer-tagline-size: 4em;
  --footer-bg-image: url(../img/footer-bg.webp);
}
footer .sleeve {
  max-width: 1400px;
  padding: 1em var(--desktop-x-padding) 0;
  margin: auto;
}
footer #footer {
  background: var(--footer-bg);
  color: var(--footer-color);
  border-radius: var(--footer-radius) var(--footer-radius) 0 0;
  padding: var(--footer-padding);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 3em;
  overflow: hidden;
  position: relative;
}
footer #footer:before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: var(--footer-bg-image) no-repeat right top;
  background-size: cover;
  z-index: 1;
  opacity: 0.1;
}
footer #footer:after {
  content: "";
  display: block;
  position: absolute;
  inset: 0 25% 0 0;
  background: -webkit-gradient(linear, left top, right top, from(var(--footer-bg)), to(transparent));
  background: linear-gradient(to right, var(--footer-bg), transparent);
  z-index: 2;
}
footer #footer > * {
  z-index: 3;
}
footer #footer a {
  color: currentColor;
  text-decoration: none;
}
footer #footer .tagline {
  font-size: var(--footer-tagline-size);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5em;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
footer #footer .tagline strong {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 28%;
          flex: 0 0 28%;
}
footer #footer .tagline strong a {
  display: block;
}
footer #footer .tagline strong a img {
  display: block;
  width: 100%;
  max-width: 270px;
}
footer #footer .tagline > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer #footer .tagline span {
  color: var(--secondary-color);
  font-size: 0.65em;
}
footer #footer .tagline:after {
  content: "";
  display: block;
  height: 2px;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, from(var(--secondary-color)), to(var(--secondary-color-50)));
  background: linear-gradient(to right, var(--secondary-color), var(--secondary-color-50));
}
footer #footer .cols {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 2em;
}
footer #footer .cols .col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.35em;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
}
footer #footer .cols .col em {
  color: var(--white-color-30);
  font-style: normal;
  font-size: 1.25em;
}
footer #footer .cols .col a {
  display: inline-block;
  position: relative;
}
footer #footer .cols .col a:after {
  content: "";
  display: block;
  background: currentColor;
  position: absolute;
  inset: auto 0 0 0;
  height: 2px;
  -webkit-transform: translateY(5px);
          transform: translateY(5px);
  opacity: 0;
  pointer-events: none;
  -webkit-transition: 200ms ease all;
  transition: 200ms ease all;
}
footer #footer .cols .col a:hover:after {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}
footer #footer p {
  font-size: 1em;
  color: var(--white-color-30);
}
footer #footer p a {
  font-weight: bold;
  -webkit-transition: 200ms ease all;
  transition: 200ms ease all;
}
footer #footer p a:hover {
  color: var(--white-color-70);
}

@media (max-width: 991px) {
  footer {
    --footer-tagline-size: 3em;
  }
  footer .sleeve {
    padding: 0;
  }
  footer #footer {
    border-radius: 0;
  }
  footer #footer .cols {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  footer #footer .cols .col {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 calc(50% - 2em);
            flex: 1 0 calc(50% - 2em);
  }
}
@media (max-width: 575px) {
  footer {
    --footer-tagline-size: 2.5em;
  }
  footer #footer .tagline {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  footer #footer .tagline * {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 100%;
            flex: 1 0 100%;
  }
  footer #footer .tagline:after {
    margin-top: 1em;
  }
  footer #footer .cols {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  footer #footer .cols .col {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 100%;
            flex: 1 0 100%;
  }
}