h1 {
    margin-top: 0;
    margin-bottom: 0;
}

#errorUrlDiv {
    display: none;
    flex-direction: column;
    text-align: center;
    font-size: 5vw;
    color: red;
}

#eventFinishedDiv {
    display: none;
    justify-content: center;
}

html,
body {
    margin: 0;
    padding: 0;
    width: 100%;
}

#header{
    display: flex;
    font-size: 1vw;
    width: 100%;
    height: 10vh;
    margin-bottom: 3vh;
}
#logo{
    display: flex;
    height: 10vh;
    max-width: 10vh;
    background-color: white;
}
#logo img{
    height: 100%;
    width: auto;
    object-fit: contain;
}
.title{
    align-content: center;
    padding-left: 1vw;
    font-size: 2vh;
    overflow: hidden;
}

#pageContent {
    display: flex;
    flex-direction: row;
    width: 100vw;
    height: 87vh;
    overflow: hidden;
}

#agendaList {
    width: 100vw;
    overflow-y: auto;
    overflow-x: hidden;
    position: relative;
}
/*hide scrollbar for different browsers*/
#agendaList {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none;  /* Internet Explorer 10+ */
}
#agendaList::-webkit-scrollbar {
  display: none;  /* Chrome, Safari, Edge */
}

.nextSessions {
    display: flex;
    flex-direction: row;
    height: 5vh;
    margin-bottom: 1.2vh;
    width: 100%;
}

.nxtSessTime {
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 2.4vh;
    width: 9vh;
    padding: 0.5vh 1vw 0.5vh 2vw;
}

.nxtSessTitle {
    display: flex;
    align-items: center;
    font-size: 1.8vh;
    padding: 0.5vh 0vw 0.5vh 1vw;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}

.nxtSessRoomName {
    display: flex;
    align-items: center;
    font-size: 1.8vh;
    padding: 0vh 1vw 0vh 1vw;
    width: 20%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.speakerImagesContainer {
    display: none; /*remove speaker images*/
    flex-direction: row;
    align-items: center;
    padding-left: 0.5vw;
    padding-right: 0.5vw;
}

.eachSpeakerPictureDiv {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -0.8vh;
}

.eachSpeakerPictureDiv:first-child {
    margin-left: 0;
}

.speakerImg {
    height: 4vh;
    border-radius: 50%;
    object-fit: cover;
    border: 0.2vh solid white;
}

#notificationsContainer {
    display: flex;
    flex-direction: column;
    padding: 0vh 1vw 0vh 1vw;
    margin-left: 2vw;

    display: none !important;
}

.eachNotificationDiv {
    display: flex;
    flex-direction: column;
}

.notificationTime {
    font-size: 2.3vh;
    padding-top: 1vh;
    font-weight: bold;
}

.notificationTitle{
    font-size: 1.5vh;
    padding-top: 1vh;
}
.notificationText {
    font-size: 1vh;
    padding-top: 1vh;
}

@media only screen and (orientation: portrait) {

    #logo img {
        height: 10vh;
        width: auto;
    }
    .title {
        text-align: right;
        font-size: 1.9vh;
        padding-right: 4vw;
    }
    #pageContent {
        flex-direction: column;
    }

    #agendaList {
        width: 100%;
        flex: 1 1 0;
        min-height: 0;
        overflow-y: auto;
        overflow-x: hidden;
    }

    .nextSessions {
        display: grid;
        grid-template-columns: auto 1fr;
        grid-template-rows: auto auto;
        height: auto;
        row-gap: 0;
    }

    .nxtSessTime {
        padding: 0.1vh 1vw 0.1vh 2vw;
        grid-area: 1 / 1;
        font-size: 2.2vh;
    }

    .nxtSessTitle {
        padding: 0vh 1vw;
        grid-area: 2 / 1 / 3 / 3;
    }

    .nxtSessRoomName {
        padding: 0.1vh 2vw 0.1vh 0vw;
        width: auto;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        grid-area: 1 / 2;
        align-self: stretch;
        justify-self: stretch;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        font-size: 2vh;
    }

    .speakerImagesContainer {
        padding: 0 0.5vw;
    }

    .speakerImg {
        height: 3vh;
    }

    #notificationsContainer {
        display: none;
        height: 30vh;
        margin-left: 0vw;
        margin-top: 1vh;
    }

    .eachNotificationDiv {
        align-items: baseline;
    }

    .notificationTitle,
    .notificationText {
        margin-left: 1vw;
        width: 45%;
    }

    .notificationText {
        margin-right: 1vw;
    }

    .eachNotificationDiv {
        flex-direction: row;
    }
}