/* 1) Define the @font-face for BebasKai */
@font-face {
  font-family: 'BebasKai';
  src: url('Fonts/BebasKai.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

/* Remove default margins/padding so nothing adds extra height */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/*
  Body:
  1. Use BebasKai (optional).
  2. Background image.
  3. One overlay via ::before.
  4. A second overlay via ::after.
*/
body {
  font-family: 'BebasKai', sans-serif;
  background: url("Img/Site-background-dark.jpg") no-repeat center center;
  background-size: cover;
  color: #fff;
  position: relative;
  overflow: hidden;
}

/* First overlay (original) */
body::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0,0,0,0));
  backdrop-filter: blur(2px);
  z-index: 1;
}

/* Second overlay (new) */
body::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(34, 33, 56, 0.692);
  z-index: 2;
  pointer-events: none;
}

/* Container for logo & menu, on top of both overlays */
.menu-container {
  position: relative;
  z-index: 3;
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Logo: adjust size as needed */
.logo {
  width: 900px;
  margin-bottom: 15px;
}

/* Vertical stack of buttons with a small gap */
.menu {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* Button Styles */
.menu button,
.donate-buttons button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 280px;
  height: 45px;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  font-family: 'BebasKai', sans-serif;
  font-size: 20px;
  font-weight: normal;
  text-transform: uppercase;
  color: #000;
  cursor: pointer;
  background: url("Img/button.png") center center no-repeat;
  background-size: 100% 100%;
  line-height: 45px;
  text-align: center;
  transition: background 0.3s;
}

/* Hover effect */
.menu button:hover,
.donate-buttons button:hover {
  background: url("Img/button-selected.png") center center no-repeat;
  background-size: 100% 100%;
}

/* --- Spacer line --- */
.menu-spacer {
  width: 95%;
  margin: 8px auto;
  border: 0;
  border-top: 2px solid #3a3a6b;
}

/* --- Donate Buttons Container --- */
.donate-buttons {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 8px;
}

/* Styling for buttons with icons */
.donate-buttons button {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Icon styling */
.donate-icon {
  width: 20px;
  height: 20px;
  margin-right: 14px;
}

/* ===== POPUP STYLES ===== */

/* Popup container */
.popup-container {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.85);
  z-index: 1000;
  justify-content: center;
  align-items: center;
}

/* Popup content */
.popup-content {
  background-color: rgba(26, 26, 26, 0.95);
  color: #fff;
  padding: 30px;
  border-radius: 10px;
  width: 90%;
  max-width: 600px;
  position: relative;
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.1);
  border: 1px solid #333;
  z-index: 1001;
}

/* Close button */
.close-popup {
  position: absolute;
  right: 20px;
  top: 15px;
  font-size: 24px;
  cursor: pointer;
  color: #999;
  transition: color 0.3s;
}

.close-popup:hover {
  color: #fff;
}

/* Popup title */
.popup-title {
  color: #fff;
  text-align: center;
  margin-bottom: 30px;
  font-size: 2em;
  text-transform: uppercase;
  border-bottom: 1px solid #333;
  padding-bottom: 15px;
}

/* Information area */
.eso-info {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  color: #ddd;
  border: 1px solid #333;
  border-radius: 8px;
  padding: 20px;
  margin: 20px 0;
  line-height: 1.6;
}

.eso-info h2 {
  color: #fff;
  margin-top: 0;
  margin-bottom: 15px;
  font-size: 1.5em;
  text-transform: uppercase;
}

.eso-info p {
  margin-bottom: 15px;
  color: #ddd;
  font-size: 1.1em;
}

.eso-info p:last-child {
  margin-bottom: 0;
}

