.error-page--generic {
  display: grid;
  grid-template-columns: 1fr;
  background-position: center;
  background-size: cover;
  height: 75vh; }
  @media (min-width: 768px) {
    .error-page--generic {
      height: 60vh; } }
  @media (min-width: 960px) {
    .error-page--generic {
      height: 80vh; } }
  .error-page--generic .error-page__box {
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 640px;
    height: auto; }
    @media (min-width: 768px) {
      .error-page--generic .error-page__box {
        height: auto; } }
    @media (min-width: 960px) {
      .error-page--generic .error-page__box {
        height: 80vh; } }
    .error-page--generic .error-page__box h1 p {
      font-family: 'ProximaNova-Bold', sans-serif;
      font-size: 24px;
      line-height: 32px; }
      @media (min-width: 768px) {
        .error-page--generic .error-page__box h1 p {
          font-size: 28px;
          line-height: 36px; } }
      @media (min-width: 960px) {
        .error-page--generic .error-page__box h1 p {
          font-size: 32px;
          line-height: 40px; } }
  .error-page--generic:after {
    content: "";
    background-size: cover;
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    z-index: -1; }
  .error-page--generic .button {
    margin-top: 16px; }
    @media (min-width: 768px) {
      .error-page--generic .button {
        margin-top: 20px; } }
    @media (min-width: 960px) {
      .error-page--generic .button {
        margin-top: 24px; } }

.error-page--brand {
  display: grid;
  grid-template-columns: 1fr; }
  @media (min-width: 768px) {
    .error-page--brand {
      grid-template-columns: 1fr; } }
  @media (min-width: 960px) {
    .error-page--brand {
      grid-template-columns: 1fr 1fr; } }
  .error-page--brand .error-page__box {
    padding: 56px 20px 64px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; }
    @media (min-width: 768px) {
      .error-page--brand .error-page__box {
        padding: 64px 24px 80px;
        text-align: center;
        align-items: center; } }
    @media (min-width: 960px) {
      .error-page--brand .error-page__box {
        padding: 80px 56px 96px;
        text-align: left;
        align-items: flex-start; } }
    .error-page--brand .error-page__box .button {
      margin-top: 16px; }
      @media (min-width: 768px) {
        .error-page--brand .error-page__box .button {
          margin-top: 20px; } }
      @media (min-width: 960px) {
        .error-page--brand .error-page__box .button {
          margin-top: 24px; } }
    .error-page--brand .error-page__box h1 p {
      font-family: 'ProximaNova-Bold', sans-serif;
      font-size: 24px;
      line-height: 32px; }
      @media (min-width: 768px) {
        .error-page--brand .error-page__box h1 p {
          font-size: 28px;
          line-height: 36px; } }
      @media (min-width: 960px) {
        .error-page--brand .error-page__box h1 p {
          font-size: 32px;
          line-height: 40px; } }

.error-page__cover {
  background-position: center;
  background-size: cover;
  height: 200px; }
  @media (min-width: 768px) {
    .error-page__cover {
      height: 320px; } }
  @media (min-width: 960px) {
    .error-page__cover {
      height: 80vh; } }

.error-page__icon {
  height: 48px;
  width: auto; }
  @media (min-width: 768px) {
    .error-page__icon {
      height: 56px; } }
  @media (min-width: 960px) {
    .error-page__icon {
      height: 64px; } }

.error-page .box--bucci-industries {
  background-color: #7e6f5a;
  color: white; }

.error-page .box--bucci-composites {
  background-color: #262626;
  color: white; }

.error-page .box--bucci-automations {
  background-color: #262626;
  color: white; }

.error-page .box--iemca {
  background-color: #305390;
  color: white; }

.error-page .box--sinteco {
  background-color: #6bbb55;
  color: white; }

.error-page .box--vire {
  background-color: #4caccb;
  color: white; }

.error-page .box--giuliani {
  background-color: #a32a33;
  color: white; }

.error-page .box--tecnosint {
  background-color: #353d46;
  color: white; }

.button {
  align-items: center;
  background-color: white;
  border-radius: 4px;
  color: #262626;
  display: flex;
  font-size: 16px;
  line-height: 16px;
  height: 48px;
  justify-content: center;
  padding: 0 28px;
  transition: all .2s ease-in-out; }
  .button:hover {
    background-color: #eeeeee; }
  .button--on-dark {
    background-color: transparent;
    border: solid 1px white;
    color: white; }
    .button--on-dark:hover {
      background-color: white;
      color: #262626; }
