.project-carousel-section {
  margin: 4rem 0;
  overflow: hidden;
}

.project-carousel {
  width: 100%;
  overflow: hidden;
}

.project-track {
  display: flex;
  transition: transform 1s ease-in-out;
}

.project-slide {
  min-width: 100%;
  box-sizing: border-box;
}

.project-slide img {
  width: 100%;
  height: auto;
  display: block;
}

.project-slide h3 {
  margin-bottom: 1rem;
}

.project-slide img {
  border-radius: 0.375rem; /* matches Editorial visual weight */
}

.project-slide .col-4 {
  overflow: hidden;
}

@media screen and (max-width: 736px) {
  .project-slide .col-12-small {
    margin-bottom: 1.5rem;
  }

  .project-slide .col-12-small:last-child {
    margin-bottom: 0;
  }
}


/* project column 3 */

.project-info {
  font-size: 0.95rem;
}

.project-title {
  margin: 0.75rem 0 1rem;
}

/* Status */
.project-status {
  display: flex;
  align-items: center;
  font-size: 0.85rem;
  margin-bottom: 0.5rem;
}

.status-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 0.5rem;
}

/* Active (blinking teal) */
.project-status.active .status-dot {
  background: #2bbbad;
  animation: pulse 1.5s infinite;
}

/* Completed */
.project-status.completed .status-dot {
  background: #2bbbad;
}

.project-status.completed .status-text::after {
  content: " – Teslim Edildi";
}

/* Meta lines */
.project-meta p {
  margin: 0.25rem 0;
}

/* Description */
.project-description {
  margin: 1rem 0;
}

/* Compliance */
.project-compliance {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  margin-top: 1rem;
}

.compliance-item {
  display: flex;
  align-items: center;
  font-size: 0.85rem;
}

.compliance-item img {
  height: 22px;
  width: auto;
  margin-right: 0.5rem;
}

/* Animation */
@keyframes pulse {
  0% { opacity: 1; }
  50% { opacity: 0.4; }
  100% { opacity: 1; }
}

/* map overlay */

.project-media-overlay {
  position: relative;
  overflow: hidden;
  border-radius: 0.375rem; /* matches Editorial */
}

.project-media-overlay img {
  width: 100%;
  height: auto;
  display: block;
}

/* SVG overlay */
.map-svg-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

/* Live tracking badge */
.live-tracking-badge {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  display: flex;
  align-items: center;
  background: rgba(0, 0, 0, 0.65);
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 0.35rem 0.55rem;
  border-radius: 0.25rem;
  letter-spacing: 0.04em;
}

.live-dot {
  color: #2bbbad;
  margin-right: 0.3rem;
  animation: livePulse 1.4s infinite;
}

/* Blink animation */
@keyframes livePulse {
  0% { opacity: 1; }
  50% { opacity: 0.35; }
  100% { opacity: 1; }
}






