/* Project detail — centred editorial lightbox. Loaded after the main theme CSS. */
body.single-mv_project {
  min-height: 100vh;
  min-height: 100svh;
  padding: clamp(26px, 4.5vh, 52px);
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #050505;
}

.project-backdrop {
  position: fixed;
  z-index: 0;
  inset: -48px;
  background-color: #090909;
  background-position: center;
  background-size: cover;
  filter: blur(24px) saturate(.72) brightness(.34);
  transform: scale(1.08);
}

.project-backdrop::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.62);
}

body.single-mv_project .project-showcase {
  position: relative;
  z-index: 1;
  width: min(1120px, calc(100vw - 56px));
  height: min(826px, calc(100svh - 72px));
  min-height: 0 !important;
  margin: 0;
  display: grid;
  grid-template-columns: minmax(0, 55%) minmax(0, 45%);
  overflow: hidden;
  background: #f5f5f2;
  box-shadow: 0 30px 90px rgba(0,0,0,.62);
}

body.single-mv_project .project-viewer {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0 !important;
  overflow: hidden;
  background: #050505;
}

body.single-mv_project .project-viewer-stage,
body.single-mv_project .project-viewer-image,
body.single-mv_project .project-viewer-video {
  width: 100% !important;
  height: 100% !important;
}

body.single-mv_project .project-viewer-image,
body.single-mv_project .project-viewer-video {
  object-fit: cover !important;
  object-position: center !important;
}

body.single-mv_project .project-viewer-nav {
  top: 50% !important;
  width: 48px !important;
  min-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  background: rgba(34,38,39,.7);
  backdrop-filter: blur(8px);
}

body.single-mv_project .project-viewer-prev { left: 18px !important; }
body.single-mv_project .project-viewer-next { right: 18px !important; }
body.single-mv_project .project-viewer-count { left: 28px; bottom: 25px; }

body.single-mv_project .project-details {
  position: relative;
  width: 100%;
  height: 100% !important;
  min-height: 0;
  overflow: hidden;
  background: radial-gradient(circle at 100% 0, rgba(226,29,45,.055), transparent 32%), #f5f5f2;
}

body.single-mv_project .project-language-switcher { display: none; }

body.single-mv_project .project-close {
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(8px);
}

body.single-mv_project .project-details-scroll {
  height: 100%;
  padding: clamp(72px, 8vh, 96px) clamp(38px, 4.2vw, 58px) 32px;
  overflow-y: auto;
}

body.single-mv_project .project-format {
  margin-bottom: 26px;
  font-size: 11px;
}

body.single-mv_project .project-details-header h1 {
  max-width: 100%;
  font-size: clamp(52px, 4.25vw, 76px);
  line-height: .91;
  letter-spacing: -.065em;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

body.single-mv_project .project-partner { margin-top: 28px; }
body.single-mv_project .project-description {
  margin-top: clamp(28px, 4vh, 44px);
  font-size: clamp(15px, 1vw, 17px);
  line-height: 1.55;
}

body.single-mv_project .project-tags { margin-top: 28px; }
body.single-mv_project .project-tags li { padding: 9px 11px; font-size: 8px; }

body.single-mv_project .project-thumbnails {
  grid-template-columns: repeat(6, minmax(42px, 1fr));
  gap: 6px;
  max-width: none;
  max-height: 126px;
  margin-top: 27px;
}

body.single-mv_project .project-contact {
  width: 100%;
  min-height: 72px;
  margin-top: 28px;
  gap: 14px;
}

body.single-mv_project .project-contact-mark {
  position: relative;
  flex: 0 0 88px;
  width: 88px;
  aspect-ratio: 1.35;
  display: grid;
  place-items: center;
  clip-path: none;
  background: linear-gradient(135deg, #f40000 15%, #ff5b6d 100%);
}

body.single-mv_project .project-contact-mark::after {
  content: "→";
  color: #fff;
  font-size: 16px;
}

body.single-mv_project .project-contact > b { display: none; }

body.admin-bar.single-mv_project {
  padding-top: calc(clamp(26px, 4.5vh, 52px) + 32px);
}

body.admin-bar.single-mv_project .project-showcase {
  height: min(826px, calc(100svh - 104px));
  min-height: 0 !important;
}

@media (max-width: 900px) {
  body.single-mv_project {
    display: block;
    padding: 0;
    overflow: auto;
  }
  .project-backdrop { display: none; }
  body.single-mv_project .project-showcase {
    width: 100%;
    height: auto;
    min-height: 100svh !important;
    grid-template-columns: 1fr;
    overflow: visible;
    box-shadow: none;
  }
  body.single-mv_project .project-viewer {
    height: min(68svh, 680px);
    min-height: 480px !important;
  }
  body.single-mv_project .project-details {
    height: auto !important;
    overflow: visible;
  }
  body.single-mv_project .project-details-scroll {
    height: auto;
    padding: 78px 7vw 60px;
    overflow: visible;
  }
  body.admin-bar.single-mv_project { padding-top: 0; }
  body.admin-bar.single-mv_project .project-showcase { height: auto; }
}

@media (max-width: 600px) {
  body.single-mv_project .project-viewer { min-height: 54svh !important; height: 54svh; }
  body.single-mv_project .project-details-scroll { padding: 70px 22px 46px; }
  body.single-mv_project .project-details-header h1 { font-size: clamp(46px, 15vw, 68px); }
  body.single-mv_project .project-thumbnails { grid-template-columns: repeat(4, 1fr); max-height: 190px; }
}
