/* Service suite: one continuous product story after the editorial opening. */
.services{width:min(1500px,94%);padding-top:70px}.services-intro{display:grid;grid-template-columns:1fr .72fr;gap:70px;align-items:end;margin-bottom:64px}.services-intro .kicker{grid-column:1/-1}.services-intro h2{font:400 clamp(58px,6.4vw,98px)/.88 var(--serif);letter-spacing:-.035em;margin:0}.services-intro h2 em{font-weight:400;color:#bba4fb}.services-intro>p{color:var(--muted);font-size:14px;line-height:1.8;max-width:500px;margin:0 0 8px}.service-stack{display:grid;gap:24px}.service-panel{min-height:690px;display:grid;grid-template-columns:minmax(340px,.82fr) minmax(500px,1.18fr);overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.1);border-radius:36px;background:#15131e;box-shadow:0 42px 110px rgba(0,0,0,.22)}.service-panel:nth-child(even){grid-template-columns:minmax(500px,1.18fr) minmax(340px,.82fr)}.service-copy{position:relative;z-index:3;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:72px clamp(42px,5vw,84px)}.service-index{font-size:9px;font-weight:600;letter-spacing:.2em;color:#ffbd55;margin-bottom:32px}.service-copy h3{font:400 clamp(48px,5vw,78px)/.91 var(--serif);letter-spacing:-.025em;margin:0 0 28px}.service-copy>p{max-width:520px;color:#b8b7c4;line-height:1.75;font-size:13px}.service-copy .button{margin-top:32px}.service-media{position:relative;min-width:0;overflow:hidden;background:#171431}.service-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(17,14,31,.76),transparent 24%),linear-gradient(0deg,rgba(9,11,24,.46),transparent 35%)}.service-panel:nth-child(even) .service-media:after{background:linear-gradient(270deg,rgba(17,14,31,.76),transparent 24%),linear-gradient(0deg,rgba(9,11,24,.4),transparent 35%)}.service-media>img{width:100%;height:100%;display:block;object-fit:cover;transform:scale(1.035);transition:transform 1.8s cubic-bezier(.2,.7,.2,1),filter 1s}.service-panel.in .service-media>img{transform:scale(1)}.service-kundali{background:linear-gradient(135deg,#1c1768,#0b0d28 54%)}.service-kundali .service-media>img{object-position:center 56%}.service-inputs{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.service-inputs span{border:1px solid rgba(255,255,255,.16);border-radius:99px;padding:9px 13px;color:#d9d4e8;font-size:9px;letter-spacing:.08em;background:rgba(255,255,255,.045)}.service-float{position:absolute;z-index:2;left:7%;bottom:7%;width:230px;padding:17px 46px 17px 18px;border:1px solid rgba(255,255,255,.17);border-radius:18px;background:rgba(12,12,29,.62);backdrop-filter:blur(16px);box-shadow:0 18px 60px rgba(0,0,0,.28)}.service-float small{display:block;color:#aaa5bc;font-size:8px;text-transform:uppercase;letter-spacing:.13em;margin-bottom:6px}.service-float strong{font:400 20px/1.05 var(--serif)}.service-float i{position:absolute;right:15px;top:17px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#ffb04d;color:#1b1636;font-style:normal;font-size:10px}.service-relationship{background:linear-gradient(135deg,#14121f,#25133f)}.service-relationship .service-media>img{object-position:center 58%}.service-signals{display:grid;gap:11px;margin-top:20px}.service-signals span{display:flex;align-items:center;gap:10px;font-size:10px;color:#d5cfdf}.service-signals i{width:7px;height:7px;border-radius:50%;background:#efb86b;box-shadow:0 0 15px #efb86b}.service-signals span+span i{background:#b995e9;box-shadow:0 0 15px #b995e9}.relationship-lens{position:absolute;z-index:2;width:210px;height:210px;left:50%;top:48%;transform:translate(-50%,-50%);border:1px solid rgba(255,224,178,.55);border-radius:50%;box-shadow:0 0 80px rgba(206,155,255,.17),inset 0 0 60px rgba(255,255,255,.05);animation:lensBreathe 6s ease-in-out infinite}.relationship-lens i{position:absolute;width:7px;height:7px;border-radius:50%;background:#ffbd6b;box-shadow:0 0 16px currentColor}.relationship-lens i:first-child{left:-4px;top:48%}.relationship-lens i:last-child{right:-4px;top:48%;color:#c2a4ff}@keyframes lensBreathe{50%{transform:translate(-50%,-50%) scale(1.045);opacity:.75}}.service-muhurta{background:linear-gradient(135deg,#18132b,#131927)}.service-muhurta .service-media>img{object-position:center 48%}.timing-window{width:100%;max-width:420px;margin-top:20px;padding:17px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);display:grid;gap:7px}.timing-window small{font-size:7px;letter-spacing:.18em;color:#918ba1}.timing-window strong{font:400 23px var(--serif);color:#f5e5c8}.timing-window span{font-size:9px;color:#b5afbd}.muhurta-marker{position:absolute;z-index:2;left:49%;top:55%;width:90px;height:90px;border:1px solid rgba(255,218,159,.5);border-radius:50%;animation:markerPulse 4s ease-out infinite}.muhurta-marker:before,.muhurta-marker:after{content:"";position:absolute;left:50%;top:50%;background:#ffd38e;transform:translate(-50%,-50%)}.muhurta-marker:before{width:1px;height:130px}.muhurta-marker:after{height:1px;width:130px}.muhurta-marker span{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:#ffe7bc;transform:translate(-50%,-50%);box-shadow:0 0 28px #ffb45f}@keyframes markerPulse{70%,100%{box-shadow:0 0 0 28px rgba(255,204,127,0);opacity:.7}}.service-astrologer{background:linear-gradient(135deg,#21152a,#10152c)}.astrologer-person{display:grid;grid-template-columns:10px 1fr;column-gap:10px;align-items:center;margin-top:20px}.presence-dot{width:8px;height:8px;border-radius:50%;background:#7bd6a0;box-shadow:0 0 12px rgba(123,214,160,.7)}.astrologer-person strong{font-size:11px}.astrologer-person small{grid-column:2;color:#9793a3;font-size:8px;margin-top:3px}.astrologer-media>img{object-position:center 45%;filter:saturate(.9) contrast(1.02)}.astrologer-media:after{background:linear-gradient(90deg,rgba(20,13,29,.38),transparent 30%),linear-gradient(0deg,rgba(9,11,24,.7),transparent 48%)}.chat-thread{position:absolute;z-index:4;right:4.5%;top:6%;width:min(390px,55%);padding:13px;border:1px solid rgba(255,255,255,.18);border-radius:26px;background:rgba(11,12,27,.72);backdrop-filter:blur(18px);box-shadow:0 24px 80px rgba(0,0,0,.32);display:flex;flex-direction:column;gap:8px}.chat-top{display:grid;grid-template-columns:8px 1fr auto;gap:9px;align-items:center;padding:5px 6px 11px;border-bottom:1px solid rgba(255,255,255,.1)}.chat-top>div{display:grid}.chat-top strong{font-size:10px}.chat-top small{font-size:7px;color:#8fd8ab}.chat-top b{font-weight:400;color:#aaa}.chat-bubble{position:relative;max-width:90%;padding:11px 12px 20px;border-radius:14px 14px 14px 4px;background:#eee7f6;color:#272036;font-size:9px;line-height:1.45;box-shadow:0 8px 24px rgba(0,0,0,.16)}.chat-bubble.client{align-self:flex-end;border-radius:14px 14px 4px 14px;background:linear-gradient(135deg,#713dea,#5621bf);color:white}.chat-bubble.astrologer{align-self:flex-start}.chat-bubble.final{background:#f5ebdb}.chat-bubble time{position:absolute;right:9px;bottom:6px;font-size:6px;opacity:.58}.js .chat-bubble{opacity:0;transform:translateY(16px) scale(.97)}.js .chat-thread.play .chat-bubble{animation:chatIn .58s cubic-bezier(.2,.85,.3,1.05) var(--delay) forwards}@keyframes chatIn{to{opacity:1;transform:none}}.chat-thread.play{animation:threadFloat 7s ease-in-out 5s infinite}@keyframes threadFloat{50%{transform:translateY(-5px)}}

@media(max-width:1050px){.service-panel,.service-panel:nth-child(even){grid-template-columns:1fr 1.12fr}.service-copy{padding:58px 42px}.service-copy h3{font-size:55px}.chat-thread{width:68%;right:3%}}
@media(max-width:800px){.services-intro{display:block}.services-intro h2{margin:20px 0 24px}.service-panel,.service-panel:nth-child(even){grid-template-columns:1fr;min-height:0}.service-copy{order:1;padding:52px 36px}.service-media{order:2;height:680px}.service-panel:nth-child(even) .service-media:after,.service-media:after{background:linear-gradient(0deg,rgba(10,10,26,.65),transparent 42%)}.service-relationship .service-media{height:620px}.chat-thread{width:min(410px,58%);top:5%;right:4%}}
@media(max-width:560px){.services{width:calc(100% - 20px);padding-top:30px}.services-intro{padding:0 6px;margin-bottom:38px}.services-intro h2{font-size:49px}.services-intro>p{font-size:12px}.service-stack{gap:14px}.service-panel{border-radius:26px}.service-copy{padding:40px 24px 36px}.service-index{margin-bottom:22px}.service-copy h3{font-size:43px;margin-bottom:22px}.service-copy>p{font-size:12px}.service-copy .button{margin-top:25px}.service-media,.service-relationship .service-media{height:520px}.service-kundali .service-media>img{object-position:center center}.service-float{left:16px;bottom:16px;width:210px}.relationship-lens{width:155px;height:155px}.timing-window strong{font-size:20px}.muhurta-marker{width:68px;height:68px}.muhurta-marker:before{height:96px}.muhurta-marker:after{width:96px}.astrologer-media{height:690px}.astrologer-media>img{object-position:42% center}.chat-thread{width:79%;right:10px;top:14px;padding:10px;border-radius:20px}.chat-bubble{font-size:8px;max-width:92%;padding:9px 10px 18px}.chat-top{padding-bottom:8px}}
@media(prefers-reduced-motion:reduce){.relationship-lens,.muhurta-marker,.chat-thread.play{animation:none}.js .chat-bubble{opacity:1;transform:none}.service-media>img{transition:none}}

/* Final service mosaic — loaded after the base service rules on purpose. */
.services.section{width:min(1440px,98%);padding:24px 0 100px}
.services-intro{display:block;max-width:960px;margin:0 auto 28px;padding:0 6px;text-align:center}
.services-intro .kicker{display:none}
.services-intro h2{margin:0;font:400 clamp(19px,1.5vw,24px)/1.22 var(--serif);letter-spacing:-.01em;white-space:normal}
.services-intro>p{max-width:760px;margin:14px auto 0;color:var(--muted);font:500 11px/1.55 var(--sans)}
.service-stack{display:grid;grid-template-columns:1.24fr .76fr;grid-template-areas:"astrologer astrologer" "relationship kundali";grid-template-rows:500px 570px;gap:18px}
.service-panel,.service-panel:nth-child(even){min-height:0;grid-template-columns:1fr;border-radius:30px}
.service-astrologer{grid-area:astrologer;display:grid!important;grid-template-columns:1.02fr .98fr!important;background:linear-gradient(110deg,#20192f,#121a37 68%)}
.service-kundali{grid-area:kundali}.service-relationship{grid-area:relationship}
.service-astrologer .service-copy{padding:58px clamp(38px,5vw,78px)}
.service-astrologer .service-media{height:auto;order:initial}.service-astrologer .service-media>img{object-position:center 43%}
.service-astrologer .chat-thread{width:min(390px,62%);right:5%;top:7%}
.service-panel:not(.service-astrologer) .service-media{position:absolute;inset:0;height:auto;z-index:0}
.service-panel:not(.service-astrologer) .service-media:after{background:linear-gradient(180deg,rgba(9,11,24,.1) 0%,rgba(9,11,24,.2) 34%,rgba(9,11,24,.9) 100%),linear-gradient(90deg,rgba(9,11,24,.66),transparent 74%)}
.service-panel:not(.service-astrologer) .service-media>img{filter:saturate(.9) contrast(1.04) brightness(.8);transform:scale(1.035)}
.service-kundali .service-media>img{object-position:center 48%}.service-relationship .service-media>img{object-position:center 57%}
.service-panel:not(.service-astrologer) .service-copy{position:relative;z-index:2;justify-content:flex-end;padding:38px}
.service-panel:not(.service-astrologer) .service-copy h3{margin-bottom:13px}
.service-panel:not(.service-astrologer) .service-copy .button{margin-top:20px}
.service-relationship .service-copy>p{display:block}.service-relationship .service-signals{display:grid}

@media(max-width:800px){.services.section{width:calc(100% - 16px);padding:20px 0 72px}.services-intro{max-width:650px;margin-bottom:24px;padding:0 4px}.services-intro h2{font-size:clamp(18px,4.8vw,22px);line-height:1.25}.services-intro>p{max-width:590px;margin-top:12px;font-size:10px}.service-stack{grid-template-columns:1fr;grid-template-areas:"astrologer" "relationship" "kundali";grid-template-rows:auto;gap:14px}.service-astrologer{grid-template-columns:1fr!important;min-height:710px}.service-astrologer .service-copy{padding:40px 24px 28px}.service-astrologer .service-copy h3{font-size:42px}.service-astrologer .service-media{height:415px}.service-astrologer .chat-thread{width:78%;right:10px;top:14px}.service-panel:not(.service-astrologer){min-height:390px}.service-kundali{min-height:460px!important}.service-panel:not(.service-astrologer) .service-copy{padding:28px}.service-relationship .service-copy h3{font-size:36px}.service-panel:not(.service-astrologer) .service-copy .button{padding:12px 15px;font-size:13px}}

/* Compact service proportions: no oversized copy, empty card tails, or escaping chat. */
.service-stack{grid-template-rows:420px 440px}
.service-astrologer{min-height:420px}
.service-index{margin-bottom:14px}
.service-panel .service-copy h3{font:400 clamp(32px,2.55vw,46px)/.98 var(--serif);margin:0 0 14px;letter-spacing:-.015em}
.service-panel .service-copy>p{font-size:12px;line-height:1.55}
.service-astrologer .service-copy{padding:40px clamp(36px,4vw,64px)}
.service-astrologer .service-copy .button{margin-top:20px}
.service-astrologer .astrologer-person{margin-top:14px}
.service-astrologer .chat-thread{top:5%;width:min(360px,56%);padding:9px;gap:5px;border-radius:20px}
.service-astrologer .chat-top{padding:3px 5px 7px}.service-astrologer .chat-bubble{padding:8px 9px;font-size:8px;line-height:1.35}
.service-panel:not(.service-astrologer) .service-copy{padding:30px}.service-panel:not(.service-astrologer) .service-copy h3{font-size:clamp(30px,2.35vw,40px);margin-bottom:10px}
.service-relationship .service-copy>p{margin:0}.service-relationship .service-signals{margin-top:12px;gap:7px}.service-relationship .service-copy .button{margin-top:15px}
@media(max-width:800px){.service-stack{grid-template-rows:auto}.service-astrologer{min-height:620px}.service-astrologer .service-copy{padding:32px 24px 20px}.service-astrologer .service-copy h3{font-size:36px}.service-astrologer .service-media{height:365px}.service-astrologer .chat-thread{width:76%;right:10px;top:12px}.service-panel:not(.service-astrologer){min-height:340px}.service-kundali{min-height:400px!important}.service-panel:not(.service-astrologer) .service-copy{padding:24px}.service-panel:not(.service-astrologer) .service-copy h3{font-size:32px}.service-relationship{min-height:390px!important}}

/* Relationships: two individual orbits meet, become one shared centre, then separate again. */
.relationship-lens{width:240px;height:240px;overflow:visible;border:0;box-shadow:none;background:transparent;animation:relationshipTurn 9s cubic-bezier(.45,0,.25,1) infinite}
.relationship-lens i{left:50%;top:50%;width:96px;height:96px;margin:-48px;border:1px solid rgba(255,225,183,.72);border-radius:50%;background:radial-gradient(circle at 36% 32%,rgba(255,239,202,.48),rgba(235,179,255,.17) 42%,rgba(84,43,133,.12) 70%);box-shadow:0 0 28px rgba(255,199,129,.2),inset 0 0 30px rgba(255,255,255,.1);color:transparent}
.relationship-lens i:first-child{animation:partnerOne 9s cubic-bezier(.45,0,.25,1) infinite}
.relationship-lens i:last-child{animation:partnerTwo 9s cubic-bezier(.45,0,.25,1) infinite}
.relationship-lens:before,.relationship-lens:after{content:"";position:absolute;left:50%;top:50%;border-radius:50%;pointer-events:none}
.relationship-lens:before{width:42px;height:42px;margin:-21px;background:radial-gradient(circle,rgba(255,247,219,.98),rgba(255,190,105,.8) 31%,rgba(188,120,255,.38) 64%,transparent 70%);box-shadow:0 0 36px rgba(255,191,110,.78);opacity:0;animation:sharedCore 9s ease-in-out infinite}
.relationship-lens:after{width:76px;height:76px;margin:-38px;border:1px solid rgba(255,228,170,.85);opacity:0;animation:sharedWave 9s ease-out infinite}
@keyframes relationshipTurn{0%,18%{transform:translate(-50%,-50%) rotate(0deg)}42%,62%{transform:translate(-50%,-50%) rotate(180deg) scale(.9)}100%{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes partnerOne{0%{transform:translate(-62px,-16px) scale(.88);opacity:1}18%{transform:translate(-37px,-67px) scale(.9)}36%{transform:translate(-12px,-10px) scale(.7)}46%,60%{transform:translate(0,0) scale(.38);opacity:.16}72%{transform:translate(-15px,16px) scale(.7);opacity:.85}100%{transform:translate(-62px,-16px) scale(.88);opacity:1}}
@keyframes partnerTwo{0%{transform:translate(62px,16px) scale(.88);opacity:1}18%{transform:translate(37px,67px) scale(.9)}36%{transform:translate(12px,10px) scale(.7)}46%,60%{transform:translate(0,0) scale(.38);opacity:.16}72%{transform:translate(15px,-16px) scale(.7);opacity:.85}100%{transform:translate(62px,16px) scale(.88);opacity:1}}
@keyframes sharedCore{0%,39%,67%,100%{transform:scale(.2);opacity:0}47%{transform:scale(.72);opacity:.9}55%{transform:scale(1.12);opacity:1}62%{transform:scale(.65);opacity:.28}}
@keyframes sharedWave{0%,46%{transform:scale(.25);opacity:0}52%{transform:scale(.65);opacity:.84}67%{transform:scale(2.2);opacity:0}100%{transform:scale(2.2);opacity:0}}
@media(max-width:560px){.relationship-lens{width:180px;height:180px;transform:translate(-50%,-50%) scale(.78);transform-origin:center}.relationship-lens i{width:82px;height:82px;margin:-41px}.relationship-lens:before{transform:scale(.82)}.relationship-lens:after{transform:scale(.82)}}
@media(prefers-reduced-motion:reduce){.relationship-lens,.relationship-lens i,.relationship-lens:before,.relationship-lens:after{animation:none!important}.relationship-lens i:first-child{transform:translate(-45px,-10px) scale(.78)}.relationship-lens i:last-child{transform:translate(45px,10px) scale(.78)}.relationship-lens:before,.relationship-lens:after{display:none}}

/* Mobile service cards: image first, then a calm, readable content rhythm. */
@media(max-width:700px){.services.section{width:calc(100% - 16px);padding:18px 0 64px}.services-intro{margin-bottom:22px}.services-intro h2{font-size:clamp(18px,5.2vw,22px)}.services-intro>p{font-size:11px;line-height:1.55}.service-stack{gap:16px}.service-astrologer{display:flex!important;flex-direction:column;min-height:auto!important;border-radius:26px;background:#202128}.service-astrologer .service-media{position:relative;inset:auto;order:1;width:100%;height:320px;min-height:320px;overflow:hidden}.service-astrologer .service-media>img{object-position:center 39%}.service-astrologer .service-copy{order:2;display:flex;align-items:center;text-align:center;justify-content:flex-start;padding:24px 22px 30px}.service-astrologer .service-index{margin-bottom:10px;font-size:12px}.service-astrologer .service-copy h3{font:400 clamp(29px,8vw,34px)/1.02 var(--serif);letter-spacing:-.02em;margin:0 0 13px}.service-astrologer .service-copy>p{max-width:340px;margin:0;font-size:14px;line-height:1.55}.service-astrologer .service-copy .button{margin-top:20px;min-width:190px;justify-content:center;padding:15px 20px;font-size:15px}.service-astrologer .chat-thread{width:min(390px,76%);right:12%;top:14px}.relationship-lens{transform:translate(-50%,-50%) scale(.86)}}
@media(max-width:390px){.service-astrologer .service-media{height:290px;min-height:290px}.service-astrologer .service-copy{padding:22px 18px 26px}.service-astrologer .service-copy h3{font-size:28px}.service-astrologer .service-copy>p{font-size:13px}.service-astrologer .service-copy .button{min-width:176px;font-size:14px}}
