/* =========================================
   CSS Variables & Reset — Leaders Theme
   ========================================= */
:root {
    /* Colors — Teal + Gold palette (Leaders) */
    --color-primary: #003d4d;
    --color-primary-dark: #002a35;
    --color-primary-light: #005f6b;
    --color-gold: #c5a059;
    --color-gold-light: #d4b06a;
    --color-gold-dark: #a88640;
    --color-bg: #f8fafc;
    --color-bg-white: #ffffff;
    --color-bg-alt: #f1f5f9;
    --color-text: #1a202c;
    --color-text-muted: #475569;
    --color-text-light: #94a3b8;
    --color-border: #e2e8f0;
    /* Typography */
    --font-heading: 'Cairo', sans-serif;
    --font-body: 'Cairo', sans-serif;
    /* Spacing */
    --container-max: 1200px;
    --section-padding: 80px 0;
    /* Border radius */
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    /* Shadows */
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.08), 0 2px 4px rgba(0,0,0,0.04);
    --shadow-lg: 0 12px 40px rgba(0,0,0,0.1), 0 4px 12px rgba(0,0,0,0.05);
    --shadow-gold: 0 4px 20px rgba(197,160,89,0.3);
    /* Transitions */
    --transition: 250ms ease;
}

/* Reset */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }

body {
    font-family: var(--font-body);
    font-weight: 400;
    font-size: 16px;
    line-height: 1.7;
    color: var(--color-text);
    background-color: var(--color-bg);
    direction: rtl;
    text-align: right;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

img, svg { display:block; max-width:100%; }
.icon { display:inline-block; vertical-align:middle; flex-shrink:0; }
a { text-decoration:none; color:inherit; }
ul, ol { list-style:none; }
button, input, select, textarea { font-family:inherit; font-size:inherit; line-height:inherit; border:none; outline:none; background:none; }
button { cursor:pointer; }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration:0.01ms !important; transition-duration:0.01ms !important; scroll-behavior:auto !important; }
}

/* =========================================
   Container & Typography Helpers
   ========================================= */
.container { width:100%; max-width:var(--container-max); margin:0 auto; padding:0 24px; }
.text-gold { color:var(--color-gold); }
.text-link { color:var(--color-primary); text-decoration:underline; text-underline-offset:2px; transition:color var(--transition); }
.text-link:hover { color:var(--color-gold); }
.d-none { display:none !important; }

/* Section helpers */
.section { padding:var(--section-padding); }

.section-badge {
    display:inline-block;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: var(--color-gold);
    background: rgba(197,160,89,0.12);
    border: 1px solid rgba(197,160,89,0.25);
    padding: 6px 20px;
    border-radius: 50px;
    margin-bottom: 16px;
}

.section-title {
    font-family: var(--font-heading);
    font-size: clamp(1.6rem, 4vw, 2.2rem);
    font-weight: 800;
    color: var(--color-primary);
    margin-bottom: 12px;
    line-height: 1.4;
}

.section-text {
    font-size: 0.95rem;
    color: var(--color-text-muted);
    max-width: 620px;
    line-height: 1.8;
}

.section-text--center { margin-left:auto; margin-right:auto; }
.section-header { text-align:center; margin-bottom:50px; }

/* =========================================
   Buttons
   ========================================= */
.btn {
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    font-family:var(--font-body); font-weight:700; font-size:0.95rem;
    padding:14px 32px; border-radius:var(--radius-sm);
    transition:all var(--transition); white-space:nowrap; cursor:pointer;
}
.btn i { width:18px; height:18px; }

.btn--primary {
    background:var(--color-gold); color:#fff; box-shadow:var(--shadow-gold);
}
.btn--primary:hover {
    background:var(--color-gold-dark); transform:translateY(-2px);
    box-shadow:0 6px 24px rgba(197,160,89,0.4);
}

