:root{--red:#8C0A12;--deep:#4A0404;--gold:#D4AF37;--gl:#FFD700;--ink:#121212;--ivory:#FDFBF7;--ease:cubic-bezier(.2,.7,.2,1);--spring:cubic-bezier(.3,1.4,.5,1);box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-behavior:smooth;scroll-padding-top:72px;height:100%;scrollbar-gutter:stable;-webkit-tap-highlight-color:transparent}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at top,#4A0404 0,#0F0B0B 62%) fixed;color:var(--ivory);font:16px/1.7 'Manjari','Inter',sans-serif}
::selection{background:var(--gold);color:#2a0000}
::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#121212}::-webkit-scrollbar-thumb{background:linear-gradient(var(--gold),var(--red));border-radius:6px}
:focus-visible{outline:2px solid var(--gl);outline-offset:3px;border-radius:8px}
h1,h2,h3{font-family:'Cinzel','Manjari',serif;margin:0;line-height:1.25}
.en h1,.en h2,.en h3{font-family:'Cinzel',serif}
.gold{color:var(--gold)}
#embers{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;background:#070505}
main,footer{position:relative;z-index:1}
#app.sw{animation:sw .5s var(--ease)}
@keyframes sw{from{opacity:0;filter:blur(8px)}}

/* NAV */
nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid rgba(212,175,55,.3);transition:padding .3s,box-shadow .3s}
nav:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(18,18,18,.7);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .3s}
nav.sc{padding-block:6px;box-shadow:0 8px 30px rgba(0,0,0,.45)}nav.sc:before{background:rgba(18,18,18,.92)}
nav b{font-family:'Cinzel',serif;color:var(--gold);letter-spacing:.08em}
.bar{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:linear-gradient(90deg,var(--red),var(--gl));transform-origin:0 50%;transform:scaleX(0);box-shadow:0 0 10px var(--gl);pointer-events:none}
.links{display:flex;gap:6px;align-items:center}
.links a{position:relative;color:var(--ivory);text-decoration:none;padding:6px 12px;border-radius:99px;font-size:14px;transition:.3s}
.links a:after{content:"";position:absolute;left:50%;bottom:1px;width:0;height:2px;border-radius:2px;background:var(--gl);transform:translateX(-50%);transition:width .35s var(--spring)}
.links a:hover,.links a.on{background:rgba(212,175,55,.18);color:var(--gl);box-shadow:0 0 14px rgba(255,215,0,.3)}
.links a.on:after{width:36%}
.btn,.tab,.chip,.pn{position:relative;overflow:hidden}
.btn{background:linear-gradient(135deg,var(--gold),#a8841f);color:#2a0000;border:0;padding:8px 16px;border-radius:99px;font:700 14px 'Inter',sans-serif;cursor:pointer;text-decoration:none;display:inline-block;transition:.3s var(--ease)}
.btn:hover{box-shadow:0 0 22px rgba(255,215,0,.6);transform:translateY(-2px)}
.btn:active,.tab:active,.chip:active,.pn:active{transform:scale(.95)}
.rip{position:absolute;border-radius:50%;background:rgba(255,255,255,.5);transform:scale(0);animation:rip .65s ease-out forwards;pointer-events:none}
@keyframes rip{to{transform:scale(1);opacity:0}}
.burger{display:none;position:relative;z-index:2;background:none;border:1px solid var(--gold);color:var(--gold);border-radius:8px;padding:8px 9px;cursor:pointer}
.burger i{display:block;width:20px;height:2px;margin:4px 0;border-radius:2px;background:var(--gold);transition:.35s var(--ease)}
.burger[aria-expanded=true] i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded=true] i:nth-child(2){opacity:0;transform:scaleX(0)}
.burger[aria-expanded=true] i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.scrim{position:fixed;inset:0;z-index:19;background:rgba(0,0,0,.55);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .35s}
@media(max-width:820px){
 .burger{display:block}
 .links{position:fixed;inset:0 0 0 auto;width:min(80vw,300px);flex-direction:column;align-items:stretch;padding:80px 20px;background:#1a0505;transform:translateX(100%);visibility:hidden;transition:transform .4s var(--ease),visibility 0s .4s;border-left:1px solid var(--gold)}
 .links a{font-size:18px;opacity:0;transform:translateX(24px);transition:opacity .4s var(--ease),transform .4s var(--ease),background .3s,color .3s}
 .menu .links{transform:none;visibility:visible;transition:transform .4s var(--ease)}
 .menu .links a,.menu .links .btn{opacity:1;transform:none}
 .menu .links>*:nth-child(1){transition-delay:.12s}.menu .links>*:nth-child(2){transition-delay:.18s}.menu .links>*:nth-child(3){transition-delay:.24s}.menu .links>*:nth-child(4){transition-delay:.3s}
 .menu .scrim{opacity:1;pointer-events:auto}
 .links .btn{opacity:0;transform:translateX(24px)}
}

/* LAYOUT */
section{max-width:1080px;margin:0 auto;padding:80px 20px}
.hero{min-height:88vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative}
.hero:before{content:"";position:absolute;width:520px;height:520px;max-width:90vw;border-radius:50%;background:radial-gradient(circle,rgba(255,215,0,.22),transparent 65%);z-index:-1;animation:pulse 5s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.15);opacity:.7}}
.orn{color:var(--gold);letter-spacing:.5em;font-size:20px;text-shadow:0 0 14px rgba(255,215,0,.6)}
.hero h1{font-size:clamp(30px,6vw,64px);background:linear-gradient(90deg,var(--gold),var(--gl),var(--gold),var(--gl),var(--gold));background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;margin:14px 0;animation:sheen 7s linear infinite}
@keyframes sheen{to{background-position:100% 0}}
.hero h2{font-size:clamp(18px,3vw,28px);font-weight:500;color:var(--ivory)}
.pill{display:inline-block;margin:6px;padding:8px 18px;border:1px solid var(--gold);border-radius:99px;background:rgba(136,4,12,.35);backdrop-filter:blur(8px);transition:.3s var(--ease)}
@media(hover:hover){.pill:hover{transform:translateY(-2px);box-shadow:0 0 18px rgba(255,215,0,.3)}}
.cdl{margin-top:22px;color:var(--gold);font-size:14px;letter-spacing:.12em;text-transform:uppercase}
.cd{display:flex;gap:10px;justify-content:center;margin-top:8px}
.cd>div{min-width:70px;padding:10px 8px 8px;border:1px solid rgba(212,175,55,.45);border-radius:14px;background:rgba(136,4,12,.35);backdrop-filter:blur(8px)}
.cd b{display:block;font:700 28px/1.2 'Cinzel',serif;color:var(--gl);font-variant-numeric:tabular-nums}
.cd span{font-size:12px;letter-spacing:.08em;color:var(--gold)}
.cd.msg{display:block;padding:12px 22px;border:1px solid var(--gl);border-radius:99px;background:rgba(136,4,12,.4);color:var(--gl);font-weight:700}
.note{margin-top:28px;max-width:760px;background:var(--ivory);color:#2b1a1a;padding:24px 28px;border-radius:14px;border:2px solid var(--gold);font-family:'Playfair Display','Manjari',serif;text-align:left;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.sec-h{text-align:center;margin-bottom:40px}.sec-h h2{font-size:clamp(26px,4vw,40px);color:var(--gold)}
.sec-h i{display:block;width:120px;height:2px;margin:14px auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transition:transform 1.1s var(--ease) .3s}.sec-h.in i{transform:none}

/* TABS + TIMELINE */
.tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:28px}
.tab{background:rgba(255,255,255,.05);border:1px solid rgba(212,175,55,.4);color:var(--ivory);padding:10px 20px;border-radius:12px;cursor:pointer;font:inherit;transition:.3s var(--ease)}
@media(hover:hover){.tab:hover{border-color:var(--gl);transform:translateY(-2px)}}
.tab.on{background:linear-gradient(135deg,var(--red),var(--deep));border-color:var(--gl);box-shadow:0 0 20px rgba(255,215,0,.35);color:var(--gl)}
.tl{border-left:2px solid var(--gold);margin-left:10px;padding-left:24px;display:grid;gap:16px}
.ev{position:relative;padding:16px 20px}
.ev{overflow:visible}
.ev:after{content:"";position:absolute;left:-36px;top:14px;width:22px;height:22px;border-radius:50%;background:var(--img,none) center/cover no-repeat,var(--gl);border:2px solid var(--gold);box-shadow:0 0 14px rgba(255,215,0,.45);transition:.45s var(--spring)}
.ev:hover:after{transform:scale(1.35) rotate(10deg);box-shadow:0 0 24px var(--gl)}
.time{font:700 15px 'Cinzel',serif;color:var(--gl)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.chip{font:500 13px 'Manjari','Inter',sans-serif;color:var(--gl);background:rgba(212,175,55,.12);border:1px solid rgba(212,175,55,.4);border-radius:99px;padding:2px 12px;cursor:pointer;transition:.25s var(--ease)}
@media(hover:hover){.chip:hover{background:var(--gold);color:#2a0000;transform:translateY(-2px)}}

/* CARDS + REVEAL */
.rv{opacity:0;translate:0 28px;transition:opacity 1s var(--ease) var(--dl,0s),translate 1s var(--ease) var(--dl,0s)}
.rv.in{opacity:1;translate:none}
.card{position:relative;overflow:hidden;background:rgba(255,255,255,.06);backdrop-filter:blur(10px);border:1px solid rgba(212,175,55,.3);border-radius:16px;transition:border-color .35s,box-shadow .35s,transform .25s var(--ease)}
.card.rv{transition:opacity .9s var(--ease) var(--dl,0s),translate .9s var(--ease) var(--dl,0s),border-color .35s,box-shadow .35s,transform .25s var(--ease)}
.card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(260px circle at var(--x,50%) var(--y,50%),rgba(255,215,0,.22),rgba(136,4,12,.18) 45%,transparent 70%);opacity:0;transition:.3s;pointer-events:none;z-index:1}
.card:active:before{opacity:1}
@media(hover:hover){.card:hover{border-color:var(--gl);box-shadow:0 0 28px rgba(212,175,55,.4);transform:translateY(-3px)}.card:hover:before{opacity:1}}
@keyframes glow{0%,100%{box-shadow:0 0 18px rgba(255,215,0,.2)}50%{box-shadow:0 0 50px rgba(255,215,0,.55)}}
@keyframes flick{0%,100%{transform:scale(1) rotate(0)}30%{transform:scale(1.14) rotate(-4deg)}60%{transform:scale(.96) rotate(3deg)}}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}
.deity{cursor:pointer;text-align:center;padding-bottom:18px;font:inherit;color:inherit;width:100%}
@media(hover:hover) and (pointer:fine){
 .deity{transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
 .deity:hover{transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-6px)}
}
.deity:active{transform:scale(.97)}
.ph{position:relative;overflow:hidden;aspect-ratio:4/5;margin-bottom:14px;display:grid;place-items:center;background:repeating-linear-gradient(45deg,#2a0606,#2a0606 10px,#350909 10px,#350909 20px);color:var(--gold);font-size:46px}
.ph .fb{transition:opacity .5s;animation:flick 2.4s ease-in-out infinite}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;opacity:0;transform:scale(1.12);transition:opacity .7s,transform .9s var(--ease)}
.ph.ld img{opacity:1;transform:none}.ph.ld .fb{opacity:0}.ph.err img{display:none}
.ph:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,215,0,.16) 50%,transparent 70%);background-size:200% 100%;animation:shim 1.5s linear infinite}
.ph.ld:after,.ph.err:after,.ph.noimg:after{display:none}
@keyframes shim{from{background-position:200% 0}to{background-position:-100% 0}}
.ph.ld:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(transparent 55%,rgba(18,18,18,.6));pointer-events:none}
.ph .go{position:absolute;right:10px;bottom:10px;z-index:2;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:700 20px/1 'Inter',sans-serif;color:var(--gl);background:rgba(18,18,18,.7);border:1px solid var(--gold);opacity:0;transform:translateY(8px) scale(.7);transition:.35s var(--spring)}
@media(hover:hover){.deity:hover .ph.ld img{transform:scale(1.1)}.deity:hover .go,.deity:focus-visible .go{opacity:1;transform:none}}
@media(hover:none){.ph .go{opacity:.9;transform:none}}
.deity h3{font-size:18px;padding:0 12px;color:var(--ivory)}.deity small{color:var(--gold);display:block;margin-top:4px}

