Skip to content
Snippets Groups Projects
cta-liftup-image-text.scss 5.49 KiB
Newer Older
  • Learn to ignore specific revisions
  • :host {
      display: block;
    }
    
    $gutter-mobile: 16px;
    $gutter-narrow: 24px; //tablet
    $gutter-extrawide: 32px;
    $margin-mobile: 16px;
    $margin-narrow: 32px;
    
    /*
    The general formula of the column width for a known gutter width:
      columnWidth = ( fullWidth - marginWidth * 2 + separatorWidth * (1 - columnNb) ) / columnNb
    */
    
    /*
     Image to the left.
     Padding between image and display edge: Margin width + 1/2 column width.
     Padding between text block and display edge: Margin width + 1 column width.
    */
    
    @mixin calcComponentMargins($gutterWidth, $marginWidth, $fullWidth: 100%) {
    
      &.hy-cta-liftup-image-text {
        padding-left: calc(((#{$fullWidth} - #{$gutterWidth} * 11) / 12) / 2);
        padding-right: calc(((#{$fullWidth} - #{$gutterWidth} * 11) / 12));
    
        @content;
      }
    }
    
    /*
     Image to the right.
     Padding between image and display edge: Margin width + 1/2 column width.
     Padding between text block and display edge: Margin width + 1 column width.
     */
    
    @mixin calcComponentMarginsReversed($gutterWidth, $marginWidth, $fullWidth: 100%) {
    
      &.hy-cta-liftup-image-text {
        padding-right: calc(((#{$fullWidth} - #{$gutterWidth} * 11) / 12) / 2);
        padding-left: calc(((#{$fullWidth} - #{$gutterWidth} * 11) / 12));
    
        @content;
      }
    }
    
    
    .hy-cta-liftup-image-text {
      display: flex;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
      flex-direction: column;
      margin-bottom: 80px;
    
      @include calcComponentMargins($margin-mobile, $gutter-mobile);
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
      position: relative;
    
      @include breakpoint($narrow) {
        @include calcComponentMargins($margin-narrow, $gutter-narrow);
      }
    
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
      @include breakpoint($wide) {
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        flex-direction: row;
        margin-bottom: 96px;
    
      }
      @include breakpoint($extrawide) {
        @include calcComponentMargins($margin-narrow, $gutter-extrawide);
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
      }
    
      &--right-image {
        flex-direction: column-reverse;
    
        @include calcComponentMarginsReversed($margin-mobile, $gutter-mobile);
    
        @include breakpoint($narrow) {
          @include calcComponentMarginsReversed($margin-narrow, $gutter-narrow);
        }
    
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        @include breakpoint($wide) {
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          flex-direction: row;
        }
    
        @include breakpoint($extrawide) {
          @include calcComponentMarginsReversed($margin-narrow, $gutter-extrawide);
        }
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
    
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        @include breakpoint($wide) {
    
          flex: calc(((100% - #{$gutter-narrow} * 11) / 12) * 6 + #{$gutter-narrow} * 5);
        }
        @include breakpoint($extrawide) {
          flex: calc(((100% - #{$gutter-extrawide} * 11) / 12) * 6 + #{$gutter-extrawide} * 5);
    
        }
      }
    
      &__text-container {
        background: var(--grayscale-white);
    
        border-image: none;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        display: flex;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        flex-direction: column;
        justify-content: center;
    
        -webkit-border-image: none;
        -moz-border-image: none;
        -o-border-image: none;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        @include breakpoint($medium) {
    
          border-left: 1px solid transparent;
          border-image: linear-gradient(to bottom, var(--grayscale-medium-dark), rgba(0, 0, 0, 0)) 1 0 0 100%;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          margin-left: 66px;
          margin-top: -63px;
          padding-top: 38px;
          padding-left: 50px;
          position: relative;
          z-index: 99;
    
          -webkit-border-image: -webkit-linear-gradient(to bottom, var(--grayscale-medium-dark), rgba(0, 0, 0, 0)) 1 0 0
            100%;
    
          -moz-border-image: linear-gradient(to bottom, var(--grayscale-medium-dark), rgba(0, 0, 0, 0)) 1 0 0 100%;
          -o-border-image: linear-gradient(to bottom, var(--grayscale-medium-dark), rgba(0, 0, 0, 0)) 1 0 0 100%;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        }
    
        @include breakpoint($wide) {
    
          border-image: none;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          border-left: none;
    
          flex: calc(((100% - #{$gutter-narrow} * 11) / 12) * 6 + #{$gutter-narrow} * 6);
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          margin-left: 0;
          margin-top: 0;
          padding-top: 0;
          padding-left: 0;
          z-index: 0;
    
          -webkit-border-image: none;
          -moz-border-image: none;
          -o-border-image: none;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        }
    
        @include breakpoint($extrawide) {
          flex: calc(((100% - #{$gutter-extrawide} * 11) / 12) * 6 + #{$gutter-extrawide} * 6);
        }
    
          // Padding between text block and display edge: Margin width + 1 column width.
          @include breakpoint($medium) {
    
            padding-right: calc(#{$margin-narrow} + ((100% - #{$gutter-narrow} * 11) / 12));
    
          }
          @include breakpoint($extrawide) {
    
            padding-right: calc(#{$margin-narrow} + ((100% - #{$gutter-extrawide} * 11) / 12));
    
          // Padding between text block and display edge: Margin width + 1 column width.
          @include breakpoint($medium) {
    
            padding-left: calc(#{$margin-narrow} + ((100% - #{$gutter-narrow} * 11) / 12));
    
          }
          @include breakpoint($extrawide) {
    
            padding-left: calc(#{$margin-narrow} + ((100% - #{$gutter-extrawide} * 11) / 12));
    
        &__title {
          color: var(--brand-main-nearly-black);
    
          font-family: var(--main-font-family);
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          font-size: 22px;
    
          font-weight: 600;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          letter-spacing: -0.69px;
          line-height: 28px;
          margin-top: 32px;
          @include breakpoint($medium) {
            font-size: 26px;
            letter-spacing: -0.82px;
            line-height: 32px;
            margin-top: 0;
          }
    
        }
    
        &__description {
          color: var(--grayscale-dark);
    
          font-family: var(--main-font-family);
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          font-size: 14px;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          letter-spacing: 0;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          line-height: 20px;
    
          margin: 20px 0 32px 0;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          @include breakpoint($medium) {
            font-size: 16px;
            letter-spacing: 0;
            line-height: 24px;
    
            margin: 24px 0 40px 0;
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
          }
    
        &__link {
          margin-bottom: 32px;
        }
    
    
    Ekaterina Kondareva's avatar
    Ekaterina Kondareva committed
        &__standalonelink {
    
          margin-bottom: 32px;