/* ===== Base colours & typography ===== */

body {
    font-family: Arial, sans-serif;
    background-color: #0f222d;
    color: #EBE7D9;
}

/* ===== Headings ===== */

h1, h2, h3, h4 {
    color: #F55139;
}

/* ===== Navigation ===== */

.nav-link {
    color: #F55139;
}

.nav-link:hover {
    color: #ff7a63;
}

/* ===== Buttons ===== */

.btn-outline-primary {
    color: #F55139;
    border-color: #F55139;
}

.btn-outline-primary:hover {
    background-color: #F55139;
    color: #0f222d;
}

/* ===== Utility tweaks ===== */

.text-body-secondary-white {
    color: #ffffff;
}

/* ===== Home page ===== */

.pps-logo {
  max-width: 320px;
  width: 100%;
  height: auto;
}

.section-title {
  margin-bottom: 0.5rem;
}

/* “Hero” image (pills.jpg) */
.hero-image {
  width: 100%;
  max-width: 620px;
  height: auto;
  border-radius: 12px;
  border: 1px solid rgba(245, 81, 57, 0.35);
}

/* Repository cards (right-hand grid) */
.repo-card {
  padding: 1rem;
  border-radius: 12px;
  border: 1px solid rgba(245, 81, 57, 0.25);
  background: rgba(255, 255, 255, 0.03);
}

/* Icon sizing consistency */
.repo-icon {
  width: 40px;
  height: auto;
}

/* Keep paragraphs readable on dark bg */
.repo-card p {
  color: #ffffff;
  margin-bottom: 0.75rem;
}

/* ===== Cardiac page helpers ===== */

.pps-accent {
  color: #F55139;
}

.ecg-card {
  padding: 1.25rem;
  border-radius: 12px;
  border: 1px solid rgba(245, 81, 57, 0.25);
  background: rgba(255, 255, 255, 0.03);
}

.ecg-table td, .ecg-table th {
  vertical-align: top;
}

.ecg-muted {
  color: rgba(235, 231, 217, 0.85);
}

.content-wrap { max-width: 1100px; margin: 0 auto; }
.section-gap { margin-top: 2.5rem; }
.img-max { width: 100%; height: auto; border-radius: 12px; }
.subtle { color: rgba(235, 231, 217, 0.85); }

.pps-accent { color: #F55139; }
.content-wrap { max-width: 1100px; margin: 0 auto; }
.section-gap { margin-top: 2.5rem; }
.img-max { width: 100%; height: auto; border-radius: 12px; }
.subtle { color: rgba(235, 231, 217, 0.85); }
.ecg-card {
  padding: 1.25rem;
  border-radius: 12px;
  border: 1px solid rgba(245, 81, 57, 0.25);
  background: rgba(255, 255, 255, 0.03);
}

/* =========================
   Text utilities
   ========================= */

.text-dark-primary {
    color: #1f2933;   /* near-black, easy on eyes */
}

.text-dark-secondary {
    color: #4b5563;   /* muted dark grey */
}

.text-dark-muted {
    color: #6b7280;
}

/* ===== Image cards (12-lead home tiles) ===== */

.hero-card {
  position: relative;
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(245, 81, 57, 0.25);
}

/* Light overlay so dark text stays readable on bright images */
.hero-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.72);
}

/* Content sits above overlay */
.hero-card .hero-content {
  position: relative;
  z-index: 1;
  color: #1f2933;
}

/* Make paragraph text readable even if .subtle is used */
.hero-card .hero-content .subtle,
.hero-card .hero-content p {
  color: rgba(31, 41, 51, 0.85);
}

/* Optional: keep headings on image cards dark (your global h1-h4 are orange) */
.hero-card .hero-content h3 {
  color: #1f2933;
}

@media print {
  .no-print { display: none !important; }
  .content-wrap { max-width: 100% !important; }
}

/* Quill / rich text content sanity */
.medical-content img { max-width: 100%; height: auto; }
.medical-content h1, .medical-content h2, .medical-content h3 { margin-top: 1rem; }
.medical-content p { margin-bottom: .75rem; }
.medical-content ul, .medical-content ol { padding-left: 1.25rem; }