:root{--bg:#f8fafc;--surface:#ffffff;--surface-soft:#f8fafc;--text:#0f172a;--text-soft:#475569;--border:#e2e8f0;--shadow:0 10px 25px rgba(15,23,42,0.06);--panel:linear-gradient(135deg,#0f172a,#1e293b,#334155);--panel-text:#ffffff;--panel-soft:#cbd5e1}.theme-dark{--bg:#020617;--surface:#0f172a;--surface-soft:rgba(15,23,42,0.8);--text:#f8fafc;--text-soft:#cbd5e1;--border:#1e293b;--shadow:0 10px 25px rgba(2,6,23,0.35);--panel:linear-gradient(135deg,#f8fafc,#e2e8f0,#ffffff);--panel-text:#0f172a;--panel-soft:#64748b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.site-shell{min-height:100vh;padding-bottom:6rem;background:var(--bg);color:var(--text)}.page-width{max-width:1560px;margin:0 auto;padding-left:1.5rem;padding-right:1.5rem}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:40;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 90%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-inner{position:relative;max-width:1560px;margin:0 auto;display:grid;grid-template-columns:auto 1fr;grid-gap:1rem;gap:1rem;align-items:center;padding:1rem 1.5rem}.brand-name{font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.22em}.main-nav{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;border-top:1px solid var(--border);padding-top:.85rem}.nav-link{font-size:1.02rem;font-weight:500;color:var(--text-soft)}.nav-link:hover{color:var(--text)}.header-actions{justify-self:end;display:flex;align-items:center;gap:.75rem}.action-link,.contact-link-primary,.contact-link-secondary,.filter-btn,.mobile-social-link-item,.reach-out-button,.theme-toggle{border-radius:999px}.theme-toggle{height:3rem;width:3rem}.action-link,.reach-out-button,.theme-toggle{border:1px solid var(--border);background:var(--surface);color:var(--text)}.action-link,.reach-out-button{display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 1.25rem;font-size:1rem;font-weight:500}.action-link-dark,.action-link:hover,.reach-out-button:hover,.theme-toggle:hover{border-color:var(--text)}.action-link-dark{background:var(--text);color:var(--surface)}.theme-dark .action-link-dark{background:var(--surface);color:var(--text);border-color:var(--surface)}.hero-section{border-bottom:1px solid var(--border);background:radial-gradient(circle at top left,rgba(148,163,184,.14),transparent 35%),radial-gradient(circle at bottom right,rgba(15,23,42,.06),transparent 30%),var(--surface)}.theme-dark .hero-section{background:radial-gradient(circle at top left,rgba(51,65,85,.35),transparent 35%),radial-gradient(circle at bottom right,rgba(255,255,255,.03),transparent 25%),var(--surface)}.hero-grid{display:grid;grid-gap:3.5rem;gap:3.5rem;padding-top:4rem;padding-bottom:4rem}.hero-copy{display:flex;flex-direction:column;gap:2rem}.hero-tag{display:inline-flex;align-self:flex-start;padding:.4rem .75rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--text-soft);font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;font-weight:500}.hero-title{margin:0;max-width:980px;font-size:clamp(3rem,8vw,5.2rem);line-height:.98}.hero-subtitle{max-width:860px;margin:0;font-size:clamp(1.28rem,2.5vw,1.55rem);line-height:1.7;color:color-mix(in srgb,var(--text) 82%,transparent)}.hero-description{max-width:860px;margin:0;font-size:1.05rem;line-height:1.95;color:var(--text-soft)}.hero-actions,.mobile-social-links{display:flex;flex-wrap:wrap;gap:.75rem}.mobile-social-link-item{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1rem;border:1px solid var(--border);background:var(--surface);color:var(--text-soft);font-size:.95rem}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem;max-width:900px}.hero-sidebar{width:100%;max-width:560px;justify-self:center}.hero-sidebar-stack{display:flex;flex-direction:column;gap:1.25rem}.accordion-card,.card,.contact-card,.profile-panel,.simple-item,.strength-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.accordion-card,.card,.contact-card,.profile-panel{border-radius:2rem}.muted-panel{background:var(--surface-soft)}.stat-card{padding:1.5rem}.stat-value{font-size:2rem;font-weight:600}.stat-label{margin-top:.5rem;color:var(--text-soft);font-size:.95rem;line-height:1.6}.hero-photo-card{padding:1.25rem}.hero-photo-inner{overflow:hidden;border-radius:1.5rem;background:var(--surface-soft)}.hero-photo{width:100%;height:auto;display:block;aspect-ratio:4/5;object-fit:cover}.profile-panel{background:var(--panel);color:var(--panel-text);padding:2rem}.profile-label{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--panel-soft)}.profile-title{margin:1rem 0 0;font-size:clamp(1.9rem,4vw,2.15rem);line-height:1.15}.profile-list{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem;font-size:.98rem}.profile-item{display:flex;gap:.75rem;align-items:flex-start}.standard-section{padding-top:5rem;padding-bottom:5rem}.section-band{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface)}.section-eyebrow{margin:0;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--text-soft)}.section-title{margin:0;font-size:clamp(2rem,4vw,2.7rem);line-height:1.1}.section-subtitle{margin:0;color:var(--text-soft);line-height:1.9}.contact-grid,.job-market-grid,.two-col-about,.two-col-grid{display:grid;grid-gap:2.5rem;gap:2.5rem}.about-copy{color:var(--text-soft);font-size:1.08rem;line-height:1.95}.about-copy p{margin:0 0 1.1rem}.subsection-title{margin:1rem 0 .5rem;font-size:1.3rem;line-height:1.45}.large-copy{color:var(--text-soft);line-height:1.95;font-size:1.05rem}.job-grid-cards{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.5rem}.job-grid-cards .card{padding:1.5rem}.card p,.job-grid-cards p,.project-card p,.service-card p{color:var(--text-soft);line-height:1.85;margin:.75rem 0 0}.mini-label{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft)}.job-market-side{display:flex;flex-direction:column;gap:1.25rem}.strength-panel{border-radius:2rem;background:var(--text);color:var(--surface);padding:1.75rem}.theme-dark .strength-panel{background:var(--surface);color:var(--text)}.strength-label{margin:0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;opacity:.8}.strength-panel ul{margin:1rem 0 0;padding-left:1.25rem}.strength-panel li{margin-bottom:.7rem;line-height:1.7}.section-head-row{display:flex;flex-direction:column;gap:1.5rem;justify-content:space-between}.search-wrap{position:relative;width:100%;max-width:32rem}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-soft);height:1rem;width:1rem}.search-input{width:100%;padding:.9rem 1rem .9rem 2.75rem;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);outline:none}.accordion-list,.project-grid,.pub-list,.research-pill-grid,.service-list,.simple-list{display:grid;grid-gap:1rem;gap:1rem}.research-pill-grid{margin-top:2.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.project-grid{margin-top:2.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.project-card,.pub-card,.service-card{padding:1.75rem}.tiny-label{margin-top:1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;color:var(--text-soft)}.filter-row{display:flex;flex-wrap:wrap;gap:.5rem}.filter-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-soft);padding:.55rem 1rem;font-size:.95rem;font-weight:500}.filter-btn.active{background:var(--text);color:var(--surface);border-color:var(--text)}.theme-dark .filter-btn.active{background:var(--surface);color:var(--text);border-color:var(--surface)}.pub-card{display:flex;justify-content:space-between;gap:1rem}.pub-main{display:flex;flex-direction:column;gap:.6rem}.pub-tags{display:flex;flex-wrap:wrap;gap:.5rem}.pub-link:hover{text-decoration:underline}.mini-eyebrow,.muted-text{color:var(--text-soft)}.mini-eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.accordion-button{width:100%;padding:1.5rem;background:transparent;border:none;display:flex;justify-content:space-between;align-items:center;color:inherit}.accordion-content{border-top:1px solid var(--border);padding:1rem 1.5rem 1.5rem;color:var(--text-soft);line-height:1.85}.simple-item{display:flex;gap:.75rem;align-items:flex-start;border-radius:1.25rem;padding:1rem;background:var(--surface-soft);color:var(--text-soft)}.contact-section{background:#0f172a;color:white}.theme-dark .contact-section{background:#000}.contact-grid{padding-top:5rem;padding-bottom:5rem}.contact-title{margin:0;font-size:clamp(2rem,4vw,2.7rem)}.contact-copy{max-width:48rem;color:#cbd5e1;font-size:1.08rem;line-height:1.95}.contact-card{padding:2rem;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}.contact-details{display:flex;flex-direction:column;gap:1rem;color:#e2e8f0;font-size:1.02rem}.contact-row{display:flex;gap:.75rem;align-items:flex-start}.contact-links-grid{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:2rem}.contact-link-primary,.contact-link-secondary{display:inline-flex;justify-content:center;align-items:center;text-align:center;padding:.9rem 1.1rem;font-size:.98rem;font-weight:500}.contact-link-primary{background:white;color:#0f172a}.theme-dark .contact-link-primary{background:#f1f5f9}.contact-link-secondary{border:1px solid rgba(255,255,255,.2);color:white}.icon-sm{width:1rem;height:1rem;flex:0 0 auto}.icon-md{width:1.15rem;height:1.15rem;flex:0 0 auto}.muted-icon{color:var(--text-soft)}.floating-wrap{position:fixed;inset-inline:0;bottom:1.25rem;z-index:50;display:none;justify-content:center;padding-inline:1rem}.floating-links{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 96%,transparent);padding:.75rem 1rem;box-shadow:0 25px 50px rgba(15,23,42,.12);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.floating-link-item{display:inline-flex;gap:.5rem;align-items:center;padding:.65rem 1.1rem;border-radius:999px;color:var(--text-soft);font-size:.98rem;font-weight:500}@media (min-width:768px){.header-inner{grid-template-columns:auto 1fr auto}.main-nav{grid-column:auto;border-top:0;padding-top:0;position:absolute;left:50%;transform:translateX(-50%)}}@media (min-width:1024px){.page-width{padding-left:2.5rem;padding-right:2.5rem}.hero-grid{grid-template-columns:1.2fr .8fr;align-items:center;padding-top:6rem;padding-bottom:6rem}.two-col-about{grid-template-columns:.9fr 1.1fr}.job-market-grid{grid-template-columns:1.12fr .88fr}.two-col-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr .95fr}.section-head-row{flex-direction:row;align-items:end}}@media (min-width:1280px){.floating-wrap{display:flex}}@media (max-width:1023px){.contact-links-grid,.job-grid-cards,.project-grid,.research-pill-grid,.stats-grid{grid-template-columns:1fr}}@media (max-width:767px){.header-actions{gap:.5rem}.brand-name{font-size:.9rem}.reach-out-button{padding-inline:1rem}.hero-grid{padding-top:3rem;padding-bottom:3rem}.contact-grid,.standard-section{padding-top:4rem;padding-bottom:4rem}.floating-wrap{display:none}}:root{--border:#cbd5e1;--border-strong:#94a3b8;--border-accent:#334155;--surface-hover:#ffffff;--shadow:0 14px 34px rgba(15,23,42,0.08);--shadow-hover:0 22px 55px rgba(15,23,42,0.15),0 0 0 1px rgba(51,65,85,0.12)}.theme-dark{--border:#334155;--border-strong:#64748b;--border-accent:#93c5fd;--surface-hover:#111c2e;--shadow:0 14px 34px rgba(0,0,0,0.38);--shadow-hover:0 24px 60px rgba(2,6,23,0.80),0 0 0 1px rgba(147,197,253,0.34),0 0 30px rgba(59,130,246,0.17)}.hero-section,.section-band,.site-header{border-color:var(--border)}.accordion-card,.card,.contact-card,.floating-links,.hero-photo-card,.profile-panel,.simple-item,.stat-card,.strength-panel{border-width:1.5px;border-color:var(--border);box-shadow:var(--shadow);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease,color .22s ease}.card,.job-grid-cards .card{padding:1.65rem}.project-card,.pub-card,.service-card{padding:1.85rem}.accordion-card:hover,.card:hover,.contact-card:hover,.hero-photo-card:hover,.profile-panel:hover,.simple-item:hover,.stat-card:hover,.strength-panel:hover{transform:translateY(-4px) scale(1.012);border-color:var(--border-accent);box-shadow:var(--shadow-hover)}.accordion-card:hover,.card:hover,.hero-photo-card:hover,.simple-item:hover,.stat-card:hover{background:var(--surface-hover)}.profile-panel:hover{background:var(--panel)}.strength-panel{border-color:color-mix(in srgb,var(--text) 72%,var(--border))}.strength-panel:hover{background:var(--text)}.theme-dark .strength-panel{border-color:var(--border-strong)}.theme-dark .strength-panel:hover{background:var(--surface)}.job-market-grid{margin-top:2rem;gap:2rem}.job-market-side{gap:1.5rem}.accordion-list,.job-grid-cards,.project-grid,.pub-list,.research-pill-grid,.service-list,.simple-list{gap:1.25rem}.search-input{border-width:1.5px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.search-input:focus,.search-input:hover{border-color:var(--border-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--border-accent) 14%,transparent)}.action-link,.contact-link-primary,.contact-link-secondary,.filter-btn,.mobile-social-link-item,.reach-out-button,.theme-toggle{border-width:1.5px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}.action-link:hover,.contact-link-primary:hover,.contact-link-secondary:hover,.filter-btn:hover,.mobile-social-link-item:hover,.reach-out-button:hover,.theme-toggle:hover{transform:translateY(-2px) scale(1.015);border-color:var(--border-accent);box-shadow:0 14px 34px rgba(15,23,42,.11)}.theme-dark .action-link:hover,.theme-dark .filter-btn:hover,.theme-dark .mobile-social-link-item:hover,.theme-dark .reach-out-button:hover,.theme-dark .theme-toggle:hover{box-shadow:0 0 0 1px rgba(147,197,253,.28),0 16px 40px rgba(2,6,23,.6)}.floating-links{border-color:var(--border-strong)}.floating-link-item{transition:transform .18s ease,background .18s ease,color .18s ease}.floating-link-item:hover{background:var(--surface-soft);color:var(--text);transform:translateY(-2px) scale(1.035)}.contact-link-secondary{border-color:rgba(255,255,255,.34)}.contact-link-secondary:hover{border-color:rgba(255,255,255,.72);background:rgba(255,255,255,.08)}.accordion-button:hover .subsection-title,.nav-link:hover,.pub-link:hover{color:var(--border-accent)}.theme-dark .accordion-button:hover .subsection-title,.theme-dark .nav-link:hover,.theme-dark .pub-link:hover{color:#bfdbfe}@media (prefers-reduced-motion:reduce){.accordion-card,.action-link,.card,.contact-card,.contact-link-primary,.contact-link-secondary,.filter-btn,.floating-link-item,.hero-photo-card,.mobile-social-link-item,.profile-panel,.reach-out-button,.simple-item,.stat-card,.strength-panel,.theme-toggle{transition:none}.accordion-card:hover,.action-link:hover,.card:hover,.contact-card:hover,.contact-link-primary:hover,.contact-link-secondary:hover,.filter-btn:hover,.floating-link-item:hover,.hero-photo-card:hover,.mobile-social-link-item:hover,.profile-panel:hover,.reach-out-button:hover,.simple-item:hover,.stat-card:hover,.strength-panel:hover,.theme-toggle:hover{transform:none}}.nav-link{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.45rem .75rem;border:1px solid transparent;transition:transform .18s ease,color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.nav-link:focus-visible,.nav-link:hover{color:var(--text);transform:translateY(-2px) scale(1.055);border-color:var(--border-accent);background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:0 12px 30px rgba(15,23,42,.12),0 0 0 4px color-mix(in srgb,var(--border-accent) 10%,transparent);outline:none}.theme-dark .nav-link:focus-visible,.theme-dark .nav-link:hover{color:#bfdbfe;background:rgba(15,23,42,.78);box-shadow:0 0 0 1px rgba(147,197,253,.28),0 0 24px rgba(59,130,246,.16)}.rotate-180{transform:rotate(180deg)}.accordion-content p{margin:0}.syllabus-card-link{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:.85rem;gap:.85rem;margin-top:1.1rem;padding:1rem;border:1.5px solid var(--border-strong);border-radius:1.25rem;background:color-mix(in srgb,var(--surface-soft) 86%,var(--surface));color:var(--text);box-shadow:0 12px 28px rgba(15,23,42,.07);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.syllabus-card-link:focus-visible,.syllabus-card-link:hover{transform:translateY(-3px) scale(1.015);border-color:var(--border-accent);box-shadow:var(--shadow-hover);outline:none}.syllabus-card-icon{display:inline-flex;height:2.4rem;width:2.4rem;align-items:center;justify-content:center;border-radius:999px;background:var(--text);color:var(--surface)}.theme-dark .syllabus-card-icon{background:#bfdbfe;color:#020617}.syllabus-card-link strong{display:block;font-size:.98rem;line-height:1.2}.syllabus-card-link small{display:block;margin-top:.25rem;color:var(--text-soft);font-size:.82rem;line-height:1.35}.moments-feature{margin-top:4.5rem;padding-top:3.25rem;border-top:1.5px solid var(--border)}.moments-head{display:grid;grid-gap:1rem;gap:1rem}.moments-note{max-width:46rem;margin:0;color:var(--text-soft);line-height:1.8}.moments-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(320px,430px);grid-gap:1.25rem;gap:1.25rem;margin-top:2rem;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;padding:.25rem .25rem 1.25rem;scrollbar-width:thin}.moment-card{position:relative;min-height:320px;overflow:hidden;border:1.5px solid var(--border-strong);border-radius:1.65rem;background:var(--surface);box-shadow:var(--shadow);scroll-snap-align:start;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.moment-card:focus-within,.moment-card:hover{transform:translateY(-6px) scale(1.025);border-color:var(--border-accent);box-shadow:var(--shadow-hover)}.moment-image{height:100%;min-height:320px;width:100%;object-fit:cover;display:block;filter:saturate(.96) contrast(1.02);transition:transform .35s ease,filter .35s ease}.moment-card:focus-within .moment-image,.moment-card:hover .moment-image{transform:scale(1.07);filter:saturate(1.06) contrast(1.05)}.moment-overlay{position:absolute;inset-inline:0;bottom:0;padding:1.25rem;color:white;background:linear-gradient(0deg,rgba(2,6,23,.86),rgba(2,6,23,.35),transparent);transform:translateY(.35rem);transition:transform .22s ease,background .22s ease}.moment-card:focus-within .moment-overlay,.moment-card:hover .moment-overlay{transform:translateY(0);background:linear-gradient(0deg,rgba(2,6,23,.94),rgba(2,6,23,.42),transparent)}.moment-title{margin:0;font-weight:700;font-size:1.05rem;letter-spacing:.02em}.moment-caption{margin:.35rem 0 0;color:#e2e8f0;font-size:.92rem;line-height:1.45}.theme-dark .moment-card{border-color:var(--border-strong)}@media (max-width:767px){.nav-link{padding:.42rem .65rem}.moments-strip{grid-auto-columns:minmax(260px,82vw)}.moment-card,.moment-image{min-height:260px}.syllabus-card-link{grid-template-columns:auto 1fr}.syllabus-card-link>.icon-sm:last-child{display:none}}