:root{
  --drift-blue-900:#2d5f90;
  --drift-blue-700:#5079a2;
  --drift-blue-500:#7899b2;
  --drift-ice:#f6f8fb;
  --drift-ink:#0e1a24;
  --drift-accent:#76563a; /* warm wood */
}

body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--drift-ink);
  background: #ffffff;
}

.bg-drift{
  background: linear-gradient(135deg, var(--drift-blue-900), var(--drift-blue-700) 55%, var(--drift-blue-500));
  color: #fff;
}

.navbar{
  backdrop-filter: blur(8px);
}

.brand-wordmark{
  letter-spacing: .12em;
  font-weight: 700;
}

.hero{
  padding-top: 6.5rem;
  padding-bottom: 4rem;
}

.hero-card{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 1.25rem;
  box-shadow: 0 20px 50px rgba(0,0,0,.25);
}

.hero-card h1{
  font-family: Georgia, "Times New Roman", Times, serif;
  letter-spacing: .06em;
}

.hero-card .lead{
  opacity: .95;
}

.btn-drift{
  --bs-btn-bg: var(--drift-accent);
  --bs-btn-border-color: var(--drift-accent);
  --bs-btn-hover-bg: #5e452f;
  --bs-btn-hover-border-color:#5e452f;
  --bs-btn-color:#fff;
}

.section-title{
  font-family: Georgia, "Times New Roman", Times, serif;
  letter-spacing: .06em;
}

.icon-badge{
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: var(--drift-ice);
  border: 1px solid #e6ebf2;
}

.card-soft{
  border: 1px solid #e6ebf2;
  border-radius: 1.25rem;
  box-shadow: 0 10px 25px rgba(14,26,36,.08);
}

.feature-img{
  border-radius: 1.25rem;
  background: linear-gradient(135deg, rgba(45,95,144,.25), rgba(118,86,58,.18));
  min-height: 220px;
}

footer{
  background: #0f2436;
  color: rgba(255,255,255,.9);
}

footer a{ color: rgba(255,255,255,.9); }
footer a:hover{ color: #fff; }

.small-muted{ opacity:.85; }
