@font-face{font-family:__Plus_Jakarta_Sans_646807;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Plus_Jakarta_Sans_646807;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Plus_Jakarta_Sans_646807;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Plus_Jakarta_Sans_646807;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Plus_Jakarta_Sans_Fallback_646807;src:local("Arial");ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.00%;size-adjust:104.98%}.__className_646807{font-family:__Plus_Jakarta_Sans_646807,__Plus_Jakarta_Sans_Fallback_646807;font-style:normal}.__variable_646807{--font-primary:"__Plus_Jakarta_Sans_646807","__Plus_Jakarta_Sans_Fallback_646807"}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Space_Grotesk_49a339;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Space_Grotesk_Fallback_49a339;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_49a339{font-family:__Space_Grotesk_49a339,__Space_Grotesk_Fallback_49a339;font-style:normal}.__variable_49a339{--font-secondary:"__Space_Grotesk_49a339","__Space_Grotesk_Fallback_49a339"}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__IBM_Plex_Mono_595324;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Mono_Fallback_595324;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_595324{font-family:__IBM_Plex_Mono_595324,__IBM_Plex_Mono_Fallback_595324;font-style:normal}.__variable_595324{--font-code:"__IBM_Plex_Mono_595324","__IBM_Plex_Mono_Fallback_595324"}:root{--mirai-cream:#f6f1e7;--mirai-cream-deep:#efe7d6;--mirai-paper:#fbf7ef;--mirai-ink:#1a1714;--mirai-ink-soft:#4a4036;--mirai-ink-faint:#837a6b;--mirai-terracotta:#c8502d;--mirai-terracotta-deep:#a53d1e;--mirai-amber:#e0913a;--mirai-amber-soft:#f0c27e;--mirai-teal:#2a3d45;--mirai-teal-soft:#5c727a;--mirai-line:#e4dac8;--mirai-line-strong:#d4c6ad;--ease-out:cubic-bezier(0.23,1,0.32,1);--ease-in-out:cubic-bezier(0.77,0,0.175,1)}[data-theme=light]{--page-background:var(--mirai-cream);--neutral-background-weak:var(--mirai-paper);--neutral-on-background-strong:var(--mirai-ink);--neutral-on-background-medium:var(--mirai-ink-soft);--neutral-on-background-weak:var(--mirai-ink-faint);--neutral-border-weak:var(--mirai-line);--neutral-border-medium:var(--mirai-line-strong);--brand-on-background-strong:var(--mirai-terracotta-deep);--brand-on-background-medium:var(--mirai-terracotta-deep);--brand-on-background-weak:var(--mirai-terracotta);--brand-alpha-weak:rgba(200,80,45,.07);--brand-alpha-medium:rgba(200,80,45,.16);--brand-alpha-strong:rgba(200,80,45,.32);--brand-border-weak:rgba(200,80,45,.22);--accent-on-background-weak:var(--mirai-amber);--accent-solid-strong:var(--mirai-amber)}body,html{background:var(--mirai-cream)}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading)}.mirai-mono{font-family:var(--font-family-code);font-feature-settings:"tnum" 1}.mirai-hl{color:var(--mirai-terracotta);font-style:italic}:focus-visible{outline:2px solid var(--mirai-terracotta);outline-offset:2px;border-radius:2px}::-moz-selection{background:var(--mirai-terracotta);color:#fff}::selection{background:var(--mirai-terracotta);color:#fff}a{text-decoration-color:var(--mirai-line-strong)!important}.panel{position:relative;display:flex;flex-direction:column;background:var(--mirai-paper);border:1px solid var(--mirai-line);border-radius:18px;padding:clamp(1.25rem,2.4vw,1.7rem);overflow:hidden}.panel-accent{background:var(--mirai-cream-deep)}.panel-label{font-family:var(--font-family-code);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mirai-ink-faint);display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1rem}.panel-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mirai-terracotta);flex:none}.bento{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:1rem;gap:1rem;width:100%}.bento .span-2{grid-column:span 2}.bento .span-3{grid-column:span 3}.bento .span-4{grid-column:span 4}.bento .span-6{grid-column:span 6}@media(max-width:900px){.bento{grid-template-columns:repeat(2,1fr)}.bento .span-2{grid-column:span 1}.bento .span-3,.bento .span-4,.bento .span-6{grid-column:span 2}}@media(max-width:560px){.bento{grid-template-columns:1fr}.bento .span-2,.bento .span-3,.bento .span-4,.bento .span-6{grid-column:span 1}}.readout-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.1rem 1rem;gap:1.1rem 1rem}.readout-v{font-family:var(--font-family-heading);font-weight:600;font-size:clamp(1.6rem,3vw,2.1rem);line-height:1;letter-spacing:-.02em;color:var(--mirai-ink)}.readout-l{font-family:var(--font-family-code);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mirai-ink-faint);margin-top:.4rem}.svc{display:flex;flex-direction:column;gap:.9rem}.svc-item{display:grid;grid-template-columns:auto 1fr;grid-gap:.7rem;gap:.7rem;align-items:baseline}.svc-item b{font-weight:600;color:var(--mirai-ink)}.svc-item span{color:var(--mirai-ink-soft);font-size:.92rem}.svc-num{font-family:var(--font-family-code);font-size:.7rem;color:var(--mirai-terracotta)}.reg{width:100%;border-top:1px solid var(--mirai-line-strong)}.reg-row{display:grid;grid-template-columns:2.2rem minmax(0,2.3fr) 1.25fr 1.2fr 3rem 2rem;grid-gap:1.1rem;gap:1.1rem;align-items:center;padding:1.05rem .6rem;border-bottom:1px solid var(--mirai-line);text-decoration:none;color:inherit;transition:background .2s var(--ease-out),padding .2s var(--ease-out)}.reg-head{font-family:var(--font-family-code);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mirai-ink-faint);padding-top:.7rem;padding-bottom:.7rem}a.reg-row:hover{background:var(--brand-alpha-weak);padding-left:1.1rem;padding-right:.1rem}.reg-idx{font-family:var(--font-family-code);font-size:.78rem;color:var(--mirai-terracotta)}.reg-title{font-family:var(--font-family-heading);font-weight:600;font-size:1.02rem;letter-spacing:-.015em;color:var(--mirai-ink)}.reg-c,.reg-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reg-c{font-size:.74rem;color:var(--mirai-ink-soft)}.reg-arrow,.reg-c{font-family:var(--font-family-code)}.reg-arrow{color:var(--mirai-terracotta);opacity:0;justify-self:end;transition:opacity .2s var(--ease-out)}a.reg-row:hover .reg-arrow{opacity:1}@media(max-width:760px){.reg-head{display:none}.reg-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.45rem .7rem;padding:1rem .3rem}a.reg-row:hover{padding-left:.3rem}.reg-title{flex:1 1 60%;font-size:1.1rem;white-space:normal}.reg-arrow{opacity:1;order:2}.reg-c{font-size:.68rem}.reg-company{display:none}.reg-idx{order:0}}.feat{transition:border-color .2s var(--ease-out)}.feat:hover{border-color:var(--mirai-line-strong)}@media(min-width:900px){.feat{grid-template-columns:1.12fr .88fr!important;align-items:stretch;gap:0!important}.feat>div:first-child{aspect-ratio:auto;min-height:380px}.feat>div:last-child{justify-content:center;padding:clamp(1.75rem,3vw,2.75rem)!important;border-left:1px solid var(--mirai-line)}}.about-grid{display:grid;grid-template-columns:1fr;grid-gap:2.5rem;gap:2.5rem}@media(min-width:900px){.about-grid{grid-template-columns:300px 1fr;gap:3.5rem;align-items:start}.about-aside{position:sticky;top:2rem}}.tl-item{position:relative;padding-left:1.85rem;padding-bottom:2.25rem;border-left:1px solid var(--mirai-line-strong)}.tl-item:last-child{padding-bottom:0}.tl-dot{position:absolute;left:-5px;top:.3rem;width:9px;height:9px;border-radius:50%;background:var(--mirai-terracotta);box-shadow:0 0 0 4px var(--mirai-cream)}.tl-meta{font-family:var(--font-family-code);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mirai-ink-faint)}.skill-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.9rem;gap:.9rem}@media(max-width:600px){.skill-grid{grid-template-columns:1fr}}.skill-cell{border:1px solid var(--mirai-line);border-radius:12px;padding:1rem;background:var(--mirai-paper)}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}