html {
  scroll-behavior: auto;
  scroll-padding-top: 80px;
}

body {
  font-family: "Inter", sans-serif;
  color: #0f172a;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6, .font-heading {
  font-family: "Lexend", sans-serif;
  font-weight: 700;
}

.text-navy {
  color: #002147 !important;
}

.text-teal {
  color: #008080 !important;
}

.text-slate-600 {
  color: #475569 !important;
}

.text-slate-400 {
  color: #94a3b8 !important;
}

.bg-navy {
  background-color: #002147 !important;
}

.bg-navy-dark {
  background-color: #001630 !important;
}

.bg-navy-subtle {
  background-color: rgba(0, 33, 71, 0.1) !important;
}

.bg-teal {
  background-color: #008080 !important;
}

.bg-teal-subtle {
  background-color: rgba(0, 128, 128, 0.1) !important;
}

.bg-slate-50 {
  background-color: #f8fafc !important;
}

.link-teal {
  color: #008080 !important;
  transition: color 0.2s;
}
.link-teal:hover {
  color: #005c5c !important;
}

.link-navy {
  color: #002147 !important;
  transition: color 0.2s;
}
.link-navy:hover {
  color: #002d61 !important;
}

.gradient-text {
  background: linear-gradient(135deg, #002147 0%, #008080 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.navbar-custom {
  position: fixed;
  width: 100%;
  z-index: 1050;
  transition: all 0.3s ease;
  padding: 1.25rem 0;
}
.navbar-custom.scrolled {
  background-color: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  border-bottom: 1px solid #f1f5f9;
  padding: 0.75rem 0;
}

.nav-link-custom {
  font-size: 0.875rem;
  font-weight: 500;
  color: #475569;
  text-decoration: none;
  transition: color 0.2s;
}
.nav-link-custom:hover {
  color: #002147;
}

.hero-section {
  position: relative;
  padding: 8rem 0 5rem;
  overflow: hidden;
}
@media (min-width: 992px) {
  .hero-section {
    padding: 12rem 0 8rem;
  }
}

.bg-blur-element {
  position: absolute;
  z-index: -1;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.1;
}

.trust-bar {
  background-color: #002147;
  padding: 3rem 0;
}
.trust-bar .metric-value {
  color: #008080;
  font-size: 2.5rem;
  font-weight: 700;
}
.trust-bar .metric-label {
  color: #94a3b8;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.problem-card, .service-card, .testimonial-card, .process-card {
  padding: 2.5rem;
  border-radius: 1.5rem;
  height: 100%;
  transition: all 0.3s ease;
  border: 1px solid transparent;
}

.problem-card {
  background-color: #fff;
  border: 1px solid #f1f5f9;
}
.problem-card:hover {
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

.service-card {
  background-color: #f8fafc;
}
.service-card:hover {
  background-color: #002147;
  color: #fff;
  transform: translateY(-8px);
}
.service-card:hover .text-navy, .service-card:hover .text-slate-600 {
  color: #fff !important;
}
.service-card:hover .service-icon {
  background-color: #008080 !important;
  color: #fff !important;
}

.testimonial-card {
  background-color: #001630;
  border: 1px solid rgba(255, 255, 255, 0.05);
  color: #fff;
}

.process-card {
  background-color: #fff;
  border: 1px solid #f1f5f9;
  position: relative;
}
.process-card .step-number {
  width: 40px;
  height: 40px;
  background-color: #002147;
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  position: absolute;
  top: -20px;
  left: 2rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.btn-round {
  border-radius: 2rem !important;
}

.btn-navy {
  background-color: #002147;
  color: #fff;
  border: none;
  padding: 0.75rem 1.5rem;
  font-weight: 700;
  transition: all 0.3s;
  text-decoration: none;
  display: inline-block;
}
.btn-navy:hover {
  background-color: #002d61;
  color: #fff;
  transform: scale(1.02);
}

.btn-teal {
  background-color: #008080;
  color: #fff;
  border: none;
  padding: 1rem 2rem;
  font-weight: 700;
  border-radius: 0.75rem;
  transition: all 0.3s;
  text-decoration: none;
  display: inline-block;
}
.btn-teal:hover {
  background-color: #005c5c;
  color: #fff;
}

.form-group-custom {
  margin-bottom: 1.5rem;
}
.form-group-custom label {
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  color: #002147;
  margin-bottom: 0.5rem;
}

.form-control-custom {
  width: 100%;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 0.75rem;
  padding: 0.75rem 1rem;
  transition: all 0.2s;
}
.form-control-custom:focus {
  background-color: #fff;
  border-color: #008080;
  box-shadow: 0 0 0 3px rgba(0, 128, 128, 0.1);
  outline: none;
}

.tracking-widest {
  letter-spacing: 0.2em;
}

.ls-tight {
  letter-spacing: -0.025em;
}

/*# sourceMappingURL=cavalrystyle.css.map */
