/* ==================== PORTFOLIO ==================== */

#portfolioModal {
   max-height: 720px;
   top: -20px;
}

.portfolio-item .card {
   transition:
      transform 0.3s ease,
      box-shadow 0.3s ease;
   overflow: hidden;
   border-radius: 12px;
}

.portfolio-item .card:hover {
   transform: translateY(-10px);
   box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1) !important;
}

.portfolio-item .card-img-top {
   width: 280px;
   object-fit: cover; /* Faz a imagem preencher o espaço sem distorcer */
   transition: transform 0.5s ease;
}

.portfolio-item .card:hover .card-img-top {
   transform: scale(1.1); /* Zoom suave na imagem */
}

#portfolio-filters .btn {
   border-radius: 50px;
   padding: 8px 25px;
   margin: 5px;
   border: 2px solid #0d6efd;
   font-weight: 500;
   transition: all 0.3s;
}

#portfolio-filters .btn.active {
   background-color: #0d6efd;
   color: white;
   box-shadow: 0 4px 15px rgba(13, 110, 253, 0.4);
}

#portfolio-filters .btn:hover:not(.active) {
   background-color: rgba(13, 110, 253, 0.1);
}

/* Fundo do Modal mais escuro para destacar as fotos */
.modal-content {
   border-radius: 20px;
   border: none;
   box-shadow: 0 25px 50px rgba(0, 0, 0, 0.2);
}

/* Header elegante */
.modal-header {
   border-bottom: 1px solid #eee;
   padding: 0.8rem 1rem !important;
}

.modal-title {
   font-weight: 700;
   color: #333;
   letter-spacing: -0.5px;
}

/* Carrossel Customizado */
#projectCarousel {
   border-radius: 15px;
   overflow: hidden;
   background: #f8f9fa;
}

.carousel-item.active.cover img {
   width: 100%;
   height: 420px;
   object-fit: cover;
   background: var(--color-white);
}

.carousel-item img {
   height: 420px;
   object-fit: scale-down;
   background: var(--color-white);
}

/* Botões de navegação redondos e discretos */
.carousel-control-prev,
.carousel-control-next {
   width: 50px !important;
   height: 50px !important;
   background: rgba(13, 110, 253, 0.4) !important;
   border-radius: 50%;
   top: 50% !important;
   transform: translateY(-50%);
   margin: 0 20px;
   visibility: hidden !important;
   transition:
      opacity 0.3s ease,
      visibility 0.3s ease;
}

#projectCarousel:hover .carousel-control-prev,
#projectCarousel:hover .carousel-control-next {
   opacity: 1 !important;
   visibility: visible !important;
}

.carousel-control-prev:hover,
.carousel-control-next:hover {
   background: rgba(13, 110, 253, 0.9) !important; /* Dá um destaque extra no hover do botão */
   cursor: pointer !important;
}

/* Informações do Projeto */
.project-info-box {
   background: #fdfdfd;
   border-left: 4px solid #0d6efd;
   padding: 10px;
   margin-top: 15px;
   border-radius: 0 10px 10px 0;
}

@keyframes fadeInUp {
   from {
      opacity: 0;
      transform: translateY(20px);
   }
   to {
      opacity: 1;
      transform: translateY(0);
   }
}

.portfolio-item {
   animation: fadeInUp 0.5s ease backwards;
}

.portfolio-section {
   padding: 3rem;
}

@media screen and (max-width: 768px) {
   #portfolioModal {
      max-height: 560px;
      top: 20px;
   }

   .modal-title {
      font-size: 16px;
      font-weight: 600;
      color: #333;
      letter-spacing: -0.5px;
   }

   .carousel-item.active.cover img {
      width: 100%;
      height: 230px;
      object-fit: cover;
      background: var(--color-white);
   }

   .carousel-item img {
      width: 100%;
      height: 230px;
      object-fit: scale-down;
      background: var(--color-white);
   }

   .portfolio-section {
      padding: 30px 5px 20px 5px;
   }

   .btn-group {
      display: flex !important;
      flex-direction: row !important;
      flex-wrap: wrap !important;
      width: 100% !important;
      justify-content: center !important;
   }
}
