body, html {
  margin: 0;
  padding: 0;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  background-color: #FBFBFB; /* Ensures that the body background matches the header background */
}

.site-header {
  background-color: transparent;
  text-align: center; /* Center the contents of the header */
  padding: 20px 0;
}

.nav-bar {
  display: inline-block; /* Make the nav bar only as wide as its content */
  position: relative; /* Positioning context for the pseudo-elements */
}

.nav-menu {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: inline-block; /* Center the menu within the nav bar */
}

.nav-item {
  display: inline;
  margin: 0 20px; /* Space out the nav items */
  font-size: 30px;
  font-weight: 700;
  color: #000; /* Set text color to black */
  cursor: pointer;
  position: relative; /* Needed for the absolute positioning of the after element */
  transition: color 0.3s, transform 0.3s; /* Transitions for interactive effects */
}

.nav-link {
  text-decoration: none; /* Remove underlining */
  color: inherit; /* Inherit text color */
  cursor: pointer; /* Show pointer cursor on hover */
}

.nav-link:hover {
  text-decoration: underline; /* Add underlining on hover */
}

.nav-item::after {
  content: '';
  display: block;
  position: absolute;
  left: 50%;
  bottom: -10px;
  height: 3px;
  width: 0%; /* Start with a width of 0 */
  background: linear-gradient(to right, rgba(0, 123, 255, 0), #007BFF, rgba(0, 123, 255, 0)); /* Start with a transparent background */
  transition: width 0.4s ease, left 0.4s ease; /* Transition for width, background color, and left position */
}

.nav-item:hover::after,
.nav-item.active::after {
  left: 0;
  width: 100%;
  background: linear-gradient(to right, rgba(0, 123, 255, 0), #007BFF, rgba(0, 123, 255, 0)); /* Gradient that fades from transparent to blue and back to transparent */
}

.nav-underline {
  height: 1px; /* Thickness of the line */
  width: 80%; /* Adjust the width as desired */
  background: linear-gradient(to right, rgba(0, 125, 255, 0), #808080, rgba(0, 125, 255, 0));
  margin-top: 10px; /* Distance from the navbar, adjust as needed */
  margin-left: auto; /* Auto margin for centering */
  margin-right: auto; /* Auto margin for centering */
}

.stats-section {
  display: block;
  text-align: center;
  padding-top: 20px;
}

/* ANIMATE */
.animatable {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 1s ease-out, transform 1s ease-out;
}

/* State when the element is in the viewport */
.animatable.animate {
    opacity: 1;
    transform: translateY(0px);
}

.stat-box {
  width: 400px; /* Width of the boxes */
  height: 270px; /* Height of the boxes */
  margin: 10px 20px; /* Adjust margin for spacing */
  border-radius: 25px; /* Border radius for smoother edges */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: inline-flex;
  flex-direction: column-reverse; /* Reverse direction to show title above number */
  justify-content: center;
  align-items: center;
  color: #ffffff;
  font-family: 'Arial', sans-serif;
  transition: transform 0.3s ease; /* Smooth transition for hover effect */
  position: relative; /* Added to ensure z-index is applied correctly */
  z-index: 2; /* Ensures the stat boxes are above the header in the stacking context */
  vertical-align: top;
}

.stat-box:hover {
  transform: scale(1.05); /* Growth effect on hover */
}

.stat-number {
  font-size: 60px; /* Large font size for numbers */
  font-weight: bold;
  margin: 10px 0; /* Adjust margin around number */
}

.stat-text {
  font-size: 24px; /* Increased font size for titles */
  margin: 10px 0; /* Adjust margin around title */
}

.section-info {
  text-align: center; /* Center the content */
}

.section-title {
  margin-top: 60px; /* Adjust as needed */
  font-size: 64px; /* Adjust the font size */
}

.section-description {
  margin-top: -40px;
  font-size: 25px; /* Adjust the font size */
  color: #666; /* Adjust the color */
  margin-bottom: 20px; /* Adjust the spacing between title and description */
}

.social-media-buttons {
  text-align: center;
  padding-top: 10px;
  padding-bottom: 40px;
  background-color: #fff; /* White background */
  color: #000; /* Black text */
  border-radius: 10px;
  margin: 30px auto;
  max-width: 1000px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.social-media-buttons h2 {
  font-size: 45px;
  margin-bottom: 8px;
}

.social-media-buttons p {
  margin-bottom: 20px;
}

.button-container {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.social-button img {
  vertical-align: middle;
  margin-right: 2px;
  width: 24px; /* Or the size you prefer */
  height: auto; /* To maintain the aspect ratio */
}

/* RECENT BLOG CSS */
.latest-blog-section {
  background-color: #f7f7f7; /* Light grey background */
  border-radius: 15px; /* Rounded corners */
  padding: 16px;
  max-width: 80%; /* Maximum width */
  margin: 30px auto; /* Center the blog section */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Soft shadow for depth */
}


.latest-blog-header {
  text-align: center;
  font-size: 24px;
  color: #333;
  margin-bottom: 10px;
}

.latest-blog-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.blog-post {
  display: flex;
  align-items: flex-start; /* Align the start of the items */
  max-width: 640px; /* Control the max width of the blog post card */
  margin: auto;
  background: #ffffff;
  border-radius: 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}

.blog-thumbnail {
  flex-shrink: 0; /* Prevent the icon from shrinking */
  border-radius: 10px; /* Rounded corners for the icon */
  margin-right: 20px; /* Space between icon and text */
}

.latest-blog-container {
  display: flex;
  flex-direction: column;
}

.latest-blog-title {
  display: inline-block;
  color: #333;
  font-size: 35px;
  padding: 5px 30px;
  border-radius: 25px; /* Rounded pill shape */
  font-weight: bold;
  letter-spacing: 1px; /* Spacing between letters */
}

.latest-blog-body {
  display: flex;
  align-items: center;
  padding: 20px;
  background-color: #fff; /* White background for content */
  border-radius: 10px; /* Rounded corners for the body */
  margin-bottom: 10px;
}

.blog-thumbnail {
  margin-right: 20px; /* Spacing between image and text */
}

.blog-thumbnail img {
  width: 150px; /* Thumbnail size */
  height: 150px;
  border-radius: 10px; /* Rounded corners for image */
}

.blog-info {
  flex-grow: 1;
}

.blog-post-title {
  font-size: 20px;
  color: #007bff; /* Brand color for the title */
  margin-bottom: 5px;
}

.blog-post-description {
  font-size: 14px;
  color: #333; /* Dark text for readability */
  margin-bottom: 15px;
}

.read-more-link {
  text-decoration: none;
  color: #007bff;
  font-weight: bold;
  font-size: 14px;
}

.read-more-link:hover {
  text-decoration: underline; /* Underline on hover for better indication */
}

.view-more-blogs {
  text-align: center;
  padding-top: 10px; /* Adds space above the 'View More Blogs' button */
}

.view-more-link {
  display: inline-block;
  background-color: #007bff; /* Adjust the color to match your theme */
  color: #ffffff; /* White text color */
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 20px; /* Rounded corners for the button */
  font-weight: bold; /* Makes the text bold */
  transition: background-color 0.3s; /* Smooth background color transition on hover */
  box-shadow: 0 0 10px #007BFF;
}

.view-more-link:hover {
  background-color: #0056b3; /* A darker shade when hovered for better interaction */
}

@media (max-width: 768px) {
  .latest-blog-body {
    flex-direction: column;
    align-items: flex-start;
  }

  .blog-thumbnail {
    margin-right: 0;
    margin-bottom: 15px;
  }
}

/* SOCIAL BUTTON */
a.btn-primary {
	display: inline-block;
	text-decoration: none;
	outline: none;
}

a.btn-primary:hover,
a.btn-primary:focus,
a.btn-primary:active,
a.btn-primary:visited {
	color: inherit;
}

a.icon-btn:active img,
a.icon-btn:focus-visible img {
	-webkit-filter: invert(46%) sepia(76%) saturate(7483%) hue-rotate(242deg) brightness(101%) contrast(101%);
	filter: invert(46%) sepia(76%) saturate(7483%) hue-rotate(242deg) brightness(101%) contrast(101%);
}

@media (hover: hover) and (pointer: fine) {

	a.icon-btn:hover img,
	a.icon-btn:focus img {
		-webkit-filter: invert(46%) sepia(76%) saturate(7483%) hue-rotate(242deg) brightness(101%) contrast(101%);
		filter: invert(46%) sepia(76%) saturate(7483%) hue-rotate(242deg) brightness(101%) contrast(101%);
	}
}

@media (hover: hover) and (pointer: fine) {

	ul li a:hover,
	ul li a:focus {
		text-decoration: none !important;
	}
}

.btn-primary {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	background: conic-gradient(from 95.27deg at 51.3% 51.96%, #004188 -0.95deg, #121110 62.41deg, #0f0c1c 134.15deg, #004188 181.84deg, #0f0d1a 237.07deg, #121110 317.05deg, #004691 359.05deg, #121110 422.41deg);
	border: 2px solid rgba(242, 244, 243, 0.75);
	border-radius: 8px;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	cursor: pointer;
	padding: 0;
	transition: all 250ms linear;
	outline: none;
	text-align: center;
	white-space: nowrap;
}

.btn-primary:not(.btn-icon) {
	line-height: unset;
}

.btn-primary.solid {
	border: none;
}

.btn-primary.solid > span {
	background: #007bff;
}

.btn-primary:active,
.btn-primary:focus {
	border: 2px solid #007bff;
}

.btn-primary::before,
.btn-primary::after {
	content: "";
	width: 0;
	height: 2px;
	position: absolute;
	transition: all 250ms ease-in;
}

.btn-primary::before {
	left: 0;
	top: 0;
	margin-top: -2px;
	margin-left: 4px;
	background: linear-gradient(90deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.75) 10%, rgba(242, 244, 243, 0) 50%);
}

.btn-primary::after {
	right: 0;
	bottom: 0;
	margin-bottom: -2px;
	margin-right: 4px;
	background: linear-gradient(270deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.75) 10%, rgba(242, 244, 243, 0) 50%);
}

.btn-primary > span {
	display: inline-block;
	border-radius: 8px;
	background: #121110;
	font-size: 1rem;
	font-weight: 500;
	padding: 1.25rem;
  color:#fff;
	transition: background 500ms ease-in;
}

.btn-primary > span::before,
.btn-primary > span::after {
	content: "";
	position: absolute;
	transition: all 250ms ease-in;
}

.btn-primary > span::before {
	left: 0;
	top: 0;
	margin-left: -2px;
	margin-top: 4px;
	background: linear-gradient(180deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.75) 10%, rgba(242, 244, 243, 0) 50%);
}

.btn-primary > span::after {
	right: 0;
	bottom: 0;
	margin-right: -2px;
	margin-bottom: 4px;
	background: linear-gradient(360deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.75) 10%, rgba(242, 244, 243, 0) 50%);
}

.btn-primary:active {
	border-color: rgba(99, 71, 255, 0.5);
	box-shadow: 0 0 2rem rgba(99, 71, 255, 0.3);
}

.btn-primary:active::before,
.btn-primary:active::after {
	transition-duration: 0.75s;
}

.btn-primary:active > span {
	background: rgba(18, 17, 16, 0);
}

.btn-primary:active > span::before,
.btn-primary:active > span::after {
	transition-duration: 0.5s;
}

@media (hover: hover) and (pointer: fine) {

	.btn-primary:hover,
	.btn-primary:focus {
		border-color: rgba(99, 71, 255, 0.25);
		box-shadow: 0 0 1rem rgba(99, 71, 255, 0.25);
	}

	.btn-primary:hover::before,
	.btn-primary:hover::after,
	.btn-primary:focus::before,
	.btn-primary:focus::after {
		transition-duration: 0.75s;
	}

	.btn-primary:hover > span,
	.btn-primary:focus > span {
		background: rgba(18, 17, 16, 0);
	}

	.btn-primary:hover > span::before,
	.btn-primary:hover > span::after,
	.btn-primary:focus > span::before,
	.btn-primary:focus > span::after {
		transition-duration: 0.5s;
	}
}

.btn-primary.btn-small > span {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	font-size: 12px;
}

.btn-icon[data-video-url] {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.btn-icon::before,
.btn-icon::after {
	width: calc(60% - 8px);
}

.btn-icon::before {
	background: linear-gradient(90deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.33) 20%, rgba(242, 244, 243, 0) 50%);
}

.btn-icon::after {
	background: linear-gradient(270deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.33) 20%, rgba(242, 244, 243, 0) 50%);
}

.btn-icon > span {
	height: 4rem;
	width: 4rem;
	padding: 1rem;
	background: rgba(18, 17, 16, 0.75);
}

.btn-icon > span::before,
.btn-icon > span::after {
	height: calc(80% - 8px);
}

.btn-icon > span::before {
	background: linear-gradient(180deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.5) 10%, rgba(242, 244, 243, 0) 50%);
}

