.gh-hex {
  position: absolute;
  display: block;
  aspect-ratio: 0.8886904762;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 306.6 344'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z' fill='none' stroke='%23cfb976' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center/contain no-repeat;
  pointer-events: none;
}
.gh-hex--hero-a {
  width: 560px;
  right: -140px;
  top: 40px;
  opacity: 0.22;
}
.gh-hex--hero-b {
  width: 150px;
  left: 44%;
  bottom: 90px;
  opacity: 0.3;
}
.gh-hex--cta {
  width: 420px;
  right: -90px;
  bottom: -160px;
  opacity: 0.25;
}

.gh-bleed {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  position: relative;
}

.gh-gradient-text {
  background: linear-gradient(100deg, #ff7ba0 10%, #cfb976 90%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gh-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.35rem 0.9rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: #fff;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  backdrop-filter: blur(6px);
}
.gh-pill .material-symbols-outlined {
  font-size: 1rem;
  color: #cfb976;
}

.btn.gh-btn-glow {
  box-shadow: 0 10px 30px rgba(255, 123, 160, 0.35);
}
.btn.gh-btn-glow:hover {
  box-shadow: 0 14px 34px rgba(255, 123, 160, 0.45);
}

.btn.gh-btn-ghost {
  background: rgba(255, 255, 255, 0.08);
  border: 2px solid rgba(255, 255, 255, 0.35);
  color: #fff !important;
}
.btn.gh-btn-ghost:hover {
  background: #fff;
  color: #3a4654 !important;
  border-color: #fff;
}

.gh-hero {
  margin-top: -1.5rem;
  padding: clamp(3rem, 7vw, 6rem) 0 0;
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.38) 0%, rgba(255, 123, 160, 0.133) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.22) 0%, rgba(207, 185, 118, 0.066) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
  color: #d8dee6;
  overflow: hidden;
}
.gh-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/images/website/bg.svg") repeat;
  opacity: 0.05;
  pointer-events: none;
}
.gh-hero .container {
  position: relative;
}
.gh-hero h1 {
  color: #fff;
  font-size: clamp(2.3rem, 4.6vw, 3.6rem);
  line-height: 1.08;
  margin: 1.1rem 0 1.2rem;
  padding: 0;
}

.gh-lead {
  font-size: clamp(1.05rem, 1.6vw, 1.2rem);
  color: #c9d1db;
  max-width: 34rem;
}

.gh-hero-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.4rem;
  list-style: none;
  padding: 0;
  margin: 1.6rem 0 0;
  font-size: 0.92rem;
  color: #c9d1db;
}
.gh-hero-checks li {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}
.gh-hero-checks .material-symbols-outlined {
  font-size: 1.1rem;
  color: #cfb976;
  font-variation-settings: "FILL" 1;
}

.gh-stage {
  position: relative;
  padding: 2rem 0 4.5rem 3rem;
  perspective: 1800px;
}

.gh-stage-browser {
  transform: rotateY(-9deg) rotateX(4deg) rotateZ(0.5deg);
  transform-origin: left center;
  box-shadow: 0 40px 90px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.06);
}

.gh-stage-phone {
  position: absolute;
  left: -1rem;
  bottom: 0;
  width: 30%;
  max-width: 210px;
}

.gh-phone.gh-stage-phone {
  aspect-ratio: auto;
}
.gh-phone.gh-stage-phone .gh-phone-screen {
  height: auto;
}

.gh-stage-toast {
  position: absolute;
  top: 1.75rem;
  right: -3rem;
}

.gh-stage-stat {
  position: absolute;
  right: 6%;
  bottom: 1.5rem;
}

.gh-stage-ai {
  position: absolute;
  top: -1.25rem;
  left: 0;
  z-index: 2;
}

.gh-ai {
  display: flex;
  gap: 0.8rem;
  align-items: center;
  width: max-content;
  padding: 0.85rem 1.1rem 0.85rem 1rem;
  border-radius: 16px;
  border: 2px solid transparent;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(110deg, #ff7ba0, #cfb976) border-box;
  box-shadow: 0 22px 50px rgba(0, 0, 0, 0.35), 0 0 40px rgba(255, 123, 160, 0.35);
  line-height: 1.3;
}
.gh-ai strong {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  color: #3a4654;
  font-size: 1.05rem;
}
.gh-ai span {
  display: block;
  color: #5f5f5f;
  font-size: 0.85rem;
  white-space: nowrap;
}
.gh-ai small {
  display: block;
  color: #97a0ab;
  font-size: 0.75rem;
  margin-top: 0.15rem;
}

.gh-ai-icon {
  flex: none;
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
}
.gh-ai-icon .material-symbols-outlined {
  font-size: 2.9rem;
  font-variation-settings: "FILL" 1, "wght" 400;
  background: linear-gradient(135deg, #ff7ba0 20%, #cfb976 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gh-ai .gh-ai-q {
  display: grid;
}
.gh-ai .gh-ai-q > span {
  grid-area: 1/1;
  animation: gh-ai-q 10s ease-in-out infinite;
}
.gh-ai .gh-ai-q > span + span {
  animation-delay: -5s;
}

@keyframes gh-ai-q {
  0%, 44% {
    opacity: 1;
    transform: none;
  }
  50%, 94% {
    opacity: 0;
    transform: translateY(-4px);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .gh-ai .gh-ai-q > span {
    animation: none;
  }

  .gh-ai .gh-ai-q > span + span {
    visibility: hidden;
  }
}
.gh-ai .gh-ai-badge {
  display: inline-block;
  padding: 0.05rem 0.5rem;
  border-radius: 999px;
  background: rgba(255, 123, 160, 0.14);
  color: #eb0042;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.gh-browser {
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 30px 70px rgba(58, 70, 84, 0.25), 0 0 0 1px rgba(58, 70, 84, 0.06);
}
.gh-browser img {
  display: block;
  width: 100%;
  height: auto;
}

.gh-browser-bar {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 30px;
  padding: 0 12px;
  background: #eef0f3;
}
.gh-browser-bar i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ff6159;
}
.gh-browser-bar i:nth-child(2) {
  background: #ffbd2e;
}
.gh-browser-bar i:nth-child(3) {
  background: #28c941;
}
.gh-browser-bar span {
  margin-left: 12px;
  padding: 1px 12px;
  border-radius: 6px;
  background: #fff;
  font-size: 11px;
  color: #8a94a1;
}

.gh-phone {
  aspect-ratio: 9/18.5;
  padding: 7px;
  border-radius: 30px;
  background: #1b222b;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.35), inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.gh-phone-screen {
  width: 100%;
  height: 100%;
  border-radius: 24px;
  overflow: hidden;
  background: #fff;
}
.gh-phone-screen img {
  width: 100%;
  height: auto;
  display: block;
}

.gh-toast {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  width: 300px;
  padding: 0.9rem 1rem;
  border-radius: 14px;
  background: #fff;
  border-left: 4px solid #3fa58a;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.3);
  line-height: 1.35;
}
.gh-toast strong {
  display: block;
  color: #3a4654;
  font-size: 0.95rem;
}
.gh-toast span {
  display: block;
  color: #5f5f5f;
  font-size: 0.85rem;
}
.gh-toast small {
  display: block;
  color: #97a0ab;
  font-size: 0.75rem;
  margin-top: 0.2rem;
}

.gh-toast-icon {
  flex: none;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: #3fa58a;
}
.gh-toast-icon .material-symbols-outlined {
  font-size: 2.6rem;
  font-variation-settings: "FILL" 1, "wght" 400;
}

.gh-toast .gh-toast-icon .material-symbols-outlined {
  color: #3fa58a;
}

.gh-stat {
  width: 190px;
  padding: 0.85rem 1rem 0.6rem;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.3);
  line-height: 1.2;
}
.gh-stat small {
  display: block;
  color: #97a0ab;
  font-size: 0.75rem;
}
.gh-stat strong {
  font-size: 1.35rem;
  color: #3a4654;
}
.gh-stat svg {
  display: block;
  width: 100%;
  height: 36px;
  margin-top: 0.3rem;
}
.gh-stat polyline {
  fill: none;
  stroke: #ff7ba0;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.gh-stat-up {
  display: inline-flex;
  align-items: center;
  margin-left: 0.35rem;
  padding: 0 0.4rem;
  border-radius: 999px;
  background: rgba(63, 165, 138, 0.12);
  color: #2e8a71;
  font-size: 0.75rem;
  font-weight: 600;
}
.gh-stat-up .material-symbols-outlined {
  font-size: 0.95rem;
}

@keyframes gh-float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}
.gh-float {
  animation: gh-float 6s ease-in-out infinite;
}

.gh-float--late {
  animation-delay: -2s;
}

.gh-float--slow {
  animation-duration: 8s;
  animation-delay: -4s;
}

.gh-salons {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem 1rem;
  margin: clamp(2rem, 5vw, 3.5rem) 0 0;
  padding: 1.3rem 0 1.6rem;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.55);
}

.gh-salons-label {
  margin-right: 0.5rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 0.75rem;
  color: #cfb976;
}

