.media {
  padding: 20px 0;
  margin: 0;

  .media-image {
    width: 90px;
    position: relative;
    padding-top: 100%;
    border-radius: 50%;
  }

  .media-desc {
    font-size: 0.95em;

    small {
      display: inline-block;
      margin: 5px 0;
    }
  }

  &.media-border {
    margin-top: -1px;
    border-bottom: 1px solid @border-color;

    &:first-child {
      border-top: 1px solid @border-color;
    }
  }
}


.thumbnail {
  border-radius: 6px;
  border: 1px solid @border-color;

  .thumbnail-image {
    position: relative;
    padding-top: 100%;
    border-radius: 3px;
  }

  .caption {
    padding: 0;
    color: inherit;
  }

  .thumbnail-title {
    display: block;
    font-weight: bold;
    text-align: center;
    margin: 8px 0;
  }

  .thumbnail-desc {
    //display: none;
    text-align: justify;
    font-size: 0.9em;
    padding: 8px;

    p, small, em {
      margin: 0;
    }

    small {
      font-size: 95%;
    }
  }
}

.alert {
  //margin: 0;
  text-align: center;
}

.oneline {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 23px;
}

a, a:hover, a:focus {
  outline: none;
  text-decoration: none;
}

.empty {
  padding: 80px 0 !important;
}

.dashed {
  border: none;
  border-top: 1px dashed #eaeaea;
}

.pointer, a {
  cursor: hand;
  cursor: pointer;
}

.crossbox {
  display: table;
  width: 100%;
  table-layout: fixed;

  & > * {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
  }

  .crossbox-image {
    position: relative;
    padding-top: 35%;
  }

  .crossbox-body {
    padding: 20px;
  }

  /*
  @media(min-width: @screen-md) {
    .crossbox-body {
      padding: 25px;
      padding-left: 0;
    }

    .crossbox-image + .crossbox-body {
      padding-right: 0;
      padding-left: 25px;
    }
  }*/

  .crossbox-category {
    font-size: 0.95em;
    font-weight: lighter;
    margin: 5px 0;
  }

  .crossbox-title {
    font-size: 25px;
    letter-spacing: 0em;
    margin-top: 8px;
    margin-bottom: 30px;
    font-weight: 100;
    letter-spacing: 0.01em;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
  }

  .crossbox-text {
    line-height: 1.5em;
    text-align: justify;
    font-size: 0.95em;
  }

  @media(max-width: @screen-md) {
    display: block;
    margin-bottom: 100px;

    & > * {
      display: block;
      width: 100%;
    }

    .crossbox-image {
      padding-top: 75%;
    }
  }
}
