
#promo-bar{position:fixed;top:0;width:100%;background:#ffd600;color:#000;text-align:center;padding:10px;z-index:9999;font-size:14px}
.promo-btn{margin-left:15px;background:#fff;color:#c40000;padding:5px 10px;border-radius:5px;text-decoration:none;font-weight:bold}
.promo-close{position:absolute;right:10px;top:5px;background:none;border:none;color:white;font-size:18px;cursor:pointer}
.event-section{background:#111;color: #000;padding:60px 20px;text-align:center}
.event-section h2{color:#ff3b3b;margin-bottom:20px}
.event-buttons a{margin:10px;display:inline-block;padding:12px 20px;border-radius:6px;text-decoration:none}
.btn-primary{background: #ffd600;color:#fff}
.btn-secondary{background:#fff;color:#000}


@media (max-width: 600px) {
  .promo-btn {
    font-size: 12px;
    padding: 4px 8px;
    margin-left: 8px;
    display: inline-block;
  }

  #promo-bar {
    font-size: 13px;
    padding: 8px;
  }
}


/* Footer contrast fix */
footer {background:#111;color:#fff;border-top:3px solid #ffd600;}

footer a {
  color: #ffd600;
}

footer a:hover {
  color: #fff;
  text-decoration: underline;
}

footer p, footer span {
  opacity: 0.9;
}

/* Force all footer text white */
footer * {
  color: #fff !important;
}

footer a {
  color: #ffd600 !important;
}

footer a:hover {
  color: #fff !important;
}


/* Mobile promo banner overlap fix */
@media (max-width: 768px) {
  #promo-bar {
    position: sticky;
    top: 0;
    padding: 8px 40px 8px 10px;
    font-size: 12px;
    line-height: 1.35;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    min-height: auto;
  }

  #promo-bar .promo-btn {
    font-size: 11px;
    padding: 4px 8px;
    margin-left: 0;
    white-space: nowrap;
  }

  #promo-bar .promo-close {
    top: 6px;
    right: 8px;
    font-size: 16px;
  }

  body {
    padding-top: 0 !important;
  }

  header,
  .site-header,
  .topbar,
  .hero,
  .hero-section {
    margin-top: 0 !important;
  }
}

