:root{--ink:#151816;--ink-2:#22261f;--ink-3:#30352b;--paper:#f2ecdf;--paper-2:#e9e0cf;--paper-3:#ddd2bd;--gold:#b48d4f;--gold-2:#d8b878;--gold-3:#f0dcb2;--jade:#2e5a4b;--jade-2:#6f9484;--clay:#9a5a40;--plum:#675179;--muted:#6f6a5d;--muted-2:#8d8779;--line:rgba(30,32,26,0.14);--line-dark:rgba(242,236,223,0.16);--serif:"Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,"Songti SC","Noto Serif CJK SC","Source Han Serif SC",serif;--sans:"Avenir Next","Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;--shadow:0 18px 50px rgba(20,24,20,0.09);--shadow-soft:0 8px 26px rgba(20,24,20,0.07);--radius:18px;--max:1240px}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(circle at 12% 0,rgba(216,184,120,.13),transparent 30rem),radial-gradient(circle at 88% 18%,rgba(46,90,75,.08),transparent 34rem),var(--paper);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:rgba(180,141,79,.3);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}h1,h2,h3,h4,p{margin:0}.serif,h1,h2,h3,h4{font-family:var(--serif);font-weight:500;letter-spacing:-.02em;line-height:1.12}h1{font-size:clamp(2.8rem,6vw,5.5rem)}h2{font-size:clamp(2rem,3.6vw,3.4rem)}h3{font-size:clamp(1.25rem,2vw,1.65rem)}p{color:var(--ink-2)}.container{width:min(var(--max),calc(100% - 48px));margin:0 auto}.container-narrow{width:min(820px,calc(100% - 48px));margin:0 auto}.section{padding:92px 0}.section-tight{padding:56px 0}.section-dark{background:var(--ink);color:var(--paper)}.section-dark p{color:rgba(242,236,223,.72)}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-weight:600}.eyebrow:before{content:"";width:26px;height:1px;background:var(--gold)}.section-dark .eyebrow{color:var(--gold-2)}.display{font-family:var(--serif);font-weight:500;letter-spacing:-.025em}.lede{font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.8;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:40px}.section-head h2{margin-top:12px}.section-head p{max-width:460px;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--ink);border-bottom:1px solid var(--gold);padding-bottom:2px;white-space:nowrap}.text-link:hover{color:var(--gold)}.muted{color:var(--muted)}.gold{color:var(--gold)}.small{font-size:.82rem}.skip-link{position:absolute;left:16px;top:-80px;z-index:200;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:999px}.skip-link:focus{top:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:600;font-size:.88rem;letter-spacing:.01em;transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--ink-3)}.btn-gold{background:var(--gold);color:var(--ink)}.btn-gold:hover{background:var(--gold-2)}.btn-outline{border-color:var(--line);background:transparent;color:var(--ink)}.btn-outline:hover{border-color:var(--ink)}.btn-light{background:var(--paper);color:var(--ink)}.btn-ghost-light{border-color:var(--line-dark);color:var(--paper);background:transparent}.btn-ghost-light:hover{border-color:var(--gold-2);color:var(--gold-2)}.btn-sm{min-height:36px;padding:0 15px;font-size:.8rem}.btn-danger{background:#7e3029;color:#fff4ed}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:rgba(255,255,255,.3)}.badge-gold{border-color:rgba(180,141,79,.4);color:#7e5e2c;background:rgba(216,184,120,.16)}.badge-jade{border-color:rgba(46,90,75,.3);color:var(--jade);background:rgba(46,90,75,.08)}.badge-dark{border-color:var(--line-dark);color:var(--gold-2);background:rgba(0,0,0,.18)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:rgba(242,236,223,.82);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px}.brand{display:inline-flex;align-items:center;gap:11px;font-family:var(--serif);font-size:1.15rem;letter-spacing:.03em}.brand-mark{width:38px;height:38px;flex:0 0 auto}.brand small{display:block;font-family:var(--sans);font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-top:2px}.nav{display:flex;align-items:center;gap:28px}.nav-link{font-size:.83rem;font-weight:500;color:var(--muted);position:relative;padding:8px 0}.nav-link.active,.nav-link:hover{color:var(--ink)}.nav-link.active:after{content:"";position:absolute;left:0;right:0;bottom:1px;height:1px;background:var(--gold)}.header-actions{gap:10px}.header-actions,.lang-switch{display:flex;align-items:center}.lang-switch{padding:3px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.26)}.lang-switch button{border:0;background:transparent;color:var(--muted);font-size:.68rem;letter-spacing:.08em;padding:5px 9px;border-radius:999px}.lang-switch button.active{background:var(--ink);color:var(--paper)}.account-link{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;color:var(--ink);background:rgba(255,255,255,.28)}.account-link:hover{border-color:var(--gold)}.menu-toggle{display:none;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:transparent;align-items:center;justify-content:center}.mobile-nav{display:none;border-top:1px solid var(--line);padding:14px 0 18px}.mobile-nav a{display:block;padding:11px 2px;font-size:.95rem;border-bottom:1px solid rgba(30,32,26,.07)}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 72% 34%,rgba(180,141,79,.18),transparent 28rem),linear-gradient(118deg,#101413,#19211c 46%,#2b2b22);color:var(--paper);min-height:660px;display:flex;align-items:stretch}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 0);background-size:90px 90px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.6),transparent 80%);mask-image:linear-gradient(180deg,rgba(0,0,0,.6),transparent 80%);pointer-events:none}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);grid-gap:48px;gap:48px;align-items:center;padding:76px 0 64px;width:min(var(--max),calc(100% - 48px));margin:0 auto}.hero-copy{max-width:690px}.hero-copy .eyebrow{color:var(--gold-2)}.hero-title{margin:22px 0 24px;font-size:clamp(3.15rem,6.6vw,6.4rem);line-height:.99;letter-spacing:-.04em;color:var(--paper)}.hero-title em{color:var(--gold-2);font-style:italic;font-weight:400}.hero-sub{max-width:520px;color:rgba(242,236,223,.7);font-size:clamp(1rem,1.4vw,1.16rem);line-height:1.8}.hero-actions{gap:12px;margin-top:34px}.hero-actions,.hero-meta{display:flex;flex-wrap:wrap}.hero-meta{gap:22px;margin-top:42px;color:rgba(242,236,223,.52);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.hero-meta span{display:inline-flex;align-items:center;gap:8px}.hero-meta span:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--gold)}.hero-art{position:relative;min-height:430px}.hero-art img{width:100%;height:100%;object-fit:cover;border-radius:26px;opacity:.88;-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}.hero-art-card{position:absolute;left:-18px;bottom:8px;width:min(310px,80%);padding:20px;border:1px solid rgba(242,236,223,.18);border-radius:18px;background:rgba(16,20,17,.72);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 40px rgba(0,0,0,.24)}.hero-art-card .label{color:var(--gold-2);font-size:.65rem;letter-spacing:.2em;text-transform:uppercase}.hero-art-card h2,.hero-art-card h3{margin:10px 0 7px;color:var(--paper);font-size:1.2rem}.hero-art-card p{color:rgba(242,236,223,.62);font-size:.8rem;line-height:1.6}.hero-art-card a{display:inline-flex;margin-top:13px;color:var(--gold-2);font-size:.78rem;font-weight:600}.observance-strip{border-bottom:1px solid var(--line);background:rgba(255,255,255,.2)}.observance-inner{display:flex;align-items:center;gap:26px;overflow-x:auto;padding:16px 0;scrollbar-width:none}.observance-inner::-webkit-scrollbar{display:none}.observance-label{flex:0 0 auto;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.observance-item{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;font-size:.82rem;color:var(--ink-2)}.observance-item time{color:var(--gold);font-weight:600;font-size:.74rem}.tradition-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:14px;gap:14px}.tradition-card{position:relative;padding:26px 22px 22px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.22);overflow:hidden;transition:transform .25s ease,background .25s ease,border-color .25s ease}.tradition-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent,var(--gold));opacity:.8}.tradition-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.4);border-color:rgba(30,32,26,.24)}.tradition-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent,var(--gold)) 16%,transparent);color:var(--accent,var(--gold));margin-bottom:20px}.tradition-card h3{font-size:1.18rem;margin-bottom:9px}.tradition-card p{font-size:.8rem;line-height:1.65;color:var(--muted);min-height:4.8em}.tradition-card .count{display:block;margin-top:18px;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2)}.site-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:22px;gap:22px}.site-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:rgba(255,255,255,.26);box-shadow:var(--shadow-soft);transition:transform .28s ease,box-shadow .28s ease}.site-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.site-card-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--ink)}.site-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.site-card:hover .site-card-media img{transform:scale(1.035)}.site-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,12,10,.55),transparent 55%)}.site-card-badge{position:absolute;z-index:2;top:14px;left:14px}.site-card-location{position:absolute;z-index:2;left:16px;bottom:13px;max-width:calc(100% - 32px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:rgba(242,236,223,.78);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.site-card-body{display:flex;flex-direction:column;padding:22px;flex:1 1}.site-card-body h3{margin:5px 0 9px;font-size:1.42rem}.site-card-body p{color:var(--muted);font-size:.83rem;line-height:1.7;flex:1 1}.site-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:14px;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted-2)}.ad-section{padding-top:0}.ad-label{display:block;margin-bottom:9px;font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2)}.ad-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:14px;gap:14px}.ad-house{display:flex;gap:16px;min-height:118px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.24);transition:transform .25s ease,border-color .25s ease}.ad-house:hover{transform:translateY(-2px);border-color:var(--gold)}.ad-house-media{flex:none;width:120px;overflow:hidden;border-radius:10px;background:var(--ink)}.ad-house-media img{width:100%;height:100%;object-fit:cover}.ad-house-copy{min-width:0}.ad-house-copy h3{margin:4px 0 6px;font-size:1.05rem}.ad-house-copy p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.6}.ad-google{min-height:120px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.22);overflow:hidden}@media (max-width:560px){.ad-house{flex-direction:column}.ad-house-media{width:100%;aspect-ratio:16/8}}.geography-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:28px;max-width:760px}.geography-stat{padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.26)}.geography-stat strong{display:block;font-family:var(--font-display);font-size:1.9rem;color:var(--gold);line-height:1}.geography-stat span{display:block;margin-top:8px;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2)}.geography-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.geography-section{scroll-margin-top:90px}.geography-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.geography-card{display:grid;grid-template-columns:52px minmax(0,1fr);grid-gap:16px;gap:16px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.24)}.geography-rank{font-family:var(--font-display);font-size:1.8rem;line-height:1;color:var(--gold);opacity:.85}.geography-meta{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}.geography-card h3{margin:5px 0 6px;font-size:1.18rem}.geography-alias{font-size:.78rem;font-weight:400;color:var(--muted)}.geography-card p{margin:9px 0 0;font-size:.82rem;line-height:1.7;color:var(--muted)}.geography-links{display:flex;flex-wrap:wrap;gap:14px}.geography-link{display:inline-block;margin-top:12px;font-size:.78rem;letter-spacing:.04em;text-decoration:underline;text-underline-offset:3px}@media (max-width:900px){.geography-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.geography-grid{grid-template-columns:1fr}}.campaign-feature{position:relative;overflow:hidden;border-radius:26px;padding:clamp(34px,5vw,70px);color:var(--paper);background:var(--ink);min-height:330px;display:flex;align-items:flex-end}.campaign-feature:before{content:"";position:absolute;inset:0;background:var(--campaign-gradient,linear-gradient(135deg,#18201b,#4e3b27));opacity:.9}.campaign-feature:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 22%,rgba(240,220,178,.2),transparent 20rem),linear-gradient(0deg,rgba(10,12,10,.6),transparent 70%)}.campaign-content{position:relative;z-index:2;max-width:660px}.campaign-content h2{color:var(--paper);margin:13px 0 15px}.campaign-content p{color:rgba(242,236,223,.7);max-width:580px;font-size:.95rem}.campaign-content .btn{margin-top:26px}.campaign-side{position:absolute;right:34px;top:30px;z-index:2;color:var(--gold-2);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl}.ritual-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:26px;gap:26px}.ritual-step{padding:28px 26px;border-top:1px solid var(--line)}.ritual-step .num{font-family:var(--serif);font-size:2.4rem;color:var(--gold);line-height:1}.ritual-step h3{margin:18px 0 10px;font-size:1.22rem}.ritual-step p{font-size:.85rem;color:var(--muted);line-height:1.75}.wish-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.wish-card{position:relative;padding:28px 24px 22px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.24)}.wish-card:before{content:"“";position:absolute;top:8px;left:18px;font-family:var(--serif);font-size:3.2rem;line-height:1;color:rgba(180,141,79,.35)}.wish-card p{position:relative;font-family:var(--serif);font-size:1.05rem;line-height:1.7;color:var(--ink-2)}.wish-card footer{display:flex;justify-content:space-between;gap:12px;margin-top:20px;padding-top:13px;border-top:1px solid var(--line);font-size:.7rem;letter-spacing:.06em;color:var(--muted-2)}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px;align-items:stretch}.plan-card{display:flex;flex-direction:column;padding:30px 26px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.25)}.plan-card.featured{background:var(--ink);color:var(--paper);border-color:var(--ink);box-shadow:var(--shadow)}.plan-card.featured .price,.plan-card.featured h3{color:var(--paper)}.plan-card.featured li,.plan-card.featured p{color:rgba(242,236,223,.68)}.plan-card h3{font-size:1.5rem}.plan-card .price{font-family:var(--serif);font-size:2.5rem;line-height:1;margin:22px 0 5px}.plan-card .price small{font-family:var(--sans);font-size:.7rem;letter-spacing:.06em;color:var(--muted)}.plan-card ul{list-style:none;padding:0;margin:24px 0 28px;display:grid;grid-gap:11px;gap:11px;flex:1 1}.plan-card li{display:flex;gap:9px;font-size:.82rem;color:var(--muted);line-height:1.55}.plan-card li:before{content:"·";color:var(--gold);font-weight:700}.site-footer{margin-top:20px;background:var(--ink);color:var(--paper);padding:66px 0 30px}.footer-grid{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,.6fr));grid-gap:40px;gap:40px}.footer-brand .brand{color:var(--paper)}.footer-brand p{max-width:330px;margin-top:18px;color:rgba(242,236,223,.72);font-size:.82rem;line-height:1.75}.footer-col h4{font-family:var(--sans);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);margin-bottom:16px}.footer-col a{display:block;color:rgba(242,236,223,.78);font-size:.8rem;padding:5px 0}.footer-col a:hover{color:var(--paper)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:54px;padding-top:20px;border-top:1px solid var(--line-dark);color:rgba(242,236,223,.68);font-size:.74rem;letter-spacing:.04em}.footer-note{max-width:620px}.page-hero{padding:72px 0 46px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.7rem,5vw,4.7rem);margin:18px 0}.page-hero p{max-width:620px;color:var(--muted);line-height:1.8}.breadcrumb{display:flex;flex-wrap:wrap;gap:8px;font-size:.72rem;color:var(--muted-2);letter-spacing:.04em}.breadcrumb a:hover{color:var(--ink)}.site-hero{position:relative;overflow:hidden;color:var(--paper);background:var(--site-gradient,var(--ink));min-height:430px;display:flex;align-items:flex-end}.site-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 24%,rgba(240,220,178,.18),transparent 22rem),linear-gradient(0deg,rgba(10,12,10,.8),rgba(10,12,10,.06) 70%)}.site-hero-inner{position:relative;z-index:2;padding:60px 0 44px;width:min(var(--max),calc(100% - 48px));margin:0 auto}.site-hero h1{font-size:clamp(3rem,6vw,5.8rem);color:var(--paper);margin:14px 0 16px}.site-hero p{max-width:680px;color:rgba(242,236,223,.72)}.site-hero-meta{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:22px;color:rgba(242,236,223,.55);font-size:.72rem;letter-spacing:.07em;text-transform:uppercase}.site-detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);grid-gap:54px;gap:54px;align-items:start}.prose p{margin-bottom:18px;color:var(--ink-2);line-height:1.85}.prose h2{margin:36px 0 16px;font-size:1.8rem}.side-panel{position:-webkit-sticky;position:sticky;top:96px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.28)}.side-panel h3{font-size:1.1rem;margin-bottom:14px}.side-panel dl{display:grid;grid-gap:12px;gap:12px;margin:0}.side-panel dt{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}.side-panel dd{margin:3px 0 0;font-size:.84rem}.ritual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.ritual-card{display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.25);transition:transform .25s ease,border-color .25s ease}.ritual-card:hover{transform:translateY(-3px);border-color:rgba(180,141,79,.55)}.ritual-card h3{margin:14px 0 8px;font-size:1.22rem}.ritual-card p{font-size:.8rem;line-height:1.7;color:var(--muted);flex:1 1}.ritual-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:13px;border-top:1px solid var(--line);font-size:.7rem;color:var(--muted-2)}.offering-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.offering-card{padding:20px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.2)}.offering-card h3,.offering-card h4{font-family:var(--serif);font-size:1.05rem;margin-bottom:6px}.offering-card p{color:var(--muted);font-size:.78rem;line-height:1.6}.offering-price{margin-top:12px;font-size:.88rem;font-weight:700;color:var(--gold)}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.info-card{padding:22px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.2)}.info-card h3,.info-card h4{font-family:var(--serif);font-size:1.12rem;margin-bottom:7px}.info-card p{color:var(--muted)}.info-card p,.notice{font-size:.8rem;line-height:1.7}.notice{padding:18px 20px;border:1px solid rgba(180,141,79,.35);border-radius:14px;background:rgba(216,184,120,.11);color:#6c5127}.notice-dark{border-color:var(--line-dark);background:rgba(255,255,255,.05);color:rgba(242,236,223,.68)}.ritual-stage{min-height:calc(100vh - 74px);position:relative;overflow:hidden;color:var(--paper);background:var(--ritual-gradient,var(--ink));display:flex;align-items:center}.ritual-stage:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(240,220,178,.18),transparent 24rem),linear-gradient(180deg,rgba(8,10,8,.25),rgba(8,10,8,.72))}.ritual-stage-inner{position:relative;z-index:2;width:min(1040px,calc(100% - 48px));margin:0 auto;padding:42px 0 64px}.ritual-top{justify-content:space-between;gap:18px;color:rgba(242,236,223,.55);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.ritual-imprint,.ritual-top{display:flex;align-items:center}.ritual-imprint{gap:20px;max-width:760px;margin-top:24px;padding:18px 20px;border:1px solid rgba(240,220,178,.18);border-radius:20px;background:rgba(8,10,8,.28);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ritual-seal{flex:none;width:76px;height:76px;border:1px solid var(--gold-2);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:radial-gradient(circle,rgba(240,220,178,.14),transparent 70%);box-shadow:inset 0 0 0 4px rgba(240,220,178,.06),0 0 30px rgba(240,220,178,.08)}.ritual-seal strong{font-family:var(--font-display);font-size:1.6rem;line-height:1;color:var(--gold-2)}.ritual-seal span{max-width:60px;font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(242,236,223,.52);text-align:center}.ritual-imprint .ritual-site-name,.ritual-imprint h2{font-family:var(--serif);font-size:clamp(1.4rem,3vw,2.2rem);line-height:1.1;color:var(--paper);margin:4px 0 5px}.ritual-imprint p{margin:0 0 6px;max-width:560px;font-size:.82rem;line-height:1.6;color:rgba(242,236,223,.68)}.ritual-imprint-meta{font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(242,236,223,.44)}.offering-scene{position:relative;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.offering-scene-halo{position:absolute;width:min(340px,86%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(240,220,178,.2),transparent 66%);animation:offering-halo 5s ease-in-out infinite}.offering-scene-copy{position:relative;z-index:2;margin-top:18px}.offering-scene-caption{margin:0;font-family:var(--font-display);font-size:1.05rem;color:var(--gold-2)}.offering-scene-name{display:block;margin-top:6px;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(242,236,223,.45)}.incense-scene{position:relative;width:140px;height:220px}.incense-stick{position:absolute;left:50%;bottom:0;width:3px;height:132px;margin-left:-1.5px;border-radius:2px;background:linear-gradient(0deg,#3a2418,#8a5a2e)}.incense-ember{bottom:128px;width:11px;height:11px;margin-left:-5.5px;background:#f3a35a;box-shadow:0 0 18px rgba(243,163,90,.9),0 0 38px rgba(243,163,90,.38);animation:ember-glow 2.4s ease-in-out infinite}.incense-ember,.incense-smoke{position:absolute;left:50%;border-radius:50%}.incense-smoke{bottom:140px;width:2px;height:92px;background:linear-gradient(0deg,rgba(235,224,205,.4),transparent);filter:blur(2px);transform-origin:bottom center;animation:incense-smoke 4.5s ease-in-out infinite}.incense-smoke-2{left:47%;animation-delay:1.2s;height:108px}.incense-smoke-3{left:54%;animation-delay:2.3s;height:80px}.candle-scene,.lamp-scene{position:relative;width:190px;height:220px;display:flex;align-items:flex-end;justify-content:center}.offering-vessel{width:146px;height:48px;border-radius:8px 8px 72px 72px;background:linear-gradient(180deg,#b98a4a,#4a2e1a);box-shadow:inset 0 7px 0 rgba(255,240,205,.12)}.candle-scene .offering-vessel{width:74px;height:120px;border-radius:8px 8px 14px 14px;background:linear-gradient(180deg,#e6d1a8,#9a7444)}.offering-wick{position:absolute;bottom:44px;width:3px;height:18px;border-radius:2px;background:#3a2418}.candle-scene .offering-wick{bottom:118px}.offering-flame{position:absolute;bottom:58px;width:42px;height:74px;border-radius:50% 50% 50% 50%/66% 66% 34% 34%;background:radial-gradient(circle at 50% 72%,#fff4c8 0,#f3b34c 46%,rgba(224,120,40,.08) 76%);filter:drop-shadow(0 0 18px rgba(243,179,76,.55));transform-origin:bottom center;animation:flame-flicker 1.8s ease-in-out infinite}.candle-scene .offering-flame{bottom:132px;width:32px;height:58px}.flower-scene{position:relative;width:230px;height:230px}.flower-petal{position:absolute;left:50%;bottom:50%;width:34px;height:94px;margin-left:-17px;border-radius:50% 50% 50% 50%/62% 62% 38% 38%;background:linear-gradient(0deg,#a95432,#e7b58b);box-shadow:0 0 18px rgba(231,181,139,.16);transform-origin:50% 100%;opacity:0;animation:flower-bloom 1.5s ease-out forwards;animation-delay:var(--delay,0s)}.flower-center{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:radial-gradient(circle at 40% 38%,#f8dc95,#b5653a 72%);box-shadow:0 0 26px rgba(248,220,149,.4)}.water-scene{position:relative;width:220px;height:150px}.water-scene span{position:absolute;left:50%;top:55%;width:60px;height:60px;margin:-30px;border:1px solid rgba(190,225,225,.48);border-radius:50%;animation:water-ripple 3.6s ease-out infinite}.water-scene span:nth-child(2){animation-delay:1.2s}.water-scene span:nth-child(3){animation-delay:2.4s}.prayer-scene{position:relative;width:220px;height:160px}.prayer-scene span{position:absolute;width:6px;height:6px;border-radius:50%;background:#f3d9a4;box-shadow:0 0 16px rgba(243,217,164,.75);animation:prayer-float 5s ease-in-out infinite}.prayer-scene span:first-child{left:24%;top:46%}.prayer-scene span:nth-child(2){left:42%;top:26%;animation-delay:1.1s}.prayer-scene span:nth-child(3){left:60%;top:50%;animation-delay:2.2s}.prayer-scene span:nth-child(4){left:74%;top:32%;animation-delay:3.1s}@keyframes offering-halo{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:.9;transform:scale(1.04)}}@keyframes ember-glow{0%,to{opacity:.75;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}@keyframes incense-smoke{0%{opacity:0;transform:translateY(0) translateX(0) scaleX(.7)}30%{opacity:.65}to{opacity:0;transform:translateY(-72px) translateX(16px) scaleX(2.2)}}@keyframes flame-flicker{0%,to{transform:scaleY(1) rotate(-1.5deg);opacity:.95}50%{transform:scaleY(1.08) rotate(1.5deg);opacity:1}}@keyframes flower-bloom{0%{opacity:0;transform:rotate(var(--angle)) scaleY(.15)}60%{opacity:1}to{opacity:.95;transform:rotate(var(--angle)) scaleY(1)}}@keyframes water-ripple{0%{opacity:0;transform:scale(.35)}30%{opacity:.55}to{opacity:0;transform:scale(1.8)}}@keyframes prayer-float{0%,to{opacity:.2;transform:translateY(6px) scale(.8)}50%{opacity:.9;transform:translateY(-12px) scale(1.1)}}@media (max-width:720px){.ritual-imprint{align-items:flex-start;gap:14px;padding:16px}.ritual-seal{width:62px;height:62px}.ritual-seal strong{font-size:1.25rem}}.ritual-progress{display:flex;gap:7px;margin:22px 0 34px}.ritual-progress span{height:2px;flex:1 1;background:rgba(242,236,223,.15);border-radius:999px;overflow:hidden}.ritual-progress span.done{background:var(--gold-2)}.ritual-panel{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-gap:54px;gap:54px;align-items:center}.ritual-visual{position:relative;min-height:340px;display:grid;place-items:center}.ritual-visual .halo{width:min(300px,80%);aspect-ratio:1;border-radius:50%;border:1px solid rgba(240,220,178,.22);background:radial-gradient(circle,rgba(240,220,178,.14),transparent 68%);display:grid;place-items:center;animation:breathe 7s ease-in-out infinite}.ritual-visual .halo-inner{width:56%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(240,220,178,.2);display:grid;place-items:center}.flame{width:34px;height:62px;position:relative;filter:drop-shadow(0 0 18px rgba(240,200,120,.55));animation:flicker 2.8s ease-in-out infinite}.flame:before{content:"";position:absolute;inset:0;border-radius:50% 50% 45% 45%/65% 65% 35% 35%;background:radial-gradient(circle at 50% 70%,#fff7dc 0,#e8b85c 45%,rgba(232,184,92,.1) 76%)}.ritual-copy .eyebrow{color:var(--gold-2)}.ritual-copy h1{font-size:clamp(2.3rem,4.6vw,4.2rem);color:var(--paper);margin:16px 0 18px}.ritual-copy p{color:rgba(242,236,223,.7);line-height:1.85;font-size:.95rem}.ritual-form{margin-top:24px}.ritual-textarea{width:100%;min-height:132px;resize:vertical;border:1px solid rgba(242,236,223,.22);border-radius:14px;background:rgba(10,12,10,.3);color:var(--paper);padding:16px;line-height:1.7;outline:none}.ritual-textarea:focus{border-color:var(--gold-2)}.ritual-textarea::placeholder{color:rgba(242,236,223,.36)}.ritual-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.ritual-offerings{display:grid;grid-gap:10px;gap:10px;margin-top:22px}.ritual-offering{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid rgba(242,236,223,.16);border-radius:12px;background:rgba(10,12,10,.22)}.ritual-offering strong{font-size:.82rem;font-weight:600}.ritual-offering small{display:block;color:rgba(242,236,223,.48);font-size:.7rem;margin-top:2px}.ritual-offering-select{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease}.ritual-offering-select.selected,.ritual-offering-select:hover{border-color:var(--gold-2);background:rgba(240,220,178,.09)}.ritual-offering-check{flex:none;width:26px;height:26px;border:1px solid rgba(242,236,223,.24);border-radius:50%;display:grid;place-items:center;font-size:.8rem;color:var(--gold-2)}.ritual-offering-select.selected .ritual-offering-check{border-color:var(--gold-2);background:rgba(240,220,178,.14)}.ritual-offering-copy{flex:1 1;min-width:0}.ritual-offering-price{flex:none;font-size:.75rem;color:var(--gold-2);letter-spacing:.04em}.ritual-offering-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:14px;padding:12px 14px;border:1px solid rgba(240,220,178,.2);border-radius:12px;background:rgba(240,220,178,.06);color:rgba(242,236,223,.72);font-size:.78rem}.offering-scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;width:100%}.offering-scene-compact{min-height:230px}.offering-scene-compact .offering-scene-halo{width:180px}.offering-scene-compact .offering-scene-caption{font-size:.86rem}@media (max-width:720px){.offering-scene-grid{grid-template-columns:1fr}}.ritual-error{margin-top:16px;padding:11px 14px;border-radius:10px;background:rgba(150,55,45,.22);border:1px solid rgba(220,120,100,.3);color:#ffd8cf;font-size:.78rem}.receipt{margin-top:26px;padding:26px;border:1px solid rgba(240,220,178,.32);border-radius:18px;background:rgba(10,12,10,.28)}.receipt .code{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.3rem);color:var(--gold-2);letter-spacing:.05em}.receipt .meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:12px;color:rgba(242,236,223,.5);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.divination-stage{min-height:calc(100vh - 74px);background:radial-gradient(circle at 50% 20%,rgba(216,184,120,.15),transparent 26rem),linear-gradient(140deg,#11151a,#1d2630 55%,#2a241c);color:var(--paper);padding:58px 0 80px}.divination-head{text-align:center;max-width:660px;margin:0 auto 34px}.divination-head .eyebrow{color:var(--gold-2)}.divination-head h1{font-size:clamp(2.6rem,5vw,4.7rem);color:var(--paper);margin:18px 0 16px}.divination-head p{color:rgba(242,236,223,.62)}.sign-systems{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;max-width:900px;margin:0 auto}.sign-system{text-align:left;padding:20px;border:1px solid rgba(242,236,223,.16);border-radius:15px;background:rgba(255,255,255,.03);color:var(--paper)}.sign-system.active,.sign-system:hover{border-color:var(--gold-2);background:rgba(240,220,178,.08)}.sign-system h3{font-size:1.05rem;color:var(--paper)}.sign-system p{color:rgba(242,236,223,.48);font-size:.72rem;margin-top:6px}.divination-form{max-width:660px;margin:26px auto 0;display:flex;gap:10px;flex-wrap:wrap}.divination-form input{flex:1 1;min-width:220px}.sign-result{max-width:980px;margin:38px auto 0;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-gap:26px;gap:26px}.sign-paper{position:relative;padding:34px 28px;border-radius:20px;background:linear-gradient(145deg,#f1e7d2,#e3d5b8);color:var(--ink);box-shadow:0 30px 70px rgba(0,0,0,.32);min-height:380px;display:flex;flex-direction:column;justify-content:space-between}.sign-paper .seal{align-self:flex-end;width:48px;height:48px;border:1px solid rgba(126,48,41,.55);border-radius:50%;display:grid;place-items:center;color:#7e3029;font-family:var(--serif);font-size:.82rem;letter-spacing:.04em;transform:rotate(-8deg)}.sign-paper h2{font-size:1.8rem;margin-top:8px}.sign-paper .poem{margin:26px 0;white-space:pre-line;font-family:var(--serif);font-size:1.12rem;line-height:2;color:#2c3028}.sign-paper .poem.vertical{writing-mode:vertical-rl;-webkit-text-orientation:upright;text-orientation:upright;margin:0 auto;max-height:280px;letter-spacing:.12em}.sign-reading{padding:30px;border:1px solid rgba(242,236,223,.14);border-radius:20px;background:rgba(255,255,255,.035)}.sign-reading h3{font-size:1.35rem;color:var(--paper);margin-bottom:12px}.sign-reading p{color:rgba(242,236,223,.68);line-height:1.85;font-size:.9rem}.sign-reading .notice{margin-top:16px;border-color:rgba(240,220,178,.25);background:rgba(240,220,178,.07);color:rgba(242,236,223,.68)}.form-field{display:grid;grid-gap:7px;gap:7px;margin-bottom:16px}.form-field label{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600}.consent-box{display:grid;grid-gap:10px;gap:10px;margin:4px 0 18px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.3)}.consent-row{display:flex;gap:10px;align-items:flex-start;font-size:.8rem;line-height:1.55;color:var(--ink-2);cursor:pointer}.consent-row input{margin-top:3px;accent-color:var(--gold);flex:0 0 auto}.consent-row .text-link{text-decoration:underline;text-underline-offset:2px}.input,.select,.textarea{width:100%;min-height:46px;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.45);color:var(--ink);outline:none;transition:border-color .2s ease,background .2s ease}.input:focus,.select:focus,.textarea:focus{border-color:var(--gold);background:rgba(255,255,255,.68)}.textarea{min-height:120px;resize:vertical;line-height:1.7}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.form-error{border-radius:10px;background:rgba(126,48,41,.08);border:1px solid rgba(126,48,41,.22);color:#7e3029}.form-error,.form-success{padding:10px 13px;font-size:.78rem;margin-bottom:14px}.form-success{border-radius:10px;background:rgba(46,90,75,.08);border:1px solid rgba(46,90,75,.22);color:var(--jade)}.auth-layout{min-height:calc(100vh - 74px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.auth-art{position:relative;background:var(--ink);color:var(--paper);overflow:hidden;display:flex;align-items:flex-end;padding:56px}.auth-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.7}.auth-art:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,12,10,.85),transparent 70%)}.auth-art-copy{position:relative;z-index:2;max-width:460px}.auth-art-copy h2{color:var(--paper);font-size:clamp(2rem,3.5vw,3.4rem)}.auth-art-title{color:var(--paper)!important;font-family:var(--serif);font-size:clamp(2rem,3.5vw,3.4rem)!important;line-height:1.12;margin-top:16px}.auth-art-copy p{color:rgba(242,236,223,.62);margin-top:14px;font-size:.9rem}.auth-panel{display:flex;align-items:center;justify-content:center;padding:48px 24px}.auth-card{width:min(430px,100%)}.auth-card h1{font-size:clamp(2rem,3.4vw,3rem);margin:14px 0 10px}.auth-card>p{color:var(--muted);font-size:.88rem;margin-bottom:26px}.auth-switch{margin-top:18px;font-size:.8rem;color:var(--muted)}.auth-switch a{color:var(--ink);font-weight:600;border-bottom:1px solid var(--gold)}.demo-box{margin-top:22px;padding:14px 16px;border:1px dashed rgba(180,141,79,.45);border-radius:12px;font-size:.74rem;color:var(--muted);line-height:1.7}.account-shell{padding:54px 0 90px}.account-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:34px}.account-head h1{font-size:clamp(2.2rem,4vw,3.4rem)}.account-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:36px}.stat-card{padding:20px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.25)}.stat-card .value{font-family:var(--serif);font-size:2rem;line-height:1}.stat-card .label{margin-top:8px;color:var(--muted-2);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase}.account-layout{display:grid;grid-template-columns:210px minmax(0,1fr);grid-gap:38px;gap:38px;align-items:start}.account-nav{position:-webkit-sticky;position:sticky;top:96px;display:grid;grid-gap:3px;gap:3px}.account-nav button{text-align:left;padding:10px 13px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:.82rem}.account-nav button.active,.account-nav button:hover{background:rgba(255,255,255,.42);color:var(--ink)}.panel{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.24);padding:26px}.panel+.panel{margin-top:18px}.panel h2{font-size:1.55rem;margin-bottom:16px}.list-row{display:flex;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0;padding-bottom:0}.list-row h3{font-size:1rem;margin-bottom:4px}.list-row p{color:var(--muted);font-size:.78rem}.list-row .side{text-align:right;flex:0 0 auto;color:var(--muted);font-size:.72rem;line-height:1.6}.status-pill{display:inline-flex;padding:2px 8px;border-radius:999px;background:rgba(46,90,75,.08);color:var(--jade);font-size:.64rem;letter-spacing:.06em;text-transform:uppercase}.status-pill.gold{background:rgba(180,141,79,.12);color:#7e5e2c}.status-pill.red{background:rgba(126,48,41,.1);color:#7e3029}.memorial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.memorial-card{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.24)}.memorial-card h3{font-size:1.3rem}.memorial-card .persons{margin-top:14px;display:grid;grid-gap:8px;gap:8px}.person-row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid rgba(30,32,26,.08);font-size:.8rem}.person-row:last-child{border-bottom:0}.person-row span{color:var(--muted);font-size:.72rem}.article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px}.article-card{display:grid;grid-template-columns:180px minmax(0,1fr);grid-gap:20px;gap:20px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.22)}.article-card img{width:100%;height:100%;min-height:150px;object-fit:cover;border-radius:11px}.article-card h3{font-size:1.18rem;margin:4px 0 8px}.article-card p{color:var(--muted);font-size:.8rem;line-height:1.7}.article-body{max-width:760px;margin:0 auto}.article-body p{font-family:var(--serif);font-size:1.12rem;line-height:1.95;margin-bottom:22px;color:#2b2e27}.empty{padding:38px 26px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius);font-size:.84rem}.empty,.pager{color:var(--muted)}.pager{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:.75rem;flex-wrap:wrap}.pager-actions{display:flex;gap:8px}.pager-actions [aria-disabled=true]{opacity:.45;pointer-events:none}.skeleton{border-radius:var(--radius);background:linear-gradient(100deg,rgba(255,255,255,.2) 30%,rgba(255,255,255,.45) 50%,rgba(255,255,255,.2) 70%);background-size:200% 100%;animation:shimmer 1.4s infinite;min-height:160px}.stack-8>*+*{margin-top:8px}.stack-12>*+*{margin-top:12px}.stack-16>*+*{margin-top:16px}.stack-24>*+*{margin-top:24px}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}.mb-16{margin-bottom:16px}.text-center{text-align:center}@keyframes breathe{0%,to{transform:scale(.96);opacity:.8}50%{transform:scale(1.03);opacity:1}}@keyframes flicker{0%,to{transform:scaleY(1) rotate(-1deg)}35%{transform:scaleY(1.06) rotate(1deg)}60%{transform:scaleY(.96) rotate(-.5deg)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .7s ease both}@media (max-width:1080px){.tradition-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-inner{grid-template-columns:1fr;gap:30px}.hero-art{min-height:320px;max-width:640px}.ritual-panel{grid-template-columns:1fr;gap:26px}.ritual-visual{min-height:240px}.sign-result,.site-detail-grid{grid-template-columns:1fr}.side-panel{position:static}.footer-grid{grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,.6fr))}}@media (max-width:820px){.container,.container-narrow,.hero-inner,.ritual-stage-inner,.site-hero-inner{width:calc(100% - 32px)}.nav{display:none}.menu-toggle{display:inline-flex}.mobile-nav.open{display:block}.section{padding:64px 0}.section-head{display:block}.section-head p{margin-top:12px}.article-grid,.memorial-grid,.pricing-grid,.ritual-grid,.ritual-steps,.sign-systems,.site-grid,.wish-grid{grid-template-columns:1fr}.tradition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero,.tradition-card p{min-height:0}.hero-inner{padding:52px 0 44px}.hero-art{min-height:300px}.hero-art-card{left:12px;bottom:12px}.auth-layout{grid-template-columns:1fr}.auth-art{min-height:240px;padding:28px}.account-layout{grid-template-columns:1fr}.account-nav{position:static;display:flex;overflow-x:auto;gap:6px;padding-bottom:6px}.account-nav button{white-space:nowrap}.account-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.article-card,.form-row,.info-grid,.offering-grid{grid-template-columns:1fr}.article-card img{aspect-ratio:16/9;min-height:0}.divination-stage{padding:38px 0 60px}.divination-form{flex-direction:column}.divination-form input{min-width:0}.sign-paper .poem.vertical{writing-mode:horizontal-tb;max-height:none;letter-spacing:.02em;text-align:center}}@media (max-width:560px){.tradition-grid{grid-template-columns:1fr}.header-inner{min-height:64px;gap:12px}.brand small{display:none}.lang-switch{display:flex}.lang-switch button{font-size:.62rem;padding:4px 7px}.header-actions>.btn{display:none}.header-actions{gap:8px}.hero-title{font-size:clamp(2.8rem,13vw,4.2rem)}.account-stats{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}.site-hero{min-height:360px}.ritual-actions{flex-direction:column}.ritual-actions .btn{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.legal-page{padding-top:72px}.legal-copy{max-width:820px}.legal-copy h1{margin:18px 0 8px}.legal-copy h2{margin:38px 0 10px;font-size:clamp(1.15rem,2vw,1.45rem)}.legal-copy p{line-height:1.85}.legal-copy p,.legal-copy ul{margin:12px 0;color:var(--ink-2)}.legal-copy ul{padding-left:22px;line-height:1.8}.legal-updated{color:var(--muted);font-size:.8rem;margin:0 0 18px}.legal-intro{font-size:1.02rem;color:var(--ink-2)}.contact-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:48px;gap:48px;align-items:start}.contact-card{padding:28px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.42)}.contact-form .textarea{resize:vertical;min-height:160px}.account-divider{margin:28px 0;border:0;border-top:1px solid var(--line)}.danger-zone h3{display:flex;align-items:center;gap:8px;color:#8f3b2f}@media (max-width:800px){.contact-grid{grid-template-columns:1fr;gap:28px}}.consent-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:80;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border:1px solid rgba(242,236,223,.2);border-radius:16px;background:rgba(21,24,22,.96);color:var(--paper);box-shadow:0 16px 40px rgba(0,0,0,.28);font-size:.82rem;line-height:1.55}.consent-banner strong{display:block;color:var(--gold-2);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}.consent-banner p{margin:0;color:rgba(242,236,223,.78)}.consent-banner .text-link{color:var(--gold-2);text-decoration:underline}.consent-actions{display:flex;gap:8px;flex-wrap:wrap;flex:0 0 auto}@media (max-width:700px){.consent-banner{flex-direction:column;align-items:stretch}}