/* Live shop additions. The existing Aetrona palette and page layouts are retained. */
.collection-loading { min-height: 45vh; }
.collection-empty { text-align: center; padding: 40px 20px; }
.collection-empty h2 { max-width: 720px; margin-inline: auto; font: 400 clamp(24px, 3vw, 36px)/1.35 Georgia, serif; letter-spacing: 0; }
.collection-empty p { line-height: 1.8; }
.collection-empty .button, .collection-empty .text-link { margin: 12px; }
.collection-carousel:has(> .collection-empty) { display: block; }
.product-photo-empty { min-height: 260px; display: grid; place-items: center; text-align: center; padding: 30px; background: #e3e5de; color: #59614e; font-size: 13px; line-height: 1.7; }
.watch-photo-pair.single-photo .watch-front-photo { opacity: 1 !important; transform: none !important; }
.accessory-listing { background: #f7f8f3; }
.accessory-listing .watch-photo-pair { min-height: 320px; }
.product-accessory-description { font-size: 13px; line-height: 1.65; color: #656a60; }
.product-description-text { white-space: pre-line; }
.watch-gallery.gallery-empty { display: block; }
.availability-label { margin-bottom: 12px; }
.availability-label.unavailable { color: #755b3e; }
button:disabled { cursor: not-allowed; opacity: .55; }
.basket-item-copy { display: flex; align-items: center; gap: 20px; min-width: 0; }
.basket-item-copy h3, .account-summary p, .account-order h3 { overflow-wrap: anywhere; }
.basket-item-image { display: block; width: 90px; flex: 0 0 90px; background: #e6e8e1; }
.basket-item-image img { display: block; width: 100%; height: 108px; object-fit: contain; }
.basket-line-unavailable small { color: #824a31; font-weight: 600; }
.basket-controls label { display: grid; gap: 6px; font-size: 12px; }
.commerce-alert, .purchase-notice { padding: 18px; border: 1px solid #c8b89e; background: #f3ede1; color: #564a37; line-height: 1.7; font-size: 14px; }
.purchase-notice h3 { font: 400 22px/1.35 Georgia, serif; margin: 0 0 12px; }
.purchase-notice .button { display: inline-flex; text-align: center; }
.commerce-note a, .checkbox-label a { text-decoration: underline; text-underline-offset: 3px; }
#secure-checkout-form { background: transparent; padding: 0; border: 0; display: block; }
#secure-checkout-form .checkbox-label { font-size: 12px; align-items: flex-start; margin: 20px 0; }
#secure-checkout-form .checkbox-label input { flex: 0 0 17px; margin-top: 3px; }
.checkout-submit { width: 100%; justify-content: center; line-height: 1.6; white-space: normal; }
.commerce-feedback:not(:empty) { border-top: 1px solid #b9c1af; padding-top: 16px; margin-top: 18px; line-height: 1.7; font-size: 14px; }
.commerce-feedback .text-link { display: inline-block; margin-top: 8px; }
.account-section { max-width: 760px; }
.account-section > .commerce-panel { margin-bottom: 24px; }
.account-form { display: grid; gap: 20px; border: 0; padding: 0; margin: 24px 0; background: transparent; }
.account-form label { display: grid; gap: 9px; font-size: 13px; }
.account-form input { width: 100%; min-width: 0; background: #f4f5f0; border: 1px solid #bdc4b4; padding: 13px; border-radius: 0; }
.account-form .commerce-note { margin: 0; }
.account-reset-link { display: inline-block; margin-bottom: 6px; }
.account-summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.account-summary h2 { margin-bottom: 8px; }
.account-order { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid var(--line); padding: 22px 0; }
.account-order:first-child { border-top: 0; }
.account-order h3 { font-size: 16px; margin: 0; }
.account-order p { margin: 6px 0; }
.test-order-label { color: #755b3e; font-weight: 600; }
.search-product img { width: 100%; height: 240px; object-fit: contain; background: #f3f4ee; margin-bottom: 22px; }
.search-product .retail-kicker { margin-bottom: 12px; }
.receipt-total { font-size: 26px; margin: 24px 0; }
.receipt-items { list-style: none; padding: 0; margin: 0 0 28px; }
.receipt-items li { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line); padding: 16px 0; line-height: 1.6; }
.receipt-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; }
@media (max-width: 600px) {
  .basket-item-copy { gap: 12px; }
  .basket-item-image { width: 62px; flex-basis: 62px; }
  .basket-item-image img { height: 80px; }
  .basket-line { align-items: flex-start; }
  .basket-line h3 { font-size: 14px; }
  .basket-controls { min-width: 66px; }
  .basket-controls input { width: 62px; }
  .account-summary, .account-order { align-items: flex-start; flex-direction: column; }
  .receipt-actions { align-items: stretch; flex-direction: column; }
}
