/* Getstarted review styles, scoped to the homepage section.
 * --review-rem preserves getstarted's 15-16px scale without changing the
 * homepage's 16-20px root font size. Images are shared with getstarted.
 */
.homeReviewsSection {
  --review-rem: clamp(15px, 0.0588235294vw + 14.8235294118px, 16px);
  --font-family: "MessinaSans-Light";
  --font-family1: "MessinaSans-Light";
  --font-family2: "PP Eiko Italic Light";
  --radius: 20px;
  --btnRadius: 40px;
  --color1: #040620;
  --color2: #f27300;
  --black: #050505;
  --section-space-x: clamp(calc(1.5 * var(--review-rem)), 4vw, calc(3 * var(--review-rem)));
  --section-space-y: clamp(calc(2.5 * var(--review-rem)), 4vw, calc(4 * var(--review-rem)));
  --section-max-width: 100%;
  --container-max-width: 100%;
  font-family: var(--font-family);
  font-size: var(--review-rem);
  line-height: 1.3;
}

.homeReviewsSection p {
  margin-top: calc(1 * var(--review-rem));
  opacity: 0.8;
}

.homeReviewsSection h2 {
  font-size: clamp(26.23509375px, 20.0890391447px + 0.0128042804 * 100vw, 45.6976px);
}

