:root{--ink:#11102a;--violet:#2b185b;--purple:#7756bd;--gold:#d9b66d;--cream:#fbf7ee;--mist:#eee8f5;--white:#fff;--muted:#6d6878}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}.stars{position:absolute;inset:0 0 auto;height:760px;pointer-events:none;background-image:radial-gradient(circle at 10% 14%,#d9b66d 0 1px,transparent 2px),radial-gradient(circle at 77% 9%,#fff8 0 1px,transparent 2px),radial-gradient(circle at 64% 25%,#d9b66d99 0 1px,transparent 2px);background-size:140px 150px,190px 180px,230px 200px}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;background:var(--violet);color:white;border-bottom:1px solid #ffffff1d;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none;font-weight:700;letter-spacing:.14em;font-size:.84rem}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border:1px solid var(--gold);border-radius:50%;color:var(--gold)}nav{display:flex;gap:34px}nav a,footer a{color:inherit;text-decoration:none;font-size:.85rem;opacity:.82}nav a:hover{opacity:1}.small-cta,.primary,.choose,.text-button,.demo-link{font:inherit;cursor:pointer}.small-cta{border:1px solid #d9b66d99;background:transparent;color:white;border-radius:3px;padding:11px 17px}.hero{min-height:670px;background:var(--violet);color:white;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;padding:55px 8vw 80px;position:relative}.hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(to bottom,transparent,var(--cream))}.hero-copy{max-width:650px;position:relative;z-index:2}.eyebrow{font-size:.72rem;letter-spacing:.2em;font-weight:700;text-transform:uppercase;color:var(--purple);display:flex;align-items:center;gap:10px}.hero .eyebrow,.eyebrow.light{color:var(--gold)}.eyebrow span{display:inline-block;width:30px;height:1px;background:currentColor}.hero h1,.section-heading h2,.process h2,.manifesto blockquote,.faq h2,dialog h2{font-family:Italiana,serif;font-weight:400}.hero h1{font-size:clamp(3.6rem,6.2vw,6.8rem);line-height:.93;margin:24px 0}.hero h1 em,.manifesto em{font-weight:400;color:var(--gold)}.intro{max-width:560px;font-size:1.08rem;line-height:1.75;color:#eee9f4}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.primary{border:0;background:var(--gold);color:var(--ink);font-weight:700;padding:16px 22px;border-radius:3px;box-shadow:0 8px 30px #0002}.primary span{margin-left:14px}.text-button{border:0;border-bottom:1px solid #ffffff70;background:transparent;color:white;padding:10px 0}.trust{display:flex;gap:24px;color:#d5cee0;font-size:.75rem;margin-top:30px}.hero-orbit{height:540px;position:relative;display:grid;place-items:center;z-index:2}.orbit{position:absolute;border:1px solid #d9b66d40;border-radius:50%}.orbit-one{width:430px;height:430px}.orbit-two{width:510px;height:510px}.moon{position:absolute;top:25px;right:12%;font-size:4rem;color:var(--gold);filter:drop-shadow(0 0 18px #d9b66d55)}.tarot-card{position:absolute;width:170px;height:290px;border-radius:8px;border:1px solid var(--gold);background:linear-gradient(145deg,#4c347e,#201044);box-shadow:0 25px 55px #0a031d99,inset 0 0 0 7px #2b185b,inset 0 0 0 8px #d9b66655;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:18px 12px;color:var(--gold)}.tarot-card b{font-size:5rem;font-weight:400}.tarot-card small{letter-spacing:.14em}.card-center{transform:translateY(-10px);z-index:3}.card-left{transform:translate(-145px,30px) rotate(-13deg)}.card-right{transform:translate(145px,30px) rotate(13deg)}.readings{padding:100px 7vw 110px}.section-heading{text-align:center;margin:auto auto 48px;max-width:620px}.section-heading .eyebrow{justify-content:center}.section-heading h2,.faq h2{font-size:3.1rem;margin:15px 0 10px}.section-heading>p:last-child{color:var(--muted)}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1180px;margin:auto;align-items:stretch}.plan{background:#fff;border:1px solid #ddd5e4;padding:34px;display:flex;flex-direction:column;position:relative;transition:.25s}.plan:hover{transform:translateY(-5px);box-shadow:0 22px 50px #29185013}.plan.featured{border:2px solid var(--purple);transform:translateY(-9px);box-shadow:0 18px 45px #29185018}.plan.featured:hover{transform:translateY(-14px)}.popular{position:absolute;top:-15px;left:50%;transform:translateX(-50%);background:var(--purple);color:white;padding:7px 18px;font-size:.67rem;letter-spacing:.12em;white-space:nowrap}.plan-icon{font-size:2rem;color:var(--purple)}.plan-type{font-size:.67rem;letter-spacing:.17em;color:var(--purple);font-weight:700}.plan h3{font-family:Italiana,serif;font-size:2rem;margin:6px 0 11px}.plan>p:not(.plan-type){color:var(--muted);line-height:1.6;min-height:75px}.plan ul{list-style:none;padding:18px 0;margin:0;border-top:1px solid #eee7f0}.plan li{font-size:.86rem;margin:11px 0;padding-left:21px;position:relative}.plan li:before{content:"✦";position:absolute;left:0;color:var(--gold)}.price{margin:auto 0 20px;padding-top:18px;display:flex;align-items:end;gap:10px}.price strong{font-family:Italiana;font-size:2.2rem}.price span{font-size:.7rem;color:var(--muted);padding-bottom:5px}.choose{width:100%;background:var(--violet);color:white;border:0;padding:15px;font-weight:700;border-radius:3px}.featured .choose{background:var(--gold);color:var(--ink)}.process{background:var(--violet);color:white;padding:90px 9vw;display:grid;grid-template-columns:1fr 1.25fr;gap:9vw;align-items:center}.process h2{font-size:3.6rem;line-height:1.05;margin:22px 0}.process ol{list-style:none;padding:0;margin:0}.process li{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid #ffffff22}.process li b{font-family:Italiana;font-size:1.4rem;color:var(--gold)}.process li span{display:flex;flex-direction:column;gap:7px}.process li strong{font-size:1.05rem}.process li small{color:#bdb4cc;line-height:1.5}.manifesto{text-align:center;padding:115px 20px;background:#eee8f5}.quote-mark{font-family:Italiana;font-size:6rem;color:var(--gold);line-height:.5}.manifesto blockquote{font-size:clamp(2.1rem,4vw,4rem);line-height:1.2;margin:25px 0}.manifesto p{letter-spacing:.2em;font-size:.7rem;color:var(--purple)}.faq{padding:100px 8vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.faq .section-heading{text-align:left;margin:0}.faq .eyebrow{justify-content:flex-start}.faq-list details{border-top:1px solid #d8d0df;padding:20px 0}.faq-list details:last-child{border-bottom:1px solid #d8d0df}summary{cursor:pointer;list-style:none;font-weight:600;display:flex;justify-content:space-between;gap:20px}summary span{color:var(--purple);font-size:1.4rem}details p{color:var(--muted);line-height:1.65;padding-right:40px}footer{background:#120b27;color:white;padding:50px 7vw;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}footer>p{color:#bfb7ca}footer>div:nth-of-type(2){display:flex;gap:25px}footer small{grid-column:1/-1;color:#8e869a;border-top:1px solid #ffffff19;padding-top:25px}dialog{width:min(720px,calc(100% - 28px));max-height:90vh;border:0;border-radius:8px;padding:46px;background:var(--cream);color:var(--ink);box-shadow:0 35px 100px #080311aa}dialog::backdrop{background:#100724d9;backdrop-filter:blur(5px)}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:2rem;cursor:pointer;color:var(--muted)}.dialog-lead{color:var(--muted);margin-top:-10px}.dialog-lead+form{margin-top:28px}label{display:block;font-weight:600;margin:16px 0;font-size:.85rem}input,textarea{display:block;width:100%;margin-top:8px;border:1px solid #d7cfdf;background:white;padding:13px 14px;font:inherit;border-radius:4px;outline:none}input:focus,textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7756bd19}textarea{height:105px;resize:vertical}label>small{display:block;text-align:right;color:var(--muted);margin-top:4px}.checkout-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ddd5e4;margin-top:22px;padding-top:22px}.checkout-row>div{display:flex;flex-direction:column}.checkout-row strong{font-family:Italiana;font-size:2rem}.demo-link{display:block;margin:16px auto 0;border:0;background:none;text-decoration:underline;color:var(--purple)}.secure{text-align:center;font-size:.72rem;color:var(--muted)}#shuffleView{text-align:center;padding:70px 0}.shuffle-icon{font-size:4rem;color:var(--gold);animation:pulse 1.2s infinite}.loading{height:3px;background:#ddd5e4;overflow:hidden;margin:30px auto;width:80%}.loading span{display:block;height:100%;background:var(--purple);animation:load 2.4s ease-in-out}.question-quote{padding:14px 18px;border-left:2px solid var(--gold);background:#fff;color:var(--muted)}.result-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:25px 0}.result-card{background:var(--violet);color:white;border:1px solid var(--gold);padding:13px;border-radius:5px;min-height:155px}.result-card small{color:var(--gold);font-size:.68rem;text-transform:uppercase}.result-card b{font-family:Italiana;font-size:1.12rem;display:block;margin:8px 0}.result-card p{font-size:.72rem;line-height:1.5;color:#ddd5e8;margin:0}.synthesis{background:white;padding:20px;margin:20px 0}.synthesis h3{font-family:Italiana;font-size:1.6rem;margin:0 0 10px}.synthesis p{line-height:1.7;color:var(--muted)}@keyframes pulse{50%{transform:scale(1.15);opacity:.6}}@keyframes load{from{width:0}to{width:100%}}@media(max-width:900px){header nav{display:none}.hero{grid-template-columns:1fr;padding:65px 7vw 80px}.hero h1{font-size:4.2rem}.hero-orbit{height:430px}.orbit-one{width:340px;height:340px}.orbit-two{width:400px;height:400px}.tarot-card{width:135px;height:230px}.card-left{transform:translate(-110px,30px) rotate(-13deg)}.card-right{transform:translate(110px,30px) rotate(13deg)}.plans{grid-template-columns:1fr;max-width:520px}.plan.featured{transform:none}.plan.featured:hover{transform:translateY(-5px)}.process,.faq{grid-template-columns:1fr}.faq{gap:25px}footer{grid-template-columns:1fr}}@media(max-width:560px){header{padding:0 20px}.small-cta{display:none}.brand{font-size:.73rem}.hero{min-height:auto;padding-top:60px}.hero h1{font-size:3.45rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.trust{flex-direction:column;gap:8px}.hero-orbit{height:365px}.orbit-one{width:285px;height:285px}.orbit-two{width:330px;height:330px}.tarot-card{width:112px;height:195px}.tarot-card b{font-size:3.5rem}.card-left{transform:translate(-87px,25px) rotate(-12deg)}.card-right{transform:translate(87px,25px) rotate(12deg)}.readings,.faq{padding:80px 20px}.plan{padding:28px}.process{padding:75px 24px}.process h2,.section-heading h2,.faq h2{font-size:2.6rem}.manifesto{padding:90px 16px}footer{padding:45px 24px}dialog{padding:38px 22px}.checkout-row{align-items:flex-start;gap:15px}.checkout-row .primary{padding:14px 12px}.result-cards{grid-template-columns:1fr 1fr}}
@media print{body>*:not(dialog){display:none}dialog{position:static;display:block;max-height:none;width:100%;box-shadow:none}dialog .close,dialog .primary{display:none}}
.image-card{background-image:linear-gradient(to top,#120b27ee 0 17%,transparent 38%),url('assets/tarot-major-arcana.png');background-size:600% 100%;background-position:calc(var(--card-index) * 20%) center;background-repeat:no-repeat;justify-content:flex-end;text-shadow:0 2px 8px #000}.image-card small{font-weight:700;color:#fff}.oracle-hub{padding:100px 7vw 35px;background:var(--cream)}.oracle-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.oracle-card{min-height:220px;padding:34px;background:#fff;border:1px solid #ded6e6;display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:start;transition:.25s}.oracle-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #29185016}.oracle-card.tarot-service{background:var(--violet);color:white;border-color:var(--violet)}.oracle-symbol{width:58px;height:58px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-family:Italiana;font-size:1.75rem;color:var(--gold)}.oracle-card small{letter-spacing:.18em;font-weight:700;color:var(--purple)}.tarot-service small{color:var(--gold)}.oracle-card h3{font-family:Italiana;font-size:2rem;margin:8px 0}.oracle-card p{color:var(--muted);line-height:1.6;margin:0}.tarot-service p{color:#cfc7dd}.oracle-card button{grid-column:2;border:0;border-bottom:1px solid currentColor;background:none;color:var(--purple);justify-self:start;padding:5px 0;font:inherit;font-weight:700;cursor:pointer}.tarot-service button{color:var(--gold)}.field-pair{display:grid;grid-template-columns:1fr 1.4fr;gap:14px}.result-card .card-visual{height:185px;margin:-13px -13px 12px;background-image:url('assets/tarot-major-arcana.png');background-size:600% 100%;background-position:calc(var(--art-index) * 20%) center;border-bottom:1px solid var(--gold)}.result-card.rune-card{text-align:center;min-height:190px}.rune-glyph{font-size:4rem;color:var(--gold);display:block;margin:12px}.number-result{grid-column:1/-1;background:#fff;color:var(--ink);border:1px solid var(--gold);text-align:center;padding:30px}.number-result strong{font-family:Italiana;font-size:5rem;color:var(--purple);display:block}@media(max-width:700px){.oracle-grid{grid-template-columns:1fr}.oracle-card{grid-template-columns:55px 1fr;padding:25px}.oracle-symbol{width:48px;height:48px}.field-pair{grid-template-columns:1fr}.result-card .card-visual{height:160px}}
