@font-face{font-family:Google Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/GoogleSans-Regular.woff2?v=2) format("woff2")}@font-face{font-family:Google Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/GoogleSans-Medium.woff2?v=2) format("woff2")}@font-face{font-family:Google Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/GoogleSans-SemiBold.woff2?v=2) format("woff2")}@font-face{font-family:Google Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/GoogleSans-Bold.woff2?v=2) format("woff2")}@font-face{font-family:Google Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/GoogleSansThai-Regular.woff2?v=1) format("woff2");unicode-range:U+0E00-0E7F}@font-face{font-family:Google Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/GoogleSansThai-Medium.woff2?v=1) format("woff2");unicode-range:U+0E00-0E7F}@font-face{font-family:Google Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/GoogleSansThai-SemiBold.woff2?v=1) format("woff2");unicode-range:U+0E00-0E7F}@font-face{font-family:Google Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/GoogleSansThai-Bold.woff2?v=1) format("woff2");unicode-range:U+0E00-0E7F}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/InstrumentSerif-Regular.woff2?v=2) format("woff2")}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/InstrumentSerif-Italic.woff2?v=2) format("woff2")}@font-face{font-family:Hand Latin;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/GoogleSans-Regular.woff2?v=2) format("woff2");unicode-range:U+0-2D6,U+2D8-302,U+304-330,U+332-E00,U+E5C-200B,U+200E-25CB,U+25CD-10FFFF}@font-face{font-family:Hand Latin;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/GoogleSans-Medium.woff2?v=2) format("woff2");unicode-range:U+0-2D6,U+2D8-302,U+304-330,U+332-E00,U+E5C-200B,U+200E-25CB,U+25CD-10FFFF}@font-face{font-family:Hand Latin;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/GoogleSans-SemiBold.woff2?v=2) format("woff2");unicode-range:U+0-2D6,U+2D8-302,U+304-330,U+332-E00,U+E5C-200B,U+200E-25CB,U+25CD-10FFFF}@font-face{font-family:Hand Latin;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/GoogleSans-Bold.woff2?v=2) format("woff2");unicode-range:U+0-2D6,U+2D8-302,U+304-330,U+332-E00,U+E5C-200B,U+200E-25CB,U+25CD-10FFFF}@font-face{font-family:Hand Symbols;src:local("Apple Symbols"),local("Segoe UI Symbol"),local("Noto Sans Symbols 2"),local("Arial Unicode MS"),local("DejaVu Sans"),local("FreeSerif");unicode-range:U+391-3C9,U+2016-2017,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+2070-209C,U+20D0-20EF,U+2100-214F,U+2190-21FF,U+2200-22FF,U+2300-23FF,U+25A0-25FF}@property --hue{syntax: "<number>"; inherits: true; initial-value: 26;}:root{--hue: 26;--emoji: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", "Twemoji Mozilla", "EmojiOne Color", "Android Emoji";--font: "Google Sans", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", Roboto, sans-serif, var(--emoji);--display: "Google Sans", -apple-system, BlinkMacSystemFont, system-ui, sans-serif, var(--emoji);--serif: "Instrument Serif", Georgia, serif, var(--emoji);--hand: "Hand Latin", "Hand Symbols", var(--emoji), "Playpen Sans Thai", var(--display);--r: 24px;--r-lg: 32px;--maxw: 1140px;--ease: cubic-bezier(.22, 1, .36, 1);--spring: cubic-bezier(.34, 1.4, .5, 1)}html[data-theme=dark]{--bg: hsl(240 12% 4%);--ink: #f5f3f0;--ink-soft: #c2bdb6;--ink-faint: #8b857c;--line: rgba(255,255,255,.12);--glass-bg: hsla(240, 12%, 11%, .58);--glass-hi: hsla(240, 12%, 20%, .62);--glass-stroke: rgba(255,255,255,.16);--rim: rgba(0,0,0,.5);--accent: #ffffff;--accent2: rgba(255,255,255,.78);--accent3: rgba(255,255,255,.5);--solid-bg: #ffffff;--solid-fg: #0b0b0d;--ring: rgba(255,255,255,.28);--ph-1: linear-gradient(140deg,#3c3c45,#222227);--ph-2: linear-gradient(140deg,#2c2c34,#45454e);--ph-3: linear-gradient(140deg,#46464f,#28282e);--cover: linear-gradient(150deg,#23232a,#141418);--shadow: 0 1px 0 rgba(255,255,255,.09) inset, 0 -1px 1px rgba(0,0,0,.35) inset, 0 34px 64px -28px rgba(0,0,0,.85), 0 4px 16px -6px rgba(0,0,0,.6);--orb-light: .55;--grain-op: .28;--rainbow: linear-gradient(90deg,#ff5d73,#ff9f43,#ffd23f,#4cd97b,#3bc9ff,#8b6bff,#ff6bd6,#ff5d73);--rainbow-v: linear-gradient(180deg,#ff5d73,#ff9f43,#ffd23f,#4cd97b,#3bc9ff,#8b6bff,#ff6bd6)}html[data-theme=light]{--bg: hsl(240 14% 96%);--ink: #151311;--ink-soft: #4a443d;--ink-faint: #756e64;--line: rgba(21,19,17,.12);--glass-bg: hsla(0, 0%, 100%, .62);--glass-hi: hsla(0, 0%, 100%, .8);--glass-stroke: rgba(255,255,255,.8);--rim: rgba(21,19,17,.08);--accent: #151311;--accent2: rgba(21,19,17,.72);--accent3: rgba(21,19,17,.45);--solid-bg: #151311;--solid-fg: #ffffff;--ring: rgba(21,19,17,.16);--ph-1: linear-gradient(140deg,#d4d4dc,#b6b6c0);--ph-2: linear-gradient(140deg,#c6c6d0,#dcdce2);--ph-3: linear-gradient(140deg,#dadae0,#bcbcc6);--cover: linear-gradient(150deg,#e7e7ee,#d3d3db);--shadow: 0 1px 0 rgba(255,255,255,.7) inset, 0 -1px 1px rgba(33,28,23,.04) inset, 0 26px 54px -24px rgba(33,28,23,.32), 0 3px 10px -5px rgba(33,28,23,.18);--orb-light: .5;--grain-op: .22;--rainbow: linear-gradient(90deg,#ff5d73,#ff9f43,#ffd23f,#4cd97b,#3bc9ff,#8b6bff,#ff6bd6,#ff5d73);--rainbow-v: linear-gradient(180deg,#ff5d73,#ff9f43,#ffd23f,#4cd97b,#3bc9ff,#8b6bff,#ff6bd6)}html[data-theme=cb]{--bg: #ffffff;--ink: #0a0a0a;--ink-soft: #2b2b2b;--ink-faint: #565656;--line: rgba(10,10,10,.24);--glass-bg: #ffffff;--glass-hi: #ffffff;--glass-stroke: rgba(10,10,10,.18);--rim: rgba(10,10,10,.1);--accent: #0a0a0a;--accent2: rgba(10,10,10,.75);--accent3: rgba(10,10,10,.5);--solid-bg: #0a0a0a;--solid-fg: #ffffff;--ring: rgba(10,10,10,.3);--ph-1: linear-gradient(140deg,#d8d8d8,#bcbcbc);--ph-2: linear-gradient(140deg,#cccccc,#e0e0e0);--ph-3: linear-gradient(140deg,#dadada,#c2c2c2);--cover: linear-gradient(150deg,#ededed,#d6d6d6);--shadow: 0 1px 0 rgba(255,255,255,.7) inset, 0 24px 50px -24px rgba(0,0,0,.3), 0 3px 10px -5px rgba(0,0,0,.18);--orb-light: 0;--grain-op: .12;--rainbow: linear-gradient(90deg,#000000,#0072B2,#009E73,#E69F00,#D55E00);--rainbow-v: linear-gradient(180deg,#000000,#0072B2,#009E73,#E69F00,#D55E00)}*,*:before,*:after{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);background:var(--bg);color:var(--ink);font-size:17px;line-height:1.6;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden;transition:background-color .9s var(--ease),--hue 1.1s var(--ease)}a{color:inherit;text-decoration:none}ul{list-style:none;padding:0}button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}svg{display:block}em{font-style:normal}:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lg-svg{position:absolute}.skip-link{position:fixed;top:-100px;left:16px;z-index:200;background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:10px;transition:top .2s var(--ease)}.skip-link:focus{top:16px}.ambient{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:var(--bg);transition:background-color .9s var(--ease)}.orb{position:absolute;border-radius:50%;opacity:var(--orb-light);will-change:transform;transition:opacity .9s var(--ease)}html[data-theme=dark] .orb{mix-blend-mode:screen;filter:blur(56px) saturate(115%)}html[data-theme=light] .orb{mix-blend-mode:normal;filter:blur(52px) saturate(120%)}.orb--a{width:50vw;height:50vw;left:-12vw;top:-14vw;background:radial-gradient(circle at 40% 40%,hsl(var(--hue) var(--osat,88%) 62%),transparent 64%)}.orb--b{width:44vw;height:44vw;right:-12vw;top:6vh;background:radial-gradient(circle at 60% 40%,hsl(calc(var(--hue) + 95) var(--osat,88%) 60%),transparent 64%);opacity:calc(var(--orb-light) * .9)}.orb--c{width:48vw;height:48vw;left:16vw;bottom:-22vw;background:radial-gradient(circle at 50% 50%,hsl(calc(var(--hue) + 190) var(--osat,88%) 63%),transparent 64%);opacity:calc(var(--orb-light) * .85)}.orb--d{width:38vw;height:38vw;right:10vw;bottom:2vh;background:radial-gradient(circle at 45% 55%,hsl(calc(var(--hue) + 290) var(--osat,88%) 66%),transparent 64%);opacity:calc(var(--orb-light) * .7)}body.is-detail .orb--a{background:radial-gradient(circle at 40% 40%,hsl(var(--hue) var(--osat,88%) 62%),transparent 64%)}body.is-detail .orb--b{background:radial-gradient(circle at 60% 40%,hsl(calc(var(--hue) + 34) var(--osat,88%) 60%),transparent 64%)}body.is-detail .orb--c{background:radial-gradient(circle at 50% 50%,hsl(calc(var(--hue) - 30) calc(var(--osat,88%) - 6%) 64%),transparent 64%)}body.is-detail .orb--d{background:radial-gradient(circle at 45% 55%,hsl(calc(var(--hue) + 72) var(--osat,88%) 66%),transparent 64%)}.vignette{position:absolute;inset:0;background:radial-gradient(125% 95% at 50% 38%,transparent 42%,rgba(0,0,0,.55))}html[data-theme=light] .vignette{background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(33,28,23,.1))}.grain{position:absolute;inset:-50%;opacity:var(--grain-op);mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.hud{position:fixed;inset:0 0 auto;z-index:60;display:flex;align-items:center;justify-content:space-between;padding:clamp(18px,3vw,30px) clamp(20px,5vw,48px);pointer-events:none}.hud>*{pointer-events:auto}.hud:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:color-mix(in srgb,var(--bg) 64%,transparent);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);opacity:0;transition:opacity .4s var(--ease);will-change:opacity;-webkit-mask-image:linear-gradient(to bottom,#000 62%,transparent 100%);mask-image:linear-gradient(to bottom,#000 62%,transparent 100%)}.hud.is-scrolled:before{opacity:1}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.hud:before{background:color-mix(in srgb,var(--bg) 90%,transparent)}}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:15.5px;letter-spacing:-.02em}.hud__right{display:flex;align-items:center;gap:14px}.hud__floor{display:inline-block;width:96px;text-align:right;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;color:var(--ink-soft);letter-spacing:.02em;white-space:nowrap}.ghost-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--ink-soft);border:1px solid var(--line);background:var(--glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:color .25s,transform .4s var(--spring),background-color .25s}.ghost-btn:hover{color:var(--ink);transform:rotate(20deg)}.ic-moon,.ic-cb,html[data-theme=dark] .ic-sun{display:none}html[data-theme=dark] .ic-moon{display:block}html[data-theme=cb] .ic-sun,html[data-theme=cb] .ic-moon{display:none}html[data-theme=cb] .ic-cb{display:block}.roomnav{position:fixed;z-index:60;right:clamp(18px,3vw,36px);top:50%;transform:translateY(-50%);display:flex;align-items:flex-start;gap:14px}.roomnav__line{position:relative;width:2px;align-self:stretch;background:var(--line);border-radius:2px}.roomnav__fill{position:absolute;top:0;left:0;width:100%;height:0;background:var(--ink);border-radius:2px;transition:height .5s var(--ease)}.roomnav ul{display:flex;flex-direction:column;gap:4px}.roomnav a{display:flex;align-items:center;gap:10px;padding:6px 4px;color:var(--ink-faint);transition:color .3s var(--ease)}.roomnav__n{font-variant-numeric:tabular-nums;font-size:11.5px;font-weight:600;letter-spacing:.04em;opacity:.7}.roomnav__t{font-size:13px;font-weight:500;opacity:0;transform:translate(-6px);transition:opacity .3s var(--ease),transform .3s var(--ease)}.roomnav a:hover .roomnav__t,.roomnav a.is-active .roomnav__t{opacity:1;transform:none}.roomnav a:hover,.roomnav a.is-active{color:var(--ink)}.roomnav a.is-active .roomnav__n{color:var(--accent);opacity:1}.scroller{position:relative;z-index:10;height:100svh;overflow-y:scroll;overflow-x:hidden;scroll-snap-type:y proximity;scroll-behavior:smooth;scrollbar-width:none}.scroller::-webkit-scrollbar{display:none}@media (prefers-reduced-motion: reduce){.scroller{scroll-behavior:auto;scroll-snap-type:y proximity}}.room{scroll-snap-align:start;scroll-snap-stop:always;min-height:100svh;width:100%;display:grid;place-items:center;padding:clamp(96px,14vh,150px) clamp(20px,6vw,64px) clamp(64px,10vh,110px);position:relative}.room__inner{width:100%;max-width:var(--maxw)}[data-anim]{opacity:0;transform:translateY(16px);filter:blur(4px);transition:opacity .42s var(--ease),transform .5s var(--ease),filter .38s var(--ease)}.room.is-active [data-anim]{opacity:1;transform:none;filter:none}.room.is-active [data-anim]:nth-child(2){transition-delay:.05s}.room.is-active [data-anim]:nth-child(3){transition-delay:.1s}.room.is-active [data-anim]:nth-child(4){transition-delay:.15s}.room.is-active [data-anim]:nth-child(5){transition-delay:.2s}.gallery [data-anim]:nth-child(1){transition-delay:.04s}.gallery [data-anim]:nth-child(2){transition-delay:.1s}.gallery [data-anim]:nth-child(3){transition-delay:.16s}@media (prefers-reduced-motion: reduce){[data-anim]{opacity:1;transform:none;filter:none}}.kicker,.room__tag{display:inline-block;font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.room__tag{padding:6px 14px;border-radius:999px;border:1px solid var(--line);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.display{font-family:var(--display);font-weight:700;font-size:clamp(2.8rem,8vw,5.6rem);line-height:.98;letter-spacing:-.04em}.display em{font-family:var(--serif);font-weight:400;font-style:italic;letter-spacing:-.01em;color:var(--ink);cursor:default;transition:color .25s var(--ease);display:inline-block;vertical-align:baseline;padding:.06em .16em .2em;margin:-.06em -.16em -.2em}@media (hover: hover){.display em:hover{color:transparent;-webkit-text-fill-color:transparent;background-image:var(--rainbow);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:rainbowFlow 3.2s linear infinite}}@keyframes rainbowFlow{to{background-position:200% 0}}@media (prefers-reduced-motion: reduce){.display em:hover{animation:none}}.foyer .display em{position:relative}.foyer .display em:after{content:"";position:absolute;left:.16em;right:.16em;bottom:.16em;height:2px;border-radius:2px;background:color-mix(in srgb,var(--accent) 55%,transparent);transform:scaleX(0);transform-origin:left;animation:emUnderline .95s var(--ease) 1.2s forwards}@keyframes emUnderline{to{transform:scaleX(1)}}@media (prefers-reduced-motion: reduce){.foyer .display em:after{animation:none;transform:scaleX(1)}}.rainbow-hover{display:inline-block;padding:.04em .12em .14em;margin:-.04em -.12em -.14em;transition:color .25s var(--ease)}@media (hover: hover){.rainbow-hover:hover,.about__media:hover~.about__copy .rainbow-hover{color:transparent;-webkit-text-fill-color:transparent;background-image:var(--rainbow);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:rainbowFlow 3.2s linear infinite}}@media (prefers-reduced-motion: reduce){.rainbow-hover:hover,.about__media:hover~.about__copy .rainbow-hover{animation:none}}.display--sm{font-size:clamp(1.9rem,4.2vw,3rem)}.title{font-family:var(--display);font-weight:700;font-size:clamp(1.9rem,4.6vw,3.2rem);line-height:1.06;letter-spacing:-.03em}.lede{font-size:clamp(1.05rem,1.7vw,1.28rem);color:var(--ink-soft);max-width:40ch;line-height:1.55}.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;min-height:48px;border-radius:999px;font-weight:600;font-size:15px;transition:transform .35s var(--spring),box-shadow .3s var(--ease),background-color .3s,color .3s,border-color .3s}.btn--solid{background:var(--solid-bg);color:var(--solid-fg);box-shadow:0 12px 30px -14px #0009}.btn--solid:hover{transform:translateY(-3px);box-shadow:0 18px 40px -16px #000000b3}.btn--quiet{color:var(--ink);border:1px solid var(--line);background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.btn--quiet:hover{transform:translateY(-3px);border-color:var(--accent);color:var(--accent)}.glass{position:relative;background:var(--glass-bg);backdrop-filter:blur(13px) saturate(170%);-webkit-backdrop-filter:blur(13px) saturate(170%);border:1px solid var(--glass-stroke);box-shadow:var(--shadow);border-radius:var(--r)}.glass:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff8c,#fff0 42%);opacity:.7;mix-blend-mode:screen}html[data-theme=dark] .glass:before{opacity:.3}.glass--refract:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px var(--rim);opacity:.55}.foyer{text-align:left;max-width:680px}.foyer .kicker{margin-bottom:18px}.foyer .display{font-size:clamp(2.1rem,4.8vw,3.7rem);line-height:1.06;margin-bottom:20px}.foyer .hero-punch{font-weight:600;font-size:clamp(.96rem,1.3vw,1.1rem);color:var(--ink);max-width:40ch;margin-bottom:14px;line-height:1.5}.foyer .lede,.foyer .hero-punch{text-wrap:balance}.foyer .lede{margin-bottom:34px;max-width:42ch;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.62}.foyer__cta{display:flex;flex-wrap:wrap;gap:12px}.room--foyer{--ink: #f7f5f2;--ink-soft: #c7c2bb;--ink-faint: #8f897f;--line: rgba(255,255,255,.14);--glass-bg: hsla(240,12%,13%,.5);--glass-hi: hsla(240,12%,20%,.6);--glass-stroke: rgba(255,255,255,.16);--accent: #ffffff;--solid-bg: #ffffff;--solid-fg: #0b0b0d;--ring: rgba(255,255,255,.28);color:var(--ink);isolation:isolate;justify-items:start;background:#050509}.room--foyer:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(48% 56% at 56% 44%,rgba(255,255,255,.2),rgba(255,255,255,.06) 34%,transparent 70%),radial-gradient(70% 80% at 56% 44%,rgba(150,170,255,.1),transparent 72%);filter:blur(34px);animation:foyerGlow 7.5s ease-in-out infinite alternate}@keyframes foyerGlow{0%{opacity:.72;transform:scale(1)}to{opacity:1;transform:scale(1.06)}}@media (prefers-reduced-motion: reduce){.room--foyer:before{animation:none}}.room--foyer:after{content:"";position:absolute;left:0;top:0;z-index:-1;pointer-events:none;width:540px;height:540px;margin:-270px 0 0 -270px;border-radius:50%;background:radial-gradient(circle,hsl(0 90% 66% / .2),hsl(45 95% 60% / .15) 22%,hsl(140 80% 55% / .12) 44%,hsl(200 92% 62% / .13) 62%,hsl(280 85% 66% / .16) 80%,transparent 100%);filter:blur(38px);mix-blend-mode:screen;transform:translate(var(--mx, 60vw),var(--my, 42vh));will-change:transform}.foyer-controls{position:absolute;z-index:3;bottom:clamp(20px,6vh,54px);right:clamp(26px,7vw,110px);display:flex;align-items:center;gap:10px}.foyer-3d__toggle{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.26);background:#ffffff14;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;opacity:.6;transition:opacity .25s var(--ease),background-color .25s,transform .35s var(--spring)}.foyer-3d__toggle:hover,.foyer-3d__toggle[aria-pressed=true]{opacity:1;background:#ffffff29;transform:scale(1.06)}.foyer-3d__freeze{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat}.foyer-curve{position:absolute;left:-3%;right:-3%;bottom:-1px;height:clamp(38px,7vh,88px);z-index:0;background:var(--bg);border-radius:50% 50% 0 0/100% 100% 0 0;pointer-events:none}.foyer__cta .btn--solid{position:relative}.foyer__cta .btn--solid:after{content:"";position:absolute;left:6%;right:6%;bottom:-12px;height:70%;z-index:-1;border-radius:999px;background:var(--rainbow);background-size:200% 100%;filter:blur(15px);opacity:0;transform:translateY(6px);transition:opacity .35s var(--ease),transform .35s var(--ease)}@media (hover: hover){.foyer__cta .btn--solid:hover:after{opacity:.85;transform:translateY(2px);animation:rainbowFlow 3s linear infinite}}@media (prefers-reduced-motion: reduce){.foyer__cta .btn--solid:hover:after{animation:none}}body[data-room=foyer] .hud,body[data-room=foyer] .roomnav{--ink: #f6f4f1;--ink-soft: #c4bfb8;--ink-faint: #b4afa7;--accent: #ffffff;--line: rgba(255,255,255,.16);--glass-bg: hsla(240,12%,14%,.5);--glass-stroke: rgba(255,255,255,.18)}#themeToggle:disabled{opacity:.4;cursor:not-allowed;transform:none}#themeToggle:disabled:hover{transform:none}.room--foyer .room__inner{position:relative;z-index:2;pointer-events:none}.room--foyer .room__inner>*{pointer-events:auto}.foyer-wrap{position:relative}.foyer{position:relative;z-index:1}.room--foyer .foyer{transform:translateY(calc(var(--out, 0) * -34px));opacity:calc(1 - var(--out, 0) * .82);will-change:transform,opacity}@media (prefers-reduced-motion: reduce){.room--foyer .foyer{transform:none;opacity:1}}.foyer-3d{position:absolute;z-index:0;top:50%;right:max(0px,calc(50vw - 660px));transform:translateY(-50%);width:min(64vw,820px);height:min(90vh,800px);pointer-events:none;opacity:0;animation:foyer3dIn 1.2s var(--ease) .35s forwards;mix-blend-mode:screen;-webkit-mask-image:radial-gradient(86% 86% at 52% 50%,#000 50%,transparent 100%);mask-image:radial-gradient(86% 86% at 52% 50%,#000 50%,transparent 100%)}.foyer-3d__viewer{display:block;width:100%;height:100%;background:transparent}@keyframes foyer3dIn{to{opacity:1}}.foyer-orb{display:grid;place-items:center}.foyer-orb .orb-svg{width:100%;height:100%;display:block;overflow:visible}.orb-halo{transform-box:fill-box;transform-origin:center;animation:orbHalo 9s ease-in-out infinite alternate}.orb-heart-beat{transform-box:fill-box;transform-origin:center;animation:orbBeat 2.8s ease-in-out infinite}.orb-heart-glow{transform-box:fill-box;transform-origin:center;animation:orbGlow 2.8s ease-in-out infinite}.orb-sat{filter:drop-shadow(0 0 4px rgba(200,220,255,.9))}.orb-spark{filter:drop-shadow(0 0 5px rgba(255,255,255,.9))}@keyframes orbHalo{0%{opacity:.7;transform:scale(.96)}to{opacity:1;transform:scale(1.06)}}@keyframes orbBeat{0%,to{transform:scale(1)}12%{transform:scale(1.07)}24%{transform:scale(1)}36%{transform:scale(1.035)}48%{transform:scale(1)}}@keyframes orbGlow{0%,to{opacity:.22}18%{transform:scale(1.1);opacity:.48}40%{opacity:.32}}@keyframes orbShimmer{to{filter:hue-rotate(360deg)}}.orb-heart-hit{pointer-events:auto;cursor:pointer}.orb-heart-glow,.orb-heart-line,.orb-heart-gloss,.orb-heart-glass,.orb-heart-fill,.orb-heart-shade,.orb-heart-rim,.orb-heart-hotspot,.orb-heart-iri,.orb-heart-face{pointer-events:none}.orb-heart-face{opacity:0;transition:opacity .45s var(--ease)}.orb-heart-line,.orb-heart-glass,.orb-heart-fill{opacity:0}.orb-heart-iri{opacity:var(--near, 0)}.orb-svg.is-near .orb-heart-shim{animation:orbShimmer 7s linear infinite}.orb-heart-body,.orb-heart-shade,.orb-heart-rim,.orb-heart-gloss,.orb-heart-hotspot,.orb-heart-line{transition:opacity .45s var(--ease)}.orb-svg.is-outline .orb-heart-body,.orb-svg.is-outline .orb-heart-iri,.orb-svg.is-outline .orb-heart-shade,.orb-svg.is-outline .orb-heart-rim,.orb-svg.is-outline .orb-heart-gloss,.orb-svg.is-outline .orb-heart-hotspot{opacity:0!important}.orb-svg.is-outline .orb-heart-glow{opacity:.18!important}.orb-svg.is-outline .orb-heart-line{opacity:1;stroke-width:2;filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 9px #cfe0ff) drop-shadow(0 0 16px #9ab4ff)}.orb-svg.is-outline .orb-heart-face{opacity:1;filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 8px #cfe0ff)}@media (max-width: 1100px){.room--foyer{display:flex;flex-direction:column;justify-content:center;padding-top:clamp(76px,9vh,100px)}.foyer-3d{order:-1;position:static;transform:none;inset:auto;width:100vw;margin-inline:calc(50% - 50vw);margin-block:0 1.5vh;height:min(34vh,340px);overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.5) 6%,#000 18%,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.5) 6%,#000 18%,#000 88%,transparent 100%)}.foyer-orb{position:relative}.foyer-orb .orb-svg{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:min(122%,500px);height:auto;aspect-ratio:1 / 1}.room--foyer:after{display:none}.room--foyer:before{animation:none;opacity:.35}.room--foyer .enter-hint{display:none}.foyer-controls{top:clamp(80px,10vh,108px);bottom:auto;right:clamp(14px,5vw,22px)}.foyer{text-align:center;margin-inline:auto}.foyer .kicker,.foyer .lede{margin-inline:auto}.foyer__cta{justify-content:center}}@media (prefers-reduced-motion: reduce){.foyer-3d{display:none}}@media (min-width: 1440px){:root{--maxw: 1280px}}@media (min-width: 1920px){:root{--maxw: 1400px}.foyer .display{font-size:clamp(3.4rem,3.6vw,4.4rem)}}@media (min-width: 2560px){:root{--maxw: 1520px}}@media (min-width: 1600px){.room--foyer{justify-items:center}.room--foyer .room__inner{max-width:1400px;margin-inline:auto}.foyer{max-width:760px}}@media (min-width: 901px){.room__inner{max-width:min(var(--maxw),100vw - 320px)}}@media (max-width: 640px){.glass{backdrop-filter:blur(9px) saturate(150%);-webkit-backdrop-filter:blur(9px) saturate(150%)}.hud:before{backdrop-filter:blur(12px) saturate(150%);-webkit-backdrop-filter:blur(12px) saturate(150%)}.ghost-btn{backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}.btn--quiet,.viewall,.seg{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.room__tag,.chips li,.detail-chips li{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.foyer-curve{height:clamp(13px,2.2vh,24px)}}.enter-hint{position:absolute;z-index:2;bottom:clamp(74px,11vh,116px);left:0;right:0;margin-inline:auto;width:max-content;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--ink-faint);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.enter-hint span{margin-right:-.18em}.music-btn:hover{transform:none}.music-btn[aria-pressed=true]{color:var(--ink);background:var(--glass-hi)}.enter-hint svg{animation:bob 1.9s var(--ease) infinite}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.room__head{margin-bottom:clamp(28px,4vh,48px)}.room__head--center{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.room__head .room__tag{margin-bottom:16px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.piece{display:flex;flex-direction:column;padding:13px 13px 19px;border-radius:28px;transition:transform .55s var(--ease),box-shadow .55s var(--ease),border-color .4s var(--ease);will-change:transform}.piece:hover,.piece:focus-visible{transform:translateY(-8px) scale(1.01);border-color:color-mix(in srgb,var(--ink) 24%,transparent);box-shadow:0 26px 54px -30px #000000b3}.piece__meta{transition:color .4s var(--ease)}.piece:hover .piece__meta,.piece:focus-visible .piece__meta{color:var(--ink-soft)}.piece__cover{aspect-ratio:16/10;border-radius:16px;overflow:hidden;margin-bottom:15px;position:relative;display:grid;place-items:center;background:var(--cover)}.piece__cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.piece__fav{position:absolute;top:10px;right:10px;z-index:2;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;color:#ff5d73;background:#ffffffd1;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 2px 8px #14100a29}.piece__no{font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(2.6rem,5vw,3.5rem);color:var(--ink);opacity:.13;letter-spacing:-.02em;transition:opacity .5s var(--ease),transform .6s var(--ease)}.piece:hover .piece__no{opacity:.2;transform:scale(1.05)}.piece__body{display:flex;flex-direction:column;flex:1;padding:0 7px}.piece__meta{font-size:11.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:9px}.piece__title{font-family:var(--display);font-size:1.2rem;letter-spacing:-.02em;line-height:1.15}.piece__desc{color:var(--ink-soft);font-size:14px;line-height:1.5;margin-top:9px;flex:1}.piece__go{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13.5px;color:var(--ink);margin-top:16px}.piece__go svg{transition:transform .35s var(--ease)}.piece:hover .piece__go svg{transform:translate(4px)}.piece__go-t{position:relative}.piece__go-t:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1.5px;background:currentColor;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}.piece:hover .piece__go-t:after,.piece:focus-visible .piece__go-t:after{transform:scaleX(1)}@media (prefers-reduced-motion: reduce){.piece__go-t:after{transition:none}}.gallery__foot{display:flex;justify-content:center;margin-top:clamp(22px,3vh,34px)}.viewall{display:inline-flex;align-items:center;gap:12px;padding:14px 16px 14px 26px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);font-weight:700;font-size:15px;box-shadow:0 12px 28px -14px color-mix(in srgb,var(--ink) 60%,transparent);transition:transform .35s var(--spring),box-shadow .35s var(--ease)}.viewall:hover{transform:translateY(-3px);box-shadow:0 18px 38px -14px color-mix(in srgb,var(--ink) 64%,transparent)}.viewall__count{font-variant-numeric:tabular-nums;font-size:11.5px;padding:3px 9px;border-radius:999px;background:var(--bg);color:var(--ink);font-weight:700}.viewall__arrow{transition:transform .35s var(--ease)}.viewall:hover .viewall__arrow{transform:translate(3px)}.craft{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:start;gap:clamp(20px,3vw,40px)}.craft__item{display:flex;flex-direction:column;gap:10px}.craft__num{font-family:var(--serif);font-style:italic;font-size:2.4rem;line-height:1;color:var(--accent);transition:transform .5s var(--spring);will-change:transform}.craft__item:hover .craft__num{transform:scale(1.09)}@media (prefers-reduced-motion: reduce){.craft__item:hover .craft__num{transform:none}}.craft__item h3{font-family:var(--display);font-size:1.3rem;letter-spacing:-.02em}.craft__item p{color:var(--ink-soft);font-size:15px;line-height:1.55}.craft__div{width:1px;align-self:stretch;background:linear-gradient(var(--line),transparent);transform:scaleY(0);transform-origin:top;transition:transform .7s var(--ease) .28s}.room.is-active .craft__div{transform:scaleY(1)}@media (prefers-reduced-motion: reduce){.craft__div{transform:none;transition:none}}.room__intro{color:var(--ink-soft);font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.55;max-width:60ch;margin-top:12px;text-wrap:pretty}.room__head--center .room__intro{margin-inline:auto}.more-cards{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,22px);margin-top:clamp(30px,5vh,56px)}.more-card{display:flex;flex-direction:row;align-items:center;gap:16px;padding:clamp(20px,2.4vw,28px);border-radius:var(--r-lg);transition:transform .45s var(--spring),border-color .3s var(--ease),box-shadow .4s var(--ease)}.more-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--ink) 24%,transparent);box-shadow:0 24px 50px -30px #000000a8}.more-card__text{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.more-card__title{font-family:var(--display);font-size:1.22rem;line-height:1.2;letter-spacing:-.02em}html:lang(th) .more-card:nth-child(2) .more-card__title{font-size:1.34rem}.more-card__body{color:var(--ink-soft);font-size:14.5px;line-height:1.55}.more-card__cta{margin-top:4px;font-weight:600;font-size:14px;color:var(--accent)}.more-card:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px}@media (max-width: 640px){.more-cards{grid-template-columns:1fr}}.craft__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.craft__ill{position:relative;width:88px;height:88px;flex:none;display:grid;place-items:center;will-change:transform}.more-card__ill{position:relative;width:104px;height:104px;flex:none;display:grid;place-items:center;margin-right:clamp(0px,1.6vw,20px);will-change:transform}.craft__ill:before,.more-card__ill:before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 46%,hsl(var(--hue, 168) 88% 66% / .3),transparent 66%);filter:blur(9px);z-index:0}.craft__ill .ill{width:80px;height:80px}.more-card__ill .ill{width:100px;height:100px}.craft__ill .ill,.more-card__ill .ill{position:relative;z-index:1;display:block;color:color-mix(in srgb,var(--ink) 80%,transparent);overflow:visible;transition:transform .5s var(--spring)}.ill-accent{stroke:hsl(var(--hue, 168) 68% 46%)}.ill-node{fill:hsl(var(--hue, 168) 66% 48%);stroke:none}html[data-theme=dark] .ill-accent{stroke:hsl(var(--hue, 168) 80% 68%)}html[data-theme=dark] .ill-node{fill:hsl(var(--hue, 168) 78% 66%)}.ill-spark{fill:#ff9f43;stroke:none}.craft__item:hover .craft__ill .ill,a.more-card:hover .more-card__ill .ill{transform:rotate(2deg) scale(1.03)}@media (prefers-reduced-motion: no-preference){.craft__ill,.more-card__ill{animation:illFloat 6s ease-in-out infinite alternate}.craft__item:nth-child(3) .craft__ill{animation-duration:6.6s;animation-delay:-1.4s}.craft__item:nth-child(5) .craft__ill{animation-duration:7.2s;animation-delay:-2.7s}.more-card:nth-child(2) .more-card__ill{animation-duration:7s;animation-delay:-1.8s}.ill-spark{animation:illSpark 2.6s ease-in-out infinite alternate}}@keyframes illFloat{0%{transform:translateY(0)}to{transform:translateY(-3px)}}@keyframes illSpark{0%{opacity:.4}to{opacity:1}}@media (max-width: 900px){.craft__ill{width:76px;height:76px}.craft__ill .ill{width:62px;height:62px}}@media (max-width: 560px){.more-card{position:relative}.more-card__ill{position:absolute;top:16px;right:16px;width:68px;height:68px;margin:0}.more-card__ill .ill{width:60px;height:60px}.more-card__text{padding-right:74px}}@media (max-height: 760px) and (min-width: 901px){.room{padding-top:clamp(72px,11vh,110px);padding-bottom:clamp(40px,7vh,80px)}#craft-h{font-size:clamp(1.6rem,3.2vw,2.5rem)}.craft{gap:clamp(16px,2vw,30px)}.craft__item p{font-size:14px;line-height:1.5}.more-cards{margin-top:clamp(18px,3vh,32px)}}.voices{max-width:920px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px}.quote{position:relative;font-family:var(--serif);font-size:clamp(1.7rem,4vw,3rem);line-height:1.2;letter-spacing:-.01em;max-width:18ch}.quote em{font-style:italic;color:var(--ink);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;text-decoration-color:var(--ink-faint)}.quote__mark{position:absolute;top:-.4em;left:-.5em;font-size:2.4em;color:var(--accent);opacity:.35;font-family:var(--serif);transition:opacity .45s var(--ease)}.quote:hover .quote__mark{opacity:.62}.quote__by{display:flex;flex-direction:column;gap:2px}.quote__name{font-weight:600;font-size:15px}.quote__role{color:var(--ink-faint);font-size:13.5px}.voices__more{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:18px;max-width:760px}.voices__more p{color:var(--ink-soft);font-size:14.5px;line-height:1.5}.voices__more .vby{display:block;margin-top:8px;font-size:12.5px;color:var(--ink-faint);font-weight:600}.about{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(32px,6vw,72px);align-items:center}.portrait{padding:12px;border-radius:var(--r-lg);position:relative}.portrait:before{z-index:1}.portrait__mono,.portrait__status{position:relative;z-index:2}.portrait{aspect-ratio:4/5;display:grid;place-items:center}.portrait{background:var(--ph-1)}.portrait__img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;border-radius:20px;position:relative;z-index:2}.portrait__status{position:absolute;left:20px;bottom:20px;display:flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;font-size:12.5px;font-weight:600}.dot{width:7px;height:7px;border-radius:50%;background:#37c46c;box-shadow:0 0 #37c46c99;animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{0%{box-shadow:0 0 #37c46c80}70%{box-shadow:0 0 0 8px #37c46c00}to{box-shadow:0 0 #37c46c00}}.about__copy .room__tag{margin-bottom:16px}.about__copy .title{margin-bottom:18px}.about__copy p{color:var(--ink-soft);font-size:1.08rem;max-width:52ch}.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.chips li{padding:8px 15px;border-radius:999px;font-size:13.5px;font-weight:500;color:var(--ink-soft);border:1px solid var(--line);background:var(--glass-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.contact{text-align:center;max-width:640px;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:22px}.contact .display{margin-top:6px}.contact__mail{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,3vw,1.9rem);color:var(--accent);border-bottom:1.5px solid var(--ink-faint);transition:border-color .3s var(--ease)}.contact__mail:hover{border-color:var(--accent)}.signup{width:100%;padding:18px;border-radius:var(--r);margin-top:6px}.field{text-align:left}.field label{font-size:13.5px;font-weight:600;display:block;margin-bottom:5px}.field__help{font-size:12.5px;color:var(--ink-faint);line-height:1.45;margin-bottom:11px}.field__row{display:flex;gap:8px}.field__row input{flex:1;min-width:0;padding:14px 16px;min-height:50px;border-radius:14px;font-family:var(--font);font-size:16px;color:var(--ink);background:var(--glass-hi);border:1px solid var(--line);transition:border-color .25s,box-shadow .25s}.field__row input::placeholder{font-family:var(--font);color:var(--ink-faint)}.field__row input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--ring)}.field__row input[aria-invalid=true]{border-color:#e0564f;box-shadow:0 0 0 4px #e0564f29}.signup__btn{position:relative}.signup__btn.is-loading .signup__label{opacity:0}.signup__spin{display:none;position:absolute;inset:0;margin:auto;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.signup__btn.is-loading .signup__spin{display:block}@keyframes spin{to{transform:rotate(360deg)}}.field__err{color:#e0564f;font-size:13px;font-weight:500;margin-top:9px}.field__ok{color:#38b27a;font-size:13.5px;font-weight:600;margin-top:9px}.doorfoot{display:flex;flex-wrap:wrap;gap:14px 24px;justify-content:center;align-items:center;color:var(--ink-soft);font-size:13px;margin-top:8px}.doorfoot__links{display:flex;gap:20px}.doorfoot a{color:var(--ink-soft);transition:color .25s}.doorfoot a:hover{color:var(--accent)}.social{display:inline-flex;align-items:center;gap:4px}.social__link{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--ink-faint);transition:color .25s var(--ease),background-color .25s var(--ease),transform .3s var(--spring)}.social__link:hover{color:var(--ink);background:var(--glass-bg);transform:translateY(-2px)}.social__link svg{display:block}.visit-count{width:100%;margin-top:18px;display:flex;justify-content:center;align-items:baseline;gap:.5ch;text-align:center;opacity:0;transform:translateY(5px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.visit-count.is-shown{opacity:1;transform:none}.visit-count__label{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--ink-faint)}.visit-count__no{font-variant-numeric:tabular-nums;font-weight:600;font-size:14px;color:var(--ink-soft);letter-spacing:.03em}.visit-count--foot{margin-top:10px;opacity:0}.visit-count--foot.is-shown{opacity:.7}.visit-count--foot .visit-count__label{font-size:13px}.visit-count--foot .visit-count__no{font-size:12.5px}.article{max-width:42rem;margin:0 auto;padding:clamp(100px,14vh,144px) clamp(22px,6vw,40px) clamp(56px,10vh,96px)}.page-main.article{max-width:42rem}.article-page{--bg: #f7f2ea}.article__hero{margin:0 0 clamp(26px,4.5vh,40px);aspect-ratio:16 / 10;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#efe7da,#e7dccb 60%,#f3d9c6);border:1px solid var(--card-line, rgba(0,0,0,.06));box-shadow:var(--card-shadow, 0 14px 34px rgba(28,22,14,.12))}.article__hero img{width:100%;height:100%;object-fit:cover;display:block}.article__head{margin-bottom:clamp(24px,4.5vh,40px)}.article__title{font-family:var(--display);font-weight:700;font-size:clamp(2rem,4.6vw,2.9rem);letter-spacing:-.03em;line-height:1.12;margin-top:14px}.article__meta{color:var(--ink-faint);font-size:13px;font-weight:600;letter-spacing:.03em;margin-top:12px}.article__body>p{color:color-mix(in srgb,var(--ink) 84%,transparent);font-size:1.14rem;line-height:1.85;margin:0 0 1.5em;text-wrap:pretty}.article__body>p.article__stanza{color:var(--ink);font-family:var(--serif);font-style:italic;font-size:clamp(1.18rem,1.7vw,1.42rem);line-height:1.7;margin:1.7em 0}html:lang(th) .article__body>p{font-size:1.16rem;line-height:1.95;margin-bottom:1.55em}html:lang(th) .article__body{overflow-wrap:normal;word-break:normal}.article__body .nobr{white-space:nowrap}html:lang(th) .article__body>p.article__stanza{font-family:var(--hand);font-style:normal;line-height:1.85}.article__body[lang=th]>p{font-size:1.16rem;line-height:1.95;margin-bottom:1.55em}.article__body[lang=th]{overflow-wrap:normal;word-break:normal}.article__body[lang=th]>p.article__stanza{font-family:var(--hand);font-style:normal;line-height:1.85}.article__rate{margin-top:clamp(40px,7vh,72px);padding-top:clamp(26px,4vh,40px);border-top:1px solid var(--card-line, var(--line));text-align:center}.article__rate-q{color:var(--ink);font-family:var(--serif);font-style:italic;font-size:1.2rem;margin-bottom:16px}html:lang(th) .article__rate-q{font-family:var(--hand);font-style:normal}.rate-row{display:inline-flex;gap:10px;flex-wrap:wrap;justify-content:center}.rate-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 15px;border-radius:999px;border:1px solid var(--card-line, var(--line));background:var(--card-bg, var(--glass-bg));cursor:pointer;font-weight:600;font-size:14px;color:var(--ink-soft);transition:transform .3s var(--spring),border-color .25s var(--ease),background-color .25s}.rate-btn:hover{transform:translateY(-3px) scale(1.04);border-color:color-mix(in srgb,var(--ink) 28%,transparent)}.rate-btn .rate-e{font-size:18px;line-height:1}.rate-btn .rate-c{font-variant-numeric:tabular-nums;color:var(--ink-faint);min-width:1ch}.rate-btn.is-mine{border-color:color-mix(in srgb,var(--ink) 40%,transparent);background:color-mix(in srgb,var(--ink) 7%,var(--card-bg, transparent));color:var(--ink);cursor:default}.article__rate-note{color:var(--ink-faint);font-size:12px;margin-top:14px}.article__lede{color:var(--ink);font-size:clamp(1.2rem,2vw,1.42rem);line-height:1.7;margin:0 0 1.7em;text-wrap:pretty}.article__body h2{font-family:var(--display);font-weight:700;font-size:clamp(1.5rem,3.2vw,2.05rem);letter-spacing:-.02em;line-height:1.22;color:var(--ink);margin:2.6em 0 .7em;scroll-margin-top:92px}html:lang(th) .article__body h2{line-height:1.4;letter-spacing:0}.article__body h2 .art-kicker{display:block;font-family:var(--serif);font-style:italic;font-size:.9rem;letter-spacing:.01em;color:var(--accent);opacity:.85;margin-bottom:6px}.article__body h2:first-child{margin-top:0}.article__body h3{font-family:var(--display);font-weight:600;font-size:1.18rem;letter-spacing:-.01em;margin:1.8em 0 .5em;color:var(--ink)}.article__body ul{margin:0 0 1.5em;padding-left:1.2em;color:color-mix(in srgb,var(--ink) 84%,transparent)}.article__body li{font-size:1.1rem;line-height:1.7;margin:0 0 .5em}html:lang(th) .article__body li{font-size:1.08rem;line-height:1.85}.art-reco{list-style:none;margin:1.7em 0;padding:0;display:grid;gap:12px}.art-reco li{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border-radius:14px;background:color-mix(in srgb,var(--ink) 4%,transparent);border:1px solid var(--card-line, var(--line))}.art-reco__ic{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:var(--ink);background:color-mix(in srgb,var(--ink) 8%,transparent)}.art-reco__ic svg{width:20px;height:20px}.art-reco__txt{font-size:1.06rem;line-height:1.7;color:color-mix(in srgb,var(--ink) 86%,transparent)}.art-reco__txt strong{color:var(--ink);font-weight:700}.article__body[lang=th] .art-reco__txt,html:lang(th) .art-reco__txt{line-height:1.82}.article__fig{margin:2.3em -2vw}.article__fig img{width:100%;height:auto;aspect-ratio:16 / 9;display:block;border-radius:18px;border:1px solid var(--card-line, rgba(0,0,0,.08));box-shadow:var(--card-shadow, 0 18px 44px rgba(20,16,28,.22));background:#16161f}.article__fig figcaption{margin-top:12px;padding:0 6px;font-family:var(--hand);font-size:12.5px;line-height:1.55;color:var(--ink-faint);text-align:center}@media (max-width: 720px){.article__fig{margin-left:0;margin-right:0}}.article__pull{margin:2.2em 0;padding:4px 0 4px 26px;border-left:3px solid var(--accent)}.article__pull p{font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,3.4vw,2.15rem);line-height:1.22;color:var(--ink);margin:0}.article__pull cite{display:block;margin-top:14px;font-style:normal;font-family:var(--font);font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--ink-faint)}.article__body a{color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1.5px solid color-mix(in srgb,var(--accent) 45%,transparent);transition:border-color .2s var(--ease)}.article__body a:hover{border-bottom-color:var(--accent)}.art-avail{margin:1.5em 0 0;padding:15px 18px;border-radius:14px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 3.5%,transparent)}.art-avail__tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:9px}.art-avail__tag:before{content:"";width:7px;height:7px;border-radius:50%;background:#4cd97b;box-shadow:0 0 0 3px color-mix(in srgb,#4cd97b 22%,transparent)}.art-avail ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.art-avail li{font-size:.98rem;line-height:1.6;color:color-mix(in srgb,var(--ink) 82%,transparent);padding-left:30px;position:relative}.art-avail li:before{content:"→";position:absolute;left:2px;top:0;color:var(--ink-faint);font-weight:600}.art-avail li strong{color:var(--ink);font-weight:600}.art-avail__link{display:inline-block;margin-top:11px;font-size:13.5px;font-weight:600}.article__body[lang=th] .art-avail li,html:lang(th) .art-avail li{line-height:1.72}.art-options{display:grid;gap:14px;margin:1.8em 0}@media (min-width: 680px){.art-options{grid-template-columns:repeat(3,1fr)}}.art-option{display:flex;flex-direction:column;padding:16px 17px;border-radius:16px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 3.5%,transparent)}.art-option--pick{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 7%,transparent);box-shadow:0 10px 30px color-mix(in srgb,var(--accent) 12%,transparent)}.art-option__tag{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.art-option--pick .art-option__tag{color:var(--accent)}.art-option__name{font-family:var(--display);font-weight:700;font-size:1.12rem;letter-spacing:-.01em;color:var(--ink);margin:4px 0 2px}.art-option__meta{font-size:12.5px;color:var(--ink-faint);margin-bottom:11px}.art-option__risk{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:11px}.art-option__dots{display:inline-flex;gap:4px}.art-option__dots i{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--ink) 16%,transparent)}.art-option__dots i.on{background:#e0794f}.art-option--pick .art-option__dots i.on{background:#4cd97b}.art-option__body{font-size:.96rem;line-height:1.62;color:color-mix(in srgb,var(--ink) 82%,transparent);margin:0}html:lang(th) .art-option__body,.article__body[lang=th] .art-option__body{line-height:1.74}.art-decide{margin:1.7em 0;border-radius:16px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 3.5%,transparent);overflow:hidden}.art-decide__row{display:grid;grid-template-columns:124px 1fr;gap:12px;align-items:start;padding:13px 16px;border-top:1px solid color-mix(in srgb,var(--ink) 7%,transparent)}.art-decide__row:first-child{border-top:0}.art-decide__k{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);padding-top:2px}.art-decide__k svg{width:15px;height:15px;flex:none}.art-decide__v{font-size:1rem;line-height:1.6;color:var(--ink);margin:0}html:lang(th) .art-decide__v,.article__body[lang=th] .art-decide__v{line-height:1.72}.art-decide__row--out{background:color-mix(in srgb,var(--accent) 6%,transparent)}.art-decide__row--out .art-decide__k{color:var(--accent)}@media (max-width: 560px){.art-decide__row{grid-template-columns:1fr;gap:5px}}.art-say{display:grid;gap:12px;margin:1.8em 0}.art-say__card{position:relative;padding:16px 50px 16px 18px;border-radius:14px;border:1px solid var(--card-line, var(--line));background:var(--card-bg, var(--glass-bg))}.art-say__card:before{content:"“";position:absolute;left:13px;top:6px;font-family:var(--serif);font-size:30px;line-height:1;color:color-mix(in srgb,var(--accent) 45%,transparent)}.art-say__card p{margin:0 0 0 22px;font-size:1.04rem;line-height:1.65;color:var(--ink)}html:lang(th) .art-say__card p,.article__body[lang=th] .art-say__card p{line-height:1.78}.art-say__copy{position:absolute;right:10px;top:10px;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--ink-faint);cursor:pointer;transition:color .2s var(--ease),border-color .2s var(--ease),background-color .2s}.art-say__copy:hover{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 26%,transparent)}.art-say__copy svg{width:16px;height:16px}.art-say__copy.copied{color:#2fa55a;border-color:color-mix(in srgb,#2fa55a 45%,transparent)}.article__body h2:has(+.art-refs){font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin:2.6em 0 .5em}html:lang(th) .article__body h2:has(+.art-refs),.article__body[lang=th] h2:has(+.art-refs){letter-spacing:.04em}.art-refs{list-style:none;margin:.4em 0 0;padding:0;display:grid;gap:4px}.article__body .art-refs li,html:lang(th) .article__body .art-refs li,.article__body[lang=th] .art-refs li{position:relative;padding-left:16px;font-size:.8rem;line-height:1.55;margin:0;color:var(--ink-faint)}.art-refs li:before{content:"";position:absolute;left:2px;top:.58em;width:4px;height:4px;border-radius:1px;background:color-mix(in srgb,var(--accent) 55%,transparent)}.art-check{list-style:none;margin:1.7em 0;padding:0;display:grid;gap:9px}.art-check li{position:relative;padding-left:36px;font-size:1.05rem;line-height:1.62;color:color-mix(in srgb,var(--ink) 84%,transparent)}.art-check li:before{content:"✓";position:absolute;left:0;top:.04em;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;font-size:13px;font-weight:800;color:#2fa55a;background:color-mix(in srgb,#2fa55a 14%,transparent)}html:lang(th) .art-check li,.article__body[lang=th] .art-check li{line-height:1.74}.art-states{display:flex;flex-wrap:wrap;gap:8px;margin:1.5em 0 1.9em}.art-states span{font-size:13px;font-weight:600;letter-spacing:.01em;padding:7px 13px;border-radius:999px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 4%,transparent);color:var(--ink-soft)}.art-states span.on{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--ink)}.art-stats{display:grid;gap:13px;margin:1.9em 0}@media (min-width: 600px){.art-stats{grid-template-columns:repeat(3,1fr)}}.art-stat{padding:18px 18px 16px;border-radius:16px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 3.5%,transparent)}.art-stat__n{display:block;font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:clamp(2rem,5vw,2.6rem);line-height:1;color:var(--accent)}.art-stat__l{display:block;margin-top:8px;font-size:.95rem;line-height:1.5;color:color-mix(in srgb,var(--ink) 82%,transparent)}html:lang(th) .art-stat__l,.article__body[lang=th] .art-stat__l{line-height:1.62}.art-srcline{margin:-.4em 0 1.6em;font-size:12.5px;color:var(--ink-faint)}.art-steps{list-style:none;counter-reset:step;margin:1.8em 0;padding:0;display:grid;gap:12px}.art-steps li{position:relative;padding:15px 17px 15px 62px;border-radius:14px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 3.5%,transparent)}.art-steps li:before{counter-increment:step;content:counter(step);position:absolute;left:16px;top:15px;width:32px;height:32px;display:grid;place-items:center;border-radius:10px;font-family:var(--display);font-weight:700;font-size:15px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.art-steps__t{display:block;font-family:var(--display);font-weight:700;font-size:1.08rem;letter-spacing:-.01em;color:var(--ink);margin-bottom:3px}.art-steps p{margin:0;font-size:1rem;line-height:1.6;color:color-mix(in srgb,var(--ink) 82%,transparent)}html:lang(th) .art-steps p,.article__body[lang=th] .art-steps p{line-height:1.74}.art-more{margin:clamp(40px,7vh,64px) 0 0;padding-top:clamp(24px,4vh,36px);border-top:1px solid var(--card-line, var(--line))}.art-more__all{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13.5px;color:var(--ink-soft);text-decoration:none;border:0;margin-bottom:16px;transition:color .2s var(--ease)}.art-more__all:hover{color:var(--ink)}.art-more__all svg{opacity:.8}.art-more__row{display:grid;gap:12px}@media (min-width: 620px){.art-more__row{grid-template-columns:1fr 1fr}}.art-more__cell{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:16px;border:1px solid var(--card-line, var(--line));background:color-mix(in srgb,var(--ink) 3.5%,transparent);text-decoration:none;color:inherit;transition:transform .3s var(--spring),border-color .2s var(--ease)}.art-more__cell:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.art-more__cell--next{text-align:right;align-items:flex-end}.art-more__dir{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.art-more__cell:hover .art-more__arrow{color:var(--accent)}.art-more__t{font-family:var(--display);font-weight:700;font-size:1.02rem;line-height:1.3;letter-spacing:-.01em;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}html:lang(th) .art-more__t,.article__body[lang=th]~* .art-more__t{line-height:1.4}.art-share{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:clamp(34px,6vh,56px) 0 0;padding-top:clamp(22px,3.5vh,34px);border-top:1px solid var(--card-line, var(--line))}.art-share__label{font-family:var(--serif);font-style:italic;font-size:1.12rem;color:var(--ink)}html:lang(th) .art-share__label{font-family:var(--hand);font-style:normal;font-size:1rem}.art-share__row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto}.art-share__icon,.art-share__native,.art-share__copy{display:inline-flex;align-items:center;gap:8px;height:40px;border-radius:999px;cursor:pointer;border:1px solid var(--card-line, var(--line));background:var(--card-bg, var(--glass-bg));color:var(--ink-soft);transition:transform .3s var(--spring),border-color .25s var(--ease),color .25s var(--ease),background-color .25s}.art-share__icon{width:40px;justify-content:center}.art-share__icon svg{width:18px;height:18px}.art-share__native,.art-share__copy{padding:0 15px;font-size:13.5px;font-weight:600}.art-share__native svg{width:17px;height:17px}.art-share__copy svg{width:16px;height:16px;color:var(--ink-faint)}.art-share__icon:hover,.art-share__native:hover,.art-share__copy:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--ink) 28%,transparent);color:var(--ink)}.art-share__short{font-variant-numeric:tabular-nums;letter-spacing:.01em}.art-share__copy.copied{color:#2fa55a;border-color:color-mix(in srgb,#2fa55a 45%,transparent)}.art-share__copy.copied svg{color:#2fa55a}@media (max-width: 560px){.art-share__row{margin-left:0}.art-share{gap:10px 12px}}@media (max-width: 900px){.roomnav{display:none}.gallery{grid-template-columns:1fr;gap:12px}.piece{flex-direction:row;align-items:center;gap:14px;padding:11px}.piece__cover{width:116px;flex:none;aspect-ratio:1;margin:0}.piece__body{padding:0}.piece__desc,.piece__go{display:none}.craft{grid-template-columns:1fr;gap:22px}.craft__div{display:none}.about{grid-template-columns:1fr;gap:28px}.about__media{max-width:240px}.voices__more{grid-template-columns:1fr;gap:14px}.hud__floor{display:none}}@media (max-width: 560px){body{font-size:16px}.room{padding-left:22px;padding-right:22px}.field__row{flex-direction:column}.signup__btn{justify-content:center}.hud{padding-left:16px;padding-right:16px}.hud__right{gap:8px}.ghost-btn{width:38px;height:38px}}@media (max-height: 640px){.room{padding-top:88px;padding-bottom:56px}.voices__more{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important}.orb{animation:none}body{transition:background-color .3s}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass,.btn--quiet,.room__tag,.chips li,.ghost-btn,.field__row input{background:var(--glass-hi)}}body.page{overflow-x:hidden;overflow-y:auto;overscroll-behavior-x:none;height:auto;min-height:100svh}.page-main{position:relative;z-index:10;max-width:var(--maxw);margin-inline:auto;padding:clamp(104px,15vh,150px) clamp(20px,6vw,48px) clamp(72px,10vh,110px)}.archive-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:clamp(28px,5vh,44px)}.archive-head__intro .title{margin-top:14px}.archive-head__intro p{color:var(--ink-soft);margin-top:12px;max-width:48ch;font-size:1.02rem}.archive-toolbar{position:sticky;top:clamp(64px,8vh,84px);z-index:30;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:-6px 0 clamp(22px,4vh,34px);pointer-events:none}.archive-toolbar .seg,.archive-filters{pointer-events:auto}.archive-filters{display:flex;gap:8px}.filter-select{appearance:none;-webkit-appearance:none;border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:9px 32px 9px 16px;font:600 13px/1 inherit;font-family:inherit;cursor:pointer;background:var(--glass-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23999' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 13px center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:color .25s var(--ease),border-color .25s var(--ease)}.filter-select:hover{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 30%,transparent)}.archive-card.is-hidden{display:none}.archive-grid.is-empty{position:relative;min-height:120px}.archive-grid.is-empty:after{content:attr(data-empty);position:absolute;inset:0;display:grid;place-items:center;color:var(--ink-faint);font-size:15px}.seg{display:inline-flex;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--line);background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.seg__btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;min-height:40px;border-radius:999px;font-weight:600;font-size:13.5px;color:var(--ink-soft);transition:color .25s var(--ease),background-color .25s var(--ease)}.seg__btn:hover{color:var(--ink)}.seg__btn[aria-pressed=true]{background:var(--ink);color:var(--bg)}.seg__btn svg{width:16px;height:16px}.archive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(282px,1fr));gap:20px}.archive-card{position:relative;display:flex;flex-direction:column;padding:13px 13px 19px;border-radius:28px;transition:transform .55s var(--ease),box-shadow .55s var(--ease),border-color .4s var(--ease)}.archive-card__flag{position:absolute;z-index:3;top:20px;left:20px;display:inline-flex;align-items:center;gap:4px;padding:5px 11px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:.01em;color:var(--solid-fg);background:var(--solid-bg);box-shadow:0 6px 16px -8px #00000080}.archive-grid.is-list .archive-card__flag{top:10px;left:10px}.archive-card:hover{transform:translateY(-8px);border-color:color-mix(in srgb,var(--ink) 24%,transparent)}.archive-card__cover{aspect-ratio:16/10;border-radius:16px;overflow:hidden;display:grid;place-items:center;background:var(--cover);margin-bottom:15px;position:relative}.archive-card__cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.archive-card__no{font-family:var(--serif);font-style:italic;font-size:3rem;color:var(--ink);opacity:.13;transition:opacity .5s var(--ease),transform .6s var(--ease)}.archive-card:hover .archive-card__no{opacity:.2;transform:scale(1.05)}.archive-card__body{display:flex;flex-direction:column;flex:1;padding:0 7px}.archive-card__meta{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-faint);margin-bottom:9px}.archive-card__title{font-family:var(--display);font-size:1.2rem;letter-spacing:-.02em;line-height:1.15}.archive-card__desc{color:var(--ink-soft);font-size:14px;line-height:1.5;margin-top:9px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.archive-card__desc.is-expanded{-webkit-line-clamp:unset;overflow:visible}.archive-card__more{align-self:flex-start;margin-top:6px;padding:2px 0;background:none;border:0;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;border-bottom:1px solid color-mix(in srgb,var(--ink) 35%,transparent);transition:color .2s var(--ease),border-color .2s var(--ease)}.archive-card__more[hidden]{display:none}.archive-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:15px}.archive-card__tags span{font-size:11.5px;color:var(--ink-faint);border:1px solid var(--line);padding:4px 10px;border-radius:999px}.archive-grid.is-list{grid-template-columns:1fr;gap:12px}.archive-grid.is-list .archive-card{flex-direction:row;align-items:center;gap:22px;padding:14px}.archive-grid.is-list .archive-card__cover{width:220px;flex:none;aspect-ratio:16/10;margin:0}.archive-grid.is-list .archive-card__body{padding:0}.archive-grid.is-list .archive-card__no{font-size:2.4rem}.archive-grid.is-deck{display:flex;grid-template-columns:none;flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;gap:clamp(18px,2.2vw,34px);width:100vw;margin-left:50%;transform:translate(-50%);padding:64px clamp(20px,6vw,72px) 76px;scroll-snap-type:x proximity;scroll-padding-inline:clamp(20px,6vw,72px);scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab}.archive-grid.is-deck.is-dragging{cursor:grabbing;scroll-snap-type:none}.archive-grid.is-deck.is-dragging .archive-card{pointer-events:none}.deck-nav{display:flex;align-items:center;gap:14px;width:min(520px,92vw);margin:-34px auto 6px;padding:0 16px}.deck-nav[hidden]{display:none}.deck-arrow{flex:none;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--card-bg, #fff);color:var(--ink);cursor:pointer;transition:transform .18s var(--spring),border-color .18s var(--ease),background-color .18s}.deck-arrow:hover{transform:translateY(-2px);border-color:var(--ink)}.deck-arrow:active{transform:translateY(0) scale(.94)}html[data-theme=dark] .deck-arrow{background:#fff;color:#15171e;border-color:#00000024}html[data-theme=dark] .deck-arrow:hover{border-color:#00000073}.deck-track{position:relative;flex:1;height:8px;border-radius:999px;background:#80808038;cursor:pointer;touch-action:none}.deck-thumb{position:absolute;top:0;left:0;height:100%;min-width:40px;width:60px;border-radius:999px;background:var(--ink)}@media (max-width: 700px){.deck-nav{margin-top:-20px}}.archive-grid.is-deck::-webkit-scrollbar{display:none}.archive-grid.is-deck .archive-card{flex:0 0 clamp(360px,40vw,500px);scroll-snap-align:center;transform:rotate(-1deg);transform-origin:bottom center;box-shadow:0 18px 50px -26px #14100a80;transition:transform .5s var(--spring),box-shadow .5s var(--ease),border-color .4s var(--ease)}.archive-grid.is-deck .archive-card:nth-child(2n){transform:rotate(1deg)}.archive-grid.is-deck .archive-card:hover,.archive-grid.is-deck .archive-card:focus-visible{transform:translateY(-14px) rotate(0) scale(1.025);z-index:2;box-shadow:0 38px 70px -30px #14100a6b,0 14px 30px -18px #14100a4d}.archive-grid.is-deck .archive-card__cover{aspect-ratio:16/9}@media (max-width: 640px){.archive-grid.is-list{gap:10px}.archive-grid.is-list .archive-card{flex-direction:row;align-items:center;gap:14px;padding:9px}.archive-grid.is-list .archive-card__cover{width:92px;flex:none;aspect-ratio:1/1;border-radius:13px;margin:0}.archive-grid.is-list .archive-card__no{font-size:1.5rem}.archive-grid.is-list .archive-card__body{padding:0;min-width:0}.archive-grid.is-list .archive-card__meta{margin-bottom:3px}.archive-grid.is-list .archive-card__title{font-size:1.05rem}.archive-grid.is-list .archive-card__desc{margin-top:5px;font-size:13px}.archive-grid.is-list .archive-card__tags{display:none}.archive-head{align-items:flex-start}.archive-toolbar{justify-content:center}.archive-grid.is-deck .archive-card{flex-basis:86vw}}.lang-btn{width:auto!important;padding:0 14px;border-radius:999px;font-size:12.5px;font-weight:700;letter-spacing:.03em}.contact__sub{color:var(--ink-soft);max-width:44ch;font-size:1.02rem;line-height:1.55}.about__p3{font-size:.98rem}.display,.title,.quote,.detail-name,.detail-section__title{text-wrap:balance}.lede,.hero-punch,.contact__sub,.piece__desc,.archive-card__desc,.craft__item p,.about__copy p,.voices__more p,.section__sub{text-wrap:pretty}.detail-oneliner,.detail-story__item p,.detail-num li p,.detail-better li,.detail-points li,.detail-learned,.detail-decision p,.detail-decision__row p,.detail-note p,.detail-meta dd{text-wrap:pretty;overflow-wrap:break-word}html:lang(th){word-break:normal;overflow-wrap:break-word;line-break:auto}html:lang(th) .display{line-height:1.18;letter-spacing:0}html:lang(th) .display--sm{line-height:1.22}html:lang(th) .title{line-height:1.32;letter-spacing:-.005em}html:lang(th) .lede,html:lang(th) .contact__sub,html:lang(th) .piece__desc,html:lang(th) .archive-card__desc,html:lang(th) .craft__item p,html:lang(th) .about__copy p,html:lang(th) .voices__more p{line-height:1.7}html:lang(th) .display em{font-family:var(--display);font-style:normal}html:lang(th) .quote{font-family:var(--display);font-style:normal;line-height:1.42;letter-spacing:0}html:lang(th) .quote__mark{font-family:var(--serif)}.detail{max-width:900px}.detail-missing{padding:22vh 0;text-align:center}.detail-missing h1{font-family:var(--display);font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.03em;margin-bottom:12px}.d-reveal{opacity:0;transform:translateY(16px);transition:opacity .45s var(--ease),transform .5s var(--ease)}.d-reveal.in,.detail-hero.d-reveal{opacity:1;transform:none}.detail-hero{margin-bottom:clamp(48px,8vh,84px)}.detail-kicker{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:18px}.detail-name{font-family:var(--display);font-weight:700;font-size:clamp(2.4rem,6vw,4.2rem);line-height:1.02;letter-spacing:-.035em}.detail-oneliner{font-size:clamp(1.15rem,2.2vw,1.6rem);line-height:1.4;color:var(--ink-soft);max-width:32ch;margin-top:22px}.detail-oneliner__to{display:block;margin-top:.15em;color:var(--ink-faint)}.detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px 24px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}.detail-meta dt{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px}.detail-meta dd{font-size:14.5px;color:var(--ink);line-height:1.45}.detail-cover{width:92vw;max-width:1120px;margin-left:50%;transform:translate(-50%);margin-top:clamp(4px,1vh,16px);margin-bottom:clamp(44px,8vh,88px)}.detail-cover__art{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--glass-stroke);box-shadow:var(--shadow);background:radial-gradient(120% 130% at 18% 12%,hsl(var(--hue,26) var(--osat,88%) 64% / .55),transparent 58%),radial-gradient(120% 130% at 88% 92%,hsl(calc(var(--hue,26) + 70) var(--osat,88%) 58% / .45),transparent 60%),linear-gradient(140deg,hsl(var(--hue,26) 46% 16%),hsl(calc(var(--hue,26) + 30) 44% 9%))}.detail-cover__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.detail-cover__no{position:absolute;right:clamp(18px,4vw,48px);bottom:clamp(2px,1.5vw,14px);font-family:var(--serif);font-style:italic;font-size:clamp(5rem,16vw,12rem);line-height:.8;color:#fff;opacity:.14;letter-spacing:-.04em;pointer-events:none;user-select:none}.detail-cover__tag{position:absolute;left:clamp(14px,3vw,28px);top:clamp(14px,3vw,28px);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#0000004d;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:6px 13px;border-radius:999px}.detail-cover.has-img .detail-cover__no{display:none}@media (max-width: 640px){.detail-cover{width:100%;margin-left:0;transform:none}.detail-cover__art{aspect-ratio:4 / 3;border-radius:var(--r)}}.detail-cover__art.d-reveal{transform:translateY(20px) scale(.985)}.detail-cover__art.d-reveal.in{transform:none}.detail-section{margin-bottom:clamp(52px,9vh,96px)}.detail-section__head{display:flex;align-items:baseline;gap:16px;margin-bottom:26px}.detail-section__no{font-family:var(--serif);font-style:italic;font-size:1.6rem;color:var(--accent);line-height:1}.detail-section__title{font-family:var(--display);font-weight:700;font-size:clamp(1.5rem,3.2vw,2.1rem);letter-spacing:-.03em}.detail-story{display:grid;gap:26px}.detail-story__label{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px}.detail-story__item p{font-size:clamp(1.05rem,1.7vw,1.22rem);line-height:1.55;color:var(--ink);max-width:60ch}.detail-num{display:grid;gap:18px;counter-reset:none}.detail-num li{display:flex;gap:18px;align-items:baseline}.detail-num__n{font-family:var(--serif);font-style:italic;font-size:1.6rem;color:var(--accent);flex:none;width:1.6em}.detail-num li p{font-size:1.08rem;line-height:1.5;color:var(--ink-soft)}.detail-chips{display:flex;flex-wrap:wrap;gap:10px}.detail-chips li{padding:9px 16px;border-radius:999px;font-size:14px;font-weight:500;color:var(--ink-soft);border:1px solid var(--line);background:var(--glass-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.detail-note{padding:22px 24px;border-radius:var(--r)}.detail-note__label{display:block;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.detail-note p{font-family:var(--serif);font-style:italic;font-size:1.3rem;line-height:1.4;color:var(--ink)}html:lang(th) .detail-note p{font-family:var(--display);font-style:normal;font-size:1.18rem;line-height:1.6}.detail-decisions{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.detail-decision{padding:24px;border-radius:var(--r-lg)}.detail-decision__no{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.detail-decision h3{font-family:var(--display);font-size:1.22rem;letter-spacing:-.02em;margin:8px 0 16px}.detail-decision__row{margin-top:12px}.detail-decision__row span{display:block;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}.detail-decision__row p{font-size:14.5px;line-height:1.5;color:var(--ink-soft)}.detail-screens{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.detail-screen{padding:14px 14px 20px;border-radius:var(--r-lg)}.detail-screen__cover{aspect-ratio:4/3;border-radius:14px;overflow:hidden;background:var(--cover);display:grid;place-items:center;margin-bottom:14px}.detail-screen__cover img{width:100%;height:100%;object-fit:cover}.detail-screen__no{font-family:var(--serif);font-style:italic;font-size:2.4rem;color:var(--ink);opacity:.14}.detail-screen__name{display:block;font-family:var(--display);font-weight:600;font-size:1.02rem;padding:0 4px}.detail-screen figcaption p{color:var(--ink-soft);font-size:14px;line-height:1.5;padding:6px 4px 0}.detail-learned{font-size:clamp(1.3rem,2.6vw,1.9rem);line-height:1.4;letter-spacing:-.01em;color:var(--ink);max-width:24ch;padding-left:20px;border-left:2px solid var(--accent)}.detail-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:24px;margin-top:clamp(44px,7vh,76px);padding-top:30px;border-top:1px solid var(--line)}.detail-nav__link{display:flex;flex-direction:column;gap:6px;padding:2px;border:0;background:none;transition:transform .35s var(--spring)}.detail-nav__link:hover{transform:translateY(-2px)}.detail-nav__link:hover .detail-nav__name{color:var(--ink)}.detail-nav__dir{font-size:11.5px;font-weight:600;color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase}.detail-nav__name{display:block;font-family:var(--display);font-weight:600;font-size:1.12rem;letter-spacing:-.01em;line-height:1.2;color:var(--ink-soft);transition:color .25s var(--ease)}.detail-nav__all{align-self:center;font-size:12px;font-weight:600;color:var(--ink-faint);letter-spacing:.04em;text-transform:uppercase;padding:8px 14px;border-radius:999px;white-space:nowrap;transition:color .25s,background-color .25s}.detail-nav__all:hover{color:var(--ink);background:var(--glass-bg)}html:lang(th) .detail-oneliner,html:lang(th) .detail-story__item p,html:lang(th) .detail-num li p,html:lang(th) .detail-decision__row p,html:lang(th) .detail-screen figcaption p,html:lang(th) .detail-points li,html:lang(th) .detail-better li,html:lang(th) .detail-meta dd{line-height:1.7}html:lang(th) .detail-name,html:lang(th) .detail-learned{line-height:1.3;letter-spacing:0}@media (max-width: 640px){.detail-nav{grid-template-columns:1fr 1fr}.detail-nav__all{grid-column:1 / -1;grid-row:1;text-align:center}}.brand-logo{display:block;height:21px;width:116px;background-color:var(--ink);-webkit-mask:url(/assets/wuttitarn-logo.svg) no-repeat left center / contain;mask:url(/assets/wuttitarn-logo.svg) no-repeat left center / contain;transition:background-color .5s var(--ease)}.wt-logo{display:block;height:21px;width:auto}.wt-logo path{fill:var(--ink);transition:fill .35s var(--ease)}.brand:hover .wt-logo path{fill:var(--ink-soft)}.brand:hover .wt-logo .wt-logo__heart{fill:url(#wtRainbow);animation:heartRainbow 2.6s linear infinite}@keyframes heartRainbow{to{filter:hue-rotate(360deg)}}@media (prefers-reduced-motion: reduce){.brand:hover .wt-logo__heart{animation:none}}html[data-theme=cb] .brand:hover .wt-logo .wt-logo__heart{fill:#0072b2;animation:none}.to-top{position:fixed;right:clamp(16px,3vw,28px);bottom:clamp(16px,3vw,28px);z-index:80;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;color:var(--ink-soft);border:1px solid var(--line);background:var(--glass-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow);cursor:pointer;opacity:0;transform:translateY(12px) scale(.9);pointer-events:none;transition:opacity .3s var(--ease),transform .4s var(--spring),color .25s}.to-top.is-shown{opacity:1;transform:none;pointer-events:auto}.to-top:hover{color:var(--ink);transform:translateY(-2px)}.menu-btn svg path{transition:transform .35s var(--spring),opacity .25s var(--ease);transform-origin:center;transform-box:fill-box}.menu-btn.is-open .mb1{transform:translateY(5px) rotate(45deg)}.menu-btn.is-open .mb2{opacity:0}.menu-btn.is-open .mb3{transform:translateY(-5px) rotate(-45deg)}.menu-panel{position:fixed;z-index:70;top:clamp(66px,9vh,82px);right:clamp(20px,5vw,48px);display:flex;flex-direction:column;gap:2px;min-width:210px;padding:10px;border-radius:var(--r);transform-origin:top right;animation:menuIn .28s var(--ease)}.menu-panel[hidden]{display:none}@keyframes menuIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:none}}.menu-panel__link{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:13px;font-size:15px;font-weight:500;color:var(--ink-soft);transition:background-color .2s var(--ease),color .2s var(--ease)}.menu-panel__label{margin-right:auto}.menu-panel__ic{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;color:var(--ink-faint);transition:background-color .2s var(--ease),color .2s var(--ease)}.menu-panel__ic svg{width:18px;height:18px}.menu-panel__arrow{flex:none;opacity:0;transform:translate(-4px);transition:opacity .2s var(--ease),transform .2s var(--ease);color:var(--ink-faint)}.menu-panel__link:hover{background:var(--glass-hi);color:var(--ink)}.menu-panel__link:hover .menu-panel__ic{color:var(--ink)}.menu-panel__link:hover .menu-panel__arrow{opacity:1;transform:none}.menu-panel__link.is-current{color:var(--ink);font-weight:600}.menu-panel__link.is-current .menu-panel__ic{background:var(--solid-bg);color:var(--solid-fg)}.cv{max-width:780px}.cv-head{margin-bottom:clamp(40px,7vh,72px);display:flex;align-items:flex-start;justify-content:space-between;gap:clamp(20px,4vw,52px)}.cv-head__text{flex:1;min-width:0}.cv-head .room__tag{margin-bottom:18px}.cv-photo{flex:none;perspective:1000px;padding-top:8px}.polaroid{position:relative;width:clamp(168px,19vw,216px);transform:rotate(-3.5deg);transform-style:preserve-3d;transition:transform .55s var(--spring);will-change:transform}.polaroid__card{position:relative;overflow:hidden;background:#fdfdfb;padding:12px 12px 0;border-radius:5px;box-shadow:0 28px 60px #120e0829,0 8px 20px #120e081a}.polaroid__photo{position:relative;aspect-ratio:4 / 5;overflow:hidden;border-radius:2px;background:#e7e3dc}.polaroid__photo img{width:100%;height:100%;object-fit:cover;display:block}.polaroid__cap{display:block;text-align:center;font-family:var(--serif);font-style:italic;font-size:15px;color:#3a352f;padding:12px 4px 14px}.polaroid__gloss{position:absolute;inset:0;pointer-events:none;opacity:0;mix-blend-mode:screen;background:linear-gradient(105deg,transparent 36%,rgba(255,255,255,.6) 48%,transparent 60%);transition:opacity .4s var(--ease)}.cv-photo:hover .polaroid,.cv-photo:focus-within .polaroid{transform:rotate(0)}.cv-photo:hover .polaroid__gloss{opacity:1}.cv-linkedin{display:inline-flex;align-items:center;gap:10px;margin-top:26px;padding:11px 18px;border-radius:999px;border:1px solid var(--card-line, var(--line));background:var(--card-bg, var(--glass-bg));color:var(--ink);font-weight:600;font-size:14px;transition:transform .35s var(--spring),border-color .3s var(--ease),color .25s}.cv-linkedin:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--ink) 32%,transparent)}.cv-linkedin svg{color:#0a66c2;flex:none}@media (max-width: 720px){.cv-head{flex-direction:column;align-items:flex-start}.cv-photo{align-self:center;margin-bottom:12px}.polaroid{width:clamp(136px,42vw,166px)}}.cv-name{font-family:var(--display);font-weight:700;font-size:clamp(2rem,5vw,3.1rem);letter-spacing:-.03em;line-height:1.05}.cv-name__nick{color:var(--ink-faint);font-weight:500}.cv-role{color:var(--ink-soft);font-weight:600;font-size:1.02rem;margin-top:12px}.cv-summary{color:var(--ink-soft);font-size:1.08rem;line-height:1.6;max-width:60ch;margin-top:18px}.cv-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.cv-section{margin-bottom:clamp(40px,6vh,60px)}.cv-section__title{font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.6vw,1.7rem);letter-spacing:-.02em;margin-bottom:22px}.cv-timeline{position:relative}.cv-note{color:var(--ink-faint);font-size:13.5px;margin-top:22px}.play{max-width:920px}.play-head{margin-bottom:clamp(36px,6vh,56px);max-width:640px}.play-head .room__tag{margin-bottom:18px}.play-head .title{margin-bottom:16px}.play-sub{color:var(--ink-soft);font-size:1.1rem;line-height:1.6;max-width:60ch;text-wrap:balance}.play-card__soon{align-self:flex-start;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--line);padding:5px 11px;border-radius:999px}.play-badge{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:5px 11px;border-radius:999px;line-height:1}.play-badge--new{color:#fff;background:linear-gradient(135deg,#ff5d8f,#7c5cff);box-shadow:0 4px 12px -3px #7c5cff80}.play-badge--rec{color:#5b3b00;background:linear-gradient(135deg,#ffd85e,#ffab1f);box-shadow:0 4px 12px -3px #ffab1f8c;border:none}.play-support{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:clamp(26px,4vw,40px);border-radius:var(--r-lg)}.play-support p{color:var(--ink-soft);margin-top:10px;max-width:46ch}.play-support .cv-section__title{margin-bottom:0}html[data-theme=light] .cv-page{--bg: #faf7f1;--card-bg: #ffffff;--card-line: #ece7df;--card-shadow: 0 1px 2px rgba(28,22,14,.04), 0 10px 26px rgba(28,22,14,.05)}.cv-page .ambient .orb,.cv-page .ambient .vignette{display:none}.cv-page .ambient{background:var(--bg)}.cv-page .ambient .grain{opacity:.18}.cv-page .chips li{background:var(--card-bg);border-color:var(--card-line);backdrop-filter:none;-webkit-backdrop-filter:none}.cv-progress{position:fixed;inset:0 0 auto;height:3px;z-index:120;background:var(--rainbow);transform-origin:left center;transform:scaleX(var(--p, 0));transition:transform .12s linear;pointer-events:none}.exp-timeline{position:relative;padding-left:96px}.exp-spine{position:absolute;left:78px;top:10px;bottom:10px;width:4px;border-radius:999px;background:var(--line)}.exp-spine__fill{position:absolute;left:0;top:0;width:100%;height:100%;transform-origin:top center;transform:scaleY(var(--fill, 0));background:var(--rainbow-v);border-radius:999px;transition:transform .14s linear;will-change:transform}.exp-spine__fill:after{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:999px;background:var(--rainbow-v);filter:blur(5px);opacity:.35}.exp-item{position:relative;padding:6px 0 26px}.exp-item:last-child{padding-bottom:4px}.exp-year{position:absolute;left:-96px;top:23px;width:62px;text-align:right;font-variant-numeric:tabular-nums;font-weight:700;font-size:14px;color:var(--ink-faint);letter-spacing:.01em}.exp-dot{position:absolute;left:-23px;top:27px;width:14px;height:14px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 4px var(--bg);z-index:2;transition:background-color .4s var(--ease),transform .4s var(--spring)}.exp-item.is-in .exp-dot{background:hsl(var(--brand) 70% 52%);transform:scale(1.12)}.exp-card{background:var(--card-bg);border:1px solid var(--card-line);border-radius:18px;padding:20px 22px;box-shadow:var(--card-shadow)}.exp-card__head{margin-bottom:15px}.exp-card__id{min-width:0}.exp-company{font-family:var(--display);font-size:1.12rem;letter-spacing:-.01em;line-height:1.25}.exp-type{color:var(--ink-faint);font-weight:500;font-size:.82em}.exp-loc{display:block;color:var(--ink-faint);font-size:12.5px;margin-top:3px;line-height:1.4}.exp-roles{display:flex;flex-direction:column;gap:14px}.exp-roles.is-multi{gap:16px}.exp-roles.is-multi .exp-role{padding-left:15px;border-left:2px solid var(--card-line)}.exp-role__top{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.exp-role__title{font-weight:700;font-size:15px;color:var(--ink)}.exp-role__type{font-size:12px;color:var(--ink-faint);font-weight:600}.exp-role__dates{display:block;font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--ink-faint);font-weight:500;margin-top:3px}.exp-role p{color:var(--ink-soft);font-size:14px;line-height:1.55;margin-top:8px;max-width:62ch}.cv-page [data-anim]{filter:none}.exp-item[data-anim]{opacity:0;transform:translateY(16px);filter:none;transition:opacity .6s var(--ease),transform .6s var(--ease)}.exp-item.is-in{opacity:1;transform:none;filter:none}@media (max-width: 640px){.exp-timeline{padding-left:56px}.exp-spine{left:40px}.exp-year{position:static;width:auto;text-align:left;display:inline-block;margin-bottom:8px;color:hsl(var(--brand) 48% 42%)}.exp-dot{left:-23px;top:6px}.exp-card{padding:18px}}@media (prefers-reduced-motion: reduce){.exp-item[data-anim]{opacity:1;transform:none}.cv-progress,.exp-spine__fill,.exp-dot{transition:none}}.mb-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;background:#0f0c1480}.mb-modal[hidden]{display:none}.mb-modal__card{width:min(440px,100%);padding:26px;border-radius:22px;background:var(--card-bg,#fff);border:1px solid var(--card-line,var(--line));box-shadow:0 30px 70px #0000004d}.mb-modal__card h3{font-family:var(--display);font-size:1.3rem}.mb-modal__sub{color:var(--ink-soft);font-size:14px;margin:8px 0 14px}.mb-modal__card textarea{width:100%;font:inherit;font-size:14px;color:var(--ink);background:var(--bg);border:1px solid var(--card-line,var(--line));border-radius:12px;padding:11px 13px;resize:vertical}.mb-modal__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}.mb-modal__note{font-size:11.5px;color:var(--ink-faint);margin-top:12px;text-align:center}@media (max-width: 760px){.filter-select,.mb-field input[type=text],.mb-fontinput,.mb-field textarea{font-size:15px;padding:11px 12px}}.archive-grid.is-deck .archive-card__body{padding:14px 12px 6px;flex:none}.archive-grid.is-deck .archive-card__desc{margin-top:6px}.archive-grid.is-deck .archive-card__desc.is-expanded{-webkit-line-clamp:unset;overflow:visible}.archive-grid.is-deck .archive-card__tags{margin-top:10px}.mb-modal__card{position:relative}.mb-modal__x{position:absolute;top:12px;right:14px;border:none;background:transparent;font-size:22px;line-height:1;color:var(--ink-faint, #888);cursor:pointer;padding:4px}.mb-hearts{position:fixed;inset:0;pointer-events:none;z-index:600;overflow:hidden}@keyframes mbHeartFloat{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(0)}18%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.15) rotate(var(--rot))}}.mb-love__card{text-align:center;max-width:430px}.mb-love__bighe{display:block;width:62px;height:62px;margin:2px auto 10px;background:linear-gradient(135deg,#ff5d8f,#ff9ac4 45%,#7c5cff);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21z'/%3E%3C/svg%3E") center/contain no-repeat}.mb-love__opts{display:flex;flex-direction:column;gap:10px;margin:16px 0 4px}.mb-love__opt{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid var(--card-line, var(--line));border-radius:14px;background:var(--bg);cursor:pointer;text-decoration:none;color:var(--ink);transition:transform .2s var(--spring),border-color .2s var(--ease);font:inherit;text-align:left;width:100%}.mb-love__opt:hover{transform:translateY(-2px);border-color:var(--ink)}.mb-love__ic{font-size:22px;flex:none}.mb-love__t{display:flex;flex-direction:column}.mb-love__t b{font-size:14px}.mb-love__t i{font-style:normal;font-size:11.5px;opacity:.62;margin-top:2px}.mb-love__qr{margin-top:12px}.mb-love__qr img{width:240px;height:240px;max-width:78%;border-radius:16px;object-fit:contain;background:#fff;padding:12px;box-shadow:0 6px 22px #00000024;border:1px solid var(--line);cursor:zoom-in}.mb-love__qr.is-empty:before{content:"Drop your QR at /assets/support-qr.webp";display:block;padding:34px 16px;border:1px dashed var(--line);border-radius:13px;font-size:12px;opacity:.6}.qr-zoom{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0c0a08d1;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);cursor:zoom-out;-webkit-tap-highlight-color:transparent;animation:qrZoomFade .18s ease both}.qr-zoom img{width:auto;height:auto;max-width:min(86vw,440px);max-height:86vh;border-radius:18px;background:#fff;padding:16px;box-shadow:0 30px 80px -20px #0009;cursor:zoom-out;animation:qrZoomPop .22s var(--spring, cubic-bezier(.34,1.4,.5,1)) both}.qr-zoom__hint{position:fixed;left:0;right:0;bottom:max(20px,env(safe-area-inset-bottom,20px));text-align:center;color:#ffffffd1;font-size:13px;letter-spacing:.2px;pointer-events:none}@keyframes qrZoomFade{0%{opacity:0}to{opacity:1}}@keyframes qrZoomPop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.qr-zoom,.qr-zoom img{animation:none}}.mb-love__qrnote{display:block;font-size:11.5px;opacity:.62;margin-top:7px}.mb-love__idea{margin-top:12px;display:flex;flex-direction:column;gap:8px;text-align:left}.mb-love__idea textarea{width:100%;box-sizing:border-box;border:1px solid var(--card-line, var(--line));border-radius:11px;padding:10px 12px;font:inherit;font-size:14px;background:var(--bg);color:var(--ink)}.mb-love__idea[hidden],.mb-love__qr[hidden]{display:none!important}@keyframes mbHeartRise{0%{transform:translate(0) rotate(0);opacity:0}12%{opacity:1}to{transform:translate(var(--drift,0),-106vh) rotate(35deg);opacity:0}}html.is-shared-view .hud__right{display:none!important}#mbUpModal .mb-modal__card{text-align:center}#mbUpChoose{display:block;width:100%}.cv-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.cv-list li{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border:1px solid var(--line);border-radius:14px}.cv-list li b{font-weight:700}.cv-list li span{font-size:14px;opacity:.72}.mb-modal__actions--center{justify-content:center}.mb-modal__actions .btn{min-height:44px;padding:.55rem 1.25rem}#mbRvDone{text-align:center}@media (hover: hover) and (prefers-reduced-motion: no-preference){.mb-tab__btn,.mb-seg__btn,.mb-ratio,.mb-info,.mb-actbtn,.mb-iconbtn,.mb-key,.mb-stacktag,.mb-love__opt,.mb-guidetoggle,.mb-lovebtn,.mb-random,.mb-bg,.mb-sw,.mb-upbtn,.mb-upclear,.mb-sw2{transition:transform .18s var(--spring, cubic-bezier(.2,.8,.2,1)),box-shadow .18s var(--ease, ease),border-color .18s ease,background-color .18s ease}.mb-love__opt:hover{transform:translateY(-2px)}}@keyframes mbOffFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.nf{min-height:64vh;display:grid;place-items:center;padding:40px 20px}.nf-card{max-width:480px;width:100%;text-align:center;padding:44px 34px;border-radius:26px;border:1px solid var(--line)}.nf-art{font-size:46px;display:block;line-height:1}.nf-code{display:block;font-weight:800;letter-spacing:.06em;font-size:14px;opacity:.42;margin:10px 0 6px}.nf-h{font-size:clamp(1.6rem,3.4vw,2.2rem);margin:0 0 12px;letter-spacing:-.02em}.nf-p{font-size:1rem;line-height:1.65;color:var(--ink-soft, #555);margin:0 0 24px}.nf-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:22px}.nf-sign{font-size:.92rem;opacity:.78;margin:0}@keyframes mbCue{0%,to{transform:translateY(0);opacity:.65}50%{transform:translateY(3px);opacity:1}}@keyframes mbFlash{0%,to{box-shadow:0 0 #5b6cff00}18%,60%{box-shadow:0 0 0 3px #5b6cff73}}@keyframes mbSkShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes mbPress{40%{transform:scale(.93);filter:brightness(.92)}to{transform:scale(1)}}.madeby{font-size:12.5px;color:var(--ink-soft);text-align:center;letter-spacing:.01em}.madeby__heart{display:inline-block;animation:madeby-beat 1.7s var(--ease) infinite}@keyframes madeby-beat{0%,to{transform:scale(1)}14%{transform:scale(1.22)}28%{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.madeby__heart{animation:none}}@keyframes mb-online-pulse{0%{box-shadow:0 0 #2bbf5b80}70%{box-shadow:0 0 0 7px #2bbf5b00}to{box-shadow:0 0 #2bbf5b00}}@property --c-primary{syntax: "<color>"; inherits: true; initial-value: #5b6cff;}@property --c-secondary{syntax: "<color>"; inherits: true; initial-value: #0fb8a6;}@property --c-accent{syntax: "<color>"; inherits: true; initial-value: #ff8a3d;}@property --c-bg{syntax: "<color>"; inherits: true; initial-value: #ffffff;}@property --c-text{syntax: "<color>"; inherits: true; initial-value: #1f2330;}@keyframes mbSwPulse{0%{transform:scale(1);box-shadow:0 0 #5b6cff00}35%{transform:scale(1.09);box-shadow:0 0 0 5px #5b6cff33}to{transform:scale(1);box-shadow:0 0 #5b6cff00}}@keyframes mbPatIn{0%{opacity:0}to{opacity:.11}}@keyframes mbShimmer{to{background-position:-220% 0}}@keyframes mbSwap{0%{opacity:0;transform:translateY(9px) scale(.985)}to{opacity:1;transform:none}}.tw-consent{position:fixed;z-index:90;left:clamp(12px,4vw,24px);right:auto;bottom:clamp(12px,4vw,24px);width:min(340px,calc(100vw - 24px));padding:13px 15px 12px;border-radius:15px;display:flex;flex-direction:column;gap:9px;animation:menuIn .3s var(--ease);contain:layout style paint}.tw-consent__title{font-family:var(--display);font-weight:700;font-size:.92rem;letter-spacing:-.01em}.tw-consent__body{color:var(--ink-soft);font-size:.8rem;line-height:1.45;margin-top:2px}.tw-consent__link{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:2px}.tw-consent__opts{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--line);padding-top:12px}.tw-consent__opts[hidden]{display:none}.tw-consent__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.tw-consent__rowtxt{display:flex;flex-direction:column;min-width:0}.tw-consent__rowtxt b{font-size:.9rem;font-weight:600;color:var(--ink)}.tw-consent__rowtxt i{font-style:normal;font-size:.78rem;color:var(--ink-faint);line-height:1.4;margin-top:1px}.tw-consent__pill{flex:none;font-size:.72rem;font-weight:600;color:var(--ink-faint);background:color-mix(in srgb,var(--ink) 8%,transparent);border-radius:999px;padding:3px 10px}.tw-consent__sw{flex:none;appearance:none;-webkit-appearance:none;width:40px;height:23px;border-radius:999px;background:color-mix(in srgb,var(--ink) 20%,transparent);position:relative;cursor:pointer;transition:background .2s var(--ease)}.tw-consent__sw:after{content:"";position:absolute;top:2.5px;left:2.5px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .2s var(--ease)}.tw-consent__sw:checked{background:var(--ok, #2c9c5e)}.tw-consent__sw:checked:after{transform:translate(17px)}.tw-consent__sw:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tw-consent__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tw-consent__spacer{flex:1 1 auto}.tw-consent__btn{font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;border-radius:999px;padding:7px 13px;border:1px solid transparent;transition:transform .15s var(--ease),background .2s,border-color .2s}.tw-consent__btn:hover{transform:translateY(-1px)}.tw-consent__btn--accept{background:var(--solid-bg);color:var(--solid-fg)}.tw-consent__btn--reject{background:transparent;color:var(--ink);border-color:var(--line)}.tw-consent__btn--reject:hover{border-color:var(--ink-faint)}.tw-consent__btn--ghost{background:transparent;color:var(--ink-soft);padding:9px 6px}.tw-consent__btn--ghost:hover{color:var(--ink);transform:none;text-decoration:underline;text-underline-offset:3px}.tw-consent-foot{cursor:pointer}@media (max-width: 480px){.tw-consent{left:8px;right:8px;width:auto;bottom:8px}.tw-consent__spacer{display:none}.tw-consent__actions{gap:8px}.tw-consent__btn--reject,.tw-consent__btn--accept{flex:1 1 auto;text-align:center}}@media (prefers-reduced-motion: reduce){.tw-consent{animation:none}}.art-support{display:flex;flex-direction:column;align-items:center;gap:13px;text-align:center;margin:clamp(30px,4.5vw,44px) 0 8px;padding-top:clamp(24px,3.5vw,32px);border-top:1px solid var(--line)}.art-support__q{color:var(--ink-soft);font-size:1.02rem;line-height:1.6;max-width:44ch;text-wrap:balance}.mb-love__card{max-height:calc(100dvh - 24px);display:flex;flex-direction:column;overflow:hidden}.mb-love__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.mb-love__card .mb-modal__x{z-index:2}html.tw-noscroll,html.tw-noscroll body{overflow:hidden}
