:root {
  color-scheme: light;
  --public-deep: #061b3a;
  --public-blue: #087da8;
  --public-bright: #16a9dc;
  --public-sky: #9ee5f3;
  --public-pale: #e8f8fc;
  --public-ink: #102b3f;
  --public-muted: #58717c;
  --public-line: rgba(8, 125, 168, .18);
}

html { scroll-behavior: smooth; }
body.public-site {
  min-height: 100vh;
  background: #f7fcfe !important;
  color: var(--public-ink) !important;
}
.public-site > [aria-hidden="true"].pointer-events-none {
  background:
    radial-gradient(circle at 92% 8%, rgba(158, 229, 243, .7) 0 10rem, transparent 10.1rem),
    linear-gradient(120deg, rgba(232, 248, 252, .9), transparent 48%) !important;
}
.public-site > [aria-hidden="true"].pointer-events-none > div { display: none !important; }
.public-site > .max-w-6xl,
.public-site > .max-w-5xl { max-width: 74rem !important; padding-top: 0 !important; }

.public-site > div > header,
.public-site > header {
  position: relative;
  z-index: 30;
  min-height: 5rem;
  border-bottom: 1px solid rgba(158, 229, 243, .2);
  color: #fff;
}
.public-site > div > header::before,
.public-site > header::before {
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  content: "";
  transform: translateX(-50%);
  background: rgba(6, 27, 58, .98);
}
.public-site > div > header > a:first-child,
.public-site > header > a:first-child {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  color: #fff !important;
  font-size: 1.15rem;
  font-weight: 900 !important;
}
.public-site > div > header > a:first-child::before,
.public-site > header > a:first-child::before {
  display: grid;
  width: 2.3rem;
  height: 2.3rem;
  place-items: center;
  border-radius: 50%;
  background: var(--public-blue);
  content: "H";
  color: #fff;
  font-family: Georgia, Cambria, serif;
}
.public-site header nav a { color: #d8edf4 !important; }
.public-site header nav a:hover,
.public-site header nav a[aria-current="page"],
.public-site header nav a.bg-gray-100 { background: rgba(158, 229, 243, .12) !important; color: #fff !important; }
.public-site header nav a.bg-gray-900,
.public-site header nav a#cta-login { background: var(--public-blue) !important; color: #fff !important; }
.public-site #mobileNavToggle { border-color: rgba(255,255,255,.3) !important; background: transparent !important; color: #fff !important; }
.public-site #mobileNavMenu { border-color: var(--public-line) !important; background: rgba(255,255,255,.98) !important; color: var(--public-ink) !important; }
.public-site #mobileNavMenu a { color: var(--public-ink) !important; }

.public-site main > section:first-child,
.public-site.public-legacy-home > div > section:first-of-type {
  border-color: rgba(158,229,243,.16) !important;
  background: var(--public-deep) !important;
  color: #fff !important;
  box-shadow: 0 24px 70px rgba(6,27,58,.18) !important;
}
.public-site main > section:first-child > [aria-hidden="true"],
.public-site.public-legacy-home > div > section:first-of-type > [aria-hidden="true"] {
  background:
    radial-gradient(circle at 88% 18%, var(--public-sky) 0 8rem, transparent 8.1rem),
    radial-gradient(circle at 100% 100%, transparent 0 12rem, rgba(8,125,168,.85) 12.1rem 17rem, transparent 17.1rem) !important;
  opacity: .48;
}
.public-site main > section:first-child > [aria-hidden="true"] > div { display: none !important; }
.public-site main > section:first-child h1,
.public-site.public-legacy-home > div > section:first-of-type h1 {
  max-width: 58rem;
  color: #fff !important;
  font-family: Georgia, Cambria, "Times New Roman", serif;
  font-weight: 400 !important;
  letter-spacing: -.05em !important;
}
.public-site main > section:first-child h1 span,
.public-site.public-legacy-home > div > section:first-of-type h1 span {
  background: none !important;
  color: var(--public-sky) !important;
  -webkit-text-fill-color: var(--public-sky) !important;
}
.public-site main > section:first-child p,
.public-site.public-legacy-home > div > section:first-of-type p { color: #c8e2eb !important; }
.public-site main > section:first-child .inline-flex.rounded-full {
  border: 1px solid rgba(158,229,243,.25) !important;
  background: rgba(158,229,243,.1) !important;
  color: var(--public-sky) !important;
}
.public-site main > section:first-child dl > div,
.public-site main > section:first-child .rounded-2xl.border {
  border-color: rgba(158,229,243,.2) !important;
  background: rgba(255,255,255,.08) !important;
  color: #fff !important;
}
.public-site main > section:first-child dt { color: #9fc3d0 !important; }

.public-site h2,
.public-site section > h1 {
  color: var(--public-deep);
  font-family: Georgia, Cambria, "Times New Roman", serif;
  letter-spacing: -.035em !important;
}
.public-site section > h1 { font-weight: 400 !important; }
.public-site .bg-white\/80,
.public-site .bg-white\/70,
.public-site .bg-white {
  border-color: var(--public-line) !important;
  background-color: rgba(255,255,255,.94) !important;
  color: var(--public-ink) !important;
}
.public-site .rounded-2xl.border,
.public-site .rounded-3xl.border { box-shadow: 0 12px 36px rgba(6,27,58,.06); }
.public-site .text-gray-900,
.public-site .text-gray-800,
.public-site .dark\:text-white { color: var(--public-ink) !important; }
.public-site .text-gray-700,
.public-site .text-gray-600,
.public-site .text-gray-500,
.public-site .dark\:text-gray-300,
.public-site .dark\:text-gray-400 { color: var(--public-muted) !important; }
.public-site .text-emerald-700,
.public-site .text-indigo-700,
.public-site .text-purple-700,
.public-site .text-fuchsia-700,
.public-site .text-blue-700,
.public-site .text-blue-600 { color: var(--public-blue) !important; }
.public-site .bg-emerald-600,
.public-site .bg-indigo-600,
.public-site .bg-purple-600,
.public-site .bg-blue-600,
.public-site .bg-gray-900 { background-color: var(--public-blue) !important; color: #fff !important; }
.public-site .hover\:bg-emerald-700:hover,
.public-site .hover\:bg-indigo-700:hover,
.public-site .hover\:bg-purple-700:hover,
.public-site .hover\:bg-blue-700:hover,
.public-site .hover\:bg-black:hover { background-color: #05678d !important; }
.public-site button,
.public-site a { transition: background-color .15s ease, border-color .15s ease, color .15s ease, transform .15s ease; }
.public-site button:hover,
.public-site a[class*="px-"]:hover { transform: translateY(-1px); }
.public-site input,
.public-site select,
.public-site textarea {
  border-color: #cfe6ee !important;
  border-radius: .9rem !important;
  background: #fff !important;
  color: var(--public-ink) !important;
}
.public-site input:focus,
.public-site select:focus,
.public-site textarea:focus {
  border-color: var(--public-blue) !important;
  outline: 3px solid rgba(22,169,220,.18) !important;
  box-shadow: none !important;
}
.public-site footer { border-color: var(--public-line) !important; }
.public-global-footer {
  width: min(100% - 2rem, 74rem);
  margin: 4rem auto 0;
  border-top: 1px solid var(--public-line);
  padding: 2rem 0;
}
.public-global-footer-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 1.25rem;
  color: var(--public-muted);
  font-size: .875rem;
  font-weight: 700;
}
.public-global-footer-nav a:hover { color: var(--public-blue); }

.public-site.public-feature main > section:first-child {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(158,229,243,.16);
  border-radius: 2rem;
  padding: clamp(2rem, 6vw, 4.5rem);
}
.public-site.public-feature main > section:first-child::after {
  position: absolute;
  right: -8rem;
  bottom: -15rem;
  width: 30rem;
  aspect-ratio: 1;
  border: 4rem solid var(--public-blue);
  border-radius: 50%;
  content: "";
  opacity: .45;
  pointer-events: none;
}
.public-site.public-feature main > section:first-child > * { position: relative; z-index: 1; }
.public-site.public-feature main > section:first-child .grid > div { border-color: rgba(158,229,243,.2) !important; background: rgba(255,255,255,.08) !important; }

.public-site.public-login {
  display: grid !important;
  grid-template-rows: auto 1fr;
  min-height: 100vh;
  height: auto !important;
  place-items: center;
  padding: 0 2rem 2rem;
  background:
    radial-gradient(circle at 82% 16%, var(--public-sky) 0 9rem, transparent 9.1rem),
    linear-gradient(135deg, var(--public-deep) 0 52%, var(--public-pale) 52.1%) !important;
}
.public-site.public-login > div {
  border: 1px solid rgba(158,229,243,.35);
  border-radius: 2rem !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 26px 80px rgba(6,27,58,.28) !important;
}
.public-site.public-login > [data-site-header] { width: calc(100% + 4rem); border: 0; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
.public-site.public-login h1 { color: var(--public-blue) !important; font-family: Georgia, Cambria, serif; font-weight: 700; }

@media (max-width: 767px) {
  .public-site > .max-w-6xl,
  .public-site > .max-w-5xl { padding-inline: .75rem !important; }
  .public-site main > section:first-child h1,
  .public-site.public-legacy-home > div > section:first-of-type h1 { font-size: clamp(2.65rem, 13vw, 4rem) !important; }
  .public-site > div > header,
  .public-site > header { min-height: 4.25rem; }
}

@media (prefers-reduced-motion: reduce) {
  .public-site *, .public-site *::before, .public-site *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
