.Gal_shuf_ah_section {
  position: relative;
  width: 100%;
  height: 100vh;
  background-color: #080a08;
  overflow: hidden;
}

.Gal_shuf_ah_stage {
  position: relative;
  width: 100%;
  max-width: 100%;
  height: 100vh;
  container-type: inline-size;
  background-color: #080a08;
  overflow: hidden;
  user-select: none;
}

.Gal_shuf_ah_header {
  position: absolute;
  left: 50%;
  top: 33.8%;
  transform: translate3d(-50%, 0, 0);
  text-align: center;
  z-index: 18;
  width: 58cqw;
  will-change: top, transform;
}

.Gal_shuf_ah_title {
  position: relative;
  display: inline-block;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 4.55cqw;
  font-weight: 600;
  color: #e4e6e4;
  letter-spacing: -0.01em;
  line-height: 1.1;
  white-space: nowrap;
}

.Gal_shuf_ah_title_accent {
  font-style: italic;
  font-weight: 600;
  color: #d27b25;
  margin-left: 0.3cqw;
}

.Gal_shuf_ah_sparkle {
  position: absolute;
  right: -2.45cqw;
  top: -0.35cqw;
  width: 1.65cqw;
  height: 1.65cqw;
  fill: #ffffff;
}

.Gal_shuf_ah_subtitle {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 2.02cqw;
  font-weight: 400;
  color: #f0f0f0;
  letter-spacing: 0.005em;
  margin-top: 1.65cqw;
  white-space: nowrap;
}

.Gal_shuf_ah_tabs_wrap {
  position: absolute;
  left: 50%;
  top: 59.6%;
  transform: translate3d(-50%, 0, 0);
  width: 55.2cqw;
  height: 4.75cqw;
  background-color: #f4efe1;
  border-radius: 999px;
  padding: 0.38cqw;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.7cqw;
  z-index: 25;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
  will-change: top, transform, opacity;
}

.Gal_shuf_ah_tab_btn {
  border: none;
  outline: none;
  background-color: #ffffff;
  color: #1f2e1d;
  font-family: "Inter", sans-serif;
  font-size: 1.22cqw;
  font-weight: 400;
  border-radius: 999px;
  cursor: pointer;
  transition:
    background-color 0.3s ease,
    color 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.Gal_shuf_ah_tab_btn.Gal_shuf_ah_active {
  background-color: #d88326;
  color: #1b1b1b;
  font-weight: 400;
}

.Gal_shuf_ah_cards_grid {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.Gal_shuf_ah_card {
  position: absolute;
  background-color: #f4f2e6;
  padding: 0.46cqw;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.55);
  will-change: left, top, width, height, transform;
  transform-origin: center center;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform-style: preserve-3d;
  pointer-events: auto;
}

.Gal_shuf_ah_card_polaroid_bottom {
  padding: 0.46cqw 0.46cqw 3.85cqw 0.46cqw;
}

.Gal_shuf_ah_card_polaroid_top {
  padding: 3.85cqw 0.46cqw 0.46cqw 0.46cqw;
}

.Gal_shuf_ah_card_podium {
  padding: 0.52cqw 0.52cqw 0.95cqw 0.52cqw;
}

.Gal_shuf_ah_photo_box {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  background-color: #181c18;
}

.Gal_shuf_ah_img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;
  transform: scale(1.04);
  transition:
    opacity 0.4s ease,
    transform 0.5s ease;
  pointer-events: none;
}

.Gal_shuf_ah_img.Gal_shuf_ah_img_active {
  opacity: 1;
  transform: scale(1);
}

.Gal_shuf_ah_card_1 {
  left: -1.6%;
  top: 16.5%;
  width: 19.6%;
  height: 39.5%;
  transform: rotate(11.5deg);
  z-index: 4;
}

.Gal_shuf_ah_card_2 {
  left: 6.8%;
  top: 52%;
  width: 20.5%;
  height: 31.2%;
  transform: rotate(-8.5deg);
  z-index: 6;
}

.Gal_shuf_ah_card_3 {
  left: -1.2%;
  top: 80.5%;
  width: 17.5%;
  height: 24%;
  transform: rotate(-5.5deg);
  z-index: 3;
}

.Gal_shuf_ah_card_4 {
  left: 25.4%;
  top: 79.2%;
  width: 27.2%;
  height: 25.5%;
  transform: rotate(12deg);
  z-index: 7;
}

.Gal_shuf_ah_card_5 {
  left: 56.8%;
  top: 75.8%;
  width: 20.6%;
  height: 29.5%;
  transform: rotate(-9.5deg);
  z-index: 8;
}

.Gal_shuf_ah_card_6 {
  left: 76.8%;
  top: 51.2%;
  width: 24.5%;
  height: 41.5%;
  transform: rotate(-1.2deg);
  z-index: 4;
}

.Gal_shuf_ah_card_7 {
  left: 81.6%;
  top: 18.2%;
  width: 19.6%;
  height: 31.8%;
  transform: rotate(8.5deg);
  z-index: 9;
}

