:root {
  --bs-primary: #0f6b5c;
  --bs-primary-rgb: 15, 107, 92;
  --hm-primary: #0f6b5c;
  --hm-secondary: #1f3a45;
  --hm-success: #2f8f5b;
  --hm-warning: #c48a1a;
  --hm-error: #b42318;
  --hm-surface: #f5f7f6;
  --hm-surface-elevated: #ffffff;
  --hm-ink: #14212b;
  --hm-text-secondary: #5b6b73;
  --hm-border: #d7e0dc;
  --hm-accent: var(--hm-primary);
  --hm-font-family: "Cairo", system-ui, -apple-system, "Segoe UI", sans-serif;
}

body {
  color: var(--hm-ink);
  font-family: var(--hm-font-family);
}

body.public-site {
  background-color: var(--hm-surface);
}

.backdrop-blur {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.letter-spacing {
  letter-spacing: 0.14em;
}

.validation-summary-valid {
  display: none;
}

.field-validation-error,
.validation-summary-errors {
  color: var(--bs-danger);
}

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
  border-color: rgba(var(--bs-primary-rgb), 0.5);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.2);
}

