/** Shopify CDN: Minification failed

Line 121:10 Unexpected "{"
Line 121:19 Expected ":"
Line 122:14 Expected identifier but found whitespace
Line 122:16 Unexpected "{"
Line 122:25 Expected ":"
Line 122:51 Expected ":"
Line 123:17 Expected identifier but found whitespace
Line 123:19 Unexpected "{"
Line 123:28 Expected ":"
Line 123:57 Expected ":"

**/
.proyectos-title {
  text-align: center;
  margin-bottom: 2rem;
}

.proyectos-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}

@media screen and (min-width: 750px) {
  .proyectos-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.proyecto-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.proyecto-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.proyecto-media {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 8px;
  background: #e8e8e8;
}

.proyecto-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
}

.proyecto-card:hover .proyecto-img {
  transform: scale(1.04);
}

/* Overlay */
.proyecto-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.75rem 1rem;
  background: linear-gradient(to top, rgba(0,0,0,0.65) 0%, transparent 100%);
  border-radius: 0 0 8px 8px;
}

.proyecto-overlay .proyecto-nombre {
  color: #ffffff;
  font-weight: 600;
  font-size: 0.95rem;
}

/* Caption */
.proyecto-caption {
  padding: 0.6rem 0.25rem;
}

.proyecto-caption .proyecto-nombre {
  font-weight: 600;
  font-size: 0.95rem;
}

/* Placeholder sin imagen */
.proyecto-placeholder {
  width: 100%;
  height: 100%;
  background: #d4d4d4;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  padding: 1rem;
}

.proyecto-placeholder-nombre {
  text-align: center;
  font-weight: 600;
  color: #555;
  font-size: 0.9rem;
}

/* Botón */
.proyectos-boton-wrapper {
  display: flex;
  justify-content: center;
  margin-top: 2.5rem;
}

/* Padding dinámico desde schema */
.section-{{ section.id }}-padding {
  padding-top: {{ section.settings.padding_top }}px;
  padding-bottom: {{ section.settings.padding_bottom }}px;
}
