body {
  position: relative;
  background: #fbfaf7;
}

.academic-top-map {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 430px;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.academic-world-scene {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

#readingProgress,
.site-shell {
  position: relative;
  z-index: 2;
}

.academic-globe {
  position: absolute;
  left: 50%;
  top: 60%;
  width: min(630px, 60vw);
  height: min(630px, 60vw);
  transform: translate(-50%, -50%);
  opacity: .48;
  filter: saturate(.82) brightness(1.08);
}

.academic-globe canvas {
  width: 100% !important;
  height: 100% !important;
}

.school-satellite {
  position: absolute;
  left: 50%;
  top: 60%;
  width: 104px;
  height: 82px;
  margin-left: -52px;
  margin-top: -41px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  box-shadow: none;
}

.school-satellite img {
  display: block;
  max-width: 92px;
  max-height: 72px;
  width: auto;
  height: auto;
  opacity: .48;
  filter: grayscale(1) contrast(1.05);
}

/* Slightly bolder labels, without making them heavy. */
.nav a,
.teaching-scroll-nav a,
.research-continuous-page .research-scroll-nav a {
  font-weight: 560 !important;
}

/* Main nav stays integrated with the site. */
.nav-wrap,
.sticky-nav,
.sticky-nav:hover,
.sticky-nav:focus-within,
.sticky-nav.is-scrolling,
.sticky-nav.is-sticky-active {
  background: rgba(251,250,247,.54) !important;
  backdrop-filter: blur(8px) saturate(1.02) !important;
  -webkit-backdrop-filter: blur(8px) saturate(1.02) !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  box-shadow: none !important;
}

/* Research and Teaching bars stay visually integrated while sticky. */
.research-continuous-page .research-scroll-nav,
.research-continuous-page .research-scroll-nav:hover,
.research-continuous-page .research-scroll-nav:focus-within,
.research-continuous-page .research-scroll-nav.is-scrolling,
.research-continuous-page .research-scroll-nav.is-sticky-active,
.teaching-scroll-nav,
.teaching-scroll-nav:hover,
.teaching-scroll-nav:focus-within,
.teaching-scroll-nav.is-scrolling,
.teaching-scroll-nav.is-sticky-active {
  background: rgba(251,250,247,.18) !important;
  backdrop-filter: blur(7px) saturate(1.02) !important;
  -webkit-backdrop-filter: blur(7px) saturate(1.02) !important;
  border: 0 !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

/* Transparent rows with shadow-only emphasis, no boxes or outlines. */
.publication-category,
.accordion,
.accordion-item,
.accordion-trigger,
.accordion-panel,
.publication-trigger {
  background: transparent !important;
  background-color: transparent !important;
}

.accordion-item {
  position: relative;
  border: 0 !important;
  border-bottom: 1px solid rgba(50,64,78,.09) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: transform .18s ease, filter .18s ease;
}

.accordion-trigger,
.publication-trigger {
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.accordion-trigger:focus,
.accordion-trigger:focus-visible,
.publication-trigger:focus,
.publication-trigger:focus-visible {
  outline: 0 !important;
  box-shadow: none !important;
}

.accordion-item:hover,
.accordion-item:focus-within,
.accordion-item.open {
  transform: translateY(-1px);
  filter: drop-shadow(0 10px 18px rgba(42,54,66,.08));
}

.accordion-item::after {
  content: "";
  position: absolute;
  left: 3%;
  right: 3%;
  bottom: 3px;
  height: 18px;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(ellipse at center, rgba(55,67,78,.10) 0%, rgba(55,67,78,0) 72%);
  filter: blur(10px);
  transition: opacity .18s ease;
}

.accordion-item:hover::after,
.accordion-item:focus-within::after,
.accordion-item.open::after {
  opacity: .65;
}

.accordion-panel {
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Local mist behind long-form text: soft fade, no card edges. */
.home-intro,
.about-dual-column,
.research-continuous-intro,
.teaching-continuous-intro,
.research-scroll-section,
.teaching-scroll-section,
.page > p,
.prose,
.post-content {
  position: relative;
}

.home-intro::before,
.about-dual-column::before,
.research-continuous-intro::before,
.teaching-continuous-intro::before,
.research-scroll-section::before,
.teaching-scroll-section::before,
.prose::before,
.post-content::before {
  content: "";
  position: absolute;
  inset: -18px -24px;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(ellipse at center, rgba(251,250,247,.68) 0%, rgba(251,250,247,.42) 56%, rgba(251,250,247,0) 84%);
  filter: blur(9px);
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 350px;
  }

  .academic-globe {
    width: min(560px, 92vw);
    height: min(560px, 92vw);
    top: 61%;
    opacity: .34;
  }

  .school-satellite {
    width: 86px;
    height: 76px;
    margin-left: -43px;
    margin-top: -38px;
  }

  .school-satellite img {
    max-width: 70px;
    max-height: 56px;
    opacity: .38;
  }
}

/* v15: keep the globe below the main navigation, refine language menu, school satellites, and contact fields. */

/* JS sets the fixed scene's top edge to the current main-nav bottom. */
.academic-world-scene {
  top: var(--academic-scene-top, 0px) !important;
  bottom: 0 !important;
  height: auto !important;
}

.academic-globe {
  top: 52% !important;
}

.school-satellite {
  top: 52% !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  overflow: visible !important;
}

.school-satellite::before,
.school-satellite::after {
  display: none !important;
  content: none !important;
}

.school-satellite img {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Language menu: compact, smooth, and always layered above the main nav. */
.site-top {
  position: relative !important;
  z-index: 1200 !important;
}

.sticky-nav,
.nav-wrap {
  z-index: 900 !important;
}

.language-menu-top {
  position: relative !important;
  z-index: 5000 !important;
}

.language-menu-top[open] {
  z-index: 5001 !important;
}

.language-menu-top .language-panel {
  right: 0 !important;
  top: 34px !important;
  min-width: 164px !important;
  width: max-content !important;
  max-width: min(220px, calc(100vw - 28px)) !important;
  max-height: min(310px, calc(100vh - 80px)) !important;
  overflow-y: auto !important;
  z-index: 5002 !important;
  padding: 4px 6px !important;
  border: 1px solid rgba(42, 54, 66, .10) !important;
  border-radius: 14px !important;
  background: rgba(251, 250, 247, .92) !important;
  box-shadow: 0 16px 38px rgba(42, 54, 66, .12) !important;
  backdrop-filter: blur(14px) saturate(1.02) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.02) !important;
}

.language-menu-top .language-panel a,
.language-menu-top .language-panel span {
  padding: 6px 9px !important;
  font-size: 12.5px !important;
  line-height: 1.25 !important;
}

.language-menu-top .language-panel a + a {
  border-top: 1px solid rgba(42, 54, 66, .08) !important;
}

.language-menu-top .language-panel span {
  margin-top: 2px !important;
  padding-top: 6px !important;
}

/* Contact form fields: transparent like the calendar, with a soft shadow instead of white blocks. */
.contact-page .contact-form input:not([type="hidden"]):not([type="file"]),
.contact-page .contact-form textarea {
  background: rgba(251, 250, 247, .18) !important;
  border: 1px solid rgba(42, 54, 66, .12) !important;
  box-shadow: 0 8px 24px rgba(42, 54, 66, .035) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
}

.contact-page .contact-form input:not([type="hidden"]):not([type="file"]):hover,
.contact-page .contact-form textarea:hover,
.contact-page .contact-form input:not([type="hidden"]):not([type="file"]):focus,
.contact-page .contact-form textarea:focus {
  background: rgba(251, 250, 247, .26) !important;
  border-color: rgba(42, 54, 66, .24) !important;
  box-shadow: 0 12px 30px rgba(42, 54, 66, .065) !important;
  outline: none !important;
}

.contact-page .message-box-wrap,
.contact-page .message-toolbar {
  background: transparent !important;
}

@media (max-width: 900px) {
  .language-menu-top .language-panel {
    position: absolute !important;
    right: 0 !important;
    left: auto !important;
    top: 34px !important;
  }

  .academic-globe,
  .school-satellite {
    top: 53% !important;
  }
}


/* v17 overrides: mountain-range header/footer, lower globe, cleaner accordions, and footer line art. */
.academic-top-map {
  height: 260px !important;
}

.academic-world-scene {
  top: var(--academic-scene-top, 0px) !important;
}

.academic-globe {
  top: 57% !important;
  opacity: .42 !important;
}

.school-satellite {
  top: 57% !important;
}

.school-satellite img {
  opacity: .34 !important;
  mix-blend-mode: multiply !important;
  filter: grayscale(1) contrast(1.04) brightness(1.02) !important;
}

/* Language menu opens above the button so it never slips under the navigation. */
.language-menu-top .language-panel {
  top: auto !important;
  bottom: calc(100% + 8px) !important;
}

/* Cleaner accordion behavior: no box effect, no heavy exposed shadows. */
.accordion-item,
.accordion-item:hover,
.accordion-item:focus-within,
.accordion-item.open {
  transform: none !important;
  filter: none !important;
  box-shadow: none !important;
}

.accordion-item::after {
  display: none !important;
}

.accordion-trigger,
.publication-trigger {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.accordion-trigger:hover .accordion-title,
.accordion-trigger:focus-visible .accordion-title,
.publication-trigger:hover .accordion-title,
.publication-trigger:focus-visible .accordion-title {
  text-shadow: 0 4px 14px rgba(42,54,66,.08);
}

#presentations .accordion-panel,
.page .accordion-panel {
  padding-top: 4px !important;
}

#presentations .accordion-meta {
  margin-bottom: 0 !important;
}

/* Footer mountain line art behind the copyright / link row. */
.footer {
  position: relative !important;
  overflow: visible !important;
}

.footer > * {
  position: relative;
  z-index: 2;
}

.academic-footer-range {
  position: absolute;
  left: 50%;
  bottom: 6px;
  transform: translateX(-50%);
  width: min(980px, 94%);
  height: 84px;
  opacity: .26;
  pointer-events: none;
  z-index: 0;
}

.academic-footer-range svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* Contact form keeps the soft translucent treatment. */
.contact-page .contact-form input:not([type="hidden"]):not([type="file"]),
.contact-page .contact-form textarea {
  background: rgba(251, 250, 247, .24) !important;
  box-shadow: 0 10px 28px rgba(42, 54, 66, .045) !important;
}

/* Mobile: keep the section nav readable and wrapped instead of clipped. */
@media (max-width: 900px) {
  .academic-top-map {
    height: 220px !important;
  }

  .academic-globe,
  .school-satellite {
    top: 59% !important;
  }

  .research-scroll-nav,
  .teaching-scroll-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px 18px !important;
    padding: 12px 8px !important;
    white-space: normal !important;
  }

  .research-scroll-nav a,
  .teaching-scroll-nav a {
    white-space: nowrap !important;
    flex: 0 1 auto !important;
  }

  .accordion-trigger,
  .publication-trigger {
    grid-template-columns: 1fr 24px !important;
    gap: 10px !important;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }

  .accordion-title,
  .publication-trigger .accordion-title {
    font-size: 18.5px !important;
    line-height: 1.3 !important;
  }

  .language-menu-top .language-panel {
    right: 0 !important;
    left: auto !important;
    top: auto !important;
    bottom: calc(100% + 6px) !important;
    max-height: min(280px, calc(100vh - 90px)) !important;
  }

  .academic-footer-range {
    width: min(94%, 720px);
    height: 68px;
    opacity: .22;
  }
}


/* v18 final overrides: restore bordered globe, move it slightly lower, restore downward language menu. */
.academic-globe {
  top: 59% !important;
}

.school-satellite {
  top: 59% !important;
}

.language-menu-top .language-panel {
  top: 34px !important;
  bottom: auto !important;
}

@media (max-width: 900px) {
  .academic-globe,
  .school-satellite {
    top: 61% !important;
  }

  .language-menu-top .language-panel {
    top: 34px !important;
    bottom: auto !important;
  }
}


/* v19: refined mountain header, lower globe, presentation typography matching publications. */
.academic-top-map {
  height: 300px !important;
}

.academic-globe,
.school-satellite {
  top: 62% !important;
}

/* Presentations use the same type scale, color, spacing, and dropdown treatment as publications. */
#presentations .accordion-trigger .accordion-title,
.presentations-page .accordion-trigger .accordion-title,
body[data-page="presentations"] .accordion-trigger .accordion-title {
  font-size: clamp(22px, 2.2vw, 27px) !important;
  line-height: 1.28 !important;
  color: var(--ink) !important;
  font-family: var(--serif) !important;
}

#presentations .accordion-trigger,
.presentations-page .accordion-trigger,
body[data-page="presentations"] .accordion-trigger {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

#presentations .accordion-meta,
.presentations-page .accordion-meta,
body[data-page="presentations"] .accordion-meta {
  color: var(--muted) !important;
  font-family: var(--sans) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  margin: 0 !important;
}

#presentations .accordion-item,
.presentations-page .accordion-item,
body[data-page="presentations"] .accordion-item {
  border-bottom: 1px solid rgba(50,64,78,.09) !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 240px !important;
  }

  .academic-globe,
  .school-satellite {
    top: 64% !important;
  }

  #presentations .accordion-trigger .accordion-title,
  .presentations-page .accordion-trigger .accordion-title,
  body[data-page="presentations"] .accordion-trigger .accordion-title {
    font-size: 19px !important;
    line-height: 1.3 !important;
  }
}

/* v20 overrides: simpler mountain line art, lower globe, and harmonized presentation metadata. */
.academic-globe {
  top: 61% !important;
}

.school-satellite {
  top: 61% !important;
}

.academic-footer-range {
  width: min(1180px, 96%) !important;
  height: 88px !important;
  bottom: 4px !important;
  opacity: .22 !important;
}

#presentations .accordion-meta,
.presentations-page .accordion-meta,
body[data-page="presentations"] .accordion-meta {
  font-size: 15px !important;
  line-height: 1.55 !important;
  color: rgba(56, 67, 78, .74) !important;
}

#presentations .accordion-panel,
.presentations-page .accordion-panel,
body[data-page="presentations"] .accordion-panel {
  padding-top: 6px !important;
}

@media (max-width: 900px) {
  .academic-globe,
  .school-satellite {
    top: 67% !important;
  }

  #presentations .accordion-meta,
  .presentations-page .accordion-meta,
  body[data-page="presentations"] .accordion-meta {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }
}

/* v21 overrides: lower globe, simpler mountains, and harmonized accordion text. */
.academic-globe {
  top: 66% !important;
}

.school-satellite {
  top: 66% !important;
}

@media (max-width: 900px) {
  .academic-globe,
  .school-satellite {
    top: 72% !important;
  }
}

.accordion-meta,
.pub-reference,
.accordion-panel p {
  font-size: 15px !important;
  line-height: 1.58 !important;
}

.accordion-meta,
.accordion-panel p,
.pub-reference {
  color: rgba(56, 67, 78, .72) !important;
}

.pub-reference {
  margin-top: 8px !important;
}

@media (max-width: 900px) {
  .accordion-meta,
  .pub-reference,
  .accordion-panel p {
    font-size: 14px !important;
    line-height: 1.52 !important;
  }
}


/* v22 overrides: bring globe slightly up, use simpler top and bottom mountains, and dock school buildings only at footer. */
.academic-globe {
  top: 63.4% !important;
}

/* orbiting buildings stop; they are docked in the footer mountain zone instead */
.school-satellite {
  top: auto !important;
}

.footer-school-satellite {
  position: absolute !important;
  top: auto !important;
  margin: 0 !important;
  transform: none !important;
  width: 98px !important;
  height: 68px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
}

.footer-satellite-dock {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.footer-school-satellite img {
  max-width: 84px !important;
  max-height: 60px !important;
  opacity: .34 !important;
  filter: grayscale(1) contrast(1.02) !important;
}

.footer-school-satellite-1 { left: 18%; bottom: 16px; }
.footer-school-satellite-2 { left: 49%; bottom: 19px; }
.footer-school-satellite-3 { left: 80%; bottom: 15px; }

.academic-footer-range {
  width: min(1180px, 96%) !important;
  height: 92px !important;
  bottom: 2px !important;
  opacity: .25 !important;
}

/* keep the top mountains airy and simple */
.academic-top-map {
  height: 300px !important;
}

/* publication and presentation explanation text meet in the middle */
.accordion-meta,
.pub-reference,
.accordion-panel p {
  font-family: var(--sans) !important;
  font-size: 15px !important;
  line-height: 1.58 !important;
  color: rgba(56, 67, 78, .70) !important;
}

#presentations .accordion-meta,
.presentations-page .accordion-meta,
body[data-page="presentations"] .accordion-meta {
  color: rgba(56, 67, 78, .68) !important;
}

@media (max-width: 900px) {
  .academic-globe {
    top: 67.4% !important;
  }

  .academic-footer-range {
    height: 76px !important;
    opacity: .23 !important;
  }

  .footer-school-satellite {
    width: 72px !important;
    height: 52px !important;
  }

  .footer-school-satellite img {
    max-width: 62px !important;
    max-height: 46px !important;
    opacity: .30 !important;
  }

  .footer-school-satellite-1 { left: 14%; bottom: 14px; }
  .footer-school-satellite-2 { left: 50%; bottom: 15px; }
  .footer-school-satellite-3 { left: 86%; bottom: 13px; }

  .accordion-meta,
  .pub-reference,
  .accordion-panel p {
    font-size: 14px !important;
    line-height: 1.52 !important;
  }
}


/* v23 overrides: use the exact continuous mountain reference image for top and footer. */
.academic-top-map {
  height: 212px !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  opacity: 1 !important;
}

.academic-mountain-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.academic-mountain-art img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: fill;
  object-position: center center;
  mix-blend-mode: multiply;
  user-select: none;
  -webkit-user-drag: none;
}

.academic-mountain-art-top img {
  opacity: .18 !important;
  filter: grayscale(1) contrast(.88) brightness(.96) !important;
}

.academic-footer-range {
  width: min(1260px, 98%) !important;
  height: 88px !important;
  bottom: 0 !important;
  opacity: 1 !important;
}

.academic-footer-range svg { display: none !important; }

.academic-mountain-art-footer img {
  opacity: .23 !important;
  filter: grayscale(1) contrast(.90) brightness(.98) !important;
}

.footer-school-satellite {
  z-index: 2 !important;
}

.footer-school-satellite img {
  opacity: .28 !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 150px !important;
  }

  .academic-mountain-art-top img {
    opacity: .17 !important;
  }

  .academic-footer-range {
    width: 100% !important;
    height: 62px !important;
  }

  .academic-mountain-art-footer img {
    opacity: .20 !important;
  }
}


/* v24 overrides: lock globe between nav and footer, and make footer art a bit more visible. */
.academic-world-scene {
  top: var(--academic-scene-top, 0px) !important;
  bottom: var(--academic-scene-bottom, 0px) !important;
  height: auto !important;
}

.academic-globe {
  top: 50% !important;
  opacity: .43 !important;
}

.school-satellite {
  top: 50% !important;
}

.academic-footer-range {
  height: 94px !important;
}

.academic-mountain-art-footer img {
  opacity: .31 !important;
  filter: grayscale(1) contrast(.92) brightness(.98) !important;
}

.footer-school-satellite img {
  opacity: .40 !important;
  filter: grayscale(1) contrast(1.03) !important;
}

/* Publications and presentations explanation text should match in size and lighter tone. */
.accordion-meta,
.pub-reference,
.accordion-panel p,
.publication-entry .pub-reference,
.accordion-panel .pub-reference {
  font-family: var(--sans) !important;
  font-size: 15px !important;
  line-height: 1.58 !important;
  color: rgba(56, 67, 78, .68) !important;
}

#presentations .accordion-meta,
.presentations-page .accordion-meta,
body[data-page="presentations"] .accordion-meta,
#publications .pub-reference,
.publications-page .pub-reference,
body[data-page="publications"] .pub-reference {
  color: rgba(56, 67, 78, .68) !important;
}

@media (max-width: 900px) {
  .academic-globe,
  .school-satellite {
    top: 51% !important;
  }

  .academic-mountain-art-footer img {
    opacity: .28 !important;
  }

  .footer-school-satellite img {
    opacity: .36 !important;
  }

  .accordion-meta,
  .pub-reference,
  .accordion-panel p {
    font-size: 14px !important;
    line-height: 1.52 !important;
  }
}


/* v25 overrides: clearer publication category separators and a stronger, lower top mountain band. */
.publication-category {
  position: relative !important;
  margin-top: 2.2rem !important;
  margin-bottom: 1rem !important;
  padding-top: 1.2rem !important;
  padding-bottom: 1rem !important;
  border: 0 !important;
}

.publication-category::before,
.publication-category::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 0;
  pointer-events: none;
}

.publication-category::before {
  top: 0;
  border-top: 1.5px solid rgba(37, 48, 58, .16) !important;
}

.publication-category::after {
  bottom: 0;
  border-bottom: 1px solid rgba(37, 48, 58, .10) !important;
}

.publication-category + .accordion-item,
.publication-category + .publication-entry,
.publication-category + .accordion,
.publication-category + .publication-list > .accordion-item:first-child {
  border-top: 0 !important;
}

/* Make publication and presentation explanation typography match and stay slightly muted. */
#publications .pub-reference,
.publications-page .pub-reference,
body[data-page="publications"] .pub-reference,
#presentations .accordion-meta,
.presentations-page .accordion-meta,
body[data-page="presentations"] .accordion-meta {
  font-family: var(--sans) !important;
  font-size: 15px !important;
  line-height: 1.58 !important;
  color: rgba(56, 67, 78, .66) !important;
}

.academic-top-map {
  height: 244px !important;
}

.academic-mountain-art-top img {
  opacity: .29 !important;
  filter: grayscale(1) contrast(.92) brightness(.97) !important;
  object-fit: cover !important;
  object-position: center 72% !important;
  transform: scale(1.08) !important;
  transform-origin: center center !important;
}

/* Slightly more visible footer mountains while keeping the same line tone. */
.academic-footer-range {
  height: 96px !important;
}

.academic-mountain-art-footer img {
  opacity: .34 !important;
  filter: grayscale(1) contrast(.92) brightness(.98) !important;
  object-fit: cover !important;
  object-position: center 54% !important;
}

@media (max-width: 900px) {
  .publication-category {
    margin-top: 1.7rem !important;
    padding-top: 1rem !important;
    padding-bottom: .85rem !important;
  }

  #publications .pub-reference,
  .publications-page .pub-reference,
  body[data-page="publications"] .pub-reference,
  #presentations .accordion-meta,
  .presentations-page .accordion-meta,
  body[data-page="presentations"] .accordion-meta {
    font-size: 14px !important;
    line-height: 1.52 !important;
  }

  .academic-top-map {
    height: 184px !important;
  }

  .academic-mountain-art-top img {
    opacity: .26 !important;
    object-position: center 74% !important;
    transform: scale(1.1) !important;
  }

  .academic-mountain-art-footer img {
    opacity: .31 !important;
  }
}


/* v26 overrides: position the complete globe below the nav instead of clipping/fading it. */
.academic-world-scene {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  overflow: hidden !important;
}

.academic-globe {
  top: var(--academic-globe-center-y, 58vh) !important;
  width: var(--academic-globe-size, min(630px, 60vw)) !important;
  height: var(--academic-globe-size, min(630px, 60vw)) !important;
  opacity: .48 !important;
  filter: saturate(.82) brightness(1.08) !important;
}

/* The globe is not clipped at the top; it is placed wholly below the protected nav zone. */
.academic-globe canvas {
  opacity: 1 !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

/* Make footer mountains and school drawings clearly visible, still subtle background elements. */
.academic-footer-range {
  height: 104px !important;
}

.academic-mountain-art-footer img {
  opacity: .46 !important;
  filter: grayscale(1) contrast(.96) brightness(.96) !important;
}

.footer-school-satellite img {
  opacity: .54 !important;
  filter: grayscale(1) contrast(1.08) brightness(.98) !important;
}

@media (max-width: 900px) {
  .academic-globe {
    top: var(--academic-globe-center-y, 60vh) !important;
    width: var(--academic-globe-size, min(470px, 78vw)) !important;
    height: var(--academic-globe-size, min(470px, 78vw)) !important;
  }

  .academic-footer-range {
    height: 78px !important;
  }

  .academic-mountain-art-footer img {
    opacity: .40 !important;
  }

  .footer-school-satellite img {
    opacity: .48 !important;
  }
}


/* v27 overrides: lower the top mountains, tighten header spacing, move bottom mountains above the footer line, and enlarge footer buildings. */
.site-top .site-header-wordmark-block {
  margin-top: 0 !important;
  margin-bottom: -4px !important;
}

.site-top .home-header-wordmark {
  margin-bottom: -10px !important;
}

.site-top .name {
  margin-top: 0 !important;
  margin-bottom: 4px !important;
}

.site-top .identity-sentence {
  margin-top: 4px !important;
  margin-bottom: 14px !important;
}

/* Bring the header mountain band slightly lower, wider, and more visible without crowding. */
.academic-top-map {
  height: 232px !important;
}

.academic-mountain-art-top img {
  opacity: .27 !important;
  filter: grayscale(1) contrast(.93) brightness(.97) !important;
  object-fit: cover !important;
  object-position: center 86% !important;
  transform: scale(1.03) !important;
  transform-origin: center center !important;
}

/* Footer art sits just above the footer line, not behind the My Blog / links row. */
.footer {
  overflow: visible !important;
}

.academic-footer-range {
  left: 50% !important;
  bottom: calc(100% + 1px) !important;
  transform: translateX(-50%) !important;
  width: min(1280px, 100%) !important;
  height: 86px !important;
  opacity: 1 !important;
  z-index: 1 !important;
}

.academic-mountain-art-footer img {
  opacity: .40 !important;
  filter: grayscale(1) contrast(.95) brightness(.97) !important;
  object-fit: cover !important;
  object-position: center 58% !important;
}

/* Make the docked school buildings match the mountains in visibility and appear about 30% larger. */
.footer-school-satellite {
  width: 128px !important;
  height: 88px !important;
}

.footer-school-satellite img {
  max-width: 108px !important;
  max-height: 76px !important;
  opacity: .40 !important;
  filter: grayscale(1) contrast(1.05) brightness(.98) !important;
}

.footer-school-satellite-1 { left: 17% !important; bottom: 8px !important; }
.footer-school-satellite-2 { left: 50% !important; bottom: 10px !important; }
.footer-school-satellite-3 { left: 82% !important; bottom: 8px !important; }

@media (max-width: 900px) {
  .site-top .home-header-wordmark {
    margin-bottom: -7px !important;
  }

  .site-top .identity-sentence {
    margin-top: 3px !important;
    margin-bottom: 12px !important;
  }

  .academic-top-map {
    height: 176px !important;
  }

  .academic-mountain-art-top img {
    opacity: .25 !important;
    object-position: center 84% !important;
    transform: scale(1.05) !important;
  }

  .academic-footer-range {
    width: 100% !important;
    height: 64px !important;
    bottom: calc(100% + 1px) !important;
  }

  .academic-mountain-art-footer img {
    opacity: .36 !important;
  }

  .footer-school-satellite {
    width: 82px !important;
    height: 58px !important;
  }

  .footer-school-satellite img {
    max-width: 70px !important;
    max-height: 50px !important;
    opacity: .36 !important;
  }

  .footer-school-satellite-1 { left: 14% !important; bottom: 4px !important; }
  .footer-school-satellite-2 { left: 50% !important; bottom: 5px !important; }
  .footer-school-satellite-3 { left: 86% !important; bottom: 4px !important; }
}


/* v28 overrides: fix globe sizing/scroll behavior, lower the top mountains, and clean up footer and category separators. */
.academic-globe {
  opacity: .52 !important;
  filter: saturate(.84) brightness(1.05) !important;
}

.site-top .home-header-wordmark {
  margin-bottom: -12px !important;
}

.site-top .name {
  margin-bottom: 2px !important;
}

.site-top .identity-sentence {
  margin-top: 3px !important;
  margin-bottom: 12px !important;
}

/* Move the upper mountains a bit lower and show the full range without cropping the peaks. */
.academic-top-map {
  top: 14px !important;
  height: 268px !important;
  overflow: hidden !important;
}

.academic-mountain-art-top,
.academic-mountain-art-footer {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  background: transparent !important;
}

.academic-mountain-art-top img,
.academic-mountain-art-footer img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: unset !important;
  object-position: center bottom !important;
  mix-blend-mode: multiply !important;
  transform: none !important;
  background: transparent !important;
}

.academic-mountain-art-top img {
  opacity: .31 !important;
  filter: grayscale(1) contrast(.92) brightness(.97) !important;
}

/* Make publication category dividers distinct without adding more line clutter. */
.publication-category {
  margin-top: 2.4rem !important;
  margin-bottom: 1.1rem !important;
  padding-top: 1rem !important;
  padding-bottom: .9rem !important;
}

.publication-category::before {
  border-top: 2.2px solid rgba(36, 48, 58, .22) !important;
}

.publication-category::after {
  border-bottom: 0 !important;
}

.accordion-item {
  border-bottom: 1px solid rgba(50, 64, 78, .075) !important;
}

/* Footer mountains should blend into the page, start right above the footer line, and span edge to edge. */
.footer {
  overflow: visible !important;
}

.academic-footer-range {
  top: -78px !important;
  bottom: auto !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 78px !important;
  transform: none !important;
  background: transparent !important;
  opacity: 1 !important;
  z-index: 1 !important;
  overflow: visible !important;
}

.academic-mountain-art-footer img {
  opacity: .43 !important;
  filter: grayscale(1) contrast(.96) brightness(.97) !important;
}

.footer-satellite-dock {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
}

.footer-school-satellite {
  width: 132px !important;
  height: 94px !important;
}

.footer-school-satellite img {
  max-width: 114px !important;
  max-height: 80px !important;
  opacity: .43 !important;
  filter: grayscale(1) contrast(1.06) brightness(.98) !important;
}

.footer-school-satellite-1 { left: 18% !important; bottom: 2px !important; }
.footer-school-satellite-2 { left: 50% !important; bottom: 4px !important; }
.footer-school-satellite-3 { left: 82% !important; bottom: 2px !important; }

@media (max-width: 900px) {
  .academic-top-map {
    top: 10px !important;
    height: 208px !important;
  }

  .academic-globe {
    opacity: .50 !important;
  }

  .publication-category::before {
    border-top-width: 2px !important;
  }

  .academic-footer-range {
    top: -58px !important;
    height: 58px !important;
  }

  .academic-mountain-art-footer img {
    opacity: .39 !important;
  }

  .footer-school-satellite {
    width: 86px !important;
    height: 60px !important;
  }

  .footer-school-satellite img {
    max-width: 74px !important;
    max-height: 52px !important;
    opacity: .39 !important;
  }

  .footer-school-satellite-1 { left: 14% !important; bottom: 1px !important; }
  .footer-school-satellite-2 { left: 50% !important; bottom: 2px !important; }
  .footer-school-satellite-3 { left: 86% !important; bottom: 1px !important; }
}


/* v29: correct placement and mountain rendering without changing the v28 globe size. */
.academic-globe {
  opacity: calc(.52 * var(--academic-globe-footer-opacity, 1)) !important;
  transition: opacity .18s linear !important;
}

/* Full mountain profile, placed lower in the header, with no crop or opaque rectangle. */
.academic-top-map {
  top: 38px !important;
  height: 238px !important;
  overflow: visible !important;
}

.academic-mountain-art-top,
.academic-mountain-art-footer {
  background: transparent !important;
}

.academic-mountain-art-top img {
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  object-fit: unset !important;
  object-position: center bottom !important;
  transform: none !important;
  opacity: .31 !important;
  filter: grayscale(1) contrast(.94) brightness(.97) !important;
}

/* Reserve a clean footer zone so mountains never cross the page content or link row. */
.footer {
  margin-top: 94px !important;
  overflow: visible !important;
}

.academic-footer-range {
  top: auto !important;
  bottom: calc(100% + 1px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 82px !important;
  transform: none !important;
  overflow: visible !important;
  background: transparent !important;
  z-index: 1 !important;
}

.academic-mountain-art-footer img {
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  object-fit: unset !important;
  object-position: center bottom !important;
  transform: none !important;
  opacity: .44 !important;
  filter: grayscale(1) contrast(.97) brightness(.97) !important;
}

.footer-school-satellite {
  width: 132px !important;
  height: 94px !important;
}

.footer-school-satellite img {
  max-width: 114px !important;
  max-height: 80px !important;
  opacity: .44 !important;
  filter: grayscale(1) contrast(1.06) brightness(.98) !important;
}

.footer-school-satellite-1 { left: 18% !important; bottom: 1px !important; }
.footer-school-satellite-2 { left: 50% !important; bottom: 3px !important; }
.footer-school-satellite-3 { left: 82% !important; bottom: 1px !important; }

@media (max-width: 900px) {
  .academic-top-map {
    top: 26px !important;
    height: 172px !important;
  }

  .academic-mountain-art-top img {
    opacity: .28 !important;
  }

  .footer {
    margin-top: 70px !important;
  }

  .academic-footer-range {
    bottom: calc(100% + 1px) !important;
    height: 60px !important;
  }

  .academic-mountain-art-footer img {
    opacity: .40 !important;
  }

  .footer-school-satellite {
    width: 86px !important;
    height: 60px !important;
  }

  .footer-school-satellite img {
    max-width: 74px !important;
    max-height: 52px !important;
    opacity: .40 !important;
  }
}


/* v30: remove footer buildings, lift the top mountains slightly above the nav, and move the handwritten wordmark upward. */
/* Remove the building drawings completely from the footer zone. */
.school-satellite,
.footer-satellite-dock,
.footer-school-satellite,
.footer-school-satellite img {
  display: none !important;
}

/* Keep the upper mountain line just above the main nav instead of letting it slip under the bar. */
.academic-top-map {
  top: 30px !important;
  height: 232px !important;
  overflow: visible !important;
}

.academic-mountain-art-top {
  align-items: flex-end !important;
  padding-bottom: 12px !important;
  box-sizing: border-box !important;
}

.academic-mountain-art-top img {
  opacity: .31 !important;
  transform: translateY(-8px) !important;
}

/* Move the handwritten wordmark a bit upward so it does not collide with the mountain line. */
.site-top .site-header-wordmark-block {
  margin-bottom: -2px !important;
}

.site-top .home-header-wordmark {
  transform: translateY(-10px) !important;
  margin-bottom: -2px !important;
}

.site-top .name {
  margin-top: -2px !important;
  margin-bottom: 4px !important;
}

.site-top .identity-sentence {
  margin-top: 2px !important;
  margin-bottom: 12px !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    top: 20px !important;
    height: 166px !important;
  }

  .academic-mountain-art-top {
    padding-bottom: 8px !important;
  }

  .academic-mountain-art-top img {
    transform: translateY(-6px) !important;
    opacity: .29 !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-8px) !important;
    margin-bottom: 0 !important;
  }

  .site-top .name {
    margin-top: -1px !important;
    margin-bottom: 4px !important;
  }
}

