.Container {
  background: $color-lightgray;
  border-radius: rem(28px);
  padding: rem(32px) 0 0;

  @include iftablet {
    padding: rem(60px) 0 rem(40px);
  }

  @include iflaptop {
    padding: rem(60px) 0 rem(60px);
  }

  @include ifdesktop {
    padding: rem(160px) 0;
  }
}

.Offer {
  margin: 0 auto;

  @include iftablet {
    width: rem(712px);
  }

  @include iflaptop {
    width: rem(930px);
  }

  @include ifdesktop {
    width: rem(1340px);
  }
}

.Top {
  padding: 0 rem(20px) rem(30px);

  @include iftablet {
    padding: 0;
  }

  .Header {
    font-family: $font-open-sans;
    font-weight: $font-semi-bold;
    font-size: rem(26px);
    line-height: 120%;
    color: $color-text;
    margin-bottom: rem(40px);

    @include iftablet {
      font-size: rem(28px);
    }

    @include iflaptop {
      font-size: rem(32px);
    }

    @include ifdesktop {
      font-size: rem(60px);
      margin-bottom: rem(80px);
    }
  }

  .Text {
    font-family: $font-open-sans;
    font-weight: $font-regular;
    font-size: rem(18px);
    line-height: 100%;
    color: $color-text;
    margin-bottom: rem(20px);

    @include iflaptop {
      font-size: rem(20px);
    }

    @include ifdesktop {
      font-size: rem(32px);
    }
  }

  .List {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: rem(30px);

    @include iftablet {
      margin-bottom: rem(40px);
    }

    @include ifdesktop {
      margin-bottom: rem(60px);
    }

    .ListItem {
      font-family: $font-open-sans;
      font-weight: $font-regular;
      font-size: rem(18px);
      line-height: 160%;
      color: $color-text;
      list-style-type: decimal;
      margin-left: rem(40px);

      @include iflaptop {
        font-size: rem(20px);
      }

      @include ifdesktop {
        font-size: rem(32px);
        margin-left: rem(40px);
      }
    }
  }
}

.Inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: $color-white;
  border-radius: rem(28px);
  padding: rem(30px) rem(20px);
  margin-bottom: rem(40px);

  @include iftablet {
    align-items: flex-start;
    padding: rem(28px) rem(20px);
  }

  @include iflaptop {
    padding: rem(40px);
    margin-bottom: rem(80px);
  }

  @include ifdesktop {
    border-radius: rem(28px);
    padding: rem(80px) rem(40px);
    margin-bottom: rem(130px);
  }

  .Title {
    font-family: $font-open-sans;
    font-weight: $font-semi-bold;
    font-size: rem(26px);
    line-height: 100%;
    color: $color-text;
    max-width: rem(320px);

    @include iftablet {
      font-size: rem(28px);
      max-width: unset;
    }

    @include iflaptop {
      font-size: rem(36px);
    }

    @include ifdesktop {
      font-size: rem(60px);
      margin-bottom: rem(40px);
    }
  }

  .Grid {
    display: grid;
    grid-template-columns: rem(320px);
    gap: rem(20px);
    padding: rem(20px) 0;

    @include iftablet {
      grid-template-rows: repeat(3, 1fr);
      grid-template-columns: repeat(2, 1fr);
      gap: rem(25px);
      padding: rem(20px) 0;
    }

    @include iflaptop {
      gap: rem(30px);
      padding: rem(40px) 0;
    }

    @include ifdesktop {
      grid-template-rows: repeat(2, 1fr);
      grid-template-columns: repeat(3, 1fr);
      gap: rem(40px);
      padding: rem(40px) 0;
    }
  }

  .Tile {
    position: relative;
    height: rem(220px);
    padding: rem(20px);
    border-radius: rem(28px);
    overflow: hidden;

    @include iflaptop {
      height: rem(260px);
    }

    @include ifdesktop {
      height: rem(352px);
      padding: rem(25px);
    }

    &:after {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      z-index: 1;
      left: 0;
      top: 0;
      background-color: rgba(#292E3D, .7);
      transition: 250ms background-color;
    }

    &:hover {
      &:after {
        background-color: rgba(#292E3D, .5);
      }

      .Title {
        display: none;
      }

      .Description {
        display: block;
      }

      .Arrow {
        transform: rotate(45deg);
        transition: transform 250ms ease-in-out;
      }
    }

    .Background {
      position: absolute;
    }

    .Title {
      position: relative;
      z-index: 2;
      font-family: $font-open-sans;
      font-weight: $font-regular;
      font-size: rem(24px);
      line-height: 100%;
      color: $color-white;

      @include iftablet {
        font-size: rem(28px);
      }

      @include iflaptop {
        font-size: rem(32px);
      }

      @include ifdesktop {
        font-size: rem(42px);
      }
    }

    .Description {
      position: relative;
      z-index: 2;
      display: none;
      font-family: $font-open-sans;
      font-weight: $font-regular;
      font-size: rem(18px);
      line-height: 130%;
      color: $color-white;

      @include iftablet {
        font-size: rem(18px);
      }

      @include iflaptop {
        font-size: rem(20px);
      }

      @include ifdesktop {
        font-size: rem(24px);
      }
    }

    .Arrow {
      position: absolute;
      z-index: 2;
      right: rem(10px);
      bottom: rem(10px);
      width: rem(40px);
      height: rem(40px);
      transform: rotate(-135deg);
      transition: transform 250ms ease-in-out;

      @include iflaptop {
        right: rem(16px);
        bottom: rem(16px);
        width: rem(48px);
        height: rem(48px);
      }

      @include ifdesktop {
        right: rem(25px);
        bottom: rem(25px);
        width: rem(64px);
        height: rem(64px);
      }
    }
  }
}


