.sourcing-preview{background:#f3f6f1;border:1px solid #d7e2d8;border-radius:3px;max-width:1160px;margin:72px auto;padding:clamp(22px,4vw,48px)}.sourcing-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:12px 24px;margin-bottom:28px;display:flex}.sourcing-heading .landing-eyebrow,.sourcing-heading h2{margin-bottom:12px}.sourcing-heading p:last-child{color:#495c50;max-width:62ch;margin-bottom:0;line-height:1.65}.sourcing-preview-label,.sourcing-route-label{color:#39523f;background:#e4ede1;border-radius:3px;padding:5px 9px;font-size:.75rem;font-weight:650}.sourcing-scene{grid-template-columns:minmax(0,1fr) minmax(100px,.42fr) minmax(0,1fr);align-items:center;display:grid}.sourcing-takeoff,.sourcing-quotes li{background:#fff;border:1px solid #cad9ce;border-radius:3px}.sourcing-takeoff{padding:clamp(12px,2.5vw,26px)}.sourcing-kicker{color:#396147;letter-spacing:.08em;margin-bottom:8px;font-size:.72rem;font-weight:700}.sourcing-takeoff h3{margin-bottom:16px}.sourcing-boxes{border-collapse:collapse;width:100%;font-size:.85rem}.sourcing-boxes th,.sourcing-boxes td{text-align:left;border-bottom:1px solid #e5ece5;padding:9px 0}.sourcing-boxes thead{color:#495c50;font-size:.75rem}.sourcing-boxes tbody th{font-weight:500}.sourcing-boxes th+th,.sourcing-boxes td{text-align:right;padding-left:8px}.sourcing-box-total{margin:14px 0 0;font-size:.85rem;font-weight:650}.sourcing-routing{align-self:stretch;place-items:center;display:grid;position:relative}.sourcing-paths{fill:none;stroke:#b7cbbb;stroke-width:1.5px;width:100%;height:100%;position:absolute;inset:0}.sourcing-paths path{vector-effect:non-scaling-stroke}.sourcing-route-label{z-index:1;white-space:nowrap}.sourcing-quotes{grid-template-rows:repeat(4,1fr);gap:8px;min-height:344px;margin:0;padding:0;list-style:none;display:grid}.sourcing-quotes li{justify-content:space-between;align-items:center;gap:8px;padding:10px clamp(10px,2vw,20px);display:flex}.sourcing-vendor,.sourcing-quote,.sourcing-quote-values{gap:3px;display:grid}.sourcing-vendor span,.sourcing-quote span{color:#495c50;font-size:.8rem}.sourcing-vendor .sourcing-highlight{color:#275b41;background:#e4ede1;border-radius:3px;justify-self:start;padding:2px 6px;font-size:.7rem;font-weight:650}.sourcing-quote{text-align:right}.sourcing-quote>*{grid-area:1/1}.sourcing-awaiting{opacity:0;align-self:center}.sourcing-quote strong{color:#275b41;font-variant-numeric:tabular-nums}.sourcing-replay{color:#275b41;font:inherit;cursor:pointer;background:#fff;border:1px solid #a9bfb0;border-radius:3px;margin-top:16px;padding:8px 12px;font-size:.85rem}.sourcing-replay:hover{background:#e4ede1}.sourcing-request-pulse,.sourcing-reply-pulse{opacity:0;stroke-width:3px;stroke-linecap:round;stroke-dasharray:12 100;stroke-dashoffset:12px}.sourcing-request-pulse{stroke:#397a55}.sourcing-reply-pulse{stroke:#a66511}.sourcing-scene-playing .sourcing-takeoff{animation:.5s ease-out both sourcing-arrival}.sourcing-scene-playing .sourcing-request-pulse{animation:sourcing-send .7s var(--send-delay) linear}.sourcing-scene-playing .sourcing-reply-pulse{animation:sourcing-return .55s calc(var(--quote-delay) - .55s) linear}.sourcing-scene-playing .sourcing-route-label{animation:.35s ease-out .55s both sourcing-arrival}.sourcing-scene-playing .sourcing-quote-values,.sourcing-scene-playing .sourcing-highlight{animation:sourcing-arrival .35s var(--quote-delay) ease-out both}.sourcing-scene-playing .sourcing-awaiting{animation:sourcing-waiting var(--quote-delay) linear}.sourcing-scene-playing .sourcing-quotes li{animation:sourcing-quote-received .65s var(--quote-delay) ease-out}@keyframes sourcing-waiting{0%,18%,to{opacity:0}30%,94%{opacity:1}}@keyframes sourcing-quote-received{0%{background:#e4ede1;border-color:#85a990}}@keyframes sourcing-arrival{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes sourcing-send{0%{opacity:1;stroke-dashoffset:12px}to{opacity:1;stroke-dashoffset:-100px}}@keyframes sourcing-return{0%{opacity:1;stroke-dashoffset:-100px}to{opacity:1;stroke-dashoffset:12px}}@media (width<=1224px){.sourcing-preview{margin-inline:32px}}@media (width<=720px){.sourcing-preview{margin:45px 20px}.sourcing-scene{grid-template-columns:minmax(0,1fr)}.sourcing-routing{padding:12px 0}.sourcing-route-label span{display:inline-block;transform:rotate(90deg)}.sourcing-paths{display:none}.sourcing-quotes{min-height:auto}}@media (prefers-reduced-motion:reduce){.sourcing-preview .sourcing-scene-playing *{animation:none}.sourcing-replay{display:none}}
