@font-face{font-family:Cormorant Fallback;src:local("Georgia");size-adjust:89%;ascent-override:92%;descent-override:26%}@font-face{font-family:Almendra Fallback;src:local("Georgia");font-weight:700;size-adjust:85%;ascent-override:112%;descent-override:41%}:root{--night-velvet: #08040f;--night-velvet-deep: #100819;--glass-panel: rgba(26, 15, 46, .6);--panel-solid: #1b1030;--amethyst: #a883ff;--amethyst-pale: #c9b0ff;--orchid: #e46bd6;--gilt: #e9c46a;--ink: #1a0e2e;--moonlit-text: #ece4ff;--text-dim: #b6a7d8;--text-faint: #8f7fb3;--orchid-tint: #ffc7f4;--orchid-soft: #ffb0e6;--border-ghost: rgba(168, 130, 255, .18);--border-lit: rgba(183, 148, 255, .45);--fill-rest: rgba(255, 255, 255, .03);--well: rgba(8, 4, 15, .65);--tint-1: rgba(168, 131, 255, .08);--tint-2: rgba(168, 131, 255, .12);--tint-3: rgba(168, 131, 255, .2);--orchid-wash: rgba(228, 107, 214, .12);--orchid-line: rgba(228, 107, 214, .45);--gilt-line: rgba(233, 196, 106, .35);--gilt-wash: rgba(233, 196, 106, .14);--gradient-go: linear-gradient(120deg, var(--amethyst-pale), var(--orchid));--halo-sm: 0 0 16px rgba(233, 196, 106, .5);--halo-lg: 0 0 30px rgba(233, 196, 106, .7);--glow: 0 0 40px rgba(168, 131, 255, .35);--bloom: 0 8px 30px rgba(196, 128, 240, .4);--bloom-hover: 0 12px 40px rgba(196, 128, 240, .55);--shadow-anchor: 0 20px 60px rgba(6, 2, 14, .7);--nebula-glow: rgba(196, 128, 240, .28);--r-xs: 10px;--r-sm: 12px;--r-md: 14px;--r-lg: 18px;--r-xl: 24px;--r-pill: 999px;--display: "Almendra", "Almendra Fallback", "Cormorant Garamond", "Cormorant Fallback", Georgia, serif;--serif: "Cormorant Garamond", "Cormorant Fallback", Georgia, serif;--sans: Inter, system-ui, -apple-system, sans-serif;--fs-micro: .75rem;--fs-label: .8rem;--fs-sm: .875rem;--fs-body: 1rem;--fs-lead: 1.125rem;--fs-title-sm: 1.25rem;--fs-title: 1.5rem;--fs-title-lg: 1.75rem;--fs-headline: clamp(2rem, 5vw, 2.8rem);--fs-display: clamp(2.6rem, 7.6vw, 4.75rem);--glyph-inline: 1.5rem;--glyph-card: 2.25rem;--glyph-moment: 3rem;--lh-tight: 1.1;--lh-body: 1.6;--lh-small: 1.5;font-family:var(--sans);color:var(--moonlit-text);background-color:var(--night-velvet);line-height:var(--lh-body);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(1200px 800px at 80% -10%,rgba(228,107,214,.12),transparent 60%),radial-gradient(1000px 700px at 0% 20%,rgba(122,76,210,.18),transparent 55%),linear-gradient(180deg,var(--night-velvet) 0%,var(--night-velvet-deep) 100%);background-attachment:fixed;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:var(--lh-tight);margin:0;letter-spacing:.5px;text-wrap:balance}h1,h2,.panel-title,.brand-name,.admin-brand,.footer p{font-family:var(--display);font-weight:700;letter-spacing:0}button{font:inherit;line-height:1.2;cursor:pointer}strong,b{font-weight:600}::selection{background:var(--amethyst);color:var(--ink)}:focus-visible{outline:2px solid var(--amethyst);outline-offset:3px;border-radius:var(--r-xs)}button:focus-visible,a:focus-visible{box-shadow:0 0 0 4px var(--tint-3)}.btn-primary:focus-visible{box-shadow:var(--bloom),0 0 0 4px var(--tint-3)}input,textarea{caret-color:var(--amethyst)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sky-stars,.shooting-star,.glint{animation:none!important}.shooting-star,.glint{display:none}.tarot-table.stacked .tarot-card{transform:none}.tarot-card,.tarot-table.settled .deck{transition:none}}.sky{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.sky-stars{position:absolute;inset:-10%;background-repeat:repeat}.sky-stars-far{background-image:radial-gradient(1px 1px at 12% 18%,rgba(236,228,255,.55),transparent),radial-gradient(1px 1px at 38% 62%,rgba(236,228,255,.45),transparent),radial-gradient(1px 1px at 61% 27%,rgba(201,176,255,.5),transparent),radial-gradient(1px 1px at 83% 73%,rgba(236,228,255,.4),transparent),radial-gradient(1px 1px at 26% 88%,rgba(236,228,255,.45),transparent),radial-gradient(1px 1px at 92% 44%,rgba(201,176,255,.4),transparent),radial-gradient(1px 1px at 48% 8%,rgba(236,228,255,.35),transparent),radial-gradient(1px 1px at 70% 92%,rgba(236,228,255,.4),transparent),radial-gradient(1px 1px at 5% 50%,rgba(236,228,255,.4),transparent),radial-gradient(1px 1px at 55% 45%,rgba(201,176,255,.35),transparent),radial-gradient(1px 1px at 78% 6%,rgba(236,228,255,.3),transparent),radial-gradient(1px 1px at 30% 40%,rgba(236,228,255,.45),transparent),radial-gradient(1px 1px at 88% 88%,rgba(201,176,255,.35),transparent),radial-gradient(1px 1px at 15% 70%,rgba(236,228,255,.3),transparent);background-size:340px 340px;animation:twinkle-far 9s ease-in-out infinite alternate;opacity:.55}.sky-stars-mid{background-image:radial-gradient(1.4px 1.4px at 20% 30%,rgba(255,255,255,.75),transparent),radial-gradient(1.2px 1.2px at 75% 15%,rgba(233,196,106,.7),transparent),radial-gradient(1.6px 1.6px at 40% 70%,rgba(201,176,255,.75),transparent),radial-gradient(1px 1px at 90% 55%,rgba(255,255,255,.6),transparent),radial-gradient(1.3px 1.3px at 12% 85%,rgba(228,107,214,.6),transparent),radial-gradient(1px 1px at 60% 40%,rgba(255,255,255,.5),transparent),radial-gradient(1.2px 1.2px at 35% 5%,rgba(236,228,255,.6),transparent),radial-gradient(1.5px 1.5px at 82% 78%,rgba(201,176,255,.65),transparent),radial-gradient(1px 1px at 50% 92%,rgba(255,255,255,.5),transparent),radial-gradient(1.2px 1.2px at 8% 20%,rgba(233,196,106,.5),transparent);background-size:460px 460px;animation:twinkle-mid 7s ease-in-out infinite alternate;opacity:.6}.sky-stars-near{background-image:radial-gradient(2px 2px at 8% 52%,rgba(255,255,255,.9),transparent),radial-gradient(2.2px 2.2px at 66% 82%,rgba(233,196,106,.85),transparent),radial-gradient(1.8px 1.8px at 85% 22%,rgba(201,176,255,.9),transparent),radial-gradient(2px 2px at 33% 12%,rgba(255,255,255,.8),transparent),radial-gradient(1.8px 1.8px at 58% 60%,rgba(255,255,255,.75),transparent),radial-gradient(2px 2px at 20% 88%,rgba(233,196,106,.7),transparent);background-size:700px 700px;animation:twinkle-near 5.5s ease-in-out infinite alternate;opacity:.5}@keyframes twinkle-far{0%{opacity:.35}to{opacity:.7}}@keyframes twinkle-mid{0%{opacity:.4;transform:translateZ(0)}to{opacity:.8;transform:translate3d(-4px,2px,0)}}@keyframes twinkle-near{0%{opacity:.3}to{opacity:.75}}.glint{position:absolute;width:14px;height:14px;opacity:0;transform:scale(.4) rotate(0);background:radial-gradient(circle,rgba(255,255,255,.95) 0 1.2px,transparent 1.6px),linear-gradient(90deg,transparent 0 46%,rgba(236,228,255,.9) 50%,transparent 54% 100%),linear-gradient(0deg,transparent 0 46%,rgba(236,228,255,.9) 50%,transparent 54% 100%);filter:drop-shadow(0 0 3px rgba(201,176,255,.8));animation:glint 13s ease-in-out infinite}.glint-1{top:18%;left:12%;animation-duration:13s;animation-delay:2s}.glint-2{top:34%;left:84%;animation-duration:17s;animation-delay:6s}.glint-3{top:62%;left:28%;animation-duration:11s;animation-delay:9s}.glint-4{top:8%;left:58%;animation-duration:19s;animation-delay:4s}.glint-5{top:78%;left:70%;animation-duration:15s;animation-delay:12s}.glint-6{top:46%;left:44%;animation-duration:23s;animation-delay:15s}@keyframes glint{0%,to{opacity:0;transform:scale(.4) rotate(0)}3%{opacity:.85;transform:scale(1) rotate(20deg)}6%{opacity:0;transform:scale(.4) rotate(40deg)}}.shooting-star{position:absolute;top:12%;left:70%;width:140px;height:1.5px;border-radius:999px;background:linear-gradient(90deg,#e9c46af2,#ece4ffd9 25%,#ece4ff00);transform:rotate(-32deg) translateZ(0);opacity:0;animation:shoot 18s linear infinite;filter:drop-shadow(0 0 4px rgba(201,176,255,.6))}.shooting-star:after{content:"";position:absolute;left:-2px;top:-1.5px;width:4px;height:4px;border-radius:50%;background:var(--moonlit-text);box-shadow:var(--halo-sm)}.shooting-star-1{top:10%;left:62%;animation-delay:3s}.shooting-star-2{top:28%;left:18%;width:110px;animation-duration:23s;animation-delay:11s}.shooting-star-3{top:55%;left:78%;width:90px;animation-duration:21s;animation-delay:17s}.shooting-star-burst{top:22%;left:55%;animation:shoot-burst 1.6s linear 1}@keyframes shoot-burst{0%{opacity:0;transform:rotate(-32deg) translateZ(0)}10%{opacity:.9}85%{opacity:.9}to{opacity:0;transform:rotate(-32deg) translate3d(-360px,0,0)}}@keyframes shoot{0%{opacity:0;transform:rotate(-32deg) translateZ(0)}1%{opacity:.9}6%{opacity:.9}8%{opacity:0;transform:rotate(-32deg) translate3d(-360px,0,0)}to{opacity:0;transform:rotate(-32deg) translate3d(-360px,0,0)}}.loader{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:radial-gradient(600px 400px at 50% 45%,var(--nebula-glow),transparent 70%),var(--night-velvet)}.loader.is-zooming{pointer-events:none;animation:arrive-out .7s cubic-bezier(.6,0,.9,.5) forwards}.monogram{width:min(320px,70vw);height:auto;overflow:visible;filter:drop-shadow(var(--halo-sm))}.is-zooming .monogram{will-change:transform,opacity;animation:arrive-zoom .7s cubic-bezier(.55,0,.85,.35) forwards}.monogram text{font-family:var(--display);font-style:italic;font-weight:400;fill:var(--gilt);fill-opacity:0;stroke:var(--gilt);stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:900;stroke-dashoffset:900}.is-drawing .monogram text{animation:mono-draw 1.25s cubic-bezier(.4,0,.3,1) forwards,mono-fill .5s ease 1s forwards}@keyframes mono-draw{to{stroke-dashoffset:0}}@keyframes mono-fill{to{fill-opacity:1}}@keyframes arrive-zoom{to{transform:scale(9);opacity:0}}@keyframes arrive-out{to{opacity:0}}html.arriving .page{animation:page-arrive .7s cubic-bezier(.2,.75,.2,1) both}@keyframes page-arrive{0%{transform:scale(.965);opacity:.4}to{transform:none;opacity:1}}.page{position:relative;z-index:1;max-width:1080px;margin:0 auto;padding:0 20px 60px}.nav{display:flex;align-items:center;justify-content:center;padding:22px 4px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--moonlit-text)}.brand-glyph{font-size:var(--glyph-inline);color:var(--gilt);text-shadow:var(--halo-sm)}.brand-name{font-size:var(--fs-title-lg)}.hero{position:relative;text-align:center;padding:70px 10px 40px}.hero-glow{position:absolute;top:-40px;left:50%;transform:translate(-50%);width:460px;height:460px;max-width:90vw;background:radial-gradient(circle,var(--nebula-glow),transparent 65%);filter:blur(20px);z-index:-1;animation:breathe 7s ease-in-out infinite alternate}@keyframes breathe{0%{opacity:.6;transform:translate(-50%) scale(.95)}to{opacity:1;transform:translate(-50%) scale(1.08)}}.eyebrow{text-transform:uppercase;letter-spacing:4px;font-size:var(--fs-micro);color:var(--amethyst);margin:0 0 14px}.hero-title{font-size:var(--fs-display);line-height:1.02;letter-spacing:0;background:linear-gradient(120deg,var(--moonlit-text) 10%,var(--amethyst-pale) 55%,var(--orchid));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:22px}.hero-sub{max-width:560px;margin:0 auto 30px;color:var(--text-dim);font-size:var(--fs-lead);line-height:1.55;text-wrap:pretty}.hero-btn{display:inline-block;text-decoration:none}.moon-phases{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:46px;font-size:var(--glyph-inline);filter:saturate(.6) brightness(1.1);opacity:.8}.btn-primary{border:none;border-radius:var(--r-pill);padding:14px 30px;font-size:var(--fs-body);font-weight:600;color:var(--ink);background:var(--gradient-go);box-shadow:var(--bloom);transition:transform .18s ease,box-shadow .18s ease,filter .18s}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--bloom-hover);filter:brightness(1.05)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn-primary.full{width:100%;margin-top:26px}.btn-ghost{background:transparent;color:var(--amethyst-pale);border:1px solid var(--border-lit);border-radius:var(--r-pill);padding:11px 22px;font-size:var(--fs-sm);font-weight:500;transition:background-color .2s,transform .2s,border-color .2s}.btn-ghost:hover{background:var(--tint-2);transform:translateY(-1px)}.section-title{text-align:center;font-size:var(--fs-headline);margin-top:60px}.section-sub{text-align:center;color:var(--text-dim);font-size:var(--fs-body);margin:8px 0 34px}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}.spread-pager{display:none}.tarot-table{position:relative;perspective:1600px}.tarot-table:has(.deck){padding-top:24px}.deck{position:absolute;left:50%;top:-6px;width:128px;height:200px;transform:translate(-50%);pointer-events:none;z-index:0;transition:opacity .6s ease,transform .6s ease}.tarot-table.settled .deck{opacity:0;transform:translate(-50%,-14px)}.tarot-table.stacked .deck{transition:none}.deck-card,.tarot-back{border-radius:var(--r-md);background:radial-gradient(circle at 50% 50%,var(--gilt-wash) 0 16%,transparent 17%),repeating-linear-gradient(45deg,var(--tint-2) 0 5px,transparent 5px 11px),repeating-linear-gradient(-45deg,var(--tint-1) 0 5px,transparent 5px 11px),var(--panel-solid);border:1px solid var(--border-lit);box-shadow:inset 0 0 0 5px var(--night-velvet),inset 0 0 0 6px var(--gilt-line),0 8px 24px #06020e99}.deck-card{position:absolute;inset:0}.deck-card:nth-child(2){transform:translate(3px,-3px) rotate(1.5deg)}.deck-card:nth-child(3){transform:translate(-3px,-6px) rotate(-2deg)}.tarot-card{position:relative;z-index:1;min-height:420px;transform-style:preserve-3d;border-radius:var(--r-md);transition:transform var(--deal-flight, .85s) cubic-bezier(.2,.75,.2,1),box-shadow .25s;transition-delay:calc(var(--i, 0) * var(--deal-stagger, .12s)),0s}.tarot-table.stacked .tarot-card{transform:translate(var(--dx, 0px),var(--dy, 0px)) scale(.55) rotateY(180deg) rotate(calc(var(--i, 0) * 1.5deg - 2deg));transition:none}.tarot-face,.tarot-back{-webkit-backface-visibility:hidden;backface-visibility:hidden}.tarot-face{position:relative;display:flex;flex-direction:column;height:100%;min-height:inherit;padding:30px 22px 22px;border:1px solid var(--border-ghost);border-radius:var(--r-md);background:var(--panel-solid);transition:border-color .25s}.tarot-table.settled .tarot-face{background:var(--glass-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tarot-table.dealt .tarot-card{will-change:transform}.tarot-face:before{content:"";position:absolute;inset:9px;border:1px solid var(--gilt-line);border-radius:var(--r-xs);pointer-events:none}.tarot-back{position:absolute;inset:0;transform:rotateY(180deg);display:grid;place-items:center}.tarot-back-mark{font-size:var(--glyph-card);color:var(--gilt);text-shadow:var(--halo-sm)}.tarot-table.settled .tarot-card:hover{transform:translateY(-6px);box-shadow:var(--glow);transition-delay:0s}.tarot-table.settled .tarot-card:hover .tarot-face{border-color:var(--border-lit)}.service-card{display:flex;flex-direction:column}.service-card.selected{box-shadow:var(--glow)}.service-card.selected .tarot-face{border-color:var(--border-lit)}.service-glyph,.tarot-face h3,.tarot-face .service-tagline{text-align:center}.service-card .btn-primary{padding:11px 22px;font-size:var(--fs-sm)}.service-card .btn-ghost,.service-card .btn-primary{margin-top:auto}.service-glyph{font-size:var(--glyph-card);color:var(--gilt);margin-bottom:12px;text-shadow:var(--halo-sm)}.service-card h3{font-size:var(--fs-title);margin-bottom:4px}.service-tagline{color:var(--amethyst);font-size:var(--fs-sm);line-height:var(--lh-small);margin:0 0 12px}.service-desc{color:var(--text-dim);font-size:var(--fs-sm);line-height:var(--lh-small);flex:1;margin:0 0 18px}.service-meta{display:flex;justify-content:space-between;align-items:center;color:var(--text-dim);font-size:var(--fs-sm);margin-bottom:18px}.service-price{font-family:var(--serif);font-size:var(--fs-title);font-variant-numeric:lining-nums tabular-nums;color:var(--gilt);font-weight:600;text-shadow:var(--halo-sm)}.booking{margin-top:80px;scroll-margin-top:20px}.booking-card{background:var(--glass-panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-lit);border-radius:var(--r-xl);padding:34px;box-shadow:var(--shadow-anchor),var(--glow);max-width:640px;margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.steps{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 26px;padding:0;list-style:none}.step-dot{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);color:var(--text-faint);padding:6px 14px;border-radius:var(--r-pill);transition:color .3s}.step-dot span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--tint-2);font-size:var(--fs-micro)}.step-dot.active{color:var(--moonlit-text)}.step-dot.active span{background:var(--gradient-go);color:var(--ink);font-weight:600}.step-dot.done{color:var(--text-dim)}.step-dot.done span{background:var(--tint-2);color:var(--amethyst-pale);font-weight:600}.panel{animation:rise .35s ease both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.panel-title:focus:not(:focus-visible){outline:none}.panel-title{font-size:var(--fs-title-lg);margin-bottom:20px;text-align:center}.back{background:none;border:none;color:var(--amethyst);font-size:var(--fs-sm);padding:0 0 14px}.back:hover{color:var(--amethyst-pale)}.service-card h3,.summary strong,.confirm-when{overflow-wrap:anywhere;letter-spacing:.5px}.field-hint{font-size:var(--fs-label);color:var(--text-faint);text-align:right}.choice-group{border:0;padding:0;margin:0 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.field-legend{grid-column:1 / -1;padding:0;margin-bottom:2px;font-size:var(--fs-sm);color:var(--text-dim)}.choice{position:relative;display:flex;flex-direction:column;gap:2px;min-height:44px;padding:12px 14px;background:var(--fill-rest);border:1px solid var(--border-ghost);border-radius:var(--r-sm);color:var(--moonlit-text);cursor:pointer;transition:border-color .18s,background-color .18s,color .18s}.choice input{position:absolute;opacity:0;width:1px;height:1px}.choice strong{font-size:var(--fs-body);font-weight:600;color:inherit}.choice small{font-size:var(--fs-sm);color:var(--text-dim)}.choice:hover{border-color:var(--border-lit)}.choice.on{background:var(--gradient-go);border-color:transparent;color:var(--ink)}.choice.on small{color:var(--ink)}.choice:has(input:focus-visible){outline:2px solid var(--amethyst);outline-offset:3px}.confirm-how{margin:-10px 0 18px;color:var(--amethyst);font-size:var(--fs-sm);text-align:center}.panel-note{margin:-12px 0 6px}.reassure{margin:-8px 0 20px;text-align:left}.confirm-actions{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:18px}.confirm-actions .btn-ghost{text-decoration:none}.confirm-actions .linkbtn{font-size:var(--fs-sm);min-height:44px}.linkbtn{background:none;border:none;color:var(--amethyst);font-size:var(--fs-sm);display:inline-flex;align-items:center;min-height:44px;padding:0 6px}.linkbtn:hover{color:var(--amethyst-pale)}.alert .linkbtn{color:var(--orchid-tint);text-decoration:underline;text-underline-offset:3px}.alert:focus{outline:none}.panel .alert{margin:4px 0 16px}.field-label{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:2px;color:var(--text-dim);margin:18px 0 10px}.soonest{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 14px;width:100%;margin:2px 0 22px;padding:10px 16px;text-align:left;background:var(--fill-rest);border:1px solid var(--border-ghost);border-radius:var(--r-md);color:var(--moonlit-text);transition:border-color .18s,background-color .18s}.soonest:hover{border-color:var(--border-lit);background:var(--tint-2)}.soonest-label{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:2px;color:var(--text-dim)}.soonest-when{font-family:var(--serif);font-size:var(--fs-title-sm);font-weight:600;letter-spacing:.5px;font-variant-numeric:lining-nums tabular-nums;color:var(--amethyst-pale)}.calendar{display:flex;flex-direction:column;gap:22px}.cal-month-name{font-size:var(--fs-title-sm);color:var(--moonlit-text);margin:0 0 6px}.cal-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:4px}.cal-head .cal-cell{font-family:var(--sans);font-weight:400;font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:2px;color:var(--text-faint);height:auto;min-height:0;padding:2px 0 4px}.cal-cell{position:relative;display:flex;align-items:center;justify-content:center;height:48px;font-family:var(--serif);font-size:var(--fs-title-sm);font-weight:600;line-height:1;font-variant-numeric:lining-nums tabular-nums;border-radius:var(--r-md)}.cal-out{color:var(--text-faint);opacity:.35}.cal-day{padding:0;background:var(--fill-rest);border:1px solid var(--border-ghost);color:var(--moonlit-text);transition:border-color .18s,background-color .18s,color .18s}.cal-day:hover:not(:disabled){border-color:var(--border-lit);background:var(--tint-2)}.cal-day.selected{background:var(--gradient-go);color:var(--ink);border-color:transparent}.cal-day:disabled{opacity:.4;cursor:not-allowed}.cal-day.full:disabled{opacity:.45;color:var(--text-dim)}.cal-day.today:after{content:"";position:absolute;left:50%;bottom:6px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--amethyst-pale)}.cal-day.today.selected:after{background:var(--ink)}.moments{margin:18px 0 8px;padding:20px 0 22px;border-top:1px solid var(--border-ghost);border-bottom:1px solid var(--border-ghost)}.cal-month:last-child .moments{margin-bottom:0;padding-bottom:0;border-bottom:0}.moments-title{font-size:var(--fs-title-sm);color:var(--amethyst-pale);margin:0 0 12px}.moments-note{margin:12px 0 0;font-size:var(--fs-sm);text-align:left}.slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(6em,1fr));gap:10px}.slot{padding:12px 6px;background:var(--fill-rest);border:1px solid var(--border-ghost);border-radius:var(--r-sm);color:var(--moonlit-text);font-size:var(--fs-body);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap;transition:border-color .18s,background-color .18s,color .18s}.slot:hover:not(:disabled){border-color:var(--border-lit);background:var(--tint-2)}.slot.selected{background:var(--gradient-go);color:var(--ink);border-color:transparent;font-weight:600}.slot:disabled{opacity:.45;color:var(--text-dim);cursor:not-allowed}.summary{display:flex;align-items:center;gap:14px;background:var(--tint-1);border:1px solid var(--border-ghost);border-radius:var(--r-md);padding:14px 18px;margin-bottom:22px}.summary-glyph{font-size:var(--glyph-inline);color:var(--gilt);text-shadow:var(--halo-sm)}.summary div{flex:1;display:flex;flex-direction:column}.summary strong{font-family:var(--serif);font-size:var(--fs-title);font-weight:600;line-height:var(--lh-tight);letter-spacing:.5px}.summary small{color:var(--text-dim);font-size:var(--fs-sm);line-height:var(--lh-small);margin-top:2px}.summary small span{white-space:nowrap}.summary-price{font-family:var(--serif);font-size:var(--fs-title);font-weight:600;font-variant-numeric:lining-nums tabular-nums;color:var(--gilt);text-shadow:var(--halo-sm)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field>span{font-size:var(--fs-sm);color:var(--text-dim)}.field>span em{color:var(--text-faint);font-style:normal}.field input,.field textarea{background:var(--well);border:1px solid var(--border-ghost);border-radius:var(--r-sm);padding:13px 15px;color:var(--moonlit-text);font-family:inherit;font-size:var(--fs-body);line-height:1.4;transition:border-color .2s,box-shadow .2s;resize:vertical}.field input::placeholder,.field textarea::placeholder{color:var(--text-faint)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--amethyst);box-shadow:0 0 0 3px var(--tint-3)}.confirm{text-align:center}.confirm-glyph{font-size:var(--glyph-moment);color:var(--gilt);text-shadow:var(--halo-lg);margin-bottom:10px;animation:spinGlow 4s linear infinite}@keyframes spinGlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.confirm-when{font-family:var(--serif);font-size:var(--fs-title-lg);font-weight:600;font-variant-numeric:lining-nums tabular-nums;color:var(--amethyst-pale);margin:6px 0 18px}.alert{background:var(--orchid-wash);border:1px solid var(--orchid-line);color:var(--orchid-tint);padding:12px 16px;border-radius:var(--r-sm);font-size:var(--fs-sm);margin-bottom:20px;text-align:center}.muted{color:var(--text-dim);text-align:center;font-size:var(--fs-sm);line-height:var(--lh-small)}.footer{text-align:center;margin-top:90px;padding-top:30px;border-top:1px solid var(--border-ghost);color:var(--text-dim)}.footer .brand-glyph{display:block;margin-bottom:8px}.footer p{font-size:var(--fs-title-sm);margin:0 0 4px}.footer small{color:var(--text-faint);font-size:var(--fs-label)}.btn-ghost,.slot,.cal-day,.soonest,.tab,.segmented button,.day,.sm,.row-actions button{min-height:44px}.btn-primary,.primary{min-height:48px}.btn-ghost{display:inline-flex;align-items:center;justify-content:center}.back{display:inline-flex;align-items:center;min-height:44px;padding:0 4px 0 0;margin:-6px 0 8px}.page{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right));padding-bottom:max(60px,env(safe-area-inset-bottom))}@media(max-width:540px){.booking-card{padding:22px 18px}.step-dot{padding:6px 8px;font-size:var(--fs-micro)}.hero{padding-top:48px;padding-bottom:24px}.moon-phases{margin-top:28px;gap:10px;font-size:var(--fs-lead)}.booking{margin-top:48px}.cal-row{gap:3px}.cal-cell{height:44px;font-size:min(var(--fs-title-sm),5.5vw)}.cal-head .cal-cell{font-size:min(var(--fs-micro),3vw)}.service-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:44px 4px;margin:-40px -4px -28px;scrollbar-width:none}.service-grid::-webkit-scrollbar{display:none}.spread-pager{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:4px}.spread-dots{display:flex;list-style:none;margin:0;padding:0}.spread-dots button{display:flex;align-items:center;justify-content:center;width:24px;min-height:44px;padding:0;background:none;border:0;border-radius:var(--r-pill)}.spread-dots button:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--tint-3);transition:transform .25s,background-color .25s}.spread-dots button.on:before{background:var(--amethyst-pale);transform:scale(1.35)}.spread-count{font-family:var(--serif);font-size:var(--fs-title-sm);font-weight:600;font-variant-numeric:lining-nums tabular-nums;color:var(--text-dim)}.tarot-card{flex:0 0 min(76vw,300px);scroll-snap-align:center;min-height:400px}.deck{width:104px;height:164px}}@media(hover:none){.tarot-table.settled .tarot-card:hover,.btn-primary:hover:not(:disabled),.btn-ghost:hover{transform:none}.slot:active:not(:disabled),.cal-day:active:not(:disabled),.soonest:active{background:var(--tint-2);border-color:var(--border-lit)}}@media(prefers-reduced-motion:reduce){.hero-glow,.confirm-glyph,.panel{animation:none}}.admin{position:relative;z-index:1;max-width:640px;margin:0 auto;padding:0 14px 80px;min-height:100vh}.admin-loading{display:grid;place-items:center;min-height:100vh;font-size:var(--glyph-moment);color:var(--gilt);animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.admin-top{display:flex;align-items:center;justify-content:space-between;padding:18px 4px;position:sticky;top:0;background:linear-gradient(180deg,var(--night-velvet) 70%,transparent);z-index:5}.admin-brand{font-size:var(--fs-title);color:var(--moonlit-text)}.linkbtn{background:none;border:none;color:var(--amethyst);font-size:var(--fs-sm)}.admin-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:12px;position:sticky;top:56px;background:var(--night-velvet);z-index:4}.tab{flex:1 0 auto;white-space:nowrap;background:var(--fill-rest);border:1px solid var(--border-ghost);color:var(--text-dim);padding:9px 14px;border-radius:var(--r-pill);font-size:var(--fs-sm)}.tab.active{background:var(--gradient-go);color:var(--ink);border-color:transparent;font-weight:600}.admin-body{padding-top:8px}.admin-body h2{font-size:var(--fs-title);margin:6px 0 2px}.admin-body h3{font-size:var(--fs-lead);margin:22px 0 8px;color:var(--text-dim)}.card{background:var(--glass-panel);border:1px solid var(--border-ghost);border-radius:var(--r-md);padding:15px 16px;margin-bottom:12px}.card.dim{opacity:.55}.card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.card-head strong{font-size:var(--fs-body)}.when{color:var(--amethyst-pale);font-size:var(--fs-sm);white-space:nowrap}.who{color:var(--text-dim);font-size:var(--fs-sm);margin-top:4px}.who a{color:var(--amethyst)}.q{color:var(--text-dim);font-style:italic;font-size:var(--fs-sm);margin:8px 0 0}.badge{display:inline-block;margin-top:10px;font-size:var(--fs-micro);color:var(--orchid);border:1px solid var(--orchid-line);padding:2px 10px;border-radius:var(--r-pill)}.row-actions{display:flex;gap:8px;margin-top:12px}.row-actions button,.reschedule button,.sm{background:var(--tint-2);border:1px solid var(--border-ghost);color:var(--moonlit-text);padding:8px 14px;border-radius:var(--r-xs);font-size:var(--fs-sm)}.danger{color:var(--orchid-soft)!important;border-color:var(--orchid-line)!important}.reschedule{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;align-items:center}.primary{background:var(--gradient-go);color:var(--ink);border:none;border-radius:var(--r-sm);padding:12px 20px;font-weight:600;font-size:var(--fs-body)}.primary.sm{padding:8px 16px;font-size:var(--fs-sm);border-radius:var(--r-xs)}.primary:disabled{opacity:.45}label{display:flex;flex-direction:column;gap:5px;font-size:var(--fs-sm);color:var(--text-dim)}input,textarea,select{background:var(--well);border:1px solid var(--border-ghost);border-radius:var(--r-xs);padding:11px 12px;color:var(--moonlit-text);font-family:inherit;font-size:var(--fs-body)}input:focus,textarea:focus{outline:none;border-color:var(--amethyst)}.stack{display:flex;flex-direction:column;gap:14px}.segmented,.days{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}.segmented button,.day{background:var(--fill-rest);border:1px solid var(--border-ghost);color:var(--text-dim);padding:8px 16px;border-radius:var(--r-pill);font-size:var(--fs-sm)}.segmented button.on,.day.on{background:var(--amethyst-pale);color:var(--ink);border-color:transparent;font-weight:600}.lbl{font-size:var(--fs-sm);color:var(--text-dim);display:block;margin-bottom:8px}.svc-grid{display:grid;grid-template-columns:64px 1fr 80px 70px;gap:8px;margin-bottom:10px}.svc-grid .grow{min-width:0}.svc label{margin-bottom:10px}.glyph-in input{text-align:center}.svc-foot{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.toggle{flex-direction:row;align-items:center;gap:8px;color:var(--moonlit-text)}.toggle input{width:auto}.new-label{color:var(--gilt);font-size:var(--fs-sm);margin-bottom:10px;text-shadow:var(--halo-sm)}.user-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--border-ghost)}.user-email{font-size:var(--fs-sm);word-break:break-all}.user-email em{color:var(--amethyst);font-style:normal;font-size:var(--fs-label)}.user-actions{display:flex;gap:6px;flex-shrink:0}.invite-link{display:flex;gap:8px;align-items:center;background:var(--well);border:1px solid var(--border-ghost);border-radius:var(--r-xs);padding:10px 12px}.invite-link code{flex:1;font-size:var(--fs-micro);color:var(--amethyst-pale);word-break:break-all;font-family:ui-monospace,monospace}.login{display:grid;place-items:center;min-height:100vh;padding:20px;position:relative;z-index:1}.login-card{background:var(--glass-panel);border:1px solid var(--border-lit);border-radius:var(--r-xl);padding:40px 34px;text-align:center;max-width:360px;box-shadow:var(--shadow-anchor),var(--glow)}.login-glyph{font-size:var(--glyph-moment);color:var(--gilt);text-shadow:var(--halo-lg)}.login-card h1{font-size:var(--fs-headline);margin:8px 0 2px}.login-card .primary{width:100%;margin-top:22px}.sent{color:var(--amethyst-pale);margin-top:22px}@media(min-width:480px){.svc-grid{grid-template-columns:70px 1fr 90px 80px}}.devpanel{position:fixed;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-family:var(--sans)}.devpanel-toggle{background:var(--panel-solid);border:1px dashed var(--orchid-line);color:var(--orchid-tint);font-size:var(--fs-micro);letter-spacing:2px;text-transform:uppercase;padding:6px 12px;border-radius:var(--r-pill);min-height:32px}.devpanel-body{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--panel-solid);border:1px dashed var(--orchid-line);border-radius:var(--r-sm);min-width:180px}.devpanel-body button,.devpanel-body a{background:var(--tint-2);border:1px solid var(--border-ghost);color:var(--moonlit-text);font-size:var(--fs-sm);padding:8px 12px;border-radius:var(--r-xs);text-align:left;text-decoration:none;min-height:36px}.devpanel-body small{color:var(--text-dim);font-size:var(--fs-micro)}