/* v32: requested title placement, opacity tuning, and single-line sliding mobile section nav. */

/* Keep the handwritten wordmark exactly as it is in v30. Move only the main title and subtitle lower,
   so the subtitle sits just above the main nav. */
.site-top .name {
  transform: translateY(10px) !important;
  margin-bottom: 3px !important;
}

.site-top .identity-sentence {
  transform: translateY(10px) !important;
  margin-top: 2px !important;
  margin-bottom: 4px !important;
}

/* Globe 5 percentage points less transparent. */
.academic-globe {
  opacity: calc(.57 * var(--academic-globe-footer-opacity, 1)) !important;
}

/* Upper and footer mountains 10% more transparent than v30. */
.academic-mountain-art-top img {
  opacity: .279 !important;
}

.academic-mountain-art-footer img {
  opacity: .396 !important;
}

@media (max-width: 900px) {
  .site-top .name,
  .site-top .identity-sentence {
    transform: translateY(8px) !important;
  }

  /* Research and Teaching secondary navs: one horizontal sliding line. */
  .teaching-scroll-nav,
  .research-continuous-page .research-scroll-nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    padding: 12px max(34vw, 112px) !important;
    scroll-behavior: smooth !important;
    scroll-snap-type: x proximity !important;
    overscroll-behavior-inline: contain !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
  }

  .teaching-scroll-nav::-webkit-scrollbar,
  .research-continuous-page .research-scroll-nav::-webkit-scrollbar {
    display: none !important;
  }

  .teaching-scroll-nav a,
  .research-continuous-page .research-scroll-nav a {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    scroll-snap-align: center !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    padding: 10px 14px !important;
  }

  .teaching-scroll-nav a.active,
  .teaching-scroll-nav a[aria-current="true"],
  .research-continuous-page .research-scroll-nav a.active,
  .research-continuous-page .research-scroll-nav a[aria-current="true"] {
    transform: none !important;
  }

  .academic-mountain-art-top img {
    opacity: .261 !important;
  }

  .academic-mountain-art-footer img {
    opacity: .36 !important;
  }
}

