/**
 * The following styles get applied both on the front of your site
 * and in the editor.
 *
 * Replace them with your own styles or remove the file completely.
 */
.bottom .slick-dots li,
.side .slick-dots li {
	opacity: 0.5;
	width: 24px;
    height: 24px;
	display: flex;
	color: #fff;
	font-size: 12px;
	text-align: center;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
}
.bottom .slick-dots li.dot,
.side .slick-dots li.dot {
	font-size: 0;
}

.bottom .slick-dots li.number,
.side .slick-dots li.number {
}

.bottom .slick-dots li::marker,
.side .slick-dots li::marker {
	content: none;
}
.bottom .slick-dots li.slick-active,
.side .slick-dots li.slick-active {
	opacity: 1;
}
.bottom .slick-dots li:hover,
.side .slick-dots li:hover {
	opacity: 1;
}

.bottom .slick-next,
.bottom .slick-prev {
	border-radius: 50% !important;
	width: 40px !important;
	height: 40px !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.bottom .slick-prev {
	left: -56px !important;
}
.bottom .slick-next {
	right: -56px !important;
}

.prev-btn svg,
.next-btn svg {
	width: 100%;
	height: 100%;
}
.prev-btn,
.next-btn {
	width: 30px;
	height: 30px;
	cursor: pointer;
}
.bottom .custom .svg-arrow {
	display: flex !important;
	justify-content: center;
	gap: 10px;
	margin-top: 10px;
}
.bottom .custom1 .svg-arrow {
	display: flex !important;
	justify-content: center;
	gap: 10px;
	margin-top: 10px;
}
.bottom .custom2 .svg-arrow {
	display: flex !important;
	justify-content: center;
	gap: 10px;
	margin-top: 10px;
}
.bottom .custom3 .svg-arrow {
	display: flex !important;
	justify-content: center;
	gap: 10px;
	margin-top: 10px;
}
.custom .prev-btn:focus,
.custom1 .prev-btn :focus,
.custom2 .prev-btn:focus,
.custom3 .prev-btn:focus,
.custom .next-btn:focus,
.custom1 .next-btn :focus,
.custom2 .next-btn:focus,
.custom3 .next-btn:focus {
	border: none !important;
	outline: none !important;
}

.next-btn svg {
	transform: rotate(180deg);
}
.prev-btn.slick-arrow.slick-disabled,
.next-btn.slick-arrow.slick-disabled {
	opacity: 0.5;
	cursor: default;
}

.bottom .slick-prev {
	bottom: -106px !important;
	top: unset !important;
	left: 45% !important;
	transform: translate(-50%, -50%);
}
.bottom .slick-next {
	bottom: -106px !important;
	top: unset !important;
	right: 40% !important;
	transform: translate(-50%, -50%);
}

.side .prev-btn {
	border-radius: 50% !important;
	width: 30px !important;
	height: 30px !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.side .next-btn {
	border-radius: 50% !important;
	width: 30px !important;
	height: 30px !important;
	display: flex;
	align-items: center;
	justify-content: center;
}
.side .slick-slide,
.bottom .slick-slide {
	margin: 0 5px;
}
.side .mcfgb-gallery-single,
.bottom .mcfgb-gallery-single {
	position: relative;
}
.side .mcfgb-gallery-single img,
.side .mcfgb-gallery-single video,
.bottom .mcfgb-gallery-single img,
.bottom .mcfgb-gallery-single video,
.bottom .mcfgb-gallery-single iframe,
.side .mcfgb-gallery-single iframe {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.side .slick-dots,
.bottom .slick-dots {
	bottom: unset;
	position: relative;
	margin: 10px 0 10px;
}

.side {
	position: relative;
}
.side #btn-wrap {
	position: absolute;
	top: 50%;
	width: 100%;
	left: 0;
	transform: translateY(-50%);
}
.bottom #btn-wrap {
	margin-top: 55px;
}
.false .custom1,
.false .custom2,
.false .custom3,
.undefined .custom1,
.undefined .custom2,
.undefined .custom3 {
	display: none;
}
.mcfgb-gallery-single {
	position: relative;
}
.slick-dots li {
	margin: 5px !important;
	cursor: pointer;
}
.img-caption {
	text-align: center;
	margin: 10px 0 0;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.4;
	transition: color 0.3s ease;
}
.img-description {
	text-align: center;
	margin: 5px 0 0;
	font-size: 14px;
	line-height: 1.5;
	transition: color 0.3s ease;
}
.slick-dots .number {
	font-size: 24px;
}

.slick-dots li.number {
	width: 26px;
	height: 25px;
	font-size: 10px;
	border-radius: 50%;
	display: flex;
    align-items: center;
    justify-content: center;
}
.carouselType,.simpleType{
	margin: 100px 0;
}


.carouselType.side .custom,
.carouselType.side .custom1,
.carouselType.side .custom2,
.carouselType.side .custom3 {
	top: 42%;
}

/* Responsive styles for smooth transitions */
@media (max-width: 1024px) {
	.side .mcfgb-gallery-single,
	.bottom .mcfgb-gallery-single {
		margin: 0 3px;
	}
	
	.side .slick-slide,
	.bottom .slick-slide {
		margin: 0 3px;
	}
}

@media (max-width: 768px) {
	.side .mcfgb-gallery-single,
	.bottom .mcfgb-gallery-single {
		margin: 0 2px;
	}
	
	.side .slick-slide,
	.bottom .slick-slide {
		margin: 0 2px;
	}
	
	.bottom .slick-prev {
		left: 40% !important;
	}
	
	.bottom .slick-next {
		right: 35% !important;
	}
}
.side .custom,
.side .custom1,
.side .custom2,
.side .custom3 {
	position: absolute;
	width: 100%;
	top: 43%;
	transform: translateY(-50%);
	z-index: 2;
}

.side .svg-arrow {
	display: flex;
	justify-content: space-between;
}
.side .svg-arrow .next-btn {
	right: -50px;
	position: relative;
}
.side .svg-arrow .prev-btn {
	left: -50px;
	position: relative;
}

.bottom .slick-dotted {
	margin-bottom: 20px !important;
}
.simpleType {
	margin-bottom: 150px;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.side .slick-list {
	padding-bottom: 50px;
}
.side .img-caption {
	overflow: hidden;
	margin: 0;
}

.side .slick-slide {
	position: relative;
	text-align: center;
}
.side .slick-dots {
	position: absolute;
	left: 0;
}
.side .slick-dots,.bottom .slick-dots {
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	width: 100%;
    padding: 0;
}

.mcfgb-gallery-single:focus {
	outline: none !important;
	border: none !important;
}
.slick-slide:focus {
	outline: none;
}
video:focus {
	outline: none !important;
}
.slick-dotted.slick-slider {
	z-index: 1;
}


.mcfgb-gallery-single a {
	display: block;
	width: 100%;
	height: 100%;
}
.mcfgb-gallery-single a:focus {
	outline: none !important;
	border: none !important;
}
.side .slick-slider,
.bottom .slick-slider {
	position: relative;
	z-index: 1;
}
@media (max-width: 1023px) {
	.side .svg-arrow .next-btn {
		right: -18px;
	}
	.side .svg-arrow .prev-btn {
		left: -18px;
	}
	.side .slick-slider {
		padding: 0 40px !important;
	}
}
@media (max-width: 767px) {
	.side .svg-arrow .next-btn {
		right: 0;
	}
	.side .svg-arrow .prev-btn {
		left: 0;
	}
	.side .slick-slider {
		padding: 0 40px !important;
		position: relative !important;
	}
	.side .img-caption {
		font-size: 13px;
	}
	.side .slick-list {
		padding-bottom: 20px;
	}
	
}

// Responsive Visibility Classes
.mcfgb-hide-desktop {
  @media (min-width: 1025px) {
    display: none !important;
  }
}
.mcfgb-hide-tablet {
  @media (min-width: 768px) and (max-width: 1024px) {
    display: none !important;
  }
}
.mcfgb-hide-mobile {
  @media (max-width: 767px) {
    display: none !important;
  }
}

// Arrow Responsive Visibility Classes
.mcfgb-hide-arrows-desktop {
  @media (min-width: 1025px) {
    display: none !important;
  }
}
.mcfgb-hide-arrows-tablet {
  @media (min-width: 768px) and (max-width: 1024px) {
    display: none !important;
  }
}
.mcfgb-hide-arrows-mobile {
  @media (max-width: 767px) {
    display: none !important;
  }
}

/* Aspect Ratio Styles */
.ratio-part {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9; /* fallback, will be overridden by inline style */
  overflow: hidden;
  display: block;
}

.ratio-part img,
.ratio-part video,
.ratio-part iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
