@font-face{font-family:nohemi;src:url(../media/Nohemi_VF.p.1-ke7vrioqke0.ttf)format("truetype");font-display:swap;font-weight:100 900}.Hjwnzq_className{font-family:nohemi}.Hjwnzq_variable{--font-nohemi:"nohemi"}
:root{--font-onest:"Onest";--font-mono:"IBM Plex Mono";--font-serif:"Cormorant Garamond";--font-jp:"Shippori Mincho"}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest/onest-cyrillic-wght-normal.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest/onest-latin-wght-normal.woff2)format("woff2-variations");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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono/ibm-plex-mono-cyrillic-400-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono/ibm-plex-mono-latin-400-normal.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono/ibm-plex-mono-cyrillic-500-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono/ibm-plex-mono-latin-500-normal.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:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond/cormorant-garamond-cyrillic-400-italic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond/cormorant-garamond-latin-400-italic.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:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond/cormorant-garamond-cyrillic-500-italic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(/fonts/cormorant-garamond/cormorant-garamond-latin-500-italic.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:Shippori Mincho;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/shippori-mincho/shippori-mincho-jp-400-normal.woff2)format("woff2");unicode-range:U+3007,U+3051,U+30A1,U+30C0,U+30EC,U+30F3,U+30F4,U+4E00,U+4E03,U+4E09,U+4E11,U+4E2D,U+4E5D,U+4E8C,U+4E94,U+4EA5,U+4ED8,U+4F5C,U+516B,U+516D,U+5341,U+5348,U+536F,U+53D7,U+56DB,U+5915,U+59CB,U+5B50,U+5BC5,U+5DF3,U+620C,U+672A,U+713C,U+7406,U+7533,U+767A,U+767E,U+7D04,U+7D42,U+7F8E,U+8005,U+8A71,U+8FB0,U+9053,U+9149,U+958B}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/shippori-mincho/shippori-mincho-jp-600-normal.woff2)format("woff2");unicode-range:U+3007,U+3051,U+30A1,U+30C0,U+30EC,U+30F3,U+30F4,U+4E00,U+4E03,U+4E09,U+4E11,U+4E2D,U+4E5D,U+4E8C,U+4E94,U+4EA5,U+4ED8,U+4F5C,U+516B,U+516D,U+5341,U+5348,U+536F,U+53D7,U+56DB,U+5915,U+59CB,U+5B50,U+5BC5,U+5DF3,U+620C,U+672A,U+713C,U+7406,U+7533,U+767A,U+767E,U+7D04,U+7D42,U+7F8E,U+8005,U+8A71,U+8FB0,U+9053,U+9149,U+958B}@font-face{font-family:Shippori Mincho;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/shippori-mincho/shippori-mincho-latin-ext-400-normal.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:Shippori Mincho;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/shippori-mincho/shippori-mincho-latin-400-normal.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:Shippori Mincho;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/shippori-mincho/shippori-mincho-latin-ext-600-normal.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:Shippori Mincho;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/shippori-mincho/shippori-mincho-latin-600-normal.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}
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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;--hole:0px}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-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,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.shrink{flex-shrink:1}.grow{flex-grow:1}.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}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.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)}.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))}}:root{--bg-rgb:13, 8, 9;--fg-rgb:242, 235, 224;--bg:rgb(var(--bg-rgb));--bg-2:#150c0f;--paper:rgb(var(--fg-rgb));--paper-80:rgba(var(--fg-rgb), .8);--muted:rgba(var(--fg-rgb), .56);--faint:rgba(var(--fg-rgb), .34);--hair:rgba(var(--fg-rgb), .12);--hair-strong:rgba(var(--fg-rgb), .28);--shu:#d8362a;--ember:#ff9a6b;--sakura:#f3c1cc;--gold:#c9a46a;--indigo:#1b1e3a;--lacquer:#2e1612;--lacquer-red:#ff6a4d;--lacquer-gold:#c9a46a8c;--washi:#ece3d2;--sumi:#161012;--page-rgb:var(--bg-rgb);--font-display:var(--font-nohemi), var(--font-onest);--font-body:var(--font-nohemi), var(--font-onest);--gutter:clamp(20px, 4vw, 64px);--ease:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.76, 0, .24, 1)}html.is-yang{--bg-rgb:238, 229, 213;--fg-rgb:24, 16, 18;--bg-2:#e4d8c3;--ember:#c4452a;--indigo:#d6d0e4;--lacquer:#e6d3c4;--lacquer-red:#c8382a}html{background:var(--bg);scroll-behavior:smooth;scrollbar-width:none}html::-webkit-scrollbar{display:none}html.lenis{scroll-behavior:auto;height:auto}.lenis.lenis-stopped{overflow:hidden}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}body{background:var(--bg);color:var(--paper);font-family:var(--font-body), system-ui, sans-serif;letter-spacing:.012em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:17px;font-weight:300;line-height:1.55;overflow-x:clip}body:after{content:"";z-index:90;pointer-events:none;opacity:.07;background-image:url(/tex/grain.webp);animation:1.2s steps(6,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%,to{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-1%)}80%{transform:translate(3%,3%)}}::selection{background:var(--shu);color:#fff}a{color:inherit;text-decoration:none}:focus-visible{outline:1px solid var(--paper);outline-offset:4px}.mono{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;font-size:10.5px;font-weight:400;line-height:1.45}.display-l,.display-xl{font-family:var(--font-display), serif;font-weight:300}.display-l{letter-spacing:-.02em;font-size:clamp(2.3rem,4.5vw,4.7rem);line-height:1.02}.display-xl{letter-spacing:-.028em;font-size:clamp(2.8rem,7.8vw,8.6rem);line-height:.96}.display-xl em,.display-l em{color:var(--ember);font-style:italic;font-weight:200}.mask-line{margin-bottom:-.1em;padding-bottom:.1em;display:block;overflow:hidden}.mask-line>span{transform-origin:0 100%;transition:transform 1.5s var(--ease);display:block;transform:translateY(112%)rotate(3deg)}.mask-text.is-visible .mask-line>span{transform:none}.line-mask,.label-mask,.count-mask{vertical-align:bottom;margin-bottom:-.1em;padding-bottom:.1em;display:inline-block;overflow:hidden}.line-mask>*,.label-mask>*{transition:transform 1.1s var(--ease);display:inline-block;transform:translateY(110%)}.is-visible .line-mask>*,.label-row.is-visible .label-mask>*{transform:none}.count-mask>span{display:inline-block}.reveal{opacity:0;filter:blur(6px);transition:opacity 1.3s var(--ease), transform 1.3s var(--ease), filter 1.3s var(--ease);transform:translateY(24px)}.reveal.is-visible{opacity:1;filter:none;transform:none}.roll{vertical-align:bottom;line-height:1.3;display:inline-block;overflow:hidden}.roll>span{transition:transform .75s var(--ease);display:inline-block;position:relative}.roll>span:after{content:attr(data-text);position:absolute;top:100%;left:0}a:hover .roll>span,button:hover .roll>span{transform:translateY(-100%)}.link-line{transition:color .5s var(--ease);padding-bottom:3px;display:inline-block;position:relative}.link-line:before,.link-line:after{content:"";pointer-events:none;background:currentColor;height:1px;position:absolute;bottom:0;left:0;right:0}.link-line:before{transform-origin:0;transition:transform .6s .22s var(--ease)}.link-line:after{transform-origin:100%;transition:transform .6s var(--ease);transform:scaleX(0)}.link-line:hover:before,.link-line:focus-visible:before{transform-origin:100%;transition-delay:0s;transform:scaleX(0)}.link-line:hover:after,.link-line:focus-visible:after{transform-origin:0;transition-delay:.22s;transform:scaleX(1)}.link-arrow{transition:transform .6s var(--ease);display:inline-block}a:hover .link-arrow,a:focus-visible .link-arrow{transform:translate(5px)}a:hover .link-arrow.is-out,a:focus-visible .link-arrow.is-out{transform:translate(3px,-3px)}.petal-field{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0}.hanko{flex:none;transform:rotate(-4deg)}.hanko-bg{fill:var(--shu)}.hanko-line{stroke:#f2ebe0}.hanko-text{fill:#f2ebe0;font-family:var(--font-display), serif;letter-spacing:-1px;font-size:40px;font-weight:400}@property --hole{syntax:"<length>";inherits:false;initial-value:0}.intro{--sun:min(24vmin, 220px);--hole:0px;z-index:200;color:#f2ebe0;background:radial-gradient(circle at 50% 46%, rgba(216, 54, 42, calc(.05 + var(--p) * .14)), transparent 42%), url(/tex/intro-paper.webp), #0d0809;-webkit-mask-image:radial-gradient(circle at var(--sx,50%) var(--sy,50%), transparent calc(var(--hole) - 80px), #000 calc(var(--hole) + 1px));-webkit-mask-image:radial-gradient(circle at var(--sx,50%) var(--sy,50%), transparent calc(var(--hole) - 80px), #000 calc(var(--hole) + 1px));-webkit-mask-image:radial-gradient(circle at var(--sx,50%) var(--sy,50%), transparent calc(var(--hole) - 80px), #000 calc(var(--hole) + 1px));mask-image:radial-gradient(circle at var(--sx,50%) var(--sy,50%), transparent calc(var(--hole) - 80px), #000 calc(var(--hole) + 1px));place-items:center;display:grid;position:fixed;inset:0}.intro.is-open{--hole:150vmax;pointer-events:none;opacity:0;transition:--hole 1.7s cubic-bezier(.7,0,.2,1),opacity .5s 1.4s}.intro-stage{grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(28px,7vmin,90px);display:grid}.intro-kanji-count{min-height:4.5em;font-family:var(--font-jp), serif;writing-mode:vertical-rl;color:#f2ebe08c;justify-self:end;font-size:clamp(1.1rem,1.7vw,1.4rem);line-height:1.45;transition:opacity .7s,filter .7s}.intro-sunset{width:var(--sun);height:calc(var(--sun) * 1.7);position:relative}.intro-sun,.intro-sun-ring{width:var(--sun);height:var(--sun);border-radius:50%;position:absolute;top:0;left:0}.intro-sun-ring{border:1px solid #d8362a59}.intro-sunset:before{content:"";left:50%;top:calc(var(--sun) / 2);width:calc(var(--sun) * 2.4);height:calc(var(--sun) * 2.4);opacity:var(--p);pointer-events:none;background:radial-gradient(circle,#ff6a3a6b,#ff6a3a00 62%);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.intro-sun{clip-path:inset(calc((1 - var(--p)) * 100%) 0 0 0 round 0);transition:transform 1.1s var(--ease), filter 1.1s ease;background:radial-gradient(circle at 50% 38%,#ff9264,#e2452f 52%,#b8261c 100%)}.intro-horizon{left:50%;top:calc(var(--sun) + 10px);width:calc(var(--sun) * 3.2);height:1px;transform:translateX(-50%) scaleX(calc(.08 + var(--p) * .92));background:linear-gradient(90deg,#0000,#f2ebe08c 30% 70%,#0000);position:absolute}.intro-reflection{left:0;top:calc(var(--sun) + 20px);width:var(--sun);height:calc(var(--sun) * .62);opacity:calc(var(--p) * .9);background:linear-gradient(#e2452f8c,#e2452f00);border-radius:0 0 50% 50%/0 0 100% 100%;animation:3.2s ease-in-out infinite alternate intro-ripple;position:absolute;-webkit-mask-image:repeating-linear-gradient(#000 0 3px,#0000 3px 9px);mask-image:repeating-linear-gradient(#000 0 3px,#0000 3px 9px)}.intro-title{flex-direction:column;justify-self:start;align-items:center;gap:22px;display:flex}.intro-jp{font-family:var(--font-jp), serif;flex-direction:column;align-items:center;gap:.35em;font-size:clamp(1.7rem,3.4vw,2.6rem);font-weight:600;line-height:1;display:flex}.intro-jp span{animation:1.1s cubic-bezier(.55,0,.2,1) both brush-down}.intro-seal{opacity:0;filter:blur(6px);transform:rotate(-6deg)scale(1.9)}.intro.is-leaving .intro-seal,.intro.is-open .intro-seal{animation:.55s cubic-bezier(.3,1.6,.5,1) both seal-stamp}.intro-meta{left:var(--gutter);right:var(--gutter);color:#f2ebe06b;justify-content:space-between;transition:opacity .6s;display:flex;position:absolute;bottom:36px}.intro-count{color:#f2ebe0cc;font-variant-numeric:tabular-nums}.intro.is-leaving .intro-kanji-count,.intro.is-open .intro-kanji-count,.intro.is-leaving .intro-meta,.intro.is-open .intro-meta{opacity:0;filter:blur(6px)}.intro.is-leaving .intro-jp,.intro.is-open .intro-jp{opacity:.35;transition:opacity .9s .4s}.intro.is-leaving .intro-sun,.intro.is-open .intro-sun{filter:brightness(1.15)saturate(1.1);transform:scale(1.06)}@keyframes brush-down{0%{clip-path:inset(0 0 100%);filter:blur(3px);opacity:.6}60%{filter:blur(.6px)}to{clip-path:inset(0);filter:none;opacity:1}}@keyframes seal-stamp{0%{opacity:0;filter:blur(6px);transform:rotate(-6deg)scale(1.9)}70%{opacity:1;filter:none;transform:rotate(-4deg)scale(.94)}to{opacity:1;filter:none;transform:rotate(-4deg)scale(1)}}@keyframes intro-ripple{to{transform:scaleX(1.04);-webkit-mask-position:0 6px;mask-position:0 6px}}@keyframes ink-in{0%{opacity:0;filter:blur(10px);transform:translateY(12px)}}@media (max-width:600px){.intro{--sun:34vw}}html:not(.is-loaded) .hero-letter>span,html:not(.is-loaded) .hero-kicker span{animation-play-state:paused}.site-header{z-index:50;padding:18px var(--gutter) 0;pointer-events:none;transition:transform .9s var(--ease), padding .8s var(--ease);justify-content:center;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled{padding-top:12px}.site-header.is-hidden{transform:translateY(calc(-100% - 12px))}.site-bar{--bar-pad:8px;width:min(100%,1480px);padding:var(--bar-pad) var(--bar-pad) var(--bar-pad) 18px;border:1px solid var(--hair);background:rgba(var(--bg-rgb), .38);-webkit-backdrop-filter:blur(18px)saturate(1.5);backdrop-filter:blur(18px)saturate(1.5);box-shadow:inset 0 1px 0 rgba(var(--fg-rgb), .06), 0 18px 40px -28px #000000b3;pointer-events:auto;transition:width .9s var(--ease), padding .8s var(--ease), background-color .6s, border-color .6s, box-shadow .8s var(--ease);border-radius:32px;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:relative;overflow:hidden}.is-scrolled .site-bar{--bar-pad:6px;background:rgba(var(--bg-rgb), .7);border-color:var(--hair-strong);width:min(100%,940px);box-shadow:inset 0 1px 0 rgba(var(--fg-rgb), .08), 0 22px 46px -24px #000000d9;padding-left:14px}.site-logo{font-family:var(--font-display), serif;letter-spacing:-.01em;white-space:nowrap;justify-self:start;align-items:center;gap:10px;font-size:1.15rem;font-weight:400;display:flex}.site-logo .hanko{transition:transform .7s var(--ease);flex:none}.site-logo:hover .hanko{transform:rotate(-8deg)scale(1.06)}.site-nav{gap:2px;display:flex;position:relative}.nav-thumb{width:var(--thumb-w,0);opacity:var(--thumb-o,0);transform:translateX(var(--thumb-x,0));transition:transform .7s var(--ease), width .7s var(--ease), opacity .4s;pointer-events:none;background:radial-gradient(70% 120% at 50% 0,#ffb48c1f,#0000 70%),linear-gradient(#24120f,#0e0607);border-radius:999px;position:absolute;top:0;bottom:0;left:0;box-shadow:inset 0 0 0 1px #c9a46a8c,inset 0 1px #ffe2b42e,0 8px 20px -10px #000000e6}.nav-link{font-family:var(--font-mono), monospace;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;transition:padding .8s var(--ease);border-radius:999px;align-items:baseline;gap:8px;padding:11px 18px;font-size:10.5px;display:flex;position:relative}.is-scrolled .nav-link{padding-inline:15px}.nav-index{color:var(--faint);transition:color .3s}.nav-label{color:var(--muted);transition:color .3s}.nav-link:hover .nav-index{color:var(--shu)}.nav-link:hover .nav-label,.nav-link.is-active .nav-label{color:var(--paper)}.nav-link.is-active .nav-index{color:#ff6a4d}.nav-link.is-active .nav-label{color:#f2ebe0}.site-tools{justify-self:end;align-items:center;gap:6px;display:flex}.lang-switch{border:1px solid var(--hair);font-family:var(--font-mono), monospace;letter-spacing:.1em;border-radius:999px;padding:3px;font-size:10.5px;display:flex;position:relative}.lang-switch button{width:40px;color:var(--faint);cursor:pointer;padding:8px 0;transition:color .3s;position:relative}.lang-switch button:hover,.lang-switch button.is-active{color:var(--paper)}.lang-thumb{background:rgba(var(--fg-rgb), .1);width:40px;box-shadow:inset 0 0 0 1px rgba(var(--fg-rgb), .12);transition:transform .6s var(--ease);border-radius:999px;position:absolute;top:3px;bottom:3px;left:3px}.lang-switch.is-en .lang-thumb{transform:translate(100%)}.header-progress{background:linear-gradient(to right, var(--shu), var(--ember));transform-origin:0;opacity:0;height:1px;transition:opacity .6s;position:absolute;bottom:0;left:28px;right:28px;transform:scaleX(0)}.is-scrolled .header-progress{opacity:.85}.menu-btn{border:1px solid var(--hair);cursor:pointer;border-radius:50%;width:40px;height:40px;display:none;position:relative}.menu-btn span{background:var(--paper);width:16px;height:1.5px;transition:transform .6s var(--ease);border-radius:1px;margin-left:-8px;position:absolute;top:50%;left:50%}.menu-btn span:first-child{transform:translateY(-3.5px)}.menu-btn span:last-child{transform:translate(3px,3.5px)scaleX(.6)}.is-open .menu-btn span:first-child{transform:rotate(45deg)}.is-open .menu-btn span:last-child{transform:rotate(-45deg)}.site-menu{display:none}@media (max-width:1100px){.nav-link,.is-scrolled .nav-link{padding-inline:12px}.nav-index{display:none}}@media (max-width:760px){.site-header{padding-top:12px}.site-bar,.is-scrolled .site-bar{border-radius:28px;grid-template-columns:1fr auto;width:100%;padding-left:14px}.is-scrolled .site-bar{--bar-pad:5px}.site-nav{display:none}.menu-btn{display:block}.site-tools>.lang-switch{display:none}.site-menu-lang{padding:14px 4px 16px;display:flex}.site-menu{transition:grid-template-rows .7s var(--ease);grid-column:1/-1;grid-template-rows:0fr;display:grid}.is-open .site-menu{grid-template-rows:1fr}.site-menu>ul{min-height:0;overflow:hidden}.site-menu li{border-top:1px solid var(--hair);opacity:0;transition:opacity .4s, transform .6s var(--ease);transform:translateY(-8px)}.site-menu li:first-child{margin-top:10px}.is-open .site-menu li{opacity:1;transition-delay:calc(.12s + var(--i) * 50ms);transform:none}.site-menu a{font-family:var(--font-display), sans-serif;color:var(--paper-80);align-items:baseline;gap:14px;padding:16px 4px;font-size:1.5rem;font-weight:300;display:flex}.site-menu a .mono{color:var(--faint)}.site-menu a.is-active{color:var(--paper)}.site-menu a.is-active .mono{color:var(--shu)}.is-open .site-bar{background:rgba(var(--bg-rgb), .86)}}@media (prefers-reduced-motion:reduce){.site-bar,.site-menu,.site-menu li{transition:none}}.hero{color:#f2ebe0;background:linear-gradient(#0e0a1c 0%,#5c1532 50%,#ff7448 64%,#100510 65%,#0d0809 100%);height:100svh;min-height:640px;position:relative;overflow:hidden}.hero-canvas{opacity:0;transition:opacity 2s;position:absolute;inset:0}.hero-canvas.is-ready{opacity:1}.hero-shade{pointer-events:none;background:linear-gradient(to top, var(--bg) 0%, #0d080980 22%, transparent 48%), linear-gradient(to bottom, #0d08098c, transparent 18%);position:absolute;inset:0}.hero-dim{z-index:3;background:var(--bg);opacity:0;pointer-events:none;position:absolute;inset:0}.hero-grid{z-index:4;padding:92px var(--gutter) 26px;pointer-events:none;grid-template-rows:auto 1fr auto auto;grid-template-columns:minmax(0,1fr);display:grid;position:absolute;inset:0}.hero-grid a{pointer-events:auto}.hero-meta{color:#f2ebe0cc;justify-content:space-between;gap:24px;display:flex}html.is-loaded .hero-meta-top .line-mask>*{transition-delay:1.5s;transform:none}html.is-loaded .hero-meta-top .line-mask+.line-mask>*{transition-delay:1.62s}.hero-lockup{align-self:end;max-width:min(620px,52vw);padding-bottom:4vh}.hero-kicker{font-family:var(--font-jp), serif;align-items:center;gap:18px;margin-bottom:22px;display:flex}.hero-kana{color:#f7f1e8;text-shadow:0 1px 1px #0d08098c,0 0 6px #0d080959;gap:.34em;font-size:18px;font-weight:600;line-height:1;display:flex}.hero-kana>span{animation:ink-in 1.4s var(--ease) both;display:inline-block}.hero-kicker-rule{clip-path:polygon(0 0,100% 40%,100% 60%,0 100%);transform-origin:0;width:64px;height:2px;animation:rule-draw 1s 1.6s var(--ease) both;background:linear-gradient(90deg,#f2ebe0b3,#d8362a80 70%,#0000);border-radius:2px}@keyframes rule-draw{0%{transform:scaleX(0)}}.hero-seal{letter-spacing:.2em;color:#f2ebe0;background:var(--shu);box-shadow:inset 0 0 0 2px var(--shu), inset 0 0 0 3px #f2ebe0b3, 0 6px 18px -6px #d8362a99;border-radius:3px;padding:8px 8px 8px 10px;font-size:12px;font-weight:600;line-height:1;animation:.7s cubic-bezier(.3,1.4,.5,1) 2s both seal-stamp;display:inline-flex;position:relative}.hero-name{font-family:var(--font-display), serif;letter-spacing:-.04em;white-space:nowrap;color:#f2ebe0;align-items:baseline;margin:0 0 0 -.04em;font-size:clamp(3.4rem,8.4vw,8.8rem);font-weight:300;line-height:.95;display:flex}.hero-tagline{max-width:34ch;font-family:var(--font-body), sans-serif;color:#f2ebe094;margin-top:26px;font-size:clamp(1.05rem,1.3vw,1.3rem);font-weight:300;line-height:1.45}.hero-tagline .is-lead{color:#f2ebe0}.hand-word{white-space:nowrap}.hand-char{opacity:0;transform-origin:30% 90%;will-change:transform, opacity;display:inline-block}.hero-tagline.is-still .hand-char{opacity:1}.hero-tagline.is-writing .hand-char{animation:.7s cubic-bezier(.2,.8,.2,1) both hand-write;animation-delay:calc(var(--i) * 38ms)}.hero-tagline.is-scatter .hand-char{animation:.9s cubic-bezier(.5,0,.75,.3) both hand-scatter;animation-delay:calc(var(--i) * 22ms)}@keyframes hand-write{0%{opacity:0;filter:blur(4px);transform:translateY(.18em)rotate(-9deg)scale(.86)}40%{opacity:1;filter:blur();color:#ffd8c2;text-shadow:0 0 12px #ff9664bf}to{opacity:1;filter:none;transform:none}}@keyframes hand-scatter{0%{opacity:1}to{opacity:0;filter:blur(2px);transform:translate(.45em,-.5em)rotate(28deg)scale(.35)}}.hand-petals{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-letter{margin-block:-.08em -.06em;padding:.08em .02em .06em;display:inline-block;overflow:hidden}.hero-letter>span{transform-origin:0 100%;animation:letter-rise 2s var(--ease) both;display:inline-block}.hero-meta-bottom{align-items:center;margin-top:18px;padding-top:16px;position:relative}.hero-meta-bottom>.mono{font-size:13px}.hero-meta-bottom:before{content:"";transform-origin:0;height:1px;transition:transform 2s 1.2s var(--ease);background:#f2ebe047;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.hero-meta-bottom>*{opacity:0;transition:opacity 1.2s var(--ease), transform 1.2s var(--ease);transform:translateY(10px)}html.is-loaded .hero-meta-bottom:before{transform:none}html.is-loaded .hero-meta-bottom>*{opacity:1;transition-delay:1.7s;transform:none}.hero-scroll{align-items:center;gap:14px;display:flex}.hero-scroll-line{background:#f2ebe047;width:52px;height:1px;position:relative;overflow:hidden}.hero-scroll-line:after{content:"";animation:sweep 2.4s var(--ease-io) infinite;background:#f2ebe0;position:absolute;inset:0}@media (max-width:760px){.hero-lockup{max-width:none;padding-bottom:2vh}.hero-name{font-size:18vw}.hero-meta-top span:last-child{display:none}.hero-meta-bottom>.mono{letter-spacing:.08em;white-space:nowrap;font-size:11px}.hero-scroll-line{display:none}}.status-badge{right:var(--gutter);z-index:45;border:1px solid var(--hair-strong);background:radial-gradient(120% 160% at 0% 50%, #ff9a6b29, transparent 55%), rgba(var(--bg-rgb), .55);-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4);color:var(--paper);opacity:0;pointer-events:none;transition:opacity .9s var(--ease), transform .9s var(--ease), border-color .5s, box-shadow .6s var(--ease);border-radius:999px;align-items:center;gap:12px;padding:8px 18px 8px 10px;display:inline-flex;position:fixed;bottom:15px;transform:translateY(14px);box-shadow:0 14px 34px -20px #000c}html.is-loaded .status-badge{opacity:1;pointer-events:auto;transition-delay:1.8s,1.8s,0s,0s;transform:none}html.is-loaded .status-badge.is-away{opacity:0;pointer-events:none;transition-delay:0s;transform:translateY(14px)}.status-badge:hover{border-color:#ff9a6b8c;box-shadow:0 14px 34px -20px #000c,0 0 28px -10px #ff9a6b8c}.status-lantern{background:radial-gradient(circle at 50% 42%, #ffe2c4 0 14%, var(--ember) 38%, #d8362a8c 70%, transparent 72%);border-radius:50%;flex:none;width:22px;height:22px;position:relative;box-shadow:0 0 14px 1px #ff9a6b80}.status-lantern:before{content:"";background:radial-gradient(circle at 50% 42%, #fffddb 0 14%, var(--ember) 38%, #f23c2f40 70%, transparent 72%);border-radius:50%;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.status-lantern:before{background:radial-gradient(circle at 50% 42%, #fffddb 0 14%, color-mix(in srgb, var(--ember), #fff 12%) 38%, #f23c2f40 70%, transparent 72%)}}.status-lantern:before{opacity:0;animation:3.2s ease-in-out infinite lantern-breathe;box-shadow:0 0 22px 4px #ff9a6b73}.status-lantern:after{content:"";border:1px solid #ff9a6b99;border-radius:50%;animation:3.2s ease-out infinite lantern-ring;position:absolute;inset:3px}.status-jp{font-family:var(--font-jp), serif;letter-spacing:.18em;color:var(--ember);font-size:13px;font-weight:600}.status-rule{background:var(--hair-strong);width:1px;height:14px}.status-label{color:var(--paper-80);font-size:12px;transition:color .4s}.status-badge:hover .status-label{color:var(--paper)}.status-arrow{color:var(--ember);transition:transform .6s var(--ease);margin-left:-2px;font-size:13px}.status-badge:hover .status-arrow{transform:translate(4px)}@keyframes lantern-breathe{50%{opacity:1}}@keyframes lantern-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}@media (max-width:760px){.status-badge{gap:8px;padding:5px 12px 5px 6px;bottom:16px}.status-jp,.status-rule{display:none}.status-lantern{width:18px;height:18px}.status-label{letter-spacing:.1em;font-size:9.5px}.status-arrow{font-size:11px}}@media (prefers-reduced-motion:reduce){.status-lantern:before,.status-lantern:after{animation:none}}@keyframes letter-rise{0%{transform:translateY(112%)rotate(9deg)}to{transform:none}}@keyframes fade-in{0%{opacity:0}}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.section{padding:clamp(110px, 16vh, 180px) var(--gutter);position:relative}.label-row{color:var(--paper);align-items:center;gap:22px;display:flex}.label-row .mono{letter-spacing:.14em;font-size:15px}.label-row .label-mask:first-child .mono{color:var(--ember)}.label-rule{background:var(--hair-strong);transform-origin:0;height:1px;transition:transform 1.8s var(--ease);flex:1;transform:scaleX(0)}.label-row.is-visible .label-rule{transform:none}.projects{background:var(--bg);--roll:132px;--roll-right:5vw;--paper-h:min(72vh, 650px);position:relative}.projects-label .label-rule{display:none}.projects-label{padding:0 var(--gutter)}.works-stage{align-items:center;display:flex;position:relative}.works-track{width:max-content;height:var(--paper-h);color:var(--sumi);background-color:var(--washi);perspective:1600px;will-change:transform;background-image:linear-gradient(#0000 18px,#b8894a8c 18px 19px,#0000 19px 23px,#b8894a59 23px 24px,#0000 24px calc(100% - 24px),#b8894a59 calc(100% - 24px) calc(100% - 23px),#0000 calc(100% - 23px) calc(100% - 19px),#b8894a8c calc(100% - 19px) calc(100% - 18px),#0000 calc(100% - 18px)),url(/tex/scroll-paper.webp);align-items:center;gap:clamp(48px,5vw,96px);padding:0 clamp(120px,12vw,200px) 0 0;display:flex;position:relative;box-shadow:0 40px 90px -40px #000000d9}.scroll-rod{background:linear-gradient(90deg,#060304,#3d2426 40%,#120809 70%,#050203);border-radius:10px;flex:none;align-self:stretch;width:20px;margin:-16px clamp(40px,4vw,80px) -16px 0;position:relative;box-shadow:8px 0 20px -6px #00000080}.scroll-rod:before,.scroll-rod:after{content:"";background:linear-gradient(#f0d394,#b8894a 50%,#6e4c22);border-radius:4px;width:30px;height:14px;position:absolute;left:50%;transform:translate(-50%)}.scroll-rod:before{top:-8px}.scroll-rod:after{bottom:-8px}.works-intro{flex:none;width:min(30vw,440px)}.works-hint{letter-spacing:.16em;color:#161012d9;align-items:center;gap:12px;margin-top:40px;font-size:13px;display:inline-flex}.works-hint-touch{letter-spacing:.12em;gap:8px;font-size:11px}.works-hint-touch .works-hint-arrow{font-size:1.1em}.works-hint-arrow{animation:nudge 2.4s var(--ease-io) infinite;font-size:1.25em;display:inline-block}.works-hint-desk{display:none}@media (min-width:900px) and (prefers-reduced-motion:no-preference){.works-hint-desk{display:inline-flex}.works-hint-touch{display:none}}.work{width:calc(var(--paper-h) * .92);backface-visibility:hidden;flex:none}.work-frame{aspect-ratio:16/10;cursor:pointer;background:#ddd2bf;width:100%;display:block;position:relative;overflow:hidden;box-shadow:0 0 0 1px #1610121a,0 18px 40px -24px #1610128c}.poster-parallax{will-change:transform;display:block;position:absolute;inset:0 -24px}.poster-parallax img{object-fit:cover;object-position:50% 0;width:100%;height:100%;transition:transform 1.6s var(--ease)}.work-frame:hover .poster-parallax img{transform:scale(1.04)}.poster-parallax.is-contain{background:var(--backdrop);padding:0 calc(24px + 4%)}.poster-parallax.is-contain img{object-fit:contain;object-position:50% 50%}.work-caption{margin-top:16px}.work-row{color:#1610128c;border-top:1px solid #1610122e;justify-content:space-between;gap:12px;padding-top:10px;display:flex}.work-title{font-family:var(--font-display), serif;letter-spacing:-.015em;transition:transform .9s var(--ease);margin-top:12px;font-size:clamp(1.7rem,2.2vw,2.2rem);font-weight:300;line-height:1}.work:hover .work-title{transform:translate(10px)}.work-title button{font:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.work-url{white-space:nowrap;color:#161012bf;text-transform:none;flex:none;transition:color .3s}.work-url:hover{color:var(--shu)}.work-desc{color:#161012a8;max-width:34ch;margin-top:8px;font-size:.9rem;line-height:1.55}.work-tags{color:#16101273;text-transform:none;margin-top:12px}.works-end{width:min(24vw,340px);font-family:var(--font-display), serif;flex-direction:column;flex:none;align-items:flex-start;gap:26px;font-size:1.35rem;display:flex}.works-end-jp{font-family:var(--font-jp), serif;color:var(--shu);font-size:6.5rem;line-height:1}.paper-curl,.paper-roll,.paper-roll-v{display:none}.works-petals{z-index:5}.works-hud{padding:0 var(--gutter);color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:24px;display:flex}.works-progress{background:var(--hair);flex:1;height:1px}.works-progress span{background:var(--paper);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.projects.is-dragging .works-viewport{cursor:grabbing;-webkit-user-select:none;user-select:none}@media (min-width:900px) and (prefers-reduced-motion:no-preference){.projects{flex-direction:column;justify-content:space-between;height:100vh;padding:72px 0 28px;display:flex;overflow:hidden}.works-stage{flex:1}.works-viewport{touch-action:pan-y;cursor:grab;width:100%;clip-path:inset(-80px calc(var(--roll-right) + var(--roll) / 2) -80px 0);position:relative}.paper-curl{top:50%;right:calc(var(--roll-right) + var(--roll) / 2);width:220px;height:var(--paper-h);pointer-events:none;will-change:transform;background:linear-gradient(90deg,#0000,#46240e1a 55%,#1e0e066b);display:block;position:absolute;transform:translateY(-50%)}.paper-roll{top:50%;right:var(--roll-right);z-index:3;width:var(--roll);height:calc(var(--paper-h) + 6px);will-change:transform;display:block;position:absolute;transform:translateY(-50%)}}.paper-roll-body{background:linear-gradient(90deg,#0000 29%,#fffcf4d9 33%,#0000 37%),linear-gradient(90deg,#0000 80%,#ecd2aa47 87%,#0000 93%),url(/tex/roll-fibers.webp),linear-gradient(90deg,#4d4337 0%,#8f8371 7%,#cdc1aa 17%,#ebe2d0 27%,#f7f1e5 34%,#ede4d3 46%,#d9cdb7 62%,#b4a68e 76%,#8d7f69 88%,#564a3c 100%);border-radius:10px/14px;position:absolute;inset:0;overflow:hidden;box-shadow:-24px 0 46px -12px #000000a6,-2px 0 6px #00000059,inset 0 0 0 1px #281a0c1a}.paper-roll-body:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 7px,#5a42240f 7px 8px,#0000 8px 13px,#fffaee1f 13px 14px);background-position:var(--spin,0) 0;mix-blend-mode:multiply;position:absolute;inset:0}.paper-roll-cap{z-index:1;width:var(--roll);background:radial-gradient(#0000 30%,#3c28142e 72%,#281a0c66 100%),repeating-radial-gradient(closest-side,#f1e9da 0%,#e6dbc7 5%,#d3c4ab 6.5%,#f1e9da 9%);border-radius:50%;height:20px;position:absolute;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #3c281438,0 1px #fff8e866}.paper-roll-cap:before,.paper-roll-cap:after{content:"";position:absolute;left:50%;transform:translate(-50%)}.paper-roll-cap:before{background:linear-gradient(#0000 0 calc(100% - 7px),#f3d999 calc(100% - 7px),#c99a52 calc(100% - 4px),#7a5325 100%),linear-gradient(90deg,#120807 0%,#3e2219 22%,#7b4b36 40%,#a1694b 46%,#5c3324 62%,#26130d 84%,#0d0605 100%);width:26px;height:22px;box-shadow:0 0 0 .5px #0009}.paper-roll-cap:after{background:radial-gradient(at 42% 40%,#9a644a,#4a281c 55%,#1a0c08 100%);border-radius:50%;width:26px;height:10px;box-shadow:inset 0 0 0 1.5px #d6aa60d9,inset 0 1px 2px #ffe6be59}.paper-roll-cap-top{top:-10px}.paper-roll-cap-top:before{border-radius:4px 4px 13px 13px/4px 4px 5px 5px;bottom:50%}.paper-roll-cap-top:after{bottom:calc(50% + 17px)}.paper-roll-cap-bottom{bottom:-10px}.paper-roll-cap-bottom:before{background:linear-gradient(0deg,#0000 0 calc(100% - 7px),#f3d999 calc(100% - 7px),#c99a52 calc(100% - 4px),#7a5325 100%),linear-gradient(90deg,#120807 0%,#3e2219 22%,#7b4b36 40%,#a1694b 46%,#5c3324 62%,#26130d 84%,#0d0605 100%);border-radius:13px 13px 4px 4px/5px 5px 4px 4px;top:50%}.paper-roll-cap-bottom:after{background:radial-gradient(at 50% 70%,#5a3224,#26130d 60%,#0d0605 100%);top:calc(50% + 17px);box-shadow:inset 0 0 0 1px #7a5325b3}@media (min-width:900px) and (prefers-reduced-motion:reduce){.projects{padding-block:110px}.works-viewport{scroll-snap-type:x mandatory;width:100%;scroll-padding-inline:var(--gutter);scrollbar-width:none;margin-top:40px;overflow-x:auto}.works-track{height:auto;padding:60px 40px 60px 0}.works-hud{display:none}.works-intro{scroll-snap-align:start;width:76vw}.work{scroll-snap-align:center;width:84vw}.works-end{width:max-content;min-width:60vw;padding-right:var(--gutter);scroll-snap-align:end}}@media (max-width:899px){.projects{padding-block:96px 110px}.works-stage{padding:0 calc(var(--gutter) + 6px);margin-top:40px;display:block}.works-viewport{position:relative}.works-track{perspective:1100px;background-image:linear-gradient(90deg,#0000 12px,#b8894a8c 12px 13px,#0000 13px 17px,#b8894a59 17px 18px,#0000 18px calc(100% - 18px),#b8894a59 calc(100% - 18px) calc(100% - 17px),#0000 calc(100% - 17px) calc(100% - 13px),#b8894a8c calc(100% - 13px) calc(100% - 12px),#0000 calc(100% - 12px)),url(/tex/rod-fibers.webp);flex-direction:column;align-items:stretch;gap:64px;width:auto;height:auto;padding:0 28px 64px;box-shadow:0 30px 60px -30px #000000d9}.scroll-rod{background:linear-gradient(#060304,#3d2426 40%,#120809 70%,#050203);border-radius:9px;width:auto;height:18px;margin:0 -38px;box-shadow:0 8px 18px -6px #00000080}.scroll-rod:before,.scroll-rod:after{background:linear-gradient(90deg,#f0d394,#b8894a 50%,#6e4c22);width:12px;height:28px;top:50%;left:auto;transform:translateY(-50%)}.scroll-rod:before{left:-6px}.scroll-rod:after{bottom:auto;right:-6px}.works-intro,.work{width:auto}.works-hud{display:none}.works-hint-touch .works-hint-arrow{rotate:90deg}.works-end{text-align:center;align-items:center;width:auto}.works-end-jp{font-size:5rem}}@media (max-width:899px) and (prefers-reduced-motion:no-preference){.works-viewport{clip-path:inset(-40px -60px calc(100% - var(--unroll,0px)) -60px)}.paper-roll-v{top:0;left:calc(var(--gutter) - 8px);right:calc(var(--gutter) - 8px);z-index:4;height:var(--roll-h,40px);transform:translateY(calc(var(--unroll,0px) - var(--roll-h,40px) / 2));will-change:transform;pointer-events:none;background:linear-gradient(#a8977a 0%,#efe5d1 28%,#fffaf0 40%,#e3d6be 62%,#9c8a6c 100%);border-radius:8px;display:block;position:absolute;box-shadow:0 -16px 20px -14px #3c1e0a66,0 12px 20px -10px #0009}.paper-roll-v:before,.paper-roll-v:after{content:"";background:linear-gradient(90deg,#f0d394,#b8894a 50%,#6e4c22);border-radius:4px;width:12px;height:calc(100% + 12px);position:absolute;top:50%;transform:translateY(-50%)}.paper-roll-v:before{left:-8px}.paper-roll-v:after{right:-8px}}@keyframes nudge{50%{transform:translate(8px)}}@keyframes nudge-down{50%{transform:translateY(6px)}}:is(html.is-locked,html:not(.is-loaded):has(.intro)){overflow:hidden}.work-modal{width:100%;max-width:none;height:100%;max-height:none;padding:clamp(16px, 4vh, 48px) var(--gutter);overscroll-behavior:contain;scrollbar-width:none;color:var(--sumi);background:0 0;border:0;margin:0;position:fixed;inset:0;overflow-y:auto}.work-modal::-webkit-scrollbar{display:none}.work-modal::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:modal-fade .5s var(--ease) both;background:#0a0607b8}.work-modal.is-closing::backdrop{animation:modal-fade .42s var(--ease-io) reverse both}html.has-cursor .work-modal{cursor:auto}html.has-cursor .work-modal a,html.has-cursor .work-modal button{cursor:pointer}.work-modal-panel{background-color:var(--washi);max-width:1100px;box-shadow:inset 0 0 0 1px #b8894a73, inset 0 0 0 6px var(--washi), inset 0 0 0 7px #b8894a4d, 0 50px 120px -40px #000000e6;animation:modal-rise .7s var(--ease) both;background-image:url(/tex/scroll-paper.webp);margin:0 auto;padding:clamp(24px,4vw,56px);position:relative}.work-modal.is-closing .work-modal-panel{animation:modal-sink .42s var(--ease-io) both}.work-modal-head{color:#161012b3;border-bottom:1px solid #1610122e;align-items:center;min-height:58px;padding:0 150px 14px 0;font-size:12px;display:flex}.work-modal-close{top:max(10px, env(safe-area-inset-top));z-index:5;width:max-content;height:44px;color:var(--sumi);letter-spacing:.14em;text-transform:uppercase;transition:background-color .35s var(--ease), color .35s var(--ease);background:#ece3d2f0;border-radius:999px;align-items:center;gap:10px;margin:0 0 -44px auto;padding:0 5px 0 16px;font-size:12px;display:flex;position:sticky;box-shadow:inset 0 0 0 1px #16101247,0 10px 24px -12px #1610128c}.work-modal-close-x{background:var(--sumi);width:34px;height:34px;color:var(--washi);transition:background-color .35s var(--ease), transform .5s var(--ease);border-radius:50%;place-items:center;display:grid}.work-modal-close-x svg{width:12px;height:12px}.work-modal-close:hover{background:var(--sumi);color:var(--washi)}.work-modal-close:hover .work-modal-close-x{background:var(--shu);transform:rotate(90deg)}.work-modal-close:focus{outline:none}.work-modal-close:focus-visible{outline:2px solid var(--shu);outline-offset:3px}.work-modal-title{font-family:var(--font-display), serif;letter-spacing:-.02em;margin-top:clamp(22px,3vw,36px);font-size:clamp(2.6rem,6vw,5rem);font-weight:300;line-height:.95}.work-modal-lead{color:#161012cc;max-width:46ch;margin-top:16px;font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.5}.work-modal-shot{background:#ddd2bf;margin-top:clamp(24px,3vw,40px);position:relative;overflow:hidden;box-shadow:0 0 0 1px #1610121a,0 24px 50px -30px #16101299}.work-modal-shot img{width:100%;height:auto;display:block}.work-modal-body{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);margin-top:clamp(28px,4vw,52px);display:grid}.work-modal-summary{font-size:1.08rem;line-height:1.65}.work-modal h4{color:var(--shu);margin-bottom:10px;font-size:12px}.work-modal-block{margin-top:28px}.work-modal-block p{color:#161012d1;line-height:1.65}.work-modal-list li{border-top:1px solid #1610121f;padding:9px 0 9px 22px;line-height:1.45;position:relative}.work-modal-list li:before{content:"";background:var(--shu);width:8px;height:1px;position:absolute;top:1.05em;left:2px}.work-modal-facts>div{border-top:1px solid #16101224;padding:10px 0}.work-modal-facts dt{color:#16101299;font-size:11px}.work-modal-facts dd{margin-top:4px;line-height:1.4}.work-modal-tags.work-modal-tags{font-family:var(--font-mono), monospace;color:#161012bf;font-size:12px;line-height:1.8}.work-modal-links{flex-direction:column;align-items:flex-start;gap:18px;margin-top:34px;display:flex}.work-modal-cta{isolation:isolate;-webkit-backdrop-filter:blur(14px)saturate(1.3);color:var(--washi);transition:box-shadow .5s var(--ease), transform .5s var(--ease);background:#161012d6;border-radius:999px;align-items:center;gap:clamp(14px,1.6vw,22px);padding:8px 8px 8px clamp(18px,2vw,26px);display:inline-flex;position:absolute;bottom:clamp(12px,2.4vw,28px);right:clamp(12px,2.4vw,28px);overflow:hidden;box-shadow:inset 0 0 0 1px #ece3d229,0 18px 40px -16px #0a0607bf}.work-modal-cta:before{content:"";z-index:-1;background:var(--shu);clip-path:circle(0 at calc(100% - 34px));transition:clip-path .7s var(--ease);position:absolute;inset:0}.work-modal-cta-text{flex-direction:column;gap:3px;line-height:1;display:flex}.work-modal-cta-label{font-family:var(--font-display), serif;letter-spacing:-.01em;font-size:clamp(1rem,1.3vw,1.15rem);font-weight:400}.work-modal-cta-url{text-transform:none;letter-spacing:.02em;color:#ece3d29e;transition:color .4s var(--ease);font-size:11px}.work-modal-cta-orb{background:var(--shu);width:52px;height:52px;color:var(--washi);transition:background-color .5s var(--ease), color .5s var(--ease), transform .5s var(--ease);border-radius:50%;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.work-modal-cta-orb>svg{width:18px;height:18px;transition:transform .55s var(--ease);grid-area:1/1}.work-modal-cta-orb>svg+span{transform:translate(-150%,150%)}.work-modal-cta:hover,.work-modal-cta:focus-visible{transform:translateY(-2px);box-shadow:inset 0 0 0 1px #ece3d238,0 26px 50px -18px #d8362a99}.work-modal-cta:hover:before,.work-modal-cta:focus-visible:before{clip-path:circle(150% at calc(100% - 34px))}.work-modal-cta:hover .work-modal-cta-url,.work-modal-cta:focus-visible .work-modal-cta-url{color:#ece3d2d9}.work-modal-cta:hover .work-modal-cta-orb,.work-modal-cta:focus-visible .work-modal-cta-orb{background:var(--washi);color:var(--sumi);transform:rotate(-8deg)scale(1.04)}.work-modal-cta:hover .work-modal-cta-orb>svg:first-child,.work-modal-cta:focus-visible .work-modal-cta-orb>svg:first-child{transform:translate(150%,-150%)}.work-modal-cta:hover .work-modal-cta-orb>svg+span,.work-modal-cta:focus-visible .work-modal-cta-orb>svg+span{transform:none}.work-modal-cta:focus-visible{outline:2px solid var(--washi);outline-offset:3px}@media (max-width:560px){.work-modal-shot{box-shadow:none;background:0 0;overflow:visible}.work-modal-shot img{background:#ddd2bf;box-shadow:0 0 0 1px #1610121a,0 24px 50px -30px #16101299}.work-modal-cta{background:var(--sumi);-webkit-backdrop-filter:none;justify-content:space-between;width:100%;margin-top:16px;padding:6px 6px 6px 22px;display:flex;position:relative;bottom:auto;right:auto}.work-modal-cta:before{clip-path:circle(0 at calc(100% - 28px))}.work-modal-cta:hover:before,.work-modal-cta:focus-visible:before{clip-path:circle(150% at calc(100% - 28px))}.work-modal-cta-text{gap:6px}.work-modal-cta-label{font-size:1.1rem}.work-modal-cta-url{color:#ece3d2b3;font-size:12px}.work-modal-cta-orb{width:44px;height:44px}.work-modal-cta-orb>svg{width:16px;height:16px}}@media (prefers-reduced-motion:reduce){.work-modal-cta,.work-modal-cta:before,.work-modal-cta-orb,.work-modal-cta-orb>svg{transition:none}}@keyframes modal-fade{0%{opacity:0}}@keyframes modal-rise{0%{opacity:0;transform:translateY(40px)scale(.98)}}@keyframes modal-sink{to{opacity:0;transform:translateY(24px)scale(.985)}}@media (max-width:760px){.work-modal-body{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.work-modal-panel,.work-modal::backdrop,.work-modal.is-closing .work-modal-panel,.work-modal.is-closing::backdrop{animation:none}}@media (max-width:899px){.skills{padding-top:64px}}.skills{background:linear-gradient(to bottom, var(--bg) 0, rgba(var(--bg-rgb), 0) clamp(260px, 38vh, 420px)), radial-gradient(ellipse 60% 50% at 85% 32%, var(--lacquer), transparent 70%)}@supports (color:color-mix(in lab, red, red)){.skills{background:linear-gradient(to bottom, var(--bg) 0, rgba(var(--bg-rgb), 0) clamp(260px, 38vh, 420px)), radial-gradient(ellipse 60% 50% at 85% 32%, color-mix(in srgb, var(--lacquer) 55%, transparent), transparent 70%)}}.skills-head{grid-template-columns:1fr 1fr;align-items:end;gap:6vw;margin:clamp(40px,7vh,80px) 0 clamp(32px,5vh,56px);display:grid}.skills-intro{max-width:40ch;color:var(--muted);font-size:1.08rem;line-height:1.6}.skills-hint{color:var(--faint);margin-top:18px}.garden{--fg-rgb:242, 235, 224;--paper:rgb(var(--fg-rgb));--paper-80:rgba(var(--fg-rgb), .8);--muted:rgba(var(--fg-rgb), .56);--faint:rgba(var(--fg-rgb), .34);--hair:rgba(var(--fg-rgb), .12);--ember:#ff9a6b;border-block:1px solid var(--hair);background-color:#1a1315;background-image:url(/tex/garden-paper.webp);position:relative;overflow:hidden;box-shadow:inset 0 0 140px #0000008c}.garden-svg{width:100%;height:auto;display:block}.garden-sand{fill:#0000}.garden-rake path,.stone-rings circle{fill:none;stroke-width:1.1px;stroke-dasharray:1;stroke-dashoffset:1px}.garden-rake path{stroke:#0000008c;transition:stroke-dashoffset 2.6s var(--ease) var(--d)}.stone-rings circle{stroke:#0009;transition:stroke-dashoffset 1.8s var(--ease) var(--d), stroke .5s}.garden.is-visible .garden-rake path,.garden.is-visible .stone-rings circle{stroke-dashoffset:0}.garden-rake-lip,.stone-rings-lip{translate:0 1.6px}.garden-rake-lip path,.garden .stone-rings-lip circle{stroke:#ffb28433}.stone{transition:opacity .5s}.stone-hit{fill:#0000;pointer-events:all}.stone>:not(.stone-hit){pointer-events:none}.stone-body,.stone-shadow,.stone-leader,.stone-name{opacity:0}.stone-body{transition:translate .6s var(--ease);translate:0}.garden.is-visible .stone-body,.garden.is-visible .stone-shadow{transform-box:fill-box;transform-origin:50%;animation:stone-drop 1.3s var(--ease) var(--d) both}.garden.is-visible .stone-leader,.garden.is-visible .stone-name{animation:appear 1.2s var(--ease) calc(var(--d) + .6s) both}@keyframes appear{0%{opacity:0}to{opacity:1}}.stone-leader{stroke:rgba(var(--fg-rgb), .3);stroke-width:1px}.stone-name{font-family:var(--font-display), serif;fill:var(--paper);font-size:22px;font-weight:300;transition:fill .4s}.stone-note{font-family:var(--font-mono), monospace;letter-spacing:.06em;fill:var(--muted);opacity:0;font-size:11px;transition:opacity .4s}.stone-ripple{fill:none;stroke:var(--ember);stroke-width:1.2px;opacity:0;transform-box:fill-box;transform-origin:50%}.garden.has-active .stone:not(.is-active){opacity:.55}.stone.is-active .stone-body{translate:0 -5px}.stone.is-active .stone-rings:not(.stone-rings-lip) circle{stroke:#ff9a6ba6}.stone.is-active .stone-name{fill:var(--ember)}.stone.is-active .stone-note{opacity:1}.stone.is-active .stone-ripple{animation:stone-ripple 1.8s var(--ease) infinite}.stone.is-active .stone-ripple-b{animation-delay:.9s}.garden-group{font-family:var(--font-display), serif;fill:var(--paper-80);font-size:30px;font-style:italic;font-weight:200}.garden-group-num{font-family:var(--font-mono), monospace;fill:var(--faint);font-size:11px;font-style:normal}html.is-yang .garden{--fg-rgb:24, 16, 18;--paper:rgb(var(--fg-rgb));--paper-80:rgba(var(--fg-rgb), .8);--muted:rgba(var(--fg-rgb), .6);--faint:rgba(var(--fg-rgb), .42);--hair:rgba(var(--fg-rgb), .14);--ember:#c4452a;background-color:#e0d5c1;background-image:url(/tex/garden-paper-yang.webp);box-shadow:inset 0 0 120px #785a3c2e}html.is-yang .garden-glow{opacity:.35}html.is-yang .garden-rake path,html.is-yang .stone-rings circle{stroke:#5a402c52}html.is-yang .garden-rake-lip path,html.is-yang .garden .stone-rings-lip circle{stroke:#fffcf4bf}html.is-yang .stone-shadow{fill-opacity:.45}html.is-yang .stone.is-active .stone-rings:not(.stone-rings-lip) circle{stroke:#c4452a99}@keyframes stone-drop{0%{opacity:0;transform:translateY(-18px)scale(.9)}to{opacity:1;transform:none}}@keyframes stone-ripple{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}.garden-svg-tall{display:none}@media (max-width:900px){.skills-head{grid-template-columns:1fr}.stone-name{font-size:30px}.stone-note{font-size:17px}.garden-group{font-size:40px}.garden-group-num{font-size:16px}}@media (max-width:640px){.garden-svg-wide{display:none}.garden-svg-tall{display:block}.skills-hint{display:none}.garden-svg-tall .stone-name{font-size:34px}.garden-svg-tall .stone-note{letter-spacing:.03em;font-size:18px}.garden.is-visible .garden-svg-tall .stone-note{animation:appear 1.2s var(--ease) calc(var(--d) + .75s) both}.garden-svg-tall .garden-group{font-size:46px}.garden-svg-tall .garden-group-num{font-size:17px}.garden.is-scrub .garden-svg-tall .garden-rake path,.garden.is-scrub .garden-svg-tall .stone-rings circle{transition:stroke .5s}.garden.is-scrub .garden-svg-tall .stone .stone-body,.garden.is-scrub .garden-svg-tall .stone .stone-shadow,.garden.is-scrub .garden-svg-tall .stone .stone-leader,.garden.is-scrub .garden-svg-tall .stone .stone-name,.garden.is-scrub .garden-svg-tall .stone .stone-note{animation:none}.garden.is-scrub .garden-svg-tall .stone.is-in .stone-body{transform-box:fill-box;transform-origin:50% 100%;animation:1.1s cubic-bezier(.3,1.35,.45,1) both stone-set}.garden.is-scrub .garden-svg-tall .stone.is-in .stone-shadow{transform-box:fill-box;transform-origin:50%;animation:shadow-set 1.1s var(--ease) both}.garden.is-scrub .garden-svg-tall .stone.is-in .stone-ripple{animation:stone-ripple 1.6s var(--ease) .45s 1 both}.garden.is-scrub .garden-svg-tall .stone.is-in .stone-leader{stroke-dasharray:1;animation:leader-draw .7s var(--ease) .55s both}.garden.is-scrub .garden-svg-tall .stone.is-in .stone-name{animation:name-in .9s var(--ease) .8s both}.garden.is-scrub .garden-svg-tall .stone.is-in .stone-note{animation:note-in 1s var(--ease) 1s both}@keyframes stone-set{0%{opacity:0;transform:translateY(-46px)scale(.85)}55%{opacity:1;transform:translateY(0)scale(1.06,.94)}to{opacity:1;transform:none}}@keyframes shadow-set{0%{opacity:0;transform:scale(.3)}55%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:none}}@keyframes leader-draw{0%{opacity:1;stroke-dashoffset:1px}to{opacity:1;stroke-dashoffset:0}}@keyframes name-in{0%{opacity:0;filter:blur(6px);transform:translateY(10px)}to{opacity:1;filter:none;transform:none}}@keyframes note-in{0%{opacity:0;clip-path:inset(-20% 100% -20% 0)}to{opacity:1;clip-path:inset(-20% -2% -20% 0)}}.garden.is-scrub .garden-svg-tall .garden-group{opacity:0;transition:opacity 1.1s var(--ease), translate 1.1s var(--ease);translate:-14px}.garden.is-scrub .garden-svg-tall .garden-group.is-in{opacity:1;translate:0}}.tao{--paper:rgb(var(--fg-rgb))}@supports (color:color-mix(in lab, red, red)){.tao{--paper:color-mix(in srgb, rgb(var(--fg-rgb)) 80%, rgb(var(--bg-rgb)))}}.tao{--paper-80:rgb(var(--fg-rgb))}@supports (color:color-mix(in lab, red, red)){.tao{--paper-80:color-mix(in srgb, rgb(var(--fg-rgb)) 66%, transparent)}}.tao{--ember:var(--lacquer-red);--shu:var(--lacquer-red);--ink-accent:rgb(var(--fg-rgb))}@supports (color:color-mix(in lab, red, red)){.tao{--ink-accent:color-mix(in srgb, rgb(var(--fg-rgb)) 86%, rgb(var(--bg-rgb)))}}.tao{color:var(--paper);background:radial-gradient(ellipse 60% 55% at 50% 50%, var(--lacquer), transparent 72%), var(--bg);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.tao{background:radial-gradient(ellipse 60% 55% at 50% 50%, color-mix(in srgb, var(--lacquer) 90%, transparent), transparent 72%), var(--bg)}}.tao-inner{z-index:3;min-height:100vh;padding:96px var(--gutter) 170px;grid-template-columns:minmax(0,1fr) min(70vh,640px) minmax(0,1fr);align-items:center;gap:3vw;display:grid;position:relative}@media (min-width:900px) and (max-width:1280px){.tao-inner{grid-template-columns:minmax(0,1fr) min(48vh,420px) minmax(0,1fr);gap:2.5vw}.process-step-time{display:none}}@media (min-width:900px) and (max-height:860px) and (prefers-reduced-motion:no-preference){.tao-inner{padding-top:84px;padding-bottom:150px}.process-step{padding-block:9px}.process-total{margin-top:18px}.process-total dl>div{padding-block:5px}.tao-hint{margin-top:14px}.tao-quote{bottom:5vh}}.tao-scene{display:contents}.tao-side{align-self:start}.process-title{font-family:var(--font-display), serif;letter-spacing:-.02em;margin-top:28px;font-size:clamp(2rem,3.2vw,3.4rem);font-weight:300;line-height:1}.tao-text{max-width:34ch;color:var(--muted);text-wrap:pretty;margin-top:16px;font-size:.98rem;line-height:1.55}.process-detail{border-top:1px solid var(--lacquer-gold);margin-top:clamp(24px,4vh,44px);padding-top:18px;display:grid}.process-card{z-index:1;visibility:hidden;opacity:0;will-change:opacity;grid-area:1/1;transition:opacity .2s,visibility 0s linear .2s;position:relative}.process-card.is-active{z-index:0;visibility:visible;opacity:1;transition:none}.process-card>*{will-change:transform}.process-card.is-active .process-card-meta{animation:card-wipe .75s var(--ease) 50ms both}.process-card.is-active .process-card-title{transform-origin:0 100%;animation:card-rise .95s var(--ease) .16s both}.card-word{transform-origin:0 100%;will-change:transform;display:inline-block}.process-card.is-active .card-word{animation:1.1s cubic-bezier(.22,1,.36,1) both word-in;animation-delay:calc(.28s + var(--i) * 45ms)}.process-card.is-active .process-card-result{animation:card-draw .9s var(--ease) .9s both}@keyframes card-wipe{0%{clip-path:inset(-30% 100% -30% 0)}to{clip-path:inset(-30% -2% -30% 0)}}@keyframes card-rise{0%{opacity:0;filter:blur(6px);transform:translateY(.6em)rotate(1.5deg)}}@keyframes word-in{0%{opacity:0;filter:blur(8px);color:color-mix(in srgb, var(--ember) 70%, var(--paper-80));transform:translateY(.6em)rotate(4deg)}45%{opacity:1;filter:blur();color:color-mix(in srgb, var(--ember) 55%, var(--paper-80))}to{opacity:1;filter:none;color:var(--paper-80);transform:none}}@keyframes card-draw{0%{clip-path:inset(0 0 100%);transform:translate(-6px)}to{clip-path:inset(0 0 -10%)}}.process-card-meta{color:var(--ember);font-size:12px}.process-card-title{font-family:var(--font-display), serif;letter-spacing:-.015em;margin-top:12px;font-size:clamp(1.75rem,2.3vw,2.3rem);font-weight:300;line-height:1.05}.process-card-text{max-width:36ch;color:var(--paper-80);text-wrap:pretty;margin-top:14px;line-height:1.6}.process-card-result,.process-step-result{border-left:1px solid var(--shu);flex-direction:column;gap:4px;max-width:36ch;margin-top:16px;padding-left:14px;line-height:1.4;display:flex}.process-card-result .mono,.process-step-result .mono{color:var(--muted);font-size:11px}.tao-side-right{align-self:center}.process-track{position:relative}.process-steps{counter-reset:step}.process-step>*{position:relative}.process-thumb{left:-16px;right:-16px;top:calc(var(--top,0px) + 4px);bottom:calc(var(--bottom,100%) + 4px);transition:top var(--dur-top,.6s) var(--ease-top,var(--ease)), bottom var(--dur-bottom,.6s) var(--ease-bottom,var(--ease));pointer-events:none;background:radial-gradient(70% 120% at 50% 0,#ffb48c1f,#0000 70%),linear-gradient(#24120f,#0e0607);border-radius:999px;position:absolute;box-shadow:inset 0 0 0 1px #c9a46a8c,inset 0 1px #ffe2b42e,0 10px 24px -12px #000000e6}.process-step.is-active .process-step-title{color:#f2ebe0}@media (max-width:899px),(prefers-reduced-motion:reduce){.process-thumb{display:none}}@media (prefers-reduced-motion:reduce){.process-card.is-active *{animation:none}}.process-step{border-top:1px solid var(--hair);color:var(--faint);transition:color .5s var(--ease);grid-template-columns:34px 1fr auto;align-items:baseline;gap:0 10px;padding:12px 0;display:grid}.process-step:last-child{border-bottom:1px solid var(--hair)}.process-step.is-done{color:var(--muted)}.process-step.is-active{color:var(--paper)}.process-step.is-active .process-step-num{color:var(--shu)}.process-step.is-active .process-step-time{color:var(--ember)}.process-step-num,.process-step-time{font-size:11px}.process-step-title{font-family:var(--font-display), serif;font-size:1.15rem}.process-step-text,.process-step-result{display:none}.process-total{margin-top:30px}.process-total-label{color:var(--ember);align-items:center;gap:10px;margin-bottom:12px;font-size:11px;display:flex}.process-total-label:before{content:"";background:currentColor;width:18px;height:1px}.process-total dl>div{border-top:1px solid var(--hair);justify-content:space-between;align-items:baseline;gap:12px;padding:13px 0;display:flex}.process-total dl>div:last-child{border-bottom:1px solid var(--hair)}.process-total dt{color:var(--paper-80);font-size:.9rem}.process-total dd{font-family:var(--font-display), serif;font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:rgb(var(--fg-rgb));white-space:nowrap;font-size:1.04rem}.process-team{border-left:2px solid var(--ember);max-width:38ch;color:var(--paper-80);text-wrap:pretty;margin-top:18px;padding-left:14px;font-size:.95rem;line-height:1.5}.process-team strong{color:rgb(var(--fg-rgb));font-weight:500}.tao-hint{text-align:right;color:var(--faint);margin-top:28px}.tao-svg{width:100%;height:auto;display:block;overflow:visible}.tao-stage,.tao-stage>.tao-svg{position:relative}.tao-stage>.tao-yy{pointer-events:none;animation:24s linear infinite spin;position:absolute;inset:0}.tao-svg-yy .yy{pointer-events:auto}.tao-halo,.tao-motes{pointer-events:none;position:absolute}.tao-halo{background:radial-gradient(closest-side, rgba(var(--fg-rgb), .16), rgba(var(--fg-rgb), 0));border-radius:50%;animation:4.5s ease-in-out infinite alternate pulse;inset:2.5%}.tao-motes{width:100%;height:100%;inset:0}.tao-goo{fill:rgb(var(--fg-rgb));pointer-events:none}.trigram-kanji{font-family:var(--font-jp), serif;text-anchor:middle;dominant-baseline:central;fill:#0a0809;font-size:56px;font-weight:600}.trigram-kanji.trigram-yang{fill:#f4efe6}.trigram-glow{opacity:.6;transition:opacity .6s var(--ease)}.trigram-glow.is-active{opacity:1}.bagua-ring{fill:none;stroke:rgba(var(--fg-rgb), .16);stroke-width:1px;stroke-dasharray:2 7}.tao-ring{pointer-events:none;will-change:transform;position:absolute;inset:0}.tao-glyph{pointer-events:none;width:20%;height:20%;transform:rotate(calc(var(--at) * -1)) translateY(calc(-238 / 160 * 100%)) rotate(var(--at));will-change:transform;position:absolute;top:40%;left:40%}.tao-glyph>svg{width:100%;height:100%;display:block;overflow:visible}@media (prefers-reduced-motion:no-preference){.tao-glyph{transition:scale .6s var(--ease);scale:.86}.tao-glyph.is-active{scale:1.12}}.tao-enso{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.yy{cursor:pointer}.yy-light{fill:#f4efe6}.yy-dark{fill:#0a0809}.yy-edge{stroke:#f4efe666;stroke-width:1.2px}.yy-outline{fill:none;stroke:rgba(var(--fg-rgb), .35);stroke-width:1px}.tao-quote{z-index:3;padding:0 var(--gutter) .2em;text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;bottom:7vh;left:0;right:0}.tao-cta{font-family:var(--font-display), serif;color:#f4efe6;text-shadow:0 0 18px #f4efe659;transition:text-shadow .6s var(--ease);--reveal:300%;-webkit-mask:radial-gradient(closest-side, #000 55%, transparent) center / var(--reveal) 400% no-repeat;-webkit-mask:radial-gradient(closest-side, #000 55%, transparent) center / var(--reveal) 400% no-repeat;-webkit-mask:radial-gradient(closest-side, #000 55%, transparent) center / var(--reveal) 400% no-repeat;-webkit-mask:radial-gradient(closest-side, #000 55%, transparent) center / var(--reveal) 400% no-repeat;mask:radial-gradient(closest-side, #000 55%, transparent) center / var(--reveal) 400% no-repeat;margin-top:6px;padding:.3em .6em;font-size:1.25rem}.tao-cta:hover{text-shadow:0 0 26px #f4efe6a6}.tao-cta-drop,.tao-cta-ripple{opacity:0;pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%}.tao-cta-drop{background:radial-gradient(circle at 35% 35%,#fff,#f4efe6 60%,#d9d1c4);width:12px;height:12px;margin:-6px 0 0 -6px;box-shadow:0 0 16px #f4efe68c}.tao-cta-ripple{border:1px solid #f4efe68c;width:220px;height:44px;margin:-22px 0 0 -110px;box-shadow:0 0 12px #f4efe633}.tao-petals{z-index:2}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@media (max-width:899px),(prefers-reduced-motion:reduce){.tao-inner{grid-template-columns:1fr;gap:16px;padding-bottom:8px}.tao-stage{width:min(92vw,520px);margin:0 auto}.process-detail,.process-arc{display:none}.process-step,.process-step.is-active,.process-step.is-done{color:var(--paper);padding:22px 0}.process-step-num{color:var(--shu)}.process-step-title{font-size:1.45rem}.process-step-text,.process-step-result{grid-column:2/-1;display:flex}.process-step-text{color:var(--paper-80);margin-top:10px;line-height:1.55}.process-step .process-step-result{margin-top:14px}.tao-quote{padding-top:18px;padding-bottom:48px;position:static;overflow:hidden}.tao-quote .tao-cta{margin-top:0}.tao-cta-drop,.tao-cta-ripple{display:none}.tao-hint{margin-top:18px}}@media (max-width:899px) and (prefers-reduced-motion:no-preference){.tao-inner{padding-top:0}.tao-scene{flex-direction:column;justify-content:center;gap:0;height:100svh;padding:64px 0 0;display:flex}.tao-side-right{margin-top:-22px}.tao-scene .tao-side{display:contents}.tao-scene .label-row{order:1}.tao-scene .process-title{order:2;margin-top:14px;font-size:clamp(1.7rem,7.5vw,2.2rem)}.tao-scene .tao-text{display:none}.tao-stage{order:3;width:min(84vw,42svh);margin:8px auto 0}.process-detail{order:4;margin-top:6px;padding-top:14px;display:grid}.process-card-title{margin-top:6px;font-size:1.5rem}.process-card-text{margin-top:8px;font-size:.95rem;line-height:1.5}.process-card-result{margin-top:10px}.process-arc{display:inline}.process-steps{display:none}.process-total{margin-top:0}}@media (max-width:899px) and (max-height:700px) and (prefers-reduced-motion:no-preference){.process-card-result{display:none}}.contact{--fg-rgb:22, 16, 18;--bg-rgb:205, 191, 168;--bg:rgb(var(--bg-rgb));--paper:rgb(var(--fg-rgb));--paper-80:rgba(var(--fg-rgb), .86);--muted:rgba(var(--fg-rgb), .74);--faint:rgba(var(--fg-rgb), .58);--hair:rgba(var(--fg-rgb), .18);--hair-strong:rgba(var(--fg-rgb), .4);--ember:#c4452a;color:var(--paper);background-color:#cdbfa8;background-image:url(/tex/contact-paper.webp);margin-top:clamp(110px,13vh,150px);overflow:hidden}.contact .mono{font-weight:500}.ink-edge{z-index:2;pointer-events:none;background-color:rgb(var(--page-rgb));will-change:transform;width:100%;height:clamp(140px,20vh,240px);position:absolute;left:0;-webkit-mask-size:100% 100%;mask-size:100% 100%}@media (max-width:900px){.ink-edge{height:clamp(80px,11vh,130px)}}.ink-edge-top{transform-origin:50% 0;top:-1px;-webkit-mask-image:url(/tex/ink-edge-top.webp);mask-image:url(/tex/ink-edge-top.webp)}.ink-edge-bottom{transform-origin:50% 100%;bottom:-1px;-webkit-mask-image:url(/tex/ink-edge-bottom.webp);mask-image:url(/tex/ink-edge-bottom.webp)}.contact-heading{margin-top:clamp(28px,4.5vh,52px)}.contact-heading-lead{font-family:var(--font-display), sans-serif;letter-spacing:-.03em;color:rgba(var(--fg-rgb), .82);font-size:clamp(1.9rem,3.4vw,3.4rem);font-weight:300;line-height:1.05;display:block}.contact-heading-accent{font-family:var(--font-serif), serif;letter-spacing:-.02em;color:var(--shu);margin-top:-.06em;padding-bottom:.12em;font-size:clamp(3.4rem,8.2vw,8.6rem);font-style:italic;font-weight:500;line-height:1;display:inline-block;position:relative}.contact-brush{z-index:-1;width:calc(100% + .04em);height:.3em;position:absolute;bottom:.02em;left:.04em;right:-.08em;overflow:visible}.contact-brush path:not([stroke]){fill:#d8362a52}.contact-brush mask path{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset 1.6s cubic-bezier(.65,.05,.25,1) .9s}.mask-text.is-visible .contact-brush mask path{stroke-dashoffset:0}.ink-wash{z-index:0;pointer-events:none;mix-blend-mode:multiply;background-image:url(/tex/ink-wash-grain.webp),url(/tex/ink-wash.webp);background-size:auto,100% 100%;width:100%;height:100%;position:absolute;inset:0}.contact>:not(.sumi-sakura):not(.petal-field):not(.ink-wash):not(.ink-edge){z-index:3;max-width:min(64%,1000px);position:relative}.sumi-sakura{z-index:1;pointer-events:none;opacity:0;filter:blur(8px);width:100%;height:100%;transition:opacity 1.2s ease, filter 3.2s var(--ease);position:absolute;inset:0}.sumi-sakura.is-painted{opacity:1;filter:none}.contact-petals{z-index:2}.order{text-shadow:0 0 6px #cdbfa8f2,0 0 16px #cdbfa8bf}@media (max-width:900px){.contact{flex-direction:column;display:flex}.contact>:not(.sumi-sakura):not(.petal-field):not(.ink-wash):not(.ink-edge){max-width:none}.contact>.label-row{order:1}.contact>.contact-heading{order:2}.sumi-sakura{width:calc(100% + var(--gutter) * 2);height:clamp(600px,165vw,900px);margin:0 calc(var(--gutter) * -1) -40px;flex:none;order:3;position:relative;inset:auto}.contact>.order{order:4}}.contact{padding-block:clamp(130px,17vh,190px) clamp(170px,22vh,240px)}.contact+.footer .footer-grid{border-top-color:#0000}.contact .display-xl{margin-top:clamp(28px,4.5vh,52px);font-size:clamp(2.4rem,5.2vw,5.6rem)}.order{border-top:1px solid var(--hair);grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);margin-top:clamp(32px,5vh,56px);padding-top:26px;display:grid}.order-form{text-shadow:none;flex-direction:column;gap:clamp(18px,2.6vh,26px);display:flex}.order-pair{grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,44px);display:grid}.order-pair:not(.order-pair-chips){grid-template-rows:auto auto auto;row-gap:0}.order-pair:not(.order-pair-chips)>.field{grid-row:span 3;grid-template-rows:subgrid;display:grid}.order-key{letter-spacing:.12em;color:var(--paper);margin-bottom:10px;font-size:12px;display:block}.order-req{color:var(--ember);margin-left:2px}.field,.field-control{display:block;position:relative}.field input,.field textarea{border:0;border-bottom:1px solid var(--hair-strong);width:100%;color:var(--paper);font-family:var(--font-display), serif;resize:vertical;background:0 0;border-radius:0;outline:none;padding:2px 0 7px;font-size:clamp(1.15rem,1.45vw,1.35rem);font-weight:400;transition:border-color .3s;display:block}.field input:-webkit-autofill{-webkit-text-fill-color:var(--paper);caret-color:var(--paper);font-family:var(--font-display), serif;transition:background-color 600000s,color 600000s}.field input:-webkit-autofill:hover{-webkit-text-fill-color:var(--paper);caret-color:var(--paper);font-family:var(--font-display), serif;transition:background-color 600000s,color 600000s}.field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--paper);caret-color:var(--paper);font-family:var(--font-display), serif;transition:background-color 600000s,color 600000s}.field input:autofill{background:0 0}.field:hover input,.field:hover textarea{border-bottom-color:rgba(var(--fg-rgb), .65)}.field textarea{resize:none;max-height:min(50svh,420px);font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.35;overflow-y:auto}.field-count{text-align:right;color:rgba(var(--fg-rgb), .66);margin-top:8px;font-size:11px;transition:color .3s;display:block}.field-count.is-near{color:var(--ember)}.field input::placeholder,.field textarea::placeholder{color:rgba(var(--fg-rgb), .62);font-style:normal}.field-line{background:var(--ember);transform-origin:0;height:1.5px;transition:transform .7s var(--ease);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.field:focus-within .field-line{transform:scaleX(1)}.field.is-invalid .field-line{background:var(--shu);transform:scaleX(1)}.field-error{color:#a3241a;opacity:0;min-height:1.4em;transition:opacity .35s, transform .45s var(--ease);margin-top:6px;font-size:.86rem;line-height:1.4;display:block;transform:translateY(-4px)}.field.is-invalid .field-error{opacity:1;transform:none}.field.is-invalid input{animation:field-shake .4s var(--ease)}@keyframes field-shake{25%{translate:-5px}60%{translate:4px}}.chips{border:0;min-width:0;margin:0;padding:0}.chips-row{flex-wrap:wrap;gap:8px;display:flex}.order-pair-chips{grid-template-columns:1.25fr 1fr}.chip{cursor:pointer;position:relative}.chip input{opacity:0;pointer-events:none;position:absolute}.chip>span{border:1px solid rgba(var(--fg-rgb), .42);color:var(--paper);text-shadow:none;white-space:nowrap;background:0 0;border-radius:999px;align-items:center;padding:10px 17px 9px;font-size:.95rem;font-weight:500;line-height:1;transition:border-color .35s,background-color .35s,color .35s,opacity .35s;display:inline-flex;position:relative}.chip-check{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;width:0;height:12px;transition:width .4s var(--ease), margin-right .4s var(--ease), stroke-dashoffset .45s .12s var(--ease)}.chip:hover>span{border-color:var(--paper);background-color:rgba(var(--fg-rgb), .07);color:var(--paper)}.chip.is-on>span{border-color:var(--paper);background-color:var(--paper);color:var(--washi)}.chip.is-on .chip-check{stroke-dashoffset:0;width:12px;margin-right:7px}.chips-row:has(.chip:hover) .chip:not(:hover):not(.is-on)>span{opacity:.6}.chip input:focus-visible+span{outline:1.5px solid var(--paper);outline-offset:3px}.order-consent{max-width:62ch;color:var(--paper-80);cursor:pointer;grid-template-columns:20px 1fr;align-items:start;gap:4px 14px;font-size:.92rem;line-height:1.5;display:grid;position:relative}.order-consent input{opacity:0;pointer-events:none;position:absolute}.order-consent-box{border:1px solid rgba(var(--fg-rgb), .5);width:20px;height:20px;color:var(--washi);border-radius:5px;place-items:center;margin-top:1px;transition:border-color .35s,background-color .35s;display:grid}.order-consent-box svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;width:12px;height:12px;transition:stroke-dashoffset .45s .1s var(--ease)}.order-consent:hover .order-consent-box{border-color:var(--paper)}.order-consent input:checked+.order-consent-box{border-color:var(--paper);background:var(--paper)}.order-consent input:checked+.order-consent-box svg{stroke-dashoffset:0}.order-consent input:focus-visible+.order-consent-box{outline:1.5px solid var(--paper);outline-offset:3px}.order-consent.is-invalid .order-consent-box{animation:field-shake .4s var(--ease);border-color:#a3241a}.order-consent-text a{color:var(--paper);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:rgba(var(--fg-rgb), .4);-webkit-text-decoration-color:rgba(var(--fg-rgb), .4);-webkit-text-decoration-color:rgba(var(--fg-rgb), .4);text-decoration-color:rgba(var(--fg-rgb), .4);transition:text-decoration-color .3s}.order-consent-text a:hover{text-decoration-color:currentColor}.order-consent .field-error{grid-column:2;margin-top:0}.order-consent.is-invalid .field-error{opacity:1;transform:none}.order-trap{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.order-submit{flex-wrap:wrap;align-items:center;gap:18px 28px;display:flex}.order-btn{isolation:isolate;color:var(--washi);font-family:var(--font-display), serif;letter-spacing:.01em;text-shadow:none;cursor:pointer;align-items:center;gap:22px;padding:10px 10px 10px 28px;font-size:1.08rem;font-weight:300;display:inline-flex;position:relative}.order-btn-bg,.order-btn-ink{z-index:-1;position:absolute;inset:0}.order-btn-bg{background:var(--sumi);filter:url(#brush-edge);transition:transform .6s var(--ease)}.order-btn-ink{filter:url(#brush-edge);overflow:hidden}.order-btn-ink:before{content:"";background:linear-gradient(100deg, var(--shu), var(--ember) 60%);clip-path:polygon(0 0,calc(100% - 40px) 0,100% 100%,0 100%);transition:transform .75s var(--ease);position:absolute;inset:0 -40px 0 0;transform:translate(-101%)}.order-btn:hover .order-btn-ink:before,.order-btn:focus-visible .order-btn-ink:before{transform:translate(0)}.order-btn:hover .order-btn-bg{transform:scaleX(1.02)}.order-btn-label{position:relative}.order-btn-seal{background:var(--shu);width:40px;height:40px;color:var(--washi);box-shadow:inset 0 0 0 3px var(--shu), inset 0 0 0 4px #ece3d2a6;transition:transform .6s var(--ease), background .4s;border-radius:4px;place-items:center;display:grid;transform:rotate(-4deg)}.order-btn:hover .order-btn-seal,.order-btn:focus-visible .order-btn-seal{background:var(--sumi);box-shadow:inset 0 0 0 3px var(--sumi), inset 0 0 0 4px #ece3d280;transform:rotate(4deg)scale(1.06)}.order-btn-arrows{width:1em;font-size:1.1rem;line-height:1;display:flex;overflow:hidden}.order-btn-arrows>span{text-align:center;width:1em;transition:transform .6s var(--ease);flex:none;transform:translate(-100%)}.order-btn:hover .order-btn-arrows>span,.order-btn:focus-visible .order-btn-arrows>span{transform:translate(0)}.order-btn:disabled{cursor:progress}.order-btn.is-sending .order-btn-seal{animation:.9s ease-in-out infinite alternate pulse}.order-note{max-width:44ch;color:var(--paper);flex:240px;font-size:.95rem;line-height:1.5}.order-note:empty{display:none}.order-aside{isolation:isolate;text-shadow:0 0 4px #cdbfa8,0 0 10px #cdbfa8f2,0 0 22px #cdbfa8d9;flex-direction:column;gap:26px;display:flex;position:relative}.order-aside:before{content:"";z-index:-1;filter:blur(12px);pointer-events:none;background:radial-gradient(closest-side,#cdbfa8d1 55%,#cdbfa800);position:absolute;inset:-48px -64px}@media (max-width:900px){.contact>.order{display:contents}.order-aside{z-index:3;order:4;grid-template-columns:calc(53% - 40px) 80px minmax(0,1fr);align-items:start;gap:28px 0;margin-top:-250px;display:grid}.order-aside:before{display:none}.order-aside>.contact-text{grid-column:1/-1;max-width:none;font-size:1.05rem}.order-aside>div:first-of-type{grid-column:1}.order-aside>div:nth-of-type(2){grid-column:3}.order-aside .contact-mail,.order-aside .social-link{font-size:1.05rem}.order-aside .social-link{white-space:nowrap}.contact .order-main{z-index:3;border-top:1px solid var(--hair);text-shadow:none;order:5;margin-top:56px;padding-top:26px;position:relative}}.contact .contact-key{color:var(--paper)}.contact .btn-text{color:var(--paper-80);font-size:13px}.order-done{padding-top:8px}.order-stamp{width:112px;height:112px;stroke:var(--shu);animation:.75s cubic-bezier(.3,1.5,.5,1) both slam}.order-stamp text{fill:var(--shu);stroke:none;font-family:var(--font-jp), serif;text-anchor:middle;dominant-baseline:central;font-size:46px}.order-done-title{font-family:var(--font-display), serif;margin-top:28px;font-size:clamp(2rem,3.4vw,3rem);font-weight:300;line-height:1.05}.order-done-text{max-width:38ch;color:var(--paper-80);margin-top:14px;font-size:1.05rem;line-height:1.6}@media (max-width:960px){.order{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.order-pair{grid-template-columns:minmax(0,1fr)}.order-pair:not(.order-pair-chips){grid-template-rows:none;row-gap:clamp(20px,3vw,44px)}.order-pair:not(.order-pair-chips)>.field{grid-row:auto;display:block}.order-form{gap:18px}.chips-row{margin-inline:calc(var(--gutter) * -1);padding:2px var(--gutter) 4px;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.chips-row::-webkit-scrollbar{display:none}.chips-row.has-right{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 64px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 64px),#0000)}.chips-row.has-left{-webkit-mask-image:linear-gradient(90deg,#0000,#000 48px);mask-image:linear-gradient(90deg,#0000,#000 48px)}.chips-row.has-left.has-right{-webkit-mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 64px),#0000);mask-image:linear-gradient(90deg,#0000,#000 48px calc(100% - 64px),#0000)}.chip{flex:none}.chips-more{color:var(--ember);opacity:0;margin-left:10px;font-size:17px;line-height:1;transition:opacity .4s}.chips-more.is-on{opacity:1;animation:nudge 2.4s var(--ease-io) infinite}}.chips-more{display:none}@media (max-width:560px){.chips-more{display:inline-block}}@media (max-width:560px) and (prefers-reduced-motion:reduce){.chips-more.is-on{animation:none}}.contact-text{letter-spacing:-.005em;max-width:30ch;color:var(--paper);text-wrap:pretty;font-size:1.15rem;line-height:1.55}.contact-key{letter-spacing:.12em;color:var(--paper);margin-bottom:12px;font-size:12px;display:block}.contact-mail{max-width:100%;font-family:var(--font-display), serif;letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(1.2rem,1.6vw,1.45rem);font-weight:300;display:inline-block}.btn-text{color:var(--muted);cursor:pointer;margin-top:14px;font-size:12px;transition:color .3s;display:block}.btn-text:hover{color:var(--paper)}.contact .btn-text{color:var(--ember)}.contact .btn-text:hover{color:var(--paper)}.contact-socials li{border-top:1px solid var(--hair)}.contact-socials li:last-child{border-bottom:1px solid var(--hair)}.contact-socials .social-link{padding:11px 0;display:block}.social-link{color:var(--paper);transition:color .3s}.social-link:hover{color:var(--ember)}.footer{background:linear-gradient(to bottom, var(--bg) 0%, var(--bg) 100%);position:relative}@supports (color:color-mix(in lab, red, red)){.footer{background:linear-gradient(to bottom, var(--bg) 0%, color-mix(in srgb, var(--bg) 82%, #d8362a) 100%)}}.footer-petals{z-index:2}.footer-grid{z-index:3;padding:clamp(80px, 12vh, 140px) var(--gutter) clamp(12px, 2vh, 28px);border-top:1px solid var(--hair);grid-template-columns:auto 1.3fr 1fr;align-items:start;gap:clamp(32px,6vw,110px);display:grid;position:relative}.footer-grid.is-stamped{animation:.4s .62s shake}.footer-seal{width:112px;height:112px;position:relative}.footer-hanko{opacity:0}.footer-grid.is-stamped .footer-hanko{animation:.75s cubic-bezier(.3,1.5,.5,1) .2s both slam}.seal-splash{background:radial-gradient(circle at 12% 30%, var(--shu) 0 3px, transparent 4px), radial-gradient(circle at 88% 22%, var(--shu) 0 2px, transparent 3px), radial-gradient(circle at 80% 86%, var(--shu) 0 4px, transparent 5px), radial-gradient(circle at 20% 82%, var(--shu) 0 2px, transparent 3px), radial-gradient(circle at 50% 4%, var(--shu) 0 2px, transparent 3px), radial-gradient(circle, #d8362a2e 0 40%, transparent 62%);opacity:0;border-radius:50%;position:absolute;inset:-36px;transform:scale(.4)}.footer-grid.is-stamped .seal-splash{animation:splat 1.2s var(--ease) .62s both}.footer-key{color:var(--faint);margin-bottom:18px;display:block}.footer-mail{font-family:var(--font-display), serif;font-size:clamp(1.6rem,2.7vw,2.6rem);font-weight:200;line-height:1.2;transition:color .3s;display:inline-block}.footer-mail:hover{color:var(--ember)}.hour{align-items:center;gap:22px;display:flex}.hour-dial{flex:none;width:clamp(104px,9vw,132px);overflow:visible}.hour-ring{fill:none;stroke:var(--hair-strong);stroke-width:.6px}.hour-arc{fill:#ff9a6b24;stroke:var(--ember);stroke-width:.6px}.hour-dial text{font-family:var(--font-jp), serif;fill:var(--faint);text-anchor:middle;dominant-baseline:central;font-size:9px;transition:fill .6s}.hour-dial text.is-now{fill:var(--ember)}.hour-hand{transition:transform 1.2s var(--ease)}.hour-hand line{stroke:var(--shu);stroke-width:1px;stroke-linecap:round}.hour-hand circle{fill:var(--shu)}.hour-copy{flex-direction:column;gap:8px;min-width:0;display:flex}.hour-sign{font-family:var(--font-jp), serif;color:var(--paper);font-size:clamp(2.4rem,3.6vw,3.4rem);line-height:1}.hour-name{font-family:var(--font-display), serif;color:var(--ember);font-size:clamp(1.1rem,1.5vw,1.4rem);font-style:italic;font-weight:200;line-height:1.1}.hour-meta{color:var(--muted)}.footer-links{margin-top:28px;font-size:1.15rem}.footer-links li+li{margin-top:8px}.footer-links a:hover{color:var(--ember)}.finale{z-index:1;position:relative}.wordmark{justify-content:center;align-items:flex-end;height:clamp(170px,25vw,470px);display:flex;position:relative;overflow:hidden}.wordmark-sun{aspect-ratio:1;background:radial-gradient(circle at 50% 40%,#fff1dc 0%,#ffc48c 20%,#ff8a55 46%,#e2472f 74%,#b8261f 100%);border-radius:50%;width:38vw;margin-left:-19vw;position:absolute;bottom:-17vw;left:50%;box-shadow:0 0 60px 6px #ff8a5573,0 0 180px 50px #d8362a47,0 0 360px 140px #d8362a1f;-webkit-mask-image:linear-gradient(#000 0 36%,#0000 36% 36.4%,#000 36.4% 42%,#0000 42% 42.7%,#000 42.7% 47%,#0000 47% 48.1%,#000 48.1% 51.5%,#0000 51.5% 53.2%,#000 53.2%);mask-image:linear-gradient(#000 0 36%,#0000 36% 36.4%,#000 36.4% 42%,#0000 42% 42.7%,#000 42.7% 47%,#0000 47% 48.1%,#000 48.1% 51.5%,#0000 51.5% 53.2%,#000 53.2%)}.wordmark-text{font-family:var(--font-display), serif;letter-spacing:-.04em;color:var(--paper);white-space:nowrap;text-shadow:0 0 .25em #ff8a552e;font-size:27vw;font-weight:200;line-height:.74;position:relative}.wordmark-letter{vertical-align:bottom;padding-top:.12em;display:inline-block;overflow:hidden}.wordmark-letter>span{display:inline-block}@media (prefers-reduced-motion:no-preference){.wordmark-letter>span{transform:translateY(105%)}}.wordmark-water{background:linear-gradient(to bottom, var(--bg) 0%, var(--bg) 100%);justify-content:center;align-items:flex-start;height:clamp(70px,10vw,190px);display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.wordmark-water{background:linear-gradient(to bottom, color-mix(in srgb, var(--bg) 70%, var(--shu)) 0%, var(--bg) 100%)}}.wordmark-water:before{content:"";z-index:3;background:linear-gradient(90deg,#0000,#ffc48cb3 50%,#0000);height:1px;position:absolute;inset:0 0 auto}.wordmark-water:after{content:"";z-index:2;background:repeating-linear-gradient(to bottom, transparent 0 5px, rgba(var(--bg-rgb), .5) 5px 7px);animation:6s linear infinite ripple;position:absolute;inset:0}.wordmark-reflection{opacity:.18;filter:blur(1.5px);text-shadow:none;transform:scaleY(-1);-webkit-mask-image:linear-gradient(#0000 40%,#000);mask-image:linear-gradient(#0000 40%,#000)}.wordmark-glint{z-index:1;background:radial-gradient(50% 100% at 50% 0,#ffc48cbf,#ff6a3d4d 45%,#0000 75%);width:34vw;height:100%;margin-left:-17vw;animation:4.5s ease-in-out infinite alternate glint;position:absolute;top:0;left:50%;-webkit-mask-image:repeating-linear-gradient(#000 0 3px,#0000 3px 8px);mask-image:repeating-linear-gradient(#000 0 3px,#0000 3px 8px)}@keyframes ripple{to{background-position:0 -70px}}@keyframes glint{0%{-webkit-mask-position:0 0;mask-position:0 0}to{-webkit-mask-position:0 16px;mask-position:0 16px}}.footer-bar{z-index:3;padding:18px var(--gutter);background:var(--bg);border-top:1px solid var(--hair);color:var(--muted);justify-content:center;gap:16px;display:flex;position:relative}.footer-privacy{transition:color .3s}.footer-privacy:hover{color:var(--paper)}@keyframes slam{0%{opacity:0;transform:scale(2.8)rotate(16deg)}60%{opacity:1;transform:scale(.93)rotate(-7deg)}to{opacity:1;transform:scale(1)rotate(-5deg)}}@keyframes splat{0%{opacity:1;transform:scale(.4)}to{opacity:.85;transform:scale(1)}}@keyframes shake{20%{transform:translate(-2px,1px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,2px)}80%{transform:translate(1px,-1px)}}@media (max-width:860px){.footer-grid{grid-template-columns:1fr}}@media (max-width:640px){.footer-bar{flex-direction:column;align-items:center}}html.has-cursor,html.has-cursor a,html.has-cursor button,html.has-cursor label,html.has-cursor input,html.has-cursor textarea,html.has-cursor .chip,html.has-cursor .yy,html.has-cursor .stone-hit{cursor:none}.cursor-dot,.cursor-ring{z-index:300;pointer-events:none;border-radius:50%;position:fixed;top:0;left:0}html:not(.has-cursor) .cursor-dot,html:not(.has-cursor) .cursor-ring{display:none}.cursor-dot,.cursor-ring{opacity:1}html.is-typing .cursor-dot,html.is-typing .cursor-ring{opacity:0;transition:opacity .15s}.cursor-dot{mix-blend-mode:difference;background:#f2ebe0;width:5px;height:5px;margin:-2.5px 0 0 -2.5px}.cursor-ring{border:1px solid rgba(var(--fg-rgb), .3);width:30px;height:30px;transition:width .5s var(--ease), height .5s var(--ease), margin .5s var(--ease), background .4s, border-color .4s;margin:-15px 0 0 -15px}.cursor-ring.is-hover{border-color:var(--paper);width:54px;height:54px;margin:-27px 0 0 -27px}.cursor-ring:after{content:attr(data-label);font-family:var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--bg);opacity:0;place-items:center;font-size:10px;transition:opacity .3s;display:grid;position:absolute;inset:0}.cursor-ring.is-label{background:var(--paper);border-color:#0000;width:86px;height:86px;margin:-43px 0 0 -43px}.cursor-ring.is-label:after{opacity:1}.cursor-ring.is-label+.cursor-dot{opacity:0}.cursor-ring.is-text{background:var(--paper);border-color:#0000;border-radius:1px;width:2px;height:26px;margin:-13px 0 0 -1px}.cursor-ring.is-text+.cursor-dot{opacity:0}.cursor-ring.is-ink{border-color:#16101273}.cursor-ring.is-ink.is-hover{border-color:var(--ember);background:#c4452a14}.cursor-ring.is-ink.is-text,.cursor-ring.is-ink.is-label{background:#161012}.cursor-ring.is-ink.is-label:after{color:#ece3d2}[data-magnetic]{transition:translate .6s var(--ease), background-size .6s var(--ease), color .5s var(--ease)}@supports (font:-apple-system-body){body:after{animation:none;inset:0}.site-bar,.status-badge{-webkit-backdrop-filter:none;backdrop-filter:none}.site-bar{background:rgba(var(--bg-rgb), .78)}.is-scrolled .site-bar{background:rgba(var(--bg-rgb), .88)}.status-badge{background:radial-gradient(120% 160% at 0% 50%, #ff9a6b29, transparent 55%), rgba(var(--bg-rgb), .86)}.sumi-sakura{filter:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.legal{min-height:100svh;padding:clamp(28px, 6vw, 72px) var(--gutter) 96px;background:var(--bg);color:var(--paper-80)}.legal-back{letter-spacing:.08em;color:var(--muted);font-size:13px;transition:color .3s}.legal-back:hover{color:var(--paper)}.legal-doc{max-width:72ch;margin:clamp(32px,6vw,64px) auto 0;font-size:1rem;line-height:1.7}.legal-doc h1{font-family:var(--font-display), sans-serif;color:var(--paper);font-size:clamp(1.8rem,5vw,2.6rem);line-height:1.15}.legal-date{letter-spacing:.08em;color:var(--muted);margin-top:12px;font-size:12px}.legal-doc h2{font-family:var(--font-display), sans-serif;color:var(--paper);margin-top:2.2em;font-size:1.2rem}.legal-doc p,.legal-doc ul{margin-top:.9em}.legal-doc ul{padding-left:1.2em;list-style:outside}.legal-doc li+li{margin-top:.4em}.legal-doc a{color:var(--paper);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:rgba(var(--fg-rgb), .4);-webkit-text-decoration-color:rgba(var(--fg-rgb), .4);-webkit-text-decoration-color:rgba(var(--fg-rgb), .4);text-decoration-color:rgba(var(--fg-rgb), .4)}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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 #0000}@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 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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 #0000}@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}