.btn--outline { border:2px solid var(--color-primary); color:var(--color-primary); background:transparent; }
.btn--outline:hover { background:var(--color-primary); color:#fff; }

.btn--ghost { border:1px solid rgba(255,255,255,0.3); color:#fff; background:transparent; }
.btn--ghost:hover { background:rgba(255,255,255,0.1); }

.btn--full { width:100%; }
.btn--large { padding:16px 36px; font-size:1rem; }

/* =========================================
   Header / Navigation — Leaders Style
   ========================================= */
.header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: var(--color-bg-white);
    border-bottom: 1px solid var(--color-border);
    box-shadow: var(--shadow-sm);
}

.header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: var(--container-max);
    margin: 0 auto;
    padding: 0 24px;
    height: 72px;
}

/* Logo */
.logo { display:inline-flex; align-items:center; }
.logo__placeholder { display:flex; align-items:center; gap:10px; }
.logo__icon { width:32px; height:32px; color:var(--color-gold); }
.logo__text { font-family:var(--font-heading); font-size:1.3rem; font-weight:800; color:var(--color-primary); }

/* Nav */
.nav__list { display:flex; align-items:center; gap:4px; }

.nav__link {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-primary);
    padding: 8px 16px;
    border-radius: var(--radius-sm);
    transition: all var(--transition);
}
.nav__link:hover, .nav__link.active {
    color: var(--color-gold);
    background: rgba(0,61,77,0.04);
}

/* Nav CTA Button */
.nav__item--cta { margin-right:12px; }

.nav__link--cta {
    display:inline-flex !important; align-items:center; gap:6px;
    background:var(--color-gold) !important;
    color:#fff !important;
    padding:10px 24px !important;
    border-radius:var(--radius-sm) !important;
    font-weight:700; font-size:0.88rem;
    transition:all 0.3s ease; white-space:nowrap;
    box-shadow:var(--shadow-gold);
}
.nav__link--cta:hover {
    background:var(--color-gold-dark) !important;
    transform:translateY(-2px);
    box-shadow:0 6px 20px rgba(197,160,89,0.4);
}
.nav__cta-icon { width:16px; height:16px; }

/* =========================================
   Hero Section — Leaders Teal
   ========================================= */
.hero {
    padding-top: 0;
    padding-bottom: 0;
    position: relative;
    overflow: hidden;
    background: var(--color-primary);
}

.hero__inner {
    display:grid; grid-template-columns:1fr 1fr; gap:60px;
    align-items:center; position:relative; z-index:2;
}

.hero__badge {
    display:inline-block; font-size:0.8rem; font-weight:700;
    color:var(--color-gold); background:rgba(197,160,89,0.15);
    border:1px solid rgba(197,160,89,0.3);
    padding:6px 20px; border-radius:50px; margin-bottom:20px;
}

.hero__title {
    font-family:var(--font-heading); font-weight:800;
    color:var(--color-primary); line-height:1.3; margin-bottom:20px;
}

.hero__subtitle {
    font-size:1rem; color:var(--color-text-muted);
    line-height:1.8; margin-bottom:36px; max-width:520px;
}

.hero__cta { display:flex; align-items:center; gap:16px; margin-bottom:48px; }

.hero__stats {
    display:flex; gap:40px; padding-top:32px;
    border-top:1px solid var(--color-border);
}

.stat { display:flex; flex-direction:column; }
.stat__number { font-family:var(--font-heading); font-size:1.8rem; font-weight:800; color:var(--color-primary); line-height:1.2; }
.stat__label { font-size:0.85rem; color:var(--color-text-light); margin-top:4px; }

.hero__image-placeholder { display:flex; align-items:center; justify-content:center; }
.hero__bg-shape {
    position:absolute; top:-120px; left:-200px; width:600px; height:600px;
    border-radius:50%; background:radial-gradient(circle, rgba(197,160,89,0.06) 0%, transparent 70%);
    pointer-events:none; z-index:1;
}

/* =========================================
   Placeholder Boxes
   ========================================= */
.placeholder-box {
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px;
    background:var(--color-bg-alt); border:2px dashed var(--color-border); border-radius:var(--radius-lg);
    color:var(--color-text-light); font-size:0.9rem; font-weight:500;
    width:100%; aspect-ratio:4/3; transition:border-color var(--transition);
}
.placeholder-box:hover { border-color:var(--color-gold); }
.placeholder-box--large { aspect-ratio:3/4; min-height:400px; }
.placeholder-box--small { aspect-ratio:auto; min-height:120px; }
.placeholder-icon { width:40px; height:40px; opacity:0.5; }

