html,body{margin:0}body{font-size:14px}img{max-width:100%}[hidden]{display:none!important}
[hidden]{display:none!important}
/* Layout: slim sticky nav with dropdowns, one page shown at a time, generous reading column */
:root{ color-scheme:light;
  --bg:#FFFFFF; --surface:#FFFFFF; --ink:#13223A; --muted:#4F6280; --line:#D6E3F0; --sky:#DCE9F7;
  --accent:#0B2D63; --accent-ink:#FFFFFF; --brass:#0F6E5C; --teal:#5FC3C2; --ph:#FBEFD5; --ph-ink:#6B4C12;
  --display:"Sora", "Segoe UI", system-ui, sans-serif;
  --body:"Spectral", Georgia, "Times New Roman", serif;
}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1.125rem;line-height:1.65}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}
a{color:var(--accent)}
.wrap{max-width:1080px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--display);line-height:1.2;text-wrap:balance;margin:0}
h1{font-size:clamp(2rem,5vw,3rem);font-weight:700;letter-spacing:-.02em}
h2{font-size:1.6rem;font-weight:600}
h3{font-size:1.1rem;font-weight:600}
.ph{background:var(--ph);color:var(--ph-ink);padding:0 .3em;border-radius:3px;font-style:italic}
.eyebrow{font-family:var(--display);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:600}

/* header */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:var(--display);font-weight:700;font-size:.9rem;white-space:nowrap}
.brand img{height:84px;width:auto;max-width:min(380px,60vw);object-fit:contain;flex:none;padding:2px}
@media (max-width:620px){.brand img{height:54px}}
.hero{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;background:var(--sky);border-radius:16px;padding:32px}
.hero .text{display:grid;gap:20px;min-width:0}
.hero img{width:100%;max-width:320px;justify-self:center;background:#fff;border-radius:50%;padding:20px;aspect-ratio:1;object-fit:contain}
@media (max-width:720px){.hero{grid-template-columns:1fr;padding:24px}.hero img{max-width:200px;grid-row:1}}
.photo{margin:0;display:grid;gap:8px}
.photo img{width:100%;max-width:100%;aspect-ratio:16/8;object-fit:cover;object-position:center 45%;border-radius:16px;display:block}
.photo figcaption{font-size:.95rem;color:var(--muted)}
.tile{border-top-color:var(--teal)!important}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;flex-wrap:nowrap}
nav li{position:relative}
nav a,nav button{font-family:var(--display);font-size:.85rem;font-weight:600;color:var(--ink);text-decoration:none;background:none;border:0;padding:6px 8px;white-space:nowrap;border-radius:6px;cursor:pointer;display:block}
nav a:hover,nav button:hover,nav a.on{background:var(--bg);color:var(--accent)}
nav .sub{display:none;position:absolute;top:100%;left:0;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px;min-width:200px;flex-direction:column;box-shadow:0 8px 24px rgba(0,0,0,.08)}
nav li:hover>.sub,nav li:focus-within>.sub,nav li.open>.sub{display:flex}
.lock{font-size:.7rem;color:var(--brass);margin-left:4px}
#menuBtn{display:none;font-family:var(--display);background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:8px 14px;font-weight:600}
@media (max-width:1060px){
  #menuBtn{display:block}
  nav{display:none;width:100%}
  nav.show{display:block}
  .bar{flex-wrap:wrap}
  nav ul{flex-direction:column;padding-bottom:12px}
  nav .sub{position:static;display:flex;border:0;box-shadow:none;padding:0 0 0 12px;min-width:0}
}
:focus-visible{outline:2px solid var(--brass);outline-offset:2px}

