/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{background:var(--color-page);min-inline-size:20rem}body{background:var(--color-page);min-block-size:100vh;color:var(--color-text);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;line-height:1.5}:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}::selection{background:var(--color-violet-soft);color:var(--color-text)}}@layer components{.site-shell{background-image:linear-gradient(#a9abb809 1px,#0000 1px),linear-gradient(90deg,#a9abb809 1px,#0000 1px),radial-gradient(circle at 82% 18%,#5e4b8b33,#0000 32%);background-size:4rem 4rem,4rem 4rem,auto;min-block-size:100vh;position:relative;overflow:hidden}.site-shell:before{z-index:10;content:"";opacity:.035;pointer-events:none;background: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='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.site-shell:after{background:var(--color-violet-soft);content:"";filter:blur(6.25rem);opacity:.12;pointer-events:none;border-radius:50%;block-size:28.75rem;inline-size:28.75rem;position:absolute;inset-block-start:8.75rem;inset-inline-end:-10rem}.skip-link{z-index:100;background:var(--color-accent);color:var(--color-page);font:700 .75rem/1 var(--font-mono);transition:transform var(--transition);padding:.75rem 1rem;position:fixed;inset-block-start:1rem;inset-inline-start:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:2;border-block-end:1px solid var(--color-line);justify-content:space-between;align-items:center;block-size:5.75rem;display:flex;position:relative}.brand{font:700 1rem/1 var(--font-mono);letter-spacing:.05em;align-items:center;gap:.75rem;display:inline-flex}.brand__seal{background:var(--color-accent);block-size:2.1875rem;inline-size:2.1875rem;color:var(--color-text);font:700 1.0625rem/1 var(--font-serif);place-items:center;display:grid}.main-nav{font:600 .75rem/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:2.625rem;display:flex}.main-nav a{color:var(--color-muted);transition:color var(--transition), border-color var(--transition)}.main-nav a:hover{color:var(--color-text)}.main-nav a>span{color:var(--color-violet-soft);margin-inline-end:.4375rem}.main-nav .nav-contact{color:var(--color-text);border:1px solid #d4af3773;padding:.8125rem 1.0625rem}.main-nav .nav-contact span{color:var(--color-accent);margin-inline:0 .5625rem}.mobile-github{font:700 .75rem var(--font-mono);display:none}.hero{grid-template-columns:minmax(0,1.15fr) minmax(23.125rem,.65fr);align-items:center;gap:clamp(3.125rem,8vw,7.5rem);min-block-size:45rem;padding-block:4.625rem 5.75rem;display:grid;position:relative}.eyebrow{color:var(--color-muted);font:600 .6875rem/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:.625rem;display:flex}.status-dot{background:var(--color-accent);border-radius:50%;block-size:.4375rem;inline-size:.4375rem;box-shadow:0 0 0 .3125rem #d4af371a}.eyebrow__jp{color:var(--color-violet-soft);font-family:var(--font-serif);margin-inline-start:.5625rem;font-size:.8125rem}.hero h1{letter-spacing:-.075em;margin-block:1.6875rem 1.875rem;font-size:clamp(4rem,8vw,7.4rem);font-weight:700;line-height:.84}.hero h1>span{display:block}.hero__accent{color:var(--color-violet-soft);font-family:var(--font-serif);letter-spacing:-.065em;font-style:italic;font-weight:300}.hero__lead{max-inline-size:38.125rem;color:var(--color-muted);font-size:clamp(1.05rem,1.7vw,1.28rem);line-height:1.75}.hero__actions{gap:.75rem;margin-block-start:2.375rem;display:flex}.button{border:1px solid var(--color-line);font:700 .75rem/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:transform var(--transition), border-color var(--transition);justify-content:space-between;align-items:center;gap:2.375rem;padding:1rem 1.125rem;display:inline-flex}.button:hover{border-color:#d4af378c;transform:translateY(-.125rem)}.button--primary{border-color:var(--color-violet-soft);background:var(--color-violet);color:var(--color-text)}.button span{color:var(--color-accent)}.hero__meta{border-block-start:1px solid var(--color-line);grid-template-columns:repeat(3,1fr);gap:1.5625rem;max-inline-size:43.125rem;margin-block-start:3.5rem;padding-block-start:1.5rem;display:grid}.hero__meta div{flex-direction:column;gap:.5rem;display:flex}.hero__meta dt{color:var(--color-violet-soft);font:600 .5625rem/1 var(--font-mono);letter-spacing:.13em;text-transform:uppercase}.hero__meta dd{color:var(--color-muted);font-size:.75rem;font-weight:500}.hero__visual{padding-block-end:1.75rem;padding-inline-end:1.5625rem;position:relative}.portrait-frame{aspect-ratio:4/5;background:var(--color-surface);clip-path:polygon(0 0,calc(100% - 1.75rem) 0,100% 1.75rem,100% 100%,0 100%);border:1px solid #8a6fae8c;position:relative;overflow:hidden}.portrait-frame img{object-fit:cover;filter:saturate(.72)contrast(1.09);block-size:100%;inline-size:100%;transform:scale(1.02)}.portrait-frame__wash{background:linear-gradient(#2d2d370a,#2d2d3729 50%,#2d2d37f0),linear-gradient(90deg,#5e4b8b40,#0000);position:absolute;inset:0}.portrait-frame__top{color:var(--color-muted);font:600 .5625rem var(--font-mono);letter-spacing:.12em;justify-content:space-between;display:flex;position:absolute;inset-block-start:1.125rem;inset-inline:1.25rem}.portrait-frame__bottom{align-items:end;gap:.875rem;display:flex;position:absolute;inset-block-end:1.25rem;inset-inline:1.25rem}.portrait-frame__kanji{color:var(--color-accent);font:400 2.75rem/1 var(--font-serif)}.portrait-frame__bottom div{flex-direction:column;gap:.375rem;display:flex}.portrait-frame__bottom small{color:var(--color-muted);font:500 .5rem var(--font-mono);letter-spacing:.14em}.portrait-frame__bottom strong{font:700 .75rem var(--font-mono);letter-spacing:.08em}.vertical-note{color:var(--violet-soft);letter-spacing:.35em;writing-mode:vertical-rl;font:500 10px/1 serif;position:absolute;top:20px;right:-5px}.system-card{background:var(--color-accent);inline-size:9.6875rem;color:var(--color-page);grid-template-columns:1fr auto;gap:.375rem;padding:.875rem 1rem;display:grid;position:absolute;inset-block-end:0;inset-inline-end:0;box-shadow:0 1.125rem 2.5rem #14121c59}.system-card span{color:var(--color-violet);font:600 .5rem var(--font-mono)}.system-card strong{font:800 .75rem var(--font-mono);letter-spacing:.1em;grid-row:2}.system-card i{background:var(--color-violet);border-radius:50%;grid-area:1/2/3;align-self:center;block-size:.4375rem;inline-size:.4375rem}.manifesto{border-block:1px solid var(--color-line);background:#5e4b8b1f;padding-block:6.5625rem}.manifesto__grid{grid-template-columns:11.25rem 1fr;gap:3.75rem;display:grid}.section-tag{color:var(--color-muted);align-items:flex-start;gap:1.0625rem;display:flex}.section-tag>span{color:var(--color-accent);font:700 .625rem var(--font-mono)}.section-tag p{font:400 1.5625rem/1.3 var(--font-serif)}.section-tag small{color:var(--color-violet-soft);font:600 .5rem var(--font-mono);letter-spacing:.14em}.manifesto__statement{letter-spacing:-.045em;max-inline-size:57.5rem;font-size:clamp(2rem,4vw,3.8rem);font-weight:500;line-height:1.17}.manifesto__statement em{color:var(--color-violet-soft);font-family:var(--font-serif);font-weight:400}.manifesto__detail{border-block-start:1px solid var(--color-line);grid-template-columns:1fr 1fr;gap:3.4375rem;margin-block-start:3.5rem;padding-block-start:2.1875rem;display:grid}.manifesto__detail p{max-inline-size:30rem;color:var(--color-muted);font-size:.875rem;line-height:1.85}.expertise{padding-block:6.875rem 7.8125rem}.section-heading{justify-content:space-between;align-items:end;margin-block-end:2.8125rem;display:flex}.section-kicker{color:var(--color-accent);font:700 .5625rem var(--font-mono);letter-spacing:.15em}.section-heading h2{letter-spacing:-.05em;margin-block-start:.8125rem;font-size:clamp(2.5rem,4vw,4rem)}.section-heading>p{color:var(--color-violet-soft);font:400 1.0625rem/1.35 var(--font-serif);text-align:end}.section-heading>p span{font:500 .5625rem var(--font-mono);letter-spacing:.1em}.expertise__grid{border-block-start:1px solid var(--color-line);border-inline-start:1px solid var(--color-line);grid-template-columns:repeat(3,1fr);display:grid}.expertise-card{border-inline-end:1px solid var(--color-line);border-block-end:1px solid var(--color-line);min-block-size:24.375rem;transition:transform var(--transition), background-color var(--transition);background:#5e4b8b14;padding:1.75rem;position:relative}.expertise-card:hover{background:#5e4b8b38;transform:translateY(-.25rem)}.expertise-card__number{color:var(--color-accent);font:600 .5625rem var(--font-mono)}.expertise-card__jp{color:#8a6fae59;font:400 2.8125rem var(--font-serif);position:absolute;inset-block-start:1.3125rem;inset-inline-end:1.625rem}.expertise-card h3{margin-block:9.375rem .9375rem;font-size:1.3125rem}.expertise-card p{max-inline-size:19.375rem;color:var(--color-muted);font-size:.8125rem;line-height:1.75}.tech-list{flex-wrap:wrap;gap:.4375rem;margin-block-start:1.75rem;display:flex}.tech-list li{color:var(--color-muted);font:600 .5rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid #8a6fae66;padding:.4375rem .5625rem}.footer{border-block-start:1px solid var(--color-line);min-block-size:8.125rem;color:var(--color-muted);font:500 .625rem var(--font-mono);grid-template-columns:repeat(3,1fr);align-items:center;display:grid}.footer>p{text-align:center}.footer>nav{justify-content:flex-end;gap:1.375rem;display:flex}.footer a{transition:color var(--transition)}.footer a:hover{color:var(--color-accent)}.hero-reveal{animation:.7s cubic-bezier(.2,.8,.2,1) both rise}.hero-reveal--secondary{animation-delay:.12s}@keyframes rise{0%{opacity:0;transform:translateY(1.125rem)}}}@layer utilities{.invisible{visibility:hidden}.contents{display:contents}.wrap{inline-size:min(var(--content-width), calc(100% - (var(--page-gutter) * 2)));margin-inline:auto}.text-signal{color:var(--color-accent)}}@layer reset;@layer tokens{:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-page:#2d2d37;--color-surface:#35333f;--color-text:#f3f2f6;--color-muted:#a9abb8;--color-violet:#5e4b8b;--color-violet-soft:#8a6fae;--color-accent:#d4af37;--color-line:#a9abb82e;--font-sans:Inter, "Helvetica Neue", Arial, "Noto Sans JP", sans-serif;--font-serif:Georgia, "Times New Roman", serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--content-width:77.5rem;--page-gutter:1.5rem;--transition:.22s ease}}@media (max-width:56.25rem){@layer components{.main-nav{display:none}.mobile-github{display:block}.hero{grid-template-columns:1fr;gap:3.75rem;min-block-size:auto;padding-block:4.375rem}.hero__visual{justify-self:center;inline-size:min(100%,28.75rem)}.manifesto__grid{grid-template-columns:1fr;gap:2.625rem}.manifesto__detail{gap:1.875rem}.expertise__grid{grid-template-columns:1fr}.expertise-card{min-block-size:20rem}.expertise-card h3{margin-block-start:6.25rem}.footer{grid-template-columns:1fr auto}.footer>p{display:none}}}@media (max-width:35rem){@layer tokens{:root{--page-gutter:.875rem}}@layer components{.site-header{block-size:4.75rem}.hero{padding-block:3.4375rem}.hero h1{font-size:clamp(3.55rem,17vw,5.2rem)}.eyebrow__jp{display:none}.hero__lead{font-size:1rem}.hero__actions{flex-direction:column}.button{inline-size:100%}.hero__meta{grid-template-columns:1fr 1fr}.hero__meta div:last-child{display:none}.hero__visual{padding-inline-end:.9375rem}.vertical-note{display:none}.manifesto{padding-block:4.6875rem}.manifesto__detail{grid-template-columns:1fr}.section-heading>p{display:none}.expertise{padding-block:5rem}.footer>nav a{display:none}}}@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}}