/* MODAL */
.modal{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.8);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s}
.modal.on{opacity:1;visibility:visible;transition:opacity .3s}
.mb{max-width:760px;width:100%;max-height:88vh;overflow:auto;overscroll-behavior:contain;background:var(--ivory);color:#2b1a1a;border:3px solid var(--gold);border-radius:18px;padding:28px;position:relative;outline:0;transform:translateY(34px) scale(.95);transition:transform .45s var(--spring)}
.modal.on .mb{transform:none}
.mb h3{color:var(--red);font-size:26px;padding-right:84px}.mb .ep{color:#8a6d1a;font-style:italic;margin-bottom:12px}
.mb p{white-space:pre-line}.verse{white-space:pre-line;border-left:4px solid var(--gold);background:#f6edd0;padding:12px 18px;margin:16px 0;font-style:italic}
.src{font-size:14px;opacity:.75}
.mb.wide{max-width:900px}
.mgrid{display:grid;gap:22px;grid-template-columns:1fr}
.mimg{position:relative;display:block;width:min(100%,320px);aspect-ratio:4/5;margin:0 auto;border-radius:14px;overflow:hidden;border:2px solid var(--gold);background:repeating-linear-gradient(45deg,#2a0606,#2a0606 10px,#350909 10px,#350909 20px);cursor:zoom-in;box-shadow:0 10px 30px rgba(74,4,4,.35)}
.mimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity .7s,transform 1.2s var(--ease)}
.mimg.ld img{opacity:1;transform:none}.mimg.err{display:none}
.mimg:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,215,0,.18) 50%,transparent 70%);background-size:200% 100%;animation:shim 1.5s linear infinite;pointer-events:none}
.mimg.ld:after{display:none}
.zm{position:absolute;right:10px;bottom:10px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(18,18,18,.7);color:var(--gl);border:1px solid var(--gold);opacity:0;transform:scale(.7);transition:.35s var(--spring)}
.mimg:hover .zm,.mimg:focus-visible .zm{opacity:1;transform:none}
@media(hover:none){.zm{opacity:.9;transform:none}}
@media(min-width:760px){.mb.wide .mgrid{grid-template-columns:290px 1fr;align-items:start;gap:28px}.mb.wide .mimg{position:sticky;top:0;width:100%}}
.hero h1{line-height:1.5;padding:.1em .08em .22em;text-wrap:balance;font-size:clamp(28px,6vw,60px)}
.ml .hero h1{line-height:1.65;padding-block:.14em .26em}
.hero h2{margin-top:.5em;line-height:1.5}
a.pill{color:inherit;text-decoration:none}
a.pill.pl{border-color:var(--gl);color:var(--gl);font-weight:700;font-size:1.06em;box-shadow:0 0 20px rgba(255,215,0,.2)}
.pin{display:inline-block;animation:bob 1.8s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-4px)}}
.pl .ar{display:inline-block;transition:transform .3s var(--spring)}
@media(hover:hover){a.pill:hover{box-shadow:0 0 22px rgba(255,215,0,.45)}.pl:hover .ar{transform:translateY(4px)}}
.venue-intro{max-width:760px;margin:-12px auto 30px;text-align:center;font-size:18px}
.venue-intro a,footer a{color:var(--gl);text-decoration:underline dotted;text-underline-offset:4px;transition:.25s}
.venue-intro a:hover,footer a:hover{color:#fff;text-shadow:0 0 14px var(--gl)}
.venue{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;align-items:stretch}
@media(max-width:860px){.venue{grid-template-columns:1fr}}
.mapbox{position:relative;min-height:400px;border-radius:18px;overflow:hidden;border:2px solid var(--gold);box-shadow:0 0 40px rgba(212,175,55,.2);background:repeating-linear-gradient(45deg,#2a0606,#2a0606 10px,#350909 10px,#350909 20px)}
.mapbox iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mapov{position:absolute;inset:0;z-index:2;display:grid;place-items:end center;padding:16px;border:0;cursor:pointer;color:var(--ivory);font:600 14px 'Inter','Manjari',sans-serif;background:linear-gradient(transparent 55%,rgba(18,18,18,.55));transition:opacity .4s}
.mapov span{padding:8px 18px;border-radius:99px;background:rgba(18,18,18,.78);border:1px solid var(--gold);backdrop-filter:blur(6px);transition:.3s var(--spring)}
.mapov:hover span{transform:translateY(-3px);box-shadow:0 0 18px rgba(255,215,0,.4)}
.mapov.off{opacity:0;pointer-events:none}
.vside{display:grid;gap:14px;align-content:start}
.vaddr{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:16px}
.vpin{font-size:28px;animation:bob 1.8s ease-in-out infinite}
.vaddr b{color:var(--gl);font-family:'Cinzel','Manjari',serif;line-height:1.5;display:block}
.vbtns{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.vbtns .btn{font-size:13px;padding:8px 14px}
.btn.alt{background:none;border:1px solid var(--gold);color:var(--gl)}
.fact{display:grid;grid-template-columns:52px 1fr;gap:14px;padding:16px;align-items:start}
.fact .ic{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:26px;background:rgba(212,175,55,.12);border:1px solid rgba(212,175,55,.4);transition:transform .4s var(--spring)}
@media(hover:hover){.fact:hover .ic{transform:rotate(-8deg) scale(1.12)}}
.fact small{display:block;color:var(--gold);font-size:12px;letter-spacing:.06em}
.fact a{color:var(--ivory);font-weight:700;text-decoration:none;border-bottom:1px dotted var(--gold);transition:.25s}
.fact a:hover{color:var(--gl);border-bottom-color:var(--gl)}
.kmb{display:inline-block;margin-top:8px;padding:2px 12px;border-radius:99px;background:var(--gold);color:#2a0000;font:700 13px 'Inter','Manjari',sans-serif}
.fact p{margin:8px 0 0;font-size:14px;opacity:.85}
.thl{font:inherit;color:var(--gl);background:none;border:0;border-bottom:1px dotted var(--gold);padding:0;cursor:pointer;text-align:inherit;transition:color .25s,text-shadow .25s,border-color .25s}
.thl sup{display:inline-grid;place-items:center;width:14px;height:14px;margin-left:3px;border:1px solid var(--gold);border-radius:50%;font:700 9px/1 'Inter',sans-serif;position:relative;top:-.45em;vertical-align:baseline;transition:.4s var(--spring)}
@media(hover:hover){.thl:hover{color:#fff;border-bottom-color:#fff;text-shadow:0 0 12px var(--gl)}.thl:hover sup{background:var(--gold);color:#2a0000;transform:scale(1.3) rotate(360deg)}}
.thl:active{transform:scale(.97)}
nav b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 64px);font-size:clamp(14px,3.8vw,19px);letter-spacing:.04em;font-family:'Cinzel','Manjari',serif}
.ml nav b{font-family:'Manjari',sans-serif;font-weight:700;letter-spacing:0}
.appeal p{white-space:pre-line}
footer .credit{margin-top:10px;font-size:13px;color:var(--ivory);opacity:.8;font-family:'Manjari','Inter',sans-serif}
button.mimg{padding:0;font:inherit;color:inherit}
.ph img,.mimg img,.lbimg img{-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}
.lightbox{position:fixed;inset:0;z-index:70;display:grid;place-items:center;padding:16px;background:rgba(0,0,0,.9);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s}
.lightbox.on{opacity:1;visibility:visible;transition:opacity .3s}
.lbf{position:relative;margin:0;padding:10px 10px 0;max-width:min(94vw,980px);background:#1a0505;border:2px solid var(--gold);border-radius:18px;box-shadow:0 0 70px rgba(212,175,55,.3);transform:scale(.92) translateY(24px);transition:transform .5s var(--spring)}
.lightbox.on .lbf{transform:none}
.lbimg{position:relative;width:min(calc(94vw - 24px),calc((100vh - 150px)*.8),640px);width:min(calc(94vw - 24px),calc((100dvh - 150px)*.8),640px);aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:repeating-linear-gradient(45deg,#2a0606,#2a0606 10px,#350909 10px,#350909 20px)}
.lbimg:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,215,0,.16) 50%,transparent 70%);background-size:200% 100%;animation:shim 1.5s linear infinite;pointer-events:none}
.lightbox.ld .lbimg:after{display:none}
.lbimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.03);transition:opacity .5s,transform .8s var(--ease)}
.lightbox.ld .lbimg img{opacity:1;transform:none}
.lbf figcaption{padding:12px 16px 14px;text-align:center;color:var(--gl);font:700 16px 'Cinzel','Manjari',serif}
.lbx{position:absolute;right:18px;top:18px;z-index:3;width:38px;height:38px;border-radius:50%;background:rgba(253,251,247,.92);border:1px solid rgba(212,175,55,.6);font-size:26px;line-height:1;color:var(--red);cursor:pointer;transition:.3s var(--spring)}
.lbx:hover{transform:rotate(90deg) scale(1.1);background:#fff}
.strip{position:relative;display:flex;justify-content:center;gap:clamp(8px,2.2vw,14px);max-width:600px;margin:0 auto;padding:2px 16px}
.strip:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.55}
.strip span{position:relative;flex:0 0 auto;width:clamp(14px,3.2vw,20px);aspect-ratio:1;border-radius:50%;border:1.5px solid var(--gold);background:var(--img) center/cover no-repeat,radial-gradient(circle,var(--red),var(--deep));box-shadow:0 0 8px rgba(136,4,12,.5);opacity:0;scale:.4;transition:opacity .6s var(--ease) calc(var(--i)*70ms),scale .7s var(--spring) calc(var(--i)*70ms),transform .35s var(--spring),box-shadow .3s}
.strip.in span{opacity:1;scale:1;animation:bead 4.8s ease-in-out calc(var(--i)*.45s) infinite}
@keyframes bead{50%{translate:0 -3px}}
@media(hover:hover){.strip span:hover{transform:scale(1.7) rotate(8deg);z-index:2;box-shadow:0 0 22px rgba(255,215,0,.6)}}
.strip.mini span{width:clamp(12px,2.8vw,16px);border-width:1px}
.strip.mini{margin-bottom:14px}
.cta .row+.row{margin-top:12px}
nav b{display:flex;align-items:center;gap:9px}
nav b span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.bi{flex:0 0 auto;width:22px;height:22px;object-fit:cover;border-radius:4px;border:1px solid var(--gold);box-shadow:0 0 8px rgba(255,215,0,.35);transition:transform .4s var(--spring)}
nav b:hover .bi{transform:rotate(-8deg) scale(1.12)}
.orn{display:flex;gap:10px;align-items:center;justify-content:center;font-size:0;letter-spacing:0}
.orn span{display:block;width:12px;aspect-ratio:1;border-radius:50%;border:1px solid var(--gold);background:var(--img) center/cover no-repeat,var(--deep);box-shadow:0 0 8px rgba(255,215,0,.45);animation:bead 4.8s ease-in-out infinite}
.orn .mid{width:16px;animation-delay:.5s}
.orn span:last-child{animation-delay:1s}
.ev.ft{background:linear-gradient(135deg,rgba(255,179,0,.20),rgba(136,4,12,.30));border-color:rgba(255,179,0,.65)}
.ev.ft .time{color:#FFB300}
.ev.ft:after{content:"🍛";display:grid;place-items:center;font-size:13px;background:#FFB300;border-color:#FFE082;box-shadow:0 0 16px rgba(255,179,0,.6)}
.cta .row{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:10px}
.cta .row+.row{margin-top:14px}
.cta a{font-size:clamp(20px,6vw,26px);letter-spacing:.06em;white-space:nowrap;font-variant-numeric:tabular-nums}
.cd>div{min-width:120px;padding:12px 18px 10px}
.cd b{font-size:44px}
.deity .ph{border-radius:12px;border:1px solid rgba(212,175,55,.55);box-shadow:0 6px 18px rgba(0,0,0,.4)}
.deity{display:flex;flex-direction:column;align-items:stretch;padding:10px 10px 16px}
.deity .ph{width:100%;margin:0 0 12px}
.deity h3{display:grid;place-items:center;min-height:2.7em;line-height:1.35;padding:0 6px}
.deity small{display:inline-block;align-self:center;margin-top:10px;padding:4px 14px;border:1px solid rgba(212,175,55,.55);border-radius:99px;font-size:12.5px;letter-spacing:.02em;transition:.3s var(--ease)}
.deity small:after{content:" →";display:inline-block;transition:transform .3s var(--spring)}
@media(hover:hover){.deity:hover small{background:var(--gold);color:#2a0000;border-color:var(--gold)}.deity:hover small:after{transform:translateX(4px)}}
.mcol{width:min(100%,320px);margin:0 auto}
.mcol .mimg{width:100%;margin:0}
.pc{margin-top:8px;text-align:center;font-size:12px;color:#8a6d1a;opacity:.9}
@media(min-width:760px){.mb.wide .mcol{position:sticky;top:0;width:100%}.mb.wide .mimg{position:relative}}
.lbf figcaption small{display:block;margin-top:2px;font:500 12px 'Manjari','Inter',sans-serif;color:var(--ivory);opacity:.7}
.vsw{display:flex;gap:6px;margin-top:10px}
.vsw button{flex:1;padding:6px 10px;border-radius:99px;border:1px solid var(--red);background:none;color:var(--red);font:600 13px 'Manjari','Inter',sans-serif;cursor:pointer;transition:.3s var(--ease)}
.vsw button.on{background:var(--red);color:var(--gl);box-shadow:0 0 12px rgba(136,4,12,.4)}
@media(hover:hover){.vsw button:not(.on):hover{background:rgba(136,4,12,.1);transform:translateY(-1px)}}
.hint{text-align:center;font-size:13px;color:var(--gold);opacity:.9;margin:-6px 0 20px}
.x{position:absolute;right:14px;top:12px;z-index:3;width:36px;height:36px;border-radius:50%;background:rgba(253,251,247,.92);border:1px solid rgba(212,175,55,.6);font-size:24px;line-height:1;color:var(--red);cursor:pointer;transition:.3s var(--spring)}
.x:hover{transform:rotate(90deg) scale(1.1);background:#fff}
.mlg{position:absolute;right:58px;top:12px;z-index:3;height:36px;padding:0 12px;border-radius:99px;background:rgba(253,251,247,.92);border:1px solid rgba(212,175,55,.6);color:var(--red);font:700 13px 'Inter',sans-serif;cursor:pointer;transition:.25s var(--ease)}
.mlg:hover{background:var(--red);color:var(--gl)}
.mb .btn{margin-top:14px;background:linear-gradient(135deg,var(--red),var(--deep));color:var(--gl)}
.mnav{display:flex;gap:10px;margin-top:24px;padding-top:16px;border-top:1px solid rgba(212,175,55,.5)}
.pn{flex:1;min-width:0;padding:10px 14px;border-radius:12px;border:1px solid var(--red);background:none;color:var(--red);font:inherit;font-size:14px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:.3s var(--ease)}
.pn:first-child{text-align:left}.pn:last-child{text-align:right}
@media(hover:hover){.pn:hover{background:var(--red);color:var(--gl);transform:translateY(-2px)}}

/* APPEAL / CTA */
.appeal{padding:44px 28px;text-align:center;border-radius:20px;background:linear-gradient(160deg,rgba(136,4,12,.55),rgba(18,18,18,.8));border:1px solid var(--gold)}
.appeal p{max-width:700px;margin:16px auto}
.cta{margin-top:24px;display:inline-block;padding:20px 32px;border:2px dashed var(--gl);border-radius:16px;background:rgba(0,0,0,.35);animation:ring 3s ease-out infinite}
@keyframes ring{0%{box-shadow:0 0 0 0 rgba(255,215,0,.4)}70%,100%{box-shadow:0 0 0 18px rgba(255,215,0,0)}}
.cta .row{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:6px}
.cta a{font:700 26px 'Cinzel',serif;color:var(--gl);text-decoration:none;transition:.3s}
.cta a:hover{text-shadow:0 0 18px var(--gl)}
footer{text-align:center;padding:30px 20px 50px;color:var(--gold);opacity:.8;font-size:14px}

/* FLOATING */
.top{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:30;width:46px;height:46px;border:0;border-radius:50%;padding:0;cursor:pointer;color:var(--gl);font:700 20px 'Inter',sans-serif;background:conic-gradient(var(--gl) calc(var(--p,0)*1%),rgba(212,175,55,.25) 0);opacity:0;transform:translateY(20px) scale(.8);pointer-events:none;transition:opacity .4s,transform .4s var(--spring),box-shadow .3s}
.top:before{content:"";position:absolute;inset:3px;border-radius:50%;background:#2a0505}
.top span{position:relative;display:block;transition:transform .3s var(--spring)}
.top.on{opacity:1;transform:none;pointer-events:auto}
.top:hover{box-shadow:0 0 22px rgba(255,215,0,.55)}.top:hover span{transform:translateY(-3px)}
.toast{position:fixed;left:50%;bottom:calc(26px + env(safe-area-inset-bottom,0px));z-index:80;transform:translate(-50%,24px) scale(.9);opacity:0;pointer-events:none;background:var(--ivory);color:#2a0000;border:2px solid var(--gold);padding:10px 22px;border-radius:99px;font:700 14px 'Inter','Manjari',sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.5);transition:.45s var(--spring)}
.toast.on{opacity:1;transform:translate(-50%,0) scale(1)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;translate:none}.sec-h i{transform:none}}

.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ivory);color:#2a0000;padding:8px 14px;border-radius:8px;font:700 14px 'Inter','Manjari',sans-serif;text-decoration:none;transition:top .2s}
.skip:focus{top:12px}
.links a.btn{color:#2a0000;padding:8px 16px;font:700 14px 'Inter',sans-serif;text-align:center;background:linear-gradient(135deg,var(--gold),#a8841f);box-shadow:none}
.links a.btn:after{display:none}
.links a.btn:hover{color:#2a0000;background:linear-gradient(135deg,var(--gold),#a8841f);box-shadow:0 0 22px rgba(255,215,0,.6)}
