/* One flowing route, with the real repair position held as customers explore. */
.consumer-experience #sheet:has(.repair-journey){width:760px;height:fit-content;max-height:calc(100svh - 48px);overflow:auto;background:#0c2448;color:#f6f3ee;border:1px solid #234065;border-radius:28px;box-shadow:0 28px 90px #0c24484d}
.consumer-experience #sheet:has(.repair-journey) .sheet-head{padding:25px 34px 0;border:0;background:#0c2448;color:#f6f3ee;position:relative}
.consumer-experience #sheet:has(.repair-journey) .sheet-head h2{font-size:15px;font-weight:500;letter-spacing:0;color:#b9c9dc}
.consumer-experience #sheet:has(.repair-journey) .close-button{width:34px;height:34px;background:#ffffff0d;color:#f6f3ee;transition:background .2s,transform .2s}
.consumer-experience #sheet:has(.repair-journey) .sheet-content{padding:0 34px 24px}
.repair-journey{font-family:RedHat,sans-serif;line-height:1.4;--route-green:#1cc478}
.journey-story{height:219px;padding:28px 0 0;max-width:590px}
.journey-story-copy{animation:journey-story-in .36s cubic-bezier(.22,.8,.3,1) both}
.journey-story-kicker{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:1.7px;font-size:9px;font-weight:650;color:#57dca0}
.journey-story-kicker:before{content:"";height:4px;width:4px;background:currentColor;border-radius:50%}
.consumer-experience .sheet-content .journey-story h3{font-size:36px;font-weight:650;line-height:1.08;letter-spacing:-1.2px;color:#f6f3ee;margin:12px 0 11px;max-width:590px}
.journey-story p{font-size:14px;line-height:1.6;margin:0;color:#b9c9dc;max-width:550px}
.journey-story-time{font-size:10px;color:#8da3bd;margin-top:14px;letter-spacing:.1px}
.journey-route{position:relative;width:100%;aspect-ratio:600/190;margin:0 auto}
.journey-route-line{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke-linecap:round;stroke-width:3}
.journey-road{stroke:#294468}.journey-road-done{stroke:#1cc478;animation:journey-road-draw 1.05s cubic-bezier(.2,.65,.3,1) both}
.journey-route-stop{position:absolute;left:var(--stop-x);top:var(--stop-y);transform:translate(-50%,-10px);width:20%;padding:0;display:flex;flex-direction:column;align-items:center;color:#9db1cb;background:none;gap:0;animation:journey-stop-in .4s ease-out backwards;animation-delay:var(--stop-delay);font-family:inherit;z-index:2}
.journey-route-dot{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;border:4px solid #0c2448;background:#385578;position:relative;box-shadow:0 0 0 1px #385578;transition:box-shadow .2s,transform .2s,background .2s}
.journey-route-dot svg{width:12px;height:12px;fill:none;stroke:#0c2448;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.journey-route-label{font-size:13px;font-weight:550;white-space:nowrap;margin-top:17px;transition:color .2s}
.journey-route-stop small{font-size:9px;color:#57dca0;letter-spacing:.25px;margin-top:4px;font-weight:650}
.journey-route-stop.is-past{color:#d2dedb}.journey-route-stop.is-past .journey-route-dot{background:#1cc478;border-width:3px;box-shadow:0 0 0 1px #1cc478}
.journey-route-stop.is-now .journey-route-dot{background:#1cc478;box-shadow:0 0 0 1px #1cc478;animation:journey-current-ring 2.1s ease-out infinite}
.journey-route-stop.is-now{color:#fff}.journey-route-stop[aria-pressed=true] .journey-route-label{color:#fff;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;text-decoration-color:#63dba7}
.journey-route-stop:focus-visible{outline:none}.journey-route-stop:focus-visible .journey-route-dot{outline:2px solid #f6f3ee;outline-offset:5px}
.journey-route-van{position:absolute;left:var(--van-x);top:var(--van-y);width:100px;transform:translate(-50%,-100%);margin-top:-8px;pointer-events:none;animation:journey-van-in 1s cubic-bezier(.2,.7,.3,1) both;z-index:1}
.journey-route-van img{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 5px 5px #07183140)}
.journey-route-van .journey-still-van{display:none}
.journey-route-footer{display:flex;align-items:center;justify-content:space-between;margin-top:1px;padding-top:8px;color:#8da3bd;font-size:10px;letter-spacing:.1px}
.journey-route-footer img{width:48px;height:25px;object-fit:contain}
@media(hover:hover){
 .journey-route-stop:hover .journey-route-dot{transform:scale(1.24);background:#d9f6e8;box-shadow:0 0 0 5px #1cc4781a}
 .journey-route-stop:hover .journey-route-label{color:#fff}
 .consumer-experience #sheet:has(.repair-journey) .close-button:hover{background:#ffffff1a;transform:rotate(8deg)}
}
@media(max-width:899px){
 .consumer-experience #sheet:has(.repair-journey){width:100%;max-width:100%;max-height:calc(100svh - 25px);border-radius:26px 26px 0 0;border-bottom:0}
 .consumer-experience #sheet:has(.repair-journey) .sheet-head{padding:22px 23px 0}
 .consumer-experience #sheet:has(.repair-journey) .sheet-head h2{font-size:14px}
 .consumer-experience #sheet:has(.repair-journey) .sheet-content{padding:0 22px max(24px,env(safe-area-inset-bottom))}
 .journey-story{height:246px;padding-top:27px}
 .consumer-experience .sheet-content .journey-story h3{font-size:31px;line-height:1.1;letter-spacing:-.9px;margin-top:13px;max-width:325px}
 .journey-story p{font-size:13px;line-height:1.6;max-width:350px}.journey-story-time{font-size:9px;margin-top:13px}
 .journey-route{aspect-ratio:600/225;margin:0 -1px;width:calc(100% + 2px)}
 .journey-route-line{height:84.444%}
 .journey-route-stop{top:calc(var(--stop-y) * .84444);transform:translate(-50%,-8px)}
 .journey-route-dot{width:16px;height:16px;border-width:3px}.journey-route-stop.is-past .journey-route-dot{border-width:2px}.journey-route-dot svg{width:10px;height:10px}
 .journey-route-label{font-size:10px;margin-top:17px}.journey-route-stop small{font-size:8px;margin-top:6px}
 .journey-route-van{top:calc(var(--van-y) * .84444);width:64px;margin-top:-7px}
 .journey-route-footer{margin-top:12px;font-size:9px}.journey-route-footer img{width:43px;height:22px}
}
@media(max-width:350px){.consumer-experience #sheet:has(.repair-journey) .sheet-content{padding-left:18px;padding-right:18px}.journey-route-label{font-size:9px}.consumer-experience .sheet-content .journey-story h3{font-size:28px}.journey-story{height:254px}}
@keyframes journey-road-draw{from{stroke-dashoffset:var(--route-distance)}to{stroke-dashoffset:0}}
@keyframes journey-story-in{from{opacity:.15;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}
@keyframes journey-stop-in{from{opacity:0}to{opacity:1}}
@keyframes journey-van-in{from{opacity:0;translate:-25px 0}to{opacity:1;translate:0 0}}
@keyframes journey-current-ring{0%,100%{box-shadow:0 0 0 1px #1cc478,0 0 0 5px #1cc47800}20%{box-shadow:0 0 0 1px #1cc478,0 0 0 5px #1cc47824}75%{box-shadow:0 0 0 1px #1cc478,0 0 0 10px #1cc47800}}
.motion-paused .repair-journey *,.motion-paused .repair-journey *:before{animation:none!important;transition:none!important}
.motion-paused .journey-route-van .journey-moving-van{display:none}.motion-paused .journey-route-van .journey-still-van{display:block}
@media(prefers-reduced-motion:reduce){.repair-journey *,.repair-journey *:before{animation:none!important;transition:none!important}.journey-route-van .journey-moving-van{display:none}.journey-route-van .journey-still-van{display:block}.journey-route-stop:hover .journey-route-dot{transform:none}}
