/* Shared HYT gen2 product-home CTA + footer placement (/bzf, /wgt, /zrg). Art: 781×1406 with aligned bottom slots. */
@keyframes product-home-btn-shimmer {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned {
  --product-home-foot-bottom: max(3px, 0.45%);
  --product-home-cta-base-top: 80.8%;
  --product-home-cta-h: clamp(56px, 14cqw, 70px);
  --product-home-cta-nudge-up: 34px;
  --product-home-cta-top: calc(var(--product-home-cta-base-top) + var(--product-home-cta-h) - var(--product-home-cta-nudge-up));
  --product-home-cta-inset-x: 8%;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned :is(.bzf-main, .wgt-main, .zrg-main) {
  position: absolute;
  inset: 0;
  display: block;
  padding: 0;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned :is(.bzf-cta-form, .wgt-cta, .zrg-cta-form) {
  position: absolute;
  left: var(--product-home-cta-inset-x);
  right: var(--product-home-cta-inset-x);
  top: var(--product-home-cta-top);
  bottom: auto;
  height: var(--product-home-cta-h);
  width: auto;
  margin: 0;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned .wgt-cta {
  display: block;
  text-decoration: none;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned :is(.bzf-cta-btn, .wgt-cta-btn, .zrg-cta-btn) {
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 0 0.45em;
  font-size: clamp(0.92rem, 4cqw, 1.22rem);
  font-weight: 800;
  letter-spacing: 0.01em;
  line-height: 1.1;
  white-space: normal;
  border: 2px solid #d4ad66;
  border-radius: 10px;
  background: linear-gradient(90deg, #c38a2d 0%, #f1d890 30%, #c38a2d 60%, #f1d890 100%);
  background-size: 220% 100%;
  color: #5b0f0f;
  -webkit-text-fill-color: #5b0f0f;
  box-shadow: 0 4px 14px rgba(128, 34, 18, 0.24);
  animation: product-home-btn-shimmer 4s ease-in-out infinite;
  cursor: pointer;
  transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned :is(.bzf-cta-btn, .wgt-cta-btn, .zrg-cta-btn):hover,
:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned .wgt-cta:hover .wgt-cta-btn {
  background: linear-gradient(90deg, #a66f14 0%, #e8c86a 50%, #a66f14 100%);
  background-size: auto;
  border-color: #e8d18a;
  transform: translateY(-1px);
  animation: none;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned :is(.bzf-cta-btn, .zrg-cta-btn):focus-visible,
:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned .wgt-cta:focus-visible .wgt-cta-btn {
  outline: 2px solid rgba(255, 236, 180, 0.92);
  outline-offset: 2px;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned .wgt-cta:focus-visible {
  outline: none;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned .landing-foot {
  position: absolute;
  left: 4%;
  right: 4%;
  top: auto;
  bottom: var(--product-home-foot-bottom);
  width: auto;
  margin: 0;
  justify-content: flex-end;
  gap: 2px;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned .foot-legal {
  font-size: clamp(0.68rem, 2.85cqw, 0.8rem);
  line-height: 1.35;
}

:is(.bzf-shell, .wgt-shell, .zrg-shell).product-home-art-aligned .landing-banner-line {
  font-size: clamp(0.68rem, 2.85cqw, 0.78rem);
  line-height: 1.3em;
}
