/* ARC master stylesheet: arc.css
   Combines theme-overrides.css and overrides.css
   Order preserved: theme first, then overrides for specificity wins
*/

/* --- theme-overrides.css --- */

/* Arc theme overrides (recreated) */
@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700');
@import url('https://fonts.googleapis.com/css?family=Raleway:300,400,600,700');

:root {
  --arc-primary: #fc6e51;
  --arc-primary-hover: #e35a3f;
  --arc-dark: #272B2F;
  --arc-muted: #737272;
  --arc-radius: 14px;
  --arc-shadow: 0 10px 25px rgba(0,0,0,.08);
}

html, body { font-family: 'Open Sans', Arial, sans-serif; color: #333; }
h1, h2, h3, h4, h5, h6 { font-family: 'Raleway', 'Open Sans', Arial, sans-serif; color: #272B2F; font-weight: 600; }

/* Header */
.arc-navbar {
  background: #fff !important;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.arc-navbar .navbar-brand img { height: 34px; width: auto; }
.arc-navbar .brand-sep { width:1px; height:24px; background: rgba(0,0,0,.1); margin:0 .75rem; }
.arc-navbar .nav-link { color:#272B2F !important; font-weight:600; padding:.5rem .75rem; }
.arc-navbar .nav-link:hover { color: var(--arc-primary) !important; }
.arc-navbar .btn-sm { padding:.35rem .6rem; font-weight:600; border-radius:.5rem; }
.arc-navbar .btn-linkish { border:1px solid rgba(0,0,0,.12); background:#fff; color:#272B2F; }
.arc-navbar .btn-linkish:hover { border-color: var(--arc-primary); color: var(--arc-primary); }

/* Footer base */
.site-footer { background:#1e2226; color:#d9d9d9; }
.site-footer h5 { color:#fff; margin-bottom:.75rem; font-weight:600; }
.site-footer p, .site-footer a { color:#d9d9d9; font-size:.95rem; margin-bottom:.4rem; }
.site-footer a:hover { color: var(--arc-primary); }
.site-footer i { margin-right:.5rem; color: var(--arc-primary); }

/* Footer grid */
.site-footer .footer-grid { display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width: 768px) { .site-footer .footer-grid { grid-template-columns: repeat(3, 1fr); } }

/* Footer logos */
.site-footer .footer-logo { display:inline-flex; align-items:center; gap:.5rem; margin-bottom:.5rem; }
.site-footer .footer-logo img { height:28px; width:auto; display:inline-block; }


/* --- HERO (ARC) --- */
.hero-arc {
  position: relative;
  background: #d6e5ed; /* light blue placeholder */
  padding: 120px 0;
}
@media (min-width: 992px) {
  .hero-arc { padding: 160px 0; }
}
.hero-arc .hero-inner {
  position: relative;
  z-index: 2;
  text-align: center;
}
.hero-arc .hero-title {
  font-weight: 700;
  letter-spacing: .5px;
  margin-bottom: 1rem;
}
.hero-arc .hero-lead {
  color: #4F4F4F;
  max-width: 820px;
  margin: 0 auto 1.5rem;
}
.hero-arc .hero-actions .btn {
  min-width: 190px;
  padding: .85rem 1.25rem;
  font-weight: 700;
  border-radius: .75rem;
}
.hero-arc .hero-actions .btn + .btn {
  margin-left: .75rem;
}


/* --- HERO FIXES (full-width + vertical buttons) --- */
.hero-arc{display:block;width:100%;clear:both;background:#d6e5ed;padding:120px 0;}
@media(min-width:992px){.hero-arc{padding:160px 0;}}
.hero-arc .hero-inner{text-align:center;max-width: 920px;margin:0 auto;}
.hero-arc .hero-actions{max-width:420px;margin:1rem auto 0;}
.hero-arc .hero-actions .btn{width:100%;padding:1rem 1.25rem;font-weight:700;border-radius:.75rem;}
.hero-arc .hero-actions .btn + .btn{margin-top:.75rem;margin-left:0;}


/* --- HERO (full-width, stacked buttons) --- */
.hero-arc{
  display:block; width:100%; clear:both;
  background:#d6e5ed; /* placeholder */
  padding:120px 0;
}
@media (min-width:992px){ .hero-arc{ padding:160px 0; } }
.hero-arc .hero-inner{ max-width:920px; margin:0 auto; text-align:center; }
.hero-arc .hero-actions{ max-width:420px; margin:1rem auto 0; }
.hero-arc .hero-actions .btn{
  width:100%; padding:1rem 1.25rem;
  font-weight:700; border-radius:.75rem;
}
.hero-arc .hero-actions .btn + .btn{ margin-top:.75rem; }


/* --- overrides.css --- */
/* v7 rebuild overrides */
header.hero, section.hero, #hero {
  color:#fff;
  min-height: 48vh;
  display:flex; align-items:center; justify-content:center;
  background:
    linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.45)),
    url('../img/hero.jpg') center/cover no-repeat !important;
}
#patients .section-intro, #clinicians .section-intro { text-align:left; }
.arc-two-col .col-lg-6 { display:block; }
.arc-carousel-wrap { max-width:560px; margin-left:auto; }
.arc-carousel-wrap .carousel-item img { max-height:360px; object-fit:contain; }


/* === v8 hero tweaks === */
header.hero, section.hero, #hero {
  color:#fff;
  text-shadow: 0 1px 2px rgba(0,0,0,.8);
  background:
    linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)),
    url('../img/hero.jpg') center/cover no-repeat !important;
  padding: 6rem 0 9rem; /* push CTAs lower */
}
header.hero h1, #hero h1 { color:#fff; }
header.hero p, #hero p { color:#f1f5f9; }

/* Side-by-side CTAs ~ two-thirds previous width */
.hero-cta{ display:flex; flex-wrap:wrap; justify-content:center; gap:1rem; margin-top:2rem; }
.hero-cta .btn{ flex: 0 1 320px; } /* approx 2/3 of the big full-width btns */
@media (max-width: 575.98px){ .hero-cta .btn{ flex: 1 1 100%; } } /* stack on phones */


/* v9 carousel sizing: smaller and uniform height */
.arc-carousel-wrap { max-width:520px; margin-left:auto; }
.arc-carousel-wrap .carousel, .arc-carousel-wrap .carousel-inner { height: 300px; }
.arc-carousel-wrap .carousel-item { height: 100%; }
.arc-carousel-wrap .carousel-item img {
  width: 100%;
  height: 100%;
  object-fit: contain; /* portrait & landscape fit within the same height */
}


/* === v9c typography and layout tweaks === */

/* Section titles: bigger + more spacing */
#patients h2, #clinicians h2 {
  font-size: 2.25rem; /* ~36px */
  letter-spacing: .2px;
  margin-bottom: 1.25rem;
}
/* Extra spacing between title and intro text */
#clinicians .section-intro, #patients .section-intro { margin-top: .5rem; }

/* Clinicians intro text centered under title */
#clinicians .section-intro { text-align: center; max-width: 60ch; margin-left: auto; margin-right: auto; }

/* Carousel smaller + uniform height with white padding */
.arc-carousel-wrap { max-width: 480px; margin-left: auto; margin-right: auto; }
.arc-carousel-wrap .carousel, .arc-carousel-wrap .carousel-inner { height: 280px; background:#fff; border-radius: 1rem; overflow: hidden; }
.arc-carousel-wrap .carousel-item { height: 100%; }
.arc-carousel-wrap .carousel-item img { width: 100%; height: 100%; object-fit: contain; background: #fff; }

/* Make indicators and caption sit below the image, not overlay */
#cliniciansCarousel .carousel-indicators { position: static; margin: .25rem 0 .25rem; }
#cliniciansCarousel .carousel-indicators [data-bs-target] { background-color: #6c757d; }
.arc-carousel-below { min-height: 1.5rem; color: #334155; }

/* Ensure hero CTA sizing we set earlier remains intact */
.hero-cta .btn{ flex: 0 1 320px; }
@media (max-width: 575.98px){ .hero-cta .btn{ flex: 1 1 100%; } }


/* === v9c-rev1 adjustments === */

/* Section titles ~20% smaller than v9c */
#patients h2, #clinicians h2 { font-size: 1.8rem; margin-bottom: 1.25rem; }

/* Make section vertical padding symmetric */
#patients, #clinicians { padding-block: 4rem; } /* 4rem top & bottom */

/* Center Clinicians intro text and buttons */
#clinicians .section-intro,
#clinicians .section-intro * { text-align: center !important; }
#clinicians .section-intro .btn {
  display: inline-flex; align-items: center; justify-content: center;
  margin: .25rem .5rem;
}

/* Carousel height to 400px */
.arc-carousel-wrap { max-width: 480px; }
.arc-carousel-wrap .carousel, .arc-carousel-wrap .carousel-inner { height: 400px; }
.arc-carousel-wrap .carousel-item { height: 100%; }
.arc-carousel-wrap .carousel-item img { width: 100%; height: 100%; object-fit: contain; background:#fff; }


/* v9c-rev4: force center alignment for Clinicians intro + buttons */
#clinicians .section-intro{
  text-align:center !important;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
}
#clinicians .section-intro .btn{
  display:inline-flex; align-items:center; justify-content:center;
  margin:.25rem .5rem;
}


/* v9c-rev5: clinician CTAs below carousel + feature grid */
.clinician-cta .btn{
  font-size:1.25rem; /* ~50% bigger */
  padding:.85rem 1.4rem;
}
.feature-icon{ font-size:2.25rem; line-height:1; }
.clinician-features h6{ font-weight:600; letter-spacing:.2px; }


/* v9c-rev6: scrollspy-like active nav styling */
.navbar .nav-link.active, .nav-link.active {
  color: #ff7a59 !important; /* orange highlight */
  border-bottom: 2px solid #ff7a59;
}
.navbar .nav-link { transition: color .2s ease; }


/* v9c-rev7: clinician features grid with inline SVG icons (offline-safe) */
.clinician-features .feature-icon { display:flex; align-items:center; justify-content:center; }
.feature-svg { display:block; }
.clinician-features h6 { font-weight:600; letter-spacing:.2px; }


/* rev8i2: hero centering/overlay, clinicians carousel, and patients layout */
.hero-arc{ min-height:100vh; display:flex; align-items:center; position:relative; }
.hero-arc::before{ content:""; position:absolute; inset:0; background:rgba(0,0,0,.45); }
.hero-arc .hero-title,.hero-arc .hero-lead,.hero-arc .hero-funding{ color:#fff !important; text-shadow:0 2px 8px rgba(0,0,0,.5); }
.hero-arc .btn-outline-primary{ color:#fff; border-color:#fff; }
.hero-arc .btn-outline-primary:hover{ background:#fff; color:#0d6efd; }

#clinicians .arc-clinicians-intro{ text-align:center !important; max-width:60ch; margin:0 auto 1rem; }
#cliniciansCarousel{ max-width:640px; margin:0 auto; }
#cliniciansCarousel .carousel-item{ background:#fff; border-radius:1rem; padding-bottom:16px; }
#cliniciansCarousel .carousel-item img{ width:100%; height:265px; object-fit:contain; background:#fff; border-top-left-radius:1rem; border-top-right-radius:1rem; }
#cliniciansCarousel .carousel-caption{ position:static; color:#334155; padding-top:.5rem; }
#cliniciansCarousel .carousel-indicators{ position:static; margin:.25rem 0 0; }
#cliniciansCarousel .carousel-item img[src*="Lesion%20diagram"],#cliniciansCarousel .carousel-item img[src*="Lesion diagram"]{ padding-top:18px; max-height:240px; }

#patients{ min-height:100vh; scroll-margin-top:72px; }
@media (min-width:992px){ #patients .arc-patients-intro{ display:flex; flex-direction:column; justify-content:center; } }
#patients .arc-patients-intro .btn{ display:none !important; }
#patients .arc-patients-intro p{ margin-bottom:1.05rem; }
#patients .patients-docs{ margin-top:1.25rem; }

.powered-by{ background:#f3f4f6; color:#374151; border:1px solid #e5e7eb; padding:.75rem 1rem; border-radius:.5rem; }

/* rev8j: Patients docs block visible and spaced */
#patients{ min-height:100vh; scroll-margin-top:72px; }
#patients .patients-docs{ margin-top:1.25rem; }
@media (min-width:992px){
  #patients .arc-patients-intro{ display:flex; flex-direction:column; justify-content:center; }
}
#patients .arc-patients-intro .btn{ display:none !important; } /* safety: hide any leftover top buttons */

/* rev8k: Clinicians vertical spacing */
#clinicians h2{ margin-bottom: 3.25rem; }                 /* more space below title */
.clinician-features{ margin-top: .75rem; margin-bottom: 2.25rem; }  /* more space around icons row */
#clinicians .arc-clinicians-intro{ margin-top: 1.75rem; margin-bottom: 1.75rem; }
#clinicians .arc-clinicians-intro p + p{ margin-top: 1.0rem; }      /* extra gap between the two paragraphs */
