/* Church Worldwide page — builds on style.css + legal.css (.phero__bg) */

.whero{position:relative;background:var(--maroon-dd);color:#fff;overflow:hidden;padding:150px 0 70px}
.whero__inner{position:relative;z-index:2}
.whero__title{font-family:var(--f-head);font-weight:700;text-transform:uppercase;font-size:clamp(40px,7vw,104px);line-height:1.08;margin:6px 0 20px}
.whero__title em{font-style:normal;color:var(--gold)}
.whero .line>span{transform:none}
.whero__lead{font-size:clamp(16px,1.5vw,20px);color:rgba(255,255,255,.85);max-width:620px;margin-bottom:34px}
.whero .reveal{opacity:1;transform:none}
.stats{list-style:none;display:flex;gap:clamp(24px,5vw,64px);flex-wrap:wrap}
.stats strong{display:block;font-family:var(--f-head);font-weight:700;font-size:clamp(36px,5vw,64px);line-height:1;color:var(--gold)}
.stats span{font:500 12px var(--f-head);letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.7)}

/* finder */
.finder{background:var(--maroon-dd);color:#fff;padding:0 0 90px}
.finder__bar{display:flex;flex-direction:column;gap:16px;padding:6px 0 28px;position:sticky;top:64px;z-index:20;background:linear-gradient(var(--maroon-dd) 85%,transparent);margin-bottom:8px}
.finder .search{margin-bottom:0}
.pills{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.pill{flex:none;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);color:#fff;border-radius:99px;padding:9px 18px;font:500 13px var(--f-head);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:.2s;white-space:nowrap}
.pill small{opacity:.6;margin-left:4px;font-family:var(--f-body)}
.pill:hover{border-color:var(--gold)}
.pill.on{background:var(--gold);border-color:var(--gold);color:var(--maroon-dd)}

.finder__grid{display:grid;grid-template-columns:minmax(320px,.85fr) 1.4fr;gap:28px;align-items:start}

/* list */
.list{position:relative;max-height:calc(100svh - 240px);min-height:420px;overflow-y:auto;padding-right:8px;display:flex;flex-direction:column;gap:8px;scrollbar-width:thin;scrollbar-color:var(--maroon) transparent}
.group{position:sticky;top:0;z-index:2;background:var(--maroon-dd);font:600 15px var(--f-head);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding:14px 2px 8px;border-bottom:1px solid rgba(255,255,255,.12)}
.group small{color:rgba(255,255,255,.5);margin-left:6px;font-family:var(--f-body);letter-spacing:0}
.card{display:flex;flex-direction:column;gap:3px;text-align:left;width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:14px 16px;color:#fff;cursor:pointer;transition:transform .2s,background .2s,border-color .2s}
.card:hover{background:rgba(255,255,255,.09);border-color:rgba(196,159,71,.55);transform:translateX(4px)}
.card.on{background:rgba(196,159,71,.16);border-color:var(--gold)}
.card strong{font:600 18px var(--f-head);letter-spacing:.03em;text-transform:uppercase}
.card__addr{font-size:13.5px;color:rgba(255,255,255,.7);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card__time{font-size:12.5px;color:var(--gold-l)}
.empty{padding:40px 8px;color:rgba(255,255,255,.7)}

/* panel */
.panel{position:sticky;top:215px;min-height:420px}
.panel__map{position:relative;background:radial-gradient(circle at 50% 40%,#3a0c1a,#1c050c 70%);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:18px 18px 12px;overflow:hidden}
.panel__map[hidden],.detail[hidden]{display:none}
.panel__hint{font-size:13.5px;color:rgba(255,255,255,.6);padding:6px 6px 8px}
.panel__map svg{display:block;width:100%;height:auto}
.panel .world__reset{top:16px;right:16px}

.detail{position:relative;background:#fff;color:var(--ink);border-radius:24px;padding:28px;max-height:calc(100svh - 240px);overflow-y:auto;box-shadow:0 30px 70px rgba(0,0,0,.4)}
.detail__close{position:absolute;top:14px;right:16px;width:40px;height:40px;border-radius:50%;border:0;background:var(--cream);color:var(--maroon);font-size:26px;line-height:1;cursor:pointer;transition:.2s}
.detail__close:hover{background:var(--maroon);color:#fff}
.detail__tag{font:500 11px var(--f-head);letter-spacing:.25em;text-transform:uppercase;color:var(--gold)}
.detail h2{font:700 clamp(26px,3vw,40px)/1.1 var(--f-head);text-transform:uppercase;color:var(--maroon);margin:4px 48px 18px 0}
.detail__body{display:grid;gap:16px;margin-bottom:20px}
.detail__body section h4{font:500 12px var(--f-head);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.detail__body p{font-size:15.5px;color:#3b2a2f}
.detail__body a{color:var(--maroon);text-decoration:underline;text-underline-offset:3px;word-break:break-word}
.muted{color:#7a666c}
.detail__map{border-radius:16px;overflow:hidden;background:var(--cream);margin-bottom:18px;aspect-ratio:16/10}
.detail__map iframe{width:100%;height:100%;border:0;display:block}
.nomap{height:100%;display:grid;place-items:center;text-align:center;padding:20px;color:#7a666c;font-size:14px}
.detail__actions{display:flex;gap:10px;flex-wrap:wrap}
.detail__actions .btn{color:inherit}
.detail__actions .btn--gold{color:var(--maroon-dd)}
.detail__actions .btn--maroon{color:#fff}

@media(max-width:980px){
  .finder__grid{grid-template-columns:1fr}
  .finder__bar{top:58px}
  .list{max-height:60svh}
  .panel{position:relative;top:auto;order:-1}
  .panel__map{display:none}
  body:not(.has-detail) .panel{display:none}
  .detail{max-height:none}
}

.chip{align-self:flex-start;background:var(--gold);color:var(--maroon-dd);border:0;border-radius:99px;padding:8px 16px;font:500 13px var(--f-head);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.chip b{margin-left:6px;font-size:16px}
.chip[hidden]{display:none}

.hq{display:inline-block;vertical-align:middle;margin-left:8px;padding:2px 10px;border-radius:99px;background:var(--gold);color:var(--maroon-dd);font:600 10px var(--f-head);font-style:normal;letter-spacing:.16em;text-transform:uppercase}
.detail h2 .hq{font-size:11px;padding:4px 12px;margin-left:12px;transform:translateY(-4px)}
.card:has(.hq){border-color:var(--gold);background:rgba(196,159,71,.12)}
