@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--bg:#0a1020;--panel:#111b2d;--ink:#f2f5f7;--muted:#9baabc;--accent:#b5e5ca;--line:#263346;--light:#f1f3ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.nav{height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font:800 29px Manrope}.wordmark span{color:var(--accent)}nav{display:flex;gap:35px}nav a,.nav-contact{font-size:13px;font-weight:700;color:#c5ced9}nav a:hover,.nav-contact:hover,.text-link:hover{color:var(--accent)}.nav-contact span{margin-left:10px}.hero{padding:85px 0 52px;min-height:710px}.eyebrow,.kicker,.project-tag,.art-label,.time{font-size:11px;font-weight:800;letter-spacing:.16em}.eyebrow{color:var(--accent);display:flex;align-items:center;gap:12px}.dot{height:7px;width:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 16px var(--accent)}.hero-grid{display:grid;grid-template-columns:1.45fr .7fr;gap:65px;align-items:center;margin-top:35px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(54px,6.4vw,91px);letter-spacing:-.075em;line-height:1.08;margin-bottom:29px}h1 em,h2 em{font-style:normal;color:var(--accent)}.lead{font-size:18px;line-height:1.85;color:#b2bfd0;max-width:660px}.lead strong{color:#fff}.actions{display:flex;gap:13px;flex-wrap:wrap;margin:32px 0 62px}.button{display:inline-flex;gap:25px;align-items:center;padding:17px 23px;border-radius:6px;font-size:13px;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.primary{background:var(--accent);color:#0c1c20}.secondary{border:1px solid #526073}.hero-meta{display:flex;gap:45px}.hero-meta div{display:grid;gap:7px}.hero-meta b{font-size:14px}.hero-meta small{font-size:12px;color:var(--muted)}.portrait-frame{height:415px;position:relative;background:linear-gradient(145deg,#2a3e4b,#0f1b2c);border:1px solid #385264;overflow:hidden;border-radius:10px}.portrait-frame img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(20%);position:relative}.portrait-glow{position:absolute;inset:10%;background:#b5e5ca;filter:blur(90px);opacity:.25}.portrait-caption{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(transparent,#0b1221dc);font-size:10px;letter-spacing:.16em;font-weight:800;display:flex;justify-content:space-between}.scrollnote{font-size:10px;color:#8193a8;letter-spacing:.18em;margin-top:45px}.scrollnote span{margin-left:18px}.section{padding:112px 0}.work-section{background:#f3f5f2;color:#172334}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-top p{max-width:335px;color:#617080;font-size:14px;line-height:1.8}.kicker{color:#6b8f81;margin-bottom:17px}h2{font-size:clamp(39px,5vw,62px);line-height:1.15;letter-spacing:-.06em;margin-bottom:15px}.work-section h2 em{color:#4a8b70}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:27px}.filter{background:transparent;border:1px solid #cdd6d1;color:#4c5c65;padding:11px 16px;border-radius:30px;cursor:pointer;font-size:12px;font-weight:700}.filter.active,.filter:hover{background:#162a30;color:white;border-color:#162a30}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project{background:white;border:1px solid #e2e7e3;border-radius:9px;overflow:hidden;display:flex;flex-direction:column}.project[hidden]{display:none}.project.featured{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}.project.featured[hidden]{display:none}.project-art{min-height:240px;position:relative;overflow:hidden;background:#13263a}.featured .project-art{min-height:385px}.art-label{position:absolute;top:26px;left:28px;color:#d6eee3;z-index:2}.art-title{position:absolute;bottom:29px;left:29px;color:white;font:800 clamp(24px,3vw,39px)/1.18 Manrope;letter-spacing:-.05em;z-index:2}.wireless-art{background:radial-gradient(circle at 62% 44%,#2a9a8b 0%,#184659 30%,#0a1c30 72%)}.wave-lines{position:absolute;inset:12%;display:flex;align-items:center;justify-content:space-around;transform:skewY(-16deg);opacity:.5}.wave-lines i{height:45%;width:2px;background:linear-gradient(transparent,#b5e5ca,transparent);box-shadow:0 0 24px #86e4c5;transform:scaleY(var(--s,1))}.wave-lines i:nth-child(2){--s:1.8}.wave-lines i:nth-child(3){--s:.8}.wave-lines i:nth-child(4){--s:2.3}.wave-lines i:nth-child(5){--s:1.3}.wave-lines i:nth-child(6){--s:1.9}.wave-lines i:nth-child(7){--s:.6}.dark-art{background:radial-gradient(circle at 75% 30%,#476b7b,#0b1b2c 70%)}.vision-pattern{display:grid;grid-template-columns:repeat(2,110px);gap:12px;position:absolute;right:40px;top:38px;transform:rotate(-15deg)}.vision-pattern span{height:82px;border:1px solid #9ce0c3;border-radius:5px;background:linear-gradient(135deg,#8fd6b71a,#8fd6b700)}.media-art img{width:100%;height:100%;min-height:240px;max-height:280px;object-fit:cover;display:block}.light-art{background:#e6ebe9}.light-art img{object-fit:contain;padding:16px}.project-copy{padding:32px;flex:1}.project-tag{color:#56816e;font-size:10px;line-height:1.5}.project h3{font-size:25px;letter-spacing:-.045em;line-height:1.28;margin:13px 0}.project p{color:#5c6974;line-height:1.75;font-size:14px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:23px}.chips span{font-size:10px;font-weight:700;background:#edf3ef;color:#4d7061;padding:8px 10px;border-radius:3px}.project-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:23px}.project-links a{font-size:12px;font-weight:800;border-bottom:1px solid #a7c7b8;padding-bottom:5px}.project-links a:hover{color:#2c8e69}.award{margin-top:22px;color:#377e5f;font-weight:800;font-size:12px}.note,.disclosure{font-size:11px;color:#85918c;margin-top:23px;line-height:1.7}.disclosure{margin-top:30px}.journey-section{background:#0e1828}.section-intro{color:var(--muted);max-width:500px;line-height:1.8}.timeline{margin-top:50px;border-top:1px solid var(--line)}.timeline-item{display:grid;grid-template-columns:190px 1fr 55px;gap:35px;padding:34px 0;border-bottom:1px solid var(--line)}.time{color:#90bca8;padding-top:9px}.timeline-item h3{font-size:24px;margin-bottom:5px}.timeline-item p{max-width:690px;color:#9daec1;line-height:1.7;font-size:14px;margin-bottom:0}.timeline-item .role{color:#d6e4df;margin-bottom:12px}.timeline-icon{color:#708296;text-align:right;font-size:12px}.research-section{background:#111e30}.paper-list{border-top:1px solid #334153}.paper-list a{display:grid;grid-template-columns:180px 1fr 30px;gap:30px;align-items:center;border-bottom:1px solid #334153;padding:25px 0;transition:color .2s}.paper-list a:hover{color:var(--accent)}.paper-list span{font-size:10px;color:#91b4a4;letter-spacing:.1em;font-weight:800}.paper-list strong{font-size:16px;line-height:1.5}.paper-list b{text-align:right}.text-link{display:inline-block;margin-top:32px;font-size:13px;font-weight:800}.about-section{background:#f3f5f2;color:#172334}.about-section h2 em{color:#4a8b70}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about-grid p{color:#536371;line-height:1.9;font-size:16px}.social-links{display:flex;gap:23px;flex-wrap:wrap;margin-top:32px}.social-links a{font-weight:800;font-size:13px;border-bottom:1px solid #91b6a5;padding-bottom:6px}.contact-section{padding:110px 0 120px;background:radial-gradient(circle at 80% 20%,#244a4d,#0b1425 65%)}.contact-section h2{font-size:clamp(43px,6vw,75px)}.contact-section p{color:#b5c4d0;max-width:550px;line-height:1.8;margin-bottom:30px}.footer{display:flex;justify-content:space-between;gap:20px;padding:30px 0;font-size:11px;color:#8494a6;border-top:1px solid #243346}@media(max-width:850px){.hero-grid{grid-template-columns:1fr}.portrait-frame{height:330px;max-width:400px}.hero{padding-top:50px}.project.featured{grid-template-columns:1fr}.featured .project-art{min-height:280px}.about-grid{gap:25px}.timeline-item{grid-template-columns:120px 1fr 30px;gap:20px}.paper-list a{grid-template-columns:120px 1fr 20px;gap:15px}}@media(max-width:620px){.wrap{width:min(100% - 36px,1180px)}.nav{height:76px}.nav nav{gap:14px}.nav nav a{font-size:11px}.nav-contact{display:none}h1{font-size:51px}.lead{font-size:16px}.hero-meta{gap:22px;flex-wrap:wrap}.section{padding:75px 0}.section-top{display:block}.project-grid{grid-template-columns:1fr}.project.featured{grid-column:span 1}.project-copy{padding:24px}.about-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr 24px;gap:8px}.timeline-item .time{grid-column:1/-1}.paper-list a{grid-template-columns:1fr 20px}.paper-list span{grid-column:1/-1}.footer{flex-direction:column}.contact-section{padding:80px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.evershelf-art{background:linear-gradient(135deg,#14283c,#0c1725);min-height:260px;display:flex;align-items:center;justify-content:center}.evershelf-visual{width:85%;color:#e7f2ff;font-family:inherit}.evershelf-mark,.evershelf-caption{font-size:10px;letter-spacing:.16em;opacity:.75}.evershelf-frame{border:1px solid #5d8ba7;border-radius:12px;min-height:165px;display:flex;align-items:center;justify-content:space-evenly;margin:14px 0;background:repeating-linear-gradient(0deg,transparent,transparent 23px,#ffffff0a 24px)}.evershelf-person{font-size:25px;line-height:1.1;color:#79d8e6;text-align:center}.evershelf-tracking{font-size:11px;letter-spacing:.1em;line-height:2}.evershelf-tracking strong{color:#86d9c6}.project-note{font-size:12px;opacity:.75}

