/*
Theme Name: Bethany
Theme URI: https://bethanynazchurch.com
Author: Bethany Church of the Nazarene
Description: Full production WordPress theme for Bethany Church of the Nazarene (Block Editor friendly). Includes livestream embeds, sermon pages, volunteer & membership forms, leadership cards, and a moderated prayer wall workflow.
Version: 2.0.0
License: GPLv2 or later
Text Domain: bethany
*/

:root{
  --bethany-blue:#0b3d91;
  --bethany-red:#b11226;
  --bethany-navy:#1e3a5f;
  --bethany-dark:#0f2a44;
  --bethany-bg:#f8f9fc;
}

*{box-sizing:border-box;}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:#1f2937;
  background:#ffffff;
}
a{color:var(--bethany-blue);}
a:hover{color:var(--bethany-red);}

.bethany-topbar{
  background:var(--bethany-navy);
  color:#fff;
  padding:10px 12px;
  text-align:center;
  font-size:14px;
}
.bethany-topbar a{color:#fff;text-decoration:underline;}

.bethany-header{
  position:sticky;
  top:0;
  z-index:999;
  background:#fff;
  text-align:center;
  padding:18px 0 10px;
  box-shadow:0 2px 10px rgba(0,0,0,.08);
}
.bethany-logo img{
  max-width:320px;
  height:auto;
}
.bethany-nav{margin-top:12px; position:relative;}
.bethany-menu{
  list-style:none;
  display:flex;
  justify-content:center;
  gap:22px;
  padding:0;
  margin:0;
  flex-wrap:wrap;
}
.bethany-menu a{
  text-decoration:none;
  font-weight:650;
  color:var(--bethany-blue);
  padding:8px 10px;
  border-radius:10px;
}
.bethany-menu a:hover{background:rgba(11,61,145,.08); color:var(--bethany-red);}

.bethany-mobile-toggle{
  display:none;
  background:var(--bethany-blue);
  color:#fff;
  border:none;
  padding:10px 14px;
  border-radius:10px;
  font-size:18px;
  cursor:pointer;
  margin-top:10px;
}

@media (max-width: 820px){
  .bethany-menu{display:none; flex-direction:column; gap:6px; padding:12px 0;}
  body.menu-open .bethany-menu{display:flex;}
  .bethany-mobile-toggle{display:inline-block;}
}

.bethany-container{
  max-width:1100px;
  margin:0 auto;
  padding:28px 18px 70px;
}

.bethany-card{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:18px;
  box-shadow:0 6px 20px rgba(0,0,0,.05);
}
.bethany-grid{
  display:grid;
  grid-template-columns: repeat(12, 1fr);
  gap:18px;
}
.col-6{grid-column: span 6;}
.col-4{grid-column: span 4;}
.col-12{grid-column: span 12;}
@media (max-width: 900px){
  .col-6,.col-4{grid-column: span 12;}
}

.bethany-btn{
  display:inline-block;
  background:var(--bethany-blue);
  color:#fff !important;
  padding:12px 18px;
  border-radius:12px;
  text-decoration:none;
  font-weight:700;
  border:0;
  cursor:pointer;
}
.bethany-btn:hover{background:#0a3378;}
.bethany-btn.red{background:var(--bethany-red);}
.bethany-btn.red:hover{background:#8e0f1f;}

.bethany-hero{
  background: linear-gradient(90deg, var(--bethany-navy), var(--bethany-red));
  color:#fff;
  padding:54px 18px;
  text-align:center;
}
.bethany-hero h1{margin:0 0 10px; font-size:36px;}
.bethany-hero p{margin:0; font-size:18px; opacity:.95;}

.anniversary-banner{
  background: linear-gradient(90deg, var(--bethany-navy), var(--bethany-red));
  color:#fff;
  text-align:center;
  padding:16px 10px;
  font-size:18px;
  font-weight:800;
}
.anniversary-banner span{display:block; font-weight:650; font-size:20px; margin-top:6px;}
@media (max-width: 768px){
  .bethany-hero h1{font-size:28px;}
  .anniversary-banner{font-size:15px;}
  .anniversary-banner span{font-size:16px;}
}

.bethany-section-title{
  font-size:26px;
  margin:0 0 12px;
}
.bethany-muted{color:#6b7280;}
.bethany-divider{height:1px;background:#e5e7eb;margin:22px 0;}
.bethany-footer{
  background:var(--bethany-dark);
  color:#fff;
  padding:40px 18px;
  text-align:center;
}
.bethany-footer a{color:#fff;text-decoration:underline;}

.bethany-embed{
  width:100%;
  border:0;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 6px 20px rgba(0,0,0,.08);
}
.bethany-form input, .bethany-form textarea, .bethany-form select{
  width:100%;
  padding:12px 12px;
  border-radius:12px;
  border:1px solid #d1d5db;
}
.bethany-form label{font-weight:650; display:block; margin:10px 0 6px;}
.bethany-form small{display:block; color:#6b7280; margin-top:6px;}
.notice-success{
  background:#ecfdf5;
  border:1px solid #a7f3d0;
  padding:12px 14px;
  border-radius:12px;
  margin:14px 0;
}
.notice-error{
  background:#fef2f2;
  border:1px solid #fecaca;
  padding:12px 14px;
  border-radius:12px;
  margin:14px 0;
}
