#modal {
  background: #FFF;
  border-radius: $radius;
  display: none;
  margin: 4*$gutter auto 2*$gutter;
  max-width: 600px;
  width: 90%;
  text-align: left;
  z-index: 3000;
  > .header {
    border-bottom: 1px solid $line;
    padding: 1.5*$gutter/2 $gutter;
    h2 { 
      font-size: inherit;
      margin: 0;
    }
    .close {
      color: $line;
      float: right;
      @include font-size($large);
      line-height: 1;
      @include transition-property(color);
      @include transition-duration(0.2s);
      &:before {
        @include icon();
        content: 'X';
      }
      &:hover {
        color: $red;
      }
      span {
        display: none;
      }
    }
  }
  .body {
    padding: 1.5*$gutter/2 $gutter;
    > *:last-child {
      margin-bottom: 0;
    }
  }
}

body.modal {
  #overlay {
    background: rgba(0, 0, 0, 0.3);
    opacity: 1;
    visibility: visible;
  }
  #modal {
    display: block;
  }
}