
:root{--burg:#7A1F2B;--gold:#C6A049;--ink:#111;--wrap:1100px}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink)}
a{color:var(--burg);text-decoration:none}
a:hover{text-decoration:underline}
.wrapper{max-width:var(--wrap);margin:0 auto;padding:0 16px}
.site-header{border-bottom:1px solid #eee}
.header-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px}
.header-left{display:flex;align-items:center;gap:12px}
.header-left img{height:64px}
.header-times{font-size:.95rem;opacity:.85}
nav.primary{display:flex;gap:14px;flex-wrap:wrap;padding:10px 16px}
.hero{background:#faf6f7;padding:24px 0;margin:0 0 10px;border-bottom:1px solid #f0e6e8}
h1,h2{color:var(--burg)}
.welcome-intro{margin:20px 0}
.visitor-info,.faq{margin:20px 0}
.ann{margin:24px 0}
.ann .ann-card{border:1px solid #f0e6e8;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.06);padding:14px;margin:0 0 12px}
.ann .ann-card img{max-width:520px;width:100%;height:auto;display:block;margin:0 auto}
/* Poem */
@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@400;700&display=swap');
.poem{font-family:'Dancing Script',cursive;font-size:1.6em;line-height:1.5;text-align:center;background:linear-gradient(135deg,rgba(122,31,43,.07),rgba(198,160,73,.07));padding:24px;border-radius:12px;margin:20px auto;max-width:800px}
.poem h1{color:var(--burg)}
/* Pastors */
.pastoral section{margin:18px 0}
.pastor-photo img{max-width:320px;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}
/* Footer links-only */
.site-footer{background:var(--burg);color:#fff;padding:18px 16px;margin-top:28px}
.footer-wrap{max-width:var(--wrap);margin:0 auto}
.footer-links{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}
.site-footer a{color:var(--gold)}
.footer-bottom{text-align:center;opacity:.8;margin-top:8px}
@media (max-width:800px){.header-left img{height:56px}nav.primary{gap:10px}}

.rotate-left{transform:rotate(-90deg); transform-origin:center; display:inline-block}

/* Dropdown menu for Ministries */
.dropdown{position:relative;display:inline-block}
.dropbtn{display:inline-block;padding:0 0}
.dropdown-content{display:none;position:absolute;background:#fff;border:1px solid #eee;box-shadow:0 4px 14px rgba(0,0,0,.08);min-width:220px;z-index:1000}
.dropdown-content a{display:block;padding:8px 12px;color:#111}
.dropdown-content a:hover{background:#faf6f7}
.dropdown:hover .dropdown-content{display:block}
@media (max-width:800px){
  .dropdown-content{position:static;border:none;box-shadow:none}
}

/* Give page cards */
.give-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:16px 0}
.give-card{border:1px solid #f0e6e8;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.05);padding:16px}
.give-card h3{margin-top:0;color:var(--burg)}
.give-card p{margin:8px 0 0}
.give-btn{display:inline-block;margin-top:10px;padding:10px 14px;border-radius:8px;background:var(--gold);color:#111;text-decoration:none;font-weight:600}
.give-btn:hover{text-decoration:none;filter:brightness(.95)}

.hero-logo{max-width:420px;width:80%;height:auto}

/* Mobile-friendly dropdown open on focus */
.dropdown:focus-within .dropdown-content{display:block}

/* Life at Olivet gallery */
.life-section{margin:24px 0}
.life-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.life-grid img{width:100%;height:220px;object-fit:cover;border-radius:10px;box-shadow:0 2px 10px rgba(0,0,0,.06)}

/* Announcement cards */
.ann-list{display:block;margin:14px 0}
.ann-card{border:1px solid #f0e6e8;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.06);padding:14px;margin:0 0 12px}
.ann-date{font-weight:700;color:var(--burg);margin-bottom:6px}
.ann-title{font-size:1.1rem;font-weight:700;margin:0 0 6px}
.ann-details{margin:0}
.hide{display:none!important}


h2.poem-title {
  font-family: 'Dancing Script', cursive;
  color: #800020; /* burgundy */
  font-size: 2.2em;
  text-align: center;
  margin-bottom: 20px;
}
.poem-attrib {
  font-family: 'Dancing Script', cursive;
  color: #800020; /* burgundy */
  font-size: 1.5em;
  text-align: right;
  margin-top: 20px;
}
.poem-body {
  font-size: 1.1em;
  line-height: 1.6;
}

/* Sweet Olivet Pledge card */
.pledge-card{
  border:2px solid var(--burg);
  background:#faf6f7;
  border-radius:12px;
  padding:16px;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  margin-top:18px
}
.pledge-card h2{
  margin:0 0 8px;
  color:var(--burg);
}
.pledge-card p{margin:8px 0}


/* Responsive Pantry Flyers (polished) */
.pantry-flyers{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  justify-content:center;
  margin:12px 0 6px;
}
.pantry-flyers a{
  display:block;
  flex:1 1 280px;      /* target width; grows/shrinks as space allows */
  max-width:380px;     /* don't get too wide on large screens */
}
.pantry-flyers img{
  width:100%;
  height:auto;
  border-radius:10px;  /* polished rounded corners */
  box-shadow:0 2px 12px rgba(0,0,0,.12);
  display:block;
}
@media (max-width:520px){
  .pantry-flyers a{ flex-basis: 100%; max-width: 520px; }
}



/* Service Access Info (Home) */
.service-access-card{
  background:#fff;
  border:1px solid #eee;
  border-radius:12px;
  box-shadow:0 8px 30px rgba(0,0,0,.06);
  padding:18px 18px 14px;
  margin:18px auto 8px;
  max-width:900px;
}
.service-access-title{
  color:#800020; /* OBC burgundy */
  margin:0 0 10px 0;
  display:inline-block;
  border-bottom:3px solid #d4af37; /* gold underline */
  padding-bottom:4px;
}
.service-access-list{
  list-style:none;
  padding:0;
  margin:0;
  line-height:1.6em;
}
.service-access-list li{ margin:6px 0; }
.service-access-list .icon{ margin-right:6px; }

/* Pantry announcements spacing to match church announcements */
.pantry-events li{
  margin-bottom: 18px;
  line-height: 1.5em;
}



/* Pantry info (logo + details) */
.pantry-info{margin: 10px auto 14px; max-width: 1100px; padding: 0 16px;}
.pantry-info-card{
  display:flex; gap:16px; align-items:center;
  background:#fff; border:1px solid #eee; border-radius:12px; 
  box-shadow:0 8px 30px rgba(0,0,0,.06); padding:14px 16px;
}
.pantry-logo{width:120px; height:auto; border-radius:8px}
.pantry-info-text h2{margin:4px 0 8px; color:#800020}
.pantry-info-text ul{margin:0; padding-left:18px; line-height:1.5em}
@media (max-width:640px){
  .pantry-info-card{flex-direction:column; align-items:flex-start}
  .pantry-logo{width:140px}
}



.pantry-logo {display:block; margin:0 auto 10px; max-width:180px; height:auto;}

