/* Todos os heroes do plugin ocupam a viewport; apenas o conteúdo interno permanece boxed. */
.d1im-page-hero,
.d1im-shortcode-hero .d1im-archive-hero {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* A opção “Ocultar título” do Elementor deve atingir apenas o título nativo. */
body.elementor-page-title-hidden .d1im-page-hero,
body.elementor-page-title-hidden .d1im-shortcode-hero .d1im-archive-hero {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.elementor-page-title-hidden .d1im-page-hero h1,
body.elementor-page-title-hidden .d1im-shortcode-hero .d1im-archive-hero h1 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* O archive nativo já nasce fora de containers, mas recebe esta proteção. */
.d1im-archive-page .d1im-archive > .d1im-archive-hero {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@supports (width: 100dvw) {
  .d1im-page-hero,
  .d1im-shortcode-hero .d1im-archive-hero {
    width: 100dvw !important;
    margin-left: calc(50% - 50dvw) !important;
    margin-right: calc(50% - 50dvw) !important;
  }
}

@media (max-width: 767px) {
  .d1im-page-hero-inner,
  .d1im-archive-hero-inner {
    width: calc(100% - 28px) !important;
  }
}
