.kv-legal-hero {
  background: linear-gradient(135deg, #f6fbf4 0%, #fff7ea 56%, #eef8f1 100%) !important;
  border-bottom: 1px solid rgba(63, 143, 104, 0.12);
}

.kv-legal-hero::before,
.kv-legal-hero::after {
  content: none !important;
}

.kv-legal-hero > .absolute {
  display: none !important;
}

.kv-legal-hero h1 {
  color: #132235 !important;
  letter-spacing: 0 !important;
}

.kv-legal-hero p {
  color: #52606f !important;
}

.kv-legal-hero span,
.kv-legal-badge {
  background: rgba(63, 143, 104, 0.11) !important;
  color: #2f744f !important;
  border: 1px solid rgba(63, 143, 104, 0.16);
}

.kv-legal-page {
  background:
    linear-gradient(180deg, #ffffff 0%, #f7fbf6 52%, #ffffff 100%) !important;
}

.kv-legal-page [data-animate],
.kv-vet-verify [data-animate] {
  animation: none;
}

.kv-legal-page .rounded-3xl,
.kv-vet-verify .rounded-2xl,
.kv-vet-verify .rounded-xl {
  border-radius: 20px !important;
}

.kv-legal-page .shadow-natural,
.kv-vet-verify .shadow-sm {
  box-shadow: 0 14px 36px rgba(18, 32, 53, 0.08) !important;
}

.kv-legal-page .bg-gradient-to-br,
.kv-vet-verify form,
.kv-vet-verify article {
  background: #ffffff !important;
  border: 1px solid rgba(19, 34, 53, 0.08) !important;
}

.kv-legal-page h2,
.kv-legal-page h3,
.kv-vet-verify h1,
.kv-vet-verify h2 {
  color: #132235 !important;
  letter-spacing: 0 !important;
}

.kv-legal-page p,
.kv-legal-page li,
.kv-legal-page dd,
.kv-vet-verify p,
.kv-vet-verify dd,
.kv-vet-verify span {
  color: #52606f;
}

.kv-legal-page a,
.kv-vet-verify a:not(.kv-verify-action) {
  color: #2f744f !important;
  text-decoration-color: rgba(63, 143, 104, 0.36);
}

.kv-legal-page .btn-primary,
.kv-legal-page button[type="submit"],
.kv-vet-verify button,
.kv-verify-action {
  background: #3f8f68 !important;
  border-color: #3f8f68 !important;
  color: #ffffff !important;
  box-shadow: 0 12px 24px rgba(63, 143, 104, 0.20);
}

.kv-legal-page .btn-secondary {
  background: #ffffff !important;
  border-color: rgba(63, 143, 104, 0.24) !important;
  color: #2f744f !important;
}

.kv-legal-page input,
.kv-legal-page textarea,
.kv-vet-verify input[type="text"],
.kv-vet-verify input[type="email"],
.kv-vet-verify input[type="url"],
.kv-vet-verify input[type="time"],
.kv-vet-verify textarea {
  border: 1px solid rgba(19, 34, 53, 0.16) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #132235 !important;
  box-shadow: none !important;
}

.kv-legal-page input:focus,
.kv-legal-page textarea:focus,
.kv-vet-verify input[type="text"]:focus,
.kv-vet-verify input[type="email"]:focus,
.kv-vet-verify input[type="url"]:focus,
.kv-vet-verify input[type="time"]:focus,
.kv-vet-verify textarea:focus {
  border-color: #3f8f68 !important;
  box-shadow: 0 0 0 4px rgba(63, 143, 104, 0.12) !important;
  outline: 0 !important;
}

.kv-info-panel {
  background: #ffffff;
  border: 1px solid rgba(19, 34, 53, 0.08);
  border-radius: 20px;
  box-shadow: 0 14px 36px rgba(18, 32, 53, 0.08);
}

.kv-info-soft {
  background: #f6fbf4 !important;
  border-color: rgba(63, 143, 104, 0.18) !important;
}

.kv-info-warning {
  background: #fff8ec !important;
  border-color: rgba(247, 184, 75, 0.34) !important;
}

.kv-contact-quicklink {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 16px;
  background: #f7fbf6;
  color: #132235 !important;
  font-weight: 800;
  text-decoration: none;
}

.kv-contact-quicklink:hover {
  background: #edf7ef;
}

.kv-vet-verify {
  background: linear-gradient(180deg, #f7fbf6 0%, #ffffff 64%) !important;
}

.kv-vet-verify > section:first-child {
  background: linear-gradient(135deg, #f6fbf4 0%, #fff7ea 100%) !important;
  border-color: rgba(63, 143, 104, 0.14) !important;
}

.kv-vet-verify > section:first-child p:first-child {
  color: #2f744f !important;
}

.kv-vet-verify article img {
  border-radius: 18px;
}

.kv-vet-verify dt {
  color: #7a8796 !important;
  font-weight: 700;
}

@media (max-width: 640px) {
  .kv-legal-hero {
    padding-top: 6.5rem !important;
    padding-bottom: 3rem !important;
  }

  .kv-legal-hero h1 {
    font-size: 2.25rem !important;
    line-height: 1.08 !important;
  }

  .kv-legal-page {
    padding-top: 2.5rem !important;
  }

  .kv-legal-page .p-8,
  .kv-vet-verify .p-8,
  .kv-vet-verify .p-6 {
    padding: 1.25rem !important;
  }
}
