*{box-sizing:border-box}
body{margin:0;color:#191919;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;line-height:1.65}
a{color:inherit}
.wrap{max-width:1120px;margin:auto;padding:0 28px}
header{border-bottom:1px solid #ddd;background:#fff;position:sticky;top:0;z-index:10}
.head{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{text-decoration:none;display:flex;align-items:center;gap:12px}
.lab-logo{display:block;height:34px;width:auto;flex:none}
.brand-title{display:block;font-size:19px;font-weight:700;line-height:1.18}
nav{display:flex;gap:17px;flex-wrap:wrap;justify-content:flex-end}
nav a{text-decoration:none;font-size:12px;letter-spacing:.08em}
main{padding-top:55px;padding-bottom:80px;min-height:75vh}
h1{font-size:36px;line-height:1.2;margin:0 0 30px}
h2{font-size:22px;margin-top:42px}
.date,.meta{font-size:12px;color:#777}
.news,.pub{border-top:1px solid #ddd;padding:20px 0}
.news:first-child,.publication-item:first-child{border-top:2px solid #111}
.news h2{margin:6px 0 12px;font-size:24px}
.news-content p{margin:0 0 12px}
.representation-news-wrap{width:100%;max-width:1000px;margin:0 auto 48px;overflow:hidden}
.representation-news{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.people{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.people-single{grid-template-columns:1fr;max-width:340px}
.person{border-top:2px solid #111;padding-top:15px}
.photo{display:block;width:100%;height:280px;object-fit:cover;object-position:center;margin-bottom:12px;background:#eee}
.name{font-size:18px;font-weight:600}
.social-links{display:flex;gap:14px;margin-top:6px;font-size:13px}
.pubtitle{font-size:17px;font-weight:600;line-height:1.4}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{border-top:2px solid #111;padding:15px 0}
.research-content{max-width:100%}
.research-image-wrap{width:100%;max-width:800px;margin:36px auto 0;overflow:hidden}
.research-image{display:block;width:100%;max-width:550px;height:auto;margin: 0 auto}
.publication-year{margin-top:44px;margin-bottom:0}
.publication-item{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:22px;border-top:1px solid #ddd;padding:20px 0}
.publication-thumb{width:100px;min-width:100px;align-self:start}
.publication-thumb img{display:block;width:100%;max-width:100px;height:auto;object-fit:contain}
.publication-info{min-width:0}
.pubauthors{margin-top:4px;font-size:13px;line-height:1.5}
.publication-note{margin-top:40px;font-size:13px;color:#777}
.map-container{margin-top:30px;width:100%;overflow:hidden}
.map-container iframe{display:block;width:100%;border:0}
footer{border-top:1px solid #ddd;padding-top:22px;padding-bottom:40px;color:#777;font-size:12px}
@media(max-width:800px){
  .head{display:block;padding-top:20px;padding-bottom:18px}
  .brand{margin-bottom:18px}
  .people,.cards{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .wrap{padding:0 18px}
  .people,.cards{grid-template-columns:1fr}
  .brand-title{font-size:17px}
  .publication-item{grid-template-columns:100px minmax(0,1fr);column-gap:14px}
  .publication-thumb{width:100px;min-width:100px}
  .publication-thumb img{width:100px;max-width:100px;height:auto}
}

.news-more{margin-top:28px;font-size:14px}
.news-more a{font-weight:600;text-decoration:none}
.news-more a:hover{text-decoration:underline}
