:root{
  --green:#4e9b2e;
  --green-dark:#256c1f;
  --green-soft:#edf8e8;
  --blue:#0076d6;
  --blue-dark:#054d91;
  --yellow:#f3e51b;
  --yellow-soft:#fffbd1;
  --black:#111827;
  --muted:#667085;
  --line:#e6e9ef;
  --white:#ffffff;
  --bg:#f7faf8;
  --shadow:0 24px 70px rgba(17,24,39,.12);
  --radius:28px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--black)}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}

.site-header{position:fixed;top:0;left:0;right:0;z-index:50;height:82px;padding:14px clamp(18px,5vw,72px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(230,233,239,.85)}
.brand img{height:54px;width:auto}.main-nav{display:flex;align-items:center;gap:26px;font-weight:800;font-size:14px}.main-nav a{color:#1f2937}.main-nav a:hover{color:var(--green)}.nav-cta{background:var(--green);color:#fff!important;padding:12px 18px;border-radius:999px;box-shadow:0 10px 24px rgba(78,155,46,.25)}
.menu-toggle{display:none;background:none;border:0;gap:5px;flex-direction:column}.menu-toggle span{width:26px;height:3px;background:var(--green-dark);border-radius:5px}

.hero{min-height:760px;position:relative;display:grid;align-items:center;padding:150px clamp(20px,6vw,90px) 70px;overflow:hidden;color:#fff;background:linear-gradient(135deg,rgba(37,108,31,.92),rgba(0,118,214,.86)), radial-gradient(circle at 85% 30%, rgba(243,229,27,.8), transparent 28%)}
.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.38),rgba(0,0,0,.08)), url('../img/logo-obpc.png') right 8% center/48% auto no-repeat;opacity:.22;filter:saturate(1.1)}
.hero-content{position:relative;max-width:760px}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--green-dark);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.hero .eyebrow,.prayer-section .eyebrow{color:var(--yellow)}
h1{font-size:clamp(42px,7vw,84px);line-height:.96;margin:0 0 24px;font-weight:900;letter-spacing:-.06em}h2{font-size:clamp(32px,4vw,54px);line-height:1.02;margin:0 0 18px;font-weight:900;letter-spacing:-.04em}h3{margin:0 0 10px;font-size:22px}.hero p{max-width:640px;font-size:20px;line-height:1.7;color:rgba(255,255,255,.88)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;font-weight:900;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--yellow);color:#172006;box-shadow:0 14px 34px rgba(243,229,27,.25)}.btn-light{background:#fff;color:var(--green-dark)}
.hero-panel{position:absolute;right:clamp(20px,6vw,90px);bottom:60px;width:min(420px,calc(100% - 40px));padding:24px;border-radius:var(--radius);background:rgba(255,255,255,.95);color:var(--black);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.7)}.hero-panel strong{display:block;font-size:20px;margin-bottom:8px}.hero-panel span{display:block;color:var(--muted);line-height:1.5}.hero-panel a{display:inline-block;margin-top:16px;color:var(--blue);font-weight:900}

.quick-links{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:0 clamp(20px,6vw,90px);margin-top:-54px;position:relative;z-index:5}.quick-links a{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 18px 50px rgba(17,24,39,.08);transition:.2s}.quick-links a:hover{transform:translateY(-6px);border-color:rgba(78,155,46,.3)}.quick-links span{font-size:28px}.quick-links strong{display:block;margin:12px 0 5px;font-size:18px}.quick-links small{color:var(--muted)}

