/* Delivery estimates and order tracking. Uses the theme's tokens when present. */
.gd-track { margin: 1.5rem 0 2rem; padding: clamp(1.2rem, 3vw, 2rem); background: #fff; border: 1px solid color-mix(in srgb, var(--gg-ink, #15130f) 12%, transparent); }
.gd-track__head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.6rem 2rem; align-items: baseline; margin-bottom: 1.6rem; }
.gd-track__order { margin: 0; font: 500 0.78rem/1.3 var(--gg-body, sans-serif); letter-spacing: 0.14em; text-transform: uppercase; color: var(--gg-taupe, #6e6557); }
.gd-track__eta { margin: 0; font: 500 1.15rem/1.3 var(--gg-body, sans-serif); font-variant-numeric: lining-nums tabular-nums; }
.gd-track__eta span { display: block; font-size: 0.7rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--gg-gold, #a8854a); }
.gd-track__steps { list-style: none; margin: 0 0 1.4rem; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); counter-reset: gd; }
.gd-track__steps li { position: relative; padding-top: 2.1rem; display: grid; gap: 0.25rem; font-size: 0.85rem; }
.gd-track__steps li::before { content: ""; position: absolute; top: 0.55rem; left: 0; right: 0; height: 2px; background: color-mix(in srgb, var(--gg-ink, #15130f) 12%, transparent); }
.gd-track__steps li::after { content: ""; position: absolute; top: 0; left: 0; width: 1.2rem; height: 1.2rem; border-radius: 50%; background: #fff; border: 2px solid color-mix(in srgb, var(--gg-ink, #15130f) 20%, transparent); box-sizing: border-box; }
.gd-track__steps li.is-done::before, .gd-track__steps li.is-current::before { background: var(--gg-gold, #a8854a); }
.gd-track__steps li.is-done::after { background: var(--gg-gold, #a8854a); border-color: var(--gg-gold, #a8854a); }
.gd-track__steps li.is-current::after { border-color: var(--gg-gold, #a8854a); box-shadow: 0 0 0 4px color-mix(in srgb, var(--gg-gold, #a8854a) 22%, transparent); }
.gd-track__steps strong { font-weight: 500; font-size: 0.95rem; }
.gd-track__steps li.is-todo strong { color: var(--gg-taupe, #6e6557); font-weight: 400; }
.gd-track__steps span { color: var(--gg-taupe, #6e6557); font-variant-numeric: lining-nums tabular-nums; }
.gd-track__carrier, .gd-track__method { margin: 0.4rem 0 0; font-size: 0.9rem; }
.gd-track__carrier a { text-decoration: underline; }
.gd-track__method { color: var(--gg-taupe, #6e6557); }
.gd-track-error { color: #8a2b1f; }
@media (max-width: 600px) {
	.gd-track__steps { grid-template-columns: 1fr; gap: 1rem; }
	.gd-track__steps li { padding: 0 0 0 2rem; }
	.gd-track__steps li::before { top: 1.2rem; bottom: -1rem; left: 0.55rem; right: auto; width: 2px; height: auto; }
	.gd-track__steps li:last-child::before { display: none; }
}

/* Product page: estimated delivery by region */
.gd-eta { margin: 1.4rem 0 0; padding: 1rem 1.1rem; background: color-mix(in srgb, var(--gg-linen, #efe8db) 70%, #fff); border-left: 2px solid var(--gg-gold, #a8854a); }
.gd-eta__title { margin: 0 0 0.6rem; font: 500 0.7rem/1.2 var(--gg-body, sans-serif); letter-spacing: 0.18em; text-transform: uppercase; }
.gd-eta ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.35rem; font-size: 0.9rem; }
.gd-eta li { display: flex; justify-content: space-between; gap: 1rem; }
.gd-eta li span { color: var(--gg-taupe, #6e6557); }
.gd-eta li strong { font-weight: 500; font-variant-numeric: lining-nums tabular-nums; white-space: nowrap; }
.gd-track__links { margin: -1.2rem 0 2rem; font-size: 0.88rem; }
.gd-track__links a { text-decoration: underline; }
