:root{color-scheme:dark;--bg:#080f21;--bg2:#101c36;--card:#111e38;--card2:#172843;--ink:#eae7e4;--muted:#c1c1cc;--gold:#e5c88b;--gold-dark:#b89a66;--line:rgba(217,187,127,.36);--max:1140px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:radial-gradient(ellipse at 15% 0%,rgba(59,58,112,.24),transparent 42%),radial-gradient(ellipse at 90% 50%,rgba(43,74,119,.11),transparent 44%),var(--bg);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans JP",system-ui,sans-serif;line-height:1.9;-webkit-font-smoothing:antialiased}
a{color:inherit}a:hover{color:#fff}a:focus-visible,button:focus-visible{outline:3px solid #ffe5a6;outline-offset:4px}
button{font:inherit}img{max-width:100%;display:block} .serif{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",Georgia,serif} .shell{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.skip{position:absolute;top:-60px;left:16px;background:var(--gold);color:#091428;padding:6px 20px;z-index:100}.skip:focus{top:12px}
header{position:relative;z-index:20;border-bottom:1px solid var(--line);background:rgba(8,14,29,.93)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:18px}
.brand{display:inline-flex;align-items:center;gap:11px;color:var(--gold);text-decoration:none;white-space:nowrap;font-family:Georgia,"Yu Mincho",serif;font-size:clamp(23px,2.8vw,29px);letter-spacing:.04em;line-height:1}.brand-mark{font-size:29px;line-height:1}
.nav-links{display:flex;align-items:center;gap:clamp(17px,3vw,37px)}.nav-links a{font-size:12px;letter-spacing:.12em;text-decoration:none;color:#e4e0e1;position:relative;font-weight:600}.nav-links a[aria-current=page],.nav-links a:hover{color:var(--gold)}.nav-links a[aria-current=page]::after{content:"";position:absolute;bottom:-12px;left:0;right:0;height:1px;background:var(--gold)}
.menu-toggle{display:none;color:var(--gold);border:1px solid var(--line);border-radius:9px;background:#11203d;padding:6px 12px;align-items:center;gap:9px;cursor:pointer}
.hero{position:relative;min-height:520px;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line);isolation:isolate}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 63% 20%,rgba(192,187,223,.16),transparent 20%),linear-gradient(90deg,#071329 2%,#071329 30%,rgba(7,19,41,.82) 48%,rgba(7,19,41,.06) 92%),url('temple-desktop.webp') right 42%/auto 108% no-repeat,#08142b}.hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,#081226 0%,transparent 24%,transparent 84%,rgba(0,0,0,.25) 100%)}
.hero-inner{padding:85px 0 100px}.hero-copy{max-width:650px}.eyebrow{display:block;color:var(--gold);font-size:11px;letter-spacing:.34em;text-transform:uppercase;font-weight:700;margin-bottom:16px}.hero h1{font-size:clamp(34px,4.1vw,62px);font-weight:500;letter-spacing:.055em;line-height:1.5;color:#f7e8c4;margin:0 0 19px;text-shadow:0 2px 20px #081126}.hero p{font-size:clamp(14px,1.4vw,17px);line-height:2.3;color:#eee9ed;max-width:500px;letter-spacing:.055em;margin:0 0 30px}.actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid var(--gold-dark);border-radius:6px;color:#f5dfaf;background:rgba(13,25,49,.79);padding:11px 22px;font-size:13px;min-height:47px;letter-spacing:.06em;transition:background .2s,transform .2s}.btn:hover{background:#283956;transform:translateY(-2px)}.btn.alt{background:transparent;border-color:#61708a;color:#efe8eb}
section{padding:78px 0}.section-heading{text-align:center;margin-bottom:36px}.section-heading .eyebrow{margin-bottom:8px}.section-heading h2,.page-heading h1{font-size:clamp(30px,4vw,48px);font-weight:500;color:var(--gold);margin:0;letter-spacing:.07em}.section-heading p{font-size:14px;color:var(--muted);margin:12px auto 0;max-width:660px}.ornament{text-align:center;color:var(--gold-dark);letter-spacing:1em;font-size:15px;margin:3px 0 26px}
.intro-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:35px;align-items:center}.intro-art{min-height:312px;border:1px solid var(--line);border-radius:13px;position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(29,44,82,.15),rgba(7,14,29,.05)),url('temple-mobile.webp') center 42%/cover}.intro-art:after{content:'✦　☾　✦';position:absolute;bottom:0;left:0;right:0;padding:12px;color:var(--gold);text-align:center;background:linear-gradient(transparent,rgba(4,12,27,.87));font-size:24px;letter-spacing:.55em}.intro-body h2{color:var(--gold);font-size:clamp(26px,3vw,39px);font-weight:500;line-height:1.6;margin:0 0 18px}.intro-body p{color:#dfdce1;font-size:15px;margin:0 0 15px}.mini-label{color:var(--gold);letter-spacing:.2em;font-size:11px}
.soft{background:linear-gradient(180deg,rgba(25,36,68,.17),rgba(15,29,57,.43),rgba(17,30,56,.09));border-block:1px solid rgba(214,183,125,.12)}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.card{border:1px solid var(--line);background:linear-gradient(145deg,rgba(31,49,82,.87),rgba(13,24,47,.92));border-radius:12px;overflow:hidden;min-width:0}.card-image{height:150px;background-size:cover;background-position:center;position:relative}.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,16,34,.32),transparent)}.card-image.tarot{background-image:url('tarot.webp')}.card-image.chakra{background-image:url('chakra.webp')}.card-image.books{background-image:url('books.webp')}.card-body{padding:24px}.card h3{margin:0 0 10px;font-family:"Yu Mincho",Georgia,serif;color:#f4dfb7;font-size:21px;font-weight:500}.card p{font-size:13px;color:#d4d3da;line-height:1.9;margin:0}.card-footer{padding:0 24px 25px}.text-link{font-size:13px;color:var(--gold);text-underline-offset:5px}
.cta-panel{border:1px solid var(--line);border-radius:12px;text-align:center;max-width:850px;margin:auto;padding:45px 28px;background:radial-gradient(circle at 80% 20%,rgba(110,92,150,.15),transparent 60%),rgba(18,31,57,.8)}.cta-panel h2{font-family:"Yu Mincho",Georgia,serif;font-size:clamp(26px,3.2vw,37px);font-weight:500;color:var(--gold);margin:0 0 12px}.cta-panel p{font-size:14px;color:var(--muted);margin:0 0 24px}
.page-heading{padding:79px 0 50px;position:relative;text-align:center;background:radial-gradient(circle at 50% -40%,rgba(103,94,154,.24),transparent 53%),linear-gradient(180deg,#142441,rgba(13,23,45,.16));border-bottom:1px solid var(--line)}.page-heading .eyebrow{margin-bottom:6px}.page-heading p{margin:9px auto 0;max-width:690px;color:var(--muted);font-size:14px}.content{max-width:850px;margin-inline:auto}.content h2{font-family:"Yu Mincho",serif;font-size:clamp(25px,3vw,34px);color:var(--gold);font-weight:500;margin:0 0 22px}.content p{font-size:15px;margin:0 0 21px;color:#e1dfe3}.content .lead{font-size:17px;color:#f4ecdf}.profile-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:40px;align-items:center}.profile-art{height:380px;background:url('temple-mobile.webp') center/cover;border:1px solid var(--line);border-radius:13px}.info{background:rgba(22,37,67,.7);border:1px solid var(--line);border-radius:12px;padding:26px;margin-top:18px}.info h3{font-size:21px;color:var(--gold);margin:0 0 10px;font-family:"Yu Mincho",serif;font-weight:500}.info p{margin:0;font-size:14px;color:#d6d2da}.panel-stack{display:grid;gap:22px;max-width:900px;margin:auto}.service-panel{display:grid;grid-template-columns:35% 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card)}.service-panel .image{min-height:245px;background-size:cover;background-position:center}.service-panel .image.tarot{background-image:url('tarot.webp')}.service-panel .image.chakra{background-image:url('chakra.webp')}.service-panel .body{padding:30px}.service-panel h2{font-size:27px;color:var(--gold);font-family:"Yu Mincho",serif;font-weight:500;margin:0 0 15px}.service-panel p{font-size:14px;color:#dfdce1;margin:0 0 15px}
.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.activity-card{padding:0 0 28px}.activity-card .card-body{padding:23px 25px}.activity-card .freq{font-size:12px;letter-spacing:.08em;color:var(--gold);margin-bottom:8px}
.notice{border-left:2px solid var(--gold);padding:12px 18px;background:rgba(210,177,114,.07);font-size:13px;color:var(--muted);line-height:1.9;margin-top:25px}
footer{background:#070d1b;border-top:1px solid var(--line);padding:37px 0;color:#c2c1c6}.footer-wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}.footer-copy{font-size:11px;color:#aeb1bd;line-height:1.8}.footer-nav{display:flex;gap:19px;flex-wrap:wrap}.footer-nav a{font-size:12px;color:#c9c6ce;text-decoration:none}.footer-nav a:hover{color:var(--gold)}
@media(max-width:800px){.header-inner{min-height:67px}.menu-toggle{display:flex}.nav-links{display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:10px 24px 18px;background:#0a142b;border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(0,0,0,.45)}.nav-links[data-open="true"]{display:flex}.nav-links a{padding:13px 6px;font-size:13px}.nav-links a[aria-current=page]::after{bottom:6px;right:auto;width:70px}.hero{min-height:0}.hero:before{background:linear-gradient(180deg,rgba(7,19,41,.03) 1%,rgba(7,19,41,.14) 28%,#071329 54%,#071329 100%),url('temple-mobile.webp') center top/100% auto no-repeat,#071329}.hero:after{background:linear-gradient(180deg,transparent 20%,rgba(7,19,41,.55) 46%,transparent 70%)}.hero-inner{padding:clamp(330px,83vw,530px) 0 50px}.hero-copy{max-width:700px}.hero h1{font-size:clamp(30px,6vw,47px)}.hero p{font-size:15px}.intro-grid,.profile-layout{grid-template-columns:1fr;gap:27px}.intro-art{min-height:240px}.profile-art{height:300px}.card-grid,.activity-grid{grid-template-columns:1fr}.card-image{height:190px}.service-panel{grid-template-columns:1fr}.service-panel .image{min-height:180px}.footer-wrap{flex-direction:column;align-items:flex-start}}
@media(max-width:470px){.shell{width:min(calc(100% - 36px),var(--max))}.brand{font-size:23px}.hero-inner{padding-top:clamp(290px,90vw,400px)}.hero h1{font-size:26px;letter-spacing:.025em}.hero p{font-size:13.5px}.actions{flex-direction:column;align-items:stretch}.btn{width:100%}section{padding:59px 0}.page-heading{padding:58px 0 42px}.card-body{padding:20px}.cta-panel{padding:30px 19px}.service-panel .body{padding:24px}.intro-body p,.content p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Free aura invitation */
.aura-art { background-image: url('chakra.webp'); background-size: cover; background-position: center; }
.aura-disclaimer {font-size:.82rem;opacity:.8;line-height:1.8;margin-top:1.3rem;}