/* v33: exact header spacing and small vertical position adjustments requested. */
.site-top .name {
  margin-bottom: 1px !important;
}

.site-top .identity-sentence {
  margin-top: 1px !important;
  margin-bottom: 1px !important;
}

.nav-wrap {
  margin-top: 1px !important;
}

/* Move the top mountain band 3px upward from v32. */
.academic-top-map {
  top: 27px !important;
}

/* Move the handwritten Topal wordmark 5px upward from v32, without changing its size. */
.site-top .home-header-wordmark {
  transform: translateY(-15px) !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    top: 17px !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-13px) !important;
  }
}

/* v34: exact spacing/opacity refinements based on the uploaded full site. */
/* Subtitle has no top or bottom margins. */
.site-top .identity-sentence {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Move the handwritten Topal 5px further upward from the current v33 position. */
.site-top .home-header-wordmark {
  transform: translateY(-20px) !important;
}

/* Make both mountain bands 10% more transparent than the current full-site values. */
.academic-mountain-art-top img {
  opacity: .2511 !important;
}

.academic-mountain-art-footer img {
  opacity: .3564 !important;
}

@media (max-width: 900px) {
  .site-top .identity-sentence {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-18px) !important;
  }

  .academic-mountain-art-top img {
    opacity: .2349 !important;
  }

  .academic-mountain-art-footer img {
    opacity: .324 !important;
  }
}

