.text-and-numbers {
    background: #F5F5F5;
}

.text-and-numbers__wrapper {
    display: flex;
    flex-direction: column;
    gap: clamp(32px, 3.33vw, 64px);
    width: 100%;
}

.text-and-numbers-columns .text-and-numbers-items {
    max-width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
    gap: clamp(20px, 3.44vw, 66px);
}

.text-and-numbers-columns .text-and-numbers-items .text-and-numbers-item {
    flex-direction: column;
    align-items: flex-start;
    display: flex;
    width: calc((100% - 3 * clamp(20px, 3.44vw, 66px)) / 4);
    border: none;
    padding: 0;
    gap: clamp(10px, 0.83vw, 16px);
}

.text-and-numbers-columns .text-and-numbers-items .text-and-numbers-item .text-section {
    display: flex;
    flex-direction: column;
    gap: clamp(8px, 0.83vw, 16px);
    margin-top: clamp(6px, 0.52vw, 10px);
    width: 100%;
}

.text-and-numbers__title {
    font-family: PP Neue Montreal, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(32px, 2.92vw, 56px);
    leading-trim: NONE;
    text-align: center;
    line-height: 130%;
    letter-spacing: 0%;
    text-transform: uppercase;
    color: var(--gray-100);
}

.text-and-numbers-items {
    display: flex;
    max-width: clamp(960px, 67.7vw, 1300px);
    width: 100%;
    margin: 0 auto;
    flex-direction: column;
}

.text-and-numbers-item {
    display: grid;
    grid-template-columns: clamp(50px, 4vw, 80px) clamp(200px, 15.6vw, 300px) clamp(380px, 29.17vw, 560px);
    justify-content: space-between;
    align-items: center;
    padding: clamp(24px, 2.5vw, 48px) 0;
    border-bottom: 0.5px solid #00000049;
    width: 100%;
}

.text-and-numbers-item:last-child {
    border-bottom: none;
}

.text-and-numbers-item .number {
    font-family: Nib Pro;
    font-weight: 500;
    font-style: Italic;
    font-size: clamp(28px, 2.5vw, 48px);
    leading-trim: NONE;
    line-height: 130%;
    letter-spacing: 0%;
    color: #161616;
    white-space: nowrap;
}

.text-and-numbers-item .text-section {
    display: contents;
}

.text-and-numbers-item__title {
    display: flex;
    width: 100%;
    max-width: clamp(200px, 15.6vw, 300px);
    font-family: PP Neue Montreal, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(14px, 1.04vw, 20px);
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    text-transform: uppercase;
    color: #161616;
}

.text-and-numbers-item__description {
    width: 100%;
    max-width: clamp(380px, 29.17vw, 560px);
    font-family: PP Neue Montreal, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: clamp(14px, 0.94vw, 18px);
    leading-trim: NONE;
    line-height: 140%;
    letter-spacing: 0%;
    color: #161616;
}

@media (max-width: 1024px) {
    .text-and-numbers {
        padding: clamp(48px, 10vw, 80px) 0;
    }

    .text-and-numbers__title {
        text-align: left;
        font-size: clamp(26px, 6.5vw, 36px);
        line-height: 120%;
        text-transform: uppercase;
        margin-bottom: clamp(28px, 6vw, 40px);
    }

    .text-and-numbers__wrapper {
        gap: 0;
    }

    .text-and-numbers-items,
    .text-and-numbers-columns .text-and-numbers-items {
        display: flex;
        flex-direction: column;
        gap: clamp(32px, 7vw, 48px);
        width: 100%;
    }

    .text-and-numbers-item,
    .text-and-numbers-columns .text-and-numbers-items .text-and-numbers-item {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: clamp(8px, 2vw, 12px);
        padding: 0;
        border: none !important;
        border-bottom: none !important;
        width: 100%;
    }

    .text-and-numbers-item .number {
        font-family: Nib Pro, serif;
        font-weight: 400;
        font-style: italic;
        font-size: clamp(36px, 9vw, 48px);
        line-height: 100%;
        color: #161616;
    }

    .text-and-numbers-item .text-section,
    .text-and-numbers-columns .text-and-numbers-items .text-and-numbers-item .text-section {
        display: flex;
        flex-direction: column;
        gap: clamp(6px, 1.5vw, 10px);
        margin: 0;
        width: 100%;
    }

    .text-and-numbers-item__title {
        font-family: PP Neue Montreal, sans-serif;
        font-weight: 500;
        font-size: clamp(15px, 3.8vw, 18px);
        line-height: 130%;
        text-transform: uppercase;
        color: #161616;
        max-width: 100%;
    }

    .text-and-numbers-item__description {
        font-family: PP Neue Montreal, sans-serif;
        font-weight: 400;
        font-size: clamp(13px, 3.4vw, 15px);
        line-height: 145%;
        color: var(--gray-90, #555);
        max-width: 100%;
    }
}
