body {
    margin: 0;
    font-family: Arial, sans-serif;
    background: #111;
    color: #eee;
    line-height: 1.6;
}
.hero {
    background-image: url('dj.jpg');
    background-size: cover;
    background-position: center 25%;
    background-repeat: no-repeat;
    height: 55vh;
    min-height: 380px;
    max-height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    position: relative;
    padding: 20px;
}
.hero::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.55);
}
.hero h1, .hero p, .hero .btn { position: relative; z-index: 1; }
.hero h1 { font-size: 42px; margin: 0 0 10px 0; }
.hero p { font-size: 18px; margin: 0 0 20px 0; color: #ddd; }
section { padding: 40px 20px; max-width: 900px; margin: auto; }
h2 { color: #e91e63; margin-bottom: 15px; }
ul { list-style: none; padding: 0; }
ul li { background: #222; margin: 8px 0; padding: 10px; border-left: 4px solid #e91e63; }
.btn { background: #e91e63; color: white; padding: 12px 25px; border-radius: 25px; text-decoration: none; font-weight: bold; display: inline-block; }
.btn:hover { background: #c2185b; }
footer { text-align: center; padding: 20px; background: #000; color: #aaa; }
footer a { color: #e91e63; text-decoration: none; }