/* ЭТАПЫ РАБОТЫ — статичная сетка в один экран, без слайдера */
#steps-block {
  overflow: hidden;
  margin-bottom: clamp(40px, 4vw, 70px) !important; }
#steps-block .title-group {
  margin-bottom: 18px; }
  #steps-block .steps-swiper {
    overflow: visible; }
  /* глушим механику swiper: все шаги видны сразу */
  #steps-block .steps-swiper .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr);
    gap: clamp(14px, 1.2vw, 22px);
    transform: none !important;
    height: auto !important; }
    @media (max-width: 1250px) {
      #steps-block .steps-swiper .swiper-wrapper {
        grid-template-columns: repeat(3, 1fr); } }
    @media (max-width: 800px) {
      #steps-block .steps-swiper .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr); } }
    @media (max-width: 520px) {
      #steps-block .steps-swiper .swiper-wrapper {
        grid-template-columns: 1fr; } }
  #steps-block .steps-swiper .swiper-slide {
    width: auto !important;
    margin: 0 !important;
    height: auto; }
  #steps-block .swiper-nav {
    display: none !important; }

  #steps-block .steps-swiper .step {
    position: relative;
    height: 100%;
    padding: clamp(14px, 1vw + 11px, 22px);
    padding-top: clamp(18px, 1.2vw + 14px, 26px);
    border: 1px solid var(--stroke);
    background:
      radial-gradient(300px 180px at 85% -10%, rgba(121, 168, 78, 0.12) 0%, transparent 60%),
      linear-gradient(165deg, #FFFFFF 0%, #F5F8EE 100%);
    border-radius: 18px;
    box-shadow: 0 10px 26px rgba(38, 51, 43, 0.06);
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease; }
    #steps-block .steps-swiper .step::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      height: 3px;
      width: 46px;
      border-radius: 0 0 3px 0;
      background: linear-gradient(90deg, var(--primary), var(--accent-warm));
      transition: width 0.4s ease; }
    #steps-block .steps-swiper .step:hover {
      transform: translateY(-6px);
      border-color: rgba(121, 168, 78, 0.55);
      box-shadow:
        0 22px 44px rgba(38, 51, 43, 0.14),
        0 0 28px rgba(121, 168, 78, 0.1); }
      #steps-block .steps-swiper .step:hover::before {
        width: 100%; }
      #steps-block .steps-swiper .step__top {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        align-items: center;
        margin-bottom: clamp(14px, 1vw, 22px); }
        #steps-block .steps-swiper .step__top .num {
          font-family: var(--font-display);
          font-weight: 700;
          font-size: 17px;
          line-height: 100%;
          width: 44px;
          height: 44px;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #FFFFFF;
          background: linear-gradient(140deg, #4A4D4A 0%, #2B2D2B 100%);
          box-shadow: 0 6px 14px rgba(43, 45, 43, 0.3);
          border-radius: 50%; }
        #steps-block .steps-swiper .step__top svg {
          width: 24px;
          height: 24px;
          opacity: 0.45;
          transition: opacity 0.3s ease, transform 0.3s ease; }
        #steps-block .steps-swiper .step:hover .step__top svg {
          opacity: 1;
          transform: translateX(4px); }
      #steps-block .steps-swiper .step__title {
        margin-bottom: 12px;
        font-size: clamp(16px, 0.4vw + 14.7px, 19px);
        font-weight: 700;
        line-height: 135%; }
      #steps-block .steps-swiper .step__text {
        margin-bottom: auto;
        color: var(--light-text);
        font-size: 15px;
        line-height: 150%; }
