/* BySantos App — iframe embed (não altera menu/rodapé do tema) */
.bysantos-app-wrap {
  margin: 0;
  padding: 0;
  line-height: 0;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  display: block !important;
  clear: both;
  position: relative;
}

.bysantos-app-iframe {
  background: #ffffff;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 600px;
  border: none !important;
  overflow: hidden !important;
  vertical-align: top;
}

.bysantos-app-error {
  padding: 1rem;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 8px;
  color: #991b1b;
}

.bysantos-app-clear {
  clear: both !important;
  height: 0 !important;
  width: 100% !important;
  line-height: 0 !important;
  font-size: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Página WP — scroll principal do navegador */
html:has(.bysantos-app-wrap),
body:has(.bysantos-app-wrap) {
  overflow: auto !important;
  overflow-x: hidden !important;
  height: auto !important;
  max-height: none !important;
}

body:has(.bysantos-app-wrap) #page,
body:has(.bysantos-app-wrap) .site {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
}

/* Oculta header duplicado (Hello / Astra) quando Elementor header existe */
body:has(.bysantos-app-wrap):has(.elementor-location-header) #site-header.site-header,
body:has(.bysantos-app-wrap):has(.elementor-location-header) header.site-header:not(.elementor-location-header),
body:has(.bysantos-app-wrap):has(.elementor-location-header) .ast-primary-header-bar,
body:has(.bysantos-app-wrap):has(.elementor-location-header) #ast-desktop-header,
body:has(.bysantos-app-wrap):has(.elementor-location-header) .main-header-bar-wrap,
body:has(.bysantos-app-wrap):has(.elementor-location-header) .site-header-primary-section-left,
body:has(.bysantos-app-wrap):has(.elementor-location-header) .ast-site-identity,
body:has(.bysantos-app-wrap):has(.elementor-location-header) #masthead:not(.elementor-location-header) {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
}

/* Evita scroll duplo / layout pulando */
body:has(.bysantos-app-wrap) .bysantos-app-iframe {
  transition: none !important;
}

/* Menu / header do site — sempre visível */
body:has(.bysantos-app-wrap) .elementor-location-header,
body:has(.bysantos-app-wrap) header.site-header,
body:has(.bysantos-app-wrap) #masthead,
body:has(.bysantos-app-wrap) .site-header {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  z-index: 200 !important;
  height: auto !important;
  min-height: unset !important;
  max-height: none !important;
  overflow: visible !important;
}

/* Área de conteúdo — sem scroll interno preso */
body:has(.bysantos-app-wrap) .elementor-location-single,
body:has(.bysantos-app-wrap) .site-content,
body:has(.bysantos-app-wrap) #content,
body:has(.bysantos-app-wrap) .entry-content,
body:has(.bysantos-app-wrap) main#primary,
body:has(.bysantos-app-wrap) #main {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  min-height: 0 !important;
}

.entry-content:has(.bysantos-app-wrap),
.elementor-widget-container:has(.bysantos-app-wrap) {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}

/* Rodapé — sempre abaixo do iframe */
body:has(.bysantos-app-wrap) .elementor-location-footer,
body:has(.bysantos-app-wrap) .site-footer,
body:has(.bysantos-app-wrap) footer:not(.bysantos-app-wrap footer) {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  clear: both !important;
  margin-top: 0 !important;
  transform: none !important;
  z-index: 10 !important;
  height: auto !important;
  min-height: unset !important;
  max-height: none !important;
  overflow: visible !important;
}
