.mb-flow{
        padding:58px 0 88px;
        background:linear-gradient(180deg,#fffaf7 0%,#fdf2f0 100%);
        overflow:hidden
    }

    .mb-flow-grid{
        display:grid;
        grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
        gap:clamp(28px,4vw,64px);
        align-items:center
    }

    .mb-flow-copy h2{
        margin:0;
        color:#4d3d42;
        font-size:clamp(38px,3.8vw,58px);
        line-height:.98;
        font-weight:500;
        letter-spacing:-.04em
    }

    .mb-flow-steps{
        display:grid;
        gap:16px;
        margin-top:26px
    }

    .mb-flow-steps article{
        display:grid;
        grid-template-columns:52px 1fr;
        gap:16px;
        align-items:start;
        padding:18px 20px;
        border-radius:24px;
        background:#fffdfb;
        border:1px solid rgba(107,36,55,.08)
    }

    .mb-flow-steps i{
        width:52px;
        height:52px;
        display:grid;
        place-items:center;
        border-radius:56% 44% 58% 42% / 44% 56% 44% 56%;
        background:#f7e2e0;
        color:#c86f82;
        font-size:17px
    }

    .mb-flow-steps strong{
        display:block;
        color:#4d3d42;
        font-family:var(--serif);
        font-size:28px;
        line-height:1.02;
        font-weight:600
    }

    .mb-flow-steps p{
        margin:8px 0 0;
        color:#7a676d;
        font-size:14px;
        line-height:1.72
    }

    .mb-flow-visual{
        position:relative;
        min-height:610px;
        display:flex;
        align-items:center;
        justify-content:flex-start;
        padding:18px 0 16px 20px;
        overflow:visible
    }

    .mb-flow-shape{
        position:absolute;
        z-index:0;
        display:block;
        pointer-events:none
    }

    .mb-flow-shape--large{
        top:56px;
        left:12px;
        width:445px;
        height:485px;
        border-radius:57% 43% 52% 48% / 42% 58% 42% 58%;
        background:rgba(237,183,189,.42);
        transform:rotate(-7deg)
    }

    .mb-flow-shape--small{
        right:-26px;
        bottom:16px;
        width:245px;
        height:265px;
        border-radius:42% 58% 63% 37% / 56% 42% 58% 44%;
        background:rgba(246,221,223,.92);
        transform:rotate(8deg)
    }

    .mb-flow-photo{
        position:relative;
        z-index:1;
        overflow:hidden;
        background:#f0dcda
    }

    .mb-flow-photo img{
        display:block;
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:center
    }

    .mb-flow-photo--large{
        width:min(100%,500px);
        height:570px;
        border-radius:44% 56% 39% 61% / 34% 43% 57% 66%;
        transform:rotate(-1.5deg)
    }

    .mb-flow-photo--large img{
        transform:scale(1.04) rotate(1.5deg)
    }

    .mb-flow-photo--small{
        position:absolute;
        z-index:2;
        right:-10px;
        bottom:34px;
        width:215px;
        height:250px;
        border-radius:62% 38% 56% 44% / 42% 56% 44% 58%;
        transform:rotate(4deg)
    }

    .mb-flow-photo--small img{
        transform:scale(1.08) rotate(-4deg)
    }

    @media (max-width:980px){
        .mb-flow-grid{
            grid-template-columns:1fr
        }

        .mb-flow-visual{
            order:-1;
            min-height:560px;
            max-width:600px;
            width:100%;
            margin-inline:auto;
            padding-left:10px
        }

        .mb-flow-shape--large{
            top:54px;
            left:50%;
            width:410px;
            height:445px;
            transform:translateX(-57%) rotate(-7deg)
        }

        .mb-flow-shape--small{
            right:-6px;
            bottom:14px;
            width:220px;
            height:240px
        }

        .mb-flow-photo--large{
            width:min(100%,480px);
            height:530px
        }

        .mb-flow-photo--small{
            right:0;
            width:190px;
            height:220px
        }
    }

    @media (max-width:620px){
        .mb-flow{
            padding:40px 0 72px
        }

        .mb-flow-copy h2{
            font-size:clamp(34px,10vw,47px)
        }

        .mb-flow-steps strong{
            font-size:24px
        }

        .mb-flow-visual{
            min-height:390px;
            padding:0
        }

        .mb-flow-shape--large{
            top:18px;
            left:48%;
            width:290px;
            height:320px;
            transform:translateX(-50%) rotate(-6deg)
        }

        .mb-flow-shape--small{
            right:-5px;
            bottom:-15px;
            width:165px;
            height:185px;
            transform:rotate(7deg)
        }

        .mb-flow-photo--large{
            width:92%;
            height:360px;
            border-radius:38% 62% 42% 58% / 32% 40% 60% 68%;
            transform:none
        }

        .mb-flow-photo--large img{
            transform:scale(1.04)
        }

        .mb-flow-photo--small{
            right:2px;
            bottom:-8px;
            width:145px;
            height:170px;
            border-radius:54% 46% 58% 42% / 43% 58% 42% 57%;
            transform:rotate(3deg)
        }

        .mb-flow-photo--small img{
            transform:scale(1.08) rotate(-3deg)
        }
    }

.mb-flow--pregnancy .mb-flow-photo--small{
    width:min(88%,360px);
    height:260px;
    right:0;
    bottom:0;
    border-radius:36px 58px 42px 64px;
}
.mb-flow--pregnancy .mb-flow-photo--small img{
    object-position:center 32%;
    transform:none;
}
@media(max-width:620px){
    .mb-flow--pregnancy .mb-flow-photo--small{width:78%;height:210px;bottom:-8px;border-radius:28px 44px 32px 48px;}
}
