/* Dedicated Facebook panel — isolated from the rest of the site */
#facebook.facebook-connect,
#facebook.facebook-connect *{
  box-sizing:border-box;
}

#facebook.facebook-connect{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,520px)!important;
  gap:38px!important;
  align-items:center!important;
  width:min(1320px,calc(100% - 40px))!important;
  margin-inline:auto!important;
  padding-top:58px!important;
  padding-bottom:58px!important;
  overflow:visible!important;
}

#facebook .facebook-connect-copy{
  min-width:0!important;
  max-width:650px!important;
}

#facebook .facebook-connect-copy h2{
  margin:10px 0 14px!important;
  max-width:13ch!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(2.15rem,3.5vw,3.8rem)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
  color:#294b38!important;
}

#facebook .facebook-connect-copy>p{
  margin:0!important;
  max-width:580px!important;
  color:#607466!important;
  font-size:1rem!important;
  line-height:1.65!important;
}

#facebook .facebook-connect-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:22px!important;
}

#facebook .facebook-connect-copy>small{
  display:block!important;
  margin-top:11px!important;
  color:#78887d!important;
  font-size:.75rem!important;
}

#facebook .facebook-page-link{
  background:#4267b2!important;
  border-color:#4267b2!important;
  color:#fff!important;
}

#facebook .facebook-window{
  display:block!important;
  width:100%!important;
  max-width:520px!important;
  min-width:0!important;
  min-height:420px!important;
  overflow:hidden!important;
  border:1px solid rgba(42,73,52,.13)!important;
  border-radius:28px!important;
  background:#fffdf7!important;
  box-shadow:0 22px 58px rgba(42,73,52,.1)!important;
  contain:layout paint!important;
}

#facebook .facebook-window-top{
  width:100%!important;
  min-height:84px!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) 38px!important;
  align-items:center!important;
  gap:13px!important;
  padding:15px 17px!important;
  border-bottom:1px solid rgba(42,73,52,.1)!important;
  background:#fbfcf7!important;
}

#facebook .facebook-page-avatar{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  max-width:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  border-radius:17px!important;
  background:#4267b2!important;
  color:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:2rem!important;
  font-weight:900!important;
  line-height:1!important;
}

#facebook .facebook-page-avatar img{
  display:none!important;
  width:0!important;
  height:0!important;
  max-width:0!important;
  max-height:0!important;
}

#facebook .facebook-page-meta{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:26px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:7px!important;
}

#facebook .facebook-page-meta strong{
  min-width:0!important;
  overflow:hidden!important;
  color:#294b38!important;
  font-size:.98rem!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

#facebook .facebook-page-meta small{
  grid-column:2!important;
  color:#7b8b80!important;
  font-size:.72rem!important;
}

#facebook .facebook-badge{
  grid-row:1/3!important;
  width:26px!important;
  height:26px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  background:#4267b2!important;
  color:#fff!important;
  font-family:Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:900!important;
}

#facebook .facebook-window-top>a{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(42,73,52,.12)!important;
  border-radius:50%!important;
  color:#315b3e!important;
  text-decoration:none!important;
}

#facebook .facebook-frame-wrap{
  width:100%!important;
  min-height:336px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background:#f8faf4!important;
}

#facebook .facebook-frame-wrap.is-loaded{
  min-height:620px!important;
  display:grid!important;
  place-items:start center!important;
  background:#fff!important;
}

#facebook .facebook-frame-wrap iframe{
  display:block!important;
  width:100%!important;
  max-width:500px!important;
  height:620px!important;
  min-height:620px!important;
  margin:0 auto!important;
  border:0!important;
}

#facebook .facebook-placeholder{
  width:min(100%,380px)!important;
  max-width:380px!important;
  padding:32px 24px!important;
  text-align:center!important;
  color:#687b6f!important;
}

#facebook .facebook-placeholder-icon{
  width:58px!important;
  height:58px!important;
  max-width:58px!important;
  max-height:58px!important;
  margin:0 auto 14px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:18px!important;
  background:#4267b2!important;
  color:#fff!important;
  font-family:Arial,sans-serif!important;
  font-size:2rem!important;
  font-weight:900!important;
  line-height:1!important;
}

#facebook .facebook-placeholder strong{
  display:block!important;
  color:#294b38!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:1.4rem!important;
}

#facebook .facebook-placeholder p{
  margin:8px 0 0!important;
  font-size:.86rem!important;
  line-height:1.55!important;
}

@media(max-width:900px){
  #facebook.facebook-connect{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  #facebook .facebook-window{
    max-width:620px!important;
  }
}

@media(max-width:560px){
  #facebook.facebook-connect{
    width:min(100% - 24px,1320px)!important;
    padding-top:38px!important;
    padding-bottom:38px!important;
  }
  #facebook .facebook-connect-copy h2{
    font-size:2.15rem!important;
  }
  #facebook .facebook-connect-actions{
    flex-direction:column!important;
  }
  #facebook .facebook-connect-actions .btn{
    width:100%!important;
    justify-content:center!important;
  }
  #facebook .facebook-window{
    border-radius:22px!important;
  }
  #facebook .facebook-window-top{
    grid-template-columns:48px minmax(0,1fr) 36px!important;
    padding:13px!important;
  }
  #facebook .facebook-page-avatar{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
  }
  #facebook .facebook-frame-wrap.is-loaded,
  #facebook .facebook-frame-wrap iframe{
    min-height:560px!important;
    height:560px!important;
  }
}


/* Live Facebook Page Plugin */
#facebook .facebook-window-live{
  min-height:620px!important;
  padding:0!important;
  background:#fff!important;
}

#facebook .facebook-page-iframe{
  display:block!important;
  width:100%!important;
  max-width:500px!important;
  height:620px!important;
  min-height:620px!important;
  margin:0 auto!important;
  border:0!important;
  background:#fff!important;
}

@media(max-width:560px){
  #facebook .facebook-window-live{
    min-height:560px!important;
  }
  #facebook .facebook-page-iframe{
    width:100%!important;
    max-width:100%!important;
    height:560px!important;
    min-height:560px!important;
  }
}


/* Compact Facebook card: profile, cover and follower count without slow timeline */
#facebook .facebook-window-live{
  min-height:280px!important;
  height:auto!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  overflow:hidden!important;
}

#facebook .facebook-page-iframe{
  width:100%!important;
  max-width:500px!important;
  height:280px!important;
  min-height:280px!important;
  max-height:280px!important;
  margin:0 auto!important;
}

@media(max-width:560px){
  #facebook .facebook-window-live{
    min-height:260px!important;
  }
  #facebook .facebook-page-iframe{
    height:260px!important;
    min-height:260px!important;
    max-height:260px!important;
  }
}
