/* Estilo general */
body {
  font-family: 'Poppins', sans-serif;
  margin: 0;
  background-color: #f5f6f7;
  color: #222;
}

section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 50px 20px;
}

/* Menú */
.navbar {
  background-color: #172554 !important;
}

.nav-link:hover {
  color: #38bdf8 !important;
}

/* Sección principal */
.hero {
  background-color: #172554;
  color: white;
  min-height: 400px;
  text-align: center;
  padding-top: 50px;
}

.hero h1 {
  font-size: 40px;
  font-weight: bold;
  margin-top: 20px;
}

.hero h2 {
  color: #38bdf8;
  font-size: 24px;
}

.hero-imatge-developer {
  width: 200px;
  height: 200px;
  object-fit: cover;
  border-radius: 50%;
  border: 4px solid #38bdf8;
}

.hero-inferior img {
  max-width: 100%;
  margin-top: 30px;
}

/* Sobre mí */
.about-me {
  background-color: #1e293b;
  color: white;
  text-align: center;
}

.section-title {
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 20px;
}

.section-text {
  color: #cbd5e1;
}

/* Botón del currículum */
.btn-responive {
  background-color: #0284c7;
  border: none;
  border-radius: 8px;
}

.btn-responive:hover {
  background-color: #0369a1;
}

/* Experiencia */
.experience {
  background-color: #f5f6f7;
}

.columna {
  padding: 25px;
  border-radius: 12px;
  transition: transform 0.2s;
}

.columna:hover {
  transform: translateY(-5px);
  background-color: white;
  box-shadow: 0 5px 15px #00000015;
}

.columna i {
  font-size: 45px;
  color: #0284c7;
}

.experiencia-title {
  font-size: 22px;
  font-weight: bold;
  margin-top: 10px;
}

/* Proyectos */
.projectes {
  background-color: #f5f6f7;
}

.projecte {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  margin-bottom: 20px;
}

.projecte img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  transition: transform 0.3s;
}

.projecte:hover img {
  transform: scale(1.05);
}

.overlay {
  position: absolute;
  inset: 0;
  background-color: #172554cc;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.3s;
}

.projecte:hover .overlay {
  opacity: 1;
}

.overlay p {
  font-size: 18px;
  font-weight: bold;
}

.overlay a {
  color: #38bdf8;
  font-size: 30px;
}

/* Móviles */
@media (max-width: 768px) {
  .hero h1 {
    font-size: 30px;
  }

  .hero-imatge-developer {
    width: 150px;
    height: 150px;
  }

  .overlay {
    opacity: 1;
  }
}