@import "https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;600;700&display=swap";
:root{--background-base:#080a0c;--background-raised:#0d1014;--background-hover:#12161b;--text-primary:#f2f4f5;--text-secondary:#a7adb4;--text-muted:#6f7780;--accent-primary:#78dcca;--font-japanese:"Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;--font-mono:"Geist Mono", "SFMono-Regular", Consolas, monospace;--container-max:76rem;--page-gutter:clamp(1.25rem, 4vw, 4rem);--section-space:clamp(6rem, 15vw, 12rem)}*{box-sizing:border-box}html{background:var(--background-base);scroll-behavior:smooth}body{background:var(--background-base);min-width:20rem;color:var(--text-primary);font-family:var(--font-japanese);margin:0;font-size:clamp(.9375rem,.9rem + .15vw,1rem);line-height:1.8;overflow-x:hidden}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--accent-primary);outline-offset:4px}.page-container{z-index:1;width:min(100%, var(--container-max));padding-inline:var(--page-gutter);margin-inline:auto;position:relative}.background-effects{z-index:0;pointer-events:none;background-image:linear-gradient(90deg,#a7adb40e 1px,#0000 1px),linear-gradient(#a7adb40b 1px,#0000 1px);background-size:clamp(3rem,8vw,7.5rem) clamp(3rem,8vw,7.5rem);position:fixed;inset:0}.background-effects:after{content:"";opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");position:absolute;inset:0}.site-header{z-index:2;border-bottom:1px solid #a7adb429;position:relative}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.site-name,.site-navigation,.section-label,.site-footer{font-family:var(--font-mono)}.site-name{color:var(--text-primary);letter-spacing:.08em;flex:none;font-size:.75rem;font-weight:500}.site-navigation{flex-wrap:wrap;justify-content:flex-end;gap:clamp(.75rem,2.5vw,1.5rem);margin:0;padding:0;list-style:none;display:flex}.site-navigation a{min-height:2.75rem;color:var(--text-secondary);letter-spacing:.06em;align-items:center;padding-block:.5rem;font-size:.6875rem;transition:color .16s;display:flex}.site-navigation a:hover{color:var(--accent-primary)}.site-section{min-height:min(26rem,56vw);padding-block:var(--section-space);border-bottom:1px solid #a7adb429;scroll-margin-top:1.5rem;position:relative}.section-label{color:var(--text-muted);letter-spacing:.1em;gap:.75rem;margin:0 0 1.25rem;font-size:.6875rem;display:flex}.section-label span{color:var(--accent-primary)}h1,h2{max-width:16ch;color:var(--text-primary);font-family:var(--font-japanese);letter-spacing:-.04em;margin:0;font-size:clamp(2rem,5vw,4.5rem);font-weight:500;line-height:1.2}h2{color:var(--text-secondary);font-size:clamp(1.5rem,3vw,2.5rem)}.hero{flex-direction:column;justify-content:center;min-height:clamp(30rem,78svh,52rem);display:flex;overflow:hidden}.hero__title{max-width:none;font-size:clamp(2.5rem,6vw,5.5rem)}.hero__lead{max-width:34rem;color:var(--text-primary);margin:clamp(1.75rem,3vw,2.5rem) 0 0;font-size:clamp(1.0625rem,1rem + .45vw,1.375rem);font-weight:500;line-height:1.8}.line-break--mobile{display:none}.hero__description{max-width:36rem;color:var(--text-secondary);margin:1.25rem 0 0;font-size:clamp(.875rem,.825rem + .2vw,1rem);line-height:1.9}.hero__actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin-top:clamp(2rem,5vw,3.5rem);display:flex}.action-link{min-height:2.75rem;font-family:var(--font-mono);letter-spacing:.06em;align-items:center;gap:.65rem;font-size:.75rem;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.action-link--primary{color:var(--accent-primary);border:1px solid #78dcca80;padding-inline:1rem}.action-link--primary:hover{border-color:var(--accent-primary);background:#78dcca14}.action-link--text{color:var(--text-secondary)}.action-link--text:hover{color:var(--text-primary)}.hero__meta{width:min(100%,42rem);font-family:var(--font-mono);border-top:1px solid #a7adb433;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:clamp(3.5rem,9vw,7rem) 0 0;padding-top:1rem;display:grid}.hero__meta div{gap:.25rem;display:grid}.hero__meta dt,.hero__meta dd{letter-spacing:.08em;margin:0;font-size:.625rem}.hero__meta dt{color:var(--text-muted)}.hero__meta dd{color:var(--text-secondary)}.hero:after{z-index:-1;content:"";opacity:.7;background:repeating-linear-gradient(#0000 0 6px,#78dcca0e 7px,#0000 8px);height:40%;animation:18s linear infinite scan-drift;position:absolute;top:25%;left:0;right:-10%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 20% 75%,#0000);mask-image:linear-gradient(90deg,#0000,#000 20% 75%,#0000)}.statement{min-height:clamp(30rem,52vw,44rem)}.statement__grid{grid-template-columns:minmax(0,1.25fr) minmax(15rem,.75fr);align-items:start;gap:clamp(3rem,9vw,10rem);display:grid}.statement h2{max-width:13ch;color:var(--text-primary);font-size:clamp(2rem,4.2vw,4rem)}.statement__body{max-width:28rem;color:var(--text-secondary);padding-top:.35rem;font-size:clamp(.9375rem,.9rem + .2vw,1.0625rem);line-height:1.9}.statement__body p{margin:0}.statement__body p+p{margin-top:1.75rem}.projects{min-height:auto}.projects__intro{max-width:48rem}.projects__intro h2{color:var(--text-primary);font-size:clamp(2rem,4vw,3.5rem)}.projects__lead{max-width:38rem;color:var(--text-secondary);margin:1.5rem 0 0;font-size:clamp(.9375rem,.9rem + .2vw,1.0625rem);line-height:1.9}.project-feature{border-top:1px solid #78dcca5c;grid-template-columns:minmax(0,1.15fr) minmax(19rem,.85fr);gap:clamp(2.5rem,6vw,6rem);margin-top:clamp(3.5rem,9vw,8rem);padding-top:clamp(1rem,2vw,1.5rem);display:grid}.project-feature__preview{aspect-ratio:1.15;background:linear-gradient(135deg, #78dcca0d, transparent 38%), var(--background-raised);border:1px solid #a7adb42e;flex-direction:column;justify-content:space-between;min-height:25rem;padding:clamp(1.25rem,3vw,2.25rem);transition:background-color .18s,border-color .18s,transform .18s;display:flex;position:relative;overflow:hidden}.project-feature__preview:before,.project-feature__preview:after{content:"";pointer-events:none;position:absolute}.project-feature__preview:before{z-index:0;background:linear-gradient(90deg,#0000 49.75%,#a7adb41a 50%,#0000 50.25%),linear-gradient(#0000 49.75%,#a7adb41a 50%,#0000 50.25%);border:1px solid #78dcca33;inset:16% 11%}.project-feature__preview:after{z-index:0;aspect-ratio:1;background:#080a0c6b;border:1px solid #a7adb41f;width:34%;bottom:16%;right:11%}.project-feature:hover .project-feature__preview{background-color:var(--background-hover);border-color:#78dcca6b;transform:scale(1.01)}.project-feature:hover .project-feature__preview-device{border-color:#78dcca7a;transform:translate(-50%,-50%)scale(1.01)}.project-feature__preview-meta,.project-feature__preview-name,.project-feature__preview>p,.project-number,.project-tags,.project-status{z-index:1;font-family:var(--font-mono);letter-spacing:.08em;position:relative}.project-feature__preview-device{z-index:1;aspect-ratio:780/1688;background:var(--background-base);border:1px solid #f2f4f538;max-width:60%;height:min(80%,29rem);transition:border-color .18s,transform .18s;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.project-feature__preview-image{object-fit:contain;object-position:center top;width:100%;height:100%;display:block}.project-feature__preview-meta{color:var(--text-muted);justify-content:space-between;gap:1rem;font-size:.625rem;display:flex}.project-feature__preview-name{z-index:2;color:var(--accent-primary);align-self:flex-start;gap:.5rem;display:grid;position:absolute;bottom:clamp(2.75rem,6vw,4rem);left:clamp(1.25rem,3vw,2.25rem)}.project-feature__preview-name span{font-size:.6875rem}.project-feature__preview-name strong{color:var(--text-primary);letter-spacing:-.06em;font-size:clamp(1.25rem,2.3vw,2rem);font-weight:400;line-height:1}.project-feature__preview>p{color:var(--text-secondary);margin:0;font-size:.625rem}.project-feature__content{align-self:end;padding-bottom:clamp(0rem,2vw,1.5rem)}.project-feature__heading{align-items:baseline;gap:1rem;display:flex}.project-number{color:var(--accent-primary);margin:0;font-size:.75rem}.project-feature h3{color:var(--text-primary);font-family:var(--font-japanese);letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,3.75rem);font-weight:500;line-height:1.1}.project-positioning{color:var(--accent-primary);margin:1.25rem 0 0;font-size:clamp(1rem,.95rem + .3vw,1.25rem);font-weight:500;line-height:1.6}.project-feature__body{max-width:35rem;color:var(--text-secondary);margin-top:2rem;font-size:clamp(.875rem,.85rem + .2vw,1rem);line-height:1.95}.project-feature__body p{margin:0}.project-feature__body p+p{margin-top:1.25rem}.project-feature__meta{border-top:1px solid #a7adb429;gap:1rem;margin-top:2rem;padding-top:1.25rem;display:grid}.project-tags{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.project-tags li,.project-status{color:var(--text-secondary);font-size:.625rem;line-height:1.6}.project-tags li{border:1px solid #a7adb433;padding:.35rem .5rem}.project-status{flex-wrap:wrap;gap:.65rem;margin:0;display:flex}.project-status span{color:var(--accent-primary)}.project-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,4vw,4rem);margin-top:clamp(4rem,9vw,8rem);display:grid}.project-secondary{border-top:1px solid #a7adb433;align-content:start;gap:2rem;padding-top:1rem;display:grid}.project-secondary__preview{background:var(--background-raised);border:1px solid #a7adb42e;min-height:clamp(18rem,31vw,27rem);padding:clamp(1.25rem,2.5vw,2rem);transition:background-color .18s,border-color .18s;position:relative;overflow:hidden}.project-secondary:hover .project-secondary__preview{background-color:var(--background-hover);border-color:#78dcca61}.preview-caption{z-index:2;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;gap:.75rem;font-size:.625rem;display:flex;position:relative}.preview-caption span{color:var(--accent-primary)}.project-secondary__preview--bi{background:linear-gradient(to right, #a7adb40f 1px, transparent 1px), linear-gradient(to bottom, #a7adb40d 1px, transparent 1px), var(--background-raised);background-size:3rem 3rem,3rem 3rem,auto}.bi-preview-image-frame{background:var(--background-base);border:1px solid #a7adb43d;position:absolute;inset:clamp(3.25rem,6vw,4.5rem) clamp(1.25rem,2.5vw,2rem) clamp(1.25rem,2.5vw,2rem);overflow:hidden}.bi-preview-image{object-fit:cover;object-position:center 48%;transition:transform .18s}.project-secondary:hover .bi-preview-image{transform:scale(1.01)}.bi-flow{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.05em;white-space:nowrap;grid-template-columns:repeat(7,max-content);justify-content:center;align-items:center;gap:clamp(.4rem,1vw,.8rem);font-size:clamp(.5625rem,.7vw,.6875rem);display:grid;overflow-x:auto}.bi-flow span{border:1px solid #a7adb43d;padding:.5rem .4rem}.bi-flow i{color:var(--accent-primary);font-style:normal}.bi-structure{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.08em;grid-template-columns:1.3fr .7fr;gap:.5rem;font-size:.625rem;display:grid}.bi-structure span{border:1px solid #a7adb42e;padding:.65rem .75rem}.bi-structure span:first-child{color:var(--accent-primary)}.project-secondary__preview--alligator{background:linear-gradient(145deg, #78dcca0f, transparent 44%), var(--background-raised)}.alligator-preview-stack{z-index:1;aspect-ratio:780/1688;position:absolute;top:clamp(3rem,5vw,3.75rem);bottom:clamp(1.25rem,2.5vw,2rem);left:50%;transform:translate(-50%)}.alligator-preview-stack:before,.alligator-preview-stack:after{content:"";pointer-events:none;border:1px solid #a7adb429;position:absolute;inset:0}.alligator-preview-stack:before{transform:rotate(-2deg)translate(-.45rem,.2rem)}.alligator-preview-stack:after{border-color:#78dcca29;transform:rotate(2deg)translate(.45rem,-.2rem)}.alligator-preview-image-frame{z-index:1;background:var(--background-base);border:1px solid #a7adb43d;width:100%;height:100%;position:relative;overflow:hidden}.alligator-preview-image{object-fit:contain;object-position:center;transition:transform .18s}.project-secondary:hover .alligator-preview-image{transform:scale(1.01)}.alligator-swipe-cue{z-index:2;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;pointer-events:none;justify-content:space-between;font-size:.5625rem;display:flex;position:absolute;top:57%;left:clamp(.75rem,1.8vw,1.25rem);right:clamp(.75rem,1.8vw,1.25rem)}.alligator-swipe-cue span:last-of-type{color:var(--accent-primary)}.alligator-swipe-cue p{color:var(--text-muted);margin:0;font-size:.5rem;position:absolute;top:calc(100% + 1.25rem);left:0}.swipe-cards{aspect-ratio:.66;place-self:center;width:min(78%,18rem);position:relative}.swipe-card{background:var(--background-raised);font-family:var(--font-mono);letter-spacing:.08em;border:1px solid #a7adb438;flex-direction:column;justify-content:space-between;padding:1rem;font-size:.625rem;transition:transform .18s,border-color .18s;display:flex;position:absolute;inset:0}.swipe-card--back{color:var(--text-muted);justify-content:flex-end;align-items:flex-end;transform:rotate(-4deg)translate(-.8rem,.6rem)}.swipe-card--front{color:var(--text-secondary);transform:rotate(3deg)translate(.35rem,-.25rem)}.swipe-card--front span{color:var(--accent-primary)}.swipe-card--front strong{color:var(--text-primary);letter-spacing:.04em;font-size:clamp(1rem,2vw,1.5rem);font-weight:400}.project-secondary--alligator:hover .swipe-card--back{transform:rotate(-5deg)translate(-1rem,.7rem)}.project-secondary--alligator:hover .swipe-card--front{border-color:#78dcca66;transform:rotate(4deg)translate(.45rem,-.35rem)}.swipe-direction{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;justify-content:space-between;gap:1rem;margin:0;font-size:.625rem;display:flex}.swipe-direction span:last-child{color:var(--accent-primary)}.project-secondary__heading{align-items:baseline;gap:.75rem;display:flex}.project-secondary h3{color:var(--text-primary);font-family:var(--font-japanese);letter-spacing:-.04em;margin:0;font-size:clamp(1.5rem,2.5vw,2.5rem);font-weight:500;line-height:1.25}.project-secondary__body{max-width:34rem;color:var(--text-secondary);margin-top:1.5rem;font-size:clamp(.875rem,.85rem + .15vw,.9375rem);line-height:1.9}.project-secondary__body p{margin:0}.project-secondary__body p+p{margin-top:1rem}.project-secondary__meta{border-top:1px solid #a7adb429;gap:1rem;margin-top:1.75rem;padding-top:1.25rem;display:grid}.approach{min-height:auto}.approach__layout{grid-template-columns:minmax(16rem,.8fr) minmax(22rem,1.2fr);gap:clamp(3rem,9vw,9rem);margin-top:clamp(2rem,5vw,4.5rem);display:grid}.approach__intro{max-width:28rem}.approach__intro h2{max-width:13ch;color:var(--text-primary);font-size:clamp(2rem,4vw,3.5rem)}.approach__intro p{color:var(--text-secondary);margin:1.75rem 0 0;font-size:clamp(.9375rem,.9rem + .2vw,1.0625rem);line-height:1.95}.approach__steps{border-top:1px solid #a7adb433;margin:0;padding:0;list-style:none}.approach__step{border-bottom:1px solid #a7adb433;grid-template-columns:minmax(5rem,.3fr) minmax(0,1fr);gap:clamp(1.25rem,3vw,3rem);padding-block:clamp(1.75rem,3.5vw,3rem);display:grid;position:relative}.approach__step:not(:last-child):after{z-index:1;background:var(--background-base);color:var(--accent-primary);content:"↓";font-family:var(--font-mono);padding-left:.6rem;font-size:.75rem;position:absolute;bottom:-.72rem;right:0}.approach__step-meta{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;align-content:start;gap:.3rem;font-size:.625rem;display:grid}.approach__step-meta span{color:var(--accent-primary);font-size:.75rem}.approach__step h3{color:var(--text-primary);font-family:var(--font-japanese);letter-spacing:-.04em;margin:0;font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:500;line-height:1.3}.approach__step p{max-width:32rem;color:var(--text-secondary);margin:.75rem 0 0;font-size:clamp(.875rem,.85rem + .16vw,1rem);line-height:1.9}.approach[data-ready] .approach__intro,.approach[data-ready] .approach__step{opacity:0;transform:translateY(.5rem)}.approach[data-visible] .approach__intro,.approach[data-visible] .approach__step{animation:.5s cubic-bezier(.22,1,.36,1) both approach-reveal}.approach[data-visible] .approach__step:first-child{animation-delay:.1s}.approach[data-visible] .approach__step:nth-child(2){animation-delay:.18s}.approach[data-visible] .approach__step:nth-child(3){animation-delay:.26s}@keyframes approach-reveal{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.career{min-height:auto}.career__layout{grid-template-columns:minmax(16rem,.78fr) minmax(24rem,1.22fr);gap:clamp(3rem,9vw,9rem);margin-top:clamp(2rem,5vw,4.5rem);display:grid}.career__intro{max-width:29rem}.career__intro h2{max-width:12ch;color:var(--text-primary);font-size:clamp(2rem,4vw,3.5rem)}.career__intro-copy{color:var(--text-secondary);margin-top:1.75rem;font-size:clamp(.9375rem,.9rem + .2vw,1.0625rem);line-height:1.95}.career__intro-copy p{margin:0}.career__intro-copy p+p{margin-top:1.25rem}.career__current{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.08em;border-top:1px solid #a7adb433;gap:.35rem;margin:2.5rem 0 0;padding-top:1rem;font-size:.6875rem;display:grid}.career__current span{color:var(--accent-primary);font-size:.625rem}.career__stages{margin:0;padding:0;list-style:none;position:relative}.career__stages:before{content:"";background:#a7adb438;width:1px;position:absolute;top:.9rem;bottom:.9rem;left:.31rem}.career__stage{grid-template-columns:minmax(8rem,.34fr) minmax(0,1fr);gap:clamp(1.5rem,3vw,3.5rem);padding:0 0 clamp(2.75rem,5vw,4.5rem);display:grid;position:relative}.career__stage:last-child{padding-bottom:0}.career__stage-meta{z-index:1;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;align-content:start;gap:.35rem;font-size:.625rem;display:grid;position:relative}.career__stage-meta span{border:1px solid var(--accent-primary);background:var(--background-base);color:#0000;border-radius:50%;width:.68rem;height:.68rem;margin:0;font-size:0}.career__stage-meta strong{color:var(--accent-primary);font-size:.75rem;font-weight:400}.career__stage-meta em{color:var(--text-muted);font-style:normal}.career__stage:first-child .career__stage-meta span{background:var(--accent-primary)}.career__stage-content h3{color:var(--text-primary);font-family:var(--font-japanese);letter-spacing:-.04em;margin:0;font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:500;line-height:1.3}.career__stage-content p{max-width:34rem;color:var(--text-secondary);margin:.85rem 0 0;font-size:clamp(.875rem,.85rem + .16vw,1rem);line-height:1.9}.career__stage-content p+p{margin-top:.85rem}.career__closing{max-width:35rem;color:var(--text-primary);font-family:var(--font-japanese);letter-spacing:-.04em;border-top:1px solid #78dcca59;margin:clamp(4.5rem,10vw,9rem) 0 0;padding-top:clamp(2rem,5vw,4rem);font-size:clamp(1.5rem,3.3vw,2.75rem);font-weight:500;line-height:1.55}.career[data-ready] .career__intro,.career[data-ready] .career__stage,.career[data-ready] .career__closing{opacity:0;transform:translateY(.5rem)}.career[data-visible] .career__intro,.career[data-visible] .career__stage,.career[data-visible] .career__closing{animation:.5s cubic-bezier(.22,1,.36,1) both career-reveal}.career[data-visible] .career__stage:first-child{animation-delay:.1s}.career[data-visible] .career__stage:nth-child(2){animation-delay:.17s}.career[data-visible] .career__stage:nth-child(3){animation-delay:.24s}.career[data-visible] .career__stage:nth-child(4){animation-delay:.31s}.career[data-visible] .career__closing{animation-delay:.39s}@keyframes career-reveal{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.capabilities{min-height:auto}.capabilities__intro{max-width:42rem}.capabilities__intro h2{max-width:none;color:var(--text-primary);font-size:clamp(2rem,4vw,3.5rem)}.capabilities__intro>p:last-child{max-width:39rem;color:var(--text-secondary);margin:1.5rem 0 0;font-size:clamp(.9375rem,.9rem + .2vw,1.0625rem);line-height:1.95}.capabilities__list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(2rem,7vw,7rem);margin:clamp(3.5rem,7vw,6rem) 0 0;padding:0;list-style:none;display:grid}.capabilities__item{border-top:1px solid #a7adb433;min-width:0;padding-block:clamp(1.75rem,3vw,2.75rem)}.capabilities__item:nth-last-child(-n+2){border-bottom:1px solid #a7adb433}.capabilities__number{color:var(--accent-primary);font-family:var(--font-mono);letter-spacing:.08em;margin:0;font-size:.75rem}.capabilities__item h3{color:var(--text-primary);font-family:var(--font-mono);letter-spacing:.02em;overflow-wrap:anywhere;margin:.75rem 0 0;font-size:clamp(.875rem,.82rem + .3vw,1.125rem);font-weight:400;line-height:1.45}.capabilities__item>p:last-child{max-width:29rem;color:var(--text-secondary);margin:1rem 0 0;font-size:clamp(.875rem,.85rem + .16vw,1rem);line-height:1.9}.capabilities[data-ready] .capabilities__intro,.capabilities[data-ready] .capabilities__item{opacity:0;transform:translateY(.5rem)}.capabilities[data-visible] .capabilities__intro,.capabilities[data-visible] .capabilities__item{animation:.48s cubic-bezier(.22,1,.36,1) both capabilities-reveal}.capabilities[data-visible] .capabilities__item:first-child{animation-delay:80ms}.capabilities[data-visible] .capabilities__item:nth-child(2){animation-delay:.13s}.capabilities[data-visible] .capabilities__item:nth-child(3){animation-delay:.18s}.capabilities[data-visible] .capabilities__item:nth-child(4){animation-delay:.23s}.capabilities[data-visible] .capabilities__item:nth-child(5){animation-delay:.28s}.capabilities[data-visible] .capabilities__item:nth-child(6){animation-delay:.33s}@keyframes capabilities-reveal{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.contact{min-height:auto;padding-block:clamp(7rem,14vw,12rem)}.contact__content{grid-template-columns:minmax(16rem,1.1fr) minmax(14rem,.9fr);align-items:end;gap:clamp(3rem,12vw,12rem);display:grid}.contact__intro{max-width:38rem}.contact__intro h2{max-width:none;color:var(--text-primary);font-size:clamp(2.5rem,5vw,4.5rem)}.contact__intro>p:last-child{max-width:34rem;color:var(--text-secondary);margin:1.5rem 0 0;font-size:clamp(.9375rem,.9rem + .2vw,1.0625rem);line-height:1.95}.contact__aside{align-content:end;align-self:stretch;display:grid}.contact__status{color:var(--accent-primary);font-family:var(--font-mono);letter-spacing:.08em;border-top:1px solid #78dcca59;margin:0;padding-top:1rem;font-size:.625rem}.contact__links{margin-top:1.25rem}.contact__links ul{margin:0;padding:0;list-style:none}.contact__links li{border-top:1px solid #a7adb433}.contact__links li:last-child{border-bottom:1px solid #a7adb433}.contact__links a{min-height:3.75rem;color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.04em;overflow-wrap:anywhere;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem 1rem;padding-block:.75rem;font-size:.8125rem;transition:color .16s;display:grid}.contact__links small{color:var(--text-muted);letter-spacing:.02em;overflow-wrap:anywhere;grid-column:1;font-size:.625rem}.contact__links b{color:var(--accent-primary);grid-area:1/2/span 2;font-size:.875rem;font-weight:400;transition:transform .16s}.contact__links a:hover{color:var(--text-primary);text-underline-offset:.25rem;-webkit-text-decoration:underline #78dcca80;text-decoration:underline #78dcca80}.contact__links a:hover b{transform:translate(.15rem,-.15rem)}.reveal{animation:.56s cubic-bezier(.22,1,.36,1) both reveal-up}.reveal--1{animation-delay:80ms}.reveal--2{animation-delay:.14s}.reveal--3{animation-delay:.22s}.reveal--4{animation-delay:.3s}.reveal--5{animation-delay:.38s}.reveal--6{animation-delay:.46s}@keyframes reveal-up{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.site-footer{z-index:1;color:var(--text-muted);letter-spacing:.08em;padding-block:clamp(2rem,5vw,3.5rem);font-size:.6875rem;position:relative}.site-footer__inner{gap:.35rem;display:grid}.site-footer p{margin:0}.site-footer__name{color:var(--text-primary);font-weight:500}.site-footer__note{color:var(--text-secondary);letter-spacing:.03em;margin-top:.75rem!important}@keyframes scan-drift{0%{transform:translateY(0)}to{transform:translateY(1.25rem)}}@media (max-width:48rem){.career__layout{grid-template-columns:minmax(13rem,.68fr) minmax(0,1.32fr);gap:2.5rem}.career__stage{grid-template-columns:minmax(6.5rem,.3fr) minmax(0,1fr);gap:1.5rem}.capabilities__list{column-gap:2rem}.contact__content{gap:3rem}}@media (max-width:36rem){.site-header__inner{flex-direction:column;justify-content:center;align-items:flex-start;padding-block:1rem}.site-navigation{justify-content:flex-start}.site-section{min-height:18rem}.hero{min-height:auto;padding-block:clamp(8rem,28vw,11rem)}.hero__meta{grid-template-columns:1fr;gap:.75rem}.statement{min-height:auto}.statement__grid{grid-template-columns:1fr;gap:2rem}.statement h2{max-width:14ch}.project-feature{grid-template-columns:1fr;gap:2rem;margin-top:3rem}.project-feature__preview{aspect-ratio:1/.9;min-height:19rem}.project-feature__content{padding-bottom:0}.project-secondary-grid{grid-template-columns:1fr;gap:3.5rem;margin-top:4rem}.project-secondary__preview{min-height:20rem}.project-secondary__preview--bi,.project-secondary__preview--alligator{min-height:23rem}.bi-flow{justify-content:start}.approach__layout{grid-template-columns:1fr;gap:3rem}.approach__intro{max-width:34rem}.approach__step{grid-template-columns:minmax(4rem,.24fr) minmax(0,1fr);gap:1rem}.career__layout{grid-template-columns:1fr;gap:3.5rem}.career__intro{max-width:34rem}.career__stage{grid-template-columns:minmax(6rem,.28fr) minmax(0,1fr);gap:1rem}.capabilities__list{grid-template-columns:1fr}.capabilities__item:nth-last-child(-n+2){border-bottom:0}.capabilities__item:last-child{border-bottom:1px solid #a7adb433}.contact{padding-block:clamp(5rem,20vw,8rem)}.contact__content{grid-template-columns:1fr;gap:2.5rem}.contact__aside{align-self:auto}.statement__body br,.line-break--desktop{display:none}.line-break--mobile{display:block}.hero:after{opacity:.45}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
