/* Global Styles */
body {
    background-color: #121212;
    color: #ffffff;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    margin: 0; /* Reset default margins to help with responsiveness */
    padding: 0;
}


a {
    color: rgb(195 195 195);
}

/* Navbar */
.navbar, .bg-dark {
    background-color: #121212;
}

#loginlink{
color: #f8f9fa;
}

/* Video Container */
.video-container {
    position: relative;
    overflow: hidden;
    height: 100vh;
}

.video-container video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
    object-fit: cover;
}

.video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2); /* Dark overlay for better text contrast */
    z-index: 1;
}

/* Hero Content */
.hero-content {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    text-align: center;
    padding: 20px;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 8px;
    backdrop-filter: blur(5px); /* Optional blur effect */
}

/* Slim Horizontal Rule */
.hero-hr {
  border: 0;
  height: 1px;
  background: #444;
  margin: 10px auto;
  width: 80%;
}

/* Title for the stats section */
.hero-stats-title {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
}

/* Daily Stats styling */
.hero-stats {
  font-size: 0.9rem;
  color: #cccccc;
  text-align: center;
  letter-spacing: 0.5px;
}

.hero-stats span {
  margin: 4px 8px;
  display: inline-block;
}

.hero-stats i {
  color: #ffc600;
  margin-right: 5px;
  font-size: 1.1rem;
  vertical-align: middle;
}


h5{
color: #ffc600;	
}

/* Make text more legible over video */
.hero-content h1,
.hero-content p,
.hero-list li {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}

/* Selling Points List */
.hero-list {
  list-style: none;
  margin: 20px auto 0;
  padding: 0;
  display: inline-block; /* Centers the list horizontally */
  text-align: left;
}

.hero-list li {
  position: relative;
  padding-left: 30px;  /* Space for custom bullet */
  margin-bottom: 20px;
  color: #ffffff;
  font-size: 1.2rem;   /* Slightly smaller to accommodate two lines */
  line-height: 1.4;
}

/* Main bullet style */
.hero-list li::before {
  content: "\2022";       /* Unicode bullet character */
  position: absolute;
  left: 0;
  color: #ffc600;         /* Secondary (accent) color */
  font-size: 1.5rem;
  line-height: 1.2;
  top: 5px;               /* Vertically center the bullet relative to text */
}

/* Sub-description in a lighter color */
.hero-list li .description {
  color: #cccccc;         /* Slightly lighter shade to differentiate from the main text */
  font-size: 0.95rem;     /* Smaller font for subtext */
  display: inline-block;
  margin-top: 3px;        /* Small spacing after the bold title */
}

.hero-logo {
  max-width: 80%;
  height: auto;
  margin-bottom: 20px;
}

/* Style for the call-to-action button */
.cta-btn {
  display: block;        /* Make it block-level so we can center it */
  margin: 20px auto 20px;  /* Top margin for spacing; auto left/right centers it */
  max-width: 300px;       /* Optional: limit the width */
  text-align: center;
  padding: 12px 20px;
  font-weight: bold;
  background-color: #ffc600; /* Using your secondary color for contrast */
  border-color: #ffc600;
  color: #121212;           /* Dark text for contrast on a light button */
  border-radius: 4px;
}

.cta-btn:hover {
  background-color: #e6b500; /* Slightly darker on hover */
  border-color: #e6b500;
  color: #121212;
}

/* Additional Sections Styling */
.container section {
  margin-bottom: 40px;
}

.container section h2 {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #ffc600; /* Accent color for headings */
}

.container section p,
.container section ul {
  font-size: 1rem;
  line-height: 1.6;
  color: #e0e0e0;
}

.container section ul {
  list-style: disc;
  padding-left: 20px;
}

.container section blockquote {
  border-left: 4px solid #ffc600;
  padding-left: 16px;
  font-style: italic;
  color: #cccccc;
  margin: 20px 0;
}

/* Partner Logos */
.partner-logos {
  text-align: center;
  margin-top: 20px;
}

.partner-logos img {
  max-width: 100px;
  margin: 0 15px;
  opacity: 0.8;
}

.partner-logos img:hover {
  opacity: 1;
}

/* Clear Call-to-Action Section */
#call-to-action h2 {
  font-size: 1.8rem;
  margin-bottom: 20px;
}

#smallfont {
  font-size: 0.8em;
  color: #6c757d;
}


