/* ══════════════════════════════════════════
   GLOBAL TOKENS
══════════════════════════════════════════ */
.gold-text {
    background: linear-gradient(135deg, #c9a84c 0%, #f5d78e 50%, #c9a84c 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.dot-grid {
    background-image: radial-gradient(circle at 1px 1px, rgba(255,255,255,0.04) 1px, transparent 0);
    background-size: 38px 38px;
}

/* ══════════════════════════════════════════
   HERO
══════════════════════════════════════════ */
.hero-slide { position:absolute; inset:0; }
.hero-slide img { width:100%; height:100%; object-fit:cover; }

/* Animated ticker line */
@keyframes tickerMove {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.ticker-track { animation: tickerMove 28s linear infinite; display:flex; white-space:nowrap; }
.ticker-track:hover { animation-play-state: paused; }

/* Floating stat cards */
@keyframes floatY {
    0%,100% { transform: translateY(0px); }
    50%      { transform: translateY(-7px); }
}
.float-1 { animation: floatY 5s ease-in-out infinite; }
.float-2 { animation: floatY 6.5s ease-in-out infinite 1s; }

/* ══════════════════════════════════════════
   ABOUT STRIP
══════════════════════════════════════════ */
.feature-card {
    background: #111214;
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 1.25rem;
    padding: 2rem;
    position:relative; overflow:hidden;
    transition: border-color .4s ease, box-shadow .4s ease, transform .4s ease;
}
.feature-card::before {
    content:''; position:absolute; top:0; left:10%; right:10%; height:1px;
    background: linear-gradient(90deg,transparent,rgba(201,168,76,0.6),transparent);
    opacity:0; transition: opacity .4s ease;
}
.feature-card:hover::before { opacity:1; }
.feature-card:hover {
    border-color: rgba(201,168,76,0.28);
    box-shadow: 0 20px 50px rgba(0,0,0,0.4), 0 0 40px rgba(201,168,76,0.05);
    transform: translateY(-5px);
}
.feature-icon {
    width:52px; height:52px; border-radius:.875rem;
    background:rgba(201,168,76,0.08);
    border:1px solid rgba(201,168,76,0.2);
    display:flex; align-items:center; justify-content:center;
    margin-bottom:1.25rem;
    transition: transform .35s ease;
}
.feature-card:hover .feature-icon { transform:scale(1.1); }

/* ══════════════════════════════════════════
   COURSE CARDS
══════════════════════════════════════════ */
.course-card {
    background:#111214;
    border:1px solid rgba(255,255,255,0.07);
    border-radius:1.5rem;
    overflow:hidden;
    display:flex; flex-direction:column;
    transition: border-color .4s ease, box-shadow .4s ease, transform .4s ease;
}
.course-card:hover {
    border-color: rgba(201,168,76,0.3);
    box-shadow: 0 24px 60px rgba(0,0,0,0.55), 0 0 40px rgba(201,168,76,0.07);
    transform: translateY(-8px);
}
.course-thumb {
    position:relative; overflow:hidden; height:200px; background:#0a0a0a;
}
.course-thumb img {
    width:100%; height:100%; object-fit:cover;
    opacity:.75; transition: opacity .5s ease, transform .7s cubic-bezier(.25,.46,.45,.94);
}
.course-card:hover .course-thumb img { opacity:1; transform:scale(1.06); }
.course-badge {
    position:absolute; top:.875rem; right:.875rem;
    background:rgba(0,0,0,0.75); backdrop-filter:blur(8px);
    border:1px solid rgba(201,168,76,0.35);
    color:#c9a84c; font-size:.6rem; font-weight:800;
    letter-spacing:.18em; text-transform:uppercase;
    padding:.3rem .875rem; border-radius:9999px;
}

/* ══════════════════════════════════════════
   TESTIMONIALS
══════════════════════════════════════════ */
.testimonial-card {
    background:#111214;
    border:1px solid rgba(255,255,255,0.07);
    border-radius:1.5rem;
    padding:2rem;
    position:relative;
    transition: border-color .4s ease, box-shadow .4s ease, transform .3s ease;
}
.testimonial-card::before {
    content:''; position:absolute; top:0; left:10%; right:10%; height:1px;
    background:linear-gradient(90deg,transparent,rgba(201,168,76,0.4),transparent);
    opacity:0; transition:opacity .4s ease;
}
.testimonial-card:hover::before { opacity:1; }
.testimonial-card:hover {
    border-color:rgba(201,168,76,0.25);
    box-shadow: 0 16px 40px rgba(0,0,0,0.4);
    transform:translateY(-4px);
}

/* ══════════════════════════════════════════
   REGISTER FORM
══════════════════════════════════════════ */
.reg-input {
    width:100%;
    background:rgba(5,5,5,0.9);
    border:1px solid rgba(255,255,255,0.08);
    border-radius:.75rem;
    padding:.9rem 1.1rem;
    color:#fff; font-size:.875rem;
    outline:none;
    transition:border-color .3s ease, box-shadow .3s ease;
}
.reg-input:focus {
    border-color:rgba(201,168,76,0.6);
    box-shadow:0 0 0 3px rgba(201,168,76,0.07);
}
.reg-input::placeholder { color:rgba(255,255,255,0.2); }
.reg-input option { background:#111214; color:#fff; }
.reg-label {
    display:block; font-size:.6rem; font-weight:800;
    text-transform:uppercase; letter-spacing:.2em;
    color:rgba(255,255,255,0.35); margin-bottom:.5rem;
}

/* ══════════════════════════════════════════
   BTN PRIMARY
══════════════════════════════════════════ */
.btn-primary {
    display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
    background:linear-gradient(135deg,#c9a84c,#f5d78e);
    color:#000; font-weight:800; font-size:.78rem;
    text-transform:uppercase; letter-spacing:.14em;
    padding:1rem 2.25rem; border-radius:.875rem;
    transition:box-shadow .3s ease, transform .3s ease;
    border:none; cursor:pointer;
}
.btn-primary:hover {
    box-shadow:0 0 50px rgba(201,168,76,0.5);
    transform:translateY(-2px);
}
.btn-outline {
    display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
    background:transparent;
    border:1px solid rgba(201,168,76,0.4);
    color:#c9a84c; font-weight:800; font-size:.78rem;
    text-transform:uppercase; letter-spacing:.14em;
    padding:1rem 2.25rem; border-radius:.875rem;
    transition:background .3s ease, box-shadow .3s ease;
}
.btn-outline:hover {
    background:rgba(201,168,76,0.07);
    box-shadow:0 0 24px rgba(201,168,76,0.15);
}

/* ══════════════════════════════════════════
   CANVAS
══════════════════════════════════════════ */
#hero-particles { position:absolute; inset:0; z-index:1; pointer-events:none; }