/* A quiet, gilded sanctuary shared by every page. */
body.ritual-site{--ink:#0b0a08;--deep:#050504;--paper:#eee6d5;--gold:#dbc38c;--gold-dim:#9b8251;--text:#f1ebdf;--muted:#c9c0ae;--line:#bda16c40;background:var(--ink);color:var(--text)}
.ritual-site .site-header,.ritual-site.inner-page .site-header{background:linear-gradient(180deg,#080807fa,#080807ed);border-bottom:1px solid #bfa26b4a;box-shadow:0 8px 36px #0003;padding-top:26px;padding-bottom:26px}
.ritual-site .brand-name{color:#f0e7d2;letter-spacing:.18em}
.ritual-site .brand-name small{color:#ceb780;letter-spacing:.28em}
.ritual-site .brand-seal{width:50px;height:50px;border-radius:50%;border-color:#c8ab6d;font-size:28px;background:radial-gradient(circle,#9a75391c,transparent 70%);box-shadow:0 0 24px #d6b77416}
.ritual-site .brand-seal:after{border-radius:50%;inset:4px;border-color:#c8ab6d54}
.ritual-site .desktop-nav{gap:29px;color:#e4dccd}
.ritual-site .desktop-nav .nav-cta{background:linear-gradient(135deg,#c0a16a16,#c0a16a05);border-color:#b79a614f;box-shadow:inset 0 0 0 4px #bd9f6410;padding:12px 24px}
.ritual-site .desktop-nav a:hover,.ritual-site .footer-links a:hover{color:#fff0c6;text-shadow:none}
.ritual-site .section-shell{padding-top:140px;padding-bottom:140px}
.ritual-site .eyebrow{color:#cdb47c;letter-spacing:.21em}
.ritual-site h2,.ritual-site h3{color:#eee5d1}
.ritual-site h2{letter-spacing:.09em}
.ritual-site .section-heading{margin-bottom:65px;align-items:center}
.ritual-site .section-heading h2{margin-top:22px}
.ritual-site .text-link{border-bottom-color:#c9aa665c;transition:border-color .45s,color .45s}
.ritual-site .text-link:hover{color:#f1d99e;border-bottom-color:#e4c783}
.ritual-site .button,.ritual-site .portrait-expand{border-color:#bfa16a82;box-shadow:inset 0 0 0 4px #bfa16a12;transition:color .5s,background .5s,box-shadow .5s,transform .5s}
.ritual-site .button.gold{background:linear-gradient(110deg,#b8995c,#ead49b 48%,#c5a76a);border-color:#e2c588;color:#201a0e;box-shadow:inset 0 0 0 4px #231b0a1c,0 8px 30px #0003}
.ritual-site .button.gold:hover{background:linear-gradient(110deg,#d5b77b,#f3e4bd 48%,#d2b578);box-shadow:inset 0 0 0 4px #231b0a1c,0 8px 32px #c6a56918;transform:translateY(-1px)}
.ritual-site :focus-visible{outline:2px solid #f4d58b;outline-offset:6px}

/* The photograph remains the focal point, surrounded by an architectural frame. */
.ritual-site .hero{--portrait-top:112px;background:#0b0a08;padding-bottom:126px}
.ritual-site .hero-landscape:after{background:linear-gradient(180deg,#0b0a0800 50%,#0b0a0826 69%,#0b0a08 100%),linear-gradient(90deg,#0b0a08ad,transparent 14%,transparent 86%,#0b0a08ad)}
.ritual-site .hero-shade{background:linear-gradient(180deg,#0b0a0860,transparent 180px)}
.sanctum-frame{position:absolute;inset:calc(var(--portrait-top) + 26px) 3.6% auto;height:calc(var(--portrait-height) - 65px);border:1px solid #e4c88f6b;pointer-events:none;z-index:0;border-bottom:0;mask-image:linear-gradient(#000 65%,transparent)}
.sanctum-frame:before{content:'';position:absolute;inset:7px;border:1px solid #e4c88f26;border-bottom:0}
.sanctum-frame:after{content:'';position:absolute;inset:-1px;background:linear-gradient(#f0d9a5,#f0d9a5) left top/65px 2px no-repeat,linear-gradient(#f0d9a5,#f0d9a5) left top/2px 65px no-repeat,linear-gradient(#f0d9a5,#f0d9a5) right top/65px 2px no-repeat,linear-gradient(#f0d9a5,#f0d9a5) right top/2px 65px no-repeat;opacity:.7}
.hero-insignia{position:relative;display:flex;align-items:center;justify-content:center;gap:24px;width:min(540px,88%);margin:0 auto 20px;z-index:1}
.hero-insignia:before,.hero-insignia:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,#c3a66b9c)}
.hero-insignia:after{transform:rotate(180deg)}
.hero-insignia img{width:64px;height:64px;opacity:.94;filter:drop-shadow(0 0 13px #d7b16b24)}
.ritual-site .hero-overline{position:relative;z-index:1;gap:17px;margin-bottom:25px;color:#deceb0;letter-spacing:.13em}
.ritual-site .small-seal,.ritual-site .closing-seal{background:#17140ec7;border:1px solid #bba06a8a;box-shadow:inset 0 0 0 3px #bba06a16;color:#e4cf9b;padding:8px 17px}
.ritual-site .hero h1{color:#f3edde;line-height:1.7;letter-spacing:.13em;text-shadow:0 2px 20px #0008}
.ritual-site .hero h1 em{color:#e9cf93;text-shadow:0 0 32px #cead5b20}
.ritual-site .hero-bottom{margin-top:28px}
.ritual-site .hero-bottom>div>p:not(.eyebrow){color:#e0d7c3;line-height:2.15;margin:20px 0 32px}
.ritual-site .hero-bottom>div>.eyebrow{color:#b7a47a}
.ritual-site .hero .button{min-width:310px}
.ritual-site .hero-bottom .hero-side{margin-top:31px;color:#cdbd9e}
.ritual-site .scroll-cue{bottom:22px;color:#c3ae7e;gap:12px}
.ritual-site .scroll-cue i{height:34px;animation-duration:5s}

/* Symmetrical chapter openings and generous, readable text. */
.ritual-site .intro{background:radial-gradient(ellipse at 50% 0,#60492121,transparent 55%),#0e0d0a;color:var(--text);text-align:center}
.ritual-site .intro:before{content:'';display:block;background:url('assets/sanctuary-divider.svg') center/contain no-repeat;width:min(560px,100%);height:32px;margin:0 auto 55px}
.ritual-site .intro>.eyebrow{margin-bottom:40px;color:#c9ae77}
.ritual-site .intro-layout{grid-template-columns:1fr;gap:42px;max-width:780px;margin:auto}
.ritual-site .intro-title{padding:0}
.ritual-site .vertical-label{color:#c9ae77;margin-bottom:18px;font-size:16px}
.ritual-site .intro h2{font-size:clamp(36px,4vw,55px);line-height:1.75}
.ritual-site .intro-copy{max-width:740px;margin:auto}
.ritual-site .intro-copy p:first-child{color:#ede1c4;font-size:25px}
.ritual-site .intro-copy p:not(:first-child){color:#cbc1ae;line-height:2.25}
.ritual-site .intro-bottom{justify-content:center;max-width:640px;margin:65px auto 0;padding-top:35px;font-size:17px;letter-spacing:.22em;border-color:#b69a6140}
.ritual-site .intro-bottom i{background:linear-gradient(90deg,transparent,#b69a61,transparent);width:72px}
.ritual-site .study-section{background:radial-gradient(ellipse at 100% 20%,#58422220,transparent 55%),#090908;border-color:#b99c5933}
.ritual-site .study-image:before{content:'';position:absolute;inset:30px;z-index:3;border:1px solid #e5c78152;outline:1px solid #e5c7811f;outline-offset:7px;pointer-events:none}
.ritual-site .study-copy{padding:110px 11%}
.ritual-site .practitioner-name strong{color:#ead29b;font-size:48px;letter-spacing:.18em}
.ritual-site .practitioner-name span{color:#c4b598;letter-spacing:.16em}
.ritual-site .study-copy h2{margin-top:37px}
.ritual-site .approach-point{padding:27px 0;border-color:#bfa16b30}
.ritual-site .approach-point>span{color:#cfb77e}
.ritual-site .portrait-expand{background:#100e09ed;color:#eddbb4;padding:16px 23px}
.ritual-site .study-image figcaption{color:#f1e0b8;text-shadow:0 2px 12px #0009}
.ritual-site .rite-sanctuary{background:#0d0c09}
.ritual-site .rite-tableau{height:850px;margin:38px 3.6% 0;border:1px solid #bea26b5c}
.ritual-site .rite-tableau:after,.ritual-site .mountain-vista:after{content:'';position:absolute;inset:12px;z-index:4;border:1px solid #e4c89538;pointer-events:none}
.ritual-site .rite-shade{background:linear-gradient(90deg,#0a0907d9,#0a090780 38%,transparent 80%),linear-gradient(0deg,#0d0c09,transparent 30%)}
.ritual-site .rite-tableau-copy{top:24%;left:7%;right:7%}
.ritual-site .ritual-moments{padding-top:75px;padding-bottom:110px;gap:50px}
.ritual-site .ritual-moments article{border-color:#bfa16b44;padding-top:33px}
.ritual-site .moment-kanji{color:#d8be83;text-shadow:0 0 30px #cba14d12}

/* The four pillars, five elements, and consultation controls share lacquer and gold. */
.ritual-site .pillars-section,.ritual-site .paper{background:radial-gradient(ellipse at 10% 0,#7251261c,transparent 50%),#12100c;color:var(--text)}
.ritual-site .elements-section{background:radial-gradient(ellipse at 25% 50%,#64502922,transparent 63%),#080908}
.ritual-site .sessions-section{background:#100f0b}
.ritual-site .paper .eyebrow,.ritual-site .paper .knowledge-label,.ritual-site .sessions-section .eyebrow{color:#cbb17a}
.ritual-site .paper p,.ritual-site .section-heading>p,.ritual-site .pillar-explanation>p:last-child,.ritual-site .element-description .caption,.ritual-site .session-links p{color:#cec4b1}
.ritual-site .pillar{background:linear-gradient(145deg,#211c12,#0e0d0a);border:1px solid #b79a604a;box-shadow:inset 0 0 0 6px #bd9d5710;transition:background .6s,color .6s,border-color .6s}
.ritual-site .pillar.active{background:linear-gradient(145deg,#e6d2a0,#c6a969);border-color:#eddbac;box-shadow:inset 0 0 0 6px #412f141c,0 10px 28px #0004;color:#211b0e}
.ritual-site .pillar:not(.active) strong{color:#e1cc9c}
.ritual-site .pillar-pair i{border-color:#bc9b6159}
.ritual-site .pillar-explanation{padding:36px;border:1px solid #ad8e5338;background:linear-gradient(135deg,#b6955110,transparent 70%)}
.ritual-site .element{background:#13110c;border-color:#9d8256;color:#e0c893;box-shadow:0 0 0 4px #b3955320}
.ritual-site .element.active{background:linear-gradient(135deg,#efdbab,#c7a76a);color:#20190e;box-shadow:0 0 0 5px #b3955326,0 0 38px #b3955320}
.ritual-site .orbit-center>span,.ritual-site .orbit-center small{color:#cbb17a}
.ritual-site .cycle-lines{stroke:#c5a66b}
.ritual-site .element-keywords{color:#d7c18f}
.ritual-site .session-links>a{padding:37px 10px;border-color:#b99c6045}
.ritual-site .session-links>a:hover{background:linear-gradient(90deg,#bca06a10,transparent);padding-left:18px;box-shadow:none}
.ritual-site .session-symbol{color:#d4bb83}
.ritual-site .knowledge-grid article,.ritual-site .flow-list li{position:relative;background:linear-gradient(140deg,#bca16b0d,transparent 65%),#12110d;border:1px solid #c5a76c45;box-shadow:inset 0 0 0 6px #c5a76c08;padding:38px}
.ritual-site .knowledge-grid article:before,.ritual-site .flow-list li:before{content:'';position:absolute;left:20px;right:20px;top:13px;height:1px;background:linear-gradient(90deg,transparent,#cfb57860,transparent);pointer-events:none}
.ritual-site .knowledge-grid h3{margin:17px 0 20px}
.ritual-site .knowledge-grid article:hover,.ritual-site .flow-list li:hover{border-color:#c5a76c82;box-shadow:inset 0 0 0 6px #c5a76c0c}
.ritual-site .reading-note{padding:38px;border:1px solid #b69a5d40;background:#bda06c06}
.ritual-site .flow-list li>span{color:#d4ba7c;font-size:36px}
.ritual-site .theme-tabs{gap:12px;border-bottom:0}
.ritual-site .theme-tabs button{border:1px solid #bda16a42;background:#0d0c09;color:#c9bea7;box-shadow:inset 0 0 0 5px #bda16a08}
.ritual-site .theme-tabs button[aria-selected=true]{border-color:#e1c27d;background:linear-gradient(135deg,#deca99,#bda169);color:#221a0b;box-shadow:inset 0 0 0 5px #221a0b16}
.ritual-site .theme-panel{padding-top:55px}
.ritual-site .theme-symbol{color:#ceb681}
.ritual-site .checklist label{padding:28px 18px;border-color:#b9a06b40}
.ritual-site .checklist label:has(input:checked){background:linear-gradient(90deg,#d7b76b13,transparent);box-shadow:inset 2px 0 #d6b66b9c}
.ritual-site .checklist input{accent-color:#c8ac70}
.ritual-site .checklist strong,.ritual-site .faq-list summary{color:#e9dfcb}
.ritual-site .faq-list details{padding-top:31px;padding-bottom:31px;border-color:#bda16a42}
.ritual-site .faq-list details[open]{background:#c9ab6810}
.ritual-site .check-progress,.ritual-site .reception .caption,.ritual-site .preparation .caption{color:#cabea2}

/* Matching portals for the two inner pages. */
.ritual-site .inner-hero{position:relative;border-bottom:1px solid #bda16b45;padding-top:205px;padding-bottom:105px}
.ritual-site .inner-hero h1{color:#f0e6d0;letter-spacing:.09em}
.ritual-site .inner-hero .eyebrow:before{content:'';display:block;width:62px;height:62px;background:url('assets/gold-crest.svg') center/contain no-repeat;margin-bottom:25px}
.ritual-site .breadcrumb{color:#b7a98a}
.ritual-site .wisdom-hero{background:linear-gradient(90deg,#080807f2,#080807b8),url('assets/sacred-altar.webp') center/cover}
.ritual-site .wisdom-title-art{gap:20px;justify-content:center}
.ritual-site .wisdom-title-art span{position:relative;border:1px solid #c4a66b72;background:linear-gradient(140deg,#bc9a5321,#0d0c098c);box-shadow:inset 0 0 0 6px #ba9d6310,0 16px 42px #0004;color:#e6d2a2;padding:40px 24px;font-size:48px;height:210px}
.ritual-site .wisdom-title-art span:before{content:'';position:absolute;top:15px;left:50%;width:4px;height:4px;background:#d8bc7c;transform:translateX(-50%) rotate(45deg)}
.ritual-site .consultation-hero{background:radial-gradient(ellipse at 75% 45%,#6c512725,transparent 60%),#0a0907;padding-bottom:0;gap:6%}
.ritual-site .consultation-hero figure{height:700px;margin:30px 6% 0 0;border:1px solid #c0a06585;padding:9px;background:#0d0c09;box-shadow:0 0 0 7px #c0a0650d}
.ritual-site .consultation-hero figure img{object-position:50% 34%}
.ritual-site .consultation-hero>div{padding-bottom:90px}
.ritual-site .ritual-context{background:radial-gradient(ellipse at 50% 0,#77592a1c,transparent 70%),#0e0d09;border-color:#bba06436}
.ritual-site .ritual-context>div{gap:70px}
.ritual-site .closing,.ritual-site .reception{position:relative;isolation:isolate;background:linear-gradient(#090907dc,#090907f2),url('assets/gensai-empty-sanctuary.webp') center/cover;border-top:1px solid #b69a5f4a;text-align:center}
.ritual-site .closing:before,.ritual-site .reception:before{content:'';display:block;width:86px;height:86px;background:url('assets/gold-crest.svg') center/contain no-repeat;margin:0 auto 32px}
.ritual-site .closing h2,.ritual-site .reception h2{color:#eee0bd}
.ritual-site .closing-seal{display:inline-block;font-size:16px}
.ritual-site .closing-word{color:#d8ba7708}
.ritual-site .reception-status{border-color:#bfa3696b;background:#a17d2d09;color:#e0c58a}
.ritual-site .small-closing{background:#0b0a08;border-top:1px solid #b99c6440}
.ritual-site .site-footer{background:#050504;padding-top:85px;border-color:#bda16b3b}
.ritual-site .footer-bottom{color:#b9ae97;border-color:#b99d6330}
.ritual-site .mobile-menu,.ritual-site .ritual-gallery{background:#0d0c09;border-color:#bca1677d;box-shadow:0 0 0 6px #cbb1770c,inset 0 0 55px #b48c4010}
.ritual-site .mobile-menu>.eyebrow:before{content:'';display:block;background:url('assets/gold-crest.svg') center/contain no-repeat;width:58px;height:58px;margin:0 0 22px}

/* Light is restrained, slow, and never competes with reading. */
.ritual-site .sacred-sky{opacity:.38}
.ritual-site .sacred-pointer{display:none}
.ritual-site .scene-light{left:7%;right:7%;opacity:.48;box-shadow:none}
.ritual-site .sacred-orbit{border-color:#d4b4770d}
.ritual-site .sacred-orbit:before,.ritual-site .sacred-orbit:after{opacity:.5}
.ritual-site .sacred-progress{height:1px;box-shadow:none}
.ritual-site .photo-radiance{opacity:.12}
.ritual-site.sacred-motion .photo-visible>.photo-radiance{animation-duration:16s}
.ritual-site.sacred-motion .fx-photo>img{animation-duration:34s}
.ritual-site .button:after,.ritual-site .nav-cta:after,.ritual-site .portrait-expand:after{display:none}
.ritual-site.sacred-motion .hero h1>span{animation-duration:2.1s}
.ritual-site.sacred-motion .hero-overline,.ritual-site.sacred-motion .hero-bottom{animation-duration:1.9s}

@media(max-width:1100px){
 .ritual-site .desktop-nav{gap:16px}.ritual-site .desktop-nav .nav-cta{padding:11px 16px}
 .ritual-site .study-copy{padding:80px 8%}.ritual-site .practitioner-name strong{font-size:39px}
 .ritual-site .section-shell{padding-top:110px;padding-bottom:110px}
 .ritual-site .ritual-moments{gap:28px}.ritual-site .pillar-explanation{padding:28px}
 .ritual-site .wisdom-title-art{gap:12px}.ritual-site .wisdom-title-art span{padding:35px 17px;font-size:40px;height:185px}
}
@media(max-width:800px){
 .ritual-site .site-header,.ritual-site.inner-page .site-header{padding:21px 6%;gap:12px}
 .ritual-site .brand-seal{width:42px;height:42px;font-size:25px}.ritual-site .brand-name{font-size:24px;letter-spacing:.13em}
 .ritual-site .brand-name small{font-size:10px;letter-spacing:.2em}.ritual-site .menu-button span{background:#dcca9e}
 .ritual-site .hero{--portrait-top:98px;padding-bottom:115px}
 .sanctum-frame{left:13px;right:13px;top:calc(var(--portrait-top) + 14px);height:calc(var(--portrait-height) - 30px)}
 .sanctum-frame:before{inset:5px}.sanctum-frame:after{background-size:32px 1px,1px 32px,32px 1px,1px 32px}
 .hero-insignia{gap:18px;margin-bottom:17px}.hero-insignia img{width:52px;height:52px}
 .ritual-site .hero-overline{gap:12px;font-size:14px;letter-spacing:.045em;margin-bottom:25px}
 .ritual-site .small-seal{padding:7px 12px;font-size:13px}
 .ritual-site .hero h1{letter-spacing:.09em}.ritual-site .hero-bottom{margin-top:27px}
 .ritual-site .hero-bottom>div>p:not(.eyebrow){font-size:17px;line-height:2.15;margin:18px 0 29px}
 .ritual-site .hero .button{min-width:0}.ritual-site .hero-bottom .hero-side{margin-top:27px}
 .ritual-site .section-shell{padding-top:85px;padding-bottom:85px}.ritual-site .section-heading{margin-bottom:42px}
 .ritual-site .intro:before{margin-bottom:36px}.ritual-site .intro>.eyebrow{margin-bottom:30px}
 .ritual-site .intro-layout{gap:32px}.ritual-site .intro h2{font-size:34px;line-height:1.8;letter-spacing:.05em}
 .ritual-site .intro-copy p:first-child{font-size:22px}.ritual-site .intro-copy p:not(:first-child){line-height:2.15}
 .ritual-site .intro-copy br{display:none}.ritual-site .intro-bottom{margin-top:45px;gap:17px;font-size:16px}.ritual-site .intro-bottom i{width:32px}
 .ritual-site .study-image:before{inset:20px;outline-offset:6px}.ritual-site .study-copy{padding:80px 7%}
 .ritual-site .practitioner-name strong{font-size:36px;letter-spacing:.12em}
 .ritual-site .portrait-expand{padding:14px 18px}.ritual-site .rite-tableau{height:640px;margin:18px 4% 0}
 .ritual-site .rite-tableau:after{inset:8px}.ritual-site .rite-tableau-copy{top:20%;left:7%;right:7%}
 .ritual-site .rite-tableau-copy h2{font-size:38px;letter-spacing:.05em}.ritual-site .ritual-moments{padding-top:30px;padding-bottom:65px}
 .ritual-site .pillar-explanation{padding:26px 22px;margin-top:0}.ritual-site .session-links>a{padding:31px 0}
 .ritual-site .knowledge-grid article,.ritual-site .flow-list li{padding:30px 25px}.ritual-site .reading-note{padding:27px 23px}
 .ritual-site .theme-tabs{gap:7px}.ritual-site .theme-tabs button{padding:17px 6px;font-size:16px}
 .ritual-site .theme-panel{padding-top:36px}.ritual-site .checklist label{padding:26px 8px;gap:15px}
 .ritual-site .faq-list details{padding-top:27px;padding-bottom:27px}
 .ritual-site .inner-hero{padding-top:153px;padding-bottom:70px}.ritual-site .inner-hero h1{font-size:38px;letter-spacing:.05em}
 .ritual-site .inner-hero .eyebrow:before{width:54px;height:54px;margin-bottom:23px}
 .ritual-site .wisdom-title-art{padding-top:45px;gap:12px}.ritual-site .wisdom-title-art span{height:122px;padding:24px 18px;font-size:32px}
 .ritual-site .wisdom-title-art span:nth-child(even){margin-top:28px}
 .ritual-site .consultation-hero{padding-bottom:0}.ritual-site .consultation-hero>div{padding-bottom:55px}
 .ritual-site .consultation-hero figure{height:520px;width:auto;margin:0 0 24px;padding:7px}
 .ritual-site .ritual-context>div{margin-top:25px}.ritual-site .closing:before,.ritual-site .reception:before{width:70px;height:70px;margin-bottom:27px}
 .ritual-site .site-footer{padding-top:66px}.ritual-site .sacred-sky{opacity:.26}
}
@media(max-width:370px){
 .ritual-site .brand-name{font-size:21px}.ritual-site .brand-seal{width:36px;height:36px;font-size:22px}
 .ritual-site .hero-overline{gap:8px;font-size:13px}.ritual-site .small-seal{font-size:12px;padding:7px 10px}
 .ritual-site .hero h1{font-size:30px;letter-spacing:.07em}.ritual-site .intro h2{font-size:30px}.ritual-site .inner-hero h1{font-size:32px;letter-spacing:.04em}
 .ritual-site .intro-bottom{gap:12px;letter-spacing:.14em}.ritual-site .intro-bottom i{width:23px}
 .ritual-site .wisdom-title-art{gap:10px}.ritual-site .wisdom-title-art span{padding:22px 14px;font-size:29px}
 .ritual-site .knowledge-grid article,.ritual-site .flow-list li{padding:29px 20px}
}
@media(prefers-reduced-motion:reduce){.ritual-site .sacred-sky{display:none}.ritual-site *, .ritual-site *:before,.ritual-site *:after{animation:none!important;transition:none!important}}