.gh-salons-item {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
}
.gh-salons-item + .gh-salons-item::before {
  content: "";
  width: 7px;
  aspect-ratio: 0.8886904762;
  background: #cfb976;
  opacity: 0.6;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  border-radius: 0;
}

.gh-timeline {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: step;
}
.gh-timeline::before {
  content: "";
  position: absolute;
  top: 37px;
  left: 10%;
  right: 10%;
  height: 3px;
  border-radius: 3px;
  background: linear-gradient(90deg, #ff7ba0, #cfb976);
  opacity: 0.5;
}
.gh-timeline li {
  position: relative;
  text-align: center;
  counter-increment: step;
}
.gh-timeline strong {
  display: block;
  color: #3a4654;
  margin-top: 1rem;
  line-height: 1.3;
}
.gh-timeline p {
  font-size: 0.92rem;
  margin: 0.4rem 0 0;
  line-height: 1.55;
}

.gh-timeline-dot {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 66px;
  aspect-ratio: 0.8886904762;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath fill='%23fff' d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  color: #3a4654;
  filter: drop-shadow(0 8px 14px rgba(58, 70, 84, 0.14));
}
.gh-timeline-dot .material-symbols-outlined {
  font-size: 1.7rem;
}
.gh-timeline-dot::after {
  content: counter(step);
  position: absolute;
  top: -2px;
  right: -8px;
  display: grid;
  place-items: center;
  width: 24px;
  aspect-ratio: 0.8886904762;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  border-radius: 0;
  background: linear-gradient(135deg, #ff7ba0, #cfb976);
  color: #29323c;
  font-size: 0.75rem;
  font-weight: 700;
}

@media (max-width: 991.98px) {
  .gh-timeline {
    grid-template-columns: 1fr;
    max-width: 420px;
    margin: 0 auto;
  }
  .gh-timeline::before {
    top: 10px;
    bottom: 10px;
    left: 32px;
    right: auto;
    width: 3px;
    height: auto;
    background: linear-gradient(180deg, #ff7ba0, #cfb976);
  }
  .gh-timeline li {
    display: grid;
    grid-template-columns: 66px 1fr;
    column-gap: 1rem;
    text-align: left;
  }
  .gh-timeline .gh-timeline-dot {
    grid-row: span 2;
  }
  .gh-timeline strong {
    margin-top: 0.6rem;
  }
}
.gh-showcase {
  padding: clamp(1rem, 4vw, 3rem) 0;
}

.gh-show-row {
  padding: clamp(2rem, 5vw, 4rem) 0;
}
.gh-show-row h2 {
  font-size: clamp(1.6rem, 3vw, 2.3rem);
}

.gh-checks {
  list-style: none;
  padding: 0;
  margin: 1.2rem 0 1.5rem;
}
.gh-checks li {
  display: flex;
  gap: 0.6rem;
  align-items: flex-start;
  margin-bottom: 0.55rem;
  color: #3a4654;
  font-weight: 500;
}
.gh-checks .material-symbols-outlined {
  flex: none;
  display: grid;
  place-items: center;
  width: 24px;
  aspect-ratio: 0.8886904762;
  margin-top: 0.1rem;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  border-radius: 0;
  background: rgba(255, 123, 160, 0.18);
  color: #fb0046;
  font-size: 1rem;
  font-weight: 700;
}

.gh-more {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-weight: 600;
  color: #3a4654;
  text-decoration: none;
  border-bottom: 2px solid rgba(255, 123, 160, 0.6);
  padding-bottom: 0.1rem;
}
.gh-more .material-symbols-outlined {
  font-size: 1.1rem;
  transition: transform 0.2s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-more:hover {
  color: #3a4654;
  border-bottom-color: #ff7ba0;
}
.gh-more:hover .material-symbols-outlined {
  transform: translateX(4px);
}
.gh-more--light {
  color: #fff;
  border-bottom-color: rgba(207, 185, 118, 0.7);
}
.gh-more--light:hover {
  color: #fff;
  border-bottom-color: #cfb976;
}

.gh-visual {
  position: relative;
  isolation: isolate;
  padding: 1.5rem;
  perspective: 1600px;
}
.gh-visual::before {
  content: "";
  position: absolute;
  inset: 8% 6%;
  border-radius: 40px;
  filter: blur(50px);
  opacity: 0.45;
  z-index: -1;
}
.gh-visual--pink::before {
  background: linear-gradient(135deg, #ff7ba0, rgba(207, 185, 118, 0.6));
}
.gh-visual--gold::before {
  background: linear-gradient(135deg, #cfb976, rgba(255, 123, 160, 0.6));
}
.gh-visual::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 140px;
  aspect-ratio: 0.8886904762;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 306.6 344'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z' fill='none' stroke='%23cfb976' stroke-width='1.5' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center/contain no-repeat;
  opacity: 0.7;
  top: -1.5rem;
  left: -1rem;
}

.flex-lg-row-reverse .gh-visual::after,
.flex-lg-row-reverse .gh-visual-hex {
  top: auto;
  left: auto;
  right: -1rem;
  bottom: -1.5rem;
}

.gh-visual:has(> .gh-visual-hex)::after {
  content: none;
}

svg.gh-visual-hex {
  position: absolute;
  z-index: -1;
  width: 140px;
  top: -1.5rem;
  left: -1rem;
}
svg.gh-visual-hex .gh-hex-line {
  stroke-opacity: 0.7;
  stroke-width: 3.2;
}
svg.gh-visual-hex .gh-hex-glint {
  stroke-width: 5;
}

.gh-reveal-ready [data-reveal] svg.gh-visual-hex .gh-hex-line {
  animation: none;
  transition: stroke-dashoffset 2s cubic-bezier(0.22, 1, 0.36, 1) 0.3s;
}

.gh-reveal-ready [data-reveal]:not(.is-visible) svg.gh-visual-hex .gh-hex-line {
  stroke-dashoffset: 1;
}

.gh-tilt {
  transform: rotateY(-6deg) rotateX(3deg);
  transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.6s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-tilt--left {
  transform: rotateY(6deg) rotateX(3deg);
}
.gh-tilt:hover {
  transform: rotateY(0) rotateX(0) translateY(-6px);
}

.gh-visual-phone {
  position: absolute;
  right: -0.5rem;
  bottom: -1.5rem;
  width: 26%;
  max-width: 190px;
}

.gh-visual-phone--left {
  right: auto;
  left: -0.5rem;
  bottom: -2.5rem;
  width: 22%;
  max-width: 160px;
}

.section-eyebrow .gh-ai-badge--inline {
  display: inline-block;
  margin-left: 0.4rem;
  padding: 0.05rem 0.5rem;
  border-radius: 999px;
  background: rgba(255, 123, 160, 0.14);
  color: #eb0042;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  vertical-align: middle;
}

.gh-card-shot {
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  padding: 0.6rem;
  box-shadow: 0 30px 70px rgba(58, 70, 84, 0.22), 0 0 0 1px rgba(58, 70, 84, 0.06);
}
.gh-card-shot img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.gh-feature-cloud {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  max-width: 980px;
  margin: 0 auto;
}

.gh-feature-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.65rem 1.15rem 0.65rem 0.7rem;
  border-radius: 999px;
  background: #fff;
  color: #3a4654;
  font-weight: 600;
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(58, 70, 84, 0.07), 0 0 0 1px rgba(58, 70, 84, 0.06);
  transition: transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.25s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-feature-pill .material-symbols-outlined {
  display: grid;
  place-items: center;
  width: 30px;
  aspect-ratio: 0.8886904762;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  border-radius: 0;
  background: rgba(207, 185, 118, 0.22);
  color: #87712f;
  font-size: 1.15rem;
}
.gh-feature-pill--red .material-symbols-outlined, .gh-feature-pill--pink .material-symbols-outlined {
  background: rgba(255, 123, 160, 0.16);
  color: #eb0042;
}
.gh-feature-pill--dark .material-symbols-outlined, .gh-feature-pill--blue .material-symbols-outlined, .gh-feature-pill--navy .material-symbols-outlined {
  background: rgba(58, 70, 84, 0.1);
  color: #3a4654;
}
.gh-feature-pill--green .material-symbols-outlined {
  background: rgba(63, 165, 138, 0.14);
  color: #2e8a71;
}
.gh-feature-pill:hover {
  color: #3a4654;
  transform: translateY(-3px);
  box-shadow: 0 12px 26px rgba(58, 70, 84, 0.12), 0 0 0 1px rgba(255, 123, 160, 0.35);
}

.gh-bento {
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr;
  grid-auto-rows: minmax(180px, auto);
  gap: 1.25rem;
}

.gh-bento-tile {
  position: relative;
  padding: 1.6rem;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
  overflow: hidden;
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-bento-tile h3 {
  font-size: 1.15rem;
  margin: 1rem 0 0.4rem;
}
.gh-bento-tile p {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
}
.gh-bento-tile:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(58, 70, 84, 0.1), 0 0 0 1px rgba(58, 70, 84, 0.05);
}
.gh-bento-tile--hero {
  grid-row: span 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 2.2rem;
  color: #c9d1db;
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.4) 0%, rgba(255, 123, 160, 0.14) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.24) 0%, rgba(207, 185, 118, 0.072) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
}
.gh-bento-tile--hero h3 {
  color: #fff;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  line-height: 1.2;
}
.gh-bento-tile--hero p {
  color: #c9d1db;
  margin-bottom: 1.2rem;
}
.gh-bento-tile--hero .gh-bento-icon {
  background: rgba(255, 255, 255, 0.1);
  color: #cfb976;
}
.gh-bento-tile--hero a {
  align-self: flex-start;
}

.gh-bento-icon {
  display: inline-grid;
  place-items: center;
  width: 48px;
  aspect-ratio: 0.8886904762;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  border-radius: 0;
  background: linear-gradient(135deg, rgba(255, 123, 160, 0.22), rgba(207, 185, 118, 0.28));
  color: #3a4654;
}
.gh-bento-icon .material-symbols-outlined {
  font-size: 1.5rem;
}
.gh-bento-icon--yellow {
  background: linear-gradient(135deg, rgba(207, 185, 118, 0.3), rgba(207, 185, 118, 0.16));
  color: #7f6b2d;
}
.gh-bento-icon--red, .gh-bento-icon--pink {
  background: linear-gradient(135deg, rgba(255, 123, 160, 0.28), rgba(255, 123, 160, 0.14));
  color: #e1003f;
}
.gh-bento-icon--green {
  background: linear-gradient(135deg, rgba(63, 165, 138, 0.26), rgba(63, 165, 138, 0.12));
  color: #2e8a71;
}
.gh-bento-icon--dark, .gh-bento-icon--blue, .gh-bento-icon--navy {
  background: linear-gradient(135deg, rgba(58, 70, 84, 0.16), rgba(58, 70, 84, 0.08));
  color: #3a4654;
}
.gh-bento-icon--sm {
  width: 38px;
}
.gh-bento-icon--sm .material-symbols-outlined {
  font-size: 1.2rem;
}

@media (max-width: 991.98px) {
  .gh-bento {
    grid-template-columns: 1fr 1fr;
  }

  .gh-bento-tile--hero {
    grid-column: span 2;
    grid-row: auto;
  }
}
@media (max-width: 575.98px) {
  .gh-bento {
    grid-template-columns: 1fr;
  }

  .gh-bento-tile--hero {
    grid-column: auto;
  }
}
.gh-cta {
  position: relative;
  margin: clamp(2rem, 5vw, 4rem) 0 0;
  padding: clamp(2rem, 5vw, 3.5rem);
  border-radius: 28px;
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.32) 0%, rgba(255, 123, 160, 0.112) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.18) 0%, rgba(207, 185, 118, 0.054) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
  color: #c9d1db;
  overflow: hidden;
}
.gh-cta h2 {
  color: #fff;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  margin-top: 1rem;
}
.gh-cta a:not(.btn) {
  color: #fff;
}

.gh-cta-small {
  font-size: 0.9rem;
  margin: 1.5rem 0 0;
}

.gh-cta-shot {
  margin: 0 -6rem -5rem 0;
  transform: rotate(-4deg) translateY(1rem);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 40px 80px rgba(0, 0, 0, 0.45);
}
.gh-cta-shot img {
  display: block;
  width: 100%;
}

.gh-page-hero {
  margin-top: -1.5rem;
  padding: clamp(3rem, 6vw, 5rem) 0 clamp(3rem, 6vw, 4.5rem);
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.38) 0%, rgba(255, 123, 160, 0.133) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.22) 0%, rgba(207, 185, 118, 0.066) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
  color: #d8dee6;
  overflow: hidden;
}
.gh-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("/images/website/bg.svg") repeat;
  opacity: 0.05;
  pointer-events: none;
}
.gh-page-hero .container {
  position: relative;
}
.gh-page-hero h1 {
  color: #fff;
  font-size: clamp(2rem, 4.2vw, 3.2rem);
  line-height: 1.1;
  max-width: 48rem;
  margin: 1rem 0 1rem;
  padding: 0;
}
.gh-page-hero .gh-lead {
  max-width: 42rem;
  margin: 0;
}
.gh-page-hero--compact {
  padding: clamp(2.5rem, 5vw, 3.5rem) 0;
}
.gh-page-hero--compact h1 {
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
}

