body {
	background-size: cover;
	background-repeat: no-repeat;

	overflow-x: hidden;
  /* Removed: transition: background-color 0.5s ease-in-out; */
}

/* === Theme Styles === */

/* Light theme background & color */
body[data-bs-theme="light"] {
	background-color: white;
	background-image: url("../ImageData/background-small.png");
	background-position: center;
}

/* Dark theme background & color */
body[data-bs-theme="dark"] {
	background-color: black;
	background-image: url("../ImageData/background-small-black.png");
	background-position: center;
}

body[data-bs-theme="dark"] .title h1 {
  color: black !important;
}

body[data-bs-theme="dark"] .subtitle h2 {
  color: black !important;
}

/* === Theme Toggle Button === */

body[data-bs-theme="light"] #themeToggleBtn {
border: none;
}

body[data-bs-theme="dark"] #themeToggleBtn {
border: none;
}

#themeToggleBtn {
  transition: background-color 0.3s ease, color 0.3s ease, border 0.3s ease;
}

/* === Banner Title Styles === */

.bannertitle {
  margin: auto;
  padding: auto;
}

.title {
  margin-top: auto;
  text-align: center;
  vertical-align: middle;
  color: whitesmoke;
}

.title h1 {
  margin-top: 5vh;
  text-align: center;
  vertical-align: middle;
  color: whitesmoke;
  font-size: 3rem;
  font-family: "Bitcount Grid Double", system-ui;
  font-optical-sizing: auto;
  font-weight: 325;
  font-style: normal;
  font-variation-settings:
    "slnt" 0,
    "CRSV" 0.5,
    "ELSH" 0,
    "ELXP" 0;
}

.subtitle {
  text-align: center;
  vertical-align: middle;
  color: whitesmoke;
}

.subtitle h2 {
  text-align: center;
  vertical-align: middle;
  color: whitesmoke;
  font-size: 2rem;
  font-family: "Bitcount Grid Double", system-ui;
  font-optical-sizing: auto;
  font-weight: 325;
  font-style: normal;
  font-variation-settings:
    "slnt" 0,
    "CRSV" 0.5,
    "ELSH" 0,
    "ELXP" 0;
}

.themebutton{
	text-align: center;
}
/* === Gallery (Masonry-style layout) === */

.gallery {
  column-count: 4;
  column-gap: 8px;
  padding: 0 10px;
}

.gallery img {
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 8px;
  border-radius: 8px;
  break-inside: avoid;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.gallery img:hover {
  transform: scale(1.05);
}

/* === Responsive Gallery Columns === */

@media (max-width: 1200px) {
  .gallery {
    column-count: 3;
  }
}

@media (max-width: 768px) {
  .gallery {
    column-count: 2;
  }
}

@media (max-width: 480px) {
  .gallery {
    column-count: 1;
  }
}

/* === Modal === */

.modal-xl {
  --bs-modal-width: 2140px !important;
}


#imageModal .modal-dialog {
  touch-action: auto !important;
}


#zoomContainer {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
	  touch-action: pinch-zoom!important; /* or just remove the line */
  max-height: 90vh;
}


#modalImage {
  /* Remove or change this line */
  /* touch-action: none; */
  touch-action: pinch-zoom!important; /* or just remove the line */
	height: auto!important;
	max-height: 84vh!important;
	margin: auto!important;
}

.gps-caption{
	text-align: center;
	vertical-align: middle;
	color: whitesmoke;
	font-size: 2rem;
	font-family: "Bitcount Grid Double", system-ui;
}
