/* Tabbed public layout */
.tabbed-site{height:100vh;overflow:hidden;display:grid;grid-template-rows:76px minmax(0,1fr) auto;background:#fff}.tabbed-site .site-header{position:relative;top:auto;height:76px}.brand-button{border:0;background:transparent;padding:0;cursor:pointer}.site-nav button{position:relative;border:0;background:transparent;padding:10px 0;font:600 12px Inter;color:var(--ink);cursor:pointer}.site-nav button:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1.5px;background:var(--accent);transition:.22s}.site-nav button:hover:after,.site-nav button.active:after{right:0}.site-nav button.active{color:var(--accent)}
.page-stage{position:relative;min-height:0;overflow:hidden}.site-page{display:none;height:100%;min-height:0}.site-page.active{display:block}.page-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-behavior:smooth}.page-section{min-height:100%;border-top:0}.tabbed-site .section-pad{padding-top:74px;padding-bottom:74px}.tabbed-site .hero{min-height:calc(100vh - 76px - 66px);padding-top:62px;padding-bottom:62px}.tabbed-site .statement{min-height:auto}.compact-footer{min-height:58px;padding-top:12px!important;padding-bottom:12px!important;background:#fff;position:relative;z-index:30}.compact-footer .professor-portrait{width:36px;height:36px}.compact-footer small{max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Research overview stays inside the Research tab */
.tabbed-site .research-axis{border-bottom:1px solid var(--line)}

/* Expandable members */
.pi-message{margin:0 0 24px;padding:15px 18px;border-left:2px solid var(--accent);background:rgba(56,85,255,.045);font:500 13px/1.6 Manrope;color:#313a4e}
.member-photo-button,.pi-photo-button{border:0;width:100%;padding:0;position:relative;cursor:zoom-in;overflow:hidden}.member-photo-button i,.pi-photo-button i{font-style:normal;position:absolute;left:50%;bottom:16px;transform:translate(-50%,10px);opacity:0;background:rgba(7,16,30,.82);color:#fff;border-radius:999px;padding:7px 11px;font-size:9px;font-weight:700;white-space:nowrap;transition:.22s}.member-photo-button:after,.pi-photo-button:after{content:"";position:absolute;inset:0;background:rgba(7,16,30,.08);opacity:0;transition:.22s}.member-photo-button:hover:after,.pi-photo-button:hover:after{opacity:1}.member-photo-button:hover i,.pi-photo-button:hover i{opacity:1;transform:translate(-50%,0);z-index:2}.expandable-member{transition:.22s}.expandable-member:hover{box-shadow:var(--shadow)}
.modal-open{overflow:hidden}.member-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:26px}.member-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(5,10,18,.68);backdrop-filter:blur(10px);cursor:default}.member-modal-card{position:relative;width:min(1040px,94vw);max-height:86vh;display:grid;grid-template-columns:minmax(300px,.82fr) 1.18fr;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.3);animation:memberModalIn .26s cubic-bezier(.2,.75,.2,1)}@keyframes memberModalIn{from{opacity:0;transform:scale(.93) translateY(18px)}to{opacity:1;transform:none}}.member-modal-close{position:absolute;right:18px;top:18px;z-index:5;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(7,16,30,.72);color:#fff;font-size:24px;line-height:1}.member-modal-photo{min-height:560px;background-size:cover;background-position:center;background-color:#e9edf5;display:grid;place-items:center}.member-modal-photo span{display:none;font:600 72px Manrope;color:#98a1b0}.member-modal-photo.placeholder span{display:block}.member-modal-content{padding:48px;overflow-y:auto}.member-modal-content h2{font:600 clamp(35px,4vw,55px)/1 Manrope;margin:7px 0 8px;letter-spacing:-.045em}.member-modal-position{margin:0 0 28px;font-size:14px;color:var(--muted)}.member-message{margin:0 0 30px;padding:20px 22px;background:#f4f6ff;border-left:3px solid var(--accent);border-radius:0 14px 14px 0;font:600 18px/1.5 Manrope;color:#202a40}.member-message:before{content:"“"}.member-message:after{content:"”"}.member-modal-section{padding:20px 0;border-top:1px solid var(--line)}.member-modal-section>span{display:block;font-size:9px;font-weight:800;letter-spacing:.14em;color:#8b93a2;margin-bottom:10px}.member-modal-section p{margin:0;color:#4b5565;font-size:13px;line-height:1.75}.member-modal-section p+p{margin-top:10px}.member-modal-section p strong{color:var(--ink)}.member-modal-section p small{display:block;margin-top:3px;color:#8a919e}.modal-tags{display:flex;gap:7px;flex-wrap:wrap}.modal-tags span{padding:7px 10px;border-radius:999px;background:#f0f2f6;font-size:10px;color:#50596a}.member-modal-links{display:flex;flex-wrap:wrap;gap:8px;padding-top:20px}.member-modal-links a{border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-size:10px;font-weight:700}.member-modal-links a:hover{border-color:var(--accent);color:var(--accent)}

@media(max-width:1050px){.tabbed-site .site-nav{gap:20px}.site-nav button{font-size:11px}}
@media(max-width:900px){.tabbed-site{grid-template-rows:68px minmax(0,1fr) auto}.tabbed-site .site-header{height:68px}.tabbed-site .site-nav{display:none;position:absolute;top:67px;left:0;right:0;background:#fff;padding:18px 24px;border-bottom:1px solid var(--line);flex-direction:column;gap:7px;z-index:100}.tabbed-site .site-nav.open{display:flex}.tabbed-site .site-nav button{text-align:left;padding:9px 0}.tabbed-site .site-nav button:after{display:none}.tabbed-site .hero{min-height:680px}.member-modal-card{grid-template-columns:.9fr 1.1fr}.member-modal-photo{min-height:480px}.member-modal-content{padding:38px 30px}}
@media(max-width:620px){.tabbed-site{grid-template-rows:68px minmax(0,1fr) 48px}.tabbed-site .section-pad{padding:52px 18px}.tabbed-site .hero{min-height:640px;padding-top:52px;padding-bottom:52px}.compact-footer{min-height:48px;padding:6px 18px!important}.compact-footer small,.compact-footer p{display:none}.compact-footer .professor-portrait{width:32px;height:32px}.member-modal{padding:12px;align-items:end}.member-modal-card{width:100%;max-height:92vh;grid-template-columns:1fr;border-radius:22px 22px 16px 16px}.member-modal-photo{min-height:300px;max-height:38vh}.member-modal-content{padding:28px 22px 30px}.member-modal-content h2{font-size:36px}.member-message{font-size:15px}.member-modal-close{top:12px;right:12px}}

.member-modal-photo{position:relative;overflow:hidden}.member-modal-photo>.managed-photo{position:absolute;inset:0}
