@media all and (min-width:34rem) {
  html {
    font-size:1em;
  }

  #site-title {
    overflow:visible;
  }

  #site-logo {
    margin-right:0;
    max-width:100%;
  }

  #lang-nav-wrapper,
  .regular-menu {
    position:relative;
  }

  #ac-lang-menu {
    left:auto;
    right:-1rem;
    top:100%;
    text-align:inherit;
    margin-top:-1.5rem;
    border-right:none;
  }

  .columns-and-content .left-menu {
    display:block;
    width: 33.333%;
    width:calc(100% / 3);
    float:right;
  }
  #content .entry-content-wrapper {
    width:66.666%;
    width:calc(100% / 6 * 4);
    float:left;
    font-size:1rem;
  }

  .columns-and-content:not(.search) #content .entry-content-wrapper {
    border-right:1px solid #004a8f;
  }

  #footer {
    padding:4rem 2rem 2rem;
  }

  #footer > div {
    float:left;
  }
}

@media all and (min-width:45rem) and (min-height:45rem) {
  .home:not(.error404) #header,
  .columns:not(.error404) #header {
      height:100vh;
      display:block;
      -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      -webkit-box-flex:none;
      -webkit-flex:none;
      -ms-flex:none;
      -moz-flex:none;
      flex:none;
      -webkit-box-direction: normal;
      -moz-box-direction: normal;
      -webkit-box-orient: horizontal;
      -moz-box-orient: horizontal;
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row;
  }

  .home:not(.error404) #topbar,
  .columns:not(.error404) #topbar {
    background-color:transparent;
  }

  .home:not(.error404) .regular-menu-toggle,
  .columns:not(.error404) .regular-menu-toggle {
    color:#f1f1f1;
  }

  .home:not(.error404) .open-regular-menu,
  .columns:not(.error404) .open-regular-menu {
      background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2232%22%20height%3D%2232%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20fill%3D%22%23FFF%22%20d%3D%22M16%200C7.164%200%200%207.164%200%2016c0%208.837%207.164%2016%2016%2016s16-7.163%2016-16c0-8.836-7.164-16-16-16zm6.992%2023.5H9.008c-.83%200-1.5-.672-1.5-1.5%200-.83.67-1.5%201.5-1.5h13.984c.827%200%201.5.67%201.5%201.5%200%20.828-.673%201.5-1.5%201.5zm0-6H9.008c-.83%200-1.5-.672-1.5-1.5%200-.83.67-1.5%201.5-1.5h13.984c.827%200%201.5.67%201.5%201.5%200%20.828-.673%201.5-1.5%201.5zm0-6H9.008c-.83%200-1.5-.673-1.5-1.5%200-.83.67-1.5%201.5-1.5h13.984c.827%200%201.5.67%201.5%201.5%200%20.827-.673%201.5-1.5%201.5z%22%2F%3E%3C%2Fsvg%3E");
  }

  .home .column-menu,
  .columns .column-menu {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      height:100vh;
      -webkit-box-flex:none;
      -webkit-flex:none;
      -ms-flex:none;
      -moz-flex:none;
      flex:none;
  }

  .home #ac-column-menu,
  .columns #ac-column-menu {
    min-height:auto;
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    display:block;
  }

  .home #ac-column-menu li,
  .columns #ac-column-menu li {
    float: left;
    font-size: calc(50% + 1vw);
  }

  .home #ac-column-menu.items-1 li,
  .home #ac-column-menu.items-2 li,
  .home #ac-column-menu.items-3 li,
  .columns #ac-column-menu.items-1 li,
  .columns #ac-column-menu.items-2 li,
  .columns #ac-column-menu.items-3 li {
    height: 100%;
  }
  .home #ac-column-menu.items-1 li,
  .columns #ac-column-menu.items-1 li {
      width: 100%;
      font-size: calc(100% + 2vw);
  }

  .home #ac-column-menu.items-2 li,
  .home #ac-column-menu.items-4 li,
  .columns #ac-column-menu.items-2 li,
  .columns #ac-column-menu.items-4 li {
      width: 50%;
      font-size: calc(86% + 1.8vw);
  }

  .home #ac-column-menu.items-3 li,
  .home #ac-column-menu.items-5 li,
  .home #ac-column-menu.items-6 li,
  .home #ac-column-menu.items-9 li,
  .home #ac-column-menu.items-10 li,
  .columns #ac-column-menu.items-3 li,
  .columns #ac-column-menu.items-5 li,
  .columns #ac-column-menu.items-6 li,
  .columns #ac-column-menu.items-9 li,
  .columns #ac-column-menu.items-10 li {
      width: 33.333%;
      /* fallback for no calc */
      width: calc(100% / 3 - .02px); /* IE doesn't know proper rounding */
      font-size: calc(74% + 1.5vw);
  }

  .home #ac-column-menu.items-5 li:nth-child(2),
  .columns #ac-column-menu.items-5 li:nth-child(2) {
    width:66.666%;
    width:calc(200% / 3 - .02px);
  }

  .home #ac-column-menu.items-7 li,
  .home #ac-column-menu.items-8 li,
  .columns #ac-column-menu.items-7 li,
  .columns #ac-column-menu.items-8 li {
      width: 25%;
      font-size: calc(62% + 1.2vw);
  }

  .home #ac-column-menu.items-4 li,
  .home #ac-column-menu.items-5 li,
  .home #ac-column-menu.items-6 li,
  .home #ac-column-menu.items-7 li,
  .home #ac-column-menu.items-8 li,
  .columns #ac-column-menu.items-4 li,
  .columns #ac-column-menu.items-5 li,
  .columns #ac-column-menu.items-6 li,
  .columns #ac-column-menu.items-7 li,
  .columns #ac-column-menu.items-8 li {
      height:50%;
  }

  .home #ac-column-menu.items-9 li,
  .columns #ac-column-menu.items-9 li {
    height:33.333%;
    height: calc(100% / 3 - .02px);
  }

  .home #ac-column-menu.items-10 li,
  .columns #ac-column-menu.items-10 li {
    height:25%;
  }

  .home #ac-column-menu li a,
  .columns #ac-column-menu li a {
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
  }

  .home:not(.error404) #ac-lang-widget a,
  .columns:not(.error404) #ac-lang-widget a,
  .home:not(.error404) #ac-lang-widget .ac-lang-disabled,
  .columns:not(.error404) #ac-lang-widget .ac-lang-disabled {
    color:#f1f1f1;
  }
}

@media all and (min-width:67rem) {
  #content .entry-content-wrapper {
    width:50%;
    margin-left:16.666%;
    margin-left:calc(100% / 6);
  }

  #footer #social-icons {
    float:right;
    text-align:right;
  }

  #footer #copyright {
    float:right;
    clear:right;
  }
}

@media all and (min-width:67rem) {
  .columns-and-content .left-menu {
    width: 16.666%;
    width:calc(100% / 6);
    float:left;
  }

  #content .entry-content-wrapper {
    margin-right:33.333%;
    margin-right:calc(100% / 3);
    float:right;
    margin-left:0;
  }

  .columns-and-content:not(.search) #content .entry-content-wrapper {
    border-left:1px solid #004a8f;
    border-right:none;
  }
}

@media all and (min-width:82rem) {
  #content .entry-content {
    padding-bottom:4rem;
  }
  #content .has-post-thumbnail .entry-featured-image {
    /* image takes up 3.5 grid columns */
    /* width:58.333%;
    width:calc(100% / 12 * 7); */
    /* image takes up 2.5 grid columns, leaving 1 column for margin */
    width:41.667%;
    width:calc(100% / 6 * 2.5);
    margin-right:calc(100% / 6);
    padding-left:1rem;
    float:right;
  }
}