/* v35: tighten the title/subtitle group directly against the main nav, while keeping the mountains fixed. */
/* Remove the parent header gap and the nav's extra top margin. */
.site-top {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.nav-wrap {
  margin-top: 0 !important;
}

/* Keep the subtitle itself free of top and bottom margins. */
.site-top .identity-sentence {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Keep the title close to the subtitle. */
.site-top .name {
  margin-bottom: 1px !important;
}

/* Move only the handwritten Topal closer to the top, without changing its size. */
.site-top .home-header-wordmark {
  transform: translateY(-35px) !important;
}

@media (max-width: 900px) {
  .site-top {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .nav-wrap {
    margin-top: 0 !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-30px) !important;
  }
}

/* v36: rebalance typography and vertical rhythm throughout the site. */
/* Site title: smaller but still clearly above page-title level. */
.site-top .name {
  font-size: clamp(38px, 5.4vw, 56px) !important;
  margin-bottom: 1px !important;
}

/* Keep a minimal breathing space between subtitle and main nav. */
.site-top .identity-sentence {
  margin-top: 0 !important;
  margin-bottom: 3px !important;
}

/* Main page titles such as About Me, Research, Teaching, and Service. */
.page-title,
.page > h1:first-child,
main h1.page-title,
main > .container > h1:first-child,
.research-continuous-page > h1,
.teaching-continuous-page > h1 {
  font-size: clamp(26px, 3.4vw, 36px) !important;
}

/* Section titles such as Dissertation, Research Trajectory, and Publications. */
.page h2,
.research-scroll-section h2,
.teaching-scroll-section h2,
.research-continuous-page h2,
.teaching-continuous-page h2 {
  font-size: clamp(22px, 2.4vw, 25px) !important;
}

/* Bring page content closer to the main navigation. */
main {
  padding-top: 28px !important;
}

/* Balance the spacing below Research and Teaching secondary navigation. */
.research-continuous-page .research-scroll-nav,
.teaching-scroll-nav {
  margin-bottom: 18px !important;
}

.research-scroll-section:first-of-type,
.teaching-scroll-section:first-of-type {
  padding-top: 8px !important;
}

/* Introductory paragraphs and ordinary body copy now use one shared size and rhythm. */
body,
.page,
.page p,
.prose,
.prose p,
.post-content,
.post-content p,
.home-intro,
.home-intro p,
.about-dual-column,
.about-dual-column p,
.research-continuous-intro,
.research-continuous-intro p,
.teaching-continuous-intro,
.teaching-continuous-intro p,
.research-scroll-section p,
.teaching-scroll-section p,
.lead,
.intro,
.intro-text {
  font-size: 18px !important;
  line-height: 1.5 !important;
}

@media (max-width: 900px) {
  .site-top .name {
    font-size: clamp(34px, 10.5vw, 46px) !important;
  }

  .page-title,
  .page > h1:first-child,
  main h1.page-title,
  main > .container > h1:first-child,
  .research-continuous-page > h1,
  .teaching-continuous-page > h1 {
    font-size: 26px !important;
  }

  .page h2,
  .research-scroll-section h2,
  .teaching-scroll-section h2,
  .research-continuous-page h2,
  .teaching-continuous-page h2 {
    font-size: 22px !important;
  }

  main {
    padding-top: 22px !important;
  }

  .research-continuous-page .research-scroll-nav,
  .teaching-scroll-nav {
    margin-bottom: 16px !important;
  }

  .research-scroll-section:first-of-type,
  .teaching-scroll-section:first-of-type {
    padding-top: 6px !important;
  }

  body,
  .page,
  .page p,
  .prose,
  .prose p,
  .post-content,
  .post-content p,
  .home-intro,
  .home-intro p,
  .about-dual-column,
  .about-dual-column p,
  .research-continuous-intro,
  .research-continuous-intro p,
  .teaching-continuous-intro,
  .teaching-continuous-intro p,
  .research-scroll-section p,
  .teaching-scroll-section p,
  .lead,
  .intro,
  .intro-text {
    font-size: 17px !important;
    line-height: 1.5 !important;
  }
}

/* v37: label scale, transparency balance, and subtitle spacing. */
.label,
.page-label,
.section-label,
.research-continuous-page .label,
.teaching-continuous-page .label,
.research-scroll-section .label,
.teaching-scroll-section .label {
  font-size: 11px !important;
  letter-spacing: .14em !important;
  line-height: 1.2 !important;
}

.site-top .identity-sentence {
  margin-bottom: 5px !important;
}

.nav-wrap,
.sticky-nav,
.sticky-nav:hover,
.sticky-nav:focus-within,
.sticky-nav.is-scrolling,
.sticky-nav.is-sticky-active {
  background: rgba(251, 250, 247, .50) !important;
}

.research-continuous-page .research-scroll-nav,
.research-continuous-page .research-scroll-nav:hover,
.research-continuous-page .research-scroll-nav:focus-within,
.research-continuous-page .research-scroll-nav.is-scrolling,
.research-continuous-page .research-scroll-nav.is-sticky-active,
.teaching-scroll-nav,
.teaching-scroll-nav:hover,
.teaching-scroll-nav:focus-within,
.teaching-scroll-nav.is-scrolling,
.teaching-scroll-nav.is-sticky-active {
  background: rgba(251, 250, 247, .25) !important;
}

.academic-globe {
  opacity: calc(.60 * var(--academic-globe-footer-opacity, 1)) !important;
}

.academic-mountain-art-top img {
  opacity: .20 !important;
}

.academic-mountain-art-footer img {
  opacity: .25 !important;
}

@media (max-width: 900px) {
  .academic-mountain-art-top img {
    opacity: .25 !important;
  }

  .academic-mountain-art-footer img {
    opacity: .35 !important;
  }
}

/* v38: smaller gray labels, one more pixel below subtitle, and slight upward header-art adjustments. */
/* Apply the 10px gray uppercase label size consistently across all pages and sections. */
.label,
.page-label,
.section-label,
.page .label,
main .label,
.research-continuous-page .label,
.teaching-continuous-page .label,
.research-scroll-section .label,
.teaching-scroll-section .label,
.about-page .label,
.service-page .label,
.diversions-page .label,
.contact-page .label,
.portfolio-page .label,
.publications-page .label,
.presentations-page .label {
  font-size: 10px !important;
  line-height: 1.2 !important;
}

/* Increase subtitle-to-nav breathing room from 5px to 6px. */
.site-top .identity-sentence {
  margin-bottom: 6px !important;
}

/* Move the mountain band 3px upward from v37. */
.academic-top-map {
  top: 24px !important;
}

/* Move the handwritten Topal 5px upward from v37, keeping its size unchanged. */
.site-top .home-header-wordmark {
  transform: translateY(-40px) !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    top: 14px !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-35px) !important;
  }
}


