/* Approved mockup layout, retaining BowStrike's dark theme and live controls. */
.home-content { padding-top: 22px; }
.home-hero {
  min-height: 0;
  grid-template-columns: minmax(0, 1.5fr) minmax(180px, .7fr);
  padding: 34px 38px;
  gap: 24px;
}
.home-hero h1 { font-size: clamp(3rem, 4.8vw, 4.8rem); }
.home-hero-copy > p { max-width: 480px; margin: 15px 0 20px; font-size: 1rem; }
.home-hero-visual { display: grid; width: min(240px, 100%); }
.home-visual-chip {
  position: static;
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
  text-transform: uppercase;
  letter-spacing: .14em;
  text-align: center;
}
.home-visual-chip::before { display: none; }
.home-event-finder { margin: 20px 0 0; padding: 20px; }
.home-section-roles { padding: 0; border: 0; background: none; box-shadow: none; }
.home-section-roles .home-section-head { align-items: center; }
.home-audience { padding: 22px; }
.home-audience p { font-size: .88rem; line-height: 1.6; }
.home-section { margin-top: 28px; }
@media (min-width: 981px) and (max-width: 1250px) {
  .home-event-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .home-hero { grid-template-columns: minmax(0, 1fr) 150px; padding: 28px; gap: 16px; }
  .home-hero h1 { font-size: 3.2rem; }
  .home-hero-visual { display: grid; }
  .home-visual-chip { font-size: .6rem; }
}
@media (max-width: 760px) {
  .home-event-finder { margin: 18px 0 0; }
  .home-section-roles { padding: 0; }
}
@media (max-width: 560px) {
  .home-hero { grid-template-columns: minmax(0, 1fr); padding: 26px 20px; }
  .home-hero h1 { font-size: clamp(2.65rem, 11vw, 3.7rem); }
  .home-hero-visual { display: none; }
  .home-event-finder { padding: 16px; }
  .home-audience { padding: 20px; }
}
