.eventchamp-legacy {
    --ecl-border: #e4e7eb;
    --ecl-muted: #5f6b7a;
    --ecl-accent: #2563eb;
    --ecl-bg-soft: #f8fafc;
    box-sizing: border-box
}

.eventchamp-legacy * {
    box-sizing: border-box
}

.eventchamp-legacy-speakers__grid {
    display: grid;
    grid-template-columns: repeat(var(--ecl-columns, 3), minmax(0, 1fr));
    gap: 1.5rem
}

.eventchamp-legacy-columns-1 {
    --ecl-columns: 1
}

.eventchamp-legacy-columns-2 {
    --ecl-columns: 2
}

.eventchamp-legacy-columns-3 {
    --ecl-columns: 3
}

.eventchamp-legacy-columns-4 {
    --ecl-columns: 4
}

.eventchamp-legacy-columns-5 {
    --ecl-columns: 5
}

.eventchamp-legacy-columns-6 {
    --ecl-columns: 6
}

.eventchamp-legacy-speaker {
    background: #fff;
    border: 1px solid var(--ecl-border);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 7px rgba(15, 23, 42, .04);
    height: 100%
}

.eventchamp-legacy-speaker__image {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4/3;
    background: #f1f5f9;
    overflow: hidden
}

.eventchamp-legacy-speaker__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .25s ease
}

.eventchamp-legacy-speaker:hover .eventchamp-legacy-speaker__image img {
    transform: scale(1.04)
}

.eventchamp-legacy-speaker__placeholder {
    font-size: 2.5rem;
    font-weight: 700;
    color: #94a3b8
}

.eventchamp-legacy-speaker__content {
    padding: 1.25rem
}

.eventchamp-legacy-speaker.gt-style-2 .eventchamp-legacy-speaker__content,
.eventchamp-legacy-speaker.gt-style-3 .eventchamp-legacy-speaker__content {
    padding: 1rem 1.1rem
}

.eventchamp-legacy-speaker__name {
    font-size: 1.2rem;
    line-height: 1.3;
    margin: 0 0 .35rem
}

.eventchamp-legacy-speaker__name a {
    color: inherit;
    text-decoration: none
}

.eventchamp-legacy-speaker__name a:hover,
.eventchamp-legacy-speaker__social a:hover {
    color: var(--ecl-accent)
}

.eventchamp-legacy-speaker__profession {
    color: var(--ecl-muted);
    font-size: .93rem;
    margin: 0 0 .8rem
}

.eventchamp-legacy-speaker__bio {
    color: var(--ecl-muted);
    font-size: .94rem;
    line-height: 1.55
}

.eventchamp-legacy-speaker__social {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-top: 1rem
}

.eventchamp-legacy-speaker__social ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .45rem
}

.eventchamp-legacy-speaker__social li {
    margin: 0;
    padding: 0
}

.eventchamp-legacy-speaker__social a {
    align-items: center;
    border: 1px solid var(--ecl-border);
    border-radius: 999px;
    color: var(--ecl-muted);
    display: inline-flex;
    font-size: .82rem;
    height: 1.95rem;
    justify-content: center;
    width: 1.95rem;
    text-decoration: none
}

.eventchamp-legacy-speaker__social a:hover {
    background: var(--ecl-accent);
    border-color: var(--ecl-accent);
    color: #fff
}

.eventchamp-legacy-pagination {
    margin-top: 2rem
}

.eventchamp-legacy-pagination ul {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    list-style: none;
    margin: 0;
    padding: 0
}

.eventchamp-legacy-pagination a,
.eventchamp-legacy-pagination span {
    border: 1px solid var(--ecl-border);
    border-radius: 5px;
    display: block;
    padding: .4rem .65rem;
    text-decoration: none
}

.eventchamp-legacy-pagination .current {
    background: var(--ecl-accent);
    border-color: var(--ecl-accent);
    color: #fff
}

.eventchamp-legacy-schedule__group {
    margin-bottom: 2rem
}

.eventchamp-legacy-schedule__group-title {
    border-bottom: 2px solid var(--ecl-accent);
    font-size: 1.25rem;
    margin: 0;
    padding: 0 0 .65rem
}

