.live-stats {
    padding-top: clamp(52px, 6vw, 86px);
    padding-bottom: clamp(52px, 6vw, 86px);
    background: var(--navy);
    color: var(--white);
}

.live-stats .eyebrow { color: var(--yellow); }
.live-stats h2 { color: var(--white); }

.live-stats-heading {
    display: block;
}

.live-stats-heading h2 { margin-bottom: 0; }

.statistics-panel {
    margin-top: 20px;
    padding: 16px;
    background: rgba(255, 255, 255, .07);
}

.statistics-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 16px;
}

.participant-total {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 11px 16px;
    background: var(--blue);
}

.participant-total span {
    display: block;
    max-width: 105px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.participant-total strong {
    display: block;
    margin: 0;
    font: 800 clamp(34px, 4vw, 48px)/.95 Rubik, Arial, sans-serif;
}

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

.countdown > div {
    min-height: 92px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 13px 16px;
    color: var(--navy);
}

.countdown > div:nth-child(1) { background: var(--orange); color: var(--white); }
.countdown > div:nth-child(2) { background: var(--purple); }
.countdown > div:nth-child(3) { background: var(--green); color: var(--white); }
.countdown > div:nth-child(4) { background: var(--yellow); }
.countdown strong { font: 800 clamp(38px, 4vw, 54px)/1 Rubik, Arial, sans-serif; }
.countdown span { font-size: 11px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; }

.live-track-heading {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin: 0;
}

.live-track-heading h3 { margin: 0; color: var(--white); font-size: clamp(22px, 2.4vw, 30px); }
.live-track-heading p { margin: 0; color: var(--pale-blue); font-size: 12px; }

.live-track-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
}

.live-track-grid article {
    min-height: 120px;
    display: flex;
    flex-direction: column;
    padding: 12px 14px;
    background: var(--white);
    color: var(--navy);
    border-top: 5px solid var(--orange);
}

.live-track-grid article:nth-child(5n + 2) { border-color: var(--green); }
.live-track-grid article:nth-child(5n + 3) { border-color: var(--purple); }
.live-track-grid article:nth-child(5n + 4) { border-color: var(--yellow); }
.live-track-grid article:nth-child(5n + 5) { border-color: var(--pink); }
.live-track-grid article:nth-child(6) { border-color: var(--purple); }
.live-track-grid article:nth-child(7) { border-color: var(--pink); }
.live-track-grid article:nth-child(8) { border-color: var(--green); }
.live-track-grid article:nth-child(9) { border-color: var(--orange); }
.live-track-grid article:nth-child(10) { border-color: var(--yellow); }
.live-track-grid h3 { min-height: 0; margin: 0; font-size: 15px; line-height: 1.3; }
.live-track-grid strong { margin-top: auto; padding-top: 12px; font: 800 30px/1 Rubik, Arial, sans-serif; }
.live-track-grid small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.live-status { min-height: 18px; margin: 12px 0 0; color: var(--yellow); font-size: 12px; font-weight: 700; }
.live-status.error { color: var(--pink); }
.event-started .countdown { opacity: .75; }

.track-grid {
    grid-template-columns: repeat(5, 1fr);
}

.track-grid article {
    min-height: 145px;
    display: flex;
    flex-direction: column;
    padding: 18px;
}

.track-grid h3 { margin: 0; }
.track-grid p { margin-top: auto; padding-top: 14px; }

.track-grid article:nth-child(1) {
    background: var(--orange);
    color: var(--white);
}

.track-grid article:nth-child(2) {
    background: var(--green);
    color: var(--white);
}

.track-grid article:nth-child(3) {
    background: var(--purple);
    color: var(--navy);
}

.track-grid article:nth-child(4) {
    background: var(--yellow);
    color: var(--navy);
}

.track-grid article:nth-child(5) {
    background: var(--pink);
    color: var(--navy);
}

.track-grid article:nth-child(6) {
    background: var(--green);
    color: var(--white);
}

.track-grid article:nth-child(7) {
    background: var(--yellow);
    color: var(--navy);
}

.track-grid article:nth-child(8) {
    background: var(--orange);
    color: var(--white);
}

.track-grid article:nth-child(9) {
    background: var(--pink);
    color: var(--navy);
}

.track-grid article:nth-child(10) {
    background: var(--purple);
    color: var(--navy);
}

.colleges {
    background: var(--pale-blue);
}

.college-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.college-intro { margin-bottom: 32px; }

