/* Hero: sanctuary window — Overcomers Worship */
.over-site .arch-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:.86fr 1.14fr;gap:clamp(28px,6vw,110px);align-items:center;min-height:min(920px,calc(100dvh - 86px));padding:72px clamp(24px,7vw,140px);color:#fff;background:radial-gradient(ellipse at 26% 46%,#3d1656 0%,#1f0a2e 55%,#12061c 100%)}
.over-site .arch-rays{position:absolute;left:calc(26% - 900px);top:calc(50% - 900px);width:1800px;height:1800px;pointer-events:none;background:repeating-conic-gradient(from 0deg,rgba(184,146,63,.16) 0 3deg,transparent 3deg 12deg);-webkit-mask-image:radial-gradient(circle,#000 0,transparent 58%);mask-image:radial-gradient(circle,#000 0,transparent 58%);animation:rays-turn 120s linear infinite}
.over-site .arch-motes{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.over-site .arch-motes i{position:absolute;bottom:-12px;border-radius:50%;background:radial-gradient(circle,#f3d98c,rgba(184,146,63,0));opacity:0;animation:mote-rise linear infinite}
.over-site .arch-motes i:nth-child(1){left:41%;width:5px;height:5px;animation-duration:14s;animation-delay:-3.7s}
.over-site .arch-motes i:nth-child(2){left:78%;width:7px;height:7px;animation-duration:10s;animation-delay:-7.4s}
.over-site .arch-motes i:nth-child(3){left:27%;width:4px;height:4px;animation-duration:15s;animation-delay:-11.1s}
.over-site .arch-motes i:nth-child(4){left:64%;width:6px;height:6px;animation-duration:11s;animation-delay:-3.8s}
.over-site .arch-motes i:nth-child(5){left:13%;width:3px;height:3px;animation-duration:16s;animation-delay:-2.5s}
.over-site .arch-motes i:nth-child(6){left:50%;width:5px;height:5px;animation-duration:12s;animation-delay:-10.2s}
.over-site .arch-motes i:nth-child(7){left:87%;width:7px;height:7px;animation-duration:17s;animation-delay:-8.9s}
.over-site .arch-motes i:nth-child(8){left:36%;width:4px;height:4px;animation-duration:13s;animation-delay:-3.6s}
.over-site .arch-motes i:nth-child(9){left:73%;width:6px;height:6px;animation-duration:9s;animation-delay:-6.3s}
.over-site .arch-motes i:nth-child(10){left:22%;width:3px;height:3px;animation-duration:14s;animation-delay:-9s}
.over-site .arch-motes i:nth-child(11){left:59%;width:5px;height:5px;animation-duration:10s;animation-delay:-0.7s}
.over-site .arch-motes i:nth-child(12){left:8%;width:7px;height:7px;animation-duration:15s;animation-delay:-14.4s}
.over-site .arch-motes i:nth-child(13){left:45%;width:4px;height:4px;animation-duration:11s;animation-delay:-4.1s}
.over-site .arch-motes i:nth-child(14){left:82%;width:6px;height:6px;animation-duration:16s;animation-delay:-3.8s}
.over-site .arch-motes i:nth-child(15){left:31%;width:3px;height:3px;animation-duration:12s;animation-delay:-7.5s}
.over-site .arch-motes i:nth-child(16){left:68%;width:5px;height:5px;animation-duration:17s;animation-delay:-8.2s}
.over-site .arch-window{position:relative;justify-self:center;width:min(440px,100%);z-index:2}
.over-site .arch-window:before{content:"";position:absolute;left:50%;top:38%;width:150%;height:110%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(184,146,63,.42),transparent 62%);filter:blur(24px);animation:glow-breathe 6s ease-in-out infinite;z-index:0}
.over-site .arch-frame{position:relative;z-index:1;aspect-ratio:3/4.3;border-radius:999px 999px 0 0;overflow:hidden;background:#12061c;box-shadow:0 0 0 7px #1f0a2e,0 0 0 10px #b8923f,0 0 0 13px rgba(184,146,63,.35),0 40px 90px rgba(0,0,0,.55)}
.over-site .arch-frame img{width:100%;height:100%;object-fit:cover;object-position:52% 50%;filter:saturate(.92) contrast(1.06);animation:hero-zoom 26s ease-in-out infinite alternate}
.over-site .arch-frame:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 8%,rgba(255,224,160,.5),transparent 52%),linear-gradient(180deg,rgba(31,10,46,.05),rgba(31,10,46,.55))}
.over-site .arch-frame .mullion{position:absolute;z-index:2;background:linear-gradient(180deg,#e2c581,#b8923f 55%,#8c6a24);box-shadow:0 0 10px rgba(0,0,0,.35);pointer-events:none}
.over-site .arch-frame .mullion.v1{left:33.33%;top:0;bottom:0;width:4px}
.over-site .arch-frame .mullion.v2{left:66.66%;top:0;bottom:0;width:4px}
.over-site .arch-frame .mullion.h{left:0;right:0;top:36%;height:4px}
.over-site .arch-copy{position:relative;z-index:2}
.over-site .arch-copy h1{font-family:"Barlow Condensed",Impact,sans-serif;font-weight:900;text-transform:uppercase;line-height:.92;margin:0;font-size:clamp(48px,6.6vw,108px)}
.over-site .arch-copy h1 em{font-style:normal;color:var(--accent)}
.over-site .arch-copy p{margin:24px 0 0;max-width:600px;font-size:clamp(16px,1.7vw,21px);color:rgba(255,255,255,.84)}
.over-site .arch-times{margin-top:38px;max-width:660px}
.over-site .arch-times h2{margin:0 0 14px;font-size:12px;font-weight:900;letter-spacing:.24em;text-transform:uppercase;color:var(--accent)}
.over-site .arch-times-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.over-site .arch-times-row div{position:relative;padding:16px 18px 15px;background:rgba(255,255,255,.07);border:1px solid rgba(184,146,63,.4);border-top:3px solid var(--accent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform .3s ease,background .3s ease}
.over-site .arch-times-row div:hover{transform:translateY(-4px);background:rgba(184,146,63,.16)}
.over-site .arch-times-row b{display:block;font-family:"Barlow Condensed",Impact,sans-serif;font-size:34px;line-height:1;color:#fff}
.over-site .arch-times-row span{display:block;margin-top:4px;font-size:13px;font-weight:800;letter-spacing:.08em;color:var(--accent)}
.over-site .arch-times-row small{display:block;margin-top:2px;font-size:12px;letter-spacing:.06em;color:rgba(255,255,255,.72)}
@keyframes rays-turn{to{transform:rotate(360deg)}}
@keyframes mote-rise{0%{transform:translateY(0) translateX(0);opacity:0}12%{opacity:.9}80%{opacity:.6}100%{transform:translateY(-105vh) translateX(28px);opacity:0}}
@media(max-width:900px){.over-site .arch-hero{grid-template-columns:1fr;padding:44px 22px 60px;gap:34px}.over-site .arch-window{width:min(320px,82%)}.over-site .arch-rays{left:calc(50% - 900px);top:-500px}.over-site .arch-times-row{grid-template-columns:1fr 1fr 1fr;gap:8px}.over-site .arch-times-row div{padding:12px 10px}.over-site .arch-times-row b{font-size:26px}}
@media(max-width:520px){.over-site .arch-times-row{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.over-site .arch-rays,.over-site .arch-window:before,.over-site .arch-frame img,.over-site .arch-motes i{animation:none}}
