:root {
  --cf-bg: #f6f8fb;
  --cf-surface: #ffffff;
  --cf-border: rgba(16, 24, 40, 0.10);
  --cf-text: #2C3E50;
  --cf-muted: #5b6b79;
  --cf-brand: #4A90E2;
  --cf-brand-2: #2C3E50;
  --cf-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, "Noto Sans", "Helvetica Neue", sans-serif;
  --cf-font-serif: Georgia, "Times New Roman", Times, serif;
  --bs-body-font-family: var(--cf-font-sans);
  --bs-primary: var(--cf-brand);
}

body {
  background-color: var(--cf-bg);
  color: var(--cf-text);
  font-family: var(--cf-font-sans);
}

.navbar-brand {
  font-weight: 700;
  letter-spacing: 0.2px;
  font-family: var(--cf-font-serif);
}

.brand-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border-radius: 8px;
  padding: 6px 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.brand-logo {
  height: 70px;
  width: auto;
  max-width: 220px;
  display: block;
  object-fit: contain;
  
}

.navbar .nav-link {
  opacity: 0.9;
}

.navbar .nav-link:hover {
  opacity: 1;
}

.bg-dark {
  background-color: var(--cf-brand-2) !important;
}

.btn-primary {
  background-color: var(--cf-brand);
  border-color: var(--cf-brand);
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: #3b7fcc;
  border-color: #3b7fcc;
}

.btn-success {
  background-color: #1f7a4b;
  border-color: #1f7a4b;
}

.btn-success:hover,
.btn-success:focus {
  background-color: #19643d;
  border-color: #19643d;
}

.hero {
  background:
    radial-gradient(1200px 450px at 20% 0%, rgba(74, 144, 226, 0.20), transparent 60%),
    radial-gradient(900px 380px at 90% 10%, rgba(44, 62, 80, 0.10), transparent 55%),
    linear-gradient(180deg, #ffffff, var(--cf-bg));
  border-bottom: 1px solid var(--cf-border);
}

.card {
  border: 1px solid var(--cf-border);
  background: var(--cf-surface);
}

.feature-icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--cf-brand);
  background: rgba(74, 144, 226, 0.12);
  border: 1px solid rgba(74, 144, 226, 0.20);
}

.form-control:focus {
  border-color: rgba(74, 144, 226, 0.55);
  box-shadow: 0 0 0 0.25rem rgba(74, 144, 226, 0.14);
}

.form-control.is-invalid,
.form-check-input.is-invalid {
  border-color: #dc3545;
}

.section-title {
  font-weight: 700;
  letter-spacing: -0.2px;
  font-family: var(--cf-font-serif);
}

.section-lead {
  color: var(--cf-muted);
}

.small-muted {
  color: var(--cf-muted);
  font-size: 0.95rem;
}

.footer-links a {
  color: rgba(255, 255, 255, 0.70);
  text-decoration: none;
}

.footer-links a:hover {
  color: rgba(255, 255, 255, 0.95);
  text-decoration: underline;
}
