:root {
  --kk-template-shell: 1240px;
  --kk-template-gap: clamp(18px, 2.4vw, 34px);
  --kk-template-section: clamp(58px, 7vw, 96px);
}

.single-kk_project main#main,
.post-type-archive-kk_project main#main {
  overflow: clip;
}

.single-kk_project .kkv3-project-nav {
  position: sticky !important;
  top: 0;
  z-index: 90;
  width: 100% !important;
}

.admin-bar.single-kk_project .kkv3-project-nav {
  top: 32px;
}

.single-kk_project .kk-project-hero {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 620px !important;
  height: clamp(620px, 72vh, 760px) !important;
  max-height: 760px !important;
  overflow: hidden !important;
  isolation: isolate;
}

.single-kk_project .kk-project-hero > .kkv3-hero-overlay {
  position: relative;
  z-index: 2;
  min-height: inherit;
}

.single-kk_project .kk-project-hero .kkv3-native-hero-copy-hidden {
  display: none !important;
  min-height: 0 !important;
  height: auto !important;
}

.single-kk_project main#main > .kkv3-hero-facts,
.single-kk_project main#main > .kkv3-section {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
}

.single-kk_project main#main > .kkv3-section > .kkv3-shell,
.single-kk_project main#main > .kkv3-hero-facts > .kkv3-shell {
  box-sizing: border-box !important;
  width: min(100%, var(--kk-template-shell)) !important;
  min-width: 0 !important;
  max-width: var(--kk-template-shell) !important;
  margin-inline: auto !important;
  padding-inline: var(--kk-template-gap) !important;
}

.single-kk_project main#main > .kkv3-section {
  padding-block: var(--kk-template-section) !important;
}

.single-kk_project .kkv3-about-grid {
  align-items: start !important;
  gap: clamp(30px, 5vw, 72px) !important;
}

.single-kk_project .kkv3-gallery-card,
.single-kk_project .kkv3-wide-visual,
.single-kk_project .kkv3-unit-visual {
  overflow: hidden !important;
  background: #eef1f4 !important;
}

.single-kk_project .kkv3-gallery-main {
  aspect-ratio: 4 / 3 !important;
  min-height: 0 !important;
}

.single-kk_project .kkv3-gallery-thumbs > button {
  aspect-ratio: 4 / 3 !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

.single-kk_project .kkv3-gallery-main img,
.single-kk_project .kkv3-gallery-thumbs img,
.single-kk_project .kkv3-wide-visual img,
.single-kk_project .kkv3-unit-visual img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
}

.single-kk_project .kkv3-wide-visual {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 7 !important;
  min-height: 320px !important;
}

.single-kk_project .kkv3-map-shell,
.single-kk_project .kkv3-map-canvas,
.single-kk_project .kkv3-map-fallback {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

body.kkv3-ready.single-kk_project main#main > article.kk-project-detail {
  display: none !important;
}

@media (max-width: 900px) {
  .single-kk_project .kk-project-hero {
    min-height: 680px !important;
    height: auto !important;
    max-height: none !important;
  }

  .single-kk_project .kkv3-about-grid,
  .single-kk_project .kkv3-contact-hub .kkv3-project-center--horizontal {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 782px) {
  .admin-bar.single-kk_project .kkv3-project-nav {
    top: 46px;
  }

  .single-kk_project .kk-project-hero {
    min-height: 760px !important;
    height: auto !important;
    max-height: none !important;
    align-items: stretch !important;
    padding-top: 0 !important;
  }

  .single-kk_project .kk-project-hero > .kkv3-hero-overlay {
    min-height: 760px !important;
    max-height: none !important;
    overflow: visible !important;
    width: 100% !important;
    margin: 0 !important;
    align-self: stretch !important;
    flex: 1 1 100% !important;
  }

  .single-kk_project main#main > .kkv3-section > .kkv3-shell,
  .single-kk_project main#main > .kkv3-hero-facts > .kkv3-shell {
    padding-inline: 16px !important;
  }

  .single-kk_project main#main > .kkv3-section {
    padding-block: 52px !important;
  }

  .single-kk_project .kkv3-gallery-main {
    aspect-ratio: 16 / 11 !important;
  }

  .single-kk_project .kkv3-gallery-thumbs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .single-kk_project .kkv3-wide-visual {
    aspect-ratio: 4 / 3 !important;
    min-height: 0 !important;
  }

  .single-kk_project .kkv3-map-shell,
  .single-kk_project .kkv3-map-fallback {
    height: 340px !important;
    min-height: 340px !important;
  }
}

@media (max-width: 480px) {
  .single-kk_project .kk-project-hero {
    min-height: 820px !important;
    max-height: none !important;
  }

  .single-kk_project .kk-project-hero > .kkv3-hero-overlay {
    min-height: 820px !important;
    max-height: none !important;
  }

  .single-kk_project .kkv3-project-nav-inner {
    overflow-x: auto !important;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
  }

  .single-kk_project .kkv3-project-nav-inner::-webkit-scrollbar {
    display: none;
  }
}
