/* style.css */

/* Base styles for the whole page */
body {
  font-family: 'Poppins', sans-serif; /* Use Poppins font with sans-serif fallback */
  margin: 0; /* Remove default margin */
  background-color: #f0f8ff; /* Light blue background color */
  color: #222; /* Dark text color for good contrast */
}

/* Container to center content and limit max width */
.container {
  max-width: 1000px; /* Maximum width */
  margin: auto; /* Center horizontally */
  padding: 40px 20px; /* Vertical and horizontal padding */
}

/* Hero section styling */
.hero {
  background: linear-gradient(135deg, #0077b6, #00b4d8); /* Blue gradient background */
  color: white; /* White text */
  padding: 80px 20px; /* Padding around content */
  text-align: center; /* Center align text */
  border-bottom-left-radius: 50px; /* Rounded bottom-left corner */
  border-bottom-right-radius: 50px; /* Rounded bottom-right corner */
}

/* Hero main heading */
.hero h1 {
  font-size: 3rem; /* Large font size */
  margin-bottom: 10px; /* Space below heading */
}

/* Hero paragraph styling */
.hero p {
  font-size: 1.2rem; /* Slightly larger font size for readability */
  opacity: 0.95; /* Slight transparency for subtle effect */
}

/* Navigation bar styles */
nav {
  margin-top: 30px; /* Space above nav */
}

/* Navigation links */
nav a {
  color: white; /* White text */
  margin: 0 10px; /* Horizontal margin */
  text-decoration: none; /* Remove underline */
  font-weight: 600; /* Semi-bold font weight */
  padding: 10px 18px; /* Padding inside links */
  background: rgba(255,255,255,0.15); /* Semi-transparent white background */
  border-radius: 8px; /* Rounded corners */
  transition: 0.3s; /* Smooth transition on hover */
}

/* Navigation links hover effect */
nav a:hover {
  background: rgba(255,255,255,0.3); /* Increase background opacity on hover */
}

/* Section wrapper with padding and center alignment */
.section {
  padding: 60px 0; /* Vertical padding */
  text-align: center; /* Center text inside sections */
}

/* Section headings */
.section h2 {
  color: #0077b6; /* Blue color matching hero */
  font-size: 2rem; /* Large heading size */
  margin-bottom: 20px; /* Space below heading */
}

/* Cards container with flex layout */
.cards {
  display: flex; /* Use flexbox */
  flex-wrap: wrap; /* Wrap cards to next line if needed */
  justify-content: center; /* Center cards horizontally */
  gap: 20px; /* Space between cards */
  margin-top: 30px; /* Space above cards */
}

/* Individual card styling */
.card {
  background-color: white; /* White background */
  border: 1px solid #ccc; /* Light gray border */
  padding: 25px; /* Inner spacing */
  border-radius: 15px; /* Rounded corners */
  box-shadow: 0 4px 10px rgba(0,0,0,0.1); /* Subtle shadow */
  width: 280px; /* Fixed width */
  transition: transform 0.2s; /* Smooth transform for hover */
}

/* Card hover effect - lifts card up slightly */
.card:hover {
  transform: translateY(-5px); /* Move up by 5px */
}

/* Blockquote styling for quotes or highlights */
blockquote {
  font-style: italic; /* Italic text */
  border-left: 4px solid #00b4d8; /* Blue vertical bar on left */
  margin: 20px auto; /* Vertical margin and auto horizontal centering */
  max-width: 700px; /* Limit width */
  padding-left: 15px; /* Padding to separate text from border */
  color: #444; /* Dark gray text */
}

/* Button inside the 'join' section */
.join .btn {
  display: inline-block; /* Inline-block for padding */
  padding: 12px 24px; /* Button padding */
  margin-top: 20px; /* Space above button */
  background-color: #0077b6; /* Blue background */
  color: white; /* White text */
  border-radius: 8px; /* Rounded corners */
  text-decoration: none; /* Remove underline */
  font-weight: bold; /* Bold text */
  transition: 0.3s; /* Smooth transition on hover */
}

/* Hover effect for the join button */
.join .btn:hover {
  background-color: #023e8a; /* Darker blue on hover */
}

/* Footer styles */
footer {
  background-color: #ddd; /* Light gray background */
  text-align: center; /* Center text */
  padding: 20px; /* Padding around text */
  margin-top: 50px; /* Space above footer */
  font-size: 0.9rem; /* Slightly smaller font */
  color: #555; /* Medium gray text */
}

/* Responsive styles for smaller screens */
@media (max-width: 768px) {
  /* Stack cards vertically */
  .cards {
    flex-direction: column; /* Column layout */
    align-items: center; /* Center cards */
  }

  /* Cards take almost full width on small screens */
  .card {
    width: 90%; /* 90% of container width */
  }

  /* Smaller hero heading font size */
  .hero h1 {
    font-size: 2.2rem;
  }

  /* Adjust nav links margin and display for mobile */
  nav a {
    display: inline-block; /* Make sure links are block-level */
    margin: 8px; /* Margin around links */
  }
}

/* Login container styles */
.login-container {
  max-width: 400px; /* Limit width */
  margin: 100px auto; /* Center with vertical margin */
  padding: 30px; /* Padding inside container */
  background-color: rgba(255, 255, 255, 0.1); /* Transparent white background */
  border-radius: 12px; /* Rounded corners */
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2); /* Shadow for depth */
  text-align: center; /* Center text inside */
}

/* Heading inside login container */
.login-container h2 {
  margin-bottom: 20px; /* Space below heading */
  color: #fff; /* White text */
}

/* Inputs inside login container */
.login-container input {
  width: 100%; /* Full width inputs */
  padding: 12px; /* Padding inside input */
  margin-bottom: 15px; /* Space below inputs */
  border: none; /* Remove default border */
  border-radius: 6px; /* Rounded input corners */
  font-size: 1rem; /* Normal font size */
}