/* =========================================
   About Section
   ========================================= */
.about__inner { display:grid; grid-template-columns:1fr 1.2fr; gap:60px; align-items:center; }

.about__features { display:flex; flex-direction:column; gap:20px; margin-top:32px; }

.feature-item { display:flex; align-items:flex-start; gap:16px; }

.feature-item__icon {
    flex-shrink:0; width:48px; height:48px;
    display:flex; align-items:center; justify-content:center;
    border-radius:50%; background:rgba(0,61,77,0.08); color:var(--color-primary);
}
.feature-item__icon i { width:22px; height:22px; }

.feature-item h4 { font-family:var(--font-heading); font-size:1rem; font-weight:700; color:var(--color-primary); margin-bottom:4px; }
.feature-item p { font-size:0.9rem; color:var(--color-text-muted); }

/* =========================================
   Goals Section
   ========================================= */
.goals { background:var(--color-bg-white); }

.goals__grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:24px; }

.goal-card {
    position:relative; background:var(--color-bg-white);
    border:1px solid var(--color-border); border-radius:var(--radius-lg);
    padding:32px 24px 24px; transition:all var(--transition); cursor:default;
}
.goal-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:var(--color-gold); }

.goal-card__number {
    position:absolute; top:16px; left:20px;
    font-family:var(--font-heading); font-size:2rem; font-weight:800;
    color:rgba(0,61,77,0.06); line-height:1;
}
.goal-card__icon { width:40px; height:40px; color:var(--color-gold); margin-bottom:16px; }
.goal-card__title { font-family:var(--font-heading); font-size:1rem; font-weight:700; color:var(--color-primary); margin-bottom:8px; }
.goal-card__text { font-size:0.85rem; color:var(--color-text-muted); line-height:1.7; }

/* =========================================
   Curriculum Table
   ========================================= */
.curriculum { background:var(--color-bg); }

.curriculum__table-wrapper {
    overflow-x:auto; border-radius:var(--radius-lg);
    border:1px solid var(--color-border); background:var(--color-bg-white);
}

.curriculum__table { width:100%; border-collapse:collapse; min-width:900px; }
.curriculum__table thead { background:var(--color-primary); color:#fff; }
.curriculum__table thead th {
    padding:16px 20px; font-family:var(--font-heading); font-size:0.9rem;
    font-weight:700; text-align:right; white-space:nowrap;
}
.curriculum__table tbody td {
    padding:16px 20px; font-size:0.88rem; color:var(--color-text);
    border-bottom:1px solid var(--color-border); vertical-align:middle; line-height:1.6;
}
.curriculum__table tbody tr:last-child td { border-bottom:none; }
.curriculum__table tbody tr:hover { background:rgba(0,61,77,0.02); }

.row-highlight { background:rgba(197,160,89,0.06) !important; }
.row-highlight:hover { background:rgba(197,160,89,0.1) !important; }
.cell-month { font-family:var(--font-heading); font-weight:700; color:var(--color-primary); white-space:nowrap; }
.cell-month--large { vertical-align:middle; }
.cell-course strong { color:var(--color-primary); }

/* =========================================
   Outcomes Section
   ========================================= */
.outcomes { background:var(--color-bg-white); }
.outcomes__grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; max-width:900px; margin:0 auto; }

.outcome-item {
    display:flex; align-items:flex-start; gap:14px;
    padding:20px 24px; background:var(--color-bg-white);
    border:1px solid var(--color-border); border-radius:var(--radius-md);
    transition:all var(--transition);
}
.outcome-item:hover { border-color:var(--color-gold); box-shadow:var(--shadow-sm); }
.outcome-item i { width:24px; height:24px; flex-shrink:0; color:var(--color-gold); margin-top:2px; }
.outcome-item p { font-size:0.92rem; color:var(--color-text-muted); line-height:1.7; }

/* =========================================
   Evaluation Section
   ========================================= */