.college-grid>article {
    min-height: 195px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 18px;
    background: var(--white);
    border: 1px solid var(--line);
}

.college-grid span {
    min-height: 24px;
    color: var(--blue);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.college-grid h3 { max-width: 520px; margin-top: auto; font-size: 21px; line-height: 1.2; }
.college-grid p { margin: 5px 0 0; color: var(--muted); line-height: 1.5; }

.college-grid img {
    display: block;
    width: auto;
    max-width: 220px;
    height: 66px;
    margin: 8px 0;
    object-fit: contain;
}

.quests { background: var(--white); }
.quests > .body-copy { margin-bottom: 26px; }
.quest-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.quest-grid article { min-height: 150px; padding: 18px; }
.quest-grid article:nth-child(1) { background: var(--orange); color: var(--white); }
.quest-grid article:nth-child(2) { background: var(--purple); color: var(--navy); }
.quest-grid article:nth-child(3) { background: var(--green); color: var(--white); }
.quest-grid article:nth-child(4) { background: var(--yellow); color: var(--navy); }
.quest-grid h3 { margin: 0; font-size: 25px; }
.quest-grid p { margin: 14px 0 0; line-height: 1.55; }

.official-documents { background: var(--pale-blue); }
.official-documents > .body-copy { margin-bottom: 26px; }
.document-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.document-grid article {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 22px;
    background: var(--white);
    border-top: 8px solid var(--blue);
}
.document-grid article:nth-child(2) { border-color: var(--yellow); }
.document-grid article > div > span { color: var(--blue); font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.document-grid h3 { margin: 7px 0 0; font-size: 24px; }
.document-grid .button { flex: 0 0 auto; }

.schedule h2 { color: var(--white); }
.schedule > .eyebrow { margin-bottom: 22px; font-size: clamp(14px, 1.3vw, 18px); }
.schedule-days { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; border-top: 0; padding-top: 0; }
.schedule-days article { padding: 18px; background: rgba(255, 255, 255, .07); }
.schedule-day { min-height: 76px; padding-bottom: 15px; border-bottom: 1px solid #4d607a; }
.schedule-day span { color: var(--yellow); font-size: 11px; font-weight: 700; letter-spacing: 1px; }
.schedule-day h3 { margin: 12px 0 0; color: var(--white); font-size: 20px; }
.schedule-days ul { display: grid; gap: 10px; margin: 15px 0 0; padding: 0; list-style: none; }
.schedule-days li { display: grid; gap: 4px; color: var(--pale-blue); font-size: 14px; line-height: 1.35; }
.schedule-days time { color: var(--yellow); font-size: 12px; font-weight: 700; }

.language-link { border: 1px solid var(--blue); padding: 8px 10px; color: var(--blue) !important; font-weight: 800 !important; }
.cases-note { display: flex; justify-content: space-between; gap: 24px; margin-top: 20px; padding: 18px; background: var(--navy); color: var(--white); }
.cases-note strong { font-family: Rubik, Arial, sans-serif; }
.cases-note p { max-width: 620px; margin: 0; line-height: 1.5; }
.criteria { background: var(--pale-blue); }
.criteria-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.criteria-grid article { min-height: 150px; padding: 18px; background: var(--white); border-top: 8px solid var(--blue); }
.criteria-grid article:nth-child(2) { border-color: var(--green); }.criteria-grid article:nth-child(3) { border-color: var(--purple); }.criteria-grid article:nth-child(4) { border-color: var(--orange); }.criteria-grid article:nth-child(5) { border-color: var(--pink); }
.criteria-grid h3 { margin: 0; }
.criteria-grid p { margin: 14px 0 0; color: var(--muted); font-size: 14px; line-height: 1.55; }
.criteria-grid .partner-criterion { border-color: var(--yellow); background: var(--navy); color: var(--white); }
.criteria-grid .partner-criterion p { color: var(--pale-blue); }
.ideathon-team { padding-top: clamp(34px, 4vw, 54px); padding-bottom: clamp(34px, 4vw, 54px); background: var(--white); }
.ideathon-team h2 { margin-bottom: 24px; }
.team-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.team-card { padding: 9px 9px 14px; background: var(--pale-blue); border: 2px solid var(--navy); }
.team-photo {
    width: 100%;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background: var(--white);
    border: 5px solid var(--orange);
    box-shadow: 4px 4px 0 var(--navy);
}
.team-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.team-photo-placeholder { display: grid; place-items: center; color: var(--navy); font: 800 clamp(42px, 6vw, 72px) Rubik, Arial, sans-serif; }
.team-card h3 { margin: 15px 2px 0; font-size: 20px; line-height: 1.15; }
.team-card p { margin: 5px 2px 0; color: var(--muted); font-size: 14px; line-height: 1.35; }
.team-color-1 .team-photo { border-color: var(--green); }
.team-color-2 .team-photo { border-color: var(--purple); }
.team-color-3 .team-photo { border-color: var(--yellow); }
.team-color-4 .team-photo { border-color: var(--pink); }
.partners { background: var(--navy); color: var(--white); }.partners .eyebrow { color: var(--yellow); }.partners .body-copy { color: var(--pale-blue); }
.partner-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.partner-grid > div { min-height: 110px; display: grid; place-items: center; padding: 15px; background: var(--white); color: var(--navy); font: 800 15px Rubik, Arial, sans-serif; letter-spacing: 1px; }
.partner-grid img { display: block; width: min(240px, 90%); height: 64px; object-fit: contain; }
.honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.consent-field { grid-column: 1 / -1; display: flex; align-items: flex-start; gap: 11px; line-height: 1.5; }
.consent-field input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 2px; accent-color: var(--blue); }
.registration-shell[hidden], .registration-closed[hidden] { display: none !important; }
.registration-closed { max-width: 650px; padding: 28px; background: var(--yellow); color: var(--navy); }.registration-closed strong { font: 800 clamp(24px, 4vw, 38px) Rubik, Arial, sans-serif; }.registration-closed p { margin: 12px 0 0; }
.team-limit-note { padding: 12px 14px; background: var(--white); border-left: 4px solid var(--orange); }
.policy-link { display: inline; padding: 0; border: 0; background: transparent; color: var(--blue); cursor: pointer; font: inherit; font-weight: 700; text-decoration: underline; }
.privacy-dialog { width: min(760px, calc(100% - 32px)); max-height: 88vh; padding: clamp(25px, 5vw, 48px); border: 0; background: var(--white); color: var(--navy); box-shadow: 12px 12px 0 var(--yellow); }
.privacy-dialog::backdrop { background: rgba(11, 31, 59, .75); backdrop-filter: blur(3px); }
.privacy-dialog h2 { font-size: clamp(34px, 5vw, 54px); }
.privacy-header { display: flex; justify-content: space-between; gap: 20px; }.privacy-header button { width: 38px; height: 38px; border: 1px solid var(--line); background: var(--white); color: var(--navy); cursor: pointer; font-size: 25px; }
.privacy-content { max-height: 48vh; overflow-y: auto; margin-bottom: 25px; padding-right: 12px; color: var(--muted); line-height: 1.65; }.privacy-content a { color: var(--blue); }
footer .footer-copy { flex: 1; display: flex; align-items: center; justify-content: space-between; gap: 35px; margin-left: clamp(35px, 8vw, 150px); } footer address { display: flex; gap: 18px; font-style: normal; white-space: nowrap; } footer address a { color: var(--white); font-size: 13px; text-decoration: none; } footer address a:hover { text-decoration: underline; }

@media (max-width:900px) {
    .live-track-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .track-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .college-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .quest-grid { grid-template-columns: repeat(2, 1fr); }
    .schedule-days { grid-template-columns: repeat(2, 1fr); }
    .criteria-grid { grid-template-columns: repeat(2, 1fr); }
    .partner-grid { grid-template-columns: repeat(2, 1fr); }
    .team-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width:700px) {
    .statistics-header, .live-track-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .participant-total { min-width: 0; }
    .countdown { grid-template-columns: repeat(2, 1fr); }
    .countdown > div { min-height: 100px; }
    .live-track-grid { grid-template-columns: 1fr; }

    .track-grid {
        grid-template-columns: 1fr;
    }

    .college-grid, .quest-grid, .document-grid {
        grid-template-columns: 1fr;
    }
    .document-grid article { align-items: flex-start; flex-direction: column; }
    .schedule-days { grid-template-columns: 1fr; }
    .track-grid article, .criteria-grid article, .quest-grid article { min-height: 0; }
    .criteria-grid, .partner-grid { grid-template-columns: 1fr; }
    .team-grid { grid-template-columns: 1fr; }
    .cases-note, footer .footer-copy, footer address { align-items: flex-start; flex-direction: column; }
    footer .footer-copy { margin-left: 0; }
    footer .footer-slogan { white-space: normal; }
    .nav-links .language-link { display: inline-flex !important; }
}
