@font-face{font-family:Chonburi;font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/chonburi-latin.woff2)format("woff2")}:root{--font-chonburi:"Chonburi";--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0c0a07;--bg-2:#13100a;--bg-3:#1b160d;--line:#2c2417;--text:#f1ece1;--soft-text:#cfc6b6;--muted:#a99f89;--gold:#e0352b;--gold-2:#ff5c4d;--gold-deep:#7c1e18;--ink:#0c0a07;--wa:#25d366}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--bg);color:var(--text);font-family:var(--font-barlow,Arial),-apple-system,BlinkMacSystemFont,sans-serif;font-weight:300;line-height:1.65;overflow-x:hidden}h1,h2,h3,.display{font-family:var(--font-chonburi,Georgia),Georgia,serif;letter-spacing:.01em}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.wrap{max-width:1180px;margin:0 auto;padding:0 24px}.eyebrow{font-family:var(--font-barlow,Arial),sans-serif;text-transform:uppercase;letter-spacing:.34em;color:var(--soft-text);align-items:center;gap:12px;font-size:.72rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--gold-deep);flex:none;width:14px;height:1px}.section{padding:96px 0}.section h2{margin:14px 0 8px;font-size:2.1rem;font-weight:800}.section .lead{color:var(--muted);max-width:620px;font-size:1.05rem}.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}.sun-mark{background:radial-gradient(circle at 50% 50%, var(--gold-2), var(--gold) 55%, transparent 72%);border-radius:50%;width:44px;height:44px;margin:0 auto 18px;box-shadow:0 0 30px #e0352b59}.center .sun-mark{margin-left:auto;margin-right:auto}nav{z-index:50;border-bottom:1px solid var(--line);background:#0c0a07ad;justify-content:space-between;align-items:center;gap:24px;padding:16px 28px;transition:background .2s;display:flex;position:fixed;top:0;left:0;right:0}nav.scrolled{background:#0c0a07db}nav .brand{font-family:var(--font-chonburi,Georgia),Georgia,serif;letter-spacing:.01em;color:var(--text);flex-shrink:0;align-items:center;gap:12px;font-size:.95rem;display:flex}nav .brand img{object-fit:contain;border-radius:50%;width:46px;height:46px}nav .links{align-items:center;gap:22px;display:flex}nav .links a{font-family:var(--font-chonburi,Georgia),Georgia,serif;color:var(--muted);font-size:.8rem;transition:color .18s}nav .links a:hover{color:var(--gold-2)}.nav-actions{align-items:center;gap:24px;display:flex}.language-switch{border:1px solid var(--line);min-height:40px;font-family:var(--font-kanit,Tahoma),Tahoma,sans-serif;letter-spacing:.08em;align-items:center;font-size:.7rem;font-weight:600;display:inline-flex}.language-switch a{min-width:38px;min-height:38px;color:var(--muted);place-items:center;padding:5px 8px;transition:color .18s,background .18s;display:grid}.language-switch a:hover{color:var(--text);background:#e0352b14}.language-switch a[aria-current=page]{background:var(--text);color:var(--ink)}.language-switch>span{background:var(--line);width:1px;height:18px}.nav-menu{display:none}.nav-menu summary{min-height:44px;font-family:var(--font-chonburi,Georgia),Georgia,serif;color:var(--text);cursor:pointer;align-items:center;gap:12px;font-size:.85rem;list-style:none;display:flex}.nav-menu summary::-webkit-details-marker{display:none}.menu-mark{border-block:1px solid;width:18px;height:10px;transition:transform .2s;position:relative}.nav-menu[open] .menu-mark{transform:rotate(-45deg)}nav .menu-links{background:var(--bg);border-bottom:1px solid var(--gold-deep);grid-template-columns:1fr 1fr;gap:0 32px;padding:20px 28px 28px;display:grid;position:absolute;top:100%;left:0;right:0}nav .menu-links a{border-bottom:1px solid var(--line);padding:14px 0;font-size:1.15rem}@media (max-width:1220px){nav .desktop-links{display:none}.nav-menu{display:block}}header.hero{background:linear-gradient(180deg, #0c0a079e 0%, #0c0a07cc 50%, var(--bg) 100%), url(/img/back-geisha-koi.jpg) center 16%/cover no-repeat;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-inner{z-index:2;max-width:780px;padding-top:80px;position:relative}.hero h1{margin:6px 0 18px;font-size:clamp(2.7rem,7.4vw,5.2rem);font-weight:800;line-height:1}.hero h1 .accent{color:var(--gold)}.hero p.sub{color:#e2ddd2;max-width:560px;margin-bottom:34px;font-family:Arial,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.2rem;font-weight:300}.btn-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn{min-height:60px;font-family:var(--font-chonburi,Georgia),Georgia,serif;cursor:pointer;border:1px solid #0000;border-radius:1px;justify-content:center;align-items:center;padding:15px 26px;font-size:.95rem;font-weight:400;line-height:1.3;transition:background .18s,color .18s,border-color .18s;display:inline-flex;position:relative}.btn-wa{background:var(--text);color:var(--ink);border-color:var(--text)}.btn-wa:before{content:"";background:var(--gold);transform-origin:50%;pointer-events:none;height:1px;transition:transform .28s cubic-bezier(.16,1,.3,1);position:absolute;bottom:6px;left:22px;right:22px;transform:scaleX(.38)}.btn-wa:hover{background:var(--soft-text);border-color:var(--soft-text)}.btn-wa:hover:before{transform:scaleX(1)}nav .nav-cta{white-space:nowrap;min-height:46px;padding:11px 22px;font-size:.82rem}.btn-ghost{border-color:var(--muted);color:var(--text);background:#0c0a0773}.btn-ghost:hover{border-color:var(--text);background:var(--bg-3);color:var(--text)}.waves{z-index:1;opacity:.55;background:linear-gradient(45deg, var(--gold-deep) 25%, transparent 25%) 0 0/16px 16px, linear-gradient(-45deg, var(--gold-deep) 25%, transparent 25%) 0 0/16px 16px;height:26px;position:absolute;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.trust{background:var(--bg-2);border-block:1px solid var(--line)}.trust .wrap{grid-template-columns:repeat(4,minmax(0,1fr));padding:20px 24px;display:grid}.trust .stat{text-align:center;min-width:0;padding:5px 12px;position:relative}.trust .stat+.stat:before{content:"";border:1px solid var(--gold-deep);width:4px;height:4px;position:absolute;top:40%;left:-2px;transform:rotate(45deg)}.stat-seal{display:block;transform:rotate(-1deg)}.stat:nth-child(2n) .stat-seal{transform:rotate(1deg)}.trust .n{font-family:var(--font-chonburi,Georgia),Georgia,serif;color:var(--gold-2);justify-content:center;align-items:center;gap:7px;font-size:1.5rem;line-height:1.25;display:flex}.trust .l{color:var(--muted);margin-top:6px;font-size:.76rem;line-height:1.4;display:block}.rating-star{width:15px;height:15px}.stat-flourish{width:86%;max-width:140px;height:12px;color:var(--gold-deep);margin:5px auto 0;display:block}.stat-flourish path{stroke-dasharray:1;stroke-dashoffset:0}.trust[data-ink=stamp] .stat-seal{animation:ink-stamp .75s cubic-bezier(.16,1,.3,1) var(--stamp-delay) backwards}.trust[data-ink=stamp] .stat-flourish path{animation:sign-stroke .95s cubic-bezier(.16,1,.3,1) var(--stamp-delay) backwards}:is(.stat:hover .stat-flourish path,.stat:focus-visible .stat-flourish path){animation:.7s ease-out sign-stroke}.stat:hover .l{color:var(--text)}@keyframes ink-stamp{0%{opacity:.25;filter:blur(1px);transform:scale(1.13)rotate(-5deg)}45%{opacity:.8;filter:none}to{opacity:1}}@keyframes sign-stroke{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@media (max-width:560px){.trust .wrap{grid-template-columns:1fr 1fr;gap:16px 0}.trust .stat:nth-child(3):before{content:none}}.gallery-grid{grid-template-columns:repeat(12,1fr);gap:14px;margin-top:44px;display:grid}.g-item{background:var(--bg-3);border:1px solid #0000;border-radius:4px;transition:all .25s;position:relative;overflow:hidden}.g-item:hover{border-color:var(--gold-deep)}.g-item img{object-fit:cover;width:100%;height:100%;transition:all .5s}.g-item:hover img{transform:scale(1.05)}.g-item .tag{z-index:2;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c0a07b8;border:1px solid #e0352b40;border-radius:3px;padding:5px 11px;font-size:.7rem;font-weight:600;position:absolute;bottom:11px;left:12px}.g-item:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#00000080);position:absolute;inset:0}.cover{background:var(--bg-2)}.video-grid{grid-template-columns:repeat(3,1fr);gap:18px;max-width:760px;margin:44px auto 0;display:grid}.vid{isolation:isolate;background:#000;border-radius:6px;position:relative}.vid:before{content:"";z-index:-1;pointer-events:none;filter:blur(12px);opacity:0;background:radial-gradient(at 50% 92%,#ff5c4d9e,#e0352b33 42%,#0000 72%);border-radius:9px;transition:opacity .42s,transform .65s cubic-bezier(.16,1,.3,1);position:absolute;inset:-7px;transform:translateY(8px)scale(.94)}.vid:after{content:"";z-index:1;pointer-events:none;opacity:0;background:linear-gradient(#0000 0 43%,#e0352b1a 47%,#ff5c4d99 50%,#e0352b14 53%,#0000 58%);border-radius:6px;position:absolute;inset:0;transform:translateY(-95%)}.vid video{aspect-ratio:9/16;object-fit:cover;border:1px solid var(--line);background:#000;border-radius:6px;width:100%;transition:transform .8s cubic-bezier(.16,1,.3,1),border-color .3s;display:block}.vid figcaption{z-index:2;letter-spacing:.14em;text-transform:uppercase;color:var(--soft-text);border:1px solid var(--line);background:#0c0a07bd;border-radius:3px;padding:5px 10px;font-size:.7rem;position:absolute;bottom:10px;left:10px}@media (hover:hover){.vid:hover:before,.vid:focus-within:before{opacity:.9;transform:translateY(5px)scale(1)}.vid:hover:after,.vid:focus-within:after{animation:1.7s cubic-bezier(.16,1,.3,1) both video-signal}.vid:hover video,.vid:focus-within video{border-color:var(--gold-deep);transform:scale(1.025)}}@keyframes video-signal{0%{opacity:0;transform:translateY(-95%)}18%{opacity:.85}82%{opacity:.5}to{opacity:0;transform:translateY(95%)}}@media (max-width:760px){.video-grid{grid-template-columns:1fr 1fr}}.about{background:var(--bg-2)}.about .grid{grid-template-columns:.85fr 1.15fr;align-items:center;gap:54px;display:grid}.about img{z-index:1;border:1px solid var(--gold-deep);border-radius:6px;position:relative}.about h2{margin-bottom:18px;font-size:2.1rem}.about p{color:#d8d2c6;margin-bottom:16px}.sig{font-family:var(--font-chonburi,Georgia),Georgia,serif;color:var(--gold-2);margin-top:8px;font-size:1.35rem}@media (max-width:820px){.about .grid{grid-template-columns:1fr;gap:30px}}.styles-grid{grid-template-columns:1.1fr 1fr;gap:0 72px;max-width:1020px;margin:48px auto 0;display:grid}.style-card{border-bottom:1px solid var(--line);padding:27px 0 29px;position:relative}.style-card:nth-child(2n){margin-left:28px}.style-card h3{margin-bottom:12px;font-size:clamp(1.18rem,2vw,1.55rem);font-weight:700;line-height:1.35;transition:color .22s}.style-card p{color:var(--muted);max-width:47ch;font-size:.95rem}.style-stroke{background:var(--gold);clip-path:polygon(0 30%,67% 0,100% 70%,26% 100%);transform-origin:0;width:100%;height:2px;transition:transform .65s cubic-bezier(.16,1,.3,1);display:block;position:absolute;bottom:-1px;left:0;transform:scaleX(.08)}.style-card:hover h3{color:var(--gold-2)}.style-card:hover .style-stroke{transform:scaleX(1)}@media (max-width:600px){.styles-grid{grid-template-columns:1fr;gap:0}.style-card:nth-child(2n){margin-left:0}}.process{background:var(--bg-2)}.contact{background:linear-gradient(180deg,var(--bg) 0%, #15110a 100%)}.contact .grid{grid-template-columns:1fr 1fr;align-items:center;gap:50px;margin-top:44px;display:grid}.c-line{align-items:flex-start;gap:14px;margin-bottom:22px;display:flex}.c-line .ico{background:var(--bg-3);border:1px solid var(--gold-deep);width:42px;height:42px;color:var(--gold-2);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.c-line .lbl{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:.74rem}.c-line .val{color:var(--text);font-size:1.06rem}.c-line a.val:hover{color:var(--gold-2)}.map-card{background:var(--bg-2);border:1px solid var(--line);border-radius:8px;overflow:hidden}.map-card--compact{text-align:center;place-self:center end;width:min(100%,470px)}.map-card-marker{border:1px solid var(--gold-deep);width:58px;height:58px;color:var(--gold-2);background:var(--bg-3);border-radius:50%;place-items:center;margin:26px auto 2px;display:grid}.map-card-marker svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px}.map-card-body{padding:16px 30px 30px}.map-card h3{margin-bottom:6px;font-size:1.3rem}.map-card p{color:var(--muted);margin-bottom:18px}.directions-link{width:fit-content;color:var(--gold-2);letter-spacing:.08em;text-underline-offset:5px;margin:14px auto 0;font-size:.82rem;display:block}.directions-link:hover{text-decoration:underline}@media (max-width:820px){.contact .grid{grid-template-columns:1fr;gap:30px}.map-card--compact{justify-self:center}}footer{background:var(--bg);border-top:1px solid var(--line);text-align:center;padding:40px 24px}footer img{object-fit:contain;border-radius:50%;width:78px;height:78px;margin:0 auto 16px}footer .f-links{flex-wrap:wrap;justify-content:center;gap:24px;margin:14px 0;display:flex}footer .f-links a{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.82rem}footer .f-links a:hover{color:var(--gold-2)}footer small{color:var(--muted);margin-top:14px;font-size:.78rem;display:block}.wa-float{z-index:60;background:var(--wa);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:all .25s;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 24px #25d36666}.wa-float:hover{transform:scale(1.08)}.wa-float svg{fill:#06210f;width:32px;height:32px}.fade{opacity:1;transition:opacity .7s,transform .7s;transform:none}.fade[data-reveal=pending]{opacity:0;transform:translateY(24px)}:is(a:focus-visible,button:focus-visible,video:focus-visible,summary:focus-visible){outline:2px solid var(--gold-2);outline-offset:5px}::selection{background:var(--gold);color:var(--ink)}.skip-link{z-index:100;background:var(--gold);color:var(--ink);padding:12px 20px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.cover-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:44px;display:grid}.video-toggle{z-index:2;border:1px solid var(--gold-deep);width:31px;height:31px;color:var(--text);cursor:pointer;background:#0c0a07e6;border-radius:1px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.video-toggle:hover{background:var(--gold-2);color:var(--ink)}.video-toggle svg{width:13px;height:13px}.video-toggle:after{content:"";position:absolute;inset:-7px}@media (max-width:480px){nav{gap:10px;padding:12px 16px}nav .brand{gap:8px;font-size:.65rem;line-height:1.3}nav .brand-name{display:none}nav .brand img{width:38px;height:38px}.nav-actions{gap:8px}.language-switch a{min-width:34px;padding-inline:6px}nav .nav-cta{min-height:44px;padding:4px 10px;font-size:.72rem}.nav-menu summary{gap:8px;font-size:.75rem}.section{padding:64px 0}.hero-inner{padding-top:110px;padding-bottom:64px}.cover-grid{grid-template-columns:1fr}.vid figcaption{letter-spacing:.06em;padding:4px 6px;bottom:6px;left:6px;right:6px}footer{padding-bottom:92px}}html[lang=th] body,[lang=th]{font-family:var(--font-kanit,Tahoma),Tahoma,sans-serif}[lang=th] h1,[lang=th] h2,[lang=th] h3,[lang=th] .display,[lang=th] .btn,[lang=th] nav .links a,[lang=th] nav .brand,[lang=th] .nav-menu summary{font-family:Tahoma,sans-serif}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.fade[data-reveal=pending]{opacity:1;transform:none}.g-item:hover img,.btn-wa:hover,.style-card:hover,.wa-float:hover{transform:none}}html{scrollbar-color:var(--gold-deep) var(--bg)}button{font-family:inherit}.studio-credit{width:fit-content;min-height:44px;color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;margin:14px auto 0;font-size:.75rem;display:flex}.studio-credit a{color:var(--soft-text);text-underline-offset:4px}.studio-credit a:hover{color:var(--text);text-decoration:underline}header.hero{background:var(--bg);isolation:isolate}.hero-depth{z-index:0;position:absolute;inset:0;overflow:hidden}.hero-depth img{object-fit:cover;object-position:center 16%;width:100%;max-width:none;height:calc(100% + 80px);position:absolute;top:-80px;left:0}.hero-depth:after{content:"";background:linear-gradient(180deg, #0c0a079e, #0c0a07cc 50%, var(--bg));position:absolute;inset:0}.hero-inner{padding-top:110px;padding-bottom:64px}.hero-inner>:is(.eyebrow,h1,.sub,.btn-row,.hero-divider){z-index:3;position:relative}.review-stars{color:var(--gold);gap:3px;line-height:1;display:inline-flex}.hero-divider{background:var(--gold-deep);width:min(396px,100%);height:1px;margin-top:27px}.google-reviews-section{padding-block:48px 56px}.google-reviews-section h2{margin:0 0 20px;font-size:1.8rem}.review-track{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;gap:20px;padding:0 0 12px;display:flex;overflow-x:auto}.review-track:focus-visible{outline:2px solid var(--gold-2);outline-offset:6px}.google-review{scroll-snap-align:start;background:var(--bg-2);border-top:1px solid var(--gold-deep);flex-direction:column;flex:0 0 calc(33.3333% - 13.3333px);min-width:285px;padding:24px;display:flex}.google-review figcaption{align-items:center;gap:12px;margin-bottom:17px;display:flex}.review-initials{border:1px solid var(--line);width:36px;height:36px;color:var(--gold-2);border-radius:50%;flex:none;place-items:center;font-size:.8rem;display:grid}.google-review figcaption strong{overflow-wrap:anywhere;font-size:.9rem;font-weight:500;display:block}.google-review figcaption>span:last-child>span{color:var(--muted);font-size:.73rem;display:block}.google-review blockquote{color:var(--text);white-space:pre-line;overflow-wrap:anywhere;margin-block:15px 20px;font-size:1.02rem;line-height:1.7}.review-source-note{color:var(--muted);margin-top:auto;font-size:.7rem}.review-carousel-footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;font-size:.75rem;display:flex}.review-carousel-footer a{color:var(--gold-2);text-underline-offset:4px;text-decoration:underline}.review-controls{align-items:center;gap:7px;display:flex}.review-controls button{min-width:40px;min-height:40px;color:var(--gold-2);border:1px solid var(--line);cursor:pointer;background:0 0;place-items:center;display:grid}.review-controls .review-stop{color:var(--muted);border-color:#0000;padding:7px 12px;font-size:.75rem}.review-controls button:hover{color:var(--text);border-color:var(--gold-deep)}.cover-work{text-align:left;isolation:isolate;display:block;position:relative}.cover-frame{aspect-ratio:4/3;background:#000;border:1px solid #0000;transition:border-color .3s,filter .5s;display:block;position:relative;overflow:hidden}.cover-frame img{z-index:0;object-fit:cover;transform-origin:72% 45%;width:100%;height:100%;transition:transform .95s cubic-bezier(.16,1,.3,1),filter .6s;position:relative}.cover-frame:before{content:"";z-index:1;pointer-events:none;opacity:0;mix-blend-mode:screen;background:linear-gradient(105deg,#0000 42%,#e0352b1f 47%,#ff5c4db8 50%,#e0352b1f 53%,#0000 58%);position:absolute;inset:-35% -28%;transform:translate(-78%)}.cover-frame:after{content:"";z-index:2;border:1px solid var(--gold-2);opacity:0;clip-path:polygon(0 0,25% 0,25% 1%,1% 1%,1% 25%,0 25%,0 0,100% 100%,75% 100%,75% 99%,99% 99%,99% 75%,100% 75%,100% 100%);pointer-events:none;transition:opacity .3s;position:absolute;inset:12px}:is(.cover-work:hover .cover-frame,.cover-work:focus-visible .cover-frame){border-color:var(--gold-deep);filter:drop-shadow(0 9px 14px #e0352b3d)}:is(.cover-work:hover .cover-frame img,.cover-work:focus-visible .cover-frame img){filter:saturate(1.08)contrast(1.04);transform:scale(1.09)}.cover-work:hover .cover-frame:before{animation:1.25s cubic-bezier(.16,1,.3,1) both cover-scan}.cover-work:focus-visible .cover-frame:before{animation:1.25s cubic-bezier(.16,1,.3,1) both cover-scan}.cover-work:hover .cover-frame:after{opacity:1}.cover-work:focus-visible .cover-frame:after{opacity:1}@keyframes cover-scan{0%{opacity:0;transform:translate(-78%)}20%{opacity:.8}80%{opacity:.55}to{opacity:0;transform:translate(78%)}}.cover-caption{color:var(--soft-text);justify-content:space-between;align-items:center;gap:12px;padding-top:12px;font-size:.8rem;display:flex}@media (max-width:560px){.google-review{flex-basis:88%;min-width:0}}@media (prefers-reduced-motion:reduce){.artist-stage,:is(.cover-work:hover img,.cover-work:focus-visible img){transform:none}}.portfolio-section,.contact{isolation:isolate;position:relative;overflow:clip}.portfolio-heading{min-height:195px;padding:12px 130px 30px 0;position:relative}.portfolio-heading .sun-mark{display:none}.portfolio-heading h2{font-size:clamp(2.1rem,5vw,3.4rem)}.portfolio-heading .lead{max-width:530px}.naga-ornament{pointer-events:none;-webkit-user-select:none;user-select:none;z-index:-1;object-fit:contain;filter:grayscale()sepia()saturate(9)hue-rotate(316deg)brightness(.96)contrast(1.32)drop-shadow(0 8px 12px #e0352b38);position:absolute}.portfolio-heading .naga-ornament{opacity:.58;width:220px;height:300px;top:-45px;right:-12px;transform:rotate(12deg)}.contact>.naga-ornament{opacity:.14;width:510px;height:760px;bottom:-120px;left:-235px;transform:rotate(-16deg)}.contact>.wrap{position:relative}.gallery-intro{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-top:22px;font-size:.88rem;display:flex}.gallery-intro>:first-child{color:var(--soft-text);font-weight:500}.gallery-intro>:last-child{align-items:center;gap:10px;display:flex}.gallery-intro svg{width:15px;height:15px}.ink-gallery{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:32px 16px;max-width:1040px;margin:32px auto 0}.ink-gallery .g-item{grid-column:var(--piece-column) / span var(--piece-span);grid-row:var(--piece-row);margin-top:var(--piece-offset);isolation:isolate;background:0 0;border:0;border-radius:0;min-width:0;display:block;overflow:visible}.gallery-frame{aspect-ratio:3/4;background:var(--bg-3);border-radius:3px;display:block;position:relative;overflow:hidden}@property --rim-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.gallery-mount{isolation:isolate;display:block;position:relative}.gallery-mount:before{content:"";z-index:-1;pointer-events:none;background:conic-gradient(from var(--rim-angle),transparent 0deg 205deg,#7c1e1852 242deg,var(--gold-2) 283deg,#e0352bad 324deg,transparent 350deg);filter:blur(12px);opacity:0;border-radius:8px;transition:opacity .35s;position:absolute;inset:-6px}@media (hover:hover){.g-item:hover .gallery-mount:before{opacity:1;animation:2.6s linear both gallery-edge-light}}.g-item:focus-visible .gallery-mount:before{opacity:1;animation:2.6s linear both gallery-edge-light}@keyframes gallery-edge-light{0%{--rim-angle:0deg}to{--rim-angle:360deg}}@media (prefers-reduced-motion:reduce){.gallery-mount:before{filter:blur(5px)}.g-item:hover .gallery-mount:before{opacity:.4;animation:none}.g-item:focus-visible .gallery-mount:before{opacity:.4;animation:none}}.ink-gallery .g-item img{transition:transform .65s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.ink-gallery .g-item:hover img{transform:scale(1.035)}.ink-gallery .g-item:after{content:none}.ink-gallery .tag{letter-spacing:.06em;width:auto;max-width:none;color:var(--muted);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:10px 0 0;font-size:.69rem;line-height:1.45;transition:color .18s;display:block;position:static}:is(.ink-gallery .g-item:hover .tag,.ink-gallery .g-item:focus-visible .tag){color:var(--gold-2)}.ink-gallery .g-item:focus-visible{outline-offset:5px}.ink-gallery [data-ink=pending] img{clip-path:polygon(0 0,0 0,0 15%,0 29%,0 43%,0 58%,0 73%,0 88%,0 100%,0 100%)}.ink-gallery [data-ink=pending] .tag{visibility:hidden}.ink-gallery [data-ink=revealed] img{animation:.9s cubic-bezier(.16,1,.3,1) both ink-develop}@keyframes ink-develop{0%{clip-path:polygon(0 0,0 0,0 15%,0 29%,0 43%,0 58%,0 73%,0 88%,0 100%,0 100%)}35%{clip-path:polygon(0 0,42% 0,57% 15%,44% 29%,63% 43%,48% 58%,64% 73%,49% 88%,60% 100%,0 100%)}to{clip-path:polygon(0 0,100% 0,100% 15%,100% 29%,100% 43%,100% 58%,100% 73%,100% 88%,100% 100%,0 100%)}}.gallery-lightbox{color:var(--text);overscroll-behavior:contain;background:0 0;border:0;width:min(1100px,100vw - 32px);max-width:none;max-height:calc(100dvh - 24px);margin:auto;padding:0;position:fixed;inset:0;overflow:auto}.gallery-lightbox::backdrop{background:#080604f7}.gallery-lightbox[open]{animation:.22s ease-out lightbox-arrive}@keyframes lightbox-arrive{0%{opacity:0}to{opacity:1}}.lightbox-shell{padding:6px 10px 16px}.lightbox-toolbar{color:var(--gold-2);justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;font-size:.9rem;display:flex}.lightbox-toolbar>span{font-family:var(--font-chonburi,Georgia),Georgia,serif}.lightbox-toolbar button,.lightbox-arrow{min-width:44px;min-height:44px;color:var(--text);background:var(--bg-3);border:1px solid var(--line);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.lightbox-toolbar button{padding:8px 14px;font-size:.9rem}.lightbox-toolbar button:hover,.lightbox-arrow:hover{background:var(--gold);color:var(--ink)}.lightbox-stage{grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:14px;min-height:150px;display:grid}.lightbox-image{object-fit:contain;width:100%;height:min(69dvh,850px)}.lightbox-arrow{width:46px;height:52px}.lightbox-caption{justify-content:space-between;align-items:flex-start;gap:24px;max-width:730px;margin:18px auto 0;display:flex}.lightbox-caption strong{color:var(--gold-2);font-weight:500;display:block}.lightbox-caption div>span{color:var(--muted);margin-top:3px;font-size:.9rem;display:block}.lightbox-count{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:4px;font-size:.85rem}.lightbox-original{width:fit-content;color:var(--gold-2);text-underline-offset:4px;align-items:center;gap:8px;margin:16px auto 0;font-size:.82rem;display:flex}.lightbox-original:hover,.lightbox-error a:hover{text-decoration:underline}.lightbox-original svg{width:14px;height:14px}.lightbox-error{text-align:center;padding:30px 0}.lightbox-error a{color:var(--gold-2);margin-top:14px;display:block}.about{overflow:clip}.about .grid{gap:64px}.artist-composition{perspective:820px;grid-area:1/1;width:100%;max-width:540px;margin:0 auto;position:relative}.artist-copy{grid-area:1/2}.artist-stage{aspect-ratio:1.05;transform-style:preserve-3d;transform:rotateX(var(--artist-x,0deg)) rotateY(var(--artist-y,0deg));will-change:transform;transition:transform .46s cubic-bezier(.16,1,.3,1);position:relative}.artist-portrait{z-index:2;width:66%;color:var(--ink);background:#e4dcc9;padding:12px 12px 18px;position:absolute;top:3%;left:1%;transform:translateZ(68px)rotate(-4deg);box-shadow:0 24px 54px #0000006b}.about .artist-portrait img{border:0;border-radius:0;width:100%;height:auto}.artist-portrait figcaption{align-items:baseline;gap:10px;margin-top:12px;display:flex}.artist-portrait figcaption span:first-child{font-family:var(--font-chonburi,Georgia),Georgia,serif;font-size:1.1rem}.artist-portrait figcaption span:last-child{color:#514836;font-size:.78rem}.artist-drawing{z-index:1;width:42%;color:var(--ink);background:#d2c4a7;padding:9px 9px 12px;position:absolute;bottom:3%;right:0;transform:translateZ(-46px)rotate(6deg);box-shadow:0 14px 30px #0000007a}.about .artist-drawing img{border:0;border-radius:0;width:100%;height:auto}.artist-drawing figcaption{text-align:center;margin-top:8px;font-size:.78rem;font-weight:500}.artist-caption{color:var(--soft-text);margin-top:12px;font-size:1rem;line-height:1.45}.about .artist-copy h2{font-size:clamp(2.1rem,4.2vw,3.2rem)}.about .artist-copy .sig{margin-top:24px}.process-timeline{margin-top:44px;position:relative}.timeline-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;list-style:none;display:grid}.timeline-steps li{text-align:center;min-width:0}.timeline-node{border:1px solid var(--gold-deep);background:var(--bg-2);width:56px;height:56px;color:var(--gold-2);isolation:isolate;border-radius:50%;place-items:center;margin:0 auto 23px;display:grid;position:relative}.timeline-node:before,.timeline-node:after{content:"";border:1px solid var(--gold);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-1px}.timeline-node[data-lit=true]{background:var(--gold-2);color:var(--ink);transition:background .25s,color .25s}.timeline-node[data-lit=true]:before{animation:1.4s cubic-bezier(.16,1,.3,1) both checkpoint-pulse}.timeline-node[data-lit=true]:after{animation:1.4s cubic-bezier(.16,1,.3,1) .16s both checkpoint-pulse}@keyframes checkpoint-pulse{0%{opacity:1;transform:scale(.9);box-shadow:0 0 16px 4px #e0352bb3}to{opacity:0;transform:scale(1.8);box-shadow:0 0 26px #e0352b00}}.timeline-path{background:var(--line);pointer-events:none;height:1px;position:absolute;top:28px;left:calc(12.5% - 9px);right:calc(12.5% - 9px)}.timeline-beam{left:calc(var(--beam-progress,0)*100%);background:linear-gradient(90deg,transparent,var(--gold) 75%,var(--text));width:95px;height:3px;opacity:var(--beam-opacity,0);position:absolute;top:-1px;transform:translate(-100%)}.timeline-beam:after{content:"";background:var(--text);width:7px;height:7px;box-shadow:0 0 12px 3px var(--gold);border-radius:50%;position:absolute;top:-2px;right:-2px}.timeline-steps h3{margin-bottom:10px;font-size:1.06rem}.timeline-steps p{color:var(--muted);font-size:.9rem;line-height:1.65}.process-timeline[data-running=false] .timeline-node:before,.process-timeline[data-running=false] .timeline-node:after{animation-play-state:paused}.process-timeline[data-motion=false] .timeline-beam{display:none}@media (max-width:600px){.timeline-steps{grid-template-columns:1fr;grid-auto-rows:1fr;gap:20px}.timeline-steps li{text-align:left;grid-template-columns:56px 1fr;gap:22px;display:grid}.timeline-node{margin:0}.timeline-path{width:1px;height:auto;inset:28px auto calc(25% - 43px) 28px}.timeline-beam{left:-1px;top:calc(var(--beam-progress,0)*100%);background:linear-gradient(180deg,transparent,var(--gold) 75%,var(--text));width:3px;height:75px;transform:translateY(-100%)}.timeline-beam:after{top:auto;bottom:-2px;right:-2px}}@media (max-width:820px){.about .grid{gap:42px}.artist-copy{grid-area:auto/1}.artist-composition{grid-area:auto/1;max-width:460px;margin-top:4px}}@media (max-width:760px){.portfolio-heading{padding-right:95px}.portfolio-heading .naga-ornament{opacity:.46;width:180px;height:270px;right:-58px}}@media (max-width:767px){.gallery-mount:before{transition:none;animation:none;display:none}.ink-gallery .g-item img{transition:none;transform:none}:is(.ink-gallery .g-item:hover img,.ink-gallery .g-item:focus-visible img){transform:none}:is(.ink-gallery .g-item:hover .tag,.ink-gallery .g-item:focus-visible .tag){color:var(--muted)}.ink-gallery [data-ink] img{clip-path:none;animation:none}.ink-gallery [data-ink] .tag{visibility:visible}}@media (max-width:600px){.ink-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.ink-gallery .g-item{grid-area:auto;width:100%;margin-top:0}.ink-gallery .g-item:nth-child(4n+2){justify-self:end;width:84%;margin-top:28px}.ink-gallery .g-item:nth-child(4n+3){width:84%}.ink-gallery .g-item:nth-child(4n){margin-top:16px}}@media (hover:none),(pointer:coarse){.cover-work[data-mobile-active=true] .cover-frame{border-color:var(--gold-deep);filter:drop-shadow(0 9px 14px #e0352b3d)}.cover-work[data-mobile-active=true] .cover-frame img{filter:saturate(1.08)contrast(1.04);transform:scale(1.06)}.cover-work[data-mobile-active=true] .cover-frame:before{animation:1.25s cubic-bezier(.16,1,.3,1) both cover-scan}.cover-work[data-mobile-active=true] .cover-frame:after{opacity:1}.vid[data-mobile-active=true]:before{opacity:.9;transform:translateY(5px)scale(1)}.vid[data-mobile-active=true]:after{animation:1.7s cubic-bezier(.16,1,.3,1) both video-signal}.vid[data-mobile-active=true] video{border-color:var(--gold-deep);transform:scale(1.018)}.artist-composition[data-mobile-active=true] .artist-stage{animation:6.8s ease-in-out infinite alternate artist-mobile-depth}}@keyframes artist-mobile-depth{0%{transform:rotateX(-3deg)rotateY(-5deg)}to{transform:rotateX(3deg)rotateY(5deg)}}@media (max-width:480px){.portfolio-heading{padding-right:45px}.portfolio-heading .naga-ornament{opacity:.38;right:-85px}.artist-portrait figcaption{flex-wrap:wrap;gap:2px}.artist-caption{font-size:.85rem}.lightbox-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:4px}.lightbox-arrow{width:36px;min-width:36px}.lightbox-shell{padding-inline:0}}@media (prefers-reduced-motion:reduce){.hero-depth img{transform:none!important}.ink-gallery [data-ink] img{clip-path:none;animation:none}.ink-gallery [data-ink] .tag{visibility:visible}.ink-gallery .g-item:hover img{transform:none}}