/* About Section */
#about {
  padding: 40px 0;
}

#about h2 {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #ffc600; /* Accent color */
}

#about p {
  font-size: 1rem;
  line-height: 1.6;
  color: #e0e0e0;
  margin-bottom: 15px;
}

/* Ensure team image fits well */
#about .img-fluid {
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.5);
  margin-top: 15px;
}

#margintop15{
  margin-top: 15px;
}



/* Photo Gallery Styles */
/* Gallery Container */
.gallery-container {
  margin: 20px auto;
  overflow: hidden;
  width: 90%;  
  text-align: center;
}

/* Gallery Title Underline Style (if desired) */
.gallery-container strong u {
  font-size: 1.1rem;
  color: #ffc600;
}

/* Gallery Track - Display images in a row on larger screens */
.gallery-track {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  transition: transform 0.5s ease;
  margin-top: 10px;
}

/* Each image takes up 50% of container width minus gaps */
.gallery-track img {
  width: calc(50% - 5px);
  height: auto;
  flex-shrink: 0;
  border-radius: 4px;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
  .gallery-track {
    flex-direction: column;
    gap: 10px;
  }
  
  .gallery-track img {
    width: 100%;
  }
}


/* Keyframes to slide left by 600px (2 images) and restart */
@keyframes slideGallery {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-600px);
  }
  75% {
    transform: translateX(-600px);
  }
  100% {
    transform: translateX(0);
  }
}




u {
  text-decoration: none; /* Remove default underline */
  border-bottom: 2px solid #ffc600; /* Custom red underline */
}

/* -----------------------
   Responsive Adjustments
   ----------------------- */

/* For smaller screens, make sure hero content doesn't get cut off */
@media (max-width: 768px) {
  /* Remove fixed height so the container can grow with content */
  .video-container {
    height: auto;
  }

  /* Either scale the video or hide it on very small screens to avoid layout issues */
  .video-container video {
    min-width: 100%;
    height: auto;
    max-height: 300px; /* Limit the height if you still want to show the video */
  }

  /* Let hero-content follow normal document flow instead of absolute positioning */
  .hero-content {
    position: static; /* Removes absolute positioning */
    transform: none;  /* Removes the -50% translation */
    margin: 0 auto;
    padding: 20px;
    background-color: rgba(0, 0, 0, 0.7); /* Ensure readability over the video or background */    
    border-radius: 0;      /* Optional: remove rounded corners for a simpler look */
    text-align: center;    /* Keep text centered */
  }

  /* Make sure the hero list stacks nicely and remains readable */
  .hero-list {
    display: block;  /* Stack items in normal flow */
    margin: 20px auto;
    text-align: left; 
  }

  /* Slightly reduce font sizes for small screens */
  .hero-list li {
    font-size: 1rem;
    margin-bottom: 15px;
    padding-left: 1.5rem; /* Adjust bullet spacing */
  }
}



    form {
      max-width: 500px;
      margin: 0 auto;
      background-color: #1e1e1e;
      padding: 20px;
      border-radius: 8px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.5);
    }
    label {
      display: block;
      margin-top: 15px;
      font-weight: bold;
    }
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="date"],
    select {
      width: 100%;
      padding: 10px;
      margin-top: 5px;
      border: none;
      border-radius: 4px;
    }
    input[type="submit"] {
      background-color: #ffc600;
      color: #121212;
      border: none;
      padding: 12px;
      font-size: 1rem;
      font-weight: bold;
      border-radius: 4px;
      cursor: pointer;
      margin-top: 20px;
      width: 100%;
    }
    input[type="submit"]:hover {
      background-color: #e6b500;
    }
    .consent {
      margin-top: 25px;
	  margin-bottom: 25px;
    }
    .consent input {
      margin-right: 5px;
    }
	
	
	.consent {
  display: flex;
  align-items: center;
}

.consent label {
  margin: 0 0 0 5px;
  font-size:0.8em;
}
	
    .error {
      color: #ff4d4d;
      margin-top: 10px;
      font-size: 0.9rem;
    }
	
	
	#welcome{
		text-align: center;
	}
	
	#availabilityMessage{
	color: #ff4d4d;
    margin-top: 10px;
    font-size: 0.9rem;
	}
	
