.mama-baby-hero{
        position:relative;
        min-height:100svh;
        padding:clamp(132px,15vh,166px) 0 clamp(118px,14vh,152px);
        overflow:hidden;
        background:#FDF2F0;
        color:#4d3d42;
    }

    .training-hero-atmosphere{
        position:absolute;
        inset:0;
        z-index:0;
        overflow:hidden;
        pointer-events:none;
    }

    .training-hero-contours{
        position:absolute;
        top:-2%;
        left:-2%;
        width:104%;
        height:104%;
        overflow:visible;
    }

    .training-hero-contour{
        fill:none;
        stroke-linecap:round;
        stroke-linejoin:round;
        vector-effect:non-scaling-stroke;
    }

    .training-hero-contour--top{
        stroke:rgba(217,140,151,.38);
        stroke-width:.85;
    }

    .training-hero-contour--top-soft{
        stroke:rgba(217,140,151,.23);
        stroke-width:.65;
    }

    .training-hero-contour--bottom{
        stroke:rgba(217,140,151,.34);
        stroke-width:.8;
    }

    .training-hero-contour--bottom-soft{
        stroke:rgba(217,140,151,.20);
        stroke-width:.65;
    }

    .mama-baby-hero-shell{
        position:relative;
        z-index:2;
        display:grid;
        grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
        gap:clamp(52px,7vw,112px);
        align-items:center;
        min-height:calc(100svh - clamp(250px,29vh,318px));
    }

    .mama-baby-hero-copy{
        width:100%;
        max-width:700px;
        align-self:center;
    }

    .mama-baby-hero-copy>p{
        margin:0 0 12px;
        color:#c88796;
        font-family:"Caveat",cursive;
        font-size:38px;
        line-height:1;
        font-weight:400;
    }

    .mama-baby-hero-copy h1{
        max-width:720px;
        margin:0;
        color:#4d3d42;
        font-family:"Cormorant Garamond",serif;
        font-size:clamp(48px,5vw,78px);
        line-height:.91;
        letter-spacing:-.045em;
        font-weight:500;
    }

    .mama-baby-hero-copy h1 span{
        display:block;
        margin-top:10px;
        color:#d98c97;
        font-family:"Caveat",cursive;
        font-size:.92em;
        line-height:.92;
        font-weight:400;
        letter-spacing:-.02em;
    }

    .mama-baby-hero-text{
        max-width:640px;
        margin-top:28px;
    }

    .mama-baby-hero-text p{
        margin:0;
        color:#77666b;
        font-family:"Montserrat",sans-serif;
        font-size:16px;
        line-height:1.78;
        font-weight:400;
    }

    .mama-baby-hero-text p+p{
        margin-top:15px;
    }

    .mama-baby-hero-copy .btn{
        margin-top:30px;
        font-family:"Montserrat",sans-serif;
    }

    .mama-baby-hero-visual{
        position:relative;
        min-height:620px;
        display:flex;
        align-items:center;
        justify-content:flex-end;
    }

    .mama-baby-drawing{
        display:block;
        width:min(100%,610px);
        height:auto;
        overflow:visible;
    }

    .mama-baby-drawing-circle{
        fill:#e7c6c4;
        opacity:.72;
    }

    .pregnancy-hero-mask-lines{
        fill:none;
        stroke:#fff;
        stroke-width:13;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    .pregnancy-hero-mask-path{
        stroke-dasharray:1;
        stroke-dashoffset:1;
        vector-effect:non-scaling-stroke;
    }

    .mama-baby-hero-visual.visible .pregnancy-hero-mask-path{
        animation:pregnancyHeroDraw var(--draw-duration) cubic-bezier(.22,.61,.36,1) var(--draw-delay) forwards;
    }

    .pregnancy-hero-art-image{
        opacity:.98;
    }

    .pregnancy-hero-top-fix{
        fill:none;
        stroke:#8f5967;
        stroke-width:1.25;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    .pregnancy-hero-top-fix-path{
        stroke-dasharray:1;
        stroke-dashoffset:1;
        vector-effect:non-scaling-stroke;
    }

    .mama-baby-hero-visual.visible .pregnancy-hero-top-fix-path{
        animation:pregnancyHeroDraw var(--draw-duration) cubic-bezier(.22,.61,.36,1) var(--draw-delay) forwards;
    }

    @keyframes pregnancyHeroDraw{
        to{
            stroke-dashoffset:0;
        }
    }

    .mama-baby-hero-wave{
        position:absolute;
        z-index:1;
        left:0;
        right:0;
        bottom:-1px;
        height:clamp(82px,12vh,132px);
        pointer-events:none;
    }

    .mama-baby-hero-wave svg{
        display:block;
        width:100%;
        height:100%;
    }

    .mama-baby-hero-wave-shape{
        fill:#FFFAF7;
    }

    .mama-baby-hero-wave-line{
        fill:none;
        stroke:rgba(217,140,151,.28);
        stroke-width:1.4;
    }

    @media (max-width:1180px){
        .training-hero-contours{
            left:-10%;
            width:120%;
        }
    }

    @media (max-width:980px){
        .training-hero-contours{
            top:0;
            left:-14%;
            width:128%;
            height:100%;
        }

        .mama-baby-hero{
            min-height:auto;
            padding:124px 0 120px;
        }

        .mama-baby-hero-shell{
            grid-template-columns:1fr;
            gap:42px;
            min-height:0;
        }

        .mama-baby-hero-copy{
            max-width:760px;
        }

        .mama-baby-hero-visual{
            width:min(100%,650px);
            min-height:0;
            margin-left:auto;
            margin-right:auto;
            justify-content:center;
        }

        .mama-baby-drawing{
            width:min(100%,580px);
        }
    }

    @media (max-width:620px){
        .training-hero-contour--top-soft,
        .training-hero-contour--bottom-soft{
            display:none;
        }

        .training-hero-contour--top{
            stroke:rgba(217,140,151,.30);
            stroke-width:.7;
        }

        .training-hero-contour--bottom{
            stroke:rgba(217,140,151,.26);
            stroke-width:.7;
        }

        .training-hero-contours{
            left:-28%;
            width:156%;
        }

        .mama-baby-hero{
            padding:110px 0 96px;
        }

        .mama-baby-hero-shell{
            gap:30px;
        }

        .mama-baby-hero-copy{
            text-align:center;
        }

        .mama-baby-hero-copy>p{
            font-size:32px;
        }

        .mama-baby-hero-copy h1{
            font-size:clamp(44px,12.5vw,60px);
        }

        .mama-baby-hero-text{
            margin-left:auto;
            margin-right:auto;
        }

        .mama-baby-hero-text p{
            font-size:14px;
        }

        .mama-baby-drawing{
            width:min(100%,460px);
        }

        .mama-baby-hero-wave{
            height:66px;
        }
    }

    @media (prefers-reduced-motion:reduce){
        .pregnancy-hero-mask-path,
        .pregnancy-hero-top-fix-path{
            stroke-dashoffset:0;
            animation:none !important;
        }
    }
