@font-face{font-family:__GeistSans_fb8f2c;src:url(/_next/static/media/028c0d39d2e8f589-s.p.woff2) format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:__GeistSans_Fallback_fb8f2c;src:local("Arial");ascent-override:85.83%;descent-override:20.53%;line-gap-override:9.33%;size-adjust:107.19%}.__className_fb8f2c{font-family:__GeistSans_fb8f2c,__GeistSans_Fallback_fb8f2c}.__variable_fb8f2c{--font-geist-sans:"__GeistSans_fb8f2c","__GeistSans_Fallback_fb8f2c"}*,:after,:before{box-sizing:border-box}body,h1,h2,h3,p{margin:0}a{color:inherit}svg{display:block;vertical-align:middle}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:root{--text-label:12px;--text-nav:14px;--text-body:16px;--text-lead:20px;--text-project:28px;--text-heading:40px;--text-display:48px;--text-hero:80px;--ink:#393f4d;--lilac:#a78bfa;--paper:#fafaf7;--soft-lilac:#eee8fa;--muted:#5f636e;--muted-purple:#6a5785;--focus:#8261cf;--link-hover:#7754bd;--accent-text:#9c7bd9}html{scroll-behavior:smooth;scroll-padding-top:30px}body{line-height:1.5;margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans),sans-serif;-webkit-font-smoothing:antialiased}a{text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:5px}::selection{background:color-mix(in srgb,var(--lilac) 30%,var(--soft-lilac))}.page{width:min(1184px,calc(100% - 96px));margin-inline:auto}.site-header{height:108px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--ink) 8.24%,transparent)}.wordmark{display:inline-flex;align-items:center;font-size:var(--text-project);font-weight:650;letter-spacing:-1.2px}.wordmark-light{font-weight:400;margin-left:5px}.brand-symbol{font-size:31px;background:color-mix(in srgb,var(--lilac) 10%,var(--soft-lilac));width:43px;height:43px;border-radius:12px;display:grid;place-content:center;margin-right:13px;line-height:1;position:relative}.brand-symbol span{color:var(--focus);position:absolute;right:8px;bottom:5px}.nav-links{display:flex;gap:37px;align-items:center;font-size:var(--text-nav);font-weight:500}.nav-links a{transition:color .2s}.nav-links a:hover,.project-link:hover,.text-link:hover{color:var(--link-hover)}.nav-contact{display:inline-flex;align-items:center;gap:14px;border:1px solid color-mix(in srgb,var(--ink) 14.51%,transparent);border-radius:50px;padding:12px 19px}.menu-toggle{display:none}.hero{padding-top:88px}.hero,.hero-copy{position:relative}.hero-copy{z-index:2;width:58%}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:var(--text-label);font-weight:600;display:flex;gap:9px;align-items:center;margin:0 0 26px}.small-dot{width:6px;height:6px;border-radius:50%;background:color-mix(in srgb,var(--lilac) 60%,var(--muted-purple));display:inline-block;flex-shrink:0}.hero-heading{font-size:clamp(var(--text-display),6.25vw,var(--text-hero));letter-spacing:-5px;line-height:1.04;font-weight:500;margin:0}.accent-word{color:var(--accent-text)}.hero-description{font-size:var(--text-body);color:var(--muted);line-height:1.8;margin:27px 0 28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;padding:16px 24px;border-radius:7px;font-size:var(--text-label);font-weight:500;transition:background .2s,transform .2s}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:color-mix(in srgb,var(--ink) 90%,#fff);transform:translateY(-2px)}.hero-art{position:absolute;width:535px;height:490px;right:-25px;top:68px}.art-grid{inset:0;background-image:radial-gradient(color-mix(in srgb,color-mix(in srgb,var(--ink) 50%,#fff) 32.94%,transparent) .7px,transparent .7px);background-size:20px 20px;-webkit-mask-image:radial-gradient(ellipse,#000 30%,transparent 70%);mask-image:radial-gradient(ellipse,#000 30%,transparent 70%)}.art-grid,.orbit{position:absolute}.orbit{top:50%;left:50%;border:1px solid color-mix(in srgb,color-mix(in srgb,var(--lilac) 80%,var(--muted-purple)) 23.14%,transparent);border-radius:50%;transform:translate(-50%,-50%)}.orbit-one{width:430px;height:430px}.orbit-two{width:315px;height:315px}.orbit-three{width:215px;height:215px}.orbit-core{width:169px;height:169px;border-radius:50%;background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--lilac) 10%,#fff),color-mix(in srgb,var(--lilac) 30%,var(--soft-lilac)));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 16px 50px color-mix(in srgb,color-mix(in srgb,var(--lilac) 60%,var(--muted-purple)) 13.73%,transparent),inset 0 0 0 8px color-mix(in srgb,#fff 20%,transparent)}.orbit-core>span{font-size:48px;letter-spacing:3px;font-family:Hiragino Mincho ProN,Yu Mincho,"Noto Serif JP",serif;color:color-mix(in srgb,var(--lilac) 10%,var(--muted-purple))}.orbit-core small{font-size:9px;color:color-mix(in srgb,var(--ink) 70%,#fff);margin-top:9px;letter-spacing:.4px}.floating-label{background:#fff;position:absolute;display:flex;align-items:center;gap:12px;padding:14px 19px 14px 13px;border-radius:10px;box-shadow:0 9px 35px color-mix(in srgb,var(--ink) 4.31%,transparent);border:1px solid color-mix(in srgb,var(--ink) 10%,#fff);font-size:11px;font-weight:500}.floating-label small{display:block;color:color-mix(in srgb,var(--ink) 60%,#fff);font-weight:400;font-size:10px;margin-top:3px}.label-icon{background:var(--soft-lilac);color:color-mix(in srgb,var(--lilac) 60%,var(--muted-purple));padding:10px;border-radius:8px}.label-collection{top:94px;left:34px;transform:rotate(-7deg)}.label-weather{bottom:89px;right:12px;transform:rotate(6deg)}.art-spark{position:absolute;color:var(--accent-text);right:92px;top:70px}.orbit-dot{position:absolute;border-radius:50%}.dot-one{width:12px;height:12px;background:color-mix(in srgb,var(--lilac) 80%,var(--soft-lilac));bottom:92px;left:103px;box-shadow:0 0 0 5px var(--soft-lilac)}.dot-two{width:7px;height:7px;background:color-mix(in srgb,var(--ink) 30%,#fff);right:61px;top:225px}.hero-bottom{margin-top:70px;padding:24px 0;border-top:1px solid color-mix(in srgb,var(--ink) 8.24%,transparent);justify-content:flex-end;font-size:var(--text-label);color:var(--muted);letter-spacing:.2px}.hero-bottom,.hero-bottom a{display:flex;align-items:center}.hero-bottom a{gap:12px}.projects-section{padding-block:78px 82px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:36px}.section-title{font-size:var(--text-heading);font-weight:500;letter-spacing:-1.7px;line-height:1.15;margin:0}.section-heading .eyebrow{margin-bottom:17px}.projects-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px}.project-card{background:#fff;border-radius:14px;overflow:hidden;border:1px solid color-mix(in srgb,var(--ink) 6.27%,transparent);transition:box-shadow .25s}.project-card:hover{box-shadow:0 12px 30px color-mix(in srgb,var(--ink) 3.14%,transparent)}.project-visual{position:relative;height:302px;overflow:hidden}.figure-visual{background:var(--soft-lilac)}.visual-corner{position:absolute;top:22px;left:26px;font-size:10px;color:color-mix(in srgb,var(--lilac) 20%,var(--muted-purple))}.visual-bottom{position:absolute;bottom:16px;left:26px;font-size:7px;font-weight:500;letter-spacing:1.8px;color:color-mix(in srgb,var(--ink) 70%,#fff)}.figure-window{position:absolute;width:79%;max-width:400px;top:62px;left:12%;background:var(--paper);border-radius:9px;transform:rotate(-4deg);border:1px solid #fff;box-shadow:0 16px 35px color-mix(in srgb,color-mix(in srgb,var(--lilac) 10%,var(--muted-purple)) 12.55%,transparent)}.window-top{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,#fff);font-size:10px;font-weight:600}.window-top>span:first-child{display:flex;gap:7px;align-items:center}.window-dots{color:color-mix(in srgb,var(--ink) 40%,#fff);letter-spacing:2px}.figure-content{padding:16px 20px}.preview-heading{font-size:14px;font-weight:600;letter-spacing:-.4px}.preview-heading>span{display:block;margin-top:3px;font-size:8px;color:color-mix(in srgb,var(--ink) 60%,#fff);font-weight:400;letter-spacing:0}.figure-stats{display:flex;gap:9px;margin:14px 0}.figure-stats>div{flex:1 1;background:var(--soft-lilac);border-radius:5px;padding:8px 11px}.figure-stats small{font-size:7px;display:block;color:color-mix(in srgb,var(--ink) 60%,#fff)}.figure-stats strong{display:block;font-size:19px;font-weight:500;line-height:1.4;color:color-mix(in srgb,var(--lilac) 10%,var(--muted-purple))}.figure-row{display:flex;align-items:center;gap:9px;padding-block:7px;border-top:1px solid color-mix(in srgb,var(--ink) 10%,#fff)}.figure-thumbnail{padding:7px;background:color-mix(in srgb,var(--lilac) 30%,var(--soft-lilac));border-radius:5px;color:color-mix(in srgb,var(--lilac) 40%,var(--muted-purple))}.figure-thumbnail.pale{background:var(--soft-lilac)}.figure-row b{display:block;font-size:8px;font-weight:500}.figure-row small{font-size:6px;color:color-mix(in srgb,var(--ink) 50%,#fff);display:block;margin-top:2px}.mini-pill{margin-left:auto;border-radius:10px;background:var(--soft-lilac);color:color-mix(in srgb,var(--lilac) 30%,var(--muted-purple));padding:4px 7px;font-size:6px}.storm-visual{background:var(--ink);background-image:linear-gradient(color-mix(in srgb,#fff 1.57%,transparent) 1px,transparent 0),linear-gradient(90deg,color-mix(in srgb,#fff 1.57%,transparent) 1px,transparent 0);background-size:32px 32px}.storm-visual .visual-corner{color:color-mix(in srgb,var(--lilac) 40%,var(--soft-lilac))}.storm-visual .visual-bottom{color:color-mix(in srgb,var(--ink) 40%,#fff)}.radar-art{position:absolute;width:290px;height:290px;top:-20px;right:24px}.radar-ring{border:1px solid color-mix(in srgb,color-mix(in srgb,var(--lilac) 70%,var(--soft-lilac)) 21.96%,transparent);border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.ring-a{width:270px;height:270px}.ring-b{width:185px;height:185px}.ring-c{width:95px;height:95px}.radar-cross{position:absolute;background:color-mix(in srgb,color-mix(in srgb,var(--lilac) 70%,var(--soft-lilac)) 14.51%,transparent)}.horizontal{width:290px;height:1px;top:50%}.vertical{height:290px;width:1px;left:50%}.radar-sweep{inset:10px;background:conic-gradient(from 28deg,transparent 0deg,color-mix(in srgb,color-mix(in srgb,var(--lilac) 90%,var(--muted-purple)) 20.78%,transparent) 58deg,color-mix(in srgb,color-mix(in srgb,var(--lilac) 70%,var(--soft-lilac)) 37.65%,transparent) 60deg,transparent 61deg)}.radar-center,.radar-sweep{position:absolute;border-radius:50%}.radar-center{top:calc(50% - 4px);left:calc(50% - 4px);width:8px;height:8px;background:color-mix(in srgb,var(--lilac) 50%,var(--soft-lilac));box-shadow:0 0 0 7px color-mix(in srgb,color-mix(in srgb,var(--lilac) 70%,var(--soft-lilac)) 12.55%,transparent)}.radar-location{position:absolute;left:51%;top:56%;display:flex;align-items:center;gap:4px;font-size:8px;color:color-mix(in srgb,var(--lilac) 20%,var(--soft-lilac));white-space:nowrap}.map-road{position:absolute;background:color-mix(in srgb,color-mix(in srgb,var(--ink) 40%,#fff) 9.41%,transparent);width:360px;height:3px;top:40%;left:-70px;transform:rotate(-32deg)}.road-two{top:60%;transform:rotate(48deg)}.weather-summary{position:absolute;left:26px;right:26px;bottom:45px;border:1px solid color-mix(in srgb,color-mix(in srgb,var(--lilac) 60%,var(--soft-lilac)) 16.47%,transparent);background:color-mix(in srgb,var(--ink) 93.33%,transparent);padding:17px;border-radius:9px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 22px color-mix(in srgb,color-mix(in srgb,var(--ink) 50%,#000) 18.82%,transparent)}.weather-icon{color:color-mix(in srgb,var(--lilac) 70%,var(--soft-lilac))}.weather-summary strong{font-weight:500;color:var(--soft-lilac);font-size:11px;display:block}.weather-summary small{color:color-mix(in srgb,var(--ink) 30%,#fff);font-size:9px;display:block;margin-top:4px}.project-copy{padding:28px}.project-meta{justify-content:space-between;gap:8px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.project-meta,.status{display:flex;font-size:var(--text-label)}.status{align-items:center;gap:6px;color:var(--muted-purple);letter-spacing:0;text-transform:none;white-space:nowrap}.concept .small-dot{background:transparent;border:1px solid color-mix(in srgb,var(--lilac) 60%,var(--muted-purple))}.project-title{margin:19px 0 14px;display:flex;justify-content:space-between;align-items:center;font-size:var(--text-project);letter-spacing:-1px;font-weight:500}.project-title svg{color:color-mix(in srgb,var(--ink) 40%,#fff)}.project-copy>p{font-size:var(--text-body);line-height:1.85;color:var(--muted);margin:0;max-width:440px}.project-link{display:flex;align-items:center;gap:12px;font-size:var(--text-label);font-weight:500;margin-top:25px}.project-footnote{font-size:var(--text-label);color:var(--muted);margin-top:26px;padding-block:3px}.about-section{border-top:1px solid color-mix(in srgb,var(--ink) 8.24%,transparent);display:grid;grid-template-columns:1fr 1fr;grid-gap:70px;gap:70px;padding-block:79px 84px}.about-title .section-title{font-size:var(--text-display)}.about-signature{display:flex;align-items:center;gap:16px;color:var(--muted-purple);font-family:Hiragino Mincho ProN,Yu Mincho,"Noto Serif JP",serif;font-size:var(--text-project);margin-top:35px}.about-copy{padding-top:28px}.about-copy p{font-size:var(--text-body);line-height:1.85;color:var(--muted);margin:0 0 18px}.about-copy .about-lead{font-size:var(--text-lead);font-weight:500;color:var(--ink);letter-spacing:-.4px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:var(--text-label);margin-top:8px;font-weight:500}.contact-section{padding-bottom:70px}.contact-panel{display:flex;align-items:center;justify-content:space-between;padding:55px 60px;background:var(--soft-lilac);border-radius:16px;position:relative;overflow:hidden}.contact-panel .section-title{font-size:var(--text-display);letter-spacing:-2px}.contact-panel .section-title span{color:color-mix(in srgb,var(--lilac) 50%,var(--muted-purple))}.contact-panel p:not(.eyebrow){font-size:var(--text-body);color:var(--muted);line-height:1.8;margin:20px 0 27px}.contact-art{width:260px;height:260px;display:flex;align-items:center;justify-content:center;position:relative;color:color-mix(in srgb,var(--lilac) 50%,var(--muted-purple))}.contact-orbit{width:190px;height:190px;border-radius:50%;border:1px solid color-mix(in srgb,color-mix(in srgb,var(--ink) 40%,#fff) 32.55%,transparent);position:absolute}.contact-orbit:before{inset:-27px;border:1px solid color-mix(in srgb,color-mix(in srgb,var(--ink) 40%,#fff) 15.69%,transparent)}.contact-orbit:after,.contact-orbit:before{content:"";position:absolute;border-radius:50%}.contact-orbit:after{width:9px;height:9px;background:color-mix(in srgb,var(--ink) 40%,#fff);top:25px;left:17px;box-shadow:0 0 0 5px var(--soft-lilac)}.site-footer{border-top:1px solid color-mix(in srgb,var(--ink) 8.24%,transparent);padding-block:29px;display:flex;align-items:center;justify-content:space-between}.site-footer .wordmark{font-size:var(--text-lead)}.site-footer>span{font-size:var(--text-label);color:var(--muted)}.site-footer>a:last-child{display:flex;gap:7px;align-items:center;font-size:var(--text-label)}.skip-link{position:fixed;top:8px;left:8px;padding:12px;background:var(--ink);color:#fff;z-index:10;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}@media (min-width:1400px){.hero-art{right:0}}@media (max-width:1000px){.page{width:calc(100% - 64px)}.hero-art{width:420px;right:-30px;transform:scale(.87);transform-origin:right center}.hero-copy{width:65%}.hero-heading{font-size:clamp(var(--text-display),6.5vw,var(--text-hero));letter-spacing:-4px}.hero-description{max-width:390px}.desktop-break{display:none}.project-meta{flex-direction:column;gap:9px}.project-copy{padding:24px}.figure-window{width:86%;left:7%}.contact-panel{padding:45px 35px}.contact-art{width:210px}.about-section{gap:40px}}@media (max-width:720px){.page{width:calc(100% - 40px)}.site-header{height:82px;position:relative;z-index:5}.wordmark{font-size:var(--text-lead)}.brand-symbol{width:36px;height:36px;font-size:27px}.menu-toggle{display:grid;place-items:center;background:transparent;border:1px solid color-mix(in srgb,var(--ink) 13.33%,transparent);padding:9px;border-radius:8px;color:var(--ink)}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:24px;border:1px solid color-mix(in srgb,var(--ink) 10%,#fff);border-radius:12px;box-shadow:0 10px 25px color-mix(in srgb,var(--ink) 6.27%,transparent)}.nav-links.is-open{display:flex;align-items:flex-start;flex-direction:column;gap:23px}.hero{padding-top:48px}.hero-copy{width:100%}.eyebrow{font-size:var(--text-label);letter-spacing:1.4px;margin-bottom:23px}.hero-heading{font-size:clamp(var(--text-display),10.9vw,var(--text-hero));letter-spacing:-2.8px}.hero-description{font-size:var(--text-body);margin-block:24px;max-width:420px}.hero-bottom{display:none}.projects-section{padding-block:51px 55px}.section-heading{display:block;margin-bottom:27px}.section-title{font-size:var(--text-heading);letter-spacing:-1.3px}.projects-grid{grid-template-columns:1fr;gap:25px}.project-meta{flex-direction:row;font-size:var(--text-label);letter-spacing:.6px}.project-visual{height:290px}.project-copy{padding:24px}.project-copy>p{font-size:var(--text-body)}.project-title{font-size:var(--text-project)}.visual-corner{left:22px}.figure-window{width:83%;left:10%}.radar-art{right:9px}.weather-summary{left:20px;right:20px;padding:15px}.weather-summary small{font-size:8px}.about-section{grid-template-columns:1fr;gap:20px;padding-block:51px 52px}.about-title .section-title{font-size:var(--text-heading)}.about-signature{margin-top:23px}.about-copy{padding:0}.about-copy .about-lead{font-size:var(--text-lead)}.contact-section{padding-bottom:44px}.contact-panel{padding:33px 25px 39px}.contact-panel .section-title{font-size:var(--text-heading);letter-spacing:-1.5px}.contact-art{display:none}.contact-panel .button{font-size:var(--text-label);gap:17px;padding-inline:18px}.site-footer{flex-wrap:wrap;gap:22px;padding-block:24px}.site-footer>span{order:3;width:100%;font-size:var(--text-label)}.site-footer .wordmark{font-size:var(--text-lead)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important}}main{overflow-x:clip}.contact-secondary{display:flex;width:-moz-fit-content;width:fit-content;margin-top:20px}@media (max-width:720px){.hero-art{display:none}}