.evaluation { background:var(--color-bg); padding:70px 0; }

.evaluation__grid { display:flex; justify-content:center; flex-wrap:wrap; gap:20px; }

.eval-card {
    display:flex; align-items:center; gap:12px;
    padding:16px 28px; background:var(--color-bg-white);
    border:1px solid var(--color-border); border-radius:50px;
    font-size:0.92rem; font-weight:600; color:var(--color-text);
    transition:all var(--transition);
}
.eval-card i { width:22px; height:22px; color:var(--color-gold); }
.eval-card:hover { border-color:var(--color-gold); box-shadow:var(--shadow-md); transform:translateY(-2px); }

/* =========================================
   Eligibility Section
   ========================================= */
.eligibility { background:var(--color-bg-white); }
.eligibility__grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; max-width:900px; margin:0 auto; }

.eligibility-card {
    background:#fff !important; border:1px solid var(--color-border);
    border-radius:var(--radius-lg); padding:16px 20px;
    text-align:right; transition:all var(--transition); cursor:pointer;
}
.eligibility-card:hover { border-color:var(--color-gold); box-shadow:var(--shadow-md); transform:translateY(-3px); }

.eligibility-card__icon {
    display:inline-flex; align-items:center; justify-content:center;
    width:48px; height:48px; border-radius:50%;
    background:rgba(0,61,77,0.08); color:var(--color-primary); margin-bottom:16px;
}
.eligibility-card__icon i { width:22px; height:22px; }

.eligibility-card__title { font-family:var(--font-heading); font-size:1rem; font-weight:700; color:var(--color-primary); margin-bottom:12px; }

.eligibility-card__list { display:flex; flex-direction:column; gap:8px; animation:fadeIn 0.3s ease; }
.eligibility-card__list li {
    font-size:0.85rem; color:var(--color-text-muted); line-height:1.6;
    position:relative; padding-right:16px;
}
.eligibility-card__list li::before {
    content:''; position:absolute; right:0; top:8px;
    width:6px; height:6px; border-radius:50%; background:var(--color-gold);
}

/* =========================================
   Registration CTA Box
   ========================================= */
.register { background:var(--color-bg); padding:80px 0; }

.register__cta-box {
    background:var(--color-primary); border-radius:var(--radius-xl);
    padding:60px 40px; text-align:center; position:relative; overflow:hidden;
}
.register__cta-box::before {
    content:''; position:absolute; inset:0; opacity:0.08;
    background:radial-gradient(var(--color-gold) 1px, transparent 1px);
    background-size:16px 16px; pointer-events:none;
}

.register__cta-content { position:relative; z-index:2; }
.register__cta-box .section-badge { background:rgba(197,160,89,0.2); color:var(--color-gold); border-color:rgba(197,160,89,0.3); }
.register__cta-box .section-title { color:#fff; }
.register__cta-box .section-text { color:rgba(255,255,255,0.7); }

.register__cta-benefits { display:flex; justify-content:center; gap:32px; margin:32px 0; flex-wrap:wrap; }
.cta-benefit { display:flex; align-items:center; gap:8px; font-size:0.9rem; color:rgba(255,255,255,0.85); }
.cta-benefit i { width:20px; height:20px; color:var(--color-gold); }
.register__cta-box .btn--primary { margin-top:8px; }

/* =========================================
   Sponsors Section
   ========================================= */
.sponsors__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }

.sponsor-card {
    background:var(--color-bg-white); border:1px solid var(--color-border);
    border-radius:var(--radius-lg); padding:28px;
    display:flex; align-items:center; justify-content:center;
    transition:all var(--transition);
}
.sponsor-card:hover { border-color:var(--color-gold); box-shadow:var(--shadow-md); }
.sponsor-card__logo { max-width:140px; max-height:80px; object-fit:contain; }

/* =========================================
   Registration Form
   ========================================= */
