/* Services/Expertise Section Styles - Featured professional services - Mobile First */
.service-section {
  background: var(--service-section-bg);
  position: relative;

  & .services-grid {
    /* Positioning & Display */
    display: flex;
    flex-wrap: nowrap;

    /* Other */
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;

    &::-webkit-scrollbar {
      /* Positioning & Display */
      display: none;

      /* Box Model */
      height: 8px;
    }

    & .service-card {
      /* Positioning & Display */
      display: flex;
      flex-direction: column;
      flex-shrink: 0;
      flex: 1;
      scroll-snap-align: center;
      word-break: break-word;
      overflow: hidden;

      /* Safari iOS specific fixes */
      -webkit-hyphens: auto;
      -webkit-word-break: break-word;
      overflow-wrap: break-word;

      /* Box Model */
      padding: 1.5rem;
      min-width: 280px;
      width: 300px;
      max-width: 300px;
      box-sizing: border-box;

      /* Colors & Backgrounds */
      background-color: var(--card-bg);
      border: 1px solid var(--border-color);
      border-radius: var(--border-radius-md);

      /* Effects & Transitions */
      box-shadow: 0 4px 10px var(--card-shadow);
      transition: all 0.3s ease;

      & p {
        word-break: break-word;
        -webkit-hyphens: auto;
        -webkit-word-break: break-word;
        overflow-wrap: break-word;
      }

      & .service-icon {
        /* Positioning & Display */
        display: flex;
        align-items: center;
        justify-content: center;

        /* Box Model */
        width: 50px;
        height: 50px;

        /* Typography */
        font-size: 1.25rem;

        /* Colors & Backgrounds */
        color: var(--accent-color);
        background-color: rgba(var(--accent-color), 0.07);
        border-radius: var(--border-radius-circle);
      }
    }
  }

  & .scroll-controls {
    /* Styles for scroll controls if needed */
  }
}

/* Dark theme adjustments */
.dark-theme {
  & .skill-chip {
    background: var(--accent-color);
    color: var(--text-color-dark);
  }

  & .skills-group h4 {
    color: var(--accent-color-dark);
  }

  & .skills-group li::before {
    color: var(--accent-color-dark);
  }
}

/* Tablet styles */
@media (min-width: 576px) {
  .service-section {
    & .services-grid {
      & .service-card {
        padding: 1.75rem;
        min-width: 290px;
        width: 310px;
        max-width: 310px;

        & .service-icon {
          width: 55px;
          height: 55px;
          font-size: 1.35rem;
        }
      }
    }
  }

  .skills-service-card h3 {
    margin-bottom: 1.1rem;
  }

  .skills-chips {
    gap: 0.6rem;
    margin-top: 0.85rem;
  }

  .skill-chip {
    padding: 0.45rem 0.9rem;
    font-size: 0.85rem;
  }

  .skills-group h4 {
    margin-bottom: 0.7rem;
    font-size: 0.975rem;
  }

  .skills-group li {
    padding: 0.28rem 0;
    font-size: 0.875rem;
  }
}

/* Large tablet styles */
@media (min-width: 768px) {
  .service-section {
    & .services-grid {
      & .service-card {
        padding: 1.85rem;
        min-width: 300px;
        width: 320px;
        max-width: 320px;

        & .service-icon {
          width: 58px;
          height: 58px;
          font-size: 1.4rem;
        }
      }
    }
  }

  .skills-chips {
    gap: 0.7rem;
    margin-top: 0.9rem;
  }

  .skill-chip {
    &:hover {
      transform: translateY(-2px);
      box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
    }
  }
}

/* Desktop styles */
@media (min-width: 992px) {
  .service-section {
    & .services-grid {
      & .service-card {
        padding: 2rem;
        min-width: 320px;
        width: 350px;
        max-width: 350px;

        &:hover {
          /* Positioning & Display */
          transform: translateY(-5px);

          /* Effects & Transitions */
          box-shadow: 0px 0px 10px 0px var(--card-hover-shadow);
        }

        & .service-icon {
          width: 60px;
          height: 60px;
          font-size: 1.5rem;
        }
      }
    }
  }

  .skills-service-card h3 {
    margin-bottom: 1.2rem;
  }

  .skills-chips {
    gap: 0.8rem;
    margin-top: 1rem;
  }

  .skill-chip {
    padding: 0.5rem 1rem;
    font-size: 0.9rem;

    &:hover {
      transform: translateY(-2px);
      box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    }
  }

  .skills-groups {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1.5rem;
  }

  .skills-group {
    flex: 1;
    min-width: 150px;

    & h4 {
      margin-bottom: 0.8rem;
      font-size: 1rem;
      padding-bottom: 0.4rem;
    }

    & li {
      padding: 0.3rem 0;
      font-size: 0.9rem;
    }
  }
}