@font-face{font-family:Cormorant;src:url('./assets/cormorant.woff2') format('woff2');font-weight:400 500;font-display:swap}
@font-face{font-family:Cormorant;src:url('./assets/cormorant-italic.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url('./assets/manrope.woff2') format('woff2');font-weight:400 600;font-display:swap}
:root{--paper:#f6efe3;--ink:#2a201b;--muted:#6b574b;--accent:#c24e20;--line:#2a201b18;--panel:#f6efe3f0;--inset:clamp(24px,5vw,80px);font-family:Manrope,sans-serif;color:var(--ink);background:var(--paper);scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:none;border:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}h1,h2,p{margin:0}h1,h2{font-family:Cormorant,Georgia,serif;font-weight:400;letter-spacing:-.05em;line-height:.9}em{font-weight:400;color:var(--accent)}p{line-height:1.7}::selection{background:#d6a17b;color:#241f1b}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;top:-100px;left:24px;z-index:100;background:var(--paper);padding:15px}.skip:focus{top:15px}.eyebrow{font-size:9px;letter-spacing:.2em;line-height:1.5}
.world{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;transition:opacity .5s}.world canvas{position:relative;width:100%;height:100%;display:block;opacity:0;z-index:1;transition:opacity 1s}.scene-ready .world canvas{opacity:1}.still-world{position:absolute;inset:0;background:linear-gradient(var(--sky,#c6d4cc),var(--paper) 50%,var(--water,#8a9c8f));overflow:hidden}.still-sun{position:absolute;inset:-15%;background:radial-gradient(ellipse at 66% 30%,#ffe4a555,transparent 55%)}.still-symbol{position:absolute;width:clamp(220px,28vw,430px);height:44%;object-fit:contain;left:50%;top:15%;transform:translateX(-50%);filter:drop-shadow(0 15px 20px #1d282533)}.still-water{position:absolute;inset:53% -40% -50%;opacity:.17;background:repeating-radial-gradient(ellipse at 50% 12%,transparent 0 42px,#efedd3 44px,transparent 46px 70px)}.vignette{position:absolute;inset:0;z-index:2;background:linear-gradient(0deg,#101c231e,transparent 28%),radial-gradient(ellipse at center,transparent 45%,#171e1d14);pointer-events:none}#site-content{position:relative;z-index:1;opacity:0;transition:opacity 1s}.entered #site-content,body[data-page=services] #site-content{opacity:1}[data-still=true] #scene{display:none}
.header{position:absolute;top:0;left:0;right:0;z-index:9;padding:30px var(--inset);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px}.brand>span{font-size:19px;letter-spacing:.13em;line-height:1.1}.brand small{display:block;font-size:7px;letter-spacing:.44em;margin-top:6px}.header nav{display:flex;gap:34px;margin-left:45px;font-size:11px}.header nav a{padding:12px 0;border-bottom:1px solid transparent}.header nav a[aria-current],.header nav a:hover{border-bottom-color:var(--line)}.header nav a span{margin-left:7px}.header-controls{display:flex;align-items:center;gap:22px}.sound-control{display:flex;align-items:center;gap:8px;font-size:10px;min-height:44px;padding:8px 0}.sound-bars{display:flex;gap:3px;align-items:center;height:17px}.sound-bars i{width:1px;height:7px;background:currentColor}.sound-bars i:nth-child(2){height:14px}.sound-bars i:nth-child(4){height:10px}.sound-control[aria-pressed=true] i{animation:sound-bars .8s ease-in-out infinite alternate}.sound-control[aria-pressed=true] i:nth-child(2){animation-delay:-.4s}.sound-control[aria-pressed=true] i:nth-child(3){animation-delay:-.7s}.atmosphere-control{display:flex;align-items:center;gap:8px;padding-left:22px;border-left:1px solid var(--line)}.sun-icon{font-size:24px;font-family:Georgia,serif}.atmosphere-control select{border:0;background:transparent;color:var(--ink);font-size:10px;max-width:100px;min-height:44px;cursor:pointer}.atmosphere-control option{background:var(--paper);color:var(--ink)}@keyframes sound-bars{from{transform:scaleY(.3)}to{transform:scaleY(1.15)}}
.journey{height:780svh;position:relative}.journey-stage{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden}.scene-label{position:absolute;left:var(--inset);top:20%;display:flex;align-items:center;gap:15px;font-size:8px;letter-spacing:.13em;line-height:1.8}.little-star{font-size:25px;color:var(--accent)}.chapter-stack{position:absolute;left:var(--inset);right:var(--inset);bottom:17%;height:240px;pointer-events:none}.chapter{position:absolute;left:0;bottom:0;opacity:0;transform:translateY(15px);max-width:650px}.chapter.is-current{opacity:1;transform:none}.chapter h1,.chapter h2{font-size:clamp(86px,9.7vw,156px)}.chapter h1:focus,.chapter h2:focus{outline:none}.chapter-count{font-size:8px;letter-spacing:.18em;margin-bottom:20px}.chapter-copy{font-size:13px;margin-top:23px;max-width:400px;line-height:1.7}.chapter .text-link{pointer-events:auto;margin-top:17px}.text-link{display:inline-flex;align-items:center;gap:35px;border-bottom:1px solid var(--line);font-size:12px;padding:12px 0}.text-link span{font-size:21px}.chapter-nav{position:absolute;right:var(--inset);top:40%;display:flex;flex-direction:column;gap:12px}.chapter-nav a{font-size:8px;letter-spacing:.07em;opacity:.4;display:flex;align-items:center;justify-content:flex-end;min-width:44px;min-height:27px;gap:12px}.chapter-nav a:before{content:'';width:9px;height:1px;background:currentColor;transition:width .5s}.chapter-nav a[aria-current]{opacity:1}.chapter-nav a[aria-current]:before{width:25px}.stage-footer{position:absolute;left:var(--inset);right:var(--inset);bottom:32px;border-top:1px solid var(--line);padding-top:21px;display:flex;align-items:center;justify-content:space-between;font-size:7px;letter-spacing:.14em}.stage-progress{display:flex;align-items:center;gap:13px;font-size:9px;letter-spacing:0}.progress-line{width:100px;height:1px;background:var(--line);position:relative}.progress-line i{position:absolute;inset:0 auto 0 0;background:var(--ink);width:0}.stage-footer>a{display:flex;align-items:center;gap:12px}.scroll-stops{position:absolute;inset:0;pointer-events:none}.scroll-stops>span{position:absolute;top:0;width:1px;height:1px}.scroll-stops>span:nth-child(2){top:100svh}.scroll-stops>span:nth-child(3){top:200svh}.scroll-stops>span:nth-child(4){top:300svh}.scroll-stops>span:nth-child(5){top:400svh}.scroll-stops>span:nth-child(6){top:500svh}.scroll-stops>span:nth-child(7){top:600svh}
.services-preview{position:relative;background:var(--paper);min-height:760px;padding:130px var(--inset);display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;border-top:1px solid var(--line)}.preview-heading h2{font-size:clamp(80px,8vw,125px);margin:22px 0 35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:53px;padding:17px 24px;background:var(--ink);color:var(--paper);font-size:11px;border-radius:4px}.button span{font-size:21px}.button:hover{filter:brightness(1.08)}.preview-list>a{display:flex;align-items:center;justify-content:space-between;gap:20px;font-family:Cormorant,Georgia,serif;font-size:39px;border-bottom:1px solid var(--line);padding:25px 0}.preview-list>a>span:first-child{font:8px Manrope,sans-serif;align-self:flex-start;padding-top:9px;opacity:.6}.preview-list>a>span:last-child{font:21px Manrope,sans-serif;margin-left:auto}.preview-list>a:hover{color:var(--accent)}.provisional-note{font-size:11px;color:var(--muted);margin-top:25px;max-width:340px}.footer{position:relative;padding:60px var(--inset) 40px;background:var(--paper);z-index:2}.footer-brand{display:flex;align-items:baseline;justify-content:space-between;font-size:clamp(54px,12vw,185px);letter-spacing:.075em;line-height:1.2;gap:20px}.footer-brand>span{font-family:Cormorant,Georgia,serif;font-size:.55em;letter-spacing:.03em}.footer>div{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px;font-size:7px;letter-spacing:.12em;margin-top:10px}
.experience-controls{position:fixed;left:var(--inset);bottom:24px;z-index:12;opacity:0;pointer-events:none;transition:opacity .4s}.controls-visible .experience-controls{opacity:1;pointer-events:auto}.experience-controls>button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--panel);backdrop-filter:blur(15px)}.experience-controls svg{width:18px;height:18px;stroke:var(--ink);stroke-width:1.1;fill:var(--paper)}.controls-visible .header-controls{position:fixed;right:var(--inset);bottom:24px;padding:1px 15px;background:var(--panel);border:1px solid var(--line);border-radius:30px;backdrop-filter:blur(16px);gap:15px}.controls-visible .header-controls .atmosphere-control{padding-left:15px}.controls-visible .stage-footer{bottom:88px}.settings{position:fixed;left:var(--inset);bottom:82px;width:290px;background:var(--panel);border:1px solid var(--line);border-radius:4px;backdrop-filter:blur(18px);z-index:14;padding:24px}.settings[hidden]{display:none}.settings-heading{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:25px}.settings-heading button{font-size:23px;padding:4px 8px}.settings>label{display:block;font-size:11px;margin:18px 0 10px}.settings>select{width:100%;background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:2px;padding:12px;font-size:12px}.settings>select option{background:var(--paper);color:var(--ink)}.settings input[type=range]{width:100%;accent-color:var(--accent)}.settings .motion-label{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:20px}.settings input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}
.entrance{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:36px var(--inset);background:#f6efe3;color:#2a201b;transition:opacity .7s,visibility .7s;overflow:auto}.entrance[hidden]{display:none}.entrance.exiting{opacity:0;visibility:hidden;pointer-events:none}.entrance-brand{align-self:flex-start;font-size:10px;letter-spacing:.2em}.entrance-center{text-align:center;margin:30px 0}.entrance-center img{margin-bottom:38px}.entrance-center h1{font-size:clamp(68px,7.5vw,114px);line-height:.9}.entrance-center h1 em{color:#c24e20}.entrance-center p{font-size:12px;margin-top:27px;color:#6b574b}.entrance-actions{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:32px}.entrance .button{background:#2a201b;color:#f6efe3}.quiet-button{font-size:11px;border-bottom:1px solid #2a201b33;padding:15px 0}.quiet-button span{margin-left:17px}.entrance-bottom{font-size:7px;letter-spacing:.2em}.page-wipe{position:fixed;inset:0;z-index:55;background:var(--paper);clip-path:circle(0 at 50% 85%);pointer-events:none;transition:clip-path .7s cubic-bezier(.65,0,.2,1)}.leaving .page-wipe{clip-path:circle(150% at 50% 85%)}
.services-page{padding:150px var(--inset) 0}body[data-page=services]{background:var(--paper)}
body,em,.header,.settings,.footer,.services-preview,.button,.chapter-copy{transition:color 1.2s,background-color 1.2s,border-color 1.2s}.reduce-motion{scroll-behavior:auto}.reduce-motion .page-wipe{transition:none}.reduce-motion .sound-bars i{animation:none}
@media(max-width:1050px){.header nav{margin-left:0;gap:22px}.header-controls{gap:14px}.atmosphere-control{padding-left:14px}.chapter h1,.chapter h2{font-size:clamp(88px,12vw,130px)}.chapter-copy{max-width:340px}.services-preview{gap:7vw}.preview-list>a{font-size:31px}}
@media(max-width:650px){:root{--inset:24px}.header{padding-top:max(22px,env(safe-area-inset-top));gap:14px}.brand{gap:8px}.brand>span{font-size:15px}.brand img{width:29px;height:27px}.brand small{font-size:6px;margin-top:4px}.header nav{position:absolute;top:85px;left:var(--inset);font-size:9px;gap:23px}.header-controls{gap:10px}.sound-control{font-size:8px;gap:7px}.sound-bars{gap:2px}.atmosphere-control{padding-left:10px;gap:4px}.atmosphere-control select{font-size:9px;max-width:87px;padding-right:0}.sun-icon{font-size:21px}.journey-stage{min-height:700px}.scene-label{top:18%;font-size:6px;gap:12px}.little-star{font-size:21px}.chapter-stack{bottom:18%;height:180px;right:55px}.chapter h1,.chapter h2{font-size:clamp(70px,20vw,105px)}.chapter-count{font-size:7px;margin-bottom:15px}.chapter-copy{font-size:13px;max-width:275px;margin-top:19px;line-height:1.6}.chapter .text-link{font-size:11px;gap:25px;margin-top:9px}.chapter-nav{right:18px;top:38%;gap:7px}.chapter-nav a{min-width:36px;min-height:32px;font-size:7px;gap:7px}.chapter-nav a:before{width:5px}.chapter-nav a[aria-current]:before{width:14px}.stage-footer{bottom:25px;padding-top:17px;font-size:6px}.stage-progress{font-size:8px;gap:10px}.progress-line{width:65px}.controls-visible .stage-footer{bottom:87px}.experience-controls{bottom:max(18px,env(safe-area-inset-bottom))}.controls-visible .header-controls{right:var(--inset);bottom:max(18px,env(safe-area-inset-bottom));gap:12px;padding:1px 13px}.controls-visible .header-controls .atmosphere-control{padding-left:12px}.settings{left:20px;width:min(290px,calc(100% - 40px));bottom:78px}.services-preview{grid-template-columns:1fr;gap:50px;padding:75px var(--inset);min-height:800px}.preview-heading h2{font-size:79px;margin:20px 0 28px}.preview-list>a{font-size:34px;padding:23px 0}.provisional-note{font-size:12px;margin-top:23px}.button{font-size:11px;padding:16px 21px}.footer{padding-top:35px;padding-bottom:90px}.footer-brand{font-size:12.3vw;gap:14px}.footer>div{display:grid;grid-template-columns:1fr 1fr;font-size:6px;row-gap:20px;line-height:1.6}.footer>div>a{justify-self:end}.footer>div>span:last-child{grid-column:1/-1;opacity:.6;text-align:center}.entrance{padding:27px 25px}.entrance-center img{width:68px;height:62px;margin-bottom:32px}.entrance-center h1{font-size:76px}.entrance-actions{flex-direction:column;gap:12px;margin-top:30px}.entrance-center p{font-size:12px}.entrance-brand{font-size:9px}.services-page{padding-top:136px}.still-symbol{width:245px;top:21%;height:32%}}
@media(max-width:380px){:root{--inset:21px}.brand>span{font-size:14px}.header-controls .sound-control>span:last-child{display:none}.header-controls{gap:9px}.atmosphere-control select{max-width:83px}.chapter-stack{bottom:18%;right:47px}.chapter h1,.chapter h2{font-size:70px}.chapter-copy{font-size:12px;max-width:240px}.chapter-nav{right:12px}.scene-label{top:18%;font-size:6px}.entrance-center h1{font-size:66px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.sound-bars i{animation:none!important}.page-wipe{transition:none}}
.vignette:after{content:'';position:absolute;left:0;right:0;bottom:0;height:38%;background:linear-gradient(to top,var(--paper),transparent);opacity:.9}.stage-footer>a{min-height:28px;display:flex;align-items:center}
@supports not(height:100svh){.journey{height:780vh}.journey-stage{height:100vh}.scroll-stops>span:nth-child(2){top:100vh}.scroll-stops>span:nth-child(3){top:200vh}.scroll-stops>span:nth-child(4){top:300vh}.scroll-stops>span:nth-child(5){top:400vh}.scroll-stops>span:nth-child(6){top:500vh}.scroll-stops>span:nth-child(7){top:600vh}}
@media(max-height:600px){.journey-stage{min-height:0}.scene-label{display:none}.chapter-stack{bottom:24%;height:135px}.chapter h1,.chapter h2{font-size:64px}.chapter-count{margin-bottom:10px}.chapter-copy{font-size:11px;margin-top:13px;max-width:260px}.chapter .text-link{font-size:10px;margin-top:5px;padding:7px 0}.chapter-nav{top:24%;gap:0}.chapter-nav a{min-height:24px}.header{padding-top:15px;padding-bottom:15px}.header nav{display:none}.stage-footer{bottom:18px}.controls-visible .stage-footer{bottom:75px}.entrance{padding-top:18px;padding-bottom:18px}.entrance-center{margin:8px 0}.entrance-center img{width:45px;height:42px;margin-bottom:14px}.entrance-center h1{font-size:56px}.entrance-center p{margin-top:14px}.entrance-actions{flex-direction:row;gap:20px;margin-top:18px}.entrance-bottom{font-size:6px}}

.page-wipe{background:radial-gradient(ellipse at 50% 45%,var(--panel),var(--paper) 70%);clip-path:circle(0 at 50% 44%);transition:clip-path .85s cubic-bezier(.65,0,.18,1)}.page-wipe:after{content:'';position:absolute;left:50%;top:44%;width:30vmin;height:30vmin;border:1px solid var(--accent);border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(.4);transition:transform .85s,opacity .6s}.leaving .page-wipe{clip-path:circle(150% at 50% 44%)}.leaving .page-wipe:after{transform:translate(-50%,-50%) scale(2.6);opacity:.12}
body[data-page=services] .experience-controls{display:none}.services-page h1:focus,.services-page h2:focus{outline:none}
.reduce-motion .page-wipe,.reduce-motion .page-wipe:after{transition:none}

@media(min-width:651px) and (min-height:601px){.controls-visible .stage-footer{bottom:64px}}

:root{--seal-size:96px;--seal-space:112px}.sacred-corners{position:fixed;inset:0 0 auto;z-index:56;pointer-events:none;opacity:0;transition:opacity .8s}body[data-page=services] .sacred-corners{opacity:1}.sacred-slot{position:fixed;top:8px;width:var(--seal-size);height:var(--seal-size);margin:0;color:var(--accent);background:radial-gradient(ellipse,var(--paper) 12%,transparent 72%)}.sacred-flower{left:calc(var(--inset) - 22px)}.sacred-yantra{right:calc(var(--inset) - 18px)}.sacred-flat{display:block;width:100%;height:100%;opacity:.75;transition:color 1.2s}body[data-page=services] .header{padding-left:calc(var(--inset) + var(--seal-space));padding-right:calc(var(--inset) + var(--seal-space))}.header nav a,.sound-control{white-space:nowrap}.geometry-credit{opacity:.6}.geometry-credit:hover{opacity:1}
@media(min-width:651px) and (max-width:1050px){:root{--seal-size:64px;--seal-space:72px}.sacred-slot{top:12px}.sacred-flower{left:calc(var(--inset) - 14px)}.sacred-yantra{right:calc(var(--inset) - 14px)}body[data-page=services] .header{gap:10px}.header nav{gap:14px}.header-controls{gap:10px}.atmosphere-control{padding-left:10px}.brand>span{font-size:17px}.brand img{width:31px;height:29px}}
@media(max-width:650px){:root{--seal-size:48px;--seal-space:0px}.sacred-slot{top:max(10px,env(safe-area-inset-top))}.sacred-flower{left:15px}.sacred-yantra{right:15px}body[data-page=services] .header{padding-top:max(76px,calc(env(safe-area-inset-top) + 64px));padding-bottom:10px;gap:14px}body[data-page=services] .header .brand{position:absolute;top:max(22px,calc(env(safe-area-inset-top) + 10px));left:50%;transform:translateX(-50%)}body[data-page=services] .header nav{display:flex;position:static;margin:0;gap:16px}.header-controls{margin-left:auto}.header .brand>span{font-size:16px}.header .brand img{width:29px;height:27px}.footer>div>.geometry-credit{grid-column:2;justify-self:end}}
@media(max-width:380px){:root{--seal-size:44px}.sacred-flower{left:12px}.sacred-yantra{right:12px}.header nav{gap:11px;font-size:8.5px}.header .brand>span{font-size:15px}.header-controls{gap:8px}.header{gap:9px}}
@media(min-width:651px) and (max-height:600px){:root{--seal-size:54px;--seal-space:65px}.sacred-slot{top:2px}.header{padding-top:14px}.header nav{display:none}}
.reduce-motion .sacred-corners,.reduce-motion .sacred-flat{transition:none}

/* Low waterline composition; the sacred models now belong to the world. */
body[data-page=experience] .sacred-corners{display:none}body[data-page=experience] .header{padding-left:var(--inset);padding-right:var(--inset);color:#f7f8ed;text-shadow:0 1px 10px #09221b66}body[data-page=experience] .header .atmosphere-control select{color:inherit}body[data-page=experience] .header .atmosphere-control option{color:var(--ink)}
.journey{height:980svh}.scroll-stops>span:nth-child(8){top:700svh}.scroll-stops>span:nth-child(9){top:800svh}.chapter-nav{top:34%;gap:9px}.chapter-stack{bottom:15%}.chapter h1,.chapter h2{font-size:clamp(76px,8vw,125px)}.chapter-copy{max-width:340px}.sacred-chapter h2{font-size:clamp(66px,6.2vw,96px)}.sacred-chapter .chapter-copy{max-width:310px;font-size:12px}.scene-label,.chapter-stack,.stage-footer,.chapter-nav{color:#f6f7ef;text-shadow:0 2px 16px #061e1c99}.chapter-stack em{color:#ffd596}.stage-footer{border-color:#f1f6ee55}.chapter-nav a:before{background:#fff}.progress-line{background:#f4f7ee44}.progress-line i{background:#f4f7ee}.vignette{background:linear-gradient(0deg,#071e2b80,transparent 32%,transparent 75%,#06182a30)}.vignette:after{height:32%;background:linear-gradient(to top,#061c2a88,transparent);opacity:.45}.scene-label{top:23%;font-size:7px}.world .still-world{background:linear-gradient(var(--sky),var(--water))}
@media(max-width:650px){body[data-page=experience] .header{padding-top:max(24px,env(safe-area-inset-top));padding-bottom:15px}body[data-page=experience] .header .brand{position:static;transform:none}body[data-page=experience] .header nav{position:absolute;top:78px;left:var(--inset)}.chapter-stack{bottom:15%;right:48px}.chapter h1,.chapter h2{font-size:74px}.sacred-chapter h2{font-size:57px;line-height:.88}.sacred-chapter .chapter-copy{font-size:11px;max-width:270px;line-height:1.6}.chapter-nav{top:31%;gap:1px}.chapter-nav a{min-height:27px}.scene-label{top:19%}.stage-footer{font-size:6px}.sacred-chapter .chapter-count{margin-bottom:12px}}
@media(max-height:600px){.chapter-stack{bottom:22%}.chapter h1,.chapter h2{font-size:56px}.sacred-chapter h2{font-size:46px}.sacred-chapter .chapter-copy{font-size:10px;max-width:275px}.chapter-nav{top:20%;gap:0}.chapter-nav a{min-height:23px}.chapter-count{margin-bottom:8px}}
@supports not(height:100svh){.journey{height:980vh}.scroll-stops>span:nth-child(8){top:700vh}.scroll-stops>span:nth-child(9){top:800vh}}

.controls-visible body[data-page=experience] .header-controls{color:var(--ink);text-shadow:none}.scene-label .little-star{color:#f3b148}.vignette{background:linear-gradient(90deg,#061e2b35,transparent 38%),linear-gradient(0deg,#071e2b60,transparent 30%,transparent 75%,#06182a28)}

.controls-visible .chapter-stack{bottom:20%}@media(max-height:600px){.controls-visible .chapter-stack{bottom:23%}}

.page-wipe{z-index:100;clip-path:none;background:transparent;opacity:0;transition:none}.page-wipe:after{display:none}.leaving .page-wipe{clip-path:none;opacity:1;pointer-events:auto}.page-wipe canvas{display:block;width:100%;height:100%}.page-wipe canvas[hidden]{display:none}.services-view{overscroll-behavior-y:contain}

.services-view .world{display:none}


/* ===== TYPOGRAPHY & SPIRITUAL MOTION ===== */
:root{
  --font-body:'Plus Jakarta Sans',Manrope,-apple-system,BlinkMacSystemFont,sans-serif;
  --font-display:Manrope,'Plus Jakarta Sans',sans-serif;
  --font-sacred:'Cinzel',Cormorant,Georgia,serif;
  --heartbeat:0;
  --surface:color-mix(in srgb,var(--ink) 4.2%,var(--paper));
  --surface-strong:color-mix(in srgb,var(--ink) 7%,var(--paper));
  font-family:var(--font-body);
}
h1,h2,h3,h4{
  font-family:var(--font-display);
  font-weight:500;
  letter-spacing:-.02em;
  line-height:1.02;
}
em{
  font-family:var(--font-display);
  font-style:italic;
  font-weight:400;
  color:var(--accent);
}
.brand>span,.chapter-count,.scene-label,.stage-footer,.entrance-brand,.entrance-bottom{
  font-family:var(--font-sacred);
}
.eyebrow{
  font-family:var(--font-display);
  font-style:italic;
  font-size:18px;
  letter-spacing:.01em;
  font-weight:400;
  color:var(--accent);
}
.brand>span{
  font-size:18px;
  letter-spacing:.18em;
  font-weight:500;
}
.header nav{
  font-family:var(--font-body);
  font-size:12px;
  font-weight:500;
  letter-spacing:.04em;
  flex-wrap:nowrap;
}

/* Heartbeat background vibration & spiritual text reveal in Experience */
body[data-page=experience] .still-world{
  transform:scale(calc(1 + var(--heartbeat) * 0.014));
  transition:transform .08s ease-out;
}
body[data-page=experience] .scene-label .little-star{
  display:inline-block;
  transform:scale(calc(1 + var(--heartbeat) * 0.28)) rotate(calc(var(--heartbeat) * 18deg));
  filter:drop-shadow(0 0 calc(var(--heartbeat) * 14px) #ffd596);
}
.chapter{
  will-change:transform,opacity,filter;
  transition:opacity .45s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1),filter .55s cubic-bezier(.22,1,.36,1);
}
.chapter .chapter-count{
  font-size:9px;
  letter-spacing:.28em;
  color:#ffd596;
  opacity:.75;
  transform:translateY(10px);
  transition:transform .7s cubic-bezier(.16,1,.3,1),opacity .7s ease,letter-spacing .8s ease;
}
.chapter h1,.chapter h2{
  letter-spacing:-.01em;
  line-height:.98;
  text-shadow:0 4px 28px rgba(6,30,28,.65),0 0 calc(22px + var(--heartbeat) * 24px) rgba(255,213,150,.22);
  transition:letter-spacing .85s cubic-bezier(.16,1,.3,1),text-shadow .6s ease;
}
.chapter .chapter-copy{
  font-size:14.5px;
  font-weight:400;
  letter-spacing:.015em;
  line-height:1.75;
  transform:translateY(12px);
  opacity:.7;
  transition:transform .75s cubic-bezier(.16,1,.3,1) .08s,opacity .75s ease .08s;
}
.chapter.is-current .chapter-count{
  transform:translateY(0);
  opacity:1;
  letter-spacing:.34em;
}
.chapter.is-current h1,.chapter.is-current h2{
  letter-spacing:.005em;
}
.chapter.is-current .chapter-copy{
  transform:translateY(0);
  opacity:.96;
}

/* Scroll reveal for editorial sections */
.reveal-on-scroll{
  opacity:.94;
  transform:translateY(12px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
}
.reveal-on-scroll.is-revealed,.reduce-motion .reveal-on-scroll{
  opacity:1;
  transform:none;
}

/* ===== SHARED: Services, About, Contact Page Rules ===== */
body[data-page=services] #site-content,
body[data-page=about] #site-content,
body[data-page=contact] #site-content{opacity:1!important}
body[data-page=about] .sacred-corners,
body[data-page=contact] .sacred-corners{opacity:1}
body[data-page=about] .experience-controls,
body[data-page=contact] .experience-controls{display:none}
body[data-page=about],
body[data-page=contact]{background:var(--paper)}
body[data-page=about] .header,
body[data-page=contact] .header{
  padding-left:calc(var(--inset) + var(--seal-space));
  padding-right:calc(var(--inset) + var(--seal-space));
}
body[data-page=about] .world,
body[data-page=contact] .world{display:none}

/* ===== WARM, CLEAN EDITORIAL LAYOUT (Services, About, Contact) ===== */
.back-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:var(--muted);
  margin-bottom:28px;
  transition:color .25s;
}
.back-link:hover{color:var(--accent)}

.services-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:56px;
  padding:24px 0 64px;
}
.services-hero-heading{
  max-width:660px;
}
.services-hero .eyebrow{
  margin-bottom:12px;
}
.services-hero h1{
  font-size:clamp(64px,7.8vw,122px);
  line-height:.94;
  letter-spacing:-.03em;
}
.editorial-lead{
  font-size:15.5px;
  line-height:1.82;
  color:var(--muted);
  max-width:540px;
  margin-top:24px;
}
.services-hero-note{
  text-align:center;
  align-self:center;
  flex-shrink:0;
}
.practice-mark{
  width:210px;
  height:210px;
  display:grid;
  place-items:center;
  position:relative;
  margin:0 auto 18px;
  border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%);
}
.practice-mark i{
  display:none;
}
.practice-mark img{
  margin:0;
  opacity:.92;
}
.services-hero-note p{
  font-size:13px;
  color:var(--muted);
  line-height:1.68;
  max-width:250px;
  margin:0 auto;
}

/* Warm Photography Studies (No harsh borders, no fake labels) */
.editorial-plates{
  display:grid;
  grid-template-columns:1.3fr .9fr;
  gap:36px;
  align-items:end;
  padding:20px 0 72px;
}
.plate-item{
  margin:0;
}
.plate-frame{
  overflow:hidden;
  border-radius:10px;
  background:var(--surface);
  box-shadow:0 18px 42px rgba(42,32,27,.07);
}
.plate-item--wide .plate-frame img{
  width:100%;
  height:clamp(280px,36vw,460px);
  object-fit:cover;
  display:block;
  transition:transform 1.1s cubic-bezier(.16,1,.3,1);
}
.plate-item--narrow .plate-frame img{
  width:100%;
  height:clamp(240px,28vw,360px);
  object-fit:cover;
  display:block;
  transition:transform 1.1s cubic-bezier(.16,1,.3,1);
}
.plate-item--compact{
  margin-top:34px;
  max-width:400px;
}
.plate-item--compact .plate-frame img{
  width:100%;
  height:230px;
  object-fit:cover;
  display:block;
  transition:transform 1.1s cubic-bezier(.16,1,.3,1);
}
.plate-frame:hover img{
  transform:scale(1.02);
}
.plate-item figcaption{
  margin-top:12px;
  font-family:var(--font-display);
  font-style:italic;
  font-size:15px;
  color:var(--muted);
  line-height:1.5;
}

/* Clean, Open Offerings Sections (No index badges, minimal lines) */
.service-list{
  display:flex;
  flex-direction:column;
  gap:22px;
  margin-bottom:76px;
}
.service-row{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:44px;
  align-items:start;
  padding:38px 42px;
  border-radius:14px;
  background:var(--surface);
  scroll-margin-top:32px;
}
.row-kicker{
  font-family:var(--font-display);
  font-style:italic;
  font-size:16px;
  color:var(--accent);
  margin-bottom:6px;
}
.service-title-col h2,
.service-title-col h3{
  font-size:clamp(34px,3.8vw,52px);
  line-height:1.02;
  letter-spacing:-.02em;
  margin:0;
}
.service-title-col>p:not(.row-kicker){
  font-size:14.5px;
  color:var(--muted);
  line-height:1.78;
  max-width:460px;
  margin-top:14px;
}
.ledger-notes{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding-top:8px;
}
.ledger-notes p{
  font-size:14px;
  color:var(--muted);
  line-height:1.68;
  margin:0;
}
.ledger-notes strong{
  color:var(--ink);
  font-weight:500;
}

/* Editorial Sections & Split Headers */
.editorial-section{
  padding:72px 0;
}
.editorial-split-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:40px;
  margin-bottom:42px;
}
.editorial-split-head h2{
  font-size:clamp(50px,5.6vw,88px);
  line-height:.95;
  margin-top:8px;
}
.editorial-sub{
  font-size:14.5px;
  color:var(--muted);
  line-height:1.78;
  max-width:420px;
}

/* Weekly Schedule Rows (Soft surface container, no harsh lines) */
.rhythm-ledger{
  background:var(--surface);
  border-radius:16px;
  padding:12px 38px;
}
.rhythm-row{
  display:grid;
  grid-template-columns:200px 1fr;
  gap:28px;
  align-items:baseline;
  padding:22px 0;
  border-bottom:1px solid var(--line);
}
.rhythm-row:last-child{
  border-bottom:0;
}
.rhythm-day{
  font-family:var(--font-display);
  font-size:clamp(24px,2.4vw,32px);
  font-weight:500;
  line-height:1.15;
}
.rhythm-sessions{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.rhythm-sessions p{
  font-size:14px;
  color:var(--muted);
  line-height:1.7;
}
.rhythm-sessions span{
  font-weight:500;
  font-size:12.5px;
  color:var(--accent);
  margin-right:10px;
}
.rhythm-sessions strong{
  color:var(--ink);
  font-weight:500;
  margin-right:6px;
}
.rhythm-row--rest{
  opacity:.78;
}

/* Energy Exchange & Six Pillars */
.exchange-grid{
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:6vw;
  align-items:start;
}
.exchange-heading h2{
  font-size:clamp(50px,5.8vw,90px);
  line-height:.95;
  margin:10px 0 20px;
}
.exchange-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.exchange-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  padding:24px 30px;
  border-radius:12px;
  background:var(--surface);
}
.exchange-label h3{
  font-size:clamp(24px,2.5vw,32px);
  font-weight:500;
  margin:0;
}
.exchange-label p{
  font-size:13.5px;
  color:var(--muted);
  margin-top:4px;
  line-height:1.62;
}
.exchange-price{
  font-family:var(--font-display);
  font-size:clamp(26px,2.8vw,36px);
  font-weight:500;
  color:var(--accent);
  white-space:nowrap;
  background:color-mix(in srgb,var(--accent) 10%,var(--paper));
  padding:8px 18px;
  border-radius:999px;
}
.exchange-price small{
  font-family:var(--font-body);
  font-size:11.5px;
  color:var(--muted);
  font-weight:400;
}
.exchange-row--addon{
  background:color-mix(in srgb,var(--accent) 7%,var(--paper));
}

/* Studio Flyers Drawer */
.studio-archive{
  margin-top:40px;
}
.studio-archive summary{
  display:inline-flex;
  align-items:center;
  gap:14px;
  cursor:pointer;
  font-size:13px;
  font-weight:500;
  color:var(--accent);
  list-style:none;
}
.studio-archive summary::-webkit-details-marker{display:none}
.archive-boards{
  display:grid;
  grid-template-columns:1.3fr .85fr;
  gap:28px;
  margin-top:24px;
  align-items:start;
}
.archive-boards figure{
  margin:0;
  background:var(--surface);
  border-radius:12px;
  padding:16px;
}
.archive-boards img{
  width:100%;
  height:auto;
  display:block;
  border-radius:6px;
}
.archive-boards figcaption{
  margin-top:10px;
  font-size:12px;
  color:var(--muted);
}

/* About Page Layout */
.monograph-grid{
  display:grid;
  grid-template-columns:220px 1fr;
  gap:5vw;
  align-items:start;
}
.monograph-meta{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.monograph-aside{
  font-size:13px;
  color:var(--muted);
  line-height:1.7;
}
.monograph-body h2{
  font-size:clamp(48px,5.4vw,86px);
  line-height:.95;
  margin-bottom:26px;
}
.monograph-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px;
  margin-bottom:36px;
}
.monograph-columns p{
  font-size:15px;
  color:var(--muted);
  line-height:1.82;
}
.monograph-columns strong{
  color:var(--ink);
  font-weight:500;
}
.monograph-quote{
  margin:0 0 42px;
  padding:34px 40px;
  border-radius:14px;
  background:var(--surface);
}
.monograph-quote p{
  font-family:var(--font-display);
  font-size:clamp(24px,2.7vw,34px);
  font-style:italic;
  line-height:1.38;
  color:var(--ink);
  max-width:740px;
}
.monograph-quote cite{
  display:block;
  margin-top:14px;
  font-size:12.5px;
  font-style:normal;
  color:var(--accent);
}
.guides-ledger{
  margin-top:16px;
}
.mission-ledger{
  margin-top:34px;
  margin-bottom:0;
}
.mission-copy{
  font-size:14.5px;
  color:var(--muted);
  line-height:1.8;
  margin:0;
}
.sanskrit-epigraph{
  text-align:center;
  padding:44px 28px;
  margin-bottom:56px;
  border-radius:16px;
  background:var(--surface);
}
.sanskrit-epigraph img{
  opacity:.88;
  margin-bottom:16px;
}
.sanskrit-verse{
  font-size:clamp(20px,2.2vw,26px);
  color:var(--accent);
  letter-spacing:.06em;
  margin-bottom:10px;
}
.sanskrit-epigraph h2{
  font-size:clamp(30px,3.6vw,48px);
  font-style:italic;
  margin-bottom:8px;
}
.sanskrit-translation{
  font-size:14px;
  color:var(--muted);
}

/* Warm Contact Form */
.editorial-form{
  display:flex;
  flex-direction:column;
  gap:22px;
  background:var(--surface);
  padding:38px;
  border-radius:16px;
}
.field-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
.field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.field label{
  font-size:12.5px;
  font-weight:500;
  color:var(--ink);
}
.field input,
.field select,
.field textarea{
  width:100%;
  background:var(--paper);
  border:1px solid var(--line);
  color:var(--ink);
  padding:13px 15px;
  font-size:14.5px;
  font-family:var(--font-body);
  border-radius:8px;
  transition:border-color .25s;
}
.field select option{
  background:var(--paper);
  color:var(--ink);
}
.field input:focus,
.field select:focus,
.field textarea:focus{
  border-color:var(--accent);
  outline:none;
}
.field textarea{
  resize:vertical;
  min-height:105px;
}
.editorial-actions{
  display:flex;
  align-items:center;
  gap:32px;
  margin-top:22px;
  flex-wrap:wrap;
}
.booking-note{
  padding:72px 0 90px;
}
.booking-note h2{
  font-size:clamp(56px,6.4vw,96px);
  margin:10px 0 18px;
}
.booking-note>p:not(.eyebrow){
  font-size:15px;
  color:var(--muted);
  max-width:520px;
}

/* Responsive Breakpoints for Pages */
@media(max-width:960px){
  .services-hero{
    flex-direction:column;
    align-items:flex-start;
    gap:36px;
    padding:20px 0 52px;
  }
  .services-hero-note{
    align-self:flex-start;
    text-align:left;
    display:flex;
    align-items:center;
    gap:24px;
  }
  .services-hero-note .practice-mark{
    width:120px;
    height:120px;
    margin:0;
  }
  .services-hero-note .practice-mark img{
    width:64px;
    height:58px;
  }
  .editorial-plates,
  .exchange-grid,
  .monograph-grid,
  .archive-boards{
    grid-template-columns:1fr;
    gap:32px;
  }
  .service-row{
    grid-template-columns:1fr;
    gap:20px;
    padding:30px;
  }
  .rhythm-row{
    grid-template-columns:160px 1fr;
    gap:18px;
  }
  .monograph-columns{
    grid-template-columns:1fr;
    gap:18px;
  }
  .editorial-split-head{
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
  }
}
@media(max-width:650px){
  .header-controls .sound-control>span:last-child{
    display:none;
  }
  body[data-page=services] .header,
  body[data-page=about] .header,
  body[data-page=contact] .header{
    padding-left:var(--inset);
    padding-right:var(--inset);
    padding-top:max(74px,calc(env(safe-area-inset-top) + 62px));
    padding-bottom:10px;
    gap:10px;
    flex-wrap:wrap;
  }
  body[data-page=services] .header .brand,
  body[data-page=about] .header .brand,
  body[data-page=contact] .header .brand{
    position:absolute;
    top:max(22px,calc(env(safe-area-inset-top) + 10px));
    left:50%;
    transform:translateX(-50%);
  }
  body[data-page=services] .header nav,
  body[data-page=about] .header nav,
  body[data-page=contact] .header nav{
    display:flex;
    position:static;
    margin:0;
    gap:13px;
  }
  .header nav{
    gap:13px;
    font-size:11px;
  }
  .service-row{
    padding:24px 20px;
  }
  .rhythm-ledger{
    padding:8px 20px;
  }
  .rhythm-row{
    grid-template-columns:1fr;
    gap:6px;
    padding:18px 0;
  }
  .exchange-row{
    flex-direction:column;
    align-items:flex-start;
    gap:12px;
    padding:22px;
  }
  .editorial-form{
    padding:24px 20px;
  }
  .field-row{
    grid-template-columns:1fr;
    gap:18px;
  }
  .editorial-actions{
    flex-direction:column;
    align-items:flex-start;
    gap:16px;
  }
}
@media(max-width:380px){
  .header nav{
    gap:11px;
    font-size:9.5px;
  }
}

/* ===== VOICE ORB & CONVERSATIONAL AI ASSISTANT ===== */
[data-slot="voice-orb"]{
  position:relative;
  aspect-ratio:1/1;
  flex-shrink:0;
}
.voice-orb-motion{
  width:100%;
  height:100%;
  will-change:transform;
}
.voice-orb-canvas{
  display:block;
  width:100%;
  height:100%;
}

/* Floating Bottom-Right Corner Orb Button */
.ai-orb-trigger{
  position:fixed;
  right:var(--inset);
  bottom:24px;
  z-index:48;
  display:grid;
  place-items:center;
  padding:0;
  background:transparent;
  border:0;
  border-radius:50%;
  filter:drop-shadow(0 12px 28px rgba(42,32,27,.22));
  transition:bottom .4s cubic-bezier(.16,1,.3,1),transform .3s ease,opacity .4s ease;
}
html:not(.entered) .ai-orb-trigger,
.ai-assistant-open .ai-orb-trigger{
  opacity:0;
  pointer-events:none;
  transform:translateY(12px) scale(.94);
}
.controls-visible .ai-orb-trigger{
  bottom:82px;
}
.ai-orb-trigger:hover{
  transform:translateY(-2px) scale(1.04);
}
.ai-orb-mini{
  width:56px;
  height:56px;
  border-radius:50%;
  overflow:hidden;
}

/* Full-Screen AI Assistant Overlay */
.ekyam-assistant{
  position:fixed;
  inset:0;
  z-index:95;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:24px var(--inset) 26px;
  background:var(--paper);
  color:var(--ink);
  opacity:0;
  transform:scale(.99);
  transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1),background-color .6s ease,color .6s ease;
  overflow:hidden;
}
.ekyam-assistant[hidden]{
  display:none;
}
.ekyam-assistant.is-open{
  opacity:1;
  transform:scale(1);
}

/* Top Bar with Top-Left Exit Button */
.ai-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-shrink:0;
}
.ai-back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 18px;
  border-radius:999px;
  background:var(--surface);
  font-size:13px;
  font-weight:500;
  color:var(--ink);
  transition:background-color .25s,color .25s;
}
.ai-back:hover{
  background:var(--surface-strong);
  color:var(--accent);
}
.ai-top-right{
  display:flex;
  align-items:center;
  gap:14px;
}
.ai-mode{
  font-family:var(--font-display);
  font-style:italic;
  font-size:16px;
  color:var(--muted);
}
.ai-voice-toggle{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 14px;
  border-radius:999px;
  background:var(--surface);
  font-size:12px;
  color:var(--muted);
  transition:color .25s,background-color .25s;
}
.ai-voice-toggle[aria-pressed="true"]{
  color:var(--accent);
  background:color-mix(in srgb,var(--accent) 11%,var(--paper));
}

/* Pinned Top Orb Stage & Lower Scrollable Conversational Body */
.ai-orb-stage{
  flex-shrink:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:8px 0 6px;
  z-index:2;
}
.ai-center-orb{
  width:clamp(132px,16vw,176px);
  height:clamp(132px,16vw,176px);
  filter:drop-shadow(0 18px 36px rgba(42,32,27,.14));
}
.ai-status{
  margin-top:8px;
  font-size:12.5px;
  color:var(--muted);
  min-height:19px;
}
.ai-body{
  flex:1;
  min-height:0;
  overflow-y:auto;
  display:flex;
  justify-content:center;
  padding:14px 0 18px;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 18px,#000 calc(100% - 14px),transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0,#000 18px,#000 calc(100% - 14px),transparent 100%);
}
.ai-column{
  width:100%;
  max-width:680px;
  margin-top:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.ai-greeting{
  text-align:center;
  max-width:520px;
  margin-bottom:20px;
}
.ai-greeting h2{
  font-size:clamp(34px,4vw,50px);
  line-height:1.05;
  margin-bottom:10px;
}
.ai-greeting p{
  font-size:14.5px;
  color:var(--muted);
  line-height:1.68;
}
.ai-suggest{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin-bottom:14px;
}
.ai-suggest button{
  padding:9px 16px;
  border-radius:999px;
  background:var(--surface);
  font-size:12.5px;
  color:var(--ink);
  transition:background-color .2s,color .2s;
}
.ai-suggest button:hover{
  background:color-mix(in srgb,var(--accent) 12%,var(--paper));
  color:var(--accent);
}

/* Conversation Thread */
.ai-thread{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:8px 0;
}
.msg{
  max-width:85%;
  padding:14px 18px;
  border-radius:18px;
  font-size:14.5px;
  line-height:1.68;
}
.msg p{
  margin:0;
  white-space:pre-wrap;
}
.msg p + p{
  margin-top:10px;
}
.msg--user{
  align-self:flex-end;
  background:var(--ink);
  color:var(--paper);
  border-bottom-right-radius:4px;
}
.msg--ai{
  align-self:flex-start;
  background:var(--surface);
  color:var(--ink);
  border-bottom-left-radius:4px;
}

/* Bottom Text & Voice Composer */
.ai-composer-wrap{
  width:100%;
  max-width:680px;
  margin:0 auto;
  flex-shrink:0;
}
.ai-composer{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border-radius:999px;
  background:var(--surface);
  border:1px solid var(--line);
}
.ai-mic{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:10px 16px;
  border-radius:999px;
  background:var(--paper);
  font-size:12.5px;
  font-weight:500;
  color:var(--ink);
  flex-shrink:0;
  transition:background-color .25s,color .25s;
}
.ai-mic.is-listening,
.ai-mic[aria-pressed="true"]{
  background:var(--accent);
  color:var(--paper);
}
.ai-input{
  flex:1;
  min-width:0;
  border:0;
  background:transparent;
  color:var(--ink);
  font-size:14.5px;
  padding:8px 6px;
  font-family:var(--font-body);
}
.ai-input:focus{
  outline:none;
}
.ai-send{
  width:40px;
  height:40px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--ink);
  color:var(--paper);
  flex-shrink:0;
  transition:transform .2s,background-color .2s;
}
.ai-send:hover{
  background:var(--accent);
  transform:scale(1.04);
}
.ai-note{
  text-align:center;
  font-size:11.5px;
  color:var(--muted);
  margin-top:8px;
}

@media(max-width:650px){
  .ai-orb-trigger{
    right:var(--inset);
    bottom:max(18px,env(safe-area-inset-bottom));
    padding:5px 14px 5px 5px;
  }
  .controls-visible .ai-orb-trigger{
    bottom:max(74px,calc(env(safe-area-inset-bottom) + 58px));
  }
  .ai-orb-mini{
    width:38px;
    height:38px;
  }
  .ekyam-assistant{
    padding:18px var(--inset) max(18px,env(safe-area-inset-bottom));
  }
  .ai-mode{
    display:none;
  }
  .ai-center-orb{
    width:130px;
    height:130px;
  }
  .ai-greeting h2{
    font-size:30px;
  }
  .msg{
    max-width:92%;
    font-size:14px;
  }
  .ai-mic span{
    display:none;
  }
  .ai-mic{
    padding:10px;
  }
}

/* The journey and the chakra close-ups share one fixed stage. */
.journey{height:900svh}
.journey-stage{position:fixed;inset:0;height:100svh;min-height:0}
.chakra-view .journey-stage{visibility:hidden;pointer-events:none}
.chakra-sanctuary{position:relative;height:800svh;--chakra-accent:#c77dff;--chakra-high:#f5d6ff}
.chakra-stage{position:fixed;inset:0;z-index:4;height:100svh;overflow:hidden;color:#f4eee4;background:#0c0a0f;--chakra-copy-opacity:1;--chakra-copy-shift:0px}
.chakra-stage[hidden]{display:none}
.chakra-stage:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 30% 50%,color-mix(in srgb,var(--chakra-accent) 7%,transparent),transparent 60%)}
#chakra-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.chakra-mast{position:absolute;top:34px;left:var(--inset);z-index:2;font-size:9px;letter-spacing:.16em;color:#cabfaa}
.chakra-mast span{margin:0 12px;opacity:.4}
.chakra-ui{position:absolute;inset:0;pointer-events:none}
.chakra-overview-head,.chakra-detail-card{position:absolute;left:60%;right:7%;top:50%;transform:translateY(-50%);opacity:0;visibility:hidden;pointer-events:none}
.chakra-overview-head.is-visible,.chakra-detail-card.is-visible{visibility:visible;opacity:1;pointer-events:auto}
.chakra-detail-card.is-visible{opacity:var(--chakra-copy-opacity);transform:translateY(calc(-50% + var(--chakra-copy-shift)))}
.chakra-kicker,.chakra-step-num{font-size:10px;letter-spacing:.16em;line-height:1.6;color:#b7ac9c;margin:0 0 24px}
.chakra-overview-head h2{font-family:var(--font-display);font-size:clamp(56px,7vw,108px);line-height:.95;font-weight:400;margin:0 0 26px}
.chakra-overview-head h2 em{color:#d5bd8d}
.chakra-overview-sub{font-size:14px;line-height:1.85;max-width:330px;color:#beb6bf}
.chakra-step-num{margin-bottom:18px;color:var(--chakra-high)}
.chakra-title{font-family:var(--font-display);font-size:clamp(48px,5.4vw,82px);line-height:.95;font-weight:400;color:#f4eee4;margin:0 0 10px}
.chakra-sanskrit{font-family:var(--font-display);font-style:italic;font-size:24px;color:var(--chakra-accent);margin:0 0 28px}
.chakra-detail{font-size:14px;line-height:1.85;color:#c6bec8;margin:0 0 28px;max-width:410px}
.chakra-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px;margin:0;padding-top:22px;border-top:1px solid #e8dbcb24}
.chakra-meta-grid div:last-child{grid-column:1 / -1}
.chakra-meta-grid dt{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#a498a9;margin-bottom:7px}
.chakra-meta-grid dd{font-size:12px;line-height:1.75;color:#ece3ed;margin:0}
.chakra-inscription{position:absolute;z-index:1;transform:translate(-50%,-50%);aspect-ratio:1;pointer-events:none;opacity:0;color:#fff3db;filter:drop-shadow(0 1px 2px #100b2099)}
.chakra-inscription svg{width:100%;height:100%;display:block;overflow:visible}
.chakra-inscription svg path,.chakra-inscription svg polygon,.chakra-inscription svg circle,.chakra-inscription svg line,.chakra-inscription svg rect{fill:none;stroke:currentColor;stroke-width:1;opacity:.82}
.chakra-inscription svg text{fill:currentColor;font-size:40px;font-weight:400}
.chakra-rail{position:absolute;left:var(--inset);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;pointer-events:auto}
.chakra-rail-dot{position:relative;display:flex;align-items:center;gap:12px;min-width:44px;height:44px;padding:0;background:none;border:0;color:#918794;font-size:9px;cursor:pointer;font-variant-numeric:tabular-nums}
.chakra-rail-dot i{display:block;width:16px;height:1px;background:#ffffff25;transition:width .25s,background .25s}
.chakra-rail-dot.is-active{color:#fff1df}
.chakra-rail-dot.is-active i{background:var(--dot-color);width:30px}
.chakra-rail-label{position:absolute;left:74px;white-space:nowrap;opacity:0;color:#e8dfed;font-size:9px;letter-spacing:.04em;pointer-events:none}
.chakra-rail-dot:hover .chakra-rail-label,.chakra-rail-dot:focus-visible .chakra-rail-label{opacity:1}
.chakra-rail-dot:focus-visible{outline:1px solid var(--chakra-high);outline-offset:4px}
.chakra-stage-foot{position:absolute;left:var(--inset);right:var(--inset);bottom:max(26px,env(safe-area-inset-bottom));display:flex;justify-content:space-between;align-items:center;gap:20px;color:#bfb3c5;pointer-events:auto}
.chakra-stage-foot>a{font-size:10px;line-height:1.5;min-height:44px;display:inline-flex;align-items:center;color:#e8dfed;white-space:nowrap}
.chakra-stage-foot .text-link{border:0;padding:0;margin:0;gap:16px;font-size:10px}
.chakra-stage-foot .text-link span{font-size:18px}
.chakra-stage-foot>span{font-size:9px;letter-spacing:.04em;color:#9e92a7}
.chakra-view .sacred-corners,.chakra-view .ai-orb-trigger{visibility:hidden;pointer-events:none}
.chakra-view.controls-visible .header-controls{z-index:10;top:22px;bottom:auto;background:transparent;border-color:#e8dbcb24;backdrop-filter:none;color:#f4eee4}
.chakra-view .header .sound-control,.chakra-view .header .atmosphere-control select{color:#f4eee4}
.chakra-view .header-controls .atmosphere-control{border-color:#e8dbcb24}
.chakra-view .experience-controls{top:22px;bottom:auto;left:calc(var(--inset) + 250px)}
.chakra-view .experience-controls>button{background:#17131d;border-color:#e8dbcb24}
.chakra-view .experience-controls svg{stroke:#d6cadd;fill:#17131d}
.chakra-view .settings{top:80px;bottom:auto}
.realm-transition{overscroll-behavior:none}
.realm-transition .page-wipe{pointer-events:auto}
.chakra-fallback:after{content:"";position:absolute;left:30%;top:50%;width:var(--fallback-orb-size);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 28%,var(--chakra-high),var(--chakra-accent) 35%,#19101f 80%);z-index:0}
@media(max-width:1100px) and (min-width:761px){
 .chakra-detail-card,.chakra-overview-head{left:58%;right:5%}.chakra-detail{font-size:13px}.chakra-title{font-size:56px}
 .chakra-view .experience-controls{display:none}
}
@media(max-width:760px) and (min-height:501px){
 .chakra-mast{top:26px;left:24px;font-size:8px;max-width:130px;line-height:1.8}
 .chakra-mast span{margin:0 5px}
 .chakra-view.controls-visible .header-controls{top:20px;right:20px;padding:0 10px;gap:8px}
 .chakra-view .experience-controls{display:none}
 .chakra-stage:before{background:radial-gradient(ellipse at 50% 26%,color-mix(in srgb,var(--chakra-accent) 8%,transparent),transparent 50%)}
 .chakra-overview-head,.chakra-detail-card{left:26px;right:26px;top:51%;transform:none;max-width:470px;margin:0 auto}
 .chakra-detail-card.is-visible{transform:translateY(var(--chakra-copy-shift))}
 .chakra-overview-head h2{font-size:60px;margin-bottom:20px}
 .chakra-overview-sub{font-size:13px;max-width:320px;line-height:1.8}
 .chakra-kicker{font-size:9px;margin-bottom:16px}
 .chakra-step-num{font-size:9px;margin-bottom:10px}
 .chakra-title{font-size:clamp(38px,11vw,52px);line-height:.95;margin-bottom:6px}
 .chakra-sanskrit{font-size:20px;margin-bottom:16px}
 .chakra-detail{font-size:12px;line-height:1.75;margin-bottom:18px;max-width:none}
 .chakra-meta-grid{padding-top:15px;gap:14px 20px}
 .chakra-meta-grid dt{font-size:8px;margin-bottom:4px}
 .chakra-meta-grid dd{font-size:11px;line-height:1.6}
 .chakra-rail{left:26px;right:26px;top:43%;transform:none;flex-direction:row;justify-content:space-between;gap:0}
 .chakra-rail-dot{min-width:32px;flex-direction:column;justify-content:center;gap:9px;height:44px;font-size:9px}
 .chakra-rail-dot i{width:12px}.chakra-rail-dot.is-active i{width:24px}
 .chakra-rail-label{display:none}
 .chakra-stage-foot{left:26px;right:26px;bottom:max(8px,env(safe-area-inset-bottom))}
 .chakra-stage-foot>span{display:none}
 .chakra-fallback:after{left:50%;top:27%}
}
@media(max-width:760px) and (max-height:740px) and (min-height:501px){
 .chakra-overview-head,.chakra-detail-card{top:50%;left:22px;right:22px}
 .chakra-title{font-size:36px}.chakra-sanskrit{font-size:18px;margin-bottom:12px}
 .chakra-step-num{margin-bottom:8px}
 .chakra-detail{font-size:11px;line-height:1.65;margin-bottom:12px}
 .chakra-meta-grid{gap:10px;padding-top:12px}.chakra-meta-grid dd{font-size:10px}
 .chakra-rail{top:42%;left:22px;right:22px}
 .chakra-overview-head h2{font-size:48px}
}
@media(max-height:500px){
 .chakra-mast{top:22px;font-size:8px}.chakra-view .experience-controls{display:none}
 .chakra-overview-head,.chakra-detail-card{left:58%;right:5%;top:52%}
 .chakra-title{font-size:38px}.chakra-step-num{margin-bottom:8px}.chakra-sanskrit{font-size:18px;margin-bottom:12px}
 .chakra-detail{font-size:11px;line-height:1.6;margin-bottom:12px}
 .chakra-meta-grid{gap:10px;padding-top:10px}.chakra-meta-grid dd{font-size:10px}.chakra-meta-grid dt{font-size:8px;margin-bottom:3px}
 .chakra-stage-foot{bottom:4px}.chakra-stage-foot>span{display:none}
 .chakra-rail{gap:0;left:20px}.chakra-rail-dot{height:34px;font-size:8px}
 .chakra-rail-label{display:none}.chakra-overview-head h2{font-size:48px}.chakra-overview-sub{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.chakra-rail-dot i{transition:none}}
.reduce-motion .chakra-rail-dot i{transition:none}

.chakra-view.controls-visible body[data-page=experience] .header-controls,.chakra-view body[data-page=experience] .header .atmosphere-control select{color:#f4eee4}

@media(max-width:760px) and (min-height:501px) and (max-height:620px){
 .chakra-step-num{font-size:8px;margin-bottom:6px}
 .chakra-title{font-size:34px;margin-bottom:5px}
 .chakra-sanskrit{font-size:17px;line-height:1.1;margin-bottom:10px}
 .chakra-detail{font-size:10.5px;line-height:1.6;margin-bottom:10px}
 .chakra-meta-grid{gap:8px;padding-top:10px}
 .chakra-meta-grid dt{font-size:7px;margin-bottom:3px}
 .chakra-meta-grid dd{font-size:10px;line-height:1.5}
}

/* Continuous cosmic field; reading areas stay quiet in the shaders. */
.chakra-sanctuary{height:1040svh}
.chakra-stage{touch-action:pan-y;overscroll-behavior:auto}
.chakra-finale{position:absolute;top:80px;left:0;right:0;text-align:center;z-index:2;opacity:0;visibility:hidden;transition:opacity .8s}
.chakra-finale.is-visible{opacity:1;visibility:visible}
.chakra-finale h2{font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1.1;color:#ede6da;margin-bottom:10px}
.chakra-finale p{font-size:11px;letter-spacing:.04em;color:#b3aabb}
.is-finale .chakra-rail{visibility:hidden}
.chakra-inscription{will-change:opacity,transform}
@media(max-width:760px) and (min-height:501px){
 .chakra-sanctuary{height:900svh}
 .chakra-stage-foot>span{display:block;position:absolute;left:0;right:0;text-align:center;bottom:48px;font-size:9px;pointer-events:none}
 .chakra-finale{top:88px}.chakra-finale h2{font-size:27px}.chakra-finale p{font-size:10px}
 .is-finale .chakra-stage-foot>span{bottom:46px}
}
@media(max-width:760px) and (max-height:620px){.chakra-stage-foot>span{display:none}.is-finale .chakra-stage-foot>span{display:block}.chakra-finale{top:76px}.chakra-finale h2{font-size:24px}}
@media(max-height:500px){.chakra-finale{top:70px}.chakra-finale h2{font-size:22px}.chakra-finale p{font-size:9px}}

@media(max-width:760px) and (min-height:501px) and (max-height:620px){
 .chakra-stage-foot{gap:8px}
 .chakra-stage-foot>span{display:block;position:static;left:auto;right:auto;bottom:auto;font-size:0;letter-spacing:0}
 .chakra-stage-foot>span:after{content:"Scroll ↓";font-size:8px;white-space:nowrap}
 .is-finale .chakra-stage-foot>span{position:absolute;left:0;right:0;bottom:46px;font-size:9px}
 .is-finale .chakra-stage-foot>span:after{content:none}
}
.chakra-finale{max-width:460px;margin:auto;padding:10px 16px;background:radial-gradient(ellipse,#0c0b1480,transparent 72%)}

/* Stable navigation and utilities: one position throughout the scroll journey. */
body[data-page] .header{position:fixed;inset:0 0 auto;min-height:76px;padding:18px var(--inset);z-index:20;gap:20px;flex-wrap:nowrap;background:linear-gradient(#06212b99,transparent);color:#f5f2e8}
body:not([data-page=experience]) .header{background:var(--panel);color:var(--ink);border-bottom:1px solid var(--line)}
body[data-page] .header .brand{position:static;transform:none;flex-shrink:0}
.header #header-controls{position:static;inset:auto;margin:0;padding:0;display:flex;align-items:center;gap:16px;min-height:44px;flex-shrink:0;border:0;border-radius:0;background:transparent;color:inherit;backdrop-filter:none;text-shadow:none}
body:not([data-page=experience]) #header-controls{background:transparent;border-color:var(--line)}
#header-controls .atmosphere-control{padding-left:12px;gap:6px;border-color:#f4eee430;color:inherit}
body:not([data-page=experience]) #header-controls .atmosphere-control{border-color:var(--line)}
#header-controls .atmosphere-control{position:relative}
#header-controls .atmosphere-value{font-size:11px;white-space:nowrap}
#header-controls .atmosphere-control:after{content:"⌄";font-size:12px;margin-left:2px}
#header-controls .atmosphere-control select{position:absolute;inset:0;width:100%;max-width:none;height:100%;opacity:0;color:inherit}
#header-controls .atmosphere-control:has(select:focus-visible){outline:2px solid currentColor;outline-offset:4px;border-radius:3px}
#header-controls .sound-control{color:inherit;min-height:44px;font-size:11px}
.header #primary-nav{position:static;margin:0;display:flex;gap:28px;flex-wrap:nowrap;font-size:12px;letter-spacing:.01em}
.mobile-menu-toggle{display:none}
.chakra-mast{display:none}
.chakra-view body[data-page] .header{background:linear-gradient(#0c0b14dd,transparent)}
.chakra-view .experience-controls{top:auto;bottom:20px;left:var(--inset)}
.chakra-view .settings{top:auto;bottom:80px}
.chakra-view .chakra-stage-foot{bottom:24px;left:calc(var(--inset) + 70px)}
.chakra-view .chakra-stage-foot>span{left:0;right:0}
.journey-stage .stage-footer,.controls-visible .journey-stage .stage-footer{bottom:92px}
#ai-orb-trigger,.controls-visible #ai-orb-trigger{right:var(--inset);bottom:max(20px,env(safe-area-inset-bottom));display:flex;gap:4px;padding:4px 16px 4px 4px;min-height:50px;border:1px solid var(--line);border-radius:28px;background:var(--panel);color:var(--ink);filter:none;box-shadow:0 5px 24px #0b1c2418;transition:opacity .25s,transform .25s}
#ai-orb-trigger .ai-orb-mini{width:42px;height:42px}
.ai-launcher-label{display:block;text-align:left;font-size:12px;font-weight:500;line-height:1.3}
.ai-launcher-label small{display:block;font-size:9px;font-weight:400;opacity:.7;margin-top:3px}
.ai-assistant-open{overflow:hidden}
.menu-open .sacred-corners{visibility:hidden}
@media(max-width:900px){
 body[data-page] .header{min-height:72px;padding:max(12px,env(safe-area-inset-top)) 16px 10px;gap:8px}
 body[data-page] .header .brand{gap:7px}
 body[data-page] .header .brand img{width:25px;height:25px}
 body[data-page] .header .brand>span{font-size:14px;letter-spacing:.12em}
 body[data-page] .header .brand small{font-size:5px;letter-spacing:.34em;margin-top:4px}
 .header #header-controls{margin-left:auto;min-height:44px;padding:0;gap:10px}
 #header-controls .sound-control{min-width:30px;justify-content:center}
 #header-controls .sound-control>span:last-child{display:none}
 #header-controls .atmosphere-control{padding-left:7px;gap:3px}
 #header-controls .sun-icon{font-size:19px}
 #header-controls .atmosphere-value{font-size:10px}
 .header #mobile-menu-toggle{display:grid;place-items:center;width:44px;min-width:44px;min-height:44px;padding:0;flex-shrink:0;color:inherit}
 .menu-lines{position:relative;display:block;width:20px;height:14px}
 .menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0;right:0;height:1px;background:currentColor;top:3px;transition:transform .25s}
 .menu-lines:after{top:10px}
 .menu-open .menu-lines:before{transform:translateY(3.5px) rotate(45deg)}
 .menu-open .menu-lines:after{transform:translateY(-3.5px) rotate(-45deg)}
 .menu-open body[data-page] .header{background:var(--paper);color:var(--ink)}
 .header #primary-nav{display:none}
 .menu-open .header #primary-nav{display:flex;position:fixed;top:max(72px,calc(env(safe-area-inset-top) + 60px));left:0;right:0;flex-direction:column;gap:0;padding:8px 24px 20px;background:var(--paper);color:var(--ink);border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;z-index:25}
 .menu-open .header #primary-nav a{display:flex;align-items:center;justify-content:space-between;min-height:52px;margin:0;padding:12px 0;font-family:var(--font-display);font-size:19px;letter-spacing:-.02em;color:var(--ink);text-shadow:none;border-bottom:1px solid var(--line)}
 .menu-open .header #primary-nav a:last-child{border-bottom:0}
 .menu-open .header #primary-nav a[aria-current]{color:var(--accent)}
 .sacred-slot{top:82px;width:40px;height:40px}
 .sacred-flower{left:16px}.sacred-yantra{right:16px}
 .chakra-view .experience-controls{display:none}
 .chakra-view .chakra-stage-foot{left:26px;bottom:max(8px,env(safe-area-inset-bottom))}
}
@media(max-width:380px){body[data-page] .header .brand>span{display:none}}
@media(max-width:650px){
 :root{--inset:22px}
 #ai-orb-trigger,.controls-visible #ai-orb-trigger{right:16px;bottom:max(14px,env(safe-area-inset-bottom));padding:3px 12px 3px 3px;min-height:46px;gap:1px}
 #ai-orb-trigger .ai-orb-mini{width:38px;height:38px}
 .ai-launcher-label{font-size:11px}.ai-launcher-label small{font-size:8px;margin-top:2px}
 .journey-stage .stage-footer,.controls-visible .journey-stage .stage-footer{bottom:82px;font-size:6px;gap:12px}
 .journey-stage .stage-progress{gap:8px}.journey-stage .progress-line{width:54px}
 .journey-stage .chapter-stack,.controls-visible .journey-stage .chapter-stack{bottom:22%;right:52px}
 .journey-stage .scene-label{top:18%}
 .ekyam-assistant{padding-top:max(16px,env(safe-area-inset-top))}
}
@media(max-height:620px) and (max-width:650px){
 .journey-stage .chapter-stack,.controls-visible .journey-stage .chapter-stack{bottom:25%}
 .journey-stage .chapter h1,.journey-stage .chapter h2{font-size:60px}
 .journey-stage .sacred-chapter h2{font-size:49px}
 .journey-stage .chapter-copy{font-size:11px;line-height:1.6}
 .journey-stage .scene-label{display:none}
}
@media(prefers-reduced-motion:reduce){#ai-orb-trigger,.menu-lines:before,.menu-lines:after{transition:none}}

@media(max-width:900px){
 .experience-controls{z-index:40}
 .entered body[data-page=experience] .experience-controls{opacity:1;pointer-events:auto}
 .services-view .experience-controls{display:none}
 .journey-stage .stage-footer,.controls-visible .journey-stage .stage-footer{bottom:calc(82px + env(safe-area-inset-bottom))}
 .footer{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
}

@media(max-width:650px){
 .journey-stage .scene-label{display:none}
 .journey-stage .chapter-nav a{font-size:0;min-width:32px;min-height:26px}
 .journey-stage .chapter-nav a:before{width:4px}
 .journey-stage .chapter-nav a[aria-current]:before{width:14px}
}


/* Clear, grounded headings, shared across the journey and studio pages. */
h1,h2,h3,h4{font-weight:400;letter-spacing:-.05em;line-height:1.08}
h1 em,h2 em,h3 em,h4 em{font-family:inherit;font-style:normal;font-weight:inherit}
.eyebrow{font-family:var(--font-body);font-size:11px;font-style:normal;font-weight:500;letter-spacing:.12em;line-height:1.7;text-transform:uppercase}
.chapter-count,.stage-footer,.entrance-bottom{font-family:Manrope,sans-serif}
.journey-stage .chapter h1,.journey-stage .chapter h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.055em;line-height:1.04;text-shadow:0 3px 24px #061e1c80}
.journey-stage .chapter-count,.journey-stage .chapter.is-current .chapter-count{font-weight:500;letter-spacing:.18em}
.entrance-center h1{font-size:clamp(60px,7vw,104px);letter-spacing:-.055em;line-height:1.08}
.services-hero h1{font-size:clamp(60px,7.2vw,106px);letter-spacing:-.055em;line-height:1.08}
.preview-heading h2{font-size:clamp(64px,7vw,108px);line-height:1.08}
.preview-list>a{font-family:var(--font-display);font-size:30px;letter-spacing:-.035em}
.chakra-title,.chakra-overview-head h2,.chakra-finale h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.05em;line-height:1.08}
.chakra-sanskrit{font-family:var(--font-body);font-style:normal;letter-spacing:.02em;font-size:16px}
.chakra-view .chakra-stage-foot{left:var(--inset)}

/* The geometry sits behind the content, half outside the page on either side. */
.sacred-corners{inset:0;z-index:0;overflow:hidden;contain:paint;transition:opacity .8s;pointer-events:none}
.sacred-slot{--geometry-size:clamp(400px,44vw,620px);position:absolute;top:calc(76px - var(--geometry-size) * .35);width:var(--geometry-size);height:var(--geometry-size);background:none;color:var(--accent);opacity:.23}
.sacred-flower{left:calc(var(--geometry-size) * -.54);mask-image:linear-gradient(90deg,#000 48%,#000b 74%,transparent)}
.sacred-yantra{right:calc(var(--geometry-size) * -.53);mask-image:linear-gradient(270deg,#000 48%,#000b 74%,transparent)}
.sacred-layer{position:absolute;inset:0;overflow:visible;opacity:1;transform-origin:50% 50%;animation:sacred-orbit var(--orbit-time,240s) linear infinite;animation-direction:var(--orbit-direction,normal);will-change:transform}
.sacred-layer--seed{--orbit-time:140s}
.sacred-layer--bloom{--orbit-time:220s;--orbit-direction:reverse}
.sacred-layer--rim{--orbit-time:320s;opacity:.65}
.sacred-layer--heart{--orbit-time:180s}
.sacred-layer--lotus-inner{--orbit-time:240s;--orbit-direction:reverse}
.sacred-layer--lotus-outer{--orbit-time:300s}
.sacred-layer--gate{--orbit-time:400s;--orbit-direction:reverse;opacity:.65}
@keyframes sacred-orbit{to{transform:rotate(360deg)}}
@media(max-width:900px){
 .sacred-slot{--geometry-size:clamp(360px,48vw,480px);top:calc(72px - var(--geometry-size) * .35);opacity:.2}
 .sacred-flower{left:calc(var(--geometry-size) * -.54)}
 .sacred-yantra{right:calc(var(--geometry-size) * -.53)}
}
@media(max-width:650px){
 .journey-stage .chapter h1,.journey-stage .chapter h2{font-size:clamp(49px,14vw,74px);line-height:1.06}
 .journey-stage .sacred-chapter h2{font-size:clamp(46px,12vw,62px)}
 .entrance-center h1{font-size:clamp(48px,13vw,76px)}
 .services-hero h1{font-size:clamp(48px,12vw,70px)}
 .preview-heading h2{font-size:clamp(48px,12vw,70px)}
 .preview-list>a{font-size:25px}
 .sacred-slot{--geometry-size:320px;top:-56px;opacity:.18}
 .sacred-flower{left:calc(var(--geometry-size) * -.58)}
 .sacred-yantra{right:calc(var(--geometry-size) * -.58)}
 body[data-page=services] .services-page{padding-top:112px}
 body[data-page=services] .services-hero{gap:22px;padding:12px 0 24px}
 body[data-page=services] .services-hero-note{gap:14px}
 body[data-page=services] .services-hero-note .practice-mark{width:84px;height:84px}
 body[data-page=services] .services-hero-note .practice-mark img{width:52px;height:48px}
 body[data-page=services] .services-hero-note p{font-size:12px}
 body[data-page=services] .editorial-plates{padding-top:12px}
}
@media(max-height:500px){
 .journey-stage .chapter h1,.journey-stage .chapter h2{font-size:52px}
 .journey-stage .sacred-chapter h2{font-size:42px}
 .entrance-center h1{font-size:44px}
}
@media(prefers-reduced-motion:reduce){.sacred-layer{animation:none;will-change:auto}}
.reduce-motion .sacred-layer{animation:none;will-change:auto}

/* Follow the visible phone viewport instead of leaving a shelf below the world. */
.world,.journey-stage{height:100dvh}
@media(max-width:900px){html.entered body:after{content:none;display:none}}

/* Book material stays with its answer; credits are visual, never spoken. */
.ai-response{width:100%;min-width:0;align-self:flex-start}
.ai-response>.msg{margin:0}
.ai-book-reference{max-width:85%;margin:10px 0 0;padding:0 4px 22px}
.ai-book-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin:0 0 10px;max-width:650px}
.ai-book-gallery figure{margin:0;min-width:0;max-width:220px}
.ai-book-gallery a{display:block;border-radius:10px;overflow:hidden;background:#fff}
.ai-book-gallery img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.ai-book-gallery figcaption{font-size:12px;line-height:1.45;padding:7px 0;color:var(--ink)}
.ai-book-gallery figcaption small{display:block;font-size:10px;opacity:.7;margin-top:2px}
.ai-book-credit{font-size:10.5px;line-height:1.55;color:var(--ink);opacity:.7;margin:3px 0;overflow-wrap:anywhere}
@media(max-width:600px){.ai-book-reference{max-width:100%}.ai-book-gallery{gap:9px}.ai-book-gallery figure{max-width:200px}}
