:root {
  --sah-teal: #329a9c;
  --sah-teal-dark: #247f82;
  --sah-blue: #086b9c;
  --sah-blue-dark: #075b86;
  --sah-ink: #123b4c;
  --sah-tint: #eef8f8;
  --sah-line: #d8e8eb;
}

body { color: var(--sah-ink); }

.brand {
  min-width: 146px;
  gap: 10px;
  color: var(--sah-blue-dark);
  letter-spacing: .12em;
}

.brand img {
  width: 46px;
  height: 46px;
  object-fit: contain;
  flex: none;
}

.brand > span {
  display: grid;
  line-height: 1;
  gap: 4px;
}

.brand b { font-size: 1.06rem; }
.brand small { align-self: auto; margin: 0; font-size: .58rem; }

.eyebrow,
.text-link,
.service-card > span:last-child,
.patient-card > a,
.visit-when a,
.package.selected h3,
.provider-card > span,
.form-result { color: var(--sah-blue); }

button,
.button { background: linear-gradient(135deg, var(--sah-teal), var(--sah-blue)); }

.secondary,
.button.secondary { background: #e8f4f5; color: var(--sah-blue-dark); }

.topbar nav a.active { color: var(--sah-blue); border-color: var(--sah-blue); }
.avatar { background: #dceff2; color: var(--sah-blue-dark); }

.hero {
  background:
    radial-gradient(circle at 82% 30%, #ffffffaa 0 7%, transparent 7.5%),
    linear-gradient(120deg, #effafa 0%, #d8f0f0 48%, #d9ecf5 100%);
}

.hero-art span,
.service-icon,
.person-avatar,
.profile-avatar,
.doctor-mark { color: var(--sah-blue); background: #e8f5f5; }

.hero-art span:nth-child(1) { color: var(--sah-blue); }
.hero-art span:nth-child(2) { color: var(--sah-teal); }
.hero-art span:nth-child(3) { color: var(--sah-blue-dark); }

.appointment-time em,
.visit-card em,
.pill { color: var(--sah-blue-dark); background: #e4f3f4; }

.service-card:hover { border-color: #bcdce0; box-shadow: 0 14px 34px #086b9c14; }
.service-note { background: linear-gradient(110deg, #e9f7f7, #e8f2f8); }
.service-note > span { color: var(--sah-blue); }

input:focus,
select:focus {
  border-color: var(--sah-teal);
  box-shadow: 0 0 0 3px #329a9c22;
  outline: none;
}

.score-ring { border-color: #9dcfd0; }
.wellness-hero { background: linear-gradient(120deg, #e7f6f5, #e5f0f7); }
.wellness-hero .eyebrow { color: var(--sah-blue); }
.streak strong { color: var(--sah-blue); }

.login-brand {
  background:
    radial-gradient(circle at 78% 22%, #ffffff88 0 12%, transparent 12.5%),
    linear-gradient(150deg, #e6f7f5, #cfeaed 55%, #d9ebf5);
}

.login-brand .brand img { width: 74px; height: 74px; }
.login-brand .brand { min-width: 210px; }
.login-brand .brand b { font-size: 1.4rem; }
.login-brand .brand small { font-size: .67rem; }

@media (max-width: 760px) {
  .brand { min-width: auto; }
  .brand img { width: 38px; height: 38px; }
  .brand > span { display: none; }
  .login-brand .brand > span { display: grid; }
}
