:root{--black:#0c0c0c;--white:#f4efe6;--red:#c8391a;--gold:#e8b84b;--green:#1a6b3c;--grey:#181818;--grey2:#222;--border:rgba(255,255,255,0.07);--muted:rgba(244,239,230,0.5);--success:#40d040;}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--black);color:var(--white);font-family:'DM Sans',sans-serif;font-weight:300;overflow-x:hidden;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:1rem 3rem;background:rgba(12,12,12,0.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);}
.logo{font-family:'Bebas Neue',sans-serif;font-size:1.5rem;letter-spacing:0.12em;color:var(--white);text-decoration:none;}
.logo span{color:var(--gold);}
.beta-badge{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.15em;text-transform:uppercase;background:rgba(232,184,75,0.15);border:1px solid rgba(232,184,75,0.35);color:var(--gold);padding:0.2rem 0.7rem;border-radius:2px;margin-left:0.8rem;vertical-align:middle;}
.nav-right{display:flex;gap:1.5rem;align-items:center;}
.nav-link{color:var(--muted);text-decoration:none;font-size:0.82rem;letter-spacing:0.06em;transition:color 0.2s;}
.nav-link:hover{color:var(--white);}
.nav-cta{background:var(--red);color:var(--white);padding:0.5rem 1.3rem;border-radius:2px;font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase;font-weight:500;transition:background 0.2s;cursor:pointer;border:none;}
.nav-cta:hover{background:#e04020;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none;}
.hamburger span{display:block;width:22px;height:2px;background:var(--white);transition:all 0.3s;}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
.mobile-menu{display:none;position:fixed;top:64px;left:0;right:0;z-index:190;background:rgba(12,12,12,0.98);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);padding:1.5rem 2rem;flex-direction:column;gap:1rem;}
.mobile-menu.open{display:flex;}
.mobile-menu .nav-link{font-size:1rem;padding:0.5rem 0;border-bottom:1px solid var(--border);}
.mobile-menu .nav-cta{text-align:center;padding:0.9rem;margin-top:0.5rem;}

/* HERO */
.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:8rem 3rem 5rem;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 70% 40%,rgba(200,57,26,0.08) 0%,transparent 70%),radial-gradient(ellipse 40% 60% at 20% 80%,rgba(26,107,60,0.06) 0%,transparent 70%);pointer-events:none;}
.hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,0.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.02) 1px,transparent 1px);background-size:50px 50px;pointer-events:none;}
.hero-tag{font-family:'DM Mono',monospace;font-size:0.68rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1.8rem;display:flex;align-items:center;gap:0.7rem;}
.hero-tag::before{content:'';width:2rem;height:1px;background:var(--gold);}
.hero h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(4rem,10vw,9rem);line-height:0.88;letter-spacing:0.01em;margin-bottom:2rem;position:relative;z-index:1;}
.hero h1 em{font-style:normal;color:var(--red);}
.hero-sub{font-size:1.05rem;line-height:1.75;color:var(--muted);max-width:520px;margin-bottom:3rem;position:relative;z-index:1;}
.hero-sub strong{color:var(--white);font-weight:500;}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;position:relative;z-index:1;}
.btn-primary{background:var(--red);color:var(--white);padding:1rem 2.5rem;border-radius:2px;font-size:0.88rem;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;font-weight:500;transition:background 0.2s,transform 0.2s;display:inline-block;border:none;cursor:pointer;}
.btn-primary:hover{background:#e04020;transform:translateY(-2px);}
.btn-ghost{border:1px solid rgba(244,239,230,0.2);color:var(--white);padding:1rem 2.5rem;border-radius:2px;font-size:0.88rem;letter-spacing:0.08em;text-transform:uppercase;text-decoration:none;font-weight:400;transition:border-color 0.2s,transform 0.2s;display:inline-block;background:none;cursor:pointer;}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px);}
.hero-stats{display:flex;gap:3rem;margin-top:5rem;padding-top:2rem;border-top:1px solid var(--border);position:relative;z-index:1;flex-wrap:wrap;}
.hero-stat-num{font-family:'Bebas Neue',sans-serif;font-size:2.5rem;color:var(--gold);display:block;line-height:1;}
.hero-stat-label{font-size:0.75rem;color:var(--muted);letter-spacing:0.06em;text-transform:uppercase;margin-top:0.2rem;display:block;}

