/* Bridges Grove AME Zion Theme Styles */
:root{
  --bg-maroon:#7a0f1c;
  --bg-green:#1f5632;
  --bg-gold:#d6a13a;
  --bg-ink:#121416;
  --bg-muted:#5a616a;
  --bg-border:rgba(18,20,22,.10);
  --bg-card:rgba(255,255,255,.92);
  --bg-shadow:0 18px 35px rgba(0,0,0,.12);
  --bg-radius:18px;
  --bg-hero-overlay:.45;
  --bg-max:1180px;
  --bg-font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  --bg-serif: ui-serif, Georgia, "Times New Roman", Times, serif;
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:var(--bg-font);
  color:var(--bg-ink);
  background: radial-gradient(1200px 600px at 10% 10%, rgba(214,161,58,.10), transparent 60%),
              radial-gradient(900px 700px at 90% 0%, rgba(31,86,50,.10), transparent 55%),
              #ffffff;
}

a{color:inherit}
img{max-width:100%; height:auto}

/* Header */
.bg-header{
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,.86);
  backdrop-filter:saturate(160%) blur(14px);
  border-bottom:1px solid var(--bg-border);
}
.bg-header-inner{
  max-width:var(--bg-max);
  margin:0 auto;
  padding:14px 18px;
  display:flex;
  align-items:center;
  gap:18px;
}
.bg-brand{flex:0 0 auto; min-width:240px}
.bg-brand-link{display:flex; align-items:center; gap:12px; text-decoration:none}
.custom-logo{max-height:56px; width:auto}
.bg-brand-text .bg-brand-top{font-weight:800; letter-spacing:.5px}
.bg-brand-text .bg-brand-sub{font-size:12px; color:var(--bg-muted); margin-top:2px}

.bg-nav-wrap{flex:1 1 auto}
.bg-nav{
  list-style:none;
  display:flex;
  gap:22px;
  margin:0;
  padding:0;
  align-items:center;
  justify-content:center;
}
.bg-nav a{
  text-decoration:none;
  font-weight:600;
  color:#1c1f23;
  padding:10px 4px;
  border-radius:10px;
}
.bg-nav a:hover{background:rgba(0,0,0,.04)}

.bg-header-cta{display:flex; align-items:center; gap:10px}
.bg-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:42px;
  padding:0 16px;
  border-radius:999px;
  font-weight:700;
  text-decoration:none;
  border:1px solid transparent;
  box-shadow:none;
}
.bg-btn-outline{
  background:rgba(255,255,255,.75);
  border-color:rgba(31,86,50,.35);
  color:var(--bg-green);
}
.bg-btn-outline:hover{background:rgba(31,86,50,.06)}
.bg-btn-solid{
  background:var(--bg-maroon);
  color:#fff;
  box-shadow:0 10px 18px rgba(122,15,28,.18);
}
.bg-btn-solid:hover{filter:brightness(0.96)}

