/* Font */


  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
      
      @font-face {
        font-family: CustomFont;
        src: url('/font.otf');
      }
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  

  
    
    
  


/* Basic elements */
body {
  background: #f0f0f0;
  text-align: center;
  font-size: 1.35em;
  font-family:
    
      CustomFont,
    
    Courier, monospace;
  margin: 0;
}

section {
  width: 100%;
  overflow: hidden;
  padding: 3vh 0;
}

section#workshops {
  /* the color Luma uses as background */
  background: #F4F5F6;
  /* no padding below the iframe */
  padding-bottom: 0;
}

.sponsortiertitle {
  margin: 0;
  padding: 0;
}

.sponsortiertitle > h3 {
  margin-bottom: 0;
  padding-bottom: 0;
}

h1 {
  font-size: 2.5em;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
}

h2 {
  font-size: 1.5em;
}

p, h1, h2, h3 {
  margin-left: 1vw;
  margin-right: 1vw;
}

.items-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.item-generic {
  flex-grow: 1;
  flex-basis: 45%;
  padding: 0% 2%;
}

.item-sponsor {
  padding: 2%;
  flex-grow: 1;
  padding: 1vh 0;
  display: table;
}

.item-sponsor > section#sponsors {
  display: table-cell;
  vertical-align: middle;
}

.item-small {
  flex-grow: 1;
  flex-basis: 26%;
  padding: 0% 2%;
  min-width: 15em;
}

.social {
  text-decoration: none;
}

.social img {
  width: 1.25em;
  height: 1.25em;
  padding: 0.5em;
}

.calendar {
  width: 100%;
  height: 50vh;
  padding: 0;
  display: block;
}

/* Tables */
table {
  width: 100%;
  border-collapse: collapse;
  margin: 1em 0;
}

tbody > tr:nth-child(even) {
  background-color: rgba(0, 0, 0, 0.05);
}

tbody > tr:nth-child(odd) {
  background-color: rgba(0, 0, 0, 0.02);
}

tr {
  height: 3em;
}

td {
  padding: 0.3em 0.7em;
  min-width: 15vw;
}


/* Colors */
.tone-dark {
  background: #d42b2e;
  color: #fff;
  -webkit-box-decoration-break: clone;
}

.tone-dark a {
  color: #ddd;
}

.tone-dark a:active,
.tone-dark a:focus,
.tone-dark a:hover {
  color: #fff;
}


/* Special sections */
.header {
  /* Fake a dark overlay with a gradient. Black is black... I want my sanity back... */
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('/images/background.jpg') no-repeat top center;
  background-size: cover;
  padding: 0;
}

.header p {
  font-size: calc(0.7em + 2vw);
  margin: 2vh auto 5vh auto;
  max-width: 80%;
}

.sitelogo {
  max-width: 90%;
  margin: 5vh auto;
}

.fullscreen {
  min-height: 100vh;
}

/* Action link, with trick to put a dark overlay */
.link-action {
  padding: 0.1vh 2vw;
  text-decoration: none;
  position: relative;
}

.link-action:after {
  content: '\A';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.link-action:hover:after {
  background: rgba(0, 0, 0, 0.1);
}

.link-action:active:after {
  background: rgba(0, 0, 0, 0.2);
}


/* People */
.person-item {
  flex-grow: 0;
  /* Hacky way to equalize the number of items per row */
  
  
  
  
    flex-basis: 22%;
  
  padding: 0 1.5%;
}

.person-container {
  display: inline-block;
  margin: 0 0 2em 0;
}

.person-link .person-info {
  opacity: 0.9;
}

.person-link:active .person-info,
.person-link:hover  .person-info {
  opacity: 1;
}

.person-image {
  width: 10em;
  height: 10em;
}

.person-info {
  background-color: rgba(0, 0, 0, 0.2);
  margin-top: -0.3em;
  padding: 0.3em 0;
}

.person-given {
  font-weight: 600;
}

.person-family {
  opacity: 0.7;
}