/* v39: remove the 1px title-to-subtitle gap, strengthen globe opacity to .65, and nudge mountains / wordmark upward. */
.site-top .name {
  margin-bottom: 0 !important;
}

.academic-globe {
  opacity: calc(.65 * var(--academic-globe-footer-opacity, 1)) !important;
}

/* Move the top mountain band 3px upward from v38. */
.academic-top-map {
  top: 21px !important;
}

/* Move the handwritten Topal 5px upward from v38, keeping size unchanged. */
.site-top .home-header-wordmark {
  transform: translateY(-45px) !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    top: 11px !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-40px) !important;
  }
}


/* v40: add 1px more subtitle breathing room, thicken globe nerve lines, and nudge mountains / wordmark upward. */
.site-top .identity-sentence {
  margin-bottom: 7px !important;
}

.academic-top-map {
  top: 19px !important;
}

.site-top .home-header-wordmark {
  transform: translateY(-48px) !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    top: 9px !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-43px) !important;
  }
}

/* v41: adjust mountain display heights only. */
.academic-top-map {
  height: 240px !important;
}

.academic-footer-range {
  height: 80px !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 180px !important;
  }

  .academic-footer-range {
    height: 60px !important;
  }
}


/* v42: tune mountain heights for mobile, nudge mountain band upward, and place handwritten Topal slightly lower. */
.academic-top-map {
  height: 225px !important;
  top: 14px !important;
}

.academic-footer-range {
  height: 75px !important;
}

/* Move the handwritten Topal slightly lower so it sits closer to about 10px below the top edge. */
.site-top .home-header-wordmark {
  transform: translateY(-44px) !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 150px !important;
    top: 4px !important;
  }

  .academic-footer-range {
    height: 50px !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(-39px) !important;
  }
}

/* v43: tighten subtitle line box while keeping 8px above the main nav. */
.site-top .identity-sentence {
  line-height: 1.25 !important;
  margin-bottom: 8px !important;
}

/* v44: tighten subtitle line-height further and increase space above the main nav. */
.site-top .identity-sentence {
  line-height: 1.20 !important;
  margin-bottom: 10px !important;
}

/* v45: move the top mountains 6px downward, closer to the main nav. */
.academic-top-map {
  top: 20px !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    top: 10px !important;
  }
}

/* v46: reduce main page titles and subsection headings. */
.page-title,
.page > h1:first-child,
main h1.page-title,
main > .container > h1:first-child,
.research-continuous-page > h1,
.teaching-continuous-page > h1 {
  font-size: clamp(24px, 3vw, 32px) !important;
}

.page h2,
.research-scroll-section h2,
.teaching-scroll-section h2,
.research-continuous-page h2,
.teaching-continuous-page h2 {
  font-size: clamp(16px, 2.2vw, 24px) !important;
}

@media (max-width: 900px) {
  .page-title,
  .page > h1:first-child,
  main h1.page-title,
  main > .container > h1:first-child,
  .research-continuous-page > h1,
  .teaching-continuous-page > h1 {
    font-size: 24px !important;
  }

  .page h2,
  .research-scroll-section h2,
  .teaching-scroll-section h2,
  .research-continuous-page h2,
  .teaching-continuous-page h2 {
    font-size: 16px !important;
  }
}


/* v47: reduce the main site title and apply page-title sizing consistently across all pages. */
.site-top .name {
  font-size: clamp(36px, 4.8vw, 48px) !important;
}

/* Main page headings on all standard pages, not only Research and Teaching. */
main .page > h1:first-child,
main .page h1:first-child,
main > .container > h1:first-child,
main h1.page-title,
.page-title,
.about-page h1,
.contact-page h1,
.service-page h1,
.diversions-page h1,
.portfolio-page h1,
.publications-page h1,
.presentations-page h1,
.blog-page h1,
.cv-page h1,
.search-page h1,
.research-continuous-page > h1,
.teaching-continuous-page > h1 {
  font-size: clamp(24px, 3vw, 32px) !important;
}

@media (max-width: 900px) {
  .site-top .name {
    font-size: clamp(32px, 9.6vw, 40px) !important;
  }

  main .page > h1:first-child,
  main .page h1:first-child,
  main > .container > h1:first-child,
  main h1.page-title,
  .page-title,
  .about-page h1,
  .contact-page h1,
  .service-page h1,
  .diversions-page h1,
  .portfolio-page h1,
  .publications-page h1,
  .presentations-page h1,
  .blog-page h1,
  .cv-page h1,
  .search-page h1,
  .research-continuous-page > h1,
  .teaching-continuous-page > h1 {
    font-size: 24px !important;
  }
}

/* v48: adjust only the vertical display heights of the mountain bands. */
.academic-top-map {
  height: 245px !important;
}

.academic-footer-range {
  height: 70px !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 180px !important;
  }

  .academic-footer-range {
    height: 60px !important;
  }
}

/* v49: revise only the vertical display heights of the mountain bands. */
.academic-top-map {
  height: 240px !important;
}