.btn-icon > span::after {
	background: linear-gradient(360deg, rgba(242, 244, 243, 0) 0%, rgba(99, 71, 255, 0.5) 10%, rgba(242, 244, 243, 0) 50%);
}

.btn-icon > span > span {
	font-size: 2rem;
	display: inline-block;
	font-family: "Anicons Regular", sans-serif;
	font-variation-settings: "TIME" 1;
	transition: font-variation-settings 0.4s ease;
}

.btn-icon.video-modal-close > span > span,
.btn-icon.animate-on-hover:hover > span > span {
	font-variation-settings: "TIME" 100;
}

.btn-img > span {
  display: flex; /* Establishes a flex container */
  align-items: center; /* Vertically centers the flex items */
  padding: 1rem 1.5rem;
}

.btn-img > span img {
  display: block; /* This makes sure the image is treated as a block-level element within the flex container */
  height: 24px; /* Adjust as needed */
  margin-right: 8px; /* Adds some space between the image and the text */
}

/* FOOTER */
.site-footer {
  background-color: #333; /* Dark grey background */
  color: #fff; /* White text color */
  padding: 20px 0; /* Padding above and below the content */
  text-align: center; /* Center the content */
}

.footer-content {
  max-width: 1200px;
  margin: 0 auto; /* Center the footer content */
  display: flex;
  flex-direction: column;
  align-items: center; /* Aligns content vertically */
}

