/* Light and movement are confined to the editorial and shopping controls. */
@media (prefers-reduced-motion: no-preference) {
  .hero .hero-inner > h1, .welcome h1 {
    animation: sy-title-focus 650ms ease-out both;
  }
  @keyframes sy-title-focus {
    from { opacity: .65; filter: blur(3px); transform: translateY(6px); }
    to { opacity: 1; filter: none; transform: none; }
  }
  .hero .button, .welcome-enter, .woocommerce .single_add_to_cart_button {
    transition: background-color 160ms, box-shadow 160ms, translate 160ms;
  }
  .hero .button:active, .welcome-enter:active,
  .woocommerce .single_add_to_cart_button:not(.disabled):active {
    translate: 0 2px;
    box-shadow: inset 0 2px 3px #0003;
  }
}
.sy-photo-frame {
  display: block;
  overflow: hidden;
  position: relative;
  margin-bottom: 1em;
  background: var(--warm);
}
.woocommerce ul.products li.product .sy-photo-frame img { margin: 0; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .woocommerce ul.products li.product .sy-photo-frame:hover img {
    transform: scale(1.06) translate(var(--photo-x, 0%), var(--photo-y, 0%));
  }
}
.sy-options { display: flex; flex-wrap: wrap; gap: 8px; margin-block: 4px 10px; }
.sy-options button {
  min-width: 44px; min-height: 44px; padding: 7px 14px;
  background: var(--paper); color: var(--ink); border: 1px solid #b7ac9e;
  font: inherit; cursor: pointer;
}
.sy-options button[aria-pressed="true"] { background: #39342e; color: white; border-color: #39342e; }
.sy-options button:disabled { opacity: .45; text-decoration: line-through; cursor: default; }
.woocommerce .variations select[hidden] { display: none !important; }
.woocommerce-cart .cart_totals { padding: clamp(16px, 3vw, 32px); background: #f0ebe2; border-top: 2px solid #9b846e; }
.woocommerce-cart .cart_totals .order-total { font-size: 1.15em; }
.woocommerce-cart .cart_totals .checkout-button { min-height: 44px; }
