.technical-proficiencies {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 80px auto;
  padding: 0 20px;
}

  .section-wrapper {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .section-wrapper > section {
    flex: 1;
    min-width: 300px;
  }

  @media (max-width: 1000px) {
    .section-wrapper {
      flex-direction: column;
    }
  }

.technical-proficiencies h2 {
  flex: 1;
  font-size: 28px;
}

.spinner-container {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 400px;
}

.icon-circle {
  width: 400px;
  height: 400px;
  position: relative;
  animation: spin 45s linear infinite;
  transform-origin: center;
}

.spinner-container:hover .icon-circle,
.spinner-container:hover .icon img, 
.spinner-container:hover .tooltip {
  animation-play-state: paused;
}

.circle-label {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-weight: bold;
  text-align: center;
  pointer-events: none;
  font-size: 20px;
}

.rotating-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
}

.icon {
  width: 80px;
  height: 80px;
}

.icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  cursor: pointer;
  animation: counter-spin 45s linear infinite;
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes counter-spin {
  from { transform: rotate(360deg); }
  to { transform: rotate(0deg); }
}

.icon-tooltip {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

.icon {
  position: relative;
  transition: transform 0.1s ease-in-out;
}

.icon:hover {
  transform: scale(1.1);
}

.tooltip-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0);
  transform-origin: center center;
  pointer-events: none;
  z-index: 1000;
}

.tooltip {
  background-color: #444444;
  color: #fff;
  padding: 6px 10px;
  border-radius: 4px;
  white-space: nowrap;
  transform: scale(0);
  transform-origin: right center;
  transition: transform 0.1s ease-out;
  font-size: 0.9rem;
  animation: counter-spin 45s linear infinite;
}

.icon-tooltip:hover .tooltip {
  transform: scale(1);
}

.icon:hover .tooltip-wrapper {
  transform: translate(-50%, -50%) scale(1);
}