@font-face { font-family: 'airstreamregular'; src: url('fonts/Airstream-webfont.eot'); src: url('fonts/Airstream-webfont.eot?#iefix') format('embedded-opentype'), url('fonts/Airstream-webfont.woff') format('woff'), url('fonts/Airstream-webfont.ttf') format('truetype'), url('fonts/Airstream-webfont.svg#airstreamregular') format('svg'); font-weight: normal; font-style: normal; } @font-face { font-family: 'lakeshore'; src: url('fonts/LAKESHOR-webfont.eot'); src: url('fonts/LAKESHOR-webfont.eot?#iefix') format('embedded-opentype'), url('fonts/LAKESHOR-webfont.woff') format('woff'), url('fonts/LAKESHOR-webfont.ttf') format('truetype'), url('fonts/LAKESHOR-webfont.svg#lakeshore') format('svg'); font-weight: normal; font-style: normal; } html, body { height: 100%; } body { display: flex; flex-direction: column; font-size: 10px; background: rgb(149, 194, 215); } a { text-decoration: none; } .main-header { flex: 0 1 auto; } .logo-text { background: white; text-align: center; text-transform: uppercase; font-family: lakeshore; font-size: 37px; } .main-content { flex: 1 1 auto; display: flex; flex-direction: column; } .thumbnail-item { display: inline-block; min-width: 120px; max-width: 120px; border: 1px solid rgb(100%, 100%, 100%); border: 1px solid rgba(100%, 100%, 100%, 0.8); } .thumbnail-list { flex: 0 1 auto; order: 2; display: flex; justify-content: space-between; list-style: none; padding: 0; white-space: nowrap; overflow-x: auto; } .thumbnail-image { display: block; width: 100%; } .thumbnail-title { display: block; margin: 0; padding: 4px 10px; background: rgb(96, 125, 139); color: rgb(202, 238, 255); font-size: 18px; } .detail-image-container { flex: 1 1 auto; display: flex; justify-content: center; align-items: center; } .detail-image-frame { position: relative; text-align: center; } .detail-image { width: 90%; } .detail-image-title { position: absolute; bottom: -16px; left: 4px; font-family: airstreamregular; color: white; text-shadow: rgba(0, 0, 0, 0.9) 1px 2px 9px; font-size: 40px; } @media all and (min-width: 768px) { .main-content { flex-direction: row; overflow: hidden; } .thumbnail-list { flex-direction: column; order: 0; margin-left: 20px; } .thumbnail-item { max-width: 260px; } .thumbnail-item + .thumbnail-item { margin-top: 20px; } }