/* ===== MOBILE VIEW FIXES ===== */

/* Fix 1: Navbar - Hide profile elements on mobile and adjust logo */
@media (max-width: 768px) {
  .logo-text {
    font-size: 1.2rem !important;
    white-space: nowrap !important;
    line-height: 1 !important;
  }
  
  .logo-container {
    gap: 8px !important;
  }
  
  .logo-circle {
    width: 40px !important;
    height: 40px !important;
  }
  
  .navbar {
    padding: 0.6rem 4% !important;
  }
  
  /* Hide desktop profile elements on mobile */
  .desktop-only {
    display: none !important;
  }
}

@media (max-width: 480px) {
  .logo-text {
    font-size: 1rem !important;
  }
  
  .logo-circle {
    width: 35px !important;
    height: 35px !important;
  }
}

/* Fix 2: Mobile Menu - Professional Design with Sections */
.mobile-menu {
  position: fixed !important;
  top: 0 !important;
  right: -100% !important;
  left: auto !important;
  width: 85% !important;
  height: 100vh !important;
  background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%) !important;
  z-index: 1001 !important;
  box-shadow: -8px 0 30px rgba(0, 0, 0, 0.15) !important;
  transition: var(--transition) !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 4rem 1.5rem 2rem !important;
  overflow-y: auto !important;
}

/* Mobile menu spacer to push profile to bottom */
.mobile-menu-spacer {
  flex: 1 !important;
  min-height: 2rem !important;
}

.mobile-menu.active {
  right: 0 !important;
  left: auto !important;
}

/* Fix 3: Sliding pages - Better mobile padding and alignment */
@media (max-width: 768px) {
  .hero-carousel {
    margin-top: 80px !important;
    padding: 1rem !important;
  }
  
  .carousel-slide {
    padding: 1rem !important;
  }
  
  .slide-background {
    padding: 1.5rem !important;
    gap: 1.5rem !important;
  }
  
  .slide-content {
    padding: 0 1rem !important;
  }
  
  .hero-title {
    font-size: 2rem !important;
    line-height: 1.1 !important;
  }
  
  .hero-description {
    font-size: 0.9rem !important;
    line-height: 1.4 !important;
    padding: 0 0.5rem !important;
  }
  
  .hero-features {
    gap: 0.6rem !important;
    padding: 0 1rem !important;
  }
  
  .feature-item {
    padding: 0.4rem 0.8rem !important;
    font-size: 0.85rem !important;
  }
  
  .hero-btns {
    gap: 1rem !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 0 1rem !important;
  }
  
  .cta-btn {
    width: 100% !important;
    max-width: 280px !important;
    padding: 0.8rem 1.5rem !important;
    font-size: 0.9rem !important;
  }
}

@media (max-width: 480px) {
  .hero-carousel {
    margin-top: 70px !important;
    padding: 0.5rem !important;
  }
  
  .slide-background {
    padding: 1rem !important;
    gap: 1rem !important;
  }
  
  .hero-title {
    font-size: 1.8rem !important;
  }
  
  .hero-description {
    font-size: 0.85rem !important;
    padding: 0 !important;
  }
  
  .hero-features {
    padding: 0 0.5rem !important;
  }
  
  .feature-item {
    padding: 0.3rem 0.6rem !important;
    font-size: 0.8rem !important;
  }
  
  .cta-btn {
    padding: 0.7rem 1.2rem !important;
    font-size: 0.85rem !important;
  }
}

/* Fix 4: Instant Radiance Section - Mobile alignment */
@media (max-width: 768px) {
  .instant-radiance {
    padding: 3rem 1.5rem !important;
  }
  
  .radiance-content {
    flex-direction: column !important;
    gap: 2rem !important;
    text-align: center !important;
  }
  
  .radiance-text {
    order: 1 !important;
    padding: 0 1rem !important;
  }
  
  .radiance-visual {
    order: 2 !important;
    padding: 0 1rem !important;
  }
  
  .radiance-title {
    font-size: 1.8rem !important;
    line-height: 1.2 !important;
  }
  
  .radiance-description {
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
  }
  
  .radiance-features {
    gap: 0.8rem !important;
    margin: 1.5rem 0 !important;
  }
  
  .radiance-feature {
    padding: 0.6rem 1rem !important;
    font-size: 0.85rem !important;
  }
}

