@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Syne:wght@500;600;700;800&display=swap";.intro-overlay{position:fixed;inset:0;z-index:120;overflow:hidden;background:transparent;isolation:isolate;pointer-events:none}.intro-stage{position:absolute;inset:0;will-change:transform;background:transparent}.intro-seal{position:absolute;inset:0;z-index:0;background:radial-gradient(110% 70% at 50% 0%,rgba(64,224,160,.06),transparent 55%),radial-gradient(120% 90% at 72% 8%,rgba(30,36,46,.5),transparent 62%),linear-gradient(165deg,#0b0e0c,#070908 55%,#050706)}.intro-term{position:absolute;inset:0;background:radial-gradient(110% 70% at 50% 0%,rgba(64,224,160,.06),transparent 55%),radial-gradient(120% 90% at 72% 8%,rgba(30,36,46,.5),transparent 62%),linear-gradient(165deg,#0b0e0c,#070908 55%,#050706);color:#9aa39d;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.intro-term-scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.022) 0 1px,transparent 1px 3px);pointer-events:none}.intro-term-vignette{position:absolute;inset:0;background:radial-gradient(140% 120% at 50% 44%,transparent 55%,rgba(0,0,0,.6) 100%);pointer-events:none}.intro-term-inner{position:absolute;inset:0;padding:clamp(20px,5vw,56px);display:flex;flex-direction:column}.intro-term-top,.intro-term-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.14em;opacity:0}.intro-term-top{padding:10px 14px;margin:calc(clamp(20px,5vw,56px)*-1) calc(clamp(20px,5vw,56px)*-1) 0;background:#ffffff09;border-bottom:1px solid rgba(255,255,255,.07);color:#7d867f}.intro-term-brand{display:inline-flex;align-items:center;gap:7px}.intro-term-brand-name{margin-left:8px;color:#b9c1ba;letter-spacing:.08em}.intro-term-top-right{color:#5d665f;letter-spacing:.12em}.intro-dot{width:11px;height:11px;border-radius:9999px;display:inline-block;box-shadow:inset 0 0 2px #00000073}.intro-dot-r{background:#ff5f57}.intro-dot-y{background:#febc2e}.intro-dot-g{background:#28c840}.intro-term-bottom{margin-top:auto;padding-top:14px;font-size:10px;letter-spacing:.2em;color:#59615c;border-top:1px solid rgba(255,255,255,.06)}.intro-term-body{margin-top:clamp(24px,6vh,56px);max-width:720px;font-size:13.5px;line-height:1.75;letter-spacing:.01em}.intro-term-title{font-size:13.5px;color:#d7ddd6;opacity:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.term-user{color:#5eeaa0;font-weight:600}.term-sep{color:#5d665f;margin:0 1px}.term-path{color:#7db8ff}.term-dollar{color:#9aa39d;margin:0 8px 0 7px}.term-cmd{color:#ecefec}.intro-term-sub{margin-top:6px;font-size:11px;letter-spacing:.1em;color:#5d665f;opacity:0;transform:translateY(8px)}.intro-term-line{margin-top:14px;font-size:13px;letter-spacing:.01em;opacity:0;transform:translateY(8px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.intro-term-line .prompt{opacity:.85;margin-right:8px;font-size:12px}.intro-term-line .prompt .term-dollar{margin:0 0 0 5px}.intro-term-line .line-cmd{color:#e8ece8}.intro-term-line .line-out{display:block;margin:1px 0 0 2px;padding-left:14px;color:#6f7a72;font-size:12.5px;border-left:2px solid rgba(94,234,160,.22)}.intro-term-line .line-ok{color:#7fd6a4}.intro-term-line .line-dim{color:#6f7a72}.intro-term-line .line-warn{color:#e0b45c}.intro-term-line.is-ready{color:#dfe5ec;margin-top:24px}.intro-term-line.is-ready+.intro-term-line.is-ready{margin-top:12px}.ready-word{color:#c84d3d}.intro-term-status{margin-top:22px;display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.06em;opacity:0;transform:translateY(8px)}.term-status-label{color:#8b948d;white-space:nowrap}.term-status-label:after{content:" …";color:#5d665f}.intro-term-status-bar{position:relative;width:min(320px,40vw);height:1px;background:#8b93a138;overflow:hidden}.intro-term-status-fill{position:absolute;inset:0;background:linear-gradient(90deg,#2f9e68,#5eeaa0);box-shadow:0 0 10px #5eeaa059;transform:scaleX(0);transform-origin:left center}.intro-cursor{display:inline-block;width:8px;height:15px;margin-left:8px;vertical-align:-2px;background:#5eeaa0;animation:intro-blink 1.05s steps(1) infinite}@keyframes intro-blink{50%{opacity:0}}.intro-panel{position:absolute;inset:0;backface-visibility:hidden;will-change:transform,opacity}.intro-panel-a{clip-path:polygon(0 0,50.8% 0,51.4% 18%,50.2% 34%,51.6% 52%,50.3% 70%,51.3% 86%,50.8% 100%,0 100%);z-index:2}.intro-panel-b{clip-path:polygon(100% 0,50% 0,50.6% 18%,49.4% 34%,50.8% 52%,49.5% 70%,50.5% 86%,50% 100%,100% 100%);z-index:1}.intro-seam-frame,.intro-seam{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.intro-cracks,.intro-cracks path{display:none!important;opacity:0!important;visibility:hidden!important}.intro-flash,.intro-slash-flash,.intro-shockwave,.intro-spark{display:none!important;opacity:0!important}.intro-slash-flash-x{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.intro-shockwave-unused{display:none}.intro-shockwave-x-dead{position:absolute;left:50%;top:50%;width:12vmin;height:12vmin;margin-left:-6vmin;margin-top:-6vmin;z-index:4;pointer-events:none;border-radius:9999px;border:2px solid rgba(238,243,248,.85);box-shadow:0 0 24px #eef3f859,inset 0 0 18px #eef3f840;opacity:0;transform:scale(.2)}.intro-shards{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden}.intro-shard{position:absolute;left:50%;top:50%;opacity:0;background:linear-gradient(135deg,#20242cfa,#0c0e12d9);clip-path:polygon(50% 0,100% 55%,62% 100%,0 72%);box-shadow:0 0 6px #000c}.intro-shard-1{width:14px;height:18px}.intro-shard-2{width:9px;height:12px}.intro-shard-3{width:18px;height:11px}.intro-shard-4{width:7px;height:10px}.intro-shard-5{width:12px;height:15px}.intro-shard-6{width:20px;height:13px}.intro-shard-7{width:8px;height:8px}.intro-shard-8{width:15px;height:10px}.intro-shard-9{width:10px;height:14px}.intro-shard-10{width:6px;height:9px}.intro-shard-11{width:13px;height:13px}.intro-shard-12{width:9px;height:16px}.intro-shard-13{width:16px;height:9px}.intro-shard-14{width:7px;height:7px}.intro-spark{display:none}.intro-katana{--intro-katana-size: min(58vmin, 600px);position:absolute;z-index:5;left:50%;top:44%;width:var(--intro-katana-size);height:var(--intro-katana-size);margin-left:calc(var(--intro-katana-size) / -2);margin-top:calc(var(--intro-katana-size) / -2);aspect-ratio:1 / 1;pointer-events:none;will-change:transform,opacity;opacity:0;mix-blend-mode:screen}.intro-katana-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.intro-katana-ghost{opacity:0;will-change:transform,opacity}.intro-katana-ghost-1{filter:blur(2.4px) brightness(1.05)}.intro-katana-ghost-2{filter:blur(4.6px) brightness(1.02)}.intro-katana-ghost-3{display:none}.intro-katana-blade{z-index:1}@media(max-width:767px){.intro-katana{--intro-katana-size: min(94vw, 420px)}.intro-term-body{margin-top:clamp(20px,5vh,36px);font-size:12px}.intro-term-title{font-size:12px;white-space:normal}.intro-term-line{font-size:11.5px;white-space:normal}.intro-term-line .line-out{white-space:normal}.intro-term-status-bar{width:min(220px,52vw)}}@media(prefers-reduced-motion:reduce){.intro-cursor{animation:none}}.intro-shard-15{width:11px;height:17px}.intro-shard-16{width:19px;height:12px}.intro-shard-17{width:8px;height:11px}.intro-shard-18{width:14px;height:14px}.intro-shard-19{width:6px;height:12px}.intro-shard-20{width:17px;height:10px}.intro-shard-21{width:10px;height:10px}.intro-shard-22{width:12px;height:18px}.intro-term-status-pct{color:#e0b45c;min-width:44px;text-align:right;opacity:0;transform:translateY(8px);font-variant-numeric:tabular-nums}.intro-waiting{margin-top:16px;display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.06em;color:#6f7a72;opacity:0;transform:translateY(8px)}.intro-spinner{width:13px;height:13px;flex:none;border-radius:9999px;border:2px solid rgba(154,163,157,.22);border-top-color:#5eeaa0;animation:intro-spin .9s linear infinite}@keyframes intro-spin{to{transform:rotate(360deg)}}@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-divide-x-reverse:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-tight:1.25;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--app-font-sans);--default-mono-font-family:var(--app-font-mono)}}@layer base{*,:after,:before,::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;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}*{border-color:hsl(var(--border))}html{scroll-behavior:smooth}body{background-color:hsl(var(--background));font-family:var(--app-font-sans);color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}button,a{-webkit-tap-highlight-color:transparent}::selection{background:hsl(var(--accent));color:hsl(var(--foreground))}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.top-0{top:0}.top-2{top:calc(var(--spacing) * 2)}.top-4{top:calc(var(--spacing) * 4)}.right-3{right:calc(var(--spacing) * 3)}.right-5{right:calc(var(--spacing) * 5)}.bottom-2{bottom:calc(var(--spacing) * 2)}.bottom-5{bottom:calc(var(--spacing) * 5)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.left-5{left:calc(var(--spacing) * 5)}.z-20{z-index:20}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-9{margin-top:calc(var(--spacing) * 9)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-auto{margin-top:auto}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.aspect-\[2\/1\]{aspect-ratio:2}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-20{height:calc(var(--spacing) * 20)}.h-full{height:100%}.min-h-\[calc\(100dvh-70px\)\]{min-height:calc(100dvh - 70px)}.min-h-screen{min-height:100vh}.w-1{width:var(--spacing)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[440px\]{max-width:440px}.max-w-\[470px\]{max-width:470px}.max-w-\[480px\]{max-width:480px}.max-w-\[520px\]{max-width:520px}.max-w-\[900px\]{max-width:900px}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-4{--tw-translate-y:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-\[\.8fr_1\.2fr\]{grid-template-columns:.8fr 1.2fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-current\/10>:not(:last-child)){border-color:currentColor}@supports (color:color-mix(in lab,red,red)){:where(.divide-current\/10>:not(:last-child)){border-color:color-mix(in oklab,currentcolor 10%,transparent)}}:where(.divide-current\/20>:not(:last-child)){border-color:currentColor}@supports (color:color-mix(in lab,red,red)){:where(.divide-current\/20>:not(:last-child)){border-color:color-mix(in oklab,currentcolor 20%,transparent)}}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-current\/10{border-color:currentColor}@supports (color:color-mix(in lab,red,red)){.border-current\/10{border-color:color-mix(in oklab,currentcolor 10%,transparent)}}.border-current\/15{border-color:currentColor}@supports (color:color-mix(in lab,red,red)){.border-current\/15{border-color:color-mix(in oklab,currentcolor 15%,transparent)}}.border-current\/20{border-color:currentColor}@supports (color:color-mix(in lab,red,red)){.border-current\/20{border-color:color-mix(in oklab,currentcolor 20%,transparent)}}.border-current\/25{border-color:currentColor}@supports (color:color-mix(in lab,red,red)){.border-current\/25{border-color:color-mix(in oklab,currentcolor 25%,transparent)}}.border-current\/30{border-color:currentColor}@supports (color:color-mix(in lab,red,red)){.border-current\/30{border-color:color-mix(in oklab,currentcolor 30%,transparent)}}.bg-\[\#121417\]{background-color:#121417}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.bg-black\/10{background-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.bg-current,.bg-current\/15{background-color:currentColor}@supports (color:color-mix(in lab,red,red)){.bg-current\/15{background-color:color-mix(in oklab,currentcolor 15%,transparent)}}.bg-current\/35{background-color:currentColor}@supports (color:color-mix(in lab,red,red)){.bg-current\/35{background-color:color-mix(in oklab,currentcolor 35%,transparent)}}.bg-current\/40{background-color:currentColor}@supports (color:color-mix(in lab,red,red)){.bg-current\/40{background-color:color-mix(in oklab,currentcolor 40%,transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-white{background-color:var(--color-white)}.object-cover{object-fit:cover}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.font-sans{font-family:var(--app-font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\[\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[\.13em\]{--tw-tracking:.13em;letter-spacing:.13em}.tracking-\[\.15em\]{--tw-tracking:.15em;letter-spacing:.15em}.tracking-\[\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-\[\.17em\]{--tw-tracking:.17em;letter-spacing:.17em}.tracking-\[\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.whitespace-nowrap{white-space:nowrap}.text-\[\#c84d3d\]{color:#c84d3d}.text-gray-600{color:var(--color-gray-600)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.opacity-0{opacity:0}.opacity-15{opacity:.15}.opacity-30{opacity:.3}.opacity-35{opacity:.35}.opacity-60{opacity:.6}.opacity-65{opacity:.65}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-85{opacity:.85}.opacity-90{opacity:.9}.opacity-95{opacity:.95}.opacity-100{opacity:1}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.fade-in{--tw-enter-opacity:0}.paused{animation-play-state:paused}.running{animation-play-state:running}@media(hover:hover){.group-hover\:bg-current\/5:is(:where(.group):hover *){background-color:currentColor}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-current\/5:is(:where(.group):hover *){background-color:color-mix(in oklab,currentcolor 5%,transparent)}}.group-hover\:underline:is(:where(.group):hover *){text-decoration-line:underline}.group-hover\:underline-offset-4:is(:where(.group):hover *){text-underline-offset:4px}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:underline:hover{text-decoration-line:underline}.hover\:underline-offset-4:hover{text-underline-offset:4px}.hover\:opacity-100:hover{opacity:1}}@media(min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-\[\.28fr_\.72fr\]{grid-template-columns:.28fr .72fr}.sm\:grid-cols-\[170px_1fr\]{grid-template-columns:170px 1fr}.sm\:gap-8{gap:calc(var(--spacing) * 8)}.sm\:pt-1{padding-top:var(--spacing)}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:64rem){.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-\[1\.05fr_\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:grid-cols-\[1\.15fr_\.85fr\]{grid-template-columns:1.15fr .85fr}.lg\:gap-0{gap:0}.lg\:gap-5{gap:calc(var(--spacing) * 5)}.lg\:gap-7{gap:calc(var(--spacing) * 7)}.lg\:gap-16{gap:calc(var(--spacing) * 16)}:where(.lg\:divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}:where(.lg\:divide-current\/15>:not(:last-child)){border-color:currentColor}@supports (color:color-mix(in lab,red,red)){:where(.lg\:divide-current\/15>:not(:last-child)){border-color:color-mix(in oklab,currentcolor 15%,transparent)}}.lg\:py-20{padding-block:calc(var(--spacing) * 20)}.lg\:pr-12{padding-right:calc(var(--spacing) * 12)}.lg\:pl-12{padding-left:calc(var(--spacing) * 12)}}@media(min-width:80rem){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--background:39 33% 92%;--foreground:218 27% 17%;--border:32 19% 73%;--input:32 19% 73%;--ring:8 65% 49%;--card:39 38% 95%;--card-foreground:218 27% 17%;--card-border:32 19% 73%;--primary:8 65% 49%;--primary-foreground:39 38% 95%;--secondary:184 25% 25%;--secondary-foreground:39 38% 95%;--muted:36 18% 84%;--muted-foreground:220 10% 39%;--accent:44 87% 59%;--accent-foreground:218 27% 17%;--radius:.4rem;--app-font-sans:"DM Sans", sans-serif;--app-font-serif:"DM Sans", sans-serif;--app-font-mono:"DM Sans", sans-serif;--shadow:0 18px 40px #22262f1c;--text-heading:clamp(2rem, 4.6vw, 3.75rem);--text-sub:1.125rem;--text-body:.875rem}.dark{--background:218 27% 17%;--foreground:39 38% 95%;--border:218 16% 31%;--input:218 16% 31%;--ring:8 65% 60%;--card:218 24% 21%;--card-foreground:39 38% 95%;--card-border:218 16% 31%;--primary:8 65% 60%;--primary-foreground:218 27% 17%;--secondary:184 25% 62%;--secondary-foreground:218 27% 17%;--muted:218 18% 27%;--muted-foreground:39 12% 70%;--accent:44 87% 59%;--accent-foreground:218 27% 17%}.site-shell{min-height:100dvh;transition:background-color .5s,color .5s;overflow:clip}.section-wrap{width:min(1180px,100% - 48px);margin:0 auto}.editorial-only{display:block}.falling-leaves{z-index:12;pointer-events:none;height:100vh;position:fixed;inset:-30px 0 auto;overflow:hidden}.falling-leaf{top:-22px;left:var(--leaf-left);opacity:0;width:10px;height:15px;animation:leaf-fall var(--leaf-duration) linear var(--leaf-delay) infinite;background:#9f4f5b;border-radius:80% 0;position:absolute;transform:rotate(35deg)}.falling-leaf:after{content:"";background:#4422298c;width:1px;height:11px;position:absolute;top:2px;left:4px;transform:rotate(-28deg)}.falling-leaf-1{--leaf-left:6%;--leaf-duration:12s;--leaf-delay:-2s;--leaf-drift:80px;--leaf-tilt:280deg}.falling-leaf-2{--leaf-left:14%;--leaf-duration:16s;--leaf-delay:-8s;--leaf-drift:-65px;--leaf-tilt:140deg;transform:scale(.68)rotate(35deg)}.falling-leaf-3{--leaf-left:24%;--leaf-duration:13s;--leaf-delay:-10s;--leaf-drift:100px;--leaf-tilt:340deg;transform:scale(.8)rotate(35deg)}.falling-leaf-4{--leaf-left:33%;--leaf-duration:18s;--leaf-delay:-5s;--leaf-drift:-90px;--leaf-tilt:220deg;transform:scale(.6)rotate(35deg)}.falling-leaf-5{--leaf-left:44%;--leaf-duration:14s;--leaf-delay:-11s;--leaf-drift:55px;--leaf-tilt:300deg}.falling-leaf-6{--leaf-left:54%;--leaf-duration:17s;--leaf-delay:-4s;--leaf-drift:-85px;--leaf-tilt:160deg;transform:scale(.72)rotate(35deg)}.falling-leaf-7{--leaf-left:63%;--leaf-duration:15s;--leaf-delay:-9s;--leaf-drift:105px;--leaf-tilt:330deg;transform:scale(.55)rotate(35deg)}.falling-leaf-8{--leaf-left:72%;--leaf-duration:19s;--leaf-delay:-14s;--leaf-drift:-70px;--leaf-tilt:180deg}.falling-leaf-9{--leaf-left:80%;--leaf-duration:13s;--leaf-delay:-3s;--leaf-drift:75px;--leaf-tilt:290deg;transform:scale(.7)rotate(35deg)}.falling-leaf-10{--leaf-left:89%;--leaf-duration:16s;--leaf-delay:-12s;--leaf-drift:-100px;--leaf-tilt:120deg;transform:scale(.62)rotate(35deg)}.falling-leaf-11{--leaf-left:18%;--leaf-duration:20s;--leaf-delay:-16s;--leaf-drift:120px;--leaf-tilt:260deg;transform:scale(.48)rotate(35deg)}.falling-leaf-12{--leaf-left:39%;--leaf-duration:15s;--leaf-delay:-7s;--leaf-drift:-120px;--leaf-tilt:200deg;transform:scale(.6)rotate(35deg)}.falling-leaf-13{--leaf-left:69%;--leaf-duration:21s;--leaf-delay:-18s;--leaf-drift:90px;--leaf-tilt:310deg;transform:scale(.5)rotate(35deg)}.falling-leaf-14{--leaf-left:95%;--leaf-duration:14s;--leaf-delay:-6s;--leaf-drift:-60px;--leaf-tilt:170deg;transform:scale(.75)rotate(35deg)}@keyframes leaf-fall{0%{opacity:0;translate:0 -35px;rotate:0deg}10%{opacity:.82}50%{translate:var(--leaf-drift) 50vh;rotate:var(--leaf-tilt)}88%{opacity:.58}to{opacity:0;translate:calc(var(--leaf-drift) * -.55) 112vh;rotate:520deg}}.reveal{opacity:0;animation:.75s cubic-bezier(.2,.7,.2,1) forwards reveal-in;transform:translateY(18px)}.reveal-delay-1{animation-delay:80ms}.reveal-delay-2{animation-delay:.16s}.reveal-delay-3{animation-delay:.24s}@keyframes reveal-in{to{opacity:1;transform:translateY(0)}}.theme-editorial{--ink:#202a36;--paper:#ece4d3;--paper-deep:#e3d5bf;--line:#202a3638;color:#202a36;background:#ece4d3;font-family:DM Sans,sans-serif}.theme-editorial .display{text-transform:uppercase;letter-spacing:-.055em;font-family:Syne,sans-serif}.theme-editorial .serif,.theme-editorial .mono{font-family:DM Sans,sans-serif}.theme-editorial .paper-noise:before{content:"";z-index:10;pointer-events:none;opacity:.06;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");position:fixed;inset:0}.theme-editorial .rule{border-color:var(--line)}.theme-editorial .nav{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ece4d3eb}.theme-editorial .hero-copy{font-size:clamp(2.5rem,6vw,5.5rem);line-height:.83}.theme-editorial .project-card{border:1px solid var(--line);background:#e7dcc8;transition:transform .35s,box-shadow .35s}.theme-editorial .project-card:hover{transform:translateY(-7px)rotate(-.4deg);box-shadow:9px 9px #202a3621}.theme-editorial .button-primary{color:#ece4d3;background:#202a36;border:1px solid #202a36}.theme-editorial .button-primary:hover{background:#c84d3d;border-color:#c84d3d;transform:translateY(-2px)}.theme-editorial .button-quiet{border:1px solid var(--line);color:#202a36}.theme-editorial .button-quiet:hover{background:#ffffff40;transform:translateY(-2px)}.theme-editorial .accent-stamp{color:#c84d3d;border:1px solid #c84d3d;transform:rotate(-4deg)}.theme-editorial .section-title,.theme-editorial .section-title-sm{font-size:var(--text-heading);line-height:1.05}.theme-editorial,.intro-overlay{--text-heading:clamp(2rem, 4.6vw, 3.75rem);--text-sub:1.125rem;--text-body:.875rem}.theme-editorial .t-heading{font-size:var(--text-heading)!important;line-height:1.05!important}.theme-editorial .t-sub{font-size:var(--text-sub)!important;line-height:1.4!important}.theme-editorial .t-body{font-size:var(--text-body)!important;line-height:1.6!important}.theme-editorial .section-title,.theme-editorial .section-title-sm,.theme-editorial h1.display,.theme-editorial h2.display{font-size:var(--text-heading)!important;line-height:1.05!important}.theme-editorial .project-modal-panel h3.display,.theme-editorial .project-card h3.display,.theme-editorial h3.display,.theme-editorial .skills-title,.theme-editorial .philosophy-quote,.theme-editorial p.serif,.theme-editorial .resume-sheet-name{font-size:var(--text-sub)!important;line-height:1.4!important}.theme-editorial .text-\[9px\],.theme-editorial .text-\[10px\],.theme-editorial .text-\[11px\],.theme-editorial .text-\[12px\],.theme-editorial .text-\[13px\],.theme-editorial .text-\[16px\],.theme-editorial .text-xs,.theme-editorial .text-sm,.theme-editorial .text-base,.theme-editorial .text-lg,.theme-editorial .text-xl,.theme-editorial .text-2xl,.theme-editorial .text-3xl,.theme-editorial .skills-index,.theme-editorial .skills-tag,.theme-editorial .filter-tab,.theme-editorial .tour-caption,.theme-editorial .project-open-cta,.theme-editorial .project-visual-year,.theme-editorial .project-visual-label,.theme-editorial .guided-tour-progress,.theme-editorial .tour-spot-label{font-size:var(--text-body)!important}.theme-editorial .hero-photo-wrap{border:1px solid var(--line);background:#d9c9ad;justify-self:start;width:100%;max-width:320px}.theme-editorial .editorial-hero .hero-copy{font-size:clamp(2.5rem,6vw,5.5rem)!important;line-height:.83!important}.theme-editorial .nav a.text-\[10px\],.theme-editorial header .nav .text-\[10px\]{font-size:10px!important}.theme-editorial .editorial-hero a.text-\[11px\],.theme-editorial .editorial-hero button.text-\[11px\]{font-size:11px!important}.theme-editorial .editorial-hero strong.text-\[12px\],.theme-editorial .editorial-hero span.text-\[12px\]{font-size:12px!important}.theme-editorial .editorial-hero div.text-\[16px\]{font-size:16px!important}.theme-editorial .nav .section-wrap{padding-top:6px;padding-bottom:6px}.theme-editorial .nav-link{padding:6px 2px;position:relative}.theme-editorial .nav-link:after{content:"";background:currentColor;height:1px;transition:right .25s;position:absolute;bottom:0;left:0;right:100%}.theme-editorial .nav-link:hover:after{right:0}.theme-editorial .social-link{z-index:1;color:#202a36;opacity:.85;background:#ece4d3;border:1px solid #202a3647;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;transition:transform .25s,opacity .25s,border-color .25s;display:inline-flex;position:relative;overflow:hidden}.theme-editorial .social-link svg{z-index:3;transition:color .45s,transform .45s;display:block;position:relative}.theme-editorial .social-link:before{content:"";background:var(--brand,#000);border-radius:inherit;z-index:2;width:100%;height:100%;transition:top .35s;position:absolute;top:100%;left:0}.theme-editorial .social-link:hover{opacity:1;border-color:var(--brand,#000);transform:translateY(-2px)}.theme-editorial .social-link:hover svg{color:#fff;transform:rotateY(360deg)}.theme-editorial .social-link:hover:before{top:0}.theme-editorial .hero-art .orb{background:#c84d3d;box-shadow:26px 22px #f0ae78}.theme-editorial .footer{color:#ece4d3;background:#202a36;border-top:1px solid #202a3633}.theme-editorial .footer a{color:#ece4d3}.theme-editorial .footer a:hover{color:#f0ae78}.theme-editorial .contact-section{color:#ece4d3;background:#202a36;border-top:1px solid #202a3633}.theme-editorial .contact-section a{color:#ece4d3}.theme-editorial .contact-section a:hover{color:#f0ae78}.theme-editorial .contact-section input,.theme-editorial .contact-section textarea{color:#ece4d3}.theme-editorial .contact-section input::placeholder,.theme-editorial .contact-section textarea::placeholder{color:#ece4d373}.theme-editorial .contact-section .button-primary{color:#ece4d3;background:#c84d3d;border-color:#c84d3d}.theme-editorial .contact-section .button-primary:hover{color:#202a36;background:#f0ae78;border-color:#f0ae78}.theme-editorial .contact-section{--text-heading:clamp(1.5rem, 3.4vw, 2.5rem)}.theme-editorial .contact-section .section-title-sm{line-height:1.1!important}.theme-editorial .editorial-hero{position:relative}.theme-editorial .editorial-hero .hero-copy{z-index:1;position:relative}.theme-editorial .editorial-hero .hero-copy:after{content:"";z-index:-1;aspect-ratio:1;filter:blur(1px);background:#c84d3d33;border-radius:50%;width:clamp(120px,16vw,240px);position:absolute;top:35%;left:53%;transform:translate(-50%,-50%)}.theme-editorial .hero-photo-slot{padding:10px;position:relative}.theme-editorial .hero-photo-filled{aspect-ratio:480/482;background:#111;width:100%}.theme-editorial .hero-photo-filled img{object-fit:contain;background:#111;width:100%;height:auto;display:block}.skills-grid{grid-template-columns:1fr;gap:14px;display:grid}@media(min-width:640px){.skills-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.skills-grid{grid-template-columns:repeat(3,1fr)}}.skills-cell{min-width:0}.theme-editorial .skills-card{border:1px solid var(--line);background:#f6f0e28c;flex-direction:column;gap:14px;height:100%;min-height:238px;padding:20px;transition:transform .25s,box-shadow .25s,background-color .25s;display:flex}.theme-editorial .skills-card:hover{background:#f6f0e2;transform:translateY(-4px);box-shadow:0 16px 30px #22262f1f}.skills-card-top{justify-content:space-between;align-items:center;display:flex}.skills-icon{color:#202a36;perspective:320px;background:#f6f0e2;border:1px solid #202a364d;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;transition:background-color .25s,transform .25s;display:inline-flex}.theme-editorial .skills-card:hover .skills-icon{color:#c84d3d;background:#e7dcc8}@keyframes skill-anim-wiggle{0%,to{transform:translate(-2px)rotate(-7deg)}50%{transform:translate(2px)rotate(7deg)}}@keyframes skill-anim-slide{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(3px)rotate(3deg)}50%{transform:translate(-3px)rotate(-3deg)}75%{transform:translate(1.5px)rotate(1.5deg)}}@keyframes skill-anim-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes skill-anim-revolve{0%{transform:rotateY(0)rotate(0)}25%{transform:rotateY(90deg)rotate(7deg)}50%{transform:rotateY(180deg)rotate(-5deg)}75%{transform:rotateY(270deg)rotate(7deg)}to{transform:rotateY(360deg)rotate(0)}}@keyframes skill-anim-glide{0%,to{transform:translate(0)rotate(-5deg)}30%{transform:translate(2.5px,-2.5px)rotate(0)}60%{transform:translate(-1px,1px)rotate(-8deg)}80%{transform:translate(1.5px,-1.5px)rotate(-2deg)}}@keyframes skill-anim-pulse{0%,to{transform:translateY(-1px)scale(1)}50%{transform:translateY(-1px)scale(1.16)}}.theme-editorial .skills-card:hover .skills-icon.skill-anim-wiggle svg{animation:.7s ease-in-out infinite skill-anim-wiggle}.theme-editorial .skills-card:hover .skills-icon.skill-anim-slide svg{animation:2.6s ease-in-out infinite skill-anim-slide}.theme-editorial .skills-card:hover .skills-icon.skill-anim-spin svg{animation:1.5s linear infinite skill-anim-spin}.theme-editorial .skills-card:hover .skills-icon.skill-anim-revolve svg{animation:2.2s linear infinite skill-anim-revolve}.theme-editorial .skills-card:hover .skills-icon.skill-anim-glide svg{animation:2.2s ease-in-out infinite skill-anim-glide}.theme-editorial .skills-card:hover .skills-icon.skill-anim-pulse svg{animation:.85s ease-in-out infinite skill-anim-pulse}@media(prefers-reduced-motion:reduce){.theme-editorial .skills-card:hover .skills-icon svg{animation:none!important}}.skills-index{font-size:var(--text-body);letter-spacing:.18em;opacity:.5}.skills-title{font-size:var(--text-sub);margin:0;line-height:1.4}.skills-tags{flex-wrap:wrap;gap:7px;margin-top:auto;display:flex}.theme-editorial .skills-tag{font-size:var(--text-body);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:#ffffff59;border:1px solid #3a445152;border-radius:999px;padding:5px 9px;transition:background-color .25s,border-color .25s,color .25s}.theme-editorial .skills-card:hover .skills-tag{background:#e8b4c438;border-color:#c8829b99}.theme-editorial #about,.theme-editorial #projects,.theme-editorial #skills,.theme-editorial #experience,.theme-editorial #contact{background-image:linear-gradient(#202a3606 1px,#0000 1px);background-size:100% 34px;position:relative}.theme-editorial #projects:before,.theme-editorial #contact:before{content:"";background:#c84d3d47;height:1px;position:absolute;top:0;left:0;right:0}.theme-editorial .editorial-hero-copy strong{color:#c84d3d}.theme-editorial .editorial-hero-copy span{max-width:390px}.icon-link{transition:transform .25s,color .25s}.icon-link:hover{color:#c84d3d;transform:translateY(-2px)}.theme-editorial .achievement-card{background:#ffffff59;border:1px solid #3a445138;border-radius:2px;flex-direction:column;gap:10px;padding:16px;transition:transform .25s,border-color .25s;display:flex}.theme-editorial .achievement-card:hover{border-color:#c8829b99;transform:translateY(-2px)}.theme-editorial .achievement-icon{color:#c84d3d;border:1px solid #3a44514d;border-radius:999px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.theme-editorial .resume-sheet{color:#202a36;box-shadow:var(--shadow);background:#f4eede;border:1px solid #3a44516b;border-radius:2px;place-items:center;padding:30px 36px;display:grid}.slash-divider{margin:0 0 34px}.slash-divider svg{width:100%;height:22px;display:block}.slash-line{stroke:currentColor;stroke-width:1px;opacity:.3}.slash-nick{fill:none;stroke:#d89aaf;stroke-width:1.6px}.katana-card{position:relative}.theme-editorial .project-card h3.display{font-size:1.375rem!important}.katana-card-line{opacity:.18;transform-origin:0;background:currentColor;height:1px;margin:10px 0 0;transition:opacity .3s;display:block}.katana-card-line:after{content:"";opacity:0;transform-origin:100%;background:#d89aaf;width:100%;height:1px;transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .3s;display:block;transform:scaleX(0)}.katana-card:hover .katana-card-line{opacity:.32}.katana-card:hover .katana-card-line:after{opacity:1;transform:scaleX(1)skew(-24deg)}.project-card{cursor:pointer}.project-card:focus-visible{outline-offset:-2px;outline:2px solid #c84d3d8c}.theme-editorial .project-card-open{box-shadow:9px 9px #202a3624}.project-visual{transition:height .5s cubic-bezier(.22,1,.36,1)}.project-expand{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.22,1,.36,1),opacity .35s;display:grid}.project-expand-open{opacity:1;grid-template-rows:1fr}.project-expand>.project-expand-inner{min-height:0;overflow:hidden}.project-more{padding-top:14px}.project-highlights{margin:0;padding:0;list-style:none}@media(prefers-reduced-motion:reduce){.project-card,.project-visual,.project-expand{transition:none!important}}.cursor-slash-layer{z-index:60;pointer-events:none;position:fixed;inset:0;overflow:hidden}.cursor-slash{opacity:0;background:currentColor;height:1px;animation:.5s ease-out forwards cursor-slash-fade;position:absolute}@keyframes cursor-slash-fade{0%{opacity:0}25%{opacity:.16}to{opacity:0}}@media(pointer:coarse){.cursor-slash-layer{display:none}}@media(max-width:767px){.section-wrap{width:min(100% - 32px,1180px)}.theme-editorial .editorial-hero .hero-copy:after{width:132px;top:calc(100% + 40px);left:40%}}.site-shell{position:relative}.deco-branches{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.deco-branches>div{color:#202a3633;position:absolute}.deco-branch svg{width:100%;height:auto;display:block;overflow:visible}.deco-branch-tl{opacity:.8;width:clamp(180px,20vw,300px);top:56px;left:-46px}.deco-branch-tr{opacity:.8;width:clamp(180px,20vw,300px);top:56px;right:-46px}.deco-branch-bl{opacity:.55;width:clamp(160px,17vw,250px);top:52%;left:-60px}.deco-branch-br{opacity:.55;width:clamp(160px,17vw,250px);top:52%;right:-60px}.site-shell>header{z-index:20;position:sticky;top:0}.site-shell>section,.site-shell>footer{z-index:1;position:relative}.theme-editorial .footer{position:relative;overflow:hidden}.theme-editorial .footer-inner{z-index:1;position:relative}.theme-editorial .contact-section{position:relative;overflow:hidden}.theme-editorial .contact-inner{z-index:1;position:relative}.deco-bamboo{z-index:0;pointer-events:none;color:#d9c9ad;width:clamp(170px,22vw,260px);height:calc(100% - 40px);position:absolute;top:40px;bottom:0;right:0}.deco-bamboo svg{width:100%;height:100%;display:block;overflow:visible}.deco-bamboo .bamboo-stalk{transform-box:fill-box}.deco-bamboo .bamboo-stem-sway{transform-box:fill-box;transform-origin:50% 100%;animation:5.3s ease-in-out infinite bamboo-sway}.deco-bamboo .bamboo-leaf{transform-box:fill-box;transform-origin:0 0;animation:4.2s ease-in-out infinite bamboo-leaf-a}.deco-bamboo .bamboo-leaf.leaf-flip{transform-origin:100% 0}.deco-bamboo .bamboo-leaf.wind-b{animation-name:bamboo-leaf-b;animation-duration:4.8s;animation-delay:-1.3s}.deco-bamboo .bamboo-leaf.wind-c{animation-name:bamboo-leaf-c;animation-duration:3.5s;animation-delay:-2.1s}.deco-bamboo .bamboo-leaf.wind-d{animation-name:bamboo-leaf-d;animation-duration:5.3s;animation-delay:-.6s}@keyframes bamboo-sway{0%,to{transform:rotate(0)}30%{transform:rotate(.9deg)}55%{transform:rotate(-.5deg)}78%{transform:rotate(.6deg)}}@keyframes bamboo-leaf-a{0%,to{transform:rotate(0)translateY(0)}28%{transform:rotate(2.4deg)translateY(-1px)}58%{transform:rotate(-1.2deg)translateY(.5px)}80%{transform:rotate(1.4deg)translateY(-.5px)}}@keyframes bamboo-leaf-b{0%,to{transform:rotate(0)translateY(0)}32%{transform:rotate(-2.1deg)translateY(-1px)}60%{transform:rotate(1.3deg)translateY(.5px)}84%{transform:rotate(-1deg)translateY(0)}}@keyframes bamboo-leaf-c{0%,to{transform:rotate(0)translateY(0)}25%{transform:rotate(1.8deg)translateY(-.5px)}52%{transform:rotate(-1.6deg)translateY(.5px)}76%{transform:rotate(1deg)translateY(0)}}@keyframes bamboo-leaf-d{0%,to{transform:rotate(0)translateY(0)}35%{transform:rotate(-1.5deg)translateY(-.5px)}62%{transform:rotate(1.1deg)translateY(.5px)}86%{transform:rotate(-.8deg)translateY(0)}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.falling-leaves,.cursor-slash-layer{display:none}.deco-bamboo .bamboo-stem-sway,.deco-bamboo .bamboo-leaf{animation:none}}.deco-branch{transform-origin:50% 96%;will-change:rotate,translate}.deco-branch.flip{scale:-1 1}@media(max-width:767px){.deco-branches>div{color:#202a3652}.deco-branch-tl{top:calc(var(--nav-h,113px) + 4px);opacity:.9;width:200px;left:-30px}.deco-branch-tr,.deco-branch-bl{display:none}.deco-branch-br{opacity:.7;width:175px;top:52%;right:-40px}.deco-bamboo{display:none}}@media(min-width:768px)and (max-width:1100px){.deco-branch-tl{width:220px}.deco-branch-tr{width:200px}.deco-branch-bl{display:none}.deco-bamboo{width:200px}}.nav-katana{pointer-events:none;z-index:25;width:42px;height:104px;position:absolute;top:100%;right:min(190px,17vw)}.nav-katana-swing{transform-origin:50% 0;width:0;height:0;animation:2.2s ease-in-out -.6s infinite alternate nav-katana-sway;position:absolute;top:0;left:50%}.nav-katana-rope{opacity:.4;background:currentColor;width:1px;height:46px;position:absolute;top:0;left:3.5px}.nav-katana-blade{opacity:.85;width:24px;max-width:none;height:auto;position:absolute;top:34px;left:0;transform:translate(-50%)}.nav-katana-blade-fallback{mix-blend-mode:multiply;width:38px;top:60px;transform:translate(-50%,-50%)rotate(138.6deg)}@keyframes nav-katana-sway{0%{transform:rotate(11deg)}to{transform:rotate(-11deg)}}@media(max-width:639px){.nav-katana{width:32px;height:116px;right:22px}.nav-katana-rope{height:30px}.nav-katana-blade{width:20px;top:20px}.nav-katana-blade-fallback{width:32px;top:44px}}.wandering-cat{z-index:0;pointer-events:none;perspective:620px;position:absolute;inset:0}.cat-sprite{opacity:.5;mix-blend-mode:multiply;will-change:transform,scale;width:46px;position:absolute;top:0;left:0}.cat-sprite.face-r{scale:1}.cat-sprite.face-l{scale:-1 1}.cat-sprite.flip-r{animation:.4s ease-in-out cat-flip-r}.cat-sprite.flip-l{animation:.4s ease-in-out cat-flip-l}@keyframes cat-flip-r{0%{translate:0;scale:-1 1}48%{translate:0 -6px;scale:.08 1.1}52%{translate:0 -6px;scale:.08 1.1}to{translate:0;scale:1}}@keyframes cat-flip-l{0%{translate:0;scale:1}48%{translate:0 -6px;scale:.08 1.1}52%{translate:0 -6px;scale:.08 1.1}to{translate:0;scale:-1 1}}.cat-sprite.pose-walk{rotate:y 55deg}.cat-sprite.pose-sit{rotate:y 34deg}.cat-sprite.pose-groom{rotate:y 26deg}.cat-sprite.pose-play{rotate:y 42deg}.cat-sprite.pose-sniff{rotate:y 30deg}.cat-half{display:block;position:absolute;inset:0}.cat-top{clip-path:inset(0 0 22%)}.cat-legs{clip-path:inset(78% 0 0);transform-origin:50% 6%}.cat-img{transform-origin:50% 92%;width:100%;height:auto;display:block}.cat-sprite.pose-walk .cat-img{animation:.42s ease-in-out infinite alternate cat-hop}.cat-sprite.pose-sit .cat-img{animation:2.8s ease-in-out infinite alternate cat-breathe}.cat-sprite.pose-groom .cat-img{animation:2.2s ease-in-out infinite cat-groom}.cat-sprite.pose-play .cat-img{animation:.5s ease-in-out infinite alternate cat-pounce}.cat-sprite.pose-sniff .cat-img{animation:1.1s ease-in-out infinite cat-sniff}.cat-sprite.pose-walk .cat-legs{animation:.21s ease-in-out infinite alternate cat-legs}@keyframes cat-legs{0%{transform:skew(9deg)translate(.6px)}to{transform:skew(-9deg)translate(-.6px)}}@keyframes cat-groom{0%,to{translate:0;rotate:0deg}22%{translate:0 1.5px;rotate:8deg}42%{translate:0;rotate:2deg}68%{translate:0 2px;rotate:9deg}86%{translate:0;rotate:1deg}}@keyframes cat-sniff{0%,to{translate:0;rotate:0deg}50%{translate:0 1px;rotate:5deg}}@keyframes cat-hop{0%{translate:0}to{translate:0 -3.5px}}@keyframes cat-pounce{0%{translate:0 2px}to{translate:0 -11px}}@keyframes cat-breathe{0%{scale:1 .96}to{scale:1}}@media(prefers-reduced-motion:reduce){.wandering-cat .cat-sprite{transition:none!important;animation:none!important}.wandering-cat .cat-img,.wandering-cat .cat-legs{animation:none!important}}.scroll-top-button{z-index:30;color:#f6f0e2;opacity:0;visibility:hidden;background:#c84d3d;border:1px solid #a33a2ba6;border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;transition:opacity .35s,transform .35s cubic-bezier(.34,1.56,.64,1),visibility 0s linear .35s,background-color .25s,box-shadow .25s;display:flex;position:fixed;bottom:22px;right:22px;transform:translateY(14px)scale(.9);box-shadow:0 12px 30px #c84d3d61}.scroll-top-button.scroll-top-visible{opacity:1;visibility:visible;transition:opacity .35s,transform .35s cubic-bezier(.34,1.56,.64,1),background-color .25s,box-shadow .25s;transform:translateY(0)scale(1)}.scroll-top-button:after{content:"";opacity:0;pointer-events:none;border:1.5px solid #c84d3d8c;border-radius:999px;position:absolute;inset:-3px}.scroll-top-button.scroll-top-visible:after{animation:2.1s ease-out infinite scroll-top-pulse}@keyframes scroll-top-pulse{0%{opacity:.8;transform:scale(1)}70%{opacity:0;transform:scale(1.55)}to{opacity:0;transform:scale(1.55)}}.scroll-top-button:hover{background:#a33a2b;transform:translateY(-3px)scale(1.06);box-shadow:0 16px 34px #c84d3d80}.scroll-top-button:focus-visible{outline-offset:3px;outline:2px solid #202a36}@media(max-width:639px){.scroll-top-button{width:42px;height:42px;bottom:14px;right:14px}}.tour-cursor{z-index:60;pointer-events:none;opacity:0;will-change:transform;transition:opacity .45s;position:fixed;top:0;left:0}.tour-cursor.tour-cursor-on{opacity:1}.tour-cursor>svg{filter:drop-shadow(0 2px 5px #202a3666);display:block;position:absolute;top:0;left:0}.tour-cursor:before{content:"";opacity:0;border:2px solid #c84d3db3;border-radius:999px;width:20px;height:20px;position:absolute;top:2px;left:2px}.tour-cursor.tour-cursor-click>svg{animation:.4s tour-click-bump}.tour-cursor.tour-cursor-click:before{animation:.5s ease-out tour-click-ripple}@keyframes tour-click-bump{35%{transform:scale(.7)}to{transform:scale(1)}}@keyframes tour-click-ripple{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}.tour-caption{color:#202a36;width:max-content;max-width:250px;font-size:var(--text-body);box-sizing:border-box;overflow-wrap:anywhere;opacity:0;background:#f6f0e2f7;border:1px solid #3a445159;border-left:3px solid #c84d3d;padding:10px 14px;line-height:1.45;transition:opacity .3s;position:absolute;top:20px;left:24px;box-shadow:0 12px 26px #22262f2e}.tour-caption.tour-caption-on{opacity:1}.tour-cta{animation:2.2s ease-in-out infinite tour-cta-glow;position:relative;overflow:hidden;border-color:#c84d3d8c!important}.tour-cta:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000,#ffffff73,#0000);width:40%;animation:3.2s ease-in-out infinite tour-cta-shine;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-20deg)}.tour-cta .hero-tour-icon{animation:2.2s ease-in-out infinite tour-cta-nudge}@keyframes tour-cta-glow{0%,to{box-shadow:0 0 #c84d3d73,0 0 18px #c84d3d40}50%{box-shadow:0 0 0 12px #c84d3d00,0 0 4px #c84d3d0d}}@keyframes tour-cta-shine{0%,55%{left:-60%}85%,to{left:130%}}@keyframes tour-cta-nudge{0%,to{transform:translate(0)}50%{transform:translate(4px,-4px)}}@media(prefers-reduced-motion:reduce){.tour-cta,.tour-cta:after,.tour-cta .hero-tour-icon{animation:none!important}}@media(max-width:639px){.tour-caption{max-width:200px}}.theme-editorial [data-testid=link-star-repo].tour-hover{text-underline-offset:4px;text-decoration:underline}.theme-editorial .social-link.tour-hover{opacity:1;border-color:var(--brand,#000);transform:translateY(-2px)}.theme-editorial .social-link.tour-hover svg{color:#fff;transform:rotateY(360deg)}.theme-editorial .social-link.tour-hover:before{top:0}.theme-editorial .nav-link.tour-hover{opacity:1}.theme-editorial .nav-link.tour-hover:after{right:0}.theme-editorial .project-card.tour-hover{transform:translateY(-7px)rotate(-.4deg);box-shadow:9px 9px #202a3621}.theme-editorial .skills-card.tour-hover{background:#f6f0e2;transform:translateY(-4px);box-shadow:0 16px 30px #22262f1f}.theme-editorial .skills-card.tour-hover .skills-icon{color:#c84d3d;background:#e7dcc8}.theme-editorial .skills-card.tour-hover .skills-icon.skill-anim-wiggle svg{animation:.7s ease-in-out infinite skill-anim-wiggle}.theme-editorial .skills-card.tour-hover .skills-icon.skill-anim-slide svg{animation:2.6s ease-in-out infinite skill-anim-slide}.theme-editorial .skills-card.tour-hover .skills-icon.skill-anim-spin svg{animation:1.5s linear infinite skill-anim-spin}.theme-editorial .skills-card.tour-hover .skills-icon.skill-anim-revolve svg{animation:2.2s linear infinite skill-anim-revolve}.theme-editorial .skills-card.tour-hover .skills-icon.skill-anim-glide svg{animation:2.2s ease-in-out infinite skill-anim-glide}.theme-editorial .skills-card.tour-hover .skills-icon.skill-anim-pulse svg{animation:.85s ease-in-out infinite skill-anim-pulse}.theme-editorial .button-primary.tour-hover{background:#c84d3d;border-color:#c84d3d;transform:translateY(-2px)}.theme-editorial .button-quiet.tour-hover{background:#ffffff40;transform:translateY(-2px)}body.tour-active .scroll-top-button{opacity:0!important;visibility:hidden!important;transform:translateY(14px)!important}.project-card-compact{transition:transform .25s,box-shadow .25s,border-color .25s}.project-card-compact:hover{transform:translateY(-4px);box-shadow:0 14px 28px #202a361f}.project-card-compact .project-card-chevron{transition:transform .25s}.project-card-compact:hover .project-card-chevron{transform:rotate(-90deg)}.project-card-compact .project-open-cta{transition:background-color .2s,color .2s,border-color .2s,opacity .2s}.project-card-compact:hover .project-open-cta{color:#f6f0e2;opacity:1;background:#c84d3d;border-color:#c84d3d}.theme-editorial .project-card .project-open-cta{letter-spacing:.16em;font-size:11px!important}.project-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;background:#181e288c;justify-content:center;align-items:center;padding:20px;transition:opacity .28s;display:flex;position:fixed;inset:0}.project-modal-backdrop-open{opacity:1}.project-modal-panel{border-style:var(--tw-border-style);border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));width:min(860px,100%);max-height:min(88dvh,720px);color:hsl(var(--card-foreground));opacity:0;padding:20px 28px 28px;transition:transform .42s cubic-bezier(.34,1.56,.64,1),opacity .3s;position:relative;overflow-y:auto;transform:translateY(28px)scale(.94);box-shadow:0 34px 90px #10161e80}.project-modal-backdrop-open .project-modal-panel{opacity:1;transform:translateY(0)scale(1)}.project-modal-closing .project-modal-panel{opacity:0;transform:translateY(14px)scale(.97)}.project-modal-close{opacity:.55;cursor:pointer;background:0 0;border:1px solid;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:opacity .2s,transform .2s,background-color .2s;display:inline-flex}.project-modal-close:hover{opacity:1;background:#c84d3d1f;transform:rotate(90deg)}.project-modal-close:focus-visible{outline-offset:2px;outline:2px solid #c84d3d8c}@media(prefers-reduced-motion:reduce){.project-modal-backdrop,.project-modal-panel{transition:none!important}}.contact-honeypot{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.contact-turnstile{min-height:65px;margin-top:4px}.hero-tour-icon{transform-origin:50%;animation:2.2s linear infinite hero-tour-icon}@keyframes hero-tour-icon{0%{transform:rotate(0)scale(1)}20%{transform:rotate(90deg)scale(1.12)}40%{transform:rotate(180deg)scale(1)}60%{transform:rotate(270deg)scale(1.12)}to{transform:rotate(360deg)scale(1)}}.nav-inner{justify-content:space-between;align-items:center;gap:16px;min-height:68px;display:flex}.nav-socials{flex-shrink:0;align-items:center;gap:8px;display:flex}.nav-community{white-space:nowrap;flex-shrink:0;min-height:44px}.primary-navigation{align-items:center;gap:24px;display:flex}.nav-menu-button{cursor:pointer;border:1px solid;justify-content:center;align-items:center;width:44px;height:44px;display:none}.nav a:focus-visible,.nav-menu-button:focus-visible{outline-offset:3px;outline:2px solid #c84d3d}.section-anchor{scroll-margin-top:84px}.katana-hero>*,.skill-group>*{min-width:0}.project-card,.project-modal-panel,.contact-inner{overflow-wrap:anywhere}@media(max-width:1099px){.nav-menu-button{flex-shrink:0;display:inline-flex}.nav-community{margin-left:auto}.primary-navigation{display:none}.primary-navigation.mobile-nav-open{z-index:30;border:1px solid var(--line);background:var(--paper);overscroll-behavior:contain;flex-direction:column;align-items:stretch;gap:4px;max-height:calc(100dvh - 140px);padding:12px;display:flex;position:absolute;top:100%;left:16px;right:16px;overflow-y:auto;box-shadow:0 12px 24px #202a362e}.theme-editorial .primary-navigation .nav-link{opacity:1;align-items:center;min-height:44px;padding:10px 12px;display:flex}}@media(max-width:1023px){.theme-editorial .editorial-hero{gap:32px;min-height:auto;padding-block:40px 48px}.katana-hero-photo{order:-1;justify-self:center;width:min(100% - 64px,300px)}.theme-editorial .hero-photo-wrap{max-width:none}.katana-hero-content{width:100%}.theme-editorial .editorial-hero .hero-copy{font-size:clamp(2rem,7.5vw,4rem)!important;line-height:1!important}.theme-editorial .editorial-hero-copy{max-width:640px;margin-top:20px}.theme-editorial .editorial-hero .hero-copy:after{width:132px;top:calc(100% + 40px);left:40%}}@media(max-width:639px){.theme-editorial .nav .nav-inner{padding-top:max(8px,env(safe-area-inset-top));grid-template-columns:minmax(0,1fr) 44px;gap:8px;padding-bottom:8px;display:grid}.nav-socials{flex-wrap:wrap;grid-column:1/-1;justify-content:center;gap:8px}.theme-editorial .social-link{flex-shrink:0;width:44px;height:44px}.nav-community{white-space:normal;text-align:center;grid-column:1;margin-left:0}.nav-menu-button{grid-column:2}.section-anchor{scroll-margin-top:calc(124px + env(safe-area-inset-top))}.theme-editorial .editorial-hero{gap:24px;padding-top:24px}.katana-hero-photo{width:min(100% - 72px,260px)}.theme-editorial .hero-photo-slot{padding:8px}.theme-editorial .editorial-hero .hero-copy{font-size:clamp(1.75rem,7.5vw,3rem)!important}.theme-editorial .editorial-hero .hero-copy:after{width:120px;top:calc(100% + 34px);left:34%}.project-modal-backdrop{padding:12px}.project-modal-panel{overscroll-behavior:contain;max-height:calc(100dvh - 24px);padding:12px 16px 20px}.project-modal-close{width:44px;height:44px}.project-modal-panel a{min-height:44px}.theme-editorial .contact-section{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.contact-inner a{overflow-wrap:anywhere}.contact-inner nav a{min-height:44px}.scroll-top-button{width:44px;height:44px;right:max(14px,env(safe-area-inset-right));bottom:calc(14px + env(safe-area-inset-bottom))}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}
