:root{--accent:#47b8ff;--accent-strong:#2580ff;--glass-bg:rgba(23,26,36,.55);--glass-border:hsla(0,0%,100%,.2);--text:#e8ecff;--muted:rgba(232,236,255,.74);--surface:rgba(15,18,28,.35);--shadow:rgba(6,12,34,.35)}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Segoe UI,Inter,Roboto,Arial,sans-serif;color:var(--text);margin:0;line-height:1.6;background:radial-gradient(circle at top left,#10172c 0,#0b1120 35%,#060912 100%);min-height:100vh;position:relative;overflow-x:hidden}body:after,body:before{content:"";position:fixed;width:480px;height:480px;border-radius:50%;filter:blur(120px);opacity:.55;z-index:-2}body:before{top:-180px;right:-140px;background:rgba(71,184,255,.55)}body:after{bottom:-220px;left:-200px;background:rgba(255,109,182,.38)}main{display:block}.container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.page-shell{padding:6rem 0 4rem;display:flex;flex-direction:column;gap:4rem}.glass-bar,.glass-card,.glass-panel{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:18px;box-shadow:0 24px 50px -32px var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.glass-bar{background:rgba(15,18,28,.65)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass-bar,.glass-card,.glass-panel{background:rgba(22,26,36,.95)}}.site-header{position:-webkit-sticky;position:sticky;top:20px;margin:20px auto 0;width:min(1100px,calc(100% - 3rem));z-index:50}.site-header .container{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.5rem}.logo{font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase;margin:0;color:#f6f8ff}.nav a{margin-left:1.25rem;color:var(--muted);text-decoration:none;font-size:.95rem;transition:color .2s ease,transform .2s ease}.nav a:focus-visible,.nav a:hover{color:#fff;transform:translateY(-2px)}.hero{position:relative;padding:0 1.5rem}.hero-inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-gap:2.5rem;gap:2.5rem;padding:3rem 3.5rem;align-items:center;overflow:hidden}.hero-copy h2{margin:0 0 1rem;font-size:clamp(2.2rem,5vw,3.3rem);letter-spacing:-.02em}.hero-kicker{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.18em;color:rgba(232,236,255,.6);margin-bottom:1.25rem}.hero-kicker:before{content:"";width:36px;height:1px;background:rgba(232,236,255,.35)}.lead{color:var(--muted);font-size:1.05rem;margin:0 0 2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:32px;padding:.75rem 1.6rem;font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease;border:1px solid transparent}.btn.primary{background:linear-gradient(135deg,var(--accent) 0,var(--accent-strong) 100%);color:#05070f;box-shadow:0 14px 30px -16px rgba(71,184,255,.8)}.btn.primary:focus-visible,.btn.primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px -14px rgba(71,184,255,.9)}.btn.ghost{border-color:rgba(230,233,255,.35);color:#f6f8ff;background:rgba(230,233,255,.04)}.btn.ghost:focus-visible,.btn.ghost:hover{background:rgba(230,233,255,.12);transform:translateY(-2px)}.hero-stats{list-style:none;margin:0;padding:2rem 2.5rem;border-radius:16px;background:rgba(17,21,32,.55);display:grid;grid-gap:1.5rem;gap:1.5rem;border:1px solid hsla(0,0%,100%,.08)}.stat-value{font-size:1.8rem;font-weight:700;color:#fff;display:block}.stat-label{color:var(--muted);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}.about,.contact,.projects,.research{padding:0 1.5rem}.section-heading{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.2rem}.section-heading h3{margin:0;font-size:clamp(1.6rem,3vw,2.1rem);letter-spacing:-.01em}.eyebrow{text-transform:uppercase;font-size:.75rem;letter-spacing:.24em;color:rgba(232,236,255,.55)}.about .glass-panel,.contact .glass-panel,.research .glass-panel{display:grid;grid-gap:1rem;gap:1rem;padding:2.5rem 3rem}.note{padding:1rem 1.25rem;border-left:4px solid rgba(71,184,255,.55);color:var(--muted);margin:0 0 1.5rem}.grid{grid-gap:2.5rem;gap:2.5rem;grid-template-columns:minmax(0,1fr)}.card,.grid{display:grid}.card{padding:2.2rem;grid-gap:1.4rem;gap:1.4rem}.project-card__header h4{margin:0;font-size:1.2rem;letter-spacing:-.01em}.thumbs{display:grid;grid-gap:1.1rem;gap:1.1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.video-frame{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;border:1px solid hsla(0,0%,100%,.08);background:rgba(5,7,15,.7)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}.thumb-frame{position:relative;aspect-ratio:16/10;border-radius:14px;overflow:hidden;border:1px solid hsla(0,0%,100%,.08);background:hsla(0,0%,100%,.04)}.thumb-trigger{display:block;width:100%;height:100%;padding:0;border:none;background:transparent;cursor:zoom-in}.thumb-trigger:focus-visible{outline:3px solid hsla(0,0%,100%,.6);outline-offset:3px}.thumb-frame img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease,filter .3s ease;filter:saturate(.92) contrast(1.05)}.thumb-trigger:focus-visible img,.thumb-trigger:hover img{transform:scale(1.04);filter:saturate(1.05) contrast(1.08)}.image-viewer-backdrop{position:fixed;inset:0;background:rgba(7,12,23,.78);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:2rem;z-index:999}.image-viewer{position:relative;max-width:min(900px,90vw);max-height:min(80vh,900px);background:rgba(16,24,39,.85);border-radius:18px;border:1px solid hsla(0,0%,100%,.1);box-shadow:0 20px 50px rgba(0,0,0,.45);padding:1.5rem;display:flex;flex-direction:column;gap:1rem;overflow:auto}.image-viewer img{max-height:60vh;width:100%;object-fit:contain;border-radius:12px}.image-viewer__caption{margin:0;color:hsla(0,0%,100%,.84);font-size:.95rem;text-align:center}.image-viewer__close{position:absolute;top:.75rem;right:.75rem;border:none;background:hsla(0,0%,100%,.12);color:#fff;width:2.25rem;height:2.25rem;border-radius:999px;font-size:1.2rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .2s ease,transform .2s ease}.image-viewer__close:focus-visible,.image-viewer__close:hover{background:hsla(0,0%,100%,.25);transform:scale(1.05);outline:none}.statement{font-size:.98rem;color:var(--muted);margin:0}.resource-links{list-style:none;padding:0;margin:0;display:grid;grid-gap:.75rem;gap:.75rem}.resource-links a{color:#fff;text-decoration:none;font-weight:600;display:inline-flex;gap:.4rem;align-items:center}.resource-links a:after{content:"↗";font-size:.9rem;opacity:.7}.resource-links a:focus-visible,.resource-links a:hover{color:var(--accent)}.contact-form{display:grid;grid-gap:1.1rem;gap:1.1rem;max-width:540px}.contact-form label{display:grid;grid-gap:.45rem;gap:.45rem;font-size:.95rem;color:rgba(236,240,255,.7)}input,textarea{padding:.75rem 1rem;border-radius:12px;border:1px solid hsla(0,0%,100%,.15);background:rgba(14,18,29,.55);color:#fff;font:inherit;transition:border-color .2s ease,box-shadow .2s ease}input:focus-visible,textarea:focus-visible{outline:none;border-color:rgba(71,184,255,.8);box-shadow:0 0 0 3px rgba(71,184,255,.25)}.form-msg{min-height:1.2rem;font-size:.9rem;color:rgba(184,222,255,.85)}.form-msg.error{color:#ff8099}.form-msg.success{color:#66f5c0}.site-footer{margin:3rem auto 2rem;width:min(1100px,calc(100% - 3rem))}.site-footer .container{padding:1rem 1.5rem;text-align:center;color:rgba(232,236,255,.55);font-size:.85rem}@media (max-width:960px){.hero-inner{grid-template-columns:minmax(0,1fr)}.hero-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));padding:1.75rem 1.5rem}.site-header{top:12px;width:calc(100% - 2rem)}}@media (max-width:720px){.page-shell{padding-top:5rem;gap:3rem}.site-header .container{padding:.75rem 1.25rem}.nav{display:none}.hero-inner{padding:2.4rem 2.1rem}.hero-actions{flex-direction:column;align-items:stretch}.thumbs{grid-template-columns:minmax(0,1fr)}}@media (max-width:540px){.container{padding:0 1.2rem}.hero-inner{padding:2rem 1.6rem}.thumbs{grid-template-columns:1fr}.card{padding:1.5rem}.about .glass-panel,.contact .glass-panel,.research .glass-panel{padding:2rem 1.5rem}}