@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(../media/a128116a0bc3fa8c-s.d0675f0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(../media/9db33c57cd4391b8-s.338f221d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:100 900;font-display:swap;src:url(../media/8010b10db0d5feb2-s.p.2927a788.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/167cd0713aa75522-s.25158358.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/e455bcff747f0d5e-s.5f7c7356.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/791bf8c4bb753ed6-s.p.fb4c44d9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_2e38b6cd-module__Hp-ZDG__className{font-family:Fraunces,Fraunces Fallback}.fraunces_2e38b6cd-module__Hp-ZDG__variable{--font-fraunces:"Fraunces","Fraunces Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.f2220059.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.f6f1950f.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.bd5f4d11.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.51c18f09.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.23358719.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.15008bfb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_f8290d5a-module__2Nw1lG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_f8290d5a-module__2Nw1lG__variable{--font-jetbrains:"JetBrains Mono","JetBrains Mono Fallback"}
@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{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--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}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 transparent;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 transparent;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 transparent;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 transparent;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 transparent;--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}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-serif:var(--font-fraunces),serif;--font-mono:var(--font-jetbrains),ui-monospace,monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--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}::-webkit-file-upload-button{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%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,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{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:transparent;border-radius:0}::-webkit-file-upload-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:transparent;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:transparent;border-radius:0}:where(select:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:-moz-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:-moz-any([multiple],[size])) optgroup option:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:is([multiple],[size])) optgroup option:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){padding-left:20px}:where(select:-webkit-any([multiple],[size])) optgroup option:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where(select:-moz-any([multiple],[size])) optgroup option:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:where(select:is([multiple],[size])) optgroup option:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){padding-right:20px}:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::-webkit-file-upload-button{margin-right:4px}:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::file-selector-button{margin-right:4px}:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)))::file-selector-button{margin-right:4px}:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::-webkit-file-upload-button{margin-left:4px}:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::file-selector-button{margin-left:4px}:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))::file-selector-button{margin-left: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-top:0;padding-bottom:0}::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-month-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-day-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-hour-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-minute-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-second-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-millisecond-field{padding-top:0;padding-bottom:0}::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;-moz-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.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}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.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}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.\!ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)!important;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)!important}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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,-webkit-text-decoration-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))}}:root{--bg:#efeae2;--bg-2:#e5dfd4;--ink:#111;--ink-soft:#1f1f1f;--muted:#6e6a62;--line:rgba(17,17,17,.1);--accent:#ff4a1c;--accent-soft:rgba(255,74,28,.133)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:clip}.lenis.lenis-smooth iframe{pointer-events:none}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink)}body{font-family:var(--font-serif);font-feature-settings:"ss01","ss02","ss03";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;cursor:none;overflow-x:hidden}body.no-cursor-effect{cursor:auto}.mono{font-family:var(--font-mono);font-feature-settings:normal}.serif{font-family:var(--font-serif)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}.grain{pointer-events:none;z-index:9000;opacity:.55;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.32 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:fixed;top:0;bottom:0;left:0;right:0}.cursor-dot,.cursor-ring{pointer-events:none;z-index:9500;will-change:transform;mix-blend-mode:difference;position:fixed;top:0;left:0}.cursor-dot{background:#fff;border-radius:50%;width:6px;height:6px;transform:translate(-50%,-50%)}.cursor-ring{border:1px solid #fff;border-radius:50%;width:34px;height:34px;transition:width .25s,height .25s,border-color .25s,opacity .25s,background .25s;transform:translate(-50%,-50%)}.cursor-ring.hover{border-color:var(--accent);mix-blend-mode:normal;background:0 0;width:74px;height:74px}.cursor-ring.hide{opacity:0}.cursor-label{pointer-events:none;z-index:9501;font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#fff;mix-blend-mode:difference;opacity:0;font-size:10px;transition:opacity .2s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-label.show{opacity:1}.idle-line{z-index:90;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);opacity:0;font-size:10px;transition:opacity .8s;position:fixed;bottom:24px;left:28px}.idle-line.show{opacity:1}.idle-line .car{background:var(--accent);vertical-align:-1px;width:7px;height:11px;margin-left:4px;animation:1s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.marq-track{animation:none!important}.kinetic .ch,.reveal-up{opacity:1!important;transform:none!important}}.nav{z-index:200;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;mix-blend-mode:difference;color:#fff;justify-content:space-between;align-items:center;padding:18px 28px;font-size:11px;display:flex;position:fixed;top:0;left:0;right:0}.nav .nav-l{align-items:center;gap:18px;display:flex}.nav .nav-r{align-items:center;gap:22px;display:flex}.nav a{padding:6px 0;position:relative}.nav a:after{content:"";transform-origin:100%;background:#fff;width:100%;height:1px;transition:transform .35s cubic-bezier(.7,0,.2,1);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav a:hover:after{transform-origin:0;transform:scaleX(1)}.dot{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.5}}.hero{flex-direction:column;justify-content:flex-end;min-height:100vh;padding:120px 28px 36px;display:flex;position:relative}.hero h1{font-family:var(--font-serif);letter-spacing:-.04em;color:var(--ink);padding-bottom:.08em;font-size:max(72px,min(15vw,220px));font-weight:300;line-height:.92}.hero h1 .it{color:var(--accent);font-style:italic;font-weight:400}.hero-grid{border-top:1px solid var(--line);grid-template-columns:1.1fr .9fr;align-items:end;gap:48px;margin-top:64px;padding-top:24px;display:grid}.hero-meta{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:6px;font-size:11px;display:flex}.hero-meta .lead{color:var(--ink)}.hero-tag{max-width:560px;color:var(--ink-soft);font-size:max(18px,min(1.6vw,22px));font-weight:400;line-height:1.45}.hero-tag em{color:var(--accent);font-style:italic}@media (max-width:880px){.hero-grid{grid-template-columns:1fr;gap:24px}}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap;font-family:var(--font-serif);color:var(--ink);margin-top:96px;padding:14px 0;font-size:max(28px,min(4vw,56px));font-style:italic;font-weight:300;overflow:hidden}.marq-track{gap:40px;animation:28s linear infinite marq;display:inline-flex}.marq-track span{align-items:center;gap:40px;display:inline-flex}.marq-track span:after{content:"✱";color:var(--accent);font-size:.7em;font-style:normal}@keyframes marq{0%{transform:translate(0)}to{transform:translate(-50%)}}.sec-num{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex}.sec-num:before{content:"";background:var(--ink);transform-origin:0;width:24px;height:1px;transition:transform .8s cubic-bezier(.7,0,.2,1);transform:scaleX(0)}.sec-num.in:before{transform:scaleX(1)}.sec-title{letter-spacing:-.025em;margin-top:14px;font-size:max(40px,min(6vw,88px));font-weight:300;line-height:.95}.sec-title em{color:var(--accent);font-style:italic;font-weight:400}.about{border-top:1px solid var(--line);padding:140px 28px 120px}.about-grid{grid-template-columns:1fr 1.4fr;gap:80px;margin-top:64px;display:grid}@media (max-width:880px){.about-grid{grid-template-columns:1fr;gap:48px}}.about-side{align-self:start;position:-webkit-sticky;position:sticky;top:120px}.about-side .label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:18px;font-size:11px}.about-side h3{letter-spacing:-.02em;font-size:32px;font-weight:300;line-height:1.05}.about-body p{color:var(--ink-soft);margin-bottom:28px;font-size:max(20px,min(1.8vw,26px));font-weight:400;line-height:1.45}.about-body p .hi{background:linear-gradient(transparent 60%,var(--accent-soft)60%);padding:0 .1em}.about-body p strong{color:var(--ink);font-weight:500}.work{border-top:1px solid var(--line);padding:140px 0 120px;position:relative}.work-head{margin-bottom:64px;padding:0 28px}.work-list{position:relative}.work-row{border-top:1px solid var(--line);cursor:none;grid-template-columns:60px 1fr auto auto;align-items:center;gap:24px;padding:32px 28px;transition:padding .4s cubic-bezier(.7,0,.2,1);display:grid;position:relative}.work-row:last-child{border-bottom:1px solid var(--line)}.work-row .idx{font-family:var(--font-mono);color:var(--muted);letter-spacing:.1em;font-size:12px}.work-row .ttl{font-family:var(--font-serif);letter-spacing:-.025em;color:var(--ink);align-items:center;gap:18px;font-size:max(28px,min(4.4vw,64px));font-weight:300;line-height:1;transition:color .3s,transform .5s cubic-bezier(.7,0,.2,1);display:flex}.work-row .ttl .it{font-style:italic;font-weight:400}.work-row .stack{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}.work-row .yr{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:right;min-width:48px;font-size:11px}.work-row .arrow{border:1px solid var(--line);opacity:0;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;margin-left:6px;transition:opacity .35s,transform .45s cubic-bezier(.7,0,.2,1),background .35s,border-color .35s;display:inline-flex;transform:translate(-12px)}.work-row .arrow svg{width:14px;height:14px;stroke:var(--ink);stroke-width:1.6px;fill:none}.work-row:hover{padding-left:60px}.work-row:hover .ttl{color:var(--accent)}.work-row:hover .arrow{opacity:1;background:var(--accent);border-color:var(--accent);transform:translate(0)}.work-row:hover .arrow svg{stroke:#fff}.work-thumb{pointer-events:none;z-index:80;opacity:0;border-radius:8px;width:280px;height:340px;transition:opacity .25s,transform .35s cubic-bezier(.7,0,.2,1);position:fixed;top:0;left:0;overflow:hidden;transform:translate(-50%,-50%)scale(.92);box-shadow:0 30px 60px -20px rgba(0,0,0,.35)}.work-thumb.show{opacity:1;transform:translate(-50%,-50%)scale(1)}.work-thumb svg{width:100%;height:100%;display:block}.showcase{border-top:1px solid var(--line);padding:140px 0 120px;position:relative;overflow:hidden}.showcase-head{margin-bottom:48px;padding:0 28px}.h-track{scroll-snap-type:x mandatory;gap:24px;padding:0 28px 18px;display:flex;overflow-x:auto}.h-track::-webkit-scrollbar{height:6px}.h-track::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px}.h-card{background:var(--bg-2);scroll-snap-align:start;border-radius:6px;flex-direction:column;flex:0 0 max(320px,min(42vw,520px));justify-content:flex-end;height:max(360px,min(46vw,560px));padding:28px;transition:transform .55s cubic-bezier(.7,0,.2,1);display:flex;position:relative;overflow:hidden}.h-card .canvas{position:absolute;top:0;bottom:0;left:0;right:0}.h-card .canvas svg{width:100%;height:100%}.h-card .meta{z-index:2;position:relative}.h-card .num{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px}.h-card .ti{font-family:var(--font-serif);letter-spacing:-.02em;font-size:32px;font-weight:300;line-height:1.05}.h-card .desc{color:var(--muted);max-width:400px;margin-top:8px;font-size:14px;line-height:1.4}.h-hint{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex;position:absolute;top:140px;right:28px}.h-card:after{content:"";pointer-events:none;opacity:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.18) 50%,transparent 65%);transition:opacity .5s,transform .9s cubic-bezier(.7,0,.2,1);position:absolute;top:0;bottom:0;left:0;right:0;transform:translate(-30%)}.h-card:hover{transform:translateY(-8px)}.h-card:hover:after{opacity:1;transform:translate(30%)}.cap{border-top:1px solid var(--line);padding:140px 28px 120px}.cap-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(12,1fr);gap:1px;margin-top:64px;display:grid}.cap-cell{background:var(--bg);flex-direction:column;justify-content:space-between;min-height:180px;padding:28px;transition:background .35s;display:flex;position:relative;overflow:hidden}.cap-cell:hover{background:var(--bg-2)}.cap-cell.span-4{grid-column:span 4}.cap-cell.span-6{grid-column:span 6}.cap-cell.span-8{grid-column:span 8}.cap-cell.span-12{grid-column:span 12}@media (max-width:880px){.cap-cell.span-4,.cap-cell.span-6,.cap-cell.span-8,.cap-cell.span-12{grid-column:span 12}}.cap-cell .k{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}.cap-cell .v{font-family:var(--font-serif);letter-spacing:-.02em;margin-top:14px;font-size:max(22px,min(2.4vw,34px));font-weight:300;line-height:1.05}.cap-cell .v em{color:var(--accent);font-style:italic}.writing{border-top:1px solid var(--line);padding:140px 28px 120px}.writing-list{border-top:1px solid var(--line);margin-top:64px}.w-row{border-bottom:1px solid var(--line);grid-template-columns:80px 1fr auto;align-items:center;gap:24px;padding:28px 0;transition:padding .4s cubic-bezier(.7,0,.2,1);display:grid}.w-row:hover{padding-left:24px}.w-row .yr{font-family:var(--font-mono);color:var(--muted);letter-spacing:.1em;font-size:12px}.w-row .t{font-family:var(--font-serif);letter-spacing:-.015em;font-size:max(20px,min(2vw,28px));font-weight:400;line-height:1.2;transition:color .3s}.w-row:hover .t{color:var(--accent)}.w-row .arrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px;transition:color .3s,transform .4s}.w-row:hover .arrow{color:var(--accent);transform:translate(6px)}.cta{background:var(--ink);color:#efeae2;border-radius:32px 32px 0 0;margin-top:60px;padding:160px 28px 60px;position:relative;overflow:hidden}.cta-eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:rgba(239,234,226,.6);font-size:11px}.cta h2{font-family:var(--font-serif);letter-spacing:-.04em;margin-top:18px;font-size:max(64px,min(12vw,200px));font-weight:300;line-height:.9}.cta h2 em{color:var(--accent);font-style:italic;font-weight:400}.cta-mail{font-family:var(--font-serif);border-bottom:1px solid rgba(239,234,226,.2);align-items:center;gap:18px;margin-top:48px;padding-bottom:6px;font-size:max(20px,min(2.2vw,32px));transition:gap .35s,border-color .35s,color .35s;display:inline-flex}.cta-mail:hover{border-color:var(--accent);color:var(--accent);gap:28px}.cta-mail svg{stroke:currentColor;stroke-width:1.6px;fill:none;width:20px;height:20px}.cta-foot{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(239,234,226,.667);border-top:1px solid rgba(239,234,226,.133);grid-template-columns:repeat(4,1fr);gap:24px;margin-top:140px;padding-top:24px;font-size:11px;display:grid}.cta-foot a:hover{color:var(--accent)}@media (max-width:880px){.cta-foot{grid-template-columns:repeat(2,1fr)}}.cta-mark{font-family:var(--font-serif);color:rgba(239,234,226,.03);pointer-events:none;will-change:transform;font-size:max(280px,min(40vw,640px));font-style:italic;font-weight:300;line-height:.8;transition:transform .15s linear;position:absolute;bottom:-80px;right:-40px}.reveal-up{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.7,0,.2,1);transform:translateY(30px)}.reveal-up.in{opacity:1;transform:translateY(0)}.kinetic .ch{opacity:0;will-change:transform;transition:opacity .6s,transform .8s cubic-bezier(.7,0,.2,1);display:inline-block;transform:translateY(80%)}.kinetic.in .ch{opacity:1;transform:translateY(0)}.kinetic .ch.sp{width:.28em}.scroll-bar{background:var(--accent);z-index:1000;transform-origin:0;mix-blend-mode:difference;width:0;height:2px;position:fixed;top:0;left:0}.magnet{will-change:transform}a.magnet,button.magnet,span.magnet{display:inline-block}.work-row.magnet{display:grid}.hero.hero-dark{color:#efeae2;background:#0e0e0e;padding:0;position:relative;overflow:hidden}.hero-canvas{z-index:0;pointer-events:auto;position:absolute;top:0;bottom:0;left:0;right:0}.hero-overlay{z-index:2;pointer-events:none;flex-direction:column;justify-content:flex-end;min-height:100vh;padding:120px 28px 36px;display:flex;position:relative}.hero-overlay>*{pointer-events:auto}.hero-dark h1{color:#efeae2;text-shadow:0 0 40px rgba(0,0,0,.6);max-width:60%}.hero-dark h1 .it{color:var(--accent)}.hero-dark .marquee{color:#efeae2;-webkit-backdrop-filter:blur(2px);background:rgba(14,14,14,.4);border-top:1px solid rgba(239,234,226,.12);border-bottom:1px solid rgba(239,234,226,.12)}.hero-dark .hero-grid{border-top:1px solid rgba(239,234,226,.12)}.hero-dark .hero-tag{color:rgba(239,234,226,.92);max-width:60%}.hero-dark .hero-tag em{color:var(--accent)}.hero-dark .hero-meta{color:rgba(239,234,226,.55)}.hero-dark .hero-meta .lead{color:#efeae2}@media (max-width:880px){.hero-dark h1,.hero-dark .hero-tag{max-width:100%}}@media (prefers-reduced-motion:reduce){.hero-canvas{background:url(/portrait-base.jpg) 50%/cover no-repeat}.hero-canvas canvas{display:none!important}}.hero.hero-centered{background:var(--bg);color:var(--ink);flex-direction:column;justify-content:space-between;min-height:100vh;padding:100px 28px 36px;display:flex;position:relative;overflow:hidden}.hero.hero-centered .hero-stage{z-index:1;flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.hero-title-top,.hero-title-bottom{font-family:var(--font-serif);letter-spacing:-.04em;color:var(--ink);text-align:center;width:100%;font-size:max(64px,min(14vw,200px));font-weight:300;line-height:.92}.hero-title-top{padding-top:8px}.hero-title-bottom{margin-top:-.18em;padding-bottom:8px}.hero-title-top .it,.hero-title-bottom .it{color:var(--accent);font-style:italic;font-weight:400}.hero-portrait{aspect-ratio:3/4;z-index:2;width:max(280px,min(38vw,520px));margin:-.06em 0;position:relative}.hero-portrait-canvas{background:#0e0e0e;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.hero-portrait-canvas canvas{background:#0e0e0e;display:block;width:100%!important;height:100%!important}.hero.hero-centered .hero-foot{z-index:3;position:relative}.hero.hero-centered .hero-grid{border-top:1px solid var(--line);grid-template-columns:1.1fr .9fr;align-items:end;gap:48px;margin-top:32px;padding-top:24px;display:grid}.hero.hero-centered .hero-tag{max-width:560px;color:var(--ink-soft);font-size:max(16px,min(1.4vw,20px));font-weight:400;line-height:1.45}.hero.hero-centered .hero-tag em{color:var(--accent);font-style:italic}.hero.hero-centered .hero-meta{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:6px;font-size:11px;display:flex}.hero.hero-centered .hero-meta .lead{color:var(--ink)}.hero.hero-centered .marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);-webkit-backdrop-filter:none;color:var(--ink);background:0 0;margin-top:32px}@media (max-width:880px){.hero.hero-centered{padding:88px 20px 28px}.hero-portrait{width:max(240px,min(70vw,360px))}.hero-title-top,.hero-title-bottom{font-size:max(56px,min(18vw,120px))}.hero.hero-centered .hero-grid{grid-template-columns:1fr;gap:18px}}@media (prefers-reduced-motion:reduce){.hero-portrait-canvas{background:url(/portrait-base.png) 50%/contain no-repeat}.hero-portrait-canvas canvas{display:none!important}}.hero.hero-cover{background:var(--bg);color:var(--ink);flex-direction:column;min-height:100vh;padding:80px 28px 32px;display:flex;position:relative;overflow:hidden}.hero.hero-cover .hero-stage{flex:1;justify-content:center;align-items:center;display:flex;position:relative}.hero.hero-cover .hero-cover-title{z-index:1;font-family:var(--font-serif);letter-spacing:-.04em;color:var(--ink);text-align:center;white-space:nowrap;width:100%;font-size:max(56px,min(11vw,156px));font-weight:300;line-height:.92;position:relative}.hero.hero-cover .hero-cover-title .it{color:var(--accent);font-style:italic;font-weight:400}.hero.hero-cover .hero-portrait{aspect-ratio:1569/1470;z-index:2;pointer-events:auto;width:max(300px,min(36vw,500px));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero.hero-cover .hero-portrait-canvas{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.hero.hero-cover .hero-portrait-canvas canvas{display:block;width:100%!important;height:100%!important}.hero.hero-cover .hero-foot{z-index:3;margin-top:24px;position:relative}.hero.hero-cover .hero-grid{border-top:1px solid var(--line);grid-template-columns:1.1fr .9fr;align-items:end;gap:32px;padding-top:16px;display:grid}.hero.hero-cover .hero-tag{max-width:560px;color:var(--ink-soft);font-size:max(14px,min(1.2vw,18px));font-weight:400;line-height:1.45}.hero.hero-cover .hero-tag em{color:var(--accent);font-style:italic}.hero.hero-cover .hero-meta{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:4px;font-size:11px;display:flex}.hero.hero-cover .hero-meta .lead{color:var(--ink)}.hero.hero-cover .marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink);background:0 0;margin-top:16px}@media (max-width:880px){.hero.hero-cover{padding:70px 16px 24px}.hero.hero-cover .hero-cover-title{white-space:normal;font-size:max(40px,min(12vw,80px));line-height:.95}.hero.hero-cover .hero-portrait{width:max(220px,min(70vw,360px))}.hero.hero-cover .hero-grid{grid-template-columns:1fr;gap:16px}}@media (prefers-reduced-motion:reduce){.hero.hero-cover .hero-portrait-canvas{background:url(/portrait-base.png) 50%/contain no-repeat}.hero.hero-cover .hero-portrait-canvas canvas{display:none!important}}.hero.hero-split{color:#efeae2;background:#0e0e0e;flex-direction:column;min-height:100vh;padding:88px 28px 0;display:flex;position:relative;overflow:hidden}.hero.hero-split .hero-split-grid{flex:1;grid-template-columns:.95fr 1.05fr;align-items:stretch;gap:max(0px,min(.8vw,12px));min-height:0;display:grid}.hero.hero-split .hero-split-left{flex-direction:column;justify-content:center;gap:28px;padding-bottom:32px;display:flex}.hero.hero-split .hero-split-title,.hero.hero-split .hero-split-left h1{letter-spacing:-.04em;color:#efeae2;text-align:left;margin:0;padding:0;font-size:max(64px,min(9.5vw,152px));font-weight:300;line-height:.92;font-family:var(--font-serif)!important}.hero.hero-split .hero-split-title .it{color:var(--accent);font-style:italic;font-weight:400}.hero.hero-split .hero-split-foot{border-top:1px solid rgba(239,234,226,.14);flex-direction:column;gap:16px;max-width:520px;margin-top:0;padding-top:18px;display:flex}.hero.hero-split .hero-split-tag{color:rgba(239,234,226,.88);max-width:520px;font-size:max(14px,min(1.1vw,17px));font-weight:400;line-height:1.45}.hero.hero-split .hero-split-tag em{color:var(--accent);font-style:italic}.hero.hero-split .hero-split-meta{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(239,234,226,.55);flex-direction:column;gap:4px;font-size:11px;display:flex}.hero.hero-split .hero-split-meta .lead{color:#efeae2}.hero.hero-split .hero-split-right{justify-content:flex-end;align-items:stretch;min-height:0;padding-bottom:0;display:flex;position:relative;overflow:visible}.hero.hero-split .hero-portrait{aspect-ratio:1569/1470;justify-content:center;align-items:center;width:auto;height:100%;margin-right:-7%;display:flex;position:relative;transform:translate(8%)}.hero.hero-split .hero-portrait-canvas{width:100%;height:100%;position:relative;-webkit-mask-image:linear-gradient(#000 85%,transparent 100%);mask-image:linear-gradient(#000 85%,transparent 100%)}.hero.hero-split .hero-portrait-canvas canvas{display:block;width:100%!important;height:100%!important}.hero.hero-split .marquee{color:#efeae2;background:0 0;border-top:1px solid rgba(239,234,226,.14);border-bottom:1px solid rgba(239,234,226,.14);margin:0 -28px}@media (max-width:880px){.hero.hero-split{padding:80px 18px 0}.hero.hero-split .hero-split-grid{grid-template-columns:1fr;gap:24px}.hero.hero-split .hero-split-title{font-size:max(48px,min(12vw,96px))}.hero.hero-split .hero-split-right{justify-content:center;align-items:center;height:auto}.hero.hero-split .hero-portrait{width:88%;height:auto;margin-right:0;transform:none}.hero.hero-split .marquee{margin:0 -18px}}@media (prefers-reduced-motion:reduce){.hero.hero-split .hero-portrait-canvas{background:url(/portrait-base.png) 50%/contain no-repeat}.hero.hero-split .hero-portrait-canvas canvas{display:none!important}}.work{isolation:isolate;position:relative;overflow:hidden}.work-bg-stack{z-index:0;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.work-bg-art{opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .7s cubic-bezier(.7,0,.2,1);display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.work-bg-art.active{opacity:.1}.work-bg-art>svg{filter:blur(.5px);width:max(640px,min(70vw,1400px));height:auto;max-height:90%}.work .work-list{z-index:1;position:relative}.work .work-list.is-hovered .work-row:not(:hover){opacity:.32}.work .work-list .work-row{transition:opacity .32s cubic-bezier(.7,0,.2,1),padding .4s cubic-bezier(.7,0,.2,1),color .3s}.work .work-list.is-hovered .work-row:hover{opacity:1}.work-bg-art>svg rect[fill=\#0E0E0E],.work-bg-art>svg rect[fill=\#1A1A1A]{fill:transparent}.kinetic.proximity-ready .ch{will-change:transform,filter;pointer-events:auto;transition:opacity .6s,transform .12s ease-out,filter 50ms linear,color .18s ease-out}.sigil-container{color:#e0e0e0;background:#0e0e0e;height:350vh;position:relative}.sigil-pin{opacity:0;width:100%;height:100vh;transition:opacity .6s ease-out;position:-webkit-sticky;position:sticky;top:0;overflow:hidden}.sigil-container.in .sigil-pin{opacity:1}.sigil-scanlines{z-index:10;pointer-events:none;background:linear-gradient(rgba(255,255,255,0),rgba(255,255,255,0) 50%,rgba(0,0,0,.2) 50%,rgba(0,0,0,.2)) 0 0/100% 4px;position:absolute;top:0;bottom:0;left:0;right:0}.sigil-vignette{z-index:11;pointer-events:none;background:radial-gradient(circle,transparent 40%,#000 120%);position:absolute;top:0;bottom:0;left:0;right:0}.sigil-noise{z-index:12;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;top:0;bottom:0;left:0;right:0}.sigil-hud{z-index:20;pointer-events:none;font-family:var(--font-mono);color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.12em;flex-direction:column;justify-content:space-between;font-size:10px;display:flex;position:absolute;top:2rem;bottom:2rem;left:2rem;right:2rem}.sigil-hud-top,.sigil-hud-bottom{justify-content:space-between;align-items:center;display:flex}.sigil-hud strong{color:#00f3ff;font-weight:500}.sigil-hud-line{background:rgba(255,255,255,.2);flex:1;height:1px;margin:0 1rem;position:relative}.sigil-hud-line:after{content:"";background:var(--accent);width:5px;height:5px;position:absolute;top:-2px;right:0}.sigil-hud-center{writing-mode:vertical-rl;align-self:flex-start;margin-top:auto;margin-bottom:auto;transform:rotate(180deg)}.sigil-viewport{z-index:1;perspective:1000px;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.sigil-world{transform-style:preserve-3d;will-change:transform;position:absolute;top:50%;left:50%}.sigil-item{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-origin:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.sigil-card{-webkit-backdrop-filter:blur(8px);width:320px;height:460px;font-family:var(--font-mono);background:rgba(10,10,10,.4);border:1px solid rgba(255,255,255,.1);flex-direction:column;justify-content:space-between;padding:2rem;transition:all .3s cubic-bezier(.25,.46,.45,.94);display:flex;position:relative;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(0,0,0,.5),0 20px 50px rgba(0,0,0,.5)}@media (hover:hover){.sigil-card:hover{border-color:var(--accent);background:rgba(20,20,20,.85);box-shadow:0 0 30px rgba(255,74,28,.25)}}.sigil-card:before,.sigil-card:after{content:"";border:1px solid transparent;width:10px;height:10px;transition:all .3s;position:absolute}.sigil-card:before{border-top-color:rgba(255,255,255,.5);border-left-color:rgba(255,255,255,.5);top:-1px;left:-1px}.sigil-card:after{border-bottom-color:rgba(255,255,255,.5);border-right-color:rgba(255,255,255,.5);bottom:-1px;right:-1px}.sigil-card-header{border-bottom:1px solid rgba(255,255,255,.1);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.sigil-card-id{color:var(--accent);letter-spacing:.1em;font-size:.8rem}.sigil-card-dot{background:var(--accent);width:10px;height:10px}.sigil-card h2{text-transform:uppercase;color:#fff;font-size:2.5rem;font-weight:700;line-height:.9;font-family:var(--font-mono);letter-spacing:-.04em;margin:0}.sigil-card-footer{color:rgba(255,255,255,.4);justify-content:space-between;margin-top:auto;font-size:.7rem;display:flex}.sigil-card-num{opacity:.1;font-size:4rem;font-weight:900;font-family:var(--font-mono);position:absolute;bottom:2rem;right:2rem}.sigil-big-text{color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.18);text-stroke:2px rgba(255,255,255,.18);text-transform:uppercase;white-space:nowrap;pointer-events:none;letter-spacing:-.5rem;font-size:15vw;font-weight:800;font-family:var(--font-mono);transform:translate(-50%,-50%)}.sigil-star{background:#fff;width:2px;height:2px;position:absolute;transform:translate(-50%,-50%)}@media (max-width:880px),(hover:none){.sigil-container{display:none}}.showcase-grid-section{background:var(--bg);min-height:240vh;padding-top:120px;position:relative}.showcase-grid-head{z-index:5;margin-bottom:32px;padding:0 28px;position:relative}.showcase-grid-pin{width:100%;height:calc(240vh - 120px);position:relative}.showcase-grid-content{justify-content:center;align-items:center;width:100vw;height:100vh;margin-left:calc(50% - 50vw);display:flex;position:-webkit-sticky;position:sticky;top:0;overflow:hidden}.showcase-grid{--container-width:1600px;--gap:clamp(10px,5vw,56px);width:var(--container-width);gap:var(--gap);grid-template-rows:repeat(3,auto);grid-template-columns:repeat(5,1fr);align-content:center;max-width:calc(100% - 56px);margin:0 auto;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.showcase-grid>.showcase-grid-layer{gap:var(--gap);grid-area:1/1/-1/-1;grid-template-rows:repeat(3,auto);grid-template-columns:repeat(5,1fr);display:grid}@supports (grid-template-columns:subgrid){.showcase-grid>.showcase-grid-layer{grid-template-columns:subgrid;grid-template-rows:subgrid;gap:0}}.showcase-grid>.showcase-grid-layer:first-of-type div:first-of-type{grid-area:1/1}.showcase-grid>.showcase-grid-layer:first-of-type div:nth-of-type(2){grid-area:1/5}.showcase-grid>.showcase-grid-layer:first-of-type div:nth-of-type(3){grid-area:3/1}.showcase-grid>.showcase-grid-layer:first-of-type div:nth-of-type(4){grid-area:2/5}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:first-of-type{grid-area:1/2}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:nth-of-type(2){grid-area:2/2}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:nth-of-type(3){grid-area:2/4}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:nth-of-type(4){grid-area:3/4}.showcase-grid>.showcase-grid-layer:nth-of-type(3) div:first-of-type{grid-area:3/3}.showcase-grid>.showcase-grid-layer img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%;display:block}.showcase-grid .showcase-scaler{z-index:10;aspect-ratio:4/3;transform-origin:50%;will-change:transform;grid-area:2/3;width:100%;position:relative}.showcase-scaler img{object-fit:cover;border:1px solid rgba(255,74,28,.35);border-radius:12px;width:100%;height:100%;display:block}@media (max-width:600px){.showcase-grid{grid-template-columns:repeat(3,1fr)}.showcase-grid>.showcase-grid-layer:first-of-type{display:none}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:first-of-type{grid-column:1}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:nth-of-type(2){grid-column:3}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:nth-of-type(3){grid-area:3/1}.showcase-grid>.showcase-grid-layer:nth-of-type(2) div:nth-of-type(4){grid-area:3/3}.showcase-grid>.showcase-grid-layer:nth-of-type(3) div:first-of-type{grid-column:2}.showcase-grid .showcase-scaler{grid-area:2/2}}@media (min-width:881px) and (max-width:1180px){.hero.hero-split .hero-split-grid{grid-template-columns:1fr 1fr;gap:max(8px,min(1.5vw,24px))}.hero.hero-split .hero-split-title{font-size:max(48px,min(7vw,96px))}.hero.hero-split .hero-split-right{height:max(360px,min(55vh,600px))}.work .work-row .ttl{font-size:max(24px,min(3.6vw,44px))}.showcase-grid{--container-width:1100px}.cta h2{font-size:max(56px,min(9vw,140px))}}.portfolio-loader{z-index:99999;color:#efeae2;background:#0e0e0e;justify-content:center;align-items:center;transition:opacity .7s cubic-bezier(.7,0,.2,1),filter .7s cubic-bezier(.7,0,.2,1);display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.portfolio-loader.loader-fade{opacity:0;filter:blur(10px);pointer-events:none}.loader-grain{pointer-events:none;opacity:.08;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;top:0;bottom:0;left:0;right:0}.loader-scan{pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,74,28,.7) 40%,#ff4a1c 50%,rgba(255,74,28,.7) 60%,transparent);height:1px;animation:2.6s cubic-bezier(.5,0,.5,1) infinite loader-scan-anim;position:absolute;left:0;right:0;box-shadow:0 0 16px rgba(255,74,28,.5)}@keyframes loader-scan-anim{0%{opacity:0;top:-2%}10%{opacity:1}90%{opacity:1}to{opacity:0;top:102%}}.loader-meta{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:rgba(239,234,226,.55);z-index:5;align-items:center;gap:8px;font-size:10px;display:flex;position:absolute}.loader-meta-tl{top:28px;left:28px}.loader-meta-tr{top:28px;right:28px}.loader-meta-bl{bottom:28px;left:28px}.loader-meta-br{bottom:28px;right:28px}.loader-rotate{transform-origin:0 100%;white-space:nowrap;display:inline-block;position:absolute;bottom:0;left:8px;transform:rotate(-90deg)}.loader-dot{background:var(--accent);border-radius:999px;width:6px;height:6px;animation:1.4s ease-in-out infinite loader-dot-pulse;display:inline-block}@keyframes loader-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.4)}}.loader-stage{z-index:2;flex-direction:column;align-items:center;gap:56px;display:flex;position:relative}.loader-mark{font-family:var(--font-serif);letter-spacing:-.04em;color:#efeae2;align-items:baseline;margin:0;font-size:max(80px,min(18vw,240px));font-style:italic;font-weight:300;line-height:.92;display:flex}.loader-letter{opacity:0;will-change:transform,opacity;animation:1s cubic-bezier(.16,1,.3,1) forwards loader-letter-in;display:inline-block;transform:translateY(40px)}@keyframes loader-letter-in{to{opacity:1;transform:translateY(0)}}.loader-period{color:var(--accent);margin-left:4px;animation:1.2s step-end infinite loader-period-blink,1s cubic-bezier(.16,1,.3,1) .32s forwards loader-letter-in;display:inline-block}@keyframes loader-period-blink{0%,49%{opacity:1}50%,to{opacity:.25}}.loader-bar{width:max(280px,min(36vw,460px));height:1px;position:relative}.loader-bar-track{background:rgba(239,234,226,.14);position:absolute;top:0;bottom:0;left:0;right:0}.loader-bar-fill{background:var(--accent);transition:width .32s cubic-bezier(.7,0,.2,1);position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 12px rgba(255,74,28,.5)}.loader-bar-glow{background:var(--accent);pointer-events:none;border-radius:999px;width:8px;height:8px;transition:left .32s cubic-bezier(.7,0,.2,1);position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 16px rgba(255,74,28,.9),0 0 32px rgba(255,74,28,.4)}.loader-ticker{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:rgba(239,234,226,.65);align-items:center;gap:12px;min-height:14px;font-size:11px;display:flex}.loader-ticker-label{color:rgba(239,234,226,.95)}.loader-ticker-sep{color:rgba(239,234,226,.3)}.loader-ticker-pct{color:var(--accent);min-width:44px}.loader-ticker-word{color:#efeae2;min-width:80px;display:inline-block}.loader-caret{background:var(--accent);width:7px;height:11px;margin-left:2px;animation:1s step-end infinite loader-caret;display:inline-block}@keyframes loader-caret{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.loader-scan,.loader-letter,.loader-period,.loader-dot,.loader-caret{opacity:1!important;animation:none!important;transform:none!important}.portfolio-loader.loader-fade{filter:none;transition:opacity .2s}}@media (max-width:600px){.loader-mark{font-size:max(72px,min(22vw,140px))}.loader-bar{width:max(220px,min(70vw,320px))}.loader-meta{font-size:9px}.loader-rotate{display:none}}@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-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 transparent}@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}
