@charset "UTF-8";*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}ul,ol{list-style:none}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}a{color:inherit;text-decoration:none}table{border-collapse:collapse;border-spacing:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}:root,[data-theme=dark]{--kuro-black:#1a1b2e;--kuro-dark:#22243a;--kuro-gray-900:#2b2d42;--kuro-gray-800:#3a3d56;--kuro-gray-700:#4e5168;--kuro-gray-600:#6b6e84;--kuro-gray-500:#8d99ae;--kuro-gray-400:#a4aec0;--kuro-gray-300:#c5ccda;--kuro-white:#edf2f4;--kuro-accent:#ef233c;--kuro-accent-deep:#d80032}[data-theme=light]{--kuro-black:#edf2f4;--kuro-dark:#e2e8ec;--kuro-gray-900:#d5dce0;--kuro-gray-800:#c0c9cf;--kuro-gray-700:#8d99ae;--kuro-gray-600:#6b6e84;--kuro-gray-500:#4e5168;--kuro-gray-400:#3a3d56;--kuro-gray-300:#2b2d42;--kuro-white:#1a1b2e;--kuro-accent:#d80032;--kuro-accent-deep:#ef233c}:root{--fs-xs:0.75rem;--fs-sm:0.875rem;--fs-base:1rem;--fs-md:1.125rem;--fs-lg:1.25rem;--fs-xl:1.563rem;--fs-2xl:1.953rem;--fs-3xl:3.5rem;--sp-1:0.5rem;--sp-2:1rem;--sp-3:1.5rem;--sp-4:2rem;--sp-5:2.5rem;--sp-6:3rem;--sp-7:4rem;--sp-8:4rem;--sp-9:6rem;--sp-10:8rem;--grid-max:1200px;--grid-gutter:1.5rem;--radius:0}body{font-family:space grotesk,system-ui,sans-serif;font-size:var(--fs-base);line-height:1.5;color:var(--kuro-white);background-color:var(--kuro-black);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{line-height:1.15}h1{font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.02em}h2{font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em}h3{font-size:var(--fs-xl);font-weight:500}h4,h5,h6{text-transform:uppercase;letter-spacing:.08em;font-weight:500;color:var(--kuro-gray-400)}h4{font-size:var(--fs-base)}h5{font-size:var(--fs-sm)}h6{font-size:var(--fs-xs)}a{color:var(--kuro-accent);text-decoration:none;transition:color .2s}a:hover{text-decoration:underline}.prose,.legal__content{max-width:70ch;line-height:1.7}.prose p,.legal__content p{margin-bottom:var(--sp-3)}.prose p+p,.legal__content p+p{margin-top:var(--sp-2)}.prose h2,.legal__content h2,.prose h3,.legal__content h3,.prose h4,.legal__content h4,.prose h5,.legal__content h5,.prose h6,.legal__content h6{margin-top:var(--sp-6);margin-bottom:var(--sp-3)}.prose blockquote,.legal__content blockquote{border-left:3px solid var(--kuro-accent);padding-left:var(--sp-3);color:var(--kuro-gray-300);margin:var(--sp-4)0;font-style:italic}.prose ul,.legal__content ul,.prose ol,.legal__content ol{margin:var(--sp-3)0;padding-left:var(--sp-4)}.prose ul,.legal__content ul{list-style:disc}.prose ol,.legal__content ol{list-style:decimal}.prose li,.legal__content li{margin-bottom:var(--sp-1)}.prose li+li,.legal__content li+li{margin-top:var(--sp-1)}.prose a,.legal__content a{color:var(--kuro-accent);text-decoration:none}.prose a:hover,.legal__content a:hover{text-decoration:underline}.prose img,.legal__content img{margin:var(--sp-5)0}.prose hr,.legal__content hr{border:none;border-top:1px solid var(--kuro-gray-800);margin:var(--sp-6)0}.prose table,.legal__content table{width:100%;margin:var(--sp-4)0;font-size:var(--fs-sm)}.prose table th,.legal__content table th,.prose table td,.legal__content table td{padding:var(--sp-2)var(--sp-3);text-align:left;border-bottom:1px solid var(--kuro-gray-800)}.prose table th,.legal__content table th{color:var(--kuro-gray-400);font-weight:500;text-transform:uppercase;letter-spacing:.05em;font-size:var(--fs-xs)}.container{max-width:var(--grid-max);margin:0 auto;padding:0 var(--sp-8)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--grid-gutter)}.grid-asymmetric{display:grid;grid-template-columns:7fr 5fr;gap:var(--sp-7)}.section{padding:var(--sp-9)0 0}.section+.section{border-top:1px solid var(--kuro-gray-800)}.fade-up{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1)}.fade-up.is-visible{opacity:1;transform:translateY(0)}main{animation:page-in .4s ease both}@keyframes page-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.error-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;text-align:center;padding:var(--sp-8)}.error-page__code{font-family:jetbrains mono,monospace;font-size:clamp(6rem,20vw,12rem);font-weight:600;line-height:1;color:var(--kuro-gray-800);letter-spacing:-.04em}.error-page__message{margin-top:var(--sp-4);font-size:var(--fs-lg);color:var(--kuro-gray-400)}.error-page__link{margin-top:var(--sp-6);font-size:var(--fs-base);color:var(--kuro-accent);text-decoration:none;transition:color .2s}.error-page__link:hover{color:var(--kuro-accent-deep);text-decoration:underline}.nav{position:fixed;top:0;left:0;right:0;z-index:100;background-color:var(--kuro-black);border-bottom:1px solid var(--kuro-gray-800)}.nav__inner{display:flex;align-items:center;justify-content:space-between;height:60px}.nav__logo{font-family:space grotesk,system-ui,sans-serif;font-weight:500;font-size:var(--fs-sm);letter-spacing:.05em;text-transform:uppercase;color:var(--kuro-white)}.nav__logo:hover{text-decoration:none;color:var(--kuro-white)}.nav__links{display:flex;align-items:center;gap:var(--sp-5)}.nav__link{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-400);transition:color .2s;padding-bottom:2px;border-bottom:2px solid transparent}.nav__link:hover{color:var(--kuro-white);text-decoration:none;border-bottom-color:var(--kuro-accent)}.nav__link--active{color:var(--kuro-white);border-bottom-color:var(--kuro-accent)}.nav__toggle{display:none;background:0 0;border:none;cursor:pointer;padding:var(--sp-1);width:32px;height:32px;position:relative}.nav__toggle span{display:block;width:20px;height:2px;background-color:var(--kuro-white);position:absolute;left:6px;transition:transform .3s ease,opacity .3s ease}.nav__toggle span:nth-child(1){top:8px}.nav__toggle span:nth-child(2){top:15px}.nav__toggle span:nth-child(3){top:22px}.nav__toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px)rotate(45deg)}.nav__toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav__toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav__mobile{position:fixed;top:60px;left:0;right:0;bottom:0;background-color:var(--kuro-black);z-index:99;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-6);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.nav__mobile.is-open{opacity:1;visibility:visible}body.nav-open{overflow:hidden}.nav__mobile-inner{display:flex;flex-direction:column;align-items:center;gap:var(--sp-6)}.nav__mobile-link{font-size:var(--fs-xl);color:var(--kuro-gray-400);text-transform:uppercase;letter-spacing:.1em;transition:color .2s}.nav__mobile-link:hover{color:var(--kuro-white);text-decoration:none}.theme-toggle{background:0 0;border:1px solid var(--kuro-gray-700);cursor:pointer;padding:4px 8px;font-size:var(--fs-sm);line-height:1;color:var(--kuro-gray-400);transition:color .2s,border-color .2s}.theme-toggle:hover{color:var(--kuro-white);border-color:var(--kuro-gray-500)}.theme-toggle__icon--light{display:none}[data-theme=light] .theme-toggle__icon--dark{display:none}[data-theme=light] .theme-toggle__icon--light{display:inline}.theme-toggle--mobile{margin-top:var(--sp-4);font-size:var(--fs-base);padding:8px 16px}body{padding-top:60px}.footer{background-color:var(--kuro-dark);border-top:1px solid var(--kuro-gray-800);padding:var(--sp-9)0 var(--sp-8)}.footer__cta{padding-bottom:var(--sp-7);margin-bottom:var(--sp-7);border-bottom:1px solid var(--kuro-gray-800)}.footer__cta-text{font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-2)}.footer__cta-link{font-size:var(--fs-lg);color:var(--kuro-accent);text-decoration:none}.footer__cta-link:hover{text-decoration:underline}.footer__inner{display:flex;justify-content:space-between;align-items:baseline}.footer__copyright{font-size:var(--fs-xs);color:var(--kuro-gray-500);text-transform:uppercase;letter-spacing:.05em}.footer__email{font-size:var(--fs-xs);color:var(--kuro-gray-500)}.footer__email a{font-size:var(--fs-xs);color:var(--kuro-gray-400);letter-spacing:.02em;transition:color .2s}.footer__email a:hover{color:var(--kuro-white);text-decoration:none}.footer__center{display:flex;gap:var(--sp-1);align-items:baseline}.footer__link{font-size:var(--fs-xs);color:var(--kuro-gray-500);text-transform:uppercase;letter-spacing:.08em;transition:color .2s}.footer__link:hover{color:var(--kuro-white);text-decoration:none}.footer__sep{font-size:var(--fs-xs);color:var(--kuro-gray-700)}.footer__right{display:flex;gap:var(--sp-4)}.footer__right a{font-size:var(--fs-xs);color:var(--kuro-gray-400);text-transform:uppercase;letter-spacing:.08em;transition:color .2s}.footer__right a:hover{color:var(--kuro-white);text-decoration:none}@media(max-width:768px){.footer__inner{flex-direction:column;gap:var(--sp-3);align-items:flex-start}.footer__cta-text{font-size:var(--fs-xl)}}.hero{padding-top:var(--sp-10);padding-bottom:var(--sp-9);border-bottom:1px solid var(--kuro-gray-900)}.hero__kicker{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.2em;color:var(--kuro-accent);font-weight:500;margin-bottom:var(--sp-4)}.hero__headline{font-size:clamp(2rem,5vw,var(--fs-3xl));font-weight:600;color:var(--kuro-white);letter-spacing:-.03em;line-height:1.1;max-width:800px;min-height:2.2em}.hero__cursor{display:inline-block;width:0;border-right:3px solid var(--kuro-accent);margin-left:3px;vertical-align:text-bottom;height:1em}.hero__cursor--blink{animation:cursorBlink .7s step-end infinite}.hero__cursor--hidden{animation:none;border-color:transparent}@keyframes cursorBlink{0%,100%{border-color:var(--kuro-accent)}50%{border-color:transparent}}.hero__pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4);margin-top:var(--sp-8);padding-top:var(--sp-6);border-top:1px solid var(--kuro-gray-800)}.hero__pillar{display:flex;flex-direction:column;gap:var(--sp-2);padding-left:var(--sp-3);border-left:2px solid var(--kuro-gray-800);transition:border-color .6s ease}.hero__pillar.is-active{border-left-color:var(--kuro-accent)}.hero__pillar.is-active .hero__pillar-num{color:var(--kuro-accent);text-shadow:0 0 20px rgba(239,35,60,.3)}.hero__pillar.is-active .hero__pillar-label{color:var(--kuro-white)}.hero__pillar-num{font-family:jetbrains mono,monospace;font-size:var(--fs-xs);color:var(--kuro-gray-600);transition:color .6s ease,text-shadow .6s ease}.hero__pillar-label{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-500);font-weight:500;line-height:1.3;transition:color .6s ease}.home-projects .section__title{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-500);margin-bottom:var(--sp-5)}.home-project{padding:var(--sp-6)0;border-top:1px solid var(--kuro-gray-800)}.home-project__name{font-size:var(--fs-xl);font-weight:500;color:var(--kuro-white)}.home-project__desc{font-size:var(--fs-sm);color:var(--kuro-gray-400);margin-top:var(--sp-2)}.home-project__tech{font-size:var(--fs-xs);color:var(--kuro-gray-500);margin-top:var(--sp-3)}.home-blog .section__title{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-500);margin-bottom:var(--sp-5)}.home-blog-item{display:grid;grid-template-columns:56px 1fr;gap:0 var(--sp-7);padding:var(--sp-3)0;border-top:1px solid var(--kuro-gray-900)}.home-blog-item__date{font-size:var(--fs-xs);font-family:jetbrains mono,monospace;color:var(--kuro-gray-600);padding-top:2px}.home-blog-item__title{font-size:var(--fs-base);font-weight:500;color:var(--kuro-white);transition:color .2s}.home-blog-item__title a{color:inherit;text-decoration:none}.home-blog-item__title a:hover{color:var(--kuro-accent)}.home-blog-item__desc{font-size:var(--fs-sm);color:var(--kuro-gray-500);margin-top:var(--sp-1);line-height:1.5}.sketch--compact{padding:var(--sp-5)0}.sketch--compact .sketch__tags{margin-top:var(--sp-3)}.section__link{display:inline-block;margin-top:var(--sp-5);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-accent);font-weight:500;transition:color .2s}.section__link:hover{color:var(--kuro-white);text-decoration:none}.accent{color:var(--kuro-accent)}.section__intro{font-size:var(--fs-sm);color:var(--kuro-gray-500);max-width:50ch;margin-top:var(--sp-3);line-height:1.6}.filter{display:flex;gap:0;margin-top:var(--sp-5);border-bottom:1px solid var(--kuro-gray-800)}.filter__btn{font-family:jetbrains mono,monospace;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;padding:var(--sp-2)var(--sp-3);color:var(--kuro-gray-500);background:0 0;border:none;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.filter__btn:hover{color:var(--kuro-white)}.filter__btn--active{color:var(--kuro-white);border-bottom-color:var(--kuro-accent)}.sketch--hidden{display:none!important}.sketches{counter-reset:sketch}.sketch{display:grid;grid-template-columns:56px 1fr;gap:0 var(--sp-7);padding:var(--sp-7)0;position:relative;transition:background .3s}.sketch:not(:first-child){border-top:1px solid var(--kuro-gray-800)}.sketch:hover .sketch__num{color:var(--kuro-accent)}.sketch:hover .sketch__line{transform:scaleY(1)}.sketch:hover .sketch__title::after{opacity:1}.sketch:hover .sketch__block:first-child{border-top-color:var(--kuro-accent)}.sketch:hover .sketch__tags span:first-child{color:var(--kuro-white);border-color:var(--kuro-gray-600)}.sketch:last-child{padding-bottom:var(--sp-9)}.sketch__num-wrap{position:relative;display:flex;flex-direction:column;align-items:flex-start}.sketch__line{position:absolute;left:0;top:0;width:2px;height:100%;background:var(--kuro-accent);transform:scaleY(0);transform-origin:top;transition:transform .4s cubic-bezier(.22,1,.36,1)}.sketch__num{font-family:jetbrains mono,monospace;font-size:var(--fs-3xl);font-weight:500;color:var(--kuro-gray-800);line-height:1;letter-spacing:-.04em;user-select:none;padding-left:var(--sp-3);transition:color .3s}.sketch__body{min-width:0}.sketch__title{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;color:var(--kuro-white);line-height:1.2}.sketch__title::after{content:'.';color:var(--kuro-accent);opacity:0;transition:opacity .3s}.sketch__desc{font-size:var(--fs-sm);color:var(--kuro-gray-400);line-height:1.65;margin-top:var(--sp-2);max-width:65ch}.sketch__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-1)var(--sp-6);margin-top:var(--sp-5)}.sketch__block{padding:var(--sp-2)0;border-top:1px solid var(--kuro-gray-900)}.sketch__block:first-child{border-top-color:var(--kuro-gray-900);border-top-width:2px;transition:border-top-color .3s}.sketch__label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--kuro-gray-600);margin-bottom:var(--sp-1);font-weight:500}.sketch__value{font-size:var(--fs-sm);color:var(--kuro-gray-300);line-height:1.5}.sketch__tags{display:flex;flex-wrap:wrap;gap:6px}.sketch__tags span{font-size:.7rem;font-family:jetbrains mono,monospace;color:var(--kuro-gray-400);border:1px solid var(--kuro-gray-800);padding:3px 10px;letter-spacing:.02em;transition:color .2s,border-color .2s,background .2s}.sketch__tags span:hover{color:var(--kuro-accent);border-color:var(--kuro-accent);background:rgba(239,35,60,6%)}.sketch__tags span:first-child{transition:color .3s,border-color .3s}.sketch__block:last-child .sketch__value{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-500)}.case-study__back{display:inline-block;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-500);margin-bottom:var(--sp-5);transition:color .2s}.case-study__back:hover{color:var(--kuro-white);text-decoration:none}.case-study__title{font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-5)}.case-study__meta{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-4);margin-bottom:var(--sp-7);border-top:1px solid var(--kuro-gray-800);border-bottom:1px solid var(--kuro-gray-800);padding:var(--sp-4)0}.case-study__meta-item{display:flex;flex-direction:column;gap:var(--sp-1)}.case-study__label{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-600);font-weight:500}.case-study__value{font-size:var(--fs-sm);color:var(--kuro-gray-300)}.case-study__tech{margin-bottom:var(--sp-6)}.case-study__tech-list{font-size:var(--fs-sm);color:var(--kuro-gray-400);font-family:jetbrains mono,monospace}.case-study__highlights{margin-bottom:var(--sp-6)}.case-study__highlights h2{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-500);margin-bottom:var(--sp-3)}.case-study__highlights ul{list-style:none;padding:0}.case-study__highlights li{font-size:var(--fs-sm);color:var(--kuro-gray-300);padding:var(--sp-1)0;padding-left:var(--sp-3);border-left:2px solid var(--kuro-gray-800);margin-bottom:var(--sp-1)}.case-study__links{display:flex;gap:var(--sp-4);margin-top:var(--sp-6);padding-top:var(--sp-4);border-top:1px solid var(--kuro-gray-800)}.case-study__link{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--kuro-accent);font-weight:500}.case-study__link:hover{text-decoration:none;color:var(--kuro-white)}@media(max-width:768px){.sketch{grid-template-columns:1fr;gap:var(--sp-2)}.sketch__num{font-size:var(--fs-2xl);padding-left:var(--sp-3)}.sketch__line{height:2px;width:40px;transform:scaleX(0);transform-origin:left}.sketch:hover .sketch__line{transform:scaleX(1)}.sketch__grid{grid-template-columns:1fr}.case-study__meta{grid-template-columns:1fr}}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.post-cell{border-top:1px solid var(--kuro-gray-800);border-right:1px solid var(--kuro-gray-800)}.post-cell:nth-child(3n){border-right:none}.post-cell__link{display:block;padding:var(--sp-5)var(--sp-4);height:100%;color:inherit;text-decoration:none;transition:background .2s}.post-cell__link:hover{background:var(--kuro-gray-900);text-decoration:none}.post-cell__link:hover .post-cell__title{color:var(--kuro-accent)}.post-cell__date{display:block;font-size:.65rem;font-family:jetbrains mono,monospace;color:var(--kuro-gray-600);letter-spacing:.05em;margin-bottom:var(--sp-2)}.post-cell__title{font-size:var(--fs-base);font-weight:500;color:var(--kuro-white);line-height:1.35;transition:color .2s}.post-cell__desc{font-size:var(--fs-sm);color:var(--kuro-gray-500);margin-top:var(--sp-2);line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.post-cell__cat{display:inline-block;font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-600);margin-top:var(--sp-3)}@media(max-width:768px){.post-grid{grid-template-columns:1fr 1fr}.post-cell:nth-child(3n){border-right:1px solid var(--kuro-gray-800)}.post-cell:nth-child(2n){border-right:none}}@media(max-width:480px){.post-grid{grid-template-columns:1fr}.post-cell{border-right:none!important}}.blog-single{padding-top:var(--sp-7);padding-bottom:var(--sp-9)}.blog-single__header{margin-bottom:var(--sp-6)}.blog-single__date{display:block;font-size:var(--fs-xs);font-family:jetbrains mono,monospace;color:var(--kuro-gray-600);letter-spacing:.05em;margin-bottom:var(--sp-3)}.blog-single__title{font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.02em;line-height:1.1;margin-bottom:var(--sp-4)}.blog-single__categories{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.blog-single__category{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-500);text-decoration:none}.blog-single__category:hover{color:var(--kuro-accent);text-decoration:none}.blog-single__footer{margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:1px solid var(--kuro-gray-800)}.blog-single__tags{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.blog-single__tag{font-size:var(--fs-xs);font-family:jetbrains mono,monospace;color:var(--kuro-gray-500);text-decoration:none;transition:color .2s}.blog-single__tag:hover{color:var(--kuro-accent);text-decoration:none}.breadcrumbs{font-size:var(--fs-xs);font-family:jetbrains mono,monospace;color:var(--kuro-gray-600);margin-bottom:var(--sp-5);letter-spacing:.02em}.breadcrumbs__link{color:var(--kuro-gray-500);text-decoration:none}.breadcrumbs__link:hover{color:var(--kuro-accent);text-decoration:none}.breadcrumbs__sep{margin:0 var(--sp-1);color:var(--kuro-gray-700)}.breadcrumbs__current{color:var(--kuro-gray-400)}.related{margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:1px solid var(--kuro-gray-800)}.related__title{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-500);margin-bottom:var(--sp-3)}.related__list{list-style:none;padding:0;margin:0}.related__item{display:flex;align-items:baseline;gap:var(--sp-3);padding:var(--sp-1)0}.related__date{font-size:var(--fs-xs);font-family:jetbrains mono,monospace;color:var(--kuro-gray-600);flex-shrink:0}.related__link{font-size:var(--fs-sm);color:var(--kuro-gray-300);text-decoration:none}.related__link:hover{color:var(--kuro-accent);text-decoration:none}.post-nav{display:flex;justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:1px solid var(--kuro-gray-800)}.post-nav__link{display:flex;flex-direction:column;gap:var(--sp-1);text-decoration:none;max-width:45%}.post-nav__link:hover{text-decoration:none}.post-nav__link:hover .post-nav__title{color:var(--kuro-accent)}.post-nav__link--next{margin-left:auto;text-align:right}.post-nav__label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-600)}.post-nav__title{font-size:var(--fs-sm);color:var(--kuro-gray-400);transition:color .2s}.blog-pagination{display:flex;justify-content:space-between;margin-top:var(--sp-8);padding-top:var(--sp-5);border-top:1px solid var(--kuro-gray-800)}.blog-pagination a{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-400)}.blog-pagination a:hover{color:var(--kuro-white);text-decoration:none}@media(max-width:768px){.blog-single__title{font-size:var(--fs-2xl)}.post-nav{flex-direction:column}.post-nav__link{max-width:100%}.post-nav__link--next{text-align:left}}@media(max-width:480px){.blog-single__title{font-size:var(--fs-xl)}}.about-hero{padding:var(--sp-10)0 var(--sp-7)}.about-hero__label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--kuro-gray-500);margin-bottom:var(--sp-2)}.about-hero__name{font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.02em;line-height:1.1;margin-bottom:var(--sp-3)}.about-hero__tagline{font-size:var(--fs-lg);color:var(--kuro-gray-400);max-width:48ch;line-height:1.5}.about-approach{padding:var(--sp-7)0;border-top:1px solid var(--kuro-gray-800)}.about-approach__heading{font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-4)}.about-approach__text{font-size:var(--fs-md);line-height:1.7;color:var(--kuro-gray-300);max-width:65ch}.about-strengths{padding:var(--sp-7)0;border-top:1px solid var(--kuro-gray-800)}.about-strengths__heading{font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-5)}.about-strengths__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.about-strengths__card{padding:var(--sp-4);border:1px solid var(--kuro-gray-800);background-color:var(--kuro-dark)}.about-strengths__title{font-size:var(--fs-base);font-weight:600;margin-bottom:var(--sp-1);color:var(--kuro-white)}.about-strengths__desc{font-size:var(--fs-sm);color:var(--kuro-gray-400);line-height:1.5}.about-stack{padding:var(--sp-7)0;border-top:1px solid var(--kuro-gray-800)}.about-stack__heading{font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-5)}.about-stack__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)var(--sp-7)}.about-stack__category{margin-bottom:0}.about-stack__label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-500);font-weight:500;margin-bottom:var(--sp-1)}.about-stack__items{font-size:var(--fs-sm);color:var(--kuro-gray-300);line-height:1.6}.about-career{padding:var(--sp-7)0;border-top:1px solid var(--kuro-gray-800)}.about-career__heading{font-size:var(--fs-2xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-5)}.about-cta{padding:var(--sp-9)0;border-top:1px solid var(--kuro-gray-800)}.about-cta__heading{font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.02em;margin-bottom:var(--sp-3)}.about-cta__link{font-size:var(--fs-xl);color:var(--kuro-accent);text-decoration:none}.about-cta__link:hover{text-decoration:underline}@media(max-width:768px){.about-hero{padding:var(--sp-7)0 var(--sp-5)}.about-hero__name{font-size:2rem}.about-strengths__grid{grid-template-columns:1fr}.about-stack__grid{grid-template-columns:1fr;gap:var(--sp-4)}.about-cta__heading{font-size:var(--fs-2xl)}}@media(max-width:480px){.about-hero__name{font-size:1.75rem}.about-cta{padding:var(--sp-7)0}}.contact-hero{padding:var(--sp-10)0 var(--sp-6)}.contact-hero__title{font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.02em}.contact-hero__desc{font-size:var(--fs-md);color:var(--kuro-gray-400);margin-top:var(--sp-2);max-width:45ch}.contact-grid{display:grid;grid-template-columns:7fr 4fr;gap:var(--sp-9);align-items:start}.contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.contact-form__group{margin-bottom:var(--sp-4)}.contact-form__label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--kuro-gray-500);font-weight:500;margin-bottom:var(--sp-1)}.contact-form__optional{font-weight:400;text-transform:none;letter-spacing:0;color:var(--kuro-gray-600)}.contact-form__input,.contact-form__select,.contact-form__textarea{width:100%;padding:12px 16px;font-family:space grotesk,system-ui,sans-serif;font-size:var(--fs-sm);color:var(--kuro-white);background:var(--kuro-dark);border:1px solid var(--kuro-gray-800);outline:none;transition:border-color .2s}.contact-form__input::placeholder,.contact-form__select::placeholder,.contact-form__textarea::placeholder{color:var(--kuro-gray-600)}.contact-form__input:focus,.contact-form__select:focus,.contact-form__textarea:focus{border-color:var(--kuro-accent)}.contact-form__select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b6e84' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.contact-form__select option{background:var(--kuro-dark);color:var(--kuro-white)}.contact-form__textarea{resize:vertical;min-height:140px;line-height:1.6}.contact-form__footer{display:flex;align-items:center;gap:var(--sp-4);margin-top:var(--sp-2)}.contact-form__submit{padding:14px 32px;font-family:space grotesk,system-ui,sans-serif;font-size:var(--fs-sm);font-weight:600;letter-spacing:.02em;color:var(--kuro-black);background:var(--kuro-accent);border:none;cursor:pointer;transition:background .2s,transform .1s}.contact-form__submit:hover{background:var(--kuro-accent-deep)}.contact-form__submit:active{transform:scale(.98)}.contact-form__submit:disabled{opacity:.6;cursor:not-allowed}.contact-form__hint{font-size:var(--fs-xs);color:var(--kuro-gray-600)}.contact-form__success{padding:var(--sp-9)0;text-align:center}.contact-form__success-title{font-size:var(--fs-2xl);font-weight:600;color:var(--kuro-white)}.contact-form__success-text{font-size:var(--fs-sm);color:var(--kuro-gray-400);margin-top:var(--sp-2)}.contact-sidebar__block{padding:var(--sp-4)0;border-top:1px solid var(--kuro-gray-800)}.contact-sidebar__block:first-child{border-top:2px solid var(--kuro-accent)}.contact-sidebar__label{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--kuro-gray-600);font-weight:500;margin-bottom:var(--sp-1)}.contact-sidebar__link{font-size:var(--fs-base);color:var(--kuro-accent);font-weight:500}.contact-sidebar__link:hover{text-decoration:none;color:var(--kuro-white)}.contact-sidebar__value{font-size:var(--fs-sm);color:var(--kuro-gray-300)}.contact-sidebar__value--available{color:var(--kuro-accent);font-weight:500}.contact-sidebar__sub{font-size:var(--fs-xs);color:var(--kuro-gray-500);margin-top:2px}.contact-sidebar__links{display:flex;gap:var(--sp-3)}.contact-sidebar__profile{font-size:var(--fs-sm);color:var(--kuro-gray-400);font-weight:500;transition:color .2s}.contact-sidebar__profile:hover{color:var(--kuro-white);text-decoration:none}.contact-sidebar__tags{display:flex;flex-wrap:wrap;gap:6px}.contact-sidebar__tags span{font-size:.7rem;font-family:jetbrains mono,monospace;color:var(--kuro-gray-500);border:1px solid var(--kuro-gray-800);padding:3px 10px;letter-spacing:.02em}@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:var(--sp-7)}.contact-form__row{grid-template-columns:1fr}.contact-form__footer{flex-direction:column;align-items:flex-start}.contact-form__submit{width:100%;text-align:center}}.legal{padding:var(--sp-9)0}.legal__nav{display:flex;gap:var(--sp-4);margin-bottom:var(--sp-6)}.legal__nav a{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--kuro-gray-500);transition:color .2s}.legal__nav a:hover{color:var(--kuro-white);text-decoration:none}.legal__nav a.is-active{color:var(--kuro-white);border-bottom:2px solid var(--kuro-accent);padding-bottom:2px}.snippets{display:flex;flex-direction:column;gap:var(--sp-7)}.snip{border:1px solid var(--kuro-gray-800)}.snip__bar{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3)var(--sp-4);border-bottom:1px solid var(--kuro-gray-800);gap:var(--sp-4)}.snip__info{display:flex;align-items:baseline;gap:var(--sp-3);min-width:0}.snip__title{font-size:var(--fs-sm);font-weight:600;color:var(--kuro-white);white-space:nowrap}.snip__tags{display:flex;gap:var(--sp-2)}.snip__tags span{font-size:.65rem;font-family:jetbrains mono,monospace;color:var(--kuro-gray-600);letter-spacing:.02em}.snip__tabs{display:flex;gap:0;flex-shrink:0}.snip__tab{font-family:jetbrains mono,monospace;font-size:.7rem;letter-spacing:.04em;padding:6px 14px;color:var(--kuro-gray-500);background:0 0;border:none;border-left:1px solid var(--kuro-gray-800);cursor:pointer;transition:color .15s,background .15s}.snip__tab:first-child{border-left:none}.snip__tab:hover{color:var(--kuro-white);background:var(--kuro-gray-900)}.snip__tab--active{color:var(--kuro-white);background:var(--kuro-gray-900);box-shadow:inset 0 -2px 0 var(--kuro-accent)}.snip__tab--preview{color:var(--kuro-accent)}.snip__tab--preview:hover{color:var(--kuro-accent)}.snip__tab--preview.snip__tab--active{color:var(--kuro-accent);box-shadow:inset 0 -2px 0 var(--kuro-accent)}.snip__body{position:relative}.snip__panel{display:none}.snip__panel--active{display:block}.snip__code-wrap{position:relative}.snip__copy{position:absolute;top:var(--sp-2);right:var(--sp-2);font-family:jetbrains mono,monospace;font-size:.65rem;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;color:var(--kuro-gray-500);background:var(--kuro-gray-900);border:1px solid var(--kuro-gray-700);cursor:pointer;transition:color .15s,border-color .15s;z-index:2}.snip__copy:hover{color:var(--kuro-white);border-color:var(--kuro-gray-500)}.snip__code{background:var(--kuro-dark);padding:var(--sp-4);padding-right:var(--sp-8);margin:0;font-family:jetbrains mono,monospace;font-size:.8rem;line-height:1.65;color:var(--kuro-gray-300);overflow-x:auto;tab-size:2;-moz-tab-size:2}.snip__code code{font-family:inherit;font-size:inherit;background:0 0;padding:0}.snip__iframe{width:100%;min-height:280px;border:none;display:block;background:#fff}@media(max-width:768px){.snip__bar{flex-direction:column;align-items:flex-start;gap:var(--sp-2)}.snip__tabs{width:100%}.snip__tab{flex:1;text-align:center;border-left:none;border-top:1px solid var(--kuro-gray-800)}}.highlight{background-color:var(--kuro-gray-900);border-left:2px solid var(--kuro-accent);padding:var(--sp-4);overflow-x:auto;margin:var(--sp-4)0}.highlight pre{margin:0;font-family:jetbrains mono,monospace;font-size:var(--fs-sm);line-height:1.6;background:0 0}.highlight code{background:0 0;padding:0;font-size:inherit;color:inherit}code{background-color:var(--kuro-gray-900);padding:2px 6px;font-size:var(--fs-sm);font-family:jetbrains mono,monospace;color:var(--kuro-gray-300)}pre code{background:0 0;padding:0}.chroma{color:var(--kuro-gray-300);background-color:var(--kuro-gray-900)}.chroma .ln{color:var(--kuro-gray-600)}.chroma .lnt{color:var(--kuro-gray-600)}.chroma .hl{background-color:var(--kuro-gray-800);display:block}.chroma .k,.chroma .kc,.chroma .kd,.chroma .kn,.chroma .kp,.chroma .kr{color:var(--kuro-accent)}.chroma .kt{color:var(--kuro-accent)}.chroma .s,.chroma .sa,.chroma .sb,.chroma .sc,.chroma .sd,.chroma .se,.chroma .sh,.chroma .si,.chroma .sx,.chroma .sr,.chroma .s1,.chroma .s2,.chroma .ss{color:var(--kuro-gray-300)}.chroma .c,.chroma .c1,.chroma .ch,.chroma .cm,.chroma .cp,.chroma .cpf,.chroma .cs{color:var(--kuro-gray-600);font-style:italic}.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:var(--kuro-gray-400)}.chroma .na{color:var(--kuro-gray-300)}.chroma .nb{color:var(--kuro-gray-300)}.chroma .nc{color:var(--kuro-white)}.chroma .nd{color:var(--kuro-accent)}.chroma .nf{color:var(--kuro-white)}.chroma .nn{color:var(--kuro-gray-300)}.chroma .o,.chroma .ow{color:var(--kuro-gray-400)}.chroma .p{color:var(--kuro-gray-400)}.chroma .gd{color:var(--kuro-accent)}.chroma .gi{color:var(--kuro-gray-300)}.chroma .ge{font-style:italic}.chroma .gs{font-weight:600}@media(max-width:1024px){.container{padding:0 var(--sp-5)}}@media(max-width:768px){.grid-asymmetric{grid-template-columns:1fr;gap:var(--sp-6)}.grid-2{grid-template-columns:1fr}.nav__links{display:none}.nav__toggle{display:block}.hero{padding-top:var(--sp-8);padding-bottom:var(--sp-7)}.hero__pillars{grid-template-columns:repeat(2,1fr)}.blog-item{grid-template-columns:80px 1fr;gap:var(--sp-3)}.case-study__title{font-size:var(--fs-2xl)}.footer__top,.footer__bottom{flex-direction:column;gap:var(--sp-3);align-items:flex-start}.work-card--featured{padding-left:var(--sp-3)}}@media(max-width:480px){.container{padding:0 var(--sp-3)}.hero__pillars{grid-template-columns:1fr;gap:var(--sp-3)}.blog-item{grid-template-columns:1fr;gap:var(--sp-1)}.blog-item__date{order:-1}.section{padding:var(--sp-7)0}.blog-single__title{font-size:var(--fs-xl)}.work-card__meta{flex-wrap:wrap;gap:var(--sp-2)}.snippets-grid{gap:var(--sp-3)}.snippet-card{padding:var(--sp-3)}}