:root {
  --color-primary: #1e40af;
  --color-primary-dark: #002291;
  --color-secondary: #3b82f6;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: system-ui, -apple-system, sans-serif;
}

/* Hide scrollbar on snap carousels (mobile) */
[style*="scrollbar-width:none"]::-webkit-scrollbar { display: none; }

/* Gallery: carousel en desktop (4 fotos visibles con scroll) */
.gallery-carousel {
  display: flex !important;
  overflow-x: auto !important;
  scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.gallery-carousel::-webkit-scrollbar { display: none; }
.gallery-carousel > a {
  flex: 0 0 calc(25% - 12px);
  scroll-snap-align: start;
  width: auto;
}
.gallery-dots { display: flex !important; }
.gallery-wrapper { position: relative; }
.gallery-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,0.9);
  border: 1px solid rgba(0,0,0,0.1);
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  cursor: pointer;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, box-shadow 0.2s;
}
.gallery-arrow:hover {
  background: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
}
.gallery-arrow-left { left: -20px; }
.gallery-arrow-right { right: -20px; }
@media (max-width: 767px) {
  .gallery-arrow { display: none; }
  .gallery-carousel > a {
    flex: 0 0 100%;
    scroll-snap-align: center;
  }
}

/* Honeypot field — hidden from real users */
.hp-field {
  position: absolute;
  left: -9999px;
}
