/* NG08 STEP 36.1 — Sourcing geometry + moving glow dot */

@media(min-width:1051px){

    /* Equal internal geometry for all four journey cards */
    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey{
        align-items:stretch;
    }

    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey-card{
        display:grid !important;
        grid-template-rows:
            42px   /* node */
            52px   /* spacer to title system */
            14px   /* eyebrow */
            52px   /* title zone */
            78px   /* body copy zone */
            1fr    /* flexible breathing space */
            18px;  /* CTA zone */

        min-height:354px;
        padding:20px 17px 17px !important;
    }

    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey-card__node{
        grid-row:1;
        margin:0 !important;
        align-self:start;
    }

    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey-card small{
        grid-row:3;
        align-self:end;
        margin:0 !important;
    }

    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey-card strong{
        grid-row:4;
        align-self:start;
        margin:7px 0 0 !important;

        display:flex;
        align-items:flex-start;

        min-height:52px;

        line-height:1.04 !important;
    }

    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey-card p{
        grid-row:5;
        align-self:start;
        margin:8px 0 0 !important;

        max-width:100%;
        min-height:78px;
    }

    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey-card > span{
        grid-row:7;
        align-self:end;
        margin:0 !important;
        padding:0 !important;
    }

    /*
     * Moving glow dot.
     * Runs continuously across the existing sourcing timeline.
     */
    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey::after{
        content:"";
        position:absolute;
        top:48px;
        left:8%;
        z-index:3;

        width:9px;
        height:9px;
        margin-top:0;

        border-radius:50%;

        background:var(--ng-wow-accent);
        box-shadow:
            0 0 5px rgba(183,213,50,.95),
            0 0 13px rgba(183,213,50,.72),
            0 0 25px rgba(183,213,50,.34);

        transform:translateX(0);
        animation:ngWowSourcingPulse 5.8s linear infinite;

        pointer-events:none;
    }

    @keyframes ngWowSourcingPulse{
        0%{
            left:8%;
            opacity:0;
            transform:scale(.72);
        }
        4%{
            opacity:1;
            transform:scale(1);
        }
        48%{
            opacity:1;
            transform:scale(1.08);
        }
        96%{
            opacity:1;
            transform:scale(1);
        }
        100%{
            left:92%;
            opacity:0;
            transform:scale(.72);
        }
    }
}

@media(prefers-reduced-motion:reduce){
    #ngWowMegaRoot [data-ng-wow-panel="sourcing"] .ng-wow-journey::after{
        animation:none !important;
        display:none !important;
    }
}
