/* CXACXC mobile product stability + pre-purchase CTA v3.
 * Presentation only; native product forms and payment controls remain authoritative.
 */
@media (max-width: 749px) {
  /* Render the server-authored product summary in its final state immediately.
   * Its section script otherwise adds cxdu-summary-bound after first paint. */
  body.csyx-product-page:has(.cxdu-summary) .cxdu-summary {
    display: block;
    box-sizing: border-box;
    padding: 14px 16px 13px;
    border-bottom: 1px solid #e3e8e5;
    background: #fff;
    color: #071a35;
    font-family: var(--csyx-font, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  }

  body.csyx-product-page:has(.cxdu-summary) .cxdu-summary__eyebrow {
    margin: 0 0 5px;
    color: #18823b;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .1em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  body.csyx-product-page:has(.cxdu-summary) .cxdu-summary__title {
    max-width: 560px;
    margin: 0;
    color: #071a35;
    font: 750 23px/1.15 var(--csyx-font, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
    letter-spacing: -.03em;
  }

  body.csyx-product-page:has(.cxdu-summary) .cxdu-summary__price {
    margin: 7px 0 0;
    color: #071a35;
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.04em;
    white-space: nowrap;
  }

  body.csyx-product-page:has(.cxdu-summary) .product-detail__info .block-product-title,
  body.csyx-product-page:has(.cxdu-summary) .product-detail__info .product-detail__title,
  body.csyx-product-page:has(.cxdu-summary) .product-detail__info .product-detail__price {
    display: none !important;
  }

  body.csyx-product-page:has(.cxdu-summary) .cxdu-summary__intro {
    margin: 8px 0 0;
    color: #53615d;
    font-size: clamp(11.5px, 3.2vw, 13px);
    font-weight: 650;
    letter-spacing: -.01em;
    line-height: 1.38;
  }

  body.csyx-product-page:has(.cxdu-summary) .cxdu-summary__shipping {
    margin: 8px 0 0;
    padding-top: 8px;
    border-top: 1px solid #e3e8e5;
    color: #23663b;
    font-size: clamp(11px, 3.1vw, 12.5px);
    font-weight: 750;
    letter-spacing: -.01em;
    line-height: 1.35;
    white-space: nowrap;
  }

  body.csyx-product-page:has(.cxdu-summary)
    .cxdu-summary:not(:has(.cxdu-viewer-activity))::after {
    content: "";
    display: block;
    height: 18px;
    margin-top: 7px;
  }

  /* Reserve the square primary media plus the existing thumbnail rail before
   * the carousel hydrates. This prevents the rail and purchase form moving by
   * one viewport width when the first image becomes measurable. */
  body.csyx-product-page .product-detail__media-gallery > .media-gallery__content {
    min-height: calc(100vw + 88px);
  }

  body.csyx-product-page .media-gallery__content > .media-gallery__list-wrapper,
  body.csyx-product-page .media-gallery__content .media-gallery__list {
    min-height: 100vw;
  }

  /* The discount app mounts about 65px of UI after first paint. Reserve its exact
   * in-flow footprint until it has content so variants do not jump by 73px. */
  body.single-product-landing
    .product-detail__info:has(> .cxdu-desktop-policy):not(:has(> .discount-style-plugin:not(:empty)))
    > .product-detail__variant-picker {
    margin-top: 73px !important;
  }

  /* SHOPLINE injects the accelerated checkout button after the native add button.
   * Preserve the final two-button height during that short initialization window. */
  body.single-product-landing .gv-purchase-card .product-detail__buy-buttons {
    min-height: 97px;
  }

  .cxacxc-prepurchase-buy {
    position: fixed;
    z-index: 990;
    right: 12px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 12px;
    box-sizing: border-box;
    display: flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    border: 1px solid #126f37;
    border-radius: 12px;
    background: #168943;
    box-shadow: 0 10px 28px rgba(10, 46, 28, 0.22);
    color: #fff;
    font: 750 15px/1.2 Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: 0;
    opacity: 0;
    pointer-events: none;
    transform: translateY(calc(100% + 18px));
    visibility: hidden;
    transition: opacity 160ms ease-out, transform 160ms ease-out, visibility 0s linear 160ms;
  }

  .cxacxc-prepurchase-buy.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
    transition-delay: 0s;
  }

  .cxacxc-prepurchase-buy:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.95);
    outline-offset: -5px;
  }

  .cxacxc-prepurchase-buy:active {
    transform: translateY(1px);
  }
}

@media (min-width: 750px) {
  .cxacxc-prepurchase-buy {
    display: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cxacxc-prepurchase-buy {
    transition: none !important;
  }
}

/* Coupon-first mobile entry. Existing inline/native purchase controls retained. */
.cx-coupon-entry{display:none}
@media(max-width:749px){
 body.single-product-landing.cx-coupon-unclaimed .gv-purchase-card theme-sticky-position.is-sticky{visibility:hidden!important;pointer-events:none!important}
 .cx-coupon-entry{position:fixed;z-index:990;left:0;right:0;bottom:0;display:block;padding:9px 12px max(10px,env(safe-area-inset-bottom));background:#fafbf9;box-shadow:0 -4px 20px #0a203d12;box-sizing:border-box;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(100%);transition:opacity .16s ease,transform .16s ease,visibility 0s .16s;font-family:Manrope,Inter,system-ui,sans-serif;color:#0a203d}
 .cx-coupon-entry.is-visible{visibility:visible;opacity:1;pointer-events:auto;transform:none;transition-delay:0s}
 .cx-coupon-entry__info{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:9px;align-items:center;margin-bottom:7px;min-width:0}
 .cx-coupon-entry__info[hidden]{display:none}
 .cx-coupon-entry__info img{width:42px;height:42px;object-fit:cover;border-radius:7px}
 .cx-coupon-entry__options{font-size:12px;font-weight:700;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}
 .cx-coupon-entry__amount{text-align:right;white-space:nowrap}
 .cx-coupon-entry__amount small{display:block;font-size:9px;font-weight:500;line-height:1.3}
 .cx-coupon-entry__amount strong{font-size:20px;line-height:1.2;color:#168943;font-weight:800}
 .cx-coupon-entry__action{display:block;width:100%;min-height:49px;padding:10px 12px;background:#168943;color:white;border:1px solid #126f37;border-radius:11px;font:750 15px/1.35 Manrope,Inter,system-ui,sans-serif;cursor:pointer;box-sizing:border-box}
 .cx-coupon-entry__action:disabled{opacity:.75;cursor:wait}
 .cx-coupon-entry__action:focus-visible{outline:2px solid #0a203d;outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){.cx-coupon-entry{transition:none}}