.academic-footer-range {
  height: 60px !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 200px !important;
  }

  .academic-footer-range {
    height: 75px !important;
  }
}

/* v50: force the requested title sizing on Academic Service and Beyond academia, and revise mountain heights. */
main article.extracurricular-page > h1,
main article.page.wide > .label + h1,
main article.page.wide > h1,
main article.page > .label + h1 {
  font-size: clamp(24px, 3vw, 32px) !important;
  line-height: 1.16 !important;
}

.academic-top-map {
  height: 235px !important;
}

.academic-footer-range {
  height: 55px !important;
}

@media (max-width: 900px) {
  main article.extracurricular-page > h1,
  main article.page.wide > .label + h1,
  main article.page.wide > h1,
  main article.page > .label + h1 {
    font-size: 24px !important;
  }

  .academic-top-map {
    height: 180px !important;
  }

  .academic-footer-range {
    height: 60px !important;
  }
}

/* v51: make the top mountains fuller and the bottom mountains genuinely narrower. */
.academic-top-map {
  height: 245px !important;
}

.academic-footer-range {
  height: 45px !important;
  overflow: hidden !important;
}

.academic-mountain-art-footer {
  overflow: hidden !important;
}

.academic-mountain-art-footer img {
  width: 100% !important;
  height: 100% !important;
  object-fit: fill !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 190px !important;
  }

  .academic-footer-range {
    height: 50px !important;
  }
}

/* v52: requested mountain band heights. */
.academic-top-map {
  height: 225px !important;
}

.academic-footer-range {
  height: 45px !important;
}

@media (max-width: 900px) {
  .academic-top-map {
    height: 180px !important;
  }

  .academic-footer-range {
    height: 60px !important;
  }
}

/* v53: Certificate Outcomes cards get the same clear hover/focus frame as other interactive cards. */
.teaching-experience-page .certificate-detail-card,
.teaching-experience-page .certificate-card.course-modal-trigger,
.teaching-page .certificate-detail-card,
.teaching-page .certificate-card.course-modal-trigger {
  cursor: pointer !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease !important;
}

.teaching-experience-page .certificate-detail-card:hover,
.teaching-experience-page .certificate-detail-card:focus-visible,
.teaching-experience-page .certificate-card.course-modal-trigger:hover,
.teaching-experience-page .certificate-card.course-modal-trigger:focus-visible,
.teaching-page .certificate-detail-card:hover,
.teaching-page .certificate-detail-card:focus-visible,
.teaching-page .certificate-card.course-modal-trigger:hover,
.teaching-page .certificate-card.course-modal-trigger:focus-visible {
  transform: translateY(-2px) !important;
  border-color: rgba(0, 0, 0, .42) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .10) !important;
  background: #fff !important;
  outline: none !important;
}

/* v54: make both mountain drawings slightly taller without moving their lower edge. */
.academic-top-map,
.academic-mountain-art-top {
  overflow: visible !important;
}

.academic-mountain-art-top img {
  transform: scaleY(1.08) !important;
  transform-origin: center bottom !important;
}

.academic-footer-range,
.academic-mountain-art-footer {
  overflow: visible !important;
}

.academic-mountain-art-footer img {
  width: 100% !important;
  height: 100% !important;
  object-fit: fill !important;
  transform: scaleY(1.15) !important;
  transform-origin: center bottom !important;
}


/* v55: shrink teaching card meta text, ensure certificate hover frames appear everywhere, and make mountains taller vertically without losing the drawing. */
.teaching-course-card .meta,
.certificate-card .meta,
.teaching-experience-page .teaching-course-card .meta,
.teaching-continuous-page .teaching-course-card .meta,
.teaching-certificate-page .certificate-card .meta,
.certificate-coursework-cards .certificate-card .meta {
  font-size: 10px !important;
}

.teaching-certificate-page .certificate-detail-card,
.teaching-page .certificate-detail-card,
.teaching-continuous-page .certificate-detail-card,
.teaching-experience-page .certificate-detail-card,
.certificate-coursework-cards .certificate-card.course-modal-trigger,
.certificate-coursework-cards .certificate-detail-card.course-modal-trigger {
  cursor: pointer !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease !important;
}

.teaching-certificate-page .certificate-detail-card:hover,
.teaching-certificate-page .certificate-detail-card:focus-visible,
.teaching-page .certificate-detail-card:hover,
.teaching-page .certificate-detail-card:focus-visible,
.teaching-continuous-page .certificate-detail-card:hover,
.teaching-continuous-page .certificate-detail-card:focus-visible,
.teaching-experience-page .certificate-detail-card:hover,
.teaching-experience-page .certificate-detail-card:focus-visible,
.certificate-coursework-cards .certificate-card.course-modal-trigger:hover,
.certificate-coursework-cards .certificate-card.course-modal-trigger:focus-visible,
.certificate-coursework-cards .certificate-detail-card.course-modal-trigger:hover,
.certificate-coursework-cards .certificate-detail-card.course-modal-trigger:focus-visible {
  transform: translateY(-2px) !important;
  border-color: rgba(0, 0, 0, .42) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .10) !important;
  background: #fff !important;
  outline: none !important;
}

/* Top mountains: behave as if 10 percent taller, keeping full drawing visible. */
.academic-top-map,
.academic-mountain-art-top {
  overflow: visible !important;
}

.academic-mountain-art-top img {
  width: 100% !important;
  height: auto !important;
  object-fit: unset !important;
  transform: scaleY(1.10) !important;
  transform-origin: center bottom !important;
}

/* Bottom mountains: behave as if 25 percent taller, while preserving the full drawing. */
.academic-footer-range,
.academic-mountain-art-footer {
  overflow: visible !important;
}

.academic-mountain-art-footer img {
  width: 100% !important;
  height: auto !important;
  object-fit: unset !important;
  transform: scaleY(1.25) !important;
  transform-origin: center bottom !important;
}


/* v56: improve the mobile top mountain placement so it is a bit higher and visually fuller behind the header. */
@media (max-width: 900px) {
  .academic-top-map {
    top: 4px !important;
    height: 195px !important;
  }

  .academic-mountain-art-top img {
    transform: scaleY(1.16) !important;
    transform-origin: center bottom !important;
  }
}


/* v57: reduce only the desktop bottom mountain vertical scale by 10 percent from its current 1.25 value. */
@media (min-width: 901px) {
  .academic-mountain-art-footer img {
    transform: scaleY(1.125) !important;
    transform-origin: center bottom !important;
  }
}

/* v58: force the mobile top mountain drawing itself to a 150px display height. */
@media (max-width: 900px) {
  .academic-top-map,
  .academic-mountain-art-top {
    height: 150px !important;
  }

  .academic-mountain-art-top img {
    width: 100% !important;
    height: 150px !important;
    object-fit: fill !important;
    transform: none !important;
  }
}

/* v59: slightly reduce desktop bottom mountain height and move the handwritten Topal down by 10px. */
@media (min-width: 901px) {
  .academic-mountain-art-footer img {
    transform: scaleY(1.05) !important;
    transform-origin: center bottom !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(6px) !important;
  }
}

@media (max-width: 900px) {
  .site-top .home-header-wordmark {
    transform: translateY(11px) !important;
  }
}

/* v60: width-specific mobile top mountain correction.
   Narrow phones need more visible vertical drawing; wider phones need less overlap. */
@media (max-width: 390px) {
  .academic-top-map,
  .academic-mountain-art-top {
    top: -8px !important;
    height: 175px !important;
    overflow: visible !important;
  }

  .academic-mountain-art-top img {
    width: 100% !important;
    height: 175px !important;
    object-fit: fill !important;
    object-position: center bottom !important;
    transform: none !important;
    transform-origin: center bottom !important;
  }
}

@media (min-width: 391px) and (max-width: 900px) {
  .academic-top-map,
  .academic-mountain-art-top {
    top: -2px !important;
    height: 135px !important;
    overflow: visible !important;
  }

  .academic-mountain-art-top img {
    width: 100% !important;
    height: 135px !important;
    object-fit: fill !important;
    object-position: center bottom !important;
    transform: none !important;
    transform-origin: center bottom !important;
  }
}


/* v61: move the handwritten Topal 20px downward from v60. */


/* v62: move handwritten Topal 20px further down, reduce desktop footer mountain scale to 1.05, and actually enlarge the mobile top mountain on wider phones. */
@media (min-width: 391px) and (max-width: 900px) {
  .academic-top-map,
  .academic-mountain-art-top {
    top: -6px !important;
    height: 150px !important;
    overflow: visible !important;
  }

  .academic-mountain-art-top img {
    width: 100% !important;
    height: 150px !important;
    object-fit: fill !important;
    object-position: center bottom !important;
    transform: none !important;
    transform-origin: center bottom !important;
  }
}

/* v63: tighten page-opening label spacing and move the handwritten Topal farther down. */
main {
  padding-top: 20px !important;
}

.label,
.page-label,
.section-label,
.page .label,
main .label,
.about-page .label,
.service-page .label,
.diversions-page .label,
.contact-page .label,
.portfolio-page .label,
.publications-page .label,
.presentations-page .label,
.research-continuous-page .label,
.teaching-continuous-page .label,
.research-scroll-section .label,
.teaching-scroll-section .label {
  margin-bottom: 10px !important;
}

@media (min-width: 901px) {
  .site-top .home-header-wordmark {
    transform: translateY(31px) !important;
  }
}

@media (max-width: 900px) {
  main {
    padding-top: 20px !important;
  }

  .site-top .home-header-wordmark {
    transform: translateY(36px) !important;
  }
}

/* v64: align the About Me title and CV button on one row, and lift the top mountain band by 10px. */
.about-page {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  column-gap: 20px !important;
  align-items: center !important;
}

.about-page > .label {
  grid-column: 1 / -1 !important;
}

