/* ============================================================
   PHOTO — gallery section. Figma: photo (top:2007 height:895)
   ============================================================ */
.photo {
  position: relative;
  width: 1728px;
  height: 1019px;
  background: var(--color-bg);
  overflow: hidden;
}
.photo__watermark {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  font-family: var(--font-watermark);
  font-size: 270px;
  color: rgba(255, 255, 255, 0.05);
  white-space: nowrap;
}
.photo__heading {
  position: absolute;
  left: 359px;
  top: 131px;
  width: 808px;
  height: 159px;
}
.photo__heading-mark {
  position: absolute;
  left: 0;
  top: 0;
  width: 179px;
  height: 159px;
}
.photo__heading-text {
  position: absolute;
  left: 269px;
  top: 56px;
  width: 539px;
  font-size: 30px;
  line-height: 45px;
  color: var(--color-white);
}
.photo__heading-rule {
  position: absolute;
  left: 180px;
  top: 79px;
  width: 64px;
  height: 2px;
  background: var(--color-white);
}

/* centered carousel: active card 640x440, neighbours scaled to
   0.785 (=502/640) which lands them exactly at the original
   side-card positions (-30 / 1256, top 430). */
.photo__slider-wrap {
  position: absolute;
  left: 0;
  top: 455px;
  width: 1728px;
  height: 440px;
  overflow: hidden;
}
.photo__slider-wrap .tns-ovh { height: 440px; overflow: hidden; }
.photo__card {
  width: 640px;
  height: 440px;
}
.photo__card-inner {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  overflow: hidden;
  transform: scale(0.785);
  transition: transform 0.5s ease;
}
.photo__card.is-center .photo__card-inner { transform: scale(1); }
.photo__card-inner img { width: 100%; height: 100%; object-fit: cover; }

.photo__toolbar {
  position: absolute;
  left: 627px;
  top: 338px;
  width: 474px;
  height: 68px;
  background: #2c2722;
  border-radius: 10px;
  display: flex;
  align-items: center;
}
.photo__toolbar .btn {
  position: absolute;
  left: 4px;
  top: 4px;
  width: 182px;
  height: 60px;
}
.photo__toolbar-link {
  position: absolute;
  left: 238px;
  top: 0;
  width: 201px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: var(--color-white);
  white-space: nowrap;
}

.photo__nav {
  position: absolute;
  left: 50%;
  top: 926px;
  width: 304.39px;
  height: 31px;
  transform: translateX(-50%);
  z-index: 3;
}
.photo__arrows { position: absolute; inset: 0; }
.photo__arrow {
  position: absolute;
  top: 0;
  width: 56px;
  height: 31px;
  overflow: hidden;
  cursor: pointer;
}
.photo__arrow img {
  position: absolute;
  top: 0;
  width: 304.39px;
  height: 31px;
  max-width: none;
  pointer-events: none;
}
.photo__arrow--prev { left: 0; }
.photo__arrow--prev img { left: 0; }
.photo__arrow--next { left: 248.39px; }
.photo__arrow--next img { left: -248.39px; }
.photo__nav-label {
  position: absolute;
  left: 50%;
  top: 6px;
  transform: translateX(-50%);
  font-size: 18px;
  color: rgba(255, 255, 255, 0.6);
  white-space: nowrap;
}
