/* Nalvazhi — editorial Tamil services / celestial design system.
   No remote font, image, analytics, or animation CDN requests. */
:root{--paper:#f5f2eb;--ink:#202c2f;--muted:#68716f;--line:#d9d8cf;--dark:#0d161e;--cream:#e9dfc8;--gold:#b8a281;--rust:#9b6a51;--serif:'Iowan Old Style','Baskerville','EB Garamond',Georgia,serif;--sans:'Avenir Next','Segoe UI',Arial,sans-serif;--ease:cubic-bezier(.22,.68,0,1.01)}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.125rem;line-height:1.65;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid #aa7e4e;outline-offset:5px}input:focus,textarea:focus,select:focus{outline-color:#897353}button{background:none;border:0;padding:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.035em}em{font-weight:400}p{color:var(--muted)}svg{display:block}img,canvas{max-width:100%}.icon{width:20px;height:20px;flex:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:52px;padding:15px 24px;border:1px solid transparent;border-radius:3px;font-size:1rem;font-weight:500;letter-spacing:.015em;transition:background .25s,transform .25s,color .25s;line-height:1.4}.button:hover{transform:translateY(-2px)}.button .icon{width:17px;height:17px}.button-cream{background:var(--cream);color:#243031}.button-cream:hover{background:#f4ebd9}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#394847}.button-outline{border-color:var(--line);background:transparent}.button-outline:hover{background:#e8e5dc}.button-small{min-height:42px;padding:10px 17px;gap:19px;font-size:0.9375rem}.button-full{width:100%;justify-content:space-between}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:1rem;line-height:1.5;font-weight:500;padding:10px 0;border-bottom:1px solid currentColor;transition:gap .2s}.text-link .icon{width:17px;height:17px}.text-link:hover{gap:28px}.text-button{display:inline-flex;align-items:center;gap:8px;font-size:0.9375rem;line-height:1.4}.text-button .icon{width:13px;height:13px}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.icon-button:hover{background:#ddd8cd}.eyebrow{font-size:0.875rem;letter-spacing:.18em;line-height:1.5;font-family:var(--sans);font-weight:500;color:inherit}.tiny-star{font-size:20px;vertical-align:middle;margin-right:14px}.pill{font-size:0.8125rem;letter-spacing:.13em;padding:6px 10px;border:1px solid var(--line);border-radius:20px}.skip-link{position:fixed;left:12px;top:12px;z-index:100;background:var(--cream);color:var(--ink);padding:12px 22px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}[hidden]{display:none!important}.wordmark{display:flex;align-items:center;gap:12px;width:max-content}.brand-mark{width:43px;height:43px;color:var(--gold)}.wordmark>span{font-family:var(--serif);font-size:29px;line-height:.95;letter-spacing:-.015em}.wordmark small{display:block;font-family:var(--sans);font-size:0.75rem;line-height:1;letter-spacing:.1em;margin-top:9px}.preview-chip{font-size:0.75rem;text-transform:uppercase;letter-spacing:.1em;opacity:.55}.site-header{height:105px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;z-index:20;position:relative}.site-header.over-hero{position:absolute;inset:0 0 auto;color:#e9e6dc}.site-header.on-paper{border-bottom:1px solid var(--line)}.desktop-nav{display:flex;gap:30px;align-items:center;margin-left:auto;margin-right:30px;font-size:0.9375rem;color:#c1c7c5}.on-paper .desktop-nav{color:var(--muted)}.desktop-nav a{padding:14px 0;position:relative}.desktop-nav a:after{content:'';height:1px;background:var(--gold);position:absolute;left:0;right:100%;bottom:8px;transition:right .2s}.desktop-nav a:hover:after{right:0}.header-actions{display:flex;gap:20px;align-items:center}.menu-button{display:none;width:44px;height:44px;align-items:center;justify-content:center}.mobile-menu{position:absolute;top:87px;left:18px;right:18px;padding:16px 22px;background:var(--paper);color:var(--ink);z-index:40;border:1px solid var(--line);box-shadow:0 12px 50px #0003}.mobile-menu a{display:flex;justify-content:space-between;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.mobile-menu a:last-child{border:0}
/* The opening scene */
.hero{height:100svh;min-height:800px;max-height:1100px;position:relative;overflow:hidden;background:var(--dark);color:var(--paper)}.hero-visual{position:absolute;inset:0;overflow:hidden}.space-canvas{width:100%;height:100%;display:block;position:absolute;inset:0;opacity:0;transition:opacity .6s}.space-canvas.is-ready{opacity:1}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#0c151df0 0%,#0c151dce 25%,#0c151d55 50%,transparent 74%),linear-gradient(0deg,#0c151d 0%,transparent 18%,transparent 80%,#0c151d66 100%);pointer-events:none}.hero-content{position:relative;z-index:2;padding-top:clamp(205px,24vh,285px);margin-left:7.2%;max-width:700px;pointer-events:none}.hero-content a{pointer-events:auto}.hero-eyebrow{display:flex;align-items:center;gap:14px;color:#c4c5bc;font-size:0.8125rem;letter-spacing:.2em;margin-bottom:28px}.hero-eyebrow>span{width:22px;height:1px;background:var(--gold)}.hero h1{font-size:clamp(68px,6.9vw,108px);line-height:1.01;letter-spacing:-.045em;color:#f0ece1}.hero h1 em{color:#d5c9b0}.hero-content>p{font-size:1.0625rem;line-height:1.85;color:#aeb7b6;margin-top:28px;max-width:380px}.hero-actions{display:flex;align-items:center;gap:27px;margin-top:38px}.hero-secondary{font-size:0.9375rem;color:#dadbd2;padding:14px 0;border-bottom:1px solid #566064}.hero-secondary span{font-size:18px;display:inline-block;margin-left:13px}.hero-note{display:flex;align-items:center;gap:10px;font-size:0.75rem;letter-spacing:.13em;color:#939d9d;margin-top:48px}.hero-note>span{font-size:21px;color:var(--gold)}.hero-annotation{position:absolute;right:9%;top:73%;display:flex;align-items:center;gap:12px;color:#e4dbc5;font-size:0.8125rem;letter-spacing:.17em;z-index:3}.hero-annotation i{width:54px;height:1px;background:#aa9b7f88;position:relative}.hero-annotation i:before{content:'';position:absolute;left:0;top:-2px;width:5px;height:5px;border-radius:50%;background:#c2af87}.hero-annotation span{display:block;font-family:var(--serif);font-style:italic;font-size:17px;letter-spacing:0;opacity:.75;margin-top:4px}.hero-bottom{position:absolute;z-index:3;bottom:32px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:0.75rem;letter-spacing:.13em;color:#a0aaa9}.hero-bottom a{display:flex;align-items:center;gap:14px;color:#d4d4c9}.hero-bottom .icon{width:14px;height:27px}.planet-fallback{position:absolute;border-radius:50%;background:radial-gradient(circle at 33% 27%,#d6d3c8 0%,#989f9d 25%,#657171 49%,#26373d 73%,#111c22 92%);box-shadow:inset -38px -20px 58px #061118c9,inset 7px 3px 7px #dfdac08a,0 0 90px #b8c7be1a;overflow:hidden}.planet-fallback:before{content:'';position:absolute;inset:0;border-radius:50%;opacity:.26;background:repeating-radial-gradient(ellipse at 22% 48%,transparent 0 13px,#293b3e 14px 17px,transparent 18px 29px),radial-gradient(circle at 64% 42%,#141e1e 0 6%,transparent 7%),radial-gradient(circle at 44% 72%,#1c2626 0 9%,transparent 10%);filter:blur(1px)}.hero-fallback{width:min(46vw,680px);aspect-ratio:1;right:6%;top:20%;transform:rotate(-16deg)}.space-canvas.is-ready+.planet-fallback{display:none}.intro-ribbon{padding:26px 7.2%;display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.intro-ribbon>span{font-size:0.8125rem;letter-spacing:.12em;color:#69726c}.intro-ribbon em{font-family:var(--serif);font-size:18px;letter-spacing:0;color:#6c726c;margin-left:12px}.intro-ribbon>div{display:flex;align-items:center;gap:25px;font-size:0.875rem;color:#6b746e}.intro-ribbon i{font-style:normal;color:#a89a7d}
/* The zodiac */
.section{padding:104px 7.2%;max-width:1600px;margin:0 auto}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:28px 60px;align-items:end}.section-heading .eyebrow{grid-column:1/-1;color:#7c806e}.section-heading h2,.section-title-row h2{font-size:clamp(42px,4.4vw,66px);line-height:1.07}.section-heading>p:last-child{font-size:1.0625rem;line-height:1.9;justify-self:end;padding-bottom:5px}.section-heading h2 em,.section-title-row h2 em{color:#7e856f}.zodiac-layout{display:grid;grid-template-columns:1.04fr 1fr;gap:10%;align-items:center;margin-top:66px}.zodiac-wheel{position:relative;aspect-ratio:1;width:100%;max-width:480px;justify-self:center}.wheel-lines{width:100%;height:100%;fill:none;stroke:#a89c7e;stroke-width:.65;opacity:.65}.wheel-sign{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-family:Georgia,serif;color:#7e8277;line-height:1;transition:color .2s,background .2s,box-shadow .2s}.wheel-sign:hover{color:var(--ink);background:#e6e1d5}.wheel-sign.is-active{background:var(--ink);color:var(--cream);box-shadow:0 0 0 6px #e6e0d5}.wheel-centre{position:absolute;inset:22%;display:flex;align-items:center;flex-direction:column;justify-content:center;pointer-events:none}.wheel-orbit-label{font-size:0.75rem;letter-spacing:.18em;color:#92917e}.wheel-centre-name{font-family:var(--serif);font-size:35px;line-height:1.2;margin-top:-4px}.wheel-centre-date{font-size:0.75rem;color:#777f70;letter-spacing:.05em;margin-top:6px}.wheel-centre #selected-constellation{width:120px;height:120px;margin:5px 0 0}.constellation{width:100%;height:100%;overflow:visible}.constellation polyline{fill:none;stroke:currentColor;stroke-width:.45;opacity:.6}.constellation circle{fill:currentColor;stroke:none}.wheel-centre .constellation{color:#948564}.zodiac-detail{padding:8px 0}.zodiac-detail-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.sign-number{font-size:0.8125rem;color:#8b8f82;letter-spacing:.1em}.zodiac-detail h3{font-size:53px;line-height:1.08;max-width:340px;min-height:114px}.zodiac-detail>p{font-size:1.0625rem;line-height:1.9;margin:20px 0 25px;max-width:420px}.sign-facts{display:grid;grid-template-columns:.75fr 1.25fr .75fr;gap:18px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0}.sign-facts dt{font-size:0.75rem;letter-spacing:.13em;color:#818777;margin-bottom:7px}.sign-facts dd{margin:0;font-size:1rem}.trait-list{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 26px}.trait-list span{font-size:0.8125rem;color:#6d756a;padding:5px 10px;background:#eae8de;border-radius:2px}.section-footnote{font-size:0.875rem;line-height:1.8;color:#7c8175;margin-top:32px}.zodiac-section>.section-footnote{text-align:center;margin-top:52px}
/* Scroll-controlled WebGL cosmic atlas */
.cosmic-section{position:relative;background:var(--dark);color:var(--paper)}.cosmic-stage{position:relative;min-height:780px;height:100svh;max-height:1200px;overflow:hidden;background:#0b151e}.cosmic-section.native-pin .cosmic-stage{position:sticky;top:0}.cosmic-canvas-wrap{position:absolute;inset:0}.cosmic-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#0b151ef0,#0b151e7d 38%,transparent 70%),linear-gradient(0deg,#0b151e 1%,transparent 40%,transparent 80%,#0b151e99);pointer-events:none}.journey-fallback{width:39vw;max-width:560px;aspect-ratio:1;right:13%;top:15%}.cosmic-heading{position:absolute;top:45px;left:7.2%;right:7.2%;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:2}.cosmic-heading>.eyebrow{font-size:0.8125rem;color:#a6b0ae}.skip-journey{font-size:0.875rem;display:flex;align-items:center;gap:10px;color:#b6bdb5}.skip-journey .icon{width:12px;height:18px}.cosmic-copy{position:absolute;top:19%;left:7.2%;width:34%;max-width:430px;z-index:2}.chapter-index{font-size:0.875rem;letter-spacing:.08em;color:#7e8c8f;display:flex;align-items:center;gap:14px;margin-bottom:37px}.chapter-index>span:first-child{color:#e1d9c3}.chapter-index .line{width:55px;height:1px;background:#475554}.planet-theme{color:#b5aa8d;font-size:0.75rem;letter-spacing:.18em;margin-bottom:15px;text-transform:uppercase}.cosmic-copy h2{font-size:clamp(60px,6.4vw,96px);line-height:1}.cosmic-copy h3{font-size:29px;letter-spacing:-.02em;font-style:italic;margin-top:16px;color:#b5b7ac}.cosmic-copy>p:not(.planet-theme){font-size:1rem;line-height:1.9;color:#9ba7a6;margin-top:25px;max-width:330px}.planet-reflection{border-left:1px solid #6c6c56;padding-left:17px;margin-top:32px;max-width:310px}.planet-reflection>span{font-size:0.75rem;color:#a0a48f;letter-spacing:.14em}.planet-reflection>p{font-family:var(--serif);font-size:19px;color:#c7ccbe;line-height:1.4;margin-top:7px}.cosmic-coordinate{position:absolute;right:5%;top:42%;display:flex;flex-direction:column;align-items:center;gap:22px;color:#afb3a3;font-size:0.75rem;line-height:1.8;letter-spacing:.15em;text-align:center}.cosmic-coordinate>span:first-child{font-size:25px;font-family:Georgia,serif;color:#c7b796}.cosmic-coordinate i{height:75px;width:1px;background:linear-gradient(#73807966,transparent)}.cosmic-controls{position:absolute;bottom:32px;left:7.2%;right:7.2%;z-index:3}.cosmic-control-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;color:#a5ada2}.cosmic-control-top .text-button{font-size:0.8125rem}.journey-hint{font-size:0.75rem;letter-spacing:.15em}.planet-nav{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:0 6px 16px}.planet-stop{display:flex;flex-direction:column;gap:10px;align-items:center;min-width:50px;padding:8px 4px;color:#899795;font-size:0.8125rem;transition:color .2s;position:relative}.planet-stop:after{content:'';position:absolute;bottom:-17px;width:4px;height:4px;background:#d2c29c;border-radius:50%;opacity:0;transition:opacity .2s}.planet-stop.is-active{color:#e0d9c7}.planet-stop.is-active:after{opacity:1}.planet-dot{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#cdc7ae,#6c7a73 50%,#253738);box-shadow:inset -4px -2px 4px #0c181ecc;transition:transform .25s;position:relative}.planet-stop:hover .planet-dot,.planet-stop.is-active .planet-dot{transform:scale(1.25)}.planet-dot-sun{background:radial-gradient(circle at 35% 25%,#f8eab1,#ce9b4e);box-shadow:0 0 12px #c4a0513b}.planet-dot-moon,.planet-dot-mercury{background:radial-gradient(circle at 25% 25%,#b9bab2,#7c8987 50%,#3c4e51)}.planet-dot-venus{background:radial-gradient(circle at 25% 25%,#e4c18d,#a98459 50%,#4e4840)}.planet-dot-earth{background:radial-gradient(circle at 35% 25%,#9fa9a1,#477c84 50%,#243f59)}.planet-dot-mars{background:radial-gradient(circle at 25% 25%,#c98c67,#9f5c43 50%,#402e30)}.planet-dot-jupiter{background:repeating-linear-gradient(170deg,#c9b299 0px,#b99772 3px,#b6ae97 5px)}.planet-dot-saturn{background:radial-gradient(circle at 30% 30%,#bcb49b,#7d7c69)}.planet-dot-saturn:after{content:'';position:absolute;width:34px;height:9px;border:2px solid #bab09677;border-radius:50%;left:-6px;top:7px;transform:rotate(-30deg)}.planet-dot-uranus{background:radial-gradient(circle at 25% 25%,#a4d2cc,#6a9999 50%,#3d6166)}.planet-dot-neptune{background:radial-gradient(circle at 25% 25%,#738cba,#3b648d 50%,#263a5d)}.journey-track{height:1px;background:#40514e66;width:100%}.journey-track>span{display:block;height:1px;background:#bfb18f;width:0;transform-origin:left}.journey-caption{display:flex;justify-content:space-between;gap:20px;margin-top:15px;font-size:0.75rem;letter-spacing:.11em;color:#697b7b}.journey-caption>span:last-child{letter-spacing:.02em}.planet-transcripts{padding:50px 7.2%}.planet-transcripts h2{font-size:36px;margin-bottom:25px}.planet-transcripts article{margin-bottom:30px}.planet-transcripts h3{font-size:24px;margin-bottom:8px}.planet-transcripts p{color:#a9b7b0;max-width:650px}.js .planet-transcripts{display:none}
/* Daily reflections */
.section-title-row{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}.section-title-row .eyebrow{color:#7a8270;margin-bottom:24px}.section-aside{text-align:right;padding-bottom:3px}.date-label{display:block;font-size:0.8125rem;letter-spacing:.12em;margin-bottom:11px;color:#8c8167}.section-aside p{font-size:0.9375rem;line-height:1.8}.reflection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:stretch}.reflection-card{border:1px solid #deddd3;background:#f7f4ee;min-width:0;overflow:hidden}.reflection-art{height:160px;position:relative;overflow:hidden;background:color-mix(in srgb,var(--sign-accent),var(--paper) 90%);display:flex;justify-content:center;align-items:center}.reflection-glyph{font-size:60px;line-height:1;opacity:.8;color:var(--sign-accent);font-family:Georgia,serif}.reflection-art>.constellation{position:absolute;inset:0;opacity:.23;color:var(--sign-accent);width:100%;height:100%;transform:scale(1.3) translateX(20%)}.reflection-element{position:absolute;top:19px;left:20px;font-size:0.75rem;letter-spacing:.15em;color:var(--sign-accent)}.reflection-art:after{content:'';position:absolute;width:160px;height:160px;border:1px solid currentColor;color:var(--sign-accent);border-radius:50%;opacity:.15;transform:scale(1.1)}.reflection-body{padding:25px 24px 10px}.reflection-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.reflection-title h3{font-size:30px}.reflection-title>span{font-size:0.75rem;color:#858c7f}.reflection-body>p{font-size:1rem;line-height:1.9;min-height:92px}.reflection-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px;border-top:1px solid var(--line);padding-top:7px}.reflection-actions>span{font-size:0.75rem;letter-spacing:.13em;color:#92917f}.reflection-actions .icon{width:15px;height:15px}.section-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:30px}.section-bottom>span{font-size:0.875rem;color:#888b7d}.js .reflection-card.is-extra{display:none}.js .reflection-grid.show-all .reflection-card.is-extra{display:block}
/* A moment and a place */
.birth-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding:96px 10%;background:#e9e5da;position:relative;border-top:1px solid #dcd9cd;border-bottom:1px solid #dcd9cd}.birth-intro{position:relative}.birth-intro .eyebrow{font-size:0.8125rem;color:#7d826e;margin-bottom:27px}.birth-intro h2{font-size:73px}.birth-intro h2 em{color:#7f846f}.birth-intro>p:not(.eyebrow){max-width:315px;margin-top:25px;font-size:1rem;line-height:1.9}.birth-chart-art{max-width:330px;margin:30px -16px -10px;position:relative}.chart-svg{width:100%;height:auto}.chart-lines{fill:none;stroke:#8b876d;stroke-width:.7;opacity:.75}.chart-glyphs{font-size:15px;font-family:Georgia,serif;fill:#7f8169}.chart-empty{font-size:9px;letter-spacing:2px;fill:#8a8d76;font-family:var(--sans)}.chart-empty.small{font-size:6px;letter-spacing:2px}.chart-centre{fill:#9d9274;transform:translateY(-28px)}.sample-aspects{fill:none;stroke:#9c8b66;stroke-width:1;opacity:.7}.sample-aspects circle{fill:#aa8763;stroke:none}.chart-tag{font-size:0.75rem;letter-spacing:.18em;display:block;text-align:center;color:#92947f}.birth-form-wrap{align-self:center;padding:37px;background:#f6f3ed;border:1px solid #d8d7c9;box-shadow:0 5px 40px #43504407;max-width:460px;width:100%}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.step-indicator{font-size:0.75rem;letter-spacing:.1em;color:#7e826f;display:flex;align-items:center;gap:9px}.step-indicator i{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbcaba;border-radius:50%;font-style:normal;font-size:0.75rem}.form-mode{font-size:0.75rem;letter-spacing:.1em;color:#9a9781}.birth-form-wrap h3{font-size:30px;margin-bottom:28px}.field{margin-bottom:18px}.field label{font-size:0.875rem;display:block;color:#646f64;margin-bottom:8px}.field input:not([type=checkbox]),.field select{width:100%;height:48px;padding:12px 13px;background:#fbf8f1;color:#283633;border:1px solid #d9d9ce;border-radius:2px;font-size:1rem;min-width:0;appearance:auto}.field input::placeholder{color:#989f90}.field input[aria-invalid=true]{border-color:#a45243}.field input[type=date]{min-height:48px;display:block}.label-row{display:flex;align-items:center;justify-content:space-between;gap:15px}.field .checkbox-label{display:flex;align-items:center;gap:5px;font-size:0.75rem;margin:0 0 8px;color:#7c8576}.checkbox-label input{accent-color:var(--ink);width:12px;height:12px;margin:0}.field-error{display:block;font-size:0.875rem;color:#a45243;margin-top:5px;min-height:0;line-height:1.5}.field-error:empty{display:none}.field-help{display:block;font-size:0.8125rem;line-height:1.7;color:#8d9385;margin-top:7px}.privacy-note{display:flex;align-items:center;justify-content:center;gap:7px;color:#929685;font-size:0.75rem;margin-top:15px}.privacy-note>.icon{width:11px;height:11px}.form-divider{display:flex;align-items:center;justify-content:center;margin:23px 0 10px;gap:10px}.form-divider:before,.form-divider:after{content:'';height:1px;background:var(--line);flex:1}.form-divider>span{font-size:0.75rem;letter-spacing:.08em;color:#a0a18d}.birth-form-wrap>.text-link{font-size:0.9375rem}.form-disclosure{font-size:0.8125rem;line-height:1.8;margin-top:14px;color:#8c9181}.birth-result{margin-top:22px;padding:18px;border:1px solid #cdd1c0;background:#ecefe5}.birth-result h4{font-size:23px;margin-bottom:10px}.birth-result p,.birth-result dl{font-size:0.9375rem;line-height:1.7}.birth-result dl{display:grid;grid-template-columns:1fr 1.5fr;gap:5px;margin-top:12px}.birth-result dd{margin:0}.birth-result .button{margin-top:16px;font-size:0.9375rem}.birth-result .live-placement-list{display:block}.birth-result .live-placement-list div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.birth-result .consent-label{font-size:0.9375rem;display:flex;align-items:start;gap:8px;margin-top:14px}
/* Shared stories */
.compatibility-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:110px;padding-bottom:110px;align-items:center}.compatibility-copy>.eyebrow{color:#7a826e;margin-bottom:28px}.compatibility-copy h2{font-size:61px}.compatibility-copy h2 em{color:#81866f}.compatibility-copy>p:not(.eyebrow):not(.section-footnote){font-size:1rem;max-width:340px;margin-top:25px;line-height:1.9}.compatibility-selectors{display:grid;grid-template-columns:1fr 28px 1fr;gap:15px;align-items:center;margin:32px 0 7px}.compatibility-selectors .field{margin:0}.compatibility-selectors label{font-size:0.75rem;letter-spacing:.12em}.compatibility-selectors select{font-size:1.0625rem;background:transparent;border:0;border-bottom:1px solid #babdaf;border-radius:0;padding-left:0}.connect-symbol{font-family:var(--serif);font-style:italic;font-size:24px;color:#a3a38d;align-self:end;margin-bottom:9px}.compatibility-copy .button{margin-top:20px}.compatibility-copy .section-footnote{font-size:0.8125rem;max-width:350px;margin-top:24px}.compatibility-visual{min-height:460px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center}.connection-orbits{position:relative;width:380px;max-width:100%;height:265px}.connection-orbit{position:absolute;inset:10px 20px 20px;border:1px solid #b9ad9066;border-radius:50%;transform:rotate(-25deg) scaleY(.7)}.connection-orbit.orbit-two{transform:rotate(25deg) scaleY(.7);inset:0 15px 13px}.connection-orbit:before{content:'';position:absolute;top:50%;left:0;width:5px;height:5px;border-radius:50%;background:#9f9274}.connection-body{position:absolute;top:74px;width:112px;height:112px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:inset -15px -10px 30px #2623232c,0 12px 30px #47493a0b}.connection-a{left:40px;background:radial-gradient(circle at 32% 25%,#ead3b8,#b99880);color:#785b45}.connection-b{right:40px;background:radial-gradient(circle at 32% 25%,#e0e3d7,#a1afa6);color:#617367}.connection-body span{font-size:45px;font-family:Georgia,serif}.connection-centre{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);color:#a39779;font-size:30px}.compatibility-result{width:100%;max-width:370px;text-align:center}.compatibility-result .eyebrow{color:#99947f;font-size:0.75rem}.compatibility-result h3{font-size:33px;line-height:1.15;margin-top:14px}.compatibility-result>p{font-size:0.9375rem;line-height:1.9;margin-top:16px;max-width:330px;margin-left:auto;margin-right:auto}.compatibility-result .practice-label{font-size:0.75rem;letter-spacing:.14em;margin-top:22px;display:block;color:#948c74}.compatibility-result .share-connection{font-size:0.875rem;margin-top:18px}.compatibility-result .result-disclaimer{font-size:0.75rem;margin-top:15px;opacity:.8}
/* App showcase */
.app-preview-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:104px 10%;background:#182328;color:#eae8da;overflow:hidden}.app-preview-copy>.eyebrow{font-size:0.75rem;color:#b3b4a1;margin-bottom:30px}.app-preview-copy h2{font-size:60px;line-height:1.08}.app-preview-copy h2 em{color:#a9b3a4}.app-preview-copy>p:not(.eyebrow):not(.app-release-note){font-size:1rem;line-height:1.9;color:#a2b0a8;margin-top:26px;max-width:350px}.app-feature-tabs{margin:33px 0 30px;border-top:1px solid #45534b}.app-feature-tab{width:100%;text-align:left;display:flex;align-items:center;gap:20px;padding:16px 3px;border-bottom:1px solid #36473f;transition:background .2s,opacity .2s;opacity:.55}.app-feature-tab.is-active,.app-feature-tab:hover{opacity:1}.feature-number{font-size:0.75rem;color:#c3b590}.app-feature-tab strong{font-family:var(--serif);font-size:23px;font-weight:400;line-height:1.3}.app-feature-tab small{display:block;font-size:0.8125rem;color:#b3bbab;margin-top:3px}.app-feature-tab>.icon{margin-left:auto;width:17px;color:#cabfa2}.app-release-note{font-size:0.75rem;line-height:1.8;color:#8d9c90;margin-top:17px;max-width:300px}.app-phone-stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:680px}.phone-orbit{position:absolute;width:540px;height:540px;border:1px solid #8391802a;border-radius:50%;top:70px}.phone-orbit:before,.phone-orbit:after{content:'';position:absolute;border:1px solid #8a967424;border-radius:50%;inset:35px}.phone-orbit:after{inset:75px}.phone-frame{background:#e4e3d7;border-radius:43px;border:5px solid #c7c8bc;width:300px;height:604px;position:relative;box-shadow:3px 8px 0 #8d9788,20px 30px 70px #050b0d80;transform:rotate(6deg);overflow:hidden;z-index:1;color:#e9e9dc;transition:transform .7s var(--ease)}.phone-frame:hover,.phone-frame:focus{transform:rotate(0deg) translateY(-4px)}.phone-hardware{position:absolute;top:0;left:0;right:0;height:42px;z-index:3;background:#19272c;display:flex;align-items:center;justify-content:space-between;padding:0 20px;color:#d8dfd1;font-size:9px}.phone-hardware i{position:absolute;width:80px;height:17px;top:7px;left:50%;transform:translateX(-50%);background:#0a1218;border-radius:20px}.phone-inner{background:#19272c;height:100%;padding:57px 22px 0;overflow:hidden}.phone-screen-top{display:flex;align-items:center;justify-content:space-between;color:#c8cfbf}.phone-screen-top>span{font-family:var(--serif);font-size:20px}.phone-screen-top .icon{width:17px;height:17px}.phone-eyebrow{font-size:6px;letter-spacing:.12em;color:#8e9c8d;margin-top:30px}.phone-inner h4{font-size:34px;color:#f0eedb;line-height:1.08;margin-top:10px}.phone-inner h4 em{color:#bcc5ae}.phone-moon{width:137px;height:137px;margin:18px auto;background:radial-gradient(circle at 30% 25%,#d9d9c5,#949e91 38%,#3c5252 70%,#203339 90%);border-radius:50%;box-shadow:inset -20px -10px 25px #081b22ba,0 0 40px #9eaa8c18;position:relative}.phone-moon:after{content:'';position:absolute;inset:0;border-radius:50%;opacity:.18;background:radial-gradient(circle at 35% 40%,#344d44 0 10%,transparent 11%),radial-gradient(circle at 60% 25%,#395447 0 14%,transparent 15%),radial-gradient(circle at 30% 70%,#374943 0 12%,transparent 13%)}.phone-reflection{border-top:1px solid #5c6b5644;padding-top:14px}.phone-reflection>span{font-size:6px;color:#b4ad92;letter-spacing:.16em}.phone-reflection>p{font-family:var(--serif);font-size:21px;line-height:1.3;color:#d9dece;margin:8px 0}.phone-reflection>small{font-size:6px;color:#839b8b}.phone-bottom{display:flex;justify-content:space-between;padding:18px 8px;position:absolute;bottom:20px;left:22px;right:22px;border-top:1px solid #43534966;color:#9eaf9c}.phone-bottom .icon{width:16px;height:16px}.phone-home-bar{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);width:95px;height:3px;border-radius:2px;background:#a9baad}.phone-pagination{display:flex;gap:7px;margin-top:35px}.phone-pagination>span{width:4px;height:4px;border-radius:5px;background:#5f7165;transition:width .2s,background .2s}.phone-pagination>.is-active{width:18px;background:#b2ba9f}.phone-stage-label{color:#738c7d;font-size:7px;letter-spacing:.18em;margin-top:14px}.phone-chart{margin:14px -13px 0}.phone-chart .chart-glyphs{fill:#a6b59d}.phone-chart .chart-lines{stroke:#8ea08d}.phone-chart .sample-aspects{stroke:#c7b38b}.phone-sample-label{text-align:center;color:#8f9f89;font-size:6px;letter-spacing:.09em;margin-top:6px}.phone-journal{margin-top:35px}.phone-journal>span{font-size:7px;letter-spacing:.1em;color:#bcb69a}.phone-journal>p{font-family:var(--serif);font-size:24px;line-height:1.4;margin:12px 0 0;color:#c7d2b8}.journal-lines{height:100px;background:repeating-linear-gradient(transparent 0 26px,#55684d55 27px,transparent 28px)}.phone-journal>small{font-size:7px;color:#8d9d83;display:block;margin-top:20px}.phone-sign-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 15px;margin-top:25px}.phone-sign-grid>span{font-size:25px;text-align:center;color:#b4c2a8;font-family:Georgia,serif}.phone-sign-grid small{display:block;font-size:7px;font-family:var(--sans);color:#98aa93;margin-top:3px}
/* Closing */
.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:9%;border-bottom:1px solid var(--line)}.faq-section>div:first-child>.eyebrow{font-size:0.75rem;color:#8a8c78;margin-bottom:24px}.faq-section h2{font-size:49px}.faq-section h2 em{color:#7f856e}.faq-section>div:first-child>p:last-child{font-size:0.9375rem;margin-top:24px}.faq-items details{border-bottom:1px solid var(--line);padding:21px 0}.faq-items details:first-child{padding-top:0}.faq-items summary{list-style:none;font-size:1rem;line-height:1.6;cursor:pointer;display:flex;justify-content:space-between;gap:25px}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary>span{font-size:19px;line-height:1;color:#96977d}.faq-items details[open] summary>span{transform:rotate(45deg)}.faq-items details p{font-size:0.9375rem;line-height:1.9;padding-top:15px;max-width:480px}.closing-section{text-align:center;padding:100px 24px 105px;position:relative;overflow:hidden}.closing-section .eyebrow{color:#969582;font-size:0.75rem}.closing-section h2{font-size:76px;line-height:1.05;margin:27px 0 32px}.closing-section h2 em{color:#7e856c}.closing-star{position:absolute;right:12%;top:27%;font-size:100px;color:#bbb19822;pointer-events:none}.site-footer{padding:45px 7.2% 25px;border-top:1px solid var(--line);background:#eeece3}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:35px}.footer-top .wordmark>span{font-size:26px}.footer-top .brand-mark{width:36px;height:36px}.footer-top>p{font-size:0.875rem;line-height:1.9;margin-left:auto;margin-right:7%}.footer-top>.text-link{font-size:0.8125rem;gap:15px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:0.75rem;color:#8b9080;border-top:1px solid var(--line);padding-top:20px}.footer-bottom>div{display:flex;gap:24px;align-items:center}.footer-bottom .text-button{font-size:0.75rem}.footer-disclosure{max-width:730px;font-size:0.75rem;line-height:1.9;color:#999c8c;margin-top:20px}.mobile-sticky-cta{display:none}
/* Dialogs and interaction feedback */
dialog{border:1px solid #d4d5c7;background:var(--paper);color:var(--ink);padding:35px;max-width:min(680px,calc(100vw - 36px));width:100%;max-height:90svh;overflow:auto;border-radius:4px;box-shadow:0 25px 100px #020b1570}dialog::backdrop{background:#0b171cc9;backdrop-filter:blur(7px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:18px}.dialog-heading>.eyebrow{font-size:0.75rem;color:#92957f}.dialog-heading .icon-button{margin:-10px -10px -10px 0}.dialog-heading h2{font-size:32px}.sample-dialog>h2{font-size:42px}.sample-dialog>p,dialog>p{font-size:1rem;line-height:1.9;margin-top:12px}.sample-dialog>.chart-svg{max-width:330px;margin:18px auto}.sample-explanation{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:24px}.sample-explanation strong{font-size:0.9375rem;font-weight:500}.sample-explanation p{font-size:0.875rem;margin-top:6px}.share-dialog{max-width:500px}.share-dialog textarea{width:100%;height:190px;padding:15px;line-height:1.7;font-size:1rem;background:#faf7f0;border:1px solid var(--line);color:var(--ink);resize:vertical}.share-dialog>.button{margin-top:18px}.dialog-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.toast{position:fixed;z-index:100;left:50%;bottom:30px;transform:translate(-50%,30px);background:#223b37;color:#f1efdf;padding:12px 22px;border-radius:3px;box-shadow:0 7px 25px #0002;font-size:0.9375rem;max-width:calc(100vw - 40px);opacity:0;visibility:hidden;transition:opacity .2s,transform .2s}.toast.is-visible{transform:translate(-50%,0);opacity:1;visibility:visible}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}
/* Search-friendly detail pages */
.detail-page{max-width:1400px;padding:55px 7.2% 90px;margin:auto}.detail-hero{display:grid;grid-template-columns:1.4fr 1fr;gap:12%;align-items:center;margin-top:65px}.detail-hero .eyebrow{font-size:0.75rem;color:#8d8c79;margin-bottom:20px}.detail-hero h1{font-size:96px}.detail-hero h1 em{font-size:45px;color:#7e856c;display:block;margin-top:15px}.detail-hero>div>p:not(.eyebrow){font-size:1.0625rem;line-height:1.9;margin-top:25px;margin-bottom:28px;max-width:550px}.detail-dates{font-size:0.8125rem;color:#92957d;display:block;margin-top:19px}.detail-constellation{aspect-ratio:1;border:1px solid #c8c8b7;border-radius:50%;position:relative;max-width:330px;color:var(--sign-accent);padding:50px;background:#eeeadd}.detail-constellation>.constellation{opacity:.5}.detail-constellation>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:100px;color:var(--sign-accent);opacity:.6}.detail-reading{display:grid;grid-template-columns:1.5fr 1fr;gap:9%;padding:65px 0;border-top:1px solid var(--line);margin-top:75px}.detail-reading .eyebrow{font-size:0.8125rem;margin-bottom:25px;color:#8b8d76}.detail-reading h2{font-size:40px;line-height:1.25}.detail-reading p{font-size:0.875rem;margin-top:25px}.detail-prompt{padding:30px;background:#e9e7dc}.detail-prompt>span{font-size:0.75rem;letter-spacing:.1em;color:#90917b}.detail-prompt h3{font-size:30px;line-height:1.3;margin:20px 0}.all-sign-links{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.all-sign-links a{display:flex;flex-direction:column;align-items:center;gap:12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 10px;font-size:0.875rem;color:#7d846f}.all-sign-links a>span{font-family:Georgia,serif;font-size:25px}.all-sign-links a[aria-current],.all-sign-links a:hover{background:#e7e7d9}.text-page{max-width:850px;margin:auto;padding:80px 40px 100px}.text-page>.eyebrow{font-size:0.8125rem;letter-spacing:.13em;margin-bottom:25px;color:#909279}.text-page h1{font-size:77px}.text-page h1 em{color:#7f866f}.text-page>.lead{font-size:17px;line-height:1.8;margin:32px 0 40px}.text-page>h2{font-size:32px;margin:35px 0 15px}.text-page>p{font-size:1.0625rem;line-height:1.9}.text-page p a{text-decoration:underline}.text-page>.button{margin-top:35px}
/* Shared responsive web-app UI */
.web-app-shell{min-height:100svh}.app-sidebar{position:fixed;left:0;top:0;bottom:0;width:225px;border-right:1px solid var(--line);padding:35px 25px;display:flex;flex-direction:column;background:#eae9df;z-index:10}.app-sidebar .wordmark>span{font-size:25px}.app-sidebar .brand-mark{width:35px;height:35px}.app-sidebar>.preview-chip{font-size:0.75rem;margin:22px 0 35px;opacity:.6}.app-sidebar>nav{display:flex;flex-direction:column;gap:10px}.app-nav-button{display:flex;align-items:center;gap:16px;padding:13px 15px;text-align:left;border:1px solid transparent;border-radius:3px;color:#808872;font-size:0.9375rem}.app-nav-button>.icon{width:18px;height:18px}.app-nav-button.is-active{border-color:#c8cebb;background:#f3f2e8;color:#364b41}.sidebar-back{margin-top:auto;padding-top:40px;font-size:0.8125rem;color:#929980}.app-sidebar>p{font-size:0.75rem;line-height:1.9;margin-top:18px;color:#8f9780}.app-main{margin-left:225px;padding:0 6% 70px;max-width:1500px}.app-topbar{height:95px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:0.75rem;letter-spacing:.13em;color:#909580;gap:20px}.app-view{padding-top:55px}.app-view>.eyebrow,.app-welcome>.eyebrow{font-size:0.8125rem;color:#91967d;margin-bottom:17px}.app-view h1{font-size:62px;line-height:1.07}.app-view h1 em{color:#7b8668}.app-welcome{position:relative;margin-bottom:35px}.app-sign-select{position:absolute;right:0;bottom:5px}.app-sign-select label{font-size:0.75rem;letter-spacing:.1em;color:#929980;display:block;margin-bottom:6px}.app-sign-select select{border:1px solid #cbd0be;background:#efefe2;padding:10px 12px;width:135px;border-radius:3px;font-size:0.9375rem;color:#506248}.app-daily-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:26px}.app-reflection-feature{background:#1c2b2c;color:#eae9d6;padding:32px;min-height:450px;position:relative;overflow:hidden;display:flex;flex-direction:column}.app-reflection-feature>.eyebrow{font-size:0.75rem;color:#9eac92}.app-large-sign{font-family:Georgia,serif;font-size:90px;color:#a7b495;display:block;text-align:center;margin:20px 0 16px}.app-reflection-feature h2{font-size:34px;position:relative}.app-reflection-feature>p{font-size:1rem;line-height:1.9;color:#b2c1a5;margin-top:20px;position:relative}.app-reflection-feature>.text-link{font-size:0.875rem;margin-top:28px;align-self:flex-start}.app-question-card{border:1px solid #d4d7c5;background:#eeefe3;padding:32px;display:flex;flex-direction:column}.app-question-card>.eyebrow{font-size:0.75rem;color:#919579}.app-question-card>.icon{width:40px;height:40px;color:#99a283;margin:60px 0 30px}.app-question-card>h2{font-size:31px;line-height:1.3;color:#667956}.app-question-card>.text-link{font-size:0.875rem;margin-top:auto;align-self:flex-start}.app-explore-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:35px 0}.app-explore-grid>a{position:relative;border:1px solid #d5d9c7;padding:23px 17px;background:#f0f0e4;transition:background .2s}.app-explore-grid>a:hover{background:#e5e8d8}.app-explore-grid>a>span{font-family:Georgia,serif;font-size:32px;color:var(--sign-accent)}.app-explore-grid h2{font-size:25px;margin-top:10px}.app-explore-grid p{font-size:0.75rem;margin-top:8px;color:#8d977c}.app-explore-grid>a>.icon{width:13px;height:13px;position:absolute;top:22px;right:15px;color:#a0a78f}#view-explore>.text-link{margin-left:25px}.journal-intro{font-family:var(--serif);font-size:25px;line-height:1.4;margin-top:30px;max-width:620px;color:#7a896b}#journal-form{max-width:750px;margin-top:32px}#journal-form label{display:block;font-size:0.75rem;color:#93997e;margin-bottom:10px}#journal-text{width:100%;resize:vertical;min-height:200px;border:1px solid #cfd4bd;background:#f9f8ee;padding:20px;font-size:1.0625rem;line-height:1.9;color:#3a4a37;border-radius:3px}#journal-text::placeholder{color:#a2ab91}.journal-save-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:15px}.journal-save-row>span{font-size:0.8125rem;color:#939e81}.journal-entries{margin-top:50px;max-width:750px}.journal-entries>h2{font-size:30px;margin-bottom:25px}.journal-entries>p{font-size:1rem}.journal-entry{border-top:1px solid #cfd4c0;padding:25px 0}.journal-entry-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.journal-entry time{font-size:0.75rem;letter-spacing:.08em;color:#909a7f}.journal-entry>p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:1.0625rem;line-height:1.9;color:#5f7155;margin-top:10px}.journal-entry .icon-button{width:30px;height:30px}.journal-entry .icon{width:14px;height:14px}.settings-list{margin-top:40px;border-top:1px solid var(--line)}.settings-list>div{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0;border-bottom:1px solid var(--line)}.settings-list strong{font-size:1.0625rem;font-weight:500;color:#4e6248}.settings-list small{display:block;font-size:0.875rem;color:#929b80;margin-top:7px}.settings-list .button{font-size:0.875rem;min-height:40px;white-space:nowrap}.settings-note{margin-top:45px;max-width:600px}.settings-note h2{font-size:30px;margin-bottom:20px}.settings-note p{font-size:1rem;line-height:1.8}.settings-note>.text-link{margin-top:18px;font-size:0.875rem}
/* Tablet */
@media(min-width:1600px){.hero-content{margin-left:calc((100vw - 1370px)/2)}.cosmic-copy{left:calc((100vw - 1370px)/2)}}
@media(max-width:1150px){.desktop-nav{gap:18px;margin-right:12px}.site-header{gap:15px}.header-actions{gap:12px}.header-actions>.preview-chip{display:none}.hero h1{font-size:80px}.hero-content{margin-left:6%;max-width:570px}.hero-content>p{max-width:335px}.zodiac-layout{gap:7%}.zodiac-detail h3{font-size:45px;min-height:98px}.wheel-sign{width:38px;height:38px;font-size:22px}.wheel-centre #selected-constellation{width:95px;height:95px}.wheel-centre-name{font-size:30px}.birth-section{padding:80px 7%;gap:8%}.birth-form-wrap{padding:28px}.compatibility-copy h2{font-size:53px}.app-preview-section{padding:90px 7%;gap:6%}.app-preview-copy h2{font-size:50px}.cosmic-copy{top:18%;width:36%;left:6%}.cosmic-copy h2{font-size:78px}.cosmic-copy h3{font-size:27px}.planet-reflection{margin-top:24px}.cosmic-coordinate{right:3%;font-size:0.75rem}.app-sidebar{width:190px;padding:30px 18px}.app-main{margin-left:190px;padding:0 4% 60px}.app-view h1{font-size:54px}.app-daily-grid{gap:17px;grid-template-columns:1.2fr 1fr}.app-reflection-feature,.app-question-card{padding:25px}.app-reflection-feature h2{font-size:30px}.app-question-card>h2{font-size:27px}.app-explore-grid{grid-template-columns:repeat(3,1fr)}}
/* Mobile is a designed experience, not a scaled desktop. */
@media(max-width:767px){body{font-size:1.0625rem}.site-header{height:90px;padding:0 23px}.brand-mark{width:34px;height:34px}.wordmark{gap:9px}.wordmark>span{font-size:25px}.wordmark small{font-size:0.75rem;margin-top:7px}.desktop-nav,.header-actions>.button{display:none}.menu-button{display:flex}.hero{height:920px;min-height:850px;max-height:none}.hero-content{padding-top:150px;margin:0 25px;max-width:500px}.hero-eyebrow{font-size:0.75rem;letter-spacing:.16em;gap:10px;margin-bottom:25px}.hero-eyebrow>span{width:18px}.hero h1{font-size:62px;line-height:1.04;letter-spacing:-.045em}.hero-content>p{font-size:1rem;line-height:1.85;margin-top:23px;max-width:320px}.hero-actions{margin-top:28px;gap:14px;align-items:center;flex-wrap:wrap;max-width:400px}.hero-actions>.button{font-size:0.9375rem;gap:18px;min-height:48px;padding:14px 18px}.hero-secondary{font-size:0.875rem;padding:12px 0}.hero-secondary>span{font-size:1.0625rem;margin-left:7px}.hero-note{display:none}.hero-vignette{background:linear-gradient(180deg,#0c151dee 0%,#0c151dbb 32%,transparent 57%,#0c151d00 76%,#0c151d 100%)}.hero-fallback{width:72vw;right:8%;top:55%}.hero-annotation{right:7%;top:auto;bottom:130px;font-size:0.75rem}.hero-annotation i{width:30px}.hero-annotation span{font-size:1.125rem}.hero-bottom{bottom:27px;left:25px;right:25px;font-size:0.75rem;letter-spacing:.08em}.hero-bottom>span:last-child{display:none}.hero-bottom a{gap:10px;font-size:0.75rem}.hero-bottom .icon{width:12px;height:22px}.intro-ribbon{padding:22px 25px;gap:15px;flex-wrap:wrap}.intro-ribbon>span{font-size:0.75rem}.intro-ribbon em{font-size:1.125rem;margin-left:7px}.intro-ribbon>div{font-size:0.75rem;gap:15px}.section{padding:68px 25px}.section-heading{display:block}.section-heading .eyebrow{font-size:0.75rem;margin-bottom:24px}.tiny-star{font-size:17px;margin-right:7px}.section-heading h2,.section-title-row h2{font-size:43px}.section-heading>p:last-child{font-size:0.9375rem;margin-top:23px;line-height:1.85}.zodiac-layout{grid-template-columns:1fr;gap:34px;margin-top:35px}.zodiac-wheel{max-width:390px;width:calc(100% + 10px);margin-left:-5px}.wheel-sign{width:35px;height:35px;font-size:21px}.wheel-sign.is-active{box-shadow:0 0 0 4px #e6e0d5}.wheel-centre-name{font-size:30px}.wheel-centre #selected-constellation{width:90px;height:90px}.wheel-orbit-label{font-size:0.75rem;letter-spacing:.13em}.wheel-centre-date{font-size:0.75rem}.zodiac-detail{padding-top:28px;border-top:1px solid var(--line)}.zodiac-detail-top{margin-bottom:20px}.zodiac-detail h3{font-size:45px;min-height:0;max-width:none}.zodiac-detail h3 br{display:none}.zodiac-detail>p{font-size:1rem;line-height:1.9;margin:20px 0}.sign-facts{padding:20px 0;gap:10px}.sign-facts dt{font-size:0.75rem}.sign-facts dd{font-size:0.9375rem}.trait-list{margin:18px 0 16px}.trait-list>span{font-size:0.75rem}.zodiac-section>.section-footnote{text-align:left;font-size:0.75rem;margin-top:32px}.cosmic-stage{height:920px;min-height:880px;max-height:none}.cosmic-heading{top:32px;left:25px;right:25px}.cosmic-heading>.eyebrow{font-size:0.75rem;letter-spacing:.13em}.skip-journey{font-size:0.75rem;gap:7px}.skip-journey .icon{height:14px;width:10px}.cosmic-copy{top:88px;left:25px;max-width:none;width:calc(100% - 50px)}.chapter-index{margin-bottom:22px;font-size:0.75rem;gap:12px}.chapter-index .line{width:35px}.planet-theme{font-size:0.75rem;margin-bottom:13px}.cosmic-copy h2{font-size:66px}.cosmic-copy h3{font-size:25px;margin-top:12px}.cosmic-copy>p:not(.planet-theme){font-size:0.9375rem;max-width:340px;margin-top:18px;line-height:1.85}.planet-reflection{margin-top:20px;max-width:300px;padding-left:13px}.planet-reflection>span{font-size:0.75rem}.planet-reflection>p{font-size:17px;margin-top:6px}.cosmic-coordinate{display:none}.cosmic-vignette{background:linear-gradient(180deg,#0b151eed 0%,#0b151e88 38%,transparent 51%,transparent 70%,#0b151e 87%)}.journey-fallback{width:58vw;top:51%;right:21%}.cosmic-controls{bottom:25px;left:25px;right:25px}.cosmic-control-top{margin-bottom:12px;gap:10px}.journey-hint{font-size:0.75rem;letter-spacing:.1em}.cosmic-control-top .text-button{font-size:0.75rem;gap:5px}.cosmic-control-top .text-button .icon{width:10px;height:10px}.planet-nav{overflow-x:auto;justify-content:flex-start;gap:12px;padding:6px 3px 16px;scrollbar-width:none;max-width:100%;scroll-snap-type:x proximity}.planet-nav::-webkit-scrollbar{display:none}.planet-stop{font-size:0.75rem;min-width:49px;gap:9px;scroll-snap-align:center}.planet-dot{width:18px;height:18px}.planet-dot-saturn:after{width:29px;height:8px;left:-6px;top:5px}.journey-caption{font-size:0.75rem;letter-spacing:.05em;gap:10px;margin-top:11px}.journey-caption>span:first-child{max-width:145px}.section-title-row{display:block;margin-bottom:30px}.section-title-row .eyebrow{font-size:0.75rem;margin-bottom:22px}.section-aside{text-align:left;margin-top:20px;display:flex;justify-content:space-between;align-items:end;gap:20px}.section-aside>.date-label{font-size:0.75rem;margin:0;max-width:140px}.section-aside p{font-size:0.8125rem}.reflection-grid{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x proximity;padding:0 0 14px;margin-right:-25px;padding-right:25px;scrollbar-width:thin;scrollbar-color:#b9b9a6 transparent;align-items:stretch}.reflection-card{min-width:min(290px,80vw);width:80vw;max-width:330px;scroll-snap-align:start;flex:none}.reflection-art{height:155px}.reflection-title>span{font-size:0.75rem}.reflection-body{padding:23px 20px 8px}.reflection-body>p{font-size:0.9375rem;min-height:85px}.reflection-title h3{font-size:28px}.reflection-actions{margin-top:17px}.reflection-actions>span{font-size:0.75rem}.section-bottom{gap:15px;margin-top:18px;align-items:start}.section-bottom>span{font-size:0.75rem;max-width:135px;padding-top:9px}.section-bottom>.text-link{font-size:0.875rem;gap:12px}.birth-section{grid-template-columns:1fr;padding:68px 25px;gap:35px}.birth-intro>.eyebrow{font-size:0.75rem;margin-bottom:25px}.birth-intro h2{font-size:61px}.birth-intro>p:not(.eyebrow){font-size:0.9375rem;max-width:335px;margin-top:20px}.birth-chart-art{max-width:250px;margin:15px auto -10px}.birth-form-wrap{padding:25px;max-width:none}.birth-form-wrap h3{font-size:28px}.field input:not([type=checkbox]),.field select{font-size:1.125rem;min-height:48px;padding:10px 12px}.field label{font-size:0.875rem}.field .checkbox-label{font-size:0.8125rem}.checkbox-label input{width:14px;height:14px}.field-help{font-size:0.75rem}.form-disclosure{font-size:0.8125rem}.form-heading{margin-bottom:22px}.form-mode{font-size:0.75rem}.privacy-note{font-size:0.75rem}.compatibility-section{grid-template-columns:1fr;gap:20px}.compatibility-copy>.eyebrow{font-size:0.75rem;margin-bottom:25px}.compatibility-copy h2{font-size:48px}.compatibility-copy>p:not(.eyebrow):not(.section-footnote){font-size:0.9375rem;margin-top:20px}.compatibility-selectors{gap:12px;margin-top:26px}.compatibility-selectors .field>select{font-size:1.0625rem}.compatibility-copy .section-footnote{font-size:0.75rem;max-width:300px;margin-top:20px}.compatibility-visual{min-height:390px}.connection-orbits{width:330px;height:240px}.connection-body{width:98px;height:98px;top:67px}.connection-a{left:32px}.connection-b{right:32px}.connection-body span{font-size:38px}.compatibility-result h3{font-size:31px}.compatibility-result>p{font-size:0.875rem}.compatibility-result{max-width:340px}.app-preview-section{grid-template-columns:1fr;padding:68px 25px 55px;gap:35px}.app-preview-copy>.eyebrow{font-size:0.75rem;margin-bottom:24px}.app-preview-copy h2{font-size:49px}.app-preview-copy>p:not(.eyebrow):not(.app-release-note){font-size:0.9375rem;max-width:330px;margin-top:22px}.app-feature-tabs{margin:27px 0}.app-feature-tab{gap:18px;padding:15px 3px}.app-feature-tab strong{font-size:22px}.app-feature-tab small{font-size:0.75rem}.app-preview-copy>.button{min-height:48px;font-size:0.9375rem}.app-release-note{font-size:0.75rem;max-width:280px}.app-phone-stage{min-height:645px}.phone-frame{width:280px;height:570px;border-radius:40px;transform:rotate(4deg)}.phone-inner{padding:55px 20px 0}.phone-screen-top>span{font-size:19px}.phone-eyebrow{margin-top:26px;font-size:6px}.phone-inner h4{font-size:32px}.phone-moon{width:120px;height:120px;margin:17px auto}.phone-reflection>p{font-size:20px}.phone-chart{margin-top:10px}.phone-journal>p{font-size:23px}.phone-sign-grid{gap:17px 12px;margin-top:23px}.phone-sign-grid>span{font-size:23px}.phone-sign-grid small{font-size:6px}.phone-orbit{width:400px;height:400px;top:85px}.phone-pagination{margin-top:30px}.phone-stage-label{font-size:6px}.faq-section{grid-template-columns:1fr;gap:37px}.faq-section>div:first-child>.eyebrow{font-size:0.75rem;margin-bottom:24px}.faq-section h2{font-size:43px}.faq-section>div:first-child>p:last-child{font-size:0.9375rem;margin-top:20px}.faq-items summary{font-size:0.9375rem;gap:22px;line-height:1.7}.faq-items details p{font-size:0.875rem}.faq-items details{padding:20px 0}.closing-section{padding:75px 22px}.closing-section .eyebrow{font-size:0.75rem}.closing-section h2{font-size:49px;line-height:1.1;margin:24px 0 27px}.closing-section>.button{font-size:0.9375rem;gap:20px;min-height:48px}.closing-star{right:5%;top:18%;font-size:60px}.site-footer{padding:34px 25px 100px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:28px}.footer-top>.wordmark{grid-column:1/-1}.footer-top>p{font-size:0.8125rem;margin:0}.footer-top>.text-link{font-size:0.75rem;gap:8px;align-self:start;justify-self:end}.footer-top>.text-link .icon{width:12px;height:12px}.footer-bottom{display:block;font-size:0.75rem}.footer-bottom>div{margin-top:18px;gap:22px}.footer-bottom .text-button{font-size:0.75rem}.footer-disclosure{font-size:0.75rem;margin-top:20px;max-width:360px}.mobile-sticky-cta{display:flex;position:fixed;left:20px;right:20px;bottom:max(16px,env(safe-area-inset-bottom));min-height:48px;justify-content:space-between;align-items:center;padding:13px 20px;background:#213735;color:#ececdb;font-size:0.9375rem;border-radius:3px;border:1px solid #6e827866;z-index:25;box-shadow:0 5px 25px #0002;transform:translateY(100px);visibility:hidden;transition:transform .25s,visibility .25s}.mobile-sticky-cta.is-visible{transform:translateY(0);visibility:visible}.mobile-sticky-cta>.icon{width:16px;height:16px}dialog{padding:24px;max-width:calc(100vw - 28px);max-height:88svh}.sample-dialog>h2{font-size:34px}.sample-dialog>p{font-size:0.9375rem}.sample-dialog>.chart-svg{max-width:290px}.sample-explanation{gap:18px}.sample-explanation strong{font-size:0.875rem}.sample-explanation p{font-size:0.8125rem}.dialog-heading h2{font-size:28px}.toast{bottom:85px;font-size:0.875rem;max-width:calc(100vw - 36px);width:max-content}.detail-page{padding:35px 25px 70px}.detail-hero{grid-template-columns:1fr;gap:35px;margin-top:45px}.detail-hero h1{font-size:76px}.detail-hero h1 em{font-size:36px;margin-top:12px}.detail-hero>div>p:not(.eyebrow){font-size:1rem;margin:24px 0}.detail-constellation{max-width:260px;margin:auto;width:100%}.detail-reading{grid-template-columns:1fr;gap:30px;margin-top:45px;padding:35px 0}.detail-reading h2{font-size:33px}.detail-reading p{font-size:0.8125rem;margin-top:20px}.detail-prompt h3{font-size:28px}.all-sign-links{grid-template-columns:repeat(3,1fr)}.all-sign-links a{font-size:0.8125rem;padding:18px 8px}.text-page{padding:55px 25px 70px}.text-page h1{font-size:55px}.text-page>.lead{font-size:1.125rem;line-height:1.85}.text-page>h2{font-size:29px;margin-top:30px}.text-page>p{font-size:1rem}.app-sidebar{position:relative;width:100%;height:88px;padding:25px;border:0;border-bottom:1px solid var(--line);display:flex;justify-content:center}.app-sidebar .wordmark>span{font-size:24px}.app-sidebar .brand-mark{width:32px;height:32px}.app-sidebar>.preview-chip,.app-sidebar>p{display:none}.sidebar-back{position:absolute;right:25px;top:36px;font-size:0.75rem;padding:0;margin:0}.app-sidebar>nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#efefe4;border-top:1px solid #cdd4bd;z-index:30;box-shadow:0 -4px 20px #1a281208}.app-nav-button{display:flex;flex-direction:column;gap:6px;font-size:0.75rem;justify-content:center;padding:10px 8px;border:0;min-height:55px}.app-nav-button>.icon{width:18px;height:18px}.app-nav-button.is-active{background:#e3e9d6;border-radius:3px}.app-main{margin:0;padding:0 25px 110px}.app-topbar{height:65px;font-size:0.75rem;letter-spacing:.08em;gap:15px}.app-view{padding-top:34px}.app-view>.eyebrow,.app-welcome>.eyebrow{font-size:0.75rem;margin-bottom:15px}.app-view h1{font-size:44px}.app-welcome{margin-bottom:25px}.app-sign-select{position:relative;bottom:auto;right:auto;margin-top:24px}.app-sign-select label{font-size:0.75rem}.app-sign-select select{width:100%;font-size:1.125rem;min-height:46px}.app-daily-grid{grid-template-columns:1fr;gap:20px}.app-reflection-feature{padding:25px;min-height:415px}.app-large-sign{font-size:75px;margin:18px 0}.app-reflection-feature h2{font-size:32px}.app-reflection-feature>p{font-size:1rem;margin-top:20px}.app-question-card{padding:25px;min-height:300px}.app-question-card>.icon{margin:30px 0 20px;width:30px;height:30px}.app-question-card>h2{font-size:29px;line-height:1.3}.app-question-card>.text-link{margin-top:28px}.app-main .section-footnote{font-size:0.8125rem;margin-top:23px}.app-explore-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0}.app-explore-grid>a{padding:20px 15px}.app-explore-grid>a>span{font-size:29px}.app-explore-grid h2{font-size:25px}.app-explore-grid p{font-size:0.75rem}#view-explore>.text-link{margin:20px 0 0;display:flex;width:max-content;font-size:0.875rem}.journal-intro{font-size:23px;margin-top:25px}#journal-text{font-size:1.125rem;padding:17px;min-height:235px}.journal-save-row>.button{font-size:0.875rem;padding:12px 15px;gap:15px;min-height:45px}.journal-entries{margin-top:40px}.journal-entries>h2{font-size:28px}.journal-entry>p{font-size:1rem}.settings-list{margin-top:30px}.settings-list>div{flex-wrap:wrap;gap:18px;padding:23px 0}.settings-list strong{font-size:1rem}.settings-list small{font-size:0.8125rem}.settings-list .button{min-height:43px;font-size:0.875rem}.settings-list .text-link{font-size:0.9375rem}.settings-note{margin-top:35px}.settings-note p{font-size:0.9375rem}}
@media(max-width:375px){.hero h1{font-size:55px}.hero-content{margin:0 21px}.hero-actions{gap:14px}.hero-actions>.button{font-size:0.875rem;padding:13px 16px}.hero-secondary{font-size:0.8125rem}.section,.birth-section,.app-preview-section{padding-left:21px;padding-right:21px}.section-heading h2,.section-title-row h2{font-size:39px}.wheel-sign{width:32px;height:32px;font-size:20px}.wheel-centre #selected-constellation{width:82px;height:82px}.wheel-centre-date{font-size:0.75rem}.cosmic-copy{left:21px;width:calc(100% - 42px)}.cosmic-copy h2{font-size:60px}.cosmic-heading,.cosmic-controls{left:21px;right:21px}.cosmic-controls .journey-hint{font-size:0.75rem}.compatibility-selectors{gap:8px;grid-template-columns:1fr 18px 1fr}.compatibility-selectors .field>select{font-size:1.0625rem}.birth-form-wrap{padding:21px}.app-preview-copy h2{font-size:44px}.phone-frame{width:264px;height:550px}.phone-inner h4{font-size:30px}.phone-moon{width:110px;height:110px}.phone-reflection>p{font-size:19px}.phone-chart{margin-top:5px}.phone-journal>p{font-size:21px}.phone-sign-grid{gap:14px 10px}.phone-sign-grid>span{font-size:21px}.closing-section h2{font-size:44px}.app-main{padding-left:21px;padding-right:21px}.app-view h1{font-size:40px}.sidebar-back{right:20px;font-size:0.75rem}.site-header{padding:0 21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
@media print{.site-header,.hero-visual,.cosmic-section,.app-phone-stage,.mobile-sticky-cta,.site-footer,.menu-button,.app-sidebar,.app-topbar,dialog{display:none!important}body{background:white;color:black}.hero{height:auto;min-height:0;background:white;color:black;padding:30px 0}.hero-content{padding:0;margin:0}.hero h1,.hero h1 em{color:black}.hero-bottom,.hero-annotation{display:none}.section,.birth-section,.app-preview-section{padding:30px 0}.app-main{margin:0;padding:0}.app-view[hidden]{display:none!important}}

.planet-fallback:before{display:none}.hero-fallback{background:transparent url("planets/moon.webp") center/contain no-repeat;box-shadow:none;transform:none}.journey-fallback{background-image:url("planets/sun.webp");background-size:contain;background-position:center;background-repeat:no-repeat;box-shadow:none}

@media(max-width:767px){.cosmic-stage{height:100svh;min-height:820px;max-height:960px}.reflection-grid{width:100%}}

/* Atlas refactor: one celestial centrepiece, with a restrained Tamil accent. */
:root { --tamil: 'Noto Sans Tamil','Tamil MN','Latha',sans-serif; }
[lang="ta"] { font-family:var(--tamil); letter-spacing:0; }
.wordmark small { font-family:var(--tamil); font-size:0.8125rem; letter-spacing:.015em; line-height:1.4; margin-top:8px; opacity:.72; }
.header-actions>.preview-chip[lang="ta"] { font-size:0.875rem; letter-spacing:0; }
.hero-content button { pointer-events:auto; }
.hero-eyebrow>.hero-tamil { width:auto;height:auto;background:none;font-size:1rem;line-height:1.6;letter-spacing:.02em; }
.sr-only { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important; }
.discovery-intro { padding:76px 7.2% 70px; display:grid;grid-template-columns:1fr 1.06fr;gap:75px;align-items:start;border-bottom:1px solid var(--line); }
.discovery-lead>.eyebrow { color:#81816a;font-size:0.8125rem; }
.discovery-lead>.eyebrow [lang="ta"] { margin-right:14px;font-size:0.9375rem; }
.discovery-lead h2 { font-size:clamp(31px,3.1vw,49px);line-height:1.2;margin-top:25px; }
.discovery-lead h2 em { color:#777e68; }
.discovery-paths { display:grid;gap:18px; }
.discovery-paths>a { display:block;padding:0 0 17px;border-bottom:1px solid #dddcd2; }
.discovery-paths>a:last-child { border:0;padding-bottom:0; }
.discovery-paths>a>span { font-size:0.75rem;letter-spacing:.15em;color:#8a8774; }
.discovery-paths h3 { display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:23px;margin:7px 0 8px; }
.discovery-paths h3>.icon { width:15px;height:15px;color:#89927d;transition:transform .2s; }
.discovery-paths a:hover .icon { transform:translate(3px,-3px); }
.discovery-paths p { max-width:390px;font-size:0.9375rem;line-height:1.7; }
.atlas-section { background:#09151f;isolation:isolate; }
.atlas-section .atlas-stage { --atlas-top:220px;--atlas-bottom:202px;position:relative;min-height:680px;height:100svh;max-height:none;width:100%;background:#09151f;overflow:hidden; }
.atlas-section.native-pin>.atlas-stage { position:sticky;top:0; }
.atlas-section.atlas-reduced { height:auto!important; }
.atlas-canvas { width:100%;height:100%;max-width:none;touch-action:pan-y; }
.atlas-topline { position:absolute;z-index:3;top:27px;left:4.5%;right:4.5%;display:flex;align-items:center;justify-content:space-between;gap:20px; }
.atlas-topline>.eyebrow { color:#9daea9;font-size:0.8125rem;letter-spacing:.19em; }
.atlas-top-actions { display:flex;gap:25px;align-items:center; }
.atlas-tool { display:inline-flex;align-items:center;gap:8px;min-height:42px;font-size:0.875rem;color:#a8b6b5;white-space:nowrap; }
.atlas-tool>.icon { width:15px;height:15px; }
.atlas-tool:hover,.atlas-tool.is-active { color:#e8d6aa; }
.atlas-title { position:absolute;z-index:2;left:5%;right:5%;top:91px;text-align:center;pointer-events:none; }
.atlas-title>p { text-transform:uppercase;color:#9e9f88;font-size:0.75rem;letter-spacing:.23em;margin-bottom:11px; }
.atlas-title h2 { color:#f2eddf;font-size:clamp(43px,4.8vw,69px);line-height:1.08;letter-spacing:-.035em; }
.atlas-subline { display:flex;align-items:center;justify-content:center;gap:14px;margin-top:13px;font-size:0.9375rem;color:#a5b0ac; }
.atlas-subline>[lang="ta"] { color:#bcaa81;font-size:1.0625rem;line-height:1.7; }
.atlas-subline>i { width:1px;height:13px;background:#52605e; }
.atlas-clock { position:absolute;z-index:2;right:4.5%;top:219px;text-align:right; }
.atlas-live-label { display:flex;align-items:center;justify-content:flex-end;gap:7px;font-size:0.75rem;letter-spacing:.11em;color:#c4ccbd; }
.atlas-live-label>i { width:5px;height:5px;flex:none;border-radius:50%;background:#b6c59f;box-shadow:0 0 0 3px #adc19412; }
.atlas-clock>time { display:block;margin:6px 0 4px;font-size:0.8125rem;color:#899d9e;font-variant-numeric:tabular-nums; }
.atlas-clock button { font-size:0.8125rem;color:#baa982;padding:5px 0 5px 15px;min-height:32px; }
.atlas-about { position:absolute;right:4.5%;bottom:225px;z-index:6;font-size:0.875rem;color:#aab7b4; }
.atlas-about>summary { list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;min-height:38px; }
.atlas-about>summary::-webkit-details-marker { display:none; }
.atlas-about>summary>span { font-size:18px;color:#c5b58e;font-weight:300; }
.atlas-about[open] { width:340px;max-width:calc(100% - 38px);background:#0e202aed;border:1px solid #50605a7a;border-radius:3px;padding:14px 19px;max-height:calc(100% - 265px);overflow:auto;backdrop-filter:blur(12px); }
.atlas-about[open]>summary { border-bottom:1px solid #54615766;justify-content:space-between;margin-bottom:10px; }
.atlas-about p { font-family:var(--sans);font-size:0.9375rem;color:#b5c0b8;line-height:1.8;margin-top:9px; }
.atlas-about .atlas-reflection-label { color:#c8b58a;font-size:0.75rem;letter-spacing:.17em;margin-top:16px; }
.atlas-scene-note { position:absolute;left:4.5%;bottom:232px;z-index:2;display:flex;flex-direction:column;gap:7px;font-size:0.75rem;letter-spacing:.15em;color:#859a9c;pointer-events:none; }
.atlas-scene-note b { font-weight:500;color:#dfd4b7; }
.atlas-section .atlas-controls { left:4.5%;right:4.5%;bottom:22px;z-index:4; }
.atlas-control-top { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:13px;color:#8da29f; }
.atlas-control-top .journey-hint { font-size:0.75rem;letter-spacing:.15em; }
.atlas-control-top>.text-button { font-size:0.8125rem;color:#b8c0b1;min-height:36px; }
.atlas-rail-shell { display:flex;align-items:center;gap:10px;width:100%; }
.atlas-rail-arrow { display:flex;align-items:center;justify-content:center;width:30px;height:44px;flex:none;font-size:17px;color:#b6bda7; }
.atlas-rail-arrow:disabled { opacity:.24; }
.atlas-section .planet-nav { display:flex;flex:1;min-width:0;justify-content:space-between;gap:8px;overflow-x:auto;overflow-y:hidden;padding:3px 5px 9px;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y; }
.atlas-section .planet-nav::-webkit-scrollbar { display:none; }
.atlas-section .planet-stop { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex:1 0 60px;min-width:0;max-width:110px;padding:8px 4px 10px;color:#879c9e;transition:color .25s;scroll-snap-align:center;scroll-snap-stop:always;user-select:none; }
.atlas-section .planet-stop>span:not(.planet-dot) { font-family:var(--sans);font-size:0.875rem;letter-spacing:.01em;line-height:1.35; }
.atlas-section .planet-stop>small { font-size:0.8125rem;font-family:var(--tamil);line-height:1.4;color:#718b8f; }
.atlas-section .planet-stop.is-active,.atlas-section .planet-stop:hover { color:#f1e2be; }
.atlas-section .planet-stop.is-active>small { color:#bcaa80; }
.atlas-section .planet-dot { display:block;flex:none;width:27px;height:27px;aspect-ratio:1;border-radius:50%;margin:2px 0 3px;transform:none;box-shadow:inset -7px -2px 9px #02070bc9,0 0 0 1px #a7b7b324;transition:box-shadow .25s; }
.atlas-section .planet-stop.is-active .planet-dot { transform:none;box-shadow:inset -7px -2px 9px #02070baa,0 0 0 5px #c5b88709,0 0 0 6px #c5b88742; }
.atlas-section .planet-dot-sun { background:radial-gradient(circle at 35% 28%,#ffdf96,#df923e 60%,#8e492a);box-shadow:0 0 13px #d9a44c38; }
.atlas-section .planet-dot-mercury { background:radial-gradient(circle at 35% 28%,#b9b4a5,#706d66); }
.atlas-section .planet-dot-venus { background:linear-gradient(145deg,#e6c490,#ad7648); }
.atlas-section .planet-dot-earth { background:radial-gradient(ellipse at 40% 30%,#759276 0 12%,transparent 15%),radial-gradient(ellipse at 65% 52%,#647d57 0 20%,transparent 24%),radial-gradient(circle at 30% 30%,#80adbc,#24546a 70%); }
.atlas-section .planet-dot-moon { background:radial-gradient(circle at 40% 32%,#d1d1c4,#747f80 70%); }
.atlas-section .planet-dot-mars { background:radial-gradient(circle at 32% 30%,#ce9368,#9e583d 65%,#5d332a); }
.atlas-section .planet-dot-jupiter { background:repeating-linear-gradient(172deg,#bc9875 0 3px,#d3bba0 5px,#8d6a53 7px,#b18d6b 9px); }
.atlas-section .planet-dot-saturn { background:linear-gradient(165deg,#d6c6a0,#9d8e6e); }
.atlas-section .planet-dot-uranus { background:radial-gradient(circle at 30% 30%,#a0d3d4,#4c8e98); }
.atlas-section .planet-dot-neptune { background:radial-gradient(circle at 30% 30%,#6c9ac4,#31567e); }
.atlas-section .journey-track { margin-top:8px;height:1px;background:#364a4c; }
.atlas-section .journey-track>span { background:#c7b383; }
.atlas-section .journey-caption { margin-top:13px;font-size:0.75rem;letter-spacing:.1em;color:#758e92;display:flex;justify-content:space-between;gap:16px; }
.atlas-section .planet-transcripts { position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%);overflow:hidden;white-space:normal; }
.atlas-noscript { padding:20px;color:#e8dfcc; }
.zodiac-dialog { width:min(1080px,calc(100vw - 56px));max-width:none;max-height:90svh;background:var(--paper);border:1px solid #bfc1af;border-radius:4px;padding:23px 30px;overscroll-behavior:contain; }
.zodiac-dialog::backdrop { background:#041017c9;backdrop-filter:blur(8px); }
.zodiac-dialog>.dialog-heading { position:sticky;top:-23px;padding:12px 0 15px;background:var(--paper);z-index:4;border-bottom:1px solid var(--line); }
.zodiac-dialog .zodiac-section { padding:35px 20px 20px; }
.zodiac-dialog .section-heading { text-align:center;margin-bottom:25px; }
.zodiac-dialog .section-heading>.eyebrow { display:none; }
.zodiac-dialog .section-heading h2 { font-size:39px; }
.zodiac-dialog .section-heading>p { font-size:1rem;margin-top:14px; }
.zodiac-dialog .zodiac-layout { gap:45px;margin-top:30px; }
.zodiac-dialog .zodiac-detail h3 { font-size:37px; }
.zodiac-dialog .zodiac-detail>p { font-size:1rem; }
.zodiac-dialog .zodiac-wheel { width:100%;max-width:390px; }
.zodiac-dialog .section-footnote { margin-top:32px;font-size:0.875rem; }
@media (min-width:768px) and (max-width:1023px) {
  .header-actions>.preview-chip[lang="ta"] { display:none; }
  .atlas-section .planet-nav { --atlas-item:calc((100vw - 128px)/5);justify-content:flex-start;gap:0;padding-inline:calc(50% - var(--atlas-item)/2);scroll-snap-type:x mandatory; }
  .atlas-section .planet-stop { flex:0 0 var(--atlas-item);max-width:none; }
  .atlas-section .atlas-controls { left:24px;right:24px; }
}
@media (max-width:767px) {
  .wordmark small { font-size:0.75rem; }
  .hero-eyebrow>.hero-tamil { font-size:0.875rem; }
  .hero-content .hero-secondary { pointer-events:auto;font-size:0.875rem; }
  .discovery-intro { grid-template-columns:1fr;padding:45px 25px 44px;gap:31px; }
  .discovery-lead>.eyebrow { font-size:0.75rem; }
  .discovery-lead>.eyebrow [lang="ta"] { font-size:0.8125rem;margin-right:7px; }
  .discovery-lead h2 { font-size:32px;margin-top:20px; }
  .discovery-paths { gap:16px; }
  .discovery-paths h3 { font-size:22px; }
  .discovery-paths p { font-size:0.9375rem; }
  .atlas-section .atlas-stage { --atlas-top:213px;--atlas-bottom:196px;min-height:640px;height:100svh;max-height:none; }
  .atlas-topline { left:20px;right:20px;top:15px;align-items:flex-start; }
  .atlas-topline>.eyebrow { font-size:0.75rem;margin-top:13px;white-space:nowrap; }
  .atlas-top-actions { gap:12px; }
  .atlas-tool { font-size:0.8125rem;min-height:38px;gap:5px; }
  .atlas-tool>.icon { width:14px;height:14px; }
  .atlas-top-actions [data-open-zodiac]>span { display:none; }
  .atlas-top-actions #atlas-overview>span { display:none; }
  .atlas-title { top:77px;left:18px;right:18px; }
  .atlas-title>p { font-size:0.75rem;letter-spacing:.16em;margin-bottom:10px; }
  .atlas-title h2 { font-size:43px;line-height:1.1; }
  .atlas-subline { flex-wrap:wrap;gap:4px 10px;margin-top:10px;font-size:0.875rem;line-height:1.6; }
  .atlas-subline>[lang="ta"] { font-size:1rem; }
  .atlas-subline>i { height:10px; }
  .atlas-clock { top:188px;right:20px;text-align:right; }
  .atlas-live-label { font-size:0.75rem;letter-spacing:.08em; }
  .atlas-clock>time { font-size:0.75rem;margin-top:4px; }
  .atlas-clock button { font-size:0.75rem;min-height:32px;padding-top:3px; }
  .atlas-about { right:20px;bottom:205px;font-size:0.8125rem; }
  .atlas-about[open] { width:calc(100% - 40px);max-height:calc(100% - 250px);padding:12px 16px;bottom:196px; }
  .atlas-about p { font-size:0.875rem; }
  .atlas-scene-note { left:20px;bottom:218px;font-size:0.75rem;gap:5px;letter-spacing:.09em; }
  .atlas-section .atlas-controls { left:0;right:0;bottom:max(13px,env(safe-area-inset-bottom)); }
  .atlas-control-top { margin:0 20px 3px;gap:10px; }
  .atlas-control-top .journey-hint { font-size:0.75rem;letter-spacing:.08em; }
  .atlas-control-top>.text-button { font-size:0.75rem;min-height:36px; }
  .atlas-rail-shell { gap:0;padding:0 16px; }
  .atlas-rail-arrow { width:32px;height:48px; }
  .atlas-section .planet-nav { --atlas-item:calc((100vw - 96px)/3);gap:0;justify-content:flex-start;padding:5px calc(50% - var(--atlas-item)/2) 8px;scroll-snap-type:x mandatory;scroll-behavior:auto; }
  .atlas-section .planet-stop { flex:0 0 var(--atlas-item);width:var(--atlas-item);max-width:none;padding:6px 4px 8px;gap:5px; }
  .atlas-section .planet-dot { width:28px;height:28px;margin-top:5px;margin-bottom:5px; }
  .atlas-section .planet-stop>span:not(.planet-dot) { font-size:0.875rem; }
  .atlas-section .planet-stop>small { font-size:0.8125rem; }
  .atlas-section .journey-track { margin:2px 20px 0; }
  .atlas-section .journey-caption { margin:10px 20px 0;font-size:0.75rem;letter-spacing:.05em;gap:8px; }
  .zodiac-dialog { width:calc(100vw - 24px);max-width:none;padding:14px;max-height:90svh; }
  .zodiac-dialog>.dialog-heading { top:-14px;padding:2px 0 9px; }
  .zodiac-dialog>.dialog-heading>.eyebrow { font-size:0.75rem; }
  .zodiac-dialog .zodiac-section { padding:24px 5px 13px; }
  .zodiac-dialog .section-heading h2 { font-size:30px; }
  .zodiac-dialog .section-heading>p { font-size:0.875rem; }
  .zodiac-dialog .zodiac-layout { gap:22px;margin-top:24px;grid-template-columns:1fr; }
  .zodiac-dialog .zodiac-detail h3 { font-size:33px; }
  .zodiac-dialog .zodiac-wheel { max-width:310px;margin:auto; }
  .zodiac-dialog .section-footnote { font-size:0.75rem;line-height:1.8; }
}
@media (min-width:480px) and (max-width:767px) {
  .atlas-section .planet-nav { --atlas-item:calc((100vw - 96px)/5); }
}
@media (max-width:375px) {
  .atlas-title h2 { font-size:39px; }
  .atlas-subline { font-size:0.8125rem; }
  .atlas-topline>.eyebrow { font-size:0.75rem; }
  .atlas-top-actions { gap:10px; }
  .atlas-control-top .journey-hint { font-size:0.75rem; }
}
@media (prefers-reduced-motion:reduce) { .atlas-section *, .zodiac-dialog * { scroll-behavior:auto!important;transition:none!important; } }

/* Short viewports must never pin controls below the physical screen. */
@media (max-height:700px) and (max-width:599px) {
 .atlas-section .atlas-stage { min-height:0;height:100svh;--atlas-top:193px;--atlas-bottom:162px; }
 .atlas-title { top:65px; }
 .atlas-title h2 { font-size:36px; }
 .atlas-subline { margin-top:7px;font-size:0.8125rem; }
 .atlas-clock { top:166px; }
 .atlas-about { bottom:175px; }
 .atlas-scene-note { bottom:182px; }
 .atlas-section .planet-dot { width:23px;height:23px;margin-block:3px; }
 .atlas-section .planet-stop { padding-block:3px;gap:3px; }
 .atlas-control-top { margin-bottom:0; }
 .atlas-section .journey-caption { margin-top:6px; }
}
@media (max-height:600px) and (min-width:600px) {
 .atlas-section .atlas-stage { min-height:0;height:100svh;--atlas-top:105px;--atlas-bottom:131px; }
 .atlas-topline { top:4px; }
 .atlas-topline>.eyebrow { font-size:0.75rem; }
 .atlas-tool { font-size:0.75rem;min-height:32px; }
 .atlas-title { top:43px; }
 .atlas-title>p { display:none; }
 .atlas-title h2 { font-size:32px; }
 .atlas-subline { margin-top:5px;font-size:0.8125rem; }
 .atlas-subline>[lang="ta"] { font-size:0.875rem; }
 .atlas-clock { top:107px; }
 .atlas-clock>time { font-size:0.75rem; }
 .atlas-about { bottom:137px; }
 .atlas-scene-note { bottom:143px; }
 .atlas-section .atlas-controls { bottom:9px; }
 .atlas-control-top { margin-bottom:0; }
 .atlas-control-top .journey-hint { font-size:0.75rem; }
 .atlas-control-top>.text-button { font-size:0.75rem;min-height:27px; }
 .atlas-section .planet-nav { padding-block:0; }
 .atlas-section .planet-stop { padding-block:4px;gap:3px; }
 .atlas-section .planet-dot { width:20px;height:20px;margin-block:1px; }
 .atlas-section .planet-stop>span:not(.planet-dot) { font-size:0.75rem; }
 .atlas-section .planet-stop>small { font-size:0.75rem; }
 .atlas-section .journey-caption { margin-top:6px;font-size:0.75rem; }
 .atlas-section .journey-track { margin-top:3px; }
}

/* 1.2 / Tamil services. Three distinct practices; the orbital Atlas is unchanged. */
:root{--forest:#203d35;--forest-dark:#152e29;--brass:#c6a46a;--burgundy:#553d49}
[lang="ta"]{font-family:'Noto Sans Tamil','Tamil Sangam MN','Latha',var(--sans);letter-spacing:0;line-height:1.65}
.services-hero .hero-content{padding-top:clamp(150px,20vh,220px);max-width:760px}
.services-hero h1{font-size:clamp(65px,6.5vw,98px);line-height:1.04}.services-hero .hero-note{margin-top:30px}
.services-hero .hero-content>p{max-width:470px}.services-hero .hero-eyebrow .hero-tamil{width:auto;height:auto;background:none;font-size:1.0625rem}
.services-hero .hero-annotation{right:6%;top:76%}.services-hero .hero-annotation div{font-size:1rem}
.services-hero .hero-actions{pointer-events:auto}.intro-ribbon [lang="ta"]{font-size:1rem}
.practice-section{padding:100px 7.2%;max-width:1600px;margin:auto}.practice-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;align-items:end}
.practice-heading .eyebrow{grid-column:1/-1;color:#8d704b;font-size:1.0625rem}.practice-heading h2{font-size:clamp(40px,4.3vw,64px)}
.practice-heading h2 em{color:#7a8064}.practice-heading>p{justify-self:end;font-size:1.0625rem}
.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:50px;border:1px solid #d6d3c7}
.practice-card{display:flex;flex-direction:column;padding:30px 30px 24px;position:relative;transition:background .25s;border-right:1px solid #d6d3c7;min-height:380px}
.practice-card:last-child{border:0}.practice-card:hover{background:#ebe7dc}.practice-top{display:flex;justify-content:space-between;color:#8b7f66;font-size:0.9375rem;align-items:center}.practice-top [lang="ta"]{font-size:1.0625rem}
.practice-symbol{height:85px;display:flex;align-items:center;color:#86734f}.symbol-chart{font-size:58px;line-height:1}.symbol-house{font-size:64px;line-height:1}.symbol-number{font-size:51px;line-height:1;font-family:'Noto Sans Tamil','Tamil Sangam MN',sans-serif}
.practice-card h3{font-size:33px;margin:12px 0}.practice-card>strong{font-size:1rem;font-weight:500}.practice-card>p{font-size:1.0625rem;line-height:1.8;margin:12px 0 22px;max-width:300px}
.practice-link{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #d2cfc1;font-size:0.9375rem;margin-top:auto}
.practice-link>span{font-size:21px}.practice-vastu .practice-symbol{color:#4b6c59}.practice-numerology .practice-symbol{color:#805866}
/* South Indian chart and Tamil-first content hierarchy. */
.tamil-astrology-section{padding:95px 7.2% 110px;display:grid;grid-template-columns:1.1fr 1fr;gap:9%;border-top:1px solid var(--line);max-width:1600px;margin:auto}
.astrology-editorial>.eyebrow{color:#8b704b;margin-bottom:24px}.astrology-editorial :is(h1,h2){font-size:clamp(45px,4.5vw,68px)}.astrology-editorial :is(h1,h2) em{color:#7d8469}
.service-lead{font-size:1.125rem;line-height:1.85;margin-top:25px;max-width:500px}.astrology-topics{margin-top:30px;border-top:1px solid var(--line)}
.astrology-topics article{padding:19px 0 18px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1.6fr;gap:7px 20px}
.astrology-topics article>span{color:#8d794f;font-size:1rem;grid-column:1/-1}.astrology-topics h3{font-size:23px}.astrology-topics article p{font-size:1rem;line-height:1.7}
.service-actions{display:flex;gap:25px;align-items:center;margin-top:28px;flex-wrap:wrap}.service-actions .button{font-size:0.9375rem;gap:16px}
.jathagam-study{align-self:center;padding:30px;background:#eeeadf;border:1px solid #d7d1be;box-shadow:18px 20px 0 #e6e1d333}
.study-caption{display:flex;justify-content:space-between;align-items:center;font-size:0.8125rem;letter-spacing:.1em;margin-bottom:25px;color:#7c745e}.study-caption [lang="ta"]{font-size:0.9375rem}
.south-chart{aspect-ratio:1;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);border:1px solid #9e8b64;background:#f7f2e8;width:100%;position:relative}
.rasi-cell{border:.5px solid #c2b596;padding:8px 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;color:#6a5b3e;gap:5px}
.rasi-cell>span{font-size:clamp(11px,1vw,15px)}.rasi-cell small{font-family:var(--sans);font-size:9px;color:#8b826f}.interactive-chart .rasi-cell:hover{background:#ded9c9}
.rasi-cell.selected{background:#dcd8c1}.interactive-chart .rasi-cell.selected{background:#344b3b;color:#f5edd8}.interactive-chart .rasi-cell.selected small{color:#cbd4b7}
.rasi-centre{grid-area:2/2/4/4;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:8px;padding:12px}
.rasi-centre .rasi-kolam{font-size:50px;line-height:1;color:#ad9560}.rasi-centre strong{font-weight:400;font-size:20px;color:#695a3f}.rasi-centre>span:not(.rasi-kolam){font-size:8px;letter-spacing:.13em}.rasi-centre small{font-size:8px;color:#8d8370}
.rasi-readout{margin-top:24px;border-bottom:1px solid #d6ceba;padding-bottom:20px}.rasi-readout .eyebrow{font-size:0.8125rem;color:#8d7953}.rasi-readout h3{font-size:27px;margin:9px 0 10px}.rasi-readout h3 span{font-size:17px;margin-left:10px}.rasi-readout p{font-size:1rem;line-height:1.8}
.service-fineprint{font-size:0.875rem;line-height:1.8;margin-top:15px;color:#837c69}.rasi-dialog{max-width:620px;padding:30px;background:#f6f0e4;border:1px solid #c3b58e;color:var(--ink);max-height:90svh;overflow:auto}
.rasi-dialog h2{font-size:36px;margin-bottom:24px}.rasi-dialog>.south-chart{max-width:390px;margin:auto}.rasi-dialog>p{font-size:1.0625rem;margin-top:20px}.rasi-dialog .button{margin-top:22px}.birth-chart-art .south-chart{max-width:390px;margin:25px auto 0}.birth-intro .chart-tag{margin-top:17px}.sample-dialog .south-chart{max-width:360px;margin:25px auto}
/* Vastu: an architectural, independently scroll-driven room tour. */
.vastu-section{background:var(--forest-dark);color:#eae5d5;position:relative;isolation:isolate}
.vastu-section.vastu-enhanced{height:calc(100svh + var(--vastu-travel,2400px))}
.vastu-stage{padding:42px 5% 18px;background:var(--forest-dark);height:100svh;min-height:760px;display:flex;flex-direction:column;overflow:hidden;position:relative}
.vastu-enhanced .vastu-stage{position:sticky;top:0}
.vastu-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;flex:none;margin-bottom:22px}.vastu-heading .eyebrow{color:#c5af7b;margin-bottom:12px}.vastu-heading .eyebrow [lang="ta"]{font-size:1.0625rem}
.vastu-heading :is(h1,h2){font-size:clamp(36px,3.6vw,54px);line-height:1.06}.vastu-heading :is(h1,h2) em{color:#c8b78d}.vastu-heading-note{font-size:0.875rem;color:#c5c7b4}.vastu-heading-note>span{font-size:0.75rem;letter-spacing:.16em;color:#b9b99c}.vastu-heading-note p{color:#a5b5a7;font-size:0.9375rem;margin:7px 0}.vastu-heading-note .text-link{padding:2px 0;font-size:0.875rem;border-bottom-color:#768d76}
.vastu-content{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);gap:24px;flex:1;min-height:0}.vastu-scene{position:relative;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at 40% 30%,#3b5949 0%,#294539 65%,#243f33 100%);border:1px solid #68806b55}
.plan-topline,.vastu-bottomline{z-index:1;position:relative;flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 18px;color:#b8c3ac;font-size:0.75rem;letter-spacing:.1em}.plan-topline{border-bottom:1px solid #7c977044}.vastu-bottomline{border-top:1px solid #7c977044;font-size:0.75rem}.vastu-bottomline .text-button{font-size:0.875rem;color:#e4dbba;letter-spacing:0;min-height:28px}
.vastu-viewport{position:relative;flex:1;min-height:0;overflow:hidden;background-image:linear-gradient(#ccd9c006 1px,transparent 1px),linear-gradient(90deg,#ccd9c006 1px,transparent 1px);background-size:28px 28px}
.vastu-svg{display:block;width:100%;height:100%;min-height:0;overflow:hidden}.vastu-svg .floor-label{font-family:var(--sans);font-size:9px;letter-spacing:1px;fill:#525e51;paint-order:stroke;stroke:#e3dfd266;stroke-width:2}
.vastu-svg .plan-directions text{font-size:15px;font-family:var(--sans);fill:#bccca8}.vastu-hotspot{cursor:pointer;outline:none}.vastu-hotspot circle:nth-child(2){fill:#294738;stroke:#cfba7f;stroke-width:1.3}.vastu-hotspot text{font-size:0.875rem;fill:#eee2bc;font-family:var(--sans);pointer-events:none}.vastu-hotspot:hover circle:nth-child(2),.vastu-hotspot.is-active circle:nth-child(2){fill:#d3ae64;stroke:#fff0bc}.vastu-hotspot.is-active text{fill:#2e3d2f}.vastu-hotspot:focus-visible circle:nth-child(2){stroke:#fff;stroke-width:3}.vastu-zone{transition:opacity .35s}
.vastu-story{padding:24px 25px;background:#e9e4d5;color:#293b30;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#aab29f transparent}
.vastu-story-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:25px}.vastu-story-top .eyebrow{font-size:0.75rem;color:#7e6c43}.vastu-story-top>span:last-child{font-size:0.8125rem;color:#93876b;white-space:nowrap}.vastu-tamil{display:block;color:#88724d;font-size:1.0625rem;margin-bottom:11px}
.vastu-story h3{font-size:clamp(27px,2.7vw,39px);line-height:1.08;margin-bottom:18px}.vastu-story>p{font-size:1.0625rem;line-height:1.8;color:#66705e}.vastu-guidance{margin-top:20px;padding:15px 0;border-top:1px solid #cecbb8;border-bottom:1px solid #cecbb8}.vastu-guidance>span{font-size:0.75rem;letter-spacing:.13em;color:#88724d}.vastu-guidance p{font-size:0.9375rem;line-height:1.75;margin-top:6px;color:#69705e}
.vastu-practical{margin-top:14px}.vastu-practical summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;font-size:0.9375rem;font-weight:500;min-height:28px}.vastu-practical p{font-size:0.9375rem;line-height:1.8;color:#69705e}.vastu-practical summary::-webkit-details-marker{display:none}
.vastu-navigation{display:flex;gap:14px;align-items:center;flex:none;padding-top:18px}.vastu-navigation>button{width:38px;height:38px;border:1px solid #63715b;color:#ddcfaa;flex:none}.vastu-navigation nav{display:flex;flex:1;gap:0;min-width:0;overflow-x:auto;scrollbar-width:none;border:1px solid #4a624b;position:relative}.vastu-navigation nav::-webkit-scrollbar{display:none}
.vastu-navigation nav>button{display:flex;align-items:center;justify-content:center;gap:12px;flex:1;min-width:125px;padding:14px 10px;border-right:1px solid #4a624b;font-size:0.9375rem;line-height:1.2;transition:background .2s;color:#b8c6ae}.vastu-navigation nav>button:last-child{border:0}.vastu-navigation button small{font-size:0.8125rem;color:#8fa18b}.vastu-navigation .is-active{background:#d9c79a;color:#233d2d}.vastu-navigation .is-active small{color:#746b4f}
.vastu-disclaimer{font-size:0.8125rem;color:#8fa68c;text-align:center;padding-top:12px;flex:none}.vastu-disclaimer a{color:#cfba8a;text-decoration:underline;text-underline-offset:3px}
.vastu-readable{background:#eeeadd;color:#43503d;padding:0 7.2%;position:absolute;top:100%;left:0;right:0;z-index:2}.vastu-readable details>summary{font-size:0.9375rem;cursor:pointer;padding:17px 0}.vastu-readable article{padding:20px 0;border-top:1px solid #d1cfbf}.vastu-readable h3{font-size:23px;margin-bottom:13px}.vastu-readable p{font-size:1.0625rem;margin-top:8px}.vastu-readable details[open]{max-height:65vh;overflow:auto;padding-right:10px}
.vastu-reduced .vastu-stage{height:auto;min-height:800px}.vastu-reduced .vastu-content{min-height:470px}.vastu-reduced .vastu-zone{transition:none}
/***** Numerology: an interactive editorial calculator, not static number cards. *****/
.numerology-section{padding:115px 7.2% 100px;display:grid;grid-template-columns:.86fr 1.3fr;gap:9%;background:#efe9dd;color:#3b3439}
.number-intro>.eyebrow{color:#9d7757;margin-bottom:24px}.number-intro>.eyebrow [lang="ta"]{font-size:1.0625rem}.number-intro :is(h1,h2){font-size:clamp(48px,5vw,76px);line-height:1.04}.number-intro :is(h1,h2) em{color:#8d716f}.number-intro .service-lead{font-size:1.0625rem;color:#847a75}
.number-orbit{width:270px;aspect-ratio:1;position:relative;margin:65px auto 45px;border:1px solid #ac977255;border-radius:50%;box-shadow:0 0 0 16px #e9e2d455,0 0 0 35px #b39b6e0b}
.number-orbit:before{content:'';position:absolute;inset:28px;border:1px solid #ac977255;border-radius:50%}.number-orbit>span{position:absolute;left:50%;top:50%;font-family:var(--serif);font-size:23px;color:#8b7455;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-135px) rotate(var(--reverse));background:#efe9dd;width:38px;text-align:center;line-height:1.3}
.number-orbit>strong{position:absolute;inset:40px;display:flex;align-items:center;justify-content:center;font-family:'Noto Sans Tamil','Tamil Sangam MN',sans-serif;font-size:97px;font-weight:400;color:#654e55}.number-orbit>small{position:absolute;bottom:65px;left:0;right:0;text-align:center;font-size:0.75rem;letter-spacing:.16em;color:#8d7a6b}
.number-privacy{text-align:center;font-size:0.9375rem;color:#928777;line-height:1.9}.numerology-lab{align-self:start;padding:34px;background:#faf7ef;border:1px solid #d8cfbd;box-shadow:0 16px 50px #72563e06}
.number-lab-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.number-lab-heading .eyebrow{font-size:0.75rem;color:#957559}.number-lab-heading .pill{font-size:0.75rem;color:#8b6f62;border-color:#dbcfb8}.numerology-lab>h3{font-size:31px;margin:25px 0}.numerology-lab .field{margin-bottom:20px}.numerology-lab .field input{width:100%;min-height:48px;border:1px solid #d7cdb9;border-radius:0;background:#fffdf7;padding:12px;color:#463b3c;min-width:0}.numerology-lab .field label{display:block;font-size:0.9375rem;margin-bottom:8px;color:#6b5b51}.numerology-lab .field label span{font-size:1rem}.numerology-lab .field-help{font-size:0.875rem;line-height:1.7;color:#958675;margin-top:8px;display:block}.numerology-lab [aria-invalid="true"]{border-color:#a14640!important}.numerology-lab .field-error{display:block;font-size:0.9375rem;line-height:1.6;margin-top:5px;color:#9d3d31}.numerology-lab .button-dark{background:#533c49}
.number-alternate summary,.number-method summary,.number-arithmetic summary{display:flex;align-items:center;justify-content:space-between;font-size:0.9375rem;cursor:pointer;list-style:none;min-height:44px;gap:12px}.number-alternate summary::-webkit-details-marker,.number-method summary::-webkit-details-marker,.number-arithmetic summary::-webkit-details-marker{display:none}.number-alternate{border-top:1px solid #e1d8c6;border-bottom:1px solid #e1d8c6;margin:8px 0 22px}.number-alternate .field{margin-top:5px}
.number-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.number-actions .button{font-size:0.9375rem;gap:28px}.number-actions .text-link{font-size:0.9375rem;color:#8a705c}
.numerology-result{margin-top:28px;padding-top:25px;border-top:1px solid #e1d8c6;outline:none}.number-empty{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;color:#9a8e78;font-size:0.875rem}.number-empty>span{font-size:0.75rem;letter-spacing:.08em;line-height:1.8}.number-empty p{grid-column:1/-1;font-size:1rem;margin-top:10px;color:#a89a85}
.number-result-label{font-size:0.75rem;color:#997852;margin-bottom:17px;letter-spacing:.08em}.number-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid #d9ceba;background:#f2ecdf}
.number-result-grid article{text-align:center;padding:14px 5px;border-right:1px solid #d9ceba;display:flex;flex-direction:column;align-items:center}.number-result-grid article:last-child{border:0}.number-result-grid article>span{font-size:0.8125rem;line-height:1.4;color:#806f5f}.number-result-grid article>small[lang="ta"]{font-size:0.8125rem;margin-top:3px;color:#8d7b5e}.number-result-grid strong{font-family:var(--serif);font-size:58px;font-weight:400;line-height:1.2;color:#674750}.number-result-grid p{font-size:0.875rem;color:#8c6f61}.number-result-grid article>small:last-child{font-size:0.8125rem;margin-top:4px;color:#9c8c77}
.number-reading{margin-top:22px}.number-reading>.eyebrow{font-size:0.75rem;color:#9b7f5d}.number-reading h4{font-size:24px;margin:8px 0}.number-reading h4 [lang="ta"]{font-size:1.0625rem;color:#9a806a;margin-left:10px}.number-reading p{font-size:1rem;line-height:1.8;color:#897968}
.number-arithmetic{border-top:1px solid #e1d8c6;margin-top:16px}.number-arithmetic p{font-size:0.875rem;line-height:1.85;color:#8a7e69;overflow-wrap:anywhere}.number-arithmetic b{font-weight:500;color:#6d5c4e}
.letter-calculation{display:flex;flex-wrap:wrap;gap:5px;margin:13px 0}.letter-calculation>span{display:flex;flex-direction:column;border:1px solid #ded3bf;min-width:29px;text-align:center;padding:3px;color:#6b5056}.letter-calculation b{font-size:0.9375rem}.letter-calculation small{font-size:0.8125rem;color:#a08b6b}
.number-comparison{padding:14px;border:1px solid #d9ceba;margin-top:18px;background:#f1ebde}.number-comparison>span{font-size:0.75rem;letter-spacing:.1em}.number-comparison p{font-size:1.0625rem;margin:5px 0;color:#75565c;overflow-wrap:anywhere}.number-comparison small{font-size:0.875rem;color:#8e806c}
.number-result-actions{display:flex;gap:25px;margin-top:12px;flex-wrap:wrap}.number-result-actions .text-link{font-size:0.875rem;color:#856c5c}.number-method{border-top:1px solid #e1d8c6;margin-top:24px}.number-method p{font-size:0.9375rem;line-height:1.8;color:#8e806b}.chaldean-table{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:15px 0}.chaldean-table>span{font-size:0.8125rem;letter-spacing:.02em;display:flex;flex-direction:column;gap:3px}.chaldean-table b{font-size:18px;font-family:var(--serif);font-weight:400;color:#7f5b65}
.number-disclaimer{font-size:0.875rem;line-height:1.75;color:#9a8b78;margin-top:18px}.number-disclaimer a{text-decoration:underline;text-underline-offset:3px}
/* Supporting routes, the app and methodology. */
.footer-service-links{display:flex;gap:25px;font-size:1rem;flex-wrap:wrap}.methods-content{max-width:980px;margin:auto;padding:75px 6% 100px}.methods-content>h1{font-size:clamp(42px,5vw,68px);margin:20px 0 35px}.methods-content>h2{font-size:30px;margin:40px 0 16px}.methods-content>p{margin-bottom:18px;line-height:1.9}.source-list{border-top:1px solid var(--line);margin:25px 0}.source-list article{padding:20px 0;border-bottom:1px solid var(--line)}.source-list a{font-size:1.125rem;text-decoration:underline;text-underline-offset:5px}.source-list p{font-size:1.0625rem;margin-top:10px}
.service-page .tamil-astrology-section{border-top:0}.service-page .numerology-section{padding-top:80px}.legacy-library-banner{padding:30px 7.2%;background:#e7dfcf;border-bottom:1px solid #ccc3ae;font-size:1.0625rem}.legacy-library-banner p{margin:10px 0}.legacy-library-banner a{text-decoration:underline}
.app-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.app-service-grid a{padding:30px 22px;border:1px solid #cecbbc;background:#f0ece2;min-width:0}.app-service-grid a>span[lang="ta"]{color:#88734b;font-size:1.0625rem}.app-service-grid h2{font-size:28px;margin:25px 0 17px}.app-service-grid p{font-size:1.0625rem;line-height:1.8}.app-service-grid a>span:last-child{display:block;border-top:1px solid #ccc6b6;margin-top:25px;padding-top:15px;font-size:0.9375rem}
.phone-chart .south-chart{margin-top:10px}.phone-chart .rasi-cell{padding:1px;gap:2px}.phone-chart .rasi-cell>span{font-size:8px}.phone-chart .rasi-cell small{font-size:5px}.phone-chart .rasi-centre{gap:4px;padding:3px}.phone-chart .rasi-kolam{font-size:22px}.phone-chart .rasi-centre strong{font-size:10px}.phone-chart .rasi-centre>span:not(.rasi-kolam){font-size:4px}.phone-chart .rasi-centre small{font-size:5px}
.phone-home-plan{height:185px;background:#284737;margin:15px -5px 0}.phone-home-plan .vastu-svg{width:100%;height:100%}.phone-numbers{display:flex;margin:30px 0 25px;background:#e8decd;color:#65434d;padding:15px;justify-content:space-around}.phone-numbers>span{display:flex;flex-direction:column;font-size:8px;align-items:center}.phone-numbers strong{font-family:var(--serif);font-size:45px;font-weight:400}.phone-inner .phone-chart{max-width:210px;margin:20px auto 0}
.mobile-sticky-cta{display:none!important} /* Do not obscure either of the two scroll experiences. */
@media(min-width:1500px){.vastu-stage{padding-left:7.2%;padding-right:7.2%}.vastu-content{grid-template-columns:minmax(0,1.9fr) minmax(330px,1fr)}}
@media(max-width:1100px){.header-actions .preview-chip{display:none}.desktop-nav{gap:20px;margin-right:10px}.practice-section,.tamil-astrology-section,.numerology-section{padding-left:5%;padding-right:5%}.practice-card{padding:25px 22px}.tamil-astrology-section{gap:6%}.numerology-section{gap:6%;grid-template-columns:.8fr 1.2fr}.numerology-lab{padding:26px}.vastu-content{gap:16px;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr)}.vastu-story{padding:20px}.vastu-story-top{margin-bottom:14px}.vastu-story h3{font-size:30px}.vastu-stage{padding-top:32px}.vastu-heading :is(h1,h2){font-size:42px}}
@media(max-width:767px){
 .services-hero{min-height:780px;max-height:none}.services-hero .hero-content{padding-top:165px;margin-left:6%;margin-right:6%}.services-hero h1{font-size:64px}.services-hero .hero-content>p{font-size:1.0625rem;max-width:330px}.services-hero .hero-actions{gap:17px;flex-wrap:wrap;margin-top:28px}.services-hero .hero-annotation{display:none}.services-hero .hero-note{font-size:0.75rem;max-width:280px}.services-hero .hero-bottom>span:last-child{display:none}.services-hero .hero-bottom{font-size:0.75rem}.intro-ribbon{padding:20px 6%;align-items:flex-start;flex-direction:column;gap:13px}.intro-ribbon>div{gap:15px}.intro-ribbon em{font-size:1.125rem}.intro-ribbon [lang="ta"]{font-size:1rem}.site-header .header-actions>.button{display:none}
 .practice-section{padding:65px 6%}.practice-heading{grid-template-columns:1fr}.practice-heading h2{font-size:42px}.practice-heading>p{justify-self:start;font-size:1.0625rem;margin-top:10px}.practice-grid{grid-template-columns:1fr;margin-top:30px}.practice-card{min-height:0;padding:24px;display:grid;grid-template-columns:58px 1fr;gap:0 18px;border-right:0;border-bottom:1px solid #d6d3c7}.practice-top{grid-column:1/-1}.practice-symbol{grid-area:2/1/5/2;align-items:flex-start;padding-top:20px;height:auto}.practice-card h3{font-size:30px;grid-column:2;margin-top:20px}.practice-card>strong{grid-column:2}.practice-card>p{grid-column:2;font-size:1rem;margin:9px 0 18px}.practice-link{grid-column:1/-1}.symbol-chart{font-size:45px}.symbol-house{font-size:51px}.symbol-number{font-size:42px}
 .tamil-astrology-section{padding:60px 6% 65px;grid-template-columns:1fr;gap:40px}.astrology-editorial :is(h1,h2){font-size:48px}.service-lead{font-size:1.0625rem}.astrology-topics article{grid-template-columns:1fr;gap:6px}.astrology-topics article>span{font-size:0.9375rem}.astrology-topics article p{font-size:1rem}.jathagam-study{padding:22px;box-shadow:10px 12px 0 #e6e1d333}.rasi-cell>span{font-size:11px}.rasi-cell small{font-size:8px}.rasi-centre strong{font-size:17px}.rasi-centre .rasi-kolam{font-size:40px}.service-actions{gap:16px}.service-actions .button{padding:13px 16px}.rasi-readout h3{font-size:27px}
 .vastu-stage{height:100svh;min-height:0;padding:24px 5% 12px}.vastu-heading{margin-bottom:16px;gap:10px}.vastu-heading :is(h1,h2){font-size:32px}.vastu-heading .eyebrow{font-size:0.75rem;margin-bottom:8px}.vastu-heading .eyebrow [lang="ta"]{font-size:0.9375rem}.vastu-heading-note{align-self:flex-start}.vastu-heading-note>span,.vastu-heading-note>p{display:none}.vastu-heading-note .text-link{font-size:0.8125rem}
 .vastu-content{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.vastu-scene{flex:1.2;min-height:235px}.plan-topline{font-size:0.75rem;padding:9px 10px}.vastu-bottomline{padding:4px 10px;font-size:0.75rem}.vastu-bottomline .text-button{font-size:0.8125rem;min-height:25px}.vastu-story{padding:15px 17px;flex:1;min-height:180px;max-height:260px;overflow:auto}.vastu-story-top{margin-bottom:8px}.vastu-story-top .eyebrow{font-size:0.75rem}.vastu-story-top>span:last-child{font-size:0.75rem}.vastu-tamil{font-size:0.9375rem;margin-bottom:3px}.vastu-story h3{font-size:27px;margin-bottom:10px}.vastu-story>p{font-size:0.9375rem;line-height:1.7}.vastu-guidance{margin-top:12px;padding:9px 0}.vastu-guidance>span{font-size:0.75rem}.vastu-guidance p{font-size:0.875rem}.vastu-practical{margin-top:10px}.vastu-practical p{font-size:0.875rem}.vastu-practical summary{font-size:0.875rem}
 .vastu-navigation{gap:7px;padding-top:12px}.vastu-navigation>button{width:28px;height:35px;font-size:1.125rem}.vastu-navigation nav>button{min-width:calc(100% / 3);padding:10px 3px;gap:4px;font-size:0.8125rem;display:flex;flex-direction:column}.vastu-navigation button small{font-size:0.75rem}.vastu-disclaimer{font-size:0.75rem;padding-top:8px;line-height:1.5}.vastu-readable{padding:0 6%}.vastu-readable details>summary{font-size:0.875rem}.vastu-reduced .vastu-stage{min-height:760px}.vastu-reduced .vastu-content{min-height:530px}
 .numerology-section{padding:85px 6% 60px;grid-template-columns:1fr;gap:40px}.number-intro :is(h1,h2){font-size:57px}.number-intro>.eyebrow{margin-bottom:20px}.number-intro .service-lead{font-size:1.0625rem;max-width:100%}.number-orbit{width:180px;margin:45px auto 30px}.number-orbit>span{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-90px) rotate(var(--reverse));font-size:18px;width:30px}.number-orbit>strong{inset:20px;font-size:65px}.number-orbit>small{bottom:38px;font-size:0.75rem}.number-orbit:before{inset:20px}.number-privacy{font-size:0.875rem}.numerology-lab{padding:24px 20px}.number-lab-heading{gap:8px}.number-lab-heading .eyebrow{font-size:0.75rem;max-width:100px}.number-lab-heading .pill{font-size:0.75rem;padding:5px 8px;white-space:nowrap}.numerology-lab>h3{font-size:28px;margin:23px 0}.numerology-lab .field input{font-size:1.125rem}.number-actions .button{font-size:0.875rem;padding:14px 15px;gap:18px}.number-actions .text-link{font-size:0.875rem}.number-actions{gap:9px}.number-result-grid strong{font-size:50px}.number-result-grid article>span{font-size:0.75rem}.number-result-grid article>small[lang="ta"]{font-size:0.75rem}.number-empty>span{font-size:0.75rem}.number-empty p{font-size:0.9375rem}.number-reading h4{font-size:23px}.number-reading h4 [lang="ta"]{font-size:1rem;margin-left:7px}.number-result-actions{gap:15px}.number-method p{font-size:0.875rem}
 .footer-service-links{flex-direction:column;gap:8px;font-size:1rem}.methods-content{padding:50px 6% 70px}.methods-content>p{font-size:1.0625rem}.methods-content>h2{font-size:27px}.source-list a{font-size:1.0625rem}.source-list p{font-size:1rem}.app-service-grid{grid-template-columns:1fr}.app-service-grid a{padding:25px}.service-page .numerology-section{padding-top:55px}
}
@media(max-height:700px){
 .vastu-stage{padding-top:15px;min-height:0}.vastu-heading{margin-bottom:10px}.vastu-heading :is(h1,h2){font-size:30px}.vastu-heading .eyebrow{margin-bottom:6px}.vastu-heading-note p{display:none}.vastu-story{padding:15px}.vastu-story h3{font-size:27px}.vastu-story-top{margin-bottom:8px}.vastu-navigation{padding-top:10px}.vastu-guidance{margin-top:12px}.vastu-content{gap:12px}
}
@media(max-width:767px) and (max-height:700px){
 .vastu-heading :is(h1,h2){font-size:25px}.vastu-heading .eyebrow{font-size:0.75rem}.vastu-stage{padding:12px 4% 8px}.vastu-heading{margin-bottom:8px}.vastu-scene{min-height:170px;flex:1.05}.vastu-story{min-height:128px;flex:1;padding:10px 12px}.vastu-story-top{margin-bottom:3px}.vastu-tamil{font-size:0.875rem}.vastu-story h3{font-size:23px;margin-bottom:6px}.vastu-story>p{font-size:0.875rem}.vastu-navigation{padding-top:7px}.vastu-navigation nav>button{padding:7px 2px}.vastu-disclaimer{font-size:0.75rem}.plan-topline{padding:6px 8px}.vastu-bottomline{padding:2px 8px}
}
@media(prefers-reduced-motion:reduce){.vastu-zone,.practice-card{transition:none}}.reduced-motion .vastu-zone{transition:none}

.vastu-readable{position:relative;top:auto;z-index:auto}.vastu-readable details[open]{max-height:none;overflow:visible;padding-bottom:25px}

.legacy-library-banner h1{font-family:var(--sans);font-size:18px;letter-spacing:0;line-height:1.3;margin:0 0 10px;font-weight:500}

/* Nalvazhi refinement: shared stop markers, proportional graphics, service-led opening. */
[hidden]{display:none!important}
.stop-rail-base,.stop-rail-fill{position:absolute;bottom:9px;height:1px;pointer-events:none;z-index:1;background:#b9baaa38;display:block}
.stop-rail-fill{background:#d6bb7e;will-change:width}
.stop-rail-fill:after{content:'';position:absolute;right:-4px;top:-3.5px;width:8px;height:8px;border-radius:50%;background:#e9d3a1;box-shadow:0 0 12px #e9d3a144}
.planet-nav{position:relative;align-items:stretch}
.planet-nav>.planet-stop{position:relative;padding-bottom:28px;flex-shrink:0}
.stop-dot{position:absolute;bottom:6px;left:50%;transform:translateX(-50%);width:7px;height:7px;border:1px solid #78877b;border-radius:50%;background:#10202a;z-index:2;pointer-events:none}
.is-active>.stop-dot{background:#ead3a0;border-color:#ead3a0;box-shadow:0 0 0 4px #ead3a012}
.vastu-navigation nav{border:0;overflow-y:hidden;position:relative}
.vastu-navigation nav>button{position:relative;padding-bottom:28px;border:0;background:transparent;color:#b8c6ae;flex-direction:column;gap:5px}
.vastu-navigation nav>button.is-active{color:#f2deb3;background:#d9c79a0a}
.vastu-navigation .stop-dot{background:#294438}
.vastu-navigation .is-active .stop-dot{background:#efd8a3}
.vastu-view-toolbar{display:flex;gap:5px;align-items:center;padding:8px 12px;flex:none;z-index:2;border-top:1px solid #c3d2b41a}
.vastu-view-toolbar button{border:1px solid #b7c5ab44;font-size:0.875rem;padding:9px 12px;min-height:36px;color:#c5d2bf}
.vastu-view-toolbar button.is-active{background:#e0d1aa;color:#294438;border-color:#e0d1aa}
.vastu-view-toolbar>span{margin-left:auto;letter-spacing:.12em;font-size:0.75rem;color:#a9b9a3}
.vastu-viewport{position:relative;min-height:0}
.vastu-fixed-compass{position:absolute;top:12px;right:14px;display:flex;flex-direction:column;align-items:center;font-size:0.9375rem;color:#e5d6ae;pointer-events:none}
.vastu-fixed-compass span{font-size:24px;line-height:1.3}
.compass-sector-label{font:13px var(--sans);fill:#fff5db;font-weight:500;paint-order:stroke;stroke:#273b3833;stroke-width:.7px}
.compass-home-svg .floor-label{font-size:0.9375rem;fill:#495a4e;letter-spacing:.12em}
.direction-active{stroke:#fff4c6!important;stroke-width:2px!important}
.vastu-element-legend{display:flex;justify-content:center;gap:19px;flex-wrap:wrap;padding:8px;flex:none}
.vastu-element-legend>span{font-size:0.75rem;letter-spacing:.1em;text-transform:uppercase;color:#b7c6ae;display:flex;align-items:center;gap:6px}
.vastu-element-legend i{width:7px;height:7px;border-radius:50%;background:#8b8e98}
.vastu-element-legend [data-element="water"] i{background:#5c91a2}.vastu-element-legend [data-element="air"] i{background:#81977b}.vastu-element-legend [data-element="fire"] i{background:#b87561}.vastu-element-legend [data-element="earth"] i{background:#bba068}
/* The orbit is bounded by its column and the viewport, not a fixed pixel radius. */
.numerology-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:clamp(28px,6vw,90px)}
.number-intro{min-width:0}.number-orbit{width:min(100%,370px,42svh);max-width:100%;aspect-ratio:1;margin:32px auto 24px;border:0;box-shadow:none;border-radius:0}
.number-orbit:before{display:none}.number-orbit>svg{display:block;width:100%;height:100%;overflow:visible;color:#a58c68}
.number-orbit-digit{font-family:var(--serif);font-size:28px;fill:#907452;paint-order:stroke;stroke:#efe9dd;stroke-width:14px;stroke-linejoin:round}
.number-orbit-centre{font-family:'Tamil Sangam MN','Noto Sans Tamil',sans-serif;font-size:96px;fill:#74545c}
.number-orbit-caption{font-family:var(--sans);font-size:0.75rem;letter-spacing:2px;fill:#9c8476}
.number-privacy{max-width:360px;margin:auto;font-size:1rem;line-height:1.7}
/* A useful first interaction, rather than a decorative Moon. */
.welcome-hero{position:relative;display:grid;grid-template-columns:1.04fr 1fr;gap:7%;padding:160px 7.2% 110px;background:#10282a;color:#eee6cf;min-height:850px;overflow:hidden}
.welcome-hero:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 82% 22%,#b5a06a12,transparent 53%),repeating-linear-gradient(90deg,transparent 0,transparent 79px,#b9c5aa05 80px)}
.welcome-intro,.welcome-preview{position:relative;z-index:1}
.welcome-intro>.eyebrow{color:#c2ae7f;font-size:0.875rem;letter-spacing:.15em;margin:0 0 26px}
.welcome-intro>.eyebrow [lang="ta"]{font-size:1.125rem;margin-right:8px}
.welcome-hero h1{font-size:clamp(58px,6.4vw,94px);line-height:1.01;font-weight:400;letter-spacing:-.045em;max-width:650px}
.welcome-hero h1 em{color:#c3b482;font-weight:400}
.welcome-lead{font-size:1.125rem;color:#b4c1b7;line-height:1.9;margin:28px 0 30px;max-width:450px}
.welcome-choices{display:flex;flex-direction:column;max-width:440px;border-top:1px solid #b6c6b32b}
.welcome-choices button{display:flex;align-items:center;gap:20px;text-align:left;min-height:69px;padding:13px 8px;border-bottom:1px solid #b6c6b32b;color:#adbbb0;transition:background .2s,color .2s}
.welcome-choices button[aria-selected="true"]{background:#d6c9a00d;color:#f0dfb8;padding-left:15px}
.choice-index{font-size:0.875rem;letter-spacing:.12em;color:#a6a47d}
.welcome-choices button>span:nth-child(2){font-size:17px;display:flex;flex:1;align-items:center;gap:18px}
.welcome-choices small{font-size:1rem;color:#9ead9d}.welcome-choices b{font-size:21px;font-weight:400}
.welcome-note{font-size:0.9375rem;color:#8a9f94;line-height:1.8;margin-top:18px}
.welcome-preview{align-self:center;background:#e8e0cc08;border:1px solid #c7cbb426;max-width:600px;width:100%;padding:24px 30px 30px}
.welcome-preview-top{display:flex;justify-content:space-between;gap:15px;font-size:0.8125rem;letter-spacing:.13em;color:#aaba9f}.welcome-preview-top [lang="ta"]{font-size:1rem;letter-spacing:0}
.welcome-art{height:270px;display:flex;align-items:center;justify-content:center;margin:24px 0;overflow:hidden}
.welcome-art .south-chart{width:260px;height:260px;aspect-ratio:1;background:#e8dfc7;color:#30443b;margin:0;border-color:#c4b58d}
.welcome-art .rasi-cell{padding:4px!important;font-size:9px;min-width:0}.welcome-art .rasi-cell>span{font-size:10px}.welcome-art .rasi-cell>small{font-size:7px}.welcome-art .rasi-centre strong{font-size:18px}.welcome-art .rasi-centre>span{font-size:7px}.welcome-art .rasi-centre>small{font-size:7px}.welcome-art .rasi-kolam{font-size:28px!important}
.welcome-art .vastu-svg{width:100%;height:100%}
.welcome-preview-copy{border-top:1px solid #c7cbb426;padding-top:23px}
.welcome-preview h2{font-size:32px;line-height:1.15;color:#ece1c5;letter-spacing:-.02em}
.welcome-preview p{font-size:1.0625rem;color:#a4b6a9;line-height:1.8;margin:14px 0 22px;min-height:68px}
.welcome-preview .button{font-size:0.9375rem;width:100%;justify-content:space-between}
.welcome-bottom{position:absolute;bottom:28px;left:7.2%;right:7.2%;display:flex;justify-content:space-between;font-size:0.75rem;letter-spacing:.13em;color:#90a396}
.welcome-bottom a{color:#d5c79d;font-size:0.875rem}
.hero-number-art{width:245px;height:245px;border:1px solid #b4ad774d;border-radius:50%;display:grid;grid-template-columns:repeat(3,1fr);place-items:center;padding:25px;position:relative;font-family:var(--serif);color:#d5bd88;font-size:24px}
.hero-number-art strong{font-family:'Tamil Sangam MN','Noto Sans Tamil',sans-serif;font-weight:400;font-size:72px;color:#efe1bc}
@media(max-width:1023px){.welcome-hero{padding:135px 6% 95px;gap:5%;min-height:800px}.welcome-hero h1{font-size:64px}.welcome-preview{padding:22px}.welcome-art{height:230px}.welcome-art .south-chart{height:225px;width:225px}.welcome-choices button>span:nth-child(2){font-size:1.125rem;gap:10px}.welcome-choices small{font-size:0.9375rem}.welcome-preview h2{font-size:28px}.welcome-preview p{font-size:1rem}}
@media(max-width:767px){
 .welcome-hero{grid-template-columns:1fr;gap:30px;padding:110px 6% 75px;min-height:0}
 .welcome-intro>.eyebrow{font-size:0.75rem;margin-bottom:20px}.welcome-hero h1{font-size:clamp(48px,12vw,76px)}
 .welcome-lead{font-size:1.0625rem;margin:20px 0}.welcome-choices{max-width:none;flex-direction:row;border:1px solid #b6c6b32b}
 .welcome-choices button{flex:1;flex-direction:column;gap:6px;min-height:85px;text-align:center;border-bottom:0;border-right:1px solid #b6c6b32b;padding:10px 5px!important}
 .welcome-choices button>span:nth-child(2){display:flex;flex-direction:column;gap:4px}.welcome-choices button>b{display:none}.welcome-choices small{font-size:0.875rem}.welcome-note{font-size:0.875rem}
 .welcome-preview{padding:18px 20px}.welcome-preview article{display:grid;grid-template-columns:100px 1fr;column-gap:20px}
 .welcome-preview-top{grid-column:1/-1;font-size:0.75rem}.welcome-art{height:155px;margin:10px 0}.welcome-art .south-chart{transform:scale(.58);flex:none;height:190px;width:190px}
 .welcome-preview-copy{border:0;padding-top:18px}.welcome-preview h2{font-size:24px}.welcome-preview p{font-size:0.9375rem;line-height:1.65;min-height:0;margin:10px 0 15px}.welcome-preview .button{font-size:0.875rem;padding:12px;gap:7px;white-space:normal}
 .welcome-art-vastu{grid-column:1/-1;height:190px}.welcome-art-vastu+.welcome-preview-copy{grid-column:1/-1;padding-top:0}.hero-number-art{transform:scale(.5);flex:none}
 .welcome-bottom>span:last-child{display:none}.welcome-bottom{bottom:22px;font-size:0.75rem}
 .numerology-section{grid-template-columns:1fr}.number-orbit{width:min(76%,280px);margin:24px auto 20px}.number-privacy{font-size:0.9375rem}
 .vastu-view-toolbar{padding:5px 8px}.vastu-view-toolbar button{font-size:0.8125rem;padding:7px 10px;min-height:32px}.vastu-view-toolbar>span{font-size:0.75rem;letter-spacing:.04em}
 .vastu-element-legend{gap:12px;padding:5px}.vastu-element-legend>span{font-size:0.75rem}.vastu-fixed-compass{font-size:0.8125rem;right:8px;top:6px}.vastu-fixed-compass span{font-size:18px}
 .vastu-navigation nav>button{min-width:102px;padding-bottom:25px;font-size:0.875rem;gap:3px}.vastu-navigation nav>button small{font-size:0.75rem}
 .atlas-top-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px}#atlas-context{font-size:0.75rem}
}
@media(max-width:420px){.welcome-preview article{grid-template-columns:80px 1fr;gap:13px}.welcome-preview h2{font-size:22px}.welcome-preview{padding:17px}.welcome-hero h1{font-size:52px}}
@media(max-height:700px) and (min-width:768px){.number-orbit{width:min(100%,260px)}.vastu-element-legend{padding:4px}.vastu-view-toolbar{padding:4px 8px}}
@media(prefers-reduced-motion:reduce){.welcome-choices button{transition:none}}

/* Readability / viewport / arrival details — one coordinated presentation layer.
   Display headlines are retained. Never scale/zoom the whole application. */
:root{--type-body:1.0625rem;--type-small:.9375rem;--type-meta:.8125rem;--muted:#596762;--atlas-reading:#c6d3cd}
html{font-size:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{font-size:var(--type-body);line-height:1.65}
p{overflow-wrap:break-word}
.button,.button-small,.text-link{font-size:.9375rem;line-height:1.45;min-height:44px;white-space:normal}
.text-button{font-size:.875rem;min-height:44px}
input,select,textarea{font-size:1rem;line-height:1.5;min-height:46px}
textarea{min-height:8rem}
.eyebrow{font-size:.75rem;letter-spacing:.12em;line-height:1.6}
.desktop-nav{font-size:.9375rem;gap:24px;color:#c5d0c8}
.wordmark small{font-size:.6875rem;line-height:1.5;letter-spacing:0}
.preview-chip{font-size:.75rem;opacity:.82}
.header-actions>.preview-chip{color:#bac7bc}
.section-heading>p:last-child,.service-lead,.journal-intro{font-size:1.0625rem;line-height:1.8}
.section-footnote,.field-help,.footer-disclosure{font-size:.875rem;line-height:1.7}
.footer-bottom{font-size:.875rem;flex-wrap:wrap;gap:16px}
.form-grid>*{min-width:0}

/* Header is an overlay, so the hero covers the ENTIRE viewport, not viewport
   minus header. Content can grow at high text zoom instead of being clipped. */
.welcome-hero{
  width:100%;min-width:0;min-height:100vh;min-height:100svh;min-height:100dvh;
  height:auto;max-height:none;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);
  grid-template-rows:1fr auto;align-items:center;column-gap:6%;row-gap:30px;
  padding:clamp(122px,15vh,162px) 7.2% max(24px,env(safe-area-inset-bottom));overflow:clip;
}
.welcome-intro,.welcome-preview{min-width:0}
.welcome-intro>.eyebrow{font-size:.75rem;line-height:1.6;letter-spacing:.12em;margin-bottom:20px}
.welcome-intro>.eyebrow [lang="ta"]{font-size:1rem}
.welcome-hero h1{font-size:clamp(3.5rem,6.2vw,5.875rem);line-height:1.03}
.welcome-lead{font-size:1.125rem;line-height:1.7;max-width:32rem;margin:24px 0;color:#c3cfc3}
.welcome-choices{max-width:30rem}
.welcome-choices button{min-height:64px;gap:16px;color:#c4d0c4}
.welcome-choices button>span:nth-child(2){font-size:1.125rem;gap:16px}
.welcome-choices .eyebrow{font-size:.75rem}
.welcome-choices small{font-size:.875rem;line-height:1.6;color:#b0c1af}
.welcome-note{font-size:.875rem;line-height:1.65;color:#b0c1b5;margin-top:16px}
.welcome-preview{padding:26px 28px;align-self:center;max-width:640px}
.welcome-preview-top{font-size:.75rem;line-height:1.6;letter-spacing:.08em;color:#bdcdb4;align-items:center}
.welcome-preview-top [lang="ta"]{font-size:.875rem}
.welcome-art{height:260px;margin:22px 0}
.welcome-preview h2{font-size:2.125rem;line-height:1.18}
.welcome-preview p{font-size:1rem;line-height:1.7;margin:16px 0 22px;min-height:0;color:#bfcec1}
.welcome-preview .button{font-size:.9375rem;min-height:50px}
.welcome-bottom{position:relative;inset:auto;grid-column:1/-1;align-self:end;flex-wrap:wrap;gap:14px;font-size:.6875rem;line-height:1.6;letter-spacing:.08em;color:#afc0b2}
.welcome-bottom a{font-size:.8125rem}

/* Atlas controls retain their exact measured dots, with reading-size labels. */
.atlas-section .atlas-stage{height:100svh;min-height:0;--atlas-top:238px;--atlas-bottom:216px}
.atlas-topline{top:18px;left:3%;right:3%;gap:20px;align-items:center}
.atlas-topline>.eyebrow{font-size:.75rem;letter-spacing:.12em;white-space:normal}
.atlas-top-actions{gap:20px;flex-wrap:wrap;justify-content:flex-end}
.atlas-tool,#atlas-context{font-size:.875rem;min-height:44px;white-space:normal}
.atlas-title{top:86px}
.atlas-title>p{font-size:.75rem;letter-spacing:.16em;margin-bottom:8px}
.atlas-title h2{font-size:clamp(2.75rem,4.8vw,4.5rem)}
.atlas-subline{font-size:1rem;line-height:1.6;gap:12px;margin-top:10px;color:#c4d0c8}
.atlas-subline>[lang="ta"]{font-size:1rem;color:#d7c194}
.atlas-clock{top:205px;right:4.5%;display:flex;align-items:center;gap:14px;text-align:right;flex-wrap:wrap;justify-content:flex-end}
.atlas-live-label{font-size:.6875rem;letter-spacing:.06em;color:#d1dacb}
.atlas-clock>time{font-size:.8125rem;color:#b9c9c7;margin:0}
.atlas-clock button{font-size:.8125rem;padding:0 8px;min-height:36px;color:#d6bf8f}
.atlas-scene-note{font-size:.75rem;bottom:calc(var(--atlas-bottom) + 8px);left:3%;color:#a9bcb8}
.atlas-about{font-size:.875rem;left:3%;right:auto;bottom:calc(var(--atlas-bottom) + 46px)}
.atlas-about>summary{min-height:44px}
.atlas-about[open]{left:3%;right:auto;bottom:calc(var(--atlas-bottom) + 12px);max-height:calc(100% - var(--atlas-top) - var(--atlas-bottom) - 12px);width:400px;z-index:8}
.atlas-about p{font-size:.9375rem;line-height:1.7;color:#d0dad3}
.atlas-about .atlas-reflection-label{font-size:.75rem}
.atlas-section[data-details="open"] .atlas-about,.atlas-section[data-details="opening"] .atlas-about{visibility:hidden;pointer-events:none}
.atlas-section .atlas-controls{left:3%;right:3%;bottom:16px}
.atlas-control-top{margin-bottom:8px;gap:16px}
.atlas-control-top .journey-hint{font-size:.6875rem;line-height:1.5;letter-spacing:.08em;color:#b7c6bd}
.atlas-control-actions{display:flex;align-items:center;gap:24px}
.atlas-control-actions .text-button{font-size:.8125rem;min-height:44px;color:#d1d8c7;gap:8px}
.atlas-control-actions .text-button:disabled{display:none}
.atlas-control-actions #atlas-details-toggle[aria-expanded="true"]{color:#ead4a2}
.atlas-section .planet-stop{min-width:70px;gap:8px;padding:8px 3px 28px!important;justify-content:flex-start}
.atlas-section .planet-stop>span:not(.planet-dot){font-size:.875rem;line-height:1.5;color:#b8c9c5}
.atlas-section .planet-stop>small{font-size:.8125rem;line-height:1.6;color:#a6bcb7;white-space:nowrap}
.atlas-section .planet-stop.is-active>span:not(.planet-dot),.atlas-section .planet-stop.is-active>small{color:#ecd7a3}
.atlas-section .planet-dot{width:30px;height:30px;margin:5px 0 3px}
.atlas-section .journey-caption{font-size:.6875rem;line-height:1.5;color:#a8bab4;letter-spacing:.05em;margin-top:10px}
.atlas-section .stop-dot{width:7px;height:7px}

/* Non-modal reading sheet. It never captures focus on auto-open, never blocks
   the planet rail, and contains its own scrolling instead of moving the story. */
.planet-details{position:absolute;z-index:7;display:flex;flex-direction:column;overflow:hidden;
  border:1px solid #6d817766;border-radius:12px;background:#11242bf5;backdrop-filter:blur(16px);
  box-shadow:0 20px 65px #0003;color:#ede6d4;opacity:0;transform:translateY(24px);contain:layout;
  overscroll-behavior:contain;touch-action:pan-y;will-change:opacity,transform}
.planet-details[hidden]{display:none!important}
.planet-details-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 22px 14px;border-bottom:1px solid #7b8b7740;flex:none}
.planet-details-kicker{display:block;font-size:.6875rem;line-height:1.5;letter-spacing:.12em;color:#a6c0b0;margin-bottom:6px}
.planet-details-header h3{font-size:2rem;line-height:1.1;letter-spacing:-.02em;color:#f4e6c6}
.planet-details-header [lang="ta"]{display:inline-block;font-size:.875rem;line-height:1.6;color:#cdbb8d;margin-top:5px}
.planet-details-header .icon-button{flex:none;margin:-8px -10px 0 0;color:#d7dfce}
.planet-details-header .icon-button:hover{background:#72897624}
.planet-details-body{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#738478 transparent;padding:18px 22px 22px;touch-action:pan-y;outline-offset:-4px}
.planet-details-theme{font-size:1rem;font-weight:500;line-height:1.5;color:#e0d2b4;margin-bottom:15px}
.planet-details-label{font-size:.6875rem;letter-spacing:.10em;line-height:1.5;color:#9eb5a6;margin-bottom:9px}
#planet-detail-copy{font-size:1rem;line-height:1.7;color:#d1ded4}
.planet-details-reflection{padding:16px 0 0;margin:17px 0 0;border-top:1px solid #78908036}
.planet-details-reflection>span{display:block;font-size:.8125rem;line-height:1.5;color:#cbb98d;margin-bottom:8px}
#planet-question{font-family:var(--serif);font-size:1.375rem;line-height:1.35;color:#f0dfbe;letter-spacing:-.01em}
.planet-details-disclosure{font-size:.8125rem;line-height:1.7;color:#a6bbae;margin-top:18px}
.planet-details[data-layout="bottom"]{border-radius:14px 14px 10px 10px}
.planet-details[data-layout="bottom"] .planet-details-header{padding:12px 16px 10px;align-items:center}
.planet-details[data-layout="bottom"] .planet-details-header>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.planet-details[data-layout="bottom"] .planet-details-kicker{width:100%;margin-bottom:1px}
.planet-details[data-layout="bottom"] h3{font-size:1.5rem}
.planet-details[data-layout="bottom"] [lang="ta"]{margin-top:0}
.planet-details[data-layout="bottom"] .planet-details-body{padding:14px 16px 18px}
.planet-details[data-layout="bottom"] .planet-details-theme{margin-bottom:10px}

@media(max-width:1279px){
  .header-actions>.preview-chip{display:none}.desktop-nav{gap:18px;margin-right:8px}
  .welcome-hero{column-gap:5%;padding-left:6%;padding-right:6%}
  .welcome-preview{padding:22px}.welcome-art{height:240px}.welcome-art .south-chart{width:232px;height:232px}
  .atlas-top-actions{gap:14px}.atlas-topline>.eyebrow{max-width:205px}
}
@media(max-width:1023px){
  .atlas-section .atlas-stage{--atlas-top:242px;--atlas-bottom:212px}
  .atlas-section .planet-stop{min-width:0}.atlas-section .planet-nav{--atlas-item:calc((100vw - 128px)/5)}
  .atlas-clock{left:24px;right:24px;top:198px;justify-content:center;gap:8px 14px}
  .atlas-about{left:24px;bottom:calc(var(--atlas-bottom) + 8px)}.atlas-scene-note{display:none}
  .atlas-section .atlas-controls{left:20px;right:20px}
  .welcome-hero h1{font-size:clamp(3.25rem,6vw,4.5rem)}
}
@media(max-width:767px){
  body{font-size:1rem}.site-header{height:90px;padding-inline:6%}.wordmark small{font-size:.625rem}
  .welcome-hero{min-height:100vh;min-height:100dvh;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr;row-gap:26px;padding:114px 6% 22px}
  .welcome-hero h1{font-size:clamp(2.875rem,11vw,4.5rem);max-width:30rem;line-height:1.04}
  .welcome-intro>.eyebrow{font-size:.6875rem;line-height:1.6;letter-spacing:.08em;margin-bottom:20px}
  .welcome-intro>.eyebrow [lang="ta"]{font-size:.9375rem}
  .welcome-lead{font-size:1rem;line-height:1.7;margin:20px 0}
  .welcome-choices{max-width:none}.welcome-choices button{min-height:86px;padding:12px 5px!important;gap:5px}
  .welcome-choices button>span:nth-child(2){font-size:1rem;gap:3px}.welcome-choices small{font-size:.8125rem;line-height:1.65}
  .welcome-note{font-size:.8125rem;margin-top:14px;line-height:1.65}
  .welcome-preview{padding:18px;max-width:none}.welcome-preview article{display:block}
  .welcome-preview-top{font-size:.6875rem;line-height:1.6}.welcome-preview-top [lang="ta"]{font-size:.8125rem}
  .welcome-art{height:150px;margin:14px 0}.welcome-art .south-chart{height:190px;width:190px;transform:scale(.75)}
  .welcome-art-vastu{height:180px}.welcome-preview-copy{padding-top:14px;border-top:1px solid #b6c6b32b}
  .welcome-preview h2{font-size:1.75rem}.welcome-preview p{font-size:1rem;line-height:1.7;margin:12px 0 18px}
  .welcome-preview .button{font-size:.9375rem;min-height:48px;padding:12px 16px}
  .welcome-bottom{grid-column:auto;position:relative;inset:auto;gap:12px;line-height:1.7;font-size:.625rem;margin-top:2px}
  .welcome-bottom a{font-size:.75rem}
  .atlas-section .atlas-stage{--atlas-top:218px;--atlas-bottom:190px}
  .atlas-topline{top:10px;left:16px;right:16px;align-items:flex-start;gap:12px}
  .atlas-topline>.eyebrow{font-size:.625rem;letter-spacing:.04em;max-width:110px;line-height:1.6;margin-top:10px}
  .atlas-top-actions{flex-wrap:nowrap;gap:8px;align-items:center}
  .atlas-tool,#atlas-context{font-size:.75rem;line-height:1.5;min-height:44px}
  #atlas-context{max-width:105px;text-align:left}
  .atlas-top-actions #atlas-overview>span,.atlas-top-actions [data-open-rasi]>span{display:none}
  .atlas-top-actions [data-open-rasi]{min-width:28px;justify-content:center}
  .atlas-title{top:73px;left:16px;right:16px}.atlas-title>p{font-size:.625rem;letter-spacing:.08em;margin-bottom:6px}
  .atlas-title h2{font-size:2.75rem}.atlas-subline{font-size:.875rem;line-height:1.6;gap:5px 9px;margin-top:7px}
  .atlas-subline>[lang="ta"]{font-size:.9375rem}
  .atlas-clock{top:177px;left:16px;right:16px;gap:6px 10px;justify-content:center}
  .atlas-clock>time{font-size:.6875rem}.atlas-live-label{font-size:.625rem;letter-spacing:.02em}
  .atlas-clock button{font-size:.6875rem;min-height:32px;padding-inline:4px}
  .atlas-about{left:16px;bottom:calc(var(--atlas-bottom) + 4px);font-size:.8125rem}
  .atlas-about[open]{left:16px;width:calc(100% - 32px);bottom:calc(var(--atlas-bottom) + 4px);padding:12px 16px}
  .atlas-about p{font-size:.9375rem;line-height:1.65}
  .atlas-section .atlas-controls{left:0;right:0;bottom:max(12px,env(safe-area-inset-bottom))}
  .atlas-control-top{margin:0 16px 4px;gap:12px}.atlas-control-top .journey-hint{font-size:.625rem;line-height:1.5;max-width:125px;letter-spacing:.03em}
  .atlas-control-actions{gap:14px}.atlas-control-actions .text-button{font-size:.75rem;line-height:1.5;min-height:40px}
  .atlas-control-actions .icon{display:none}
  .atlas-section .planet-nav{--atlas-item:calc((100vw - 96px)/3);padding-block:4px 10px}
  .atlas-section .planet-stop{padding:4px 2px 24px!important;gap:4px;min-width:0}
  .atlas-section .planet-stop>span:not(.planet-dot){font-size:.8125rem;line-height:1.5}
  .atlas-section .planet-stop>small{font-size:.75rem;line-height:1.65}
  .atlas-section .planet-dot{width:27px;height:27px;margin:3px 0 2px}
  .atlas-section .journey-caption{font-size:.625rem;margin:7px 16px 0;line-height:1.5;letter-spacing:0}
  .footer-bottom{flex-direction:column;align-items:flex-start}
  .settings-list>div{flex-wrap:wrap;gap:16px}.settings-list>div>span{min-width:0}
}
@media(min-width:480px) and (max-width:767px){.atlas-section .planet-nav{--atlas-item:calc((100vw - 96px)/5)}}
@media(max-height:740px) and (max-width:767px){
  .atlas-section .atlas-stage{--atlas-top:190px;--atlas-bottom:178px}
  .atlas-title{top:64px}.atlas-title h2{font-size:2.375rem}.atlas-title>p{display:none}
  .atlas-subline{font-size:.8125rem;margin-top:6px}.atlas-clock{top:146px}
  .atlas-section .planet-dot{width:24px;height:24px;margin-block:1px}.atlas-section .journey-caption{display:none}
  .atlas-control-top .journey-hint{max-width:100px}.atlas-control-actions{gap:10px}
}
@media(max-height:600px){
  .atlas-section .atlas-stage{--atlas-top:164px;--atlas-bottom:164px}
  .atlas-title{top:58px}.atlas-title h2{font-size:2.125rem}.atlas-title>p{display:none}
  .atlas-subline{font-size:.8125rem;margin-top:3px}.atlas-clock{top:125px}
  .atlas-control-top{margin-bottom:0}.atlas-section .planet-dot{width:22px;height:22px;margin-block:0}
  .atlas-section .planet-stop{gap:3px}.atlas-section .journey-caption{display:none}
  .atlas-control-actions .text-button{min-height:36px}
}
@media(max-height:520px) and (min-width:640px){
  .atlas-section .atlas-stage{--atlas-top:130px;--atlas-bottom:140px}
  .atlas-title{top:52px;right:45%;left:3%;text-align:left}.atlas-title h2{font-size:1.875rem}
  .atlas-subline{justify-content:flex-start;font-size:.75rem}.atlas-clock{top:83px;left:58%;right:3%;justify-content:flex-end}
  .atlas-topline>.eyebrow{font-size:.625rem}.atlas-tool,#atlas-context{font-size:.75rem;min-height:40px}
  .atlas-section .planet-stop>small{display:none}.atlas-section .planet-stop{padding-bottom:20px!important}
  .planet-details-header{padding:10px 16px}.planet-details-header h3{font-size:1.5rem}
  .planet-details-header [lang="ta"]{display:none}.planet-details-header .planet-details-kicker{margin-bottom:3px;font-size:.625rem}
  .planet-details-body{padding:12px 16px}.atlas-scene-note{display:none}
}
@media(prefers-reduced-motion:reduce){.planet-details{will-change:auto}}

/* Preserve the home-plan canvas when larger interface text wraps on phones.
   Remove duplicate decorative captions, not reading-size explanations. */
.vastu-story,.planet-details-body{overscroll-behavior:contain}
@media(max-width:767px){
 .vastu-stage{padding:18px 5% 12px;min-height:0;height:100svh}
 .vastu-heading{position:relative;display:block;flex:none;margin-bottom:14px;min-height:0}
 .vastu-heading .eyebrow{padding-right:85px;font-size:.6875rem;line-height:1.6;letter-spacing:.06em;margin-bottom:9px}
 .vastu-heading .eyebrow [lang="ta"]{font-size:.875rem}
 .vastu-heading :is(h1,h2){font-size:1.875rem;line-height:1.08;max-width:100%}
 .vastu-heading-note{position:absolute;right:0;top:0;max-width:85px}
 .vastu-heading-note .text-link{font-size:.75rem;line-height:1.4;min-height:30px;padding:4px 0;white-space:nowrap;gap:5px}
 .vastu-content{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(240px,1.5fr) minmax(142px,.85fr);gap:12px;min-height:0;flex:1}
 .vastu-scene{min-height:0;flex:none}.vastu-scene .plan-topline,.vastu-scene .vastu-bottomline{display:none}
 .vastu-view-toolbar{padding:6px 8px;gap:6px;justify-content:center}
 .vastu-view-toolbar>span{display:none}.vastu-view-toolbar button{font-size:.8125rem;line-height:1.5;min-height:36px;flex:1;white-space:nowrap;padding:7px 12px}
 .vastu-viewport{min-height:120px}.vastu-element-legend{padding:6px;gap:10px;flex-wrap:nowrap;justify-content:center}
 .vastu-element-legend>span{font-size:.625rem;letter-spacing:.04em;gap:4px;white-space:nowrap}
 .vastu-element-legend i{width:6px;height:6px}
 .vastu-story{flex:none;min-height:0;max-height:none;padding:14px 16px;overflow:auto}
 .vastu-story-top{margin-bottom:7px}.vastu-story-top .eyebrow,.vastu-story-top>span:last-child{font-size:.6875rem;letter-spacing:.06em}
 .vastu-story h3{font-size:1.5rem;line-height:1.15;margin-bottom:12px}.vastu-tamil{font-size:.875rem;line-height:1.6}
 .vastu-story>p{font-size:1rem;line-height:1.7}.vastu-guidance p,.vastu-practical p{font-size:.9375rem;line-height:1.7}
 .vastu-navigation{padding-top:12px;gap:7px}.vastu-navigation nav>button{font-size:.8125rem;padding:8px 3px 24px;min-width:calc(100% / 3);gap:4px}
 .vastu-disclaimer{font-size:.6875rem;line-height:1.6;padding-top:8px}
 .vastu-reduced .vastu-stage{height:auto;min-height:800px}.vastu-reduced .vastu-content{grid-template-rows:320px minmax(200px,auto);min-height:0}
}
@media(max-width:767px) and (max-height:740px){
 .vastu-stage{padding-top:12px;padding-bottom:8px}.vastu-heading{margin-bottom:10px}
 .vastu-heading :is(h1,h2){font-size:1.625rem}.vastu-heading .eyebrow{font-size:.625rem;margin-bottom:6px}
 .vastu-content{grid-template-rows:minmax(180px,1.25fr) minmax(115px,.8fr);gap:10px}
 .vastu-story{padding:10px 13px}.vastu-story h3{font-size:1.375rem;margin-bottom:8px}
 .vastu-navigation{padding-top:8px}.vastu-disclaimer{padding-top:6px;font-size:.625rem}
 .vastu-view-toolbar{padding:4px 6px}.vastu-view-toolbar button{min-height:34px;padding:6px 10px}
}
@media(min-width:640px) and (max-height:520px){
 .vastu-stage{padding:12px 3% 8px;min-height:0}.vastu-heading{margin-bottom:10px;min-height:0;display:block;position:relative}
 .vastu-heading :is(h1,h2){font-size:1.625rem}.vastu-heading :is(h1,h2) br{display:none}
 .vastu-heading .eyebrow{font-size:.6875rem;margin-bottom:6px}.vastu-heading-note{display:none}
 .vastu-content{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:12px;min-height:0}
 .vastu-scene{min-height:0}.vastu-scene .plan-topline,.vastu-scene .vastu-bottomline{display:none}
 .vastu-viewport{min-height:80px}.vastu-view-toolbar>span{display:none}
 .vastu-story{min-height:0;max-height:none;padding:12px 14px}.vastu-story>p{font-size:1rem}
 .vastu-navigation{padding-top:8px}.vastu-navigation nav>button{min-width:100px;font-size:.8125rem;padding-top:5px;padding-bottom:22px}
 .vastu-disclaimer{font-size:.625rem;padding-top:6px}
}

/* 1.5 — Celestial welcome. The service tours keep their established motion contracts. */
.services-landing{scroll-margin-top:0;position:relative}.services-landing .intro-ribbon{margin:0}
.welcome-hero.celestial-welcome{isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(265px,1fr) auto auto;gap:16px;min-height:100vh;min-height:100dvh;padding:125px 6% 24px;background:#071b23;color:#efe9da;overflow:hidden}
.celestial-welcome::before{display:none}.welcome-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 30%,#27787955,transparent 47%),linear-gradient(180deg,#06171b,#0c2630 65%,#081b24)}
.welcome-nebula{position:absolute;inset:0;background-image:linear-gradient(180deg,#08202777,#051920aa 65%,#071c24),url('welcome-cosmos.webp');background-size:cover;background-position:center;opacity:.72}
.welcome-starfield{position:absolute;inset:0;opacity:.55;background-image:radial-gradient(1px 1px at 22px 30px,#e4dcc0 70%,transparent),radial-gradient(1px 1px at 96px 72px,#adcacc 70%,transparent),radial-gradient(1.5px 1.5px at 170px 30px,#e6cf9a 70%,transparent);background-size:257px 173px,197px 231px,617px 367px}
.welcome-horizon{position:absolute;width:120%;height:72%;left:-10%;bottom:-44%;border-radius:50%;border-top:1px solid #8ec4bb55;background:radial-gradient(ellipse at 50% 0,#3b808655,#0c283122 50%,transparent);box-shadow:0 -16px 100px #6cc1b733,0 -1px 20px #d2ece144}
.sky-heading{text-align:center;position:relative;z-index:2;max-width:1050px;margin:0 auto}
.sky-heading>.eyebrow{display:flex;gap:13px;align-items:center;justify-content:center;color:#d7c28a;font-size:.78rem;letter-spacing:.17em;margin:0 0 15px}.sky-heading>.eyebrow i{height:1px;width:26px;background:#c9b48066}.sky-heading>.eyebrow [lang=ta]{font-size:1rem;letter-spacing:.02em}
.celestial-welcome .sky-heading h1{max-width:none;font-size:clamp(3.4rem,5.8vw,5.5rem);line-height:1.01;letter-spacing:-.04em}.celestial-welcome .sky-heading h1 em{color:#dec992;font-weight:400}.celestial-welcome .welcome-lead{color:#bfcfce;font-size:1.125rem;line-height:1.65;max-width:none;margin:19px 0 0}.phone-only{display:none}
.welcome-sky{width:100%;max-width:1320px;margin:auto;min-height:265px;height:100%;position:relative;isolation:isolate}
.sky-orbit-line{position:absolute;inset:4% 0 0;width:100%;height:94%;fill:none;stroke:#d9c083;stroke-width:.65;opacity:.35;pointer-events:none}.sky-orbit-line path+path{opacity:.2}
#welcome-particles{position:absolute;inset:0;z-index:4;width:100%;height:100%;pointer-events:none}
.sky-selection{position:absolute;top:0;left:25%;right:25%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;z-index:3;pointer-events:none}.sky-selection-kicker{font-size:.63rem;letter-spacing:.15em;color:#9caeaa}.sky-selection strong{font-weight:400;font-size:1.48rem;color:#eee1bd;line-height:1.4}.sky-selection>span:last-child{font-size:.83rem;color:#b3c6c5}
.welcome-planets{position:absolute;inset:0 0 42px;z-index:2}.welcome-planet{position:absolute;left:var(--px);top:calc(var(--py) + 12%);transform:translate(-50%,-35%);display:flex;align-items:center;flex-direction:column;width:max(105px,var(--body-size));min-height:44px;gap:0;border-radius:12px;isolation:isolate;--orb-opacity:1;color:#d4ddd7}
.welcome-orb{height:var(--body-size);width:var(--body-size);position:relative;display:block;margin-bottom:12px;transition:filter .3s;filter:drop-shadow(0 9px 18px #0008)}.welcome-orb img{width:100%;height:100%;display:block;border-radius:50%;object-fit:contain;opacity:var(--orb-opacity);position:absolute;inset:0}.welcome-glyph{position:absolute;inset:0;display:grid;place-items:center;opacity:0;font:calc(var(--body-size)*.88)/1 Georgia,serif;color:#f0d69e;text-shadow:0 0 25px #e2bc6055;pointer-events:none}
.planet-sun .welcome-orb{filter:drop-shadow(0 0 24px #dfac6666)}.planet-saturn .welcome-orb::after{content:'';position:absolute;left:-25%;top:38%;width:145%;height:30%;border:4px double #baae8b88;border-radius:50%;transform:rotate(-24deg);opacity:var(--orb-opacity);pointer-events:none}
.welcome-planet:hover .welcome-orb{filter:drop-shadow(0 0 17px #cbb67b66)}.welcome-planet:focus-visible{outline-color:#eed194;outline-offset:8px}.welcome-body-name{font-size:.88rem;line-height:1.5}.welcome-body-tamil{font-size:.78rem;line-height:1.5;color:#93acae}.welcome-planet.is-selected .welcome-body-name{color:#e8cc8e}
.sky-tools{position:absolute;bottom:0;inset-inline:0;display:flex;align-items:center;justify-content:center;gap:24px;z-index:4;min-height:32px}.sky-tools>button{font-size:.8rem;min-height:36px;color:#d3c79e;padding:4px 9px}.sky-tools>span{font-size:.75rem;color:#91adaa}.sky-tools .motion-toggle{border:0;background:none;letter-spacing:0;font-size:.75rem;white-space:nowrap}
.welcome-birth-panel{position:relative;z-index:3;width:100%;max-width:1290px;margin:10px auto 0;padding:21px 26px 16px;background:#092027d9;border:1px solid #b3bfa730;border-radius:5px;box-shadow:0 10px 50px #0002;backdrop-filter:blur(12px)}
.welcome-form-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:17px}.welcome-form-heading .eyebrow{font-size:.65rem;letter-spacing:.17em;color:#b6bdab;margin-bottom:6px}.welcome-form-heading h2{font-size:1.9rem;letter-spacing:-.02em}.welcome-form-heading>p{font-size:.875rem;color:#a9bdbb;text-align:right;line-height:1.5}
.sky-fields{display:grid;grid-template-columns:1.2fr 1fr .95fr 1.2fr .72fr;align-items:start;gap:18px}.sky-field{min-width:0}.sky-field>label{display:flex;justify-content:space-between;gap:8px;font-size:.875rem;color:#d5ddd6;line-height:1.4;margin-bottom:9px}.sky-field>label>span{font-size:.75rem;color:#90a8a7}
.sky-field input:not([type=checkbox]){color-scheme:dark;font-size:16px;line-height:1.4;color:#f0e9dc;border:1px solid #9bb2ad55;background:#091b2199;padding:12px 13px;height:48px;width:100%;min-width:0;border-radius:3px}.sky-field input::placeholder{color:#91a7a7}.sky-field input:focus{outline-color:#d8c28d;border-color:#d8c28d}.sky-field input:disabled{opacity:.4}.sky-field .sky-unknown{display:flex;justify-content:start;align-items:center;gap:7px;font-size:.72rem;color:#a9bdb8;margin:6px 0 0}.sky-unknown input{margin:0;width:14px;height:14px;accent-color:#d6bf8c}
.sky-fields .sky-reveal{min-height:48px;margin-top:29px;gap:16px;white-space:nowrap;padding:12px 20px}.sky-form-foot{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:9px;color:#93aaa6;font-size:.74rem;line-height:1.5}.sky-form-foot button{font-size:.74rem;min-height:30px;text-decoration:underline;text-underline-offset:4px;flex-shrink:0;color:#c7cdbe}.sky-error{display:block;color:#ffbaa6;font-size:.8rem;line-height:1.45;margin-top:6px}.sky-error:empty{display:none}.sky-field input[aria-invalid=true]{border-color:#e6987e}
.celestial-welcome .welcome-bottom{position:relative;inset:auto;grid-column:1;align-self:end;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 0 0;margin:0;z-index:3;font-size:.82rem;color:#bbc6bb;min-height:40px}.welcome-bottom .welcome-explore{display:flex;align-items:center;gap:18px;min-height:40px;color:#e1d1a6}.celestial-welcome .welcome-bottom nav{display:flex;gap:20px;align-items:center}.celestial-welcome .welcome-bottom nav a{font-size:.8rem;color:#bdc8bb}.celestial-welcome .welcome-bottom nav a span{font-size:.75rem;opacity:.8;padding-left:6px}.celestial-welcome .welcome-bottom nav i{font-style:normal;color:#bca46d}
/* Contact step is explicit about the preview boundary. No remote delivery is implied. */
.welcome-contact{width:min(680px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 40px);padding:38px;background:var(--paper);color:var(--ink);border:1px solid #ccc5b5;border-radius:7px;overflow:auto;overscroll-behavior:contain}.welcome-contact::backdrop{background:#00171dd9;backdrop-filter:blur(7px)}.welcome-contact .close-dialog{position:absolute;right:13px;top:13px;font-size:28px}.welcome-contact>.eyebrow{font-size:.7rem;max-width:90%;margin-bottom:18px;color:#7b775f}.welcome-contact h2{font-size:3rem;line-height:1.02;margin:0 0 18px}.welcome-contact h2 em{color:#7d836a}.welcome-contact>p:not(.eyebrow){font-size:1rem;line-height:1.6}.contact-birth-summary{padding:14px 0;margin:19px 0 22px;border-block:1px solid #d5d2c5}.contact-birth-summary summary{cursor:pointer;font-size:.9375rem}.contact-birth-summary summary span{float:right;font-size:.75rem;color:#73806e}.contact-birth-summary dl,#contact-review-values{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px;font-size:.9rem;margin:15px 0 0}.contact-birth-summary dt,#contact-review-values dt{color:#7a8277}.contact-birth-summary dd,#contact-review-values dd{margin:0;overflow-wrap:anywhere}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.contact-fields .field{min-width:0}.contact-fields .field label{font-size:.9rem}.contact-fields input,.contact-fields select{font-size:16px}.contact-local-note{font-size:.8rem;text-align:center;margin-top:12px}.welcome-contact>#contact-back{margin-top:18px;font-size:.9rem}.contact-review-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}#contact-review h3{font-size:2rem;margin:12px 0 20px}#contact-review>p{font-size:.95rem;line-height:1.6;margin-top:22px}
/* Three complete lines at normal desktop widths; wrap naturally at text zoom. */
.birth-section{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,7vw,112px);align-items:stretch}.birth-intro{display:flex;flex-direction:column;min-width:0}.birth-intro>p.birth-summary{width:100%;max-width:none;font-size:1.125rem;line-height:1.65;margin-top:24px}.birth-summary>span{display:block}.birth-chart-art{width:100%;max-width:none;margin:25px 0 0;flex:1;display:flex;flex-direction:column;justify-content:center;min-width:0}.birth-chart-art .south-chart{width:100%;max-width:none;margin:0;flex:none}.birth-chart-art .chart-tag{margin-top:15px}.birth-form-wrap{max-width:none;align-self:start}
@media(min-width:1600px){.welcome-hero.celestial-welcome{padding-inline:8%;padding-top:145px}.welcome-sky{min-height:310px}.sky-selection{top:12px}.welcome-planet{--body-scale:1.15}.welcome-orb{width:calc(var(--body-size)*1.15);height:calc(var(--body-size)*1.15)}}
@media(min-width:768px) and (max-height:850px){.welcome-hero.celestial-welcome{padding-top:108px;gap:10px}.celestial-welcome .sky-heading h1{font-size:clamp(3.4rem,5vw,4.5rem)}.sky-heading>.eyebrow{margin-bottom:10px}.celestial-welcome .welcome-lead{margin-top:12px}.welcome-sky{min-height:260px}.welcome-birth-panel{margin-top:0;padding-block:16px 10px}.welcome-form-heading h2{font-size:1.65rem}.welcome-form-heading{margin-bottom:12px}.welcome-orb{width:calc(var(--body-size)*.9);height:calc(var(--body-size)*.9)}}
@media(max-width:1100px) and (min-width:768px){.sky-fields{grid-template-columns:1fr 1fr 1fr 1fr;gap:14px}.sky-fields .sky-reveal{grid-column:1/-1;margin:4px auto 0;min-width:180px}.welcome-hero.celestial-welcome{padding-inline:5%}.welcome-bottom nav a span{display:none!important}.welcome-planet{width:90px}.welcome-orb{width:calc(var(--body-size)*.8);height:calc(var(--body-size)*.8)}.sky-selection{left:20%;right:20%}.birth-section{padding-inline:6%}}
@media(max-width:767px){.welcome-hero.celestial-welcome{padding:112px 5% 22px;grid-template-rows:auto 300px auto auto;gap:24px;min-height:100dvh}.celestial-welcome .sky-heading h1{font-size:clamp(3rem,10vw,4.1rem)}.sky-heading>.eyebrow{font-size:.57rem;gap:8px;letter-spacing:.13em;margin-bottom:17px}.sky-heading>.eyebrow [lang=ta]{font-size:.86rem}.sky-heading>.eyebrow i{width:16px}.celestial-welcome .welcome-lead{font-size:1rem;line-height:1.6;margin-top:18px}.phone-only{display:block}.welcome-sky{min-height:300px;width:calc(100% + 10vw);margin-left:-5vw}.sky-selection{left:10%;right:10%;top:0}.sky-selection strong{font-size:1.5rem}.sky-selection-kicker{font-size:.58rem}.sky-selection>span:last-child{font-size:.85rem}.sky-orbit-line{height:62%;top:43px;opacity:.2}.welcome-planets{display:flex;align-items:center;gap:30px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;inset:80px 0 54px;padding:0 calc(50% - 50px);scroll-behavior:smooth;overscroll-behavior-x:contain;touch-action:pan-x pan-y}.welcome-planets::-webkit-scrollbar{display:none}.welcome-planet{position:relative;left:auto;top:auto;transform:none;flex:0 0 100px;width:100px;scroll-snap-align:center;padding-block:8px}.welcome-orb{width:75px;height:75px;margin-bottom:9px}.planet-sun .welcome-orb{width:87px;height:87px}.welcome-glyph{font-size:72px}.welcome-body-name{font-size:.9375rem}.welcome-body-tamil{font-size:.8rem}.sky-tools{flex-wrap:wrap;gap:0 17px;bottom:0;padding:0 15px}.sky-tools>span{order:3;flex-basis:100%;text-align:center;font-size:.72rem}.sky-tools>button{font-size:.8rem}.welcome-birth-panel{padding:22px 20px 16px;margin-top:0;background:#091f26eb}.welcome-form-heading{display:block;margin-bottom:21px}.welcome-form-heading h2{font-size:1.9rem}.welcome-form-heading>.eyebrow{font-size:.65rem}.welcome-form-heading>p{font-size:.85rem;text-align:left;margin-top:10px}.welcome-form-heading>p br{display:none}.sky-fields{grid-template-columns:1fr 1fr;gap:18px 15px}.sky-field>label{font-size:.875rem}.sky-field input:not([type=checkbox]){height:49px}.sky-fields .sky-reveal{grid-column:1/-1;margin-top:1px}.sky-form-foot{flex-direction:column;align-items:flex-start;gap:4px;margin-top:14px;font-size:.77rem}.sky-form-foot button{align-self:flex-end;font-size:.77rem}.celestial-welcome .welcome-bottom{flex-direction:column;align-items:center;text-align:center;padding:0;gap:10px;font-size:.85rem}.celestial-welcome .welcome-bottom nav{gap:13px;flex-wrap:wrap;justify-content:center}.celestial-welcome .welcome-bottom nav a{font-size:.8rem}.celestial-welcome .welcome-bottom nav a span{display:none}.welcome-horizon{bottom:1%;height:58%;width:250%;left:-75%;opacity:.5}.welcome-contact{padding:29px 23px;max-height:calc(100dvh - 24px)}.welcome-contact h2{font-size:2.5rem}.contact-fields{grid-template-columns:1fr;gap:0}.birth-section{grid-template-columns:1fr;gap:35px}.birth-intro>p.birth-summary{font-size:1rem;line-height:1.65}.birth-chart-art{max-width:460px;width:100%;margin:24px auto 0}.birth-chart-art .south-chart{max-width:none}}
@media(max-width:430px){.sky-fields{grid-template-columns:1fr}.sky-fields .sky-reveal{grid-column:1}.sky-form-foot{font-size:.75rem}.sky-field .sky-unknown{font-size:.8rem}.welcome-birth-panel{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){.welcome-planets{scroll-behavior:auto}.welcome-orb{transition:none}}.reduced-motion .welcome-planets{scroll-behavior:auto}
/* Fit the first desktop viewport without squeezing reading text or controls. */
@media(min-width:768px){.welcome-hero.celestial-welcome{padding-top:116px;gap:14px}.celestial-welcome .sky-heading h1{font-size:clamp(3.4rem,4.8vw,4.75rem)}.welcome-birth-panel{margin-top:0;padding:16px 26px 14px}.welcome-form-heading{margin-bottom:12px}.welcome-form-heading h2{font-size:1.75rem}.welcome-planets{bottom:64px}.welcome-planet{transform:translate(-50%,-45%)}.sky-selection-kicker{display:none}.sky-selection strong{font-size:1.3rem;line-height:1.3}.sky-selection>span:last-child{font-size:.83rem;line-height:1.4}}
.sky-unknown input[type=checkbox]{width:14px;height:14px;min-height:14px;max-height:14px}
/* Decorative horizon overflow must not enlarge or clip the content's scroll box. */
.welcome-atmosphere{overflow:hidden}
/* Let the celestial stage grow with user-selected text size. */
@media(min-width:768px){.welcome-hero.celestial-welcome{grid-template-rows:auto minmax(16.5625rem,1fr) auto auto}.welcome-sky{min-height:16.5625rem}}
@media(max-width:767px){.welcome-hero.celestial-welcome{grid-template-rows:auto minmax(18.75rem,auto) auto auto}.welcome-sky{min-height:18.75rem}}

/* 1.5.1 — complete Navagraha welcome; flat form and one-colour vector reveals. */
.celestial-welcome { --hero-neon:#c45cff; }
.celestial-welcome .welcome-birth-panel {
 background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;
 margin:0 auto;padding:12px 0 0;
}
.celestial-welcome .sky-fields {gap:clamp(12px,1.6vw,24px)}
.celestial-welcome .sky-field input:not([type=checkbox]) {
 border:0;border-bottom:1px solid #a9c0bc77;border-radius:0;background:transparent;
 box-shadow:none;padding-inline:0;
}
.celestial-welcome .sky-field input:not([type=checkbox]):focus {
 border-bottom-color:#e0ca94;outline:2px solid #e0ca9499;outline-offset:5px;
}
.celestial-welcome .sky-field input[aria-invalid=true] {border-bottom-color:#ffbaa6}
.celestial-welcome .sky-reveal {border-radius:0;box-shadow:none}
.celestial-welcome .sky-form-foot {font-size:.875rem;gap:16px;margin-top:13px;color:#bdceca}
.celestial-welcome .sky-form-foot>span {display:block;line-height:1.6}
.celestial-welcome .sky-form-foot button {font-size:.8125rem;min-height:36px}
.celestial-welcome .welcome-planets {bottom:0}
.celestial-welcome .welcome-planet {width:96px;border-radius:0;background:none;border:0;box-shadow:none}
.celestial-welcome .welcome-glyph {font:inherit;color:var(--hero-neon);text-shadow:none;background:transparent;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 0 6px #c45cff55)}
.welcome-glyph svg {display:block;width:100%;height:100%;overflow:visible}
.welcome-node-art {position:absolute;inset:0;opacity:var(--orb-opacity)}
.welcome-node-art svg {display:block;width:100%;height:100%;overflow:visible}
.welcome-node-art .node-disc {fill:#17212b;stroke:#b6ad9066;stroke-width:1}
.welcome-node-art .node-orbit {fill:none;stroke:#b5bcad;stroke-width:1.2;opacity:.6}
.welcome-node-art .node-mark {fill:none;stroke:#d6caa5;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.node-ketu .node-disc {fill:#263331}
.celestial-welcome .welcome-planet.is-selected .welcome-orb {filter:none}
.celestial-welcome .welcome-planet.is-selected .welcome-body-name {color:#e1baff}
.celestial-welcome .welcome-planet:focus-visible {outline:2px solid var(--hero-neon);outline-offset:6px}
.celestial-welcome .sky-selection strong {color:#e3c5f5}
@media(min-width:768px){
 .celestial-welcome .welcome-planet {top:calc(var(--py) + 6%);transform:translate(-50%,-15%)}
 .celestial-welcome .sky-orbit-line {inset:10% 0 0;height:80%}
 .celestial-welcome .welcome-sky {min-height:19rem}
 .welcome-hero.celestial-welcome {grid-template-rows:auto minmax(19rem,1fr) auto auto}
}
@media(min-width:768px) and (max-width:1100px){
 .celestial-welcome .welcome-planet {width:72px}
 .celestial-welcome .welcome-body-name {font-size:.8125rem}
 .celestial-welcome .welcome-body-tamil {font-size:.75rem}
 .celestial-welcome .welcome-orb {width:calc(var(--body-size)*.76);height:calc(var(--body-size)*.76)}
}
@media(max-width:767px){
 .welcome-hero.celestial-welcome {gap:22px;grid-template-rows:auto minmax(20rem,auto) auto auto}
 .celestial-welcome .welcome-sky {min-height:20rem}
 .celestial-welcome .welcome-planets {
  inset:62px 0 0;align-items:flex-start;padding-block:80px 16px;
  padding-inline:calc(50% - 50px);gap:32px;scroll-behavior:auto;
  -webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;
 }
 .celestial-welcome .welcome-planet {
  position:relative;left:auto;top:auto;flex:0 0 100px;width:100px;
  transform:translateY(var(--arc-y,0px));padding:8px 0;will-change:transform;
 }
 .celestial-welcome .welcome-orb {width:80px;height:80px;margin-bottom:9px}
 .celestial-welcome .planet-sun .welcome-orb {width:92px;height:92px}
 .celestial-welcome .sky-orbit-line {inset:0;width:100%;height:100%;opacity:.35}
 .celestial-welcome .welcome-birth-panel {padding:0}
 .celestial-welcome .sky-form-foot {font-size:clamp(.75rem,3.35vw,.875rem);gap:0;align-items:center}
 .celestial-welcome .sky-form-foot>span {max-width:100%}
 .celestial-welcome .sky-form-foot button {align-self:flex-end}
}
/* Keep existing secondary sections inside the viewport at small widths/text zoom. */
@media(max-width:767px){
 .numerology-section{grid-template-columns:minmax(0,1fr)}
 .number-intro,.numerology-lab{min-width:0;max-width:100%}
 .number-lab-heading{flex-wrap:wrap}
 .number-lab-heading .pill{white-space:normal;max-width:100%}
 .intro-ribbon>span,.intro-ribbon>div{min-width:0;max-width:100%;white-space:normal;flex-wrap:wrap}
 .number-privacy{max-width:100%}
 .number-actions .button{max-width:100%;white-space:normal}
}
@media(max-width:767px){
 .number-empty{grid-template-columns:repeat(3,minmax(0,1fr))}
 .number-empty>span{overflow-wrap:anywhere}
 .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-top .wordmark{max-width:100%;width:auto}
 .footer-top .wordmark>span{min-width:0}
 .footer-top .wordmark small{white-space:normal;overflow-wrap:anywhere}
 .footer-service-links{min-width:0;max-width:100%;overflow-wrap:anywhere}
}

/* 1.6 — Twelve original Rasi medallions. A moving purple dash traces the
   outer ring, inner ring and illustrative contour: no sprite, emoji or burst. */
.zodiac-welcome .welcome-atmosphere{background:radial-gradient(ellipse at 50% 35%,#561a763e,transparent 60%),linear-gradient(#090f20,#151028 60%,#0b1822)}
.zodiac-welcome .welcome-nebula{background-image:linear-gradient(180deg,#170b2b99,#140c2599 65%,#091722),url('welcome-cosmos.webp');opacity:.72}
.zodiac-welcome .welcome-horizon{opacity:.3;background:radial-gradient(ellipse at 50% 0,#703b9d33,transparent 70%)}
.zodiac-welcome .welcome-sky{min-height:19.5rem}
.welcome-hero.zodiac-welcome{grid-template-rows:auto minmax(19.5rem,1fr) auto auto}
.zodiac-arc-line{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.25;fill:none;stroke:#c45cff;stroke-width:.7}
.welcome-zodiacs{position:absolute;inset:0 0 2.5rem;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:4px;padding:1.75rem 0 2.5rem}
.welcome-rasi{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:start;gap:3px;min-width:0;width:100%;padding:0 0 8px;border:0;background:none;color:#e3ccec;transform:translateY(var(--rasi-lift));border-radius:0;cursor:pointer}
.welcome-rasi:focus-visible{outline:2px solid #c45cff;outline-offset:4px;border-radius:3px}
.rasi-medal-wrap{display:block;width:100%;max-width:116px;aspect-ratio:1;position:relative;margin-bottom:3px}
.rasi-medallion{display:block;width:100%;height:100%;overflow:visible;color:#c45cff;pointer-events:none}
.medal-disc{fill:#180e26e3}
.medal-rings{fill:none;stroke:#c45cff;opacity:.52}
.medal-ring-glyphs{fill:none;stroke:#c45cff;opacity:.74;stroke-linecap:round;stroke-linejoin:round}
.medal-filigree{fill:#c45cff;opacity:.6}
.medal-figure{fill:#c45cff29;stroke:#d397f2;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.medal-fibre{fill:none;stroke:#c45cff;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:12 88;filter:drop-shadow(0 0 3px #c45cff) drop-shadow(0 0 1px #c45cff);opacity:.95}
.medal-fibre.inner{stroke-width:2.8;stroke-dasharray:16 84}
.medal-fibre.figure{stroke-width:2.4;stroke-dasharray:20 80;filter:drop-shadow(0 0 2px #c45cff)}
.welcome-rasi:is(:hover,.is-selected) .medal-rings{opacity:.95}
.welcome-rasi:is(:hover,.is-selected) .medal-figure{stroke:#e2b4f8;fill:#c45cff29}
.rasi-name-tamil{font-size:.875rem;line-height:1.6;color:#e7cff1;font-weight:400;max-width:100%;overflow-wrap:anywhere}
.rasi-name-english{font-size:.8125rem;line-height:1.6;color:#ad9cb8;max-width:100%;overflow-wrap:anywhere}
.welcome-rasi.is-selected .rasi-name-english{color:#dbc3eb}
.zodiac-selection{position:absolute;bottom:0;left:5%;right:5%;display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:center;align-items:center;text-align:center;color:#c2a4d4;font-size:.875rem;line-height:1.7;min-height:30px}
.zodiac-selection [lang=ta]{color:#ddbaee}.zodiac-selection i{font-style:normal;font-size:.9rem;color:#a76fbe}
.zodiac-welcome[data-fibre-motion="reduced"] .medal-fibre{stroke-dasharray:none;opacity:.25;filter:none}
@media(min-width:1800px){.zodiac-welcome .rasi-medal-wrap{max-width:132px}.zodiac-welcome .welcome-sky{min-height:21rem}}
@media(max-width:1099px){
 .welcome-hero.zodiac-welcome{grid-template-rows:auto minmax(22rem,auto) auto auto}
 .zodiac-welcome .welcome-sky{min-height:22rem;width:calc(100% + 12vw);margin-left:-6vw}
 .welcome-zodiacs{display:flex;inset:0 0 2.25rem;gap:24px;align-items:flex-start;padding:6.25rem calc(50% - 63px) 3rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}
 .welcome-zodiacs::-webkit-scrollbar{display:none}
 .welcome-rasi{flex:0 0 126px;width:126px;scroll-snap-align:center;transform:translateY(var(--mobile-rasi-lift,0px))}
 .rasi-medal-wrap{max-width:126px}.rasi-name-tamil{font-size:1rem}.rasi-name-english{font-size:.875rem}
 .zodiac-arc-line{opacity:.13}.zodiac-selection{font-size:.875rem;left:6%;right:6%}
}
@media(max-width:767px){
 .zodiac-welcome .welcome-sky{width:calc(100% + 10vw);margin-left:-5vw}
 .welcome-hero.zodiac-welcome{padding-top:112px;row-gap:20px}
 .zodiac-welcome .welcome-birth-panel{margin-top:0}
}
@media(prefers-reduced-motion:reduce){.medal-fibre{stroke-dasharray:none;opacity:.25;filter:none}}

/* The right column starts alongside the central eyebrow. Its clock has its
   own row and the card uses the remaining height, rather than a 440px cap. */
@media(min-width:1000px){
 .atlas-title{left:4.5%;right:calc(4.5% + min(410px,29vw) + 28px);top:86px;text-align:center}
 .atlas-clock{top:86px;left:auto;right:4.5%;width:min(410px,max(300px,29vw));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;align-items:start;text-align:left;justify-content:initial}
 .atlas-clock .atlas-live-label{grid-column:1;grid-row:1;min-height:18px;display:flex;align-items:center;justify-content:flex-start;font-size:.75rem}
 .atlas-clock>time{grid-column:1;grid-row:2;line-height:1.6;font-size:.8125rem}
 .atlas-clock>div{grid-column:2;grid-row:1/3;display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;gap:2px}
 .atlas-clock button{padding:0;min-height:28px;font-size:.8125rem}
 .atlas-clock #atlas-pause{padding-inline-start:10px}
}
.planet-details-close{position:absolute;right:12px;top:12px;z-index:2;width:40px;height:40px;min-height:40px;color:#d7dfce;background:transparent}
.planet-details-close:hover{background:#72897624}
.planet-details-body{flex:1;padding:26px 24px;min-height:0}
.planet-details-body .planet-details-label{padding-right:44px;line-height:1.7;font-size:.75rem;letter-spacing:.1em;margin:0 0 16px}
#planet-detail-copy{font-size:1.0625rem;line-height:1.8}
.planet-details-reflection{padding-top:22px;margin-top:24px}
.planet-details-reflection>span{font-size:.875rem;margin-bottom:12px}
#planet-question{font-size:1.75rem;line-height:1.4}
.planet-details-disclosure{font-size:.8125rem;margin-top:26px;line-height:1.7}
.planet-details[data-layout="bottom"] .planet-details-body{padding:18px 20px}
.planet-details[data-layout="bottom"] .planet-details-body .planet-details-label{font-size:.6875rem;margin-bottom:8px}
.planet-details[data-layout="bottom"] #planet-detail-copy{font-size:1rem;line-height:1.65}
.planet-details[data-layout="bottom"] .planet-details-reflection{padding-top:12px;margin-top:12px}
.planet-details[data-layout="bottom"] #planet-question{font-size:1.375rem;line-height:1.4}
.planet-details[data-layout="bottom"] .planet-details-disclosure{margin-top:14px;font-size:.75rem}
@media(max-height:600px){
 .planet-details-body{padding:16px 20px}.planet-details-body .planet-details-label{margin-bottom:10px}
 .planet-details-reflection{padding-top:12px;margin-top:16px}#planet-question{font-size:1.375rem}
}
@media(min-width:1000px) and (max-height:600px){
 .atlas-title{top:64px}.atlas-clock{top:64px}
}
/* Keyboard focus follows the circular artwork rather than adding an icon tile. */
.welcome-rasi:focus-visible{outline:none}
.welcome-rasi:focus-visible .rasi-medal-wrap{outline:2px solid #c45cff;outline-offset:4px;border-radius:50%}

/* 1.6.1 — Edited composition: actual approved art, aligned columns, quiet footnotes. */
.rasi-approved-image{filter:brightness(1.35) drop-shadow(0 0 1px #c45cff99)}
.rasi-approved-art .medal-fibre.figure{stroke:#c45cff;stroke-width:5;stroke-dasharray:18 82;filter:drop-shadow(0 0 2px #c45cff);fill:none}
.zodiac-welcome[data-fibre-motion="reduced"] .medal-fibre{opacity:0!important}
.welcome-rasi:focus-visible .rasi-medal-wrap{border-radius:0}
.welcome-rasi.is-selected .rasi-approved-image{filter:brightness(1.4) drop-shadow(0 0 2px #c45cff)}
.birth-section{align-items:start}
.birth-intro{height:var(--birth-column-height,auto);min-height:0}
.birth-chart-art{flex:none;justify-content:flex-end;align-self:center;max-width:100%;width:var(--birth-chart-size,100%);margin:24px 0 0}
.birth-chart-art .south-chart{width:100%;aspect-ratio:1;max-width:none;margin:0}
@media(min-width:801px){.birth-chart-art{margin-top:auto;padding-top:0}.birth-intro h2{margin-bottom:24px}}
.service-disclaimer,.service-fineprint,.form-disclosure,.number-disclaimer,.planet-details-disclosure{font-size:.8125rem;line-height:1.65;letter-spacing:0;font-weight:400}
.vastu-story{display:flex;flex-direction:column}
.vastu-story> *{flex-shrink:0}
.vastu-column-disclaimer{margin-top:auto;padding-top:16px;color:#626c5a;border-top:1px solid #b6b39c55}
.vastu-column-disclaimer p{font-size:inherit;line-height:inherit;margin:0}
.vastu-column-disclaimer a{display:inline-block;margin-top:5px;color:#665735;text-decoration:underline;text-underline-offset:3px}
.vastu-practical{margin-bottom:20px}
.service-fineprint,.number-disclaimer,.form-disclosure{border-top:1px solid #b6b39c55;padding-top:14px}
.planet-details-body{display:flex;flex-direction:column}
.planet-details-body> *{flex-shrink:0}
.planet-details-disclosure{margin-top:auto;padding-top:20px;color:#a9b9ae}
.atlas-method-footnote{font-size:.75rem;line-height:1.5;color:#a5b1ae;text-align:right;letter-spacing:0}
.atlas-method-footnote a{color:inherit;text-decoration:underline;text-underline-offset:2px}
@media(max-width:800px){.birth-intro{height:auto}.birth-chart-art{width:100%;max-width:460px;margin:24px auto 0}.vastu-column-disclaimer{font-size:.75rem;padding-top:10px}.vastu-practical{margin-bottom:12px}.atlas-method-footnote{font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){.rasi-approved-art .medal-fibre{opacity:0!important;animation:none!important}}
@media(max-width:800px){.birth-section{grid-template-columns:1fr;gap:35px}}

/* 1.7 — considered service footer, consultation access, and nested scrolling.
   Internal Vastu reading remains scrollable; only boundary input reaches page. */
.vastu-story{overscroll-behavior-y:auto;overscroll-behavior-x:contain;touch-action:pan-y;scrollbar-gutter:stable}
.vastu-story:focus-visible{outline:2px solid #c1ad80;outline-offset:-3px}
.vastu-column-disclaimer{margin-top:auto}

.curated-footer{--footer-gold:#cfbc91;position:relative;isolation:isolate;overflow:hidden;
 background:radial-gradient(ellipse at 93% 2%,#31453d66,transparent 42%),linear-gradient(125deg,#102c29,#0b1c23);
 color:#dedbcf;padding:76px max(5%,24px) 30px;border-top:1px solid #b3a17d45}
.curated-footer a,.curated-footer button{color:inherit}
.footer-constellation{position:absolute;z-index:-1;right:-100px;top:-150px;width:450px;height:450px;opacity:.035;pointer-events:none;color:var(--footer-gold);transform:rotate(20deg)}
.footer-constellation svg{width:100%;height:100%}
.footer-columns{position:relative;display:grid;grid-template-columns:1.35fr .7fr .9fr 1.15fr;gap:clamp(24px,4vw,80px);padding-bottom:58px}
.footer-brand .wordmark{width:fit-content;color:#efe6d3}
.footer-brand .wordmark>span{font-size:2rem}
.footer-brand .wordmark .brand-mark{width:47px;height:47px;color:var(--footer-gold)}
.footer-brand .wordmark small{color:#c1bfaa;font-size:.75rem}
.footer-tagline{font-size:.8125rem;letter-spacing:.08em;line-height:1.7;margin:22px 0 18px;color:var(--footer-gold)}
.footer-brand-copy{font-size:1rem;line-height:1.9;color:#b9c4bd;max-width:31ch}
.footer-socials{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.footer-socials a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #bbad8b50;border-radius:50%;color:#e2cfaa;background:#9cab9608;transition:background .2s,transform .2s,border-color .2s}
.footer-socials svg{width:21px;height:21px}
.footer-socials a:hover{background:#dac49719;border-color:var(--footer-gold);transform:translateY(-3px)}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:15px;min-width:0;padding-top:8px}
.footer-column h2{font-family:var(--sans);font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.17em;color:var(--footer-gold);margin:0 0 13px;line-height:1.4}
.footer-column>a{font-size:1rem;line-height:1.7;text-decoration:none;transition:color .2s;text-underline-offset:5px}
.footer-column>a:hover{color:#f7e2b3;text-decoration:underline}
.footer-contact>a.footer-email{font-size:1.0625rem;overflow-wrap:anywhere}
.footer-contact p{font-size:.9375rem;line-height:1.9;color:#b9c4bd;margin:4px 0 5px}
.footer-contact .footer-contact-link{color:var(--footer-gold);display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid #c5ad7750;padding:6px 0}
.footer-placeholder-note{font-size:.75rem;line-height:1.7;color:#9fafa6;margin-top:2px}
.curated-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px;padding:25px 0;border-top:1px solid #b6bc9e30;color:#b9c4bd;font-size:.8125rem}
.curated-footer .footer-bottom nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.curated-footer .footer-bottom .motion-toggle{font-size:.8125rem}
.footer-tamil{color:#c2b691;letter-spacing:.04em}
.curated-footer .footer-disclosure{display:block;width:100%;max-width:none;font-size:.8125rem;line-height:1.9;color:#acb9b0;margin:0;border-top:1px solid #b6bc9e20;padding-top:22px}
.curated-footer a:focus-visible,.curated-footer button:focus-visible{outline:2px solid #dcc290;outline-offset:6px}

/* A gentle theme-based moving highlight, not a flashing badge or bouncing ad. */
.consultation-float{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom));z-index:40;
 display:inline-flex;gap:14px;align-items:center;min-height:62px;padding:12px 19px;color:#f4ecd9;background:#183a34;
 border:1px solid #cbb482;box-shadow:0 5px 24px #061b2440;border-radius:4px;isolation:isolate;overflow:hidden;text-decoration:none}
.consultation-float[hidden]{display:none!important}
.consultation-float:before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#f3dea62e 48%,transparent 73%);transform:translateX(-150%);animation:consultation-sheen 8s ease-in-out infinite;pointer-events:none}
.consultation-spark{width:27px;height:27px;color:#d6bf8e;display:block}
.consultation-spark svg{width:100%;height:100%}
.consultation-label{font-size:.9375rem;letter-spacing:.02em;line-height:1.35}
.consultation-label small{display:block;color:#c8c5b5;font-size:.6875rem;line-height:1.5;margin-top:2px}
.consultation-float>span:last-child{font-size:1.4rem;color:#d6bf8e}
.consultation-float:hover{background:#24483e;border-color:#eddbad}
.consultation-float:focus-visible{outline:3px solid #be92ed;outline-offset:4px}
.consultation-float[data-motion="paused"]:before{animation-play-state:paused}
@keyframes consultation-sheen{0%,55%{transform:translateX(-150%)}80%,100%{transform:translateX(150%)}}
.tour-consultation{display:inline-flex;align-items:center;gap:9px;border:1px solid #b7a37380;background:#d8c39212;color:#e1d4b3!important;
 font-size:.8125rem;line-height:1.4;white-space:nowrap;min-height:36px;padding:7px 12px;border-radius:3px}
.tour-consultation:hover{background:#d8c39226;border-color:#d5c18d}
.vastu-heading-note{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.vastu-heading-note>span{display:none}
.vastu-heading-note .tour-consultation{margin-bottom:4px}
.number-lab-heading{justify-content:flex-start}

.editorial-page{background:var(--paper);min-height:75vh}
.editorial-intro{max-width:1300px;margin:0 auto;padding:80px max(5%,24px) 105px}
.editorial-intro>.eyebrow{color:#82734e;margin-bottom:26px}
.editorial-intro h1{font-size:clamp(2.75rem,5.5vw,5.3rem);line-height:1.1;letter-spacing:-.03em;margin-bottom:30px}
.editorial-intro h1 em{color:#778265}
.editorial-intro>.lead{max-width:66ch;font-size:1.125rem;line-height:1.85;color:#5c6e66}
.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:55px 0}
.editorial-grid article{border-top:1px solid #c1baa7;padding:24px 0}
.editorial-grid article>span{font-size:.75rem;letter-spacing:.13em;color:#8d7957}
.editorial-grid h2{font-size:2rem;margin:20px 0 14px}
.editorial-grid p{font-size:1rem;line-height:1.8;margin-bottom:25px}
.editorial-grid a{font-size:.9375rem;text-decoration:underline;text-underline-offset:5px}
.editorial-empty{border-top:1px solid #d3cebd;margin-top:45px;padding-top:35px;max-width:760px}
.editorial-empty>svg,.social-page-icon svg{width:44px;height:44px;color:#938158;margin-bottom:20px}
.editorial-empty h2{font-size:2.2rem;line-height:1.25;margin-bottom:18px}
.editorial-empty p{font-size:1.0625rem;line-height:1.9;max-width:60ch;margin-bottom:30px}
.contact-page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin:32px 0}
.editorial-contact-details{border-top:1px solid #d3cebd;margin-top:46px;padding-top:30px;max-width:680px}
.editorial-contact-details p{line-height:1.9;margin:14px 0}
.editorial-contact-details small{display:block;font-size:.875rem;line-height:1.8;color:#677465}
.contact-birth-summary[hidden]{display:none!important}
.contact-local-note{margin-top:18px}
.welcome-contact .contact-review-actions{flex-wrap:wrap}

@media(max-width:1100px){
 .footer-columns{grid-template-columns:1.3fr 1fr;gap:42px 70px}
 .footer-brand{grid-row:span 2}
 .footer-contact{grid-column:2}
 .atlas-topline{gap:12px}
 .atlas-top-actions{gap:10px;flex-wrap:wrap;justify-content:flex-end}
}
@media(max-width:767px){
 .curated-footer{padding:48px 24px 112px}
 .footer-columns{grid-template-columns:1fr 1fr;gap:35px 20px;padding-bottom:35px}
 .footer-brand{grid-column:1/-1;grid-row:auto}
 .footer-brand-copy{max-width:36ch}
 .footer-brand-copy br{display:none}
 .footer-contact{grid-column:1/-1;padding-top:10px}
 .footer-column{gap:13px}
 .footer-column h2{margin-bottom:6px}
 .footer-contact p{margin:4px 0}
 .curated-footer .footer-bottom{align-items:flex-start;gap:20px}
 .footer-tamil{margin-left:auto}
 .curated-footer .footer-bottom nav{width:100%;gap:22px}
 .curated-footer .footer-disclosure{font-size:.8125rem;line-height:1.85}
 .consultation-float{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));min-height:52px;gap:11px;padding:10px 14px}
 .consultation-label{font-size:.875rem}.consultation-spark{width:24px;height:24px}
 .consultation-label small{display:none}
 html[data-page="app"] .consultation-float{bottom:calc(82px + env(safe-area-inset-bottom))}
 .atlas-topline{align-items:flex-start;gap:6px}
 .atlas-top-actions{gap:6px;max-width:72%;justify-content:flex-end}
 .atlas-top-actions .tour-consultation{min-height:30px;padding:5px 8px;font-size:.75rem}
 .vastu-heading-note{display:flex;position:absolute;top:0;right:0;max-width:132px;gap:4px}
 .vastu-heading-note .tour-consultation{font-size:.75rem;min-height:30px;padding:5px 8px}
 .vastu-heading .eyebrow{padding-right:138px}
 .vastu-heading h2,.vastu-heading h1{padding-right:0}
 .vastu-heading-note>.text-link{margin-top:0}
 .editorial-intro{padding:52px 24px 80px}
 .editorial-grid{grid-template-columns:1fr;gap:12px;margin:35px 0}
 .editorial-empty h2{font-size:1.8rem}
}
@media(max-width:767px) and (max-height:660px){
 .vastu-heading-note{position:static;display:flex;flex-direction:row;max-width:none;justify-content:space-between;margin-top:9px}
 .vastu-heading .eyebrow{padding-right:0}
 .vastu-heading-note .tour-consultation{margin:0}
}
@media(prefers-reduced-motion:reduce){.consultation-float:before{animation:none}.footer-socials a{transition:none}}
.reduced-motion .consultation-float:before{animation:none}
.reduced-motion .footer-socials a{transition:none}
.welcome-contact #contact-privacy{margin-bottom:24px;line-height:1.75}
@media(max-width:767px){.curated-footer .footer-tamil{margin-left:0;width:100%}}