.about-page > h1 {
  grid-column: 1 !important;
  grid-row: 2 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.about-page > .about-cv-toolbar {
  grid-column: 2 !important;
  grid-row: 2 !important;
  margin: 0 !important;
  justify-self: end !important;
  align-self: center !important;
}

.about-page > .about-dual-wrap,
.about-page > .cv-modal {
  grid-column: 1 / -1 !important;
}

.academic-top-map {
  transform: translateY(-10px) !important;
}

@media (max-width: 600px) {
  .about-page {
    column-gap: 12px !important;
  }

  .about-page > .about-cv-toolbar .about-cv-button {
    white-space: nowrap !important;
  }
}

/* v65: move the top mountain band 20px further upward and reduce its vertical tallness by 10 percent. */
.academic-top-map {
  transform: translateY(-30px) !important;
}

.academic-mountain-art-top img {
  transform: scaleY(0.99) !important;
  transform-origin: center bottom !important;
}

@media (max-width: 390px) {
  .academic-mountain-art-top img {
    width: 100% !important;
    height: 175px !important;
    object-fit: fill !important;
    object-position: center bottom !important;
    transform: scaleY(0.99) !important;
    transform-origin: center bottom !important;
  }
}

@media (min-width: 391px) and (max-width: 900px) {
  .academic-mountain-art-top img {
    width: 100% !important;
    height: 150px !important;
    object-fit: fill !important;
    object-position: center bottom !important;
    transform: scaleY(0.99) !important;
    transform-origin: center bottom !important;
  }
}

/* v66: move the top mountain band 20px further upward from v65. */
.academic-top-map {
  transform: translateY(-50px) !important;
}

/* v67: remove only the top page labels that duplicate the page title, while keeping subsection labels, and reduce desktop bottom mountain tallness by another 10 percent. */
@media (min-width: 901px) {
  .academic-mountain-art-footer img {
    transform: scaleY(1.00) !important;
    transform-origin: center bottom !important;
  }
}

/* Hide only the page-opening gray labels that sit directly above the main page title. */
main article.page > .label:first-child,
main article.page > .page-label:first-child,
main article.page.wide > .label:first-child,
main article.page.wide > .page-label:first-child,
main article.extracurricular-page > .label:first-child,
main article.extracurricular-page > .page-label:first-child,
.about-page > .label:first-child,
.service-page > .label:first-child,
.diversions-page > .label:first-child,
.contact-page > .label:first-child,
.portfolio-page > .label:first-child,
.publications-page > .label:first-child,
.presentations-page > .label:first-child,
.research-continuous-page > .label:first-child,
.research-continuous-page > .page-label:first-child,
.teaching-continuous-page > .label:first-child,
.teaching-continuous-page > .page-label:first-child {
  display: none !important;
}

/* v68: restore the former About Me title/CV vertical position without restoring the gray duplicate label. */
.about-page {
  padding-top: 22px !important;
}

/* v69: move the top mountain band 3px further upward. */
.academic-top-map {
  transform: translateY(-53px) !important;
}

/* v70: restore the large About Me title and View CV row after removing the duplicate gray label. */
.about-page {
  padding-top: 22px !important;
  grid-template-rows: auto auto !important;
}

.about-page > h1 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.about-page > .about-cv-toolbar {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.about-page > .about-dual-wrap,
.about-page > .cv-modal {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
}

/* v71: make Home and About Me start the same distance below the navigation as the other pages, without affecting the CV row. */
.home-wrap-section {
  margin-top: 0 !important;
}

.about-page {
  padding-top: 0 !important;
}

.about-page > h1 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.about-page > .about-cv-toolbar {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* v72: move the handwritten wordmark, identity text, navigation, and page content 10px downward together, while leaving the top mountains fixed. */
.site-top .site-header-wordmark-block,
.site-top .name,
.site-top .identity-sentence,
.sticky-nav,
main {
  position: relative !important;
  top: 10px !important;
}

/* v73: increase the shared downward shift for the header stack and page content from 10px to 50px total. */
.site-top .site-header-wordmark-block,
.site-top .name,
.site-top .identity-sentence,
.sticky-nav,
main {
  top: 50px !important;
}

/* v74: tighten the title/subtitle line height and adjust only the identity elements, while keeping the navigation and mountains fixed. */
.site-top .site-header-wordmark-block {
  top: 40px !important;
}

.site-top .name,
.site-top .identity-sentence {
  top: 45px !important;
}

.site-top .identity-sentence {
  line-height: 1.0 !important;
}

.sticky-nav,
main {
  top: 50px !important;
}

/* v77: modest footer clearance, slightly higher handwritten wordmark, and stronger globe visibility. */
.site-top .site-header-wordmark-block {
  top: 37px !important;
}

.academic-globe {
  opacity: calc(.70 * var(--academic-globe-footer-opacity, 1)) !important;
}

.footer {
  margin-top: 50px !important;
}

@media (max-width: 900px) {
  .footer {
    margin-top: 25px !important;
  }
}

/* The scene remains viewport-based, but scroll motion is now applied by JS so the globe drifts downward instead of staying visually locked. */
.academic-world-scene {
  will-change: transform !important;
}

/* v78: restore sticky navigation without changing its intended lowered starting position. */
.sticky-nav {
  position: sticky !important;
  top: 0 !important;
  margin-top: 50px !important;
  z-index: 1000 !important;
}

/* v79: keep the bottom mountain drawing inside the footer, below the footer divider, as background art. */
.footer {
  position: relative !important;
  overflow: hidden !important;
}

.footer > * {
  position: relative !important;
  z-index: 2 !important;
}

.academic-footer-range {
  top: 1px !important;
  bottom: auto !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  transform: none !important;
  z-index: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
}

/* v80: restore the intended sticky-nav geometry and keep the globe centered in the viewport while scrolling. */
.sticky-nav {
  position: sticky !important;
  top: 0 !important;
  margin-top: 0 !important;
  transform: translateY(50px) !important;
  z-index: 1000 !important;
}

/* Keep the page-opening spacing tied to the visually lowered navigation. */
main {
  top: 50px !important;
}

/* The globe remains centered in the viewport instead of drifting down and disappearing. */
.academic-world-scene {
  position: fixed !important;
  inset: 0 !important;
  transform: none !important;
  will-change: auto !important;
}

.academic-globe {
  top: var(--academic-globe-center-y, 56vh) !important;
}

/* v81: reserve a complete footer-art zone so the full bottom mountain profile and sun remain visible. */
.footer {
  padding-bottom: 78px !important;
  overflow: hidden !important;
}

.academic-footer-range {
  top: auto !important;
  bottom: 0 !important;
  height: 70px !important;
  overflow: visible !important;
}

.academic-mountain-art-footer {
  overflow: visible !important;
}

.academic-mountain-art-footer img {
  width: 100% !important;
  height: 100% !important;
  object-fit: fill !important;
  object-position: center bottom !important;
}

@media (max-width: 900px) {
  .footer {
    padding-bottom: 62px !important;
  }

  .academic-footer-range {
    height: 54px !important;
  }
}

/* v82: keep the main navigation sticky without visually covering anchor targets or breaking the original spacing. */
.sticky-nav {
  position: sticky !important;
  top: 50px !important;
  transform: none !important;
  margin-top: 50px !important;
  z-index: 1000 !important;
}

/* Let the nav's real margin create the vertical shift instead of moving main with a relative top offset. */
main {
  top: auto !important;
}

/* Prevent section headings from landing underneath the sticky navigation. */
html {
  scroll-padding-top: 140px !important;
}

[id],
.research-scroll-section,
.teaching-scroll-section,
.research-continuous-page > section,
.teaching-continuous-page > section {
  scroll-margin-top: 140px !important;
}

/* Keep secondary Research and Teaching navigation below the main sticky navigation. */
.research-continuous-page .research-scroll-nav,
.teaching-scroll-nav {
  top: 112px !important;
}

@media (max-width: 900px) {
  .sticky-nav {
    top: 50px !important;
    margin-top: 50px !important;
  }

  html {
    scroll-padding-top: 155px !important;
  }

  [id],
  .research-scroll-section,
  .teaching-scroll-section,
  .research-continuous-page > section,
  .teaching-continuous-page > section {
    scroll-margin-top: 155px !important;
  }

  .research-continuous-page .research-scroll-nav,
  .teaching-scroll-nav {
    top: 120px !important;
  }
}

/* v83: correct only the sticky activation positions without changing the normal header layout. */
.sticky-nav {
  position: sticky !important;
  top: 0 !important;
  margin-top: 50px !important;
  transform: none !important;
  z-index: 1000 !important;
}

/* Keep the secondary Research and Teaching nav directly below the main sticky bar. */
.research-continuous-page .research-scroll-nav,
.teaching-scroll-nav {
  position: sticky !important;
  top: 66px !important;
  z-index: 999 !important;
}

/* Match anchor landing to the two stacked sticky bars without changing page spacing. */
html {
  scroll-padding-top: 132px !important;
}

[id],
.research-scroll-section,
.teaching-scroll-section,
.research-continuous-page > section,
.teaching-continuous-page > section {
  scroll-margin-top: 132px !important;
}

@media (max-width: 900px) {
  .sticky-nav {
    top: 0 !important;
    margin-top: 50px !important;
  }

  .research-continuous-page .research-scroll-nav,
  .teaching-scroll-nav {
    top: 72px !important;
  }

  html {
    scroll-padding-top: 142px !important;
  }

  [id],
  .research-scroll-section,
  .teaching-scroll-section,
  .research-continuous-page > section,
  .teaching-continuous-page > section {
    scroll-margin-top: 142px !important;
  }
}

/* v84: fine-tune only the identity elements without touching either navigation bar or the mountains. */
.site-top .site-header-wordmark-block {
  top: 34px !important;
}

.site-top .name {
  top: 42px !important;
}

.site-top .identity-sentence {
  top: 41px !important;
  line-height: 1.0 !important;
}

/* v85: reduce the upward adjustment for the main name and subtitle while keeping the handwritten wordmark unchanged. */
.site-top .name {
  top: 44px !important;
}

.site-top .identity-sentence {
  top: 43px !important;
  line-height: 1.0 !important;
}

/* v87: move only the main Muhammet Topal title 1px upward. */
.site-top .name {
  top: 43px !important;
}

/* v88: move only the main title 1px further upward and the subtitle 2px upward. */
.site-top .name {
  top: 42px !important;
}

.site-top .identity-sentence {
  top: 41px !important;
  line-height: 1.0 !important;
}

/* v89: move the main title 1px further upward and the subtitle 2px further upward. */
.site-top .name {
  top: 41px !important;
}

.site-top .identity-sentence {
  top: 39px !important;
  line-height: 1.0 !important;
}

/* v90: fine-tune only the top mountain and identity elements. */
.academic-top-map {
  transform: translateY(-57px) !important;
}

.site-top .site-header-wordmark-block {
  top: 29px !important;
}

.site-top .name {
  top: 38px !important;
}

.site-top .identity-sentence {
  top: 37px !important;
  line-height: 1.0 !important;
}

/* v91: reduce only the header subtitle font size. */
.site-top .identity-sentence {
  font-size: 12px !important;
}

@media (max-width: 900px) {
  .site-top .identity-sentence {
    font-size: 10px !important;
  }
}

/* v92: give the About Me View CV PDF button the same pill and pulse treatment as My Blog. */
.about-page .about-cv-button {
  padding: 7px 13px !important;
  border: 2px solid var(--red) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: var(--red) !important;
  font-weight: 650 !important;
  box-shadow: none !important;
  animation: blogPulse 2.15s ease-in-out infinite !important;
  transition: background-color .16s ease, color .16s ease, transform .16s ease !important;
}

.about-page .about-cv-button:hover,
.about-page .about-cv-button:focus-visible {
  background: var(--red) !important;
  color: #fff !important;
  border-color: var(--red) !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}

/* v93: dedicated visible glow for the About Me CV pill. */
@keyframes aboutCvGlow {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(164, 72, 54, .00), 0 0 8px rgba(164, 72, 54, .16);
  }
  50% {
    box-shadow: 0 0 0 5px rgba(164, 72, 54, .10), 0 0 18px rgba(164, 72, 54, .34);
  }
}

.about-page .about-cv-button {
  animation: aboutCvGlow 2.15s ease-in-out infinite !important;
  will-change: box-shadow !important;
}

.about-page .about-cv-button:hover,
.about-page .about-cv-button:focus-visible {
  box-shadow: 0 0 0 5px rgba(164, 72, 54, .12), 0 8px 22px rgba(164, 72, 54, .28) !important;
}

@media (prefers-reduced-motion: reduce) {
  .about-page .about-cv-button {
    animation: none !important;
    box-shadow: 0 0 0 4px rgba(164, 72, 54, .08), 0 0 14px rgba(164, 72, 54, .22) !important;
  }
}

/* v94: use a separate animated halo so the CV glow is unmistakably visible. */
.about-page > .about-cv-toolbar,
.about-page .about-cv-toolbar {
  overflow: visible !important;
  position: relative !important;
  isolation: isolate !important;
}

.about-page .about-cv-button {
  position: relative !important;
  z-index: 1 !important;
  overflow: visible !important;
  animation: none !important;
}

.about-page .about-cv-button::before {
  content: "" !important;
  position: absolute !important;
  inset: -5px !important;
  border-radius: 999px !important;
  border: 2px solid rgba(176, 0, 0, .32) !important;
  box-shadow: 0 0 12px rgba(176, 0, 0, .40), 0 0 24px rgba(176, 0, 0, .22) !important;
  opacity: .48 !important;
  transform: scale(.96) !important;
  pointer-events: none !important;
  z-index: -1 !important;
  animation: aboutCvHalo 1.8s ease-in-out infinite !important;
}

@keyframes aboutCvHalo {
  0%, 100% {
    opacity: .38;
    transform: scale(.96);
    box-shadow: 0 0 8px rgba(176, 0, 0, .30), 0 0 16px rgba(176, 0, 0, .16);
  }
  50% {
    opacity: .92;
    transform: scale(1.08);
    box-shadow: 0 0 16px rgba(176, 0, 0, .58), 0 0 32px rgba(176, 0, 0, .30);
  }
}

.about-page .about-cv-button:hover::before,
.about-page .about-cv-button:focus-visible::before {
  opacity: 1 !important;
  transform: scale(1.10) !important;
  box-shadow: 0 0 18px rgba(176, 0, 0, .64), 0 0 36px rgba(176, 0, 0, .34) !important;
}

@media (prefers-reduced-motion: reduce) {
  .about-page .about-cv-button::before {
    animation: none !important;
    opacity: .72 !important;
    transform: scale(1.03) !important;
  }
}

/* v95: make View CV PDF use the exact working My Blog pulse and hover behavior. */
.about-page .about-cv-button::before {
  display: none !important;
  content: none !important;
  animation: none !important;
}

@keyframes aboutCvBlogPulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(176, 0, 0, .20);
  }
  50% {
    box-shadow: 0 0 0 8px rgba(176, 0, 0, 0);
  }
}

