
/* 天界油畫：寶藍天空＋金光雲朵、酒紅絲綢、金箔泰式畫框、米白羊皮紙（照泰國S佛牌海報的畫風） */
:root{--navy:#171238;--sky:#2a2163;--cream:#f6ead0;--silk:#9b1c23;--silk-deep:#5c0d15;--gold:#d6a643;--gold-hi:#ffe8a3;--gold-lo:#8b5b13;--gold-dk:#5a3708;
--parch:#f6ebd2;--parch2:#ecdcb5;--ink:#2a1a10;--muted:#6f5a45;--seal:#a51d18;--line:#06c755;--line2:#05b04c;
--serif:"Noto Serif TC","Noto Serif CJK TC","Songti TC",serif;--sans:"Noto Sans TC","Noto Sans CJK TC","PingFang TC","Microsoft JhengHei",sans-serif;--hand:"LXGW WenKai TC","Noto Serif TC",serif;--roman:"Cormorant Garamond","Noto Serif TC",Georgia,serif;--thai:"Srisakdi","Noto Serif Thai","Thonburi",serif;
--goldleaf:linear-gradient(135deg,#fff0b5 0%,#d9a843 18%,#fff2b8 32%,#a8741f 50%,#f2cf74 66%,#8f5f17 84%,#f6dc8e 100%);
--goldtext:linear-gradient(180deg,#fff8d6 0%,#ffe08a 30%,#e3a93c 54%,#b8791b 66%,#f3cd6e 84%,#fff1bd 100%);
--gold3d:drop-shadow(0 1px 0 #6e430b) drop-shadow(0 1px 0 #4d2d06) drop-shadow(0 0 .7px #3a2104) drop-shadow(0 5px 7px rgba(0,0,0,.45));
--silkbg:linear-gradient(180deg,rgba(255,220,190,.2),transparent 32%,transparent 66%,rgba(0,0,0,.22)),repeating-linear-gradient(100deg,rgba(255,255,255,0) 0 70px,rgba(255,206,186,.12) 95px,rgba(255,255,255,0) 125px,rgba(0,0,0,.1) 165px,rgba(255,255,255,0) 205px),linear-gradient(180deg,#a5242b,#7a141b);
--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 .34 0 0 0 0 .25 0 0 0 0 .12 0 0 0 .1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--strokes:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420'%3E%3Cfilter id='s' x='0' y='0' width='100%25' height='100%25'%3E %3CfeTurbulence type='fractalNoise' baseFrequency='.022 .05' numOctaves='3' seed='4' stitchTiles='stitch' result='a'/%3E %3CfeTurbulence type='fractalNoise' baseFrequency='.05 .022' numOctaves='3' seed='7' stitchTiles='stitch' result='b'/%3E %3CfeBlend in='a' in2='b' mode='screen'/%3E %3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .95 0 0 0 0 .86 1.1 0 0 0 -.62'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23s)'/%3E%3C/svg%3E");--kanok:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='14' viewBox='0 0 36 14'%3E%3Cg fill='%23dcae4e'%3E %3Cpath d='M2 13c0-5 3-8 8-10-1.6 2.6-1.6 5 .8 7-2.6-.8-4.4 0-5 3z'/%3E%3Cpath d='M34 13c0-5-3-8-8-10 1.6 2.6 1.6 5-.8 7 2.6-.8 4.4 0 5 3z'/%3E %3Cpath d='M18 1l2.4 4.2L18 9l-2.4-3.8z'/%3E%3Ccircle cx='18' cy='11.4' r='1.3'/%3E%3C/g%3E%3Cpath d='M0 13.5h36' stroke='%238a5a12'/%3E%3C/svg%3E");--crest:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 24'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff4c2'/%3E%3Cstop offset='.45' stop-color='%23e8b950'/%3E%3Cstop offset='1' stop-color='%239c6a1a'/%3E%3C/linearGradient%3E%3C/defs%3E %3Cg fill='url(%23g)' stroke='%235a3708' stroke-width='.8' stroke-linejoin='round'%3E %3Cpath d='M24 1.5c2.4 3.6 5.6 6 5.6 10.2a5.6 5.6 0 0 1-11.2 0c0-4.2 3.2-6.6 5.6-10.2z'/%3E %3Cpath d='M18.6 14.6c-3.8-.4-6.8-3.6-11.8-3.2 2.8 2.2 3.8 5.6 7.8 6.8 2.2.6 3.8-.4 4-3.6z'/%3E %3Cpath d='M29.4 14.6c3.8-.4 6.8-3.6 11.8-3.2-2.8 2.2-3.8 5.6-7.8 6.8-2.2.6-3.8-.4-4-3.6z'/%3E %3Ccircle cx='24' cy='18' r='3.6'/%3E%3C/g%3E%3Ccircle cx='24' cy='18' r='1.7' fill='%23b3121c'/%3E%3C/svg%3E");--crest-b:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 24'%3E%3Cg transform='translate(0 24) scale(1 -1)'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff4c2'/%3E%3Cstop offset='.45' stop-color='%23e8b950'/%3E%3Cstop offset='1' stop-color='%239c6a1a'/%3E%3C/linearGradient%3E%3C/defs%3E %3Cg fill='url(%23g)' stroke='%235a3708' stroke-width='.8' stroke-linejoin='round'%3E %3Cpath d='M24 1.5c2.4 3.6 5.6 6 5.6 10.2a5.6 5.6 0 0 1-11.2 0c0-4.2 3.2-6.6 5.6-10.2z'/%3E %3Cpath d='M18.6 14.6c-3.8-.4-6.8-3.6-11.8-3.2 2.8 2.2 3.8 5.6 7.8 6.8 2.2.6 3.8-.4 4-3.6z'/%3E %3Cpath d='M29.4 14.6c3.8-.4 6.8-3.6 11.8-3.2-2.8 2.2-3.8 5.6-7.8 6.8-2.2.6-3.8-.4-4-3.6z'/%3E %3Ccircle cx='24' cy='18' r='3.6'/%3E%3C/g%3E%3Ccircle cx='24' cy='18' r='1.7' fill='%23b3121c'/%3E%3C/g%3E%3C/svg%3E");--flank-l:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 16'%3E%3Cg transform='translate(64 0) scale(-1 1)'%3E%3Cg fill='none' stroke='%23ecc86e' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M3 8h31'/%3E %3Cpath d='M34 8c5 0 8-5.5 14-5.5 5 0 8 2.6 8 5.5S53.4 13 50.6 13c-2.4 0-3.8-1.6-3.8-3.4 0-1.6 1.2-2.6 2.6-2.6'/%3E %3Cpath d='M22 8c3.4 0 6 3.6 11 4.6'/%3E%3C/g%3E%3Cpath d='M3 8l3-2.4L9 8l-3 2.4z' fill='%23ecc86e'/%3E%3C/g%3E%3C/svg%3E");--flank-r:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 16'%3E%3Cg fill='none' stroke='%23ecc86e' stroke-width='1.5' stroke-linecap='round'%3E%3Cpath d='M3 8h31'/%3E %3Cpath d='M34 8c5 0 8-5.5 14-5.5 5 0 8 2.6 8 5.5S53.4 13 50.6 13c-2.4 0-3.8-1.6-3.8-3.4 0-1.6 1.2-2.6 2.6-2.6'/%3E %3Cpath d='M22 8c3.4 0 6 3.6 11 4.6'/%3E%3C/g%3E%3Cpath d='M3 8l3-2.4L9 8l-3 2.4z' fill='%23ecc86e'/%3E%3C/svg%3E");
--sky-bg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='960' height='640'%3E%3Cfilter id='c' x='0' y='0' width='100%25' height='100%25'%3E %3CfeTurbulence type='fractalNoise' baseFrequency='.005' numOctaves='6' seed='23' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 0.97 0 0 0 0 0.91 0 0 0 0 0.79 2.8 0 0 0 -1.48'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23c)'/%3E%3C/svg%3E") 0 0/960px 640px,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='960' height='640'%3E%3Cfilter id='c' x='0' y='0' width='100%25' height='100%25'%3E %3CfeTurbulence type='fractalNoise' baseFrequency='.005' numOctaves='6' seed='23' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 0.13 0 0 0 0 0.09 0 0 0 0 0.27 2.4 0 0 0 -1.18'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23c)'/%3E%3C/svg%3E") 0 26px/960px 640px,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='800'%3E%3Cfilter id='c' x='0' y='0' width='100%25' height='100%25'%3E %3CfeTurbulence type='fractalNoise' baseFrequency='.0035' numOctaves='4' seed='5' stitchTiles='stitch'/%3E %3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 0.8 0 0 0 0 0.45 2.6 0 0 0 -1.42'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23c)'/%3E%3C/svg%3E") 300px 80px/1200px 800px,radial-gradient(90% 70% at 50% 0%,rgba(150,112,220,.32),transparent 70%),linear-gradient(180deg,#141038 0%,#251d5e 50%,#33287a 100%)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;color:var(--ink);background-color:var(--parch);background-image:var(--grain),radial-gradient(1300px 640px at 50% 0%,rgba(255,250,235,.7),transparent 70%);font:16px/1.8 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{font-family:var(--serif);line-height:1.3;margin:0;text-wrap:balance}
.skip{position:absolute;left:-999px;top:0}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}.narrow{max-width:820px}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.orn{width:15px;height:15px;color:var(--silk);flex:none}.ico{width:20px;height:20px;flex:none}
.gold3d{background:var(--goldtext);-webkit-background-clip:text;background-clip:text;color:transparent;filter:var(--gold3d)}
.flank{display:inline-flex;align-items:center;gap:10px;font:700 15px/1.4 var(--serif);letter-spacing:.14em;color:var(--gold-hi)}
.flank::before,.flank::after{content:"";width:56px;height:14px;flex:none;background:var(--flank-r) no-repeat center/contain}.flank::before{background-image:var(--flank-l)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:0;font:700 16px/1 var(--sans);letter-spacing:.04em;text-decoration:none;cursor:pointer;transition:transform .15s,filter .15s,background .15s;white-space:nowrap}
.btn:active{transform:translateY(1px)}.btn-sm{min-height:40px;padding:0 16px;font-size:14.5px}.btn-lg{min-height:56px;padding:0 30px;font-size:17.5px}
.btn-line{background:var(--line);color:#fff;box-shadow:0 0 0 2px rgba(255,232,163,.55),0 6px 16px rgba(6,199,85,.3)}.btn-line:hover{background:var(--line2)}
.btn-gold{background:var(--goldleaf);color:#2b1606;text-shadow:0 1px 0 rgba(255,240,200,.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -2px 0 rgba(90,60,10,.35),0 0 0 1px #6e430b,0 8px 20px rgba(0,0,0,.35)}.btn-gold:hover{filter:brightness(1.07)}
.btn-dark{background:linear-gradient(180deg,#352a72,#1b1545);color:var(--gold-hi);box-shadow:inset 0 0 0 1px rgba(255,232,163,.7),0 0 0 2px #1b1545}.btn-dark:hover{filter:brightness(1.15)}
.btn-outline{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px rgba(139,91,19,.55)}
.btn-outline-light{background:rgba(24,16,58,.35);color:var(--gold-hi);box-shadow:inset 0 0 0 1.5px rgba(255,232,163,.65)}
.btn-711{background:#fffaf0;color:#0d7a3e;box-shadow:inset 0 0 0 2px #0d7a3e}.btn-711:hover{background:#eef8f1}
.btn-shopee{background:#ee4d2d;color:#fff}.btn-shopee:hover{background:#d73211}
.plaque{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:7px 22px;border-radius:14px;text-align:center;color:var(--gold-hi);background:radial-gradient(120% 90% at 50% 0%,#b42a30,#7c121a 55%,#560b12);box-shadow:inset 0 0 0 2px #f3d283,inset 0 0 0 4px #7a4a0e,inset 0 0 0 5px rgba(255,226,150,.6),0 0 0 1px #4a2a06,0 8px 18px rgba(0,0,0,.45);text-shadow:0 1px 0 #3a0508}
.plaque small{font:700 12.5px/1.3 var(--sans);letter-spacing:.12em;color:#f7d98e}.plaque b{font:900 17px/1.35 var(--serif);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 頁首 */
.hd{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:linear-gradient(180deg,#120d30,#1d1748);color:#f3e6c6;box-shadow:0 1px 0 #6e4a12}
.hd::after{content:"";position:absolute;left:0;right:0;bottom:-14px;height:14px;background:var(--kanok) repeat-x left center;pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.3))}
.hd-in{max-width:1200px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font:900 21px/1 var(--serif);letter-spacing:.06em}
.brand span{background:var(--goldtext);-webkit-background-clip:text;background-clip:text;color:transparent}.logo{width:36px;height:36px}
.nav{display:flex;gap:2px;margin-left:auto}.nav a{color:#efe2c4;text-decoration:none;padding:8px 12px;border-radius:999px;font-size:15px;letter-spacing:.06em}
.nav a:hover,.nav a[aria-current]{color:var(--gold-hi);background:rgba(214,166,67,.16)}
/* 天空區塊共用 */
.hero,.top10,.band-sky,.lgroup,.page-head{position:relative;color:var(--cream);background:var(--sky-bg)}
.hero::before,.top10::before,.band-sky::before,.lgroup::before,.page-head::before{content:"";position:absolute;inset:0;background-image:var(--strokes);mix-blend-mode:soft-light;pointer-events:none}
/* 首屏 */
.hero{overflow:hidden;background:radial-gradient(34% 48% at 73% 50%,rgba(255,216,130,.62),rgba(255,190,90,.16) 52%,transparent 74%),var(--sky-bg)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:150px;background:linear-gradient(180deg,rgba(255,226,170,0),rgba(255,226,170,.32));pointer-events:none}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.3;mix-blend-mode:luminosity}
.hero-in{position:relative;z-index:2;max-width:1240px;margin:0 auto;padding:34px 24px 0;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;align-items:center}
.hero-text{text-align:center;padding:26px 6px 34px;background:radial-gradient(closest-side,rgba(18,12,46,.6),rgba(18,12,46,.28) 70%,transparent)}
.kicker{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 0 14px}
.kicker .th{font:700 22px/1.25 var(--thai);color:#f4dc9c;letter-spacing:0}.kicker.dark{display:block;margin:0 0 4px;color:#8a4b14;font-weight:700;font-size:14px;letter-spacing:.08em}
.hero-h{font-weight:900;font-size:48px;line-height:1.3;letter-spacing:.03em;filter:var(--gold3d)}
.hero-h span{display:block;background:var(--goldtext);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-h em{font-style:normal;font-size:1.14em}
.hero-sub{margin:16px auto 26px;max-width:26em;font:600 19px/1.6 var(--serif);color:#f6ead2;text-shadow:0 2px 6px rgba(0,0,0,.7)}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.deity{position:relative;display:block}.deity-img{width:100%;height:auto}
.deity-slot{position:absolute;display:block;overflow:hidden;background:#120b07;box-shadow:inset 0 0 0 1px rgba(80,50,10,.8),0 0 0 2px rgba(255,236,180,.55),0 0 24px rgba(255,214,130,.7)}
.deity-slot img{width:100%;height:100%;object-fit:cover}
.deity-cap{position:absolute;display:flex}.deity-cap .plaque{flex:1;min-width:0;padding:4px 14px;border-radius:16px}
.deity-line .deity-img{-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 6%,#000 97%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(180deg,transparent,#000 6%,#000 97%,transparent);mask-composite:intersect}
.feat-frame{position:relative;display:block;width:min(360px,80%);margin:20px auto 18px;padding:14px;background:var(--goldleaf);box-shadow:0 0 0 1px #4a2a06,inset 0 0 0 1px rgba(255,248,220,.6),0 0 60px rgba(255,214,130,.55),0 20px 40px rgba(0,0,0,.45)}
.feat-frame::before,.feat-frame::after{content:"";position:absolute;left:50%;width:56px;height:28px;margin-left:-28px;background:var(--crest) no-repeat center/contain}.feat-frame::before{top:-15px}.feat-frame::after{bottom:-15px;background-image:var(--crest-b)}
.feat-frame img{width:100%;aspect-ratio:1;object-fit:cover}.feat-frame+.feat-cap{display:flex;width:fit-content;max-width:90%;margin:0 auto 26px}
.hero-skyline{position:relative;z-index:1;display:block;width:100%;height:auto;min-height:56px;margin-top:-20px;color:#f6d488;opacity:.3}
.hero-skyline path,.hero-skyline rect{fill:currentColor}.hero-skyline circle{display:none}
/* 數字：酒紅絲綢腰帶 */
.stats{position:relative;background:var(--silkbg);color:#f6deb0;border-top:3px solid #e6bf63;border-bottom:3px solid #e6bf63;box-shadow:inset 0 3px 0 #7a4a0e,inset 0 -3px 0 #7a4a0e}
.stats-in{position:relative;max-width:1200px;margin:0 auto;padding:18px 24px;display:grid;grid-template-columns:repeat(4,1fr);text-align:center}
.stat{padding:2px 8px}.stat+.stat{border-left:1px solid rgba(255,232,163,.3)}
.stat b{display:block;font:700 40px/1.05 var(--roman);background:var(--goldtext);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 1px 0 #4d1206) drop-shadow(0 2px 3px rgba(0,0,0,.35))}
.stat b small{font:700 15px var(--serif);margin-left:3px}.stat span{font-size:13.5px;color:#f3d9a6;letter-spacing:.08em}
/* 區塊標題：酒紅字牌 */
.sec{padding-top:54px;padding-bottom:8px}.sec-head{display:flex;align-items:center;gap:14px;margin:0 0 24px}
.sec-head h2{display:inline-flex;align-items:center;gap:9px;padding:8px 22px 8px 16px;border-radius:12px;font-size:23px;font-weight:900;letter-spacing:.06em;color:var(--gold-hi);background:radial-gradient(120% 90% at 50% 0%,#ad272e,#7c121a 55%,#560b12);box-shadow:inset 0 0 0 2px #f3d283,inset 0 0 0 4px #7a4a0e,inset 0 0 0 5px rgba(255,226,150,.55),0 6px 14px rgba(60,10,10,.25);text-shadow:0 1px 0 #3a0508}
.sec-head h2 .orn{color:var(--gold-hi)}
.sec-head .rule{flex:1;height:14px;min-width:24px;background:var(--kanok) repeat-x left center;opacity:.85}
.more{color:#8a3f12;font-weight:700;text-decoration:none;font-size:15px;white-space:nowrap}.more:hover{text-decoration:underline}
.band-sky .more{color:var(--gold-hi)}
.sec-note{margin:-10px 0 20px;color:var(--muted)}
.center-head{position:relative;text-align:center;margin:0 0 26px}.center-head h2{font-size:40px;font-weight:900;letter-spacing:.06em}
.center-head .kicker{margin-bottom:6px}.center-head .sec-note{margin:8px 0 0;color:#f6ead2;text-shadow:0 1px 3px rgba(0,0,0,.85),0 0 12px rgba(18,12,46,.8)}
.center-more{text-align:center;margin:34px 0 0}
/* 商品卡：金箔泰式畫框＋羊皮紙襯底 */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px 24px}
.card{position:relative;display:flex;flex-direction:column;text-decoration:none;color:inherit}
.card-img{position:relative;display:block;padding:9px;background:var(--goldleaf);box-shadow:0 0 0 1px #5a3708,inset 0 0 0 1px rgba(255,248,220,.6),inset 0 0 0 3px rgba(140,90,20,.3),0 12px 26px rgba(20,16,50,.32);transition:transform .25s,box-shadow .25s}
.card-img::before,.card-img::after,.g-frame::before,.g-frame::after{content:"";position:absolute;z-index:3;left:50%;width:44px;height:22px;margin-left:-22px;background:var(--crest) no-repeat center/contain;pointer-events:none}
.card-img::before,.g-frame::before{top:-12px}.card-img::after,.g-frame::after{bottom:-12px;background-image:var(--crest-b)}
.card:hover .card-img{transform:translateY(-4px);box-shadow:0 0 0 1px #5a3708,inset 0 0 0 1px rgba(255,248,220,.6),inset 0 0 0 3px rgba(140,90,20,.3),0 0 26px rgba(255,214,130,.55),0 22px 38px rgba(20,16,50,.4)}
.mat{display:block;padding:6px;background:var(--parch);box-shadow:inset 0 0 0 1px rgba(90,55,8,.55),inset 0 2px 6px rgba(90,55,8,.35)}
.card-img img{width:100%;aspect-ratio:1;object-fit:cover}
.noimg,.g-empty{display:grid;place-items:center;width:100%;aspect-ratio:1;background:#120b07}.noimg .orn,.g-empty .orn{width:40px;height:40px;color:var(--gold);opacity:.6}
.seal{position:absolute;z-index:2;top:20px;left:20px;background:var(--seal);color:#fff4e0;font:700 13px/1 var(--serif);padding:6px 7px;border-radius:3px;letter-spacing:.06em;transform:rotate(-4deg);box-shadow:0 2px 6px rgba(0,0,0,.35),inset 0 0 0 1.5px rgba(255,235,210,.4)}
.seal.big{position:static;display:inline-block;font-size:17px;padding:8px 10px;transform:rotate(-3deg)}
.sold-stamp{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg);padding:6px 16px;border:3px double #ead9b0;color:#f8ecd2;font:900 22px/1 var(--serif);letter-spacing:.2em;background:rgba(40,16,8,.55);white-space:nowrap}
.is-sold .card-img img,.gallery.is-sold .g-slide img,.gallery.is-sold .g-thumbs img{filter:grayscale(1) sepia(.25) brightness(.62)}.sold-stamp.big{font-size:34px;padding:10px 26px;border-width:4px}
.card-body{position:relative;margin:18px 6px 0;padding:11px 13px 13px;background:linear-gradient(180deg,#fbf3df,#efdfba);border:1px solid rgba(139,91,19,.5);box-shadow:inset 0 0 0 3px #fbf3df,inset 0 0 0 4px rgba(139,91,19,.25),0 3px 8px rgba(60,40,10,.12);display:flex;flex-direction:column;gap:2px;flex:1}
.card-body h3{font-size:16.5px;font-weight:700;color:#2b160c;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-meta{margin:0;color:var(--muted);font-size:13.5px}.card-foot{margin:auto 0 0;padding-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.price{font-size:13.5px;color:var(--muted)}.price b{font:700 22px/1 var(--roman);color:#8e1a1c;letter-spacing:.01em}
.pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:700;background:#efe0bd;color:#6b4a1a}.pill-ok{background:linear-gradient(180deg,#3a2d7a,#231b52);color:var(--gold-hi)}.pill-sold{background:#e3d9c8;color:#6f6458}
.rank{position:absolute;z-index:4;top:-16px;right:-12px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;gap:1px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff4c8,#e1bd62 42%,#9a6c1f 80%,#6e4a12);color:#3a1a06;font:700 24px/1 var(--roman);text-shadow:0 1px 0 rgba(255,240,200,.6);box-shadow:0 0 0 2px #5a3708,0 0 0 4px #c9373a,0 0 0 5px #f3d283,0 8px 16px rgba(0,0,0,.45)}
.rank small{font-size:11px;font-style:italic}
/* TOP10：眾神 */
.top10{padding:0 0 64px;overflow:hidden;background:var(--kanok) repeat-x left bottom,var(--sky-bg)}
.gods-band{position:relative;z-index:1;height:clamp(240px,34vw,520px);margin:0 0 -96px;background:var(--art-gods-band) 50% 6%/cover no-repeat;-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent 99%);mask-image:linear-gradient(180deg,#000 72%,transparent 99%)}
.top10 .wrap{position:relative;z-index:2}.top10 .center-head{padding-top:6px}.top10:not(:has(.gods-band)){padding-top:50px}
.toprail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,1fr);gap:26px;overflow-x:auto;padding:20px 14px 16px 6px;scroll-snap-type:x mandatory}.toprail .card{scroll-snap-align:start}
/* 類目 */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cat{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(180deg,#fbf3df,#efdfba);border:1px solid rgba(139,91,19,.45);text-decoration:none;box-shadow:inset 0 0 0 3px #fbf3df,inset 0 0 0 4px rgba(139,91,19,.28)}
.cat:hover{box-shadow:inset 0 0 0 3px #fbf3df,inset 0 0 0 4px rgba(139,91,19,.5),0 6px 16px rgba(60,40,10,.12)}
.cat b{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3d2f86,#1c1548);color:var(--gold-hi);font:700 24px/1 var(--roman);box-shadow:0 0 0 2px #e6bf63,0 0 0 3px #7a4a0e,0 3px 8px rgba(0,0,0,.25);flex:none}
.cat span{font-weight:700;flex:1;font-family:var(--serif)}.cat em{font-style:normal;color:var(--muted);font-size:14px}
/* 師父：天空帶 */
.band-sky{margin-top:54px;background:var(--kanok) repeat-x left bottom,var(--sky-bg)}.band-sky .sec{padding-top:46px;padding-bottom:40px;position:relative}
.mrow{display:flex;gap:18px;overflow-x:auto;padding:8px 4px 14px;scroll-snap-type:x mandatory}.mrow .mchip{scroll-snap-align:start}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:24px}
.mchip{flex:none;width:140px;display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;gap:2px}
.mphoto{width:116px;height:116px;border-radius:50%;overflow:hidden;background:#1c1548;display:grid;place-items:center;margin:8px 0 12px;box-shadow:0 0 0 3px #f3d283,0 0 0 5px #8b5b13,0 0 0 7px #e6bf63,0 0 0 8px rgba(74,50,16,.6),0 0 24px rgba(255,214,130,.35),0 10px 20px rgba(10,10,40,.35)}
.mphoto img{width:100%;height:100%;object-fit:cover}.mphoto.big{width:150px;height:150px;flex:none}.mini-initial{color:var(--gold-hi);font:900 26px/1 var(--serif)}
.mchip b{font:700 16px/1.4 var(--serif)}.mchip small{color:var(--muted);font:700 14px/1.3 var(--thai)}.mchip em{font-style:normal;font-size:12.5px;color:#1d3f8a;font-weight:700}
.band-sky .mchip b{color:#fbefd2}.band-sky .mchip small{color:#f2d590}.band-sky .mchip em{color:var(--gold-hi)}.band-sky .mchip b,.band-sky .mchip small,.band-sky .mchip em{text-shadow:0 1px 3px rgba(0,0,0,.85),0 0 10px rgba(18,12,46,.8)}
/* 承諾：酒紅絲綢 */
.promise{position:relative;margin-top:0;padding:56px 0 60px;background:var(--silkbg);border-top:3px solid #e6bf63;border-bottom:3px solid #e6bf63;box-shadow:inset 0 3px 0 #7a4a0e,inset 0 -3px 0 #7a4a0e}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.pcard{text-align:center;padding:28px 24px 26px;background:linear-gradient(180deg,#fbf3df,#efdfba);color:var(--ink);box-shadow:0 0 0 2px #e6bf63,0 0 0 4px #7a4a0e,inset 0 0 0 4px #fbf3df,inset 0 0 0 5px rgba(139,91,19,.3),0 14px 28px rgba(40,5,5,.35)}
.pmotif{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 6px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#b42a30,#5c0d15);box-shadow:0 0 0 2px #e6bf63,0 0 0 4px #7a4a0e}.pmotif .orn{width:24px;height:24px;color:var(--gold-hi)}
.pcard h3{margin:8px 0 6px;font-size:21px;color:#7c121a}.pcard p{margin:0;color:#4a3828}
/* LINE 群：哈努曼捧著 QR */
.lgroup{overflow:hidden;background:var(--kanok) repeat-x left bottom,radial-gradient(34% 56% at 28% 52%,rgba(255,216,130,.55),rgba(255,190,90,.14) 52%,transparent 74%),var(--sky-bg)}
.lgroup-in{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:28px;align-items:center;padding-top:30px;padding-bottom:30px}
.lgroup-copy{text-align:center;padding:20px 8px;background:radial-gradient(closest-side,rgba(18,12,46,.55),rgba(18,12,46,.2) 70%,transparent)}
.lgroup-copy h2{font-size:48px;font-weight:900;letter-spacing:.04em}
.lgroup-sub{margin:12px 0 22px;font:700 22px/1.6 var(--serif);color:#fbefd2;text-shadow:0 2px 6px rgba(0,0,0,.6)}
.lgroup-note{margin:12px 0 0;font-size:13.5px;color:#e6d6b2}
.slot-line{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:100%;height:100%;background:var(--parch);color:#0b7a3a}
.slot-line .ico{width:46%;height:auto;max-width:72px;color:var(--line)}.slot-line b{font:900 clamp(11px,1.6vw,17px)/1 var(--serif);color:#2a1a10}
.deity-line .deity-slot{background:#fff;box-shadow:none}.deity-line .deity-slot img{object-fit:contain}
/* 跑廟紀實 */
.about-teaser{padding-bottom:12px}.about-teaser>div{padding:32px;background:linear-gradient(180deg,#fbf3df,#f1e3c3);border:1px solid rgba(139,91,19,.5);box-shadow:inset 0 0 0 5px #fbf3df,inset 0 0 0 6px rgba(139,91,19,.32),0 10px 24px rgba(60,40,10,.12)}
.about-teaser h2,.box h2,.prose h2{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:900;color:#7c121a;letter-spacing:.04em}
.about-teaser p{max-width:46em;color:#4a3828;font:18px/1.8 var(--hand)}
/* 內頁標題 */
.page-head{padding:40px 0 36px;background:radial-gradient(40% 90% at 82% 0%,rgba(255,216,130,.35),transparent 70%),var(--sky-bg)}.page-head .wrap{position:relative}
.page-head h1{display:inline-block;font-size:38px;font-weight:900;letter-spacing:.05em;background:var(--goldtext);-webkit-background-clip:text;background-clip:text;color:transparent;filter:var(--gold3d)}
.page-head.red{background:var(--silkbg);border-bottom:3px solid #e6bf63;box-shadow:inset 0 -3px 0 #7a4a0e}.page-head.red::before{display:none}
.page-head .count{margin:4px 0 0;color:#efe0bf}.page-head .th{margin:2px 0 0;font:700 23px/1.3 var(--thai);color:#f4dc9c}
.crumbs{margin:0 0 8px;font-size:13.5px;color:#d8c69c}.crumbs a{color:inherit}.item-page .crumbs{color:var(--muted);margin-top:28px}
.chips{display:flex;gap:8px;overflow-x:auto;padding:24px 0 4px}.chip{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 15px;border-radius:999px;background:#fbf3df;border:1px solid rgba(139,91,19,.4);text-decoration:none;font-size:14.5px;font-weight:500}
.chip small{color:var(--muted)}.chip.on{background:linear-gradient(180deg,#3a2d7a,#231b52);color:var(--gold-hi);border-color:#231b52}.chip.on small{color:#d6c79f}
.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:14px 0 30px}.filters label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}
.filters input,.filters select{min-height:42px;padding:0 12px;border-radius:8px;border:1px solid rgba(139,91,19,.45);background:#fbf3df;font:15px var(--sans);color:var(--ink)}.filters input{min-width:240px}
.pager{display:flex;justify-content:space-between;align-items:center;margin:30px 0;font-weight:700}.pager a{color:#8a3f12;text-decoration:none}
.empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 20px;text-align:center;color:var(--muted);background:#fbf3df;border:1px dashed rgba(139,91,19,.5)}.empty .orn{width:30px;height:30px}.empty.big h1{color:var(--ink)}
.row-btn{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.row-btn.left{justify-content:flex-start}
/* 單品頁 */
.item-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:start;margin-top:14px}
.gallery{position:sticky;top:100px}
.g-frame{position:relative;padding:14px;background:var(--goldleaf);box-shadow:0 0 0 1px #4a2a06,inset 0 0 0 1px rgba(255,248,220,.6),inset 0 0 0 6px rgba(120,80,20,.18),0 0 40px rgba(255,214,130,.35),0 24px 48px rgba(30,20,50,.35)}
.g-frame::before{top:-14px;width:56px;height:28px;margin-left:-28px}.g-frame::after{bottom:-14px;width:56px;height:28px;margin-left:-28px}
.g-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;background:#120b07;box-shadow:inset 0 0 0 1px rgba(0,0,0,.8),inset 0 4px 10px rgba(0,0,0,.7);scrollbar-width:none}.g-track::-webkit-scrollbar{display:none}
.g-slide{flex:0 0 100%;margin:0;scroll-snap-align:center;padding:8px}.g-slide img{width:100%;aspect-ratio:1;object-fit:contain}
.g-thumbs{display:flex;gap:8px;margin-top:20px;overflow-x:auto;padding:2px 2px 4px}
.g-thumbs button{flex:none;width:62px;height:62px;padding:3px;border:0;background:var(--goldleaf);cursor:pointer;opacity:.6;box-shadow:0 0 0 1px #4a2a06}
.g-thumbs button[aria-current]{opacity:1;box-shadow:0 0 0 2px var(--silk)}.g-thumbs img{width:100%;height:100%;object-fit:cover}
.item-info{padding:26px 26px 22px;background:linear-gradient(180deg,#fbf3df,#f2e4c4);border:1px solid rgba(139,91,19,.5);box-shadow:inset 0 0 0 5px #fbf3df,inset 0 0 0 6px rgba(139,91,19,.3),0 12px 28px rgba(60,40,10,.12)}
.item-info h1{font-size:32px;font-weight:900;color:#2b140b;letter-spacing:.02em}.code-row{display:flex;align-items:center;gap:12px;margin:12px 0}
.price-lg{margin:8px 0 20px;font-size:16px;color:var(--muted)}.price-lg b{font:700 40px/1 var(--roman);color:#8e1a1c;margin-left:6px}
.sold-note{margin:8px 0 18px;padding:12px 14px;background:#ece2cf;color:#5b4b3e}
.cta-stack{display:flex;flex-direction:column;gap:10px}.cta-stack .btn{width:100%}.cta-note{margin:10px 0 0;font-size:13.5px;color:var(--muted)}
.box{margin-top:22px;padding:20px 22px;background:#fbf3df;border:1px solid rgba(139,91,19,.45);box-shadow:inset 0 0 0 4px #fbf3df,inset 0 0 0 5px rgba(139,91,19,.25)}
.item-info .box{background:#f5e9cd;box-shadow:inset 0 0 0 4px #f5e9cd,inset 0 0 0 5px rgba(139,91,19,.25)}.box h2{font-size:20px;margin-bottom:10px}
.dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:0}.dl dt{color:var(--muted)}.dl dd{margin:0;font-weight:500}.dl small{color:var(--muted);font:700 15px/1.3 var(--thai)}
.scene{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.scene img{aspect-ratio:1;object-fit:cover;box-shadow:0 0 0 3px #ecc86e,0 0 0 4px #8b5b13}
.assure{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.assure li{padding:12px;background:linear-gradient(180deg,#efe2c4,#e6d4ac);font-size:13px;color:#5b4b3e;line-height:1.5;border:1px solid rgba(139,91,19,.3);text-wrap:pretty}.assure b{display:block;font:700 14.5px/1.4 var(--serif);color:var(--ink)}
.policy-link{margin:12px 0 0;font-size:14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.policy-link a{color:#8a3f12}
.share-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(139,91,19,.45);background:#fbf3df;color:#6b3a10;font:600 14px/1 var(--sans);cursor:pointer}.share-btn:hover{background:#f3e3bd}.share-btn .ico{width:16px;height:16px}
.scarce{margin:-12px 0 16px;font-size:14px;font-weight:600;color:#a3241c}.scarce::before{content:"";display:inline-block;width:7px;height:7px;margin:0 7px 2px 0;border-radius:50%;background:#d23a2c;box-shadow:0 0 0 3px rgba(210,58,44,.2)}
.how-mini{list-style:none;margin:16px 0 0;padding:14px 16px;display:grid;gap:9px;background:rgba(139,91,19,.06);border:1px dashed rgba(139,91,19,.4)}
.how-mini li{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.55;color:#5b4b3e}.how-mini b{display:block;font:700 15px/1.4 var(--serif);color:var(--ink)}
.how-mini .num,.steps .num{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--goldleaf);color:#3a2306;font:700 15px/1 var(--roman);box-shadow:0 0 0 1px rgba(90,55,8,.45)}
/* 首頁：怎麼請牌 */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.steps li{position:relative;text-align:center;padding:26px 18px 22px;background:linear-gradient(180deg,#fbf3df,#efdfba);box-shadow:0 0 0 1px rgba(155,107,29,.45),inset 0 0 0 4px #fbf3df,inset 0 0 0 5px rgba(139,91,19,.22),0 10px 22px rgba(60,30,5,.12)}
.steps li+li::before{content:"";position:absolute;left:-14px;top:50%;width:10px;height:10px;border-top:2px solid #b58a3a;border-right:2px solid #b58a3a;transform:translateY(-50%) rotate(45deg)}
.steps .num{width:44px;height:44px;margin:0 auto 10px;font-size:24px}
.steps b{display:block;font:700 19px/1.4 var(--serif);color:#7c121a}.steps p{margin:6px 0 0;font-size:14.5px;color:#4a3828}
.howto .center-more{margin-top:24px}
.story{margin-top:36px}.story-body{color:#3c2a1e;font-size:16.5px}.story-body p{margin:0 0 1em}
.story-body p:first-child::first-letter{float:left;font:900 3.3em/.86 var(--serif);color:var(--silk);margin:6px 10px 0 0}
.story-body.clamp{max-height:15em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}
.master-head{display:flex;align-items:center;gap:28px}.master-bio{margin-top:28px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start}
.group{margin:0;max-width:380px}.group img{padding:8px;background:var(--goldleaf);box-shadow:0 0 0 1px #4a2a06,0 10px 22px rgba(30,20,50,.3)}.group figcaption{font:14px/1.6 var(--hand);color:var(--muted);margin-top:8px}
.prose p,.prose li{color:#3c2a1e}.prose h2{margin:36px 0 12px;font-size:23px}.prose .lead{font:22px/1.65 var(--hand);color:var(--ink)}
.prose ul,.prose ol{padding-left:1.3em}.prose li{margin:.35em 0}.plist li{margin:.5em 0}.cta-line{margin-top:28px}
.social{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.soc{display:inline-flex;align-items:center;min-height:38px;padding:0 15px;border-radius:999px;border:1px solid rgba(255,232,163,.5);color:#f3e6c6;text-decoration:none;font-size:14px;font-weight:500}.soc:hover{background:rgba(214,166,67,.15)}
.social.light .soc{color:var(--ink);border-color:rgba(139,91,19,.45);background:#fbf3df}
.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.svc .box{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.svc .box p{margin:0 0 10px;color:#4a3828;flex:1}
/* TOP10 頁 */
.toplist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:28px}
.top-row{display:grid;grid-template-columns:64px 200px minmax(0,1fr);gap:22px;align-items:center;padding:22px 20px;background:linear-gradient(180deg,#fbf3df,#f1e3c3);border:1px solid rgba(139,91,19,.45);box-shadow:inset 0 0 0 4px #fbf3df,inset 0 0 0 5px rgba(139,91,19,.25),0 8px 20px rgba(60,40,10,.1)}
.top-n{font:700 64px/1 var(--roman);text-align:center;background:var(--goldtext);-webkit-background-clip:text;background-clip:text;color:transparent;filter:var(--gold3d)}
.top-pic{display:block}.top-pic img{width:100%;aspect-ratio:1;object-fit:cover}
.top-info h2{font-size:22px;margin:2px 0 6px}.top-info h2 a{text-decoration:none}.top-ex{margin:0 0 8px;color:#4a3828;font-size:14.5px}.top-info .price{margin:0 0 12px}.top-info .pill{margin-left:6px}
/* 頁尾 */
.ft{position:relative;margin-top:72px;padding:46px 0 calc(26px + env(safe-area-inset-bottom));color:#e2d3b0;background:var(--kanok) repeat-x left top,radial-gradient(60% 120% at 50% 0%,rgba(96,64,170,.42),transparent 70%),linear-gradient(180deg,#1d1748,#120d30)}
.ft-in{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:30px;align-items:start}
.ft-brand p{margin:12px 0 0;font-size:14px;max-width:24em}.ft-links{display:flex;flex-direction:column;gap:8px}.ft-links a{color:#efe2c4;text-decoration:none;font-size:15px}.ft-links a:hover{color:var(--gold-hi)}
.ft-line{display:flex;gap:16px;align-items:center}.ft-line p{margin:0 0 10px;font-size:14px}.ft-qr{width:112px;height:112px;background:#fff;padding:6px;box-shadow:0 0 0 2px #e6bf63,0 0 0 3px #7a4a0e}
.ft-note{max-width:1200px;margin:30px auto 0;padding:16px 24px 0;border-top:1px solid rgba(255,232,163,.2);font-size:13.5px;color:#bfb08f}.ft-copy{max-width:1200px;margin:4px auto 0;padding:0 24px;font-size:12.5px;color:#8f8470}
.sticky{display:none}
.dlg{border:0;padding:30px 26px 24px;width:min(92vw,380px);text-align:center;background:#fbf3df;color:var(--ink);box-shadow:0 0 0 2px #e6bf63,0 0 0 4px #7a4a0e,inset 0 0 0 5px #fbf3df,inset 0 0 0 6px rgba(139,91,19,.35),0 30px 80px rgba(0,0,0,.45)}
.dlg::backdrop{background:rgba(14,9,36,.7)}.dlg h2{font-size:22px;margin-bottom:12px;color:#7c121a}.dlg-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:28px;line-height:1;cursor:pointer;color:var(--muted)}
.dlg-qr{width:200px;height:200px;margin:0 auto;padding:6px;background:#fff;box-shadow:0 0 0 2px #e6bf63}.dlg-tip{margin:10px 0 14px;color:var(--muted);font-size:14px}
.dlg-copy{margin:0 0 14px;text-align:left}.dlg-copy p{margin:0 0 6px;font-size:14px}.dlg-copy pre{margin:0 0 10px;white-space:pre-wrap;word-break:break-all;background:#efe2c4;padding:10px 12px;font:13px/1.6 var(--sans)}
.toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:rgba(24,16,58,.97);color:#f7ecd2;padding:12px 18px;border-radius:10px;font-size:15px;transition:.25s;z-index:60;max-width:90vw;text-align:center;box-shadow:0 0 0 1px rgba(255,232,163,.55)}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media (min-width:1001px){.toprail{display:flex;flex-wrap:wrap;justify-content:center;gap:44px 26px;overflow:visible}.toprail .card{flex:0 0 calc((100% - 104px)/5)}}
@media (max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}.cats{grid-template-columns:repeat(2,1fr)}.hero-h{font-size:38px}.svc,.pgrid{grid-template-columns:1fr}
 .hero-in{grid-template-columns:1fr;gap:0;padding-top:26px}.lgroup-in{grid-template-columns:1fr;gap:6px}.lgroup-art{max-width:640px;width:100%;margin:0 auto}}
@media (max-width:820px){
 .hd-in{flex-wrap:wrap;gap:6px 12px;padding:8px 16px}.brand{font-size:19px}.logo{width:32px;height:32px}
 .nav{order:3;width:100%;margin:0 -6px;overflow-x:auto;padding-bottom:2px}.nav a{flex:none;font-size:14.5px;padding:6px 10px}.hd-line{margin-left:auto}
 .hero-in{padding:22px 16px 0}.hero-text{padding:14px 0 10px;background:none}.hero-h{font-size:31px}.hero-sub{font-size:16.5px;margin:12px auto 18px}.kicker .th{font-size:19px}.flank{font-size:13.5px;gap:8px}.flank::before,.flank::after{width:40px}
 .hero-cta .btn{flex:1 1 140px}
 .deity-cap .plaque{padding:2px 8px;border-radius:12px}.plaque small{font-size:10.5px;letter-spacing:.06em}.plaque b{font-size:13.5px}
 .hero-skyline{min-height:44px;margin-top:-34px}
 .stats-in{grid-template-columns:repeat(2,1fr);gap:14px 0;padding:16px}.stat:nth-child(3){border-left:0}.stat b{font-size:32px}
 .wrap{padding:0 16px}.sec{padding-top:40px;padding-bottom:4px}.sec-head{gap:10px}.sec-head h2{font-size:19px;padding:6px 16px 6px 12px}.more{font-size:14px}
 .center-head h2{font-size:30px}.lgroup-copy h2{font-size:34px}.lgroup-sub{font-size:18px}
 .grid{grid-template-columns:repeat(2,1fr);gap:30px 14px}.card-img{padding:6px}.mat{padding:4px}.seal{top:13px;left:13px;font-size:11.5px;padding:5px 6px}
 .card-img::before,.card-img::after{width:34px;height:17px;margin-left:-17px}.card-img::before{top:-9px}.card-img::after{bottom:-9px}
 .card-body{margin:14px 2px 0;padding:9px 10px 11px}.card-body h3{font-size:15px}.price b{font-size:19px}.card-foot{flex-direction:column;align-items:flex-start;gap:6px}
 .rank{width:44px;height:44px;font-size:20px;top:-13px;right:-8px}.toprail{grid-auto-columns:62%;gap:18px;padding-left:4px}
 .gods-band{height:270px;margin-bottom:-56px;background-position:0 4%}
 .cats{grid-template-columns:1fr 1fr;gap:10px}.cat{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:10px;padding:12px}.cat b{grid-row:1/3;width:38px;height:38px;font-size:20px}.cat span{align-self:end;line-height:1.35}.cat em{align-self:start;font-size:13px}
 .band-sky{margin-top:40px}.promise{padding:42px 0 46px}
 .lgroup-in{padding-top:10px;padding-bottom:24px}.lgroup-art{margin:0 -16px;overflow:hidden;width:auto}.deity-line{width:118%;margin-left:-9%}.lgroup-copy{background:none;padding:6px 0 0}
 .item-grid{grid-template-columns:1fr;gap:24px}.gallery{position:static}.g-frame{padding:8px}.item-info{padding:20px 18px}
 .item-info h1{font-size:25px}.price-lg b{font-size:32px}.assure{grid-template-columns:1fr}
 .steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.steps li{padding:20px 12px 16px}.steps li+li::before{display:none}.steps b{font-size:17px}.steps p{font-size:13.5px}
 .page-head{padding:28px 0 24px}.page-head h1{font-size:28px}.filters input{min-width:0;width:100%}.filters label:first-child{flex:1 1 100%}
 .master-head{gap:16px}.mphoto.big{width:96px;height:96px}.master-bio{grid-template-columns:1fr}
 .top-row{grid-template-columns:30px 104px minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:12px;row-gap:2px;align-items:start;padding:16px 14px}
 .top-n{grid-column:1;grid-row:1/4;align-self:center;font-size:40px}.top-pic{grid-column:2;grid-row:1/4}.top-info{display:contents}
 .top-info .kicker{grid-column:3;grid-row:1;font-size:12.5px;margin:0}.top-info h2{grid-column:3;grid-row:2;font-size:17px;margin:0}.top-info .price{grid-column:3;grid-row:3;margin:4px 0 0}.top-ex{display:none}
 .top-info .row-btn{grid-column:1/-1;grid-row:4;margin-top:14px;flex-wrap:nowrap}.top-info .row-btn .btn{flex:1}.top-info .row-btn .btn-line{flex:1.5}
 .ft-in{grid-template-columns:1fr}.ft{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
 .sticky{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#1d1748,#120d30);border-top:2px solid #e6bf63}
 .sticky .btn{flex:1;min-height:50px}.sticky .btn-line{flex:1.4}.toast{bottom:calc(84px + env(safe-area-inset-bottom))}
}
/* ===== 畫作：佛陀壁畫、立佛、師父畫像當背景；金色光環、蓮花（照泰國S佛牌的畫） ===== */
:root{--art-wall:none;--art-gods-band:none;--art-mural:none;--art-soft:none;--art-buddha:none;--art-monk:none;--art-monk2:none;--art-gods:none;--art-monks1:none;--art-monks2:none;--halo:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cdefs%3E%3CradialGradient id='hg' cx='50%25' cy='50%25' r='50%25'%3E%3Cstop offset='0' stop-color='%23fff3c4' stop-opacity='.95'/%3E%3Cstop offset='.45' stop-color='%23ffd879' stop-opacity='.55'/%3E%3Cstop offset='.8' stop-color='%23f0b34a' stop-opacity='.18'/%3E%3Cstop offset='1' stop-color='%23f0b34a' stop-opacity='0'/%3E%3C/radialGradient%3E%3ClinearGradient id='hl' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff1b8'/%3E%3Cstop offset='.5' stop-color='%23e9bf5f'/%3E%3Cstop offset='1' stop-color='%23a8741f'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='100' cy='100' r='82' fill='url(%23hg)'/%3E%3Cpath d='M93 20.3Q93.1 12.3 98.8 10T102.1 4Q104.2 12.1 104.7 13.1Q107.3 17.3 107 20.3ZM110.9 20.7Q112.8 12.9 118.9 12T123.4 6.9Q123.7 15.2 123.9 16.4Q125.5 21 124.6 23.9ZM128.3 25.2Q131.8 18 138 18.4T143.5 14.4Q142 22.6 141.9 23.8Q142.4 28.7 140.9 31.2ZM144.2 33.3Q149.3 27.1 155.2 28.9T161.5 26.3Q158.1 33.9 157.9 35Q157.2 39.9 155.2 42.1ZM157.9 44.8Q164.3 39.9 169.6 43T176.3 41.8Q171.4 48.5 170.9 49.5Q169.2 54.1 166.7 55.8ZM168.8 59.1Q176 55.7 180.6 59.9T187.4 60.2Q181 65.7 180.3 66.6Q177.6 70.7 174.8 71.7ZM176.1 75.4Q184 73.7 187.5 78.8T194 80.7Q186.6 84.6 185.7 85.3Q182.2 88.7 179.3 89.1ZM179.7 93Q187.7 93.1 190 98.8T196 102.1Q187.9 104.2 186.9 104.7Q182.7 107.3 179.7 107ZM179.3 110.9Q187.1 112.8 188 118.9T193.1 123.4Q184.8 123.7 183.6 123.9Q179 125.5 176.1 124.6ZM174.8 128.3Q182 131.8 181.6 138T185.6 143.5Q177.4 142 176.2 141.9Q171.3 142.4 168.8 140.9ZM166.7 144.2Q172.9 149.3 171.1 155.2T173.7 161.5Q166.1 158.1 165 157.9Q160.1 157.2 157.9 155.2ZM155.2 157.9Q160.1 164.3 157 169.6T158.2 176.3Q151.5 171.4 150.5 170.9Q145.9 169.2 144.2 166.7ZM140.9 168.8Q144.3 176 140.1 180.6T139.8 187.4Q134.3 181 133.4 180.3Q129.3 177.6 128.3 174.8ZM124.6 176.1Q126.3 184 121.2 187.5T119.3 194Q115.4 186.6 114.7 185.7Q111.3 182.2 110.9 179.3ZM107 179.7Q106.9 187.7 101.2 190T97.9 196Q95.8 187.9 95.3 186.9Q92.7 182.7 93 179.7ZM89.1 179.3Q87.2 187.1 81.1 188T76.6 193.1Q76.3 184.8 76.1 183.6Q74.5 179 75.4 176.1ZM71.7 174.8Q68.2 182 62 181.6T56.5 185.6Q58 177.4 58.1 176.2Q57.6 171.3 59.1 168.8ZM55.8 166.7Q50.7 172.9 44.8 171.1T38.5 173.7Q41.9 166.1 42.1 165Q42.8 160.1 44.8 157.9ZM42.1 155.2Q35.7 160.1 30.4 157T23.7 158.2Q28.6 151.5 29.1 150.5Q30.8 145.9 33.3 144.2ZM31.2 140.9Q24 144.3 19.4 140.1T12.6 139.8Q19 134.3 19.7 133.4Q22.4 129.3 25.2 128.3ZM23.9 124.6Q16 126.3 12.5 121.2T6 119.3Q13.4 115.4 14.3 114.7Q17.8 111.3 20.7 110.9ZM20.3 107Q12.3 106.9 10 101.2T4 97.9Q12.1 95.8 13.1 95.3Q17.3 92.7 20.3 93ZM20.7 89.1Q12.9 87.2 12 81.1T6.9 76.6Q15.2 76.3 16.4 76.1Q21 74.5 23.9 75.4ZM25.2 71.7Q18 68.2 18.4 62T14.4 56.5Q22.6 58 23.8 58.1Q28.7 57.6 31.2 59.1ZM33.3 55.8Q27.1 50.7 28.9 44.8T26.3 38.5Q33.9 41.9 35 42.1Q39.9 42.8 42.1 44.8ZM44.8 42.1Q39.9 35.7 43 30.4T41.8 23.7Q48.5 28.6 49.5 29.1Q54.1 30.8 55.8 33.3ZM59.1 31.2Q55.7 24 59.9 19.4T60.2 12.6Q65.7 19 66.6 19.7Q70.7 22.4 71.7 25.2ZM75.4 23.9Q73.7 16 78.8 12.5T80.7 6Q84.6 13.4 85.3 14.3Q88.7 17.8 89.1 20.7Z' fill='url(%23hl)' opacity='.95'/%3E%3Ccircle cx='100' cy='100' r='78' fill='none' stroke='url(%23hl)' stroke-width='3'/%3E%3Ccircle cx='100' cy='100' r='72' fill='none' stroke='url(%23hl)' stroke-width='1.2' stroke-dasharray='1.5 4' stroke-linecap='round'/%3E%3C/svg%3E");--lotus:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 56'%3E%3Cdefs%3E%3ClinearGradient id='lp' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff0f3'/%3E%3Cstop offset='.55' stop-color='%23f6b8c8'/%3E%3Cstop offset='1' stop-color='%23d9708f'/%3E%3C/linearGradient%3E%3ClinearGradient id='lq' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23ffe3ea'/%3E%3Cstop offset='1' stop-color='%23c95f80'/%3E%3C/linearGradient%3E%3ClinearGradient id='lb' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23ffe9a8'/%3E%3Cstop offset='1' stop-color='%23b07a22'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M27 46C15 47 5 41 1 33c10-2 20 3 29 13z' fill='url(%23lq)' stroke='%23b8862e' stroke-width='1.1' stroke-linejoin='round'/%3E%3Cpath d='M37 46C49 47 59 41 63 33c-10-2-20 3-29 13z' fill='url(%23lq)' stroke='%23b8862e' stroke-width='1.1' stroke-linejoin='round'/%3E%3Cpath d='M29 46C17 41 10 29 11 18c10 4 18 14 21 28z' fill='url(%23lp)' stroke='%23b8862e' stroke-width='1.1' stroke-linejoin='round'/%3E%3Cpath d='M35 46C47 41 54 29 53 18c-10 4-18 14-21 28z' fill='url(%23lp)' stroke='%23b8862e' stroke-width='1.1' stroke-linejoin='round'/%3E%3Cpath d='M30 46C22 37 20 23 23 12c7 6 10 19 10 34z' fill='url(%23lp)' stroke='%23b8862e' stroke-width='1.1' stroke-linejoin='round'/%3E%3Cpath d='M34 46C42 37 44 23 41 12c-7 6-10 19-10 34z' fill='url(%23lp)' stroke='%23b8862e' stroke-width='1.1' stroke-linejoin='round'/%3E%3Cpath d='M32 46C25 34 25 17 32 3c7 14 7 31 0 43z' fill='url(%23lp)' stroke='%23b8862e' stroke-width='1.1' stroke-linejoin='round'/%3E%3Cpath d='M13 44c6 5 32 5 38 0-1 6-9 9-19 9s-18-3-19-9z' fill='url(%23lb)' stroke='%23b8862e' stroke-width='1'/%3E%3C/svg%3E")}
.lotus{display:inline-block;flex:none;width:44px;height:38px;background:var(--lotus) center/contain no-repeat}
.center-head .lotus,.lgroup-copy .lotus{display:block;margin:0 auto 6px;width:56px;height:49px;filter:drop-shadow(0 0 12px rgba(255,200,215,.5))}
.promise{background:var(--kanok) repeat-x left top,var(--kanok) repeat-x left bottom,linear-gradient(180deg,rgba(20,13,50,.6),rgba(20,13,50,.8)),var(--art-mural) 50% 16%/cover no-repeat,var(--silkbg)}
.promise::before{content:"";position:absolute;inset:0;background:radial-gradient(40% 60% at 50% 0%,rgba(255,214,130,.35),transparent 70%);pointer-events:none}
.promise .wrap{position:relative}
.ft-lotus{position:absolute;left:50%;top:-24px;transform:translateX(-50%);width:62px;height:54px;filter:drop-shadow(0 0 12px rgba(255,200,215,.45))}
/* 內頁標題：畫作橫幅 */
.page-head{display:flex;align-items:flex-end;min-height:240px;padding:46px 0 40px;background:var(--ph-ov,linear-gradient(90deg,rgba(16,11,44,.92) 0%,rgba(16,11,44,.78) 42%,rgba(16,11,44,.3) 70%,rgba(16,11,44,.12) 100%)),linear-gradient(0deg,rgba(16,11,44,.55),transparent 55%),var(--ph-art,var(--art-mural)) var(--ph-pos,50% 16%)/var(--ph-size,cover) no-repeat,var(--sky-bg)}
.page-head>.wrap{width:100%}
.page-head .crumbs,.page-head .count,.page-head .th{text-shadow:0 1px 3px rgba(0,0,0,.7)}
.page-head::after{content:"";position:absolute;left:0;right:0;bottom:0;height:14px;background:var(--kanok) repeat-x left center;opacity:.85;pointer-events:none}
.ph-monk,.ph-monk2,.ph-buddha,.ph-top,.ph-monks,.ph-monks1{--ph-ov:linear-gradient(90deg,rgba(22,16,52,.97) 0%,rgba(22,16,52,.93) 47%,rgba(22,16,52,.3) 64%,rgba(22,16,52,.08) 100%)}
.ph-monk{--ph-art:var(--art-monk);--ph-pos:100% 16%;--ph-size:52% auto}
.ph-monk2{--ph-art:var(--art-monk2);--ph-pos:100% 20%;--ph-size:52% auto}
.ph-buddha{--ph-art:var(--art-buddha);--ph-pos:100% 21%;--ph-size:48% auto}
.ph-soft{--ph-art:var(--art-soft);--ph-pos:50% 50%}
.ph-top{--ph-art:var(--art-gods);--ph-pos:100% 7%;--ph-size:58% auto}
.ph-monks{--ph-art:var(--art-monks2);--ph-pos:100% 20%;--ph-size:62% auto}
.ph-monks1{--ph-art:var(--art-monks1);--ph-pos:100% 18%;--ph-size:62% auto}
.page-head.red{min-height:0;display:block}
.page-head.red::after{display:none}
/* 下面幾段的背景畫：捲到附近才載入，首頁先載入的東西少很多 */
.js .lazy-bg:not(.bg-in){--art-monks2:none;--art-mural:none}
/* 首頁師父專區：高僧群像 */
.band-sky.has-art{background:var(--kanok) repeat-x left bottom,linear-gradient(90deg,rgba(18,12,46,.94) 0%,rgba(18,12,46,.84) 40%,rgba(18,12,46,.6) 100%),linear-gradient(0deg,rgba(18,12,46,.6),transparent 40%),var(--art-monks2) 50% 28%/cover no-repeat,var(--sky-bg)}
/* S 佛牌標誌：頁首、頁尾的 logo */
.logo-img{border-radius:50%;object-fit:cover;box-shadow:0 0 0 1.5px #ecd08a,0 0 0 3px rgba(20,14,48,.9),0 0 12px rgba(255,210,120,.55)}
.hd .logo-img{width:40px;height:40px}.ft-brand .logo-img{width:52px;height:52px}
/* 首頁最上面：師父合照照片牆（每排慢慢移動），中間金線橫帶放標題 */
.hero-wall{position:relative;background:#120c2a}
.hero-wall::before,.hero-wall::after{display:none}
.wall{position:absolute;inset:0;z-index:0;display:flex;flex-direction:column;justify-content:center;--s:1;--rh:calc(var(--wall-rh) * var(--s));--pw:calc(var(--wall-w) * var(--s))}
.wall::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,10,40,.55),rgba(16,10,40,.08) 24%,rgba(16,10,40,.08) 76%,rgba(16,10,40,.62))}
.wall-row{flex:none;height:var(--rh);overflow:hidden}
.wall-track{height:100%;width:calc(var(--pw) * 3);background:var(--art-wall) 0 calc(var(--rh) * var(--r) * -1)/var(--pw) calc(var(--rh) * 6) repeat-x;animation:wallSlide 110s linear infinite;will-change:transform}
.wall-row:nth-child(even) .wall-track{animation-direction:reverse}
@keyframes wallSlide{to{transform:translateX(calc(var(--pw) * -1))}}
.hero-wall .hero-in{display:flex;align-items:center;justify-content:center;max-width:none;min-height:min(88vh,760px);padding:150px 0}
.hero-wall .hero-text{position:relative;width:100%;padding:22px 20px 26px;background:linear-gradient(180deg,rgba(22,13,46,.8),rgba(28,15,52,.9) 50%,rgba(22,13,46,.8));box-shadow:0 0 80px rgba(0,0,0,.55)}
.hero-wall .kicker{margin-bottom:8px}
.hero-wall .hero-text::before,.hero-wall .hero-text::after{content:"";position:absolute;left:0;right:0;height:7px;background:linear-gradient(180deg,#f6dc96 0 2px,rgba(22,13,46,.9) 2px 5px,#b07c2c 5px 7px)}
.hero-wall .hero-text::before{top:-7px}.hero-wall .hero-text::after{bottom:-7px;transform:scaleY(-1)}
.hero-wall .hero-h{font-size:38px;line-height:1.32}
.hero-wall .hero-h span{display:inline}.hero-wall .hero-h span:last-child{display:block;font-size:1.42em;line-height:1.25}
.hero-wall .hero-sub{max-width:40em;margin:10px auto 20px;font-size:18px}
.hero.no-art .hero-in{grid-template-columns:1fr}
/* 師父：金色光環 */
.mchip{background:var(--halo) no-repeat 50% -14px/160px 160px}
.mchip .mphoto{margin-bottom:24px}
.mgrid .mchip{padding-top:2px}
/* 三個承諾：光環裡的蓮花 */
.pmotif{width:92px;height:92px;margin:-14px auto 2px;border-radius:0;background:var(--halo) center/contain no-repeat;box-shadow:none}
.pmotif .lotus{width:46px;height:40px;margin-top:4px}
/* 跑廟紀實：油畫 */
.about-teaser.has-art>div{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:center}
.teaser-art{margin:0;padding:10px;background:var(--goldleaf);box-shadow:0 0 0 1px #4a2a06,inset 0 0 0 1px rgba(255,248,220,.6),0 0 40px rgba(255,214,130,.35),0 18px 36px rgba(30,20,50,.3)}
.teaser-art img{width:100%;aspect-ratio:5/4;object-fit:cover;object-position:50% 18%}
@media (max-width:820px){
 .page-head{min-height:190px;padding:30px 0 30px}
 .ph-monk,.ph-monk2,.ph-buddha{--ph-size:cover;--ph-pos:72% 14%}
 .ph-top{--ph-size:cover;--ph-pos:50% 6%}
 .ph-monks,.ph-monks1{--ph-size:cover;--ph-pos:55% 18%}
 .about-teaser.has-art>div{grid-template-columns:1fr;gap:20px}
 .wall{--s:.66}.hero-wall .hero-in{min-height:0;padding:150px 0 124px}.hero-wall .hero-text{padding:18px 14px 20px}
 .hero-wall .hero-h{font-size:25px}.hero-wall .hero-h span{display:block}.hero-wall .hero-h span:last-child{font-size:1.32em}.hero-wall .hero-sub{font-size:14.5px;margin:8px auto 14px}.hero-wall .kicker .th{display:none}
 .hd .logo-img{width:34px;height:34px}
 .mchip{background-position:50% -14px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.wall-track{animation:none}}