/* Close button */
.close-eso-btn {
  background: url("Img/button.png") center center no-repeat;
  background-size: 100% 100%;
  color: #000;
  border: none;
  padding: 10px 20px;
  border-radius: 4px;
  cursor: pointer;
  font-family: 'BebasKai', sans-serif;
  font-size: 20px;
  text-transform: uppercase;
  transition: background 0.3s;
  margin-top: 20px;
  display: block;
  width: 200px;
  height: 45px;
  margin-left: auto;
  margin-right: auto;
}

.close-eso-btn:hover {
  background: url("Img/button-selected.png") center center no-repeat;
  background-size: 100% 100%;
}

/* Responsive adjustments for popup */
@media screen and (max-width: 768px) {
  .popup-content {
    padding: 20px;
    width: 95%;
  }

  .popup-title {
    font-size: 1.8em;
  }

  .eso-info {
    padding: 15px;
  }

  .eso-info h2 {
    font-size: 1.3em;
  }

  .eso-info p {
    font-size: 1em;
  }
}

@media screen and (max-width: 480px) {
  .popup-content {
    padding: 15px;
  }

  .popup-title {
    font-size: 1.5em;
  }

  .eso-info {
    padding: 12px;
  }

  .eso-info h2 {
    font-size: 1.2em;
  }
}

/* Privacy Policy Page Styles */
.privacy-content {
    max-width: 800px;
    margin: 20px auto;
    padding: 20px;
    color: #fff;
    background-color: rgba(26, 26, 26, 0.9);
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.1);
    border: 1px solid #333;
    position: relative;
    z-index: 3;
    width: 90%;
    overflow-y: auto;
    max-height: 80vh;
}

.privacy-sections {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.privacy-sections section {
    background-color: rgba(0, 0, 0, 0.2);
    padding: 15px;
    border-radius: 8px;
    border: 1px solid #333;
}

.privacy-content h1 {
    color: #fff;
    text-align: center;
    margin-bottom: 10px;
    font-size: clamp(1.8em, 5vw, 2.5em);
    text-transform: uppercase;
}

.privacy-content .last-updated {
    text-align: center;
    color: #999;
    margin-bottom: 30px;
    font-size: clamp(0.8em, 2vw, 0.9em);
}

.privacy-content h2 {
    color: #fff;
    margin-top: 0;
    margin-bottom: 15px;
    font-size: clamp(1.2em, 3vw, 1.5em);
    text-transform: uppercase;
}

.privacy-content p, .privacy-content ul {
    line-height: 1.6;
    margin-bottom: 15px;
    color: #ddd;
    font-size: clamp(0.9em, 2vw, 1em);
}

.privacy-content ul {
    padding-left: 20px;
    list-style-type: none;
}

.privacy-content ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
}

.privacy-content ul li:before {
    content: "•";
    color: #e62429;
    position: absolute;
    left: 0;
}

.back-button {
    text-align: center;
    margin-top: 30px;
    padding-bottom: 20px;
}

.back-button button {
    padding: 10px 20px;
    background: url("Img/button.png") center center no-repeat;
    background-size: 100% 100%;
    color: #000;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s;
    font-family: 'BebasKai', sans-serif;
    font-size: clamp(16px, 4vw, 20px);
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: clamp(200px, 80%, 280px);
    height: clamp(40px, 10vw, 45px);
    margin: 0 auto;
}

.back-button button:hover {
    background: url("Img/button-selected.png") center center no-repeat;
    background-size: 100% 100%;
}

.back-button .material-symbols-outlined {
    font-size: clamp(20px, 5vw, 24px);
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
    .menu-container {
        padding: 10px;
    }

    .logo {
        width: 90%;
        max-width: 500px;
    }

    .privacy-content {
        padding: 15px;
        margin: 10px auto;
    }

    .privacy-sections section {
        padding: 12px;
    }
}

@media screen and (max-width: 480px) {
    .privacy-content {
        padding: 10px;
    }

    .privacy-sections section {
        padding: 10px;
    }

    .privacy-content h1 {
        font-size: 1.5em;
    }

    .privacy-content h2 {
        font-size: 1.2em;
    }
}