@media (max-width: 480px) {
  .instant-radiance {
    padding: 2rem 1rem !important;
  }
  
  .radiance-content {
    gap: 1.5rem !important;
  }
  
  .radiance-text {
    padding: 0 0.5rem !important;
  }
  
  .radiance-visual {
    padding: 0 0.5rem !important;
  }
  
  .radiance-title {
    font-size: 1.6rem !important;
  }
  
  .radiance-description {
    font-size: 0.85rem !important;
  }
  
  .radiance-features {
    gap: 0.6rem !important;
  }
  
  .radiance-feature {
    padding: 0.5rem 0.8rem !important;
    font-size: 0.8rem !important;
  }
}

/* Fix 5: Images Section - Center alignment */
@media (max-width: 768px) {
  .ingredients-section {
    padding: 3rem 1.5rem !important;
  }
  
  .ingredients-grid {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    padding: 0 1rem !important;
  }
  
  .ingredient-card {
    text-align: center !important;
    padding: 1.5rem !important;
  }
  
  .ingredient-image {
    width: 120px !important;
    height: 120px !important;
    margin: 0 auto 1rem !important;
  }
  
  .ingredient-title {
    font-size: 1.3rem !important;
    margin-bottom: 0.8rem !important;
  }
  
  .ingredient-description {
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 480px) {
  .ingredients-section {
    padding: 2rem 1rem !important;
  }
  
  .ingredients-grid {
    gap: 1.5rem !important;
    padding: 0 0.5rem !important;
  }
  
  .ingredient-card {
    padding: 1rem !important;
  }
  
  .ingredient-image {
    width: 100px !important;
    height: 100px !important;
  }
  
  .ingredient-title {
    font-size: 1.2rem !important;
  }
  
  .ingredient-description {
    font-size: 0.85rem !important;
  }
}

/* Fix 6: Customer Reviews Section - Mobile optimization */
@media (max-width: 768px) {
  .reviews-section {
    padding: 3rem 1.5rem !important;
  }
  
  .reviews-grid {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
    padding: 0 1rem !important;
  }
  
  .review-card {
    padding: 1.5rem !important;
    text-align: center !important;
  }
  
  .review-header {
    flex-direction: column !important;
    gap: 1rem !important;
    margin-bottom: 1rem !important;
  }
  
  .reviewer-info {
    text-align: center !important;
  }
  
  .reviewer-name {
    font-size: 1.1rem !important;
  }
  
  .reviewer-location {
    font-size: 0.85rem !important;
  }
  
  .review-rating {
    justify-content: center !important;
  }
  
  .review-text {
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    text-align: left !important;
  }
  
  .review-date {
    font-size: 0.8rem !important;
    text-align: center !important;
    margin-top: 1rem !important;
  }
}

@media (max-width: 480px) {
  .reviews-section {
    padding: 2rem 1rem !important;
  }
  
  .reviews-grid {
    gap: 1rem !important;
    padding: 0 0.5rem !important;
  }
  
  .review-card {
    padding: 1rem !important;
  }
  
  .review-header {
    gap: 0.8rem !important;
  }
  
  .reviewer-name {
    font-size: 1rem !important;
  }
  
  .reviewer-location {
    font-size: 0.8rem !important;
  }
  
  .review-text {
    font-size: 0.85rem !important;
  }
  
  .review-date {
    font-size: 0.75rem !important;
  }
}

/* Mobile Menu Section Styling */
.mobile-section-title {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: #6c757d !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin: 1.5rem 0 1rem 0 !important;
  padding-bottom: 0.5rem !important;
  border-bottom: 1px solid #e9ecef !important;
  font-family: 'Montserrat', sans-serif !important;
}

/* Navigation Links Section */
.mobile-nav-section {
  margin-bottom: 0 !important;
}

.mobile-nav-links {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.mobile-nav-links li {
  margin-bottom: 0.5rem !important;
}

.mobile-nav-links li a {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  padding: 0.75rem 1rem !important;
  color: #495057 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  font-size: 0.95rem !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  background: transparent !important;
}

.mobile-nav-links li a:hover {
  background: rgba(212, 175, 55, 0.1) !important;
  color: #d4af37 !important;
  transform: translateX(5px) !important;
}

.mobile-nav-links li a i {
  width: 20px !important;
  color: #d4af37 !important;
  font-size: 1.1rem !important;
}

/* Profile Section */
.mobile-profile-section {
  margin-top: 0 !important;
  padding: 1.5rem !important;
  background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%) !important;
  border-radius: 12px !important;
  border: 1px solid #e9ecef !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
}

.mobile-profile-info {
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
  margin-bottom: 1.5rem !important;
}

.mobile-profile-avatar {
  width: 50px !important;
  height: 50px !important;
  background: linear-gradient(135deg, #d4af37, #bf953f) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: white !important;
  font-size: 1.5rem !important;
}

.mobile-profile-details h4 {
  margin: 0 0 0.25rem 0 !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  color: #212529 !important;
}

.mobile-profile-details p {
  margin: 0 !important;
  font-size: 0.85rem !important;
  color: #6c757d !important;
}

.mobile-profile-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.75rem !important;
}

.mobile-profile-action {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  padding: 0.75rem 1rem !important;
  color: #495057 !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  font-size: 0.9rem !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  background: transparent !important;
  border: 1px solid #e9ecef !important;
}

.mobile-profile-action:hover {
  background: rgba(212, 175, 55, 0.1) !important;
  color: #d4af37 !important;
  border-color: #d4af37 !important;
}

.mobile-profile-action i {
  width: 20px !important;
  color: #d4af37 !important;
}

/* Logout Button */
.mobile-logout-btn {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  width: 100% !important;
  padding: 0.75rem 1rem !important;
  background: linear-gradient(135deg, #dc3545, #c82333) !important;
  border: none !important;
  color: white !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  text-align: left !important;
  border-radius: 8px !important;
}

.mobile-logout-btn:hover {
  background: linear-gradient(135deg, #c82333, #a71e2a) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 15px rgba(220, 53, 69, 0.3) !important;
}

.mobile-logout-btn i {
  width: 20px !important;
  color: white !important;
}

/* Login Section */
.mobile-login-section {
  margin-top: 0 !important;
  padding: 1.5rem !important;
  background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%) !important;
  border-radius: 12px !important;
  border: 1px solid #e9ecef !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
}

.mobile-login-btn {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  width: 100% !important;
  padding: 1rem 1.5rem !important;
  background: linear-gradient(135deg, #d4af37, #bf953f) !important;
  color: white !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
  text-align: center !important;
  justify-content: center !important;
}

.mobile-login-btn:hover {
  background: linear-gradient(135deg, #bf953f, #a8862e) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 15px rgba(212, 175, 55, 0.3) !important;
}

.mobile-login-btn i {
  width: 20px !important;
  color: white !important;
}

/* Additional mobile improvements */
@media (max-width: 768px) {
  /* Better touch targets */
  .nav-toggle {
    padding: 0.5rem !important;
    font-size: 1.3rem !important;
  }
  
  .mobile-menu .close-menu {
    padding: 0.8rem !important;
    font-size: 1.5rem !important;
  }
  
  /* Improved spacing */
  .mobile-menu {
    padding: 4rem 1.5rem 2rem !important;
  }
}

@media (max-width: 480px) {
  .mobile-menu {
    width: 85% !important;
    padding: 3rem 1rem !important;
  }
  
  .mobile-menu ul li a {
    font-size: 0.95rem !important;
  }
  
  .mobile-menu .close-menu {
    top: 20px !important;
    right: 20px !important;
  }
}