.hil-art{background:#13263a}.hil-art img{width:100%;height:100%;max-height:none;min-height:385px;object-fit:contain;background:#101a28}.photo-credit{position:absolute;bottom:0;left:0;right:0;padding:10px 14px;background:#0a1020df;color:#dce7e5;font-size:10px;letter-spacing:.025em}.download-stat{margin-top:22px;padding:17px 18px;border:1px solid #d5e8de;border-radius:7px;background:#f3faf6;display:flex;gap:18px;align-items:center}.download-stat strong{font:800 29px Manrope;color:#245e49;letter-spacing:-.04em}.download-stat span{font-size:12px;line-height:1.6;color:#415b50}.download-stat small{font-size:10px;color:#74877d}@media(max-width:850px){.hil-art img{min-height:250px}}

/* Embedded public project video */
.video-art{position:relative;min-height:260px;background:#0b1424;overflow:hidden}
.video-art iframe{display:block;width:100%;height:100%;min-height:260px;border:0;aspect-ratio:16/9}
.video-label{position:absolute;bottom:0;left:0;right:0;padding:8px 12px;background:rgba(5,12,24,.8);color:#fff;font-size:11px;pointer-events:none}

.keysight-inspection-art{background:#141d2d}.keysight-inspection-art img{width:100%;height:100%;object-fit:contain;display:block;padding:18px;box-sizing:border-box}.keysight-inspection-art .photo-credit{font-size:10px}

/* Conference and award highlights */
.spotlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}
.spotlight-card{border:1px solid rgba(140,155,180,.22);border-radius:18px;overflow:hidden;background:rgba(120,140,165,.055)}
.spotlight-card>img{display:block;width:100%;height:350px;object-fit:cover;object-position:center 40%}
.spotlight-card:nth-child(2)>img{object-position:center 55%}
.spotlight-body{padding:26px}
.spotlight-body h3{font-size:clamp(1.35rem,2.3vw,1.85rem);margin:12px 0}
.spotlight-body p{line-height:1.7}
.spotlight-body a{display:inline-block;margin-top:12px;color:inherit;text-decoration:underline;text-underline-offset:4px}
@media(max-width:740px){.spotlight-grid{grid-template-columns:1fr}.spotlight-card>img{height:290px}}

/* Award certificate: show the entire photograph rather than cropping it. */
.spotlight-card:nth-child(2)>img{
  height:460px;
  object-fit:contain;
  object-position:center;
  background:#111a2b;
  padding:14px;
  box-sizing:border-box;
}
@media(max-width:740px){
  .spotlight-card:nth-child(2)>img{height:390px;padding:10px}
}

@media(max-width:370px){
  .nav{gap:12px}
  .nav nav{gap:6px}
  .nav nav a{font-size:10px;letter-spacing:-.3px}
}
