.mod-spextension-default-main {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--spextension-color-card);
}

  /* Set each column to height of delimiter column */
  .mod-spextension-default-main > section {
    position: relative;
    overflow: visible;
  }

  .mod-spextension-default-main > .mod-spextension-default-banner {
    flex-basis: 100%;
  }

  .mod-spextension-default-main > .mod-spextension-default-logo {
    overflow: visible;
  }

    .mod-spextension-default-main > .mod-spextension-default-logo .spextension-freehtml {
      height: 100%;
    }

    .mod-spextension-default-main > .mod-spextension-default-logo img {
      /* This color will be taken from svg for every element with fill="currentColor" */
      color: var(--spextension-color-secondary);
    }

  .mod-spextension-default-main > .mod-spextension-default-slogan {
    overflow: visible;
  }

    .mod-spextension-default-main > .mod-spextension-default-slogan .spextension-freehtml {
    }

    .mod-spextension-default-main > .mod-spextension-default-slogan img {
      /* This color will be taken from svg for every element with fill="currentColor" */
      color: var(--spextension-color-secondary);
    }

  .mod-spextension-default-main > .mod-spextension-default-text {
    flex-grow: 1;
  }

    .mod-spextension-default-main > .mod-spextension-default-text div {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100%;
    }

    .mod-spextension-default-main > .mod-spextension-default-text h1,
    .mod-spextension-default-main > .mod-spextension-default-text h2,
    .mod-spextension-default-main > .mod-spextension-default-text h3 {
      white-space: nowrap; /* Don't wrap text in header instead do what specified settings below */
      overflow: visible;
    }
    .mod-spextension-default-main > .mod-spextension-default-text h1 {
      font-size: 2rem;
      line-height: 3rem;
    }
    .mod-spextension-default-main > .mod-spextension-default-text h2 {
      font-size: 2rem;
      line-height: 3rem;
    }
    .mod-spextension-default-main > .mod-spextension-default-text h3 {
      font-size: 1rem;
      line-height: 1.2rem;
    }


@media (min-width: 992px) {
  /* Overlap transparent logo with text in this display width */
  .mod-spextension-default-main {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto;
  }

    .mod-spextension-default-main > .mod-spextension-default-banner {
      grid-row-start: 1;
      grid-column: 1 / -1;
    }

    .mod-spextension-default-main > .mod-spextension-default-logo {
      grid-row-start: 2;
      grid-column-start: 1;
      justify-self: left;
    }

    .mod-spextension-default-main > .mod-spextension-default-slogan {
      grid-row-start: 2;
      grid-column-start: 3;
      justify-self: right;
    }

    .mod-spextension-default-main > .mod-spextension-default-text {
      grid-row-start: 2;
      grid-column-start: 2;
    }
}

@media (max-width: 991.98px) {
  .mod-spextension-default-main {
    display: inline-flex;
    flex-wrap: wrap;
  }
    /* Hide Banner in this display width */
    .mod-spextension-default-main > .mod-spextension-default-banner {
      display: none;
    }
    /* Hide Slogan in this display width */
    .mod-spextension-default-main > .mod-spextension-default-slogan {
      display: none;
    }
    /* Show Logo here with low opacity in the background of the text */
    .mod-spextension-default-main > .mod-spextension-default-logo {
      position: absolute;
      width: 100%;
      height: 100%;
      opacity: 40%;
    }

    /*Handle text behaviour */
  .mod-spextension-default-main > .mod-spextension-default-text {
    width: 100%;
    height: 20vh;
  }
}