.register__inner { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.register__benefits { display:flex; flex-direction:column; gap:16px; margin-top:28px; }
.register__benefits li { display:flex; align-items:center; gap:12px; font-size:1rem; color:var(--color-text-muted); }
.register__benefits li i { width:22px; height:22px; flex-shrink:0; color:var(--color-gold); }

.register__form-wrapper {
    background:var(--color-bg); border:1px solid var(--color-border);
    border-radius:var(--radius-lg); padding:40px;
}
.register__form-title { font-family:var(--font-heading); font-size:1.2rem; font-weight:700; color:var(--color-primary); margin-bottom:28px; }

.form-group { margin-bottom:20px; }
.form-group label { display:block; font-size:0.9rem; font-weight:600; color:var(--color-text); margin-bottom:8px; }
.required { color:#ef4444; }

.form-group input, .form-group select {
    width:100%; padding:12px 16px; border:1.5px solid var(--color-border);
    border-radius:var(--radius-sm); background:var(--color-bg-white);
    color:var(--color-text); transition:border-color var(--transition), box-shadow var(--transition);
}
.form-group input::placeholder { color:var(--color-text-light); }
.form-group input:focus, .form-group select:focus {
    border-color:var(--color-primary); box-shadow:0 0 0 3px rgba(0,61,77,0.1);
}

.form-group select {
    appearance:none; -webkit-appearance:none; cursor:pointer;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat; background-position:left 12px center; background-size:20px;
}

.form-group--checkbox { display:flex; align-items:center; gap:10px; }
.form-group--checkbox input[type='checkbox'] { width:18px; height:18px; accent-color:var(--color-gold); cursor:pointer; flex-shrink:0; }
.form-group--checkbox label { margin-bottom:0; font-size:0.85rem; color:var(--color-text-muted); cursor:pointer; }

/* =========================================
   Contact Section
   ========================================= */
.contact__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-bottom:48px; }

.contact-card {
    text-align:center; padding:32px 20px; background:var(--color-bg-white);
    border:1px solid var(--color-border); border-radius:var(--radius-lg);
    transition:all var(--transition); cursor:pointer;
}
.contact-card:hover { border-color:var(--color-gold); box-shadow:var(--shadow-lg); transform:translateY(-5px); }

.contact-card__icon {
    display:inline-flex; align-items:center; justify-content:center;
    width:52px; height:52px; border-radius:50%;
    background:rgba(0,61,77,0.08); color:var(--color-primary); margin-bottom:16px;
}
.contact-card__icon i { width:24px; height:24px; }
.contact-card__title { font-family:var(--font-heading); font-size:1rem; font-weight:700; color:var(--color-primary); margin-bottom:8px; }
.contact-card__text { font-size:0.88rem; color:var(--color-text-muted); line-height:1.7; }

.contact__social { display:flex; justify-content:center; gap:16px; }
.social-link {
    display:inline-flex; align-items:center; justify-content:center;
    width:48px; height:48px; border-radius:50%;
    border:1.5px solid var(--color-border); color:var(--color-text-muted);
    transition:all var(--transition);
}
.social-link i { width:22px; height:22px; }
.social-link:hover { border-color:var(--color-gold); background:var(--color-gold); color:#fff; transform:translateY(-3px); box-shadow:var(--shadow-gold); }

/* =========================================
   Footer — Leaders Teal
   ========================================= */
.footer {
    background:var(--color-primary); color:rgba(255,255,255,0.8); padding:40px 0 0;
    border-top:1px solid rgba(255,255,255,0.1);
}

.footer__grid {
    display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:40px;
    padding-bottom:30px; border-bottom:1px solid rgba(255,255,255,0.1);
}

.footer__brand p { margin-top:16px; font-size:0.88rem; color:rgba(255,255,255,0.6); line-height:1.7; }
.footer__brand .logo__text { color:#fff; }

.footer__links h4 { font-family:var(--font-heading); font-size:1rem; font-weight:700; margin-bottom:20px; color:var(--color-gold); }
.footer__links ul { display:flex; flex-direction:column; gap:12px; }
.footer__links li a { font-size:0.88rem; color:rgba(255,255,255,0.6); transition:color var(--transition); }
.footer__links li a:hover { color:#fff; }

.footer__bottom { text-align:center; padding:16px 0; font-size:0.82rem; color:rgba(255,255,255,0.4); }

/* =========================================
   Back to Top
   ========================================= */
.back-to-top {
    position:fixed; bottom:32px; left:32px; width:48px; height:48px;
    display:flex; align-items:center; justify-content:center;
    border-radius:50%; background:var(--color-gold); color:#fff;
    box-shadow:var(--shadow-gold); opacity:0; visibility:hidden;
    transform:translateY(12px); transition:all var(--transition); z-index:999;
}
.back-to-top i { width:24px; height:24px; }
.back-to-top.visible { opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top:hover { background:var(--color-gold-dark); transform:translateY(-3px); }

/* =========================================
   Alerts
   ========================================= */
.form-alert { padding:12px 18px; border-radius:var(--radius-sm); font-size:0.9rem; font-weight:500; margin-bottom:20px; animation:fadeIn 0.3s ease; }
.form-alert--error { background:#fef2f2; color:#991b1b; border:1px solid #fecaca; }
.form-alert--success { background:#f0fdf4; color:#166534; border:1px solid #bbf7d0; }

@keyframes fadeIn { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:translateY(0); } }

/* =========================================
   Responsive — Tablet
   ========================================= */
@media (max-width:1024px) {
    .hero__inner { grid-template-columns:1fr; gap:40px; text-align:center; }
    .hero__subtitle { margin-left:auto; margin-right:auto; }
    .hero__cta { justify-content:center; }
    .hero__stats { justify-content:center; }
    .hero__visual { max-width:480px; margin:0 auto; }
    .about__inner { grid-template-columns:1fr; gap:40px; }
    .about__image { max-width:400px; margin:0 auto; }
    .about__content { text-align:center; }
    .about__content .section-text { margin-left:auto; margin-right:auto; }
    .register__inner { grid-template-columns:1fr; gap:40px; }
    .register__info { text-align:center; }
    .register__info .section-text { margin-left:auto; margin-right:auto; }
    .register__benefits { align-items:center; }
    .goals__grid { grid-template-columns:repeat(2,1fr); }
    .outcomes__grid { grid-template-columns:1fr; }
    .eligibility__grid { grid-template-columns:repeat(2,1fr); }
    .register__cta-benefits { flex-direction:column; align-items:center; gap:16px; }
    .contact__grid { grid-template-columns:repeat(2,1fr); }
    .footer__grid { grid-template-columns:repeat(2,1fr); }
}

/* =========================================
   Responsive — Mobile
   ========================================= */
@media (max-width:768px) {
    :root { --section-padding:60px 0; }

    .header__inner { padding:0 16px; height:64px; }

    .nav {
        position:fixed; top:64px; right:16px; left:16px;
        background:var(--color-bg-white); border-radius:var(--radius-lg);
        box-shadow:var(--shadow-lg); border:1px solid var(--color-border);
        transform:translateY(-120%); opacity:0;
        transition:all 300ms ease; z-index:999;
    }
    .nav.open { transform:translateY(0); opacity:1; }

    .nav__list { flex-direction:column; padding:20px 24px; gap:4px; }
    .nav__link { display:block; padding:12px 16px; width:100%; text-align:right; }
    .nav__link--cta { text-align:center !important; margin-top:8px; }

    .hero { padding-top:0; padding-bottom:0; }
    .hero__stats { flex-direction:column; gap:16px; align-items:center; }
    .hero__cta { flex-direction:column; gap:12px; }
    .hero__cta .btn { width:100%; }

    .goals__grid { grid-template-columns:1fr; }
    .eligibility__grid { grid-template-columns:1fr; }
    .register__cta-box { padding:40px 24px; }
    .sponsors__grid { grid-template-columns:repeat(2,1fr); }
    .contact__grid { grid-template-columns:1fr; }
    .footer__grid { grid-template-columns:1fr; text-align:center; }
    .register__form-wrapper { padding:28px 20px; }
}

@media (max-width:375px) {
    .container { padding:0 16px; }
    .hero__title { font-size:1.7rem; }
    .section-title { font-size:1.4rem; }
    .sponsors__grid { grid-template-columns:1fr; }
}
