.public-orb-left {
  left: -6rem;
  top: 1.5rem;
  height: 16rem;
  width: 16rem;
  border-radius: 9999px;
  background: rgb(164 192 212 / 0.35);
  filter: blur(48px);
}

.public-orb-right {
  right: 0;
  top: 18rem;
  height: 18rem;
  width: 18rem;
  border-radius: 9999px;
  background: rgb(103 151 181 / 0.22);
  filter: blur(48px);
}

.public-orb-bottom {
  bottom: 5rem;
  left: 33.333333%;
  height: 14rem;
  width: 14rem;
  border-radius: 9999px;
  background: rgb(217 230 239 / 0.45);
  filter: blur(48px);
}

.public-hero-panel {
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.8);
  border-radius: 32px;
  background:
    radial-gradient(circle at top left, rgba(164, 192, 212, 0.35), transparent 26%),
    linear-gradient(135deg, rgba(249, 251, 252, 0.96), rgba(232, 240, 246, 0.88));
  box-shadow: 0 24px 80px rgba(4, 17, 33, 0.1);
  backdrop-filter: blur(12px);
}

.public-soft-panel {
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.8);
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(249, 251, 252, 0.8), rgba(234, 241, 246, 0.66));
  box-shadow: 0 18px 60px rgba(4, 17, 33, 0.08);
  backdrop-filter: blur(16px);
}

.public-pill {
  display: inline-flex;
  border: 1px solid #cfe0eb;
  border-radius: 9999px;
  background: rgb(255 255 255 / 0.75);
  color: #174871;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.public-title {
  color: #041121;
}

.public-text {
  color: #505f6b;
}

.public-card {
  border: 1px solid rgb(255 255 255 / 0.85);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(238, 244, 248, 0.66));
  box-shadow: 0 16px 40px rgba(4, 17, 33, 0.08);
  backdrop-filter: blur(12px);
}

.public-card-soft {
  border: 1px solid rgb(255 255 255 / 0.85);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(238, 244, 248, 0.64));
  box-shadow: 0 18px 44px rgba(4, 17, 33, 0.08);
  backdrop-filter: blur(12px);
}

.public-cta-panel {
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.85);
  border-radius: 28px;
  background:
    radial-gradient(circle at top left, rgba(164, 192, 212, 0.26), transparent 30%),
    radial-gradient(circle at bottom right, rgba(103, 151, 181, 0.18), transparent 25%),
    linear-gradient(135deg, rgba(249, 251, 252, 0.92), rgba(232, 240, 246, 0.78));
  box-shadow: 0 20px 60px rgba(4, 17, 33, 0.1);
  backdrop-filter: blur(16px);
}

.public-btn-primary {
  border-radius: 0.75rem;
  background: #0e2e51;
  color: #fff;
  transition: background-color 0.2s ease;
}

.public-btn-primary:hover {
  background: #174871;
}

.public-btn-secondary {
  border: 1px solid #cfe0eb;
  border-radius: 0.75rem;
  background: rgb(255 255 255 / 0.65);
  color: #4f6b8c;
  transition: all 0.2s ease;
}

.public-btn-secondary:hover {
  border-color: #a4c0d4;
  background: rgb(255 255 255 / 0.85);
  color: #174871;
}

.public-plan-card {
  border: 1px solid rgb(255 255 255 / 0.85);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(238, 244, 248, 0.66));
  box-shadow: 0 18px 46px rgba(4, 17, 33, 0.08);
  backdrop-filter: blur(12px);
}

.public-plan-card-selected {
  border-color: #88aeca;
  background:
    radial-gradient(circle at top right, rgba(103, 151, 181, 0.2), transparent 40%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(232, 240, 246, 0.84));
  box-shadow:
    0 18px 46px rgba(4, 17, 33, 0.08),
    0 0 0 2px #b3cada;
}

.public-feature-pill {
  border: 1px solid rgb(255 255 255 / 0.8);
  border-radius: 0.5rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.8), rgba(239, 245, 249, 0.68));
}

.public-white-panel {
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
}

.public-form-label {
  display: block;
  font-size: 0.875rem;
  color: #505f6b;
}

.public-form-control {
  width: 100%;
  border: 1px solid #dbe6ee;
  border-radius: 0.625rem;
  background: rgb(255 255 255 / 0.96);
  color: #041121;
  padding: 0.5rem 0.75rem;
}

.public-form-control:focus {
  outline: none;
  border-color: #88aeca;
  box-shadow: 0 0 0 3px rgb(179 202 218 / 0.35);
}

.public-form-control:disabled {
  background: #eef3f7;
  color: #6f7f8e;
}

.public-muted-card {
  border: 1px solid #dbe6ee;
  border-radius: 0.75rem;
  background: #f5f9fc;
}

.public-accent-panel {
  border: 1px solid #bfdbfe;
  border-radius: 16px;
  background: linear-gradient(135deg, #eef6ff 0%, #f8fbff 100%);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
}

.public-feedback-info {
  border-radius: 0.625rem;
  background: #eaf3ff;
  color: #174871;
}

@media (max-width: 640px) {
  .public-orb-right {
    top: 22rem;
    height: 14rem;
    width: 14rem;
  }
}