.gh-hero-rss {
  margin-top: 1.6rem;
  padding: 0.7rem 1.3rem !important;
  font-size: 0.9rem;
}

.kb--list {
  padding-top: clamp(2rem, 4vw, 3rem);
}

.gh-hex--page {
  width: 380px;
  right: 4%;
  top: -40px;
  opacity: 0.2;
}

.gh-page-hero--compact .gh-hex--page {
  width: 260px;
  top: -60px;
}

.gh-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  list-style: none;
  padding: 0;
  margin: 0 0 1.2rem;
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.6);
}
.gh-breadcrumb li + li::before {
  content: "/";
  margin-right: 0.4rem;
  color: rgba(255, 123, 160, 0.8);
}
.gh-breadcrumb a {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
}
.gh-breadcrumb a:hover {
  color: #fff;
}

.gh-prose p {
  line-height: 1.8;
}
.gh-prose h2 {
  font-size: clamp(1.5rem, 2.6vw, 2rem);
}

.gh-feature-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.25rem;
}

.gh-feature-card {
  position: relative;
  display: block;
  padding: 1.6rem 1.6rem 1.4rem;
  border-radius: 22px;
  background: #fff;
  color: #5f5f5f;
  text-decoration: none;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-feature-card h3 {
  font-size: 1.15rem;
  margin: 1rem 0 0.35rem;
}
.gh-feature-card p {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
  padding-right: 1.5rem;
}
.gh-feature-card:hover {
  color: #5f5f5f;
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(58, 70, 84, 0.1), 0 0 0 1px rgba(255, 123, 160, 0.3);
}

.gh-feature-card-arrow {
  position: absolute;
  right: 1.3rem;
  bottom: 1.3rem;
  color: #ff7ba0;
  transition: transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-feature-card:hover .gh-feature-card-arrow {
  transform: translateX(4px);
}

.gh-feature-section {
  padding-bottom: clamp(2rem, 4vw, 3.5rem);
}
.gh-feature-section h2 {
  font-size: clamp(1.4rem, 2.4vw, 1.8rem);
}

.gh-feature-text {
  columns: 2 22rem;
  column-gap: 2.5rem;
}
.gh-feature-text p {
  break-inside: avoid;
}

.gh-visual--feature {
  margin: 1.5rem 0 1rem;
  padding: 1.5rem 2rem 2rem;
}
.gh-visual--feature .gh-tilt {
  transform: rotateY(-4deg) rotateX(2deg);
}
.gh-visual--feature .gh-tilt--left {
  transform: rotateY(4deg) rotateX(2deg);
}
.gh-visual--feature .gh-tilt:hover {
  transform: none;
}

.gh-checks a,
.gh-bento-tile p a {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(255, 123, 160, 0.6);
  text-underline-offset: 3px;
}
.gh-checks a:hover,
.gh-bento-tile p a:hover {
  color: #ff3e74;
}

.gh-visual--phones {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(1rem, 4vw, 2.5rem);
}
.gh-visual--phones .gh-phone {
  width: min(240px, 44%);
}
.gh-visual--phones .gh-phone:nth-child(2) {
  margin-top: 2.5rem;
}

.gh-phone:has(.gh-phone-screen--full) {
  aspect-ratio: auto;
}

.gh-phone-screen--full {
  height: auto;
}
.gh-phone-screen--full img {
  width: 100%;
  height: auto;
}

@media (max-width: 767.98px) {
  .gh-visual--feature {
    padding: 0.75rem 0 1.25rem;
  }
}
.gh-side-menu {
  padding: 1rem;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
}
.gh-side-menu a {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  padding: 0.55rem 0.7rem;
  border-radius: 12px;
  color: #3a4654;
  font-weight: 500;
  font-size: 0.95rem;
  text-decoration: none;
  transition: background 0.2s;
}
.gh-side-menu a .material-symbols-outlined {
  display: grid;
  place-items: center;
  width: 28px;
  aspect-ratio: 0.8886904762;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  border-radius: 0;
  background: rgba(207, 185, 118, 0.2);
  color: #87712f;
  font-size: 1.05rem;
}
.gh-side-menu a:hover {
  background: rgba(58, 70, 84, 0.04);
  color: #3a4654;
}
.gh-side-menu a.active {
  background: linear-gradient(90deg, rgba(255, 123, 160, 0.16), rgba(207, 185, 118, 0.12));
  font-weight: 600;
}
.gh-side-menu a.active .material-symbols-outlined {
  background: #ff7ba0;
  color: #29323c;
}

.gh-side-menu-title {
  margin: 0.3rem 0.7rem 0.6rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #ff7ba0;
}

.gh-faq {
  margin-top: 1rem;
}
.gh-faq .accordion-item {
  border: 0;
  border-radius: 16px !important;
  box-shadow: 0 4px 16px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
}

.gh-price-card {
  position: relative;
  height: 100%;
  padding: clamp(1.8rem, 4vw, 2.6rem);
  border-radius: 28px;
  color: #c9d1db;
  overflow: hidden;
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.4) 0%, rgba(255, 123, 160, 0.14) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.24) 0%, rgba(207, 185, 118, 0.072) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
}
.gh-price-card > * {
  position: relative;
}

