.main-wrapper {
	min-height: 100%;
	width: 100%;
	padding: 0px 20px;
	overflow-y: auto;
}
.gallery-container {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
}
.swiper {
	width: 100%;
	padding: 20px 0 60px 0;
}
.swiper-slide {
	height: auto;
}
.swiper-button-next,
.swiper-button-prev {
	display: none;
}
.swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background: #cbd5e0;
	opacity: 1;
	transition: all 0.3s ease;
}
.swiper-pagination-bullet-active {
	background: #667eea;
	width: 30px;
	border-radius: 6px;
}
@media (max-width: 768px) {
	.swiper-pagination {
		display: none;
	}
}
.gallery-card {
	background: white;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 15px 35px rgba(0,0,0,0.2);
	transition: all 0.4s ease;
	cursor: pointer;
	height: 100%;
}
.gallery-card:hover {
	transform: translateY(-15px) scale(1.02);
	box-shadow: 0 25px 50px rgba(0,0,0,0.3);
}
.card-image {
	width: 100%;
	height: 280px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #e2e8f0;
}
.card-content {
	display: none;
}
.card-title {
	display: none;
}
.card-description {
	display: none;
}
/* Modal Styles */
.modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.95);
	z-index: 9999;
	animation: fadeIn 0.3s ease;
	overflow: auto;
	padding: 20px;
}
.modal-overlay.active {
	display: flex;
	align-items: center;
	justify-content: center;
}
.modal-content {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: transparent;
}
.modal-image {
	width: 100%;
	height: 100%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}
.modal-body {
	display: none;
}
.modal-title {
	display: none;
}
.modal-description {
	display: none;
}
.modal-counter {
	display: none;
}
.modal-close {
	position: fixed;
	top: 25px;
	right: 25px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: rgba(255,255,255,0.95);
	border: none;
	font-size: 28px;
	color: #2d3748;
	cursor: pointer;
	z-index: 10;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}
.modal-close:hover {
	transform: scale(1.1) rotate(90deg);
	background: #f56565;
	color: white;
}
.modal-nav {
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	width: 55px;
	height: 55px;
	border-radius: 50%;
	background: rgba(255,255,255,0.95);
	border: none;
	font-size: 32px;
	color: #2d3748;
	cursor: pointer;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 5px 20px rgba(0,0,0,0.3);
	z-index: 10;
}
.modal-nav:hover {
	transform: translateY(-50%) scale(1.15);
	background: #667eea;
	color: white;
}
.modal-prev {
	left: 50%;
	margin-left: -450px;
}
.modal-next {
	right: 50%;
	margin-right: -450px;
}
/* Animations */
@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}
/* Responsive */
@media (max-width: 768px) {
	.card-image {
        height: 220px;
	}
	.modal-image {
        height: 100%;
	}
	.modal-nav {
        width: 45px;
        height: 45px;
        font-size: 24px;
	}
	.modal-prev {
        left: 10px;
        margin-left: 0;
	}
	.modal-next {
        right: 10px;
        margin-right: 0;
	}
	.modal-close {
        width: 40px;
        height: 40px;
		font-size: 24px;
        top: 15px;
        right: 15px;
	}
}
@media (max-width: 480px) {
	.main-wrapper {
		padding: 20px 10px;
	}
}