/* Original stylesheet — copied verbatim from the source HTML <style> blocks. */
body{margin:0;background:#FBF8F3}
a{color:#0B2463}a:hover{color:#1D3FA0}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}
.photo{display:flex;align-items:flex-end;padding:16px;box-sizing:border-box;border-radius:20px;background:#DCE4F3;color:#1E3A7A;font-size:14px;font-weight:500;line-height:1.4}
@media (max-width:760px){.wrap{padding:0 18px}.hero-h1{font-size:40px !important}.big{font-size:30px !important}.navlinks{display:none !important}}

html{scroll-behavior:smooth}img{max-width:100%}

/* WordPress additions (do not affect the original layout). */
.bnc-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.bnc-form-msg{flex-basis:100%;margin:0;font-size:14px;line-height:1.5;color:#D4DDF2}
.bnc-form-msg.is-error{color:#FDBA8C}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ------------------------------------------------------------------
   Responsive enhancements. Desktop (981px and up) is unchanged.
   Inline styles from the original markup need !important to override.
   ------------------------------------------------------------------ */

/* Bigger tap areas without moving anything visually. */
summary{padding:12px 0;margin:-12px 0}
.navlinks a{padding:12px 0;margin:-12px 0}
.bnc-tap{display:inline-block;padding:12px 0;margin:-12px 0}
.bnc-menu-toggle{display:none}
.bnc-news-copy{min-width:0}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #C2410C;outline-offset:3px;border-radius:6px}

/* Tablet & mobile header: logo + buttons + menu button; nav opens below. */
@media (max-width:980px){
  /* One row when the menu is closed, whatever the font metrics; wrap only to show the open menu. */
  .bnc-header-row{gap:12px !important;flex-wrap:nowrap !important}
  .bnc-header.is-open .bnc-header-row{flex-wrap:wrap !important}
  .bnc-logo{flex:0 1 auto;min-width:0}
  .bnc-logo img{max-width:100%;height:auto;max-height:76px}
  .bnc-header-actions{margin-left:auto;align-items:center;flex:0 0 auto;flex-wrap:nowrap}
  .bnc-header-actions a{white-space:nowrap}
  .bnc-menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:999px;border:2px solid #E7E1D6;background:#FFFFFF;color:#0B2463;cursor:pointer;padding:0}
  .bnc-menu-toggle .bnc-i-close{display:none}
  .bnc-header.is-open .bnc-menu-toggle .bnc-i-open{display:none}
  .bnc-header.is-open .bnc-menu-toggle .bnc-i-close{display:inline}
  .bnc-header .navlinks{display:none !important}
  .bnc-header.is-open .navlinks{display:flex !important;order:3;flex-basis:100%;flex-direction:column;gap:0 !important;margin-top:4px;border-top:1px solid #E7E1D6}
  .bnc-header.is-open .navlinks a{margin:0;padding:14px 2px;border-bottom:1px solid #F0EBE2;font-size:17px}
  .bnc-header.is-open .navlinks a:last-child{border-bottom:none}
}

@media (max-width:760px){
  .bnc-logo img{height:56px !important;max-height:56px;object-fit:contain}
  .bnc-hero{padding:40px 0 56px !important}
  .bnc-hero .wrap{gap:36px !important}
  .bnc-sec{padding-top:64px !important;padding-bottom:64px !important}
  .bnc-donate-copy{padding:36px 24px 20px !important}
  .bnc-donate-card{margin:8px !important;padding:24px !important}
  .bnc-schedule-card{padding:4px 20px !important}
  .bnc-footer{padding-top:56px !important}
}

@media (max-width:600px){
  .bnc-hero-media{gap:10px !important}
  .bnc-hero-media img:first-child{height:320px !important}
  .bnc-hero-media img:not(:first-child){height:155px !important}
  /* Weekly stops: one card-like block per day instead of a sideways-scrolling table. */
  .bnc-schedule{min-width:0 !important}
  .bnc-schedule thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .bnc-schedule tr{display:block;padding:14px 0;border-bottom:1px solid #F0EBE2}
  .bnc-schedule tr:last-child{border-bottom:none}
  .bnc-schedule td{display:flex;justify-content:space-between;gap:16px;padding:4px 0 !important;border:none !important;text-align:right}
  .bnc-schedule td::before{content:attr(data-label);color:#4A5568;font-size:14px;font-weight:500;text-align:left}
  .bnc-schedule td:first-child{font-size:17px;padding-bottom:6px !important}
  .bnc-schedule td:first-child::before{content:none}
}

@media (max-width:600px){
  .bnc-header-actions .bnc-btn-help{display:none !important}
}

/* ------------------------------------------------------------------
   Inner pages (Sections template).
   ------------------------------------------------------------------ */
.bnc-entry > :first-child{margin-top:0}
.bnc-entry > :last-child{margin-bottom:0}
.bnc-entry p{margin:0 0 1em}
.bnc-entry h2,.bnc-entry h3,.bnc-entry h4{font-family:'Bricolage Grotesque',sans-serif;color:#0B2463;line-height:1.2;margin:1.4em 0 .5em}
.bnc-entry h2{font-size:30px}.bnc-entry h3{font-size:23px}
.bnc-entry ul,.bnc-entry ol{margin:0 0 1em;padding-left:1.3em}
.bnc-entry li{margin-bottom:.4em}
.bnc-entry a{font-weight:600}
.bnc-entry img{height:auto;border-radius:16px}
.bnc-entry blockquote{margin:1.4em 0;padding-left:20px;border-left:4px solid #C2410C;font-family:'Bricolage Grotesque',sans-serif;font-size:21px;color:#14213D}
.bnc-contact-form select,.bnc-contact-form textarea{-webkit-appearance:none;appearance:none}
.bnc-contact-form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230B2463' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;background-repeat:no-repeat !important;background-position:right 16px center !important;padding-right:44px !important}
.bnc-contact-form [aria-invalid="true"]{border-color:#C2410C !important}
.bnc-contact-form button[disabled]{opacity:.7;cursor:wait}
select:focus-visible,textarea:focus-visible{outline:3px solid #C2410C;outline-offset:3px;border-radius:6px}
.bnc-contact-msg{flex:1 1 220px;flex-basis:auto;font-size:15px;color:#166534}
.bnc-contact-msg.is-error{color:#9A3412}

@media (max-width:760px){
  .bnc-page-hero{padding:40px 0 48px !important}
  .bnc-page-hero .wrap,.bnc-service-row{gap:28px !important}
  .bnc-page-hero img{height:260px !important}
  .bnc-sec img[style*="height: 420px"],.bnc-service-row img{height:260px !important}
  .bnc-cta{padding:36px 24px !important;border-radius:24px !important}
  .bnc-contact-card{padding:28px 22px !important}
}
@media (max-width:340px){
  .bnc-header-actions{gap:6px !important}
  .bnc-header-actions a{padding:0 16px !important}
}

/* Small laptops (981–1180px): tighter menu spacing so up to 6 menu links + both buttons stay on one row. */
@media (min-width:981px) and (max-width:1180px){
  .bnc-header-row{gap:16px !important}
  .bnc-header .navlinks{gap:18px !important;font-size:15px !important}
  .bnc-header-actions a{padding:0 16px !important;white-space:nowrap}
  .bnc-logo img{height:64px !important}
}
