/* ═══ AIDocAdvise — Medical Landing Page Styles ═══ */
/* impeccable.style PRODUCT register: medical/health */

/* ── Hero ── */
.hero-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.9);
  padding: 6px 16px;
  border-radius: 20px;
  font-size: var(--text-sm);
  font-weight: 500;
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,0.2);
}
.hero-stat {
  text-align: center;
}
.hero-stat-num {
  font-size: var(--text-2xl);
  font-weight: 800;
  color: white;
  line-height: 1;
}
.hero-stat-label {
  font-size: var(--text-sm);
  color: rgba(255,255,255,0.6);
  margin-top: 4px;
}
.region-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 14px;
  border-radius: 14px;
  font-size: 0.75rem;
  font-weight: 600;
}
.region-live {
  background: rgba(0,127,59,0.2);
  color: #4ade80;
  border: 1px solid rgba(0,127,59,0.3);
}

/* ── Pain Cards ── */
.pain-card {
  background: var(--white);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: var(--space-8);
  height: 100%;
  transition: transform var(--duration-state) var(--ease-default);
}
.pain-card:hover {
  transform: translateY(-2px);
}
.pain-icon {
  font-size: 1.75rem;
  margin-bottom: var(--space-4);
}

/* ── Step Cards ── */
.step-card {
  background: var(--white);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: var(--space-8);
  height: 100%;
  transition: transform var(--duration-state) var(--ease-default);
}
.step-card:hover {
  transform: translateY(-2px);
}
.step-num {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--nhs-blue);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: var(--text-lg);
  margin-bottom: var(--space-4);
}
.step-example {
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: 8px;
  padding: var(--space-3) var(--space-4);
  font-size: var(--text-sm);
  color: var(--gray-600);
  font-style: italic;
  margin-top: var(--space-4);
}

/* ── Comparison Table ── */
.comparison-table {
  width: 100%;
  border-collapse: collapse;
}
.comparison-table th,
.comparison-table td {
  padding: var(--space-3) var(--space-4);
  text-align: left;
  border-bottom: 1px solid var(--gray-200);
  font-size: var(--text-sm);
}
.comparison-table th {
  font-weight: 600;
  color: var(--gray-700);
  background: var(--gray-50);
}
.comparison-table td:first-child {
  font-weight: 600;
  color: var(--gray-700);
  white-space: nowrap;
}
.comparison-table i {
  margin-right: 6px;
}

/* ── Expert Cards ── */
.expert-card {
  background: var(--white);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: var(--space-6);
  text-align: center;
  height: 100%;
  transition: transform var(--duration-state) var(--ease-default);
}
.expert-card:hover {
  transform: translateY(-2px);
}
.expert-icon {
  font-size: 1.5rem;
  color: var(--nhs-blue);
  margin-bottom: var(--space-3);
}
.expert-card h4 {
  font-size: var(--text-base);
  font-weight: 700;
  margin-bottom: var(--space-2);
}
.expert-card p {
  font-size: var(--text-sm);
  color: var(--gray-500);
  margin-bottom: var(--space-3);
}
.expert-sources {
  font-size: 0.7rem;
  color: var(--gray-400);
  font-weight: 500;
}

/* ── Safety Cards ── */
.safety-card {
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: var(--space-6);
  height: 100%;
}
.trust-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--gray-700);
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  padding: 8px 16px;
  border-radius: 8px;
}

/* ── Source Cards ── */
.source-card {
  background: var(--white);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: var(--space-4);
  text-align: center;
  height: 100%;
  transition: transform var(--duration-state) var(--ease-default);
}
.source-card:hover {
  transform: translateY(-2px);
}
.source-count {
  font-size: var(--text-xl);
  font-weight: 800;
  color: var(--nhs-blue);
  line-height: 1;
}
.source-name {
  font-size: var(--text-sm);
  font-weight: 700;
  color: var(--gray-800);
  margin: var(--space-2) 0;
}
.source-desc {
  font-size: 0.75rem;
  color: var(--gray-500);
  margin-bottom: var(--space-2);
}
.source-licence {
  font-size: 0.65rem;
  color: var(--gray-400);
  font-weight: 500;
}

/* ── Trust Section ── */
.trust-list {
  list-style: none;
  padding: 0;
}
.trust-list li {
  padding: var(--space-2) 0;
  font-size: var(--text-sm);
  color: var(--gray-700);
  display: flex;
  align-items: center;
  gap: 8px;
}
.trust-box {
  background: var(--gray-50);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: var(--space-6);
}
.trust-list-red,
.trust-list-green {
  list-style: none;
  padding: 0;
  margin: 0;
}
.trust-list-red li,
.trust-list-green li {
  padding: 4px 0;
  font-size: var(--text-sm);
  display: flex;
  align-items: center;
  gap: 8px;
}
.trust-list-red li { color: var(--gray-600); }
.trust-list-green li { color: var(--gray-700); }

/* ── Responsive ── */
@media (max-width: 768px) {
  .hero-fullscreen { min-height: auto; padding: 120px 0 60px; }
  .hero-stat-num { font-size: var(--text-xl); }
}
