/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6h9Q.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb54C-s0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb94C-s0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPbF4Cw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb54C-s0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb94C-s0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPbF4Cw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb54C-s0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb94C-s0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPbF4Cw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb54C-s0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPb94C-s0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/V8mDoQDjQSkFtoMM3T6r8E7mPbF4Cw.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{--ink:#edf6ff;--muted:#9baec5;--blue:#65daff;--cyan:#44ecdc;--paper:#07101e;--line:#233348;--sans:'DM Sans',Arial,sans-serif;--display:'Space Grotesk',Arial,sans-serif;--mono:'JetBrains Mono',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--cyan);outline-offset:6px}::selection{background:#185682;color:white}.skip-link{position:fixed;top:-70px;left:18px;z-index:30;background:var(--cyan);color:#07101e;padding:10px 16px}.skip-link:focus{top:10px}.header{height:80px;position:fixed;inset:0 0 auto;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:12px 5%;background:rgba(7,16,30,.91);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:43px;height:43px;object-fit:contain;background:white;border-radius:3px}.brand .brand-wordmark{width:188px;height:auto;object-fit:contain;background:transparent;border-radius:0}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav a:hover{color:var(--cyan)}.nav-contact{border:1px solid #476682;padding:8px 18px;color:#d9f3ff}.menu-toggle{display:none}.scene{position:fixed;inset:80px 0 0;pointer-events:none;z-index:0;transition:opacity .5s}.scene:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 75% 50%,#0b26444d,transparent 60%)}canvas{width:100%;height:100%;display:block;position:relative}main{position:relative;z-index:1}.story{min-height:100svh;position:relative;display:flex;align-items:center;padding:130px 7% 110px;background:linear-gradient(90deg,var(--paper),#07101ef5 28%,#07101e00 58%);border-bottom:1px solid var(--line)}.hero{min-height:100svh}.hero-copy{max-width:610px}.eyebrow{font:400 12px/1.7 var(--mono);letter-spacing:.12em;color:#77a8c9;margin:0 0 30px}h1,h2,h3,p{margin-top:0}h1{font:500 clamp(72px,7.3vw,118px)/1.01 var(--display);letter-spacing:-.065em;margin-bottom:28px}h1 em,h2 em{font-style:normal;color:var(--blue);font-weight:500}h1 em{background:linear-gradient(95deg,#5cceff,#79efdd);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-description{font-size:20px;line-height:1.6;max-width:470px;color:#bbcde0;margin-bottom:32px}.hero-note{font:12px/1.8 var(--mono);color:#7693b2;margin-top:32px}.text-link{display:inline-block;border-bottom:1px solid #5ccfee;padding-bottom:8px;font-size:15px;font-weight:500;color:#c9f5ff}.text-link:hover{color:var(--cyan)}.hero-bottom{position:absolute;bottom:50px;left:7%;right:7%;display:flex;justify-content:space-between;gap:20px;font:11px/1.6 var(--mono);letter-spacing:.07em;color:#6587a8}.hero-bottom .scene-label{color:var(--blue)}h2{font:500 clamp(46px,4.9vw,74px)/1.09 var(--display);letter-spacing:-.05em;margin-bottom:26px}.section-copy{max-width:500px}.section-copy p:not(.eyebrow){max-width:455px;color:var(--muted)}.section-copy .lead{font-size:21px;color:#d7e6f8!important}.visual-caption{position:absolute;bottom:60px;right:7%;color:#638eaf;font:11px/1.7 var(--mono);letter-spacing:.08em}.process-list{border-top:1px solid var(--line);margin-top:28px}.process-list>div{display:grid;grid-template-columns:35px 1fr;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.process-list span{grid-row:span 2;font:12px var(--mono);color:var(--blue)}.process-list strong{font-size:15px;font-weight:500;color:#d8eaff}.process-list small{font-size:13px;color:#7590ad}.solid{position:relative;z-index:2;background:#0a1526;padding:100px 7%;border-top:1px solid var(--line)}.application-intro{padding-top:95px;padding-bottom:85px}.application-intro h2{max-width:900px;font-size:clamp(48px,5.8vw,88px)}.application-intro>p:not(.eyebrow){max-width:700px;font-size:18px;color:#9bb4cf}.chapter-links{display:flex;flex-wrap:wrap;gap:18px 35px;margin-top:32px;font:13px var(--mono);color:#8ce7fb}.chapter-links a{border-bottom:1px solid #3c6382;padding-bottom:8px}.application-details{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.application-details span{padding:6px 10px;border:1px solid #29415b;background:#0c1b2d;font:11px/1.5 var(--mono);color:#9cb7d1}.section-copy .stage{font:12px/1.8 var(--mono);color:#7697b9!important}.section-heading,.research-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:0 10%}.section-heading .eyebrow,.research-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child,.research-heading>p:last-child{max-width:450px;align-self:center;color:#9bb4cf;font-size:18px}.research{background:#081423}.metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:36px;border-top:1px solid #29415b;border-bottom:1px solid #29415b}.metrics article{padding:32px 20px 32px 0}.metrics article+article{border-left:1px solid #29415b;padding-left:32px}.metric{font:500 clamp(55px,6vw,88px)/1.12 var(--display);letter-spacing:-.055em;color:#a4ebff;margin:12px 0 22px}.metric span{font-size:.48em;color:#72b6d4;letter-spacing:0}.metrics h3{font:500 16px/1.4 var(--display);margin-bottom:10px}.metrics p{font-size:14px;color:#89a7c4;margin-bottom:0}.status-label{font:11px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:#77a8c9}.research-source{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-top:30px}.research-source p{max-width:800px;color:#7594b3;font-size:12px;margin-bottom:0}.research-source .text-link{flex-shrink:0;font-size:14px}.roadmap{background:#0c1b2d}.roadmap-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:40px}.roadmap-grid article{padding:24px 24px 0 0;border-top:1px solid #2b465e}.roadmap-grid article+article{padding-left:24px;border-left:1px solid #2b465e}.roadmap-grid span{font:12px var(--mono);color:#57cbdc}.roadmap-grid h3{font:500 18px/1.4 var(--display);margin:24px 0 12px}.roadmap-grid p{font-size:14px;color:#86a4c0;margin-bottom:0}.team{background:#07101e}.team-photo{margin:35px 0 0;border:1px solid var(--line);padding:0;background:#0b1a2c}.team-photo img{display:block;width:100%;height:auto;max-height:600px;object-fit:cover}.team-photo figcaption{padding:18px 24px;font-size:13px;color:#8ca9c7;line-height:1.8}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px}.team-grid article{padding:27px 24px 25px 0;border-top:1px solid var(--line)}.team-grid article:nth-child(3n+2),.team-grid article:nth-child(3n+3){padding-left:28px;border-left:1px solid var(--line)}.team-number{font:12px var(--mono);color:#5b84a8}.team-grid h3{font:500 24px/1.3 var(--display);margin:18px 0 8px;letter-spacing:-.025em}.team-grid p{font-size:14px;color:#789bbd}.team-grid .role{font:12px/1.8 var(--mono);color:#72d9ef;margin-bottom:0}.contact{min-height:85svh}.contact-link{display:inline-block;padding:14px 25px;background:#87e6f6;color:#07101e;font-size:15px;font-weight:600;margin-top:20px}.contact-link:hover{background:#b5fff0}.contact-email{font-size:14px!important;margin-top:18px}.footer{position:relative;z-index:2;display:flex;justify-content:space-between;gap:25px;padding:30px 7% 60px;background:#07101e;border-top:1px solid var(--line);font:11px/1.8 var(--mono);color:#587996}.footer a{border-bottom:1px solid #345269}.motion-button{position:fixed;right:18px;bottom:12px;z-index:12;border:1px solid #345269;background:#0a192ae8;color:#8cb5d4;padding:7px 12px;font:11px var(--mono)}.recognition{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:25px 0 0}.recognition article{border-top:1px solid var(--line);padding-top:24px}.recognition h3{font:500 22px/1.4 var(--display);color:#c9e9fd}.recognition p{color:#7e9fbd;font-size:14px}.team-photo img{object-position:center 42%}
@media(max-width:1000px){.header nav{gap:18px}.brand .brand-wordmark{width:168px}.hero-copy{max-width:500px}h1{font-size:88px}.section-copy{max-width:430px}.section-heading,.research-heading{gap:0 6%}}
@media(max-width:850px){.header{height:72px;padding:12px 5%}.scene{top:72px}.brand img{width:36px;height:36px}.menu-toggle{display:block;margin-left:auto;border:1px solid #36546e;background:transparent;color:#b4d5ef;padding:7px 15px;font:12px var(--mono)}.header nav{display:none}.header nav.is-open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;padding:15px 7%;background:#0a172a;border-bottom:1px solid var(--line);gap:0}.header nav.is-open a{padding:13px 0;display:block;border-bottom:1px solid var(--line);font-size:15px}.header nav.is-open .nav-contact{border:0;color:var(--cyan)}.section-heading,.research-heading{grid-template-columns:1fr}.section-heading>p:last-child,.research-heading>p:last-child{max-width:600px;font-size:17px}.roadmap-grid{grid-template-columns:repeat(2,1fr);gap:25px 0}.roadmap-grid article:nth-child(3){padding-left:0;border-left:0}.team-grid{grid-template-columns:repeat(2,1fr)}.team-grid article:nth-child(n){border-left:0;padding-left:0}.team-grid article:nth-child(2n){padding-left:23px;border-left:1px solid var(--line)}.research-source{flex-direction:column;align-items:flex-start;gap:20px}.metric{font-size:65px}.metrics article+article{padding-left:20px}}
@media(max-width:600px){html{scroll-padding-top:78px}.brand{gap:9px}.brand .brand-wordmark{width:154px}.scene:before{background:radial-gradient(ellipse at 50% 70%,#0b26443d,transparent 65%)}.hero{min-height:980px;min-height:116svh;align-items:flex-start;padding:125px 7% 80px;background:linear-gradient(180deg,var(--paper),#07101ef8 44%,#07101e00 64%)}h1{font-size:clamp(64px,15vw,87px);line-height:1.06;letter-spacing:-.055em}.hero-description{font-size:18px;max-width:340px}.eyebrow{font-size:11px;letter-spacing:.07em;margin-bottom:25px}.hero-note{font-size:11px;margin-top:27px}.hero-bottom{bottom:56px;font-size:9px;gap:15px}.hero-bottom .scene-label{display:none}.story:not(.hero){min-height:1160px;min-height:138svh;align-items:flex-start;padding:80px 7% 300px;background:linear-gradient(180deg,var(--paper),#07101ef8 42%,#07101e00 68%)}.section-copy{max-width:100%;background:var(--paper);padding-bottom:28px}.story:not(.hero) h2{font-size:clamp(43px,10.5vw,57px)}.section-copy .lead{font-size:19px}.section-copy p{font-size:16px}.visual-caption{left:7%;right:auto;bottom:64px;font-size:10px}.solid{padding:72px 7%}.application-intro h2,.research-heading h2,.section-heading h2{font-size:48px}.application-intro>p:not(.eyebrow){font-size:16px}.chapter-links{font-size:12px;gap:20px 24px}.metrics{grid-template-columns:1fr;margin-top:24px}.metrics article:nth-child(n){padding:26px 0;border-left:0}.metrics article+article{border-top:1px solid var(--line)}.metric{font-size:72px;margin:12px 0 16px}.roadmap-grid{grid-template-columns:1fr;gap:0;margin-top:25px}.roadmap-grid article:nth-child(n){padding:22px 0;border-left:0}.roadmap-grid h3{margin-top:15px}.team-grid{grid-template-columns:1fr}.team-grid article:nth-child(n){padding:22px 0;border-left:0}.team-grid h3{font-size:24px}.team-photo{margin-top:28px}.team-photo img{max-height:none;object-fit:contain}.team-photo figcaption{font-size:12px;padding:14px 16px}.footer{flex-direction:column;gap:14px}.footer a{align-self:flex-start}.footer span:last-child{display:none}.recognition{grid-template-columns:1fr;gap:16px}.motion-button{font-size:10px}.scene{transition:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scene{transition:none}}
@media(max-width:600px){h1{font-size:clamp(54px,12.5vw,74px)}.hero{background:linear-gradient(180deg,var(--paper),#07101ef5 36%,#07101e00 55%)}.hero-copy{background:var(--paper);padding-bottom:12px}.hero-description{font-size:17px}.hero-note{font-size:10px}.motion-button{min-height:36px}.hero-bottom{font-size:9px;bottom:60px}.research .metric{font-size:68px}}
.eyebrow,.hero-note,.hero-bottom,.visual-caption,.status-label,.team-number,.footer,.motion-button{font-size:12px}.application-details span,.team-grid .role{font-size:14px}
@media(max-width:600px){.eyebrow,.hero-note,.hero-bottom,.visual-caption,.status-label,.team-number,.footer,.motion-button{font-size:12px}.application-details span,.team-grid .role{font-size:14px}.hero-bottom>span:last-child{max-width:155px;text-align:right}}
.publications{background:#081423}.publications .section-heading{grid-template-columns:1.3fr 1fr;gap:0 7%}.publications h2{font-size:clamp(44px,4.4vw,68px)}.publications-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:7%;align-items:start;margin-top:36px}.paper{padding:24px 0;border-top:1px solid #29415b}.paper:last-child{border-bottom:1px solid #29415b}.paper-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px;margin:0 0 13px;font:12px/1.7 var(--mono);color:#8cb8d5}.paper-meta>span:first-child{color:#9dedff}.paper-meta time{color:#7c96b1}.paper-meta .paper-topic{margin-left:auto;font-size:11px;color:#7894b0}.paper h3{font:500 21px/1.4 var(--display);letter-spacing:-.02em;margin-bottom:12px}.paper h3 a{display:block;position:relative;padding-right:27px}.paper h3 a:hover{color:var(--cyan)}.paper-arrow{position:absolute;right:0;top:0;color:#69d9ef;font-size:23px}.paper-summary{font-size:14px;line-height:1.7;color:#8faac5;max-width:650px;margin-bottom:0}.geneva-award{border:1px solid #695933;background:radial-gradient(ellipse at 100% 0,#8a713019,transparent 65%),#101a25;padding:32px 28px}.award-emblem{height:90px;width:90px;border:1px solid #a99257;border-radius:50%;outline:1px solid #4d462e;outline-offset:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:6px 0 34px;color:#e9ce83;background:radial-gradient(circle,#d5ac4820,transparent 70%)}.award-emblem span:first-child{font:500 19px/1.5 var(--display);letter-spacing:.09em}.award-emblem span:last-child{font:11px/1.8 var(--mono);letter-spacing:.1em}.geneva-award .status-label{color:#bfa866}.geneva-award h3{font:500 34px/1.15 var(--display);letter-spacing:-.035em;color:#f0d893;margin:18px 0}.geneva-award h3 em{display:block;margin-top:12px;font-style:normal;font-size:21px;line-height:1.4;letter-spacing:-.01em;color:#dec997}.award-event{font:12px/1.8 var(--mono);color:#bcad89;margin-bottom:24px}.award-description{font-size:15px;color:#a9b7c6;margin-bottom:28px}.geneva-award .text-link{font-size:13px;color:#e9d5a0;border-color:#a38b52}.geneva-award .text-link:hover{color:#fff0be}.publications-note{font-size:12px;color:#7594b3;max-width:800px;margin:28px 0 0}
@media(max-width:1000px){.publications-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:5%}.geneva-award{padding:28px 22px}.paper-meta .paper-topic{margin-left:0;width:100%}.paper h3{font-size:20px}}
@media(max-width:850px){.publications .section-heading{grid-template-columns:1fr}.publications-grid{grid-template-columns:1fr;gap:32px}.geneva-award{display:grid;grid-template-columns:100px 1fr;gap:0 28px;padding:30px}.award-emblem{grid-row:1/5;margin:8px 0 0}.geneva-award .award-description,.geneva-award .text-link{grid-column:2}.geneva-award .text-link{justify-self:start}.geneva-award .award-event{margin-bottom:18px}}
@media(max-width:600px){.publications h2{font-size:clamp(38px,10vw,48px)}.publications-grid{margin-top:20px}.paper{padding:23px 0}.paper-meta{gap:5px 12px}.paper h3{font-size:20px}.paper-summary{font-size:14px}.geneva-award{display:block;padding:30px 24px}.award-emblem{margin:5px 0 32px}.geneva-award h3{font-size:34px}.geneva-award h3 em{font-size:21px}.publications-note{margin-top:25px}}
.field-evidence-link{margin-top:24px}.durability{min-height:100svh}.field-metrics{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #29415b;border-bottom:1px solid #29415b;margin:26px 0 22px}.field-metrics>div{padding:17px 15px 17px 0}.field-metrics>div+div{padding-left:22px;border-left:1px solid #29415b}.field-metrics strong{display:block;font:500 46px/1.3 var(--display);letter-spacing:-.04em;color:#a4ebff}.field-metrics strong span{font-size:20px;letter-spacing:-.015em}.field-metrics small{font:12px/1.8 var(--mono);color:#8cb0ce}.section-copy .field-result{font-size:14px;color:#91b6d2}.field-data{border-top:1px solid #29415b;border-bottom:1px solid #29415b;margin:22px 0 24px;font-size:14px}.field-data summary{cursor:pointer;color:#c9f5ff;padding:13px 0}.field-data summary:hover{color:var(--cyan)}.field-data summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.field-data figure{margin:4px 0 20px}.field-data img{display:block;width:100%;height:auto;background:white}.field-data figcaption{font-size:12px;line-height:1.8;color:#86a9c6;margin-top:12px}.durability .stage{margin-top:22px}.visual-caption{max-width:48%;text-align:right}
@media(max-width:850px){.field-metrics strong{font-size:42px}}
@media(max-width:600px){.story.durability{min-height:1550px;min-height:182svh}.durability .section-copy{padding-bottom:30px}.field-metrics strong{font-size:42px}.field-metrics strong span{font-size:18px}.field-metrics>div+div{padding-left:17px}.field-metrics small{font-size:12px}.field-data summary{min-height:48px;display:list-item}.visual-caption{max-width:86%;text-align:left}}
.application-intro{background:linear-gradient(90deg,#0a1526 48%,#0a1526e6 72%,#0a15266e)}.research{background:#081423ef}.publications{background:#081423ef}.roadmap{background:#0c1b2def}.team{background:#07101eef}#recognition{background:#0a1526ef}
@media(max-width:600px){.application-intro{background:#0a1526ed}}
@media(max-width:600px){#contact .visual-caption{bottom:22px}}
.diagram-labels,.diagram-label-group{position:absolute;inset:0;pointer-events:none}.diagram-label-group[hidden]{display:none}.diagram-label{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;font:500 11px/1.3 var(--mono);letter-spacing:.055em;color:#c7e9fc;text-shadow:0 1px 6px #07101e,0 0 12px #07101e}.diagram-label.inside{font-size:14px;letter-spacing:.08em;color:#e7f8ff;background:#07101ed9;padding:4px 6px;border-radius:2px}.diagram-label.subtle{font-size:10px;color:#9dafbf}.diagram-key{display:block;margin-top:6px;font-size:10px;letter-spacing:.06em}.diagram-key .power-key{color:#e6b670}.diagram-key .data-key{color:#95e6ff;margin-left:18px}
.diagram-space{display:none}.diagram-labels{overflow:hidden}body.no-particles .diagram-space{display:none}
@media(max-width:850px){.application.story{flex-direction:column;background:transparent;gap:55px;padding-bottom:100px}.application .diagram-space{display:block;height:330px;width:100%;flex-shrink:0}.application .visual-caption{left:7%;right:auto;bottom:30px;max-width:86%}.metrics{grid-template-columns:1fr}.metrics article:nth-child(n){padding:26px 0;border-left:0}.metrics article+article{border-top:1px solid var(--line)}}
@media(max-width:600px){.diagram-label{font-size:10px;letter-spacing:.02em}.diagram-label.inside{font-size:11px;padding:2px 3px}.diagram-label.subtle{font-size:9px}.diagram-key{font-size:10px}}
.diagram-label.caption{font-size:10px;letter-spacing:.035em;color:#95b8d0}
.diagram-label.species-a{color:#f2af59}.diagram-label.species-b{color:#66a9f4}.diagram-label.species-x{color:#74e6ac}
@media(max-width:850px){.platform.story,.durability.story{flex-direction:column;background:transparent;gap:45px;padding-bottom:100px;min-height:100svh}.platform .diagram-space,.durability .diagram-space{display:block;height:380px;width:100%;flex-shrink:0}.platform .visual-caption,.durability .visual-caption{left:7%;right:auto;bottom:28px;max-width:86%;text-align:left}}
/* Opening: indoor light becomes usable power across a connected ecosystem. */
.hero-copy{max-width:540px}.hero-description{font-size:22px;line-height:1.5;max-width:435px;margin-bottom:16px;color:#d2e3f2}.hero-subdescription{max-width:410px;color:#92acc4;font-size:16px;line-height:1.7;margin-bottom:20px}.hero-applications{display:flex;flex-wrap:wrap;gap:8px 18px;max-width:435px;margin:0 0 28px;font:12px/1.7 var(--mono);color:#8ae3ef}.hero-applications span{position:relative;padding-left:11px}.hero-applications span:before{content:'';position:absolute;left:0;top:.65em;width:4px;height:4px;border-radius:50%;background:#49dbcc;box-shadow:0 0 7px #49dbcc77}.hero-note{margin-top:24px}.diagram-label.hero-source{color:#f1ce91;font-size:12px;letter-spacing:.14em}.diagram-label.hero-pv{font-size:12px;letter-spacing:.06em;background:#07101ee8;padding:5px 8px;color:#cbf2ff}.diagram-label.hero-endpoint{font-size:11px;letter-spacing:.07em;color:#a3edf5}.diagram-label.hero-small{font-size:9px;letter-spacing:.055em;color:#819fb9}.hero-bottom{font-size:10px}.hero-bottom .scene-label{font-size:10px}
@media(max-width:1000px) and (min-width:851px){.hero-copy{max-width:450px}h1{font-size:80px}.hero-description{font-size:19px;max-width:360px}.hero-subdescription{max-width:345px}.hero-applications{max-width:345px;gap:8px 13px}}
@media(max-width:850px){.hero{flex-direction:column;align-items:flex-start;gap:38px;min-height:100svh;padding:124px 7% 105px;background:transparent}.hero-copy{max-width:600px;background:var(--paper);padding-bottom:0}.hero-diagram-space{display:block;flex-shrink:0;height:430px;width:100%}.hero-description{font-size:20px;max-width:480px}.hero-subdescription{max-width:480px}.hero-note{margin-top:22px}.hero-bottom{bottom:27px;font-size:9px}.hero-bottom .scene-label{display:none}.hero-bottom>span:first-child{max-width:250px}}
@media(max-width:600px){.hero{gap:25px;padding-top:119px;padding-bottom:94px}.hero-copy{width:100%}.hero-description{font-size:19px;max-width:350px}.hero-subdescription{font-size:15px;max-width:350px}.hero-applications{font-size:11px;gap:7px 16px;margin-bottom:24px;max-width:350px}.hero-note{font-size:10px;line-height:1.8}.hero-diagram-space{height:350px}.hero-bottom{bottom:28px;font-size:9px;gap:12px}.hero-bottom>span:first-child{max-width:190px}.hero-bottom>span:last-child{max-width:105px;font-size:9px}.diagram-label.hero-source{font-size:10px;letter-spacing:.08em}.diagram-label.hero-pv{font-size:9px;padding:3px 4px}.diagram-label.hero-endpoint{font-size:9px;letter-spacing:.015em}.diagram-label.hero-small{font-size:8px;letter-spacing:0}}
@media(max-width:600px){.hero{gap:22px;padding-top:111px}.hero-copy{display:contents}.hero-copy>.eyebrow{order:0;margin-bottom:0;font-size:10px}.hero-copy>h1{order:1;margin-bottom:0}.hero-copy>.hero-description{order:2;margin-bottom:0;font-size:18px}.hero-diagram-space{order:3;height:320px}.hero-copy>.hero-subdescription{order:4;margin-bottom:0}.hero-copy>.hero-applications{order:5;margin-bottom:0}.hero-copy>.text-link{order:6;align-self:flex-start}.hero-copy>.hero-note{order:7;margin:0}.no-particles .hero-copy{display:block}.no-particles .hero-copy>p,.no-particles .hero-copy>h1{margin-bottom:24px}}
