@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#22133c;--muted:#594f68;--purple:#6930df;--pink:#fa51ab;--line:#e6dff0;--rainbow:linear-gradient(90deg,#ff586b 0% 17%,#ff9c38 17% 33%,#f7df45 33% 50%,#50c68a 50% 67%,#50aff1 67% 83%,#a466ee 83%)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.65 'DM Sans',sans-serif;padding-bottom:88px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #6930df;outline-offset:5px}.wrap{width:calc(100% - 40px);max-width:1180px;margin-inline:auto}.rainbow{height:7px;background:var(--rainbow)}header{height:82px;display:flex;justify-content:space-between;align-items:center;gap:12px}.brand{font-family:'Manrope',sans-serif;font-size:31px;font-weight:800;letter-spacing:-1.8px;white-space:nowrap}.brand>span:first-child{color:var(--purple);margin-right:3px}.brand-dot{color:#ef288a}nav{display:flex;align-items:center;gap:30px}nav>a{display:none}.nav-cta{display:block;border:1.5px solid var(--ink);border-radius:30px;padding:9px 16px;font-size:14px;font-weight:700}.nav-cta span{margin-left:10px}.hero{padding:30px 0 35px;display:grid;gap:28px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:1.4px;line-height:1.5;margin:0 0 20px;color:var(--purple)}.mini-rainbow{display:inline-block;width:25px;height:10px;background:var(--rainbow);border-radius:10px;margin-right:8px}h1,h2,h3{font-family:'Manrope',sans-serif}h1{font-size:clamp(44px,11.8vw,78px);font-weight:800;line-height:1.04;letter-spacing:-2.8px;margin:0 0 24px}em{font-style:normal;color:var(--purple);position:relative}h1 em{background:#edff7a;padding:0 9px 3px;border-radius:7px;box-decoration-break:clone}.intro{color:var(--muted);font-size:17px;line-height:1.65;margin:0 0 25px;max-width:500px}.button{border-radius:13px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 20px;min-height:56px;font-weight:700;font-size:16px;line-height:1.35;border:2px solid transparent;transition:transform .15s,box-shadow .15s}.button:hover{transform:translateY(-2px);box-shadow:0 4px 0 #22133c}.button:active{transform:translateY(0)}.primary,.secondary{background:var(--purple);color:white;border-color:var(--purple)}.hero-note{font-size:14px;text-align:center;color:var(--muted);margin:12px 0 24px}.hero-foot{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:12px;font-size:14px;line-height:1.5;color:var(--muted)}.hero-foot>span:last-child{font-size:36px;color:#ee348b}.hero-visual{position:relative;max-width:440px;width:100%;margin:auto;background:#e8d6ff;border:2px solid var(--ink);border-radius:24px;padding:14px;transform:rotate(2deg)}.art-frame{aspect-ratio:1.65;overflow:hidden;border-radius:14px;border:1px solid var(--ink)}.art-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 43%;display:block}.art-label{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:1px;font-weight:800;padding:12px 0 0}.art-label>span:last-child{font-size:25px;line-height:1}.values-band{background:#f4ff83;border-block:2px solid var(--ink);margin-top:16px}.values-band>.wrap{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px 12px;padding-block:14px;font-size:12px;font-weight:700}.values-band b{color:var(--purple);font-size:19px}.values-band b:last-child{display:none}.readings{padding-block:58px}.section-heading{margin-bottom:28px}h2{font-size:clamp(34px,9vw,48px);font-weight:800;letter-spacing:-1.6px;line-height:1.13;margin:0}.section-heading>p{color:var(--muted);margin-top:20px}.cards{display:grid;gap:24px}.card{padding:24px;border:2px solid var(--ink);border-radius:20px;background:#eee4ff;box-shadow:5px 5px 0 var(--ink);display:flex;flex-direction:column}.card.featured{background:#ffdaeb}.card:nth-child(3){background:#ddf7df}.card-top{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:800;letter-spacing:1px}.card-icon{font-size:35px;color:var(--purple);line-height:1.3}.featured .card-icon{color:#bc1266}.card:nth-child(3) .card-icon{color:#13663f}.card h3{font-size:28px;letter-spacing:-.9px;line-height:1.2;margin:20px 0 13px}.card>p:not(.card-note){font-size:16px;color:#493b59;margin:0}.price{font-family:'Manrope',sans-serif;font-size:46px;font-weight:800;letter-spacing:-2px;margin-top:18px;line-height:1.4}.price span{font:14px 'DM Sans',sans-serif;letter-spacing:0;color:#493b59}ul{list-style:none;padding:18px 0 0;border-top:1px solid #22133c33;display:grid;gap:11px;margin:16px 0 27px;font-size:14px}li{position:relative;padding-left:23px}li:before{content:'✓';position:absolute;left:0;font-weight:800;color:#483276}.card .button{width:100%;margin-top:auto;font-size:15px;padding:16px 13px}.featured .button{background:#aa155f;border-color:#aa155f}.card:nth-child(3) .button{background:#17643e;border-color:#17643e}.card-note{font-size:13px;text-align:center;margin:14px 0 0;color:#493b59}.pricing-note{font-size:14px;color:var(--muted);text-align:center;margin:28px 0 0}.approach{padding-block:46px;border-block:1px solid var(--line);display:grid;gap:20px}.approach h2{font-size:46px}.pride-line{width:150px;height:8px;background:var(--rainbow);border-radius:8px;margin-top:25px}.approach-copy{color:var(--muted)}.large-copy{font-size:22px;line-height:1.45;font-weight:600;color:var(--ink)}.approach-copy p{margin:0 0 23px}.text-link{display:inline-block;font-weight:700;color:var(--purple);border-bottom:2px solid var(--purple);padding-bottom:6px}.text-link span{margin-left:20px}.process{padding-block:58px}.steps{display:grid;gap:26px;margin-top:32px}.steps>div{border-top:1px solid var(--line);padding-top:20px}.steps>div>span{display:inline-grid;place-items:center;width:40px;height:40px;border:1.5px solid var(--ink);background:#f5ff84;border-radius:50%;font-size:14px;font-weight:800}.steps>div:nth-child(2)>span{background:#ffdaeb}.steps>div:nth-child(3)>span{background:#d7edff}.steps h3{font-size:21px;margin:15px 0 8px;line-height:1.3}.steps p{color:var(--muted);margin:0}.faq{padding-block:15px 55px;display:grid;gap:25px}.questions details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:19px 0;font-size:16px;font-weight:600;cursor:pointer}summary:after{content:'+';font-size:25px;color:var(--purple)}summary::-webkit-details-marker{display:none}details[open] summary:after{content:'−'}details p{margin:0 0 22px;color:var(--muted)}.closing{background:#f3ff7d;border:2px solid var(--ink);border-radius:22px;padding:32px 23px;position:relative;overflow:hidden;box-shadow:5px 5px 0 var(--ink)}.closing .eyebrow{position:relative;z-index:1;font-size:11px}.closing h2{font-size:47px;margin-bottom:26px;position:relative;z-index:1}.closing .button{position:relative;z-index:1}.closing-star{position:absolute;right:5px;top:40px;font-size:140px;color:#b8d839;line-height:1;transform:rotate(15deg)}footer{padding-block:35px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}footer .brand{width:100%}footer p,footer>span{font-size:13px;color:var(--muted);margin:0}footer>span{margin-left:auto}.mobile-cta{position:fixed;z-index:5;bottom:0;left:0;right:0;min-height:76px;padding:12px max(20px,env(safe-area-inset-left)) calc(12px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -3px 18px #22133c12;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:16px;font-weight:800}.mobile-cta small{display:block;font-size:12px;color:var(--muted);font-weight:400}.mobile-cta b{display:grid;place-items:center;background:var(--purple);color:white;border-radius:50%;width:45px;height:45px;font-size:24px}.skip{position:fixed;top:-100px;left:20px;background:var(--purple);color:white;padding:12px;z-index:20}.skip:focus{top:12px}dialog{color:var(--ink);background:#fff;border:2px solid var(--ink);border-radius:22px;padding:36px 25px;width:calc(100% - 32px);max-width:520px;max-height:85dvh;overflow:auto;box-shadow:7px 7px 0 #aa81e8}dialog::backdrop{background:#20103380;backdrop-filter:blur(5px)}dialog h2{font-size:32px}.close{position:absolute;right:9px;top:6px;font-size:30px;background:none;border:0;color:var(--ink);width:44px;height:44px}.modal-price{font-size:25px;font-weight:700;color:var(--purple)}.modal-note{font-size:13px;color:var(--muted)}.booking-pending{background:#f1e9ff;padding:17px;border-radius:10px;font-size:15px}.booking-pending strong{color:var(--purple)}
@media(min-width:760px){body{padding-bottom:0}.wrap{width:calc(100% - 80px)}header{height:100px}nav>a{display:block;font-size:14px}.hero{grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding-block:60px 70px}.hero h1{font-size:clamp(58px,6.5vw,84px);letter-spacing:-4px}.hero .button{display:inline-flex;min-width:290px}.hero-note{text-align:left}.hero-visual{padding:20px;transform:rotate(4deg);max-width:none}.art-frame{aspect-ratio:.95}.art-label{font-size:11px}.values-band>.wrap{justify-content:space-between;font-size:15px;padding-block:18px}.values-band b:last-child{display:block}.readings{padding-block:85px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.section-heading>p{margin:0}.cards{grid-template-columns:repeat(3,1fr);gap:22px}.card{padding:25px 20px}.card h3{font-size:25px}.card>p:not(.card-note){min-height:158px}.card .button{font-size:14px}h2{font-size:48px}.approach{grid-template-columns:1fr 1.1fr;gap:80px;padding-block:70px}.approach h2{font-size:58px}.approach-copy{padding-top:10px}.process{padding-block:80px}.steps{grid-template-columns:repeat(3,1fr);gap:45px}.faq{grid-template-columns:1fr 1.25fr;gap:60px;padding-block:30px 75px}.closing{padding:55px}.closing h2{font-size:65px}.closing .button{display:inline-flex;min-width:290px}.closing-star{font-size:270px;right:90px;top:45px}footer{padding-block:45px;gap:35px}footer .brand{width:auto}.mobile-cta{display:none}}
@media(min-width:1100px){.card>p:not(.card-note){min-height:132px}.card{padding:30px 25px}.card h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