/* TICKER */
.ticker{background:var(--red);padding:0.75rem 0;overflow:hidden;white-space:nowrap;}
.ticker-inner{display:inline-flex;gap:2.5rem;animation:ticker 28s linear infinite;}
.ticker-item{font-family:'DM Mono',monospace;font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--white);opacity:0.9;}
.ticker-item::before{content:'✦  ';}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* SECTIONS */
section{padding:6rem 3rem;}
.section-label{font-family:'DM Mono',monospace;font-size:0.68rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;display:flex;align-items:center;gap:0.7rem;}
.section-label::before{content:'';width:1.5rem;height:1px;background:var(--gold);}
.section-title{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.5rem,5vw,4rem);line-height:0.95;letter-spacing:0.02em;margin-bottom:1.2rem;}

/* COURSES */
.courses-section{background:#0f0f0f;}
.courses-intro{max-width:600px;margin-bottom:3rem;}
.courses-intro p{font-size:0.95rem;line-height:1.75;color:var(--muted);}
.courses-intro p strong{color:var(--white);}
.category-tabs{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:3rem;}
.cat-tab{font-family:'DM Mono',monospace;font-size:0.65rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.45rem 1rem;border-radius:2px;border:1px solid var(--border);color:var(--muted);background:none;cursor:pointer;transition:all 0.2s;}
.cat-tab:hover{border-color:rgba(255,255,255,0.2);color:var(--white);}
.cat-tab.active{background:var(--red);border-color:var(--red);color:var(--white);}
.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);}