.gh-hex--price {
  position: absolute !important;
  width: 260px;
  right: -70px;
  bottom: -80px;
  opacity: 0.25;
}

.gh-price-label {
  margin: 1.4rem 0 0.8rem;
  color: #fff;
  font-weight: 600;
}

.gh-counter {
  margin: 0 auto;
  display: inline-flex;
  align-items: stretch;
  flex-wrap: nowrap;
  width: auto;
  padding: 5px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}
.gh-counter .btn {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0 !important;
  border-radius: 50% !important;
  background: transparent;
  color: #fff !important;
  box-shadow: none;
}
.gh-counter .btn:hover {
  background: #ff7ba0;
  color: #29323c !important;
  transform: none;
}
.gh-counter .btn .material-symbols-outlined {
  font-size: 1.3rem;
}
.gh-counter .form-control {
  flex: 0 0 64px;
  width: 64px;
  height: 44px;
  margin: 0 !important;
  padding: 0;
  border: 0;
  border-radius: 0 !important;
  background: transparent;
  color: #fff;
  font-size: 1.35rem;
  font-weight: 700;
  box-shadow: none;
}
.gh-counter .form-control:focus {
  background: transparent;
  color: #fff;
  box-shadow: none;
}

.gh-price-card {
  text-align: center;
}

.gh-price-card .gh-price-label {
  max-width: 22rem;
  margin-left: auto;
  margin-right: auto;
  text-wrap: balance;
}

.gh-price-panel {
  position: relative;
  margin: 1.8rem 0 1.6rem;
  padding: 1.4rem 1.4rem 1.2rem;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 0 0 1px rgba(207, 185, 118, 0.35), 0 20px 40px rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(6px);
}
.gh-price-panel.gh-bump .gh-price {
  animation: gh-bump 0.35s cubic-bezier(0.2, 0.7, 0.2, 1);
}

@keyframes gh-bump {
  0% {
    transform: scale(0.96);
    opacity: 0.6;
  }
  100% {
    transform: none;
    opacity: 1;
  }
}
.gh-price {
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin: 0;
  color: #fff;
  font-size: clamp(4rem, 9vw, 5.2rem);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.gh-price .gh-price-euros {
  font-weight: 700;
  letter-spacing: -0.04em;
}
.gh-price .gh-price-sign, .gh-price .gh-price-cents {
  position: relative;
  top: -1.68em;
  font-size: 0.3em;
  font-weight: 700;
}
.gh-price .gh-price-sign {
  margin-right: 0.25em;
  font-weight: 600;
  color: #cfb976;
}
.gh-price .gh-price-cents {
  margin-left: 0.1em;
  color: #f3e6d2;
}

.gh-price-per {
  margin: 0.15rem 0 0;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #aab4c0;
}

.gh-price-breakdown {
  margin: 1.2rem 0 0;
  padding-top: 1rem;
  border-top: 1px dashed rgba(255, 255, 255, 0.18);
  font-size: 0.9rem;
}
.gh-price-breakdown div {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.2rem 0;
}
.gh-price-breakdown dt {
  font-weight: 400;
  color: #c9d1db;
}
.gh-price-breakdown dd {
  margin: 0;
  color: #fff;
  font-variant-numeric: tabular-nums;
}

.gh-price-included {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin: 0.9rem 0 0;
  padding: 0.3rem 0.8rem;
  border-radius: 999px;
  background: rgba(207, 185, 118, 0.14);
  color: #cfb976;
  font-size: 0.82rem;
  font-weight: 600;
}
.gh-price-included .material-symbols-outlined {
  font-size: 1rem;
  font-variation-settings: "FILL" 1;
}

.gh-price-note {
  margin: 1rem 0 0;
  font-size: 0.85rem;
  text-align: center;
}

.gh-plans {
  display: grid;
  grid-template-columns: 1.25fr repeat(3, 1fr);
  gap: 1.2rem;
  align-items: stretch;
}

.gh-plan {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 2rem 1.4rem 1.6rem;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
  overflow: hidden;
}
.gh-plan > * {
  position: relative;
}
.gh-plan h2 {
  margin: 0;
  font-size: clamp(1.6rem, 2.4vw, 1.9rem);
  font-weight: 800;
  letter-spacing: -0.02em;
}
.gh-plan h2::after {
  content: "";
  display: block;
  width: 36px;
  height: 3px;
  margin: 0.55rem auto 0;
  border-radius: 3px;
  background: linear-gradient(90deg, #ff7ba0, #cfb976);
}
.gh-plan .gh-price {
  margin-top: 1.4rem;
  color: #3a4654;
  font-size: clamp(3rem, 6vw, 3.8rem);
}
.gh-plan .gh-price .gh-price-cents {
  color: #3a4654;
}
.gh-plan .gh-price-per {
  color: #646e7c;
}

.gh-plan:not(.gh-plan--featured) {
  align-self: center;
}

.gh-plan-who {
  margin: 0.35rem 0 0;
  font-size: 0.92rem;
  color: #646e7c;
  text-wrap: balance;
}

.gh-plan-vat {
  margin: 0.5rem 0 1.4rem;
  font-size: 0.9rem;
  color: #646e7c;
}

.gh-plan--featured {
  color: #c9d1db;
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.45) 0%, rgba(255, 123, 160, 0.1575) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.28) 0%, rgba(207, 185, 118, 0.084) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
  box-shadow: 0 24px 50px rgba(58, 70, 84, 0.28);
}
.gh-plan--featured h2 {
  color: #fff;
  font-size: clamp(1.8rem, 2.8vw, 2.15rem);
}
.gh-plan--featured .gh-plan-who {
  color: #c9d1db;
}
.gh-plan--featured .gh-price {
  color: #fff;
}
.gh-plan--featured .gh-price {
  font-size: clamp(4rem, 8vw, 5rem);
}
.gh-plan--featured .gh-price .gh-price-cents {
  color: #f3e6d2;
}
.gh-plan--featured .gh-price-per {
  color: #aab4c0;
}
.gh-plan--featured .gh-plan-vat {
  margin-bottom: 0.4rem;
  color: #c9d1db;
}
.gh-plan--featured .gh-plan-after {
  margin-bottom: 0;
}

.gh-plan-cta {
  margin-top: 2.2rem;
  text-align: center;
}
.gh-plan-cta p {
  margin: 0.7rem 0 0;
  font-size: 0.92rem;
  color: #646e7c;
}

.gh-plan-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-bottom: 1rem;
  padding: 0.3rem 0.85rem;
  border-radius: 999px;
  background: rgba(207, 185, 118, 0.18);
  color: #cfb976;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.gh-plan-badge .material-symbols-outlined {
  font-size: 1rem;
  font-variation-settings: "FILL" 1;
}

.gh-plan-after {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.1rem;
  width: 100%;
  margin: 0.4rem 0 1.4rem;
  padding: 0.7rem 1rem 0.75rem;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 0 0 1px rgba(207, 185, 118, 0.3);
}
.gh-plan-after .gh-plan-after-label {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #cfb976;
}
.gh-plan-after strong {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.15;
  color: #fff;
  font-variant-numeric: tabular-nums;
}
.gh-plan-after small {
  font-size: 0.85rem;
  font-weight: 500;
  color: #c9d1db;
}
.gh-plan-after .gh-plan-after-vat {
  font-size: 0.8rem;
  color: #aab4c0;
}

.gh-plan-note {
  margin: 0.8rem auto 0;
  max-width: 46rem;
  text-align: center;
  font-size: 0.85rem;
  color: #646e7c;
}

.gh-allin-lead {
  max-width: 40rem;
  margin: 0.6rem auto 0;
  color: #646e7c;
}

.gh-nofuss {
  padding: clamp(3.5rem, 7vw, 5.5rem) 0;
  color: #c9d1db;
  overflow: hidden;
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.36) 0%, rgba(255, 123, 160, 0.126) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.22) 0%, rgba(207, 185, 118, 0.066) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
}
.gh-nofuss h2 {
  color: #fff;
  font-size: clamp(1.9rem, 4vw, 2.8rem);
  margin: 1rem 0 0.8rem;
}

.gh-hex--nofuss {
  position: absolute !important;
  width: 420px;
  right: -120px;
  top: -90px;
  opacity: 0.18;
}

.gh-nofuss-head {
  max-width: 44rem;
  margin: 0 auto 2.6rem;
  text-align: center;
}
.gh-nofuss-head p {
  font-size: 1.05rem;
}

.gh-nofuss-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.2rem;
  max-width: 1100px;
  margin: 0 auto;
}

.gh-nofuss-item {
  padding: 1.5rem 1.3rem;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
}
.gh-nofuss-item .material-symbols-outlined {
  font-size: 2rem;
  color: #cfb976;
}
.gh-nofuss-item h3 {
  margin: 0.7rem 0 0.4rem;
  font-size: 1.15rem;
  color: #fff;
}
.gh-nofuss-item p {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.5;
}

.gh-faq--narrow {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}
.gh-faq--narrow .accordion {
  margin-top: 1.2rem;
}

