body.preview-open {
  overflow: hidden;
}

.content.home-with-preview {
  width: 100%;
  position: relative;
}

.main-inner {
  width: 100%;
}

.about-section,
.education-short,
.publications,
.research-list-section,
.other-projects {
  padding-bottom: 6rem;
}

.about-section h2,
.education-short h2,
.publications h2,
.research-list-section h2,
.other-projects h2 {
  margin-bottom: 3.2rem;
}

.about-section .container > p {
  max-width: none;
}

.about-section .container > p.about-me {
  padding-bottom: 0;
  margin-bottom: 0;
}

.cv-line {
  margin-top: 1.2rem;
}

.hero-intro .container {
  display: block;
}

.hero-intro .photo {
  margin-bottom: 1rem;
}

.global-preview-panel {
  display: none;
}

.preview-card[hidden] {
  display: none !important;
}

.preview-modal {
  position: fixed;
  inset: 0;
  display: none;
  z-index: 20;
}

.preview-modal.open {
  display: block;
}

.preview-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .55);
}

.preview-modal-card {
  position: absolute;
  inset: 1rem;
  padding: 2rem;
  overflow: auto;
}


@media (min-width: 1100px) {
  .main-inner {
    width: min(calc(48em + 48rem), calc(100vw - 4rem));
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
    padding-right: 48rem;
    position: relative;
  }

  .main-inner > section > .container {
    max-width: 70em;
    margin-left: auto;
    margin-right: auto;
    padding-right: 3rem;
  }

  .main-inner > .global-preview-panel {
    display: block;
    position: sticky;
    top: 16px;
    margin-left: min(calc(48em), calc(100vw - 52rem));
    width: 44.5rem;
    right: auto;
    height: 0;
    overflow: visible;
    pointer-events: none;
    z-index: 8;
  }

  .main-inner > .global-preview-panel .preview-card {
    pointer-events: auto;
  }
}