/* COURSE CARDS */
.course-card{background:#0f0f0f;padding:2.5rem;position:relative;overflow:hidden;transition:background 0.3s;cursor:pointer;}
.course-card:hover{background:#161616;}
.course-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:left;transition:transform 0.35s;}
.course-card:hover::after{transform:scaleX(1);}
.course-card.cyber::after{background:var(--red);}
.course-card.python::after{background:var(--gold);}
.course-card.cloud::after{background:#ff9900;}
.course-card.data-ai::after{background:#9b59b6;}
.course-card.digital::after{background:#27ae60;}
.course-card.networking::after{background:#e67e22;}
.course-card.sysadmin::after{background:#5f6360;}
.course-number{font-family:'Bebas Neue',sans-serif;font-size:5rem;color:rgba(255,255,255,0.04);line-height:1;position:absolute;top:1rem;right:1.5rem;letter-spacing:0.05em;pointer-events:none;}
.course-icon{font-size:2rem;margin-bottom:1.5rem;display:block;}
.course-tag{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.15em;text-transform:uppercase;margin-bottom:0.7rem;display:block;}
.course-card.cyber .course-tag{color:var(--red);}
.course-card.python .course-tag{color:var(--gold);}
.course-card.cloud .course-tag{color:#ff9900;}
.course-card.data-ai .course-tag{color:#a66fc8;}
.course-card.digital .course-tag{color:#2ecc71;}
.course-card.networking .course-tag{color:#e67e22;}
.course-card.sysadmin .course-tag{color:#888;}
.course-title{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;letter-spacing:0.03em;line-height:1.05;margin-bottom:1rem;}
.course-desc{font-size:0.85rem;line-height:1.7;color:var(--muted);margin-bottom:1.8rem;}
.learn-list{list-style:none;margin-bottom:1.8rem;}
.learn-list li{font-size:0.8rem;color:rgba(244,239,230,0.6);padding:0.3rem 0;display:flex;align-items:flex-start;gap:0.5rem;border-bottom:1px solid rgba(255,255,255,0.03);line-height:1.4;}
.learn-list li::before{content:'→';font-size:0.7rem;margin-top:0.1rem;flex-shrink:0;}
.course-card.cyber .learn-list li::before{color:var(--red);}
.course-card.python .learn-list li::before{color:var(--gold);}
.course-card.cloud .learn-list li::before{color:#ff9900;}
.course-card.data-ai .learn-list li::before{color:#a66fc8;}
.course-card.digital .learn-list li::before{color:#2ecc71;}
.course-card.networking .learn-list li::before{color:#e67e22;}
.course-card.sysadmin .learn-list li::before{color:#888;}
.course-meta{display:flex;justify-content:space-between;align-items:center;padding-top:1.2rem;border-top:1px solid var(--border);}
.course-duration{font-family:'DM Mono',monospace;font-size:0.68rem;color:rgba(244,239,230,0.35);}
.course-price{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:0.05em;}
.course-card.cyber .course-price{color:var(--red);}
.course-card.python .course-price{color:var(--gold);}
.course-card.cloud .course-price{color:#ff9900;}
.course-card.data-ai .course-price{color:#a66fc8;}
.course-card.digital .course-price{color:#2ecc71;}
.course-card.networking .course-price{color:#e67e22;}
.course-card.sysadmin .course-price{color:#888;}
.course-old-price{font-size:0.75rem;color:rgba(244,239,230,0.25);text-decoration:line-through;margin-left:0.4rem;font-family:'DM Mono',monospace;}
.enrol-btn{display:block;width:100%;margin-top:1.5rem;padding:0.85rem;text-align:center;font-family:'DM Mono',monospace;font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;border:1px solid var(--border);color:var(--muted);background:none;cursor:pointer;border-radius:2px;transition:all 0.2s;text-decoration:none;}
.enrol-btn:hover{border-color:var(--white);color:var(--white);}
.course-card.cloud .enrol-btn:hover{border-color:#ff9900;color:#ff9900;}

/* COMING SOON CARD STATE */
.course-card.coming-card{opacity:0.7;}
.course-card.coming-card:hover{opacity:1;}

/* MORE COURSES CARD */
.more-courses-card{background:#0d0d0d;padding:2.5rem;position:relative;overflow:hidden;cursor:pointer;border:1px dashed rgba(255,255,255,0.1);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:420px;transition:background 0.3s,border-color 0.3s;}
.more-courses-card:hover{background:#111;border-color:rgba(255,255,255,0.25);}
.more-courses-icon{font-size:2.5rem;margin-bottom:1.2rem;}
.more-courses-title{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;letter-spacing:0.05em;margin-bottom:0.8rem;color:var(--white);}
.more-courses-desc{font-size:0.82rem;color:var(--muted);line-height:1.7;margin-bottom:1.5rem;max-width:220px;}
.more-courses-arrow{font-family:'DM Mono',monospace;font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(244,239,230,0.4);border:1px solid rgba(255,255,255,0.1);padding:0.6rem 1.2rem;border-radius:2px;transition:all 0.2s;}
.more-courses-card:hover .more-courses-arrow{border-color:var(--gold);color:var(--gold);}

/* LIVE + SOON BADGES */
.live-badge{position:absolute;top:1rem;right:1rem;font-family:'DM Mono',monospace;font-size:0.55rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.25rem 0.65rem;border-radius:2px;background:rgba(255,153,0,0.15);border:1px solid rgba(255,153,0,0.45);color:#ff9900;z-index:2;}
.soon-badge{position:absolute;top:1rem;right:1rem;font-family:'DM Mono',monospace;font-size:0.55rem;letter-spacing:0.12em;text-transform:uppercase;padding:0.25rem 0.65rem;border-radius:2px;background:rgba(255,255,255,0.04);border:1px solid var(--border);color:var(--muted);z-index:2;}

/* WAITLIST INLINE BUTTON */
.waitlist-inline-btn{display:block;width:100%;margin-top:1.5rem;padding:0.85rem;text-align:center;font-family:'DM Mono',monospace;font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;border:1px solid var(--border);color:var(--muted);background:none;cursor:pointer;border-radius:2px;transition:all 0.2s;}
.waitlist-inline-btn:hover{border-color:var(--gold);color:var(--gold);}

/* TIMETABLE */
.timetable-section{background:#0a0a0a;border-top:1px solid var(--border);}
.timetable-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);margin-top:3rem;}
.timetable-card{background:#0a0a0a;padding:1.8rem;}
.timetable-day{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:0.05em;margin-bottom:0.3rem;}
.timetable-time{font-family:'DM Mono',monospace;font-size:0.68rem;color:var(--gold);letter-spacing:0.1em;margin-bottom:1rem;display:block;}
.timetable-badge{display:inline-block;font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.2rem 0.6rem;border-radius:2px;margin-bottom:0.8rem;}
.badge-live{background:rgba(200,57,26,0.15);border:1px solid rgba(200,57,26,0.3);color:var(--red);}
.badge-hybrid{background:rgba(232,184,75,0.12);border:1px solid rgba(232,184,75,0.3);color:var(--gold);}
.timetable-note{font-size:0.8rem;color:var(--muted);line-height:1.6;}
.missed-policy{margin-top:2.5rem;padding:1.5rem;background:rgba(232,184,75,0.05);border:1px solid rgba(232,184,75,0.15);border-radius:2px;}
.missed-policy p{font-size:0.83rem;color:var(--muted);line-height:1.7;}
.missed-policy strong{color:var(--gold);font-weight:500;}

/* TESTIMONIALS */
.testimonials-section{background:var(--grey2);}
.testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3.5rem;}
.testimonial-card{background:#1a1a1a;padding:2rem;border-radius:2px;border-top:3px solid var(--border);transition:border-color 0.3s;}
.testimonial-card:hover{border-top-color:var(--gold);}
.testimonial-quote{font-size:3rem;color:var(--gold);opacity:0.3;line-height:0.7;font-family:'Bebas Neue',sans-serif;margin-bottom:1rem;}
.testimonial-text{font-size:0.88rem;line-height:1.75;color:rgba(244,239,230,0.75);margin-bottom:1.5rem;font-style:italic;}
.testimonial-author{display:flex;align-items:center;gap:0.8rem;border-top:1px solid var(--border);padding-top:1rem;}
.testimonial-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;}
.testimonial-name{font-weight:500;font-size:0.85rem;display:block;}
.testimonial-role{font-size:0.72rem;color:var(--muted);font-family:'DM Mono',monospace;letter-spacing:0.05em;}
.beta-tag{font-family:'DM Mono',monospace;font-size:0.55rem;letter-spacing:0.12em;background:rgba(232,184,75,0.1);border:1px solid rgba(232,184,75,0.25);color:var(--gold);padding:0.15rem 0.5rem;border-radius:1px;margin-left:0.5rem;}

/* WHY */
.why-section{background:var(--black);}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);margin-top:4rem;}
.why-card{background:var(--black);padding:2.2rem;border-top:3px solid var(--border);transition:border-color 0.2s;}
.why-card:hover{border-top-color:var(--gold);}
.why-icon{font-size:1.8rem;margin-bottom:1.2rem;display:block;}
.why-title{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:0.05em;margin-bottom:0.6rem;}
.why-desc{font-size:0.83rem;line-height:1.7;color:var(--muted);}

/* HOW IT WORKS */
.how-section{background:var(--green);position:relative;overflow:hidden;}
.how-section::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 30px,rgba(255,255,255,0.015) 30px,rgba(255,255,255,0.015) 31px);}
.how-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:4rem;position:relative;z-index:1;}
.how-num{font-family:'Bebas Neue',sans-serif;font-size:4rem;color:rgba(255,255,255,0.12);line-height:1;margin-bottom:-0.5rem;}
.how-title{font-family:'Bebas Neue',sans-serif;font-size:1.2rem;letter-spacing:0.05em;margin-bottom:0.6rem;}
.how-desc{font-size:0.83rem;line-height:1.7;color:rgba(244,239,230,0.65);}

/* ABOUT */
.about-section{background:var(--grey);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-top:3rem;}
.about-story p{font-size:0.92rem;line-height:1.85;color:var(--muted);margin-bottom:1.2rem;}
.about-story p strong{color:var(--white);font-weight:500;}
.instructor-card{background:#1e1e1e;border:1px solid var(--border);border-radius:2px;padding:2rem;}
.instructor-header{display:flex;align-items:center;gap:1.2rem;margin-bottom:1.5rem;}
.instructor-avatar{width:56px;height:56px;border-radius:50%;background:var(--red);display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:1.5rem;color:var(--white);flex-shrink:0;}
.instructor-name{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;letter-spacing:0.05em;}
.instructor-title{font-family:'DM Mono',monospace;font-size:0.65rem;color:var(--gold);letter-spacing:0.08em;}
.instructor-bio{font-size:0.82rem;line-height:1.75;color:var(--muted);}
.instructor-creds{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.2rem;}
.cred-badge{font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.08em;padding:0.25rem 0.6rem;background:rgba(255,255,255,0.05);border:1px solid var(--border);border-radius:1px;color:rgba(244,239,230,0.5);}

/* FAQ */
.faq-section{background:var(--black);}
.faq-list{max-width:720px;margin-top:3.5rem;}
.faq-item{border-bottom:1px solid var(--border);}
.faq-question{width:100%;background:none;border:none;color:var(--white);text-align:left;padding:1.3rem 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:'DM Sans',sans-serif;font-size:0.92rem;font-weight:500;letter-spacing:0.01em;transition:color 0.2s;}
.faq-question:hover{color:var(--gold);}
.faq-icon{font-family:'DM Mono',monospace;font-size:1rem;color:var(--gold);flex-shrink:0;margin-left:1rem;transition:transform 0.3s;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.35s ease,padding 0.2s;font-size:0.85rem;line-height:1.8;color:var(--muted);}
.faq-item.open .faq-answer{max-height:300px;padding-bottom:1.3rem;}

/* MPESA SECTION */
.mpesa-section{background:var(--grey);padding:4rem 3rem;display:flex;justify-content:space-between;align-items:center;gap:3rem;flex-wrap:wrap;border-top:1px solid var(--border);}
.mpesa-left h2{font-family:'Bebas Neue',sans-serif;font-size:2rem;letter-spacing:0.05em;margin-bottom:0.5rem;}
.mpesa-left p{font-size:0.88rem;color:var(--muted);max-width:460px;line-height:1.7;}
.mpesa-left p strong{color:var(--white);}
.mpesa-badge{background:rgba(0,180,0,0.12);border:1px solid rgba(0,180,0,0.3);color:#40d040;font-family:'DM Mono',monospace;font-size:0.72rem;padding:0.35rem 1rem;border-radius:2px;letter-spacing:0.08em;display:inline-block;margin-bottom:0.8rem;}

/* CTA */
.cta-section{background:var(--red);padding:7rem 3rem;text-align:center;position:relative;overflow:hidden;}
.cta-section::before{content:'BETA';font-family:'Bebas Neue',sans-serif;font-size:22rem;color:rgba(255,255,255,0.04);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;pointer-events:none;letter-spacing:0.1em;}
.cta-section h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(3rem,7vw,6rem);line-height:0.92;margin-bottom:1.5rem;position:relative;z-index:1;}
.cta-section p{font-size:1rem;color:rgba(244,239,230,0.8);margin-bottom:3rem;position:relative;z-index:1;}
.btn-white{background:var(--white);color:var(--red);padding:1.1rem 3rem;border-radius:2px;font-family:'DM Mono',monospace;font-size:0.8rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:500;display:inline-block;transition:transform 0.2s;position:relative;z-index:1;border:none;cursor:pointer;}
.btn-white:hover{transform:translateY(-3px);}

/* FOOTER */
footer{background:#080808;padding:3rem;border-top:1px solid var(--border);}
.footer-main{display:flex;justify-content:space-between;gap:3rem;flex-wrap:wrap;margin-bottom:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--border);}
.footer-logo{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;letter-spacing:0.12em;color:var(--white);}
.footer-logo span{color:var(--gold);}
.footer-tagline{font-size:0.8rem;color:var(--muted);margin-top:0.5rem;max-width:220px;line-height:1.6;}
.footer-links{display:flex;gap:4rem;flex-wrap:wrap;}
.footer-col h4{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(244,239,230,0.3);margin-bottom:1rem;}
.footer-col a{display:block;font-size:0.82rem;color:var(--muted);text-decoration:none;margin-bottom:0.5rem;transition:color 0.2s;cursor:pointer;}
.footer-col a:hover{color:var(--white);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.footer-note{font-family:'DM Mono',monospace;font-size:0.65rem;color:rgba(244,239,230,0.2);letter-spacing:0.08em;}
.footer-legal{display:flex;gap:1.5rem;}
.footer-legal a{font-family:'DM Mono',monospace;font-size:0.62rem;color:rgba(244,239,230,0.2);text-decoration:none;letter-spacing:0.06em;cursor:pointer;transition:color 0.2s;}
.footer-legal a:hover{color:var(--muted);}

/* TOAST */
.toast-container{position:fixed;bottom:2rem;right:2rem;z-index:999;display:flex;flex-direction:column;gap:0.8rem;}
.toast{background:#1e1e1e;border:1px solid var(--border);border-radius:2px;padding:0.9rem 1.3rem;font-size:0.82rem;display:flex;align-items:center;gap:0.8rem;min-width:260px;max-width:340px;transform:translateX(120%);transition:transform 0.35s ease;}
.toast.show{transform:translateX(0);}
.toast.success{border-left:3px solid var(--success);}
.toast.error{border-left:3px solid var(--red);}
.toast.info{border-left:3px solid var(--gold);}
.toast-icon{font-size:1rem;flex-shrink:0;}
.toast-msg{line-height:1.45;color:var(--white);}

/* MODALS */
.modal-overlay,.waitlist-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.75);z-index:500;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;overflow-y:auto;opacity:0;pointer-events:none;transition:opacity 0.25s;}
.modal-overlay.open,.waitlist-overlay.open{opacity:1;pointer-events:all;}
.modal{background:#141414;border:1px solid var(--border);border-radius:4px;width:100%;max-width:520px;margin:auto;}
.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1.4rem 1.8rem;border-bottom:1px solid var(--border);}
.modal-course-tag{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;margin-bottom:0.3rem;display:block;}
.modal-title{font-family:'Bebas Neue',sans-serif;font-size:1.6rem;letter-spacing:0.04em;}
.modal-close{background:none;border:none;color:var(--muted);font-size:1.2rem;cursor:pointer;padding:0.2rem 0.5rem;line-height:1;transition:color 0.2s;flex-shrink:0;}
.modal-close:hover{color:var(--white);}
.modal-body{padding:1.5rem 1.8rem;}
.modal-price-row{display:flex;align-items:baseline;gap:0.5rem;margin-bottom:1.2rem;}
.modal-price{font-family:'Bebas Neue',sans-serif;font-size:2rem;letter-spacing:0.05em;}
.modal-old-price{font-family:'DM Mono',monospace;font-size:0.8rem;color:rgba(244,239,230,0.25);text-decoration:line-through;}
.mpesa-info{background:rgba(255,153,0,0.06);border:1px solid rgba(255,153,0,0.2);border-radius:3px;padding:0.9rem 1rem;margin-bottom:1.2rem;font-size:0.82rem;color:rgba(244,239,230,0.7);line-height:1.5;}
.mpesa-info strong{color:#ff9900;}
.form-group{margin-bottom:1rem;}
.form-label{font-family:'DM Mono',monospace;font-size:0.62rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin-bottom:0.4rem;display:block;}
.form-input,.form-select{width:100%;background:#1a1a1a;border:1px solid var(--border);border-radius:2px;padding:0.8rem 1rem;color:var(--white);font-family:'DM Sans',sans-serif;font-size:0.9rem;outline:none;transition:border-color 0.2s;}
.form-input:focus,.form-select:focus{border-color:rgba(255,255,255,0.3);}
.form-input.error{border-color:var(--red);}
.form-error{font-size:0.72rem;color:var(--red);margin-top:0.3rem;display:none;}
.form-error.show{display:block;}
.form-select{appearance:none;cursor:pointer;}
.form-select option{background:#1a1a1a;}
.delivery-opt{display:flex;align-items:center;gap:0.8rem;padding:0.65rem 0.9rem;border:1px solid var(--border);border-radius:2px;cursor:pointer;font-size:0.85rem;color:var(--muted);transition:border-color 0.15s,color 0.15s;}
.delivery-opt:hover{border-color:rgba(255,255,255,0.2);color:var(--white);}
.delivery-opt input[type=radio]{accent-color:#ff9900;}
.submit-btn{width:100%;padding:0.95rem;background:#ff9900;color:#000;border:none;border-radius:2px;font-family:'DM Mono',monospace;font-size:0.72rem;letter-spacing:0.12em;text-transform:uppercase;cursor:pointer;font-weight:600;transition:background 0.2s;margin-top:0.5rem;}
.submit-btn:hover{background:#e08800;}
.submit-btn:disabled{background:rgba(255,255,255,0.08);color:var(--muted);cursor:not-allowed;}
.form-disclaimer{font-size:0.7rem;color:rgba(244,239,230,0.2);text-align:center;margin-top:0.8rem;line-height:1.5;}
.form-disclaimer a{color:rgba(244,239,230,0.3);text-decoration:underline;cursor:pointer;}
.modal-success{display:none;padding:2rem 1.8rem;text-align:center;}
.modal-success.show{display:block;}
.success-icon{font-size:2.5rem;display:block;margin-bottom:1rem;}
.success-title{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;letter-spacing:0.04em;margin-bottom:0.8rem;}
.success-msg{font-size:0.85rem;color:var(--muted);line-height:1.75;text-align:left;}

/* POCHI BOX (inside success modal) */
.pochi-box{background:#0f0f0f;border:1px solid rgba(255,153,0,0.3);border-radius:4px;padding:1.2rem;margin:0.8rem 0;text-align:center;}
.pochi-label{font-family:'DM Mono',monospace;font-size:0.58rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(244,239,230,0.35);margin-bottom:0.4rem;}
.pochi-number{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;letter-spacing:0.1em;color:#ff9900;line-height:1;}
.pochi-name{font-size:0.78rem;color:rgba(244,239,230,0.4);margin-top:0.25rem;}
.pochi-amount{font-family:'DM Mono',monospace;font-size:0.68rem;color:#ff9900;margin-top:0.5rem;letter-spacing:0.08em;}

/* LEGAL MODAL */
.legal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.8);z-index:600;display:flex;align-items:center;justify-content:center;padding:2rem;opacity:0;pointer-events:none;transition:opacity 0.25s;}
.legal-overlay.open{opacity:1;pointer-events:all;}
.legal-modal{background:#141414;border:1px solid var(--border);border-radius:4px;width:100%;max-width:660px;max-height:80vh;display:flex;flex-direction:column;}
.legal-header{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;border-bottom:1px solid var(--border);}
.legal-header h3{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;letter-spacing:0.05em;}
.legal-close{background:none;border:none;color:var(--muted);font-size:1.2rem;cursor:pointer;line-height:1;transition:color 0.2s;}
.legal-close:hover{color:var(--white);}
.legal-tabs{display:flex;border-bottom:1px solid var(--border);}
.legal-tab{flex:1;background:none;border:none;color:var(--muted);font-family:'DM Mono',monospace;font-size:0.6rem;letter-spacing:0.1em;text-transform:uppercase;padding:0.9rem 0.5rem;cursor:pointer;transition:all 0.2s;border-bottom:2px solid transparent;}
.legal-tab:hover{color:var(--white);}
.legal-tab.active{color:var(--white);border-bottom-color:var(--gold);}
.legal-body{padding:1.5rem;overflow-y:auto;font-size:0.83rem;line-height:1.75;color:var(--muted);flex:1;}
.legal-body h4{color:var(--white);font-family:'DM Mono',monospace;font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;margin:1.2rem 0 0.5rem;}
.legal-body p{margin-bottom:0.8rem;}
.legal-body ul{padding-left:1.2rem;margin-bottom:0.8rem;}
.legal-body li{margin-bottom:0.4rem;}
.legal-body strong{color:var(--white);}
.legal-effective{font-family:'DM Mono',monospace;font-size:0.62rem;color:rgba(244,239,230,0.3);margin-bottom:1rem;padding-bottom:0.8rem;border-bottom:1px solid var(--border);}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
.hero>*{animation:fadeUp 0.8s ease both;}
.hero>*:nth-child(1){animation-delay:0.05s;}
.hero>*:nth-child(2){animation-delay:0.15s;}
.hero>*:nth-child(3){animation-delay:0.3s;}
.hero>*:nth-child(4){animation-delay:0.45s;}
.hero>*:nth-child(5){animation-delay:0.6s;}

/* RESPONSIVE */
@media(max-width:900px){
  nav{padding:1rem 1.5rem;}
  .nav-right .nav-link{display:none;}
  .hamburger{display:flex;}
  section{padding:4rem 1.5rem;}
  .hero{padding:7rem 1.5rem 4rem;}
  .hero h1{font-size:4.5rem;}
  .courses-grid{grid-template-columns:1fr;}
  .timetable-grid{grid-template-columns:1fr 1fr;}
  .testimonials-grid{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:1fr;}
  .how-steps{grid-template-columns:1fr 1fr;}
  .about-grid{grid-template-columns:1fr;gap:2rem;}
  .mpesa-section{padding:2.5rem 1.5rem;flex-direction:column;}
  footer{padding:2rem 1.5rem;}
  .footer-main{flex-direction:column;gap:2rem;}
  .footer-links{gap:2rem;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .modal{margin:0;}
  .legal-modal{max-height:90vh;}
}
@media(max-width:600px){
  .timetable-grid{grid-template-columns:1fr;}
  .how-steps{grid-template-columns:1fr;}
  .hero-stats{gap:1.5rem;}
  .modal-overlay,.waitlist-overlay{padding:0.5rem;}
  .modal{border-radius:0;}
}