/* Local first-use pilot: Overview presentation plus explicit header placement. */
#overviewModule .overview-inner { max-width: 1060px; gap: 0; }
#overviewModule .overview-pilot-opening { max-width: 760px; padding: 8px 0 30px; }
#overviewModule .overview-pilot-opening h2 { margin: 10px 0 22px; color: #263e38; font: 500 clamp(36px, 4.6vw, 58px)/1.06 Georgia, serif; letter-spacing: -.025em; }
#overviewModule .overview-pilot-opening > p:not(.overview-kicker):not(.overview-pilot-invitation) { margin: 0 0 15px; max-width: 690px; color: #34443f; font-size: clamp(16px, 1.45vw, 19px); line-height: 1.6; }
#overviewModule .overview-pilot-primary { min-height: 48px; padding: 12px 19px; margin-top: 6px; color: #fff; background: #28564b; border: 1px solid #28564b; border-radius: 7px; font-size: 16px; font-weight: 600; }
#overviewModule .overview-pilot-primary:hover { background: #1e453c; }
#overviewModule .overview-pilot-primary:focus-visible { outline: 3px solid #6a9d8e; outline-offset: 4px; }
#overviewModule .overview-pilot-invitation { margin: 10px 0 0; max-width: 620px; color: #57675f; font-size: 14px; line-height: 1.45; }
#overviewModule .overview-pilot-section { border-top: 1px solid #d7dfd8; }
#overviewModule .overview-pilot-section > summary { padding: 19px 0; min-height: 52px; color: #2e4c42; font-size: 18px; font-weight: 600; cursor: pointer; }
#overviewModule .overview-pilot-section > summary::marker { color: #618378; font-size: .75em; }
#overviewModule .overview-pilot-section > summary:focus-visible { outline: 2px solid #6a9d8e; outline-offset: 3px; }
#overviewModule .overview-pilot-summary-note { margin-left: 14px; color: #63746b; font-size: 14px; font-weight: 400; }
#overviewModule .overview-pilot-details { padding: 0 0 24px; }
#overviewModule .overview-pilot-details > p { max-width: 770px; margin: 0 0 18px; font-size: 16px; line-height: 1.55; color: #34443f; }
#overviewModule .overview-pilot-details > .overview-pilot-bridge { font-size: 18px; }
#overviewModule .overview-pilot-details > .overview-grid,
#overviewModule .overview-pilot-details > .overview-introduction,
#overviewModule .overview-pilot-details > .overview-structure { margin-bottom: 24px; }
#overviewModule .overview-pilot-tour-invitation { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px; margin: 0 0 20px; background: #eef3ed; border: 1px solid #d5ded5; border-radius: 9px; }
#overviewModule .overview-pilot-tour-invitation h3 { margin: 0 0 8px; font: 500 24px/1.2 Georgia, serif; }
#overviewModule .overview-pilot-tour-invitation p { margin: 0; max-width: 590px; line-height: 1.5; }
#overviewModule .overview-pilot-tour-invitation button { min-height: 44px; flex: 0 0 auto; }
#overviewModule .overview-pilot-footer { padding: 18px 0 4px; border-top: 1px solid #d7dfd8; }
#overviewModule .overview-pilot-footer .research-profile-links { margin: 0; padding: 0; justify-content: flex-start; }
#overviewModule .overview-pilot-status { margin: 12px 0 0; color: #6b756f; font-size: 12px; line-height: 1.45; }
@media (max-width: 760px) {
  #overviewModule { padding: 22px 20px; }
  #overviewModule .overview-pilot-opening { padding-top: 0; padding-bottom: 24px; }
  #overviewModule .overview-pilot-opening h2 { margin-bottom: 18px; }
  #overviewModule .overview-pilot-opening > p:not(.overview-kicker):not(.overview-pilot-invitation) { line-height: 1.5; }
  #overviewModule .overview-pilot-summary-note { display: block; margin: 6px 0 0 17px; }
  #overviewModule .overview-pilot-tour-invitation { flex-direction: column; align-items: flex-start; gap: 14px; padding: 16px; }
}

/* The inherited narrow-screen column assignment survives a later four-column
   header rule. Name every grid area so auto-placement cannot stretch a utility
   button into the flexible tab track. Keep the full tab strip on compact widths. */
body .app-header {
  grid-template-areas: "brand tabs demos controls";
  grid-template-columns: minmax(160px, 200px) minmax(0, 1fr) max-content max-content;
}
.app-header > .brand { grid-area: brand; min-width: 0; }
.app-header > .level-control {
  grid-area: tabs;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  justify-self: stretch;
  flex-wrap: nowrap;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scroll-padding-inline: 8px;
}
.app-header > #demonstrationsToggle {
  grid-area: demos;
  justify-self: end;
  width: max-content;
  min-width: 0;
  max-width: 100%;
  white-space: nowrap;
}
.app-header > #controlsToggle {
  grid-area: controls;
  justify-self: end;
  width: max-content;
  min-width: 0;
  max-width: 100%;
  white-space: nowrap;
}
@media (max-width: 1180px) {
  body .app-header {
    grid-template-areas: "brand demos controls" "tabs tabs tabs";
    grid-template-columns: minmax(0, 1fr) max-content max-content;
    gap: 6px 8px;
  }
  .app-header > .level-control::-webkit-scrollbar { display: block; height: 4px; }
}
@media (max-width: 420px) {
  body .app-header { column-gap: 5px; }
  .app-header > #demonstrationsToggle,
  .app-header > #controlsToggle { padding-inline: 8px; font-size: 13px; }
}
.overview-boundary-invitation{border-top:1px solid #cbd6d1;padding-top:20px!important;margin-top:25px!important;font-size:1rem!important}.overview-boundary-invitation a{display:block;margin-top:8px;color:#216759;text-underline-offset:4px}.boundary-return-link{display:block;font-size:13px;line-height:1.4;padding:6px 0;color:#216759;text-underline-offset:3px}
