/* =========================================================
   VIMBreLab — Internal Pages
   ========================================================= */

.vl-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 20% 0%, rgba(0,116,99,.12), transparent 34rem),
    radial-gradient(circle at 90% 10%, rgba(232,163,33,.08), transparent 30rem),
    var(--black);
  color: var(--text);
}

.vl-page-shell {
  width: min(100%, 1120px);
  margin: 0 auto;
  padding-inline: 24px;
}

.vl-page-hero {
  padding: 180px 0 80px;
}

.vl-page-title {
  max-width: 980px;
  margin: 0;
  font-size: clamp(3rem, 8vw, 6.8rem);
  line-height: .92;
  letter-spacing: -.08em;
}

.vl-page-content {
  padding: 20px 0 140px;
}

.vl-page-content :where(p, li) {
  color: rgba(244,241,234,.72);
  font-size: 1.08rem;
  line-height: 1.8;
}

.vl-page-content :where(h2, h3) {
  margin-top: 64px;
  margin-bottom: 18px;
}

.vl-page-content h2 {
  font-size: clamp(2rem, 4vw, 3.4rem);
}

.vl-page-content h3 {
  font-size: clamp(1.45rem, 2.5vw, 2rem);
}

.vl-page-content a {
  color: var(--green-bright);
}

.vl-page-content .btn-primary {
  color: white;
}

.vl-page-content .btn {
  text-decoration: none;
}

@media (max-width: 700px) {
  .vl-page-hero {
    padding: 140px 0 56px;
  }

  .vl-page-content {
    padding-bottom: 100px;
  }
}


/* =========================================================
   Under Construction
   ========================================================= */

.vl-under-construction {
  position: relative;
  overflow: hidden;

  margin-top: 80px;
  padding: 54px;

  border: 1px solid rgba(255,255,255,.08);
  border-radius: 34px;

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.05),
      rgba(255,255,255,.025)
    );

  backdrop-filter: blur(18px) saturate(140%);

  box-shadow:
    0 30px 90px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.06);
}

.vl-under-construction::before {
  content: "";

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at var(--glow-x, 16%) var(--glow-y, 0%),
      rgba(0,185,156,.18),
      transparent 36%
    ),
    radial-gradient(
      circle at bottom right,
      rgba(232,163,33,.10),
      transparent 34%
    );

  pointer-events: none;
}

.vl-under-construction__eyebrow {
  margin-bottom: 18px;

  color: var(--green-bright);

  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.vl-under-construction h2 {
  max-width: 780px;
  margin-bottom: 18px;

  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: .98;
  letter-spacing: -.06em;
}

.vl-under-construction p {
  max-width: 760px;

  color: rgba(244,241,234,.72);

  font-size: 1.05rem;
  line-height: 1.8;
}

@media (max-width: 700px) {
  .vl-under-construction {
    padding: 34px 26px;
    border-radius: 26px;
  }
}

.vl-under-construction > * {
  position: relative;
  z-index: 1;
}