:root{--bg:#080e19;--navy:#0d1626;--navy2:#101e31;--surface:#111e30;--ink:#eaf3ff;--blue:#66b3ff;--bright:#8ee1ff;--muted:#91a4bc;--rule:rgba(140,183,230,.18);--paper:#f1f5fa;--paperink:#17243a;--paperline:#d6e0ed;--mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Consolas,monospace;--display:'Space Grotesk',system-ui,sans-serif;--body:'DM Sans',system-ui,sans-serif;--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--bg);font-family:var(--body);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--bright);outline-offset:5px}::selection{background:#64b9f2;color:#06101c}p,h1,h2,h3,h4{overflow-wrap:break-word}svg,canvas{max-width:100%}.container{width:min(calc(100% - 108px),var(--max));margin-inline:auto}.skip-link{position:fixed;top:-100px;left:20px;z-index:1000;background:var(--bright);color:#06101c;padding:12px 20px}.skip-link:focus{top:14px}.scroll-indicator{position:fixed;top:0;left:0;z-index:500;height:3px;width:0;background:linear-gradient(90deg,#3d84ff,#9be5ff);pointer-events:none}.header{position:sticky;top:0;z-index:90;background:rgba(8,14,25,.87);border-bottom:1px solid var(--rule);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:32px}.logo{display:flex;align-items:center;gap:13px;flex-shrink:0}.logo-box{display:grid;place-items:center;border:1px solid #7eb9ee;color:white;height:45px;width:49px;font:700 17px var(--display);letter-spacing:-.08em}.logo-box span{color:var(--bright)}.logo-word{font:700 12px/1.4 var(--display);letter-spacing:.16em}.logo-word small{display:block;color:var(--muted);font:500 8px/2 var(--mono);letter-spacing:.14em}.main-nav{display:flex;align-items:center;gap:clamp(14px,2.3vw,36px)}.main-nav a{font:500 12px var(--display);letter-spacing:.015em;transition:color .2s}.main-nav a:hover{color:var(--bright)}.main-nav .nav-contact{background:#f2f6fc;color:#0a1423;padding:15px 18px;margin-left:4px;font-weight:700}.main-nav .nav-contact:hover{background:var(--bright);color:#0b1d32}.nav-contact span{padding-left:15px}.nav-signal{font-size:6px;color:var(--blue);vertical-align:middle}.menu-toggle{display:none;background:none;border:1px solid var(--rule);height:43px;width:45px;align-items:center;justify-content:center;flex-direction:column;gap:6px}.menu-toggle span{height:2px;width:20px;background:#e4f4ff;transition:transform .25s}
.eyebrow{margin:0;color:var(--muted);font:600 11px var(--mono);letter-spacing:.13em}.eyebrow-num{color:var(--blue);padding-right:10px}.section{padding-block:135px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:54px}.section-heading h2{margin:20px 0 0;font:700 clamp(49px,5.2vw,91px)/.94 var(--display);letter-spacing:-.069em}.muted-title{color:#758ba6}.inline-link{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:0 0 12px;border-bottom:1px solid #5a99d6;color:#c8e7ff;white-space:nowrap;font:600 12px var(--mono);letter-spacing:.025em;transition:color .2s,border-color .2s}.inline-link:hover{color:#fff;border-color:#fff}.inline-link span{font:400 20px var(--body)}.btn{display:inline-flex;align-items:center;justify-content:space-between;min-height:56px;gap:32px;padding:0 20px;font:700 12px var(--mono);letter-spacing:.005em;transition:background .2s,color .2s,transform .2s;border:1px solid transparent}.btn:hover{transform:translateY(-3px)}.btn span{font:400 24px var(--body)}.btn-primary{color:#071726;background:var(--bright)}.btn-primary:hover{background:#fff}.btn-quiet{border-color:#536b83;color:#f3fbff}.btn-quiet:hover{background:#182e49}.micro-label{font:600 10px var(--mono);color:#7294b8;letter-spacing:.13em}
/* HERO */
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 44%,#102b4a 0%,#091524 39%,#080e19 70%);min-height:740px}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,12,23,.06) 49.9%,rgba(86,142,205,.06) 50%,rgba(6,12,23,.06) 50.1%),linear-gradient(transparent 49.9%,rgba(86,142,205,.06) 50%,transparent 50.1%);background-size:100px 100px;opacity:.65;mask-image:linear-gradient(to right,transparent,black 45%)}.hero:after{content:'';position:absolute;width:750px;height:750px;border-radius:50%;background:#2864b615;filter:blur(110px);right:-120px;top:40px;pointer-events:none}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(12px,3vw,58px);min-height:718px;padding-block:72px 60px;align-items:center}.hero-copy{min-width:0;position:relative;z-index:3}.hero-prelude{display:flex;align-items:center;gap:14px;font:600 9px var(--mono);letter-spacing:.14em;color:#94aec8;margin-bottom:75px;white-space:nowrap}.live-dot{display:inline-block;height:7px;width:7px;min-width:7px;border-radius:50%;background:#72e6f3;box-shadow:0 0 0 4px #7ceeff1a,0 0 16px #72e6f380}.prelude-line{height:1px;width:55px;background:#3a5b78}.hero-id{font:600 11px var(--mono);letter-spacing:.07em;color:#c4d9ec;margin:0 0 20px}.hero-id span{color:var(--blue);padding:0 6px}.hero h1{font:700 clamp(56px,6.3vw,111px)/.92 var(--display);letter-spacing:-.087em;margin:0;white-space:nowrap}.headline-blue{color:var(--blue)}.outline-word{color:transparent;-webkit-text-stroke:1px #c5d7e8}.hero-description{max-width:560px;font-size:16px;line-height:1.75;color:#acbdd1;margin:30px 0 34px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-foot{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:75px;color:#d0deeb}.hero-foot strong{display:block;font:500 12px var(--display);margin-top:10px}.hero-scroll{font:600 10px var(--mono);letter-spacing:.1em;color:#7997b5;white-space:nowrap}.scroll-arrow{font-size:19px;color:var(--blue);margin-right:12px}.hero-visual{position:relative;z-index:2;min-width:0}.visual-topline{display:flex;justify-content:space-between;margin-bottom:12px;color:#84acd1;letter-spacing:.11em;font:600 9px var(--mono)}.scene-frame{position:relative;width:100%;aspect-ratio:1/1.01;background:radial-gradient(circle at center,#15345722 0%,#07132208 62%,transparent 100%);overflow:hidden;isolation:isolate}.scene-frame:before,.scene-frame:after{content:'';position:absolute;inset:9%;border:1px dashed #4784ba2b;border-radius:50%;pointer-events:none}.scene-frame:after{inset:22%;border-style:solid;border-color:#649bd02b}.scene-frame canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.scene-corner{position:absolute;width:20px;height:20px;z-index:2;pointer-events:none}.scene-corner.tl{top:0;left:0;border-top:1px solid #7daacc;border-left:1px solid #7daacc}.scene-corner.tr{top:0;right:0;border-top:1px solid #7daacc;border-right:1px solid #7daacc}.scene-corner.bl{bottom:0;left:0;border-bottom:1px solid #7daacc;border-left:1px solid #7daacc}.scene-corner.br{bottom:0;right:0;border-bottom:1px solid #7daacc;border-right:1px solid #7daacc}.scene-label{position:absolute;z-index:2;color:#6c91b6;font:500 9px/1.8 var(--mono);letter-spacing:.06em;pointer-events:none}.scene-label b{color:#beddf5;font-weight:500}.label-a{left:20px;top:18px}.label-b{bottom:19px;right:20px;text-align:right}.scene-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#b0dcff44;font:300 19px var(--body);pointer-events:none}.scene-controls{display:flex;gap:0;border-top:1px solid #2f4a66;border-bottom:1px solid #2f4a66}.scene-tab,.scene-pause{appearance:none;background:transparent;border:0;border-right:1px solid #2c435b;color:#8097ad;padding:15px 10px;font:600 10px var(--mono);letter-spacing:.05em;min-width:0;flex:1;transition:background .2s,color .2s}.scene-tab small{display:inline;color:#5d7994;margin-right:7px;font-size:9px}.scene-tab:hover,.scene-tab.is-active{color:#fff;background:#193a5a}.scene-tab.is-active{box-shadow:inset 0 2px var(--bright)}.scene-pause{flex:0 0 44px;color:var(--bright);border-right:0;font-size:14px}.scene-caption{color:#7795b3;font:400 10px/1.7 var(--mono);min-height:32px;margin:14px 0 0}.hero-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--rule);padding-block:18px;font:600 9px var(--mono);letter-spacing:.12em;color:#6f8bad}.hero-coordinate span{color:#64b6ff;padding:0 12px}
/* METRICS / EDITORIAL */
.metrics-strip{border-bottom:1px solid #cbd9e8;background:var(--paper);color:var(--paperink)}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr)}.metrics-grid>div{display:flex;align-items:center;gap:25px;border-right:1px solid var(--paperline);padding:35px 16px 34px 0}.metrics-grid>div:not(:first-child){padding-left:35px}.metrics-grid>div:last-child{border-right:0}.metric-value{font:700 clamp(27px,3.1vw,48px)/1 var(--display);letter-spacing:-.08em;color:#152b44;white-space:nowrap}.metric-dot{color:#418fdf}.metric-label{font:600 9px/1.7 var(--mono);letter-spacing:.06em;color:#597086}.intro{background:var(--paper);color:var(--paperink)}.intro .eyebrow{color:#647d97}.intro-layout{display:grid;grid-template-columns:25% 75%;gap:0}.intro-heading{font:700 clamp(42px,5vw,86px)/1.06 var(--display);letter-spacing:-.075em;margin:0}.intro-heading span{color:#2978c3}.intro-bottom{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:end;margin-top:43px;border-top:1px solid var(--paperline);padding-top:28px}.intro-bottom p{max-width:650px;font:400 16px/1.85 var(--body);color:#4b627b;margin:0}.intro-bottom .inline-link{color:#1768bb;border-color:#6ea2d5}.marquee-band{overflow:hidden;background:#246ac9;border-block:1px solid #3e89e3;padding:22px 0}.marquee-track{width:100%;white-space:nowrap;overflow:hidden;transform:translateX(var(--marquee-shift,0px));will-change:transform}.marquee-track span{font:700 27px var(--display);letter-spacing:-.035em;color:white}.marquee-track i{font-style:normal;color:#96d6ff;margin:0 24px;font-size:18px}
/* RESEARCH */
.research-section{background:#09111e}.research-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.research-card{min-width:0;border:1px solid #2e4865;background:#0e1d30;display:flex;flex-direction:column;transition:border-color .25s,transform .25s,box-shadow .25s}.research-card:hover{border-color:#6ab9fa;transform:translateY(-4px);box-shadow:0 25px 50px #02071155}.research-feature{grid-row:span 2}.card-upper{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px;font:600 10px var(--mono);color:#83a1bf;letter-spacing:.08em}.status{font:600 9px var(--mono);color:#a1b9d3;white-space:nowrap}.status i{display:inline-block;height:5px;width:5px;background:#6db5e9;border-radius:50%;margin-right:7px;vertical-align:middle}.status-analytical i{background:#83dcf8}.research-visual{overflow:hidden;position:relative;background:radial-gradient(circle at 50% 50%,#173e5a,#0b1827 68%);display:grid;place-items:center;margin-inline:16px;min-height:180px}.research-visual svg{width:100%;height:100%;display:block}.research-feature .research-visual{flex:1;min-height:318px}.card-content{padding:30px 34px 28px}.card-type{font:600 10px var(--mono);color:#7cb8f0;letter-spacing:.12em;margin:0 0 16px}.card-content h3{font:700 clamp(28px,3vw,49px)/1.08 var(--display);letter-spacing:-.052em;margin:0 0 20px}.research-card:not(.research-feature) .card-content h3{font-size:clamp(26px,2.45vw,37px)}.card-content>p:not(.card-type){font:400 14px/1.8 var(--body);color:#a4bad0;max-width:520px;margin:0 0 24px}.card-bottom{margin-top:auto;border-top:1px solid #314a63;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#7997b4;font:600 9px var(--mono);letter-spacing:.08em}.round-arrow{border:1px solid #5e91c0;border-radius:50%;width:34px;height:34px;color:#ccecff;display:grid;place-items:center;font:400 18px var(--body)}.research-card:hover .round-arrow{background:#70c3fb;color:#0d1b2c}.section-footnote{font:400 10px/1.8 var(--mono);color:#7890aa;letter-spacing:.01em;margin:30px 0 0}
/* PROJECTS */
.projects-section{background:var(--paper);color:var(--paperink)}.projects-heading .eyebrow{color:#62788f}.projects-heading .muted-title{color:#6686a5}.heading-aside{max-width:260px;color:#526982;font:400 15px/1.8 var(--body);margin:0}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.project-card{background:#fff;border:1px solid #d4e1ee;display:flex;flex-direction:column;min-width:0;transition:transform .25s,box-shadow .25s}.project-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px #173b6019}.project-no{padding:23px 25px;display:flex;justify-content:space-between;border-bottom:1px solid #e0e9f0;font:600 12px var(--mono);color:#125fb3}.project-no span{color:#677d92;font-size:9px}.project-art{height:260px;background:#0c1d2f;position:relative;overflow:hidden;display:grid;place-items:center}.project-art:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#4d89b21e 1px,transparent 1px),linear-gradient(90deg,#4d89b21e 1px,transparent 1px);background-size:30px 30px}.project-info{padding:29px 28px 31px;display:flex;flex:1;flex-direction:column}.project-tags{display:flex;align-items:center;justify-content:space-between;gap:10px;font:600 9px/1.5 var(--mono);letter-spacing:.02em;color:#3278ac}.project-tags .verified{color:#147a76}.project-tags .analytical-tag{color:#2869a4}.project-tags .concept-tag{color:#8a6b39}.project-info h3{font:700 clamp(24px,2.65vw,39px)/1.08 var(--display);letter-spacing:-.055em;margin:31px 0 15px}.project-info>p{color:#526881;font:400 14px/1.8 var(--body);margin:0}.mini-link{display:inline-flex;margin-top:18px;align-self:flex-start;color:#1b66b9;font:700 11px var(--mono);border-bottom:1px solid #3b87cb;padding-bottom:5px}.radio-board{position:relative;width:196px;height:125px;transform:rotate(-15deg);background:linear-gradient(160deg,#123e56,#0c243a);border:2px solid #5ba5bb;box-shadow:0 14px 50px #0008,0 0 0 8px #388cc010}.radio-board:before{content:'';position:absolute;inset:10px;border:1px solid #7cc1ce35}.radio-chip{position:absolute;background:#07111e;border:2px solid #5a8797;box-shadow:0 0 0 5px #163953}.chip-one{width:53px;height:50px;left:72px;top:36px}.chip-two{width:33px;height:23px;left:20px;top:20px}.radio-trace{position:absolute;height:2px;background:#56c9bf;opacity:.75}.trace-one{width:53px;left:20px;top:66px}.trace-two{width:64px;left:124px;top:48px;transform:rotate(-30deg);transform-origin:left}.trace-three{width:53px;left:109px;top:99px}.radio-antenna{position:absolute;width:3px;height:72px;background:linear-gradient(#91edff,#2b829a);right:14px;bottom:123px}.radio-node{position:absolute;width:7px;height:7px;border-radius:50%;background:#91f2de;box-shadow:0 0 15px #9be9f0}.n1{left:18px;top:60px}.n2{right:15px;top:78px}.n3{left:128px;bottom:15px}.radio-waves{position:absolute;right:21%;top:11%;height:95px;width:95px}.radio-waves i{position:absolute;border:1px solid #68d9f3;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;width:25px;height:25px;transform:rotate(-15deg)}.radio-waves i:nth-child(2){width:55px;height:55px}.radio-waves i:nth-child(3){width:85px;height:85px}.robot-outline{position:relative;width:143px;height:113px;border:2px solid #7ccfff;transform:rotate(-31deg);display:grid;place-items:center;background:#1d436277}.robot-outline span{font:700 16px var(--mono);color:#d3f1ff;transform:rotate(31deg)}.robot-outline i{position:absolute;width:34px;height:17px;background:#80daff;border-radius:3px;border:4px solid #1e5270}.robot-outline i:nth-child(1){left:-19px;top:5px;transform:rotate(23deg)}.robot-outline i:nth-child(2){right:-19px;top:5px;transform:rotate(-23deg)}.robot-outline i:nth-child(3){left:-19px;bottom:5px;transform:rotate(-23deg)}.robot-outline i:nth-child(4){right:-19px;bottom:5px;transform:rotate(23deg)}.robot-coordinates{position:absolute;top:24px;left:25px;color:#9ed9ff;font:600 11px/1.7 var(--mono)}.robot-vector{position:absolute;font:500 75px var(--display);color:#4dc4ff;right:15%;bottom:12%}.avionics-node{position:absolute;display:grid;place-items:center;padding:12px;border:1px solid #529ac2;color:#c4e6ff;background:#133c59;font:600 9px var(--mono);z-index:2}.avionics-node.core{height:100px;width:100px;border-radius:50%;font-size:12px;text-align:center;border:1px solid #89d4f9;box-shadow:0 0 40px #2fa1f124}.avionics-node.a{top:25px;left:22%}.avionics-node.b{top:25px;right:13%}.avionics-node.c{bottom:25px;left:19%}.avionics-node.d{bottom:25px;right:17%}.avionics-link{position:absolute;height:1px;background:#4787ad;width:37%;z-index:1}.l1{transform:rotate(35deg);top:35%;left:22%}.l2{transform:rotate(-35deg);top:35%;right:13%}.l3{transform:rotate(-35deg);bottom:34%;left:20%}.l4{transform:rotate(35deg);bottom:34%;right:13%}
/* METHOD / LAB / VENTURE / CONTACT */
.method-section{background:#0c1726}.method-top{display:grid;grid-template-columns:1.25fr .55fr;gap:80px;align-items:end;padding:34px 0 80px}.method-top h2{font:700 clamp(57px,7vw,119px)/.95 var(--display);letter-spacing:-.08em;margin:0}.method-top h2 em{font-style:normal;color:var(--blue)}.method-top>p{font:400 17px/1.85 var(--body);color:#a8bcd0;margin:0}.method-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #344a60}.method-list>div{padding:26px 23px 0 0;border-right:1px solid #344a60}.method-list>div:not(:first-child){padding-left:23px}.method-list>div:last-child{border:0}.method-list b{font:600 11px var(--mono);color:var(--blue)}.method-list h3{font:600 23px var(--display);letter-spacing:-.045em;margin:37px 0 14px}.method-list p{font:400 13px/1.75 var(--body);color:#9aafc4;margin:0}.lab-feature{padding-block:120px;background:#102942;color:#f1f9ff;position:relative;overflow:hidden}.lab-feature:before{content:'';position:absolute;right:-230px;top:-150px;width:720px;height:720px;border-radius:50%;background:#408ed41a;filter:blur(70px)}.lab-feature-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.lab-blink{font-size:8px;color:#78edff}.lab-copy h2{font:700 clamp(55px,5.4vw,92px)/.97 var(--display);letter-spacing:-.075em;margin:27px 0}.lab-copy h2 span{color:#85dfff}.lab-copy p:not(.eyebrow){font:400 16px/1.85 var(--body);color:#aec6db;max-width:520px;margin:0 0 30px}.lab-preview{height:420px;background:#0b1c2e;border:1px solid #48708d;box-shadow:0 25px 90px #00142180;transform:perspective(900px) rotateY(-9deg) rotateX(5deg)}.lab-panel-top,.lab-panel-bottom{display:flex;justify-content:space-between;align-items:center;padding:19px 24px;border-bottom:1px solid #2d5878;color:#94c8eb;font:600 10px var(--mono);letter-spacing:.1em}.lab-panel-bottom{border-top:1px solid #2d5878;border-bottom:0}.lab-preview-grid{height:310px;position:relative;display:grid;place-items:center;background-image:linear-gradient(#41779b25 1px,transparent 1px),linear-gradient(90deg,#41779b25 1px,transparent 1px);background-size:34px 34px}.lab-glow-square{height:180px;width:180px;border:1px solid #66c7ec;transform:rotate(-27deg);box-shadow:0 0 0 18px #4791c910,0 0 0 56px #4791c908}.lab-preview-robot{position:absolute;color:#9fe4ff;font:700 88px var(--display)}.lab-bar{position:absolute;left:20px;height:7px;width:90px;background:#5dafff;box-shadow:0 0 10px #5dafff61}.lab-bar.one{top:58px}.lab-bar.two{top:84px;width:64px}.lab-bar.three{bottom:78px;width:110px}.lab-bar.four{bottom:52px;width:77px}.venture-section{padding-block:120px;background:#090e18;overflow:hidden}.venture-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.venture-grid h2{font:700 clamp(45px,5.4vw,90px)/1 var(--display);letter-spacing:-.071em;margin:30px 0}.venture-grid h2 span{color:#6694c3}.venture-grid p:not(.eyebrow){font:400 16px/1.8 var(--body);color:#a1b5c9;max-width:610px;margin:0 0 34px}.venture-grid p strong{color:#f1f9ff}.venture-graphic{min-height:380px;display:grid;place-items:center;position:relative}.venture-rings{position:relative;width:340px;height:340px;display:grid;place-items:center}.venture-rings .ring{position:absolute;inset:0;border:1px solid #3d739b6b;border-radius:50%}.venture-rings .r2{inset:37px;border-style:dashed;transform:rotate(-25deg)}.venture-rings .r3{inset:80px;border:2px solid #598ab8a6}.venture-x{font:700 160px var(--display);letter-spacing:-.1em;color:#d8e7f6;transform:rotate(-8deg);text-shadow:0 0 70px #4c9de366}.venture-coordinate{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);white-space:nowrap;font:600 9px var(--mono);color:#7897b5;letter-spacing:.12em}.contact-section{background:#eaf1f9;color:#13243a}.contact-section .eyebrow{color:#657b92}.contact-grid{display:grid;grid-template-columns:1.5fr .5fr;gap:90px;margin-top:33px;align-items:end}.contact-grid h2{font:700 clamp(68px,8vw,140px)/.92 var(--display);letter-spacing:-.09em;margin:0}.contact-grid h2 span{color:#307dc3}.contact-grid p{font:400 15px/1.8 var(--body);max-width:470px;color:#536c84;margin:25px 0 25px}.contact-email{color:#185f9d;border-bottom:1px solid #6b9ec9;padding-bottom:10px;display:inline-flex;gap:34px;align-items:center;font:600 clamp(13px,1.8vw,24px) var(--display);letter-spacing:-.03em}.contact-email:hover{color:#0b3e70}.contact-aside{display:flex;flex-direction:column;align-items:stretch;border-top:1px solid #b9cfe0}.contact-aside a,.contact-aside button{border:0;border-bottom:1px solid #b9cfe0;background:transparent;min-height:60px;display:flex;justify-content:space-between;align-items:center;text-align:left;font:700 11px var(--mono);color:#244665;letter-spacing:.03em;transition:color .2s,padding .2s}.contact-aside a:hover,.contact-aside button:hover{color:#0964c4;padding-left:7px}.contact-aside a span,.contact-aside button span{font-size:19px}.contact-status{display:flex;gap:12px;align-items:center;font:600 9px var(--mono);letter-spacing:.06em;color:#466885;padding:19px 0;border-bottom:1px solid #b9cfe0}.contact-status .live-dot{background:#2d999d;box-shadow:0 0 0 4px #1992971a}.footer{background:#06101b;border-top:1px solid #25405b;padding:45px 0}.footer-grid{display:grid;grid-template-columns:1fr 1.5fr auto;gap:30px;align-items:end}.footer-logo{font:700 50px var(--display);letter-spacing:-.09em;color:#eaf5ff}.footer-logo span{color:var(--bright)}.footer-grid p{margin:10px 0 0;font:500 9px/1.8 var(--mono);letter-spacing:.04em;color:#8198b1}.footer-grid p span{color:#52738d}.back-top{align-self:end;color:#a7c6e1;font:600 10px var(--mono);white-space:nowrap}.toast{position:fixed;right:20px;bottom:20px;z-index:110;background:#8edfff;color:#0a1828;font:700 12px var(--mono);padding:14px 20px;box-shadow:0 10px 45px #0007;opacity:0;transform:translateY(20px);pointer-events:none;transition:opacity .25s,transform .25s}.toast.show{opacity:1;transform:none}
/* INNER PAGES */
.page-hero{position:relative;overflow:hidden;padding:93px 0 100px;background:radial-gradient(ellipse at 90% 50%,#123454,#091421 60%,#080e19)}.page-hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#396c9222 1px,transparent 1px),linear-gradient(90deg,#396c9222 1px,transparent 1px);background-size:65px 65px;mask-image:linear-gradient(90deg,transparent,black)}.page-hero>.container{position:relative}.page-bread{font:600 10px var(--mono);color:#88afd2;margin:0 0 52px;letter-spacing:.09em}.page-bread a{color:#a6d2f5}.page-bread span{padding:0 12px;color:#46749e}.page-hero h1{font:700 clamp(55px,7.5vw,122px)/.94 var(--display);letter-spacing:-.078em;margin:22px 0 26px;max-width:1120px}.page-hero h1 span{color:var(--blue)}.page-hero .page-subtitle{max-width:670px;color:#b1c6db;font:400 16px/1.85 var(--body);margin:0}.page-hero .page-ghost{position:absolute;right:0;bottom:-18px;color:#4b81b71a;font:700 250px/1 var(--display);letter-spacing:-.1em;pointer-events:none}.article-list{background:#f2f6fb;color:#152940;padding:90px 0 110px}.article{display:grid;grid-template-columns:205px 1fr;gap:55px;padding:75px 0;border-top:1px solid #cad8e6;scroll-margin-top:110px}.article:first-child{padding-top:35px;border-top:0}.article-index{font:600 11px var(--mono);color:#427bb5}.article-index strong{display:block;font:700 68px var(--display);color:#b1c5d9;margin-top:20px}.article-index small{display:block;color:#6784a1;font:600 10px/1.8 var(--mono);letter-spacing:.04em}.article-body h2{font:700 clamp(32px,4vw,60px)/1.1 var(--display);letter-spacing:-.06em;max-width:960px;margin:0 0 22px}.article-body .article-lede{font:400 19px/1.7 var(--body);color:#3c5b77;max-width:860px;margin:0 0 32px}.article-meta{display:flex;flex-wrap:wrap;gap:18px;padding:18px 0;border-block:1px solid #d6e2ed;font:600 10px var(--mono);color:#526f8c}.article-meta span{padding-right:17px;border-right:1px solid #c6d5e3}.article-meta span:last-child{border:0}.article-columns{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:32px}.article-columns h3{font:700 19px var(--display);letter-spacing:-.045em;margin:0 0 10px}.article-columns p,.article-columns li{color:#4b647b;font:400 14px/1.8 var(--body)}.article-columns p{margin:0}.article-columns ul{padding-left:18px;margin:0}.article-callout{margin-top:32px;padding:20px 25px;border-left:3px solid #3c90d5;background:#e1ecf6;font:500 13px/1.75 var(--body);color:#355876}.article-callout strong{color:#145c9e}.article-cta{display:inline-flex;gap:30px;margin-top:25px;padding-bottom:7px;border-bottom:1px solid #3f8ace;font:700 11px var(--mono);color:#155a9c}.research-summary{background:#0c2239;padding:90px 0}.research-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.research-summary h2{font:700 clamp(40px,4vw,70px)/1 var(--display);letter-spacing:-.07em;margin:0}.research-summary p{color:#aac3dc;font:400 16px/1.85 var(--body);margin:0}.research-summary a{color:#9ce2ff;text-decoration:underline;text-underline-offset:4px}
/* LAB PAGE */
.lab-page{background:#f0f5fb;color:#172942}.lab-page .page-hero{color:#eaf6ff}.lab-page .page-hero .eyebrow{color:#86abd1}.experiment-section{padding:90px 0;border-bottom:1px solid #cfdce9}.experiment-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.experiment-heading h2{font:700 clamp(35px,4.4vw,67px)/1 var(--display);letter-spacing:-.065em;margin:14px 0}.experiment-heading p:not(.eyebrow){max-width:360px;font:400 14px/1.8 var(--body);color:#526c85;margin:0}.experiment-shell{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);background:#fff;border:1px solid #cbddec;box-shadow:0 15px 55px #27476c0d}.experiment-controls{padding:35px 38px;border-right:1px solid #d8e5ef}.experiment-controls h3{font:700 20px var(--display);letter-spacing:-.03em;margin:0 0 12px}.exp-description{font:400 13px/1.75 var(--body);color:#58718b;margin:0 0 26px}.slider-row{display:block;margin:0 0 27px}.slider-label{display:flex;justify-content:space-between;gap:18px;font:600 12px var(--mono);color:#33526d;margin-bottom:14px}.slider-label output{font-weight:700;color:#1469a7}.slider-row input[type=range]{display:block;width:100%;accent-color:#1b7aca;cursor:pointer}.exp-result{border:1px solid #bed5e8;padding:18px 20px;margin:8px 0 26px;background:#eff6fd}.exp-result .result-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font:700 12px var(--mono);color:#2a6386}.result-badge{color:#157b75}.result-badge.is-invalid{color:#b75b39}.exp-result p{font:400 12px/1.65 var(--body);margin:9px 0 0;color:#66819a}.wheel-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wheel-row{font:600 10px var(--mono);color:#496d8c}.wheel-label{display:flex;justify-content:space-between;margin-bottom:8px}.wheel-track{height:8px;background:linear-gradient(90deg,#dde9f4 0%,#dde9f4 49%,#bccfe0 49%,#bccfe0 51%,#dde9f4 51%);position:relative;overflow:visible}.wheel-fill{position:absolute;left:50%;top:0;height:100%;background:#287ccc;width:0;transform-origin:left;transition:width .12s}.wheel-fill.is-negative{transform:translateX(-100%);background:#388fce}.wheel-fill.is-over{background:#cc6048}.experiment-visual{background:#0b1e32;min-width:0;padding:22px;display:flex;flex-direction:column}.plot-header{display:flex;justify-content:space-between;color:#b1d2eb;font:600 9px var(--mono);letter-spacing:.1em;padding-bottom:16px}.plot{width:100%;height:auto;aspect-ratio:1.18;display:block;background:#0b1e32;touch-action:pan-y}.plot-caption{font:400 10px/1.65 var(--mono);color:#7297b6;padding:17px 0 3px;border-top:1px solid #2e506d}.experiment-note{font:400 13px/1.8 var(--body);color:#567089;max-width:900px;margin:25px 0 0}.experiment-note code,.formula{font:600 12px var(--mono);color:#145fa3}.formula-box{background:#e2ecf6;border:1px solid #caddea;padding:22px 26px;margin:28px 0 0;overflow-x:auto}.formula-box .formula{font-size:14px;white-space:nowrap}.lab-next{padding:80px 0 110px;background:#0e2138;color:white}.lab-next h2{font:700 clamp(37px,4.5vw,69px)/1 var(--display);letter-spacing:-.05em;margin:10px 0 20px}.lab-next p{max-width:750px;font:400 16px/1.8 var(--body);color:#a9c0d6;margin:0 0 28px}
/* RÉSUMÉ */
.resume-page{background:#e8eef5;color:#17263a}.resume-page .page-hero{padding:65px 0 68px;color:#eaf3ff}.resume-page .page-hero h1{font-size:clamp(48px,6vw,89px)}.resume-toolbar{display:flex;gap:11px;flex-wrap:wrap;padding:35px 0}.resume-toolbar a,.resume-toolbar button{padding:14px 18px;border:1px solid #a8c3da;background:white;color:#1b5c96;font:700 10px var(--mono)}.resume-toolbar a:hover,.resume-toolbar button:hover{background:#1b5c96;color:white}.resume-sheet{max-width:960px;margin:0 auto 120px;background:#fff;padding:68px 73px 76px;box-shadow:0 22px 80px #21496d20}.resume-sheet header{border-bottom:3px solid #182b44;padding-bottom:25px;margin-bottom:28px}.resume-sheet h1{font:700 54px var(--display);letter-spacing:-.065em;margin:0}.resume-sheet .resume-subtitle{font:700 12px var(--mono);letter-spacing:.13em;color:#267bc7;margin:8px 0 13px}.resume-contacts{display:flex;flex-wrap:wrap;gap:9px 20px;color:#57708a;font:500 11px/1.6 var(--body)}.resume-contacts a{color:#1c69ab}.resume-section{margin-top:26px;break-inside:avoid}.resume-section h2{font:700 16px var(--display);letter-spacing:.04em;margin:0 0 11px;border-bottom:1px solid #d3e0eb;padding-bottom:7px}.resume-section p,.resume-section li{font:400 12px/1.75 var(--body);color:#40576e}.resume-section p{margin:0 0 10px}.resume-section ul{margin:6px 0 0;padding-left:18px}.resume-entry{margin-bottom:18px;break-inside:avoid}.resume-entry h3{font:700 13px/1.4 var(--display);color:#193958;margin:0 0 4px}.resume-entry h3 span{color:#6484a3;font:500 11px var(--body)}
.js .reveal{opacity:1;transform:translateY(8px);transition:transform .72s cubic-bezier(.2,.8,.25,1)}.js .reveal.visible{transform:none}
@media(max-width:1240px){.container{width:min(calc(100% - 70px),var(--max))}.hero-inner{grid-template-columns:1.05fr .95fr}.hero h1{font-size:clamp(53px,6vw,82px)}.hero-prelude{white-space:normal;margin-bottom:60px}.hero-scroll{display:none}.card-content{padding:25px}.method-top{gap:40px}.lab-feature-grid{gap:45px}.project-info{padding:24px}.project-tags{flex-wrap:wrap}.contact-grid{gap:45px}}
@media(max-width:980px){.container{width:min(calc(100% - 48px),var(--max))}.main-nav{gap:16px}.main-nav a{font-size:11px}.logo-word{display:none}.hero-inner{grid-template-columns:1fr;gap:32px;padding-top:68px}.hero-copy{max-width:750px}.hero h1{font-size:clamp(65px,10vw,100px)}.hero-prelude{margin-bottom:45px}.hero-foot{margin-top:48px}.hero-visual{width:min(100%,630px);justify-self:center}.scene-frame{aspect-ratio:1.15}.hero-bottom{font-size:8px}.intro-layout{grid-template-columns:1fr;gap:24px}.intro-bottom{grid-template-columns:1fr}.metrics-grid>div{gap:13px;padding:27px 8px}.metrics-grid>div:not(:first-child){padding-left:15px}.metric-label{font-size:8px}.research-grid{grid-template-columns:1fr 1fr}.research-feature{grid-row:span 1;grid-column:span 2;display:grid;grid-template-columns:1fr 1.1fr;grid-template-rows:auto 1fr}.research-feature .card-upper{grid-column:span 2}.research-feature .research-visual{margin:0 0 16px 16px;min-height:300px}.research-feature .card-content{align-self:center}.projects-grid{grid-template-columns:1fr 1fr}.project-exodus{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr}.project-exodus .project-no{grid-column:span 2}.project-exodus .project-art{height:100%;min-height:300px}.method-top{grid-template-columns:1fr;gap:20px}.method-top h2{font-size:clamp(61px,9vw,95px)}.method-top>p{max-width:600px}.method-list{grid-template-columns:repeat(2,1fr);gap:30px 0}.lab-feature-grid{grid-template-columns:1fr}.lab-preview{max-width:670px;transform:none}.venture-grid{grid-template-columns:1fr}.venture-graphic{min-height:300px}.contact-grid{grid-template-columns:1fr}.contact-aside{max-width:540px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid .back-top{grid-column:2}.experiment-shell{grid-template-columns:1fr 1fr}.experiment-controls{padding:26px}.article{grid-template-columns:110px 1fr;gap:25px}}
@media(max-width:700px){html{scroll-padding-top:75px}.container{width:min(calc(100% - 38px),var(--max))}.header-inner{min-height:72px}.logo-word{display:block;font-size:10px}.logo-word small{font-size:7px}.logo-box{height:41px;width:45px;font-size:16px}.menu-toggle{display:flex;position:relative;z-index:92}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{display:none;position:fixed;z-index:91;top:72px;left:0;right:0;height:calc(100dvh - 72px);padding:28px 25px;background:#0b1729;flex-direction:column;align-items:stretch;gap:0;overflow:auto}.main-nav.open{display:flex}.main-nav a{font-size:23px;padding:20px 5px;border-bottom:1px solid #2c4159}.main-nav .nav-contact{margin:24px 0 0;text-align:center;padding:20px}.hero-inner{padding-block:50px 40px;gap:22px}.hero-prelude{font-size:8px;gap:9px;letter-spacing:.04em;margin-bottom:45px}.prelude-line{width:20px}.hero-id{font-size:9px;line-height:1.7}.hero h1{font-size:clamp(46px,11.4vw,79px)}.hero-description{font-size:14px;margin:25px 0}.hero-actions{gap:9px}.btn{font-size:10px;min-height:50px;padding:0 14px;gap:18px}.hero-foot{margin-top:38px}.hero-visual{width:100%;margin-top:17px}.scene-frame{aspect-ratio:1.12}.visual-topline{font-size:8px}.scene-label{font-size:8px}.scene-controls{flex-wrap:nowrap}.scene-tab{font-size:8px;padding:15px 6px}.scene-tab small{display:none}.scene-caption{font-size:9px}.hero-bottom{gap:10px;font-size:8px}.hero-bottom span:nth-child(2){display:none}.hero-coordinate{white-space:nowrap}.metrics-grid{grid-template-columns:1fr 1fr}.metrics-grid>div{padding:25px 8px 25px 0;border-bottom:1px solid var(--paperline);gap:15px}.metrics-grid>div:nth-child(2){border-right:0}.metrics-grid>div:not(:first-child){padding-left:16px}.metrics-grid>div:nth-child(3),.metrics-grid>div:nth-child(4){border-bottom:0}.metric-value{font-size:35px}.metric-label{font-size:8px}.section{padding-block:80px}.intro-heading{font-size:clamp(38px,8.6vw,65px)}.intro-bottom{margin-top:28px}.intro-bottom p{font-size:14px}.marquee-track span{font-size:20px}.marquee-band{padding:17px 0}.marquee-track i{margin:0 14px}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:clamp(43px,8.8vw,72px)}.section-heading .inline-link{margin-top:30px}.research-grid{display:block}.research-card{margin-bottom:14px}.research-feature{display:flex}.research-feature .card-upper{grid-column:auto}.research-feature .research-visual{min-height:230px;margin-inline:16px;margin-bottom:0}.research-visual{min-height:155px}.card-upper{padding:17px 18px}.status{font-size:8px}.card-content{padding:24px}.card-content h3,.research-card:not(.research-feature) .card-content h3{font-size:clamp(25px,6.4vw,37px)}.projects-grid{display:block}.project-card{margin-bottom:15px}.project-exodus{display:flex}.project-no{padding:18px}.project-exodus .project-no{grid-column:auto}.project-art,.project-exodus .project-art{height:240px;min-height:0}.project-info h3{font-size:35px}.method-top{padding:25px 0 43px}.method-top h2{font-size:clamp(49px,11vw,84px)}.method-top>p{font-size:15px}.method-list{grid-template-columns:1fr 1fr;gap:28px 10px}.method-list>div{padding:20px 10px 0 0}.method-list>div:not(:first-child){padding-left:0}.method-list>div:nth-child(2){border-right:0}.method-list h3{font-size:19px;margin:22px 0 8px}.method-list p{font-size:12px}.lab-feature{padding:80px 0}.lab-copy h2{font-size:clamp(47px,9.2vw,75px)}.lab-copy p:not(.eyebrow){font-size:14px}.lab-preview{height:320px}.lab-preview-grid{height:211px}.lab-glow-square{height:145px;width:145px}.lab-preview-robot{font-size:70px}.venture-section{padding:80px 0}.venture-grid{gap:20px}.venture-grid h2{font-size:clamp(41px,8.5vw,68px)}.venture-grid p:not(.eyebrow){font-size:14px}.venture-graphic{min-height:280px}.venture-rings{width:260px;height:260px}.venture-rings .r2{inset:28px}.venture-rings .r3{inset:65px}.venture-x{font-size:120px}.venture-coordinate{font-size:7px}.contact-grid{margin-top:25px}.contact-grid h2{font-size:clamp(58px,12vw,99px)}.contact-grid p{font-size:14px}.contact-email{font-size:clamp(12px,3vw,19px);gap:12px}.contact-aside{margin-top:15px}.footer-grid{grid-template-columns:1fr;gap:10px}.footer-grid .back-top{grid-column:auto}.footer-grid p{font-size:9px}.page-hero{padding:65px 0 72px}.page-hero h1{font-size:clamp(48px,10vw,84px)}.page-hero .page-subtitle{font-size:14px}.page-bread{margin-bottom:35px}.page-hero .page-ghost{font-size:130px}.article-list{padding:60px 0}.article{display:block;padding:55px 0}.article-index{margin-bottom:18px}.article-index strong{display:inline;font-size:30px;margin-left:16px}.article-index small{display:inline;margin-left:15px}.article-body h2{font-size:clamp(28px,7.2vw,45px)}.article-body .article-lede{font-size:16px}.article-meta{font-size:9px;gap:9px}.article-columns{grid-template-columns:1fr;gap:28px}.research-summary{padding:68px 0}.research-summary-grid{grid-template-columns:1fr;gap:20px}.experiment-section{padding:65px 0}.experiment-heading{display:block}.experiment-heading h2{font-size:clamp(35px,8vw,62px)}.experiment-heading p:not(.eyebrow){margin:17px 0 0}.experiment-shell{display:flex;flex-direction:column}.experiment-controls{border-right:0;border-bottom:1px solid #d8e5ef;padding:26px 23px}.experiment-visual{padding:16px}.plot{aspect-ratio:1.2}.wheel-list{gap:12px}.experiment-note{font-size:12px}.lab-next{padding:65px 0}.resume-page .page-hero h1{font-size:clamp(45px,8vw,74px)}.resume-toolbar{padding:22px 0}.resume-sheet{padding:36px 27px 40px;margin-bottom:50px}.resume-sheet h1{font-size:38px}.resume-contacts{font-size:10px}}
@media(max-width:390px){.hero h1{font-size:45px}.hero-id{font-size:8px}.hero-prelude{font-size:7px}.scene-tab{font-size:7px}.metric-value{font-size:29px}.metric-label{font-size:7px}.contact-grid h2{font-size:56px}.contact-email{font-size:11px}.status{white-space:normal}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js .reveal{opacity:1;transform:none}.marquee-track{transform:none!important}}
@media print{.header,.footer,.scroll-indicator,.skip-link,.page-hero,.resume-toolbar,.toast{display:none!important}body,.resume-page{background:white!important}.resume-sheet{box-shadow:none!important;max-width:none;margin:0!important;padding:0!important}.resume-sheet h1{font-size:40px}.resume-sheet .resume-section{break-inside:avoid}.resume-section,.resume-entry{page-break-inside:avoid}a{color:inherit!important;text-decoration:none!important}@page{size:letter;margin:.62in}}
/* Keep the HS monogram on one baseline. */
.logo-box{display:flex;align-items:center;justify-content:center;gap:1px}