@media (max-width: 1199.98px) {
  .gh-plans {
    grid-template-columns: repeat(3, 1fr);
  }

  .gh-plan--featured {
    grid-column: 1/-1;
  }

  .gh-nofuss-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767.98px) {
  .gh-plans {
    grid-template-columns: 1fr;
  }

  .gh-nofuss-grid {
    grid-template-columns: 1fr;
  }
}
.gh-included {
  height: 100%;
  padding: clamp(1.6rem, 3.5vw, 2.4rem);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
}
.gh-included h2 {
  font-size: 1.4rem;
}

.gh-included-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 0.3rem 1rem;
  list-style: none;
  padding: 0;
  margin: 1rem 0 0;
}
.gh-included-list a {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  padding: 0.55rem;
  border-radius: 12px;
  color: #5f5f5f;
  text-decoration: none;
  transition: background 0.2s;
}
.gh-included-list a:hover {
  background: rgba(58, 70, 84, 0.04);
  color: #5f5f5f;
}
.gh-included-list .gh-bento-icon {
  flex: none;
}
.gh-included-list strong {
  display: block;
  color: #3a4654;
  font-size: 0.95rem;
  line-height: 1.3;
}
.gh-included-list small {
  display: block;
  font-size: 0.82rem;
  line-height: 1.4;
  margin-top: 0.15rem;
}

.gh-bento--about {
  grid-template-columns: 1fr 1fr;
}
.gh-bento--about .gh-bento-tile--hero {
  grid-row: span 2;
}

.gh-contact-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}

.gh-contact-tile {
  display: flex;
  flex-direction: column;
  padding: 1.8rem;
  border-radius: 22px;
  background: #fff;
  color: #5f5f5f;
  text-decoration: none;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-contact-tile h3 {
  font-size: 1.2rem;
  margin: 1rem 0 0.35rem;
}
.gh-contact-tile p {
  font-size: 0.95rem;
  margin: 0 0 1.2rem;
  flex-grow: 1;
}
.gh-contact-tile .gh-more {
  align-self: flex-start;
}
.gh-contact-tile:hover {
  color: #5f5f5f;
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(58, 70, 84, 0.1), 0 0 0 1px rgba(255, 123, 160, 0.3);
}

.gh-support-kb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.2rem 1.5rem;
  margin-top: 1.5rem;
  padding: 1.6rem 1.8rem;
  border-radius: 22px;
  background: linear-gradient(90deg, rgba(255, 123, 160, 0.1), rgba(207, 185, 118, 0.12));
}
.gh-support-kb div {
  flex: 1 1 280px;
}
.gh-support-kb h3 {
  font-size: 1.15rem;
  margin: 0 0 0.2rem;
}
.gh-support-kb p {
  margin: 0;
  font-size: 0.95rem;
}

@media (max-width: 767.98px) {
  .gh-contact-grid {
    grid-template-columns: 1fr;
  }

  .gh-bento--about {
    grid-template-columns: 1fr;
  }
  .gh-bento--about .gh-bento-tile--hero {
    grid-row: auto;
  }
}
.gh-legal {
  margin: clamp(2rem, 5vw, 3.5rem) auto 0;
  padding: clamp(1.4rem, 4vw, 2.6rem);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
}

