@font-face{font-family:Outfit;src:url('/assets/fonts/outfit-latin.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-garamond-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
:root{font-family:Outfit,system-ui,sans-serif;color-scheme:dark;font-synthesis:none}
*{box-sizing:border-box}
body{--bg:#112347;--fg:#fff8e9;--accent:#f1c969;--pointer-x:0px;--pointer-y:0px;--pointer-turn:0deg;--hue:0deg;margin:0;background:var(--bg);color:var(--fg);min-width:260px}
body[data-theme=watcher]{--bg:#126d98;--fg:#fff;--accent:#ffda58}
body[data-theme=orbit]{--bg:#167dac;--fg:#fff;--accent:#ffda58}
body[data-theme=daylight]{--bg:#fffdf6;--fg:#174cbb;--accent:#ffda49;color-scheme:light}
body[data-theme=nightfall]{--bg:#0e1c39;--fg:#f7f1e3;--accent:#e3b853}
body[data-theme=sanctuary]{--bg:#f3eee2;--fg:#184b4b;--accent:#d9ab3a;color-scheme:light}
body[data-theme=oculus]{--bg:#f6f0e2;--fg:#123b78;--accent:#bd9133;color-scheme:light}
body[data-theme=adept]{--bg:#173b82;--fg:#fff6e5;--accent:#efc84d}
body[data-theme=prism]{--bg:#f6f0e3;--fg:#112c55;--accent:#d9b44a;color-scheme:light}
body[data-theme=radiance]{--bg:#197aac;--fg:#fff;--accent:#ffe2a3}
body[data-theme=presence]{--bg:#111a42;--fg:#fff6e5;--accent:#f0d7a4}
body[data-theme=eclipse]{--bg:#071b38;--fg:#fffaf0;--accent:#ffd567}
body[data-theme=interweave]{--bg:#123572;--fg:#fff6e5;--accent:#ffe3a7}
body[data-theme=threshold]{--bg:#102f4b;--fg:#fff8e9;--accent:#ffdd94}
a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--fg);outline-offset:7px}
.page-shell{--header-space:clamp(56px,6.4vw,100px);--top-space:clamp(28px,4.8vw,80px);--art-space:calc(100svh - var(--top-space) - max(24px,env(safe-area-inset-bottom)) - var(--header-space) - 2 * clamp(24px,4vh,48px) - 48px);position:relative;z-index:1;display:grid;grid-template-rows:auto 1fr auto;gap:clamp(24px,4vh,48px);min-height:100svh;max-width:1920px;margin:auto;padding:clamp(28px,4.8vw,80px);padding-bottom:max(24px,env(safe-area-inset-bottom))}
.site-header{display:flex;align-items:center}
.brand{display:inline-flex;align-items:center;gap:clamp(12px,2vw,28px);max-width:100%;border-radius:4px}
.brand-symbol{width:clamp(56px,6.4vw,100px);height:auto;color:var(--accent);flex:none}
.brand-name{display:flex;flex-direction:column;gap:5px}
.bagaki{font-size:clamp(23px,3.1vw,44px);font-weight:550;line-height:1;letter-spacing:.11em}
.ministries{font-size:clamp(11px,1.3vw,19px);letter-spacing:.29em;line-height:1.4;font-weight:450}
.centered-brand .site-header{justify-content:center}
.centered-brand{--header-space:144px}
.centered-brand .brand{flex-direction:column;gap:10px;text-align:center}
.centered-brand .brand-symbol{width:76px}
.centered-brand .bagaki{font-size:30px;letter-spacing:.24em}
.centered-brand .ministries{font-size:12px;letter-spacing:.38em}
.hero{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:16px;min-width:0;outline:none}
.tagline{position:relative;z-index:2;font-weight:500;margin:0;line-height:.84;letter-spacing:-.055em;font-size:clamp(78px,10.4vw,182px)}
.tagline span{display:block;white-space:nowrap}
.tagline span+span{margin-top:.035em}
.serif-title .tagline{font-family:Cormorant,Georgia,serif;font-size:clamp(80px,11.2vw,200px);letter-spacing:-.06em}
.sans-title .tagline{font-weight:650;font-size:clamp(72px,9.7vw,172px);letter-spacing:-.065em;line-height:.98}
.art{position:relative;justify-self:center;width:min(100%,var(--art-space));max-width:760px;aspect-ratio:1;isolation:isolate}
.art-plane{position:absolute;inset:0;color:var(--accent);transform:translate(var(--pointer-x),var(--pointer-y)) rotate(var(--pointer-turn));filter:hue-rotate(var(--hue));transform-origin:center;pointer-events:none}
.art-vector,.art-image{width:100%;height:100%;display:block;object-fit:contain}
.art-image{user-select:none}
.flow{transform-box:fill-box;transform-origin:center;animation-play-state:paused!important}
.is-enhanced[data-motion=on] .flow{animation-play-state:running!important}
.ring{animation:orbit-turn 50s linear infinite}
.iris-lines{animation:orbit-turn 70s linear infinite}
.shimmer{animation:soft-light 7s ease-in-out infinite alternate}
.halo{animation:soft-light 9s ease-in-out infinite alternate}
.sun{animation:soft-light 12s ease-in-out infinite alternate}
.arch-light{animation:soft-light 8s ease-in-out infinite alternate}
.lens-one{animation:lens-breathe 14s ease-in-out infinite alternate}
.lens-two{animation:lens-breathe 16s ease-in-out infinite alternate-reverse}
:is([data-theme=radiance],[data-theme=presence],[data-theme=eclipse],[data-theme=interweave]) .art-image{animation:light-breathe 12s ease-in-out infinite alternate;animation-play-state:paused}
.is-enhanced[data-motion=on] .art-image{animation-play-state:running}
.portal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;display:block;width:clamp(48px,8.5%,70px);height:clamp(48px,8.5%,70px);border-radius:50%;cursor:pointer;-webkit-tap-highlight-color:transparent}
.portal-caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.portal::after{content:"";position:absolute;inset:4px;border:1px solid transparent;border-radius:50%;box-shadow:0 0 0 0 transparent}
.portal:hover::after{border-color:var(--accent);box-shadow:0 0 24px color-mix(in srgb,var(--accent) 35%,transparent)}
.portal:focus-visible{outline:3px solid var(--fg);outline-offset:5px;background:color-mix(in srgb,var(--bg) 40%,transparent)}
.portal--secondary{display:none}
.is-enhanced .portal--secondary{display:block}
[data-theme=watcher] .portal{top:58.333%}
[data-theme=watcher] .portal--secondary{left:max(65.833%,calc(50% + 52px))}
.art .portal--primary{left:var(--portal-x,50%);top:var(--portal-y,50%)}
[data-theme=watcher]{--portal-y:58.333%}
[data-theme=threshold]{--portal-x:11.667%;--portal-y:50%}
[data-theme=oculus]{--portal-x:13.333%;--portal-y:71.167%}
[data-theme=prism]{--portal-x:82%;--portal-y:28%}
[data-theme=orbit]{--portal-x:34.78%;--portal-y:83.72%}
[data-theme=sanctuary]{--portal-x:84.167%;--portal-y:84.667%}
[data-theme=adept]{--portal-x:17%;--portal-y:74%}
[data-theme=radiance]{--portal-x:90%;--portal-y:80%}
[data-theme=eclipse]{--portal-x:20%;--portal-y:53%}
[data-theme=interweave]{--portal-x:25.8%;--portal-y:19.3%}
.portal--logo,.portal--footer{position:relative;left:auto;top:auto;transform:none;flex:none;display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px}
.portal--logo{width:auto;height:auto}
.portal--footer{width:48px;height:48px;color:var(--accent)}
.footer-constellation{display:block;width:48px;height:48px;pointer-events:none}
.footer-origin{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.sky{position:fixed;inset:0;z-index:0;background:linear-gradient(90deg,#126d985c,transparent 75%),linear-gradient(0deg,#063652e6,transparent 38%),url('/assets/art/watcher-sky-1600.webp') center/cover no-repeat;pointer-events:none}
.logo-spark{color:#ffda49}
[data-theme=daylight] .brand-symbol{color:var(--fg)}
.daylight-ink{color:#174cbb}
[data-theme=sanctuary] .brand-symbol{color:var(--fg)}
.arch-fill{fill:#184b4b}
.oculus-ink{color:#123b78}
[data-theme=oculus] .brand-symbol{color:var(--fg)}
[data-theme=prism] .art-plane{border-radius:50%;overflow:hidden;mask-image:radial-gradient(ellipse,black 51%,transparent 73%)}
[data-theme=prism] .brand-symbol{color:var(--fg)}
[data-theme=nightfall] .hero{position:relative;display:block;min-height:420px;text-align:center;align-content:center}
[data-theme=nightfall] .art{position:absolute;width:min(100%,670px,calc(100svh - 140px));inset:50% auto auto 50%;transform:translate(-50%,-50%)}
[data-theme=nightfall] .tagline{font-size:clamp(90px,12.5vw,205px);pointer-events:none}
[data-theme=nightfall] .tagline span{width:max-content;max-width:100%;margin-left:auto;margin-right:auto;background:var(--bg)}
[data-theme=nightfall] .portal{z-index:4}
[data-theme=sanctuary] .art{height:auto;aspect-ratio:1;min-height:0;width:min(100%,var(--art-space));max-width:640px}
.site-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:48px;position:relative;z-index:5}
.domain{font-size:clamp(15px,1.4vw,23px);letter-spacing:.025em;line-height:1.7;border-radius:3px}
.domain:hover{text-decoration:underline;text-underline-offset:5px}
.motion-tools{display:none;align-items:center;gap:12px;min-height:44px}
.is-enhanced .motion-tools{display:flex}
.motion-toggle{border:0;background:transparent;padding:10px 6px;min-height:44px;display:inline-flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;border-radius:3px;white-space:nowrap}
.motion-toggle:hover{text-decoration:underline;text-underline-offset:4px}
.motion-toggle svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}
.motion-toggle:disabled{cursor:default}
.motion-status{font-size:12px}
.motion-status:empty{display:none}
.skip-link{position:fixed;top:12px;left:12px;padding:14px 20px;z-index:10;transform:translateY(-180%);background:var(--fg);color:var(--bg);border-radius:3px}
.skip-link:focus{transform:translateY(0)}
.error-main{align-self:center;text-align:center;padding:60px 0}
.error-main h1{font-family:Cormorant,Georgia,serif;font-weight:500;font-size:clamp(50px,8vw,100px);margin:0}
.return-link{display:inline-block;margin-top:24px;text-decoration:underline;text-underline-offset:6px;padding:16px;min-height:48px}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@keyframes soft-light{from{opacity:.65}to{opacity:1}}
@keyframes lens-breathe{from{transform:scaleX(.94) rotate(-3deg)}to{transform:scaleX(1.02) rotate(3deg)}}
@keyframes light-breathe{from{opacity:.87;transform:scale(.995)}to{opacity:1;transform:scale(1.012)}}
@media(min-width:960px) and (max-height:720px){.page-shell{--header-space:65px;--top-space:28px;gap:20px;padding-top:28px}.brand-symbol{width:65px}.bagaki{font-size:30px}.ministries{font-size:13px}.tagline,.serif-title .tagline{font-size:9vw}.sans-title .tagline{font-size:8.5vw}.centered-brand .brand{flex-direction:row}.centered-brand .brand-symbol{width:56px}[data-theme=nightfall] .hero{min-height:330px}[data-theme=nightfall] .tagline{font-size:11vw}}
@media(max-width:959px){
 .page-shell{padding:28px 24px 20px;gap:28px;min-height:100svh}
 .brand-symbol{width:60px}.bagaki{font-size:28px}.ministries{font-size:12px}
 .hero{grid-template-columns:minmax(0,1fr);gap:24px;align-content:center}
 .tagline,.serif-title .tagline,.sans-title .tagline{font-size:clamp(44px,16vw,145px);text-align:left}
 .serif-title .tagline{font-size:clamp(46px,17vw,153px)}
 .art{width:min(100%,600px);max-width:600px;margin:0 auto;min-height:0}
 .site-footer{gap:12px;flex-wrap:wrap;justify-content:space-between}
 .domain{font-size:16px}.motion-toggle{font-size:12px}.motion-status{font-size:11px}
 .centered-brand .brand{flex-direction:row;text-align:left;gap:18px}.centered-brand .site-header{justify-content:flex-start}.centered-brand .brand-symbol{width:60px}.centered-brand .bagaki{font-size:27px;letter-spacing:.16em}
 [data-theme=presence] .site-header{justify-content:center}
 [data-theme=presence] .brand--discovery{flex-direction:column;text-align:center;gap:10px}
 [data-theme=nightfall] .hero{display:flex;flex-direction:column;justify-content:center;min-height:560px;position:relative}
 [data-theme=nightfall] .tagline{font-size:clamp(54px,18vw,155px);text-align:center;z-index:2}
 [data-theme=nightfall] .art{width:100%;max-width:620px}
 [data-theme=sanctuary] .art{aspect-ratio:1;min-height:0;height:auto;width:min(100%,600px)}
 .sky{background-position:center;background-image:linear-gradient(90deg,#126d985c,transparent 75%),linear-gradient(0deg,#063652e6,transparent 38%),url('/assets/art/watcher-sky-800.webp')}
}
@media(max-width:359px){.bagaki{font-size:23px}.ministries{font-size:10px}.brand-symbol{width:50px}.brand{gap:14px}.site-footer{gap:4px}.motion-tools{margin-left:auto}.page-shell{gap:24px}.centered-brand .bagaki{font-size:22px}.centered-brand .brand-symbol{width:50px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.art-plane{transform:none!important;filter:none!important}}
@media(forced-colors:active){
 body{background:Canvas;color:CanvasText}.sky{display:none}.brand-symbol{color:CanvasText}
 .art-plane{visibility:hidden}.hero{display:flex;flex-direction:column;align-items:flex-start}
 .tagline{font-size:clamp(44px,9vw,130px)!important;pointer-events:auto}
 .art{position:static!important;transform:none!important;display:flex;gap:20px;align-items:center;justify-content:flex-start;min-height:72px!important;height:auto!important;aspect-ratio:auto!important;margin:24px 0!important;width:100%!important}
 .portal{position:static!important;transform:none!important;width:auto;height:auto;min-height:48px;padding:12px 20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid LinkText;color:LinkText;border-radius:4px}
 .portal--secondary{display:none}.is-enhanced .portal--secondary{display:inline-flex}
 .portal-caption{position:static;clip:auto;width:auto;height:auto;margin:0;overflow:visible}
 .portal::after{display:none}.portal:focus-visible{outline:3px solid Highlight}
 [data-theme=nightfall] .hero{min-height:0;text-align:left}.motion-toggle svg{stroke:ButtonText}
 [data-theme=nightfall] .tagline span{background:Canvas;margin-left:0;margin-right:0}
 .brand--discovery{flex-wrap:wrap;gap:12px}.portal--logo,.portal--footer{gap:10px;color:LinkText}
}
@media print{.sky,.motion-tools,.portal,.skip-link{display:none}body{background:white;color:black}.page-shell{min-height:0}.art-plane{filter:none;transform:none}}
