
body{margin:0;font-family:'Space Grotesk',system-ui,sans-serif;background:#F4F4EF;color:#141413}
a{color:#141413}a:hover{color:#6A4CFF}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px;box-sizing:border-box}
.mono{font-family:'Space Mono',monospace}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none;border:2px solid #141413;box-sizing:border-box;cursor:pointer;font-family:'Space Grotesk',sans-serif}
.btn-dark{background:#141413;color:#D8F26B}
.btn-dark:hover{background:#6A4CFF;color:#fff;border-color:#6A4CFF}
.btn-ghost{background:transparent;color:#141413}
.btn-ghost:hover{background:#141413;color:#D8F26B}
.nav a.link{text-decoration:none;font-weight:700;font-size:15px}
.card{background:#fff;border:2px solid #141413;border-radius:24px;padding:28px;box-sizing:border-box;box-shadow:8px 8px 0 #141413}
.month{background:#fff;border:2px solid #141413;border-radius:18px;padding:18px;box-sizing:border-box;display:flex;flex-direction:column;gap:6px}
.month:hover{background:#D8F26B}
.tag{display:inline-block;border:2px solid #141413;border-radius:999px;padding:4px 12px;font-family:'Space Mono',monospace;font-size:12px;font-weight:700;letter-spacing:1px}
input,select{width:100%;min-height:52px;border:2px solid #141413;border-radius:14px;padding:0 16px;font-size:16px;font-family:'Space Grotesk',sans-serif;background:#fff;box-sizing:border-box;color:#141413}
label{font-family:'Space Mono',monospace;font-size:12px;font-weight:700;letter-spacing:1px;display:block;margin-bottom:8px}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.marquee{display:flex;width:max-content;animation:slide 18s linear infinite;gap:0}
.marquee span{padding:0 28px;white-space:nowrap}
@media (max-width:720px){.hero-h{font-size:64px !important;letter-spacing:-3px !important}.nav-links{display:none !important}}

/* Styles retained from the supplied design. */
.marquee-band{background: #141413; color: #D8F26B; overflow: hidden; padding: 14px 0; border-bottom: 2px solid #141413}
.marquee-type{font-size: 16px; font-weight: 700; letter-spacing: 3px}
.section-stack{width: 100%; padding-top: 96px; padding-bottom: 96px; display: flex; flex-direction: column; gap: 40px}
.section-heading{display: flex; flex-direction: column; gap: 12px}
.section-title{margin: 0; font-size: 56px; line-height: 1; letter-spacing: -2px; font-weight: 700}
.card-stack{display: flex; flex-direction: column; gap: 14px}
.card-time{font-size: 13px; font-weight: 700; color: #6A4CFF}
.card-title{margin: 0; font-size: 26px; line-height: 1.1}
.card-description{margin: 0; font-size: 16px; line-height: 1.5; color: #3A3A38}
.card-lime{display: flex; flex-direction: column; gap: 14px; background: #D8F26B}
.card-purple{display: flex; flex-direction: column; gap: 14px; background: #6A4CFF; color: #fff}
.card-time-lime{font-size: 13px; font-weight: 700; color: #D8F26B}
.card-description-light{margin: 0; font-size: 16px; line-height: 1.5; color: #E9E6FF}
.section-dark{background: #141413; color: #fff; border-top: 2px solid #141413; border-bottom: 2px solid #141413}
.section-content{padding-top: 96px; padding-bottom: 96px; display: flex; flex-direction: column; gap: 40px}
.session-heading{display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap}
.tag-lime{border-color: #D8F26B; color: #D8F26B}
.session-title{margin: 0; font-size: 72px; line-height: 0.95; letter-spacing: -3px; font-weight: 700}
.session-date{display: flex; flex-direction: column; gap: 6px; text-align: right}
.session-meta{font-size: 14px; letter-spacing: 2px; color: #B9B9B4}
.session-day{font-size: 44px; font-weight: 700; line-height: 1; letter-spacing: -2px}
.talk-card{border: 2px solid #3A3A38; border-radius: 20px; padding: 24px; display: flex; flex-direction: column; gap: 10px}
.talk-label{font-size: 12px; letter-spacing: 2px; color: #D8F26B}
.talk-title{margin: 0; font-size: 22px; line-height: 1.2}
.speaker-description{margin: 0; font-size: 15px; color: #B9B9B4}
.session-footer{display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; border-top: 2px solid #3A3A38; padding-top: 28px}
.partner-label{display: flex; align-items: center; gap: 16px}
.partner-caption{font-size: 12px; letter-spacing: 2px; color: #B9B9B4}
.partner-pending{border: 2px dashed #6A4CFF; border-radius: 12px; padding: 10px 18px; font-weight: 700; color: #fff}
.button-lime{background: #D8F26B; color: #141413; border-color: #D8F26B}
.programme-intro{margin: 0; font-size: 18px; color: #3A3A38; max-width: 640px}
.month-date{font-size: 12px; letter-spacing: 2px; color: #6A4CFF}
.month-title{font-size: 20px}
.month-description{font-size: 14px; color: #3A3A38}
.section-purple{background: #6A4CFF; color: #fff; border-top: 2px solid #141413; border-bottom: 2px solid #141413}
.game-layout{padding-top: 96px; padding-bottom: 96px; display: flex; gap: 48px; flex-wrap: wrap; align-items: center}
.game-copy{flex: 1 1 420px; display: flex; flex-direction: column; gap: 20px}
.game-title{margin: 0; font-size: 64px; line-height: 0.95; letter-spacing: -3px; font-weight: 700}
.game-description{margin: 0; font-size: 18px; line-height: 1.5; color: #E9E6FF; max-width: 520px}
.prize-list{flex: 1 1 360px; display: flex; flex-direction: column; gap: 14px}
.prize-row{background: #141413; border-radius: 18px; padding: 20px 24px; display: flex; justify-content: space-between; align-items: center}
.prize-title{font-weight: 700; font-size: 20px}
.prize-description{color: #D8F26B; font-weight: 500}
.prize-pin{background: #D8F26B; color: #141413; border-radius: 18px; padding: 20px 24px; display: flex; justify-content: space-between; align-items: center}
.text-bold{font-weight: 700}
.sponsor-intro{margin: 0; font-size: 18px; color: #3A3A38; max-width: 680px}
.sponsor-card-title{margin: 0; font-size: 28px}
.benefit-list{margin: 0; padding-left: 20px; font-size: 16px; line-height: 1.7; color: #3A3A38}
.section-lime{background: #D8F26B; border-top: 2px solid #141413; border-bottom: 2px solid #141413}
.join-layout{padding-top: 96px; padding-bottom: 96px; display: flex; gap: 48px; flex-wrap: wrap}
.join-copy{flex: 1 1 380px; display: flex; flex-direction: column; gap: 20px}
.join-title{margin: 0; font-size: 72px; line-height: 0.92; letter-spacing: -3px; font-weight: 700}
.join-description{margin: 0; font-size: 18px; line-height: 1.5; max-width: 480px}
.arabic{font-family: 'Cairo', sans-serif; font-weight: 700; font-size: 22px}