.homeReviewsSection .outlinedBtn,
.homeReviewsSection .filledBtn {
  margin-top:calc(1.413 * var(--review-rem));
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:4px;
  text-align:center;
  border-radius:var(--btnRadius);
  white-space:nowrap;
  line-height:1;
  overflow:hidden;
  -webkit-transition:background-color .5s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-transform .5s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-box-shadow .5s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition:background-color .5s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-transform .5s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-box-shadow .5s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition:transform .5s cubic-bezier(0.165, 0.84, 0.44, 1),background-color .5s cubic-bezier(0.165, 0.84, 0.44, 1),box-shadow .5s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition:transform .5s cubic-bezier(0.165, 0.84, 0.44, 1),background-color .5s cubic-bezier(0.165, 0.84, 0.44, 1),box-shadow .5s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-transform .5s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-box-shadow .5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.homeReviewsSection .filledBtn {
  color:var(--white);
  font-weight:600;
  -webkit-filter:brightness(100%);
  filter:brightness(100%);
  background-color:var(--color1);
  background:var(--gradient1);
  border:1px solid var(--color1);
  -webkit-box-shadow:inset 0 1px 1px hsla(0,0%,100%,.2);
  box-shadow:inset 0 1px 1px hsla(0,0%,100%,.2);
}

.homeReviewsSection .filledBtn:hover {
  -webkit-filter:brightness(110%);
  filter:brightness(110%);
  border:1px solid rgba(0,0,0,0);
  -webkit-box-shadow:inset 0 1px 1px hsla(0,0%,100%,.2);
  box-shadow:inset 0 1px 1px hsla(0,0%,100%,.2);
  -webkit-transition:background-color .3s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-filter .5s ease-in,-webkit-box-shadow .3s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition:background-color .3s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-filter .5s ease-in,-webkit-box-shadow .3s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition:filter .5s ease-in,background-color .3s cubic-bezier(0.165, 0.84, 0.44, 1),box-shadow .3s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition:filter .5s ease-in,background-color .3s cubic-bezier(0.165, 0.84, 0.44, 1),box-shadow .3s cubic-bezier(0.165, 0.84, 0.44, 1),-webkit-filter .5s ease-in,-webkit-box-shadow .3s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.homeReviewsSection .filledBtn:active {
  -webkit-filter:brightness(105%);
  filter:brightness(105%);
}

.homeReviewsSection .filledBtn.secondary {
  color:var(--white);
  background-color:var(--color2);
  border:1px solid var(--color2);
}

.homeReviewsSection .outlinedBtn {
  font-weight:500;
  color:var(--color1);
  background-color:rgba(0,0,0,0);
  border:1px solid var(--color1);
}

.homeReviewsSection .outlinedBtn:hover {
  opacity:.8;
}

.homeReviewsSection .outlinedBtn.white {
  color:var(--white);
  border:1px solid var(--white);
}

.homeReviewsSection .xlBtn {
  height:clamp(53px,6.5vw,56px);
  font-size:calc(1 * var(--review-rem));
  padding:0 24px;
}

.homeReviewsSection .reviewGridClip {
  -webkit-transition:max-height .5s ease;
  transition:max-height .5s ease;
}

.homeReviewsSection .reviewReveal {
  gap:10px;
}

.homeReviewsSection.reviewsPartiallyExpanded .reviewGridClip {
  max-height:205vh;
}

.homeReviewsSection.reviewsPartiallyExpanded .reviewReveal {
  background:-webkit-gradient(linear, left top, left bottom, from(rgba(4, 6, 32, 0)), color-stop(48%, rgba(4, 6, 32, 0.9)), to(var(--color1)));
  background:linear-gradient(180deg, rgba(4, 6, 32, 0) 0%, rgba(4, 6, 32, 0.9) 48%, var(--color1) 100%);
}

.homeReviewsSection.reviewsPartiallyExpanded .reviewRevealLess {
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
}

.homeReviewsSection.reviewsExpanded .reviewReveal {
  background:none;
}

.homeReviewsSection.reviewsExpanded .reviewRevealLess {
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
}

.homeReviewsSection.reviewsExpanded .reviewRevealMore {
  display:none;
}

.homeReviewsSection .reviewRevealLess {
  display:none;
}

@media(max-width: 767px) {
.homeReviewsSection.reviewsPartiallyExpanded .reviewGridClip {
  max-height:170vh;
}

.homeReviewsSection .reviewReveal {
  gap:10px;
}

}

.homeReviewsSection {
  padding-top:var(--section-space-y);
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  text-align:center;
  overflow:unset;
  color:var(--white);
  background:var(--color1);
  overflow:hidden;
}

.homeReviewsSection::before,
.homeReviewsSection::after {
  content:"";
  position:absolute;
  top:0;
  z-index:4;
  width:50px;
  height:100%;
  background:inherit;
  pointer-events:none;
  display:none;
}

@media(min-width: 1024px) {
.homeReviewsSection::before,
.homeReviewsSection::after {
  width:clamp(var(--section-space-x),(clamp(100%,100%,var(--container-max-width)) - var(--section-max-width))/2,100%);
  display:block;
}

}

.homeReviewsSection::before {
  left:0;
  background:-webkit-gradient(linear, left top, right top, from(var(--color1)), to(rgba(4, 6, 32, 0)));
  background:linear-gradient(90deg, var(--color1) 0%, rgba(4, 6, 32, 0) 100%);
}

.homeReviewsSection::after {
  content:"";
  right:0;
  background:-webkit-gradient(linear, right top, left top, color-stop(5%, var(--color1)), to(rgba(4, 6, 32, 0)));
  background:linear-gradient(-90deg, var(--color1) 5%, rgba(4, 6, 32, 0) 100%);
}

.homeReviewsSection .bgText {
  position:absolute;
  left:50%;
  top:0;
  z-index:1;
  -webkit-transform:translateX(-50%);
  transform:translateX(-50%);
  line-height:1;
  margin:0 auto;
  padding:0 .75vw;
  color:inherit;
  font-family:var(--font-family1);
  font-size:10vw;
  font-weight:800;
  letter-spacing:-0.3vw;
  text-transform:uppercase;
  white-space:nowrap;
  opacity:.045;
}

.homeReviewsSection .heading {
  font-family:var(--font-family1);
  font-weight:200;
}

.homeReviewsSection .titleDiv {
  width:100%;
  height:auto;
  clear:both;
  margin:0 auto;
  padding-left:clamp(var(--section-space-x),(clamp(100%,100%,var(--container-max-width)) - var(--section-max-width))/2,100%);
  padding-right:clamp(var(--section-space-x),(clamp(100%,100%,var(--container-max-width)) - var(--section-max-width))/2,100%);
  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;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  color:inherit;
  padding-bottom:calc(2.83 * var(--review-rem));
  text-align:center;
}

.homeReviewsSection .titleDiv .logoDiv {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  gap:10px;
  margin-bottom:calc(1.413 * var(--review-rem));
}

@media(min-width: 1024px) {
.homeReviewsSection .titleDiv .logoDiv {
  gap:calc(2 * var(--review-rem));
}

}

.homeReviewsSection .titleDiv .logo {
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
}

.homeReviewsSection .titleDiv .logo img {
  width:auto;
  max-height:30px;
}

.homeReviewsSection .titleDiv .title {
  margin:0;
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
  gap:10px;
  color:inherit;
  letter-spacing:0;
  font-family:var(--font-family2);
  font-weight:400;
}

.homeReviewsSection .titleDiv .title::after {
  height:1px;
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
  background:var(--borderGray);
}

.homeReviewsSection .titleDiv p {
  margin:0;
  color:inherit;
  opacity:.8;
}

@media(min-width: 1024px) {
.homeReviewsSection .titleDiv p {
  font-size:clamp(17.25px,16.1289473684px + 0.0023355263*100vw,20.8px);
}

}

.homeReviewsSection .reviewGrid {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:start;
  -ms-flex-align:start;
  align-items:flex-start;
  gap:clamp(calc(.75 * var(--review-rem)),2vw,calc(1 * var(--review-rem)));
  padding-left:10px;
  padding-right:10px;
}

@media(min-width: 480px) {
.homeReviewsSection .reviewGrid {
  width:100%;
  height:auto;
  clear:both;
  margin:0 auto;
  padding-left:clamp(var(--section-space-x),(clamp(100%,100%,var(--container-max-width)) - var(--section-max-width))/2,100%);
  padding-right:clamp(var(--section-space-x),(clamp(100%,100%,var(--container-max-width)) - var(--section-max-width))/2,100%);
}

}

.homeReviewsSection .reviewMasonryColumn {
  -webkit-box-flex:1;
  -ms-flex:1 1 0px;
  flex:1 1 0;
  min-width:0;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  gap:clamp(calc(.75 * var(--review-rem)),2vw,calc(1 * var(--review-rem)));
}

.homeReviewsSection .review {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  width:100%;
  max-width:400px;
  min-width:100%;
  text-align:left;
  margin:0 !important;
  color:var(--black);
  background:var(--white);
  border:1px solid rgba(129,129,129,.1215686275);
  border-radius:var(--radius);
  padding:calc(.7075 * var(--review-rem));
  -webkit-transition:var(--transition1);
  transition:var(--transition1);
}

.homeReviewsSection .review:hover {
  top:0;
}

.homeReviewsSection .review:nth-child(1) .profile .avatar::before {
  background-color:#ff4500;
}

.homeReviewsSection .review:nth-child(2) .profile .avatar::before {
  background-color:#435761;
}

.homeReviewsSection .review:nth-child(3) .profile .avatar::before {
  background-color:#bf360c;
}

.homeReviewsSection .review:nth-child(4) .profile .avatar::before {
  background-color:#3583c5;
}

.homeReviewsSection .review:nth-child(5) .profile .avatar::before {
  background-color:#9c40ec;
}

.homeReviewsSection .review:nth-child(6) .profile .avatar::before {
  background-color:purple;
}

.homeReviewsSection .review:nth-child(7) .profile .avatar::before {
  background-color:#3f9b28;
}

.homeReviewsSection .review:nth-child(8) .profile .avatar::before {
  background-color:#008577;
}

.homeReviewsSection .review:nth-child(9) .profile .avatar::before {
  background-color:#0d4638;
}

.homeReviewsSection .review .content {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
  width:100%;
  height:100%;
  display:flex;
  padding:0;
  gap:0 10px;
}

.homeReviewsSection .review .content .quote {
  display:none;
  font-size:clamp(19.8375px,17.5630263158px + 0.0047384868*100vw,27.04px);
  color:var(--textGray);
}

.homeReviewsSection .review .content .caption {
  margin:0;
  font-size:18px;
  font-weight:700;
  margin-bottom:5px;
}

.homeReviewsSection .review .content p {
  -webkit-box-ordinal-group:5;
  -ms-flex-order:4;
  order:4;
  font-size:calc(.733 * var(--review-rem));
  font-weight:700;
  margin-bottom:calc(2.83 * var(--review-rem));
  line-height:1.5;
}

.homeReviewsSection .review .profile {
  -webkit-box-ordinal-group:4;
  -ms-flex-order:3;
  order:3;
  margin-top:auto;
  width:-webkit-max-content;
  width:-moz-max-content;
  width:max-content;
  justify-self:flex-end;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  padding-left:35px;
  text-align:left;
  margin-top:10px;
}

.homeReviewsSection .review .profile .avatar {
  position:absolute;
  top:50%;
  left:0;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  margin:0 auto;
  width:30px;
  height:30px;
  border:3px solid rgba(129,129,129,.1215686275);
  border-radius:100%;
  margin-bottom:10px;
  overflow:hidden;
}

.homeReviewsSection .review .profile .avatar::before {
  content:attr(data-avatar);
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  display:none;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  font-size:calc(.733 * var(--review-rem));
  font-weight:500;
  border-radius:inherit;
  color:var(--white);
  background-color:#ff4500;
}

.homeReviewsSection .review .profile .avatar img[src=""] {
  display:none;
}

.homeReviewsSection .review .profile .avatar:has(img[src=""])::before {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
}

.homeReviewsSection .review .profile .name {
  margin:0;
  color:var(--black);
  display:inline-block;
  font-size:calc(.733 * var(--review-rem));
  font-weight:600;
  margin-bottom:0;
}

.homeReviewsSection .review .profile .subText {
  margin-top:0;
  margin-bottom:0 !important;
  display:inline-block;
  font-size:calc(.667 * var(--review-rem));
  opacity:.6;
  line-height:1.1;
}

.homeReviewsSection .review .logo {
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  width:80px;
  -webkit-box-ordinal-group:2;
  -ms-flex-order:1;
  order:1;
}

.homeReviewsSection .review .rating {
  -webkit-box-ordinal-group:3;
  -ms-flex-order:2;
  order:2;
  display:-webkit-inline-box;
  display:-ms-inline-flexbox;
  display:inline-flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  font-size:calc(.878 * var(--review-rem));
  font-weight:500;
}

.homeReviewsSection .review .rating img {
  width:70px;
}

.homeReviewsSection .review .rating span {
  opacity:.5;
}

.homeReviewsSection {
  position: relative;
}

.homeReviewsSection .reviewGridClip {
  position: relative;
  max-height: 100vh;
  overflow: hidden;
  transition: max-height 0.5s ease;
}

.homeReviewsSection.reviewsRevealStep1 .reviewGridClip {
  max-height: 180vh;
}

.homeReviewsSection.reviewsRevealStep2 .reviewGridClip {
  max-height: 275vh;
}

.homeReviewsSection.reviewsRevealStep3 .reviewGridClip {
  max-height: 370vh;
}

.homeReviewsSection.reviewsExpanded .reviewGridClip {
  max-height: none;
  overflow: visible;
}

.homeReviewsSection .reviewGrid {
  display: flex;
  align-items: flex-start;
  gap: clamp(calc(0.75 * var(--review-rem)), 2vw, calc(1 * var(--review-rem)));
  padding-bottom: var(--section-space-y);
}

.homeReviewsSection .reviewMasonryColumn {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(calc(0.75 * var(--review-rem)), 2vw, calc(1 * var(--review-rem)));
}

.homeReviewsSection .reviewGrid .review {
  box-sizing: border-box;
  display: flex;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0 !important;
  vertical-align: top;
}

.homeReviewsSection .reviewGrid .review * {
  box-sizing: border-box;
}

.homeReviewsSection .reviewGrid .review .content {
  height: auto;
}

.homeReviewsSection .reviewGrid .review .profile {
  max-width: 100%;
}

.homeReviewsSection .reviewGrid .review .profile .name,
.homeReviewsSection .reviewGrid .review .profile .subText,
.homeReviewsSection .reviewGrid .review .content p {
  overflow-wrap: anywhere;
}

.homeReviewsSection .reviewReveal {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  min-height: clamp(140px, 18vh, 220px);
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 10px;
  padding: 0 var(--section-space-x) clamp(calc(1.5 * var(--review-rem)), 4vw, calc(3 * var(--review-rem)));
  background: linear-gradient(
    180deg,
    rgba(4, 6, 32, 0) 0%,
    rgba(4, 6, 32, 0.86) 46%,
    var(--color1) 100%
  );
  pointer-events: none;
}

.homeReviewsSection.reviewsRevealStep1 .reviewReveal,
.homeReviewsSection.reviewsRevealStep2 .reviewReveal,
.homeReviewsSection.reviewsRevealStep3 .reviewReveal,
.homeReviewsSection.reviewsExpanded .reviewReveal {
  background: linear-gradient(
    180deg,
    rgba(4, 6, 32, 0) 0%,
    rgba(4, 6, 32, 0.9) 48%,
    var(--color1) 100%
  );
}

.homeReviewsSection.reviewsExpanded .reviewReveal {
  position: static;
  min-height: auto;
  padding-top: calc(1.413 * var(--review-rem));
  background: none;
}

.homeReviewsSection .reviewRevealBtn {
  pointer-events: auto;
  min-height: 48px;
  padding: 0 24px;
  line-height: 1;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.22);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.homeReviewsSection .reviewRevealBtn:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.28);
}

.homeReviewsSection .reviewRevealLess {
  display: none;
}

.homeReviewsSection.reviewsRevealStep1 .reviewRevealLess,
.homeReviewsSection.reviewsRevealStep2 .reviewRevealLess,
.homeReviewsSection.reviewsRevealStep3 .reviewRevealLess,
.homeReviewsSection.reviewsExpanded .reviewRevealLess {
  display: inline-flex;
}

.homeReviewsSection.reviewsExpanded .reviewRevealMore {
  display: none;
}

@media (max-width: 767px) {
.homeReviewsSection.reviewsRevealStep1 .reviewGridClip {
  max-height: 155vh;
}

.homeReviewsSection.reviewsRevealStep2 .reviewGridClip {
  max-height: 235vh;
}

.homeReviewsSection.reviewsRevealStep3 .reviewGridClip {
  max-height: 315vh;
}

.homeReviewsSection .reviewReveal {
  gap: 10px;
}

}

@media (min-width: 768px) {
.homeReviewsSection .reviewGrid {
  display: flex;
}

}

@media (min-width: 1024px) {
.homeReviewsSection .reviewGrid {
  display: flex;
}

}

@media (min-width: 1200px) {
.homeReviewsSection .reviewGrid {
  display: flex;
}

}

