:root{--navy:#0c2132;--gold:#dfba75;--gold-dark:#826026;--paper:#f5f0e7;--surface:#ebe4d8;--ink:#202b31;--muted:#5c625f;--border:#cfc3af;--font-display:'Boska',Georgia,serif;--font-body:'Satoshi',Arial,sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-xl:clamp(1.9rem,3.3vw,3rem);--text-hero:clamp(3.4rem,6.5vw,6.8rem);--space-2:.5rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:var(--text-base)/1.75 var(--font-body)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.08}h2{font-size:var(--text-xl)}h3{font-size:2rem}em{font-weight:400}p+p{margin-top:var(--space-6)}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:6px}.skip{position:fixed;left:20px;top:-100px;padding:12px 22px;background:var(--paper);color:var(--ink);z-index:99}.skip:focus{top:15px}.eyebrow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.2em;font-weight:500;color:var(--gold-dark);margin-bottom:var(--space-6)}.button{display:inline-flex;gap:var(--space-12);justify-content:space-between;align-items:center;min-height:54px;border:1px solid currentColor;padding:var(--space-4) var(--space-6);font-size:var(--text-sm);transition:background .2s,color .2s,transform .2s}.button:hover{background:var(--paper);color:var(--navy);transform:translateY(-2px)}.gold{background:var(--gold);border-color:var(--gold);color:var(--navy)}.gold:hover{background:#eed4a2}.text-link{display:inline-block;border-bottom:1px solid var(--gold-dark);padding:12px 0;font-size:var(--text-sm)}.section{padding:clamp(64px,8vw,112px) max(6vw,24px)}.section p{max-width:62ch}
/* The entrance deliberately has just one destination. */
.entrance{color:var(--paper);background:var(--navy)}.portal{position:relative;isolation:isolate;min-height:100svh;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:32px 24px;overflow:hidden;background:linear-gradient(90deg,rgba(6,15,22,.84),rgba(13,24,30,.5),rgba(6,15,22,.84)),url('assets/stone.webp') center/450px 650px}.portal:before{content:"";position:absolute;inset:20px;border:1px solid #dfba7545;pointer-events:none;z-index:-1}.portal-top{color:#e6cfaa;font-size:var(--text-xs);margin-bottom:0}.portal-emblem{width:clamp(220px,35vh,360px);height:auto;margin:12px auto 0;filter:drop-shadow(0 0 22px #d6a74c22)}.portal h1{font-size:clamp(2.5rem,5.2vw,4.7rem);line-height:1.1;font-weight:400}.portal h1 span{color:var(--gold)}.portal-subtitle{font-size:var(--text-xs);letter-spacing:.24em;text-transform:uppercase;margin-top:14px}.portal-enter{margin-top:32px;min-width:188px;color:var(--gold);letter-spacing:.16em;text-transform:uppercase}.portal-bottom{font-size:var(--text-xs);letter-spacing:.2em;text-transform:uppercase;margin-top:38px;color:#dccbab}
.site-header{display:flex;gap:var(--space-8);align-items:center;padding:16px 4vw;background:var(--navy);color:var(--paper);border-bottom:1px solid #dfba7533;position:sticky;top:0;z-index:20}.brand{display:flex;gap:12px;align-items:center;min-width:176px}.brand img{width:52px;height:60px;object-fit:contain}.brand>span{font:1.55rem/1.08 var(--font-display);text-transform:uppercase;letter-spacing:.06em}.brand small{display:block;font:var(--text-xs)/1.8 var(--font-body);letter-spacing:.19em}.site-header nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,40px);margin-left:auto;font-size:var(--text-sm)}.site-header nav a{padding:10px 0}.site-header nav a:hover{color:var(--gold)}.nav-contact{color:var(--gold)}.theme-toggle,.menu-toggle{background:none;border:1px solid #dfba7566;color:var(--gold);font-size:var(--text-xs);min-height:44px;padding:8px 12px}.menu-toggle{display:none}
.hero{background:var(--navy);color:var(--paper);display:grid;grid-template-columns:1.08fr 1fr;gap:6vw;padding:64px 8vw 48px;min-height:690px;align-items:center}.hero .eyebrow{color:var(--gold)}.hero h1{font-size:var(--text-hero);line-height:.98;letter-spacing:-.025em}.hero h1 em{color:var(--gold)}.hero-copy>p:not(.eyebrow):not(.location){max-width:350px;margin-top:28px;color:#d2d6d5}.hero .button{margin-top:32px}.hero .location{font-size:var(--text-xs);color:#bac4c9;margin-top:32px}.location span{margin:0 8px}.hero-art{max-width:500px;width:100%;justify-self:end}.arch{aspect-ratio: .85;border-radius:220px 220px 0 0;border:1px solid #c4995766;background:linear-gradient(#33261b11,#14242b66),url('assets/stone.webp') center/cover;display:grid;place-items:center;position:relative;overflow:hidden}.arch:after{content:"";position:absolute;inset:12px;border:1px solid #d3ae6355;border-radius:220px 220px 0 0;pointer-events:none}.arch img{width:95%;height:auto;filter:drop-shadow(0 0 30px #ffdc9766)}.art-caption{text-align:center;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:#b9b3a6;margin-top:20px}.credo{display:flex;justify-content:center;align-items:center;gap:5vw;padding:24px;background:var(--surface);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.18em;font-size:var(--text-sm)}.credo span:nth-child(even){color:var(--gold-dark)}
.about{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.about h2 em,.section h2 em{color:var(--gold-dark)}.prose{color:var(--muted)}.prose p:first-child{color:var(--ink);font-size:1.125rem}.offerings{padding-top:24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:48px}.section-heading>p{color:var(--muted)}.session-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.session-image{position:relative;overflow:hidden}.session-image img{width:100%;aspect-ratio:1.68;height:auto;transition:transform .45s}.session:hover img{transform:scale(1.025)}.session-image>span{position:absolute;bottom:0;left:0;background:var(--navy);color:var(--paper);font-size:var(--text-xs);padding:8px 16px;text-transform:uppercase;letter-spacing:.08em}.session h3{margin:28px 0 18px}.session>p{color:var(--muted)}details{border-bottom:1px solid var(--border)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:16px 0;font-size:var(--text-sm)}summary::-webkit-details-marker{display:none}summary span{font-size:1.4rem;color:var(--gold-dark);transition:transform .2s}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted);padding-bottom:20px}details>div{padding:8px 0 24px}.session details{margin-top:16px}.session details .text-link{color:var(--ink)}
.journey{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:var(--paper)}.journey-image{min-height:530px}.journey-image img{width:100%;height:100%;object-fit:cover}.journey-copy{padding:64px 6vw}.journey-copy .eyebrow{color:var(--gold)}.journey-copy h2{margin-bottom:28px}.journey-copy h2 em{color:var(--gold)}.journey-copy p:not(.eyebrow){color:#d4d7d7}.journey-copy .button{margin-top:32px;color:var(--gold)}.illuminator{text-align:center;max-width:1050px;margin:auto}.illuminator .large-copy{font:clamp(1.45rem,2.5vw,2rem)/1.45 var(--font-display);margin:28px auto 36px}.illuminator-body{display:grid;grid-template-columns:1fr 1fr;gap:48px;text-align:left;color:var(--muted)}.illuminator-body p{margin:0}.sanctuary{display:grid;grid-template-columns:1.2fr 1fr;align-items:stretch;background:var(--surface)}.sanctuary>img{width:100%;height:100%;min-height:340px;object-fit:cover}.sanctuary>div{padding:64px 6vw;align-self:center}.sanctuary h2 em{color:var(--gold-dark)}.expectations{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw}.expectations>div>p:not(.eyebrow){margin-top:28px;color:var(--muted)}.faq details:first-child{border-top:1px solid var(--border)}.faq summary{min-height:80px;font-size:var(--text-base)}.contact{background:var(--navy);color:var(--paper);text-align:center}.contact .eyebrow,.contact h2 em{color:var(--gold)}.contact h2{font-size:clamp(2.6rem,5vw,4.5rem)}.contact>p{margin-inline:auto}.contact h2+p{margin-top:24px;color:#d4d7d7}.contact .button{margin-top:32px}.email{display:block;width:fit-content;margin:24px auto 0;border-bottom:1px solid #9c8e7566}.small{font-size:var(--text-xs);color:#bcc4c9}.contact .small{margin-top:16px}.site-footer{padding:40px 6vw 24px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:32px}.footer-main>p,.footer-main>a:last-child{font-size:var(--text-sm)}.footer-bottom{border-top:1px solid var(--border);padding-top:20px;display:flex;justify-content:space-between;gap:16px;font-size:var(--text-xs);color:var(--muted)}.footer-bottom p{margin:0}.disclaimer{font-size:var(--text-xs);color:var(--muted);margin-top:24px;max-width:900px}.legal{max-width:900px;min-height:70vh;margin:auto}.legal h1{font-size:3rem;margin-bottom:40px}.legal h2{font-size:2rem;margin:40px 0 20px}.legal p{margin-bottom:16px}.legal a{text-decoration:underline}
.entrance,.site-header,.hero,.journey,.contact,.session-image>span{color:#f5f0e7}.entrance .eyebrow{color:var(--gold)}.button:hover{background:#f5f0e7;color:var(--navy)}
[data-theme="dark"]{--paper:#102633;--surface:#17313e;--ink:#f3eee4;--muted:#c0c7c9;--gold-dark:#dfba75;--border:#40525b}
@media(prefers-color-scheme:dark){html:not([data-theme]){--paper:#102633;--surface:#17313e;--ink:#f3eee4;--muted:#c0c7c9;--gold-dark:#dfba75;--border:#40525b}}
@media(max-width:1000px){.site-header{gap:16px}.site-header nav{gap:18px}.site-header .brand{min-width:150px}.theme-toggle{max-width:65px;line-height:1.25}.hero{padding-inline:6vw;gap:5vw;min-height:610px}.hero h1{font-size:clamp(3.3rem,7vw,5rem)}}
@media(max-width:760px){html{scroll-padding-top:88px}.site-header{padding:10px 20px;gap:12px;flex-wrap:wrap}.site-header .brand{margin-right:auto}.brand>span{font-size:1.35rem}.brand img{width:40px;height:48px}.menu-toggle{display:block}.site-header nav{display:none;order:4;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{padding:12px 4px;border-top:1px solid #dfba7533}.theme-toggle{max-width:none;font-size:var(--text-xs)}.hero{grid-template-columns:1fr;padding:48px 24px 32px;gap:40px}.hero-copy{max-width:550px}.hero h1{font-size:clamp(3.5rem,13vw,5.5rem)}.hero-art{width:78%;max-width:400px;justify-self:center}.arch{aspect-ratio:1}.hero-copy>p:not(.eyebrow):not(.location){max-width:430px}.hero .location{margin-top:24px}.credo{gap:4vw;font-size:var(--text-xs);letter-spacing:.09em;padding:20px 12px}.about,.expectations{grid-template-columns:1fr;gap:32px}.section-heading{display:block}.section-heading>p{margin-top:24px}.session-grid{grid-template-columns:1fr;gap:48px}.journey{grid-template-columns:1fr}.journey-image{min-height:0;height:300px}.journey-copy{padding:48px 24px}.illuminator-body{grid-template-columns:1fr;gap:24px}.sanctuary{grid-template-columns:1fr}.sanctuary>img{min-height:0;height:280px}.sanctuary>div{padding:40px 24px}.footer-main{flex-wrap:wrap;justify-content:flex-start;gap:24px 40px}.footer-main>p{width:100%;order:3}.footer-main>a:last-child{margin-left:auto}.footer-bottom{flex-direction:column;gap:12px}.portal-top{font-size:var(--text-xs);letter-spacing:.1em}.portal h1{max-width:300px;font-size:2.7rem}.portal h1 span{display:block}.portal-subtitle{letter-spacing:.13em}.portal-emblem{width:min(280px,34svh)}.portal{padding-block:40px}.portal-bottom{letter-spacing:.13em}.contact br{display:none}.contact h2{max-width:500px;margin:auto}}
/* Click-triggered passage through the emblem's heart. */
.entering-ark{overflow:hidden}
.entering-ark .portal{will-change:transform;pointer-events:none}
.entering-ark .portal:before{opacity:0}
.heart-passage-light{position:fixed;width:96px;height:96px;z-index:40;pointer-events:none;opacity:0;transform-origin:center;background:radial-gradient(circle,#fff1d5 0%,#ffe1a8 25%,#e3b86580 48%,#e3b86500 72%);border-radius:50%;will-change:transform,opacity}
.heart-passage-veil{position:fixed;inset:0;z-index:41;background:#fff1d5;pointer-events:none;opacity:0}
.ark-arrival body::after{content:"";position:fixed;inset:0;z-index:100;background:#fff1d5;pointer-events:none;animation:ark-arrival-reveal .8s ease-out both}
@keyframes ark-arrival-reveal{from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.ark-arrival body::after,.heart-passage-light,.heart-passage-veil{display:none}}