.section{padding:95px clamp(20px,6vw,90px)}.two-columns{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}.section-title p,.story-card p,.sbc-card p,.agenda-content p,.prayer-box p{color:var(--muted);font-size:17px;line-height:1.8}.story-card,.sbc-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:36px;box-shadow:0 20px 60px rgba(17,24,39,.06)}
.sbc-section{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;background:linear-gradient(135deg,var(--green-soft),#fff)}.muted{background:var(--yellow-soft);padding:16px;border-radius:18px;border-left:5px solid var(--yellow)}.numbers{display:grid;gap:18px}.numbers article{background:#fff;border-radius:24px;padding:30px;border:1px solid var(--line);box-shadow:0 16px 40px rgba(17,24,39,.06)}.numbers strong{display:block;color:var(--green);font-size:46px;font-weight:900}.numbers span{color:var(--muted);font-weight:700}
.center{text-align:center;max-width:820px;margin:0 auto 42px}.center .eyebrow{justify-content:center}.service-section{background:#fff}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{border-radius:var(--radius);padding:32px;background:linear-gradient(180deg,#fff,var(--green-soft));border:1px solid var(--line)}.service-card span{display:inline-block;color:var(--blue);font-weight:900;margin-bottom:14px}
.agenda-section{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff}.agenda-section .eyebrow{color:var(--yellow)}.agenda-content p{color:rgba(255,255,255,.82)}.event-list{display:grid;gap:16px}.event-list article{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:24px;padding:24px}.event-list strong{display:block;font-size:20px;margin-bottom:8px}.event-list span{color:rgba(255,255,255,.75)}
.filter-bar{max-width:720px;margin:0 auto 28px}.filter-bar input{width:100%;height:58px;border-radius:999px;border:1px solid var(--line);padding:0 24px;font:inherit;font-weight:700;outline:none;box-shadow:0 15px 40px rgba(17,24,39,.06)}.filter-bar input:focus{border-color:var(--green);box-shadow:0 0 0 5px rgba(78,155,46,.12)}
.church-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.church-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;display:flex;flex-direction:column;min-height:310px;transition:.2s;box-shadow:0 16px 45px rgba(17,24,39,.05)}.church-card:hover{transform:translateY(-5px);border-color:rgba(0,118,214,.25)}.badge{align-self:flex-start;background:var(--green-soft);color:var(--green-dark);font-weight:900;font-size:12px;border-radius:999px;padding:8px 12px;margin-bottom:14px}.church-card.pending .badge{background:var(--yellow-soft);color:#7a6700}.address,.history{color:var(--muted);line-height:1.6}.actions{margin-top:auto;padding-top:18px}.actions a{display:inline-flex;color:var(--blue);font-weight:900}.no-results{grid-column:1/-1;text-align:center;color:var(--muted);padding:40px;background:#fff;border-radius:24px}
.prayer-section{background:linear-gradient(135deg,rgba(37,108,31,.94),rgba(78,155,46,.88)), radial-gradient(circle at 80% 20%, var(--yellow), transparent 24%);color:#fff}.prayer-box{max-width:760px}.prayer-box p{color:rgba(255,255,255,.85)}
.footer{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;padding:52px clamp(20px,6vw,90px);background:#0e1911;color:#fff}.footer img{height:70px;width:auto;background:#fff;border-radius:16px;padding:8px;margin-bottom:16px}.footer p,.footer small{color:rgba(255,255,255,.72);line-height:1.7}.footer h3{color:var(--yellow)}
.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:980px){.main-nav{position:fixed;top:82px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;background:#fff;padding:20px;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.menu-toggle{display:flex}.hero{min-height:760px}.hero-bg{background-size:80%;background-position:right -20% center}.hero-panel{position:relative;right:auto;bottom:auto;margin-top:34px}.quick-links,.two-columns,.sbc-section,.agenda-section,.footer{grid-template-columns:1fr}.service-grid,.church-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.site-header{height:74px}.brand img{height:46px}.main-nav{top:74px}.hero{padding:120px 20px 45px;min-height:auto}.hero p{font-size:17px}.quick-links{grid-template-columns:1fr;margin-top:0;padding-top:20px}.section{padding:70px 20px}.service-grid,.church-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.footer{padding:40px 20px}}
