/* New Dawn Psychiatry — Custom Overrides v8 */
:root { --surface-warm: #f7f3ed; }

/* HEADER */
header { height: 80px !important; }
@media (min-width: 768px) { header { height: 88px !important; } }
@media (min-width: 1024px) { header { height: 96px !important; } }
header > div:first-child {
  height: 100% !important; display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important; gap: 1.5rem !important;
  padding-top: 0 !important; padding-bottom: 0 !important;
}
header > div:first-child > *:first-child { justify-self: start !important; }
header > div:first-child > nav { justify-self: center !important; }
header > div:first-child > *:last-child { justify-self: end !important; }

/* LOGO */
header a[href="/"], header a[aria-label*="New Dawn"] {
  display: inline-flex !important; align-items: center !important;
  height: 100% !important; overflow: visible !important; min-width: 220px !important;
}
@media (min-width: 768px) { header a[href="/"], header a[aria-label*="New Dawn"] { min-width: 260px !important; } }
@media (min-width: 1024px) { header a[href="/"], header a[aria-label*="New Dawn"] { min-width: 290px !important; } }
header img[alt*="New Dawn"], header a[href="/"] img, header a[aria-label*="New Dawn"] img {
  height: 44px !important; width: auto !important; max-width: none !important;
  display: block !important; transform: scale(2.9) !important; transform-origin: left center !important;
}
@media (min-width: 768px) { header a[href="/"] img, header a[aria-label*="New Dawn"] img { height: 46px !important; transform: scale(3.1) !important; } }
@media (min-width: 1024px) {
    header a[href="/"] img, header a[aria-label*="New Dawn"] img {
        height: 48px !important;
        transform: scale(7.2) !important;
        margin-top: 25px;
        margin-left: -45px;
    }
}

/* CONTACT + BOOK no wrap */
.nd-contact-link, .nd-book-btn { white-space: nowrap !important; flex-shrink: 0 !important; }

/* HERO OVERLAY — stronger dark gradient */
.min-h-screen .absolute.inset-0 + .absolute.inset-0,
section.relative.min-h-screen > .absolute:nth-child(2) {
  background: linear-gradient(to right, rgba(2,12,69,0.85) 0%, rgba(2,12,69,0.60) 50%, rgba(2,12,69,0.20) 100%) !important;
}

/* AT A GLANCE — even horizontal spacing */
section[aria-label="At a glance"] > div {
  display: flex !important; justify-content: space-evenly !important;
  flex-wrap: wrap !important; gap: 1rem 20rem !important;
}
section[aria-label="At a glance"] > div > div {
  flex: 1 1 220px !important; max-width: 320px !important;
}

/* LEFT ALIGN all single-column text */
.prose-newdawn, .about-prose { max-width: 100% !important; text-align: left !important; }
.prose-newdawn *, .about-prose * { text-align: left !important; }
section:not(.grid) > div > p:not(.text-center *) { text-align: left !important; }

/* PROVIDER PHOTO */
.provider-photo img, .aspect-square img, .aspect-\[4\/5\] img, .aspect-\[5\/6\] img {
  object-fit: cover !important; object-position: top center !important;
}

/* BLOG card images */
.aspect-\[4\/3\] img, .aspect-\[16\/10\] img { object-fit: cover !important; }

/* Force left align on all prose and content sections */
.prose-newdawn { text-align: left !important; }
.prose-newdawn * { text-align: left !important; }
main > section p,
main > section h1,
main > section h2,
main > section h3,
main > section h3,
main > section li { text-align: left !important; }
/* Override any accidental text-center on single col sections */
section:not([class*="text-center"]) > div > p,
section:not([class*="text-center"]) > div > h1,
section:not([class*="text-center"]) > div:not(.text-center) > h2 { text-align: left !important; }

/* CTA banner — force centered, override left-align rules */
#cta-banner, #cta-banner *,
#cta-banner h2, #cta-banner p, #cta-banner div {
  text-align: center !important;
}
#cta-banner .flex { justify-content: center !important; }

/* Provider bio card — clean paragraph spacing */
.prose-newdawn p + p { margin-top: 0.85em !important; }

/* Conditions page support card — force centered */
#support-card, #support-card * { text-align: center !important; }

/* Header — true 3-zone grid: logo | nav | CTAs, evenly distributed */
header > div:nth-child(2) {
  display: grid !important;
  grid-template-columns: auto 1fr auto !important; gap: 1rem !important;
  align-items: center !important;
  gap: 2rem !important;
  justify-content: unset !important;
}
  justify-content: center !important;
  justify-self: center !important;