.gh-form-card {
  border-radius: 24px !important;
  box-shadow: 0 20px 50px rgba(58, 70, 84, 0.1), 0 0 0 1px rgba(58, 70, 84, 0.05) !important;
  overflow: hidden;
}
.gh-form-card::before {
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(90deg, #ff7ba0, #cfb976);
}

@keyframes gh-scroll-tilt {
  0% {
    rotate: x 16deg;
  }
  50% {
    rotate: x 0deg;
  }
  100% {
    rotate: x -12deg;
  }
}
@keyframes gh-scroll-float {
  0% {
    translate: 0 50px;
  }
  100% {
    translate: 0 -50px;
  }
}
@keyframes gh-scroll-tile {
  0% {
    rotate: x 10deg;
  }
  45%, 55% {
    rotate: x 0deg;
  }
  100% {
    rotate: x -6deg;
  }
}
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .gh-showcase .gh-tilt {
      animation: gh-scroll-tilt linear both;
      animation-timeline: view();
      animation-range: cover 0% cover 100%;
    }

    .gh-showcase .gh-visual-phone {
      animation: gh-scroll-float linear both;
      animation-timeline: view();
      animation-range: cover 0% cover 100%;
    }

    .gh-bento {
      perspective: 1400px;
    }

    .gh-bento > * {
      animation: gh-scroll-tile linear both;
      animation-timeline: view();
      animation-range: cover 0% cover 100%;
    }
  }
}
@property --gh-pink-angle {
  syntax: "<angle>";
  inherits: false;
  initial-value: 205deg;
}
@property --gh-gold-angle {
  syntax: "<angle>";
  inherits: false;
  initial-value: 25deg;
}
@property --gh-pink-reach {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 60%;
}
@keyframes gh-wash-shape {
  0% {
    --gh-pink-angle: 205deg;
    --gh-gold-angle: 25deg;
    --gh-pink-reach: 60%;
  }
  50% {
    --gh-pink-angle: 217deg;
    --gh-gold-angle: 16deg;
    --gh-pink-reach: 68%;
  }
  100% {
    --gh-pink-angle: 196deg;
    --gh-gold-angle: 33deg;
    --gh-pink-reach: 56%;
  }
}
.gh-hero {
  background: linear-gradient(var(--gh-pink-angle), rgba(255, 123, 160, 0.38) 0%, rgba(255, 123, 160, 0.133) 30%, rgba(255, 123, 160, 0) var(--gh-pink-reach)), linear-gradient(var(--gh-gold-angle), rgba(207, 185, 118, 0.22) 0%, rgba(207, 185, 118, 0.066) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
  animation: gh-wash-shape 26s ease-in-out infinite alternate;
}

@keyframes gh-glint {
  0% {
    stroke-dashoffset: 1;
    opacity: 0;
  }
  8% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  50%, 100% {
    stroke-dashoffset: -0.2;
    opacity: 0;
  }
}
@keyframes gh-sway {
  0%, 100% {
    transform: rotate(-3deg) translateY(0);
  }
  50% {
    transform: rotate(3deg) translateY(-14px);
  }
}
svg.gh-hex--live {
  background: none;
  overflow: visible;
}
svg.gh-hex--live path {
  fill: none;
}
svg.gh-hex--live .gh-hex-line {
  stroke: #cfb976;
  stroke-dasharray: 1;
  animation: gh-draw 2.2s cubic-bezier(0.22, 1, 0.36, 1) 0.3s backwards;
}
svg.gh-hex--live .gh-hex-glint {
  stroke: #ff7ba0;
  stroke-linecap: round;
  stroke-dasharray: 0.12 1;
  stroke-dashoffset: 1;
  opacity: 0;
  filter: drop-shadow(0 0 6px rgba(255, 123, 160, 0.9));
  animation: gh-glint 9s ease-in-out var(--gh-glint-delay, 2.6s) infinite;
}

.gh-hex--hero-a.gh-hex--live {
  opacity: 1;
}
.gh-hex--hero-a.gh-hex--live .gh-hex-line {
  stroke-opacity: 0.24;
  stroke-width: 0.8;
}
.gh-hex--hero-a.gh-hex--live .gh-hex-glint {
  stroke-width: 1.6;
}

.gh-hex--hero-b.gh-hex--live {
  opacity: 1;
}
.gh-hex--hero-b.gh-hex--live .gh-hex-line {
  stroke-opacity: 0.34;
  stroke-width: 3;
}
.gh-hex--hero-b.gh-hex--live .gh-hex-glint {
  stroke-width: 6;
}

svg.gh-hex--live .gh-hex-glint {
  stroke-opacity: 0.75;
}

.gh-hex--hero-a.gh-hex--live {
  animation: gh-sway 18s ease-in-out infinite;
  transform-origin: 50% 50%;
}

.gh-hex--hero-b.gh-hex--live {
  animation: gh-sway 14s ease-in-out -6s infinite reverse;
  transform-origin: 50% 50%;
}

@media (prefers-reduced-motion: reduce) {
  .gh-hero, svg.gh-hex--live, svg.gh-hex--live path {
    animation: none;
  }

  svg.gh-hex--live .gh-hex-glint {
    display: none;
  }
}
.gh-reveal-ready [data-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.8s cubic-bezier(0.2, 0.7, 0.2, 1), transform 0.8s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-reveal-ready [data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

.gh-reveal-ready [data-reveal=stagger] {
  opacity: 1;
  transform: none;
}
.gh-reveal-ready [data-reveal=stagger] > * {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.7s cubic-bezier(0.2, 0.7, 0.2, 1), transform 0.7s cubic-bezier(0.2, 0.7, 0.2, 1);
  transition-delay: calc(var(--i, 0) * 80ms);
}
.gh-reveal-ready [data-reveal=stagger].is-visible > * {
  opacity: 1;
  transform: none;
}

@keyframes gh-in {
  from {
    opacity: 0;
    translate: 0 18px;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}
@keyframes gh-pop {
  0% {
    opacity: 0;
    scale: 0.9;
    translate: 0 14px;
  }
  60% {
    opacity: 1;
    scale: 1.02;
  }
  100% {
    opacity: 1;
    scale: 1;
    translate: 0 0;
  }
}
@keyframes gh-draw {
  from {
    stroke-dashoffset: 1;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes gh-tick {
  0% {
    transform: scale(0.4);
  }
  60% {
    transform: scale(1.18);
  }
  100% {
    transform: scale(1);
  }
}
.gh-hero-copy > * {
  animation: gh-in 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) backwards;
}

.gh-hero-copy > :nth-child(2) {
  animation-delay: 0.08s;
}

.gh-hero-copy > :nth-child(3) {
  animation-delay: 0.16s;
}

.gh-hero-copy > :nth-child(4) {
  animation-delay: 0.24s;
}

.gh-hero-copy > :nth-child(5) {
  animation-delay: 0.32s;
}

@keyframes gh-drift {
  0%, 100% {
    transform: rotateY(var(--ry)) rotateX(var(--rx)) translate3d(0, 0, 0);
  }
  33% {
    transform: rotateY(calc(var(--ry) + 4deg)) rotateX(calc(var(--rx) - 2deg)) translate3d(4px, -10px, 24px);
  }
  66% {
    transform: rotateY(calc(var(--ry) - 3deg)) rotateX(calc(var(--rx) + 2deg)) translate3d(-3px, -4px, 10px);
  }
}
.gh-stage-phone, .gh-stage-ai, .gh-stage-toast, .gh-stage-stat {
  transform: rotateY(var(--ry)) rotateX(var(--rx));
}

.gh-stage-browser {
  animation: gh-in 0.8s cubic-bezier(0.2, 0.7, 0.2, 1) 0.15s backwards;
}

.gh-stage-phone {
  --ry: 12deg;
  --rx: 4deg;
  animation: gh-pop 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) 0.4s backwards, gh-drift 9s ease-in-out 0.4s infinite;
}

.gh-stage-ai {
  --ry: -8deg;
  --rx: 7deg;
  animation: gh-pop 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) 0.6s backwards, gh-drift 7.5s ease-in-out -2s infinite;
}

.gh-stage-toast {
  --ry: -14deg;
  --rx: 5deg;
  animation: gh-pop 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) 0.85s backwards, gh-drift 8.5s ease-in-out -5s infinite;
}

.gh-stage-stat {
  --ry: -12deg;
  --rx: -5deg;
  animation: gh-pop 0.7s cubic-bezier(0.2, 0.7, 0.2, 1) 1.05s backwards, gh-drift 10s ease-in-out -3s infinite;
}

.gh-stage-stat polyline {
  stroke-dasharray: 1;
  animation: gh-draw 1.2s cubic-bezier(0.2, 0.7, 0.2, 1) 1.35s backwards;
}

.gh-stage-toast .gh-toast-icon .material-symbols-outlined {
  animation: gh-tick 0.6s cubic-bezier(0.2, 0.7, 0.2, 1) 1.25s backwards;
}

.gh-stage-link {
  display: block;
  color: inherit;
  text-decoration: none;
  transition: scale 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-stage-link:hover, .gh-stage-link:focus-visible {
  color: inherit;
  scale: 1.04;
  z-index: 3;
}
.gh-stage-link:focus-visible {
  outline: 3px solid rgba(255, 123, 160, 0.7);
  outline-offset: 3px;
}

.gh-toast.gh-stage-link {
  display: flex;
}

@media (prefers-reduced-motion: reduce) {
  .gh-hero-copy > *, .gh-stage-browser, .gh-stage-phone, .gh-stage-ai, .gh-stage-toast, .gh-stage-stat,
.gh-stage-stat polyline, .gh-stage-toast .gh-toast-icon .material-symbols-outlined {
    animation: none;
  }

  .gh-stage-link {
    transition: none;
  }
}
#mainContent {
  overflow-x: clip;
}

@media (max-width: 991.98px) {
  #content .row.g-5 {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 2rem;
  }
}
@media (max-width: 575.98px) {
  .gh-feature-cloud {
    gap: 0.5rem;
  }

  .gh-feature-pill {
    gap: 0.4rem;
    padding: 0.45rem 0.85rem 0.45rem 0.5rem;
    font-size: 0.85rem;
  }
  .gh-feature-pill .material-symbols-outlined {
    width: 24px;
    font-size: 0.95rem;
  }

  .gh-feature-grid {
    grid-template-columns: 1fr;
  }

  .gh-included-list {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .gh-stage-toast {
    top: 5rem;
  }
}
@media (max-width: 991.98px) {
  .gh-hero {
    text-align: left;
  }

  .gh-stage {
    padding: 1rem 0 3rem 1.5rem;
  }

  .gh-stage-toast {
    right: -1.25rem;
    width: 290px;
  }

  .gh-stage-stat, .gh-stat.gh-stage-stat {
    display: none;
  }

  .gh-visual-phone {
    right: 0;
  }

  .gh-visual-phone--left {
    left: 0;
    right: auto;
  }
}
@media (max-width: 575.98px) {
  .gh-stage-toast, .gh-toast.gh-stage-toast {
    display: none;
  }

  .gh-hero .gh-hex--live {
    display: none;
  }

  .gh-stage-ai {
    top: 0;
    left: 0;
    right: 0;
  }

  .gh-stage-ai .gh-ai {
    width: auto;
  }

  .gh-ai .gh-ai-q > span {
    white-space: normal;
  }

  .gh-ai {
    padding: 0.65rem 0.8rem;
    gap: 0.6rem;
  }

  .gh-ai span {
    font-size: 0.8rem;
  }

  .gh-ai-icon {
    width: 40px;
    height: 40px;
  }

  .gh-ai-icon .material-symbols-outlined {
    font-size: 2.4rem;
  }

  .gh-stage {
    padding: 5rem 2rem 2.5rem 0;
  }

  .gh-stage {
    min-height: calc(6.5rem + min(38vw, 170px) * 2.05 + 1rem);
  }

  .gh-stage-browser {
    transform: rotateY(9deg) rotateX(4deg) rotateZ(-0.5deg);
    transform-origin: right center;
  }

  .gh-stage-phone {
    --ry: -12deg;
  }

  .gh-stage-phone {
    width: min(38vw, 170px);
    max-width: none;
    left: auto;
    right: -0.25rem;
    top: 6.5rem;
    bottom: auto;
  }

  .gh-phone {
    padding: 4px;
    border-radius: 18px;
  }

  .gh-phone .gh-phone-screen {
    border-radius: 14px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .gh-float {
    animation: none;
  }

  .gh-tilt, .gh-tilt--left {
    transform: none;
  }
}
#mainMenu .nav-caret {
  font-size: 1.1rem;
  vertical-align: -0.2em;
  margin-left: -0.1rem;
  transition: transform 0.2s cubic-bezier(0.2, 0.7, 0.2, 1);
}
#mainMenu .nav-item.has-submenu:hover .nav-caret,
#mainMenu .nav-item.has-submenu.open .nav-caret {
  transform: rotate(180deg);
}
#mainMenu #menu-cta {
  gap: 1.1rem;
}
#mainMenu .gh-login {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin: 0;
  padding: 0.5rem 0.25rem;
  color: #3a4654;
  font-weight: 600;
  text-decoration: none;
}
#mainMenu .gh-login .material-symbols-outlined {
  font-size: 1.2rem;
}
#mainMenu .gh-login:hover {
  color: #ff0b4f;
}

@media (min-width: 992px) {
  #mainMenu .nav-item .list-group.gh-mega {
    width: min(760px, 92vw);
    min-width: 0;
    padding: 1rem 1rem 0;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 24px 60px rgba(58, 70, 84, 0.18), 0 0 0 1px rgba(58, 70, 84, 0.05);
    animation: gh-mega-in 0.18s cubic-bezier(0.2, 0.7, 0.2, 1);
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  #mainMenu .nav-item .list-group.gh-mega a.gh-mega-item {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin: 0;
    padding: 0.65rem 0.75rem;
    border-radius: 14px;
    line-height: 1.35;
  }
  #mainMenu .nav-item .list-group.gh-mega a.gh-mega-item::after {
    content: none;
  }
  #mainMenu .nav-item .list-group.gh-mega a.gh-mega-item:hover {
    background: linear-gradient(90deg, rgba(255, 123, 160, 0.1), rgba(207, 185, 118, 0.08));
    color: #3a4654;
  }

  #mainMenu .nav-item.has-submenu::after {
    content: "";
    position: absolute;
    left: -1rem;
    right: -1rem;
    top: 100%;
    height: 14px;
  }
}
@keyframes gh-mega-in {
  from {
    opacity: 0;
    transform: translate(-50%, 6px);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
.gh-mega-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.15rem 0.5rem;
}

.gh-mega-icon {
  flex: none;
  display: grid;
  place-items: center;
  width: 34px;
  aspect-ratio: 0.8886904762;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336'%3E%3Cpath d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
  border-radius: 0;
}
.gh-mega-icon .material-symbols-outlined {
  font-size: 1.1rem !important;
  color: inherit !important;
}

.gh-mega-text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.gh-mega-text strong {
  color: #3a4654;
  font-size: 0.95rem;
  font-weight: 600;
}
.gh-mega-text small {
  color: #7a838f;
  font-size: 0.8rem;
  font-weight: 400;
  margin-top: 0.1rem;
}

.gh-mega-text small {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (min-width: 1200px) {
  #mainMenu .nav-item .list-group.gh-mega {
    width: min(1080px, 94vw);
  }

  .gh-mega-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (min-width: 992px) {
  #mainMenu .nav-item .list-group.gh-mega {
    position: fixed;
    top: auto;
    left: 50%;
    margin-top: 12px;
    max-height: calc(100vh - 110px);
  }
}
@media (min-width: 992px) and (max-height: 860px) {
  #mainMenu .nav-item .list-group.gh-mega {
    padding-top: 0.6rem;
  }

  #mainMenu .nav-item .list-group.gh-mega a.gh-mega-item {
    padding: 0.45rem 0.7rem;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) and (max-height: 860px) {
  .gh-mega-text small {
    -webkit-line-clamp: 1;
  }
}
.gh-mega-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 0.75rem -1rem 0;
  padding: 0.9rem 1.75rem;
  border-radius: 0 0 22px 22px;
  background: linear-gradient(90deg, rgba(255, 123, 160, 0.08), rgba(207, 185, 118, 0.1));
  font-size: 0.85rem;
  color: #5f5f5f;
}
#mainMenu .gh-mega-footer a.gh-more {
  display: inline-flex;
  margin: 0;
  padding: 0 0 0.1rem;
  font-size: 0.9rem;
  line-height: 1.3;
  color: #3a4654;
}
#mainMenu .gh-mega-footer a.gh-more::after {
  content: none;
}

