body { font-family: 'Inter', sans-serif; }
.font-display { font-family: 'Plus Jakarta Sans', sans-serif; }
.hero-overlay { background: linear-gradient(0deg, rgba(11,28,48,0.88) 0%, rgba(11,28,48,0.1) 100%); }

/* Gallery Desktop */
.gallery-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 4px; height: 420px; border-radius: 16px; overflow: hidden; position: relative; }
.gallery-grid .g-main { grid-row: 1 / 3; grid-column: 1; }
.gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; }
.gallery-grid > div:hover img { transform: scale(1.03); }

/* Gallery Mobile */
@media (max-width: 768px) {
  .gallery-grid { display: none; }
  .gallery-mobile { display: block; }
}
@media (min-width: 769px) {
  .gallery-mobile { display: none; }
}

.gallery-mobile-track {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  border-radius: 16px;
}
.gallery-mobile-track::-webkit-scrollbar { display: none; }
.gallery-mobile-track { -ms-overflow-style: none; scrollbar-width: none; }
.gallery-mobile-track > div {
  flex: 0 0 100%;
  scroll-snap-align: center;
  aspect-ratio: 4/3;
}
.gallery-mobile-track img { width: 100%; height: 100%; object-fit: cover; }

/* Thumb strip */
.thumb-strip { display: flex; gap: 10px; overflow-x: auto; padding: 2px 0; scrollbar-width: none; -ms-overflow-style: none; }
.thumb-strip::-webkit-scrollbar { display: none; }

/* Lightbox thumbs */
#lb-thumbs { scrollbar-width: none; -ms-overflow-style: none; }
#lb-thumbs::-webkit-scrollbar { display: none; }

/* Leaflet overrides */
#map-preview-desktop, #map-preview-mobile { border-radius: 16px; overflow: hidden; }
#map-preview-desktop .leaflet-container, #map-preview-mobile .leaflet-container { border-radius: 16px; }

/* Map marker pulse animation */
@keyframes pulse-marker {
  0% { transform: scale(0.8); opacity: 0.4; }
  50% { transform: scale(1.8); opacity: 0; }
  100% { transform: scale(0.8); opacity: 0; }
}

/* Tour mobile hidden on desktop - handled via lg:hidden class */