/* pages */
main{padding-block:48px 72px}
.page{display:grid;gap:28px;grid-template-columns:minmax(0,1fr)}
.page>p,.prose{max-width:65ch}
.prose{display:grid;gap:16px}
.prose p{margin:0}
.lede{font-size:1.25rem;color:var(--muted);margin:0;max-width:60ch}
.hero{display:grid;gap:20px;padding-block:16px 8px}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{font-family:var(--display);font-weight:600;font-size:.95rem;text-decoration:none;padding:12px 20px;border-radius:8px;background:var(--accent);color:var(--accent-ink);border:0;cursor:pointer}
.btn.alt{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}
.times{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.time{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:20px;display:grid;gap:4px}
.time .when{font-family:var(--display);font-size:1.6rem;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.tile{border-top:3px solid var(--accent);padding-top:14px;display:grid;gap:8px;align-content:start}
.tile p{margin:0;color:var(--muted)}
.verse{border-left:3px solid var(--brass);padding-left:20px;font-style:italic;font-size:1.25rem;max-width:55ch;margin:0}
.verse cite{display:block;font-style:normal;font-family:var(--display);font-size:.8rem;color:var(--muted);margin-top:6px}
.team{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}
.person{display:grid;gap:10px}
.avatar{aspect-ratio:1;max-width:100%;border-radius:10px;background:var(--line);display:grid;place-items:center;font-family:var(--display);font-size:2rem;color:var(--muted)}
.person p{margin:0;color:var(--muted);font-size:1rem}
dl.facts{display:grid;grid-template-columns:max-content 1fr;gap:10px 24px;margin:0;max-width:65ch}
dt{font-family:var(--display);font-weight:600;font-size:.9rem}
dd{margin:0}
@media (max-width:520px){dl.facts{grid-template-columns:1fr;gap:2px}dd{margin-bottom:10px}}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:24px;display:grid;gap:14px;max-width:560px}
label{font-family:var(--display);font-size:.85rem;font-weight:600;display:grid;gap:6px}
input,textarea{font:inherit;font-size:1rem;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink)}
.note{font-size:.95rem;color:var(--muted);margin:0}
.files{list-style:none;padding:0;margin:0;display:grid;max-width:720px}
.files li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.files span:last-child{color:var(--muted);font-size:.95rem;font-variant-numeric:tabular-nums}
.banner{background:var(--ph);color:var(--ph-ink);border-radius:8px;padding:12px 16px;font-size:.95rem;max-width:720px}
footer{border-top:1px solid var(--line);background:var(--surface);padding-block:32px;font-size:.95rem;color:var(--muted)}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px}
@media (prefers-reduced-motion:no-preference){.page{animation:in .25s ease-out}@keyframes in{from{transform:translateY(6px)}to{transform:none}}}

