/* Track your order: animated journey + carriers */
.hh-journey { margin: 2rem 0; padding: clamp(1.25rem, 3vw, 2rem); background: var(--sb-bg); border: var(--hh-line); border-radius: var(--sb-radius-lg); box-shadow: var(--hh-shadow-lg); }
.hh-journey .hh-eyebrow { margin: 0 0 1.25rem; }
.hh-journey__steps { position: relative; list-style: none; margin: 0; padding: 0; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 1rem; }
.hh-journey__steps::before, .hh-journey__steps::after { content: ""; position: absolute; top: 28px; left: 10%; right: 10%; height: 4px; border-radius: 4px; background: rgba(11,11,11,.12); }
.hh-journey__steps::after { background: var(--sb-ink); }
.js .hh-journey__steps::after { transform: scaleX(0); transform-origin: left; transition: transform 1.6s cubic-bezier(.6,0,.2,1) .2s; }
.hh-journey__step { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; text-align: center; gap: .3rem; }
.js .hh-journey__step { opacity: 0; transform: translateY(14px); transition: opacity .5s ease, transform .5s ease; transition-delay: calc(var(--i) * .4s + .2s); }
.hh-journey__step strong { font-weight: 800; text-transform: uppercase; letter-spacing: .04em; font-size: .9rem; }
.hh-journey__step span:last-child { font-size: .9rem; opacity: .75; }
.hh-journey__dot { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--sb-accent); border: var(--hh-line); box-shadow: var(--hh-shadow); margin-bottom: .35rem; }
.js .hh-journey.is-in .hh-journey__steps::after { transform: scaleX(1); }
.js .hh-journey.is-in .hh-journey__step { opacity: 1; transform: none; }
.hh-journey.is-in .hh-journey__step:nth-last-child(2) .hh-journey__dot svg { animation: hh-drive 1.4s ease-in-out 1.6s 2; }
.hh-journey.is-in .hh-journey__step:last-child .hh-journey__dot { animation: hh-pop .6s ease 1.8s both; }
@keyframes hh-drive { 0%,100% { transform: translateX(0); } 50% { transform: translateX(4px); } }
@keyframes hh-pop { 0% { transform: scale(1); } 50% { transform: scale(1.18); } 100% { transform: scale(1); } }
.hh-carriers { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .75rem; margin-top: 1.75rem; padding-top: 1.25rem; border-top: 2px dashed rgba(11,11,11,.18); }
.hh-carriers__label { font-weight: 700; font-size: .9rem; opacity: .75; }
.hh-carrier { padding: .5em 1.1em; border: var(--hh-line); border-radius: var(--sb-pill, 999px); background: #fff; font-weight: 900; letter-spacing: .02em; box-shadow: var(--hh-shadow); transition: transform .2s; }
.hh-carrier:hover { transform: translateY(-2px); }
.woocommerce-form-track-order { padding: clamp(1.25rem, 3vw, 2rem); border: var(--hh-line); border-radius: var(--sb-radius-lg); background: var(--sb-bg); box-shadow: var(--hh-shadow); }
@media (max-width: 640px) {
	.hh-journey__steps { grid-auto-flow: row; grid-template-columns: 1fr; gap: 1.1rem; }
	.hh-journey__steps::before, .hh-journey__steps::after { top: 28px; bottom: 28px; left: 26px; right: auto; width: 4px; height: auto; }
	.js .hh-journey__steps::after { transform: scaleY(0); transform-origin: top; }
	.js .hh-journey.is-in .hh-journey__steps::after { transform: scaleY(1); }
	.hh-journey__step { flex-direction: row; flex-wrap: wrap; text-align: left; column-gap: .9rem; }
	.hh-journey__dot { margin: 0; }
	.hh-journey__step strong { flex: 1; }
	.hh-journey__step span:last-child { flex-basis: 100%; padding-left: calc(56px + .9rem); margin-top: -1.4rem; }
}
@media (prefers-reduced-motion: reduce) {
	.hh-journey__step, .hh-journey__steps::after { transition: none; }
	.hh-journey .hh-journey__dot, .hh-journey svg { animation: none !important; }
}
.hh-carrier--logo { display: inline-flex; align-items: center; height: 56px; padding: .55em 1.2em; }
.hh-carrier--logo img { display: block; height: 100%; width: auto; max-width: 180px; object-fit: contain; }
.hh-carrier--fedex img { height: 34px; }
.hh-carrier--usps img { height: 26px; }
