:root {
  color-scheme: light;
  --ink: #111111;
  --muted: #242424;
  --subtle: #393939;
  --base: #f7f6f2;
  --line: #d7d6d1;
}

a:focus-visible, button:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline-color: #353535; }
.site-header { background: var(--base); border-bottom-color: var(--line); }
html { scroll-padding-top: 99px; }
.header-inner { height: 87px; }
.brand { width: 154px; height: 77px; background: var(--base); isolation: isolate; }
.brand img { width: 100%; height: auto; object-fit: contain; clip-path: none; transform: translateY(-31%); filter: none; mix-blend-mode: multiply; }
.desktop-nav, .desktop-nav a:hover { color: #111111; }
.hero { background: var(--base); }
.eyebrow, em { color: #171717; }
.hero h1 em { color: #111111; background: none; -webkit-text-fill-color: currentColor; }
.hero-copy .tiny-dot { background: #333333; box-shadow: none; }
.hero-location { color: #282828; }
.text-link { color: #171717; border-bottom-color: #777773; }
.text-link:hover { color: #000000; border-bottom-color: #111111; }
.experience-strip { border-color: var(--line); }
.experience-strip > div { border-right-color: var(--line); }
.experience-strip strong { color: #111111; }
.experience-strip span { color: #282828; }
.method-section { background: var(--base); border-color: var(--line); }
.method-list li { border-bottom-color: var(--line); }
.step-number { color: #202020; }
.about-lead { color: #171717; }
.education > span, .resource-block > span { color: #222222; }
summary, summary span { color: #171717; }
.contact-section { background: var(--base); border-top-color: var(--line); }
.contact-copy h2 em, .contact-copy > p:not(.eyebrow), .contact-phone { color: #171717; }
.footer { background: var(--base); border-top-color: var(--line); }
.footer-top p, .footer-top > a, .footer-bottom { color: #242424; }
.footer-bottom { border-top-color: var(--line); }

/* Keep the metallic panels, controls and their readable light lettering. */
.hero-visual, .area-detail, .about-brand, .location-card, dialog { color: #f3f4f6; color-scheme: dark; }
.area-tabs { border-top-color: #36393f; }
.area-tab { background-color: #121315; border-bottom-color: #36393f; }
.resource-tags span { background: #161719; }
.location-card { background-color: #191b1f; }
.area-detail .text-link, .location-card .text-link { color: #e1e4e9; border-bottom-color: #7f8793; }
.area-detail .text-link:hover, .location-card .text-link:hover { color: #ffffff; border-bottom-color: #ffffff; }
.area-detail:focus-visible, .area-tab:focus-visible, .area-detail :focus-visible, .location-card :focus-visible, dialog :focus-visible { outline-color: #f3f4f6; }
.mobile-nav { color: #f3f4f6; color-scheme: dark; border-top-color: #36393f; }
.mobile-nav a { border-bottom-color: #36393f; }
dialog .eyebrow { color: #c3c7ce; }

@media (max-width: 600px) {
  .area-tab { border-color: #424852; }
  .area-tab.active { border-color: #909aab; }
}

/* Professional identification on both the light page and media panels. */
.professional-identity { margin: -7px 0 25px; color: var(--ink); line-height: 1.65; }
.professional-identity strong { display: block; font-size: 16px; font-weight: 500; letter-spacing: -.2px; }
.professional-identity span { display: block; margin-top: 2px; font-size: 12px; color: var(--muted); }
.about-copy > .about-registration { display: inline-block; margin: 18px 0 0; padding-bottom: 11px; border-bottom: 1px solid var(--line); color: var(--ink); font-size: 12px; font-weight: 500; }
.media-registration { display: block; margin-top: 15px; font-size: 11px; line-height: 1.8; color: var(--muted); }
.video-dialog .video-registration { margin: 12px 6px 2px; color: #d7dde6; font-size: 11px; line-height: 1.7; }
.footer-top p { font-size: 12px; line-height: 1.9; }
@media (max-width: 820px) {
  html { scroll-padding-top: 90px; }
  .header-inner { height: 78px; }
  .brand { width: 134px; height: 67px; }
  .professional-identity strong { font-size: 14px; }
  .professional-identity span { font-size: 11px; }
  .about-copy > .about-registration { font-size: 11px; }
}
@media (max-width: 600px) {
  html { scroll-padding-top: 86px; }
  .header-inner { height: 74px; }
  .brand { width: 128px; height: 64px; }
  .professional-identity { margin: -7px 0 25px; }
  .professional-identity strong { font-size: 16px; }
  .professional-identity span { font-size: 12px; }
}
