.research-overview .compact-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.research-overview .compact-service-card{padding:16px;min-height:112px;gap:10px}
.research-overview .compact-service-card .compact-eyebrow{display:none}
.research-overview .compact-service-card h2{font-size:1.025rem;line-height:1.35}
.research-overview .compact-service-card:last-child:nth-child(4n + 3){grid-column:span 2}
.research-infrastructure-link{display:flex;align-items:center;gap:20px;border:1px solid #d7e0e4;border-left:4px solid #bea145;border-radius:7px;padding:16px!important;margin-top:16px;background:#fafbf9}
.research-infrastructure-link>img{width:112px;height:78px;object-fit:cover;border-radius:4px}
.research-infrastructure-link>div{flex:1}
.research-infrastructure-link h2{font-size:1.2rem;margin:0 0 5px}
.research-infrastructure-link p{margin:0;font-size:.94rem;color:#526571}
.research-action{display:inline-flex;align-items:center;gap:10px;border-radius:5px;padding:10px 15px;background:#123954;color:#fff!important;font-size:.9rem;font-weight:600;text-decoration:none;white-space:nowrap}
.research-action:hover{background:#204e6e}
#research-labs .lab-hero{display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center;margin:12px 0 20px}
#research-labs h1{font-size:clamp(1.65rem,2.4vw,2rem);line-height:1.15;margin:8px 0 12px}
#research-labs .lab-hero p:not(.compact-eyebrow){font-size:1rem;line-height:1.55;max-width:620px;margin-bottom:16px}
.lab-image-link{display:block;position:relative;border-radius:6px;overflow:hidden;background:#f0f4f4}
.lab-image-link img{width:100%;height:100%;object-fit:contain;display:block}
.lab-hero>.lab-image-link{height:210px;background:#eaf0f2}
.lab-hero>.lab-image-link img{object-fit:cover}
.lab-image-hint{position:absolute;bottom:8px;right:8px;background:#123954e8;color:#fff;padding:4px 8px;border-radius:3px;font-size:.72rem}
.lab-tabs{display:flex;gap:5px;border-bottom:1px solid #cdd9df;padding-bottom:5px;flex-wrap:wrap}
.lab-tabs a{padding:10px 17px;font-size:.925rem;font-weight:600;color:#405867;text-decoration:none;border-radius:5px}
.lab-tabs a[aria-selected="true"]{background:#123954;color:#fff}
.lab-tabs a:hover{background:#e8eef1;color:#123954}
#research-labs .lab-panel{padding:18px 0 8px!important;scroll-margin-top:125px}
#research-labs [hidden]{display:none!important}
#research-labs h2{font-size:1.2rem;margin:0 0 14px}
#research-labs h3{font-size:1rem;line-height:1.3;margin:0 0 8px}
.lab-spaces{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lab-space{border:1px solid #dce4e7;border-radius:7px;overflow:hidden}
.lab-space>.lab-image-link{height:125px;border-radius:0;background:#f5f6f5;padding:6px}
.lab-space>div{padding:13px}
.lab-space p,.lab-service p{font-size:.89rem;line-height:1.5;color:#50616b;margin:0}
.lab-status{display:inline-block;background:#fff3d8;color:#725014;font-size:.75rem;font-weight:600;padding:3px 8px;border-radius:4px;margin-bottom:7px}
.lab-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.lab-service{padding:15px 0;border-bottom:1px solid #dce4e7}
.lab-service:last-child{grid-column:1/-1}
.lab-contact-note{font-size:.9rem;color:#526571;margin-top:15px}
.lab-planned{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.lab-planned p{font-size:.95rem;line-height:1.6}
.lab-planned>.lab-image-link{height:285px}
.lab-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.lab-gallery figure{margin:0}.lab-gallery .lab-image-link{height:140px;padding:5px}
.lab-gallery figcaption{font-size:.82rem;line-height:1.45;padding-top:7px;color:#526571}
.lab-source{font-size:.75rem;color:#667983;border-top:1px solid #dce4e7;padding-top:10px;margin-top:16px}
.lab-viewer{border:0;border-radius:10px;padding:18px;width:min(1000px,95vw);max-height:94vh;color:#223a4a}
.lab-viewer::backdrop{background:#082333d9}
.lab-viewer-close{display:block;margin:0 0 10px auto;border:1px solid #c7d4da;border-radius:5px;background:#fff;padding:7px 12px}
.lab-viewer figure{margin:0;text-align:center}.lab-viewer figure img{max-width:100%;max-height:66vh;object-fit:contain}
.lab-viewer figcaption{font-size:.95rem;margin:12px 0}.lab-viewer-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.lab-viewer-controls button{border:1px solid #c7d4da;background:#f2f6f7;color:#123954;border-radius:5px;padding:9px 12px}
.lab-viewer-controls a{font-size:.875rem}
.research-action:focus-visible,.lab-tabs a:focus-visible,.lab-image-link:focus-visible,.lab-viewer button:focus-visible{outline:3px solid #bf9c35;outline-offset:3px}
@media(max-width:1000px){.research-overview .compact-service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.research-overview .compact-service-card:last-child:nth-child(4n + 3){grid-column:auto}.lab-spaces,.lab-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-space>.lab-image-link{height:145px}}
@media(max-width:650px){.research-overview .compact-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.research-overview .compact-service-card{padding:12px;min-height:105px}.research-overview .compact-service-card h2{font-size:.94rem}.research-overview .compact-service-card:last-child:nth-child(odd){grid-column:1/-1}.research-infrastructure-link{gap:12px;flex-wrap:wrap;padding:13px!important}.research-infrastructure-link>img{width:72px;height:72px}.research-infrastructure-link h2{font-size:1.08rem}.research-infrastructure-link p{font-size:.86rem}.research-infrastructure-link>.research-action{margin-left:84px;font-size:.85rem;padding:9px 12px}#research-labs .lab-hero{grid-template-columns:1fr;gap:14px;margin-bottom:14px}.lab-hero>.lab-image-link{height:140px}.lab-tabs{gap:2px}.lab-tabs a{flex:1 0 40%;text-align:center;padding:9px;font-size:.87rem}.lab-spaces{gap:10px}.lab-space>.lab-image-link{height:95px}.lab-space>div{padding:10px}.lab-space p{font-size:.84rem}#research-labs h3{font-size:.94rem}.lab-services,.lab-planned{grid-template-columns:1fr}.lab-planned{gap:10px}.lab-planned>.lab-image-link{height:250px}.lab-gallery{gap:12px}.lab-gallery .lab-image-link{height:112px}.lab-viewer{padding:12px}.lab-viewer figure img{max-height:58vh}.lab-viewer-controls button{font-size:.8rem;padding:8px}.lab-viewer-controls a{order:3;width:100%;text-align:center}}
@media print{.lab-panel[hidden]{display:block!important}.lab-tabs,.lab-image-hint,.lab-viewer,.research-action{display:none!important}.lab-spaces{grid-template-columns:repeat(2,1fr)}.lab-panel{break-inside:avoid}}
