@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--night:#0c0617;--violet:#21102e;--violet-2:#321946;--gold:#f4d596;--gold2:#d7a55c;--text:#f5edf9;--muted:#d2c0db;--border:rgba(238,188,106,.58);--pane:rgba(30,13,47,.89);--glow:rgba(173,83,246,.3);font-size:15px;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;font:400 1rem/1.65 'DM Sans',sans-serif;color:var(--text);background:var(--night)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #eccc81;outline-offset:3px}h1,h2,h3,h4{font-family:'Cinzel',Georgia,serif;line-height:1.2;color:var(--gold);margin:0 0 18px;font-weight:600}h1{font-size:clamp(2rem,7.8vw,5rem)}h2{font-size:clamp(1.75rem,5.8vw,3rem)}h3{font-size:1.25rem}p{margin:0 0 15px}img{max-width:100%;display:block}.page-bg{position:fixed;inset:0;z-index:-4;pointer-events:none;background:radial-gradient(ellipse at 52% 10%,#6130864c,transparent 39%),radial-gradient(ellipse at 15% 75%,#56257c36,transparent 40%),linear-gradient(#080511,#11091e 44%,#0a0614)}.page-bg:after{content:'✦　·　　　　✧　·　　　　　✦　　·　　　✦　　　　·　　　✧';position:absolute;inset:0;color:#ceaeed34;font-size:2rem;letter-spacing:23px;overflow:hidden;line-height:120px;word-wrap:break-word}.container{width:min(1240px,100% - 36px);margin:0 auto}.section{padding:58px 0}.center{text-align:center}.subtext{color:var(--muted);max-width:740px;margin:0 auto 27px}.eyebrow{text-transform:uppercase;letter-spacing:.21em;color:var(--gold2);font-weight:700;margin-bottom:15px}.gold{color:var(--gold)}.ornament{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--gold2);font-size:1.5rem;margin:15px 0 25px}.ornament:before,.ornament:after{content:'';height:1px;width:75px;background:linear-gradient(90deg,transparent,var(--gold2))}.ornament:after{transform:rotate(180deg)}.panel{border:1px solid var(--border);border-radius:20px 5px 20px 5px;background:linear-gradient(125deg,rgba(59,25,78,.83),rgba(16,7,29,.93));box-shadow:inset 0 0 30px #b574d617,0 10px 24px #0005;position:relative;overflow:hidden}.panel:before{content:'✦';position:absolute;right:12px;top:8px;color:#ccac78aa;pointer-events:none}.panel:hover{border-color:#f8cf88}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:99px;min-height:49px;padding:11px 22px;background:linear-gradient(115deg,#f8dea0,#ce8b46 53%,#ffe6ae);color:#271427;border:1px solid #fae6ba;font-weight:700;box-shadow:0 0 26px #eeb65f6b;text-align:center;transition:transform .2s,filter .2s}.btn:hover{transform:translateY(-2px);filter:brightness(1.12)}.btn.ghost{background:linear-gradient(125deg,#381942,#211130);color:var(--gold);box-shadow:0 0 12px #c58d4428}.btn.sm{padding:8px 17px;min-height:43px}.text-link{text-decoration:underline;text-decoration-color:#be9763;text-underline-offset:4px;color:var(--gold)}.topbar{z-index:20;position:sticky;top:0;border-bottom:1px solid #bf8a5966;background:rgba(10,5,21,.89);backdrop-filter:blur(18px)}.topbar-inner{width:min(1440px,100% - 30px);margin:auto;display:flex;justify-content:space-between;align-items:center;min-height:74px;gap:15px}.logo{font-family:'Cinzel',Georgia,serif;color:var(--gold);font-weight:700;line-height:1.18;font-size:1.02rem;display:flex;align-items:center;gap:12px}.logo-mark{display:grid;place-items:center;border:1px solid #dcb46a;border-radius:50%;font-size:1.8rem;width:43px;height:43px;box-shadow:0 0 18px #daa26980}.desktop-nav{display:none;align-items:center;gap:6px}.desktop-nav a{padding:13px 9px;color:#ecddef;white-space:nowrap}.desktop-nav a.active,.desktop-nav a:hover{color:var(--gold);border-bottom:1px solid var(--gold2)}.nav-actions{display:flex;gap:10px;align-items:center}.mobile-toggle{background:transparent;border:1px solid #a7774e;border-radius:10px;color:var(--gold);font-size:1.5rem;width:45px;height:45px}.mobile-menu{display:none;flex-direction:column;border-top:1px solid var(--border);padding:8px 18px 23px;background:#12091f}.mobile-menu.open{display:flex}.mobile-menu a{padding:12px;border-bottom:1px solid #ffffff17}.nav-account{white-space:nowrap}.topbar .nav-book{display:none}
/* MOBILE FIRST: tightly composed artistic hero, separate mobile graphic */
.hero{padding:28px 0 32px;text-align:center}.hero h1{margin:10px 0 6px;text-shadow:0 1px 0 #a16b43,0 0 27px #dca25a72}.hero .intro{font-family:Georgia,serif;font-style:italic;color:#f1e3f3;font-size:1.13rem}.moon-phase{font-size:1.4rem;color:#f4d590;letter-spacing:8px;text-shadow:0 0 22px #eea651}.hero-grid{display:flex;flex-direction:column;gap:20px;margin-top:22px}.oracle-art{position:relative;order:-1;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:365px}.oracle-art:before{content:'';position:absolute;width:90%;max-width:470px;aspect-ratio:1;border:1px solid #e1b86d77;border-radius:50%;box-shadow:0 0 0 13px #b17cc713,0 0 0 29px #ad6fff0d,0 0 50px #af67d846}.oracle-art img{width:min(100%,460px);height:370px;object-fit:cover;object-position:center 25%;mask-image:linear-gradient(#000 81%,transparent 100%);border-radius:45% 45% 4px 4px;z-index:1}.hero-col{display:grid;gap:14px}.feature-mini{padding:15px;display:grid;grid-template-columns:82px 1fr;align-items:center;text-align:left;gap:12px;min-height:135px}.feature-mini img{width:82px;height:99px;object-fit:cover;border-radius:10px;box-shadow:0 0 18px #a55fdd6b}.feature-mini h3{font-size:1.1rem;margin-bottom:5px}.feature-mini p{margin:0;color:var(--muted)}.feature-mini a{color:var(--gold);text-decoration:underline;text-underline-offset:4px}.hero-cta{display:flex;gap:13px;justify-content:center;flex-wrap:wrap;margin-top:23px}.welcome{background:linear-gradient(95deg,#1d0d2bd6,#30154768);border-block:1px solid #cd9d6060}.welcome-grid{display:grid;grid-template-columns:1fr;gap:25px;align-items:center}.welcome-art{height:220px;background:radial-gradient(ellipse,#6b34873b,transparent 70%);display:flex;justify-content:center;align-items:center;position:relative}.welcome-art img{max-height:195px;max-width:300px;width:auto;filter:drop-shadow(0 0 35px #9e66dd)}.welcome-copy .pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:19px}.pill{border:1px solid var(--border);color:#f4d4a0;border-radius:99px;padding:8px 14px;background:#27103894}.services-grid{display:grid;grid-template-columns:1fr;gap:18px}.service{padding:20px;text-align:center}.service img{width:140px;height:123px;object-fit:cover;border-radius:11px;margin:0 auto 12px;box-shadow:0 0 21px #b86fea40}.service h3{margin-bottom:8px}.service p{color:var(--muted);min-height:66px}.experience-grid{display:grid;gap:18px}.experience{padding:17px;display:grid;gap:16px;grid-template-columns:1fr;align-items:center;text-align:center}.experience img{width:100%;max-height:180px;object-fit:cover;border-radius:15px}.experience p{color:var(--muted)}.steps{display:grid;gap:20px}.step{display:flex;gap:16px;align-items:flex-start}.step-icon{flex-shrink:0;display:grid;place-items:center;width:64px;height:64px;border:1px solid var(--border);border-radius:50%;font-size:1.8rem;color:var(--gold);box-shadow:0 0 22px #9d64dd42}.step p{color:var(--muted)}.cta-section{background:linear-gradient(#1c0936bb,#280f40af),url('/assets/moon-castle.webp') center/cover;text-align:center;border-block:1px solid var(--border)}.cta-section .subtext{color:#f3e4fd}.footer{padding:45px 0 25px;background:#0d0616;border-top:1px solid #e3b6796c}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.footer h3{font-size:1.05rem}.footer p,.footer a{color:var(--muted)}.footer a{display:block;margin-bottom:9px}.footer a:hover{color:var(--gold)}.footer-last{text-align:center;margin-top:30px;padding-top:17px;border-top:1px solid #e5c17d4a;color:#bda8cb}
/* Programs */
.page-hero{text-align:center;padding:55px 0 30px}.page-hero p{color:var(--muted);max-width:730px;margin:0 auto}.program-grid{display:grid;gap:22px;grid-template-columns:1fr;align-items:start;padding:18px 0 65px}.game-main{padding:22px}.game-side{padding:22px}.game-side h3{margin-bottom:10px}.game-side p{color:var(--muted)}.game-side img{border-radius:14px;width:100%;max-height:280px;object-fit:cover;margin-bottom:18px}.chips{display:flex;gap:10px;flex-wrap:wrap;margin:19px 0}.chip{background:linear-gradient(145deg,#311a48,#1d0c30);color:#f4e4f8;border:1px solid #b88d61a5;border-radius:999px;padding:10px 15px;transition:.2s}.chip.active,.chip:hover{border-color:#ffd58c;color:#ffe7b7;box-shadow:0 0 18px #dc9f5a35;background:#563366}.choice-grid{display:grid;grid-template-columns:1fr;gap:13px;margin:22px 0}.choice-card{position:relative;border:1px solid #bd8c5d9c;background:linear-gradient(145deg,#341a49,#170d29);border-radius:15px;padding:17px;text-align:left;color:#f7efff;transition:.22s}.choice-card:hover,.choice-card.active{transform:translateY(-2px);border-color:#ffda9c;box-shadow:0 0 21px #a46ac155}.choice-card .choice-emoji{display:block;font-size:2.2rem;margin-bottom:8px}.choice-card strong{display:block;color:var(--gold);font-family:'Cinzel';margin-bottom:6px}.choice-card span{color:var(--muted)}.result{border:1px solid #efbd7d6c;border-radius:14px;background:radial-gradient(ellipse at top,#65328d75,#180b2d 73%);padding:24px;text-align:center;margin:20px 0;animation:reveal .6s ease}.result .result-symbol{font-size:4rem;display:block;filter:drop-shadow(0 0 20px #f1b9ed);margin-bottom:5px}.result h3{font-size:1.55rem}.result p{color:#e3d4ed}.result[hidden]{display:none!important}@keyframes reveal{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.field{display:grid;gap:7px;margin:15px 0}.field label{color:var(--gold);font-weight:600}.field input,.field textarea,.field select{background:#1c0d2d;border:1px solid var(--border);color:#fff;border-radius:11px;min-height:52px;padding:12px;width:100%}.field textarea{min-height:112px;resize:vertical}.game-actions{display:flex;gap:12px;flex-wrap:wrap;margin:19px 0}.progress-line{height:12px;border-radius:30px;background:#371c4a;border:1px solid #bb835855;overflow:hidden;margin:17px 0}.progress-fill{height:100%;background:linear-gradient(90deg,#7752c1,#e7a450,#ffd8a1);width:0;transition:width .4s}.cauldron{font-size:6rem;line-height:1.3;text-align:center;filter:drop-shadow(0 0 32px #a36cf9);animation:float 3.4s ease-in-out infinite;margin:15px}@keyframes float{50%{transform:translateY(-7px)}}.runes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px auto;max-width:440px}.rune{aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--border);border-radius:17px;background:radial-gradient(circle,#543275,#1a0c2c);color:#f6d6a2;font-size:2.2rem;transition:.2s}.rune:hover,.rune.active{box-shadow:0 0 21px #b276f8;transform:scale(1.04)}.tarot-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:600px;margin:20px auto}.tarot-card{border:2px solid #c69959;border-radius:13px;min-height:180px;background:radial-gradient(ellipse,#4c2781,#160a32);color:var(--gold);padding:13px 5px;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:inset 0 0 0 4px #2d133e,0 0 20px #7137a032;transition:.4s;position:relative;gap:9px}.tarot-card:not(.revealed):before{content:'☽ ✦ ☼';font-size:1.5rem;border:1px solid #d2a86a6b;padding:20px 4px;border-radius:50%}.tarot-card.revealed{background:radial-gradient(ellipse,#704679,#20112d);transform:rotateY(360deg)}.tarot-card .card-sym{font-size:2.5rem}.tarot-card .card-label{font-family:'Cinzel';font-size:1rem}.tarot-card .card-small{color:#e4cee9}.summary-list{display:grid;gap:12px;margin:20px 0}.record{border:1px solid #b58c6f66;padding:15px;border-radius:12px;background:#29143a7d}.record strong{color:var(--gold)}.record .meta{color:#bca8c8}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.stat{padding:16px;border:1px solid #b7866188;border-radius:14px;background:#241233}.stat strong{font:600 1.8rem 'Cinzel';color:var(--gold);display:block}.stat span{color:#e0c9e7}.account-grid{display:grid;grid-template-columns:1fr;gap:23px;align-items:start;padding-bottom:60px}.account-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.account-tabs button{border-radius:99px;background:#2b163e;color:var(--cream,#f4d596);border:1px solid var(--border);padding:11px 17px}.account-tabs button.active{background:#654182;border-color:#ffda91}.login-form{max-width:530px;margin:0 auto 65px;padding:30px}.login-form h2{text-align:center}.error{background:#542037;border:1px solid #ff7f94;border-radius:10px;padding:13px;margin-top:15px}.notice{border:1px solid #d5a56180;background:#2d203c;padding:13px;border-radius:12px;margin:14px 0}.muted{color:var(--muted)}.hidden,[hidden]{display:none!important}.toast{position:fixed;bottom:25px;right:22px;z-index:100;background:#2b163d;border:1px solid #e2b572;padding:17px 21px;box-shadow:0 7px 30px #0008;border-radius:14px;max-width:360px}.ghost-image{background:#37164d}.badge{display:inline-block;padding:5px 10px;border:1px solid var(--border);border-radius:20px;color:var(--gold);margin:3px 0}.socials{display:flex;gap:12px}.socials a{border-radius:50%;border:1px solid #d6a564;display:grid;place-items:center;width:41px;height:41px;color:#eac288}.seo-note{font-style:italic;color:var(--muted)}
@media(min-width:620px){.services-grid{grid-template-columns:repeat(2,1fr)}.choice-grid{grid-template-columns:repeat(2,1fr)}.experience{grid-template-columns:180px 1fr;text-align:left}.experience img{height:180px}.footer-grid{grid-template-columns:repeat(3,1fr)}.feature-mini{grid-template-columns:120px 1fr}.feature-mini img{height:120px;width:120px}.oracle-art img{height:460px}.oracle-art{min-height:460px}}
/* Tablet independent layout, minimum 15px */
@media(min-width:768px){.container{width:min(1190px,100% - 60px)}.hero{padding-top:35px}.hero-grid{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:15px;align-items:center}.oracle-art{order:0;min-height:430px}.oracle-art img{height:445px}.hero-col{gap:15px}.feature-mini{display:block;min-height:230px;text-align:center;padding:13px}.feature-mini img{width:105px;height:95px;margin:0 auto 8px}.feature-mini h3{font-size:1.06rem}.feature-mini p{line-height:1.45}.welcome-grid{grid-template-columns:1fr 1.2fr;gap:35px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-grid{grid-template-columns:repeat(2,1fr)}.experience{grid-template-columns:1fr;text-align:center}.experience img{width:100%;height:220px}.steps{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(4,1fr)}.program-grid{grid-template-columns:1.55fr .85fr}.choice-grid{grid-template-columns:repeat(2,1fr)}.account-grid{grid-template-columns:1fr 2.2fr}.topbar .nav-book{display:inline-flex}}
/* Laptop and desktop independently spaced, minimum 16px */
@media(min-width:1200px){:root{font-size:16px}.topbar-inner{min-height:83px}.desktop-nav{display:flex}.mobile-toggle,.mobile-menu{display:none!important}.hero{padding-top:50px}.hero-grid{grid-template-columns:1fr 1.48fr 1fr;gap:23px}.oracle-art{min-height:570px}.oracle-art img{height:580px;width:100%;max-width:520px}.hero-col{gap:21px}.feature-mini{display:grid;grid-template-columns:120px 1fr;text-align:left;padding:15px 12px;min-height:216px}.feature-mini img{width:120px;height:158px;object-fit:cover}.feature-mini h3{font-size:1.2rem}.services-grid{grid-template-columns:repeat(4,1fr)}.service{padding:24px 16px;min-height:350px}.service img{width:100%;height:153px}.experience{grid-template-columns:210px 1fr;text-align:left}.experience img{height:220px}.program-grid{grid-template-columns:1.6fr .83fr}.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1.1fr 1.2fr}.topbar .nav-book{display:inline-flex}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Publisher credit is hard-coded in site layout (not in editable Wix CMS content). */
.footer-last .wixsolutions-credit {color:#f3cd85;text-decoration:none;font-weight:700;display:inline-block;padding:.22rem .45rem;letter-spacing:.02em;transition:color .2s ease,text-shadow .2s ease}
.footer-last .wixsolutions-credit:hover,.footer-last .wixsolutions-credit:focus-visible {color:#fff2ce;text-decoration:underline;text-underline-offset:4px;text-shadow:0 0 16px rgba(244,185,91,.55)}
