.tex {
    color: #82a69b;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    }

.key_legend {
    width: 100%;
    padding: 30px 0 60px 0;
}

    .key_legend li {
        width: 14%;
        float: left;
    }

.key_legend_dblue {
    background: #086bbb;
}

.key_legend_yellow {
    background: #bae000;
}

.key_legend_yellow, .key_legend_purple, .key_legend_dblue, .key_legend_red, .key_legend_gray, .key_legend_green, .key_legend_orange, .key_legend_mauve, .key_legend_pdf {
    width: 19%;
    height: 30px;
    float: left;
}

.key_legend_purple {
    background: #673bb8;
}

.key_legend_red {
    background: #e91f63;
}

.key_legend_gray {
    background: #607d8b;
}

.key_legend_green {
    background: #4cb050;
}

.key_legend_yellow {
    color: #bae000;
}

.key_legend_orange {
    background: #ff9900;
}

.key_legend_mauve {
    width: 19%;
    background: #cc99ff;
    float: left;
}

.key_legend_pdf {
    width: 19%;
    background: #ffffff;
    float: right;
}

.key_legend_category {
    float: left;
    width: 70%;
    margin: 0 5%;
    font-size: 1.3em;
    font-style: italic;
}

.schedule_agenda {
    width: 100%;
    margin: 30px auto;
    background: #f9f9f9;
    color: #333;
    padding: 30px;
    box-shadow: 0 1px 1px #ccc;
}

.schedule_date {
    font-size: 3.9em;
    color: #ed1c24;
}

.time_block {
    width: 100%;
    margin: 30px 0 0 0;
    padding: 30px 0 0 0;
    border-top: solid 1px #ccc;
    display: inline-block;
}

.schedule_time {
    float: left;
    color: #ed1c24;
    font-size: 22px;
    min-width: 150px;
    width: 208px;
}

.schedule_events {
    float: left;
    margin: 0 0 0 30px;
    font-size: 20px;
    color: #333;
    width: 842px;
}

    .schedule_events li {
        width: 100%;
    }

        .schedule_events li div {
            max-height: 10000px;
            transition: max-height 1s ease-in-out, opacity 1s linear;
            opacity: 1;
        }

            .schedule_events li div.hide {
                overflow: hidden;
                max-height: 0;
                opacity: 0;
            }


div.description p {
    font-size: 15px;
    margin: 5px 0;
}

.schedule_events li div div.title {
    font-size: 18px;
    font-style: italic;
}

.schedule_yellow, .schedule_grey, .schedule_blue, .schedule_dblue, .schedule_purple, .schedule_red, .schedule_gray, .schedule_green, .schedule_orange, .schedule_mauve {
    font-size: 1.4em;
}

.schedule_yellow, .track_yellow {
    color: #bae000;
}

.schedule_blue, .track_blue {
    color: #1ec2f3;
}

.schedule_dblue, .track_dblue {
    color: #086bbb;
}

.schedule_purple, .track_purple {
    color: #673bb8;
}

.schedule_red, .track_red {
    color: #e91f63;
}

.schedule_dred, .track_dred {
    color: #b00000;
}

.schedule_gray, .track_gray {
    color: #607d8b;
}

.schedule_green, .track_green {
    color: #4cb050;
}

.schedule_orange, .track_orange {
    color: #ff9900;
}

.schedule_mauve, .track_mauve {
    color: #cc99ff;
}

@media screen and (max-width:830px) {
    .key_legend {
        display: inline-block;
        padding: 30px 0 0 0;
    }

        .key_legend li {
            width: 100%;
            float: left;
            clear: both;
            min-height: 40px;
        }

    .schedule_time, .schedule_events {
        width: auto;
    }

    .schedule_events {
        margin: 0 0 0 15px;
        font-size: 15px;
    }

    .schedule_time {
        font-size: 18px;
        transition: font-size .5s;
    }
}

@media screen and (max-width:630px) {
    .schedule_agenda {
        padding: 15px;
    }

    .schedule_date {
        font-size: 32px;
    }
}
