body {
  background:black;
  background-attachment:fixed;
  color:white;
  font-family:'Source Code Pro', monospace;
  text-align:center;
  margin:0;
}
body * {  animation:fadein 0.5s ease; }
a { text-decoration:none; color:inherit; }
h1 { font-size:30px; }
p { padding:0 40px; }
table { margin:0 auto; }
main {
  position:absolute;
  width:100%;
  text-align:center;
  line-height:80px;
  z-index:10;
}
footer {
  position:absolute;
  bottom:0;
  width:100%;
  text-align:center;
  line-height:40px;
  z-index:5;
}
@keyframes fadein {
    from { opacity:0; }
    to   { opacity:1; }
}
main img { width:18vw; max-width:100px; padding:4px; vertical-align:middle; }
footer img { height:40px; padding:10px; vertical-align:middle; }

.page-img { height:100px; width:100px; }
.text-img { height:26px; width:26px; }
.centered { position:fixed; top:20%; width:100%; text-align:center; }

#email-table { font-size:20px; padding:40px; }
#email-table td { padding:16px; }
#email-table td:first-child { text-align:right; width:100px; }
#email-table td:nth-child(2) { text-align:left; width:260px; }
#email-table tr:nth-child(2), #email-table tr:nth-child(5), #email-table tr:nth-child(8), #email-table tr:nth-child(11) { color:gray; }
#diner-table td { padding:0px 10px; }
#diner-table td:first-child { text-align:right; width:200px; }
#diner-table td:nth-child(2) { text-align:left; width:200px; }
#unclasp-1 { height:300px; float:left; }
#unclasp-2 { height:300px; float:right; }
#ttc { height:300px; }
#queen { height:400px; }
#giant-shape { width:100%; }
.reference { background:black; font-family:Courier,monospace; }
#spotlight {
 display:none;
 position:fixed;
 height:100%; width:100%;
 background: radial-gradient(300px circle at 50% 70px,white 10%,#555,black);
}