.footer-logo {
  margin-bottom: 20px; /* Space below the logo */
}

.footer-logo-link {
  cursor: pointer; /* Indicates the logo is clickable */
}

.footer-nav {
  display: flex;
  justify-content: center; /* Centers the navigation items */
  gap: 30px; /* Space between navigation items */
  margin-bottom: 20px; /* Space below the navigation */
}

.footer-link {
  color: #fff; /* White text color for links */
  text-decoration: none; /* No underline */
  font-weight: bold; /* Bold font */
}

.footer-link {
  color: #fff; /* Set the default color to white */
  text-decoration: none; /* No underline */
  font-weight: bold; /* Bold font */
  transition: color 0.3s ease; /* Smooth transition for color change */
}

.footer-link:hover,
.footer-link:focus {
  color: #007BFF; /* Change color to blue on hover/focus */
  text-decoration: none; /* Ensure that underline is not shown */
}

.footer-bottom-text {
  font-size: 0.9rem; /* Smaller font size for the bottom text */
  position: relative;
  padding-top: 20px; /* Space above the border */
}

.footer-bottom-text::before {
  content: '';
  display: block;
  height: 1px;
  width: 100%; /* Make the line full width */
  position: absolute;
  top: 0; /* Position it at the top of the footer-bottom-text */
  left: 0;
  background: linear-gradient(to left, rgba(0, 123, 255, 0), #007BFF, rgba(0, 123, 255, 0)); /* Gradient for the line */
}

@media (max-width: 768px) {
  .footer-nav {
    flex-direction: column;
    gap: 10px; /* Less space between items when stacked */
  }
}

/* CONTACT FORM */
.contact-page {
  padding: 40px 0;
  text-align: center;
}

.contact-form-container {
  background-color: #fff;
  border-radius: 10px;
  max-width: 600px;
  margin: 0 auto;
  padding: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.contact-form {
  display: flex;
  flex-direction: column;
  align-items: center; /* Ensures everything is centered */
  max-width: 600px; /* Set a max-width to match the container */
  margin: auto; /* Center the form on the page */
}

.form-group {
  margin-bottom: 15px;
  width: 100%; /* Sets the width to be 100% of .contact-form */
}

/* Improve text styling for labels */
.form-group label {
  display: block;
  margin-bottom: 5px;
  font-size: 16px; /* Increase font size for better readability */
  font-weight: bold; /* Make labels bold for emphasis */
  color: #555; /* Darken text color for better contrast */
}

/* Improve text styling for input fields */
.form-group input[type="text"],
.form-group input[type="email"],
.form-group select,
.form-group textarea {
  width: 90%; /* Full width */
  padding: 10px; /* Adequate padding */
  margin: 0; /* Reset margin */
  border: 2px solid #007bff; /* Blue border to match your design */
  border-radius: 5px; /* Rounded corners */
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.1); /* Subtle inner shadow for depth */
  outline: none; /* Remove outline on focus */
  font-size: 14px; /* Increase font size for better readability */
  line-height: 1.5; /* Increase line height for better spacing */
  background-color: #fff; /* Background color */
  color: #333; /* Text color */
}

/* Specifically for the select dropdown arrow */
.form-group select {
  width: 94%;
}

.form-group textarea {
  resize: vertical; /* Only allow vertical resizing */
}

/* Change border color on focus */
.form-group input[type="text"]:focus,
.form-group input[type="email"]:focus,
.form-group select:focus,
.form-group textarea:focus {
  border-color: #0056b3; /* Darker border color on focus */
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.1), 0 0 5px rgba(0, 123, 255, 0.5); /* Glow effect on focus */
}

