/* Light, stillness and movement throughout the sanctuary. */
.sacred-sky{position:fixed;inset:0;width:100%;height:100%;z-index:24;pointer-events:none;opacity:.72}
.sacred-pointer{position:fixed;left:0;top:0;width:460px;height:460px;border-radius:50%;pointer-events:none;z-index:23;opacity:0;background:radial-gradient(circle,rgba(245,214,145,.085),rgba(220,174,86,.028) 30%,transparent 68%);transition:opacity 1s;mix-blend-mode:screen}
.sacred-pointer.is-present{opacity:1}
.sacred-progress{position:fixed;z-index:45;left:0;top:0;right:0;height:2px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#785d31,#e1bf70,#fff1c8);box-shadow:0 0 12px #ecd49b7a;pointer-events:none}
.fx-scene{position:relative;isolation:isolate}
.scene-atmosphere{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.scene-atmosphere:before{content:'';position:absolute;width:75%;height:70%;left:-25%;top:10%;background:radial-gradient(ellipse,rgba(177,131,55,.09),transparent 66%);transform:rotate(-20deg)}
.fx-scene:nth-of-type(even)>.scene-atmosphere:before{left:auto;right:-22%;top:30%;background:radial-gradient(ellipse,rgba(203,159,74,.08),transparent 68%)}
.scene-light{position:absolute;top:0;left:15%;right:15%;height:1px;z-index:4;pointer-events:none;background:linear-gradient(90deg,transparent,#b79754a6,transparent);box-shadow:0 0 17px #e0ba723b;transform:scaleX(.35);opacity:.28;transition:transform 1.7s ease,opacity 1.7s ease}
.scene-visible>.scene-light{transform:scaleX(1);opacity:.85}
.sacred-orbit{position:absolute;width:520px;height:520px;right:-170px;top:60px;border:1px solid rgba(218,189,124,.12);border-radius:50%;transform:rotate(-18deg)}
.sacred-orbit:before,.sacred-orbit:after{content:'';position:absolute;border-radius:50%;pointer-events:none}
.sacred-orbit:before{inset:23px;border:1px solid rgba(218,189,124,.065);box-shadow:0 0 55px #c898400a,inset 0 0 55px #c898400a}
.sacred-orbit:after{inset:55px;border:1px dashed rgba(218,189,124,.08)}
.elements-section .sacred-orbit{width:680px;height:680px;top:20%;right:-380px}
.closing .sacred-orbit,.reception .sacred-orbit{width:670px;height:670px;right:calc(50% - 335px);top:25px;border-color:#d4b26c1a}
.fx-enter{transition:opacity .95s ease,transform 1.1s cubic-bezier(.2,.7,.2,1);transition-delay:var(--entry-delay,0ms)}
.sacred-motion .fx-enter:not(.has-entered){opacity:0;transform:translateY(23px)}
.fx-enter.has-entered{opacity:1;transform:translateY(0)}
.sacred-motion .hero h1>span{animation:sacred-title 1.8s cubic-bezier(.2,.7,.2,1) both}
.sacred-motion .hero h1>span+span{animation-delay:.3s}
.sacred-motion .hero-overline{animation:sacred-arrival 1.6s .15s both}
.sacred-motion .hero-bottom{animation:sacred-arrival 1.7s .55s both}
.sacred-motion .inner-hero h1{animation:sacred-title 1.4s .1s both}
.sacred-motion .wisdom-title-art span{animation:sacred-arrival 1.3s both;animation-delay:calc(var(--glyph-order,0)*.14s + .2s)}
.sacred-motion .hero-landscape{animation-play-state:paused}
.sacred-motion .hero.scene-visible .hero-landscape{animation-play-state:running}
.fx-photo{overflow:hidden;position:relative}
.sacred-motion .fx-photo>img{animation:sacred-photo 22s ease-in-out infinite alternate;animation-play-state:paused;transform-origin:center}
.sacred-motion .fx-photo.photo-visible>img{animation-play-state:running}
.photo-radiance{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse at 60% 35%,#f7d18a30,transparent 58%);opacity:.17;mix-blend-mode:screen}
.sacred-motion .photo-visible>.photo-radiance{animation:sacred-breath 8s ease-in-out infinite alternate}
.rite-tableau .photo-radiance{background:radial-gradient(ellipse at 75% 50%,#ffd38240,transparent 47%)}
.study-image figcaption,.portrait-expand{z-index:3}
.rite-tableau-copy,.rite-image-label,.vista-copy{z-index:3}
.rite-shade,.vista-shade{z-index:2}
.desktop-nav a,.footer-links a{position:relative;transition:color .4s,text-shadow .4s}
.desktop-nav a:not(.nav-cta):after,.footer-links a:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:1px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#ecd49b,transparent);transition:transform .45s ease}
.desktop-nav a:hover,.footer-links a:hover{color:#f2dfb3;text-shadow:0 0 19px #e4c17955}
.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.footer-links a:hover:after,.footer-links a:focus-visible:after{transform:scaleX(1)}
.brand-seal{box-shadow:0 0 18px #e1bf7020,inset 0 0 15px #e1bf7010;transition:box-shadow .6s,border-color .6s}
.brand:hover .brand-seal{box-shadow:0 0 25px #e1bf7050,inset 0 0 14px #e1bf7025;border-color:#f8e7bd}
.button,.nav-cta{position:relative}
.button,.nav-cta,.portrait-expand{isolation:isolate;overflow:hidden;transition:box-shadow .5s,border-color .5s,background .5s}
.button:after,.nav-cta:after,.portrait-expand:after{content:'';position:absolute;inset:-60% auto -60% -85%;width:45%;background:linear-gradient(90deg,transparent,#fff6d54d,transparent);transform:skewX(-24deg);pointer-events:none;z-index:1}
.button:hover,.button:focus-visible,.nav-cta:hover,.portrait-expand:hover{box-shadow:0 0 28px #d2af5838;border-color:#f1dba5}
.sacred-motion .button:hover:after,.sacred-motion .button:focus-visible:after,.sacred-motion .nav-cta:hover:after,.sacred-motion .portrait-expand:hover:after{animation:sacred-sheen 1s ease-out}
.button>span,.text-link>span,.portrait-expand>span{transition:transform .5s ease}
.button:hover>span,.text-link:hover>span,.portrait-expand:hover>span{transform:rotate(90deg)}
.text-link{transition:color .4s,text-shadow .4s}
.text-link:hover{color:#ffe7af;text-shadow:0 0 18px #e2bf6d45}
.pillar,.element,.theme-tabs button{transition:background .45s,color .45s,border-color .45s,box-shadow .45s,transform .45s}
.ritual-site .pillar.active{box-shadow:0 0 35px #e6bf6430,inset 0 0 20px #ffefbc30}
.ritual-site .pillar:focus-visible,.ritual-site .element:focus-visible{outline-color:#fff0c7;outline-offset:7px}
.ritual-site .element.active{box-shadow:0 0 0 6px #e1bd7217,0 0 45px #eccb7d3d}
.elements-orbit:after{content:'';position:absolute;inset:9%;border:1px solid #dcbf7826;border-radius:50%;pointer-events:none;box-shadow:0 0 30px #d3b2730c,inset 0 0 30px #d3b2730c}
.sacred-motion .scene-visible .cycle-lines circle+circle{animation:sacred-orbit-turn 100s linear infinite;transform-origin:50% 50%}
.orbit-center strong{color:#f1dab0;text-shadow:0 0 32px #d8b87835}
.session-links>a,.knowledge-grid article,.flow-list li,.approach-point,.checklist label{transition:border-color .5s,box-shadow .5s,background .5s,padding .4s}
.knowledge-grid article,.flow-list li{padding:30px 22px;border:1px solid #d5b6732b;background:linear-gradient(145deg,#d9b26306,transparent 75%);border-radius:0}
.knowledge-grid article:hover,.flow-list li:hover{border-color:#d9ba726b;box-shadow:inset 0 0 35px #b991360b,0 0 20px #b991360a}
.session-links>a:hover,.session-links>a:focus-visible{border-top-color:#d8b970;box-shadow:inset 4px 0 #c8a46155}
.session-symbol,.moment-kanji,.flow-list li>span{transition:text-shadow .6s,color .6s}
.session-links>a:hover .session-symbol,.ritual-moments article:hover .moment-kanji,.flow-list li:hover>span{color:#f5dfab;text-shadow:0 0 27px #dfb9696b}
.checklist label:has(input:checked){background:linear-gradient(90deg,#d7b76b11,transparent);border-color:#d6b66b7a;box-shadow:inset 3px 0 #d6b66b70}
.checklist label:has(input:checked) strong{color:#edcf90}
.faq-list details{transition:border-color .5s,background .5s,padding .5s}
.faq-list details[open]{background:linear-gradient(110deg,#d7b76b0b,transparent 80%);border-color:#d6b66b7a;padding-left:18px;padding-right:18px}
.faq-list summary{transition:color .35s,text-shadow .35s}
.faq-list summary:hover,.faq-list details[open] summary{color:#f2dfb4;text-shadow:0 0 20px #e4bf6b1c}
.sacred-motion .faq-list details[open]>p,.sacred-motion .sources[open]>ul{animation:sacred-arrival .55s ease both}
.sacred-motion .panel-awaken{animation:sacred-panel .65s ease both}
.mobile-menu,.ritual-gallery{box-shadow:0 0 0 7px #cfb47209,0 0 70px #d2a95a17,inset 0 0 55px #d2a95a0b}
.sacred-motion dialog[open]{animation:sacred-dialog .5s cubic-bezier(.2,.7,.2,1) both}
.sacred-motion .mobile-menu[open] nav a{animation:sacred-arrival .65s both;animation-delay:calc(var(--link-order,0)*.065s)}
.mobile-menu nav a:hover{color:#f9e6b6;text-shadow:0 0 24px #e7c38266;border-color:#e1bf7080}
.ritual-gallery::backdrop,.mobile-menu::backdrop{background:radial-gradient(ellipse at 50% 30%,#302513c9,#020402ef 75%);backdrop-filter:blur(10px)}
.site-footer{position:relative;isolation:isolate;border-top:1px solid #dfbf7830}
.site-footer:before{content:'';position:absolute;pointer-events:none;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 0,#a0752512,transparent 65%)}
.site-footer .brand-name{text-shadow:0 0 30px #d9b2631f}
.closing-seal,.small-seal{box-shadow:0 0 22px #b18b3e24;transition:box-shadow 1s}
.scene-visible .closing-seal{box-shadow:0 0 34px #d8b86f35}
.sacred-motion .light-dust{display:none}
.sacred-motion .fx-enter{transition:opacity .95s ease,transform 1.1s cubic-bezier(.2,.7,.2,1),border-color .5s,box-shadow .5s,background .5s,padding .4s;transition-delay:var(--entry-delay,0ms)}
.sacred-motion .fx-enter:focus-within{opacity:1;transform:none;transition:none}
@keyframes sacred-title{from{opacity:0;transform:translateY(16px);filter:blur(4px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes sacred-arrival{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes sacred-panel{from{opacity:.45;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes sacred-photo{from{transform:scale(1.015)}to{transform:scale(1.035)}}
@keyframes sacred-breath{from{opacity:.16}to{opacity:.43}}
@keyframes sacred-sheen{from{left:-85%}to{left:155%}}
@keyframes sacred-dialog{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
@keyframes sacred-orbit-turn{to{transform:rotate(360deg)}}
.sacred-paused *, .sacred-paused *:before,.sacred-paused *:after{animation-play-state:paused!important}
@media(max-width:800px){.sacred-sky{opacity:.5}.sacred-pointer{display:none}.sacred-orbit{width:380px;height:380px;right:-180px;top:40px}.closing .sacred-orbit,.reception .sacred-orbit{width:440px;height:440px;right:calc(50% - 220px)}.knowledge-grid article,.flow-list li{padding:24px 18px}.faq-list details[open]{padding-left:10px;padding-right:10px}.scene-light{left:8%;right:8%}}
@media(hover:none){.sacred-pointer{display:none}.button:after,.nav-cta:after,.portrait-expand:after{display:none}}
@media(prefers-reduced-motion:reduce){.sacred-sky,.sacred-pointer{display:none}.sacred-motion .fx-enter,.fx-enter,.motion-ready .reveal:not(.in-view){opacity:1!important;transform:none!important}.sacred-progress{box-shadow:none}.scene-light{transform:none;opacity:.6}.photo-radiance{opacity:.15}.sacred-motion .fx-photo>img{transform:none}.sacred-motion *, .sacred-motion *:before,.sacred-motion *:after{animation:none!important;transition:none!important}}