.subscription-container {
		text-align: center;
      max-width: 800px;
      margin: 0 auto;
    }
    .subscription-option {
      background: #1e1e1e;
      padding: 20px;
      border-radius: 8px;
      text-align: center;
      margin-bottom: 20px;
      border: 1px solid transparent;
      transition: border 0.3s ease;
    }
    .subscription-option:hover {
      border: 1px solid #ffc600;
    }
    .subscription-option.recommended {
      border: 2px solid #ffc600;
    }
    .subscription-option h3 {
      color: #ffc600;
      margin-bottom: 10px;
    }
    .subscription-option .price {
      font-size: 1.5rem;
      font-weight: bold;
      margin: 10px 0;
    }
    .subscription-option p.note {
      font-size: 0.9rem;
      color: #cccccc;
    }

 .btn {
      margin-top: 15px;
      padding: 10px 20px;
      font-size: 1rem;
    }	
	
	
	
	
	    /* DASHBOARD Main container using a 3-column layout */
    .apex-container {
      display: grid;
      grid-template-columns: 220px 1fr 350px; 
      grid-gap: 20px;
      width: 100%;
      max-width: 1400px; 
      padding: 0px;
    }

    /* Left Sidebar */
    .apex-left-sidebar {
      background-color: #192734;
      padding: 20px;
      border-radius: 8px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 15px;
    }
    .apex-nav-item {
      display: flex;
      align-items: center;
      gap: 10px;
      cursor: pointer;
      padding: 10px;
      border-radius: 4px;
      transition: background-color 0.2s;
    }
    .apex-nav-item:hover {
      background-color: #253341;
    }
    .apex-nav-item i {
      font-size: 18px;
    }

    /* Main Feed */
    .apex-main-feed {
      background-color: #192734;
      padding: 20px;
      border-radius: 8px;
    }
    .apex-feed-header {
      font-size: 1.2rem;
      margin-bottom: 20px;
      font-weight: bold;
    }
     .apex-post-box {
      background-color: #15202B;
      padding: 15px;
      border-radius: 8px;
      margin-bottom: 20px;
    }
    .apex-post-textarea {
      width: 100%;
      padding: 10px;
      border: none;
      border-radius: 4px;
      background-color: #253341;
      color: #fff;
      resize: none; /* Disables manual resizing */
      transition: all 0.2s ease;
    }
    .apex-post-controls {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-top: 10px;
    }
    .apex-post-controls button {
      background-color: #253341;
      border: none;
      color: #fff;
      padding: 8px 12px;
      border-radius: 4px;
      cursor: pointer;
      margin-right: 10px;
    }
    .apex-post-controls button:hover {
      background-color: #1f2b36;
    }
    .apex-char-counter {
      font-size: 0.9rem;
      color: #ccc;
    }
    .apex-feed-item {
      background-color: #253341;
      margin-bottom: 20px;
      border-radius: 8px;
      padding: 15px;
    }
    .apex-feed-item h4 {
      margin-bottom: 5px;
      font-size: 1rem;
    }
    .apex-feed-item p {
      font-size: 0.95rem;
      line-height: 1.4;
    }

    /* Right Sidebar */
    .apex-right-sidebar {
      background-color: #192734;
      padding: 20px;
      border-radius: 8px;
    }
    .apex-sidebar-section {
      margin-bottom: 20px;
    }
    .apex-sidebar-section h3 {
      margin-bottom: 10px;
      font-size: 1.1rem;
    }
    .apex-widget {
      background-color: #253341;
      padding: 10px;
      border-radius: 4px;
      margin-bottom: 10px;
    }

    /* RESPONSIVE BREAKPOINTS */
    @media screen and (max-width: 992px) {
      .apex-container {
        grid-template-columns: 70px 1fr 70px; /* Narrow sidebars on medium screens */
      }
      .apex-left-sidebar, .apex-right-sidebar {
        padding: 10px;
      }
      .apex-nav-item span {
        display: none; /* Hide text, keep icons on medium screens */
      }
    }

    @media screen and (max-width: 768px) {
      .apex-container {
        grid-template-columns: 1fr; /* Single column on mobile */
      }
      .apex-left-sidebar {
        order: 1;
        flex-direction: row;
        overflow-x: auto;
        gap: 10px;
        margin-bottom: 10px;
      }
      .apex-main-feed {
        order: 2;
      }
      .apex-right-sidebar {
        order: 3;
      }
    }