/* Common css */
.zwc-secmar {
  margin-block: 60px;
}
.zwc-secpad {
  padding-block: 60px;
}
.zwc-textyellow {
  color: #f9b21d;
}
.zwc-btnwrap * {
  margin: 5px;
}
.zwc-dgrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.zwc-dflex {
  display: flex;
}

.act-btn,
.cta-sec-btn {
  padding: 11px 30px;
}

.cta-sec-btn {
  color: #000014;
  background: transparent;
  display: inline-block;
  font-family: var(--zf-primary-semibold), sans-serif;
  border: 1px solid #000014;
  cursor: pointer;
  font-size: 15px;
  text-transform: uppercase;
  text-align: center;
}

h1,
h2 {
  font-family: var(--primaryfont-bold);
}

section h2 {
  text-align: center;
}

img {
  vertical-align: middle;
}

/* Banner */
.zwc-banner {
  background-color: #014e41;
  color: #fff;
  text-align: center;
  padding: 40px 0 60px;
}
.zwc-banner .content-wrap {
  max-width: 700px;
}
.zwc-banner h2 {
  font-family: var(--primaryfont-semibold);
  margin-bottom: 24px;
}
.zwc-banner p {
  margin-bottom: 40px;
}
.zwc-banner .cta-sec-btn {
  color: #fff;
  border-color: #fff;
}

/* Content section */
.zwc-contentsec .content-wrap {
  max-width: 1160px;
}
.zwc-contentsec h2 {
  margin-bottom: 40px;
  max-width: 500px;
  margin-inline: auto;
}
.zwc-contentsec__wrap {
  gap: 40px;
  margin-bottom: 40px;
}
.zwc-contentsec__card {
  padding: 48px 40px 0 40px;
  background-color: #efefef;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.zwc-contentsec__card img {
  width: 100%;
}
.zwc-contentsec__card--full {
  margin-bottom: 40px;
  flex-direction: row;
}
.zwc-contentsec__card--full .zwc-contentsec__cardcont {
  flex-basis: 40%;
}
.zwc-contentsec__card--full img {
  max-width: 590px;
}

