* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; } html, body { width: 100%; height: 100%; margin: 0; padding: 0; background: #fff; box-sizing: border-box; text-rendering: optimizeLegibility; font-family: 'Roboto', sans-serif; font-weight: 300; font-size: 13px; color: black; transition: opacity 200ms cubic-bezier(0,0,0,1); overflow: hidden; } .loading body { opacity: 0; } .loading * { transition: all 0s ease 0s !important; } .desktop { /* overflow: hidden; */ } /* header */ .header { position: fixed; top: 0; right: 0; width: 300px; padding: 20px; background: white; z-index: 2; overflow: hidden; pointer-events: none; } .header .back { position: absolute; top: 0; left: -60px; padding: 20px; text-decoration: none; background-color: #8b8b8f; color: white; transition: left 400ms; } .header .back a { color: white; font-size: 24px; } .header .inner { transform: translate3d(0,0,0); transition: transform 400ms cubic-bezier(0,0,0,1); } .inModal .header { pointer-events: auto; } .inModal .header .back { left: 0px; } .inModal .header .inner { transform: translate3d(60px,0,0); } /* paintings */ .paintings { height: 100vh; overflow: scroll; -webkit-overflow-scrolling: touch; } .cell { display: flex; height: 100vh; width: 100vw; } .cell:nth-child(6n+1) { background-color: hsl(0, 10%, 98%); } .cell:nth-child(6n+2) { background-color: hsl(50, 10%, 99%); } .cell:nth-child(6n+3) { background-color: hsl(120, 10%, 98%); } .cell:nth-child(6n+4) { background-color: hsl(190, 10%, 99%); } .cell:nth-child(6n+5) { background-color: hsl(260, 10%, 98%); } .cell:nth-child(6n+6) { background-color: hsl(310, 10%, 99%); } .painting { position: relative; display: flex; align-items: center; flex: 1; } .painting .image { position: absolute; top: 5%; left: 5%; height: 90%; width: 90%; background-size: contain; background-position: center center; background-repeat: no-repeat; } .about { flex: 0 0 300px; padding: 20px; display: flex; align-items: center; background: white; } /* modal */ body.inModal { overflow: hidden; } .modal { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: hsl(0, 10%, 99%); transform: translate3d(100%,0,0); transition: transform 400ms cubic-bezier(0,0,0,1); overflow: hidden; } .inModal .modal { transform: translate3d(0,0,0); overflow-y: scroll; -webkit-overflow-scrolling: touch; } /* details page */ .details { padding: 20px; padding-top: 0px; } h1, h2 { font-size: 18px; font-weight: 300; margin-top: 20px; margin-bottom: 20px; } h2 { margin-top: 0px; margin-bottom: 20px; } .details .stats { margin-bottom: 20px; } .details img { max-width: 90%; margin-bottom: 20px; } .parameters { max-width: 90%; display: flex; flex-wrap: wrap; margin-bottom: 10px; } .parameters div { font-size: 10px; max-width: 33%; padding-right: 20px; } a { color: #0088ff; } @media (max-width: 700px) { .inModal .inner { margin-left: 0px; } .header { width: 100%; } .modal > div { padding-top: 40px; padding-bottom: 20px; } .cell { flex-direction: column; height: 79vh; } .cell:first-child { margin-top: 48px; } .cell:last-child { height: auto; } .cell:last-child .painting { flex: 1; height: 100vw; } .cell:last-child .about { flex: 1; padding-bottom: 120px; } .details { padding-top: 20px; } .parameters, .parameters + h2 { display: none; } .about { flex: 0 0 120px; } .details img { max-width: 100%; } }