
/* Bharte Kadam Foundation final integration layer
   Selected theme: editorial orange + cream + deep navy. */
:root{
  --bkf-orange:#E8591A;
  --bkf-orange-dark:#B83C0C;
  --bkf-gold:#C9820A;
  --bkf-navy:#0D1B2A;
  --bkf-ink:#1A2332;
  --bkf-slate:#4A5568;
  --bkf-cream:#FDFAF4;
  --bkf-fog:#F5F2EC;
  --bkf-white:#fff;
  --bkf-line:rgba(13,27,42,.10);
  --bkf-display:'Playfair Display',Georgia,serif;
  --bkf-body:'DM Sans',system-ui,sans-serif;
}
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{background:var(--bkf-cream);color:var(--bkf-ink);font-family:var(--bkf-body)}
img,svg,video,canvas,iframe{max-width:100%}
.container{width:min(1240px,calc(100% - 48px));max-width:100%}
main,section,header,footer,.site-header,.header,.page-hero,.section,.footer-grid{max-width:100%}
.grid,.hero-grid,.page-hero,.split-section,.program-grid,.project-grid,.campaign-grid,.review-strip,.home-members-grid,.members-grid,.cta-tiles,.footer-grid,.contact-grid,.leaders-grid,.vision-grid{min-width:0}
.grid>*,.hero-grid>*,.page-hero>*,.split-section>*,.program-grid>*,.project-grid>*,.campaign-grid>*,.review-strip>*,.home-members-grid>*,.members-grid>*,.cta-tiles>*,.footer-grid>*,.contact-grid>*,.leaders-grid>*,.vision-grid>*{min-width:0}

