/* Full-Screen Collection Banner Styling */
.collection-banner-section {
  position: relative;
  width: 100%;
  height: 70svh;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: flex-end;
  padding-bottom: 8vh;
  padding-left: 8vw;
  color: #ffffff;
  margin-bottom: 35px; /* Clean spacing to push subsequent blocks down */
}

.collection-banner-content {
  max-width: 550px;
  z-index: 5;
  text-align: left;
}

.collection-banner-tag {
  font-family: var(--font-cta);
  font-size: 0.8rem;
  font-weight: 500;
  letter-spacing: 0.25em;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 10px;
  display: block;
  text-transform: uppercase;
}

.collection-banner-title {
  font-size: 3.8rem;
  line-height: 1.2;
  margin-bottom: 25px;
  font-weight: 300;
  color: #ffffff;
  text-shadow: 0 2px 10px rgba(0,0,0,0.15);
}

.collection-banner-btn {
  display: inline-block;
  font-family: var(--font-cta);
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: #ffffff;
  border: 1px solid #ffffff;
  padding: 12px 30px;
  background-color: transparent;
  transition: var(--transition-fast);
  text-decoration: none;
}

.collection-banner-btn:hover {
  background-color: #ffffff;
  color: var(--text-color);
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .collection-banner-section {
    height: 70vh;
    padding-bottom: 6vh;
    padding-left: 6vw;
  }
  
  .collection-banner-title {
    font-size: 2.2rem;
  }
}
