/* Lightbox exclusivamente para as galerias dos artigos Quinta do Palame. */
.qdp-single-article .qdp-single-gallery figure {
  cursor: zoom-in;
}

.qdp-single-article .qdp-single-gallery img,
.qdp-single-article .qdp-single-gallery figure:hover img {
  cursor: zoom-in;
  transform: none !important;
  transition: none !important;
  animation: none !important;
}

.qdp-single-article .qdp-single-gallery figure:focus-visible {
  outline: 2px solid #c99429;
  outline-offset: 3px;
}

body.qdp-article-lightbox-open {
  overflow: hidden !important;
}

.qdp-article-lightbox[hidden],
.qdp-article-lightbox .qdp-lb-control[hidden] {
  display: none !important;
}

.qdp-article-lightbox,
.qdp-article-lightbox * {
  box-sizing: border-box;
}

.qdp-article-lightbox {
  position: fixed;
  inset: 0;
  z-index: 2147483646;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  height: 100dvh;
  margin: 0;
  padding: 0;
  background: rgba(0, 0, 0, 0.96);
  border: none;
  border-radius: 0;
  opacity: 1;
  transform: none;
  transition: none !important;
  animation: none !important;
}

.qdp-article-lightbox .qdp-lb-stage {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 66px 82px 44px;
}

.qdp-article-lightbox .qdp-lb-image {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  margin: 0;
  padding: 0;
  object-fit: contain;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  opacity: 1;
  transform: none;
  transition: none !important;
  animation: none !important;
}

/* Botoes transparentes; apenas as linhas brancas sao visiveis. */
.qdp-article-lightbox .qdp-lb-control,
.qdp-article-lightbox .qdp-lb-control:hover,
.qdp-article-lightbox .qdp-lb-control:focus,
.qdp-article-lightbox .qdp-lb-control:active {
  position: absolute;
  z-index: 2;
  display: block;
  width: 48px;
  min-width: 0;
  height: 48px;
  min-height: 0;
  margin: 0;
  padding: 0;
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 !important;
  color: #fff !important;
  box-shadow: none !important;
  outline: none;
  opacity: 1;
  cursor: pointer;
  transform: none !important;
  transition: none !important;
  animation: none !important;
  -webkit-tap-highlight-color: transparent;
}

.qdp-article-lightbox .qdp-lb-control:focus-visible {
  outline: 1px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
}

/* Cruz simples: duas linhas brancas, sem fundo. */
.qdp-article-lightbox .qdp-lb-close {
  top: max(16px, env(safe-area-inset-top));
  right: max(16px, env(safe-area-inset-right));
}

.qdp-article-lightbox .qdp-lb-close::before,
.qdp-article-lightbox .qdp-lb-close::after {
  content: "";
  position: absolute;
  top: 23px;
  left: 13px;
  width: 22px;
  height: 1.5px;
  background: #fff;
}

.qdp-article-lightbox .qdp-lb-close::before {
  transform: rotate(45deg);
}

.qdp-article-lightbox .qdp-lb-close::after {
  transform: rotate(-45deg);
}

/* Setas desenhadas com duas linhas, sem icones nem backgrounds. */
.qdp-article-lightbox .qdp-lb-prev,
.qdp-article-lightbox .qdp-lb-next {
  /* Centraliza sem margem negativa: no :hover, Astra repoe margin: 0. */
  top: calc(50% - 24px);
  margin-top: 0;
}

.qdp-article-lightbox .qdp-lb-prev {
  left: max(12px, env(safe-area-inset-left));
}

.qdp-article-lightbox .qdp-lb-next {
  right: max(12px, env(safe-area-inset-right));
}

.qdp-article-lightbox .qdp-lb-prev::before,
.qdp-article-lightbox .qdp-lb-next::before {
  content: "";
  position: absolute;
  top: 18px;
  width: 15px;
  height: 15px;
  border-top: 1.5px solid #fff;
}

.qdp-article-lightbox .qdp-lb-prev::before {
  left: 19px;
  border-left: 1.5px solid #fff;
  transform: rotate(-45deg);
}

.qdp-article-lightbox .qdp-lb-next::before {
  right: 19px;
  border-right: 1.5px solid #fff;
  transform: rotate(45deg);
}

/* Tablet: imagem ajustada sem cortar. */
@media (max-width: 1024px) {
  .qdp-article-lightbox .qdp-lb-stage {
    padding: 68px 60px 52px;
  }

  .qdp-article-lightbox .qdp-lb-prev {
    left: max(2px, env(safe-area-inset-left));
  }

  .qdp-article-lightbox .qdp-lb-next {
    right: max(2px, env(safe-area-inset-right));
  }
}

/* Mobile: fotografia grande e setas discretas por baixo. */
@media (max-width: 767px) {
  .qdp-article-lightbox .qdp-lb-stage {
    padding: 68px 14px 76px;
  }

  .qdp-article-lightbox .qdp-lb-prev,
  .qdp-article-lightbox .qdp-lb-next {
    top: auto;
    bottom: max(12px, env(safe-area-inset-bottom));
    margin-top: 0;
  }

  .qdp-article-lightbox .qdp-lb-prev {
    left: calc(50% - 78px);
  }

  .qdp-article-lightbox .qdp-lb-next {
    right: calc(50% - 78px);
  }
}
