/* Ensure slick slider containers remain static */
.slick-slider,
.slick-list,
.slick-track {
  margin: 0 !important;
  padding: 0 !important;
}

/* Portfolio Holder & Main Slider */
.portfolio-holder {
  width: auto;
  margin: 0 auto;
  min-height: 400px; /* base height */
  transition: min-height 0.2s ease;
}
.portfolio-holder.expanded {
  min-height: 600px; /* expanded height when thumbnails are hidden */
}
.portfolio-slider {
  transition: height 0.2s ease;
  height: calc(100vh - 200px);
}
.portfolio-holder.expanded .portfolio-slider {
  height: 600px;
}
.portfolio-slide {
  width: 100%;
  display: inline-block;
}
.portfolio-slide-img {
  width: auto !important;
  max-height: calc(100vh - 300px) !important;
  height: auto;
  object-fit: cover;
  display: block;
  margin: 0 auto;
  transition: max-height 0.2s ease;
}
/* Expanded image only */
.portfolio-slide-img.expanded {
  max-height: calc(100vh - 200px) !important;
}
.portfolio-slide-title {
  display: block;
  text-align: center;
  margin-top: 15px;
  color: #888888;
  font-family: 'Roboto-Condensed', Arial, sans-serif;
  font-weight: 200;
  font-size: 0.9em;
}
.portfolio-slide-description {
  font-size: 0.75em;
  color: rgb(155, 155, 155);
  font-family: 'Arial', sans-serif;
  font-style: italic;
  width: 100%;
  display: block;
  margin: 10px auto;
  text-align: center;
}

/* Thumbnail Navigation */
.portfolio-slider-nav {
  margin-top: 40px; /* adjust if needed */
  overflow-x: auto;
  white-space: nowrap;
  transition: opacity 0.4s ease;
}
.portfolio-slider-nav .slick-slide {
  width: auto !important;
  display: inline-block;
  margin-right: 5px;
}
.portfolio-slidenav-img {
  width: auto !important;
  max-height: 60px;
  object-fit: cover;
}

/* Toggle Button */
.toggle-thumbnails-btn {
  background: none;
  border: none;
  font-size: 0.65rem;
  letter-spacing: 1px;
  cursor: pointer;
  margin-top: 10px;
  font-family: 'Roboto-Condensed', Arial, sans-serif;
  text-align: center;
  color: #9D9D9D;
  animation: toggleFadeIn 200ms ease 0.5s forwards;
  opacity: 0;
}
@keyframes toggleFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* Extra margin when in "Show Thumbnails" state */
.toggle-thumbnails-btn.showState {
  margin-top: 75px !important;
}
.toggle-thumbnails-btn {
  transition: none !important;
}

/* Retain Extra CSS */
.vertical-menu-container {
  position: fixed;
  width: 260px !important;
  max-width: 260px !important;
  top: 0;
  left: 0;
  padding: 10px 30px;
  height: 100%;
  z-index: 101;
  -webkit-backface-visibility: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: background-color 0.3s ease;
  -moz-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  -ms-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  outline: 0;
}