/* Existing multi-page pages are restyled to match the selected homepage. */
body:not(.home-editorial) .top-runner{background:var(--bkf-orange);border:none;border-radius:0;width:100%;margin:0;box-shadow:none}
body:not(.home-editorial) .runner-track{font-family:'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:#fff}
body:not(.home-editorial) .site-header{
  position:sticky;top:0;z-index:100;width:min(1420px,calc(100% - 32px));max-width:100%;
  margin:12px auto 0;padding:10px 14px;border:1px solid rgba(13,27,42,.08);border-radius:18px;
  background:rgba(253,250,244,.96);backdrop-filter:blur(16px);box-shadow:0 16px 46px rgba(13,27,42,.09);
}
body:not(.home-editorial) .brand b{font-family:var(--bkf-display);font-size:17px;color:var(--bkf-ink)}
body:not(.home-editorial) .brand small{color:var(--bkf-slate)}
body:not(.home-editorial) .nav-menu{gap:0;min-width:0;justify-content:flex-end}
body:not(.home-editorial) .nav-link{padding:8px 8px;font-size:12.5px;font-weight:600;color:var(--bkf-slate);border-radius:7px;white-space:nowrap}
body:not(.home-editorial) .nav-link:hover,body:not(.home-editorial) .nav-link.active{color:var(--bkf-orange);background:rgba(232,89,26,.08)}
.portal-login{
  display:inline-flex!important;align-items:center;justify-content:center;gap:7px;white-space:nowrap;
  padding:10px 15px!important;border-radius:999px!important;background:var(--bkf-navy)!important;color:#fff!important;
  font-weight:800!important;box-shadow:0 8px 20px rgba(13,27,42,.18);margin-left:6px!important;
}
.portal-login:hover{background:var(--bkf-orange)!important;color:#fff!important;transform:translateY(-1px)}
.portal-login svg{width:17px;height:17px;flex:0 0 auto}
body:not(.home-editorial) .page-hero h1,body:not(.home-editorial) .section-head h2,body:not(.home-editorial) .glass-panel h2,
body:not(.home-editorial) .vision-card h2,body:not(.home-editorial) .leader-card h2,body:not(.home-editorial) .cta-tile h2,
body:not(.home-editorial) .contact-card h2,body:not(.home-editorial) .contact-form h2{font-family:var(--bkf-display);color:var(--bkf-navy);letter-spacing:-.025em}
body:not(.home-editorial) .page-hero{padding-top:72px}
body:not(.home-editorial) .eyebrow{font-family:'DM Mono',monospace;color:var(--bkf-orange);border-color:rgba(232,89,26,.18);background:#fff}
body:not(.home-editorial) .eyebrow:before{background:var(--bkf-orange)}
body:not(.home-editorial) .glass-panel,body:not(.home-editorial) .program-card,body:not(.home-editorial) .project-card,
body:not(.home-editorial) .process-card,body:not(.home-editorial) .impact-card,body:not(.home-editorial) .donation-card,
body:not(.home-editorial) .contact-card,body:not(.home-editorial) .contact-form,body:not(.home-editorial) .campaign-card,
body:not(.home-editorial) .review-card,body:not(.home-editorial) .member-card,body:not(.home-editorial) .live-widget-panel{
  background:#fff;border:1px solid var(--bkf-line);box-shadow:0 18px 45px rgba(13,27,42,.08);backdrop-filter:none;
}
body:not(.home-editorial) .glass-panel:before{background:linear-gradient(135deg,rgba(232,89,26,.65),rgba(201,130,10,.25),rgba(26,74,122,.25))}
body:not(.home-editorial) .btn.primary{background:var(--bkf-orange);color:#fff}
body:not(.home-editorial) .btn.secondary,body:not(.home-editorial) .btn.glass{background:#fff;color:var(--bkf-navy);border-color:var(--bkf-line)}
body:not(.home-editorial) .text-link{color:var(--bkf-orange)}
body:not(.home-editorial) .footer{background:var(--bkf-navy);margin-top:40px}

/* Header fit at browser zoom 100% on standard desktop widths. */
@media (max-width:1320px){
  body:not(.home-editorial) .site-header{width:calc(100% - 22px);padding:9px 11px}
  body:not(.home-editorial) .nav-link{padding:7px 6px;font-size:11.8px}
  body:not(.home-editorial) .brand img{width:39px;height:39px}
  body:not(.home-editorial) .brand b{font-size:15px}
  body:not(.home-editorial) .brand small{font-size:9px}
  .portal-login{padding:9px 11px!important;font-size:11.5px!important}
}
@media (max-width:1160px){
  body:not(.home-editorial) .nav-toggle{display:block}
  body:not(.home-editorial) .nav-menu{position:absolute;top:66px;left:0;right:0;width:100%;display:none;flex-direction:column;align-items:stretch;background:#fff;padding:12px;border:1px solid var(--bkf-line);border-radius:18px;box-shadow:0 20px 55px rgba(13,27,42,.14);max-height:calc(100vh - 90px);overflow:auto}
  body:not(.home-editorial) .nav-menu.open{display:flex}
  body:not(.home-editorial) .nav-link,.portal-login{width:100%;margin:2px 0!important;justify-content:flex-start!important;font-size:14px!important;padding:12px 14px!important}
}

/* Homepage header and section fit. */
.home-editorial .header-inner{max-width:1420px;width:100%;padding:0 24px;gap:12px}
.home-editorial .nav{gap:0;min-width:0}
.home-editorial .nav a{padding:8px 8px;font-size:12.4px;white-space:nowrap}
.home-editorial .nav-donate{padding:9px 15px!important;margin-left:4px}
.home-editorial .portal-login{padding:9px 14px!important;font-size:12.5px!important}
.home-editorial .hero,.home-editorial .section{width:min(1240px,calc(100% - 48px));max-width:100%}
.home-editorial .campaigns-inner,.home-editorial .stats-band-inner,.home-editorial .footer-inner{width:min(1240px,calc(100% - 48px));max-width:100%}
.home-editorial .cta-tile h2{overflow-wrap:anywhere}
.home-editorial .cta-tile p{max-width:100%}
@media (max-width:1260px){
  .home-editorial .header-inner{padding:0 16px}
  .home-editorial .nav a{font-size:11.5px;padding:7px 6px}
  .home-editorial .brand-text strong{font-size:15px}
  .home-editorial .brand-text small{font-size:9px}
  .home-editorial .brand-logo{width:39px;height:39px}
  .home-editorial .nav-donate,.home-editorial .portal-login{padding:8px 10px!important;font-size:11.5px!important}
}
@media (max-width:1160px){.home-editorial .nav{display:none}.home-editorial .menu-btn{display:flex}}
@media (max-width:760px){
  .container,.home-editorial .hero,.home-editorial .section,.home-editorial .campaigns-inner,.home-editorial .stats-band-inner,.home-editorial .footer-inner{width:min(100% - 28px,1240px)}
  .home-editorial .cta-tiles{grid-template-columns:1fr!important}
  .home-editorial .cta-tile{min-height:auto!important;padding:30px 24px!important}
}
@media (max-width:420px){
  .container,.home-editorial .hero,.home-editorial .section,.home-editorial .campaigns-inner,.home-editorial .stats-band-inner,.home-editorial .footer-inner{width:min(100% - 20px,1240px)}
}

/* New integrated service cards and widgets. */
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.service-card{padding:24px;border:1px solid var(--bkf-line);border-radius:16px;background:#fff;box-shadow:0 16px 38px rgba(13,27,42,.07);display:flex;flex-direction:column;align-items:flex-start}
.service-card .service-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:rgba(232,89,26,.10);color:var(--bkf-orange);font-size:22px;margin-bottom:16px}
.service-card h3{font-family:var(--bkf-display);font-size:23px;color:var(--bkf-navy);margin:0 0 8px}
.service-card p{color:var(--bkf-slate);line-height:1.65;margin:0 0 18px}
.service-card a{margin-top:auto;color:var(--bkf-orange);font-weight:800}
.live-widget-card{margin-top:28px;padding:24px;border:1px solid var(--bkf-line);border-radius:18px;background:#fff;box-shadow:0 18px 45px rgba(13,27,42,.08);overflow:hidden;min-height:120px}
.live-widget-card .widget-loading{color:var(--bkf-slate);text-align:center;padding:20px}
.instagram-widget-section{padding-top:0!important}
.instagram-widget-head{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap;margin-bottom:22px}
.instagram-widget-head a{color:var(--bkf-orange);font-weight:800}

/* Crowdfunding live data. */
.crowdfunding-status{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 20px;padding:12px 16px;border:1px solid rgba(232,89,26,.18);border-radius:12px;background:#fff8f1;color:var(--bkf-slate);font-size:13px}
.crowdfunding-status strong{color:var(--bkf-orange)}
.recent-supporters{margin-top:38px}
.supporters-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.supporter-item{display:flex;gap:13px;align-items:center;padding:16px;border:1px solid var(--bkf-line);border-radius:14px;background:#fff;box-shadow:0 12px 30px rgba(13,27,42,.06)}
.supporter-avatar{width:42px;height:42px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--bkf-orange),var(--bkf-gold));color:#fff;font-weight:900}
.supporter-copy{min-width:0}.supporter-copy strong{display:block;color:var(--bkf-navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.supporter-copy span{display:block;color:var(--bkf-slate);font-size:13px;margin-top:3px}.supporter-copy b{color:var(--bkf-orange)}
.campaign-live-meta{display:flex;gap:10px;align-items:center;justify-content:space-between;margin:12px 0 0;font-size:12px;color:var(--bkf-slate)}
.campaign-live-meta span{display:inline-flex;align-items:center;gap:5px}
.campaign-detail-shell{padding:72px 0}.campaign-detail-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.75fr);gap:30px;align-items:start}.campaign-detail-main,.campaign-detail-side{background:#fff;border:1px solid var(--bkf-line);border-radius:20px;box-shadow:0 18px 45px rgba(13,27,42,.08);overflow:hidden}.campaign-detail-main img{width:100%;max-height:470px;object-fit:cover}.campaign-detail-content{padding:30px}.campaign-detail-content h1{font-family:var(--bkf-display);font-size:clamp(38px,5vw,64px);line-height:1;color:var(--bkf-navy);margin:0 0 16px}.campaign-detail-content p{font-size:17px;color:var(--bkf-slate);line-height:1.75}.campaign-detail-side{padding:26px;position:sticky;top:105px}.campaign-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.campaign-summary-grid div{padding:14px;border-radius:12px;background:var(--bkf-fog)}.campaign-summary-grid span{display:block;color:var(--bkf-slate);font-size:12px}.campaign-summary-grid strong{display:block;color:var(--bkf-navy);font-size:21px;margin-top:4px}.campaign-detail-progress{height:12px;background:#ede8df;border-radius:999px;overflow:hidden}.campaign-detail-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--bkf-orange),var(--bkf-gold));border-radius:999px;transition:width .6s ease}.donor-consent-note{padding:14px;border-radius:12px;background:#fff6ea;border:1px solid rgba(232,89,26,.18);color:#75411e;font-size:13px;line-height:1.55;margin-top:18px}

/* Policy pages. */
.policy-wrap{width:min(920px,calc(100% - 32px));margin:0 auto;padding:70px 0}.policy-card{padding:clamp(24px,5vw,54px);border-radius:22px;background:#fff;border:1px solid var(--bkf-line);box-shadow:0 18px 45px rgba(13,27,42,.08)}.policy-card h1{font-family:var(--bkf-display);font-size:clamp(38px,6vw,64px);line-height:1;color:var(--bkf-navy);margin:0 0 18px}.policy-card h2{font-family:var(--bkf-display);color:var(--bkf-navy);margin:32px 0 10px}.policy-card p,.policy-card li{color:var(--bkf-slate);line-height:1.75}.policy-card ul{padding-left:22px;list-style:disc}
.policy-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}.policy-links a{color:rgba(255,255,255,.72);font-size:13px}.policy-links a:hover{color:#fff}

@media (max-width:900px){.service-grid,.supporters-feed{grid-template-columns:1fr 1fr}.campaign-detail-grid{grid-template-columns:1fr}.campaign-detail-side{position:static}}
@media (max-width:600px){.service-grid,.supporters-feed{grid-template-columns:1fr}.live-widget-card{padding:14px}.campaign-detail-shell{padding:46px 0}.campaign-detail-content,.campaign-detail-side{padding:21px}.campaign-summary-grid{grid-template-columns:1fr 1fr}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* 2026 consolidated header/footer update */
.sticky-shell{position:sticky;top:0;z-index:1000;background:var(--bkf-paper,#FDFAF4);box-shadow:0 6px 26px rgba(13,27,42,.08)}.sticky-shell .top-runner{position:static;margin:0;width:100%;border-radius:0}.common-header.site-header{position:relative;top:auto;margin:0 auto;width:min(1360px,calc(100% - 24px));border-radius:0;box-shadow:none;background:rgba(253,250,244,.97);height:70px}.brand-logo-wrap{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;padding:5px;background:#fff;border:2px solid rgba(232,89,26,.25);box-shadow:0 8px 20px rgba(13,27,42,.1)}.brand-logo-wrap img{width:100%!important;height:100%!important;object-fit:contain}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy b{font-family:'Playfair Display',Georgia,serif;font-size:16px}.brand-copy small{font-size:8px!important;letter-spacing:.1em!important;white-space:nowrap}.common-header .nav-menu{gap:1px}.common-header .nav-link{font-size:11.3px;padding:8px 7px;white-space:nowrap}.nav-action{display:inline-flex!important;align-items:center;justify-content:center;border-radius:999px!important;padding:9px 12px!important;font-size:11px!important;font-weight:800!important;margin-left:5px!important}.donate-action{background:#E8591A!important;color:#fff!important}.portal-login{background:#0D1B2A!important;color:#fff!important}.mobile-only-link{display:none!important}.common-footer .footer-grid{grid-template-columns:1.2fr .8fr .8fr 1fr}.footer-logo-wrap{width:58px;height:58px;border-radius:50%;padding:6px;background:#fff;display:grid;place-items:center}.footer-logo-wrap img{width:100%;height:100%;object-fit:contain}.footer-social{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.footer-social a{width:40px;height:40px;border-radius:12px;display:grid!important;place-items:center!important;color:#fff!important;margin:0!important}.footer-social svg{width:21px;height:21px}.footer-social .instagram{background:radial-gradient(circle at 30% 110%,#ffd36b,#f34b4b 42%,#c1269d 68%,#325ce8)}.footer-social .facebook{background:#1877f2}.footer-social .youtube{background:#f00}.footer-social .linkedin{background:#0a66c2}.common-footer .footer-bottom{width:min(1180px,92vw);margin-inline:auto}.common-footer .policy-links{display:flex;gap:14px;flex-wrap:wrap}.common-footer .policy-links a{margin:0}.current-year{display:inline}.common-header .brand{min-width:215px}.common-header .nav-toggle{margin-left:auto}@media(max-width:1180px){.common-header .nav-toggle{display:block}.common-header .nav-menu{position:absolute;top:70px;left:12px;right:12px;display:none!important;flex-direction:column;align-items:stretch;background:#fff;padding:14px;border:1px solid rgba(13,27,42,.1);border-radius:20px;box-shadow:0 24px 60px rgba(13,27,42,.16);max-height:calc(100vh - 120px);overflow:auto}.common-header .nav-menu.open{display:flex!important}.common-header .nav-menu a{width:100%;padding:12px!important}.mobile-only-link{display:block!important}.common-footer .footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.common-header.site-header{height:64px}.common-header .brand{min-width:0}.brand-logo-wrap{width:43px;height:43px}.brand-copy b{font-size:14px}.brand-copy small{font-size:7px!important}.common-header .nav-menu{top:64px}.common-footer .footer-grid{grid-template-columns:1fr}.common-footer .footer-bottom{flex-direction:column;align-items:flex-start}}


/* GLOBAL FIXES: fixed header, transparent logo, contained footer icons - 2026-06-16 */
:root{--bkf-fixed-header-height:100px}
html{scroll-padding-top:calc(var(--bkf-fixed-header-height) + 16px)}
body{padding-top:var(--bkf-fixed-header-height)!important}
.sticky-shell{
  position:fixed!important;
  inset:0 0 auto 0!important;
  width:100%!important;
  z-index:10000!important;
  transform:translateZ(0);
  background:rgba(253,250,244,.98)!important;
  box-shadow:0 8px 30px rgba(13,27,42,.13)!important;
}
.common-header.site-header{position:relative!important}
.common-header .nav-menu.open{top:100%!important;z-index:10020!important}
.brand-logo-wrap,.footer-logo-wrap{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible!important;
  border-radius:0!important;
}
.brand-logo-wrap{width:52px!important;height:52px!important}
.footer-logo-wrap{width:66px!important;height:66px!important}
.brand-logo-wrap img,.footer-logo-wrap img{
  width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;
  filter:drop-shadow(0 7px 12px rgba(0,0,0,.16));
}
.footer-social{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important}
.footer-social a{
  display:grid!important;place-items:center!important;
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  flex:0 0 42px!important;padding:0!important;margin:0!important;line-height:0!important;overflow:hidden!important;
}
.footer-social svg{display:block!important;width:21px!important;height:21px!important;min-width:21px!important;margin:auto!important}
@media(max-width:760px){
  :root{--bkf-fixed-header-height:92px}
  .brand-logo-wrap{width:44px!important;height:44px!important}
}

/* Wide BKF wordmark logo */
.common-header .brand{
  min-width:210px!important;
  gap:0!important;
}
.brand-logo-wrap{
  width:178px!important;
  height:56px!important;
}
.brand-copy{
  display:none!important;
}
.footer-logo-wrap{
  width:190px!important;
  height:72px!important;
}
.footer-brand > div{
  display:none!important;
}
@media(max-width:760px){
  .common-header .brand{
    min-width:150px!important;
  }
  .brand-logo-wrap{
    width:148px!important;
    height:48px!important;
  }
  .footer-logo-wrap{
    width:170px!important;
    height:64px!important;
  }
}

/* Full wordmark header logo: use the supplied high-res PNG, not duplicate text. */
.common-header .brand,
.site-header .brand{
  min-width:260px!important;
  width:260px!important;
  gap:0!important;
  flex:0 0 260px!important;
}
.common-header .brand-copy,
.site-header .brand-copy,
.site-header .brand > span:not(.brand-logo-wrap),
.common-header .brand > span:not(.brand-logo-wrap){
  display:none!important;
}
.common-header .brand-logo-wrap,
.site-header .brand-logo-wrap{
  width:244px!important;
  height:76px!important;
  max-width:244px!important;
  max-height:76px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible!important;
}
.common-header .brand-logo-wrap img,
.site-header .brand-logo-wrap img,
.site-header .brand > img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
  image-rendering:auto;
  filter:drop-shadow(0 6px 10px rgba(13,27,42,.1));
}
.common-header.site-header{
  min-height:86px!important;
  height:86px!important;
}
:root{--bkf-fixed-header-height:116px}
@media(max-width:1180px){
  .common-header .brand,
  .site-header .brand{
    min-width:220px!important;
    width:220px!important;
    flex-basis:220px!important;
  }
  .common-header .brand-logo-wrap,
  .site-header .brand-logo-wrap{
    width:210px!important;
    height:66px!important;
  }
}

/* Keep horizontal card swipes available while preserving vertical page scrolling. */
@media (max-width: 780px) {
  [data-carousel] .carousel-viewport,
  .member-slider-viewport,
  [data-slider],
  [data-event-slider],
  .project-media-slider {
    touch-action: pan-y !important;
    overscroll-behavior-x: contain;
  }
}
@media(max-width:760px){
  :root{--bkf-fixed-header-height:104px}
  .common-header.site-header{
    min-height:74px!important;
    height:74px!important;
  }
  .common-header .brand,
  .site-header .brand{
    min-width:174px!important;
    width:174px!important;
    flex-basis:174px!important;
  }
  .common-header .brand-logo-wrap,
  .site-header .brand-logo-wrap{
    width:166px!important;
    height:58px!important;
  }
}

/* Balanced BKF wordmark sizing - keeps logo crisp without dominating the header. */
.common-header .brand,
.site-header .brand{
  min-width:210px!important;
  width:210px!important;
  flex:0 0 210px!important;
  justify-content:flex-start!important;
  gap:0!important;
}
.common-header .brand-copy,
.site-header .brand-copy,
.common-header .brand > span:not(.brand-logo-wrap),
.site-header .brand > span:not(.brand-logo-wrap){
  display:none!important;
}
.common-header .brand-logo-wrap,
.site-header .brand-logo-wrap{
  width:196px!important;
  height:58px!important;
  max-width:196px!important;
  max-height:58px!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:visible!important;
}
.common-header .brand-logo-wrap img,
.site-header .brand-logo-wrap img,
.site-header .brand > img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
  filter:drop-shadow(0 3px 7px rgba(13,27,42,.12))!important;
}
.common-header.site-header,
.site-header{
  min-height:72px!important;
  height:72px!important;
  align-items:center!important;
}
:root{--bkf-fixed-header-height:102px}
@media(max-width:1180px){
  .common-header .brand,
  .site-header .brand{
    min-width:180px!important;
    width:180px!important;
    flex-basis:180px!important;
  }
  .common-header .brand-logo-wrap,
  .site-header .brand-logo-wrap{
    width:170px!important;
    height:52px!important;
  }
}
@media(max-width:760px){
  :root{--bkf-fixed-header-height:92px}
  .common-header.site-header,
  .site-header{
    min-height:64px!important;
    height:64px!important;
  }
  .common-header .brand,
  .site-header .brand{
    min-width:150px!important;
    width:150px!important;
    flex-basis:150px!important;
  }
  .common-header .brand-logo-wrap,
  .site-header .brand-logo-wrap{
    width:142px!important;
    height:46px!important;
  }
}
/* Free owned Google review and Instagram replacements. */
.owned-review-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  padding:18px!important;
}
.owned-review-card{
  min-height:230px;
  display:flex;
  flex-direction:column;
  gap:13px;
  padding:24px;
  border-radius:22px;
  background:linear-gradient(145deg,#fff,#fff7ed);
  border:1px solid rgba(232,89,26,.14);
  box-shadow:0 16px 38px rgba(13,27,42,.08);
}
.owned-review-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.owned-review-top .stars,.stars{color:#ffb703;letter-spacing:2px;font-weight:900}
.owned-review-top b{padding:7px 10px;border-radius:999px;background:#eaf4ff;color:#0f4c81;font-size:12px}
.owned-review-card p{margin:0;color:#334155;font-size:15px;line-height:1.65}
.owned-review-card h3{margin:auto 0 0;color:var(--bkf-navy,#0D1B2A);font-size:20px}
.owned-review-card small{color:var(--bkf-slate,#64748b);line-height:1.5}
.bkf-instagram-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:14px!important}
.bkf-insta-card{position:relative;min-height:250px;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 16px 36px rgba(13,27,42,.1)}
.bkf-insta-card img{width:100%;height:100%;min-height:250px;object-fit:cover;display:block;transition:transform .35s ease}
.bkf-insta-card span{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;min-height:38px;padding:9px 12px;border-radius:14px;background:rgba(13,27,42,.78);color:#fff;font-size:13px;font-weight:900;backdrop-filter:blur(10px)}
.bkf-insta-card:hover img{transform:scale(1.05)}
@media(max-width:980px){.owned-review-grid{grid-template-columns:1fr 1fr}.bkf-instagram-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.owned-review-grid,.bkf-instagram-grid{grid-template-columns:1fr;padding:12px!important}.owned-review-card{padding:20px;min-height:auto}.bkf-insta-card,.bkf-insta-card img{min-height:230px}}
/* Footer brand: show the supplied BKF logo only, without duplicate text. */
.footer-brand{align-items:center!important;gap:0!important}
.footer-brand > div{display:none!important}
.footer-logo-wrap{width:190px!important;height:72px!important;border-radius:0!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;overflow:visible!important}
.footer-logo-wrap img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;filter:drop-shadow(0 5px 10px rgba(0,0,0,.18))!important}
@media(max-width:760px){.footer-logo-wrap{width:170px!important;height:64px!important}}

/* Footer logo should read as a white mark on the dark footer. */
.footer .footer-logo-wrap img,
.common-footer .footer-logo-wrap img{
  filter:brightness(0) invert(1) drop-shadow(0 5px 10px rgba(0,0,0,.18))!important;
}

/* Final header logo fit: preserve PNG ratio and keep it inside the header line. */
.common-header.site-header,
.site-header{
  min-height:72px!important;
  height:72px!important;
  overflow:hidden!important;
  align-items:center!important;
}
.common-header .brand,
.site-header .brand{
  min-width:185px!important;
  width:185px!important;
  flex:0 0 185px!important;
  height:56px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
.common-header .brand-logo-wrap,
.site-header .brand-logo-wrap{
  width:180px!important;
  height:56px!important;
  max-width:180px!important;
  max-height:56px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  overflow:hidden!important;
}
.common-header .brand-logo-wrap img,
.site-header .brand-logo-wrap img,
.site-header .brand > img{
  width:auto!important;
  height:auto!important;
  max-width:180px!important;
  max-height:52px!important;
  object-fit:contain!important;
  display:block!important;
  filter:none!important;
  transform:none!important;
}
@media(max-width:760px){
  .common-header.site-header,
  .site-header{min-height:64px!important;height:64px!important}
  .common-header .brand,
  .site-header .brand{min-width:150px!important;width:150px!important;flex-basis:150px!important;height:50px!important}
  .common-header .brand-logo-wrap,
  .site-header .brand-logo-wrap{width:146px!important;height:50px!important;max-width:146px!important;max-height:50px!important}
  .common-header .brand-logo-wrap img,
  .site-header .brand-logo-wrap img{max-width:146px!important;max-height:46px!important}
}

/* Footer logo correction: keep original logo colors, place it on a clean white background. */
.footer .footer-logo-wrap,
.common-footer .footer-logo-wrap{
  width:198px!important;
  height:78px!important;
  padding:8px!important;
  border-radius:10px!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.85)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
  overflow:hidden!important;
}
.footer .footer-logo-wrap img,
.common-footer .footer-logo-wrap img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  filter:none!important;
}
@media(max-width:760px){
  .footer .footer-logo-wrap,
  .common-footer .footer-logo-wrap{width:176px!important;height:70px!important;padding:7px!important}
}

/* Auto-slide Google review cards from right to left. */
.owned-review-slider{
  overflow:hidden!important;
  padding:18px!important;
}
.owned-review-track{
  display:flex;
  width:max-content;
  gap:18px;
  animation:ownedReviewSlide 28s linear infinite;
  will-change:transform;
}
.owned-review-slider:hover .owned-review-track{
  animation-play-state:paused;
}
.owned-review-track .owned-review-card{
  flex:0 0 clamp(280px,30vw,350px);
  width:clamp(280px,30vw,350px);
}
@keyframes ownedReviewSlide{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - 9px))}
}
@media(max-width:600px){
  .owned-review-slider{padding:12px!important}
  .owned-review-track{gap:14px;animation-duration:24s}
  .owned-review-track .owned-review-card{flex-basis:82vw;width:82vw}
}
@media(prefers-reduced-motion:reduce){
  .owned-review-track{animation:none}
}

/* Keep the review slider loop aligned with its current gap size. */
.owned-review-track{--review-shift-fix:9px;gap:18px}
@keyframes ownedReviewSlide{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - var(--review-shift-fix)))}
}
@media(max-width:600px){.owned-review-track{--review-shift-fix:7px;gap:14px}}

/* Rounded inset header container to match inner pages. */
.sticky-shell .site-header.common-header,
.sticky-shell .common-header.site-header{
  width:min(1420px,calc(100% - 128px))!important;
  margin:12px auto 0!important;
  border-radius:22px!important;
  border:1px solid rgba(13,27,42,.08)!important;
  background:rgba(253,250,244,.97)!important;
  box-shadow:0 18px 45px rgba(13,27,42,.10)!important;
  overflow:visible!important;
}
.sticky-shell .site-header.common-header .brand,
.sticky-shell .common-header.site-header .brand,
.sticky-shell .site-header.common-header .brand-logo-wrap,
.sticky-shell .common-header.site-header .brand-logo-wrap{
  overflow:hidden!important;
}
:root{--bkf-fixed-header-height:114px}
@media(max-width:1180px){
  .sticky-shell .site-header.common-header,
  .sticky-shell .common-header.site-header{
    width:calc(100% - 24px)!important;
    border-radius:18px!important;
  }
}
@media(max-width:760px){
  :root{--bkf-fixed-header-height:104px}
  .sticky-shell .site-header.common-header,
  .sticky-shell .common-header.site-header{
    width:calc(100% - 18px)!important;
    margin-top:8px!important;
    border-radius:16px!important;
  }
}

/* Final site-wide header logo containment: prevent logo from spilling outside the header. */
.site-header .brand,
.common-header .brand,
.sticky-shell .site-header.common-header .brand,
.sticky-shell .common-header.site-header .brand{
  min-width:164px!important;
  width:164px!important;
  flex:0 0 164px!important;
  height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  overflow:hidden!important;
}
.site-header .brand-logo-wrap,
.common-header .brand-logo-wrap,
.sticky-shell .site-header.common-header .brand-logo-wrap,
.sticky-shell .common-header.site-header .brand-logo-wrap{
  width:156px!important;
  height:50px!important;
  max-width:156px!important;
  max-height:50px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.site-header .brand-logo-wrap img,
.common-header .brand-logo-wrap img,
.site-header .brand > img,
.common-header .brand > img{
  width:auto!important;
  height:auto!important;
  max-width:156px!important;
  max-height:44px!important;
  object-fit:contain!important;
  object-position:left center!important;
  display:block!important;
  margin:0!important;
  filter:none!important;
  transform:none!important;
}
.site-header .brand-copy,
.common-header .brand-copy,
.site-header .brand > span:not(.brand-logo-wrap),
.common-header .brand > span:not(.brand-logo-wrap){
  display:none!important;
}
@media(max-width:760px){
  .site-header .brand,
  .common-header .brand,
  .sticky-shell .site-header.common-header .brand,
  .sticky-shell .common-header.site-header .brand{
    min-width:136px!important;
    width:136px!important;
    flex-basis:136px!important;
    height:46px!important;
  }
  .site-header .brand-logo-wrap,
  .common-header .brand-logo-wrap,
  .sticky-shell .site-header.common-header .brand-logo-wrap,
  .sticky-shell .common-header.site-header .brand-logo-wrap{
    width:130px!important;
    height:44px!important;
    max-width:130px!important;
    max-height:44px!important;
  }
  .site-header .brand-logo-wrap img,
  .common-header .brand-logo-wrap img,
  .site-header .brand > img,
  .common-header .brand > img{
    max-width:130px!important;
    max-height:38px!important;
  }
}
/* Enquiry rail button and form status */
.social-rail a.enquiry,
.social-rail-link.enquiry {
  width: 54px !important;
  min-height: 52px !important;
  height: auto !important;
  padding: 8px 6px !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #e8591a, #c94312) !important;
  color: #fff !important;
  text-align: center !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
}
.social-rail a.enquiry span,
.social-rail-link.enquiry span {
  display: block !important;
  max-width: 42px !important;
}
.enquiry-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.enquiry-status {
  min-height: 22px;
  margin: 12px 0 0;
  color: #526071;
  font-weight: 800;
}
.enquiry-status.success { color: #18794e; }
.enquiry-status.error { color: #c94312; }
.contact-form button[disabled] {
  cursor: wait;
  opacity: .72;
}
@media (max-width: 760px) {
  .social-rail a.enquiry,
  .social-rail-link.enquiry {
    width: 48px !important;
    min-height: 48px !important;
    font-size: 8px !important;
  }
}
/* Final header/logo containment: keep logo fully inside the rounded page header. */
.sticky-shell .site-header.common-header,
.sticky-shell .common-header.site-header,
.site-header.common-header {
  width: min(94vw, 1420px) !important;
  max-width: calc(100% - 32px) !important;
  margin: 14px auto 0 !important;
  padding: 12px 18px !important;
  min-height: 78px !important;
  height: 78px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
}
.sticky-shell .site-header.common-header .brand,
.sticky-shell .common-header.site-header .brand,
.site-header.common-header .brand {
  min-width: 156px !important;
  width: 156px !important;
  flex: 0 0 156px !important;
  height: 54px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}
.sticky-shell .site-header.common-header .brand-logo-wrap,
.sticky-shell .common-header.site-header .brand-logo-wrap,
.site-header.common-header .brand-logo-wrap {
  width: 148px !important;
  height: 50px !important;
  max-width: 148px !important;
  max-height: 50px !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.sticky-shell .site-header.common-header .brand-logo-wrap img,
.sticky-shell .common-header.site-header .brand-logo-wrap img,
.site-header.common-header .brand-logo-wrap img {
  width: 100% !important;
  height: 100% !important;
  max-width: 148px !important;
  max-height: 50px !important;
  object-fit: contain !important;
  object-position: left center !important;
  display: block !important;
  filter: drop-shadow(0 5px 9px rgba(13,27,42,.12)) !important;
}
.sticky-shell .site-header.common-header .brand-copy,
.sticky-shell .common-header.site-header .brand-copy,
.site-header.common-header .brand-copy,
.site-header.common-header .brand > span:not(.brand-logo-wrap) {
  display: none !important;
}
@media (max-width: 760px) {
  .sticky-shell .site-header.common-header,
  .sticky-shell .common-header.site-header,
  .site-header.common-header {
    width: min(94vw, 1420px) !important;
    max-width: calc(100% - 20px) !important;
    margin-top: 10px !important;
    padding: 10px 12px !important;
    min-height: 68px !important;
    height: 68px !important;
  }
  .sticky-shell .site-header.common-header .brand,
  .sticky-shell .common-header.site-header .brand,
  .site-header.common-header .brand {
    min-width: 132px !important;
    width: 132px !important;
    flex-basis: 132px !important;
    height: 46px !important;
  }
  .sticky-shell .site-header.common-header .brand-logo-wrap,
  .sticky-shell .common-header.site-header .brand-logo-wrap,
  .site-header.common-header .brand-logo-wrap {
    width: 126px !important;
    height: 42px !important;
  }
  .sticky-shell .site-header.common-header .brand-logo-wrap img,
  .sticky-shell .common-header.site-header .brand-logo-wrap img,
  .site-header.common-header .brand-logo-wrap img {
    max-width: 126px !important;
    max-height: 42px !important;
  }
}
/* Final home WhatsApp icon alignment: match inner-page button. */
.wa-float {
  right: 22px !important;
  bottom: 22px !important;
  min-width: 184px !important;
  height: 62px !important;
  padding: 0 20px 0 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #25D366, #128C7E) !important;
  color: #fff !important;
  border: 2px solid rgba(255,255,255,.72) !important;
  box-shadow: 0 18px 50px rgba(18,140,126,.38), 0 8px 22px rgba(15,23,42,.18) !important;
  text-decoration: none !important;
}
.wa-float .wa-icon {
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(255,255,255,.18) !important;
  border: 1px solid rgba(255,255,255,.32) !important;
  color: #fff !important;
  line-height: 1 !important;
}
.wa-float .wa-svg,
.wa-float .wa-icon svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
  margin: 0 !important;
}
.wa-float .wa-label {
  line-height: 1 !important;
  white-space: nowrap !important;
  font-size: 16px !important;
  font-weight: 950 !important;
}
@media (max-width: 760px) {
  .wa-float {
    min-width: 150px !important;
    height: 52px !important;
    right: 12px !important;
    bottom: 14px !important;
    padding: 0 14px 0 10px !important;
    font-size: 14px !important;
  }
  .wa-float .wa-icon {
    flex-basis: 30px !important;
    width: 30px !important;
    height: 30px !important;
  }
  .wa-float .wa-svg,
  .wa-float .wa-icon svg {
    width: 20px !important;
    height: 20px !important;
  }
  .wa-float .wa-label {
    font-size: 14px !important;
  }
}
/* Enquiry page: keep only the form, without the removed info/image panels. */
.enquiry-hero {
  grid-template-columns: minmax(0, 760px) !important;
  justify-content: center !important;
  text-align: center !important;
  padding-bottom: 28px !important;
}
.enquiry-hero .page-hero-copy {
  max-width: 760px !important;
  margin-inline: auto !important;
}
.enquiry-form-section {
  display: block !important;
  max-width: 760px !important;
  padding-top: 20px !important;
}
.enquiry-form-section .contact-form {
  width: 100% !important;
}
/* Final enquiry rail tab: vertical rectangle style. */
.social-rail a.enquiry,
.social-rail-link.enquiry {
  width: 44px !important;
  height: 132px !important;
  min-height: 132px !important;
  padding: 0 !important;
  border-radius: 0 10px 10px 0 !important;
  background: linear-gradient(180deg, #e8591a, #c94312) !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 16px 32px rgba(201,67,18,.28) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-left: 0 !important;
  transform: none !important;
}
.social-rail a.enquiry:hover,
.social-rail-link.enquiry:hover {
  transform: translateX(3px) !important;
}
.social-rail a.enquiry span,
.social-rail-link.enquiry span {
  display: block !important;
  max-width: none !important;
  width: 112px !important;
  white-space: nowrap !important;
  text-align: center !important;
  transform: rotate(-90deg) !important;
  transform-origin: center !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
@media (max-width: 760px) {
  .social-rail a.enquiry,
  .social-rail-link.enquiry {
    width: 40px !important;
    height: 112px !important;
    min-height: 112px !important;
    border-radius: 0 9px 9px 0 !important;
  }
  .social-rail a.enquiry span,
  .social-rail-link.enquiry span {
    width: 98px !important;
    font-size: 14px !important;
  }
}
/* Final enquiry rail visibility and launch animation. */
.social-rail a.enquiry,
.social-rail-link.enquiry {
  width: 46px !important;
  height: 156px !important;
  min-height: 156px !important;
  overflow: visible !important;
  border-radius: 0 10px 10px 0 !important;
  animation: enquiryTabPop 1.05s ease-in-out 3 .55s both !important;
}

.social-rail a.enquiry span,
.social-rail-link.enquiry span {
  width: 132px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: .06em !important;
}

.social-rail a.enquiry:hover,
.social-rail-link.enquiry:hover {
  animation-play-state: paused !important;
  transform: translateX(6px) !important;
}

@keyframes enquiryTabPop {
  0%, 100% { transform: translateX(0); }
  42% { transform: translateX(24px) scale(1.035); }
  70% { transform: translateX(14px) scale(1.015); }
}

@media (max-width: 760px) {
  .social-rail a.enquiry,
  .social-rail-link.enquiry {
    width: 44px !important;
    height: 148px !important;
    min-height: 148px !important;
  }

  .social-rail a.enquiry span,
  .social-rail-link.enquiry span {
    width: 126px !important;
    font-size: 13px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .social-rail a.enquiry,
  .social-rail-link.enquiry {
    animation: none !important;
  }
}
/* Event tracker pages */
.events-hero {
  grid-template-columns: 1fr .45fr;
}
.event-toolbar {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 22px;
}
.events-hero-card,
.admin-help-card {
  padding: 34px;
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(255,245,232,.66));
  border: 1px solid rgba(255,255,255,.88);
  box-shadow: 0 18px 50px rgba(15,23,42,.1);
}
.events-hero-card b {
  display: block;
  font-family: var(--display);
  font-size: 72px;
  line-height: 1;
  color: var(--orange);
}
.events-hero-card span,
.events-hero-card small {
  display: block;
  color: var(--muted);
  font-weight: 800;
  margin-top: 8px;
}
.event-status {
  min-height: 24px;
  color: var(--muted);
  font-weight: 800;
  margin-bottom: 18px;
}
.events-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}
.event-card {
  overflow: hidden;
  border-radius: 28px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(255,255,255,.88);
  box-shadow: 0 18px 50px rgba(15,23,42,.1);
}
.event-card-image {
  position: relative;
  aspect-ratio: 1.18 / 1;
  overflow: hidden;
  background: #fff4e8;
}
.event-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
}
.event-card:hover .event-card-image img {
  transform: scale(1.045);
}
.event-card-image span {
  position: absolute;
  left: 14px;
  top: 14px;
  padding: 8px 11px;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, var(--orange), var(--orange2));
  font-size: 11px;
  font-weight: 950;
  box-shadow: 0 12px 24px rgba(232,89,26,.26);
}
.event-card-body {
  padding: 20px;
}
.event-card h3 {
  margin: 0 0 10px;
  font-size: 22px;
  line-height: 1.18;
}
.event-card p {
  margin: 0 0 16px;
  color: var(--muted);
  line-height: 1.6;
  font-size: 14px;
}
.event-card dl {
  display: grid;
  gap: 10px;
  margin: 0;
}
.event-card dl div {
  padding-top: 10px;
  border-top: 1px solid rgba(15,23,42,.08);
}
.event-card dt {
  font-size: 10px;
  color: var(--orange);
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.event-card dd {
  margin: 4px 0 0;
  color: #334155;
  line-height: 1.45;
  font-size: 13px;
}
.event-admin-hero {
  grid-template-columns: 1fr .62fr;
}
.event-admin-grid {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 28px;
  align-items: start;
}
.event-admin-form h2,
.event-admin-side h2,
.admin-help-card h2 {
  margin-top: 0;
}
.event-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.event-admin-side {
  position: sticky;
  top: 120px;
}
@media (max-width: 1080px) {
  .events-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .events-hero,
  .event-admin-hero,
  .event-admin-grid { grid-template-columns: 1fr; }
  .event-admin-side { position: static; }
}
@media (max-width: 560px) {
  .events-grid,
  .event-form-row { grid-template-columns: 1fr; }
  .events-hero-card b { font-size: 56px; }
}
/* Event admin upload refinement */
.event-admin-grid.single {
  grid-template-columns: minmax(280px, 760px);
  justify-content: center;
}
.form-hint {
  display: block;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  font-weight: 700;
  margin-top: 4px;
}
.contact-form input[type="file"] {
  padding: 12px;
  background: #fff;
}
.about-hero-slider {
  position: relative;
  display: block;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255, 248, 239, .92), rgba(255, 255, 255, .68));
}

.about-hero-slider::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(7, 17, 31, 0) 52%, rgba(7, 17, 31, .28));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
}

.about-hero-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  transform: scale(1.035);
  animation: aboutHeroSlide 9s infinite;
}

.about-hero-slide:nth-child(1) {
  animation-delay: 0s;
}

.about-hero-slide:nth-child(2) {
  animation-delay: 3s;
}

.about-hero-slide:nth-child(3) {
  animation-delay: 6s;
}

@keyframes aboutHeroSlide {
  0%,
  30% {
    opacity: 1;
    transform: scale(1);
  }

  36%,
  100% {
    opacity: 0;
    transform: scale(1.035);
  }
}

.project-story-slider {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 26px;
  background: #fff4e8;
}

.project-story-slider img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.025);
  animation: projectStorySlide 6s infinite;
}

.project-story-slider img:nth-child(1) {
  animation-delay: 0s;
}

.project-story-slider img:nth-child(2) {
  animation-delay: 3s;
}

@keyframes projectStorySlide {
  0%,
  44% {
    opacity: 1;
    transform: scale(1);
  }

  50%,
  100% {
    opacity: 0;
    transform: scale(1.025);
  }
}

@media (prefers-reduced-motion: reduce) {
  .project-story-slider img {
    animation: none;
  }

  .project-story-slider img:first-child {
    opacity: 1;
    transform: none;
  }
}

.projects-major-hero-slider {
  position: relative;
  display: block;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255, 248, 239, 0.92), rgba(255, 255, 255, 0.74));
}

.projects-major-hero-slider img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 24px;
  opacity: 0;
  transform: scale(1.015);
  animation: projectsMajorHeroFade 6s infinite;
}

.projects-major-hero-slider img:nth-child(1) {
  animation-delay: 0s;
}

.projects-major-hero-slider img:nth-child(2) {
  animation-delay: 3s;
}

@keyframes projectsMajorHeroFade {
  0%,
  44% {
    opacity: 1;
    transform: scale(1);
  }

  50%,
  100% {
    opacity: 0;
    transform: scale(1.035);
  }
}

@media (prefers-reduced-motion: reduce) {
  .projects-major-hero-slider img {
    opacity: 0;
    transform: none;
    animation: none;
  }

  .projects-major-hero-slider img:first-child {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .about-hero-slide {
    animation: none;
  }

  .about-hero-slide:first-child {
    opacity: 1;
    transform: none;
  }
}
/* Locations dropdown shared by public headers. */
.nav-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.nav-dropdown-toggle {
  display: inline-flex;
  align-items: center;
  appearance: none;
  border: 0;
  cursor: pointer;
  font: inherit;
  color: inherit;
  background: transparent;
}

.nav-dropdown-toggle::after {
  content: "▾";
  margin-left: 6px;
  font-size: 10px;
  color: currentColor;
}

.nav-dropdown-menu {
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  z-index: 30;
  min-width: 190px;
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid rgba(232, 89, 26, 0.16);
  border-radius: 16px;
  background: rgba(255, 252, 247, 0.96);
  box-shadow: 0 22px 46px rgba(7, 26, 44, 0.16);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.nav-dropdown-menu a {
  display: block;
  padding: 10px 12px;
  border-radius: 11px;
  color: #25364b;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.nav-dropdown-menu a:hover {
  color: #e8591a;
  background: #fff0e7;
}

@media (max-width: 1080px) {
  .nav-menu.open .nav-dropdown {
    display: grid;
    width: 100%;
    gap: 8px;
  }

  .nav-menu.open .nav-dropdown-toggle {
    width: 100%;
    text-align: center;
  }

  .nav-menu.open .nav-dropdown-menu {
    position: static;
    min-width: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    opacity: 1;
    pointer-events: auto;
    transform: none;
    box-shadow: none;
    background: rgba(255, 247, 238, 0.82);
  }

  .nav-menu.open .nav-dropdown-menu a {
    text-align: center;
    white-space: normal;
  }
}

@media (max-width: 560px) {
  .nav-menu.open .nav-dropdown-menu {
    grid-template-columns: 1fr;
  }
}

/* Volunteer Hub: shared desktop and mobile header menu. */
.site-header .volunteer-hub {
  position: relative;
  margin-left: 5px;
}

.site-header .volunteer-hub-toggle {
  gap: 6px;
  border: 0;
  cursor: pointer;
  color: #fff !important;
}

.site-header .volunteer-hub-toggle::after {
  border-color: #fff;
}

.site-header .volunteer-hub-menu {
  right: 0;
  left: auto;
  min-width: 274px;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.62);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.76);
  box-shadow: 0 22px 50px rgba(13, 27, 42, 0.2), inset 0 1px rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(18px);
  transform: translate(0, 8px);
}

.site-header .volunteer-hub:hover .volunteer-hub-menu,
.site-header .volunteer-hub:focus-within .volunteer-hub-menu,
.site-header .volunteer-hub.is-open .volunteer-hub-menu {
  transform: translate(0, 0);
}

.site-header .volunteer-hub-menu a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 43px;
  padding: 10px 12px;
  border-radius: 12px;
  color: #1d2d40;
  font-size: 12px;
  font-weight: 800;
  white-space: normal;
}

.site-header .volunteer-hub-menu a + a {
  margin-top: 3px;
}

.site-header .volunteer-hub-menu a b {
  margin-left: auto;
  color: #e8591a;
  font-size: 18px;
  line-height: 1;
}

.site-header .volunteer-hub-menu a:hover,
.site-header .volunteer-hub-menu a:focus-visible {
  color: #c94312;
  background: linear-gradient(90deg, rgba(232, 89, 26, 0.12), rgba(246, 183, 60, 0.08));
}

@media (max-width: 1180px) {
  .nav-menu.open .volunteer-hub {
    display: grid;
    width: 100%;
    margin: 6px 0 0;
    gap: 7px;
  }

  .nav-menu.open .volunteer-hub-toggle {
    width: 100%;
    min-height: 48px;
    justify-content: flex-start;
    padding: 0 18px;
    border-radius: 16px;
  }

  .nav-menu.open .volunteer-hub-toggle::after {
    position: static;
    right: auto;
    width: 7px;
    height: 7px;
    margin-left: auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    content: "";
    transform: translateY(-2px) rotate(45deg);
  }

  .nav-menu.open .volunteer-hub-menu {
    position: static;
    display: none;
    width: 100%;
    min-width: 0;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    box-shadow: none;
  }

  .nav-menu.open .volunteer-hub.is-open .volunteer-hub-menu {
    display: grid;
  }

  .nav-menu.open .volunteer-hub-menu a {
    width: 100%;
    min-height: 46px;
    text-align: left;
  }
}

/* Shared mobile header action, injected by main.js on public pages. */
.mobile-header-donate {
  display: none;
}

@media (max-width: 1180px) {
  .common-header .mobile-header-donate {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    margin-left: auto;
    margin-right: 8px;
    padding: 0 15px;
    border: 1px solid rgba(255, 255, 255, 0.48);
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(145deg, #ff6d22, #e64a0b);
    box-shadow: 0 7px 16px rgba(201, 67, 18, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.45);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
  }

  .common-header .nav-toggle {
    margin-left: 0 !important;
  }
}

@media (max-width: 430px) {
  .common-header .mobile-header-donate {
    min-height: 36px;
    margin-right: 6px;
    padding-inline: 11px;
    font-size: 10px;
  }
}

/* Final click-only Locations menu. The logo stays clipped by its own wrapper. */
.site-header.common-header {
  overflow: visible !important;
}

.common-header .nav-dropdown-toggle {
  font-family: "DM Sans", sans-serif !important;
  font-size: 11.3px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  color: #526071 !important;
  padding: 8px 7px !important;
  border-radius: 8px !important;
  white-space: nowrap;
}

.common-header .nav-dropdown-toggle:hover,
.common-header .nav-dropdown-toggle.active,
.common-header .nav-dropdown.is-open .nav-dropdown-toggle {
  color: var(--bkf-orange, #e8591a) !important;
  background: rgba(232, 89, 26, 0.08) !important;
}

.nav-dropdown-toggle::after {
  display: none !important;
  content: none !important;
}

.nav-dropdown:not(.is-open) .nav-dropdown-menu {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate(-50%, 8px) !important;
}

.nav-dropdown.is-open .nav-dropdown-menu {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate(-50%, 0) !important;
}

@media (max-width: 1180px) {
  .common-header .nav-menu.open .nav-dropdown-toggle {
    padding: 12px 14px !important;
    font-size: 14px !important;
  }

  .nav-menu.open .nav-dropdown:not(.is-open) .nav-dropdown-menu {
    display: none !important;
  }

  .nav-menu.open .nav-dropdown.is-open .nav-dropdown-menu {
    display: grid !important;
    transform: none !important;
  }
}


/* Locations menu: one compact trigger with a click/keyboard submenu. */
.nav-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.nav-dropdown-toggle {
  appearance: none;
  border: 0;
  background: transparent;
  cursor: pointer;
  font: inherit;
  color: inherit;
}

.nav-dropdown-toggle::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-left: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 0.18s ease;
}

.nav-dropdown.is-open .nav-dropdown-toggle::after {
  transform: translateY(2px) rotate(225deg);
}

.nav-dropdown-menu {
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  z-index: 10040;
  display: grid;
  min-width: 190px;
  gap: 5px;
  padding: 9px;
  border: 1px solid rgba(232, 89, 26, 0.18);
  border-radius: 15px;
  background: rgba(255, 252, 247, 0.98);
  box-shadow: 0 22px 48px rgba(7, 26, 44, 0.17);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu,
.nav-dropdown.is-open .nav-dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.nav-dropdown-menu a {
  display: block;
  padding: 10px 12px;
  border-radius: 10px;
  color: #25364b;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}

.nav-dropdown-menu a:hover,
.nav-dropdown-menu a:focus-visible {
  color: #e8591a;
  background: #fff0e7;
}

@media (max-width: 1180px) {
  .nav-menu.open .nav-dropdown {
    display: grid;
    width: 100%;
    gap: 7px;
  }

  .nav-menu.open .nav-dropdown-toggle {
    width: 100%;
    justify-content: flex-start;
    text-align: left;
  }

  .nav-menu.open .nav-dropdown-menu {
    position: static;
    display: none;
    min-width: 0;
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    box-shadow: none;
    background: rgba(255, 247, 238, 0.86);
  }

  .nav-menu.open .nav-dropdown.is-open .nav-dropdown-menu {
    display: grid;
  }

  .nav-menu.open .nav-dropdown-menu a {
    width: auto;
    text-align: center;
    white-space: normal;
  }
}

@media (max-width: 560px) {
  .nav-menu.open .nav-dropdown-menu {
    grid-template-columns: 1fr;
  }
}

/* Final glass / 3D navigation override. */
.sticky-shell{isolation:isolate;padding:9px 0 10px!important;background:linear-gradient(115deg,rgba(255,253,249,.91),rgba(243,248,250,.88))!important;border-bottom:1px solid rgba(13,27,42,.07);box-shadow:0 15px 38px rgba(13,27,42,.10)!important;backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%)}
.sticky-shell::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 12% -60%,rgba(255,185,139,.45),transparent 40%),radial-gradient(circle at 91% 20%,rgba(170,222,235,.25),transparent 29%);pointer-events:none}
.sticky-shell .top-runner{position:absolute!important;top:0;left:0;width:100%!important;height:3px!important;margin:0!important;overflow:hidden;background:linear-gradient(90deg,#d9470d,#ff8b42 42%,#d9470d)!important;border:0!important}.sticky-shell .top-runner .runner-track{display:none!important}
.sticky-shell .site-header.common-header,.sticky-shell .common-header.site-header{position:relative!important;width:min(1380px,calc(100% - 34px))!important;min-height:72px!important;height:72px!important;margin:0 auto!important;padding:8px 13px 8px 17px!important;border-radius:22px!important;border:1px solid rgba(255,255,255,.78)!important;background:linear-gradient(120deg,rgba(255,255,255,.83),rgba(252,250,246,.69))!important;box-shadow:0 16px 32px rgba(13,27,42,.12),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(13,27,42,.035)!important;backdrop-filter:blur(22px) saturate(155%)!important;-webkit-backdrop-filter:blur(22px) saturate(155%)!important;transform:translateZ(0)}
.sticky-shell .site-header.common-header::before,.sticky-shell .common-header.site-header::before{content:"";position:absolute;pointer-events:none;inset:1px;border-radius:21px;background:linear-gradient(112deg,rgba(255,255,255,.48),transparent 29%,transparent 72%,rgba(255,255,255,.35))}
.sticky-shell .site-header.common-header .brand{position:relative;z-index:1}.sticky-shell .site-header.common-header .brand-logo-wrap{border-radius:15px!important;background:linear-gradient(135deg,#fff,#fff6ed)!important;border:1px solid rgba(232,89,26,.18)!important;box-shadow:0 9px 17px rgba(13,27,42,.11),inset 0 1px 0 #fff!important;transform:perspective(300px) rotateX(2deg) rotateY(-3deg);transition:transform .25s ease,box-shadow .25s ease}.sticky-shell .site-header.common-header .brand:hover .brand-logo-wrap{transform:perspective(300px) rotateX(0) rotateY(0) translateY(-2px);box-shadow:0 13px 22px rgba(13,27,42,.16),inset 0 1px 0 #fff!important}
.sticky-shell .site-header.common-header .nav-menu{position:relative;z-index:1;gap:3px!important}.sticky-shell .site-header.common-header .nav-link{position:relative;border:1px solid transparent!important;border-radius:11px!important;color:#4b5b6d!important;transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease!important}.sticky-shell .site-header.common-header .nav-link:hover{color:#d94d15!important;background:rgba(255,255,255,.66)!important;border-color:rgba(232,89,26,.14)!important;box-shadow:0 7px 13px rgba(13,27,42,.07),inset 0 1px 0 rgba(255,255,255,.8)!important;transform:translateY(-1px)}.sticky-shell .site-header.common-header .nav-link.active{color:#e8591a!important;background:linear-gradient(135deg,#fff4ec,#ffeadc)!important;border-color:rgba(232,89,26,.14)!important;box-shadow:inset 0 1px 0 #fff,0 6px 12px rgba(232,89,26,.09)!important}
.sticky-shell .site-header.common-header .nav-action{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.28)!important;box-shadow:0 8px 15px rgba(13,27,42,.14),inset 0 1px 0 rgba(255,255,255,.26)!important;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important}.sticky-shell .site-header.common-header .nav-action::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.25),transparent 42%);pointer-events:none}.sticky-shell .site-header.common-header .nav-action:hover{transform:translateY(-2px);filter:saturate(1.08);box-shadow:0 12px 20px rgba(13,27,42,.19),inset 0 1px 0 rgba(255,255,255,.3)!important}
@media(max-width:1180px){.sticky-shell{padding:5px 0 6px!important}.sticky-shell .site-header.common-header,.sticky-shell .common-header.site-header{width:calc(100% - 20px)!important;height:64px!important;min-height:64px!important;border-radius:18px!important}.sticky-shell .site-header.common-header .nav-menu.open{top:calc(100% + 10px)!important;border-radius:18px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(18px)!important}}

/* Restore the announcement ticker above the glass header. */
.sticky-shell{padding:0 0 10px!important}
.sticky-shell .top-runner{position:relative!important;top:auto!important;left:auto!important;height:28px!important;margin:0 0 9px!important;border:0!important;background:linear-gradient(90deg,#c84212,#f26b27 48%,#c84212)!important;overflow:hidden!important}
.sticky-shell .top-runner .runner-track{display:flex!important;align-items:center!important;height:28px!important;width:max-content!important;color:#fff!important;animation:runner 24s linear infinite!important}
.sticky-shell .top-runner .runner-track span{display:inline-flex!important;align-items:center!important;height:28px!important;color:#fff!important;font-size:9px!important;font-weight:800!important;letter-spacing:.075em!important;text-transform:uppercase!important;white-space:nowrap!important;padding:0 30px!important}
.sticky-shell .site-header.common-header,.sticky-shell .common-header.site-header{margin:0 auto!important}

/* Force the announcement ticker to keep moving. */
@keyframes bkfTickerLoop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.sticky-shell .top-runner .runner-track{animation:bkfTickerLoop 28s linear infinite!important;animation-play-state:running!important;will-change:transform}
.sticky-shell .top-runner:hover .runner-track{animation-play-state:running!important}

/* Premium trust ribbon: shared announcement runner. */
.sticky-shell .top-runner{
  position:relative!important;
  height:36px!important;
  margin:0 0 9px!important;
  background:linear-gradient(105deg,#081d31 0%,#103a58 31%,#e95519 58%,#ff7c30 74%,#0c2840 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),inset 0 -1px 0 rgba(0,0,0,.22),0 7px 18px rgba(13,27,42,.12)!important;
}
.sticky-shell .top-runner::before,
.sticky-shell .top-runner::after{content:"";position:absolute;z-index:1;top:0;bottom:0;width:70px;pointer-events:none}
.sticky-shell .top-runner::before{left:0;background:linear-gradient(90deg,rgba(8,29,49,.72),transparent)}
.sticky-shell .top-runner::after{right:0;background:linear-gradient(270deg,rgba(12,40,64,.72),transparent)}
.sticky-shell .top-runner .runner-track{height:36px!important;align-items:center!important;padding:0 12px!important}
.sticky-shell .top-runner .runner-track span{
  position:relative;
  height:24px!important;
  margin:0 5px!important;
  padding:0 20px 0 29px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.055))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 4px 8px rgba(0,0,0,.10)!important;
  font-family:var(--mono,monospace)!important;
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.095em!important;
  text-shadow:0 1px 1px rgba(0,0,0,.22)!important;
}
.sticky-shell .top-runner .runner-track span::before{
  content:"✦";
  position:absolute;
  left:10px;
  top:50%;
  transform:translateY(-51%);
  color:#ffd39a;
  font-size:10px;
  text-shadow:0 0 8px rgba(255,211,154,.55);
}
.sticky-shell .top-runner .runner-track span:nth-child(2n)::before{content:"✓";color:#baf7d2;font-size:11px}
.sticky-shell .top-runner .runner-track span:nth-child(3n)::before{content:"●";color:#fff0be;font-size:8px}
@media(max-width:760px){
  .sticky-shell .top-runner{height:33px!important;margin-bottom:7px!important}
  .sticky-shell .top-runner .runner-track{height:33px!important}
  .sticky-shell .top-runner .runner-track span{height:23px!important;font-size:8px!important;padding-right:17px!important}
}
/* ========================================================================== 
   BKF UNIVERSAL GLASS + DEPTH SYSTEM — visual-only; does not alter content or JS
   ========================================================================== */
:root{--bkf-glass-card:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,250,244,.77));--bkf-glass-border:rgba(255,255,255,.84);--bkf-depth:0 18px 42px rgba(13,27,42,.11),0 3px 8px rgba(13,27,42,.05);--bkf-depth-hover:0 28px 54px rgba(13,27,42,.17),0 8px 17px rgba(232,89,26,.12)}
main :is(.program-card,.project-card,.campaign-card,.impact-card,.info-card,.event-card,.service-card,.gallery-card,.member-card,.focus-card,.contact-card,.stat-card,.motion-box,.content-card,.feature-card,.team-card,.testimonial-card,.review-card){
  position:relative;isolation:isolate;border:1px solid var(--bkf-glass-border)!important;
  background:var(--bkf-glass-card)!important;
  box-shadow:var(--bkf-depth)!important;
  backdrop-filter:blur(10px) saturate(116%);-webkit-backdrop-filter:blur(10px) saturate(116%);
  transition:transform .32s cubic-bezier(.2,.78,.25,1),box-shadow .32s ease,border-color .32s ease,filter .32s ease!important;
}
main :is(.program-card,.project-card,.campaign-card,.impact-card,.info-card,.event-card,.service-card,.gallery-card,.member-card,.focus-card,.contact-card,.stat-card,.motion-box,.content-card,.feature-card,.team-card,.testimonial-card,.review-card)::before{
  content:"";position:absolute;z-index:-1;inset:1px;border-radius:inherit;pointer-events:none;
  background:linear-gradient(125deg,rgba(255,255,255,.56),transparent 26%,transparent 70%,rgba(255,193,145,.16));
}
main :is(.program-card,.project-card,.campaign-card,.impact-card,.info-card,.event-card,.service-card,.gallery-card,.member-card,.focus-card,.contact-card,.stat-card,.motion-box,.content-card,.feature-card,.team-card,.testimonial-card,.review-card):hover{
  z-index:3;border-color:rgba(232,89,26,.28)!important;box-shadow:var(--bkf-depth-hover)!important;
  transform:translateY(-7px) perspective(1000px) rotateX(1.4deg) rotateY(-.7deg)!important;
  filter:saturate(1.035);
}
main :is(.program-card,.project-card,.campaign-card,.impact-card,.info-card,.event-card,.service-card,.gallery-card,.member-card,.focus-card,.contact-card,.stat-card,.motion-box,.content-card,.feature-card,.team-card,.testimonial-card,.review-card):focus-within{
  z-index:4;border-color:rgba(232,89,26,.46)!important;box-shadow:0 0 0 4px rgba(232,89,26,.10),var(--bkf-depth-hover)!important;
}
main :is(.campaign-card,.project-card,.gallery-card) img{transition:transform .55s cubic-bezier(.2,.75,.25,1),filter .45s ease!important}
main :is(.campaign-card,.project-card,.gallery-card):hover img{transform:scale(1.035);filter:saturate(1.06) contrast(1.015)}
.widget-shell:not(.owned-review-slider){border:1px solid var(--bkf-glass-border)!important;background:linear-gradient(140deg,rgba(255,255,255,.82),rgba(246,250,252,.63))!important;box-shadow:0 20px 48px rgba(13,27,42,.09),inset 0 1px 0 rgba(255,255,255,.85)!important;backdrop-filter:blur(14px) saturate(125%);-webkit-backdrop-filter:blur(14px) saturate(125%)}
.page-hero,.hero-frame,.page-hero-copy{filter:drop-shadow(0 15px 28px rgba(13,27,42,.08))}
@media(prefers-reduced-motion:reduce){
  main :is(.program-card,.project-card,.campaign-card,.impact-card,.info-card,.event-card,.service-card,.gallery-card,.member-card,.focus-card,.contact-card,.stat-card,.motion-box,.content-card,.feature-card,.team-card,.testimonial-card,.review-card),
  main :is(.campaign-card,.project-card,.gallery-card) img{transition:none!important}
  main :is(.program-card,.project-card,.campaign-card,.impact-card,.info-card,.event-card,.service-card,.gallery-card,.member-card,.focus-card,.contact-card,.stat-card,.motion-box,.content-card,.feature-card,.team-card,.testimonial-card,.review-card):hover{transform:none!important}
}
@media(max-width:760px){
  main :is(.program-card,.project-card,.campaign-card,.impact-card,.info-card,.event-card,.service-card,.gallery-card,.member-card,.focus-card,.contact-card,.stat-card,.motion-box,.content-card,.feature-card,.team-card,.testimonial-card,.review-card):hover{transform:translateY(-3px)!important}
}

/* Shared clean header logo treatment across every page. */
.sticky-shell .site-header .brand-logo-wrap,.site-header.common-header .brand-logo-wrap{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;transform:none!important;overflow:visible!important;border-radius:0!important}
.sticky-shell .site-header .brand-logo-wrap img,.site-header.common-header .brand-logo-wrap img,.site-header.common-header .brand>img{visibility:visible!important;display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;filter:none!important}
.sticky-shell .site-header .brand:hover .brand-logo-wrap,.site-header.common-header .brand:hover .brand-logo-wrap{transform:translateY(-2px)!important;box-shadow:none!important}

/* Mobile navigation: open at the first item and keep primary actions last. */
@media(max-width:1180px){
  .sticky-shell,.sticky-shell .site-header.common-header,.site-header.common-header{transform:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .sticky-shell .site-header.common-header .nav-menu.open,.site-header.common-header .nav-menu.open{position:fixed!important;top:78px!important;right:12px!important;bottom:12px!important;left:12px!important;z-index:10050!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:3px!important;width:auto!important;height:auto!important;max-height:none!important;margin:0!important;padding:14px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;scroll-behavior:auto!important;background:rgba(255,255,255,.98)!important}
  .site-header.common-header .nav-menu.open>.nav-link,.site-header.common-header .nav-menu.open>.nav-dropdown{order:10}
  .site-header.common-header .nav-menu.open>.mobile-only-link{display:none!important}
  .site-header.common-header .nav-menu.open>.donate-action{order:30}
  .site-header.common-header .nav-menu.open>.portal-login{order:40}
  .site-header.common-header .nav-menu.open>.nav-action{flex:0 0 auto!important;width:100%!important;margin:5px 0 0!important;justify-content:center!important}
}

/* Compact floating WhatsApp control. */
.wa-float{width:auto!important;min-width:0!important;height:44px!important;min-height:44px!important;padding:0 13px 0 8px!important;gap:7px!important;font-size:13px!important;border-radius:999px!important}
.wa-float .wa-icon{flex:0 0 28px!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important}
.wa-float .wa-svg,.wa-float .wa-icon svg{width:18px!important;height:18px!important}
.wa-float .wa-label{display:block!important;font-size:13px!important;white-space:nowrap!important}
@media(max-width:760px){.wa-float{width:48px!important;min-width:48px!important;height:48px!important;min-height:48px!important;padding:0!important;gap:0!important;border-radius:50%!important;justify-content:center!important}.wa-float .wa-icon{flex:0 0 48px!important;width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;background:transparent!important}.wa-float .wa-svg,.wa-float .wa-icon svg{width:24px!important;height:24px!important}.wa-float .wa-label{display:none!important}}

/* Consistent, high-visibility keyboard focus without changing pointer layouts. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #e85d1f!important;outline-offset:3px!important}