.Gal_shuf_ah_doily {
  position: absolute;
  left: 14.6%;
  top: 24%;
  width: 9.8%;
  height: 16.55%;
  transform: rotate(0deg);
  z-index: 12;
  pointer-events: none;
  will-change: left, top, width, height, transform;
  filter: drop-shadow(0 8px 18px rgba(0, 0, 0, 0.48));
}

.Gal_shuf_ah_doily svg {
  width: 100%;
  height: 100%;
  display: block;
}

.Gal_shuf_ah_stamp_note {
  position: absolute;
  left: 86.2%;
  top: 88.5%;
  width: 14.5%;
  height: 16%;
  transform: rotate(-2deg);
  z-index: 2;
  background:
    radial-gradient(
      circle at 30% 35%,
      rgba(255, 252, 242, 0.55) 0%,
      rgba(226, 214, 188, 0.4) 55%,
      rgba(206, 191, 160, 0.65) 100%
    ),
    #ebe2cc;
  padding: 1.1cqw 1.25cqw;
  pointer-events: none;
  will-change: left, top, width, height, transform;
  -webkit-mask-image:
    radial-gradient(circle at 0 5px, transparent 3px, #000 3.3px),
    radial-gradient(circle at 100% 5px, transparent 3px, #000 3.3px),
    radial-gradient(circle at 5px 0, transparent 3px, #000 3.3px),
    radial-gradient(circle at 5px 100%, transparent 3px, #000 3.3px);
  -webkit-mask-size:
    100% 10px,
    100% 10px,
    10px 100%,
    10px 100%;
  -webkit-mask-composite: destination-in;
  mask-image:
    radial-gradient(circle at 0 5px, transparent 3px, #000 3.3px),
    radial-gradient(circle at 100% 5px, transparent 3px, #000 3.3px),
    radial-gradient(circle at 5px 0, transparent 3px, #000 3.3px),
    radial-gradient(circle at 5px 100%, transparent 3px, #000 3.3px);
  mask-size:
    100% 10px,
    100% 10px,
    10px 100%,
    10px 100%;
  mask-composite: intersect;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4);
}

.Gal_shuf_ah_stamp_text {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-style: italic;
  font-weight: 600;
  font-size: 0.96cqw;
  line-height: 1.38;
  color: rgba(88, 84, 76, 0.78);
}

.Gal_shuf_ah_footer_wrap {
  position: absolute;
  left: 54.4%;
  top: 83.2%;
  width: 20.2cqw;
  z-index: 10;
  opacity: 0;
  pointer-events: none;
  will-change: opacity, transform;
}

.Gal_shuf_ah_footer_copy {
  display: none;
  font-family: "Inter", sans-serif;
  font-size: 0.95cqw;
  font-weight: 300;
  line-height: 1.46;
  color: rgba(212, 216, 212, 0.88);
}

.Gal_shuf_ah_footer_copy.Gal_shuf_ah_footer_active {
  display: block;
}

@media (max-width: 768px) {
  .Gal_shuf_ah_section {
    height: auto;
    min-height: 100vh;
    overflow: visible;
  }

  .Gal_shuf_ah_stage {
    height: auto;
    padding: 40px 16px 48px;
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow: visible;
  }

  .Gal_shuf_ah_header {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    width: 100%;
    margin-bottom: 22px;
  }

  .Gal_shuf_ah_title {
    font-size: clamp(26px, 7.2vw, 34px);
  }

  .Gal_shuf_ah_sparkle {
    right: -18px;
    top: -4px;
    width: 14px;
    height: 14px;
  }

  .Gal_shuf_ah_subtitle {
    font-size: clamp(15px, 4.2vw, 18px);
    margin-top: 10px;
  }

  .Gal_shuf_ah_tabs_wrap {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    width: 100%;
    max-width: 420px;
    height: 46px;
    padding: 4px;
    gap: 6px;
    margin-bottom: 28px;
  }

  .Gal_shuf_ah_tab_btn {
    font-size: 14px;
  }

  .Gal_shuf_ah_cards_grid {
    position: relative !important;
    inset: auto !important;
    width: 100%;
    height: auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 190px;
    gap: 14px;
    pointer-events: auto;
  }

  .Gal_shuf_ah_card,
  .Gal_shuf_ah_card_polaroid_bottom,
  .Gal_shuf_ah_card_polaroid_top,
  .Gal_shuf_ah_card_podium {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    padding: 6px !important;
  }

  .Gal_shuf_ah_card_3 {
    grid-column: span 2;
    height: 210px !important;
  }

  .Gal_shuf_ah_doily,
  .Gal_shuf_ah_stamp_note {
    display: none !important;
  }

  .Gal_shuf_ah_footer_wrap {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    opacity: 1 !important;
    width: 100%;
    margin-top: 24px;
    text-align: center;
  }

  .Gal_shuf_ah_footer_copy {
    font-size: 14px;
    line-height: 1.55;
  }
}
