@font-face{font-family:mona;src:url(../media/MonaSans_Regular-s.p.8709b95e.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:mona;src:url(../media/MonaSans_Bold-s.p.77b4c32f.ttf)format("truetype");font-display:swap;font-weight:700}@font-face{font-family:mona;src:url(../media/MonaSans_Black-s.p.c2dc8da3.ttf)format("truetype");font-display:swap;font-weight:900}@font-face{font-family:mona Fallback;src:local(Arial);ascent-override:93.16%;descent-override:22.69%;line-gap-override:0.0%;size-adjust:103.58%}.mona_11fddcf8-module__1F81Ea__className{font-family:mona,mona Fallback}.mona_11fddcf8-module__1F81Ea__variable{--font-mona:"mona","mona Fallback"}
@font-face{font-family:sora;src:url(../media/Sora_ExtraBold-s.p.5812aad7.ttf)format("truetype");font-display:swap;font-weight:800}@font-face{font-family:sora Fallback;src:local(Arial);ascent-override:82.27%;descent-override:24.6%;line-gap-override:0.0%;size-adjust:117.91%}.sora_2460be6d-module__0jFHZW__className{font-family:sora,sora Fallback;font-weight:800}.sora_2460be6d-module__0jFHZW__variable{--font-sora:"sora","sora Fallback"}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#050505;--foreground:#f5f5f5;--muted:#a1a1a1;--line:#262626;--page-gutter:clamp(24px,5vw,76px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:#555 #101010}body{background:var(--background);color:var(--foreground);font-family:var(--font-mona),sans-serif;-webkit-font-smoothing:antialiased;margin:0}::selection{color:#050505;background:#c2d0dc}a,button,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,input{caret-color:#c2d0dc}button{background:0 0;border:0}button:disabled{opacity:.4;cursor:not-allowed}button,a{touch-action:manipulation}button,summary,a{outline-offset:6px}:focus-visible{outline:2px solid #c2d0dc}img{max-width:100%}svg{flex-shrink:0}h1,h2,h3,p{margin:0}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}details{scroll-margin-top:120px}section[id]:not(.cinema){scroll-margin-top:114px}.page-width{width:100%;max-width:1600px;padding-inline:var(--page-gutter);margin-inline:auto}.skip-link{z-index:100;color:#050505;background:#f5f5f5;border-radius:6px;padding:12px 20px;position:fixed;top:16px;left:24px;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{z-index:30;background:#050505f2;position:fixed;top:0;left:0;right:0}.header-inner{justify-content:space-between;align-items:center;gap:32px;height:108px;display:flex}.brand{font-family:var(--font-sora),sans-serif;letter-spacing:-.035em;flex-shrink:0;align-items:center;gap:10px;font-size:27px;font-weight:800;line-height:1;display:inline-flex}.brand-symbol{mix-blend-mode:screen;width:44px;height:34px;position:relative;overflow:hidden}.brand-symbol img{width:56px;max-width:none;height:56px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.site-header nav{align-items:center;gap:34px;font-size:15px;display:flex}.site-header nav a{align-items:center;min-height:44px;transition:color .18s;display:flex}.site-header nav a:hover{color:#a9bfd2}.menu-toggle{display:none}.cinema{--intro-opacity:1;--intro-y:0px;--chapter-0:0;--chapter-1:0;--chapter-2:0;--chapter-3:0;--phone-x:76vw;--phone-y:53.5dvh;--phone-h:83dvh;--phone-angle:-8deg;height:580dvh;position:relative}.work-anchor{width:1px;height:1px;position:absolute;top:108dvh;left:0}.cinema-viewport{isolation:isolate;height:100dvh;position:sticky;top:0;overflow:clip}.phone-scene{pointer-events:none;z-index:1;position:absolute;inset:0}.phone-scene canvas{opacity:0;width:100%;height:100%;display:block}.phone-scene.is-ready canvas{opacity:1}.phone-fallback{width:calc(var(--phone-h)*.467);height:var(--phone-h);left:var(--phone-x);top:var(--phone-y);transform:translate(-50%,-50%)rotate(var(--phone-angle));position:absolute}.phone-fallback img{object-fit:contain}.fallback-screen{border-radius:11%/5%;position:absolute;inset:2.2% 3.4% 2.3%;overflow:hidden}.fallback-screen>img{object-fit:cover}.fallback-island{background:#020203;border-radius:999px;width:30%;height:3.5%;position:absolute;top:2.4%;left:35%}.phone-scene.is-ready .phone-fallback{visibility:hidden}.hero-content{z-index:2;pointer-events:none;opacity:var(--intro-opacity);transform:translate3d(0,var(--intro-y),0);position:absolute;inset:clamp(126px,16dvh,174px) 0 0}.hero-intro{pointer-events:auto;width:56%}.portrait{border-radius:18px;width:clamp(160px,28dvh,294px);height:clamp(160px,28dvh,294px);margin-bottom:clamp(24px,3dvh,36px);position:relative;overflow:hidden}.portrait img{object-fit:cover;transform-origin:50% 62%;transform:scale(1.3)}.hero-intro h1{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(76px,min(9vw,13dvh),128px);font-weight:900;line-height:.99}.hero-subtitle{color:#b6b6b6;margin-top:20px;font-size:clamp(19px,1.7vw,25px);font-weight:400;line-height:1.4}.hero-actions{align-items:center;gap:34px;margin-top:36px;display:flex}.button-primary{color:#101010;background:#f5f5f5;border-radius:7px;justify-content:center;align-items:center;gap:20px;min-height:54px;padding:14px 24px;font-size:16px;font-weight:700;transition:background .18s,transform .18s;display:inline-flex}.button-primary:hover{background:#dce4eb;transform:translateY(-2px)}.button-primary:active{transform:translateY(0)}.text-link{text-underline-offset:9px;justify-content:center;align-items:center;gap:14px;min-height:44px;padding:4px 0;font-size:16px;line-height:1.5;-webkit-text-decoration:underline #8b8b8b;text-decoration:underline #8b8b8b;text-decoration-thickness:1px;transition:color .18s,text-decoration-color .18s;display:inline-flex}.text-link:hover{color:#bbcfdf;text-decoration-color:#bbcfdf}.chapters{top:clamp(132px,15dvh,164px);left:var(--page-gutter);right:var(--page-gutter);z-index:3;pointer-events:none;height:250px;position:absolute}.chapter{text-align:center;position:absolute;inset:0}.chapter-0{opacity:var(--chapter-0)}.chapter-1{opacity:var(--chapter-1)}.chapter-2{opacity:var(--chapter-2)}.chapter[inert]{pointer-events:none}.chapter:not([inert]){pointer-events:auto}.chapter h2{letter-spacing:-.035em;font-size:clamp(55px,6.6vw,98px);font-weight:900;line-height:1.12}.chapter p{color:#b6b6b6;margin-top:17px;font-size:clamp(20px,2vw,29px);line-height:1.4}.project-origin{letter-spacing:0;min-height:24px;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:400;line-height:1.5;display:flex}.origin-sep{color:#6a6a6a}.chapter-date{font-variant-numeric:tabular-nums;color:#c8c8c8}.project-origin img{object-fit:contain;width:22px;height:22px}.chapter-actions{justify-content:center;align-items:center;gap:28px;margin-top:24px;display:flex}.store-badges{justify-content:center;align-items:center;gap:14px;display:flex}.store-badges a{align-items:center;min-height:44px;display:inline-flex}.store-badges img{width:auto;height:40px;display:block}.chapter .text-link{font-size:16px}.chapter-2 h2{font-size:clamp(42px,5.7vw,82px)}.section-space{padding-top:130px;padding-bottom:40px}.section-title{letter-spacing:-.03em;margin-bottom:48px;font-size:clamp(40px,4.4vw,64px);font-weight:700;line-height:1.12}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 32px;display:grid}.project-card{min-width:0;scroll-margin-top:125px}.media-preview{aspect-ratio:16/10;background:#111;border-radius:14px;position:relative;overflow:hidden}.media-preview>img:not(.placeholder-logo){object-fit:contain}.media-preview>video{object-fit:contain;width:100%;height:100%;display:block}.media-placeholder{border:1px solid #262626;flex-direction:column;justify-content:center;align-items:center;gap:27px;display:flex}.project-card:nth-child(2n) .media-placeholder{background:#0d0d0d}.placeholder-logo{object-fit:contain;border-radius:12px;width:68px;height:68px}.placeholder-caption{color:#a1a1a1;align-items:center;gap:10px;font-size:14px;display:flex}.project-details>summary{justify-content:space-between;align-items:center;gap:20px;min-height:90px;padding-top:22px;display:flex}.project-details .project-origin{justify-content:flex-start;margin-bottom:8px;font-size:12px}.project-name{letter-spacing:-.025em;font-size:clamp(24px,2.2vw,31px);font-weight:700;line-height:1.3;display:block}.project-subtitle{color:#a1a1a1;margin-top:5px;font-size:16px;line-height:1.5;display:block}.detail-plus{color:#b6b6b6;transition:transform .18s}details[open]>summary .detail-plus{transform:rotate(45deg)}.project-details>summary:hover .project-name{color:#b8cddd}.project-detail-body{padding-top:24px}.project-detail-body>p{color:#b6b6b6;max-width:70ch;font-size:16px;line-height:1.75}.project-detail-body dl{grid-template-columns:1fr 1fr;gap:20px;margin:28px 0;padding:0;font-size:14px;line-height:1.6;display:grid}.project-detail-body dt{color:#a1a1a1;margin-bottom:3px}.project-detail-body dd{margin:0}.detail-tools{grid-column:1/-1}.project-links{flex-wrap:wrap;gap:23px;display:flex}.project-links a{text-underline-offset:5px;align-items:center;gap:6px;min-height:44px;font-size:14px;text-decoration:underline;display:inline-flex}.experience-section{padding-top:150px}.experience-row{border-top:1px solid var(--line)}.experience-row:last-child{border-bottom:1px solid var(--line)}.experience-row>summary{align-items:center;gap:24px;padding-block:31px;display:flex}.company-logo{object-fit:contain;border-radius:7px;width:48px;height:48px}.experience-title{color:#a1a1a1;flex-direction:column;gap:6px;font-size:16px;display:flex}.company-name{color:#f5f5f5;letter-spacing:-.02em;font-size:26px;font-weight:700}.experience-dates{color:#b6b6b6;font-variant-numeric:tabular-nums;margin-left:auto;margin-right:22px;font-size:15px}.experience-detail{grid-template-columns:1fr 1fr;gap:28px 60px;padding:10px 0 35px 72px;display:grid}.experience-detail ul{color:#b6b6b6;margin:0;padding-left:18px;font-size:16px;line-height:1.75}.experience-detail li+li{margin-top:12px}.experience-detail .text-link{grid-column:1;justify-self:start}.media-preview.compact{aspect-ratio:16/9;width:100%}.capabilities{grid-template-columns:repeat(3,1fr);gap:40px;margin-top:68px;display:grid}.capabilities h3{margin-bottom:12px;font-size:19px;font-weight:700}.capabilities p{color:#a1a1a1;font-size:15px;line-height:1.8}.about-section{grid-template-columns:1fr 1.4fr;gap:80px;padding-top:160px;display:grid}.about-copy{max-width:66ch}.about-copy p{letter-spacing:-.015em;font-size:clamp(20px,2vw,27px);line-height:1.55}.about-copy p+p{color:#a1a1a1;margin-top:24px}.about-copy .text-link{margin-top:27px}.contact-section{padding-top:170px;padding-bottom:125px}.contact-section h2{letter-spacing:-.035em;font-size:clamp(68px,10.2vw,148px);font-weight:700;line-height:1.05}.email-link{letter-spacing:-.025em;border-bottom:1px solid #646464;align-items:center;gap:20px;margin-top:30px;padding-bottom:9px;font-size:clamp(20px,3.3vw,46px);line-height:1.4;display:inline-flex}.contact-paths{align-items:center;gap:38px;margin-top:40px;display:flex}.contact-paths a,.contact-socials a{align-items:center;gap:8px;min-height:44px;font-size:16px;display:inline-flex}.contact-paths a{text-underline-offset:7px;text-decoration:underline}.contact-socials{color:#a1a1a1;gap:30px;margin-top:28px;display:flex}.contact-section a:hover{color:#c1d2df}.site-footer{border-top:1px solid #262626;align-items:center;gap:30px;padding-block:30px 38px;display:flex}.site-footer>span{color:#a1a1a1;margin-left:auto;font-size:13px}.site-footer .brand{gap:6px;font-size:21px}.site-footer .brand-symbol{transform-origin:0;width:36px;transform:scale(.8)}.back-top{align-items:center;gap:8px;min-height:44px;font-size:13px;display:flex}.article-page{max-width:900px;margin-inline:auto;padding:165px 40px 110px}.article-page h1{letter-spacing:-.03em;margin-top:36px;font-size:clamp(46px,7vw,76px);line-height:1.1}.article-author{color:#a1a1a1;margin-top:20px}.article-prose{color:#c4c4c4;max-width:70ch;margin-top:58px;font-size:18px;line-height:1.85}.article-prose h2{letter-spacing:-.02em;color:#f5f5f5;margin-top:48px;margin-bottom:18px;font-size:30px;line-height:1.3}.article-prose p{margin-bottom:20px}.article-prose ul{margin-block:12px 24px;padding-left:24px;list-style:outside}.article-prose li{margin-block:5px;padding-left:4px}.article-prose strong{color:#f5f5f5}.not-found{flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:90svh;padding:40px 24px;display:flex}.not-found h1{letter-spacing:-.03em;font-size:clamp(40px,7vw,70px)}@media (min-width:1800px){.hero-intro{margin-left:0}.hero-content{max-width:none;padding-left:max(var(--page-gutter),calc((100vw - 1448px)/2))}}@media (max-height:760px) and (min-width:800px){.hero-content{top:114px}.portrait{width:136px;height:136px;margin-bottom:20px}.hero-intro h1{font-size:78px}.hero-subtitle{margin-top:15px;font-size:19px}.hero-actions{margin-top:24px}.chapters{top:112px}.chapter h2{font-size:56px}.chapter p{margin-top:10px;font-size:19px}.chapter .project-origin{min-height:20px;margin-bottom:6px;font-size:12px}.chapter-actions{margin-top:16px}}@media (max-width:1000px){.site-header nav{gap:24px}.brand{font-size:25px}.hero-intro{width:60%}.hero-intro h1{font-size:clamp(76px,9vw,96px)}.hero-subtitle{font-size:20px}.experience-detail{gap:28px;padding-left:0}.about-section{gap:45px}}@media (max-width:799px){.header-inner{height:84px}.brand{gap:7px;font-size:23px}.brand-symbol{width:37px;height:29px}.brand-symbol img{width:47px;height:47px}.menu-toggle{justify-content:center;align-items:center;width:44px;height:44px;margin-right:-10px;display:flex}.site-header nav{padding:15px var(--page-gutter)24px;background:#050505;border-bottom:1px solid #262626;display:none;position:absolute;top:76px;left:0;right:0}.site-header nav.is-open{flex-direction:column;align-items:stretch;gap:4px;display:flex}.site-header nav a{min-height:50px;font-size:20px}.cinema{--phone-x:57vw;--phone-y:104dvh;--phone-h:min(72dvh,155vw)}.hero-content{top:112px}.hero-intro{width:100%}.portrait{border-radius:12px;width:112px;height:112px;margin-bottom:22px}.hero-intro h1{font-size:64px;line-height:.98}.hero-subtitle{max-width:370px;margin-top:17px;font-size:18px}.desktop-break{display:none}.hero-actions{gap:26px;margin-top:26px}.button-primary{gap:15px;min-height:48px;padding:12px 18px;font-size:14px}.hero-actions .text-link{font-size:14px}.chapters{height:240px;top:120px;left:20px;right:20px}.chapter h2{font-size:clamp(48px,11.8vw,72px)}.chapter p{margin-top:14px;font-size:19px}.chapter .text-link{font-size:16px}.chapter .project-origin{margin-bottom:8px;font-size:13px}.chapter-actions{flex-direction:column;gap:12px;margin-top:18px}.chapter .store-badges{gap:12px}.chapter-2 h2{font-size:clamp(32px,8vw,58px)}.section-space{padding-top:90px;padding-bottom:16px}.section-title{margin-bottom:31px;font-size:40px}.projects-grid{gap:38px 24px}.project-name{font-size:24px}.project-subtitle{font-size:15px}.placeholder-caption{gap:7px;font-size:13px}.media-placeholder{gap:20px}.placeholder-logo{width:52px;height:52px}.experience-row>summary{flex-wrap:wrap;gap:17px;padding-block:24px}.company-name{font-size:23px}.experience-title{font-size:14px}.experience-dates{flex-basis:100%;order:4;margin-top:-12px;margin-left:65px;font-size:13px}.experience-row>summary>.detail-plus{margin-left:auto}.experience-detail{grid-template-columns:1fr;padding-block:0 30px}.experience-detail .text-link{grid-column:auto}.capabilities{grid-template-columns:1fr;gap:28px;margin-top:40px}.capabilities h3{margin-bottom:6px}.about-section{display:block}.about-copy p{font-size:21px}.contact-section{padding-block:95px 70px}.contact-section h2{font-size:73px}.email-link{gap:12px;margin-top:25px}.email-link svg{width:20px;height:20px}.contact-paths{flex-wrap:wrap;gap:24px;margin-top:27px}.contact-paths a{font-size:15px}.contact-socials{flex-wrap:wrap;gap:22px;margin-top:20px}.contact-socials a{font-size:14px}.site-footer{flex-wrap:wrap;gap:20px;padding-block:24px}.site-footer>span{flex-basis:100%;order:3;margin:0}.back-top{margin-left:auto}.article-page{padding:125px 24px 70px}.article-prose{font-size:17px}}@media (max-width:560px){.projects-grid{grid-template-columns:1fr;gap:38px}.project-details>summary{padding-top:17px}.media-preview{aspect-ratio:16/10}.placeholder-logo{width:62px;height:62px}.placeholder-caption{font-size:14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.cinema.reduce-motion{height:auto}.reduce-motion .work-anchor{top:100dvh}.reduce-motion .cinema-viewport{height:auto;position:relative;overflow:clip}.reduce-motion .hero-content{opacity:1;min-height:100dvh;padding-top:max(126px,15.4dvh);padding-bottom:65px;position:relative;top:0;transform:none}.reduce-motion .phone-scene{height:100dvh}.reduce-motion .chapters{gap:90px;height:auto;padding:55px 24px 90px;scroll-margin-top:110px;display:grid;position:relative;top:auto;left:auto;right:auto}.reduce-motion .chapter{opacity:1;position:relative}.section-introduction{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:56px;display:flex}.section-introduction .section-title{max-width:650px;margin:0}.section-introduction>p{color:#a1a1a1;max-width:350px;line-height:1.7}.engineering-story{border-top:1px solid #303033;grid-template-columns:1fr 1.2fr;align-items:center;gap:70px;padding:65px 0;display:grid}.story-discipline{color:#b5c6d8;font-size:13px}.engineering-copy h3{letter-spacing:-.035em;margin:22px 0;font-size:clamp(28px,3vw,45px);line-height:1.15}.engineering-copy p{color:#aaa;margin:18px 0;line-height:1.8}.engineering-copy summary{cursor:pointer;border-bottom:1px solid #333;justify-content:space-between;align-items:center;padding:18px 0;display:flex}.story-stack{font-size:13px}.browser-preview{background:#111215;border:1px solid #35363a;border-radius:12px;min-width:0;overflow:hidden;box-shadow:0 32px 80px #0008}.browser-chrome{color:#aaa;align-items:center;gap:6px;padding:15px;font-size:11px;display:flex}.browser-chrome i{background:#666;border-radius:50%;width:7px;height:7px}.browser-chrome span{margin-left:12px}.browser-preview video{aspect-ratio:16/10;object-fit:contain;background:#050505;width:100%;display:block}.media-context{color:#aaa;padding:12px 16px;font-size:11px;line-height:1.5}.phone-glow{z-index:0;left:var(--phone-x);top:var(--phone-y);width:calc(var(--phone-h)*1.05);height:calc(var(--phone-h)*.95);transform:translate(-50%,-48%)rotate(var(--phone-angle));filter:blur(30px);pointer-events:none;background:radial-gradient(at 50% 46%,#f4f9fcc7,#0000 30%),radial-gradient(at 50% 58%,#84b8d69e,#0000 62%);position:absolute}.feature-rise{z-index:0;pointer-events:none;width:0;height:0;position:absolute}.feature-rise-phone{left:var(--phone-x);top:calc(var(--phone-y) - var(--phone-h)*.18)}.feature-rise-device{left:50%;top:calc(var(--device-top) + var(--device-height)*.28)}.rise-pill{color:#12161a;letter-spacing:-.02em;white-space:nowrap;--lag:0;--side:-1;--travel:500px;--lift:250px;--s:clamp(0,(var(--scroll-p,0) - var(--lag))/(1 - var(--lag)),1);--p:calc(min(var(--s)/.1,1)*.8 + max(var(--s) - .9,0)/.1*.2);opacity:min(clamp(0,var(--p)*4.5,1),clamp(0,(1 - var(--p))*5,1));transform:translate(calc(-50% + var(--side)*var(--p)*var(--travel)),calc((1 - var(--p))*48px - var(--p)*var(--lift)));background:#e8eef3;border-radius:999px;padding:14px 22px;font-size:22px;font-weight:600;line-height:1.15;position:absolute;top:0;left:0;box-shadow:0 18px 36px #0000006b,inset 0 1px #fff}.rise-pill:nth-child(2){--side:1;--lag:.04;--travel:460px;--lift:340px}.rise-pill:nth-child(3){--side:1;--lag:.08;--travel:min(460px,calc(50vw - 160px));--lift:160px}.feature-bubbles{flex-flow:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.feature-bubble{color:#d5e2ec;letter-spacing:-.02em;background:0 0;border:1px solid #3d5162;border-radius:999px;margin:0;padding:7px 12px;font-size:13px;line-height:1.3}.feature-bubbles.is-quiet{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.project-card .feature-bubbles{margin-top:16px}.hardware-frame:before{content:"";filter:blur(26px);z-index:-1;pointer-events:none;background:radial-gradient(#bad6e852,#0000 68%);width:64%;height:62%;position:absolute;top:8%;left:18%}.project-card .media-preview{background:radial-gradient(at 50% 80%,#273039,#101113 75%)}.project-card .media-preview>img{padding:24px;transition:transform .45s}.project-card:hover .media-preview>img{transform:scale(1.035)}.capabilities{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:799px){.engineering-story{grid-template-columns:1fr;gap:24px;padding:35px 0}.section-introduction{display:block}.section-introduction>p{margin-top:20px}.feature-rise{display:none}.capabilities{grid-template-columns:1fr}}@media (max-width:1100px) and (min-width:800px){.rise-pill:nth-child(3){--travel:28px;--lift:480px}}@media (prefers-reduced-motion:reduce){.feature-rise,.phone-glow,.hardware-frame:before{display:none}.feature-bubbles.is-quiet{clip:auto;white-space:normal;justify-content:center;width:auto;height:auto;margin:18px auto 0;position:static;overflow:visible}.project-card:hover .media-preview>img{transform:none}}.reduce-motion .feature-rise,.reduce-motion .phone-glow{display:none}.reduce-motion .feature-bubbles.is-quiet{clip:auto;white-space:normal;justify-content:center;width:auto;height:auto;margin:18px auto 0;position:static;overflow:visible}.phone-stage{opacity:var(--phone-presence,1);transform:translateY(var(--phone-exit,0px));pointer-events:none;position:absolute;inset:0}.hardware-platform{color:#b6b6b6;justify-content:center;align-items:center;gap:14px;height:44px;font-size:14px;display:flex}.hardware-platform img{object-fit:contain;background:#fff;border-radius:4px;width:auto;max-width:74px;height:30px;padding:4px 6px}.hardware-stage{z-index:1;pointer-events:none;position:absolute;inset:0}.hardware-frame{top:var(--device-top,55dvh);height:var(--device-height,80dvh);will-change:transform,opacity;width:min(94vw,1080px);position:absolute;left:50%}.hardware-frame:not([inert]){pointer-events:auto}.hardware-frame-qios{width:min(90vw,calc(var(--device-height,80dvh)*.76))}.device-art{width:100%;height:100%;position:relative}.device-art img{object-fit:contain;object-position:50% 0}.desktop-device{filter:drop-shadow(0 25px 40px #0008);width:100%}.desktop-display{background:#101114;border:10px solid #33363a;border-radius:18px 18px 0 0;overflow:hidden}.desktop-display .browser-chrome{padding:10px 16px}.desktop-display video{aspect-ratio:16/9;object-fit:cover;background:#080808;width:100%;display:block}.desktop-chin{background:linear-gradient(#d0d0d0,#888);border-radius:0 0 16px 16px;height:45px}.desktop-stand{clip-path:polygon(20% 0,80% 0,87% 90%,100% 94%,100% 100%,0 100%,0 94%,13% 90%);background:linear-gradient(90deg,#777,#ddd,#999);width:25%;height:130px;margin:auto}.ally-composition{width:100%;padding:0 9% 0 0;position:relative}.ally-photo{width:100%;position:relative}.ally-photo>img{width:100%;height:auto;display:block}.ally-screen{color:#e4edf2;background:#101923;flex-direction:column;justify-content:space-between;width:57.4%;height:76.5%;padding:3%;font-size:clamp(8px,1vw,14px);display:flex;position:absolute;top:12.5%;left:21.3%;overflow:hidden}.hermes-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.hermes-top strong{color:#acf5cf;font-size:1.5em}.hermes-top>span{color:#8fa8b9;font-size:.7em}.hermes-tasks{gap:7px;margin:8px 0;display:grid}.hermes-tasks>span{background:#1e3041;border-radius:4px;padding:7px 10px}.hermes-tasks small{color:#8fa8b9;margin-top:3px;font-size:.65em;display:block}.ally-screen footer{color:#8fa8b9;justify-content:space-between;font-size:.7em;display:flex}.telegram-device{background:#101c29;border:6px solid #33383e;border-radius:26px;width:17%;min-width:100px;padding:22px 10px;position:absolute;top:8%;right:0;transform:rotate(6deg);box-shadow:0 30px 80px #0009}.telegram-island{background:#050505;border-radius:12px;width:40%;height:10px;margin:-14px auto 20px}.telegram-header{color:#8fceff;font-size:12px}.telegram-header span{color:#fff;margin:6px 0 20px;font-size:18px;display:block}.telegram-bubble{background:#253c50;border-radius:8px;margin:10px 0;padding:10px;font-size:11px;line-height:1.5}.telegram-note{color:#9ab0c2;font-size:9px}.hardware-dialog{color:#eee;background:#111;border:1px solid #444;border-radius:18px;width:min(600px,100vw - 40px);padding:36px}.hardware-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000b}.dialog-close{min-height:44px;margin:0 0 22px auto;display:block}.hardware-dialog .project-origin{justify-content:flex-start}.hardware-dialog h2{letter-spacing:-.03em;font-size:40px}.hardware-dialog p{color:#bbb;margin:22px 0;line-height:1.8}.hardware-dialog .dialog-media-note{color:#999;font-size:13px}.dialog-links{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.hardware-lineup{justify-content:center;align-items:flex-end;gap:4vw;height:56%;display:flex}.hardware-lineup figure{flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;margin:0;display:flex}.hardware-lineup figcaption{color:#a3a3a3;letter-spacing:.04em;font-size:13px}.lucy-solo{justify-content:center;align-items:flex-end;height:58%;display:flex}.static-device .lucy-solo{align-items:center;height:100%}.ipad-pro{aspect-ratio:4/3;box-sizing:border-box;background:linear-gradient(145deg,#8d929a 0%,#3a3e46 16%,#16181c 48%,#4a4e56 100%);border-radius:22px;width:auto;max-width:100%;height:100%;padding:14px;display:flex;position:relative;box-shadow:0 30px 70px #000c,inset 0 0 0 1px #ffffff38,inset 0 0 0 3px #090a0c}.ipad-pro:after{content:"";background:#9aa0a8;border-radius:2px;width:3px;height:54px;position:absolute;top:22%;right:-2px}.ipad-camera{background:#07080c;border-radius:50%;width:8px;height:8px;position:absolute;top:5px;left:50%;transform:translate(-50%);box-shadow:0 0 0 2px #1c1e24,inset 0 0 0 1.5px #445066}.ipad-glass{background:#fff;border-radius:8px;flex:1;min-width:0;position:relative;overflow:hidden}.ipad-glass img{object-fit:cover;object-position:center}.lucy-phone{aspect-ratio:857/1835;height:100%}.lucy-phone-art{height:100%;position:relative}.lucy-phone-art>img{object-fit:contain}.piece-art,.device-screen{min-height:0;position:relative}.piece-art{flex:1;width:100%}.piece-c20{width:min(28%,280px);height:82%}.piece-m20{width:min(13%,130px);height:100%}.piece-ns20{width:min(36%,420px);height:62%}.piece-art img,.device-screen img{object-fit:contain;object-position:center bottom}.device-shell{background:#121314;border:8px solid #3a3d42;flex:1;width:100%;min-height:0;padding:10px;display:flex;box-shadow:0 28px 70px #000a,inset 0 0 0 1px #ffffff18}.device-screen{background:#fff;border-radius:8px;flex:1;overflow:hidden}.device-screen img{object-fit:cover;object-position:top center}.static-device{width:min(100%,900px);height:500px;margin:45px auto 0;position:relative}.static-device-qios{max-width:380px}@media (max-width:799px){.hardware-platform{font-size:13px}.desktop-display{border-width:6px;border-radius:12px 12px 0 0}.desktop-chin{height:25px}.desktop-stand{height:75px}.ally-screen{font-size:8px}.hermes-tasks{gap:3px;margin:3px 0}.hermes-tasks>span{padding:3px 5px}.hermes-tasks small{display:none}.telegram-device{border-width:4px;border-radius:16px;min-width:75px;padding:14px 6px}.telegram-bubble{margin:4px 0;padding:4px;font-size:7px}.telegram-header{font-size:8px}.telegram-header span{margin:3px 0 8px;font-size:11px}.telegram-note{font-size:6px}.telegram-island{height:6px;margin:-9px auto 10px}.static-device{height:320px}.static-device-qios{height:520px}.hardware-lineup{gap:10px}.hardware-lineup figcaption{font-size:11px}.device-shell{border-width:5px;padding:6px}.ipad-pro{border-radius:16px;width:100%;height:auto;padding:10px}}.reduce-motion .phone-stage{height:100dvh}@media (prefers-reduced-motion:reduce){.telegram-device{transform:none}}.app-project-cover{color:#f5f5f5;border-radius:14px;grid-template-columns:clamp(96px,11vw,144px) minmax(0,1fr);align-items:center;gap:clamp(18px,2.8vw,36px);min-height:clamp(220px,22vw,320px);padding:clamp(22px,4vw,54px);display:grid;overflow:hidden}.app-project-cover-moneyroo{background:#101113}.app-project-cover-spliteroo{background:#151719}.app-project-mark{aspect-ratio:1;border-radius:22px;width:clamp(86px,11vw,144px);overflow:hidden}.app-project-mark img{object-fit:cover;width:100%;height:100%;display:block}.app-project-copy{min-width:0}.app-project-copy .project-origin{color:#a1a1a1;justify-content:flex-start;min-height:0;margin:0 0 10px;font-size:14px}.app-project-copy .origin-sep{color:#6a6a6a}.app-project-copy .chapter-date{color:#c8c8c8}.app-project-copy h3{letter-spacing:-.035em;font-size:clamp(31px,3.2vw,46px);font-weight:800;line-height:1.04}.app-project-copy p{color:#c2c2c2;margin-top:9px;font-size:clamp(16px,1.4vw,19px);line-height:1.4}.app-project-card .project-details>summary{min-height:70px;padding-top:16px}.project-details-label{letter-spacing:-.015em;font-size:17px;font-weight:600}@media (max-width:799px){.app-project-cover{grid-template-columns:clamp(86px,22vw,112px) minmax(0,1fr);gap:18px;min-height:222px;padding:22px}.app-project-mark{border-radius:18px;width:clamp(86px,22vw,112px)}.app-project-copy h3{font-size:clamp(30px,8vw,38px)}.app-project-copy p{font-size:16px}}@media (min-width:560px) and (max-width:799px){.app-project-cover{grid-template-columns:clamp(64px,10vw,76px) minmax(0,1fr);gap:14px;min-height:190px;padding:14px}.app-project-mark{border-radius:14px;width:clamp(64px,10vw,76px)}.app-project-copy .project-origin{gap:5px;font-size:13px}.app-project-copy h3{font-size:clamp(23px,4vw,30px)}.app-project-copy p{font-size:15px}}@media (max-width:359px){.app-project-cover{grid-template-columns:78px minmax(0,1fr);gap:14px;min-height:204px;padding:16px}.app-project-mark{border-radius:16px;width:78px}.app-project-copy .project-origin{font-size:13px}.app-project-copy h3{font-size:28px}.app-project-copy p{font-size:15px}}.loading-screen{z-index:9999;background:#050505;justify-content:center;align-items:center;transition:opacity .8s cubic-bezier(.4,0,.2,1),visibility .8s;display:flex;position:fixed;inset:0}.loading-screen.is-exiting{opacity:0;visibility:hidden;pointer-events:none}.loading-content{flex-direction:column;align-items:center;gap:0;animation:.6s ease-out both loadingFadeIn;display:flex}@keyframes loadingFadeIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.loading-logo{mix-blend-mode:screen;width:64px;height:50px;animation:2.4s ease-in-out infinite logoPulse;position:relative;overflow:hidden}.loading-logo img{width:78px;max-width:none;height:78px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes logoPulse{0%,to{opacity:.7;filter:brightness()}50%{opacity:1;filter:brightness(1.3)}}.loading-brand{font-family:var(--font-sora),sans-serif;letter-spacing:-.035em;color:#f5f5f5;margin-top:14px;font-size:32px;font-weight:800}.loading-track{background:#262626;border-radius:2px;width:180px;height:2px;margin-top:28px;overflow:hidden}.loading-bar{transform-origin:0;background:linear-gradient(90deg,#7ea3bf,#c2d0dc);border-radius:2px;width:100%;height:100%;transition:transform .3s cubic-bezier(.4,0,.2,1)}.loading-tagline{color:#6b6b6b;letter-spacing:.02em;margin-top:18px;font-size:14px;animation:1.2s ease-out .4s both taglineFade}@keyframes taglineFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:799px){.loading-brand{font-size:26px}.loading-track{width:140px}.loading-logo{width:52px;height:42px}.loading-logo img{width:64px;height:64px}}
