/* Base */
body {
  font-family: "Bebas Neue", sans-serif;
  background: #ececec;
  color: #440909;
  margin: 0;               /* allow full-width bands to touch edges */
}

h1 { font-size: 2.5rem; }
p  { font-size: 1.2rem; }

header { text-align: center; }

/* Narrow content inside <main> only */
main {
  max-width: 800px;
  margin: 0 auto;
}
main section { text-align: center; }

/* Café section text spacing */
.about {
  margin: 2rem 0;
  line-height: 1.6;
}
main section:first-of-type p { margin-bottom: 2rem; }

/* HERO */
.hero {
  position: relative;
  text-align: center;
  padding: 8rem 0;
  min-height: 40vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}

/* white full-width band behind hero text */
.hero-band {
  position: relative;
  z-index: 1;                 /* keep above background */
  background: rgba(255, 255, 255, 0.6);
  padding: 1rem 0;
  width: 100%;
}

/* hero text colors/sizes */
.hero h1 { color: #440909; font-size: 6rem; margin: 0 0 .5rem; }
.hero p  { color: #440909; font-size: 3rem; margin: 0; }

/* Optional: JS slideshow layers (if you use script.js slideshow) */
.hero .bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transition: opacity 1.2s ease;
  opacity: 1;
  z-index: 0;                 /* behind the band + text */
}
.hero .bg.hidden { opacity: 0; }

@media (max-width: 480px) {
  .hero h1 { font-size: 3.2rem; }
  .hero p  { font-size: 1.6rem; }
}


/* Shared centered container for full-width sections */
.container {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1rem;
  text-align: center;
}

/* Full-width colored sections */
.coaching  { background: #f5f5f5; padding: 3rem 0; }
.staples   { background: #f0ece3; padding: 3rem 0; }
.wholesale { background: #e9f5f0; padding: 3rem 0; }
.location  { background: #fff8f0; padding: 3rem 0; }
.aboutus   { background: #fdf2f2; padding: 3rem 0; }
.instagram { background: #f0f7ff; padding: 3rem 0; }
.contact   { background: #fafafa; padding: 3rem 0; }

footer {
  text-align: center;
  padding: 2rem 1rem;
  color: #fff;
}
