body {
  color: white;
  background-color: #0e0e0e;
  margin: 0;
  position: relative;
  font-family: sans-serif;
}

body.home-page {
  background-image: url("/img/blackmarble2.png");
  background-size: auto 75%;
  background-repeat: no-repeat;
  background-position: bottom;
  background-blend-mode: exclusion;
}

@media (min-width: 1024px) {
  body.home-page {
    background-position: left bottom;
  }
}

.swoosh {
  position: absolute;
  opacity: 0.5;
  top: 0;
  left: 0;
  height: 5%;
  z-index: 0;
}

h1, .product-arrow {
  font-size: 5em;
  font-family: 'Blinker', sans-serif;
}

h2 {
  font-family: 'Blinker', sans-serif;
  font-weight: 600;
  font-size: 3em;
}

h3 {
  font-family: 'Raleway', sans-serif;
  font-size: 1.5em;
}

p, li {
  font-family: 'Raleway', sans-serif;
  font-size: 1.15em;
}

a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

button {
  cursor: pointer;
  font-family: 'Blinker', sans-serif;
  position: relative;
  padding: 1em 2em;
  font-size: 1.15em;
  border: none;
  border-radius: 2em;
  max-width: 10em;
  max-height: 3em;
  line-height: 0.8em;
  z-index: 1;
}

