/* ==========================================================================
   Mobile Responsive CSS for Loyalty Page
   ========================================================================== */

/* Mobile Logo Styles */
@media (max-width: 768px) {
	/* Side Panel Logo Mobile Styles */
	.side-panel-logo {
		padding: 20px 25px;
		text-align: center;
		border-bottom: 1px solid rgba(233, 236, 239, 0.5);
		background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
	}

	.side-panel-logo img {
		height: 50px !important;
		width: auto !important;
		max-width: 200px;
		filter: drop-shadow(0 2px 8px rgba(0,0,0,0.15));
		transition: all 0.3s ease;
	}

	/* Enhanced mobile logo interaction */
	.side-panel-logo:hover img {
		transform: scale(1.05);
		filter: drop-shadow(0 4px 12px rgba(0,0,0,0.2));
	}

	/* Header Logo Mobile Styles - Show logo same as desktop */
	.header__area-menubar-left {
		display: block !important; /* Show logo container on mobile */
		order: 1;
		text-align: left; /* Align to left like desktop */
		padding: 0 !important; /* Remove all padding to fit to top */
		margin: 0 !important; /* Remove all margins */
		background: transparent;
		position: absolute; /* Position absolutely to control exact placement */
		top: 0; /* Fit exactly to top */
		left: 0; /* Fit exactly to left */
		z-index: 1001;
	}

	.header__area-menubar-left-logo {
		display: block !important; /* Show logo on mobile same as desktop */
	}

	.header__area-menubar-left-logo img {
		display: block !important;
		top: -120px;
		right: 10px;
		width: 280px !important; /* Increased size for better visibility */
		height: 280px !important;
		position: relative !important;
		margin: 0 !important; /* Reset margins to fit exactly like desktop */
		padding: 0 !important;
		filter: drop-shadow(0 6px 12px rgba(0,0,0,0.3)) drop-shadow(0 3px 6px rgba(0,0,0,0.2)) !important;
		transition: all 0.3s ease !important;
	}

	.header__area-menubar-left-logo:hover img {
		transform: translateY(-2px) !important;
	}

	/* Adjust header layout for mobile with logo */
	.header__area {
		padding: 0 !important;
		margin: 0 !important;
		position: relative;
		width: 100%;
	}

	.header__area-menubar {
		display: flex !important;
		flex-direction: row !important;
		justify-content: space-between !important;
		align-items: flex-start !important; /* Align to top */
		padding: 0 !important;
		margin: 0 !important;
		min-height: 180px !important; /* Match logo height */
		position: relative;
		width: 100%;
	}

	/* Perfect hamburger positioning for mobile */
	.header__area-menubar-right {
		position: absolute !important;
		top: 15px !important; /* Moved slightly higher for better alignment */
		right: 15px !important; /* Moved slightly closer to edge for better balance */
		z-index: 1002 !important;
		display: flex !important;
		align-items: center !important;
	}

	/* Loyalty Banner Mobile Styles */
	.about__banner {
		height: 100vh !important;
		min-height: 600px !important;
		background-attachment: scroll !important; /* Fix for mobile */
		background-position: center center !important;
		background-size: cover !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: relative !important;
		overflow: hidden !important;
	}

	.about__banner-content {
		position: relative !important;
		text-align: center !important;
		padding: 20px !important;
		z-index: 2 !important;
		max-width: 90% !important;
		margin: 0 auto !important;
	}

	.about__banner-content-title h1 {
		font-size: 2.5rem !important; /* Responsive font size */
		line-height: 1.2 !important;
		margin-bottom: 20px !important;
		text-shadow: 2px 2px 4px rgba(0,0,0,0.7) !important;
	}

	.about__banner-content-title p {
		font-size: 1.1rem !important;
		line-height: 1.5 !important;
		margin-top: 15px !important;
		text-shadow: 1px 1px 2px rgba(0,0,0,0.7) !important;
		max-width: 100% !important;
	}

	/* Scroll Down Button Mobile */
	.scroll-down-btn {
		position: absolute !important;
		bottom: 30px !important;
		left: 50% !important;
		transform: translateX(-50%) !important;
		z-index: 3 !important;
		cursor: pointer !important;
		padding: 15px !important;
		border-radius: 50% !important;
		background: rgba(54, 180, 229, 0.8) !important;
		transition: all 0.3s ease !important;
		animation: bounce 2s infinite !important;
	}

	.scroll-down-btn:hover {
		background: rgba(54, 180, 229, 1) !important;
		transform: translateX(-50%) scale(1.1) !important;
	}

	.scroll-arrow i {
		color: white !important;
		font-size: 1.5rem !important;
		display: block !important;
	}

	@keyframes bounce {
		0%, 20%, 50%, 80%, 100% {
			transform: translateX(-50%) translateY(0);
		}
		40% {
			transform: translateX(-50%) translateY(-10px);
		}
		60% {
			transform: translateX(-50%) translateY(-5px);
		}
	}

	/* Loyalty Content Section Mobile */
	.about__two {
		padding: 60px 0 !important;
	}

	.about__two .container {
		padding: 0 20px !important;
	}

	.about__two h2 {
		font-size: 2rem !important;
		line-height: 1.3 !important;
		margin-bottom: 20px !important;
	}

	.about__two p {
		font-size: 1rem !important;
		line-height: 1.6 !important;
		margin-bottom: 15px !important;
	}

	.subtitle {
		font-size: 0.9rem !important;
		margin-bottom: 15px !important;
	}

	/* Small screen adjustments */
	@media (max-width: 576px) {
		.about__banner-content-title h1 {
			font-size: 2rem !important;
		}
		
		.about__banner-content-title p {
			font-size: 1rem !important;
		}
		
		.scroll-down-btn {
			bottom: 20px !important;
		}
	}

	/* Side panel enhancements for loyalty page */
	.side-panel {
		width: 100%;
		max-width: 320px;
		height: 100vh;
		position: fixed;
		top: 0;
		right: -100%;
		background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
		box-shadow: -5px 0 25px rgba(0,0,0,0.2);
		transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
		z-index: 9999;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.side-panel.open {
		right: 0;
	}

	.side-panel-nav ul li a {
		color: #333;
		font-weight: 500;
		transition: all 0.3s ease;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}

	.side-panel-nav ul li a:hover,
	.side-panel-nav ul li a.active {
		background: linear-gradient(135deg, #36B4E5 0%, #2a9fd8 100%);
		color: white;
		transform: translateX(10px);
	}

	/* Loyalty page specific side panel highlighting */
	.side-panel-nav ul li a[href="loyalty.html"] {
		background: linear-gradient(135deg, #36B4E5 0%, #2a9fd8 100%);
		color: white;
		font-weight: 600;
	}

	/* Fix for iOS Safari viewport issues */
	.about__banner {
		min-height: -webkit-fill-available;
	}

	/* Smooth scrolling for mobile */
	html {
		scroll-behavior: smooth;
		-webkit-overflow-scrolling: touch;
	}
}

/* Tablet specific adjustments */
@media (min-width: 769px) and (max-width: 1024px) {
	.about__banner-content-title h1 {
		font-size: 3rem !important;
	}
}

/* Landscape mobile adjustments */
@media (max-width: 768px) and (orientation: landscape) {
	.about__banner {
		height: 100vh !important;
		min-height: 500px !important;
	}
	
	.scroll-down-btn {
		bottom: 20px !important;
	}
}
