/* The selected Chakra Studio composition, preserved at phone widths. */
body{background:radial-gradient(ellipse at 90% 30%,#32123e 0,transparent 58%),#140b25;font-family:Arial,'Segoe UI',sans-serif;line-height:1.45}
.wrap{max-width:1160px;padding-inline:24px}.site-header{background:linear-gradient(110deg,#1b1034,#321137);border-color:#6f3580}.header-inner{min-height:65px;gap:16px}.brand{gap:12px}.brand-mark{width:auto;flex-wrap:nowrap;gap:5px}.brand-mark i{width:10px;height:10px;flex-shrink:0}.brand-name{font-size:1.45rem}.brand-sub{font-size:.72rem;letter-spacing:.04em;margin-top:3px}.desktop-nav{font-size:.84rem;gap:23px;font-weight:400}.desktop-nav .btn{min-height:38px;padding:8px 15px}.btn{border-radius:7px;min-height:44px;padding:10px 22px;box-shadow:inset 0 1px #ffffff26,0 4px 16px #09011124;background:linear-gradient(#a539bc,#74268c);font-size:1rem}.btn.secondary{background:#291536}.hero{grid-template-columns:44% 56%;background:linear-gradient(110deg,#1a1031,#21102f);border:0;border-radius:0;box-shadow:none;position:relative;overflow:hidden}.home .hero{margin:0 -24px;border-radius:0}.hero-copy{padding:36px 0 30px 42px;position:relative;z-index:2;align-self:center;text-align:left}.hero-copy h1{font-size:clamp(2.2rem,4.9vw,3.8rem);line-height:1.02;letter-spacing:-.035em;margin:0 -25px 14px 0}.hero .lead{font-size:1.15rem;line-height:1.28;max-width:25ch;margin:0 0 10px;color:#e8dbf3}.hero-reader{font-size:.88rem;color:#c8afd9;line-height:1.3;margin-bottom:16px}.hero .actions{margin-top:0;display:block}.hero .actions .btn{width:auto;min-width:218px}.hero-phone{display:inline-block;color:#e1c2ef;font-size:.88rem;margin-top:12px}.hero-photo.scene{width:100%;aspect-ratio:4/3;min-height:0;align-self:center;overflow:hidden}.hero-photo:after{background:linear-gradient(90deg,#20102f 0,transparent 24%);pointer-events:none}.spectrum{height:12px;margin:0 -24px!important;border-radius:0}.content{padding-top:25px}.service-stack{gap:18px}.service{grid-template-columns:50% 50%;border-radius:12px;border-color:#60306e;background:linear-gradient(110deg,#291237,#21102d);min-height:220px;align-items:stretch}.service .scene{aspect-ratio:auto;min-height:0;height:100%}.service .scene>img{width:200%;height:auto;aspect-ratio:4/3}.service .scene:after,.studio-block>.scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,#271234);pointer-events:none}.service:nth-child(even) .scene{order:2}.service:nth-child(even) .scene:after{background:linear-gradient(90deg,#271234,transparent 30%)}.service-body{padding:24px 30px;align-self:center;text-align:left}.service-body h2{font-size:clamp(1.5rem,3.05vw,2.25rem);margin-bottom:8px;line-height:1.05;letter-spacing:-.025em}.service-body p{font-size:1.03rem;line-height:1.28;margin-bottom:16px;color:#e3d4ed;max-width:34ch}.service-body .btn{min-width:215px}.scene.bowl>img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:42% 50%;left:0;top:0;bottom:auto}.studio-block{display:grid;grid-template-columns:52% 48%;margin-top:20px;border-radius:12px;min-height:285px;background:linear-gradient(110deg,#261238,#351336);text-align:left;gap:0}.studio-block>.scene{min-height:0;aspect-ratio:auto;height:100%}.studio-copy{padding:28px;max-width:none;margin:0;text-align:left}.studio-copy h2{font-size:2rem;margin-bottom:10px}.studio-copy p{font-size:1.03rem;line-height:1.35;margin-bottom:18px;color:#e3d4ed}.session-details{border:1px solid #8b5698;border-radius:10px;padding:15px 19px;background:#3317419c;display:grid;gap:5px;max-width:360px}.session-details strong{font-size:1.12rem}.session-details a{font-size:1rem}.session-details .text-link{font-size:.9rem;color:#e5b8f3;text-decoration:underline;text-underline-offset:3px;margin-top:3px}.panel{margin-top:20px;border-radius:12px;padding:24px;background:linear-gradient(120deg,#2a163b,#301236);border-color:#81518e}.booking-panel h2,.payments-panel h2{font-size:1.9rem;margin-bottom:18px}.form-grid{grid-template-columns:1fr 1fr 1.25fr;gap:16px}.field{display:block;font-size:.9rem}.field>.soft{font-size:.75rem;font-weight:400}.field input,.field select{display:block;margin-top:6px;min-height:44px;padding:9px 11px;border-radius:6px;font-size:1rem}.form-submit{max-width:310px;margin:16px auto 0}.form-note{margin:12px auto 0;font-size:.8rem;line-height:1.4;max-width:65ch}.payments-row{gap:14px}.payment-logo{min-height:76px;flex-direction:row;border-radius:9px;gap:8px}.payment-logo svg{width:34px;height:34px}.payment-logo span{font-size:1.25rem}.payment-logo.applepay svg{width:110px;height:52px}.cards-row{margin-top:17px;gap:24px}.payments-panel small{margin-top:12px;line-height:1.45}.location-panel{border:2px solid #b271cc;box-shadow:0 0 0 4px #7d389522;padding:24px;margin-top:24px}.location-top{margin-bottom:16px}.location-top h2{font-size:1.9rem;margin-bottom:8px}.location-top .eyebrow{font-size:.72rem;margin-bottom:7px}.map-view{height:250px}.map-links{margin-top:16px}.site-footer{margin-top:25px;background:linear-gradient(100deg,#2b1039,#45143c);padding:25px 0 20px}.site-footer .wrap{max-width:1000px}.footer-name{font-size:1.4rem}.footer-links{margin:18px auto}.tiktok-link{padding:8px 16px;margin-top:14px}.page-intro h1{font-size:clamp(2rem,5vw,3.3rem)}.article p{line-height:1.65}
@media(max-width:799px){
 .wrap{padding-inline:12px}.header-inner{min-height:62px;gap:10px}.brand{gap:8px}.brand-mark{gap:3px;width:83px;flex-wrap:nowrap}.brand-mark i{width:8px;height:8px}.brand-name{font-size:1.08rem;white-space:nowrap}.brand-sub{font-size:.62rem;letter-spacing:0}.menu-toggle{font-size:.84rem;min-height:38px;padding:7px 10px;border-radius:6px}.mobile-nav{padding:10px 18px 16px}.mobile-nav a{padding:10px;min-height:44px}.home .hero{margin:0 -12px;grid-template-columns:48% 52%;border-radius:0}.hero-copy{padding:25px 0 22px 15px;text-align:left}.hero-copy h1{font-size:clamp(1.57rem,6.5vw,2.5rem);line-height:1.06;margin:0 -16px 10px 0;letter-spacing:-.035em}.hero .lead{font-size:15px;line-height:1.3;max-width:22ch;margin:0 0 9px}.hero-reader{font-size:12px;line-height:1.3;margin:0 0 12px;max-width:20ch}.hero .actions{display:block;margin:0}.hero .actions .btn{font-size:13px;min-width:0;width:auto;min-height:44px;padding:9px 12px;white-space:nowrap}.hero-phone{font-size:12px;margin-top:10px}.hero-photo.scene{aspect-ratio:4/3;align-self:center;margin-top:14px}.spectrum{height:8px;margin:0 -12px!important}.content{padding-top:14px}.service-stack{gap:12px}.service{grid-template-columns:47% 53%;min-height:188px;border-radius:9px}.service:nth-child(even){grid-template-columns:53% 47%}.service .scene{aspect-ratio:auto;order:0!important;min-height:0;height:100%}.service:nth-child(even) .scene{order:2!important}.service-body{padding:16px 13px;text-align:left}.service-body h2{font-size:20px;line-height:1.1;margin-bottom:7px}.service-body p{font-size:14px;line-height:1.32;margin-bottom:11px}.service-body .btn{width:100%;min-width:0;min-height:44px;font-size:12px;padding:9px 7px;white-space:nowrap}.service .scene>img{top:50%;bottom:auto;transform:translateY(-50%)}.service .scene.stones>img,.service .scene.room>img{top:auto;bottom:0;transform:none}.service .scene.stones>img{bottom:0}.service .scene.tarot>img{top:0;transform:none}.service .scene.bowl>img{top:0;transform:none;height:100%;width:100%;object-fit:cover}.studio-block{grid-template-columns:47% 53%;min-height:255px;margin-top:14px;border-radius:9px}.studio-block>.scene{min-height:0;aspect-ratio:auto}.studio-block>.scene>img{width:250%;left:-150%;bottom:0;top:auto}.studio-copy{padding:19px 13px;text-align:left}.studio-copy h2{font-size:21px;margin-bottom:10px}.studio-copy p{font-size:14px;line-height:1.35;margin-bottom:13px}.session-details{padding:10px;border-radius:7px;gap:5px}.session-details strong{font-size:15px}.session-details a{font-size:14px}.session-details .text-link{font-size:13px}.panel{margin-top:14px;padding:18px 13px;border-radius:9px}.booking-panel h2,.payments-panel h2{font-size:23px;margin-bottom:15px}.form-grid{grid-template-columns:1fr 1fr;gap:12px}.topic-field{grid-column:1/-1}.field{font-size:13px}.field input,.field select{font-size:16px;min-height:44px;padding:9px 8px}.form-submit{margin-top:13px;max-width:280px}.form-submit .btn{font-size:15px;min-height:44px}.form-note{font-size:12px;margin-top:10px;line-height:1.4}.payments-row{gap:7px}.payment-logo{min-height:53px;padding:5px 3px;flex-direction:row;gap:3px;border-radius:7px}.payment-logo svg{width:20px;height:24px}.payment-logo span{font-size:12px;white-space:nowrap;letter-spacing:-.04em}.payment-logo.applepay svg{width:60px;height:36px}.cards-row{gap:18px;margin-top:13px}.card-brand svg{width:37px;height:28px}.payments-panel small{font-size:11px;line-height:1.45}.location-panel{padding:20px 13px;margin:20px 3px 0}.location-top h2{font-size:24px}.location-top address{font-size:15px}.map-view{height:210px}.map-placeholder{padding:15px}.map-placeholder p{font-size:15px}.map-links{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.map-links .btn{padding:10px 5px;font-size:13px;min-height:46px;gap:5px}.map-links svg{width:17px}.location-note{font-size:12px;line-height:1.4}.site-footer{margin-top:22px;padding-top:22px}.site-footer p{font-size:12px}.footer-address{font-size:14px}.footer-links{font-size:13px;gap:10px 17px}.tiktok-link{font-size:13px}.sticky-contact{padding:7px 12px calc(7px + env(safe-area-inset-bottom));gap:10px}.sticky-contact .btn{min-height:43px;font-size:14px;padding:9px 12px;border-radius:7px}body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.page-intro{margin-top:28px}.page-intro h1{font-size:30px}.article p{font-size:16px}.article h2{font-size:24px}
}
@media(max-width:370px){.brand-mark{width:69px;gap:2px}.brand-mark i{width:7px;height:7px}.brand-name{font-size:1rem}.brand-sub{font-size:.58rem}.hero-copy{padding-left:13px}.hero-copy h1{font-size:24px}.hero .lead{font-size:14px}.hero .actions .btn{font-size:12px;padding-inline:9px}.service-body{padding:14px 11px}.service-body h2{font-size:19px}.service-body p{font-size:14px}.service-body .btn{font-size:11px}.payment-logo span{font-size:11px}.payment-logo svg{width:18px}.payment-logo.applepay svg{width:51px}}

/* Isolate a quadrant even when the frame is tall on a narrow screen. */
.scene{container-type:size}.scene-crop{display:block;position:absolute;left:50%;top:50%;width:max(100%,calc(100cqh * 4 / 3));aspect-ratio:4/3;transform:translate(-50%,-50%);overflow:hidden}.scene-crop>img{position:absolute;max-width:none;width:200%;height:200%;left:0;top:0;object-fit:fill}.tarot .scene-crop>img{left:-100%}.stones .scene-crop>img{top:-100%}.room .scene-crop>img{left:-100%;top:-100%}

.hero-photo.scene{aspect-ratio:1.62}@media(max-width:799px){.hero-photo.scene{aspect-ratio:1.28;margin-top:0}.hero-copy{padding-block:24px}.hero .lead{margin-bottom:16px}.service .scene.stones .scene-crop{width:100%}}

.payment-logo.venmo span{display:none}.payment-logo.venmo svg{width:100px;height:30px}@media(max-width:799px){.payment-logo.venmo svg{width:62px;height:25px}.payment-logo.applepay svg{width:61px;height:32px}}

/* Robert: every reading row uses the same left text/right photo placement. */
.service,.service:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.service .scene,.service:nth-child(even) .scene{order:2!important}.service-body{order:1;display:grid;grid-template-rows:44px 50px 44px;gap:10px}.service-body h2,.service-body p{margin:0}.service-body .btn{width:100%;min-width:0;align-self:end}.service .scene:after,.service:nth-child(even) .scene:after{background:linear-gradient(90deg,#271234,transparent 30%)}
@media(max-width:799px){.service,.service:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:210px}.service-body{padding:18px 13px;grid-template-rows:44px 56px 44px;gap:9px}.service-body h2{font-size:20px;line-height:22px}.service-body p{font-size:14px;line-height:18px}.service-body .btn{font-size:12px}.service .scene.stones .scene-crop{width:100%}}
@media(max-width:370px){.service-body{padding-inline:10px}.service-body h2{font-size:19px}.service-body .btn{font-size:11px}}

/* Shared measured layout width for hero and reading actions. */
.main-shell{container-type:inline-size}.hero .actions .btn,.service-body .btn{width:calc(50cqw - 61px);min-width:0;height:44px;min-height:44px;padding:10px 22px;font-size:16px;box-sizing:border-box}@media(max-width:799px){.hero .actions .btn,.service-body .btn{width:calc(50cqw - 27px);font-size:12px;padding:9px 7px}}@media(max-width:370px){.hero .actions .btn,.service-body .btn{width:calc(50cqw - 21px);font-size:11px}}
