/* STEM Cards CSS - Clean and Isolated */

/* STEM Card Container */
.stem-card {
  background: white;
  border-radius: 15px;
  padding: 25px;
  box-shadow: 0 8px 25px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
  height: 100%;
  border-top: 4px solid transparent;
}

.stem-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.15);
}

/* STEM Card Hover Colors */
.stem-card.science:hover { 
  border-top-color: #007bff; 
}

.stem-card.technology:hover { 
  border-top-color: #ffc107; 
}

.stem-card.engineering:hover { 
  border-top-color: #dc3545; 
}

.stem-card.math:hover { 
  border-top-color: #17a2b8; 
}

/* STEM Header Container - Force Center */
.stem-header {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  text-align: center !important;
}

/* STEM Icon */
.stem-icon {
  width: 60px !important;
  height: 60px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 15px !important;
  font-size: 1.5rem !important;
  flex-shrink: 0 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
  transition: all 0.3s ease !important;
}

.stem-card:hover .stem-icon {
  transform: scale(1.05) !important;
}

/* STEM Title */
.stem-title {
  margin: 0 !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: #2c3e50 !important;
  text-align: left !important;
  line-height: 1.2 !important;
}

/* STEM Description */
.stem-description {
  color: #6c757d !important;
  margin: 0 !important;
  font-size: 0.95rem !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

/* Icon Background Colors */
.stem-icon.science {
  background: rgba(0, 123, 255, 0.1) !important;
  color: #007bff !important;
}

.stem-icon.technology {
  background: rgba(255, 193, 7, 0.1) !important;
  color: #ffc107 !important;
}

.stem-icon.engineering {
  background: rgba(220, 53, 69, 0.1) !important;
  color: #dc3545 !important;
}

.stem-icon.math {
  background: rgba(23, 162, 184, 0.1) !important;
  color: #17a2b8 !important;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .stem-card {
    padding: 20px !important;
  }
  
  .stem-header {
    margin-bottom: 15px !important;
  }
  
  .stem-icon {
    width: 50px !important;
    height: 50px !important;
    margin-right: 12px !important;
    font-size: 1.3rem !important;
  }
  
  .stem-title {
    font-size: 1.1rem !important;
  }
  
  .stem-description {
    font-size: 0.9rem !important;
  }
}

@media (max-width: 576px) {
  .stem-icon {
    margin-right: 10px !important;
  }
  
  .stem-title {
    font-size: 1rem !important;
  }
} 