/* Font setup */
body, h1, h2, h3, h4, h5, h6 {
  font-family: "Montserrat", sans-serif;
}



body {
   background-color: #141414;
  color: #e8e8e8;
}



/* Header container */
.header-container {
  text-align: center;
  padding: 32px 16px;
  color: #e8e8e8;
}

/* Hero title */
.hero-title {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 64px;  /* desktop default */
  line-height: 1.2;
  margin-bottom: 16px;
  color: #e8e8e8;   /* keep same as before */
}

/* Hero subtitle - keep your previous styling */
.hero-subtitle {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 14px;
  color: #aaa;
  margin-bottom: 24px;
}

/* Medium desktop / tablet */
@media screen and (max-width: 1024px) {
  .hero-title {
    font-size: 48px;   /* scales down nicely */
  }
  .hero-subtitle {
    font-size: 13px;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
  }
}

/* Mobile */
@media screen and (max-width: 600px) {
  .hero-title {
    font-size: 32px;   /* mobile-friendly */
  }
  .hero-subtitle {
    font-size: 12px;
    letter-spacing: 1px;
    margin-bottom: 16px;
  }
}

/* Image spacing */
.w3-row-padding img {
  margin-bottom: 12px;
}

/* Remove blue highlight on tap for images */
img, .hover-img {
  -webkit-tap-highlight-color: transparent; /* iOS Safari */
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hover effect */
.hover-img {
  cursor: pointer;
  width: 100%;
  margin-bottom: 40px;
  border-radius: 8px;
  transition: transform 0.3s ease, filter 0.3s ease;
}

.hover-img:hover {
  transform: scale(1.05);
  filter: brightness(1.05);
}

/* Modal overlay */
#imgModal {
  display: none; /* hidden initially */
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0,0,0,0.95);
  justify-content: center;
  align-items: center;
  z-index: 9999;
  cursor: pointer;
}

#imgModal img {
  max-width: 90vw;
  max-height: 90vh;
  border-radius: 4px;
  box-shadow: 0 0 40px rgba(0,0,0,0.7);
}



/* Sidebar */
.w3-sidebar {
  width: 120px;
  background: #222;
}

/* Page content offset */
#main {
  margin-left: 120px;
   
}

/* Mobile layout */
@media only screen and (max-width: 600px) {
  #main {
    margin-left: 0;
  }
}

/* Optional improvements */
header img {
  border-radius: 4px;
}

#contact {
text-align:left;

} 

footer i {
  cursor: pointer;
}

footer i:hover {
  opacity: 0.7;
}



.img-center {
  display: flex;
  justify-content: center;
}

.img-center img {
  border-radius: 22px;
  width: 40%;
  display: block;
}

#footer{
text-align: center;
padding-top: 16px; /* less space above footer */
  padding-bottom: 30px;
}

/* Reduce spacing for contact section */
#contact {
  padding-top: 40px;  /* less than 64px */
  padding-bottom: 10px; 
}

.contact-info p {
  margin-bottom: 12px; /* tighten spacing between contact lines */
}

.contact-img {
  margin-top: 50px; /* space between contact info and image */
  margin-bottom: 0px; /* space before footer */
  
}

