.conference-header {
    background: linear-gradient(135deg, #003e7e 0%, #005ab5 100%);
    color: #fff;
}

.conference-header h1 {
    color: #fff;
}

.conference-meta-item {
    color: rgba(255, 255, 255, .85);
}

.conference-meta-item a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.conference-meta-item a:hover {
    color: #e5e5e5;
}

.conference-program {
    width: 100%;
}

.program-row {
    display: flex;
    gap: 2rem;
    border-left: 3px solid #dee2e6;
    background: #fff;
    align-items: flex-start;
}

.program-row--block {
    border-left-color: #003e7e;
}

.program-row--highlight {
    border-left-color: #e6a817;
    background: #fffbef;
}

.program-row--discussion {
    border-left-color: #6c9dc7;
    background: #f5f9ff;
}

.program-row--break {
    border-left-color: #6c757d;
    background: #f8f9fa;
}

.program-time {
    min-width: 70px;
    color: #003e7e;
    display: flex;
    justify-content: flex-end;
    flex-shrink: 0;
}

.program-duration {
    display: inline-block;
    background: #003e7e;
    color: #fff;
    border-radius: 1rem;
    white-space: nowrap;
}

.program-row--discussion .program-duration {
    background: #6c9dc7;
}

.program-row--highlight .program-duration {
    background: #e6a817;
}

.program-body {
    flex: 1;
}

.program-title {
    color: #1a1a2e;
}

.program-label {
    color: #495057;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.program-speakers-label {
    color: #6c757d;
}

.program-speakers {
    list-style: none;
}

.program-speakers li {
    border-bottom: 1px solid #f0f0f0;
}

.program-speakers li:last-child {
    border-bottom: none;
}

.program-discussion {
    color: #6c757d;
    font-style: italic;
}
