/* Physician surfaces extend the navy and slate blue tones of the hero rings. */
.page-physicians {
  --physician-blue-base: #102337;
  --physician-blue-soft: #1b2e40;
  --physician-blue-raised: #24394b;
  --muted: #d8dde1;
  --line: rgba(216, 221, 225, .2);
  color: var(--silver-300);
  background: var(--navy-950);
  color-scheme: dark;
}

.page-physicians .physician-hero-line { display: block; }

.page-physicians .site-header.is-scrolled {
  background: rgba(4, 21, 33, .96);
  border-color: var(--line);
}

.page-physicians .site-header .brand,
.page-physicians .site-header .site-nav,
.page-physicians .site-header .audience-selector,
.page-physicians .site-header .section-link,
.page-physicians .site-header .portal-link,
.page-physicians .site-header:not(.is-scrolled) .site-nav,
.page-physicians .site-header:not(.is-scrolled) .site-nav .section-link {
  color: var(--white);
}

.page-physicians .brand-type small,
.page-physicians .audience-label,
.page-physicians .portal-link small {
  color: var(--gold-300);
}

.page-physicians .site-header .portal-link { border-color: var(--line); }
.page-physicians .portal-link small { border-left-color: var(--line); }
.page-physicians .nav-divider { background: var(--line); }
.page-physicians .menu-toggle > span:not(.sr-only) { background: var(--white); }

.page-physicians .physician-copy-section { background: var(--physician-blue-base); }

.page-physicians .editorial-section .kicker,
.page-physicians .editorial-capture .kicker,
.page-physicians .portal-dialog .kicker {
  color: var(--gold-300);
}

.page-physicians .editorial-grid {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  align-items: start;
}

.page-physicians .editorial-section h2,
.page-physicians .editorial-capture h2 {
  color: var(--white);
  font-size: clamp(34px, 3.3vw, 48px);
  text-wrap: balance;
}

.page-physicians .editorial-copy p:first-child {
  margin-top: 0;
}

.page-physicians .physician-copy-section .editorial-copy p:last-child {
  margin-bottom: 0;
}

.page-physicians .physician-infrastructure {
  background: var(--navy-950);
}

.page-physicians .physician-section-heading {
  max-width: 720px;
  margin-bottom: 42px;
}

.page-physicians .practice-support-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.page-physicians .practice-support-card {
  padding: clamp(26px, 3vw, 40px);
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--physician-blue-soft);
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .page-physicians .practice-support-card:hover {
    border-color: rgba(222, 193, 142, .78);
    box-shadow: 0 0 0 1px rgba(222, 193, 142, .12), 0 0 26px rgba(200, 154, 85, .18);
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-physicians .practice-support-card { transition: none; }
}

.page-physicians .practice-support-card h3 {
  margin: 0 0 22px;
  color: var(--white);
  font-family: var(--serif);
  font-size: clamp(27px, 2.5vw, 34px);
  font-weight: 400;
  line-height: 1.2;
  text-wrap: balance;
}

.page-physicians .practice-support-card p {
  font-size: 16px;
  line-height: 1.8;
  color: var(--muted);
}

.page-physicians .practice-support-card p:last-child {
  margin-bottom: 0;
}

.page-physicians .physician-community {
  background: var(--physician-blue-raised);
}

/* The navy layer keeps text readable even over the brightest parts of a photo. */
.page-physicians .physician-landscape {
  background-color: var(--navy-950);
  background-image:
    linear-gradient(90deg, rgba(4, 21, 33, .76), rgba(4, 21, 33, .86)),
    var(--physician-landscape);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.page-physicians .physician-landscape-island {
  --physician-landscape: url("assets/physician-island.jpg");
  background-position: center 68%;
}

.page-physicians .physician-landscape-shoreline {
  --physician-landscape: url("assets/physician-shoreline.jpg");
  background-position: center 62%;
}

.page-physicians .physician-landscape-grasses {
  --physician-landscape: url("assets/physician-beach-grasses.jpg");
  background-position: center 58%;
}

.page-physicians .physician-landscape-winter {
  --physician-landscape: url("assets/physician-winter-shore.jpg");
  background-position: center 64%;
}

.page-physicians .physician-landscape-sailing {
  --physician-landscape: url("assets/physician-sailing.jpg");
  background-position: center 65%;
}

.page-physicians .physician-landscape .editorial-copy p {
  color: #f0f3f4;
}

.page-physicians .physician-stacked-grid {
  grid-template-columns: minmax(0, 1fr);
  gap: 38px;
}

.page-physicians .physician-stacked-grid > div:first-child {
  max-width: 800px;
  margin-inline: auto;
  text-align: center;
}

.page-physicians .physician-stacked-grid h2 { margin-bottom: 0; }

.page-physicians .physician-vision-intro .editorial-copy {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 56px;
}

.page-physicians .physician-vision-intro .editorial-copy p { margin: 0; }
.page-physicians .physician-vision-intro .editorial-copy p:first-child {
  grid-column: 1 / -1;
  max-width: 830px;
  margin-inline: auto;
  text-align: center;
}

.page-physicians .physician-vision-intro .editorial-copy p:first-child {
  font-size: 21px;
  line-height: 1.65;
}

.page-physicians .physician-story-heading {
  max-width: 740px;
  margin-bottom: 46px;
}

.page-physicians .physician-photo-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(36px, 6vw, 90px);
  align-items: start;
}

.page-physicians .physician-foreground-photo {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(216, 221, 225, .3);
  border-radius: 18px;
  box-shadow: 0 24px 60px rgba(4, 21, 33, .24);
}

