/* our process section css start */

/* ==========================================================================
   Section wrapper
   ========================================================================== */
.our-process-sec {
    background-color: #F7F9F4;
    padding: 126px 0 90px;
}

/* ==========================================================================
   Heading row — page number + big heading side by side
   Figma: page# at x:155, h2 at x:350 (195px offset from content left)
   ========================================================================== */
.our-process-sec .heading-section {
    display: flex;
    align-items: flex-start;
    gap: 0;
    margin-bottom: 40px;
}

/* Page number — narrow column, auto-generated by ech_block_index() */
.our-process-sec .heading-section .heading-number {
    flex: 0 0 195px; /* pushes heading-title to x:350 equivalent */
    display: flex;
    flex-direction: column;
    font-size: 1.875rem; /* 30px — matches figma */
    line-height: 1.2;
    padding-top: 6px;   /* align baseline with h2 cap-height */
}

.our-process-sec .heading-section .heading-number p {
    margin: 0;
    color: var(--black-text);
}

/* "/ 0.5" line gets the teal accent */
.our-process-sec .heading-section .heading-number p:last-child {
    color: var(--primary-text-color);
}

/* Big heading column */
.our-process-sec .heading-section .heading-title {
    flex: 1;
}

.our-process-sec .heading-section .heading-title h2 {
    margin: 0;
    font-size: clamp(52px, 6.25vw, 90px); /* 90px @ 1440px */ /* "OUR" is regular weight */
    letter-spacing: -0.05em;              /* matches figma -4.5px @ 90px */
    line-height: 0.9;
    text-transform: uppercase;
    color: var(--black-text);
}

/* "PROCESS" — light teal, bold */
.our-process-sec .heading-section .heading-title h2 strong {
    font-weight: 700;
    color: var(--primary-text-color);
}

/* ==========================================================================
   Sub-title — flush left, below heading row
   Figma: 30px, Helvetica Bold, uppercase, teal #1189a1
   ========================================================================== */
.our-process-subtitle {
    margin: 0 0 48px;
    font-size: 1.875rem; /* 30px */
    font-weight: 700;
    text-transform: uppercase;
    color: var(--secondary-bg);
    line-height: 1.2;
}

/* ==========================================================================
   Feature columns — 4-up grid
   Figma: columns at x 155, 459, 763, 1067 — gap ~62px, col-width ~242px
   ========================================================================== */
.our-process-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

.our-process-feature .h3 {
    margin: 0 0 18px;
    font-size: 0.875rem;   /* ~14px — matches figma small uppercase label */
    font-weight: 700;
    letter-spacing: -0.04em;
    text-transform: uppercase;
    color: var(--black-text);
    line-height: 1.3;
}

.our-process-feature p {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.65;
    color: var(--black-text);
}

/* ==========================================================================
   Responsive — Tablet (max 1199px)
   ========================================================================== */
@media screen and (max-width: 1199px) {
    .our-process-sec {
        padding: 100px 0 75px;
    }
}

/* ==========================================================================
   Responsive — Small tablet (max 991px)
   ========================================================================== */
@media screen and (max-width: 991px) {
    .our-process-sec {
        padding: 80px 0 60px;
    }

    .our-process-sec .heading-section .heading-number {
        flex: 0 0 130px;
    }

    .our-process-features {
        grid-template-columns: repeat(2, 1fr);
        gap: 32px;
    }
}

/* ==========================================================================
   Responsive — Mobile (max 767px)
   ========================================================================== */
@media screen and (max-width: 767px) {
    .our-process-sec {
        padding: 60px 0 50px;
    }

    .our-process-sec .heading-section {
        flex-direction: column;
        gap: 12px;
        margin-bottom: 28px;
    }

    .our-process-sec .heading-section .heading-number {
        flex: none;
    }

    .our-process-subtitle {
        font-size: 1.375rem; /* scale down on mobile */
        margin-bottom: 32px;
    }

    .our-process-features {
        grid-template-columns: 1fr;
        gap: 28px;
    }
}

/* our process section css end */