/* Pricing */
.zwc-pricing {
  background-color: #fcf7ec;
}
.zwc-pricing .content-wrap {
  max-width: 1160px;
}
.zwc-pricing h2 {
  margin-bottom: 40px;
}
.zwc-pricing h4 {
  text-align: center;
  margin: 50px auto 0;
}
.zwc-pricing h4 a {
  color: #0c5044;
  border-bottom: 2px solid #0c5044;
  padding-bottom: 2px;
}
.zwc-pricing__wrap {
  gap: 20px;
}
.zwc-pricing__left {
  border-radius: 10px;
  background-color: rgba(56, 151, 135, 0.1019607843);
  padding: 45px;
}
.zwc-pricing__right {
  border-radius: 10px;
  background-color: #014e41;
  color: #fff;
  padding: 45px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.zwc-pricing__toggle {
  width: -moz-max-content;
  width: max-content;
  margin: 0 0 70px auto;
  font-size: 13px;
  align-items: center;
  gap: 15px;
}
.zwc-pricing__toggle span {
  transition: 0.3s all ease-in-out;
}
.zwc-pricing__toggle:not(.active) span:last-child {
  opacity: 0.6;
}
.zwc-pricing__toggle.active span:first-child {
  opacity: 0.6;
}
.zwc-pricing__toggle.active .zwc-pricing__togglebtn::before {
  left: 30px;
}
.zwc-pricing__togglebtn {
  width: 50px;
  height: 24px;
  background-color: #014e41;
  position: relative;
  display: inline-block;
  border-radius: 12px;
  cursor: pointer;
}
.zwc-pricing__togglebtn::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 15px;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  background-color: #f3f3f3;
  transition: 0.3s all ease-in-out;
}
.zwc-pricing__barwrap {
  margin: 0 auto 40px auto;
  max-width: 90%;
}
.zwc-pricing__baritem {
  flex-basis: 50%;
  text-align: center;
}
.zwc-pricing__bar {
  width: 60px;
  height: 250px;
  border-radius: 3px;
  background: #fff;
  margin-inline: auto;
  position: relative;
}
.zwc-pricing__barfill {
  position: absolute;
  width: 100%;
  height: 0%;
  border-radius: 3px;
  left: 0;
  bottom: 0;
}
.zwc-pricing__barfill--green {
  background-color: #389787;
}
.zwc-pricing__barfill--red {
  background-color: #e57168;
}
.zwc-pricing__bartooltip {
  background-color: #000;
  font-size: 18px;
  font-family: var(--primaryfont-bold);
  padding: 5px 10px;
  color: #fff;
  border-radius: 4px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 4%;
  z-index: 1;
}
.zwc-pricing__bartooltip::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: black transparent transparent transparent;
}
.zwc-pricing__plogo {
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 40px;
  margin-top: 15px;
  position: relative;
}
.zwc-pricing__plogo::before {
  content: "";
  background-color: #b7d5c0;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  top: -15px;
}
.zwc-pricing__plogo--dc {
  background-image: url(/sites/zweb/images/productlogos/directory.png);
  background-size: contain;
}
.zwc-pricing__plogo--jumpcloud {
  background-image: url(/sites/zweb/images/otherbrandlogos/jumpcloud.svg);
  background-size: 190px;
}
.zwc-pricing__sliderange {
  position: relative;
  padding-top: 40px;
  width: 90%;
  margin-inline: auto;
}
.zwc-pricing__range {
  -webkit-appearance: none;
  width: 100%;
  margin: 10px auto;
  border-radius: 5px;
  display: block;
  height: 8px;
  background-image: linear-gradient(#014e41, #014e41);
  background-repeat: no-repeat;
  background-size: 0 100%;
}
.zwc-pricing__range::-webkit-slider-thumb {
  height: 30px;
  width: 30px;
  cursor: pointer;
  -webkit-appearance: none;
  background: url(/sites/zweb/images/directory/compare-jumpcloud/range.svg) no-repeat;
  background-size: contain;
}
.zwc-pricing__userswrap {
  justify-content: space-between;
  font-size: 16px;
  color: #444345;
  margin: 0 -20px;
}
.zwc-pricing__userstooltip {
  position: absolute;
  border-radius: 3px;
  border: 1px solid #73ab97;
  background: #f7f7f7;
  font-size: 16px;
  font-family: var(--primaryfont-semibold);
  padding: 4px 7px;
  top: 0;
  left: 0;
  transform: translateX(-45%);
  text-wrap: nowrap;
}

/* Comparison table */
.zwc-comparisonsec h2 {
  max-width: 410px;
  margin: 0 auto 40px auto;
}
.zwc-comparisonsec__wrap {
  justify-content: center;
}
.zwc-comparisonsec__col:nth-child(1) {
  flex-basis: 340px;
}
.zwc-comparisonsec__col:nth-child(2) {
  flex-basis: 314px;
  margin-right: 30px;
}
.zwc-comparisonsec__col:nth-child(3) {
  flex-basis: 314px;
}
.zwc-comparisonsec__list {
  border-radius: 10px;
}
.zwc-comparisonsec__list li {
  padding: 17px;
  height: 55px;
}
.zwc-comparisonsec__list li:first-child {
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 80px;
}
.zwc-comparisonsec__list--title li:not(:last-child) {
  border-bottom: 1px solid #ececec;
}
.zwc-comparisonsec__list--title li.zwc-shade {
  background-color: #f1f1f1;
  font-family: var(--zf-secondary-medium);
}
.zwc-comparisonsec__list--dc {
  background-color: #014e41;
  color: #fff;
  text-align: center;
}
.zwc-comparisonsec__list--dc li:first-child {
  background-image: url(/sites/zweb/images/productlogos/directory-dark.svg);
  background-size: auto 40px;
}
.zwc-comparisonsec__list--dc li:not(:last-child) {
  border-bottom: 1px solid #3c6f67;
}
.zwc-comparisonsec__list--dc li:nth-child(6), .zwc-comparisonsec__list--dc li:nth-child(7) {
  padding-block: 0px;
}
.zwc-comparisonsec__list--dc li.zwc-shade {
  background-color: rgba(215, 234, 231, 0.1019607843);
}
.zwc-comparisonsec__list--jc {
  background-color: #d7eae7;
  text-align: center;
}
.zwc-comparisonsec__list--jc li:first-child {
  background-image: url(/sites/zweb/images/otherbrandlogos/jumpcloud.svg);
  background-size: 200px auto;
}
.zwc-comparisonsec__list--jc li:not(:last-child) {
  border-bottom: 1px solid #b2d7d0;
}
.zwc-comparisonsec__list--jc li:nth-child(6) {
  padding-block: 0px;
}
.zwc-comparisonsec__list--jc li.zwc-shade {
  background-color: rgba(1, 78, 65, 0.1019607843);
}
.zwc-comparisonsec__disclaimer {
  font-size: 14px;
  max-width: 950px;
  text-align: center;
  margin: 50px auto 0;
}

/* Mobile App section */
.zwc-appsec {
  padding-top: 80px;
  background-color: #000014;
  color: #fff;
  overflow: hidden;
}
.zwc-appsec__wrap {
  align-items: center;
  justify-content: space-around;
  margin-bottom: -5%;
}
.zwc-appsec__left h2 {
  text-align: left;
  max-width: 260px;
  margin-bottom: 30px;
}
.zwc-appsec__right {
  display: flex;
  align-items: center;
  gap: 40px;
}
.zwc-appsec__right img:first-child {
  margin-bottom: -20%;
}
.zwc-appsec__app {
  background: var(--common-elements) no-repeat;
  height: 41px;
  margin: 0 5px 5px 0;
  background-size: 800px auto;
  display: inline-block;
}
.zwc-appsec__app--ios {
  background-position: 0 -34px;
  width: 118px;
}
.zwc-appsec__app--google {
  background-position: -120px -35px;
  width: 132px;
}

/* Bottom CTA section */
.zwc-bottomcta {
  background-color: #fbf7ec;
  padding-block: 60px;
  text-align: center;
}
.zwc-bottomcta h2 {
  max-width: 550px;
  margin: 0 auto 30px;
}

/* Responsive */
@media screen and (min-width: 1200px) {
  .act-btn,
  .cta-sec-btn {
    font-size: 20px;
  }
  .zwc__secmar {
    margin-block: 100px;
  }
  .zwc__secpad {
    padding-block: 100px;
  }
  section h1 {
    font-size: 80px;
    letter-spacing: -1.6px;
    line-height: 1;
    margin-bottom: 25px;
  }
  section h2 {
    font-size: 48px;
  }
  .zwc-banner {
    padding: 120px 0 130px 0;
  }
  .zwc-banner .content-wrap {
    max-width: 885px;
  }
  .zwc-banner h2 {
    font-size: 32px;
  }
  .zwc-banner p {
    font-size: 20px;
  }
  .zwc-contentsec h2,
  .zwc-pricing h2,
  .zwc-comparisonsec h2 {
    margin-bottom: 60px;
  }
  .zwc-contentsec h2 {
    max-width: 900px;
  }
  .zwc-contentsec__card {
    overflow: hidden;
  }
  .zwc-contentsec__card img {
    transform: translateY(40px);
    transition: 0.8s all ease-in-out;
    opacity: 0;
  }
  .zwc-contentsec__card.zwe-om img {
    transform: translate(0px);
    opacity: 1;
  }
  .zwc-pricing__right h3 {
    font-size: 50px;
  }
  .zwc-comparisonsec h2 {
    max-width: 710px;
  }
  .zwc-appsec__left h2 {
    font-size: 40px;
    max-width: 370px;
  }
  .zwc-appsec__right img {
    transform: translateY(40px);
    transition: 0.8s all ease-in-out;
    opacity: 0;
  }
  .zwc-appsec__right img:last-child {
    transition-delay: 0.5s;
  }
  .zwc-appsec .middle-animated img {
    transform: translate(0px);
    opacity: 1;
  }
  .zwc-bottomcta {
    padding-block: 100px;
  }
  .zwc-bottomcta h2 {
    max-width: 930px;
  }
}
@media (max-width: 991px) {
  .zwc-dgrid {
    grid-template-columns: 1fr;
  }
  .zwc-banner .content-wrap {
    max-width: 580px;
  }
  .zwc-contentsec__card {
    max-width: 600px;
    margin-inline: auto;
    padding: 30px 30px 0;
  }
  .zwc-contentsec__card--full {
    flex-direction: column;
  }
  .zwc-pricing h4 {
    max-width: 340px;
  }
  .zwc-pricing__wrap > * {
    max-width: 600px;
    margin-inline: auto;
    width: 100%;
  }
  .zwc-pricing__left {
    padding: 45px 20px;
  }
  .zwc-pricing__barwrap {
    max-width: 100%;
  }
  .zwc-pricing__plogo {
    background-size: 100px auto;
  }
  .zwc-comparisonsec__container {
    overflow-x: auto;
  }
  .zwc-comparisonsec__wrap {
    width: 850px;
  }
  .zwc-appsec {
    text-align: center;
  }
  .zwc-appsec h2 {
    text-align: center;
  }
  .zwc-appsec__wrap {
    flex-direction: column;
    gap: 50px;
  }
  .zwc-appsec__right {
    max-width: 20%;
    margin: auto;
    justify-content: center;
    gap: 20px;
  }
}
.zw-product-header {
  background-color: #014e41;
}