@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader.woff2)format("woff2")}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-italic.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/hanken-grotesk.woff2)format("woff2")}@font-face{font-family:Spline Sans Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/spline-sans-mono.woff2)format("woff2")}@font-face{font-family:Zen Old Mincho;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/zen-old-mincho-kanata-1.woff2)format("woff2");unicode-range:U+5F7C}@font-face{font-family:Zen Old Mincho;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/zen-old-mincho-kanata-2.woff2)format("woff2");unicode-range:U+65B9}@property --go{syntax:"<number>";inherits:true;initial-value:0}:root{--ink:#0b1f33;--ink-2:#142b46;--ink-3:#28425e;--on-ink:#fff;--rule:#0b1f3329;--glass-rgb:255, 255, 255;--glass-a:.7;--hi:255, 255, 255;--hi-a:.85;--shadow-rgb:16, 40, 80;--dark:0;--display:"Newsreader", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--body:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Spline Sans Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--jp:"Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--r:26px;--r-in:16px;--ease:cubic-bezier(.23, 1, .32, 1);--gutter:clamp(16px, 4vw, 60px)}*,:before,:after{box-sizing:border-box}html{background:#bcd6ee;scroll-padding-top:90px}body{color:var(--ink);font:400 17px/1.55 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#bcd6ee;margin:0;overflow-x:hidden}img,svg{max-width:100%}a{color:inherit}::selection{color:#fff;background:#0b1f33}:focus-visible{outline-offset:3px;outline:2px solid}[hidden]{display:none!important}.mono{font-family:var(--mono);letter-spacing:.05em;font-size:11.5px}.jp{font-family:var(--jp);letter-spacing:.06em;font-weight:700}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--ink);color:var(--on-ink);transition:top .2s var(--ease);border-radius:999px;padding:10px 16px;position:fixed;top:-60px;left:12px}.skip:focus{top:12px}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}#sky{z-index:0;background:linear-gradient(#4f8fd8 0%,#9cc6ec 45%,#f6e3d6 60%,#c7dced 62%,#9fb6d6 100%);width:100vw;height:100lvh;display:block;position:fixed;inset:0}main,footer{z-index:1;position:relative}main :where(p,li,td,th,span,dt,dd,label,small),footer :where(a,span,p),.nav :where(a,span){text-shadow:0 0 10px rgba(var(--glass-rgb), calc(var(--glass-a) * .75)), 0 0 2px rgba(var(--glass-rgb), calc(var(--glass-a) * .5))}.cursor{z-index:60;pointer-events:none;mix-blend-mode:difference;opacity:0;width:34px;height:34px;transition:width .25s var(--ease), height .25s var(--ease), margin .25s var(--ease), opacity .25s var(--ease);border:1.5px solid #fff;border-radius:50%;margin:-17px 0 0 -17px;position:fixed;top:0;left:0}.cursor.on{opacity:1}.cursor.big{width:64px;height:64px;margin:-32px 0 0 -32px}@media (pointer:coarse){.cursor{display:none}}.glass{isolation:isolate;border-radius:var(--r);color:var(--ink);background:radial-gradient(420px circle at var(--gx,50%) var(--gy,0%), rgba(255, 255, 255, calc(.5 * var(--go))), transparent 45%), linear-gradient(145deg, rgba(var(--glass-rgb), calc(var(--glass-a) + .1)), rgba(var(--glass-rgb), calc(var(--glass-a) - .1)));backdrop-filter:blur(22px)saturate(1.6);box-shadow:inset 0 1px 0 rgba(var(--hi), var(--hi-a)), 0 1px 2px rgba(var(--shadow-rgb), .1), 0 8px 20px -14px rgba(var(--shadow-rgb), .3), 0 28px 56px -26px rgba(var(--shadow-rgb), .45);transition:--go .35s var(--ease);position:relative}.glass:before{content:"";border-radius:inherit;pointer-events:none;z-index:1;-webkit-mask-composite:xor;background:linear-gradient(140deg,#fffffff2,#ffffff1f 38%,#ffffff0a 62%,#ffffff8c);padding:1px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.glass:after{content:"";border-radius:inherit;pointer-events:none;z-index:-1;opacity:.55;background:url(/grain.png) 0 0/128px;position:absolute;inset:0}.glass.is-pill{--r:999px}@media (prefers-reduced-transparency:reduce){.glass{backdrop-filter:none;--glass-a:.94}}.btn{font:500 15px/1 var(--body);color:#0b1f33;backdrop-filter:blur(10px);cursor:pointer;transition:background-color .2s var(--ease), color .2s var(--ease), transform .15s var(--ease), border-color .2s var(--ease);background:#ffffff94;border:1px solid #ffffffe6;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:15px 24px;text-decoration:none;display:inline-flex}.btn:hover{background:#fff}.btn:active{transform:scale(.97)}.btn.primary{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.btn.primary:hover{background:color-mix(in srgb, var(--ink) 82%, #4f8fd8)}.btn[disabled]{opacity:.6;cursor:progress}.link{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:2px 0;text-decoration:none}.link:hover{color:var(--ink)}.nav{z-index:30;padding:calc(env(safe-area-inset-top,0px) + 14px) var(--gutter) 14px;color:var(--ink);align-items:center;gap:14px;display:flex;position:fixed;top:0;left:0;right:0}.nav:before{content:"";z-index:-1;pointer-events:none;backdrop-filter:blur(12px);opacity:var(--navbg,0);transition:opacity .3s var(--ease);position:absolute;inset:0 0 -30px;-webkit-mask:linear-gradient(#000 50%,#0000);mask:linear-gradient(#000 50%,#0000)}.mark{align-items:baseline;gap:10px;margin-right:auto;text-decoration:none;display:flex}.mark .jp{font-size:17px}.mark-en{font-family:var(--mono);letter-spacing:.3em;font-size:12px}.navlinks{--r:999px;gap:2px;padding:4px;display:flex}.navlinks a{font:500 14px/1 var(--body);transition:background-color .2s var(--ease);border-radius:999px;padding:10px 16px;text-decoration:none}.navlinks a:hover,.navlinks a[aria-current]{background:#fff9}.nav .btn{padding:11px 18px;font-size:14px}.menu-btn{display:none}@media (width<=760px){.navlinks{display:none}.menu-btn{padding:11px 16px;font-size:14px;display:inline-flex}}html:not(.js-ready) .sound{display:none}@media (width<=760px),(pointer:coarse){.sound{display:none}}.menu-sound{font:500 12px var(--mono);letter-spacing:.05em;margin-top:18px;display:none}@media (width<=760px),(pointer:coarse){.js-ready .menu-sound{display:inline-block}}.sound{right:var(--gutter);bottom:calc(env(safe-area-inset-bottom,0px) + 18px);z-index:30;font:500 11.5px var(--mono);letter-spacing:.05em;color:var(--ink);cursor:pointer;backdrop-filter:blur(8px);background:#fff9;border:1px solid #ffffffe6;border-radius:999px;padding:8px 14px;position:fixed}.sound[aria-pressed=true]{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.sec{padding:clamp(100px, 16vh, 170px) var(--gutter);position:relative}.h2{font-family:var(--display);letter-spacing:-.02em;text-wrap:balance;font-variation-settings:"opsz" 72;color:var(--ink);margin:0;font-size:clamp(40px,6vw,96px);font-weight:250;line-height:.95}.h2 em{font-style:italic}.sub{max-width:52ch;color:var(--ink-2);margin:22px 0 0}.js-ready [data-reveal]:not(.in){opacity:0;transform:translateY(26px)}[data-reveal]{transition:opacity .9s var(--ease), transform .9s var(--ease)}.hero{min-height:100svh;padding:clamp(120px, 19vh, 200px) var(--gutter) 90px;flex-direction:column;justify-content:space-between;gap:40px;display:flex}.h1{max-width:11ch;font-family:var(--display);letter-spacing:-.025em;font-variation-settings:"opsz" 72;margin:0;font-size:clamp(54px,9.4vw,168px);font-weight:250;line-height:.9}.h1 em{font-style:italic}.h1 .w{white-space:nowrap;display:inline-block}.h1 .c{will-change:transform;animation:rise 1.3s var(--ease) backwards;animation-delay:calc(.3s + var(--i,0) * 24ms);display:inline-block}@keyframes rise{0%{opacity:0;transform:translateY(110%)rotate(6deg)}}.hero-foot{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding-right:clamp(0px,6vw,90px);display:grid}.lede{max-width:40ch;margin:0;font-size:clamp(17px,1.4vw,20px)}.proof{max-width:46ch;color:var(--ink-2);margin:14px 0 0;font-size:15px}.actions{flex-wrap:wrap;gap:10px;display:flex}.hero .lede,.hero .proof,.hero .actions{animation:fade 1.2s var(--ease) 1.2s backwards}@keyframes fade{0%{opacity:0;transform:translateY(14px)}}@media (width<=760px){.hero{padding-top:31svh}.hero-foot{grid-template-columns:1fr;padding-right:0}}.thesis{flex-direction:column;justify-content:center;gap:4px;min-height:92svh;display:flex}.thesis .h2{max-width:60vw}.thesis .h2:nth-child(2){padding-left:clamp(0px,8vw,140px)}.thesis .h2:nth-child(3){padding-left:clamp(0px,16vw,280px)}@media (width<=760px){.thesis{padding-top:42svh}.thesis .h2{max-width:none}}.work-intro{padding-bottom:clamp(30px,6vh,70px)}.build{height:215svh;position:relative}.build-stage{height:100svh;padding:clamp(84px, 11vh, 120px) var(--gutter) clamp(28px, 5vh, 56px);grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(24px,4vw,72px);display:grid;position:sticky;top:0}.build-text{min-width:0}.build-name{font-family:var(--display);letter-spacing:-.03em;font-variation-settings:"opsz" 72;text-wrap:balance;margin:0;font-size:clamp(48px,min(7.2vw,13svh),120px);font-weight:250;line-height:.92}.build-meta{color:var(--ink-2);margin:14px 0 0}.build-line{max-width:34ch;font-family:var(--display);letter-spacing:-.01em;margin:20px 0 0;font-size:clamp(20px,min(1.9vw,3.4svh),29px);font-weight:350;line-height:1.18}.nums{border-top:1px solid var(--rule);max-width:46ch;margin:clamp(18px,3.4svh,30px) 0 0;padding:0;list-style:none}.nums li{border-bottom:1px solid var(--rule);grid-template-columns:minmax(8.5em,auto) minmax(0,1fr);align-items:baseline;gap:4px 18px;padding:11px 0;display:grid}.nums b{font-family:var(--display);font-variant-numeric:tabular-nums lining-nums;white-space:nowrap;font-size:clamp(22px,2.2vw,30px);font-weight:350}.nums span{color:var(--ink-2);font-size:14px;line-height:1.4}.more{font:500 15px var(--body);align-items:center;gap:10px;margin-top:clamp(16px,3svh,26px);padding:12px 20px 12px 22px;text-decoration:none;display:inline-flex}.more .arrow{transition:transform .3s var(--ease)}.more:hover .arrow{transform:translate(4px)}.build-fig{width:min(100%, calc(var(--fig-w,62vw)));--reveal:1;justify-self:end;margin:0;padding:10px;position:relative}.build-fig .shot{border-radius:calc(var(--r) - 10px);line-height:0;position:relative;overflow:hidden}.build-fig img{width:100%;height:auto;display:block}.js-ready .build-fig .shot img{opacity:var(--reveal);transform:scale(calc(1.025 - .025 * var(--reveal)));filter:blur(calc(8px * (1 - var(--reveal))))}.js-ready .build-fig .screens{opacity:var(--reveal);filter:blur(calc(8px * (1 - var(--reveal))))}.js-ready .build-fig{background:linear-gradient(145deg, rgba(var(--glass-rgb), calc((var(--glass-a) + .1) * var(--reveal))), rgba(var(--glass-rgb), calc((var(--glass-a) - .1) * var(--reveal))));backdrop-filter:blur(calc(22px * var(--reveal))) saturate(calc(1 + .6 * var(--reveal)));box-shadow:inset 0 1px 0 rgba(var(--hi), calc(var(--hi-a) * var(--reveal))), 0 28px 56px -26px rgba(var(--shadow-rgb), calc(.45 * var(--reveal)))}.js-ready .build-fig:after{opacity:calc(.55 * var(--reveal))}.js-ready .build-fig:before{opacity:calc(.45 + .55 * var(--reveal))}.build-fig .tag{z-index:2;color:#e6f0fa;font:500 11px var(--mono);letter-spacing:.05em;background:#0b1f33c7;border-radius:999px;padding:6px 12px;position:absolute;bottom:22px;right:22px}.fig-link{width:100%;color:inherit;border-radius:inherit;text-decoration:none;display:block}.build-fig a.tag{transition:background-color .2s var(--ease), transform .2s var(--ease);text-decoration:none}.build-fig a.tag:hover{background:#0b1f33;transform:translateY(-1px)}.js-ready .build-fig .tag{opacity:var(--reveal)}.screens{aspect-ratio:3/2;--spread:1;width:100%;position:relative}.screens .screen{width:30.67%;height:99.6%;top:.2%;left:calc(34.67% * var(--i) * var(--spread) + (1 - var(--spread)) * 34.67%);transform:translate3d(calc(var(--px,0) * var(--d) * 16px), calc(var(--py,0) * var(--d) * 12px + var(--float,0px) * var(--d)), 0) rotate(calc((var(--i) - 1) * 2.2deg * var(--spread)));transition:left .4s var(--ease);animation:7s ease-in-out infinite floaty;animation-delay:calc(var(--i) * -2.1s);border-radius:22px;line-height:0;position:absolute;overflow:hidden;box-shadow:0 30px 50px -24px #0b1f338c,0 0 0 1px #fff6}.screens .screen img{object-fit:cover;width:100%;height:100%}@keyframes floaty{0%,to{translate:0}50%{translate:0 -10px}}@media (width<=860px),(aspect-ratio<=21/20){.build{height:200svh}.build-stage{grid-template-columns:1fr;align-content:center;gap:clamp(14px,2.4svh,24px);padding-top:clamp(76px,10svh,100px)}.build-stage .build-fig{order:-1;justify-content:center;justify-self:stretch;width:100%;max-height:38svh;display:flex}.build-stage .build-fig .shot,.build-stage .build-fig .screens{max-height:calc(38svh - 20px)}.build-stage .build-fig .shot img{width:auto;max-height:calc(38svh - 20px);margin:0 auto}.build-stage .build-fig .screens{aspect-ratio:3/2;width:min(100%,57svh - 30px);height:auto;margin:0 auto}.build-name{font-size:clamp(40px,11vw,64px)}.build-line{margin-top:12px;font-size:clamp(18px,4.8vw,22px)}.build-meta{margin-top:8px}.nums{margin-top:12px}.nums li{grid-template-columns:minmax(7.4em,auto) minmax(0,1fr);padding:8px 0}.nums li:nth-child(n+3){display:none}.nums b{font-size:21px}.more{margin-top:12px;padding:10px 18px}}.menu{border-top:1px solid var(--rule);max-width:1100px;margin-top:clamp(40px,7vh,70px)}.menu>div{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:baseline;gap:8px 40px;padding-block:24px;display:grid}.menu h3{font-family:var(--display);letter-spacing:-.015em;margin:0;font-size:clamp(28px,3vw,44px);font-weight:250;line-height:1}.menu p{color:var(--ink-2);margin:0}.menu .proof-link{color:var(--ink);margin-top:8px;font-size:14px;display:inline-block}@media (width<=720px){.menu>div{grid-template-columns:1fr}}.record{max-width:1180px;margin-top:clamp(40px,7vh,70px);padding:clamp(14px,2.4vw,28px);overflow-x:auto}.record table{border-collapse:collapse;width:100%;min-width:0;font-size:15px}.record th{text-align:left;font:500 11.5px var(--mono);letter-spacing:.05em;color:var(--ink-3);border-bottom:1px solid var(--rule);padding:0 18px 12px 0}.record td{vertical-align:top;border-bottom:1px solid var(--rule);color:var(--ink-2);padding:16px 18px 16px 0;line-height:1.45}.record tr:last-child td{border-bottom:0}@media (width<=760px){.record{overflow:visible}.record table,.record tbody,.record tr,.record td{width:auto;min-width:0;display:block}.record thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.record tr{border-bottom:1px solid var(--rule);padding:14px 0}.record tr:last-child{border-bottom:0}.record td{border-bottom:0;padding:6px 0}.record td:before{content:attr(data-label);width:100%;font:500 11px var(--mono);letter-spacing:.05em;color:var(--ink-3);margin-bottom:2px;text-decoration:none;display:inline-block}}.record td:first-child{color:var(--ink);text-decoration:line-through 1.5px #d9534f}.record td:last-child{color:var(--ink)}.about{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:start;gap:clamp(32px,5vw,80px);display:grid}.about .copy p{max-width:58ch;margin:22px 0 0}.about .copy p:first-of-type{margin-top:36px;font-size:clamp(18px,1.5vw,21px)}.about-card{padding:clamp(22px,3vw,34px)}.about-card dl{gap:0;margin:0;display:grid}.about-card dl div{border-bottom:1px solid var(--rule);grid-template-columns:6em minmax(0,1fr);align-items:baseline;gap:12px;padding:12px 0;display:grid}.about-card dt{color:var(--ink-3)}.about-card dd{margin:0}.name-card{flex-wrap:wrap;align-items:baseline;gap:18px;margin-top:26px;display:flex}.name-card .kanji{font-family:var(--jp);letter-spacing:.04em;font-size:clamp(54px,6vw,84px);font-weight:700;line-height:1}.name-card p{color:var(--ink-2);max-width:24ch;margin:0;font-size:15px}@media (width<=900px){.about{grid-template-columns:1fr}}.start{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start;gap:clamp(28px,5vw,70px);padding-right:clamp(0px,5vw,70px);display:grid}@media (width<=900px){.start{grid-template-columns:1fr;padding-right:0}}.panel{padding:clamp(20px,3vw,32px)}.brief fieldset{border:0;min-width:0;margin:0 0 20px;padding:0}.brief legend,.brief .lbl{font:500 11.5px var(--mono);letter-spacing:.05em;color:var(--ink-3);margin:0 0 10px;padding:0;display:block}.pills{flex-wrap:wrap;gap:8px;display:flex}.pill{position:relative}.pill input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.pill span{color:var(--ink-2);transition:background-color .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease), transform .15s var(--ease);background:#ffffff8c;border:1px solid #0b1f333d;border-radius:999px;padding:10px 16px;font-size:14.5px;display:inline-block}.pill:active span{transform:scale(.97)}.pill input:checked+span{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.pill input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}.brief textarea,.brief input[type=email]{color:#0b1f33;border-radius:var(--r-in);width:100%;font:inherit;transition:border-color .2s var(--ease), box-shadow .2s var(--ease);background:#ffffffeb;border:1px solid #0b1f3338;margin-bottom:20px;padding:13px 15px;font-size:16px;display:block}.brief textarea{resize:vertical;min-height:120px}.brief textarea:focus,.brief input[type=email]:focus{border-color:#0b1f33;outline:none;box-shadow:0 0 0 3px #0b1f331f}.brief textarea::placeholder{color:#5d7690}.brief .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.brief .row{flex-wrap:wrap;align-items:center;gap:12px 18px;display:flex}.brief .alt{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:8px;font-size:14.5px;display:flex}.brief .alt a{color:var(--ink)}.brief .copy{font:500 12px var(--mono)}.brief .status{min-height:1.4em;color:var(--ink);margin:14px 0 0;font-size:14.5px}.brief .status.err{color:#b3261e}.brief.done .fields,.thanks{display:none}.brief.done .thanks{display:block}.thanks h3{font-family:var(--display);letter-spacing:-.015em;margin:0 0 8px;font-size:34px;font-weight:350}footer.site-footer{min-height:115svh;padding:40px var(--gutter) calc(env(safe-area-inset-bottom,0px) + 72px);color:var(--ink);flex-direction:column;justify-content:flex-end;display:flex}.bigmark{font-family:var(--display);letter-spacing:-.04em;color:#fffffff0;text-shadow:0 20px 80px #ffbe8c59;will-change:transform;margin:0;font-size:clamp(90px,22vw,380px);font-style:italic;font-weight:250;line-height:.8}.foot{color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 28px;margin-top:26px;display:flex}.foot nav{flex-wrap:wrap;gap:18px;display:flex}.foot a{color:inherit;text-decoration:none}.foot a:hover{color:var(--ink);text-decoration:underline}.foot .contact{color:var(--ink);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.foot .dim{color:var(--ink-2)}.case{padding:clamp(110px, 15vh, 160px) var(--gutter) clamp(60px, 10vh, 120px)}.crumb{color:var(--ink-2);margin:0 0 18px}.crumb a{border-bottom:1px solid;text-decoration:none}.case h1{font-family:var(--display);letter-spacing:-.03em;font-variation-settings:"opsz" 72;text-wrap:balance;max-width:12ch;margin:0;font-size:clamp(54px,10vw,168px);font-weight:250;line-height:.9}.case-meta{color:var(--ink-2);margin:20px 0 0}.case-line{max-width:36ch;font-family:var(--display);letter-spacing:-.012em;margin:22px 0 0;font-size:clamp(22px,2.6vw,38px);font-weight:350;line-height:1.15}.case-top{position:relative}.case-top .build-fig{width:min(100%,1100px);margin:clamp(36px,7vh,80px) auto 0;display:block}.case-body{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);align-items:start;gap:clamp(28px,5vw,90px);margin-top:clamp(48px,9vh,110px);display:grid}.case-facts{padding:clamp(18px,2.4vw,28px);position:sticky;top:96px}.case-facts dl{margin:0}.case-facts dl div{border-bottom:1px solid var(--rule);padding:14px 0}.case-facts dl div:last-child{border-bottom:0}.case-facts dt{font-family:var(--display);font-variant-numeric:tabular-nums lining-nums;font-size:clamp(26px,2.6vw,36px);font-weight:350;line-height:1.05}.case-facts dd{color:var(--ink-2);margin:4px 0 0;font-size:14.5px;line-height:1.4}.case-sections section{border-bottom:1px solid var(--rule);margin:0 0 clamp(26px,4vh,40px);padding:0 0 clamp(26px,4vh,40px)}.case-sections section:last-child{border-bottom:0}.case-sections h2{font-family:var(--display);letter-spacing:-.012em;margin:0 0 14px;font-size:clamp(26px,2.6vw,36px);font-weight:350;line-height:1.1}.case-sections p{max-width:62ch;color:var(--ink-2);margin:0 0 14px;font-size:17.5px;line-height:1.6}.case-sections p:first-of-type{color:var(--ink)}.case-sections ul{max-width:62ch;color:var(--ink-2);margin:0;padding-left:1.1em}.case-sections li{margin:0 0 10px;line-height:1.55}.case-end{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);margin-top:clamp(50px,8vh,100px);display:grid}.case-end .glass{padding:clamp(20px,3vw,32px)}.case-end h2{font-family:var(--display);letter-spacing:-.012em;margin:0 0 10px;font-size:clamp(26px,2.6vw,36px);font-weight:350}.case-end p{color:var(--ink-2);margin:0 0 18px}@media (width<=900px){.case-body,.case-end{grid-template-columns:1fr}.case-facts{position:static}}.plain{min-height:100svh;padding:clamp(120px, 18vh, 190px) var(--gutter) 80px}.plain .doc{max-width:66ch;padding:clamp(22px,3.4vw,40px)}.plain h1{font-family:var(--display);letter-spacing:-.025em;margin:0 0 18px;font-size:clamp(44px,7vw,96px);font-weight:250;line-height:.95}.plain h2{font-family:var(--display);margin:28px 0 8px;font-size:26px;font-weight:350}.plain p,.plain li{color:var(--ink-2)}.plain p{margin:0 0 14px}.plain a{color:var(--ink)}dialog.sheet{overscroll-behavior:contain;width:min(620px,100% - 24px);max-height:calc(100svh - 24px);color:var(--ink);background:0 0;border:0;margin:auto;padding:0;overflow:auto}dialog.sheet::backdrop{backdrop-filter:blur(4px);background:#0b1f3361}dialog.sheet[open]{animation:pop .45s var(--ease)}@keyframes pop{0%{opacity:0;transform:translateY(16px)scale(.985)}}dialog.sheet .glass{padding:clamp(20px,3vw,30px)}.sheet-top{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.sheet-top h2{font-family:var(--display);letter-spacing:-.015em;margin:0;font-size:clamp(28px,3.4vw,40px);font-weight:350;line-height:1.05}.sheet-top .sub{margin-top:8px;font-size:15px}.x{font:500 14px var(--body);color:#0b1f33;cursor:pointer;background:#ffffffbf;border:1px solid #0b1f3333;border-radius:999px;flex:none;padding:8px 15px}.x:hover{color:#fff;background:#0b1f33}.menu-links{gap:4px;display:grid}.menu-links a{font-family:var(--display);letter-spacing:-.02em;border-bottom:1px solid var(--rule);padding:6px 0;font-size:42px;font-weight:250;text-decoration:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.build{height:auto}.build-stage{height:auto;min-height:100svh;position:static}.js-ready [data-reveal]:not(.in){opacity:1;transform:none}}html[data-motion=reduce] .build{height:auto}html[data-motion=reduce] .build-stage{height:auto;min-height:100svh;position:static}