body.fixed #mainMenu {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(16px) saturate(1.4);
  box-shadow: 0 12px 34px rgba(58, 70, 84, 0.12), 0 0 0 1px rgba(58, 70, 84, 0.05);
}

@media (max-width: 991.98px) {
  #mainMenu.open {
    max-height: 100vh;
    max-height: 100dvh;
    overflow-y: auto;
    background: #fff;
    box-shadow: 0 20px 50px rgba(58, 70, 84, 0.2);
  }

  #mainMenu nav {
    margin-top: 1rem;
    padding: 0 1rem 0.5rem;
  }
  #mainMenu .nav-item {
    border-bottom: 1px solid rgba(58, 70, 84, 0.07);
  }
  #mainMenu a.nav-link {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    line-height: 1.3 !important;
    padding: 1rem 0.5rem !important;
    margin: 0 !important;
    font-size: 1.05rem;
    text-align: left !important;
  }
  #mainMenu a.nav-link::after {
    content: none !important;
  }
  #mainMenu .nav-link.active {
    color: #ff0b4f;
  }
  #mainMenu .nav-item.has-submenu.open .list-group {
    max-height: 1600px !important;
  }
  #mainMenu .gh-mega-grid {
    grid-template-columns: 1fr;
    gap: 0.1rem;
  }
  #mainMenu a.gh-mega-item {
    display: flex !important;
    align-items: center;
    gap: 0.75rem;
    padding: 0.55rem 0.5rem !important;
    line-height: 1.3 !important;
    text-align: left !important;
  }
  #mainMenu a.gh-mega-item small {
    display: none;
  }
  #mainMenu .gh-mega-footer {
    margin: 0.5rem 0 0.75rem;
    padding: 0.8rem 1rem;
    border-radius: 14px;
    flex-wrap: wrap;
  }
  #mainMenu #menu-cta {
    flex-direction: column-reverse;
    align-items: stretch !important;
    gap: 0.6rem;
    margin: 0.5rem 1rem 1.25rem;
    padding-top: 1rem;
  }
  #mainMenu #menu-cta .btn {
    margin: 0;
    justify-content: center;
  }
  #mainMenu #menu-cta .gh-login {
    justify-content: center;
    padding: 0.8rem;
    border-radius: 999px;
    box-shadow: inset 0 0 0 1px rgba(58, 70, 84, 0.15);
  }
}
@media (max-width: 991.98px) {
  body.menu-open {
    overflow: hidden;
  }
}
@media (min-width: 992px) {
  #mainMenu .nav-item .list-group.gh-mega {
    background: #fff;
    backdrop-filter: none;
  }
}
#mainMenu .gh-mega-icon .material-symbols-outlined {
  font-size: 1.15rem !important;
  font-weight: 400;
  font-variation-settings: "wght" 400;
}

#mainMenu .gh-mega-footer .gh-more .material-symbols-outlined {
  color: #ff7ba0 !important;
}

@media (max-width: 991.98px) {
  #mainMenu.open {
    height: 100vh;
    height: 100dvh;
  }

  #mainMenu nav {
    padding: 0 1.25rem 0.5rem !important;
  }

  #mainMenu #menu-cta {
    width: 100%;
    max-width: none;
    margin: 0.5rem 0 1.5rem;
    padding: 1rem 1.25rem 0;
    border-top: 0;
  }

  body.menu-open #fixedButtons {
    display: none;
  }

  #mainMenu #menu-cta .gh-login {
    line-height: 1.75;
  }
}
#fixedTrialButton {
  position: fixed;
  right: 20px;
  bottom: 20px;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  z-index: 15;
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s, box-shadow 0.2s;
}
#fixedTrialButton .material-symbols-outlined {
  font-size: 1.15rem;
}

body.cta-in-view #fixedTrialButton {
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  pointer-events: none;
}

@media (max-width: 767.98px) {
  #fixedTrialButton {
    right: 12px;
    bottom: 12px;
    padding: 0.45rem 0.95rem 0.45rem 0.8rem;
    font-size: 0.875rem;
    border-radius: 999px;
  }
  #fixedTrialButton .material-symbols-outlined {
    font-size: 1rem;
  }
}
.gh-btn-row .btn {
  white-space: nowrap;
  justify-content: center;
}

@media (min-width: 992px) {
  #mainMenu .gh-menu-demo {
    display: none;
  }
}
.gh-menu-demo {
  background: none;
  border: 0;
  font: inherit;
  cursor: pointer;
}

@media (max-width: 399.98px) {
  .gh-stage {
    padding-top: 6.25rem;
    min-height: calc(7.75rem + min(38vw, 170px) * 2.05 + 1rem);
  }

  .gh-stage-phone {
    top: 7.75rem;
  }
}
@media (max-width: 991.98px) {
  #mainMenu > .row {
    align-items: center;
  }

  #mainMenu #toggleMenu {
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin-right: 14px;
  }

  body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) #mainContent, body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) #content {
    padding-top: 0;
  }
  body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) .gh-hero, body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) .gh-page-hero {
    margin-top: 0;
    padding-top: calc(90px + 1.25rem);
  }
  body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) #mainMenu {
    position: absolute;
    background: transparent;
    backdrop-filter: none;
    box-shadow: none;
  }
  body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) #mainMenu #home.gh-logo .gh-logo-emblem {
    width: 44px;
  }
  body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) #mainMenu #home.gh-logo .gh-logo-name {
    color: #fff;
  }
  body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) #mainMenu #home.gh-logo .gh-logo-tagline {
    color: rgba(255, 255, 255, 0.65);
  }
  body:has(.gh-hero, .gh-page-hero):not(.fixed):not(.menu-open) #mainMenu #toggleMenu {
    color: #fff;
  }

  #mainMenu #home.gh-logo .gh-logo-emblem {
    transition: width 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
  }

  #mainMenu #home.gh-logo .gh-logo-name,
#mainMenu #home.gh-logo .gh-logo-tagline,
#mainMenu #toggleMenu {
    transition: color 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
  }
}
@keyframes gh-bar-in {
  from {
    opacity: 0;
    transform: translateY(-16px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (max-width: 991.98px) and (prefers-reduced-motion: no-preference) {
  body.fixed:has(.gh-hero, .gh-page-hero) #mainMenu {
    animation: gh-bar-in 0.38s cubic-bezier(0.22, 1, 0.36, 1);
  }
}
#mainMenu {
  transition: background 0.35s ease, box-shadow 0.35s ease, padding 0.35s ease;
}

body.fixed #mainMenu {
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 8px 24px rgba(58, 70, 84, 0.1), 0 1px 3px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.06);
}
body.fixed #mainMenu #home.gh-logo .gh-logo-name {
  color: #242c36;
}
body.fixed #mainMenu #home.gh-logo .gh-logo-tagline {
  color: #5c6573;
}
body.fixed #mainMenu #toggleMenu {
  color: #3a4654;
}

.gh-logo-mark {
  position: relative;
  display: grid;
  place-items: center;
  flex: none;
  margin: 0 0.3rem;
}
.gh-logo-mark::before {
  content: "";
  position: absolute;
  width: 128%;
  aspect-ratio: 0.8886904762;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 298.6 336' shape-rendering='geometricPrecision'%3E%3Cpath fill='%23242c36' d='M284.4,73.6L163.5,3.8c-8.8-5.1-19.6-5.1-28.4,0L14.2,73.6C5.4,78.7,0,88.1,0,98.2v139.6c0,10.2,5.4,19.5,14.2,24.6l120.9,69.8c8.8,5.1,19.6,5.1,28.4,0l120.9-69.8c8.8-5.1,14.2-14.5,14.2-24.6V98.2C298.6,88.1,293.2,78.7,284.4,73.6z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.gh-logo-mark .gh-logo-emblem {
  position: relative;
}

#mainMenu #home.gh-logo, .gh-logo {
  gap: 0.85rem;
}

