:root {
  --bs-primary: #516354;
  --bs-primary-rgb: 81, 99, 84;
}
.landing-navbar {
  --bs-navbar-padding-y: 0;
  --bs-navbar-padding-x: 0;
}
.partners-grid {
  --bs-gutter-x: 0.75rem;
  --bs-gutter-y: 0.75rem;
}
@media (min-width: 768px) and (max-width: 1199.98px) {
  .hero-shift-left,
  .hero-shift-right {
    transform: none !important;
  }
  .icon-section-mid-tweak {
    margin-right: 0.75rem;
  }
}

/* ─── Survey Form: Text / Email / Tel ────────────────────────── */
#survey-form input[type="text"],
#survey-form input[type="email"],
#survey-form input[type="tel"] {
  -webkit-appearance: none;
  appearance: none;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 2px solid #e0e3e0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #2f3331;
  font-family: Manrope, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  padding: 0.625rem 0 0.75rem !important;
  transition: border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
  outline: none;
}

#survey-form input[type="text"]:focus,
#survey-form input[type="email"]:focus,
#survey-form input[type="tel"]:focus {
  border-bottom-color: #516354 !important;
  box-shadow: none !important;
  outline: none;
}

#survey-form input[type="text"]::placeholder,
#survey-form input[type="email"]::placeholder,
#survey-form input[type="tel"]::placeholder {
  color: rgba(92, 96, 93, 0.45);
  font-size: 0.9375rem;
}

/* ─── Survey Form: Select ────────────────────────────────────── */
#survey-form select {
  -webkit-appearance: none;
  appearance: none;
  background-color: #f4f4f1 !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%23516354' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e") !important;
  background-position: right 0.125rem center !important;
  background-repeat: no-repeat !important;
  background-size: 1.5em 1.5em !important;
  border: 0 !important;
  border-bottom: 2px solid #e0e3e0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #2f3331;
  cursor: pointer;
  font-family: Manrope, sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  padding: 0.625rem 2rem 0.75rem 0 !important;
  transition: border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
  outline: none;
}

#survey-form select:focus {
  border-bottom-color: #516354 !important;
  box-shadow: none !important;
  outline: none;
}

#survey-form select option[value=""] {
  color: rgba(92, 96, 93, 0.5);
}

/* ─── Survey Form: Checkbox ──────────────────────────────────── */
#survey-form input[type="checkbox"] {
  accent-color: #516354;
  cursor: pointer;
  flex-shrink: 0;
  height: 1.125rem;
  width: 1.125rem;
}

/* ─── Survey Form: Error Message Entrance ────────────────────── */
#survey-form .survey-error:not(.hidden) {
  animation: survey-err-in 0.18s ease forwards;
}

@keyframes survey-err-in {
  from { opacity: 0; transform: translateY(-3px); }
  to   { opacity: 1; transform: translateY(0); }
}
