:root {
  --primary: #940402;
}

.bg-primary {
  background-color: var(--primary) !important;
}

.text-primary {
  color: var(--primary) !important;
}

.border-primary {
  border-color: var(--primary) !important;
}

html, body {
  overflow-x: hidden;
  width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Inter', sans-serif;
}

*, *:before, *:after {
  box-sizing: inherit;
}

.header {
  width: 100%;
  height: 45vh; 
  position: relative;
  padding-top: 70px;
  min-height: 400px;
}

.navbar {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 10;
  /* background: transparent !important; */
  background-color: rgba(0, 0, 0, 0.3); /* translucent dark background */
  backdrop-filter: blur(10px); /* frosted glass effect */
  -webkit-backdrop-filter: blur(10px); /* Safari support */
}

#navbarSupportedContent {
  background-color: transparent; /* transparent background for the collapse */
  padding-left: 1rem; /* add some space inside on mobile */
}

/* Desktop adjustments */
@media (min-width: 992px) {
  #navbarSupportedContent {
    padding-left: 0; /* reset padding on desktop */
  }
}

/* Style dropdown menu to match navbar translucent style */
.dropdown-menu {
  background-color: rgba(0, 0, 0, 0.3); /* translucent dark background */
  backdrop-filter: blur(10px); /* frosted glass effect */
  -webkit-backdrop-filter: blur(10px); /* Safari support */
  border: none;
}

.dropdown-item {
  color: white !important;
}

.dropdown-item:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

/* Remove black borders on hover for navigation elements */
.nav-link:focus,
.nav-link:active,
.navbar-toggler:focus,
.navbar-toggler:active,
.dropdown-toggle:focus,
.dropdown-toggle:active {
  box-shadow: none !important;
  outline: none !important;
  border-color: transparent !important;
}

/* Remove Bootstrap's default focus styles */
.btn:focus, .btn:active:focus, .btn.active:focus,
.btn.focus, .btn:active.focus, .btn.active.focus,
button:focus, input:focus, a:focus {
  outline: none !important;
  box-shadow: none !important;
}

.content-box {
  clip-path: ellipse(100% 97.68% at 49.99% 0.50%);
  -webkit-clip-path: ellipse(100% 97.68% at 49.99% 0.50%);
  padding-bottom: 6rem;
  z-index: 2;
}

/* Mobile responsive improvements */
@media (max-width: 768px) {
  .header {
    height: 60vh;
    min-height: 500px;
    padding-top: 60px;
  }
  
  .header h3 {
    font-size: 1.5rem !important;
  }
  
  .header p {
    font-size: 0.9rem !important;
    padding: 0 1rem !important;
    max-width: 100%;
    word-wrap: break-word;
  }
  
  .content-box {
    padding: 2rem 1rem !important;
    padding-bottom: 4rem !important;
  }
}

@media (max-width: 576px) {
  .header {
    height: 70vh;
    min-height: 450px;
    padding-top: 50px;
  }
  
  .header h3 {
    font-size: 1.25rem !important;
    line-height: 1.3;
  }
  
  .header p {
    font-size: 0.85rem !important;
    padding: 0 0.5rem !important;
    line-height: 1.4;
  }
}

.gallery-image {
  cursor: pointer;
}

.gallery-image .overlay {
  background: rgba(0,0,0,0.5);
  opacity: 0;
  transition: opacity 0.3s;
}

.gallery-image:hover .overlay {
  opacity: 1;
}

.gallery-image img {
  object-fit: cover;
  height: 150px;
  width: 100%;
}
