.section-steps .section-header {
    text-align: center;
}

.steps-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--item-gap);

    @media (min-width: 768px) {
        grid-template-columns: repeat(2, 1fr);
        gap: calc(var(--item-gap) * 1.33) calc(var(--item-gap) * 3);
    }
}

.section-steps.steps-layout-single {
    .steps-grid {
        max-width: 1000px;
        margin-left: auto;
        margin-right: auto;
        
        @media (min-width: 768px) {
            grid-template-columns: 1fr;
            gap: var(--item-gap);
        }
    }
}

.step-item {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--item-gap) * .75);
}

.step-icon {
    flex-shrink: 0;
    width: calc(var(--item-gap) * 2);
    height: calc(var(--item-gap) * 2);
    border-radius: 50%;
    background: var(--medium);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--text-base);
    font-weight: 700;
}

.bg-medium .step-icon {
    background-color: var(--medium-dim);
}

.step-check {
    display: flex;
    align-items: center;
    justify-content: center;
}

.steps-check {
    .step-check i {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
        transition: clip-path 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
    }

    .step-item:hover .step-check i {
        animation: checkDrawIn 1s cubic-bezier(0.22, 0.61, 0.36, 1);
    }

    .step-number {
        display: none;
    }
}

@keyframes checkDrawIn {
    0% {
        clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
        transform: scale(0.8);
    }

    60% {
        clip-path: polygon(0 0, 110% 0, 110% 100%, 0 100%);
        transform: scale(1.15);
    }

    100% {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
        transform: scale(1);
    }
}

.step-number {
    display: flex;
    align-items: center;
    justify-content: center;
}

.steps-number {
    .step-check {
        display: none;
    }
}

.step-content {
    h3 {
        font-size: var(--text-h5);
        margin: 0 0 calc(var(--item-gap) * .25);
    }

    p {
        font-size: var(--text-sm);
        line-height: 1.6;
        margin: 0;
    }
}