.event-register-page{
    max-width:960px;
    margin:0 auto;
}

.event-hero{
    margin-bottom:24px;
    padding:32px;
    border-radius:24px;
    background:linear-gradient(135deg,var(--primary),var(--primary-dark));
    color:#fff;
}

.event-label{
    font-size:.75rem;
    font-weight:900;
    letter-spacing:.1em;
    color:#dbe8fa;
}

.event-hero h1{
    margin:10px 0 8px;
    font-size:clamp(2rem,5vw,3.2rem);
    font-weight:950;
    letter-spacing:-.04em;
}

.event-hero > p{
    max-width:720px;
    color:#dbe8fa;
    line-height:1.7;
}

.event-info-grid{
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
}

.event-info-grid div{
    padding:14px;
    border-radius:14px;
    background:rgba(255,255,255,.1);
}

.event-info-grid span{
    display:block;
    color:#dbe8fa;
    font-size:.72rem;
}

.event-info-grid strong{
    display:block;
    margin-top:4px;
    font-size:.9rem;
}

.register-card{
    padding:32px;
    border-radius:24px;
    background:var(--surface);
    border:1px solid var(--border);
    box-shadow:0 18px 50px rgba(31,76,143,.06);
}

.section-heading{
    display:flex;
    gap:13px;
    align-items:center;
    margin-bottom:18px;
}

.section-heading > span{
    width:38px;
    height:38px;
    border-radius:12px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    background:var(--primary);
    color:#fff;
    font-weight:900;
}

.section-heading h2{
    margin:0;
    font-size:1.08rem;
    font-weight:900;
}

.section-heading p{
    margin:3px 0 0;
    color:var(--muted);
    font-size:.84rem;
}

.section-gap{margin-top:32px}

.submit-registration{
    width:100%;
    min-height:55px;
    margin-top:26px;
    background:var(--primary);
    color:#fff;
}

.submit-registration:hover{
    background:var(--primary-dark);
    color:#fff;
}

.registration-closed{
    padding:38px;
    border-radius:22px;
    text-align:center;
    background:#fff8e7;
    border:1px solid #f0dfb5;
}

.registration-closed h2{font-weight:900}
.registration-closed p{margin:8px 0 0;color:#7b662f}

@media(max-width:760px){
    .event-hero,
    .register-card{padding:22px 18px}

    .event-info-grid{grid-template-columns:repeat(2,1fr)}
}

.registration-summary{
    margin-top:16px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:9px;
}
.registration-summary div{padding:12px;border-radius:13px;background:rgba(255,255,255,.1)}
.registration-summary span{display:block;color:#dbe8fa;font-size:.68rem}
.registration-summary strong{display:block;margin-top:3px;font-size:.82rem}
.state-open-text{color:#bff0d6}
.quota-banner{margin-bottom:22px;padding:13px 16px;border-radius:14px;background:var(--gold-soft);color:#74591c}
.closed-lookup-btn{margin-top:16px;background:var(--primary);color:#fff}
.closed-lookup-btn:hover{background:var(--primary-dark);color:#fff}
@media(max-width:760px){.registration-summary{grid-template-columns:repeat(2,1fr)}}
.registration-countdown{margin-top:18px;padding:13px 15px;border-radius:14px;background:rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:12px;align-items:center}
.registration-countdown strong{font-size:.78rem}.registration-countdown span{font-size:.82rem;font-weight:800;color:#eef5ff}
@media(max-width:600px){.registration-countdown{align-items:flex-start;flex-direction:column}}
.event-promo-banner{margin-bottom:18px;overflow:hidden;border-radius:24px;background:#eef5ff;box-shadow:0 18px 48px rgba(31,76,143,.08)}
.event-promo-banner img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.participant-policy{width:100%;min-height:48px;padding:11px 13px;border:1px solid #dce7f4;border-radius:12px;background:var(--primary-soft)}
.participant-policy strong{display:block;color:var(--primary);font-size:.82rem}
.participant-policy span{display:block;margin-top:3px;color:var(--muted);font-size:.74rem;line-height:1.4}
@media(max-width:760px){.event-promo-banner{border-radius:18px}}
