/* Keep product choices beside the artwork on wide screens. */
.order-page .story-set-product-card { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 18px; align-items: center; padding: 18px; border: 1px solid #e6dbcc; border-radius: 18px; background: #fffcf6; box-shadow: none; text-align: left; }
.set-card-art { position: relative; height: 124px; border-radius: 12px; background: #f5ede2; overflow: hidden; }
.set-card-art img:first-child { position: absolute; width: 60%; height: 92px; object-fit: contain; left: 8%; top: 9px; transform: rotate(-7deg); }
.set-card-art img:last-child { position: absolute; width: 86%; height: 98px; object-fit: contain; right: -6%; bottom: -6px; }
.story-set-product-card .set-card-copy { min-width: 0; }
.story-set-product-card .set-card-copy > strong { font-size: 18px; color: var(--blue); }
.story-set-product-card .set-card-copy p { margin: 6px 0 10px; font-size: 13px; line-height: 1.45; color: var(--soft-ink); }
.story-set-product-card .set-card-copy b { display: block; font-size: 14px; color: var(--ink); }
.story-set-product-card .set-card-link { display: flex; gap: 8px; margin-top: 8px; color: var(--blue); font-size: 13px; font-weight: 800; }
.story-set-product-card:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.mug-page .theme-image-card:has(input[value="star_sky"]) > img { object-position: 12% center; }
.mug-page .illustration-card.theme-image-card { padding: 6px; }
.order-page .price-card > form { min-width: 0; width: 100%; }
.order-page .primary-cta { white-space: normal; }
.order-page .starter-field select { min-width: 0; max-width: 100%; }
@media (min-width: 521px) and (max-width: 999px) {
  .order-page .mug-slide img { height: 380px; aspect-ratio: auto; }
  .order-page .keepsake-story { height: 380px; aspect-ratio: auto; }
  .order-page .story-set .keepsake.product-art-only { height: 100%; width: 100%; }
  .order-page .story-set .product-art-only img { height: 100%; object-fit: contain; }
}
.order-page .illustration-cards { margin-bottom: 18px; }
@media (max-width: 360px) {
  .order-page .shop-header { height: auto; min-height: 100px; grid-template-rows: auto auto; padding-block: 8px; row-gap: 4px; }
  .order-page .shop-header .store-category-nav { align-self: center; }
  .order-page .story-set-product-card { grid-template-columns: 84px minmax(0, 1fr); padding: 14px; gap: 12px; }
  .set-card-art { height: 110px; }
}
@media (min-width: 1000px) {
  .order-page:not(.is-personalising) { width: min(100%, 1120px); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 44px; align-content: start; }
  .order-page:not(.is-personalising) > * { grid-column: 1 / -1; min-width: 0; }
  .order-page:not(.is-personalising) > .offer-banner { grid-row: 1; }
  .order-page:not(.is-personalising) > .shop-header { grid-row: 2; }
  .order-page:not(.is-personalising) > .faq-section { grid-row: 5; }
  .order-page:not(.is-personalising) > .parent-reviews { grid-row: 6; }
  .order-page:not(.is-personalising) > .founder-story { grid-row: 7; }
  .order-page:not(.is-personalising) > .mug-footer { grid-row: 8; }
  .order-page:not(.is-personalising) > .top-hero,
  .order-page:not(.is-personalising) > .set-visual { grid-column: 1; grid-row: 3 / 5; align-self: start; margin: 28px 0 0; padding: 0; }
  .order-page:not(.is-personalising) > .set-visual { min-height: 450px; }
  .order-page:not(.is-personalising) > .product-heading { grid-column: 2; grid-row: 3; margin: 28px 0 20px; }
  .order-page:not(.is-personalising) > .price-card { grid-column: 2; grid-row: 4; align-self: start; }
  .order-page:not(.is-personalising) > .faq-section,
  .order-page:not(.is-personalising) > .parent-reviews,
  .order-page:not(.is-personalising) > .founder-story { width: min(100%, 720px); justify-self: center; }
  .order-page:not(.is-personalising) .mug-slide img { height: 430px; aspect-ratio: auto; }
}
/* Keep later-step progress quiet; the first Choose screen does not show it. */
.order-page .flow-progress {
  display: none !important;
}
.order-page.is-personalising .flow-progress {
  display: flex !important;
  justify-content: center;
  gap: 0;
  margin: 0 0 18px;
  padding: 0;
  border: 0;
  background: transparent;
}
.order-page .flow-progress > span,
.order-page.is-personalising .flow-progress > span {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-width: 0;
  color: var(--soft-ink);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
.order-page .flow-progress > span::before,
.order-page.is-personalising .flow-progress > span::before {
  display: none;
}
.order-page .flow-progress > span:not(:last-child)::after {
  content: "·";
  position: static;
  width: auto;
  height: auto;
  margin: 0 9px;
  color: #cbbfb2;
  background: transparent;
}
.order-page .flow-progress > span[aria-current="step"],
.order-page.is-personalising .flow-progress > span[aria-current="step"] {
  color: var(--blue);
}
.order-page .flow-progress > span[aria-current="step"]::before,
.order-page.is-personalising .flow-progress > span[aria-current="step"]::before {
  display: none;
}
.order-page .flow-progress > span:has(~ span[aria-current="step"])::before,
.order-page.is-personalising .flow-progress > span:has(~ span[aria-current="step"])::before {
  display: none;
}
.order-page .flow-progress > span:has(~ span[aria-current="step"])::after {
  background: transparent;
}
@media (max-width: 380px) {
  .order-page .flow-progress > span,
  .order-page.is-personalising .flow-progress > span { font-size: 10px; }
}

body.lc-paid-details .sticky-cta, body.lc-paid-details [data-back], body.lc-paid-details [data-personalize-back], body.lc-paid-details [data-add-character], body:has(.order-page.is-personalising) .sticky-cta { display:none!important; }

body.lc-paid-details .story-set-product-card, body.lc-paid-details .story-set-offer { display:none!important; }