.page-physicians .physician-foreground-photo img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  object-position: center 82%;
}

.page-physicians .physician-single-story .editorial-grid { display: block; }
.page-physicians .physician-single-story .editorial-grid > div { max-width: 690px; }
.page-physicians .physician-single-story .editorial-grid > div:first-child { margin-bottom: 32px; }

.page-physicians .physician-vision-outlook .editorial-copy {
  max-width: 790px;
  margin-inline: auto;
  text-align: center;
}

.page-physicians .physician-vision-outlook .editorial-copy p:first-child {
  font-size: 21px;
  line-height: 1.65;
}

.page-physicians .physician-founding {
  background-image:
    linear-gradient(rgba(4, 21, 33, .72), rgba(4, 21, 33, .82)),
    url("assets/inner-circle-circular-medical-lounge.jpg");
}

.page-physicians .physician-founding .founding-panel {
  max-width: 800px;
  margin-inline: auto;
  background: rgba(16, 35, 55, .96);
  border: 1px solid var(--line);
  border-radius: 18px;
}

.page-physicians .founding-panel > .kicker,
.page-physicians .founding-panel h2 { text-align: center; }
.page-physicians .founding-panel > p:not(.kicker) { color: var(--silver-300); }

.page-physicians .physician-founding .hero-actions {
  margin-top: 28px;
  justify-content: center;
}

.page-physicians .accordion details p {
  padding-bottom: 20px;
  font-size: 16px;
  line-height: 1.8;
}

.page-physicians .physician-faq { background: var(--physician-blue-base); }
.page-physicians .physician-faq-grid {
  max-width: min(880px, var(--shell));
  grid-template-columns: minmax(0, 1fr);
  gap: 32px;
}
.page-physicians .physician-faq-grid > div:first-child { text-align: center; }
.page-physicians .accordion summary { color: var(--white); }
.page-physicians .accordion summary::after { color: var(--gold-300); }

.page-physicians .accordion summary:focus-visible {
  outline: 2px solid var(--gold-300);
  outline-offset: 4px;
}

.page-physicians .physician-signup { background: var(--navy-950); }

.page-physicians .physician-signup .form-card {
  color: var(--silver-300);
  background: var(--physician-blue-soft);
  border-color: var(--line);
  border-radius: 18px;
}

.page-physicians .interest-form label:not(.consent) { color: var(--silver-300); }

.page-physicians .interest-form input:not([type="checkbox"]),
.page-physicians .interest-form select {
  color: var(--white);
  background: var(--physician-blue-base);
  border-color: rgba(216, 221, 225, .42);
}

.page-physicians .interest-form input:focus,
.page-physicians .interest-form select:focus { border-color: var(--gold-300); }
.page-physicians .consent input { accent-color: var(--gold-300); }
.page-physicians .form-privacy a { color: var(--gold-300); }
.page-physicians .form-status { color: var(--silver-300); }

.page-physicians .portal-dialog {
  color: var(--white);
  background: var(--physician-blue-base);
}

.page-physicians .portal-dialog h2 { color: var(--white); }
.page-physicians .portal-dialog .button-navy { border-color: var(--gold-300); }
.page-physicians .dialog-close { color: var(--silver-300); }

@media (min-width: 1041px) and (max-width: 1250px) {
  .page-physicians .site-nav { gap: 18px; }
  .page-physicians .site-nav .section-link { font-size: 12px; }
}

@media (max-width: 1040px) {
  .page-physicians .site-nav { background: var(--physician-blue-base); }
}

@media (max-width: 760px) {
  .page-physicians .physician-landscape {
    background-image:
      linear-gradient(180deg, rgba(4, 21, 33, .78), rgba(4, 21, 33, .88)),
      var(--physician-landscape);
  }

  .page-physicians .editorial-grid,
  .page-physicians .practice-support-grid,
  .page-physicians .physician-photo-grid,
  .page-physicians .physician-vision-intro .editorial-copy {
    grid-template-columns: minmax(0, 1fr);
  }

  .page-physicians .physician-story-heading { margin-bottom: 30px; }
  .page-physicians .physician-photo-grid { gap: 30px; }
  .page-physicians .physician-foreground-photo { max-width: 440px; margin-inline: auto; }
  .page-physicians .physician-foreground-photo img {
    aspect-ratio: 4 / 5;
    height: auto;
    object-fit: cover;
    object-position: center 82%;
  }
  .page-physicians .physician-stacked-grid,
  .page-physicians .physician-faq-grid { gap: 28px; }
  .page-physicians .physician-vision-intro .editorial-copy p:first-child,
  .page-physicians .physician-vision-outlook .editorial-copy p:first-child { font-size: 19px; }

  .page-physicians .physician-section-heading { margin-bottom: 30px; }
  .page-physicians .practice-support-grid { gap: 18px; }
  .page-physicians .editorial-section h2,
  .page-physicians .editorial-capture h2 { font-size: clamp(32px, 8vw, 42px); }
}

.page-physicians .audience-selector summary::after { border-color: var(--gold-300); }
.page-physicians .audience-options {
  color: var(--white);
  background: var(--physician-blue-base);
  border-color: rgba(221, 185, 126, .35);
  box-shadow: 0 16px 36px rgba(0, 0, 0, .3);
}
.page-physicians .audience-selector .audience-options a[aria-current="page"]::before { color: var(--gold-300); }
.page-physicians .founding-practice-link {
  color: var(--gold-300);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .2em;
}
.page-physicians .founding-practice-link:hover { color: var(--white); }
