/* =========================================
   WHAT WE DO — plain overview band
   White pitch on the left, deep-purple steps
   panel on the right that hands the eye over
   to the dark journey section below.
   ========================================= */

.wwd-section {
    width: 100%;
    background: #FFFFFF;
    padding: 24px 40px 96px;
    box-sizing: border-box;
}

.wwd-inner {
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 0.85fr 1.15fr;
    gap: 64px;
    align-items: start;
}

/* ----- Left: the pitch ----- */
.wwd-head {
    position: sticky;
    top: 110px;
}

.wwd-eyebrow {
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #B8860B;
    margin: 0 0 18px;
}

.wwd-title {
    font-family: var(--font-heading);
    font-size: clamp(2rem, 3.4vw, 2.9rem);
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: 1.18;
    color: #1A0A3C;
    margin: 0 0 22px;
}

.wwd-intro {
    font-family: var(--font-body);
    font-size: 1.02rem;
    line-height: 1.75;
    color: rgba(26, 10, 60, 0.72);
    margin: 0 0 34px;
    max-width: 380px;
}

.wwd-cta {
    display: inline-block;
    padding: 13px 32px;
    background: #1A0A3C;
    color: #FFFFFF;
    font-family: var(--font-body);
    font-size: 13.5px;
    font-weight: 600;
    letter-spacing: 0.3px;
    border-radius: 3px;
    text-decoration: none;
    transition: background 0.3s ease, transform 0.3s ease;
}

.wwd-cta:hover {
    background: #FDB71A;
    color: #1A0A3C;
    transform: translateY(-2px);
}

.wwd-cta-note {
    font-family: var(--font-body);
    font-size: 0.82rem;
    color: rgba(26, 10, 60, 0.45);
    margin: 12px 0 0;
}

/* ----- Right: the three steps on deep purple ----- */
.wwd-steps {
    background:
        radial-gradient(520px 320px at 85% 0%, rgba(253, 183, 26, 0.10), transparent 65%),
        #1A0A3C;
    border-radius: 22px 4px 22px 22px;
    padding: 14px 44px 18px;
    box-shadow: 0 34px 70px -32px rgba(26, 10, 60, 0.55);
}

.wwd-step {
    display: grid;
    grid-template-columns: 84px 1fr;
    gap: 26px;
    padding: 32px 0 34px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.wwd-step:last-child {
    border-bottom: none;
}

.wwd-num {
    font-family: var(--font-heading);
    font-size: 2.4rem;
    font-weight: 500;
    font-style: italic;
    line-height: 1;
    color: #FDB71A;
    padding-top: 2px;
    transition: transform 0.35s ease;
}

.wwd-step:hover .wwd-num {
    transform: translateX(6px);
}

.wwd-step-title {
    font-family: var(--font-heading);
    font-size: 1.35rem;
    font-weight: 600;
    color: #FFFFFF;
    margin: 0 0 10px;
    letter-spacing: -0.005em;
}

.wwd-step-body {
    font-family: var(--font-body);
    font-size: 0.98rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.72);
    margin: 0 0 12px;
}

.wwd-step-why {
    font-family: var(--font-heading);
    font-style: italic;
    font-size: 0.98rem;
    color: #FDB71A;
    margin: 0;
}

/* ----- Responsive ----- */
@media (max-width: 900px) {
    .wwd-inner {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .wwd-head {
        position: static;
    }

    .wwd-intro {
        max-width: none;
    }

    .wwd-steps {
        padding: 8px 30px 12px;
    }
}

@media (max-width: 640px) {
    .wwd-section {
        padding: 8px 20px 64px;
    }

    .wwd-steps {
        padding: 4px 22px 8px;
        border-radius: 16px 4px 16px 16px;
    }

    .wwd-step {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 24px 0 26px;
    }

    .wwd-num {
        font-size: 1.9rem;
    }
}
