@font-face{font-family:CinzelDecorative;src:url('./assets/cinzel-decorative.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:TamilSerif;src:url('./assets/tamil-serif.ttf') format('truetype');font-weight:400;font-display:swap}
[hidden]{display:none!important}
[lang=ta]{font-family:TamilSerif,serif;letter-spacing:normal!important}
h1{font-family:CinzelDecorative,Georgia,serif;font-size:clamp(64px,7.5vw,128px);letter-spacing:-.055em}
.wordmark{font-family:CinzelDecorative,Georgia,serif;font-size:25px;letter-spacing:-.04em}
.journey{position:relative;background:#060a0e;color:#e9e0ce;isolation:isolate;overflow:clip}
.journey a{color:inherit;text-underline-offset:5px}
.journey button{background:none;border:0}
.journey button,.journey a{touch-action:manipulation}
.journey ::selection{background:#b096654f;color:#ffe9b8}
#journey-stars{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1;opacity:.8}
.journey-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:70;background:#dcb57a0c}
.journey-progress span{display:block;width:100%;height:100%;background:#d6b27b;transform:scaleX(0);transform-origin:left;box-shadow:0 0 10px #d6b27b70}
.journey-header{position:fixed;top:0;left:0;right:0;z-index:60;height:91px;padding:0 var(--page-gutter);display:flex;align-items:center;justify-content:space-between;gap:26px;background:linear-gradient(#060a0ff5,#060a0fdb 55%,#060a0f00)}
.journey-brand{font-family:CinzelDecorative,Georgia,serif;font-size:23px;letter-spacing:-.045em;padding:12px 0;color:#e0c59e}.journey-brand span{color:#b3874d}
.journey-nav{display:flex;gap:32px;margin-left:50px}.journey-nav a{text-decoration:none;font-size:13px;color:#aeb3ab;transition:color .3s}.journey-nav a:hover{color:#edc38c}
.journey-controls{display:flex;align-items:center;gap:22px}.quiet-control{color:#b7b7ac;font-size:12px;min-height:44px;padding:10px 0;white-space:nowrap;letter-spacing:.02em}.quiet-control:hover{color:#f5d3a0}.sound-symbol{font-size:22px;color:#d6b27b;margin-right:5px;vertical-align:middle}.quiet-control[aria-pressed=true] .sound-symbol{animation:sound-pulse 4s ease-in-out infinite}
.temple-atlas{position:relative;background:radial-gradient(ellipse at 78% 15%,#23474515,transparent 35%),linear-gradient(90deg,#060a0e00,#16252b17)}
.atlas-stage{position:sticky;top:0;height:100svh;min-height:620px;margin-bottom:-100svh;pointer-events:none;z-index:3;overflow:clip}
.temple-viewport{position:absolute;top:9%;left:34%;width:66%;height:86%;opacity:1;transition:opacity .5s}
.temple-viewport canvas{display:block;width:100%;height:100%;outline:0}
.model-fallback{position:absolute;left:50%;top:50%;width:min(75%,350px);transform:translate(-50%,-50%);font-family:Cormorant,serif;font-size:24px;line-height:1.5;text-align:center;color:#c6b591}
.model-caption{position:absolute;right:var(--page-gutter);bottom:8%;text-align:right;max-width:300px}.model-kicker{font-size:10px;letter-spacing:.25em;color:#8c9a9a}.model-caption p{font-family:Cormorant,serif;font-size:24px;margin:8px 0 3px;color:#e0c19c}.model-caption small{font-size:11px;color:#6e807e;letter-spacing:.04em}
.atlas-compass{position:absolute;right:var(--page-gutter);top:24%;display:flex;flex-direction:column;align-items:center;gap:7px;color:#89968d;font-size:10px}.atlas-compass i{display:block;height:58px;width:1px;background:linear-gradient(#b9a074,#b9a07400);position:relative}.atlas-compass i:before{content:'';position:absolute;top:0;left:-3px;width:7px;height:7px;border-left:1px solid #b9a074;border-top:1px solid #b9a074;rotate:45deg}
.chapter-rail{position:absolute;bottom:20px;left:var(--page-gutter);display:flex;gap:20px;pointer-events:auto;padding:3px 12px;margin-left:-12px;background:#060a0ed6;border-radius:3px}.chapter-rail a{font-size:12px;color:#87918a;text-decoration:none;padding:10px 2px;position:relative;transition:color .5s;min-height:40px}.chapter-rail a:after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;transform:scaleX(0);background:#d9b57a;transition:transform .4s}.chapter-rail a[aria-current=step]{color:#dfc39a}.chapter-rail a[aria-current=step]:after{transform:scaleX(1)}
.chapter{position:relative;z-index:2;min-height:112svh;display:flex;align-items:center;padding:135px var(--page-gutter) 126px;scroll-margin-top:0;pointer-events:none}
.chapter-copy{width:39%;max-width:515px;transform:translateY(var(--copy-drift,0px));pointer-events:auto;transition:opacity .7s}
.chapter-eyebrow{color:#bb9c70;font-size:11px;letter-spacing:.24em;line-height:1.9;margin:0 0 23px;font-weight:400}
.chapter-tamil{font-size:14px;line-height:2;color:#778c89;letter-spacing:.035em;margin:0 0 17px}
.chapter h2,.find-thillai h2{font-family:CinzelDecorative,Georgia,serif;font-size:clamp(36px,3.55vw,61px);font-weight:400;line-height:1.23;letter-spacing:-.045em;margin:0 0 27px;text-wrap:balance}
.chapter h2 em,.find-thillai h2 em{font-family:Cormorant,Georgia,serif;font-size:1.23em;font-weight:400;letter-spacing:-.035em;color:#d9b887;line-height:.9}
.chapter-copy>p:not([class]){font-size:14px;line-height:1.95;color:#97a5a5;max-width:425px;margin:0 0 20px;text-wrap:pretty}
.chapter-lead{font-family:Cormorant,Georgia,serif;font-size:clamp(23px,1.75vw,29px);line-height:1.4;color:#cbd0c6;max-width:430px;margin:0 0 22px;text-wrap:pretty}
.history-line{list-style:none;margin:28px 0 26px;padding:0 0 0 17px;border-left:1px solid #9e805440}.history-line li{margin:0 0 17px;position:relative}.history-line li:before{content:'';position:absolute;left:-20px;top:5px;width:5px;height:5px;border-radius:50%;background:#b99561}.history-line span{font-size:10px;letter-spacing:.13em;color:#c1a780}.history-line p{font-size:12px;margin:5px 0;color:#7c9292;line-height:1.7}
.scroll-invitation{display:inline-flex;align-items:center;gap:13px;font-size:12px;letter-spacing:.04em;text-decoration:none;color:#baa480!important;padding:12px 0}.scroll-stroke{height:27px;width:1px;background:linear-gradient(#bda070,transparent);animation:scroll-line 2.4s ease-in-out infinite}
.chapter-note{display:flex;gap:21px;align-items:center;margin:30px 0}.chapter-note>span{font-family:Cormorant,serif;font-size:72px;color:#c0a071;line-height:1}.chapter-note p{font-size:12px;line-height:1.8;color:#97a2a0;margin:0}
.small-aside{font-size:11px!important;line-height:1.9;color:#6f8686;max-width:380px;margin:27px 0 0}
.paired-notes{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:30px 0;border-top:1px solid #c6a87929;padding-top:20px}.paired-notes span{font-size:10px;letter-spacing:.15em;color:#bd9e71}.paired-notes p{font-family:Cormorant,serif;font-size:20px;color:#a4b1a9;line-height:1.4;margin:10px 0 0}
.space-word{font-family:TamilSerif,serif;color:#ceaf7b;font-size:55px;line-height:2;margin-top:25px}.space-word span{font-family:Manrope,sans-serif;font-size:10px;letter-spacing:.38em;margin-left:20px;color:#849790;vertical-align:middle}
.chapter-footnote{border-top:1px solid #c6a87929;margin-top:33px;padding-top:20px;font-size:10px;letter-spacing:.14em;color:#c5a37a;line-height:2.2}.chapter-footnote span{color:#879a98;font-family:Cormorant,serif;font-size:19px;letter-spacing:0;margin:0 10px}
.text-link{display:inline-block;font-size:13px;letter-spacing:.025em;color:#d5b787!important;text-decoration:none!important;border-bottom:1px solid #c0a37766!important;padding:10px 0;line-height:1.6}.text-link:hover{color:#ffe1ac!important;border-color:#ffe1ac!important}
.reflection{position:relative;min-height:100svh;padding:170px 25px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;isolation:isolate;overflow:clip;background:radial-gradient(ellipse at center,#19333642,transparent 59%)}
.reflection-orbit{position:absolute;z-index:-1;left:50%;top:50%;width:min(72vw,760px);aspect-ratio:1;border:1px solid #c4a27824;border-radius:50%;transform:translate(-50%,-50%) rotate(-35deg) scaleY(.6);box-shadow:0 0 100px #bf9e5e06,inset 0 0 100px #bf9e5e05}
.reflection-orbit:after{content:'';position:absolute;inset:18%;border:1px solid #c4a27818;border-radius:50%}
.reflection blockquote{font-family:CinzelDecorative,Georgia,serif;font-size:clamp(37px,5.1vw,83px);font-weight:400;letter-spacing:-.05em;line-height:1.15;margin:20px 0 25px}.reflection blockquote em{font-family:Cormorant,serif;font-size:1.3em;color:#dcbb88;font-weight:400;line-height:1}.reflection blockquote>span{display:block;font-family:Cormorant,serif;font-size:.52em;letter-spacing:0;line-height:1.5;color:#aebcb6;margin-top:30px}.reflection-tamil{color:#8da5a1;font-size:13px;margin:20px 0 25px}
.find-thillai{position:relative;z-index:3;display:grid;grid-template-columns:1fr 1.22fr;gap:7vw;padding:150px var(--page-gutter);align-items:center;border-top:1px solid #c6a87922;background:linear-gradient(135deg,#0d181cb0,#06090ce0);scroll-margin-top:75px}
.find-thillai h2{font-size:clamp(33px,3.1vw,51px);line-height:1.3}.find-copy>p:not([class]){font-size:15px;line-height:2;color:#a7b6b3}.coordinates{font-size:11px;letter-spacing:.1em;color:#6f8a89;margin:24px 0}.directions-link{display:inline-flex;gap:26px;align-items:center;text-decoration:none;font-size:13px;border:1px solid #c6a87959;padding:18px 23px;background:#c6a87908;color:#dbbd90!important;transition:background .3s}.directions-link:hover{background:#c6a87918}.map-external{display:block;width:fit-content;font-size:12px;color:#9faca7!important;margin-top:21px;text-decoration-color:#455954}.visit-note{font-size:12px;line-height:1.9;color:#6f8582;max-width:330px;margin-top:32px}.visit-note a{color:#a4b2a7}
.map-frame{border:1px solid #c6a87935;background:#101b20;min-width:0;box-shadow:0 25px 70px #0004}.map-frame-heading{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid #c6a87922;min-height:54px}.map-frame-heading>span{font-size:10px;letter-spacing:.13em;color:#bb9d77}.map-frame-heading button{color:#a6b7ae;font-size:12px;padding:9px 0;min-height:34px}.map-frame-heading button:hover{color:#dfc493}.map-frame-heading button:disabled{opacity:.3}#temple-map{height:420px;z-index:1;background:#101b20;position:relative}.map-loading{position:absolute;top:45%;left:10%;right:10%;text-align:center;font-family:Cormorant,serif;font-size:23px;color:#aeae99}.map-caption{padding:13px 20px;font-size:11px;line-height:1.8;color:#819692;margin:0}.map-error{font-size:12px;line-height:1.7;color:#c9b58d;padding:0 20px 18px;margin:0}.leaflet-tile-pane{filter:grayscale(.8) invert(.91) hue-rotate(180deg) saturate(.65)}.leaflet-control-attribution{font-family:Manrope,sans-serif!important;font-size:10px!important;background:#071015e8!important;color:#acbdb5!important}.leaflet-control-attribution a{color:#dec397!important}.leaflet-control-zoom a{background:#122127!important;color:#dfc395!important;border-color:#45605a!important}.leaflet-bar{border-color:#56726988!important}.temple-pin{border:0;background:none}.temple-pin-core{width:20px;height:20px;background:#f0c57b;border:4px solid #30271b;border-radius:50%;box-shadow:0 0 0 10px #e4b77533,0 0 35px #e4b77588}.leaflet-tooltip.temple-tooltip{background:#101c22ed;border:1px solid #b79b6559;color:#e4c79d;font-family:Manrope,sans-serif;padding:9px 14px;box-shadow:0 3px 20px #0004;font-size:11px}.leaflet-tooltip-right:before{border-right-color:#b79b6577!important}
.journey-footer{padding:50px var(--page-gutter);display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:50px;align-items:start;border-top:1px solid #c6a87925;position:relative;z-index:2;background:#070d10}.footer-signature>span{font-family:CinzelDecorative,serif;color:#ccaf83;font-size:25px;letter-spacing:-.05em}.footer-signature p{color:#68817f;font-size:12px;line-height:2}.source-notes{font-size:12px;color:#8ea29e;line-height:1.9}.source-notes summary{cursor:pointer;min-height:44px;padding:10px 0;color:#bca57e;font-size:12px}.source-notes div{padding-top:10px}.source-notes a{color:#b7bfaf}.source-notes ul{padding-left:17px}.source-notes li{margin-bottom:9px}#back-to-stars{justify-self:end;margin-top:0}.noscript-note{color:#c9bda6;text-align:center;padding:20px;font:16px/1.8 Manrope,sans-serif;background:#142025}.noscript-note a{color:#dfc194}
.journey.motion-paused *, .journey.motion-paused *:before,.journey.motion-paused *:after{animation:none!important;transition:none!important}.journey.motion-paused .chapter-copy{transform:none}
@keyframes sound-pulse{50%{opacity:.45;scale:.85}}
.sound-volume{display:flex;align-items:center;gap:9px;color:#9aada5;font-size:10px;letter-spacing:.04em}.sound-volume input{width:65px;accent-color:#cdb07e;cursor:pointer;min-height:32px;margin:0}.sound-volume input:focus-visible{outline:1px solid #d6b27b;outline-offset:3px}
@media(max-width:1150px){.sound-volume{position:absolute;right:var(--page-gutter);top:76px;padding:1px 11px;background:#071015e8;border:1px solid #b4966a24;border-radius:3px}.sound-volume input{width:77px}}
@media(max-width:900px){.sound-volume{right:22px;top:63px}.sound-volume span{font-size:9px}.sound-volume input{width:67px}}
@keyframes scroll-line{50%{translate:0 6px;opacity:.5}}
@media(max-width:1150px){.journey-nav{margin-left:0;gap:20px}.journey-controls{gap:15px}.chapter-copy{width:41%;}.chapter h2{font-size:39px}.chapter-copy>p:not([class]){font-size:13px}.chapter-lead{font-size:24px}.temple-viewport{left:35%;width:67%}.model-caption{bottom:10%;}.find-thillai{gap:5vw}.find-thillai h2{font-size:36px}.journey-footer{gap:25px}}
@media(max-width:900px){
 .atlas-stage:before{content:'';position:absolute;inset:0 0 auto;height:calc(48svh + 120px);background:linear-gradient(#060a0e 87%,#060a0e00);z-index:-1}
 h1{font-size:clamp(40px,10.8vw,74px);letter-spacing:-.07em}.wordmark{font-size:21px}
 .journey-header{height:74px;padding:0 22px;gap:15px}.journey-brand{font-size:19px}.journey-nav{margin-left:auto}.journey-nav a{font-size:12px}.journey-nav a:first-child{display:none}.journey-controls{gap:14px}.quiet-control{font-size:11px}.sound-symbol{font-size:18px;margin-right:3px}#journey-motion{font-size:0}#journey-motion:after{content:'Ⅱ';font-size:15px}#journey-motion[aria-pressed=true]:after{content:'▶';font-size:13px}
 .atlas-stage{min-height:0;background:radial-gradient(ellipse at 50% 30%,#19383e20,transparent 50%)}.temple-viewport{top:65px;left:0;width:100%;height:48svh}.atlas-compass{top:112px;right:25px;font-size:9px}.atlas-compass i{height:34px}.model-caption{top:calc(48svh + 36px);bottom:auto;left:25px;right:auto;text-align:left;max-width:90%}.model-kicker{display:none}.model-caption p{font-size:20px;margin:0}.model-caption small{font-size:9px}.chapter-rail{left:auto;right:22px;bottom:20px;gap:11px;z-index:5}.chapter-rail a{font-size:10px}
 .chapter{min-height:122svh;align-items:flex-end;padding:calc(56svh + 65px) 28px 92px;pointer-events:none}.chapter-copy{width:100%;max-width:650px;padding-top:34px;transform:none!important;background:linear-gradient(#060a0e00,#060a0efa 30px);position:relative}.chapter-copy:before{content:'';position:absolute;z-index:-1;inset:0 -35px -90px;background:linear-gradient(#060a0e00,#060a0ef5 40px)}.chapter-eyebrow{font-size:10px;margin-bottom:12px;letter-spacing:.2em}.chapter-tamil{font-size:12px;margin-bottom:12px}.chapter h2{font-size:clamp(32px,6.2vw,48px);margin-bottom:22px;max-width:600px}.chapter h2 br{display:none}.chapter h2 br:after{content:' '}.chapter h2 em{font-size:1.15em}.chapter-lead{font-size:24px;max-width:560px;margin-bottom:18px}.chapter-copy>p:not([class]){font-size:14px;max-width:560px;line-height:1.9}.history-line{margin:24px 0}.history-line span{font-size:10px}.history-line p{font-size:12px}.small-aside{display:none}.paired-notes{max-width:480px;margin-bottom:0}.chapter-note{margin:23px 0}.chapter-note>span{font-size:60px}.space-word{font-size:43px}.chapter-footnote{margin-top:20px}.scroll-invitation{font-size:12px}.final-chapter{min-height:112svh}
 .reflection{min-height:85svh;padding:135px 24px}.reflection blockquote{font-size:clamp(37px,7.5vw,61px)}.reflection blockquote>span{font-size:.57em}.reflection-orbit{width:110vw}.reflection .chapter-eyebrow{font-size:10px}.find-thillai{grid-template-columns:1fr;padding:100px 28px 70px;gap:44px}.find-thillai h2{font-size:39px}.find-copy>p:not([class]){font-size:14px}#temple-map{height:370px}.journey-footer{grid-template-columns:1fr 1fr;padding:40px 28px;gap:28px}.source-notes{grid-column:1/-1;grid-row:2}#back-to-stars{font-size:12px}.footer-signature>span{font-size:21px}
}
@media(max-width:480px){.journey-header{padding:0 18px;gap:12px}.journey-nav{gap:0}.journey-nav a{font-size:11px}.journey-controls{gap:11px}.journey-brand{font-size:17px}.quiet-control{font-size:10px}.sound-symbol{font-size:16px}.chapter{padding-left:24px;padding-right:24px}.chapter h2{font-size:32px}.chapter-lead{font-size:23px}.model-caption p{font-size:18px}.chapter-rail{left:24px;right:auto;gap:15px}.chapter-rail a{font-size:10px}.find-thillai{padding-left:24px;padding-right:24px}.find-thillai h2{font-size:31px}.reflection blockquote{font-size:36px}.map-frame-heading{padding:10px 14px}.map-frame-heading>span{font-size:9px}#temple-map{height:340px}.map-caption{font-size:10px;padding:12px 14px}.directions-link{font-size:12px;padding:17px 20px}.journey-footer{padding:35px 24px;gap:18px}.footer-signature>span{font-size:18px}}
@media(prefers-reduced-motion:reduce){.chapter-copy{transform:none!important}.journey *, .journey *:before,.journey *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* One native page scroll reads the text, then hands off to the next chapter. */
.enhanced-atlas{isolation:isolate;overflow:clip;z-index:1}
.enhanced-atlas .atlas-stage{display:grid;grid-template-columns:minmax(0,39%) minmax(0,61%);grid-template-rows:minmax(0,1fr);gap:10px;padding:110px var(--page-gutter) 130px;min-height:0;overflow:clip;background:radial-gradient(ellipse at 76% 45%,#19333b25,transparent 55%);border-bottom:1px solid #c4a27813}
.enhanced-atlas .temple-viewport{position:relative;inset:auto;width:100%;height:100%;grid-column:2;grid-row:1;overflow:hidden;opacity:calc(1 - var(--atlas-exit,0));transform:translateY(calc(var(--atlas-exit,0) * 36px));border-radius:2px;contain:layout paint}
.chapter-presenter{display:none}
.enhanced-atlas .chapter-presenter{display:block;grid-column:1;grid-row:1;min-height:0;overflow:clip;pointer-events:auto;padding:10px 27px 16px 0;opacity:calc(1 - var(--atlas-exit,0));align-self:stretch;outline:none}
.enhanced-atlas .chapter-presenter:focus-visible{outline:none}
.enhanced-atlas .chapter-presenter .chapter-copy{display:flow-root;width:100%;max-width:none;transform:none!important;margin:0;padding:0;background:none}
.enhanced-atlas .chapter-presenter .chapter-copy:before{display:none}
.enhanced-atlas .chapter-presenter .chapter-copy{will-change:opacity,translate}
#chapter-content{will-change:transform}
.enhanced-atlas .chapter-measurer{position:fixed;inset:0 auto auto -10000px;height:auto;max-height:none;overflow:visible;visibility:hidden;pointer-events:none;opacity:0;contain:layout style}
.enhanced-atlas .temple-viewport:after{content:'';position:absolute;inset:82% 0 0;background:linear-gradient(transparent,#060a0e);pointer-events:none}
.enhanced-atlas .chapter>.chapter-copy{display:none}
.enhanced-atlas .chapter{display:block;height:240px;min-height:0;max-height:none;padding:0;pointer-events:none}
.enhanced-atlas .chapter h2{font-size:clamp(36px,3.5vw,57px)}
.enhanced-atlas .chapter-presenter h2{font-family:CinzelDecorative,Georgia,serif;font-size:clamp(36px,3.3vw,57px);font-weight:400;line-height:1.23;letter-spacing:-.045em;margin:0 0 25px;text-wrap:balance}
.enhanced-atlas .chapter-presenter h2 em{font-family:Cormorant,Georgia,serif;font-size:1.23em;font-weight:400;letter-spacing:-.035em;color:#d9b887;line-height:.9}
.enhanced-atlas .model-caption{bottom:70px;right:var(--page-gutter);opacity:calc(1 - var(--atlas-exit,0));pointer-events:none}
.enhanced-atlas .atlas-compass{top:130px;right:var(--page-gutter);opacity:calc(1 - var(--atlas-exit,0))}
.enhanced-atlas .chapter-rail{bottom:22px;opacity:calc(1 - var(--atlas-exit,0));background:#060a0ee0}
.enhanced-atlas .chapter-presenter .scroll-invitation{margin-top:7px}
.chapter-continue{position:absolute;left:var(--page-gutter);bottom:72px;width:calc(39% - var(--page-gutter));display:flex;align-items:center;justify-content:space-between;gap:15px;text-decoration:none!important;pointer-events:auto;padding:0 0 10px;opacity:calc(1 - var(--atlas-exit,0));color:#9badab!important}
.chapter-continue>span:first-child{display:flex;flex-direction:column;gap:7px}.chapter-continue small{font:9px/1.2 Manrope,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#829995}.chapter-continue #chapter-next-label{font:13px/1.4 Manrope,sans-serif;letter-spacing:0}.chapter-continue .continue-arrow{font:23px/1 Cormorant,serif;color:#d5b580;padding-right:2px}.chapter-continue>i{position:absolute;bottom:0;left:0;right:0;height:1px;background:#a68b552f;overflow:hidden}.chapter-continue>i>span{display:block;width:100%;height:100%;background:#d0aa70;transform:scaleX(0);transform-origin:left}.chapter-continue.ready small{color:#d4b783}.chapter-continue:hover #chapter-next-label{color:#e3c491}
.reflection{z-index:4;background:radial-gradient(ellipse at center,#153033 0%,#09151a 36%,#060a0e 74%)}
.find-thillai{z-index:4}
@media(max-width:1150px) and (min-width:901px){.enhanced-atlas .atlas-stage{grid-template-columns:minmax(0,42%) minmax(0,58%);padding-top:100px;padding-bottom:130px}.enhanced-atlas .chapter-presenter{padding-right:18px}.enhanced-atlas .chapter-presenter h2{font-size:36px}.enhanced-atlas .chapter-lead{font-size:23px}}
@media(max-width:900px){
 .enhanced-atlas .atlas-stage{grid-template-columns:1fr;grid-template-rows:minmax(0,34svh) minmax(0,1fr);gap:0;padding:66px 22px 121px;background:#060a0e}
 .enhanced-atlas .atlas-stage:before{display:none}
 .enhanced-atlas .temple-viewport{grid-column:1;grid-row:1;inset:auto;width:100%;height:100%;border-bottom:1px solid #b4966a24;transform:translateY(calc(var(--atlas-exit,0) * -18px));background:radial-gradient(ellipse,#17313b30,transparent 72%)}
 .enhanced-atlas .chapter-presenter{grid-column:1;grid-row:2;align-self:stretch;max-height:none;width:100%;padding:24px 5px 12px}
 .enhanced-atlas .chapter-presenter .chapter-copy{max-width:650px;margin:0 auto}
 .enhanced-atlas .chapter-presenter h2{font-size:clamp(29px,4.8vw,40px);margin-bottom:14px;line-height:1.2}
 .enhanced-atlas .chapter-presenter h2 br{display:none}
 .enhanced-atlas .chapter-presenter h2 br:after{content:' '}
 .enhanced-atlas .chapter-presenter h2 em{font-size:1.14em}
 .enhanced-atlas .chapter-eyebrow{font-size:10px;margin:0 0 10px}
 .enhanced-atlas .chapter-tamil{font-size:12px;margin:0 0 11px}
 .enhanced-atlas .chapter-lead{font-size:22px;line-height:1.35;margin-bottom:16px;max-width:none}
 .enhanced-atlas .chapter-copy>p:not([class]){font-size:14px;line-height:1.8;margin-bottom:16px;max-width:none}
 .enhanced-atlas .history-line{margin:20px 0}.enhanced-atlas .history-line li{margin-bottom:14px}
 .enhanced-atlas .model-caption{top:calc(66px + 34svh - 37px);bottom:auto;right:32px;left:auto;text-align:right;max-width:70%}
 .enhanced-atlas .model-caption p{font-family:Manrope,sans-serif;font-size:11px;line-height:1.7;letter-spacing:.025em;color:#b8b8a4;margin:0}.enhanced-atlas .model-caption small{display:none}
 .enhanced-atlas .atlas-compass{top:93px;right:30px;font-size:9px}
 .enhanced-atlas .chapter-rail{bottom:13px;left:22px;right:22px;margin:0;padding:0 5px;justify-content:space-between;gap:5px;border-top:1px solid #c4a27824;background:#060a0e}
 .enhanced-atlas .chapter-rail a{font-size:12px;min-width:25px;text-align:center;min-height:42px}
 .chapter-continue{left:27px;right:27px;bottom:66px;width:auto;padding-bottom:9px;gap:10px}.chapter-continue small{font-size:8px;letter-spacing:.15em}.chapter-continue #chapter-next-label{font-size:11px}.chapter-continue>span:first-child{gap:5px}
 .enhanced-atlas .chapter-note{margin:15px 0}.enhanced-atlas .paired-notes{margin:20px 0 0}
}
@media(max-width:380px){.enhanced-atlas .atlas-stage{padding-left:17px;padding-right:17px;grid-template-rows:minmax(0,31svh) minmax(0,1fr)}.enhanced-atlas .chapter-presenter h2{font-size:26px}.enhanced-atlas .chapter-lead{font-size:21px}.enhanced-atlas .model-caption{top:calc(66px + 31svh - 33px);right:25px}.enhanced-atlas .chapter-rail{left:17px;right:17px}}

/* Editorial detail stays in the same native reading flow as the atlas. */
.guide-marker{display:block;font:10px/1.8 Manrope,sans-serif;letter-spacing:.16em;color:#c5aa7f}
.guide-intro{margin:30px 0 8px;border-top:1px solid #c6a87935;padding-top:22px}.guide-intro>p{font:11px/1.8 Manrope,sans-serif;color:#8fa39f;margin:8px 0}
.ritual-list,.annual-list{list-style:none;padding:0;margin:0}
.ritual-list>li{display:grid;grid-template-columns:89px minmax(0,1fr);gap:19px;padding:25px 0;border-bottom:1px solid #c6a87926}
.ritual-time{display:flex;flex-direction:column;gap:12px}.ritual-time>span{font:10px/1.5 Manrope,sans-serif;color:#82948b;letter-spacing:.12em}.ritual-time>time{font:20px/1.3 Cormorant,serif;color:#d9ba87;white-space:nowrap}
.ritual-list h3,.guide-passage h3,.festival-feature h3{font:29px/1.18 Cormorant,Georgia,serif;font-weight:400;color:#e1d1b1;margin:0 0 8px;text-wrap:balance}
.ritual-list p,.guide-passage>p,.festival-feature>p{font:13px/1.9 Manrope,sans-serif;color:#9dafab;margin:9px 0 0;text-wrap:pretty}
.ritual-list .guide-tamil,.festival-feature .guide-tamil{font-family:TamilSerif,serif;font-size:11px;line-height:2.1;color:#a69577;margin:0 0 12px}
.ritual-list .ritual-meaning{color:#d0c8b4;font-size:11px;margin:0 0 4px;letter-spacing:.02em}
.guide-caution{font:11px/1.9 Manrope,sans-serif;color:#92a6a0;padding:17px 19px;border-left:1px solid #bc9c6866;background:#94a88a06;margin:24px 0 30px}
.guide-passage{margin:32px 0}.guide-passage h3{font-size:29px}.guide-passage .guide-marker{font:10px/1.8 Manrope,sans-serif;letter-spacing:.15em;color:#c4ab83;margin-bottom:13px}
.guide-source{font:10px/1.95 Manrope,sans-serif!important;color:#879d97!important;margin:25px 0 8px!important}.guide-source a{color:#b6ac91;text-decoration-color:#a3936755}
.festival-feature{padding:30px 0 34px;border-top:1px solid #c6a87935}.festival-feature h3{font-size:35px;margin:12px 0 8px}.festival-feature .festival-season{font:10px/1.8 Manrope,sans-serif;letter-spacing:.15em;color:#b79e75;text-transform:uppercase;margin:0}.festival-feature .festival-dek{font:23px/1.4 Cormorant,serif;color:#c2caba;margin:15px 0}.festival-feature>p:not([class]){margin-bottom:16px}
.annual-list{margin:25px 0}.annual-list>li{display:grid;grid-template-columns:1fr 1.1fr;gap:20px;padding:18px 0;border-bottom:1px solid #c6a87926}.annual-list strong{display:block;font:23px/1.3 Cormorant,serif;color:#d1bd99;font-weight:400}.annual-list span{display:block;font:10px/1.8 Manrope,sans-serif;color:#92a39a;margin-top:6px}.annual-list p{font:12px/1.7 Manrope,sans-serif;color:#acbbb1;margin:4px 0}
.visitor-guide{position:relative;z-index:4;background:#080f12;padding:100px var(--page-gutter);border-top:1px solid #c6a87926}
.visitor-heading{max-width:680px}.visitor-heading h2{font:clamp(33px,3.2vw,53px)/1.25 CinzelDecorative,Georgia,serif;letter-spacing:-.045em;font-weight:400;margin:16px 0 23px}.visitor-heading h2 em{font:1.2em/1 Cormorant,serif;color:#d9b887}.visitor-heading>p:last-child{font:22px/1.5 Cormorant,serif;color:#a8b8ae;max-width:510px}
.visitor-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin-top:54px}.visitor-panels article{padding-top:24px;border-top:1px solid #c6a87935}.visitor-guide h3{font:31px/1.2 Cormorant,serif;color:#dbc7a5;font-weight:400;margin:17px 0}.visitor-panels p{font:13px/1.9 Manrope,sans-serif;color:#9fb0ab;margin:0 0 18px}.visitor-panels strong{font-weight:500;color:#ccb994}.visitor-panels .text-link{font-size:11px}
.glossary-heading{margin:75px 0 25px}.glossary-heading .chapter-eyebrow{margin-bottom:0}.temple-glossary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 35px;margin:0}.temple-glossary>div{border-top:1px solid #c6a87926;padding-top:19px}.temple-glossary dt{font:25px/1.3 Cormorant,serif;color:#cdb792}.temple-glossary dt span{display:block;font:11px/2 TamilSerif,serif;margin-top:7px;color:#80978e}.temple-glossary dd{font:12px/1.8 Manrope,sans-serif;color:#9aaca5;margin:12px 0 0}
@media(max-width:900px){
 .enhanced-atlas .chapter-rail{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:3px}.enhanced-atlas .chapter-rail a{min-width:0;font-size:11px;padding:12px 0}
 .ritual-list>li{grid-template-columns:72px minmax(0,1fr);gap:15px;padding:23px 0}.ritual-time>time{font-size:19px}.ritual-list h3{font-size:27px}
 .guide-passage h3{font-size:27px}.festival-feature h3{font-size:32px}.festival-feature{padding:27px 0}.festival-feature>p:not([class]),.guide-passage>p,.ritual-list p{font-size:13px}
 .visitor-guide{padding:75px 28px}.visitor-heading h2{font-size:34px}.visitor-panels{grid-template-columns:1fr;gap:25px;margin-top:35px}.visitor-panels article{max-width:640px}.temple-glossary{grid-template-columns:1fr 1fr;gap:25px}.visitor-guide h3{font-size:29px}.glossary-heading{margin-top:55px}
 .enhanced-atlas .water-note{display:block;font-size:11px;line-height:1.8}
}
@media(max-width:380px){.enhanced-atlas .chapter-rail{gap:1px}.enhanced-atlas .chapter-rail a{font-size:10px}.ritual-list>li{grid-template-columns:67px minmax(0,1fr);gap:10px}.temple-glossary{gap:22px 15px}.temple-glossary dt{font-size:23px}.visitor-guide{padding-left:24px;padding-right:24px}}

.schedule-caption{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font:11px/1.8 Manrope,sans-serif;color:#c5ad83;margin:28px 0 12px}.schedule-caption>span{font-size:10px;color:#9aafa6}
.pooja-schedule{list-style:none;padding:0;margin:0}.pooja-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;border-top:1px solid #b7986430;padding:18px 0;transition:border-color .4s}.pooja-row h3{font:27px/1.15 Cormorant,serif;font-weight:400;color:#ddc8a3;margin:0 0 6px}.pooja-row p{font:10px/1.9 TamilSerif,serif;color:#92a59a;margin:0}.pooja-row small{display:block;font:10px/1.6 Manrope,sans-serif;color:#8ba299;margin-top:5px}.pooja-row time{display:block;white-space:nowrap;font:500 15px/1.5 Manrope,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.015em;color:#f1d29f;background:#b8914b0b;padding:10px 12px;border:1px solid #c7a16c2e;border-radius:3px}.pooja-row time>span{font-size:10px;letter-spacing:.03em;margin-left:3px}.pooja-row.is-current{border-top-color:#c7a16c8e}.pooja-row.is-current time{background:#c19a541d;border-color:#c7a16c72}
.ritual-context{font:12px/1.9 Manrope,sans-serif;color:#a4b4a9;margin:24px 0 0}.model-explanation{font:10px/1.9 Manrope,sans-serif;color:#8c9e93;margin:21px 0 0}.concise-festival{padding:25px 0 27px}.concise-festival h3{font-size:32px}.concise-festival .festival-dek{font-size:22px;margin:12px 0}.concise-festival>p:not([class]){margin-bottom:0}
.enhanced-atlas .chapter-presenter,.enhanced-atlas .chapter-continue,.enhanced-atlas .chapter-rail,.enhanced-atlas .model-caption{transition:opacity .8s}
.enhanced-atlas.is-assembling .chapter-presenter,.enhanced-atlas.is-assembling .chapter-continue,.enhanced-atlas.is-assembling .chapter-rail,.enhanced-atlas.is-assembling .model-caption{opacity:0;pointer-events:none}
.enhanced-atlas .atlas-stage[data-model-mode=ritual] .atlas-compass{opacity:0}
@media(max-width:900px){.pooja-row{gap:12px;padding:16px 0}.pooja-row h3{font-size:25px}.pooja-row time{font-size:14px;padding:9px}.pooja-row time>span{font-size:9px}.schedule-caption{font-size:10px;margin-top:24px}}

.festival-scenes{grid-column:2;grid-row:1;align-self:start;position:relative;z-index:8;pointer-events:auto;margin:7px 20px 0;text-align:center;opacity:calc(1 - var(--atlas-exit,0));transition:opacity .6s}.festival-scene-count{display:block;font:8px/1.5 Manrope,sans-serif;letter-spacing:.22em;color:#a8906e;margin-bottom:11px}.festival-scenes>div{display:flex;justify-content:center;gap:7px}.festival-scenes button{border:1px solid #a88b552d;border-radius:18px;padding:9px 13px;min-height:36px;white-space:nowrap;font:11px/1.2 Manrope,sans-serif;color:#92a39a;background:#071015b8;transition:color .4s,border-color .4s,background .4s;letter-spacing:.01em}.festival-scenes button:hover{color:#e3c796;border-color:#cfa86b6b}.festival-scenes button[aria-current=step]{background:#b48b3529;border-color:#d3b174a3;color:#f2d39f}
.festival-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:0}.festival-atmosphere i{position:absolute;inset:0;opacity:0;transition:opacity 1.3s;pointer-events:none}.temple-viewport canvas{position:relative;z-index:1}.model-fallback{z-index:2}
.aura-aani{background:radial-gradient(ellipse at 53% 62%,#ab552420,transparent 65%)}.aura-arudra{background:radial-gradient(ellipse at 52% 50%,#41679326,transparent 66%)}.aura-vigil{background:radial-gradient(ellipse at 49% 62%,#c36a2520,transparent 67%)}.aura-aippasi{background:radial-gradient(ellipse at 48% 65%,#a4475524,transparent 65%)}.aura-abhishekam{background:radial-gradient(ellipse at 50% 62%,#417c7824,transparent 67%)}.aura-dance{background:radial-gradient(ellipse at 50% 55%,#7e467c26,transparent 65%)}
[data-ritual-view=aani] .aura-aani,[data-ritual-view=arudra] .aura-arudra,[data-ritual-view=vigil] .aura-vigil,[data-ritual-view=aippasi] .aura-aippasi,[data-ritual-view=abhishekam] .aura-abhishekam,[data-ritual-view=dance] .aura-dance{opacity:1}
@media(max-width:900px){.festival-scenes{grid-column:1;grid-row:1;margin:7px 0 0}.festival-scene-count{font-size:7px;letter-spacing:.14em;margin-bottom:7px}.festival-scenes>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.festival-scenes button{padding:7px 2px;min-height:31px;font-size:9px}.atlas-stage[data-ritual-view]:has(.festival-scenes:not([hidden])) .model-caption p{font-size:10px}.atlas-stage:has(.festival-scenes:not([hidden])) .model-caption small{display:block;font-size:8px;line-height:1.5;margin-top:1px}}
@media(max-width:380px){.festival-scenes button{font-size:8px}.festival-scenes>div{gap:3px}}
/* Moving chapter copies between the presenter and their measured placeholders
   must not let browser scroll anchoring relocate the reading position. */
.enhanced-atlas{overflow-anchor:none}
.sound-settings{position:relative}
.sound-panel{position:absolute;top:calc(100% + 9px);right:0;width:224px;padding:13px 16px 16px;background:#0b151af7;border:1px solid #b79a6357;border-radius:5px;box-shadow:0 16px 48px #0009;backdrop-filter:blur(16px);color:#c7bb9f}
.sound-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.035em}
.journey .sound-panel-heading button{font:24px/1 Cormorant,serif;padding:3px 7px;min-width:32px;min-height:32px;color:#b8a27d}
.journey .sound-playback{display:block;width:100%;padding:12px;margin:8px 0 10px;border:1px solid #bd9d6444;border-radius:3px;background:#b48b3514;text-align:left;font-size:12px;color:#e4c89c}
.sound-panel .sound-volume{position:static;display:flex;padding:0;border:0;background:none;justify-content:space-between;gap:16px;font-size:10px}.sound-panel .sound-volume input{width:119px;min-height:36px}
#sound-toggle[data-playing=true] .sound-symbol{animation:sound-pulse 4s ease-in-out infinite}
@media(max-width:480px){.sound-panel{right:-25px;width:220px;top:calc(100% + 5px)}}
.pooja-sky{position:absolute;inset:0;opacity:0;pointer-events:none;overflow:hidden;transition:opacity 1.2s;border-radius:40% 40% 8% 8%;mask-image:radial-gradient(ellipse at 50% 53%,#000 30%,#000c 61%,transparent 78%)}
[data-ritual-view=worship] .pooja-sky{opacity:.82}
.pooja-sky-layer{position:absolute;inset:0;opacity:0}
.pooja-sky:after{content:'';position:absolute;inset:0;z-index:7;background-image:radial-gradient(circle at 31px 43px,#e1e5d2 0 1px,transparent 1.5px),radial-gradient(circle at 93px 11px,#b8ced8 0 .7px,transparent 1.2px);background-size:107px 143px,179px 137px;opacity:var(--pooja-stars,.3)}
.pooja-sun{position:absolute;z-index:8;left:14%;top:70%;width:clamp(21px,4vw,54px);aspect-ratio:1;border-radius:50%;background:#ffd5a0;color:#ffd5a0;box-shadow:0 0 35px 9px currentColor,0 0 85px 23px #d88b4550;opacity:.6;transform:translate(-50%,-50%)}
.pooja-horizon{position:absolute;z-index:7;left:0;right:0;bottom:12%;height:21%;border-bottom:1px solid #e5b7854d;border-radius:50%;background:radial-gradient(ellipse at 50% 100%,#e1a56450,transparent 68%);opacity:var(--horizon-glow,.5)}
.pooja-rays{position:absolute;z-index:7;inset:-50%;background:conic-gradient(from 155deg at 35% 35%,transparent 0 4deg,#dfbd9110 4deg 11deg,transparent 11deg 19deg,#edd7a60c 19deg 25deg,transparent 25deg);opacity:var(--day-rays,1);transform:rotate(-8deg)}
.pooja-moon{position:absolute;z-index:8;left:77%;top:19%;width:26px;height:26px;border-radius:50%;box-shadow:8px 4px 0 #d5e3e1;transform:rotate(-20deg);opacity:0}
#pooja-time-of-day{position:absolute;z-index:3;top:7%;left:50%;transform:translateX(-50%);font:9px/1.5 Manrope,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#dbc6a3;opacity:0;transition:opacity .8s;white-space:nowrap}
[data-ritual-view=worship] #pooja-time-of-day{opacity:1}
@media(max-width:900px){#pooja-time-of-day{font-size:7px;top:5%}.pooja-moon{width:15px;height:15px;box-shadow:5px 3px 0 #d5e3e1}.pooja-sun{width:23px}}
@media(max-width:900px){
 .enhanced-atlas .atlas-stage:has(.festival-scenes:not([hidden])) .temple-viewport{height:calc(100% - 88px);margin-top:52px;align-self:start;border-bottom:0}
}