/* Footer Links */
.footer-links {
    margin-top: 20px;
    text-align: center;
    padding: 10px;
    border-top: 1px solid #eee;
}

.footer-links a {
    color: #666;
    text-decoration: none;
    margin: 0 10px;
    font-size: 14px;
}

.footer-links a:hover {
    color: #000;
    text-decoration: underline;
}

/* Contact Page Styles */
.contact-content {
    max-width: 800px;
    margin: 20px auto;
    padding: 20px;
    color: #fff;
    background-color: rgba(26, 26, 26, 0.9);
    border-radius: 10px;
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.1);
    border: 1px solid #333;
    position: relative;
    z-index: 3;
    width: 90%;
}

.contact-sections {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contact-sections section {
    background-color: rgba(0, 0, 0, 0.2);
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #333;
}

.contact-content h1 {
    color: #fff;
    text-align: center;
    margin-bottom: 30px;
    font-size: clamp(1.8em, 5vw, 2.5em);
    text-transform: uppercase;
}

.contact-content h2 {
    color: #fff;
    margin-top: 0;
    margin-bottom: 15px;
    font-size: clamp(1.2em, 3vw, 1.5em);
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 10px;
}

.contact-content h2 .material-symbols-outlined {
    color: #e62429;
    font-size: 1.2em;
}

.contact-content p {
    line-height: 1.6;
    margin-bottom: 15px;
    color: #ddd;
    font-size: clamp(0.9em, 2vw, 1em);
}

.contact-link {
    color: #e62429;
    text-decoration: none;
    font-size: 1.1em;
    display: inline-block;
    margin-top: 10px;
    transition: color 0.3s;
}

.contact-link:hover {
    color: #ff3c41;
    text-decoration: underline;
}

/* Responsive adjustments for contact page */
@media screen and (max-width: 768px) {
    .contact-content {
        padding: 15px;
        margin: 10px auto;
    }

    .contact-sections section {
        padding: 15px;
    }
}

@media screen and (max-width: 480px) {
    .contact-content {
        padding: 10px;
    }

    .contact-sections section {
        padding: 12px;
    }

    .contact-content h1 {
        font-size: 1.5em;
    }

    .contact-content h2 {
        font-size: 1.2em;
    }
}

/* Popup Overlay */
.popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.85);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 2000;
}

/* Popup Box - Reduced Padding */
#myPopup .popup-content {
    background: white;
    padding: 25px 20px; /* Less padding top/bottom */
    border-radius: 8px;
    text-align: center;
    max-width: 500px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.5);
    color: #333;
    font-family: 'BebasKai', sans-serif;
}

/* Header - Reduced Margin */
#myPopup h2 {
    color: #000;
    font-size: 32px;
    margin-bottom: 15px; /* Pulled closer to text */
    text-transform: uppercase;
    line-height: 1;
}

/* Paragraphs - Controlled Spacing */
#myPopup p {
    color: #555;
    font-size: 18px; 
    line-height: 1.2; /* Tighter lines */
    margin-bottom: 12px; /* Small gap between paragraphs */
    margin-top: 0;
    text-transform: uppercase;
}

/* Add a little more space before buttons */
#myPopup p:last-of-type {
    margin-bottom: 20px;
}

/* RED TEXT CLASS */
.highlight {
    color: #e62429;
    font-weight: bold;
}

/* Button Container */
.popup-btn-container {
    display: flex;
    gap: 10px;
    justify-content: center;
}

/* SMALLER BUTTONS */
.popup-btn-container button {
    padding: 8px 16px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-family: 'BebasKai', sans-serif;
    font-size: 16px;
    text-transform: uppercase;
    transition: transform 0.2s;
}

.popup-btn-container button:hover {
    transform: scale(1.05);
}

/* Button Colors */
#startGameBtn {
    background-color: #333;
    color: white;
}

#coffeeBtn {
    background-color: #FFDD00;
    color: #000;
}