.bg-mobile-toggle{
  display:none;
  background:transparent;
  border:1px solid rgba(0,0,0,.12);
  border-radius:12px;
  width:44px; height:44px;
  padding:10px;
}
.bg-mobile-toggle span{display:block; height:2px; background:#1c1f23; margin:6px 0; border-radius:2px}

.bg-mobile-panel{
  border-top:1px solid var(--bg-border);
  padding:10px 18px 18px;
  background:rgba(255,255,255,.92);
}
.bg-mobile-panel .bg-nav{
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:10px;
}
.bg-mobile-cta{display:flex; gap:10px; margin-top:10px; flex-wrap:wrap}

/* Hero */
.bg-hero{
  position:relative;
  background:
    linear-gradient(180deg, rgba(0,0,0,var(--bg-hero-overlay)), rgba(0,0,0,0.05)),
    radial-gradient(1100px 700px at 15% 20%, rgba(31,86,50,.18), transparent 60%),
    radial-gradient(1000px 700px at 85% 10%, rgba(214,161,58,.18), transparent 60%),
    url('../img/hero-fallback.jpg');
  background-size:cover;
  background-position:center;
  min-height:520px;
  display:flex;
  align-items:stretch;
}
.bg-hero-overlay{
  position:absolute; inset:0;
  background:
    radial-gradient(700px 500px at 18% 45%, rgba(0,0,0,.25), transparent 60%),
    radial-gradient(900px 520px at 85% 40%, rgba(0,0,0,.10), transparent 55%);
  pointer-events:none;
}
.bg-hero-inner{
  position:relative;
  width:100%;
  max-width:var(--bg-max);
  margin:0 auto;
  padding:92px 18px 70px;
  color:#fff;
}

/* Gutenberg content defaults in hero */
.bg-hero-inner h1,
.bg-hero-inner h2{
  font-family:var(--bg-serif);
  letter-spacing:.2px;
  line-height:1.05;
  margin:0 0 12px;
}
.bg-hero-inner h1{font-size:56px; font-weight:500}
.bg-hero-inner p{font-size:18px; max-width:760px; color:rgba(255,255,255,.88)}

/* Page section */
.bg-site{min-height:40vh}
.bg-page{
  padding:42px 18px 70px;
}
.bg-page-inner{
  max-width:var(--bg-max);
  margin:0 auto;
}
.bg-page-header{margin-bottom:18px}
.bg-page-title{margin:0; font-size:36px; letter-spacing:-.3px}
.bg-post-meta{color:var(--bg-muted); margin-top:6px}
.bg-page-content{
  background:var(--bg-card);
  border:1px solid var(--bg-border);
  border-radius:var(--bg-radius);
  padding:24px;
  box-shadow:var(--bg-shadow);
}
.bg-page-content p{line-height:1.65}

/* Card utilities */
.bg-card{
  background:var(--bg-card);
  border:1px solid var(--bg-border);
  border-radius:var(--bg-radius);
  box-shadow:var(--bg-shadow);
}

/* Post grid */
.bg-post-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.bg-post-card{overflow:hidden}
.bg-post-card-link{display:block; padding:18px; text-decoration:none}
.bg-post-card-title{margin:0 0 6px; font-size:18px}
.bg-post-card-meta{font-size:12px; color:var(--bg-muted)}
.bg-post-card-excerpt{margin-top:10px; color:#2a2f36}
.bg-pagination{margin-top:18px}

/* Footer */
.bg-footer{
  position:relative;
  padding:44px 18px 36px;
  background:
    radial-gradient(1100px 520px at 15% 0%, rgba(31,86,50,.10), transparent 60%),
    radial-gradient(900px 520px at 85% 10%, rgba(214,161,58,.10), transparent 60%),
    #fff;
  border-top:1px solid var(--bg-border);
}
.bg-footer::before,
.bg-footer::after{
  content:'';
  position:absolute;
  width:220px; height:220px;
  background-image:url('../img/leaf.svg');
  background-size:contain;
  background-repeat:no-repeat;
  opacity:.22;
  pointer-events:none;
}
.bg-footer::before{left:18px; bottom:10px}
.bg-footer::after{right:18px; top:10px; transform:scaleX(-1)}
.bg-footer-inner{
  max-width:var(--bg-max);
  margin:0 auto;
  display:flex;
  gap:22px;
  align-items:flex-end;
  justify-content:space-between;
}
.bg-footer-badge{display:flex; gap:14px; align-items:center}
.bg-footer-icon{
  width:72px; height:72px;
  border-radius:999px;
  background:rgba(122,15,28,.08);
  border:5px solid rgba(122,15,28,.12);
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.bg-footer-icon img{width:100%; height:100%; object-fit:cover}
.bg-footer-icon-fallback{
  width:34px; height:34px; border-radius:10px;
  background:linear-gradient(135deg, rgba(31,86,50,.25), rgba(214,161,58,.25));
}
.bg-footer-title{font-weight:900; font-size:18px}
.bg-footer-sub{color:var(--bg-muted); margin-top:2px}
.bg-footer-credit{color:rgba(31,86,50,.9); margin-top:10px}

.bg-footer-right{margin-left:auto; text-align:right}
.bg-footer-links{list-style:none; padding:0; margin:0 0 10px; display:flex; gap:14px; justify-content:flex-end; flex-wrap:wrap}
.bg-footer-links a{text-decoration:none; color:#1c1f23; font-weight:650}
.bg-footer-links a:hover{text-decoration:underline}
.bg-footer-copy{color:var(--bg-muted)}

/* Responsive */
@media (max-width: 980px){
  .bg-nav{display:none}
  .bg-mobile-toggle{display:inline-flex}
  .bg-brand{min-width:auto}
  .bg-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 640px){
  .bg-header-inner{justify-content:space-between}
  .bg-header-cta > a{display:none}
  .bg-hero-inner{padding:74px 18px 56px}
  .bg-hero-inner h1{font-size:42px}
  .bg-post-grid{grid-template-columns:1fr}
  .bg-footer-inner{flex-direction:column; align-items:flex-start}
  .bg-footer-right{text-align:left; margin-left:0}
  .bg-footer-links{justify-content:flex-start}
}


/* Landing cards (block pattern) */
.bg-cards{margin-top:14px}
.bg-cards .bg-card{
  padding:22px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 45px rgba(0,0,0,.22);
}
.bg-card-green{background:linear-gradient(135deg, rgba(31,86,50,.95), rgba(31,86,50,.86)); color:#fff}
.bg-card-maroon{background:linear-gradient(135deg, rgba(122,15,28,.96), rgba(122,15,28,.85)); color:#fff}
.bg-card-gold{background:linear-gradient(135deg, rgba(214,161,58,.96), rgba(214,161,58,.86)); color:#fff}
.bg-cards h3{margin-top:0; margin-bottom:10px}
.bg-cards p{margin:0 0 14px; color:rgba(255,255,255,.9)}
.bg-cards .wp-block-button__link{
  border-radius:999px !important;
  padding:10px 14px !important;
  font-weight:800 !important;
  border:1px solid rgba(255,255,255,.55) !important;
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
}
.bg-cards .wp-block-button__link:hover{background:rgba(255,255,255,.18) !important}


/* -------------------------------------------------
   Landing (one-page) elements
-------------------------------------------------- */

/* Decorative branches removed (user requested).
   If you want corner branch art later, add it as background images on .bg-hero and adjust positioning. */
.bg-hero::before,
.bg-hero::after{
  content:none !important;
  display:none !important;
}

/* 3-card row */
.bg-feature{
  background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,255,255,1));
  margin-top:-54px;
  padding: 0 18px 34px;
}
.bg-feature-inner{
  max-width: var(--bg-max);
  margin: 0 auto;
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
@media (max-width: 980px){
  .bg-feature-inner{ grid-template-columns: 1fr; }
  .bg-feature{ margin-top:-28px; }
}

.bg-card{
  display:flex;
  align-items:center;
  gap:14px;
  padding: 22px 22px;
  border-radius: 18px;
  color:#fff;
  text-decoration:none;
  box-shadow: 0 18px 44px rgba(0,0,0,.14);
  position:relative;
  overflow:hidden;
}
.bg-card::before{
  content:'';
  position:absolute; inset:0;
  background: radial-gradient(520px 200px at 20% 0%, rgba(255,255,255,.16), transparent 60%);
  opacity: .8;
  pointer-events:none;
}
.bg-card-icon{
  width:44px; height:44px;
  border-radius: 14px;
  background: rgba(255,255,255,.14);
  display:flex; align-items:center; justify-content:center;
  font-size: 20px;
  position:relative;
}
.bg-card-body{ position:relative; flex:1; min-width:0; }
.bg-card-title{ font-size:22px; font-weight:700; margin:0 0 6px; }
.bg-card-text{ font-size:14px; opacity:.9; }
.bg-card-arrow{
  font-size: 28px;
  opacity: .92;
  position:relative;
}

.bg-card-green{ background: linear-gradient(135deg, #1f5c39, #184b2f); }
.bg-card-maroon{ background: linear-gradient(135deg, #7a0f1c, #5a0b14); }
.bg-card-gold{ background: linear-gradient(135deg, #d9a43a, #c58a1a); }

.bg-section{
  background: #fff;
  padding: 54px 18px;
  border-top: 1px solid rgba(10,10,10,.06);
}
.bg-section:nth-of-type(even){ background: #fbfbfb; }

.bg-section-inner{
  max-width: var(--bg-max);
  margin: 0 auto;
}
.bg-section-header h2{
  font-size: 30px;
  margin: 0 0 12px;
  color: #121212;
}
.bg-section-content{
  color: #2b2b2b;
  font-size: 16px;
  line-height: 1.7;
}
.bg-section-edit{ margin-top: 12px; }
.bg-link{ color: var(--bg-green); font-weight: 700; text-decoration:none; }
.bg-muted{ opacity:.78; }

/* ---------- Inner Page Hero ---------- */
.bg-page-hero{
  position:relative;
  min-height: 260px;
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
}
.bg-page-hero__overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.45));
}
.bg-page-hero__inner{
  position:relative;
  padding: 34px 0 28px;
  color:#fff;
}
.bg-page-hero__title{
  margin:0;
  font-size: clamp(28px, 3.2vw, 44px);
  letter-spacing: -0.02em;
  text-shadow: 0 10px 20px rgba(0,0,0,.25);
}
.bg-page-hero__subtitle{
  margin:10px 0 0;
  max-width: 760px;
  opacity: .92;
}

/* Content card feel */
.bg-content > .wp-block-group,
.bg-content > .wp-block-columns{
  margin-bottom: 22px;
}
.bg-image-card img{
  border-radius: 18px;
  box-shadow: 0 18px 45px rgba(0,0,0,.14);
}

/* -------------------------------------------------
   Modern section components (Millennial-friendly)
-------------------------------------------------- */
.bg-section--pad{ padding: 74px 0; }
.bg-slab{
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 22px 60px rgba(13,25,18,.10);
  border-radius: 26px;
  padding: 28px;
}
.bg-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(31,86,50,.08);
  border: 1px solid rgba(31,86,50,.18);
  font-weight: 600;
  font-size: 13px;
}
.bg-split{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 26px;
}
@media (max-width: 900px){
  .bg-split{ grid-template-columns: 1fr; }
}
.bg-cardgrid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 14px;
}
.bg-cardgrid > .wp-block-group{
  grid-column: span 4;
}
@media (max-width: 900px){
  .bg-cardgrid > .wp-block-group{ grid-column: span 6; }
}
@media (max-width: 640px){
  .bg-cardgrid > .wp-block-group{ grid-column: span 12; }
}
.bg-mini-card{
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(17,40,26,.10);
  border-radius: 20px;
  padding: 18px;
  box-shadow: 0 16px 40px rgba(0,0,0,.08);
}
.bg-date-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border-radius: 16px;
  padding: 10px 12px;
  background: rgba(127, 29, 29, .08);
  border: 1px solid rgba(127, 29, 29, .16);
  font-weight: 700;
}
.bg-avatar{
  width: 84px;
  height: 84px;
  border-radius: 999px;
  border: 6px solid rgba(255,255,255,.85);
  box-shadow: 0 18px 40px rgba(0,0,0,.12);
  object-fit: cover;
}
.bg-btn-row{
  display:flex;
  gap:12px;
  flex-wrap: wrap;
  margin-top: 14px;
}
.bg-note{
  color: rgba(0,0,0,.62);
  font-size: 14px;
}
