/* Suggestions list */
#suggestions {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10000;
  width: 60vw;
  padding: 0 10px;
  color: white;
  cursor: pointer;
  background: #533b3b;
  margin-top: -20px;
  list-style-type: none;
  font-size: 2em;
  line-height: 1.2em;
}

#suggestions li {
  text-decoration: underline;
  padding: 10px;
}

/* Leaflet controls */
.leaflet-control-layers-expanded {
  padding: 5px 3px 5px 3px !important;
}

/* Body layout */
body {
  background-color: #3891b1;
  margin: 0;
  padding: 20px 0;
  display:block;
  color:#666;
  font:normal normal 300 16px/130% "Source Sans Pro",sans-serif
}

body.info {
  margin:0 1em;
} 

body.index {
  height: 100vh;
  overflow-y: hidden;
}

/* Header */
#header {
  height: 30vh;
}

.header-title {
  margin: 0.6em 0 0.8em 0;
  color: white;
  font-size: 3em;
  font-weight: 500;
  text-align: center;
}

.header-logo {
  vertical-align: super;
}

/* Search input */
.search-container {
  margin: 2em 4em;
}

.search-input {
  width: 100%;
  font-size: 1.5em;
  padding: 10px;
}

/* Map */
#map {
  height: 70vh;
  width: 100vw;
}


.gallery {
	  display: grid;
	  grid-template-columns: repeat(3, 1fr); /* 3 columns */
	  gap: 12px; /* gutter between images */
	}

.gallery div::before { 
  content:none; 
  display:none
}

.gallery img {
	  width: 100%;
	  height: 300px;       /* fixed height */
	  object-fit: cover;   /* keeps aspect ratio, crops overflow */
	  border-radius: 8px;  /* optional: rounded corners */
	  display: block;
	}

.button.blue {
  background-color: #533b3b !important;
  margin-top: 2em;
  color: white !important;
  text-decoration: none !important;
  padding: 10px 15px !important;
  border-radius: 5px !important;
}