* { margin:0; padding:0; box-sizing:border-box; font-family:Arial,sans-serif; }
body { line-height:1.6; }
html { scroll-behavior: smooth; }

/* HERO */
.hero { position:relative; height:70vh; overflow:hidden; }
.slider { position:absolute; top:0; left:0; width:50%; height:100%; display:flex; animation:slide 32s infinite; }
.slide { flex:1 0 100%; background-size:cover; background-position:center; }
.overlay { position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.35); z-index:1; } /* lighter */
.hero-content { position:relative; z-index:2; color:white; text-align:center; top:50%; transform:translateY(-50%); }
.hero-content h1 { font-size:3rem; margin-bottom:20px; }
.hero-content p { font-size:1.5rem; margin-bottom:30px; }

/* BUTTONS */
.btn { display:inline-block; padding:10px 25px; margin:5px; background:#ff6600; color:#fff; text-decoration:none; border-radius:5px; }
.btn:hover { background:#e65c00; }
.btn.outline { background:transparent; border:2px solid #ff6600; }

/* SLIDER ANIMATION */
@keyframes slide {
  0%{transform:translateX(0%);}
  12.5%{transform:translateX(-100%);}
  25%{transform:translateX(-200%);}
  37.5%{transform:translateX(-300%);}
  50%{transform:translateX(-400%);}
  62.5%{transform:translateX(-500%);}
  75%{transform:translateX(-600%);}
  87.5%{transform:translateX(-700%);}
  100%{transform:translateX(0%);}
}

/* SECTIONS */
.section { padding:60px 20px; }
.section.alt { background:#f4f4f4; }
.container { max-width:1200px; margin:auto; }
.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.card { background:white; padding:20px; border-radius:5px; text-align:center; box-shadow:0 2px 5px rgba(0,0,0,0.1); }
.courses { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:20px; }

/* CONTACT */
.contact .btn { margin-top:10px; }

/* FOOTER */
.footer { background:#222; color:white; text-align:center; padding:20px; }
.footer .banner-preview { max-width:200px; margin-bottom:10px; }

/* RESPONSIVE */
@media(max-width:900px){.grid-4,.grid-3{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.grid-4,.grid-3{grid-template-columns:1fr;}}

/* SCROLL ANIMATION */
.card, .course, .video-wrapper {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}
.card.show, .course.show, .video-wrapper.show {
  opacity: 1;
  transform: translateY(0);
}


/* CONTINUOUS TEXT SLIDER */
.text-slider {
  width: 100%;
  overflow: hidden;
  background-color: #000000;
  padding: 10px 0;
  position: relative;
  z-index: 3;
}

.text-slider-track {
  display: flex;
  width: max-content;
  animation: scrollText 15s linear infinite;
}

.text-slider-track span {
  white-space: nowrap;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  margin-right: 50px; /* spacing between repeats */
}

@keyframes scrollText {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

