/* Doctor-facing editorial landing page. Other report views retain their existing layout. */
body[data-page="overview"] main {padding-top: 0}
body[data-page="overview"] .page-title {display: none}
body[data-page="overview"] .main-nav {margin-bottom: 18px}

#page-overview .hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(310px, .75fr);
  gap: clamp(30px, 4vw, 72px);
  align-items: center;
  min-height: 600px;
  padding: clamp(42px, 5.5vw, 84px);
  border: 1px solid #294763;
  border-radius: 4px;
  background: radial-gradient(circle at 22% 23%, #38608462 0, transparent 32%), linear-gradient(128deg, #112f4f 0%, #0a2543 48%, #071b31 100%);
  box-shadow: 0 26px 70px #0b274235;
}
#page-overview .hero::before {background: repeating-radial-gradient(circle at 21% 54%, transparent 0 56px, #d6c3a20b 57px 58px)}
#page-overview .hero::after {position: absolute; inset: auto 34px 25px 34px; width: auto; height: 1px; background: linear-gradient(90deg, transparent, #bb9c69a3 42%, transparent)}
#page-overview .hero-copy {position: relative; z-index: 2; max-width: 760px; width: auto}
#page-overview .hero-kicker {display: flex; align-items: center; gap: 13px; margin: 0 0 24px; color: #d9c5a4; font-size: 12px; font-weight: 600; letter-spacing: .03em}
.hero-kicker-line {width: 35px; height: 1px; flex: none; background: #c6a875}
#page-overview .hero h2 {margin: 0 0 23px; font-size: clamp(45px, 5.2vw, 78px); line-height: 1.35; font-weight: 500; letter-spacing: -.05em; text-wrap: balance}
#page-overview .hero h2 em {font-style: normal; color: #d8c198}
#page-overview .hero-description {max-width: 605px; margin: 0 0 30px; color: #d7e2ed; font-size: 15px; line-height: 2.05}
#page-overview .hero-search {display: flex; width: min(100%, 625px); max-width: none; align-items: center; padding: 6px; border: 1px solid #d8c39b; border-radius: 3px; box-shadow: 0 15px 34px #03142752}
#page-overview .hero-search input {flex: 1; min-width: 0; height: 52px; padding: 10px 16px; border: 0; background: transparent; color: #153453; font-size: 14px}
#page-overview .hero-search input:focus-visible {outline: 0}
#page-overview .hero-search button {display: flex; align-items: center; gap: 16px; padding: 13px 22px; border-radius: 2px; background: #b99a6a; color: #09223e; font-size: 13px; font-weight: 700; white-space: nowrap}
#page-overview .hero-search button:hover {background: #d3b886}
#page-overview .hero-actions {margin-top: 22px; display: flex; gap: 10px}
#page-overview .hero-actions .secondary {display: inline-flex; gap: 18px; align-items: center; justify-content: space-between; min-width: 145px; padding: 9px 13px; border: 1px solid #acc0d04a; border-radius: 2px; background: #ffffff0d; color: #f1f4f4; font-size: 12px}
#page-overview .hero-actions .secondary:hover {border-color: #c9b48c; background: #ffffff1a}

.hero-visual {position: relative; display: grid; place-items: center; height: min(32vw, 430px); min-height: 350px; overflow: hidden; border: 1px solid #bdd0d229; background: radial-gradient(circle at 50% 48%, #3560896b 0, #1b436453 37%, transparent 70%), #08243f76}
.hero-visual::before, .hero-visual::after {content: ""; position: absolute; width: 23px; height: 23px; border-color: #c6a8759c; border-style: solid}
.hero-visual::before {top: 22px; right: 22px; border-width: 1px 1px 0 0}
.hero-visual::after {bottom: 22px; left: 22px; border-width: 0 0 1px 1px}
.hero-visual-index {position: absolute; top: 27px; left: 24px; color: #d5c4a7; font: 10px Georgia, serif; letter-spacing: .15em; direction: ltr}
.hero-orbit {position: absolute; border: 1px solid #d8c19638; border-radius: 50%; pointer-events: none}
.hero-orbit-outer {width: 330px; height: 330px}
.hero-orbit-inner {width: 255px; height: 255px; border-color: #d8c19680}
.hero-monogram {position: absolute; transform: translate(-95px, -20px); color: #fff1; font: 270px/.9 Georgia, serif}
.hero-portrait {position: relative; z-index: 1; width: 176px; height: 176px; padding: 8px; border: 1px solid #d3b98a; border-radius: 50%; background: #0b2945; box-shadow: 0 0 0 16px #d6c09813, 0 16px 50px #041528a8}
.hero-portrait img {display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 50%}
.hero-visual-caption {position: absolute; bottom: 36px; color: #e7dac5; font: italic 17px Georgia, serif; letter-spacing: .025em; direction: ltr}
.hero-corner-mark {position: absolute; left: 21px; bottom: 11px; color: #ccb789; font: 12px Georgia, serif; letter-spacing: .12em; direction: ltr}

#page-overview .overview-stats {position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; width: calc(100% - 86px); margin: -26px auto 75px; border: 1px solid #e3ded3; border-top: 2px solid #b99a6a; background: #fcfbf8; box-shadow: 0 16px 46px #102f5112}
#page-overview .overview-stats article {position: relative; display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 0 17px; min-height: 116px; padding: 21px 30px; border: 0; border-left: 1px solid #e7e1d7; background: transparent}
#page-overview .overview-stats article:last-child {border-left: 0}
#page-overview .overview-stats small {grid-column: 1/-1; color: #a98e65; font: 11px Georgia, serif; direction: ltr; text-align: right}
#page-overview .overview-stats strong {font: 500 38px Georgia, serif; color: #0d2c4a}
#page-overview .overview-stats span {margin: 0; color: #6b7988; font-size: 12px; line-height: 1.6}

#page-overview .spotlight {margin: 0 0 75px; padding: 0 0 65px; border: 0; border-bottom: 1px solid #dfd9cd}
#page-overview .spotlight-head {margin-bottom: 28px}
#page-overview .spotlight-head h2, #page-overview .explore-section h2 {font-size: clamp(27px, 2.8vw, 39px); line-height: 1.5}
#page-overview .spotlight-head p:last-child {max-width: 630px; color: #6a7886; font-size: 13px; line-height: 1.85}
#page-overview .spotlight-head .text-button {padding-bottom: 7px; border-bottom: 1px solid #b99a6a}
#page-overview .spotlight-list {gap: 17px}
#page-overview .spotlight-card {position: relative; min-height: 265px; padding: 24px 26px; overflow: hidden; border: 1px solid #ded9cf; border-top: 2px solid #b99a6a; background: linear-gradient(150deg, #fff 0%, #fbfaf7 74%, #f2eee5 100%)}
#page-overview .spotlight-card::after {content: ""; position: absolute; bottom: -53px; left: -43px; width: 160px; height: 160px; border: 1px solid #ddceb563; border-radius: 50%; pointer-events: none}
#page-overview .spotlight-card:hover {border-color: #b99a6a; box-shadow: 0 16px 36px #0e284217}
#page-overview .spotlight-index {margin-bottom: 28px; color: #ad9063; font: 10px Georgia, serif; direction: ltr; text-align: right; letter-spacing: .1em}
#page-overview .spotlight-person strong {font-size: 19px}
#page-overview .spotlight-facts {gap: 10px; justify-content: space-between; margin-top: 21px; padding: 18px 0; font-size: 11px}
#page-overview .spotlight-facts b {margin-top: 3px; font-size: 18px}
#page-overview .spotlight-cta {color: #204e78; font-weight: 700}

#page-overview .explore-section {margin-bottom: 57px}
#page-overview .explore-section .section-head {margin-bottom: 23px}
#page-overview .section-side-note {color: #9a896f; font: italic 17px Georgia, serif}
#page-overview .entry-grid {gap: 16px}
#page-overview .entry-grid>button {position: relative; min-height: 265px; padding: 28px 30px; border: 1px solid #dedbd4; background: #fcfbf8; text-align: right}
#page-overview .entry-grid>button:nth-child(2) {border-color: #09223e; background: linear-gradient(145deg, #143857, #09223e); color: #fff}
#page-overview .entry-grid>button:nth-child(3) {background: #eef1ef}
#page-overview .entry-grid strong {display: block; margin-bottom: 8px; font-size: 22px}
#page-overview .entry-grid p {max-width: 320px; margin-bottom: 20px; font-size: 13px}
#page-overview .entry-grid>button:nth-child(2) p {color: #d3dde5}
#page-overview .entry-icon {margin-bottom: 40px; color: #a78b5f; font: 10px Georgia, serif; direction: ltr; text-align: right; letter-spacing: .08em}
#page-overview .entry-grid>button:nth-child(2) .entry-icon {color: #d7c39d}
#page-overview .entry-grid b {color: #21527e; font-size: 12px}
#page-overview .entry-grid>button:nth-child(2) b {color: #e5d4b5}
#page-overview .overview-bottom {gap: 18px; margin: 0 0 70px}
#page-overview .brief {min-height: 260px; padding: 33px 37px; border: 1px solid #e2dcd1; background: #eaece9}
#page-overview .brief.soft {background: #f6f3ed}
#page-overview .brief h3 {font-size: 27px; line-height: 1.5; font-weight: 500}
#page-overview .brief p {max-width: 530px; line-height: 1.9}
#page-overview .brief .text-button {margin-top: 8px}

@media (max-width: 1050px) {
  #page-overview .hero {grid-template-columns: minmax(0, 1fr) 290px; min-height: 555px; gap: 28px}
  #page-overview .hero h2 {font-size: clamp(40px, 5vw, 58px)}
  .hero-visual {min-height: 320px; height: 360px}
  .hero-orbit-outer {width: 260px; height: 260px}
  .hero-orbit-inner {width: 212px; height: 212px}
  .hero-portrait {width: 154px; height: 154px}
}
@media (max-width: 760px) {
  body[data-page="overview"] main {padding-top: 0}
  body[data-page="overview"] .main-nav {margin-bottom: 12px}
  #page-overview .hero {display: flex; flex-direction: column; align-items: stretch; gap: 0; min-height: 0; padding: 37px 24px 26px}
  #page-overview .hero-copy {max-width: none}
  #page-overview .hero-kicker {font-size: 10px; margin-bottom: 22px}
  #page-overview .hero h2 {font-size: clamp(36px, 9.2vw, 54px); line-height: 1.35; margin-bottom: 16px}
  #page-overview .hero-description {font-size: 13px; line-height: 1.9; margin-bottom: 23px}
  #page-overview .hero-search {max-width: none}
  #page-overview .hero-search input {height: 45px; font-size: 12px; padding-inline: 9px}
  #page-overview .hero-search button {padding: 10px 13px; gap: 7px; font-size: 11px}
  #page-overview .hero-actions {gap: 7px; flex-wrap: wrap; margin-top: 14px}
  #page-overview .hero-actions .secondary {min-width: 0; flex: 1; gap: 6px; font-size: 10px; white-space: nowrap}
  .hero-visual {height: 170px; min-height: 0; margin-top: 28px; border: 0; border-top: 1px solid #cbb58c58; background: transparent}
  .hero-visual::before, .hero-visual::after, .hero-visual-index, .hero-visual-caption, .hero-monogram {display: none}
  .hero-orbit-outer {width: 175px; height: 175px}
  .hero-orbit-inner {width: 139px; height: 139px}
  .hero-portrait {width: 116px; height: 116px; padding: 5px; box-shadow: 0 0 0 11px #d6c09813}
  .hero-corner-mark {display: none}
  #page-overview .hero::after {inset: auto 24px 16px 24px}
  #page-overview .overview-stats {width: 100%; margin: 0 0 51px; grid-template-columns: repeat(3, minmax(0, 1fr))}
  #page-overview .overview-stats article {display: block; min-height: 115px; padding: 16px 12px; text-align: center}
  #page-overview .overview-stats small {display: block; text-align: center; font-size: 9px}
  #page-overview .overview-stats strong {display: block; margin-top: 3px; font-size: 28px}
  #page-overview .overview-stats span {display: block; margin-top: 6px; font-size: 10px; line-height: 1.45}
  #page-overview .spotlight {margin-bottom: 47px; padding-bottom: 45px}
  #page-overview .spotlight-head {gap: 7px}
  #page-overview .spotlight-list {grid-template-columns: 1fr}
  #page-overview .spotlight-card {min-height: 0}
  #page-overview .entry-grid {grid-template-columns: 1fr; gap: 9px}
  #page-overview .entry-grid>button {min-height: 0; padding: 22px 24px}
  #page-overview .entry-icon {margin-bottom: 19px}
  #page-overview .overview-bottom {grid-template-columns: 1fr; margin-bottom: 45px}
  #page-overview .brief {min-height: 0; padding: 27px}
  #page-overview .section-side-note {display: none}
}
@media (max-width: 390px) {
  #page-overview .hero {padding-inline: 19px}
  #page-overview .hero-actions .secondary {font-size: 9px; padding-inline: 9px}
  #page-overview .overview-stats span {font-size: 9px}
}
