.btn { gap: 9px; }


.trust i,
.occasion-grid i { width: 19px; color: var(--gold-2); text-align: center; }


.location-img::after {
  content: "\f3c5";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}


.package-card li::before {
  content: "\f058";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}


.section-intro { color: #69716b; margin: 14px 0 0; }

.reels { overflow: hidden; background: #fff; }

.reel-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(267px, 1fr));
  gap: 24px;
  max-width: 1240px;
  margin: 0 auto;
}

.reel-card {
  width: 100%;
  max-width: 287px;
  margin: 0 auto;
  padding: 10px;
  overflow: hidden;
  border: 1px solid #e5dccb;
  border-radius: 22px;
  background: #10110f;
  box-shadow: var(--shadow);
}

.reel-card iframe { display: block; width: 100%; border-radius: 14px; }

.location-grid { grid-template-columns: repeat(5, 1fr); }

.zapotlanejo { background-image: url("../mariachi-zapotlanejo-jalisco.jpeg"); }


.floating-social {
  position: fixed;
  right: 18px;
  bottom: 22px;
  z-index: 50;
  display: grid;
  gap: 10px;
}


.floating-social a {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border: 2px solid rgba(255, 255, 255, .9);
  border-radius: 50%;
  color: #fff;
  font-size: 1.35rem;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .22);
  transition: transform .2s ease, filter .2s ease;
}


.floating-social a:hover,
.floating-social a:focus-visible { transform: translateY(-3px) scale(1.04); filter: brightness(1.08); }

.floating-social__whatsapp { background: #25d366; }

.floating-social__facebook { background: #1877f2; }

.floating-social__instagram { background: linear-gradient(135deg, #833ab4, #fd1d1d, #fcb045); }


@media (max-width: 1180px) {
  .location-grid { grid-template-columns: repeat(3, 1fr); }

  .reel-strip { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; padding: 8px max(20px, calc((100vw - 600px) / 2)); }

  .reel-card { flex: 0 0 287px; scroll-snap-align: center; }

}


@media (max-width: 620px) {
  .location-grid { grid-template-columns: 1fr; }

  .reel-strip { margin-inline: -18px; padding-inline: calc((100vw - 287px) / 2); }

}