.about-page .about-cv-button {
  position: relative !important;
  z-index: 1 !important;
  padding: 7px 13px !important;
  border: 2px solid var(--red) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: var(--red) !important;
  font-weight: 650 !important;
  box-shadow: 0 0 0 0 rgba(176, 0, 0, .20) !important;
  animation: aboutCvBlogPulse 2.15s ease-in-out infinite !important;
  transition: background-color .16s ease, color .16s ease, transform .16s ease !important;
}

.about-page .about-cv-button:hover,
.about-page .about-cv-button:focus-visible {
  background: var(--red) !important;
  color: #fff !important;
  border-color: var(--red) !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  outline: none !important;
  animation-play-state: running !important;
}

/* v96: clean mobile-only top mountains without changing desktop. */
@media (max-width: 900px) {
  .academic-top-map {
    height: 110px !important;
    overflow: hidden !important;
    transform: translateY(-20px) !important;
  }

  .academic-mountain-art-top {
    inset: 0 !important;
    width: 100% !important;
    height: 110px !important;
    overflow: hidden !important;
    background-image: url('../img/academic-mountain-range-transparent.png') !important;
    background-repeat: no-repeat !important;
    background-position: center bottom !important;
    background-size: 180% auto !important;
  }

  .academic-mountain-art-top img {
    display: none !important;
  }
}

/* v97: refine the mobile-only mountain band after v96. */
@media (max-width: 900px) {
  .academic-top-map {
    height: 78px !important;
    overflow: visible !important;
    transform: translateY(-28px) !important;
  }

  .academic-mountain-art-top {
    inset: 0 !important;
    width: 100% !important;
    height: 78px !important;
    overflow: hidden !important;
    background-image: url('../img/academic-mountain-range-transparent.png') !important;
    background-repeat: no-repeat !important;
    background-position: center bottom !important;
    background-size: 150% auto !important;
    opacity: .22 !important;
  }

  .academic-mountain-art-top img {
    display: none !important;
  }
}
/* Dark mode: remove text mist and restore mountain lines */

html[data-theme="dark"] .home-intro::before,
html[data-theme="dark"] .about-dual-column::before,
html[data-theme="dark"] .research-continuous-intro::before,
html[data-theme="dark"] .teaching-continuous-intro::before,
html[data-theme="dark"] .research-scroll-section::before,
html[data-theme="dark"] .teaching-scroll-section::before,
html[data-theme="dark"] .prose::before,
html[data-theme="dark"] .post-content::before {
  display: none !important;
  content: none !important;
}

/* Make top and footer mountain drawings visible in dark mode */
html[data-theme="dark"] .academic-mountain-art-top img,
html[data-theme="dark"] .academic-mountain-art-footer img {
  mix-blend-mode: screen !important;
  filter: grayscale(1) invert(1) contrast(1.25) brightness(1.25) !important;
}

html[data-theme="dark"] .academic-mountain-art-top img {
  opacity: 0.38 !important;
}

html[data-theme="dark"] .academic-mountain-art-footer img {
  opacity: 0.44 !important;
}
html[data-theme="dark"] .academic-globe {
  opacity: 0.18 !important;
  filter: grayscale(0.25) brightness(0.55) contrast(1.1) !important;
}
/* Final dark-mode corrections */

/* Contact action buttons */
html[data-theme="dark"] .contact-message-panel button,
html[data-theme="dark"] .contact-message-panel .button,
html[data-theme="dark"] .contact-message-panel label[for*="file"],
html[data-theme="dark"] .appointment-widget button,
html[data-theme="dark"] .appointment-widget .button,
html[data-theme="dark"] .appointment-widget a.button {
  background: transparent !important;
  color: #f1f1ec !important;
  border-color: rgba(241, 241, 236, 0.55) !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .contact-message-panel button:hover,
html[data-theme="dark"] .contact-message-panel .button:hover,
html[data-theme="dark"] .contact-message-panel label[for*="file"]:hover,
html[data-theme="dark"] .appointment-widget button:hover,
html[data-theme="dark"] .appointment-widget .button:hover,
html[data-theme="dark"] .appointment-widget a.button:hover {
  background: rgba(241, 241, 236, 0.10) !important;
  color: #fff !important;
  border-color: #fff !important;
}

/* Apply the light-line treatment to the entire mountain layer.
   This also works when mobile uses a background image. */
html[data-theme="dark"] .academic-mountain-art-top,
html[data-theme="dark"] .academic-mountain-art-footer {
  opacity: 0.42 !important;
  filter: grayscale(1) invert(1) contrast(1.35) brightness(1.35) !important;
  mix-blend-mode: screen !important;
}

/* Prevent the image itself from being inverted twice */
html[data-theme="dark"] .academic-mountain-art-top img,
html[data-theme="dark"] .academic-mountain-art-footer img {
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}
/* Language panel, translucent like the navigation */

.language-menu-top .language-panel {
  background: rgba(251, 250, 247, 0.54) !important;
  border-color: rgba(42, 54, 66, 0.10) !important;
  box-shadow: none !important;
  backdrop-filter: blur(12px) saturate(1.02) !important;
  -webkit-backdrop-filter: blur(12px) saturate(1.02) !important;
}

html[data-theme="dark"] .language-menu-top .language-panel {
  background: rgba(11, 22, 36, 0.54) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

html[data-theme="dark"] .language-menu-top .language-panel a,
html[data-theme="dark"] .language-menu-top .language-panel span {
  color: #dce2e8 !important;
}
