body, main{
    background-color: black;
    color: white;
    font-family: proxima-nova, sans-serif
}

header {
  display: flex;
  justify-content: center;
  align-items: center;
}

main {
    flex: 1;
    padding: 20px;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
}


.title {
  opacity: 0;                 /* start invisible */
  transform: translateY(-50px); /* start slightly above */
  animation: fadeSlide 1s forwards; /* play the animation */
  animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); /* easing */
  font-size: 6rem;
  font-weight: bold;
  background: -webkit-linear-gradient(0deg, #ffe600, #ffe136);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.section {
    display: inline-flex; /* keeps it shrink-wrapped AND allows flex properties */
    flex-direction: column;
    justify-content: center; /* now valid */
    align-items: center; /* center horizontally */
    text-align: center;
    opacity: 0;
    transform: translateY(50px);
    animation: fadeSlide 1s forwards;
    animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    max-width: 300px;
    padding: 20px;
    margin: 10px;
    border: 2px solid white;
    height: 344px;
    width: 301px;
}

.section h2 {
    position: absolute;
    top: 20px;
}

a {
    color: rgb(255, 187, 0);
    text-decoration: underline;
    font-size: 1.2em;
    margin-top: 10px;
}

.section-container {
    display: flex;
    justify-content: center; /* center items horizontally */
    align-items: center;     /* center items vertically */
    gap: 20px;               /* spacing between sections */
    flex-wrap: wrap;         /* wrap to next line on smaller screens */
    margin-top: 50px;
}


#who-we-are {
    animation-delay: 0.2s; /* delay for staggered effect */
}



#our-sites {
    animation-delay: 0.4s; /* delay for staggered effect */
}

footer {
    display: flex;
    margin-top: 20px;
    width: 100%;
    justify-content: center;
    box-sizing: border-box;
    padding: 20px;
}

@keyframes fadeSlide {
  to {
    opacity: 1;           /* fully visible */
    transform: translateY(0); /* final position */
  }
}