button:before {
  border-radius: inherit;
  background-image: linear-gradient(45deg, #ff0000, #ffa400);
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  opacity: 0;
  width: 50%;
  z-index: -100;
  transition: all 0.3s ease-out;
  box-shadow: inset 0px 0px 14px 0px #a23a02;
}

button:hover {
  color: #fff;
}

button:hover:before {
  opacity: 0.8;
  width: 100%;
}

.button-light {
  background-color: #fff;
  color: #000;
  box-shadow: 6px 6px 10px 0 rgba(0, 0, 0, 0.35), -8px -8px 15px 0 rgba(240, 240, 240, 0.1);
}

.button-medium {
  background-color: #232323;
  color: #fff;
  box-shadow: 6px 6px 10px 0 rgba(0, 0, 0, 0.35), -8px -8px 15px 0 rgba(240, 240, 240, 0.1);
}

.button-dark {
  background-color: #0e0e0e;
  color: #fff;
  box-shadow: 10px 10px 15px 0 rgba(0, 0, 0, 0.83), -6px -6px 15px 0 rgba(255, 255, 255, 0.08);
}

.button-pos:before {
  background-image: linear-gradient(45deg, #cc291e, #bb5087);
  box-shadow: inset 0px 0px 14px 0px #cc291e;
}

.button-website:before {
  background-image: linear-gradient(45deg, #5261a9, #51a793);
  box-shadow: inset 0px 0px 14px 0px #5261a9;
}

.button-logbooks:before {
  background-image: linear-gradient(45deg, #44bdac, #6cba44);
  box-shadow: inset 0px 0px 14px 0px #44bdac;
}

.button-range:before {
  background-image: linear-gradient(45deg, #da7426, #da2e26);
  box-shadow: inset 0px 0px 14px 0px #da7426;
}

.button-orders:before {
  background-image: linear-gradient(45deg, #1e7a55, #92a720);
  box-shadow: inset 0px 0px 14px 0px #1e7a55;
}

.button-inventory:before {
  background-image: linear-gradient(45deg, #51a7d5, #4c529a);
  box-shadow: inset 0px 0px 14px 0px #51a7d5;
}

.button-promos:before {
  background-image: linear-gradient(45deg, #e1a234, #dc6832);
  box-shadow: inset 0px 0px 14px 0px #e1a234;
}

.button-customers:before {
  background-image: linear-gradient(45deg, #6c5199, #3c74c7);
  box-shadow: inset 0px 0px 14px 0px #6c5199;
}

.button-reports:before {
  background-image: linear-gradient(45deg, #8fb13b, #e6bb42);
  box-shadow: inset 0px 0px 14px 0px #8fb13b;
}

.button-ffloffice:before {
  background-image: linear-gradient(45deg, #1e3e54, #40bca9);
  box-shadow: inset 0px 0px 14px 0px #1e3e54;
}

.disabled, :disabled {
  background: #fff !important;
  cursor: not-allowed !important;
}

.disabled:hover, :disabled:hover {
  color: #000;
  background-color: #f3f3f3 !important;
}

.disabled:hover:before, :disabled:hover:before {
  opacity: 0;
}

@media (max-width: 1024px) {
  h1, .product-arrow {
    font-size: 4.5em;
  }
  h2 {
    font-size: 2.75em;
  }
  h3 {
    font-size: 1.25em;
  }
  p, li {
    font-size: 0.9em;
  }
  button {
    font-size: 1em;
  }
}

@media (max-width: 768px) {
  h1, .product-arrow {
    font-size: 4em;
  }
  h2 {
    font-size: 2.25em;
  }
  h3 {
    font-size: 1.25em;
  }
}

.main-menu {
  display: none;
  z-index: 2;
}

#menu {
  overflow: scroll;
}

#menu li {
  padding: 0.5em 0 0.5em 1.5em;
  font-size: 18px;
}

#menu ul.mobile-list {
  list-style: none;
  margin: 0.25em 0 0 1em;
}

#menu ul.mobile-list li {
  padding: 0.5em 0;
}

.home-section {
  margin: 3em auto;
  display: block;
  position: relative;
  width: 80%;
  z-index: 1;
}

.hero-section {
  text-align: center;
}

.hero-section h1 {
  font-size: 3em;
}

.hero-section .hero-logo {
  width: 75vw;
  margin: 0 auto;
  margin-top: 2em;
  opacity: 1;
  transition: all 0.4s;
  animation: glow 40s infinite;
}

.hero-section .hero-logo.scrolling {
  opacity: 0;
}

@keyframes glow {
  0% {
    filter: none;
  }
  4.5% {
    filter: none;
  }
  5% {
    filter: drop-shadow(-4px 3px 2px red);
  }
  5.5% {
    filter: drop-shadow(4px 3px 5px red);
  }
  6% {
    filter: drop-shadow(2px 1px 3px red);
  }
  6.5% {
    filter: drop-shadow(1px 4px 1px red);
  }
  7% {
    filter: drop-shadow(4px 2px 6px red);
  }
  7.5% {
    filter: drop-shadow(2px 1px 3px red);
  }
  8% {
    filter: none;
  }
  15% {
    filter: none;
  }
  15.5% {
    filter: drop-shadow(1px 3px 2px yellow);
  }
  16% {
    filter: drop-shadow(4px 3px 5px yellow);
  }
  16.5% {
    filter: drop-shadow(-4px 1px 3px yellow);
  }
  17% {
    filter: drop-shadow(1px 1px 1px yellow);
  }
  17.5% {
    filter: drop-shadow(4px 1px -6px yellow);
  }
  18% {
    filter: drop-shadow(2px 1px 3px yellow);
  }
  18.5% {
    filter: none;
  }
  27% {
    filter: none;
  }
  27.5% {
    filter: drop-shadow(1px 3px -2px blue);
  }
  28% {
    filter: drop-shadow(4px -3px 5px blue);
  }
  28.5% {
    filter: drop-shadow(4px 1px 3px blue);
  }
  29% {
    filter: drop-shadow(1px 1px 1px blue);
  }
  29.5% {
    filter: drop-shadow(4px 1px 6px blue);
  }
  30% {
    filter: drop-shadow(-2px 1px 3px blue);
  }
  30.5% {
    filter: none;
  }
  40% {
    filter: none;
  }
  40.5% {
    filter: drop-shadow(1px 3px 2px green);
  }
  41% {
    filter: drop-shadow(4px 3px -5px green);
  }
  41.5% {
    filter: drop-shadow(4px -1px 3px green);
  }
  42% {
    filter: drop-shadow(1px 1px 1px green);
  }
  42.5% {
    filter: drop-shadow(-4px 1px 6px green);
  }
  43% {
    filter: drop-shadow(2px 1px 3px green);
  }
  43.5% {
    filter: none;
  }
  53% {
    filter: none;
  }
  53.5% {
    filter: drop-shadow(1px 3px 2px orange);
  }
  54% {
    filter: drop-shadow(1px 3px 1px orange);
  }
  54.5% {
    filter: drop-shadow(4px 4px 3px orange);
  }
  55% {
    filter: drop-shadow(3px 2px 1px orange);
  }
  55.5% {
    filter: drop-shadow(4px 1px 4px orange);
  }
  56% {
    filter: drop-shadow(-2px -1px 3px orange);
  }
  56.5% {
    filter: none;
  }
  66% {
    filter: none;
  }
  66.5% {
    filter: drop-shadow(-1px 4px 2px slateblue);
  }
  67% {
    filter: drop-shadow(-4px 3px 1px slateblue);
  }
  67.5% {
    filter: drop-shadow(4px -1px 3px slateblue);
  }
  68% {
    filter: drop-shadow(1px 6px 1px slateblue);
  }
  68.5% {
    filter: drop-shadow(4px -1px 6px slateblue);
  }
  69% {
    filter: drop-shadow(2px 1px 3px slateblue);
  }
  69.5% {
    filter: none;
  }
  80% {
    filter: none;
  }
  80.5% {
    filter: drop-shadow(-1px 3px 6px aqua);
  }
  81% {
    filter: drop-shadow(3px 2px 1px aqua);
  }
  81.5% {
    filter: drop-shadow(1px 1px -3px aqua);
  }
  82% {
    filter: drop-shadow(4px 4px 1px aqua);
  }
  82.5% {
    filter: drop-shadow(-4px 1px 6px aqua);
  }
  83% {
    filter: drop-shadow(2px 6px 3px aqua);
  }
  83.5% {
    filter: none;
  }
  93% {
    filter: none;
  }
  93.5% {
    filter: drop-shadow(6px 3px 1px olive);
  }
  94% {
    filter: drop-shadow(-4px 3px 5px olive);
  }
  94.5% {
    filter: drop-shadow(4px 4px 3px olive);
  }
  95% {
    filter: drop-shadow(1px 2px 1px olive);
  }
  95.5% {
    filter: drop-shadow(4px -4px 6px olive);
  }
  96% {
    filter: drop-shadow(2px 1px 3px olive);
  }
  96.5% {
    filter: none;
  }
  100% {
    filter: none;
  }
}

.hero-section .linetwo h3 {
  display: inline;
  padding-bottom: 0.25em;
}

.hero-section .linetwo .text-container {
  display: inline-block;
  position: relative;
  height: 1.75em;
  width: 8em;
  overflow: hidden;
  top: 0.65em;
}

.hero-section .linetwo .text-container .circling-text {
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
  animation: rotate 10s infinite;
  font-size: 1.25em;
}

.hero-section .linetwo .text-container .circling-text span {
  display: block;
  padding-bottom: 0.5em;
}

@keyframes rotate {
  0% {
    top: 0;
  }
  23% {
    top: 0;
  }
  25% {
    top: -1.65em;
  }
  48% {
    top: -1.65em;
  }
  50% {
    top: -3.3em;
  }
  73% {
    top: -3.3em;
  }
  75% {
    top: -5em;
  }
  94% {
    opacity: 1;
  }
  95% {
    top: -5em;
  }
  99% {
    opacity: 0;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}

.moreinfo {
  max-width: 75%;
  display: block;
  margin: 10em auto;
}

.products {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  padding-top: 1em;
}

.products h2 {
  text-align: center;
}

.products .product-section-outer {
  position: relative;
  /*.product-section:hover {
            background-color: #232323;
            height: 100%;
            .product-info {
                display: inline-block;
                opacity: 1;
                padding: 2em 0;
            }
            .product-logo {
                display: inline-block;
            }
        }*/
}

.products .product-section-outer input.product-toggle {
  display: block;
  width: 100%;
  height: 15em;
  position: absolute;
  top: -7px;
  left: -5px;
  cursor: pointer;
  opacity: 0;
  /* hide this */
  z-index: 2;
}

.products .product-section-outer .product-arrow {
  position: absolute;
  right: 3em;
  top: 0;
  z-index: 1;
  font-size: 0.5em;
  transform: rotate(0);
  transition: all 0.4s;
}

.products .product-section-outer .product-section {
  padding: 0 2em;
  border-bottom: 1px solid white;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 1em 4em;
  height: fit-content;
  transition: all 0.4s;
  position: relative;
}

.products .product-section-outer .product-section h1, .products .product-section-outer .product-section .product-arrow {
  max-width: 90vw;
  transition: all 0.1s;
}

.products .product-section-outer .product-section .product-info {
  display: none;
  opacity: 0;
  transition: all 0.2s;
  max-width: 90vw;
}

.products .product-section-outer .product-section .product-logo {
  display: none;
  max-width: 80vw;
  justify-self: center;
  align-self: center;
  padding-bottom: 2em;
  grid-row: 3 / 4;
}

.products .product-section-outer input.product-toggle:checked ~ .product-arrow {
  transform: rotate(180deg);
}

.products .product-section-outer input.product-toggle:checked ~ .product-section {
  background-color: #232323;
  background-color: rgba(35, 35, 35, 0.6);
  height: 100%;
}

.products .product-section-outer input.product-toggle:checked ~ .product-section .product-logo {
  display: inline-block;
  opacity: 1;
  padding: 2em 0;
}

.products .product-section-outer input.product-toggle:checked ~ .product-section .product-info {
  display: inline-block;
  opacity: 1;
  padding: 2em 0;
}

.partners {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 1em;
  text-align: center;
}

.partners h2 {
  grid-column: 1 / 3;
}

.partners .partner-img {
  width: 100%;
  border-radius: 3em;
}

.calltoaction {
  text-align: center;
  padding: 8em 0;
}

footer {
  width: 80%;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 2em;
  padding: 4em 0;
  justify-items: center;
  align-content: start;
  position: relative;
}

footer .footer-info {
  grid-column: 1 / 3;
  grid-row: 3 / 4;
}

footer .footer-info img {
  height: 3em;
  display: inline-block;
}

footer ul {
  width: 100%;
  margin-top: 0;
  padding: 0;
  list-style: none;
}

footer ul li {
  padding: 0.25em 0;
  line-height: 2em;
}

footer ul li:first-of-type {
  border-bottom: 1px solid white;
}

footer ul span {
  font-weight: bolder;
}

footer ul a:hover {
  color: #e09240;
}

@media (min-width: 768px) {
  #menu li {
    font-size: 25px;
  }
  .hero-section {
    margin-top: 8em;
  }
  .hero-section h1 {
    font-size: 4em;
  }
  .hero-section .hero-logo {
    width: 50vw;
  }
  .moreinfo {
    max-width: 70%;
  }
  .moreinfo h2 {
    margin-top: 25%;
  }
  .products .product-section-outer .product-arrow {
    font-size: 1em;
  }
  .products .product-section-outer .product-section {
    grid-template-columns: 1.25fr 1fr;
    padding-left: 6em;
  }
  .products .product-section-outer .product-section img.product-logo {
    grid-row: 1 / 3;
    grid-column: 2 / 3;
    width: 25vw;
  }
  .partners {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .partners h2 {
    grid-column: 1 / 4;
  }
  footer {
    grid-template-columns: 1fr 1fr 1fr;
    margin: 4em auto;
    margin-bottom: 0;
    border-top: 1px solid #fff;
  }
  footer .footer-info {
    grid-row: 2 / 3;
    grid-column: 1 / 4;
  }
  footer ul span {
    font-size: 1.25em;
  }
}

@media (min-width: 1042px) {
  .hamburger-menu {
    display: none;
  }
  .main-menu-home {
    z-index: 2;
  }
  .main-menu-home ul, .main-menu-home button {
    opacity: 0;
    transition: all 0.3s;
  }
  .main-menu-home:hover ul, .main-menu-home:hover button {
    opacity: 1;
  }
  .main-menu {
    display: grid;
    grid-template-columns: 10.5em auto 17em;
    position: fixed;
    width: 100vw;
    left: 0;
    top: 0;
    background: rgba(16, 16, 16, 0.9);
    transition: all 0.2s;
  }
  .main-menu img {
    height: 3em;
    margin-left: 2em;
    padding-top: 1em;
  }
  .main-menu ul {
    justify-self: center;
    padding: 0;
    margin: 0;
    height: 100%;
  }
  .main-menu ul li {
    display: inline-block;
    font-family: 'Raleway', sans-serif;
    font-size: 1.15em;
    margin: 0 2em;
    position: relative;
    height: 100%;
    line-height: 5em;
  }
  .main-menu ul li .dropdown {
    display: none;
    opacity: 0;
    position: absolute;
    width: max-content;
    width: 200px;
    left: 50%;
    top: -300%;
    margin-left: -100px;
    transition: opacity 0.1s;
  }
  .main-menu ul li .dropdown ul.dropdown-list {
    display: grid;
    padding: 0;
    margin: 0;
    background: rgba(16, 16, 16, 0.9);
    position: relative;
    transition: all 0.3s;
  }
  .main-menu ul li .dropdown ul.dropdown-list li {
    margin: 0;
    font-size: 1em;
    padding: 0;
    width: 100%;
    color: #fff;
    text-align: center;
    height: fit-content;
    transition: all 0.3s;
    position: relative;
  }
  .main-menu ul li .dropdown ul.dropdown-list li:hover {
    background-color: #292928;
  }
  .main-menu ul li.dropdown-head {
    width: 200px;
    margin: 0;
    text-align: center;
  }
  .main-menu ul li.dropdown-head:hover .dropdown {
    display: inherit;
    opacity: 1;
    top: 100%;
  }
  .main-menu button {
    background-color: #f7f7f7;
    color: #000;
    justify-self: end;
    margin-right: 2em;
    margin-top: 1em;
    box-shadow: none;
    border: 2px solid #fff;
    transition: all 0.3s;
    max-width: inherit;
  }
  .main-menu button:hover {
    color: #fff;
    background-color: transparent;
  }
  .main-menu button:hover:before {
    opacity: 0;
  }
  .main-menu.minimized ul, .main-menu.minimized button {
    opacity: 1;
  }
}

@media (min-width: 1024px) {
  .hero-section h1 {
    font-size: 5em;
  }
  .hero-section .hero-logo {
    width: 25em;
  }
  .hero-section .linetwo h3 {
    font-size: 1.5em;
  }
  .hero-section .linetwo .text-container {
    top: 0.35em;
  }
  .hero-section .linetwo .text-container .circling-text {
    font-size: 1.5em;
  }
  .moreinfo {
    max-width: 40%;
    padding-left: 40%;
    margin: 20em auto;
  }
  .products {
    /*.product-section:hover {
        min-height: 40em;
        height: auto;
        .product-logo {
        }
    }*/
  }
  .products .product-section-outer .product-section {
    height: 13em;
  }
  .products .product-section-outer input.product-toggle:checked ~ .product-section {
    min-height: 40em;
    height: auto;
  }
  .partners {
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 2em;
  }
  .partners h2 {
    grid-column: 1 / 6;
  }
  footer {
    grid-template-columns: 2fr 1fr 1fr 1fr;
  }
  footer .footer-info {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }
}

.product-content, .features-content {
  background-color: #f1f1f1;
  color: #0f0f0f;
}

.product-message {
  text-align: center;
  background-color: #0f0f0f;
  color: #fff;
  display: grid;
  position: relative;
  padding: 3em 1em 1em 1em;
}

.product-message img {
  width: 75%;
  justify-self: center;
  padding: 1em 0;
  filter: drop-shadow(0px 0px 1px #545454);
}

.product-message .message-text {
  text-align: center;
  align-self: center;
  margin-bottom: 1em;
}

.product-message .message-text h1 {
  margin-top: 0;
}

.features-message {
  grid-template-columns: 1fr;
  grid-gap: 0;
  padding: 0 12% 4em 12%;
}

.left-info, .right-info {
  color: #0f0f0f;
  margin: 5em auto;
  width: 80%;
}

.left-info, .right-info {
  display: grid;
  grid-gap: 0 5em;
  align-items: center;
}

.left-info img, .left-info .trees, .left-info .blobs, .right-info img, .right-info .trees, .right-info .blobs {
  width: 100%;
  grid-row: 1 / 2;
}

.center-info {
  text-align: center;
  background-color: white;
  padding: 9em 10%;
  color: #0f0f0f;
}

.products-grid {
  border-radius: 2em;
  color: #0f0f0f;
  padding: 1em 2em 2em 2em;
  display: grid;
  grid-gap: 4em;
  margin: 0 auto;
}

.products-grid h2 {
  text-align: center;
}

.products-grid .product-square {
  box-shadow: 6px 6px 15px 0 rgba(0, 0, 0, 0.2), -6px -6px 15px 0 rgba(255, 255, 255, 0.8);
  border-radius: 2em;
  background-color: #fff;
  text-align: center;
  padding: 1.5em;
  display: grid;
  justify-items: center;
  transition: all 0.5s;
}

.products-grid .product-square .fflofficeblob, .products-grid .product-square .navigatorblob {
  width: 3em;
  height: 3em;
  position: relative;
  transform: rotate(0deg);
  transition: all 0.5s;
}

.products-grid .product-square .navigatorblob {
  border-radius: 50%;
}

.products-grid .product-square:hover {
  transform: scale(1.15);
}

.products-grid .product-square:hover .fflofficeblob {
  transform: rotate(45deg);
}

.products-grid .product-square:hover .navigatorblob {
  transform: scale(1.4);
}

.video-container {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
  grid-column: 1/4;
}

iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.package-price {
  width: 80%;
  margin: 2em auto;
  text-align: center;
  padding: 2em 1em;
  border-radius: 1.25em;
  border: 2px solid #cacaca;
  box-shadow: inset 0px 0px 14px 0px #ababab;
}

.features-content {
  position: relative;
}

.features-menu {
  display: none;
}

.features-detail {
  padding: 0 2em;
  margin-bottom: 8em;
}

.features-detail .detail-container {
  padding-top: 4em;
  height: fit-content;
  position: relative;
  display: inline-block;
}

.features-detail .detail-container img.detail-icon {
  width: 3.5em;
  display: block;
  margin: 0 auto;
}

.features-detail .detail-container h2 {
  text-align: center;
}

.features-detail .detail-container img {
  width: 100%;
  border-radius: 1em;
}

.features-detail .detail-container ul {
  list-style: none;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 2em;
  padding: 0;
}

.features-detail .detail-container ul h3 {
  margin-bottom: 0.2em;
}

@media (min-width: 768px) {
  .product-message {
    padding: 2em;
  }
  .product-message img {
    width: 60%;
  }
  .left-info, .right-info {
    margin: 5em auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .left-info img, .right-info img {
    grid-row: 1 / 3;
  }
  .left-info img, .left-info .trees, .left-info .blobs {
    grid-column: 2 / 3;
  }
  .center-info {
    padding: 9em 20%;
  }
  .products-grid {
    grid-template-columns: 1fr 1fr;
  }
  .products-grid h2 {
    grid-column: 1 / 3;
    text-align: center;
  }
  .features-container {
    display: flex;
  }
  .features-menu {
    margin-right: 2em;
    height: 100vh;
    width: 100%;
    position: sticky;
    top: 0;
    padding: 6em 2em;
    display: inline-block;
  }
  .features-menu .feature-button {
    margin: 0.5em auto;
    display: grid;
    grid-template-columns: 3em auto;
    align-items: center;
    grid-gap: 1em;
    padding: 0.5em 1em;
    width: 100%;
  }
  .features-menu .feature-button img {
    width: 2.75em;
  }
  .features-menu .feature-button p {
    display: inline-block;
    opacity: 0;
    margin: 0;
    transition: all 0.3s;
    width: max-content;
  }
  .features-menu .ffloffice {
    grid-gap: 0.5em;
    grid-template-columns: 1em auto;
  }
  .features-menu .ffloffice .fflofficeblob {
    width: 1em;
    height: 1em;
  }
  .features-menu .ffloffice p {
    color: #6E6E6E;
    opacity: 1;
    width: max-content;
  }
  .features-menu .menu-active p {
    opacity: 1;
    color: black;
    font-weight: bold;
  }
  .features-menu .feature-button:hover {
    background-color: #0f0f0f;
    border-radius: 3em;
  }
  .features-menu .feature-button:hover p {
    opacity: 1;
    color: white;
  }
  .features-detail {
    width: auto;
    float: right;
  }
  .features-detail .detail-container {
    padding-top: 8em;
  }
  .features-detail .detail-container img.detail-icon {
    display: none;
  }
  .features-detail .detail-container h2 {
    text-align: left;
  }
  .features-detail .detail-container ul {
    grid-template-columns: 1fr 1fr;
    grid-gap: 4em 8em;
    padding-right: 4em;
  }
}

@media (min-width: 1024px) {
  .product-message {
    margin-top: 6em;
    grid-template-columns: 1fr 1fr;
    grid-gap: 8em;
  }
  .product-message img {
    justify-self: end;
    padding: 8em 0;
  }
  .product-message .message-text {
    text-align: left;
    justify-self: left;
    padding: 8em;
    padding-left: 0;
  }
  .features-message {
    grid-template-columns: 1fr;
    grid-gap: 0;
    padding: 0 12% 4em 12%;
  }
  .left-info, .right-info {
    margin: 15em auto;
    width: 70%;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .left-info img, .right-info img {
    grid-row: 1 / 3;
  }
  .products-grid {
    padding: 1em 4em 4em 4em;
    grid-template-columns: 1fr 1fr 1fr;
  }
  .products-grid h2 {
    grid-column: 1 / 4;
  }
  .products-grid .oneistheloneliestnumber {
    grid-column: 2/3;
  }
  .video-container {
    width: 80%;
    margin: 4em auto;
  }
  .package-price {
    width: 60%;
    margin: 10em auto;
  }
}

.pricing-container {
  padding: 2em;
  margin: 5em auto;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 2em;
}

.pricing-container .pricing-column {
  box-shadow: 10px 10px 15px 0 rgba(0, 0, 0, 0.33), -6px -6px 15px 0 rgba(255, 255, 255, 0.08);
  border-radius: 2em;
  text-align: center;
  background-color: #fff;
}

.pricing-container .pricing-column img {
  width: 60%;
  padding: 2em 1em;
  text-align: center;
}

.pricing-container .pricing-column .item-pricing {
  border-bottom: 1px solid #ccc;
  border-top: 1px solid #ccc;
  padding: 2em;
}

.pricing-container .pricing-column .features-box {
  position: relative;
}

.pricing-container .pricing-column .features-box h3.more-features {
  display: inline-block;
}

.pricing-container .pricing-column .features-box input {
  display: block;
  width: 100%;
  height: 50px;
  position: absolute;
  top: -7px;
  left: -5px;
  cursor: pointer;
  opacity: 0;
  /* hide this */
  z-index: 2;
  /* and place it over the hamburger */
}

.pricing-container .pricing-column .features-box input.checkbox2 {
  display: none;
  top: 27px;
}

.pricing-container .pricing-column .features-box .feature-arrow {
  display: none;
}

.pricing-container .pricing-column .features-box .feature-arrow1 {
  font-size: 1.2em;
  display: inline-block;
  margin-left: 1em;
  transform: rotate(0deg);
  transition: all 0.4s;
}

.pricing-container .pricing-column .features-box .features {
  display: none;
  text-align: left;
  margin: 0 auto 1em auto;
  padding: 0 1.5em;
}

.pricing-container .pricing-column .features-box .features img {
  height: 3em;
  width: auto;
  display: inline;
  vertical-align: middle;
  padding-left: 0;
}

.pricing-container .pricing-column .features-box .features ul.features-list {
  display: block;
  padding-left: 0.5em;
}

.pricing-container .pricing-column .features-box .features li {
  padding: 0.5em 0;
}

.pricing-container .pricing-column .features-box .features h3 {
  display: inline;
}

.pricing-container .pricing-column .features-box input.checkbox1:checked ~ .features {
  display: inherit;
}

.pricing-container .pricing-column .features-box input.checkbox1:checked ~ .feature-arrow1 {
  transform: rotate(180deg);
}

@media (min-width: 768px) {
  .pricing-container .pricing-column img {
    width: auto;
    height: 15em;
  }
}

@media (min-width: 1025px) {
  .pricing-container {
    grid-template-columns: 1fr 1fr 1fr;
    margin: 10em auto;
  }
  .pricing-container .pricing-column .features-box h3.more-features, .pricing-container .pricing-column .features-box input.checkbox1 {
    display: none;
  }
  .pricing-container .pricing-column .features-box .feature-arrow1 {
    display: none;
  }
  .pricing-container .pricing-column .features-box .features {
    display: inherit;
    position: relative;
    padding: 0 1.75em;
  }
  .pricing-container .pricing-column .features-box .features .feature-arrow {
    display: inherit;
    position: absolute;
    right: 2em;
    top: 40px;
    font-size: 1.2em;
    transform: rotate(0deg);
    transition: all 0.4s;
  }
  .pricing-container .pricing-column .features-box .features ul.features-list {
    display: none;
  }
  .pricing-container .pricing-column .features-box .features input.checkbox2 {
    display: inherit;
  }
  .pricing-container .pricing-column .features-box .features input.checkbox2:checked ~ .features-list {
    display: inherit;
  }
  .pricing-container .pricing-column .features-box .features input.checkbox2:checked ~ .feature-arrow {
    transform: rotate(180deg);
  }
}

@media (max-width: 767px) {
  svg {
    grid-row: 1/2;
  }
}

svg {
  animation: spin 20s infinite;
  transform: rotate(0deg);
  max-width: 100%;
}

svg .hex {
  fill: #b23e36;
  animation: hexcolors 15s infinite;
}

svg .circle {
  fill: #b23e36;
  animation: hexcolors 15s infinite;
}

svg .hex2, svg .circle2 {
  animation-delay: 5s;
}

svg .hex3, svg .circle3 {
  animation-delay: 10s;
}

@keyframes hexcolors {
  0% {
    fill: #b23e36;
  }
  11% {
    fill: #4f5da3;
  }
  22% {
    fill: #d17025;
  }
  33% {
    fill: #47b4a5;
  }
  44% {
    fill: #e4a434;
  }
  55% {
    fill: #206e4a;
  }
  66% {
    fill: #52a7d3;
  }
  77% {
    fill: #6c4f9a;
  }
  88% {
    fill: #8eae3a;
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  33% {
    transform: rotate(0deg);
  }
  36% {
    transform: rotate(75deg);
  }
  65% {
    transform: rotate(75deg);
  }
  69% {
    transform: rotate(204deg);
  }
  96% {
    transform: rotate(204deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

.faq-page-content {
  width: 75%;
  margin: 0 auto;
  padding: 8em 0 15em 0;
}

.faq-page-content h1 {
  grid-column: 1 / 3;
  background-color: lightgrey;
  padding: 0.5em;
  margin: 0;
}

.faq-page-content button.question {
  max-width: none;
  max-height: none;
  background-color: #eee;
  color: #000;
  cursor: pointer;
  line-height: 2em;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  margin: 0.5em 0;
  box-shadow: 6px 6px 10px 0 rgba(0, 0, 0, 0.35), -8px -8px 15px 0 rgba(240, 240, 240, 0.1);
}

.faq-page-content button.question .arrow {
  display: none;
  float: right;
  transform: rotate(0);
  transition: 0.4s;
}

.faq-page-content .active .arrow, .faq-page-content .question:hover .arrow {
  display: inline-block;
}

.faq-page-content button.active {
  border-radius: 2em 2em 0 0;
}

.faq-page-content button.active .arrow {
  display: inline-block;
  transform: rotate(180deg);
}

.faq-page-content .answer {
  padding: 1em 1.25em 2em 1.25em;
  display: none;
  background-color: white;
  overflow: hidden;
  line-height: 1.5em;
  transition: 0.4s;
  border-radius: 0 0 2em 2em;
  box-shadow: 6px 6px 10px 0 rgba(0, 0, 0, 0.35), -8px -8px 15px 0 rgba(240, 240, 240, 0.1);
}

.contact-box {
  background-color: #fff;
  box-shadow: 6px 6px 10px 0 rgba(0, 0, 0, 0.35), -8px -8px 15px 0 rgba(240, 240, 240, 0.1);
  border-radius: 2em;
  padding: 2em 1em;
  position: relative;
}

.contact-box h3, .contact-box p {
  z-index: 1;
}

.contact-box:before {
  height: 100%;
  position: absolute;
  width: 0;
  content: '';
  opacity: 0;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-image: linear-gradient(45deg, #ff0000, #ffa400);
  transition: all 0.25s linear;
  z-index: 0;
  border-radius: 2em;
}

.contact-box:hover:before {
  opacity: 0.87;
  width: 100%;
}
