You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

425 lines
7.2 KiB

@font-face {
src: url("/static/fonts/HKGrotesk-Regular.woff");
font-family: hkg;
}
:root {
--c1: #fefefe;
--c2: #0e0e0e;
--c3: #d2b2ec;
--c4: #eeaeca;
--c5: #e9bd94;
--c6: #bfbfbf;
--h-header: 8vh; /* + 2 * 2.5vh margin (12.5)*/
--h-info: 67.5vh; /* 100 - 32.5 */
--h-ex: 15vh; /* + 2 * 2.5vh bottom (20.0)*/
--h-ex-thumb: 15.0vh;
}
* {
font-family: hkg, sans-serif;
color: var(--c2);
padding: 0;
margin: 0;
text-decoration: none;
}
body {
background: radial-gradient(ellipse, var(--c3) 0%, var(--c4) 63%, var(--c5) 100%);
}
header, #bg-box, #exhibition, .flying-text, #content-wrapper {
border-radius: 5px;
}
.hidden {
visibility: hidden;
}
#content-wrapper {
box-sizing: border-box;
background: white;
width: 95%;
margin: auto;
padding: 25px;
}
.text-only {
white-space: pre-line;
}
/******************* SPACER LINES *******************/
.line {
border-bottom: 2px solid var(--c6);
width: 69%;
margin: 5px auto 5px auto;
}
.cv-line {
border-bottom: 2px solid var(--c6);
width: 69%;
margin: 25px auto 25px auto;
}
/******************* HEADER *******************/
header {
box-sizing: border-box;
position: relative;
font-size: 1.5vmax;
background-color: var(--c1);
width: 60%;
height: var(--h-header);
max-height: var(--h-header);
margin: 2.5vh auto;
text-align: center;
z-index: 1;
}
nav a {
display: inline-block;
min-width: 16%;
vertical-align: middle;
}
a:hover {
color: var(--c3);
}
nav {
position: absolute;
height: 100%;
width: 100%;
margin-top: -1.5vh;
}
#logo {
position: relative;
height: auto%;
}
#logo img {
filter: grayscale(1);
width: calc(var(--h-header) + 3vh);
}
#logo img:hover {
filter: grayscale(0);
}
@media only screen and (max-width: 800px) {
header {
width: 95%;
}
}
/******************* EXHIBITION *******************/
#gallery-wrapper {
position: relative;
height: 100vh;
max-width: 100vw;
max-height: 100vh;
overflow: hidden;
}
/* Remove scrollbar in webkit */
::-webkit-scrollbar{width:0px; height:0px;}
::-webkit-scrollbar-button{width:0px; height:0px;}
#exhibition {
/* Remove scrollbar in FF */
scrollbar-width: none;
transform-origin: bottom left;
overflow-y: auto;
overflow-x: hidden;
position: absolute;
background-color: var(--c1);
/* because of the transform width and height are switched */
bottom: 2.5vh;
left: 97.5vw;
width: var(--h-ex);
height: 95vw;
transform: rotate(-90deg);
}
.thumb-box {
transform-origin: bottom left;
/* keep the ~ratio of a photo
(spacing should be the same all the time) */
width: calc(var(--h-ex-thumb) * 1.49);
height: var(--h-ex-thumb);
margin-top: calc(var(--h-ex-thumb) * 0.53);
/* shift the thumbs 1.49*width to the left */
transform: rotate(90deg) translateX(calc(var(--h-ex-thumb) * -1.49));
}
.thumb-box:last-child {
margin-bottom: 0;
}
.thumb {
filter: grayscale(1);
width: 100%;
height: 100%;
}
.thumb:hover {
filter: grayscale(0);
cursor: pointer;
}
/******************* SCROLL INDICATOR *******************/
.arrow {
position: absolute;
line-height: 5vh;
font-size: 12vh;
bottom: calc((var(--h-ex) - 5vh) / 2 + 2.0vh);
color: var(--c1);
background-color: var(--c3);
width: 6vh;
height: 6vh;
border-radius: 50%;
text-align: center;
visibility: hidden;
animation: notice 4s;
animation-delay: 2s;
}
.arrow:last-child {
right: 0;
}
@keyframes notice {
0% {
visibility: visible;
opacity: 0;
}
50% {
visibility: visible;
opacity: 0.9;
}
100% {
visibility: visible;
opacity: 0;
}
}
/******************* INFO *******************/
#info-box {
position: relative;
width: 95%;
height: var(--h-info);
margin: auto;
}
#bg-box {
background-color: var(--c1);
width: 100%;
height: 100%;
overflow: hidden;
}
#info-box table {
display: inline-block;
position: absolute;
top: 0;
bottom: 0;
height: auto;
padding: 5vh;
margin-bottom: 2.5vh;
}
#info-box table * {
font-size: 1.35vw;
}
#info-box th {
text-align: left;
}
#info-box img {
height: 100%;
max-width: 100%;
}
#btn-close {
position: absolute;
font-size: 4.5vw;
color: var(--c2);
top: 1.6vw;
right: 1.6vw;
/* I made this a bit smaller to make alignment easier */
line-height: 2.0vw;
z-index: 1;
}
#btn-close:hover {
color: var(--c3);
cursor: pointer;
}
/******************* ZOOM *******************/
#zoom {
background-size: contain;
background-clip: content-box;
display: inline-block;
background-repeat: no-repeat;
background-position: center;
max-width: 60%;
height: 100%;
}
@media only screen and (max-width: 800px) {
#bg-box {
background-color: var(--c1);
width: 100%;
height: 100%;
overflow: hidden;
}
#info-box table {
box-sizing: border-box;
display: block;
position: relative;
padding: 0 2.5%;
margin-top: 7.5vh;
}
#info-box table * {
font-size: 2.0vw;
}
#info-box img {
max-height: 100%;
}
#zoom {
position: relative;
top: 5vh;
left: 2.5%;
max-width: 95%;
height: 50%;
}
}
/******************* HEADER *******************/
#welcome {
position: absolute;
top: 12.5vh;
width: 100%;
height: var(--h-info);
}
#welcome img {
position: relative;
top: 17vh;
left: 50vw;
height: calc(var(--h-info) * 0.5);
margin-left: calc(var(--h-info) * 0.25 * -0.70);
}
#avatar:hover {
cursor: pointer;
}
.wobble {
animation: wob 1s infinite;
}
@keyframes wob {
0% {
transform: scale(1.0) rotate(0deg);
}
50% {
transform: scale(0.8);
}
100% {
transform: scale(1.0) rotate(360deg);
}
}
.flying-text {
display: inline-block;
position: absolute;
font-size: 0.01vw;
color: var(--c2);
background-color: var(--c1);
top: 50%;
left: 50%;
padding: 0.5vw;
text-align: center;
z-index: -1;
}
/******************* COMING SOON *******************/
.coming-soon {
text-align: center;
}
.coming-soon p{
position: relative;
display: inline-block;
font-size: 8vmin;
color: var(--c2);
top: 30vh;
background-color: var(--c1);
border-radius: 1vh;
padding: 20px;
}
/******************* ABOUT *******************/
.cv-column {
display: flex;
flex-direction: column;
flex-basis: 100%;
flex: 40% 0;
}
.cv-row {
display: flex;
flex-direction: row;
flex-wrap: wrap;
width: 100%;
}
.cv-label {
color: var(--c6);
text-align: right;
font-weight: bold;
text-transform: uppercase;
padding: 5px 25px 0 0;
}
.cv-content {
padding: 5px 0 0 0;
}
.cv-space {
margin-top: 20px;
}
.cv-heading {
color: var(--c4);
text-align: center;
margin-bottom: 10px;
font-size: 30px;
}
.cv-sub-heading {
color: var(--c4);
text-align: center;
margin: 10px 0 10px 0;
font-size: 20px;
}