.page { height: 100vh; overflow: auto; padding-bottom: 100px; &::before { content: ''; position: absolute; left: 0; top: 0; height: 40vh; width: 100%; background-color: var(--black); border-bottom-left-radius: 30px; border-bottom-right-radius: 30px; pointer-events: none; } } .upfold { width: 100%; color: white; position: relative; padding: 30px 10% 0 10%; h1 { font-size: 24px; font-weight: 400; margin-bottom: 20px; } p { font-size: 17px; } } .subject-list { position: relative; width: 80%; margin: 0 auto; list-style: none; header { color: var(--black); h5 { font-size: 16px; margin-top: 30px; font-weight: 500; } &:first-child { color: white; } } li { background-color: white; border-radius: 15px; overflow: hidden; display: flex; align-items: center; padding: 15px 10px; margin-top: 15px; box-shadow: 0px 0px 5px -2px var(--black); justify-content: space-between; position: relative; &::before { content: ''; position: absolute; left: 0; top: 0; width: 7px; height: 100%; background-color: var(--teal-green); } } .schedule { width: 100px; padding: 0 5px; text-align: center; } .subject { width: calc(100% - 100px); border-left: 1px solid #cecece; padding-left: 15px; overflow: hidden; p { margin-top: 10px; } } label { font-size: 16px; color: var(--black); font-weight: 500; } p { font-size: 13px; color: var(--dark-grey); margin-top: 2px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; img { width: 20px; height: 20px; border-radius: 50%; overflow: hidden; object-fit: cover; object-position: top; vertical-align: middle; } span { vertical-align: middle; margin-left: 3px; } } } .start-button { position: fixed; width: 70%; height: 50px; box-shadow: 2px 2px 20px -5px var(--teal); color: white; background-color: var(--teal); border-radius: 10px; font-size: 14px; bottom: 20px; left: 15%; border: 0px; z-index: 1; }