/* home, from the PEC mockup */
:root{--i1:#0B2D63;--i2:#0F6E5C;--i3:#2FA3A2;--i4:#4A6584;--w1:#0B2D63;--w2:#0F6E5C;--w3:#1F7F80;--w4:#4A6584;--w5:#2E5C99;--w6:#0A5446}
.phero{position:relative;border-radius:16px;overflow:hidden}
.phero img{width:100%;max-width:100%;display:block;aspect-ratio:698/304;object-fit:cover}
.phero-text{position:absolute;inset:auto 0 0 0;padding:40px 24px 18px;background:linear-gradient(transparent,rgba(8,20,40,.78));display:grid;gap:2px}
.phero-text .eyebrow{color:#CFE6FF}
.sunday{margin:0;font-family:var(--display);font-weight:700;color:#fff;font-size:clamp(1.1rem,3vw,1.6rem)}
.icons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding-block:12px}
.ic{display:grid;justify-items:center;text-align:center;gap:4px;text-decoration:none;color:var(--muted)}
.ic svg{width:min(120px,100%);height:auto;margin-bottom:8px;transition:transform .2s}
.ic:hover svg{transform:scale(1.05)}
.ic .big{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}
@media (max-width:620px){.icons{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tagband{display:flex;align-items:center;gap:24px;background:var(--sky);border-bottom:6px solid var(--teal);border-radius:14px;padding:16px 24px;flex-wrap:wrap}
.tagband img{height:120px;width:auto;border-radius:10px;padding:6px}
.tagband p{margin:0;font-family:var(--display);font-weight:700;color:var(--accent);font-size:clamp(1.2rem,3vw,1.75rem);line-height:1.25;flex:1;min-width:0;text-wrap:balance}
.whatson{display:grid;gap:16px}
.whatson h2{text-align:center}
.wo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:760px){.wo{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:440px){.wo{grid-template-columns:1fr}}
.wo a{background:var(--w);color:#fff;text-decoration:none;border-radius:12px;padding:18px;display:grid;gap:4px;align-content:start}
.wo a:hover{filter:brightness(1.08)}
.wo .day{font-family:var(--display);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;opacity:.9}
.wo .day .ph{font-style:normal}
.wo p{margin:0;opacity:.92;font-size:1rem}
.fiec{font-family:var(--display);font-weight:600}
.fieclink{display:inline-block;background:#fff;border-radius:8px;padding:6px 10px;line-height:0}
.fiecbadge{height:34px;width:auto;max-width:100%}
.fieclink.big{justify-self:start;padding:12px 16px}
.fieclink.big .fiecbadge{height:56px}
footer .wrap{align-items:start}
.welcome{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:24px;align-items:center}
.welcome-text{display:grid;gap:12px;min-width:0}
.newhere{display:grid;gap:6px;background:var(--accent);color:#fff;text-decoration:none;border-radius:14px;padding:22px}
.newhere .eyebrow{color:#9FE0DE}
.newhere strong{font-family:var(--display);font-size:1.2rem;line-height:1.3}
.newhere .go{font-family:var(--display);font-size:.9rem;font-weight:600;color:#CFE6FF}
.newhere:hover{filter:brightness(1.15)}
@media (max-width:720px){.welcome{grid-template-columns:1fr}}
.fgrid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;align-items:start}
.fcol{display:grid;gap:4px}
.fh{font-family:var(--display);color:var(--ink);font-size:.95rem;margin-bottom:4px}
.fsmall{font-size:.85rem;margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}

/* big home hero with header laid over it */
#bighero{position:relative;overflow:hidden;color:#fff;background-color:#0B2D63;background-size:cover;background-position:center 40%}
#bighero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%}
#bighero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,22,50,.35) 0%,rgba(6,22,50,0) 22%),radial-gradient(ellipse 60% 45% at 50% 50%,rgba(6,22,50,.5) 0%,rgba(6,22,50,.18) 70%,rgba(6,22,50,.05) 100%)}
.hero-in{position:relative;z-index:1;display:grid;justify-items:center;text-align:center;gap:14px;padding-block:clamp(190px,24vw,260px) clamp(70px,9vw,120px)}
.w1{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(1.6rem,4vw,3rem);opacity:.95}
.w2{font-size:clamp(2.4rem,7.5vw,5.6rem);font-weight:700;letter-spacing:-.025em;line-height:1.02;max-width:14ch;text-shadow:0 3px 18px rgba(0,0,0,.35)}
.w3{margin:6px 0 10px;font-size:clamp(1.05rem,2vw,1.35rem);font-style:italic;max-width:40ch;color:#DCEBFA}
.btn.light{background:#fff;color:#0B2D63}
.btn.ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.8)}
body.home header{position:absolute;left:0;right:0;top:env(safe-area-inset-top,0px);background:transparent;border-bottom:0}
body.home::before{background:#0B2D63}
body.home header .brand{color:#fff}
body.home header .brand img{padding:10px 18px;background:rgba(255,255,255,.82);border-radius:16px;box-shadow:0 4px 18px rgba(6,22,50,.18);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);filter:none}
@media (max-width:620px){body.home header .brand img{padding:6px 10px;border-radius:12px}}
body.home header .wrap{max-width:none;padding-left:max(20px,env(safe-area-inset-left,0px))}
body.home nav>ul>li>a,body.home nav>ul>li>button{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.4)}
body.home nav>ul>li>a:hover,body.home nav>ul>li>button:hover,body.home nav>ul>li>a.on{background:rgba(255,255,255,.16);color:#fff}
body.home #menuBtn{background:#fff;color:#0B2D63}
body.home main{padding-top:40px}
@media (max-width:1060px){body.home nav.show{background:var(--surface);border-radius:12px;padding:8px}
 body.home nav.show>ul>li>a,body.home nav.show>ul>li>button{color:var(--ink);text-shadow:none}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bar{flex-wrap:wrap}
nav{min-width:0}

/* events */
.events{background:var(--sky);border-bottom:6px solid var(--teal);border-radius:18px;padding:24px clamp(14px,2.5vw,24px);display:grid;gap:16px}
.ev-head{display:grid;justify-items:center;text-align:center;gap:8px;color:var(--accent)}
.ev-head h2{font-size:clamp(1.5rem,3.5vw,2rem);font-weight:700}
.ev-head p{margin:0;font-family:var(--display);font-size:1rem;color:var(--brass)}
.ev-filter select{margin-top:8px;font-family:var(--display);font-size:.9rem;padding:10px 40px 10px 14px;border-radius:8px;border:1.5px solid var(--line);background:#fff;color:var(--ink);min-width:240px;max-width:100%}
.ev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.ev{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(11,45,99,.08);display:grid;grid-template-rows:auto 1fr;color:var(--ink)}
.ev-img{position:relative;aspect-ratio:2/1;max-width:100%;background:var(--evbg,#0F6E5C) center/cover;display:grid;place-content:center;text-align:center;color:#fff;padding:12px}
.ev-img::before{content:"";position:absolute;inset:0;background:rgba(6,22,50,.35)}
.ev-img.church{background-image:url("../images/church-front.jpg")}
.ev-img.plains{background-image:url("../images/welcome-to-plains.jpg")}
.ev-img span{position:relative;font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;text-shadow:0 2px 8px rgba(0,0,0,.4)}
.ev-img b{position:relative;display:block;font-family:var(--display);font-size:1.15rem;color:#9FE8E6;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.ev-body{position:relative;padding:10px 12px 12px;display:grid;gap:3px;align-content:start}
.ev-body h3{color:var(--accent);font-size:.88rem;padding-right:52px}
.ev-badge{position:absolute;right:10px;top:-24px;width:48px;height:48px;border-radius:50%;background:#EEF4FA;border:3px solid #fff;display:grid;place-content:center;text-align:center;font-family:var(--display);color:var(--accent);line-height:1}
.ev-badge small{font-size:.5rem;letter-spacing:.08em;text-transform:uppercase}
.ev-badge strong{font-size:1.05rem;margin:1px 0}
.ev-badge.weekly strong{font-size:.5rem;letter-spacing:.06em}
.ev-row{display:flex;gap:6px;align-items:center;font-size:.78rem;line-height:1.35;color:var(--muted)}
.ev-row svg{width:12px;height:12px;flex:none;stroke:var(--muted);fill:none;stroke-width:2}
.ev-empty{color:var(--muted);text-align:center;margin:0}

/* phone tweaks */
@media (max-width:1060px){
  nav a,nav button{font-size:1rem;padding:12px 10px;width:100%;text-align:left}
  nav>ul>li{border-bottom:1px solid var(--line)}
  nav>ul>li:last-child{border-bottom:0}
  nav .sub a{font-size:.95rem;padding:10px 10px;color:var(--muted)}
}
@media (max-width:620px){
  body:not(.home) .brand img{height:48px}
  #bighero .bg{object-position:58% 40%}
  .hero-in{padding-block:150px 48px;gap:10px}
  .w1{font-size:1.4rem}
  .w2{font-size:2.3rem}
  .w3{font-size:1rem}
  .hero-in .btns{width:100%;flex-direction:column;align-items:stretch}
  .hero-in .btn{text-align:center}
  .icons{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .ic svg{width:64px;margin-bottom:4px}
  .ic .big{font-size:.72rem;letter-spacing:.05em}
  .ic span:last-child{font-size:.8rem;line-height:1.2}
  .tagband{flex-direction:column;text-align:center;gap:8px;padding:16px}
  .tagband img{height:90px}
  .tagband p{font-size:1.15rem;flex:none}
  .ev-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-14px;padding:4px 14px 10px;-webkit-overflow-scrolling:touch}
  .ev-grid .ev{flex:0 0 72%;scroll-snap-align:start}
  .ev-filter select{min-width:0;width:100%}
  .ev-head p::after{content:" · swipe for more";color:var(--muted)}
  main{padding-block:32px 48px}
  body.home main{padding-top:28px}
  .page{gap:22px}
}

/* vision */
.vision{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.vhead{display:grid;gap:4px;align-content:center;padding:4px 8px 4px 0}
.vhead h2{color:var(--accent)}
.vi{border-top:3px solid var(--teal);padding:12px 4px 0;display:grid;gap:4px;align-content:start}
.vi h3{color:var(--accent);font-size:1rem}
.vi p{margin:0;font-size:.95rem;color:var(--muted);line-height:1.5}
@media (max-width:860px){.vision{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:440px){.vision{grid-template-columns:1fr}}
/* beliefs */
.creed{list-style:none;counter-reset:c;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px 28px}
.creed li{counter-increment:c;display:grid;gap:6px;align-content:start;border-top:1px solid var(--line);padding-top:14px}
.creed h3{color:var(--accent);font-size:1.05rem}
.creed h3::before{content:counter(c,lower-alpha) ") ";color:var(--brass);font-weight:600}
.creed p{margin:0;font-size:1rem;line-height:1.6}
.ticks{margin:0;padding-left:1.2em;display:grid;gap:6px}
.ticks li::marker{color:var(--brass)}
.steps{margin:0;padding-left:1.4em;display:grid;gap:8px}
.steps li::marker{color:var(--accent);font-family:var(--display);font-weight:700}
.doclist{list-style:none;margin:0;padding:0;display:grid;max-width:720px}
.doclist li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid var(--line)}
.doclist li>a{font-family:var(--display);font-weight:600;text-decoration:none}
.doclist li>a::before{content:"↓ ";color:var(--brass)}
.doclist span{color:var(--muted);font-size:.95rem}
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips li{font-family:var(--display);font-weight:600;font-size:.9rem;color:var(--accent);background:var(--sky);border-radius:999px;padding:6px 14px}
.ev-img.illus{background-size:cover;background-position:center}
.ev-img.illus::before{display:none}
.ministry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:32px;align-items:start}
.m-text{display:grid;gap:22px;min-width:0}
.poster{width:100%;max-width:360px;border-radius:14px;box-shadow:0 6px 24px rgba(11,45,99,.14);display:block}
@media (max-width:760px){.ministry{grid-template-columns:1fr}.poster{max-width:420px;justify-self:center}}
.fbfeed{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:32px;align-items:start}
.fb-text{display:grid;gap:12px;align-content:start;min-width:0}
.fb-text h2{color:var(--accent)}
.fb-text p{margin:0;max-width:45ch}
.fb-box{width:100%;max-width:500px;min-height:200px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--bg);display:grid}
.fb-ph{margin:auto;padding:24px;text-align:center;color:var(--muted)}
.fb-box iframe{width:100%;height:600px;border:0;display:block}
.fb-panel{display:grid;grid-template-rows:auto 1fr;max-width:500px;width:100%;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface);box-shadow:0 6px 20px rgba(11,45,99,.08)}
.fb-top{display:flex;align-items:center;gap:12px;background:#1877F2;color:#fff;padding:12px 14px}
.fb-mini{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:8px;padding:3px;flex:none}
.fb-name{display:grid;flex:1;min-width:0;line-height:1.25}
.fb-name a{color:#fff;font-family:var(--display);font-weight:700;font-size:1.05rem;text-decoration:none}
.fb-name small{color:#DCE8FF;font-size:.85rem}
.fb-follow{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#1877F2;border-radius:8px;padding:7px 12px;font-family:var(--display);font-weight:700;font-size:.9rem;text-decoration:none;flex:none}
.fb-follow svg{width:16px;height:16px}.fb-follow svg path{fill:#1877F2}
.fb-posts{max-height:560px;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;background:#F0F2F5;gap:10px;padding:10px}
.fbp{display:block;flex:none;background:var(--surface);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.fbp:hover{box-shadow:0 4px 12px rgba(11,45,99,.15)}
.fbp img{width:100%;height:auto;max-height:520px;object-fit:contain;background:#fff;display:block}
.fbp p{margin:0;padding:12px 14px 0;font-size:.97rem;line-height:1.5;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
.fbp .fbm{display:flex;justify-content:space-between;gap:8px;padding:10px 14px 12px;font-size:.88rem;color:var(--muted)}
.fbp .fbm b{white-space:nowrap;color:#1877F2;font-family:var(--display);font-weight:600}
.fbg{display:grid;gap:3px;background:#fff;height:340px;grid-template-columns:3fr 2fr}
.fbg img{width:100%;height:100%;object-fit:cover;display:block;max-height:none}
.fbg .big{grid-row:1/-1}
.fbg.n2{grid-template-columns:1fr 1fr;height:260px}
.fbg.n3{grid-template-rows:1fr 1fr}
.fbg.n4{grid-template-rows:1fr 1fr 1fr}
.fbg .th{position:relative;overflow:hidden;min-height:0}
.fbg .th b{position:absolute;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.45);color:#fff;font-family:var(--display);font-size:1.6rem}
.adminlink{text-align:center;font-size:.85rem;opacity:.7}
.fb-empty{display:grid;justify-items:center;text-align:center;gap:10px;padding:22px;text-decoration:none;color:var(--ink)}
.fb-logo{width:150px;height:auto}
.fb-sub{color:var(--muted)}
.fb-empty .btn{background:#1877F2;border-color:#1877F2;color:#fff}
.fb-col{display:grid;gap:8px;min-width:0;max-width:500px;width:100%}
.fb-help{margin:0;font-size:.92rem;color:var(--muted)}
@media (max-width:820px){.fbfeed{grid-template-columns:1fr}}
.sermon-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;max-width:980px}
.scard{border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;gap:12px;align-content:start}
.scard h2{color:var(--accent);font-size:1.3rem}
.scard p{margin:0}
.yt{border-radius:10px;overflow:hidden}
.yt iframe{width:100%;aspect-ratio:16/9;border:0;display:block}
.doclist.links li>a::before{content:"→ "}
.community{background:var(--accent);color:#fff;border-radius:18px;padding:36px 24px;text-align:center;display:grid;gap:6px}
.community p{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(1.4rem,3.4vw,2.2rem);line-height:1.2;text-wrap:balance}
.community span{color:#9FE0DE;font-family:var(--display);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}
.timeline{list-style:none;margin:0;padding:0;display:grid;max-width:780px}
.timeline li{display:grid;grid-template-columns:84px minmax(0,1fr);gap:20px;padding-bottom:28px;position:relative}
.timeline li::before{content:"";position:absolute;left:41px;top:34px;bottom:0;width:2px;background:var(--line)}
.timeline li:last-child::before{display:none}
.timeline .yr{font-family:var(--display);font-weight:700;font-size:1.05rem;color:var(--accent);background:var(--sky);border-radius:999px;text-align:center;padding:6px 0;align-self:start;position:relative;z-index:1;font-variant-numeric:tabular-nums}
.timeline h3{color:var(--accent);font-size:1.1rem;margin-bottom:6px}
.timeline p{margin:0 0 10px}
@media (max-width:520px){.timeline li{grid-template-columns:64px minmax(0,1fr);gap:12px}.timeline li::before{left:31px}}
.team-head{display:grid;justify-items:center;text-align:center;gap:10px}
.team-head .lede{max-width:62ch}
.tmrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;max-width:820px;margin-inline:auto;width:100%}
.tm{display:grid;justify-items:center;text-align:center;gap:4px;align-content:start}
.ring{width:128px;height:128px;max-width:100%;border-radius:50%;border:4px solid var(--teal);display:grid;place-items:center;background:var(--sky);overflow:hidden;margin-bottom:8px}
.ring span{font-family:var(--display);font-weight:700;font-size:2rem;color:var(--accent)}
.ring img{width:100%;height:100%;object-fit:cover}
.tm h3{font-size:1.15rem;color:var(--ink)}
.tm p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.4;max-width:18ch}
@media (max-width:640px){.tmrow{grid-template-columns:repeat(2,minmax(0,1fr))}.ring{width:104px;height:104px}}
.pastor{background:var(--accent);color:#fff;border-radius:18px;padding:40px clamp(18px,5vw,64px);display:grid;justify-items:center;text-align:center;gap:12px}
.pastor h2{font-size:clamp(1.6rem,3.5vw,2.2rem);color:#fff}
.pastor h3{color:#9FE0DE;font-size:1.05rem}
.pastor p{margin:0;max-width:66ch;color:#E4EEF8}
.team-run{margin-inline:auto;text-align:center}
.ways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.way{border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:12px;padding:20px;display:grid;gap:8px;align-content:start}
.way h2{color:var(--accent);font-size:1.3rem}
.way h3{font-size:.95rem;color:var(--brass);margin-top:4px}
.way p{margin:0;font-size:1rem}
@media (max-width:900px){.ways{grid-template-columns:1fr}}
.address{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:28px;align-items:start;border-top:3px solid var(--teal);padding-top:28px}
.addr-text{display:grid;gap:10px}
.addr-text h2{color:var(--accent)}
.addr-text p{margin:0}
.address .photo{margin:0}
@media (max-width:760px){.address{grid-template-columns:1fr}}

/* fixed-background ("window") effect, as on the old site */
.sermonband{position:relative;border-radius:18px;overflow:hidden;color:#fff;background-color:#0B2D63;background-position:center;background-size:cover;background-repeat:no-repeat}
.sermonband::before{content:"";position:absolute;inset:0;background:rgba(6,22,50,.55)}
.sb-in{position:relative;display:grid;justify-items:center;text-align:center;gap:14px;padding:64px 20px}
.sb-in h2{font-size:clamp(1.7rem,4vw,2.6rem);color:#fff}
.sb-in p{margin:0;color:#DCEBFA;max-width:46ch}
.sb-video{width:100%;max-width:720px;display:grid;justify-items:center}
.sb-video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;display:block;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.sb-link{color:#fff;font-family:var(--display);font-weight:600}
@media (hover:hover) and (pointer:fine) and (min-width:900px){
  #bighero{background-color:#0B2D63;background-position:center 40%;background-size:cover;background-repeat:no-repeat;background-attachment:fixed}
  #bighero .bg{display:none}
  .sermonband{background-attachment:fixed}
}


.sb-eyebrow{font-family:var(--display);font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#BFE3F5}
.sb-links{display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:center}
.sermonband{background-position:72% 60%}
.hallband{background-position:center 55%}
.hallband::before{background:linear-gradient(180deg,rgba(6,22,50,.55),rgba(6,22,50,.72))}
.hallband .btns{justify-content:center}
/* contact topic */
.panel select{font:inherit;font-size:1rem;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);width:100%}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
/* sermon series */
.series-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;max-width:980px;margin-inline:auto;width:100%;list-style:none;padding:0}
.series-card{display:grid;gap:8px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:0 0 14px;overflow:hidden;cursor:pointer;font:inherit;color:inherit;width:100%}
.series-card:hover{border-color:var(--teal);box-shadow:0 6px 18px rgba(11,45,99,.12)}
.series-card:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.series-art{aspect-ratio:16/9;width:100%;object-fit:contain;background:var(--sky);display:block}
.series-card h3{font-family:var(--display);font-weight:600;font-size:1.08rem;color:var(--accent);margin:0 14px;line-height:1.3}
.series-card .meta{margin:0 14px;font-size:.9rem;color:var(--muted)}
.series-detail{display:grid;gap:16px;max-width:980px;margin-inline:auto;width:100%;text-align:left}
.series-top{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:22px;align-items:center}
.series-top img{width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--sky);border-radius:12px}
.series-top h2{font-family:var(--display);font-weight:600;color:var(--accent);font-size:1.6rem;margin:0 0 6px}
.series-top p{margin:0}
.backlink{justify-self:start;background:none;border:0;font:inherit;font-family:var(--display);font-weight:600;color:var(--accent);cursor:pointer;padding:6px 0}
@media (max-width:640px){.series-top{grid-template-columns:1fr}}
.sermons-h{font-family:var(--display);font-weight:600;color:var(--accent);text-align:center;font-size:1.5rem;margin-top:12px}
.latestlist .part{font-family:var(--display);font-size:.8rem;font-weight:600;color:var(--teal);letter-spacing:.04em}
/* giving */
.give-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;max-width:980px;margin-inline:auto;width:100%;text-align:left}

/* I'm new */
.newgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.nc{border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:12px;padding:22px;display:grid;gap:10px;align-content:start}
.nc h2{color:var(--accent);font-size:1.3rem}
.nc p{margin:0}
@media (max-width:760px){.newgrid{grid-template-columns:1fr}}
.faq{display:grid;gap:10px;max-width:820px;margin-inline:auto;width:100%}
.faq h2{color:var(--accent);text-align:center;margin-bottom:6px}
.faq details{border:1px solid var(--line);border-radius:10px;padding:14px 18px;background:var(--surface)}
.faq summary{font-family:var(--display);font-weight:600;cursor:pointer;color:var(--ink)}
.faq details p{margin:10px 0 0}
/* notices */
.notices{display:grid;gap:14px}
.notices h2{color:var(--accent)}
.nlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.notice{border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;gap:8px;align-content:start;background:var(--surface)}
.notice.imp{background:#FCEDEB;border-color:#F0C4BF}
.notice h3{color:var(--accent);font-size:1.1rem}
.notice.imp h3{color:#9A2A20}
.notice .when{font-family:var(--display);font-size:.85rem;font-weight:600;color:var(--brass)}
.notice p{margin:0}
.notice .pill{justify-self:start;font-family:var(--display);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:#9A2A20;color:#fff}
.notice .pill.ex{background:var(--ph);color:var(--ph-ink)}
.notice a.btn{justify-self:start;padding:8px 14px;font-size:.85rem}
/* podcast + latest sermons */
.podcard{background:var(--sky);border-color:transparent}
.podart{width:96px;height:96px;border-radius:12px;box-shadow:0 4px 14px rgba(11,45,99,.15)}
.latest{display:grid;gap:12px;max-width:980px;width:100%}
.latest h2{color:var(--accent)}
.latestlist{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.latestlist li{border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:grid;gap:6px}
.latestlist h3{font-size:1.05rem;color:var(--accent)}
.latestlist .meta{font-size:.95rem;color:var(--muted)}
.latestlist audio{width:100%}

/* ===== old-site look for inner pages ===== */
#pagebanner{position:relative;height:clamp(200px,30vw,340px);background-size:cover;background-position:center 45%;display:grid;place-items:center;overflow:hidden}
#pagebanner::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.12)}
#pagebanner .pb-logo{position:relative;z-index:1;height:clamp(160px,24vw,270px);max-width:85%;width:auto;object-fit:contain;filter:drop-shadow(0 0 2px rgba(255,255,255,.9)) drop-shadow(0 2px 14px rgba(255,255,255,.75))}
@media (hover:hover) and (pointer:fine) and (min-width:900px){#pagebanner{background-attachment:fixed}}
main .page:not([data-page="home"]){text-align:center}
main .page:not([data-page="home"])>.eyebrow,main .page:not([data-page="home"])>h1{justify-self:center}
main .page:not([data-page="home"])>h1,.team-head h1{font-family:"Quicksand",var(--display);font-weight:400;font-size:clamp(2.2rem,5vw,3.2rem);letter-spacing:.01em;color:var(--ink)}
main .page:not([data-page="home"]) .lede,main .page:not([data-page="home"])>p,main .page:not([data-page="home"]) .prose{margin-inline:auto}
main .page:not([data-page="home"]) .prose h2,.newgrid h2,.way h2,.timeline h3,.faq h2,.creed h3,.scard h2,.nc h2,.team-run h2,.address h2{font-family:var(--display);font-weight:600;letter-spacing:-.01em;color:var(--accent)}
main .page:not([data-page="home"]) .prose h2{font-size:1.4rem;margin-top:14px}
.timeline h3,.creed h3{font-size:1.15rem}
.way h2,.nc h2,.scard h2,.address h2{font-size:1.3rem}
/* keep structured lists, forms and cards readable */
main .page:not([data-page="home"]) :is(dl.facts,.ways,.newgrid,.timeline,.creed,.doclist,.files,form,.ticks,.steps,.faq details,.address,.sermon-cards,.latest){text-align:left}
main .page:not([data-page="home"]) :is(dl.facts,.doclist,.files,.panel,.prose,.latest){margin-inline:auto}
main .page:not([data-page="home"]) .btns{justify-content:center}
main .page:not([data-page="home"]) .ministry{text-align:left}
main .page:not([data-page="home"]) .ministry .lede{margin-inline:0}
main .page:not([data-page="home"]) .chips{justify-content:flex-start}
.ticks,.steps{display:inline-grid}
main .page:not([data-page="home"]) :is(.timeline,.creed,.ways,.newgrid,.sermon-cards){margin-inline:auto;width:100%}
.timeline{max-width:780px}

/* inner pages: photo runs up behind the menu, no logo top left */
body.inner header{position:absolute;left:0;right:0;top:env(safe-area-inset-top,0px);background:transparent;border-bottom:0;z-index:20}
body.inner::before{background:#0B2D63}
body.inner header .brand{visibility:hidden}
body.inner nav>ul>li>a,body.inner nav>ul>li>button{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.45)}
body.inner nav>ul>li>a:hover,body.inner nav>ul>li>button:hover,body.inner nav>ul>li>a.on{background:rgba(255,255,255,.16);color:#fff}
body.inner #menuBtn{background:#fff;color:#0B2D63}
body.inner nav.show{background:var(--surface);border-radius:12px;padding:8px}
body.inner nav.show>ul>li>a,body.inner nav.show>ul>li>button{color:var(--ink);text-shadow:none}
body.inner #pagebanner{height:clamp(320px,38vw,460px);padding-top:clamp(70px,9vw,120px);box-sizing:border-box}
body.inner #pagebanner::after{background:linear-gradient(180deg,rgba(6,22,50,.55) 0%,rgba(6,22,50,.12) 30%,rgba(255,255,255,0) 60%,var(--bg) 100%)}
body.inner main{padding-top:8px}
@media (max-width:620px){body.inner #pagebanner{height:280px;padding-top:80px}body.inner #pagebanner .pb-logo{height:150px}}

/* home: white bar behind logo and menu */
body.home header{position:sticky;top:env(safe-area-inset-top,0px);background:var(--surface);border-bottom:1px solid var(--line)}
body.home::before{background:var(--surface)}
body.home header .brand img{padding:2px;background:none;border-radius:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
body.home nav>ul>li>a,body.home nav>ul>li>button{color:var(--ink);text-shadow:none}
body.home nav>ul>li>a:hover,body.home nav>ul>li>button:hover,body.home nav>ul>li>a.on{background:var(--bg);color:var(--accent)}
body.home #menuBtn{background:var(--accent);color:var(--accent-ink)}
body.home .hero-in{padding-block:clamp(90px,12vw,150px) clamp(70px,9vw,120px)}

/* home: white bar fades softly into the photo */
body.home header{position:absolute;left:0;right:0;top:env(safe-area-inset-top,0px);border-bottom:0;padding-bottom:46px;
  background:linear-gradient(180deg,var(--surface) 0%,var(--surface) 58%,rgba(255,255,255,.82) 74%,rgba(255,255,255,.35) 88%,rgba(255,255,255,0) 100%)}
body.home .hero-in{padding-block:clamp(170px,20vw,230px) clamp(70px,9vw,120px)}
@media (max-width:620px){body.home header{padding-bottom:34px}body.home .hero-in{padding-block:130px 48px}}
.dl-row .btn{padding:8px 14px}
@media (max-width:1060px){nav.show{max-height:calc(100vh - 96px);max-height:calc(100dvh - 96px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}

/* home hero: solid white bar, logo-coloured text */
body.home header{position:sticky;top:env(safe-area-inset-top,0px);padding-bottom:0;background:var(--surface);border-bottom:1px solid var(--line)}
body.home .hero-in{padding-block:clamp(80px,10vw,130px) clamp(70px,9vw,120px)}
#bighero{color:var(--accent)}
#bighero::after{background:radial-gradient(ellipse 50% 45% at 50% 52%,rgba(255,255,255,.42) 0%,rgba(255,255,255,.2) 60%,rgba(255,255,255,0) 100%)}
.w1{color:#0F6E5C;opacity:1;text-shadow:0 1px 10px rgba(255,255,255,.9)}
.w2{color:#0B2D63;text-shadow:0 2px 14px rgba(255,255,255,.95),0 0 2px rgba(255,255,255,.8)}
.w3{color:#0B2D63;font-weight:600;font-size:clamp(1.3rem,2.6vw,1.85rem);text-shadow:0 1px 10px rgba(255,255,255,.95)}
#bighero .btn.light{background:#0B2D63;color:#fff;border:1.5px solid #0B2D63}
#bighero .btn.ghost{background:rgba(255,255,255,.85);color:#0B2D63;border:1.5px solid #0B2D63}
/* bigger menu text */
nav a,nav button{font-size:.98rem}
nav .sub a{font-size:1.02rem;padding:9px 12px}
nav .sub{min-width:230px}
@media (max-width:620px){body.home header{padding-bottom:0}body.home .hero-in{padding-block:64px 48px}.w3{font-size:1.2rem}}
@media (max-width:1060px){nav a,nav button{font-size:1.05rem}nav .sub a{font-size:1rem}}

.map{max-width:820px;aspect-ratio:16/9;border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.map iframe{width:100%;height:100%;border:0;display:block}
