:root{--swiper-theme-color:#007aff}:host{z-index:1;margin-left:auto;margin-right:auto;display:block;position:relative}.swiper{z-index:1;margin-left:auto;margin-right:auto;padding:0;list-style:none;display:block;position:relative;overflow:hidden}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{z-index:1;width:100%;height:100%;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box;display:flex;position:relative}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate(0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;transition-property:transform;display:block;position:relative}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{scrollbar-width:none;-ms-overflow-style:none;overflow:auto}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(#0000,#00000080)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(#00000080,#0000)}.swiper-lazy-preloader{z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top-color:#0000;border-radius:50%;width:42px;height:42px;margin-top:-21px;margin-left:-21px;position:absolute;top:50%;left:50%}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:1s linear infinite swiper-preloader-spin}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size:44px}.swiper-button-prev,.swiper-button-next{width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;color:var(--swiper-navigation-color,var(--swiper-theme-color));justify-content:center;align-items:center;display:flex;position:absolute}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) ::slotted(svg),:is(.swiper-button-prev,.swiper-button-next) svg{object-fit:contain;transform-origin:50%;fill:currentColor;pointer-events:none;width:100%;height:100%}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset,4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset,4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) ::slotted(.swiper-navigation-icon),:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) ::slotted(.swiper-navigation-icon),:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0;right:auto}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset,4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) ::slotted(.swiper-navigation-icon),:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) ::slotted(.swiper-navigation-icon),:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.swiper-pagination{text-align:center;z-index:10;transition:opacity .3s;position:absolute;transform:translate(0,0)}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);width:100%;left:0}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);display:inline-block}button.swiper-pagination-bullet{box-shadow:none;appearance:none;border:none;margin:0;padding:0}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity,1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{width:8px;top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,top .2s;display:inline-block}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{white-space:nowrap;left:50%;transform:translate(-50%)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,left .2s}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));transform-origin:0 0;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(0)}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:100% 0}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);top:0;left:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size,4px);height:100%;top:0;left:0}.swiper-pagination-lock{display:none}:root{color:#e5edf7;font-synthesis:none;text-rendering:optimizelegibility;background:#08111f;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 0 0,#38bdf82e,#0000 35%),radial-gradient(circle at 100% 100%,#8b5cf629,#0000 35%),#08111f;min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #38bdf8}.header{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#08111fd1;border-bottom:1px solid #94a3b82e;justify-content:space-between;align-items:center;gap:24px;padding:20px 8%;display:flex;position:sticky;top:0}.logo{letter-spacing:.02em;outline:none;font-weight:700;transition:color .18s}.logo:hover,.logo:focus{color:#38bdf8}.nav{color:#cbd5e1;gap:18px;font-size:16px;display:flex}.nav a.active,.nav a:hover,.nav a:focus{color:#38bdf8;outline:none;font-weight:700}.main{width:min(1440px,88%);margin:0 auto}.hero{flex-direction:column;justify-content:center;min-height:calc(100vh - 76px);padding:72px 0;display:flex}.heroGrid{grid-template-columns:1.4fr 1fr;align-items:center;gap:48px;display:grid}.eyebrow{color:#38bdf8;text-transform:uppercase;letter-spacing:.14em;margin:0 0 14px;font-size:13px;font-weight:700}h1{letter-spacing:-.06em;margin:0;font-size:clamp(38px,7vw,76px);line-height:.95}h2,h3{margin-top:0}.heroDescription,.pageIntro,.page p,.card p{color:#b6c2d1;line-height:1.7}.heroDescription{max-width:720px;margin:28px 0;font-size:18px}.heroActions{justify-content:flex-start;gap:20px;margin-top:36px;display:flex}.heroImageContainer{border:1px solid #94a3b826;border-radius:24px;width:100%;margin:40px 0 16px;transition:border-color .3s,box-shadow .3s;overflow:hidden;box-shadow:0 20px 50px #00000061}.heroImageContainer:hover{border-color:#38bdf859;box-shadow:0 28px 64px #00000073,0 0 28px #38bdf824}.heroImage{object-fit:cover;width:100%;height:auto;display:block}.button{cursor:pointer;border-radius:999px;outline:none;padding:12px 18px;font-weight:700;transition:transform .18s,border-color .18s,background .18s,color .18s,box-shadow .18s;display:inline-flex}.primary{color:#07111f;background:#38bdf8;border:1px solid #38bdf8}.secondary{color:#e5edf7;background:0 0;border:1px solid #94a3b861}.button:hover,.button:focus{color:#07111f;background:#38bdf8;border-color:#38bdf8;transform:translateY(-2px);box-shadow:0 0 14px #38bdf859}.heroPanel,.card{background:#0f172ab8;border:1px solid #94a3b833;border-radius:28px;padding:28px;box-shadow:0 24px 80px #00000047}.card{outline:none;transition:border-color .3s,box-shadow .3s,transform .3s cubic-bezier(.25,1,.5,1)}.card:hover,.card:focus,.card:focus-within{border-color:#38bdf873;transform:translateY(-4px);box-shadow:0 28px 80px #00000059,0 0 24px #38bdf82e}.techSection{margin-bottom:24px}.techSection h3{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin-top:0;margin-bottom:12px;font-size:13px}.techGroup{flex-wrap:wrap;gap:10px;display:flex}.techTag{border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:6px 14px;font-size:13.5px;font-weight:600;transition:transform .2s cubic-bezier(.25,1,.5,1),box-shadow .2s,border-color .2s;display:inline-flex}.techTag i{font-size:16px}.techTag.html5{color:#fff;background:#e34f26}.techTag.html5 i{color:#fff}.techTag.css3{color:#fff;background:#1572b6}.techTag.css3 i{color:#fff}.techTag.javascript{color:#000;background:#f7df1e}.techTag.javascript i{color:#000}.techTag.typescript{color:#fff;background:#3178c6}.techTag.typescript i{color:#fff}.techTag.react{color:#61dafb;background:#20232a;border:1px solid #3f4752}.techTag.nextjs{color:#fff;background:#000;border:1px solid #333}.techTag.nextjs i{color:#fff}.techTag.nodejs{color:#fff;background:#393}.techTag.nodejs i{color:#fff}.techTag.python{color:#fff;background:#3776ab}.techTag.python i{color:#fff}.techTag.lang-c{color:#111;background:#a8b9cc}.techTag.lang-c i{color:#111}.techTag.lang-cpp{color:#fff;background:#00599c}.techTag.lang-cpp i{color:#fff}.techTag.fortran{color:#fff;background:#734f96}.techTag.fortran i{color:#fff}.techTag.git{color:#fff;background:#f05032}.techTag.git i{color:#fff}.techTag.github{color:#fff;background:#24292e;border:1px solid #3f4752}.techTag.github i{color:#fff}.techTag.vscode{color:#fff;background:#007acc}.techTag.vscode i{color:#fff}.techTag.figma{color:#fff;background:#20232a;border:1px solid #3f4752}.techTag.jupyter{color:#fff;background:#f37626}.techTag.jupyter i{color:#fff}.techTag:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 6px 20px #00000059}.tags li{color:#d9f3ff;background:#38bdf814;border:1px solid #38bdf838;border-radius:999px;padding:8px 12px;font-size:13px}.page{padding:72px 0}.page.narrow{max-width:780px}.pageIntro{max-width:720px;margin:24px 0 36px;font-size:18px}.cardsGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;animation:.4s cubic-bezier(.25,1,.5,1) both filterFadeIn;display:grid}.card h3{font-size:26px}.highlightsList{margin:0 0 20px;padding-left:16px;list-style-type:none}.highlightsList li{color:#94a3b8;margin-bottom:7px;font-size:13.5px;line-height:1.55;position:relative}.highlightsList li:before{content:"•";color:#38bdf8;width:1em;margin-left:-1em;font-weight:700;display:inline-block;position:absolute}.tags{flex-wrap:wrap;gap:8px;margin:22px 0;padding:0;list-style:none;display:flex}.cardLinks{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.contactLinks{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cardExternalLinks{align-items:center;gap:16px;display:flex}.cardLinks a:not(.button),.contactLinks a:not(.button){color:#38bdf8;outline:none;font-weight:700;transition:color .18s,transform .18s}.cardLinks a:not(.button):hover,.cardLinks a:not(.button):focus,.contactLinks a:not(.button):hover,.contactLinks a:not(.button):focus{color:#7dd3fc;text-decoration:underline}@media (width<=767px){.header{flex-direction:column;align-items:flex-start}.nav{font-size:14px}}@media (width<=800px){.nav{flex-wrap:wrap}.heroGrid,.cardsGrid{grid-template-columns:1fr}.cardLinks{justify-content:flex-start}}@media (width>=1440px){.nav{font-size:20px}.logo{font-size:26px}}.cardPreviewContainer{background:#0f172a66;border:1px solid #94a3b826;border-radius:16px;flex-direction:column;margin:22px 0;transition:border-color .3s,box-shadow .3s;display:flex;overflow:hidden;box-shadow:0 12px 36px #0000004d}.card:hover .cardPreviewContainer{border-color:#38bdf840;box-shadow:0 16px 48px #0006,0 0 24px #38bdf80d}.browserHeader{background:#08111f99;border-bottom:1px solid #94a3b81a;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.browserDots{gap:6px;display:flex}.dot{border-radius:50%;width:10px;height:10px;display:inline-block}.dotRed{background:#ff5f56}.dotYellow{background:#ffbd2e}.dotGreen{background:#27c93f}.browserAddressBar{color:#94a3b8;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#0f172ad9;border:1px solid #94a3b81a;border-radius:6px;width:50%;max-width:240px;padding:4px 16px;font-family:monospace;font-size:11px;overflow:hidden}.browserHeaderLink{color:#94a3b8;justify-content:center;align-items:center;transition:color .2s,transform .2s;display:flex}.browserHeaderLink:hover,.browserHeaderLink:focus{color:#38bdf8;outline:none;transform:scale(1.08)}.browserBody{background:#0d1527;justify-content:center;align-items:flex-start;height:300px;display:flex;position:relative;overflow:hidden}.cardIframe{background:#fff;border:none;width:100%;height:100%}.browserLoader{z-index:5;background:#0f172af2;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.spinnerMini{border:3px solid #38bdf826;border-left-color:#38bdf8;border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.iframeWrapper{margin:0 auto;transition:width .4s cubic-bezier(.25,1,.5,1),transform .4s cubic-bezier(.25,1,.5,1),height .4s cubic-bezier(.25,1,.5,1);position:relative}.viewportLinks{align-items:center;gap:8px;display:flex}.viewportLink{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:700;transition:color .18s}.viewportLink:hover,.viewportLink:focus,.viewportLink.active{color:#38bdf8;outline:none;text-decoration:underline}.viewportDivider{color:#94a3b84d;-webkit-user-select:none;user-select:none;font-size:13px}.backButton{color:#cbd5e1;outline:none;align-items:center;margin-bottom:32px;font-size:20px;font-weight:600;transition:color .18s,transform .18s;display:inline-flex}.backButton:hover,.backButton:focus{color:#38bdf8;transform:translate(-4px)}.detailPage{overflow-wrap:break-word;word-break:break-word;max-width:860px;margin:0 auto}.detailContainer{flex-direction:column;gap:36px;display:flex}.detailLeft{position:static}.detailPreview{width:100%}.detailNoPreview{text-align:center;color:#94a3b8;background:#0f172a66;border:1px dashed #94a3b833;border-radius:20px;padding:80px 20px}.detailRight{flex-direction:column;display:flex}.detailTitle{letter-spacing:-.04em;margin:8px 0 20px;font-size:clamp(32px,4vw,44px);line-height:1.1}.detailDescription{color:#cbd5e1;margin-bottom:28px;font-size:17px;line-height:1.7}.sectionSubtitle{color:#e5edf7;letter-spacing:-.02em;border-bottom:1px solid #94a3b81a;margin:28px 0 16px;padding-bottom:8px;font-size:18px;font-weight:700}.filterControls{justify-content:center;align-items:center;gap:12px;margin-bottom:40px;display:flex}.filterLink{color:#94a3b8;cursor:pointer;background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:14px;font-weight:700;transition:color .18s}@media (width>=768px){.filterLink{font-size:20px}}.filterLink:hover,.filterLink:focus,.filterLink.active{color:#38bdf8}.filterDivider{color:#94a3b84d;-webkit-user-select:none;user-select:none;font-size:14px}@keyframes filterFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.sciencePage{padding-bottom:120px}.scienceHero{max-width:900px;margin-bottom:88px}.scienceIntro{max-width:800px}.scienceHeroTags{margin-top:30px}.scienceSection{margin-top:96px}.scienceSection:first-of-type{margin-top:0}.scienceSectionHeader{max-width:720px;margin-bottom:34px}.scienceSectionHeader h2{letter-spacing:-.04em;margin-bottom:14px;font-size:clamp(30px,4vw,44px)}.scienceSectionHeader>p:not(.eyebrow){color:#94a3b8;margin:0;line-height:1.7}.researchGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.researchCard{padding:0;overflow:hidden}.researchCardFeatured{grid-column:1/-1;grid-template-columns:1.15fr 1fr;display:grid}.researchImageWrapper{background:#0d1527;min-height:240px;position:relative;overflow:hidden}.researchCardFeatured .researchImageWrapper{min-height:400px}.researchImage{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.25,1,.5,1);display:block}.researchCard:hover .researchImage{transform:scale(1.025)}.researchFeaturedBadge{color:#7dd3fc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-transform:uppercase;letter-spacing:.08em;background:#08111fe0;border:1px solid #38bdf859;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;position:absolute;top:18px;left:18px}.researchCardContent{flex-direction:column;justify-content:center;padding:28px;display:flex}.researchCardContent h3{margin-bottom:10px}.researchMeta{color:#7dd3fc;margin:0 0 18px;font-size:13px;font-weight:600}.publicationGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.publicationCard{grid-template-columns:240px 1fr;min-height:320px;padding:0;display:grid;overflow:hidden}.publicationPreview{background:#0d1527;border-right:1px solid #94a3b82e;height:100%;min-height:320px;overflow:hidden}.publicationImage{object-fit:cover;object-position:top;width:100%;height:100%;transition:transform .4s;display:block}.publicationCard:hover .publicationImage{transform:scale(1.03)}.publicationContent{flex-direction:column;align-items:flex-start;padding:26px;display:flex}.publicationType{color:#e5edf7;text-transform:uppercase;letter-spacing:.08em;border:1px solid #94a3b859;border-radius:999px;margin-bottom:15px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.publicationMeta{color:#7dd3fc;margin:0 0 12px;font-size:13px;font-weight:700}.publicationContent h3{margin:0 0 18px;font-size:23px;line-height:1.25}.publicationDescription{color:#b8c4d6;margin:0;line-height:1.7}.publicationLinks{flex-wrap:wrap;gap:18px;margin-top:auto;padding-top:24px;display:flex}.publicationLinks a{color:#38bdf8;font-weight:700}.publicationLinks a:hover{color:#7dd3fc;text-decoration:underline}.talksList{border-top:1px solid #94a3b82e;flex-direction:column;display:flex}.talkCard{border-bottom:1px solid #94a3b82e;grid-template-columns:100px 1fr;gap:28px;padding:26px 0;transition:padding-left .18s;display:grid}.talkCard:hover{padding-left:10px}.talkYear{color:#38bdf8;font-size:18px;font-weight:700}.talkContent h3{margin:5px 0 8px;font-size:21px}.talkContent p{color:#94a3b8;margin:0}.talkType{color:#64748b;text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:700}.academicTimeline{max-width:850px;position:relative}.academicTimeline:before{content:"";background:#38bdf847;width:1px;position:absolute;top:8px;bottom:8px;left:7px}.academicEntry{grid-template-columns:20px 130px 1fr;gap:20px;padding-bottom:38px;display:grid;position:relative}.academicMarker{z-index:1;background:#08111f;border:3px solid #38bdf8;border-radius:50%;width:15px;height:15px;margin-top:4px}.academicPeriod{color:#7dd3fc;font-size:14px;font-weight:700}.academicContent h3{margin-bottom:4px;font-size:21px}.academicInstitution{color:#cbd5e1;margin:0 0 8px;font-weight:600}.academicContent>p:last-child{margin-bottom:0}.researchToolkit{background:#0f172a70;border:1px solid #94a3b82e;border-radius:28px;padding:34px}.researchToolkit .scienceSectionHeader{margin-bottom:20px}.researchSkillTags{margin-bottom:0}@media (width<=800px){.scienceHero{margin-bottom:64px}.scienceSection{margin-top:72px}.researchGrid,.publicationGrid{grid-template-columns:1fr}.publicationCard{grid-template-columns:240px 1fr}.researchCardFeatured{flex-direction:column;grid-column:auto;display:flex}.researchCardFeatured .researchImageWrapper{min-height:260px}.academicEntry{grid-template-columns:20px 1fr;gap:16px}.academicPeriod,.academicContent{grid-column:2}}@media (width<=520px){.talkCard{grid-template-columns:1fr;gap:8px}.researchImageWrapper{height:210px;min-height:210px}.publicationCard{grid-template-columns:1fr}.publicationPreview{border-bottom:1px solid #94a3b82e;border-right:none;height:180px;min-height:180px}}.thesisCard{background:#0f172a8c;border:1px solid #38bdf838;border-radius:28px;grid-template-columns:minmax(280px,38%) 1fr;max-width:1100px;min-height:430px;display:grid;overflow:hidden}.thesisPreview{background:#fff;border-right:1px solid #94a3b82e;min-height:430px;overflow:hidden}.thesisImage{object-fit:contain;object-position:top center;background:#fff;width:100%;height:100%;transition:transform .4s;display:block}.thesisCard:hover .thesisImage{transform:scale(1.015)}.thesisContent{flex-direction:column;justify-content:center;align-items:flex-start;padding:38px 42px;display:flex}.thesisMeta{color:#7dd3fc;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:22px;font-size:13px;font-weight:600;display:flex}.thesisBadge{color:#e5edf7;text-transform:uppercase;letter-spacing:.09em;border:1px solid #38bdf859;border-radius:999px;padding:6px 11px;font-size:11px;font-weight:700}.thesisContent h3{letter-spacing:-.03em;max-width:700px;margin:0 0 22px;font-size:clamp(28px,3vw,38px);line-height:1.18}.thesisDescription{color:#b8c4d6;max-width:720px;margin:0 0 30px;line-height:1.75}.thesisLink{color:#38bdf8;margin-top:auto;font-weight:700;text-decoration:none}.thesisLink:hover,.thesisLink:focus{color:#7dd3fc;text-decoration:underline}@media (width<=767px){.thesisCard{grid-template-columns:1fr}.thesisPreview{border-bottom:1px solid #94a3b82e;border-right:none;height:260px;min-height:260px}.thesisContent{padding:28px 24px}}@media (width<=1023px){.thesisImage{object-position:center}}.researchSwiperWrapper{background:#fff;width:100%;min-width:0;height:100%;position:relative;overflow:hidden}.researchSwiper{width:100%;height:100%;position:relative}.researchSwiper .swiper-wrapper{z-index:1;position:relative}.researchSwiper .swiper-slide{touch-action:pan-y;background:#08111f;justify-content:center;align-items:center;height:auto;display:flex}.researchSwiperImage{object-fit:contain;object-position:top center;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;background:#fff;width:100%;height:100%;min-height:400px;display:block}.researchSwiper .swiper-button-prev,.researchSwiper .swiper-button-next{color:#38bdf8;opacity:.75;z-index:30;pointer-events:auto;cursor:pointer;background:0 0;border:0;width:24px;height:24px;margin:0;transition:opacity .16s,color .16s,transform .16s;top:auto;bottom:4px}.researchSwiper .swiper-button-prev{left:auto;right:38px}.researchSwiper .swiper-button-next{left:auto;right:8px}.researchSwiper .swiper-button-prev:after,.researchSwiper .swiper-button-next:after{color:currentColor;font-size:14px;font-weight:700}.researchSwiper .swiper-button-prev:hover,.researchSwiper .swiper-button-next:hover{color:#7dd3fc;opacity:1}.researchSwiper .swiper-button-prev:active,.researchSwiper .swiper-button-next:active{transform:scale(.88)}.researchSwiper .swiper-button-prev,.researchSwiper .swiper-button-next{bottom:5px}.researchSwiper .swiper-pagination{width:auto;bottom:6px;left:50%;right:auto;transform:translate(-50%)}.researchSwiper .swiper-pagination-bullet{opacity:.45;background:#94a3b8;width:6px;height:6px;margin:0 4px;transition:width .18s,opacity .18s,background .18s,box-shadow .25s,transform .18s}.researchSwiper .swiper-pagination-bullet-active{opacity:1;background:#38bdf8;border-radius:999px;width:10px}.researchSwiper .swiper-pagination-bullet:active{transform:scale(1.2);box-shadow:0 0 8px #38bdf8d9,0 0 18px #38bdf873}.researchSwiper .swiper-button-disabled{opacity:0;visibility:hidden;pointer-events:none}@media (width<=800px){.researchSwiperImage{min-height:300px}}@media (width>=500px) and (width<=1023px){.researchSwiper{padding-bottom:24px}}@media (width<=520px){.researchSwiperImage{object-position:center;min-height:240px}.researchSwiper .swiper-button-prev{right:36px}.researchSwiper .swiper-button-next{right:6px}}.aboutPage{max-width:1200px;margin:0 auto}.aboutHeader{max-width:850px;margin-bottom:56px}.aboutHeader h1{max-width:900px}.aboutPaths{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.aboutPathCard{background:#0f172ab8;border:1px solid #94a3b833;border-radius:28px;flex-direction:column;min-height:480px;padding:36px;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex}.aboutPathCard:hover{border-color:#38bdf866;transform:translateY(-4px);box-shadow:0 28px 80px #0000004d,0 0 24px #38bdf81f}.aboutPathCard h2{letter-spacing:-.04em;margin-bottom:22px;font-size:clamp(28px,3vw,38px)}.aboutPathCard>p:not(.eyebrow){color:#b6c2d1;line-height:1.75}.aboutPathCard .tags{margin-top:18px}.aboutPathLink{color:#38bdf8;margin-top:auto;padding-top:22px;font-weight:700}.aboutPathLink:hover,.aboutPathLink:focus{color:#7dd3fc;text-decoration:underline}.aboutConnection{border-top:1px solid #94a3b82e;max-width:850px;margin-top:80px;padding-top:42px}.aboutConnection h2{letter-spacing:-.04em;margin-bottom:18px;font-size:clamp(28px,3vw,40px)}.aboutConnection>p:last-child{color:#b6c2d1;font-size:17px;line-height:1.75}@media (width<=800px){.aboutPaths{grid-template-columns:1fr}.aboutPathCard{min-height:auto}.aboutConnection{margin-top:64px}}
