/* Global Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Minimal CSS Variables */
:root {
  --primary: #dc3545;
  --primary-dark: #b02a37;
  --primary-light: #f8d7da;
  --dark: #212529;
  --light: #f8f9fa;
  --gray: #6c757d;
}

#logo {
  width: 340px;
}

/* Essential Base Styles */
body {
  font-family: "Poppins", sans-serif;
  overflow-x: hidden;
}

/* Default button sizing for larger screens */
.btn-lg {
  padding: 0.7rem 1.8rem !important;
  font-size: 1rem !important;
}

/* Navbar Styles */
.navbar-glass::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  backdrop-filter: blur(36px);
  -webkit-mask-image: linear-gradient(to bottom, black 30%, transparent 90%);
  z-index: -1;
}
/* Page header */
.page-header {
  background: linear-gradient(to bottom, #000000, #131313);
  padding: 3rem 0;
  padding-top: 10rem;
  position: relative;
  overflow: hidden;
}

.page-header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("https://via.placeholder.com/1920x1080") center/cover
    no-repeat;
  opacity: 0.15;
  z-index: 0;
}

.page-header .container {
  position: relative;
  z-index: 1;
}

@media (max-width: 1200px) {
  #logo {
    width: 220px;
  }
}

@media (max-width: 1400px) {
  /* Hero section responsive adjustments */
  .hero-text.display-4 {
    font-size: 1.8rem !important;
    line-height: 1.2;
  }

  .hero-text.lead {
    font-size: 0.9rem !important;
    line-height: 1.4;
  }

  /* Reduce hero section height on smaller screens */

  /* Adjust hero content padding */
  .hero-text {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6), 0 4px 8px rgba(0, 0, 0, 0.4),
      0 8px 16px rgba(0, 0, 0, 0.3) !important;
  }

  h1.hero-text {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.7), 0 4px 8px rgba(0, 0, 0, 0.5),
      0 8px 16px rgba(0, 0, 0, 0.4) !important;
  }

  h1.hero-text .text-danger {
    text-shadow: 0 2px 4px rgba(220, 53, 69, 0.3),
      0 4px 8px rgba(220, 53, 69, 0.2), 0 8px 16px rgba(0, 0, 0, 0.4) !important;
  }

  /* Adjust button sizes for smaller hero text */
  .btn-lg {
    padding: 0.65rem 1.6rem !important;
    font-size: 0.95rem !important;
  }
}

@media (max-width: 992px) {
  .hero-text.display-4 {
    font-size: 1.6rem !important;
  }

  .hero-text.lead {
    font-size: 0.85rem !important;
  }

  /* Further reduce hero section height on tablets */

  /* Adjust button sizes */
  .btn-lg {
    padding: 0.6rem 1.3rem !important;
    font-size: 0.9rem !important;
  }
}

@media (max-width: 768px) {
  .hero-text.display-4 {
    font-size: 1.4rem !important;
  }

  .hero-text.lead {
    font-size: 0.8rem !important;
  }

  /* Mobile hero section height */
  .vh-100[style*="max-height: 800px"] {
    max-height: 400px !important;
    min-height: 300px !important;
  }

  /* Smaller buttons on mobile */
  .btn-lg {
    padding: 0.5rem 1rem !important;
    font-size: 0.8rem !important;
  }

  /* Adjust hero content padding for mobile */
  .hero-text {
    margin-bottom: 1rem !important;
  }
}

@media (max-width: 576px) {
  .hero-text.display-4 {
    font-size: 1.2rem !important;
  }

  .hero-text.lead {
    font-size: 0.75rem !important;
  }

  /* Very small mobile hero section height */

  /* Even smaller buttons on very small screens */
  .btn-lg {
    padding: 0.4rem 0.8rem !important;
    font-size: 0.75rem !important;
  }
}

@media (max-width: 480px) {
  .hero-text.display-4 {
    font-size: 1.1rem !important;
  }

  .hero-text.lead {
    font-size: 0.7rem !important;
  }

  /* Extra small mobile hero section height */

  /* Compact buttons on extra small screens */
  .btn-lg {
    padding: 0.35rem 0.6rem !important;
    font-size: 0.7rem !important;
  }
}

.navbar-glass.scrolled {
  background: transparent;
  transition: 0.3s, box-shadow 0.3s;
  box-shadow: none;
  background: rgba(12, 12, 12, 0.95); /* dark bg with opacity */
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
