/* Celestill landing — Jupiterian theme. Cosmic Creme ground, Jupiter Gold light, Deep Earth text.
   Depth comes from soft gold glows, never dark drop-shadows. Contrast-checked: --earth on --creme ≈ 13:1,
   --gold-ink on --creme ≈ 5.6:1 (AA), --earth on --gold ≈ 8:1. */
.ln{--creme:#fbf6ec;--creme-2:#f5ecda;--creme-3:#efe2c8;--gold:#e7b53c;--gold-2:#f3cf6a;--gold-ink:#7d5c0c;--earth:#2f2a25;--earth-2:#5b5248;--plum:#3d2238;
  --glow:0 18px 48px -14px rgba(231,181,60,.55),0 0 0 1px rgba(231,181,60,.12);--glow-soft:0 24px 70px -30px rgba(231,181,60,.6);
  --serif:"Cormorant Garamond",Georgia,serif;--sans:Montserrat,ui-sans-serif,system-ui,sans-serif;--pad:clamp(20px,5vw,80px);--sect:clamp(84px,10vw,150px);--header:76px;
  margin:0;background:var(--creme);color:var(--earth);font-family:var(--sans);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
html:has(body.ln){scroll-behavior:smooth;scroll-padding-top:calc(var(--lx-header-h,76px) + 12px)}
.ln *,.ln *::before,.ln *::after{box-sizing:border-box}
.ln img{display:block;max-width:100%}
.ln h1,.ln h2,.ln h3{font-family:var(--serif);font-weight:500;color:var(--earth);letter-spacing:-.01em;margin:0;line-height:1.08;text-wrap:balance}
.ln p{margin:0}
:where(.ln) a{color:inherit}
.ln :focus-visible{outline:2px solid var(--gold-ink);outline-offset:3px}
.ln-skip{position:absolute;left:-999px;top:8px;z-index:99;background:var(--gold);color:var(--earth);padding:10px 16px}.ln-skip:focus{left:8px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* the moon: fixed, faint; content glides over it */
.ln-moon{position:fixed;z-index:0;pointer-events:none;width:min(62vw,720px);aspect-ratio:1;right:-12vw;top:12vh;border-radius:50%;opacity:.08;
  background:radial-gradient(circle at 38% 34%,#fff8df 0 22%,#f3dfa6 46%,#e2c071 70%,transparent 71%),radial-gradient(circle at 30% 60%,rgba(160,120,40,.45) 0 6%,transparent 7%),radial-gradient(circle at 62% 40%,rgba(160,120,40,.35) 0 4%,transparent 5%);
  box-shadow:0 0 180px 60px rgba(243,207,106,.9)}
.ln header,.ln main,.ln footer{position:relative;z-index:1}
/* motifs */
.ln-motif{width:18px;height:18px;color:var(--gold-ink);flex:none}
.ln-motif-lg{width:44px;height:26px}
.ln-star{width:14px;height:14px;color:var(--gold)}.ln-star-xs{width:10px;height:10px;color:var(--gold)}
.ln-bullet{width:18px;height:18px;margin-top:5px;color:var(--gold-ink)}
.ln-divider{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 auto 22px;max-width:320px}
.ln-divider span{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(125,92,12,.45),transparent)}
/* type helpers */
.ln-kicker{font:600 11.5px/1.4 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:14px!important}
.ln-h2{font-size:clamp(34px,4.4vw,62px);margin-bottom:22px!important}
.ln-h3{font-size:clamp(22px,1.9vw,28px);font-weight:500}
.ln-lede{font-size:clamp(16px,1.25vw,18.5px);color:var(--earth-2);max-width:60ch}
.ln-muted{color:var(--earth-2);font-size:14.5px}
.ln-sign{font:italic 400 21px/1.4 var(--serif);color:var(--gold-ink)}
.ln-note{display:inline-flex;margin-top:10px!important;padding:6px 14px;border-radius:999px;background:rgba(231,181,60,.16);color:var(--gold-ink);font:600 11px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase}
/* buttons: gold with a glow */
.ln-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 30px;border-radius:999px;border:1px solid var(--gold);background:var(--gold);color:var(--earth);
  font:600 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;text-decoration:none;cursor:pointer;box-shadow:var(--glow);transition:transform .25s,box-shadow .25s,background .25s}
.ln-btn:hover{background:var(--gold-2);transform:translateY(-1px);box-shadow:0 22px 60px -12px rgba(231,181,60,.75),0 0 0 1px rgba(231,181,60,.2)}
.ln-btn-ghost{background:rgba(251,246,236,.08);color:var(--creme);border-color:rgba(243,207,106,.7);box-shadow:none}
.ln-btn-ghost:hover{background:rgba(243,207,106,.16);color:#fff}
.ln-btn-sm{min-height:44px;padding:0 20px;font-size:11px}
.ln-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:30px}
.ln-text-link{font:600 12px/1.2 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-ink);text-decoration:none;border-bottom:1px solid rgba(125,92,12,.35);padding:8px 0}
.ln-text-link:hover{border-bottom-color:var(--gold-ink)}
/* header */
.ln-header{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:14px var(--pad);background:rgba(251,246,236,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(125,92,12,.14)}
.ln-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--plum)}
.ln-brand img{width:40px;height:auto}
.ln-brand span{font:500 22px/1 var(--serif);letter-spacing:.26em}
.ln-nav{display:flex;justify-content:center;gap:clamp(16px,2.2vw,34px)}
.ln-nav a{font:500 12.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--earth);padding:10px 0;border-bottom:1px solid transparent}
.ln-nav a:hover{border-bottom-color:var(--gold)}
.ln-utility{display:flex;align-items:center;gap:10px}
.ln-lang select{min-height:40px;padding:0 8px;border:1px solid rgba(125,92,12,.3);border-radius:999px;background:transparent;color:var(--earth);font:500 12.5px var(--sans)}
.ln-icon{position:relative;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;color:var(--earth);text-decoration:none}
.ln-icon:hover{background:rgba(231,181,60,.16)}
.ln-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.4}
.ln-bag-count{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--gold);color:var(--earth);font:700 10px/18px var(--sans);text-align:center;box-shadow:0 0 12px rgba(231,181,60,.8)}
/* hero carousel: native scroll-snap for swipe, JS for autoplay */
.ln-hero{position:relative;height:calc(100svh - var(--lx-header-h,76px));min-height:560px;max-height:980px;overflow:hidden;background:var(--earth)}
.ln-track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.ln-track::-webkit-scrollbar{display:none}
.ln-slide{position:relative;flex:0 0 100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;display:grid;align-items:end;overflow:hidden}
.ln-slide-media{position:absolute;inset:0}
.ln-slide-media>img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 7s ease-out}
.ln-slide.is-current .ln-slide-media>img{transform:scale(1)}
.ln-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(28,22,16,.82) 0%,rgba(28,22,16,.38) 42%,rgba(28,22,16,0) 72%),linear-gradient(90deg,rgba(28,22,16,.45),transparent 60%);pointer-events:none}
.ln-slide-copy{position:relative;z-index:2;max-width:760px;padding:0 var(--pad) clamp(96px,12vh,140px);color:var(--creme)}
.ln-slide-copy .ln-kicker{color:var(--gold-2);margin:12px 0 16px!important}
.ln-slide-title{font-size:clamp(42px,6.4vw,92px);color:#fffaf0!important;font-weight:500;text-shadow:0 2px 30px rgba(0,0,0,.25)}
.ln-slide-sub{margin-top:20px;font-size:clamp(16px,1.35vw,19px);color:rgba(251,246,236,.88);max-width:54ch}
.ln-slide-copy .ln-btn{box-shadow:0 0 50px -6px rgba(243,207,106,.75)}
.ln-slide-copy .ln-star{color:var(--gold-2)}
/* composed art slides (no photo yet) */
.ln-art{position:absolute;inset:0;display:grid;place-items:center}
.ln-art-chart{background:radial-gradient(ellipse at 70% 40%,#3a2b17 0%,#1d1610 60%,#120d09 100%)}
.ln-art-cosmos{position:absolute;right:6%;top:50%;width:min(62vh,640px);transform:translateY(-55%);opacity:.95;filter:drop-shadow(0 0 60px rgba(243,207,106,.35))}
.ln-art-kundali{position:absolute;right:calc(6% + min(62vh,640px)*.2);top:50%;width:min(36vh,360px);transform:translateY(-58%);fill:none;stroke:rgba(243,207,106,.55);stroke-width:1.2}
.ln-art-room{background:linear-gradient(180deg,#e9dcc4 0%,#ddcba9 64%,#b9a17a 64.2%,#a88f69 100%)}
.ln-canvas{position:absolute;right:12%;top:13%;width:min(42vh,440px);aspect-ratio:4/5;padding:14px;background:#efe6d3;box-shadow:0 30px 60px -28px rgba(60,40,10,.55),0 0 120px -20px rgba(243,207,106,.55)}
.ln-canvas img{width:100%;height:100%;object-fit:cover;filter:saturate(1.1) contrast(1.05)}
.ln-canvas::after{content:"";position:absolute;inset:14px;background:repeating-linear-gradient(115deg,rgba(255,255,255,.05) 0 2px,rgba(0,0,0,.04) 2px 4px);mix-blend-mode:overlay}
.ln-bench{position:absolute;right:8%;bottom:20%;width:min(62vh,640px);height:26px;background:#6d5639;border-radius:3px;box-shadow:0 18px 30px -16px rgba(40,25,5,.6)}
/* carousel controls */
.ln-controls{position:absolute;z-index:3;left:var(--pad);right:var(--pad);bottom:clamp(26px,4vh,44px);display:flex;align-items:center;gap:14px}
.ln-dots{display:flex;gap:10px}
.ln-dot{width:34px;height:34px;padding:0;border:0;background:none;cursor:pointer;position:relative}
.ln-dot::before{content:"";position:absolute;left:4px;right:4px;top:16px;height:2px;border-radius:2px;background:rgba(251,246,236,.45);transition:background .3s,box-shadow .3s}
.ln-dot[aria-current="true"]::before{background:var(--gold-2);box-shadow:0 0 14px rgba(243,207,106,.9)}
.ln-arrow,.ln-pause{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(251,246,236,.45);background:rgba(28,22,16,.25);color:var(--creme);cursor:pointer;backdrop-filter:blur(6px)}
.ln-arrow:hover,.ln-pause:hover{border-color:var(--gold-2);box-shadow:0 0 24px rgba(243,207,106,.45)}
.ln-arrow svg,.ln-pause svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ln-pause{margin-left:auto}.ln-pause .i-play{display:none}.ln-pause[aria-pressed="true"] .i-pause{display:none}.ln-pause[aria-pressed="true"] .i-play{display:block;fill:currentColor}
/* sections */
.ln-section{padding:var(--sect) var(--pad);max-width:1440px;margin:0 auto}
.ln-center{display:flex;justify-content:center;margin-top:48px}
.ln-head{text-align:center;max-width:760px;margin:0 auto 56px}
.ln-ethos{padding:var(--sect) var(--pad);text-align:center;max-width:980px;margin:0 auto}
.ln-ethos-text{font:400 clamp(26px,3vw,42px)/1.35 var(--serif);color:var(--earth);text-wrap:balance}
.ln-ethos .ln-sign{margin-top:26px}
/* retreats */
.ln-retreats{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(36px,6vw,96px);align-items:center}
.ln-masonry{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:clamp(150px,16vw,230px);gap:14px}
.ln-masonry figure{margin:0;border-radius:18px;overflow:hidden;box-shadow:var(--glow-soft)}
.ln-masonry img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.ln-masonry figure:hover img{transform:scale(1.04)}
.ln-m-tall{grid-row:span 2}.ln-m-wide{grid-column:span 2}
.ln-upcoming-title{margin-top:34px!important;margin-bottom:12px!important}
.ln-dates{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.ln-dates li{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid rgba(125,92,12,.18)}
.ln-dates li div{display:grid}
.ln-dates strong{font:500 21px/1.3 var(--serif)}
/* temple: ambient full width */
.ln-temple{position:relative;min-height:min(92vh,820px);display:grid;align-items:center;overflow:hidden;background:#1b130c}
.ln-temple-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 62%;filter:saturate(1.05) brightness(.82)}
.ln-temple::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(24,16,9,.92) 0%,rgba(24,16,9,.72) 38%,rgba(24,16,9,.15) 75%),radial-gradient(ellipse at 70% 60%,rgba(243,207,106,.22),transparent 60%)}
.ln-temple-copy{position:relative;z-index:2;max-width:640px;padding:var(--sect) var(--pad)}
.ln-temple .ln-h2{color:#fff6e2}.ln-temple .ln-lede{color:rgba(251,246,236,.84)}.ln-temple .ln-kicker{color:var(--gold-2)}
.ln-glowmark{width:52px;height:52px;color:var(--gold-2);filter:drop-shadow(0 0 16px rgba(243,207,106,.8));margin-bottom:20px}
.ln-temple-times{margin-top:18px!important;color:var(--gold-2);font:italic 400 19px/1.4 var(--serif)}
/* collaboration split */
.ln-collab{display:grid;grid-template-columns:1fr 1fr;min-height:min(86vh,760px);background:var(--creme-2)}
.ln-collab-media{margin:0;position:relative;overflow:hidden}
.ln-collab-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ln-collab-copy{display:grid;align-content:center;padding:var(--sect) clamp(28px,6vw,100px);background:radial-gradient(ellipse at 20% 30%,rgba(231,181,60,.22),transparent 55%),var(--creme-2)}
.ln-collab-marks{display:flex;align-items:center;gap:16px;margin-bottom:26px}
.ln-collab-marks img{filter:drop-shadow(0 0 18px rgba(231,181,60,.45))}
.ln-times{font:300 34px/1 var(--serif);color:var(--gold-ink)}
.ln-swar{font:600 34px/1 var(--serif);color:var(--plum)}
/* shop */
.ln-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.6vw,40px)}
.ln-product{display:grid;gap:18px;padding:14px 14px 26px;border-radius:24px;background:linear-gradient(180deg,#fffdf7,var(--creme-2));box-shadow:var(--glow-soft);transition:transform .35s,box-shadow .35s}
.ln-product:hover{transform:translateY(-4px);box-shadow:0 30px 80px -26px rgba(231,181,60,.8)}
.ln-product-media{position:relative;display:block;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:var(--creme-3)}
.ln-product-media>img{width:100%;height:100%;object-fit:cover}
.ln-mini-canvas{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(180deg,#eadfc8,#dccaa6)}
.ln-mini-canvas img{width:66%;aspect-ratio:4/5;object-fit:cover;padding:8px;background:#efe6d3;box-shadow:0 22px 40px -20px rgba(60,40,10,.6),0 0 60px -10px rgba(243,207,106,.55)}
.ln-soon{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:rgba(251,246,236,.92);color:var(--gold-ink);font:600 10px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.ln-product-body{display:grid;gap:8px;padding:0 10px;justify-items:start}
/* seva */
.ln-seva{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,6vw,96px);align-items:center}
.ln-seva-photos{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:14px;height:clamp(460px,52vw,700px)}
.ln-seva-photos figure{margin:0;border-radius:18px;overflow:hidden;box-shadow:var(--glow-soft)}
.ln-seva-photos img{width:100%;height:100%;object-fit:cover}
.ln-seva-main{grid-row:span 2}
.ln-seva-list{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px}
.ln-seva-list li{display:flex;gap:14px;align-items:flex-start;font-size:16px}
.ln-seva-list .ln-bullet{width:26px;height:16px;margin-top:6px}
/* footer */
.ln-footer{margin-top:var(--sect);padding:72px var(--pad) 32px;background:linear-gradient(180deg,var(--creme-2),var(--creme-3));border-top:1px solid rgba(125,92,12,.18)}
.ln-footer-grid{display:grid;grid-template-columns:1.1fr .8fr 1fr 1.2fr;gap:40px;max-width:1440px;margin:0 auto}
.ln-footer-brand img{width:150px;height:auto;margin-bottom:14px}
.ln-footer nav{display:grid;gap:6px;align-content:start}
.ln-footer nav a,.ln-footer address+a,.ln-footer p a{color:var(--earth);text-decoration:none}
.ln-footer nav a:hover{color:var(--gold-ink)}
.ln-footer address{font-style:normal;color:var(--earth-2);margin-bottom:8px}
.ln-letters .ln-muted{margin-bottom:18px!important}
.ln-socials{display:flex;gap:8px;margin-top:14px}
.ln-social{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(125,92,12,.3);color:var(--earth)}
.ln-social svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.ln-footer-legal{max-width:1440px;margin:48px auto 0;padding-top:22px;border-top:1px solid rgba(125,92,12,.18);display:flex;justify-content:space-between;gap:24px;font-size:12.5px;color:var(--earth-2)}
.ln-footer-legal p:first-child{max-width:80ch}
/* the shared enquiry dialog in the creme theme */
.ln dialog{border:0;border-radius:22px;background:var(--creme);color:var(--earth);box-shadow:0 40px 120px -30px rgba(231,181,60,.6)}
.ln dialog::backdrop{background:rgba(47,42,37,.5);backdrop-filter:blur(4px)}
/* Hindi: no tracking on Devanagari */
html[lang="hi"] .ln-kicker,html[lang="hi"] .ln-btn,html[lang="hi"] .ln-nav a,html[lang="hi"] .ln-text-link,html[lang="hi"] .ln-note,html[lang="hi"] .ln-soon{letter-spacing:0;text-transform:none}
html[lang="hi"] .ln-slide-title,html[lang="hi"] .ln-h2{line-height:1.25}
/* responsive */
@media (max-width:1180px){.ln-nav{display:none}.ln-header{grid-template-columns:auto 1fr}.ln-utility{justify-self:end}}
@media (max-width:980px){.ln-retreats,.ln-seva{grid-template-columns:1fr}.ln-collab{grid-template-columns:1fr}.ln-collab-media{min-height:62vh}.ln-products{grid-template-columns:1fr 1fr}.ln-footer-grid{grid-template-columns:1fr 1fr}.ln-art-kundali{display:none}.ln-art-cosmos{right:50%;transform:translate(50%,-62%);opacity:.6}.ln-canvas{right:50%;transform:translateX(50%);top:8%}.ln-bench{right:50%;transform:translateX(50%)}}
@media (max-width:640px){.ln-brand span,.ln-btn-sm.ln-btn[href="/book/"]{display:none}.ln-header{gap:10px;padding:10px 16px}.ln-products{grid-template-columns:1fr}.ln-footer-grid{grid-template-columns:1fr}.ln-footer-legal{flex-direction:column}
  .ln-slide-copy{padding-bottom:110px}.ln-arrow{display:none}.ln-seva-photos{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:240px 160px}.ln-seva-main{grid-row:auto;grid-column:span 2}.ln-masonry{grid-auto-rows:150px}.ln-moon{width:90vw;right:-35vw}}
@media (prefers-reduced-motion:reduce){html:has(body.ln){scroll-behavior:auto}.ln-slide-media>img,.ln-masonry img,.ln-product,.ln-btn{transition:none}.ln-slide-media>img{transform:none}}
/* undo the legacy global footer rules from styles.css for the landing footer */
.ln footer.ln-footer{display:block;width:auto;min-height:0;margin-inline:0;text-align:left;font-size:15px;color:var(--earth);z-index:1}
.ln footer.ln-footer a{color:inherit}
.ln footer.ln-footer .ln-text-link{color:var(--gold-ink)}
/* keep the carousel controls clear of the floating chat button */
.ln-pause{margin-left:0}
.ln .chat-open{box-shadow:0 0 40px -6px rgba(231,181,60,.7)}
.ln-soon{white-space:nowrap}
@media (max-width:640px){.ln-controls{top:14px;bottom:auto;left:16px;right:16px}.ln-dot{width:28px}.ln-pause{margin-left:auto;width:38px;height:38px}.ln-slide-copy{padding-bottom:96px}}
