/* Product photography stays separate from the stationary PRO wordmark. */
.store-pro-banner { height: 500px; background: #09090b; }
.store-pro-grid { grid-template-columns: 1.1fr .9fr; gap: 2rem; }
.store-pro-grid > .store-pro-copy { padding-left: clamp(0rem, 3vw, 3rem); }
.pro-kicker { display: block; margin-bottom: 1.35rem; color: #c5a8af; font-size: .65rem; font-weight: 550; letter-spacing: .2em; line-height: 1.5; }
.storefront-home .store-pro-copy h2 { margin: 0; font-family: var(--font-display); font-size: clamp(3.75rem, 5.7vw, 5.5rem); font-weight: 450; letter-spacing: -.06em; line-height: .94; }
.store-pro-copy h2 span { display: block; color: #d8bbc2; }
.store-pro-grid .pro-caption { margin: 1.5rem 0 0; color: #a9a5aa; font-size: .94rem; line-height: 1.65; letter-spacing: -.01em; }
.store-pro-grid .pro-intro { margin: 0 0 .75rem; color: #eeeaed; font-size: clamp(1.125rem, 1.8vw, 1.375rem); font-weight: 450; line-height: 1.3; letter-spacing: -.025em; }
.pro-shop-button { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; margin-top: 1.8rem; padding: 0; border: 0; background: transparent; color: #2997ff; font-family: var(--font-body); font-size: .95rem; font-weight: 500; line-height: 1.4; text-decoration: none; transition: color .22s ease; }
.pro-shop-button > span { display: inline-block; transition: transform .28s cubic-bezier(.22, 1, .36, 1); }
.pro-shop-button:hover { color: #75bdff; }
.pro-shop-button:hover > span { transform: translateX(4px); }
.pro-shop-button:focus-visible { outline: 2px solid #2997ff; outline-offset: 5px; }
.store-pro-grid .pro-artwork {
  order: -1;
  position: relative;
  height: 100%;
  min-width: 0;
  padding: 0;
  perspective: 1100px;
  isolation: isolate;
}
.pro-wordmark {
  position: absolute;
  top: 50%;
  left: 58%;
  width: max-content;
  text-align: left;
  white-space: nowrap;
  font-family: var(--font-display);
  font-size: clamp(7.5rem, 14vw, 12rem);
  font-weight: 650;
  letter-spacing: -.06em;
  line-height: 1;
  padding-right: .085em;
  color: #342d33;
  transform: translateY(-50%);
  user-select: none;
}
.pro-device-frame {
  position: absolute;
  top: 47%;
  left: 34%;
  width: min(118%, 560px);
  aspect-ratio: 940 / 1112;
  transform: translate(-50%, -50%);
  perspective: 1100px;
  pointer-events: none;
}
.pro-phone { width: 100%; height: 100%; transform-origin: 50% 50%; }
.store-pro-grid .pro-phone img {
  position: static;
  right: auto;
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: normal;
  opacity: 1;
  clip-path: none;
}
.motion-enabled .pro-phone { will-change: transform; }

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .store-category-card { transition: background-color .3s ease, transform .35s cubic-bezier(.22, 1, .36, 1); }
  .store-category-card:hover { transform: translateY(-4px); background-color: #eef0f3; }
  .store-category-card img,
  .store-product-image img { transition: transform .5s cubic-bezier(.22, 1, .36, 1); }
  .store-product-card:hover .store-product-image img { transform: scale(1.045); }
  #shop-products-grid .product-card,
  .store-product-card { transition: transform .35s cubic-bezier(.22, 1, .36, 1), box-shadow .35s ease; }
  .btn { transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .25s ease, box-shadow .25s ease; }
  .btn:hover { transform: translateY(-2px); }
  .btn:active { transform: translateY(0); }
  .btn span[aria-hidden], .store-text-link span { display: inline-block; transition: transform .25s ease; }
  .btn:hover span[aria-hidden], .store-text-link:hover span { transform: translateX(4px); }
}
.btn:focus-visible, .store-category-card:focus-visible, .store-text-link:focus-visible {
  outline: 2px solid var(--accent-color);
  outline-offset: 5px;
}

@media (max-width: 768px) {
  .store-pro-banner { height: 420px; }
  .store-pro-grid { grid-template-columns: 1fr 1fr; gap: 1rem; }
  .storefront-home .store-pro-copy h2 { font-size: clamp(2.8rem, 7vw, 4rem); }
  .store-pro-grid .pro-caption { font-size: .85rem; }
  .pro-wordmark { left: 12%; width: 100%; text-align: center; font-size: clamp(6rem, 20vw, 10rem); }
  .pro-device-frame { width: min(138%, 420px); }
}
@media (max-width: 600px) {
  .store-pro-banner { height: auto; }
  .store-pro-grid { grid-template-columns: 1fr; grid-template-rows: auto 350px; gap: 1.5rem; padding-top: 2.5rem; padding-bottom: 1rem; }
  .store-pro-grid > .store-pro-copy { padding: 0; align-self: start; }
  .pro-kicker { margin-bottom: 1.25rem; font-size: .6rem; }
  .storefront-home .store-pro-copy h2 { font-size: clamp(3.5rem, 11vw, 4.5rem); }
  .store-pro-grid .pro-caption { margin: 1.1rem 0 0; }
  .store-pro-grid .pro-artwork { width: 100%; order: 0; }
  .pro-wordmark { left: 16%; font-size: clamp(7rem, 35vw, 12rem); }
  .pro-device-frame { left: 35%; width: min(118%, 420px); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .pro-phone { transform: none !important; will-change: auto; }
  .pro-shop-button,
  .pro-shop-button > span { transition: none; }
  .promo-ticker-track { animation: none !important; }
  .btn, .store-category-card, .store-category-card img, .store-product-card,
  .store-product-image img, #shop-products-grid .product-card,
  #shop-products-grid .card-image-wrap img, .social-rail-link { transition: none !important; }
}
