.section-three-columns {
    padding: 40px 0 80px;
}

.section-three-columns--purple .container {
    background-color: var(--color-milky-way);
    color: black;
    border-radius: 20px;
    padding: 60px 40px 0 40px;
}

.section-three-columns--white .container {
    background-color: var(--color-white);
    color: black;
    border-radius: 20px;
    padding: 60px 40px 0 40px;
}

.section-three-columns--green .container {
    background-color: var(--color-jungle-green);
    color: var(--color-white);
    border-radius: 20px;
    padding: 60px 40px 0 40px;
}

.three-columns-header {
    text-align: center;
    max-width: 716px;
    margin: 0 auto 40px;
}

.three-columns-heading {
    font-size: 46px;
    font-weight: 600;
    line-height: 1.15;
    margin-bottom: 20px;
    color: black;

}

.three-columns-subtitle {
    font-size: 20px;
    line-height: 1.5;
    color: black;

}

.three-columns-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 60px;
}

.three-columns-item{
    background: var(--color-moonlight);
    border-radius: 28px;
    padding: 40px;
}

.three-columns-item__title {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 16px;
    line-height: 1.2;
    color: var(--color-black);
}

.three-columns-item__desc {
    font-size: 16px;
    line-height: 1.6;
    opacity: 0.85;
    color: var(--color-black);
}

.three-columns-cta {
    text-align: center;
    a{padding: 16px 46px;}
}

.section-three-columns--purple .three-columns-cta{
    padding-bottom: 40px;
}
/* Cream variant (numbered cards — consulting page) */
.section-three-columns--cream {
    background-color: #fdfffa;
}

.section-three-columns--cream .container {
    background-color: #fdfffa;
    color: var(--color-dark-matter);
    border-radius: 20px;
    padding: 60px 40px 0 40px;
}

.section-three-columns--cream .three-columns-grid {
    counter-reset: step-counter;
}

.section-three-columns--cream .three-columns-item {
    counter-increment: step-counter;
    background: var(--color-moonlight);
    border-radius: 20px;
}

.section-three-columns--cream .three-columns-item::before {
    content: "0" counter(step-counter);
    font-family: var(--font-body);
    font-weight: 600;
    font-size: 28px;
    color: var(--color-milky-dark);
    display: block;
    margin-bottom: 24px;
}

.section-three-columns--cream .three-columns-cta a {
    background-color: var(--color-milky-way);
    color: #081717;
    svg {
        path{
            fill: #153A39;
        }
    }
}

.section-three-columns--cream .three-columns-cta a:hover {
    opacity: 0.9;
}

@media (max-width: 650px){
    .section-three-columns--cream .three-columns-item::before {
        margin-bottom: 10px;
        line-height: 1;
    }
}