/* ===== BODY BACKGROUND ===== */
body.fp-specials-page {
  min-height: 100vh;
  margin: 0;
  background: linear-gradient(rgba(0,0,0,0.65), rgba(0,0,0,0.65)),
              url("/images/newbackground.jpg") center center / cover no-repeat fixed !important;
  background-blend-mode: overlay !important;
  color: #fff;
}

/* ===== SPECIALS GRID (multi image case) ===== */
    .fp-specials-page .fp-specials .specials-grid.multi {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 2rem;
    }
    .fp-specials-page .fp-specials .specials-grid.multi .special-item {
      width: 550px;
      height: 550px;
      border: 2px solid #00ffff;
      border-radius: 8px;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 0 20px #00ffff,0 0 40px #ff00ff,0 0 60px #ff0000;
    }
    .fp-specials-page .fp-specials .specials-grid.multi .special-item img {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
    }
    .fp-specials-page .fp-specials .specials-grid.multi .special-item img.landscape {
      width: 100%; height: auto;
    }
    .fp-specials-page .fp-specials .specials-grid.multi .special-item img.portrait {
      width: auto; height: 100%;
    }
/* ===== SPECIALS GRID (single image case) ===== */
.fp-specials-page .fp-specials .specials-grid.single {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem;
}
.fp-specials-page .fp-specials .specials-grid.single .special-item {
  display: inline-block;
  background: transparent;
  border: 2px solid #00ffff; /* cyan edge */
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 
    0 0 20px #00ffff,   /* cyan glow */
    0 0 40px #ff00ff,   /* purple glow */
    0 0 60px #ff0000;   /* red glow */
}
.fp-specials-page .fp-specials .specials-grid.single .special-item img {
  display: block;
  width: auto;
  height: auto;
  max-width: 90vw;
  max-height: 70vh;
}

  
/* ===== LIGHTBOX BACKGROUND (match page, contained) ===== */
body.fp-specials-page .lightbox {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background: linear-gradient(rgba(0,0,0,0.65), rgba(0,0,0,0.65)),
              url("/images/newbackground.jpg") center center no-repeat;
  background-size: contain;       /* contained instead of cover/repeat */
  background-blend-mode: overlay; /* same overlay as page */
  justify-content: center;
  align-items: center;
}

.lightbox-content img {
  max-width: 75vw;
  max-height: 70vh;
  border: 2px solid #00ffff;
  border-radius: 8px;
  box-shadow: 0 0 20px #00ffff,0 0 40px #ff00ff,0 0 60px #ff0000;
}

.lightbox-close {
  position: absolute;
  top: 10px; right: 20px;
  font-size: 2rem;
  color: #fff;
  cursor: pointer;
  text-shadow: 0 0 10px #ff00ff,0 0 20px #00ffff;
}

.lightbox-prev,
.lightbox-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 2.5rem;
  color: #fff;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0.5rem 1rem;
  text-shadow: 0 0 15px #00ffff,0 0 30px #ff00ff;
}
.lightbox-prev { left: 20px; }
.lightbox-next { right: 20px; }

/* ===== IMAGE DICTATES SIZE ===== */
.fp-specials-page .fp-specials .specials-grid.single .special-item {
  background: transparent;
  border: none;
  box-shadow: none;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: visible;
}

/* Specials Grid */
.fp-specials-page .fp-specials .specials-grid.multi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2rem;
}
.fp-specials-page .fp-specials .specials-grid.multi .special-item {
  width: 550px; height: 550px;
  border: 2px solid #00ffff;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 20px #00ffff,0 0 40px #ff00ff,0 0 60px #ff0000;
}
.fp-specials-page .fp-specials .specials-grid.multi .special-item img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.fp-specials-page .fp-specials .specials-grid.single {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2rem;
}
.fp-specials-page .fp-specials .specials-grid.single .special-item {
  display: inline-block;
  border: 2px solid #00ffff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 0 20px #00ffff,0 0 40px #ff00ff,0 0 60px #ff0000;
}
.fp-specials-page .fp-specials .specials-grid.single .special-item img {
  display: block;
  max-width: 90vw;
  max-height: 70vh;
}

/* ===== SPECIALS PAGE HERO FINAL FIX ===== */
body.fp-specials-page section#hero {
  margin-top: 100px !important; /* match header height */
}