/* Improve text styling for the submit button */
.submit-btn {
  width: 94%; /* Full width minus the padding */
  margin: 0 auto 15px; /* Center the button and add margin to the bottom */
  background-color: #007bff;
  color: #fff;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 18px; /* Increase font size for better visibility */
  font-weight: bold; /* Make button text bold for emphasis */
  text-transform: uppercase; /* Convert button text to uppercase */
  transition: background-color 0.3s ease;
}

.submit-btn:hover {
  background-color: #0056b3;
}

.social-media-links a {
  color: #007bff;
  text-decoration: none;
  padding: 5px 10px;
  display: inline-block;
  margin: 5px;
}

.social-media-links a:hover {
  text-decoration: underline;
}

.name-field {
  display: flex;
  flex-direction: column;
  width: 46%; /* Adjusted width */
  margin: 0 5px; /* Added margin to the sides */
}

/* Center the name fields */
.form-group-names {
  display: flex;
  justify-content: center; /* Center the content horizontally */
}

@media (max-width: 768px) {
  .form-group-names {
    flex-direction: column;
  }

  .name-field {
    width: 100%; /* Full width on smaller screens */
  }
}

/* ABOUT PAGE */
.content {
  max-width: 70%; /* Increased width for better spacing */
  margin: 20px auto; /* Centered with vertical spacing */
  padding: 20px;
}

.about-section, .extra-section, .gallery-section {
  margin-bottom: 40px;
}

h1, h2 {
  color: #007bff; /* Blue color for headings */
  font-family: 'Arial', sans-serif;
}

p, li {
  color: #333; /* Darker text color for readability */
  font-family: 'Verdana', sans-serif;
  line-height: 1.6;
}

ul {
  padding-left: 20px; /* Keeps the bullet points inline with the rest of the content */
}

.game-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); /* Creates a responsive grid layout */
  gap: 20px; /* Space between cards */
}

.game-card {
  background-color: #fff; /* White background for cards */
  border: 1px solid #ddd; /* Light grey border */
  border-radius: 10px; /* Rounded corners for cards */
  overflow: hidden; /* Ensure content fits within the card */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Card shadow */
}

.game-card img {
  width: 100%;
  height: auto; /* Maintain aspect ratio */
  border-bottom: 1px solid #ddd; /* Adds a subtle line between the image and the text */
}

.game-card h3 {
  color: #007bff; /* Heading color in cards */
  margin: 0;
  padding: 10px; /* Padding around headings */
}

.game-card p {
  padding: 0 10px 10px; /* Padding around text */
}