/* =========================
   🟦 SECTION
========================= */
.projects {
  padding: 50px 20px;
}

/* =========================
   🟦 INTRO
========================= */
.projects-intro {
  text-align: center;
  margin-bottom: 50px;
}

.projects-intro h2 {
  font-size: 2rem;
  margin-bottom: 10px;
  color: var(--text);
}

.projects-intro p {
  color: var(--text-muted);
  max-width: 600px;
  margin: auto;
}

/* =========================
   🟦 GRID
========================= */
.projects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
}

/* =========================
   🟦 CARD
========================= */
.project-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 24px;

  display: flex;
  flex-direction: column;
  justify-content: space-between;

  transition: all 0.3s ease;
}

.project-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-lg);
}

/* =========================
   🟦 TEXT
========================= */
.project-card h3 {
  margin-bottom: 10px;
  color: var(--text);
}

.project-problem {
  color: var(--text-muted);
  margin-bottom: 8px;
}

.project-solution {
  color: var(--text);
  font-size: 0.95rem;
  margin-bottom: 15px;
}

/* =========================
   🟦 TECH TAGS
========================= */
.project-tech {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 15px;
}

.project-tech span {
  background: var(--secondary-bg);
  padding: 5px 10px;
  border-radius: 8px;
  font-size: 0.75rem;
  color: var(--text-muted);
}

/* =========================
   🟦 LINKS
========================= */
.project-links {
  display: flex;
  gap: 10px;
}

.project-links a {
  gap: 6px;
}

/* =========================
   🚧 COMING SOON
========================= */
.coming-soon {
  border: 1px dashed var(--border);
  text-align: center;
}

.coming-soon h3 {
  margin-bottom: 10px;
}

.coming-note {
  font-size: 0.9rem;
  color: var(--text-muted);
  margin-bottom: 15px;
}

/* =========================
   🔵 PRIMARY BUTTON (DEMO)
========================= */
.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 10px 16px;
  border-radius: var(--radius-md);

  background: var(--primary);
  color: #fff;

  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;

  border: none;
  cursor: pointer;

  transition: all 0.25s ease;
}

.btn-primary:hover {
  background: var(--primary-dark);
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

/* =========================
   ⚪ SECONDARY BUTTON (CODE)
========================= */
.btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 10px 16px;
  border-radius: var(--radius-md);

  background: transparent;
  color: var(--text);

  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;

  border: 1px solid var(--border);
  cursor: pointer;

  transition: all 0.25s ease;
}

.btn-secondary:hover {
  background: var(--secondary-bg);
  transform: translateY(-2px);
  box-shadow: var(--shadow-sm);
}


/* =========================
   📱 RESPONSIVE
========================= */
@media (max-width: 768px) {
  .projects {
    padding: 80px 20px;
  }

  .project-links{
    justify-content: center;
  }

  .project-links a{
    width: 100%;
  }
}