.content { max-width: 1000px; width: min(100% - 32px, 1000px); }
.hero-slider { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; margin: 28px 0 36px; border-radius: 4px; scrollbar-width: none; }
.hero-slider::-webkit-scrollbar { display: none; }
.hero-slide { position: relative; flex: 0 0 100%; scroll-snap-align: start; height: 350px; }
.hero-slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.hero-slide span { position: absolute; left: 0; bottom: 0; right: 0; padding: 12px 20px; color: white; background: rgba(0,0,0,.48); }
.home-columns { display: grid; grid-template-columns: minmax(0, 7fr) minmax(240px, 3fr); gap: 36px; }
.home-main, .home-news { min-width: 0; }
.page-title { margin: 36px 0 22px; color: #426d68; }
.managed-section { margin: 28px 0 42px; line-height: 1.75; }
.managed-section h2, .people-group h2, .home-news h2 { color: #669c95; margin-bottom: 14px; }
.managed-section h3 { margin: 20px 0 10px; }
.prose p { margin: 0 0 1em; text-align: justify; }
.research-page .prose p, .contact-prose p, .contact-page .prose p { text-indent: 2em; }
.section-group { margin: 28px 0 48px; }
.section-group > h2 { color: #669c95; margin: 0 0 22px; }
.research-page .managed-section { margin: 20px 0 34px; }
.research-page .managed-section h3 { color: #426d68; margin-bottom: 10px; }
.home-introduction .prose p { margin: 0; text-indent: 2em; line-height: 1.6; }
.section-image { display: block; max-width: 100%; height: auto; margin: 16px 0; }
.section-video { display: block; width: min(100%, 640px); height: auto; margin: 16px 0; }
.intro-videos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 20px; }
.intro-video-frame { width: 100%; aspect-ratio: 3 / 2; background: #000; overflow: hidden; }
.intro-video-frame video { display: block; width: 100%; height: 100%; object-fit: contain; }
.home-achievements > h2 { color: blue; font-size: 20px; margin: 0 0 22px; }
.home-achievements .managed-section { margin: 0 0 28px; line-height: 1.6; }
.home-achievements .managed-section h3 { color: burlywood; font-size: 18px; line-height: 1.5; margin: 0 0 6px; }
.home-achievements .prose p { font-size: 16px; text-indent: 2em; margin: 0 0 12px; }
.home-achievements .section-image { width: min(100%, 604px); margin: 4px 0 0; }
.news-teaser { margin: 0 0 22px; line-height: 1.5; }
.news-teaser h3 { font-size: 16px; }
.news-teaser time, .managed-section time { color: #666; }
.home-publications { margin-top: 8px; }
.sidebar-publication { color: #777; font-size: 14px; line-height: 1.35; margin: 0 0 24px; overflow-wrap: anywhere; }
.sidebar-publication a { color: inherit; text-decoration: none; }
.sidebar-publication a:hover { text-decoration: underline; }
.sidebar-publication .publication-source { display: block; }
.publication-source { color: #0000ee; }
.all-publications-link { display: inline-block; margin-top: 4px; }
.people-group { margin: 32px 0 48px; }
.people-grid { display: grid; gap: 24px; }
.faculty-grid { grid-template-columns: 1fr; }
.student-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 24px 16px; }
.alumni-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 32px; }
.person-card { line-height: 1.7; }
.faculty-card { display: flex; align-items: flex-start; gap: 40px; padding-bottom: 24px; border-bottom: 1px solid #e0e8e6; }
.faculty-card img { width: 200px; height: 248px; flex: 0 0 200px; object-fit: cover; }
.faculty-card .person-details { min-width: 0; flex: 1; }
.student-card { text-align: center; }
.alumni-card, .alumni-card .alumni-detail { text-align: left; }
.alumni-card .alumni-detail { margin: 0 0 6px; }
.student-card img { display: block; width: 120px; height: 120px; margin: 0 auto 8px; object-fit: cover; }
.person-card h3 { color: #426d68; margin-bottom: 8px; }
.person-card p { margin: 0 0 10px; }
.publication-list { padding-left: 1.5em; }
.publication-list li { list-style: decimal outside; line-height: 1.6; margin-bottom: 14px; border: 0; }
.lab-assistant { position: fixed; right: 0; bottom: 0; width: min(400px, 100vw); height: min(600px, 75vh); border: 0; z-index: 100; }
@media (min-width: 1440px) {
  .content, .view1 { width: min(calc(100% - 64px), clamp(1000px, 75vw, 1600px)); max-width: 1600px; }
  .navitems { max-width: 1600px; }
  .hero-slide { height: clamp(350px, 27vw, 480px); }
  .home-introduction .prose { font-size: clamp(16px, .8vw, 18px); }
  .home-achievements .section-image { width: min(100%, 800px); }
  .sidebar-publication { font-size: clamp(14px, .7vw, 16px); }
}
@media (max-width: 720px) {
  .home-columns { grid-template-columns: 1fr; }
  .hero-slider { margin: 16px 0 28px; }
  .hero-slide { height: clamp(170px, 55vw, 280px); }
  .faculty-card { display: block; }
  .faculty-card img { width: min(200px, 100%); height: auto; margin: 0 0 12px; }
  .student-grid { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }
  .alumni-grid { grid-template-columns: 1fr; }
  .student-card img { width: min(120px, 100%); }
  .page-title { margin: 24px 0 16px; font-size: 26px; }
  .managed-section { margin: 20px 0 32px; }
  .managed-section h2 { line-height: 1.35; }
  .publication-list { padding-left: 1.3em; }
  .publication-list li { overflow-wrap: anywhere; }
  .sidebar-publication { font-size: 15px; }
  .lab-assistant { position: static; display: block; width: calc(100% - 32px); height: 320px; margin: 24px auto; }
}

@media (max-width: 600px) {
  .intro-videos { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .student-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
