/* Escoteiros Granja Hub V5.16 — hotfix mobile e navegação
   Corrige empilhamento do menu público e scroll real da sidebar administrativa. */
:root{--v516-safe-top:env(safe-area-inset-top,0px);--v516-safe-bottom:env(safe-area-inset-bottom,0px)}

/* ADMIN: sidebar estruturalmente rolável, inclusive Safari/iOS */
.hub-sidebar.brand-sidebar,.hub-sidebar{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.hub-sidebar .sidebar-header{flex:0 0 auto!important}
.hub-sidebar .sidebar-nav{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior-y:contain!important;
  touch-action:pan-y!important;
  scrollbar-gutter:stable;
  padding-bottom:18px!important;
}
.hub-sidebar .sidebar-footer{flex:0 0 auto!important;margin-top:0!important}
.hub-sidebar .sidebar-nav::-webkit-scrollbar{width:7px}
.hub-sidebar .sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.23);border-radius:99px}
.hub-sidebar .sidebar-nav::-webkit-scrollbar-track{background:transparent}

@media(max-width:1024px){
  .hub-sidebar.brand-sidebar,.hub-sidebar{
    height:100dvh!important;
    max-height:100dvh!important;
    padding-bottom:max(10px,var(--v516-safe-bottom))!important;
  }
  .hub-sidebar .sidebar-header{padding-top:4px!important}
  .hub-sidebar .sidebar-nav{padding-bottom:calc(22px + var(--v516-safe-bottom))!important}
  .hub-sidebar .sidebar-footer{padding-bottom:max(12px,var(--v516-safe-bottom))!important}
}

/* SITE: o menu móvel sempre fica acima de Hero, vídeos, faixas e conteúdos. */
@media(max-width:1050px){
  body.public-site .public-nav{
    z-index:10000!important;
    overflow:visible!important;
    isolation:isolate;
  }
  body.public-site.mobile-menu-open .public-nav{box-shadow:0 12px 30px rgba(4,35,24,.16)!important}
  body.public-site.mobile-menu-open .scout-main-menu{
    z-index:10001!important;
    isolation:isolate;
    background:#fff!important;
    opacity:1!important;
    visibility:visible!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
  }
  body.public-site.mobile-menu-open .scout-main-menu:before{
    content:"";
    position:fixed;
    inset:0;
    top:74px;
    background:#fff;
    z-index:-1;
    pointer-events:none;
  }
  body.public-site.mobile-menu-open .mega-item,
  body.public-site.mobile-menu-open .mega-trigger,
  body.public-site.mobile-menu-open .mega-panel,
  body.public-site.mobile-menu-open .mega-columns{position:relative;z-index:2}
  body.public-site.mobile-menu-open .scout-hero,
  body.public-site.mobile-menu-open .section-hero,
  body.public-site.mobile-menu-open .branch-ribbon{pointer-events:none}
}
@media(max-width:700px){
  body.public-site.mobile-menu-open .scout-main-menu:before{top:68px}
}

/* Logo/imagem do cabeçalho: preserva proporção de qualquer identidade enviada pelo CMS. */
.public-logo img{
  object-fit:contain!important;
  object-position:center!important;
}
.cms-header-logo-preview{
  display:flex;align-items:center;gap:16px;padding:15px;border:1px solid #dfe8e2;border-radius:18px;background:linear-gradient(135deg,#f7fbf8,#fff);
}
.cms-header-logo-preview img{width:86px;height:86px;object-fit:contain;border-radius:18px;background:#fff;padding:6px;border:1px solid #e4ebe6;box-shadow:0 10px 28px rgba(6,61,42,.08)}
.cms-header-logo-preview strong{display:block;color:#063d2a;margin-bottom:4px}.cms-header-logo-preview small{color:#68786f;line-height:1.5}
@media(max-width:700px){.cms-header-logo-preview{align-items:flex-start}.cms-header-logo-preview img{width:70px;height:70px}}
