/* SparklePretty Launch 001: non-destructive visual and accessibility refinements. */
:root { --sp-focus: #8d0043; }
:where(a, button, input, textarea, select):focus-visible { outline: 3px solid var(--sp-focus); outline-offset: 3px; }
.site-header { box-shadow: 0 3px 18px rgba(43,22,32,.045); }
.header-actions .icon-button { border-radius: 50%; }
.header-actions .icon-button:hover { background: var(--blush); }
.hero-copy { position: relative; z-index: 1; }
.hero-actions { flex-wrap: wrap; }
.hero-media > img { object-position: center top; }
.sp-tshirt-home .hero h1 { text-wrap: balance; }
.sp-tshirt-home .hero-intro { text-wrap: pretty; }
.sp-tshirt-home .button-primary { box-shadow: 0 9px 25px rgba(196,12,90,.19); }
.product-card { transition: box-shadow .22s ease, transform .22s ease; }
@media (hover:hover) { .product-card:hover { transform: translateY(-3px); box-shadow: 0 16px 42px rgba(43,22,32,.09); } }
.sp-coming-card { transition: border-color .2s ease, box-shadow .2s ease; }
@media (hover:hover) { .sp-coming-card:hover { border-color: var(--pink-soft); box-shadow: 0 12px 30px rgba(43,22,32,.07); } }
.woocommerce form .form-row input.input-text:focus-visible,
.woocommerce form .form-row textarea:focus-visible,
.woocommerce form .form-row select:focus-visible { border-color: var(--pink); }
@media (max-width: 720px) {
  .announcement p { justify-content: center; gap: 8px; text-align: center; padding: 7px 12px; line-height: 1.4; }
  .hero-actions { gap: 14px; }
  .hero-actions .button-primary { min-width: 170px; }
  .sp-tshirt-home .hero h1 { font-size: clamp(2.7rem, 11vw, 4rem); }
  .sp-tshirt-home .hero-intro { font-size: 1rem; }
  .woocommerce form .form-row input.input-text, .woocommerce form .form-row select { font-size: 16px; }
}
@media (prefers-reduced-motion:reduce) {
  .product-card, .sp-coming-card, .button { transition: none !important; transform: none !important; }
}