@media (min-width: 992px) {
  .gh-hero, .gh-page-hero {
    margin-top: -2rem;
  }
}
.gh-logo .gh-logo-name {
  font-weight: 400;
  font-synthesis: none;
  letter-spacing: 0.132em;
  margin-right: -0.132em;
  margin-left: -0.032em;
}

@media (max-width: 991.98px) {
  #mainMenu #home.gh-logo .gh-logo-tagline {
    font-size: 8.98px;
  }
}
#mainMenu > .row {
  align-items: center;
}

#mainMenu #home.gh-logo {
  display: inline-flex;
  align-items: center;
}

body.fixed #mainMenu #home.gh-logo .gh-logo-emblem {
  width: 34px;
}

#mainMenu > .row > div:first-child,
#mainMenu > .row > div:nth-child(2) {
  display: flex;
  align-items: center;
}

#mainMenu > .row > div:nth-child(2) {
  justify-content: flex-end;
}

@media (min-width: 1200px) {
  #mainMenu > .row > div:nth-child(2) {
    display: none;
  }
}
.gh-about-facts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.gh-about-fact {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 160px;
  padding: 1.5rem;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
}
.gh-about-fact strong {
  font-size: clamp(2.2rem, 4vw, 3rem);
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.02em;
  background: linear-gradient(100deg, #ff7ba0 10%, #cfb976 90%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.gh-about-fact span {
  margin-top: 0.5rem;
  color: #5f5f5f;
  font-size: 0.95rem;
  line-height: 1.4;
}
.gh-about-fact--dark {
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.4) 0%, rgba(255, 123, 160, 0.14) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.24) 0%, rgba(207, 185, 118, 0.072) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
  box-shadow: 0 18px 40px rgba(58, 70, 84, 0.25);
}
.gh-about-fact--dark span {
  color: #c9d1db;
}

.gh-about-values {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1.25rem;
}
.gh-about-values > * {
  grid-column: span 2;
}
.gh-about-values > :nth-child(n+4) {
  grid-column: span 3;
}

.gh-about-value {
  padding: 1.8rem;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-about-value h3 {
  font-size: 1.15rem;
  margin: 1rem 0 0.4rem;
}
.gh-about-value p {
  font-size: 0.95rem;
  margin: 0;
}
.gh-about-value:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(58, 70, 84, 0.1), 0 0 0 1px rgba(58, 70, 84, 0.05);
}

.gh-contact-grid {
  grid-template-columns: repeat(4, 1fr);
}

button.gh-contact-tile {
  border: 0;
  text-align: left;
  font: inherit;
  cursor: pointer;
}

.gh-contact-tile:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(58, 70, 84, 0.1), 0 0 0 1px rgba(58, 70, 84, 0.05);
}
.gh-contact-tile h3 {
  margin-top: 0.8rem;
}

.gh-contact-icon .material-symbols-outlined {
  font-size: 2.4rem;
  font-variation-settings: "FILL" 1, "wght" 400;
  background: linear-gradient(135deg, #ff7ba0 20%, #cfb976 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gh-help-card {
  height: 100%;
  padding: 2rem;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.06), 0 0 0 1px rgba(58, 70, 84, 0.05);
}
.gh-help-card h3 {
  font-size: 1.25rem;
  margin: 0 0 0.4rem;
}
.gh-help-card p {
  font-size: 0.95rem;
}
.gh-help-card--dark {
  background: linear-gradient(205deg, rgba(255, 123, 160, 0.4) 0%, rgba(255, 123, 160, 0.14) 30%, rgba(255, 123, 160, 0) 60%), linear-gradient(25deg, rgba(207, 185, 118, 0.24) 0%, rgba(207, 185, 118, 0.072) 30%, rgba(207, 185, 118, 0) 58%), linear-gradient(160deg, #3a4654 0%, #242c36 100%);
  color: #c9d1db;
  box-shadow: 0 18px 40px rgba(58, 70, 84, 0.25);
}
.gh-help-card--dark h3 {
  color: #fff;
  margin-top: 1rem;
}

.gh-help-posts {
  list-style: none;
  margin: 1.4rem 0 0;
  padding: 0;
}
.gh-help-posts li + li {
  border-top: 1px solid rgba(58, 70, 84, 0.08);
}
.gh-help-posts a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.85rem 0;
  color: #3a4654;
  font-weight: 600;
  text-decoration: none;
}
.gh-help-posts a .material-symbols-outlined {
  color: #ff7ba0;
  font-size: 1.2rem;
  transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-help-posts a:hover {
  color: #ff0b4f;
}
.gh-help-posts a:hover .material-symbols-outlined {
  transform: translateX(4px);
}

@media (max-width: 1199.98px) {
  .gh-about-values, .gh-contact-grid {
    grid-template-columns: 1fr 1fr;
  }

  .gh-about-values > *, .gh-about-values > :nth-child(n+4) {
    grid-column: auto;
  }

  .gh-about-values > :last-child:nth-child(odd) {
    grid-column: 1/-1;
  }
}
@media (max-width: 575.98px) {
  .gh-about-values, .gh-contact-grid {
    grid-template-columns: 1fr;
  }

  .gh-about-fact {
    min-height: 130px;
    padding: 1.2rem;
  }
}
.gh-cycle-wrap {
  display: flex;
  justify-content: center;
  margin-bottom: 0.6rem;
}

.gh-cycle {
  position: relative;
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  margin: 0;
  padding: 5px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(58, 70, 84, 0.08), 0 0 0 1px rgba(58, 70, 84, 0.08);
}
.gh-cycle input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.gh-cycle label {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  min-width: 150px;
  padding: 0.7rem 1.4rem;
  border-radius: 999px;
  color: #3a4654;
  font-weight: 700;
  cursor: pointer;
  transition: color 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.gh-cycle .gh-cycle-thumb {
  position: absolute;
  top: 5px;
  bottom: 5px;
  left: 5px;
  width: calc(50% - 5px);
  border-radius: 999px;
  background: #ff7ba0;
  box-shadow: 0 8px 20px rgba(255, 123, 160, 0.4);
  transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);
}
.gh-cycle input:checked + label {
  color: #29323c;
}
.gh-cycle input:focus-visible + label {
  outline: 3px solid rgba(255, 123, 160, 0.6);
  outline-offset: 2px;
}

.gh-cycle-save {
  padding: 0.1rem 0.5rem;
  border-radius: 999px;
  background: rgba(63, 165, 138, 0.14);
  color: #2e8a71;
  font-size: 0.78rem;
  transition: background 0.3s cubic-bezier(0.2, 0.7, 0.2, 1), color 0.3s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.gh-cycle-hint {
  margin: 0 0 2.2rem;
  color: #646e7c;
  font-size: 0.92rem;
  text-align: center;
}

@media (max-width: 991.98px) {
  .gh-cycle-wrap {
    position: sticky;
    top: 96px;
    z-index: 6;
  }

  .gh-cycle {
    box-shadow: 0 10px 28px rgba(58, 70, 84, 0.18), 0 0 0 1px rgba(58, 70, 84, 0.08);
  }
}
.gh-pricing .gh-cyc-year {
  display: none;
}

.gh-pricing:has(#ghCycleYear:checked) .gh-cyc-month {
  display: none;
}
.gh-pricing:has(#ghCycleYear:checked) .gh-cyc-year {
  display: revert;
}
.gh-pricing:has(#ghCycleYear:checked) .gh-cycle-thumb {
  transform: translateX(100%);
}
.gh-pricing:has(#ghCycleYear:checked) .gh-cycle-save {
  background: rgba(255, 255, 255, 0.55);
  color: #29323c;
}

@keyframes gh-price-swap {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .gh-pricing .gh-cyc-month, .gh-pricing .gh-cyc-year {
    animation: gh-price-swap 0.38s cubic-bezier(0.22, 1, 0.36, 1);
  }
}
@media (prefers-reduced-motion: reduce) {
  .gh-cycle .gh-cycle-thumb {
    transition: none;
  }
}
@media (max-width: 575.98px) {
  .gh-cycle label {
    min-width: 0;
    padding: 0.65rem 1rem;
  }
}
@media (max-width: 575.98px) {
  .gh-plans {
    gap: 0.85rem;
  }

  .gh-plan {
    padding: 1.4rem 1.2rem 1.1rem;
    border-radius: 22px;
  }

  .gh-plan h2::after {
    margin-top: 0.4rem;
  }

  .gh-plan-who {
    margin-top: 0.25rem;
    font-size: 0.88rem;
  }

  .gh-plan .gh-price {
    margin-top: 0.9rem;
    font-size: 2.9rem;
  }

  .gh-plan--featured .gh-price {
    font-size: 3.4rem;
  }

  .gh-plan-vat {
    margin: 0.35rem 0 0.6rem;
  }

  .gh-plan-badge {
    margin-bottom: 0.6rem;
  }

  .gh-plan-after {
    margin-top: 0.4rem;
    padding: 0.7rem 0.9rem;
  }
}