.eventchamp-legacy-schedule__items {
    border: 1px solid var(--ecl-border);
    border-radius: 8px;
    overflow: hidden
}

.eventchamp-legacy-schedule__item+.eventchamp-legacy-schedule__item {
    border-top: 1px solid var(--ecl-border)
}

.eventchamp-legacy-schedule__header {
    align-items: center;
    background: #fff;
    border: 0;
    color: inherit;
    cursor: default;
    display: grid;
    font: inherit;
    gap: 1rem;
    grid-template-columns: minmax(8rem, 20%) 1fr auto;
    padding: 1rem;
    text-align: left;
    width: 100%
}

.eventchamp-legacy-schedule__item.has-details .eventchamp-legacy-schedule__header {
    cursor: pointer
}

.eventchamp-legacy-schedule__time {
    color: var(--ecl-muted);
    font-size: .9rem
}

.eventchamp-legacy-schedule__title {
    font-weight: 650
}

.eventchamp-legacy-schedule__icon {
    color: var(--ecl-accent);
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1
}

.eventchamp-legacy-schedule__header[aria-expanded=true] .eventchamp-legacy-schedule__icon {
    transform: rotate(45deg)
}

.eventchamp-legacy-schedule__details {
    background: var(--ecl-bg-soft);
    border-top: 1px solid var(--ecl-border);
    padding: 1rem 1rem 1rem calc(20% + 1rem)
}

.eventchamp-legacy-schedule__description {
    color: var(--ecl-muted);
    line-height: 1.6
}

.eventchamp-legacy-schedule__description p:first-child {
    margin-top: 0
}

.eventchamp-legacy-schedule__description p:last-child {
    margin-bottom: 0
}

.eventchamp-legacy-schedule__speakers {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: 1rem
}

.eventchamp-legacy-schedule__speakers a {
    background: #e8eefc;
    border-radius: 99px;
    color: #1d4ed8;
    font-size: .85rem;
    padding: .25rem .7rem;
    text-decoration: none
}

.eventchamp-legacy-schedule.gt-style-2 .eventchamp-legacy-schedule__group-title {
    border-bottom-style: dashed
}

.eventchamp-legacy-schedule.gt-style-2 .eventchamp-legacy-schedule__header {
    background: #f9fafb
}

.eventchamp-legacy-schedule.gt-style-2 .eventchamp-legacy-schedule__details {
    background: #fff
}

.eventchamp-legacy-schedule.gt-style-3 .eventchamp-legacy-schedule__header {
    grid-template-columns: minmax(9rem, 24%) 1fr auto
}

.eventchamp-legacy-schedule.gt-style-4 .eventchamp-legacy-schedule__items {
    border-radius: 0
}

.eventchamp-legacy-schedule.gt-style-5 .eventchamp-legacy-schedule__item {
    background: #fff
}

.eventchamp-legacy-schedule.gt-style-6 .eventchamp-legacy-schedule__group-title,
.eventchamp-legacy-schedule.gt-style-7 .eventchamp-legacy-schedule__group-title {
    font-size: 1.05rem;
    letter-spacing: .03em;
    text-transform: uppercase
}

.eventchamp-legacy .gt-speaker .gt-name a,
.eventchamp-legacy .gt-speaker .gt-name a:visited,
.eventchamp-legacy .gt-event-schedule .gt-title {
    color: inherit
}

@media(max-width:900px) {

    .eventchamp-legacy-columns-4,
    .eventchamp-legacy-columns-5,
    .eventchamp-legacy-columns-6 {
        --ecl-columns: 3
    }
}

@media(max-width:680px) {
    .eventchamp-legacy-speakers__grid {
        --ecl-columns: 1
    }

    .eventchamp-legacy-schedule__header {
        gap: .35rem;
        grid-template-columns: 1fr auto
    }

    .eventchamp-legacy-schedule__time {
        grid-column: 1
    }

    .eventchamp-legacy-schedule__title {
        grid-column: 1
    }

    .eventchamp-legacy-schedule__icon {
        grid-column: 2;
        grid-row: 1/3
    }

    .eventchamp-legacy-schedule__details {
        padding: 1rem
    }
}