#container,
#footer {
  max-width: 980px;
  width: calc(100% - 20px);
}

.homepage img {
  max-width: 165px;
}

@media screen and (max-width: 980px) {
  .page img,
  .homepage img {
    width: 100%;
    height: auto;
  }

  .homepage {

  }

  #footer {
    overflow: hidden;
  }

  #footer ul,
  #footer p {
    text-align: center;
    float: none;
  }

  #footer ul {
    margin-top: 10px;
  }

  #footer ul li {
    float: none;
    display: inline-block;
  }

  div.header ul {
    margin-left: 0;
    margin-top: 80px;
  }

  div.header ul li a.current,
  div.header ul li a.section {
    font-size: 1em;
    font-weight: bold;
  }

  div.header ul li:first-of-type {
    padding-left: 0;
  }
}

@media screen and (max-width: 768px) {
  div.typography.page {
    padding: 20px;
  }

  div.typography.page h1 {
    font-size: 1.5em;
  }
}

@media screen and (max-width: 500px) {
  .homepage h1 {
    font-size: 2.5em;
  }

  .homepage .navigation li {
    border-left: 0 !important;
    text-align: center !important;
    display: block !important;
    padding: 0 !important;
  }

  #events .dates img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100px;
  }

  div.header {
    height: auto;
  }

  div.logo {
    float: none;
    margin: 0 auto;
  }

  div.logo img {
    height: 90px;
  }

  .navigation ul {
    margin-top: 0 !important;
    text-align: center;
  }

  .navigation ul li {
    display: inline-block;
    float: none;
  }

  .navigation {
    float: none;
    clear: both;
    padding: 20px 0;
  }
}

@media screen and (max-width: 425px) {
  #events .dates {
    width: 100%;
  }

  #events .dates img {
    margin-top: 10px;
  }

  #events .details {
    width: 100%;
    margin-top: 10px;
    border-left: 0;
    padding-left: 0;
  }
}

#calendar {
  padding: 0 10px;
}