.bf-page {
   --bf-offset: 80px;

   position: relative;
   padding-bottom: var(--bf-offset);
   font-size: 28px;
   line-height: 1.4;
}

.bf-page img {
   height: auto;
}

.bf-showcase__main {
   position: relative;
}

.bf-showcase__main img {
   display: block;
   height: auto;
   border-radius: 40px;
}

.bf-offset {
   margin-top: calc(var(--bf-offset) * 2);
}

.bf-head.center {
   max-width: 1100px;
   margin: 0 auto var(--bf-offset);
}

.bf-title {
   font-size: 50px;
   line-height: 1.2;
   text-transform: uppercase;
   font-weight: bold;
   margin-bottom: 30px;
}

.bf-title span {
   color: #A5D700;
}

.bf-text {
   line-height: 1.4;
}

.bf-grey {
   color: rgba(0, 0, 0, .5);
}

.bf-tabs-list {
   display: flex;
   max-width: 1100px;
   margin: 0 auto var(--bf-offset);
   background-color: #F5F5F5;
   border-radius: 20px;
   overflow: hidden;
}

.bf-tabs-list li {
   flex-grow: 1;
   flex-basis: 0;
   display: flex;
   justify-content: center;
   align-items: center;
   height: 80px;
   cursor: pointer;
   font-size: 32px;
   line-height: 1.2;
   border-radius: 20px;
   white-space: nowrap;
}

.bf-tabs-list li.active {
   background-color: #C1ED2F;
}

.bf-blocks {
   display: grid;
   grid-template-columns: repeat(4, 1fr);
   gap: 20px;
   margin-bottom: var(--bf-offset);
}

.bf-blocks__item {
   border-radius: 20px;
   border: 1px solid #DBDBDB;
   padding: 30px;
}

.bf-blocks .N-element {
   height: 100%;
   margin-bottom: 0;
}

.bf-button {
   display: inline-flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 80px;
   max-width: 460px;
   background-color: #C1ED2F;
   color: #000;
   text-decoration: none;
   font-size: 28px;
   font-weight: bold;
   border-radius: 20px;
}

.bf-cards {
   justify-content: center;
   gap: 30px 0;
   margin-bottom: var(--bf-offset);
}

.bf-card {
   height: 100%;
   background-color: #F5F5F5;
   display: flex;
   flex-direction: column;
   overflow: hidden;
   border-radius: 20px;
}

.bf-card__content {
   flex-grow: 1;
   display: flex;
   flex-direction: column;
   padding: 40px;
   gap: 20px;
}

.bf-card__image {
   flex-shrink: 0;
}

.bf-card__text {
   color: #8D8D8D;
   flex-grow: 1;
   display: flex;
   align-items: center;
   justify-content: center;
   text-align: center;
}

.bf-card__price {
   background-color: #404040;
   padding: 30px;
   color: #fff;
   text-align: center;
   font-size: 30px;
   font-weight: bold;
}

@media (max-width: 1300px) {
   .bf-blocks {
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
   }
}

@media (max-width: 1023px) {
   .bf-blocks {
      grid-template-columns: repeat(2, 1fr);
      gap: 5px;
   }

   .bf-page {
      --bf-offset: 30px;
      font-size: 18px;
   }

   .bf-showcase__main img {
      border-radius: 16px;
   }

   .bf-title {
      font-size: 28px;
   }

   .bf-card__content {
      padding: 16px;
   }

   .bf-card__price {
      padding: 16px;
      font-size: 18px;
   }

   .bf-tabs-list {
      flex-direction: column;
      border-radius: 10px;
   }

   .bf-tabs-list li  {
      font-size: 18px;
      height: auto;
      padding: 8px 16px;
      border-radius: 10px;
   }

   .bf-button {
      height: 50px;
      font-size: 18px;
      border-radius: 10px;
   }

   .bf-blocks__item {
      border-radius: 0;
      border: none;
      padding: 0;
   }
}