body {
  margin: 0;
  font-family: 'Oswald', sans-serif;
  background-color: #111; /* fallback */
  background-image: url('assets/openart-i-need-an-abstract-background-texture-for-using-dark-black-blue-and-grey-tones-with-a-dilapidated-look_JsqSQ6aQ_upscaled.png');
  background-size: cover;       /* make it fill the screen */
  background-repeat: no-repeat; /* prevent tiling */
  background-position: center;  /* center the image */
  background-attachment: fixed;
  color: #f5f5f5;
  text-align: center;
  min-height: 100vh; 
}

nav {
  background: #222;
  position: fixed;
  width: 100%;
  z-index: 1;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}

nav a {
  color: #f5f5f5;
  margin: 0 1rem;
  text-decoration: none;
}

nav a:hover {
  color: #f7bc03;
}

main {
  padding-top: 56px;
}

.main-logo {
  height: 50vh;
  align-items: center;
  display: flex;
  width: 100%;
  justify-content: center;
}

.main-logo img {
  max-width: 50%;  
}

@media (max-width: 768px) {
  .main-logo {
    height: 30vh;
  }

  .main-logo img {
    max-width: 80%;
  }
}

.social-links {
  margin-bottom: 4rem;
  display: flex;
  justify-content: center;
  gap: 2rem;
}

.social-links a {
  color: #f5f5f5;
  font-size: 2rem;
  transition: color 0.3s ease;
}

/* Hover colors per brand */
.social-links a[aria-label="Spotify"]:hover {
  color: #1DB954; /* Spotify green */
}
.social-links a[aria-label="Instagram"]:hover {
  color: #E1306C; /* Instagram pink */
}
.social-links a[aria-label="YouTube"]:hover {
  color: #FF0000; /* YouTube red */
}
.social-links a[aria-label="Email"]:hover {
  color: #f7bc03; /* Gold, or pick a band color */
}

.video-container {
  position: relative;
  width: 90%;             /* responsive */
  max-width: 800px;        /* cap width on desktop */
  aspect-ratio: 16 / 9;    /* maintain 16:9 */
  margin: 0 auto;          /* center it */
}

.video-container iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border: 0;
}

.about {
  display: flex;
  align-items: flex-start;
  gap: 2rem;         /* space between columns */
  padding: 2rem;
  flex-wrap: wrap;   /* allows wrapping on smaller screens */
  justify-content: center;
}

.promo-photo img {
  max-width: 300px;
  width: 100%;
  height: auto;
  border-radius: 8px; 
}

.about-text {
  flex: 1;
  max-width: 250px;
  text-align: left;
}

.about-text h3 {
  margin-top: 0;
  margin-bottom: 1rem;
}

.about-text p {
  line-height: 1.6;
}

/* Mobile: stack vertically */
@media (max-width: 768px) {
  .about {
    flex-direction: column;
    align-items: center;   /* center content */
    text-align: center;    /* optional for better look */
  }

  .promo-photo img {
    margin-bottom: 1.5rem; /* space between image and text */
  }
}


.contact {
  max-width: 600px;       /* limit form width */
  margin: 0 auto;      /* center horizontally with spacing */
  padding: 1rem;
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  background-color: #222;   /* dark background */
  padding: 2rem;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.5);
  text-align: left;
}

.contact-form label {
  display: flex;
  flex-direction: column;
  font-weight: bold;
  color: #f5f5f5;
  font-size: 1rem;
}

.contact-form input,
.contact-form textarea {
  margin-top: 0.5rem;
  padding: 0.75rem;
  border: 1px solid #444;
  border-radius: 6px;
  font-size: 1rem;
  background-color: #111;
  color: #f5f5f5;
}

.contact-form input:focus,
.contact-form textarea:focus {
  outline: none;
  border-color: #f7bc03;   /* highlight on focus */
  box-shadow: 0 0 0 2px rgba(255,64,129,0.3);
}

.contact-form button {
  padding: 0.75rem 1.5rem;
  font-size: 1rem;
  font-weight: bold;
  background-color: #2d5e87;
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

.contact-form button:hover {
  background-color: #2d5e87;
  transform: translateY(-2px);
}

@media (max-width: 768px) {
  .contact-form {
    padding: 1.5rem;
  }
}


footer {
  padding-top: 50px;
}