.tg-thumbnail.tg-active {
	border: 2px solid #0073aa;
	box-shadow: 0 0 0 2px #b3d8f7;
}
/* Gallery main wrapper */
.tg-gallery {
	max-width: 400px;
	margin: 20px auto;
	font-family: sans-serif;
}

/* Main image area */

.tg-main-image-wrapper {
	position: relative;
	width: 500px;
	height: 500px;
	margin: 0 auto 10px auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.tg-main-image, .tg-main-image.tg-placeholder {
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: #eee;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 1.2em;
	color: #888;
	border-radius: 8px;
	border: 1px solid #ccc;
	z-index: 1;
}
.tg-main-image.tg-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Modern chevron arrows */
.tg-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	font-size: 2.6em;
	font-family: inherit;
	cursor: pointer;
	color: #0073aa;
	padding: 0 6px;
	z-index: 2;
	transition: color 0.2s;
	line-height: 1;
	box-shadow: none;
}
.tg-arrow:hover {
	color: #005077;
}
.tg-arrow-left {
	left: 8px;
}
.tg-arrow-right {
	right: 8px;
}

/* Thumbnails */
.tg-thumbnails {
	display: flex;
	gap: 8px;
	justify-content: center;
}
.tg-thumbnail, .tg-thumbnail.tg-placeholder {
	width: 60px;
	height: 60px;
	object-fit: cover;
	background: #f5f5f5;
	border-radius: 4px;
	border: 1px solid #ccc;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.9em;
	color: #aaa;
}
.tg-thumbnail.tg-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
}
@media (max-width: 768px) {

  .tg-gallery {
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px auto !important;
    padding: 0 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .tg-main-image-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
  }

  .tg-main-image,
  .tg-main-image.tg-placeholder {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
  }

  .tg-thumbnails {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
    padding-bottom: 8px;
  }

  .tg-thumbnail,
  .tg-thumbnail.tg-placeholder {
    flex: 0 0 60px !important;
    width: 60px !important;
    height: 60px !important;
  }
}