/* ============================================================
   GoGiftings V27 — Cake & Personalised Product Page Layout Fix
   
   ROOT CAUSE:
   The base .gg-unified-product grid is 3 columns:
     [86px gallery-rail] [main-visual] [product-summary]
   
   But it has an extra row child: .flower-promises-row
   which was only given explicit placement for .gg-category-flowers.
   On cake and personalised pages, it becomes an unplaced 4th child
   that collapses the entire grid.
   
   FIX STRATEGY:
   1. Hide .flower-promises-row on non-flower product pages
   2. Define explicit clean 2-column grid for cake & personalised:
      [86px gallery-rail] [main-visual + product-summary side by side]
   3. Ensure variant strip, custom panels, CTAs all render correctly
   4. Fix image sizing and alignment for both categories
   ============================================================ */

/* ─── 1. UNIVERSAL PRODUCT PAGE — clean unified 3-col grid ─── */
body.gg-unified-product .product-page,
body.cake-product-page-final .product-page,
body.cakes-match-flower-product .product-page,
body.gg-category-cakes.gg-unified-product .product-page,
body.gg-personalised-product-v23 .product-page,
body.gg-personalised-v23.gg-unified-product .product-page,
body.gg-category-personalized.gg-unified-product .product-page {
  display: grid !important;
  grid-template-columns: 86px minmax(340px, 540px) minmax(320px, 1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 28px !important;
  align-items: start !important;
  padding: 28px !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 16px 50px rgba(38, 18, 38, 0.06) !important;
  border: 1px solid rgba(246, 39, 128, 0.08) !important;
}

/* Gallery rail: col 1, row 1 */
body.gg-unified-product .product-page .gallery-rail,
body.cake-product-page-final .product-page .gallery-rail,
body.cakes-match-flower-product .product-page .gallery-rail,
body.gg-category-cakes.gg-unified-product .product-page .gallery-rail,
body.gg-personalised-product-v23 .product-page .gallery-rail,
body.gg-personalised-v23.gg-unified-product .product-page .gallery-rail,
body.gg-category-personalized.gg-unified-product .product-page .gallery-rail {
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-self: start !important;
}

/* Main image: col 2, row 1 */
body.gg-unified-product .product-page .main-visual,
body.cake-product-page-final .product-page .main-visual,
body.cakes-match-flower-product .product-page .main-visual,
body.gg-category-cakes.gg-unified-product .product-page .main-visual,
body.gg-personalised-product-v23 .product-page .main-visual,
body.gg-personalised-v23.gg-unified-product .product-page .main-visual,
body.gg-category-personalized.gg-unified-product .product-page .main-visual {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
}

/* Promises row: col 1 / 3, row 2 (under visual on left side) */
body.gg-unified-product .product-page .flower-promises-row,
body.gg-unified-product .product-page .premium-product-promises,
body.cake-product-page-final .product-page .flower-promises-row,
body.cake-product-page-final .product-page .premium-product-promises,
body.cakes-match-flower-product .product-page .flower-promises-row,
body.cakes-match-flower-product .product-page .premium-product-promises,
body.gg-category-cakes.gg-unified-product .product-page .flower-promises-row,
body.gg-category-cakes.gg-unified-product .product-page .premium-product-promises,
body.gg-personalised-product-v23 .product-page .flower-promises-row,
body.gg-personalised-product-v23 .product-page .premium-product-promises,
body.gg-personalised-v23.gg-unified-product .product-page .flower-promises-row,
body.gg-personalised-v23.gg-unified-product .product-page .premium-product-promises,
body.gg-category-personalized.gg-unified-product .product-page .flower-promises-row,
body.gg-category-personalized.gg-unified-product .product-page .premium-product-promises {
  grid-column: 1 / 3 !important;
  grid-row: 2 !important;
  align-self: start !important;
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 12px !important;
  margin-top: 4px !important;
}

body.gg-unified-product .flower-promises-row span,
body.gg-unified-product .premium-product-promises span {
  background: #fff7fb !important;
  border: 1px solid rgba(246, 39, 128, 0.14) !important;
  border-radius: 14px !important;
  padding: 12px 14px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #3d2d3e !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Product summary: col 3, row 1 / span 2 */
body.gg-unified-product .product-page .product-summary,
body.cake-product-page-final .product-page .product-summary,
body.cakes-match-flower-product .product-page .product-summary,
body.gg-category-cakes.gg-unified-product .product-page .product-summary,
body.gg-personalised-product-v23 .product-page .product-summary,
body.gg-personalised-v23.gg-unified-product .product-page .product-summary,
body.gg-category-personalized.gg-unified-product .product-page .product-summary {
  grid-column: 3 !important;
  grid-row: 1 / span 2 !important;
  align-self: start !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

/* ─── 4. MAIN VISUAL — square image, clean crop ────────────── */
body.cake-product-page-final .main-visual .visual-wrap,
body.cake-product-page-final .main-visual .image-visual-wrap,
body.cakes-match-flower-product .main-visual .visual-wrap,
body.gg-personalised-product-v23 .main-visual .visual-wrap,
body.gg-personalised-product-v23 .main-visual .image-visual-wrap {
  border-radius: 20px !important;
  overflow: hidden !important;
  aspect-ratio: 1 / 1 !important;
  background: #fff7fb !important;
  border: 1px solid #f0dce8 !important;
}

body.cake-product-page-final .main-visual img,
body.cakes-match-flower-product .main-visual img,
body.gg-personalised-product-v23 .main-visual img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: 20px !important;
}

/* ─── 5. GALLERY RAIL — consistent thumbnails ───────────────  */
body.cake-product-page-final .gallery-rail .gallery-thumb,
body.cakes-match-flower-product .gallery-rail .gallery-thumb,
body.gg-personalised-product-v23 .gallery-rail .gallery-thumb {
  width: 74px !important;
  height: 74px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 2px solid #eedaea !important;
  background: #fff !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  transition: border-color .2s !important;
}
body.cake-product-page-final .gallery-rail .gallery-thumb.active,
body.cakes-match-flower-product .gallery-rail .gallery-thumb.active,
body.gg-personalised-product-v23 .gallery-rail .gallery-thumb.active {
  border-color: #f62780 !important;
  box-shadow: 0 0 0 2px rgba(246,39,128,.2) !important;
}
body.cake-product-page-final .gallery-rail .gallery-thumb img,
body.cakes-match-flower-product .gallery-rail .gallery-thumb img,
body.gg-personalised-product-v23 .gallery-rail .gallery-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* ─── 6. PRODUCT SUMMARY — consistent typography & spacing ── */
body.cake-product-page-final .product-summary,
body.cakes-match-flower-product .product-summary,
body.gg-personalised-product-v23 .product-summary {
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

/* Title */
body.cake-product-page-final .product-summary h1,
body.cakes-match-flower-product .product-summary h1,
body.gg-personalised-product-v23 .product-summary h1 {
  font-size: clamp(20px, 2.2vw, 28px) !important;
  font-weight: 900 !important;
  color: #1a1625 !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}

/* Price box */
body.cake-product-page-final .price-box,
body.cake-product-page-final .cake-price-box-final,
body.gg-personalised-product-v23 .gg-v23-price {
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
body.cake-product-page-final .price-box .amount,
body.cake-product-page-final .gg-v23-price strong {
  font-size: 26px !important;
  font-weight: 900 !important;
  color: #f62780 !important;
}

/* Cake & Personalised message / input box */
body.gg-unified-product .custom-panel,
body.cake-product-page-final .cake-message-box-final,
body.cake-product-page-final .custom-panel,
body.cakes-match-flower-product .custom-panel,
body.gg-category-cakes .custom-panel,
body.gg-personalised-product-v23 .gg-v23-personalise-box,
body.gg-personalised-product-v23 .custom-panel,
body.gg-category-personalized .custom-panel {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  background: #fff8fc !important;
  border: 1.5px solid rgba(246,39,128,.15) !important;
  border-radius: 16px !important;
  padding: 14px 16px !important;
  margin: 0 0 4px !important;
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
}

body.gg-unified-product .custom-panel-title,
body.cake-product-page-final .cake-message-box-final span,
body.cake-product-page-final .custom-panel-title,
body.cakes-match-flower-product .custom-panel-title,
body.gg-category-cakes .custom-panel-title,
body.gg-personalised-product-v23 .gg-v23-personalise-box h3,
body.gg-personalised-product-v23 .custom-panel-title,
body.gg-category-personalized .custom-panel-title {
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #f62780 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

body.gg-unified-product .custom-field-wrap,
body.cake-product-page-final .custom-field-wrap,
body.cakes-match-flower-product .custom-field-wrap,
body.gg-category-cakes .custom-field-wrap,
body.gg-personalised-product-v23 .custom-field-wrap,
body.gg-category-personalized .custom-field-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
}

body.gg-unified-product .custom-field-label,
body.cake-product-page-final .custom-field-label,
body.cakes-match-flower-product .custom-field-label,
body.gg-category-cakes .custom-field-label,
body.gg-personalised-product-v23 .custom-field-label,
body.gg-category-personalized .custom-field-label {
  font-size: 11px !important;
  font-weight: 800 !important;
  color: #5a1a93 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  margin: 0 !important;
}

body.cake-product-page-final .cake-message-box-final input,
body.gg-personalised-product-v23 .gg-v23-personalise-box input,
body.gg-personalised-product-v23 .gg-v23-personalise-box textarea,
body.gg-unified-product .custom-field-input,
body.gg-unified-product .custom-field-textarea,
body.cake-product-page-final .custom-field-input,
body.cake-product-page-final .custom-field-textarea,
body.cakes-match-flower-product .custom-field-input,
body.cakes-match-flower-product .custom-field-textarea,
body.gg-category-cakes .custom-field-input,
body.gg-category-cakes .custom-field-textarea,
body.gg-personalised-product-v23 .custom-field-input,
body.gg-personalised-product-v23 .custom-field-textarea,
body.gg-category-personalized .custom-field-input,
body.gg-category-personalized .custom-field-textarea {
  border: 1.5px solid #f0cedd !important;
  border-radius: 12px !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  font-family: inherit !important;
  color: #2b1a24 !important;
  background: #fff !important;
  outline: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

body.gg-unified-product .custom-field-textarea,
body.cake-product-page-final .custom-field-textarea,
body.cakes-match-flower-product .custom-field-textarea,
body.gg-category-cakes .custom-field-textarea,
body.gg-personalised-product-v23 .custom-field-textarea,
body.gg-category-personalized .custom-field-textarea {
  min-height: 56px !important;
  max-height: 90px !important;
  resize: vertical !important;
}

body.cake-product-page-final .cake-message-box-final input:focus,
body.gg-personalised-product-v23 .gg-v23-personalise-box input:focus,
body.gg-unified-product .custom-field-input:focus,
body.gg-unified-product .custom-field-textarea:focus,
body.cake-product-page-final .custom-field-input:focus,
body.cake-product-page-final .custom-field-textarea:focus,
body.cakes-match-flower-product .custom-field-input:focus,
body.cakes-match-flower-product .custom-field-textarea:focus,
body.gg-category-cakes .custom-field-input:focus,
body.gg-category-cakes .custom-field-textarea:focus,
body.gg-personalised-product-v23 .custom-field-input:focus,
body.gg-personalised-product-v23 .custom-field-textarea:focus,
body.gg-category-personalized .custom-field-input:focus,
body.gg-category-personalized .custom-field-textarea:focus {
  border-color: #f62780 !important;
  box-shadow: 0 0 0 3px rgba(246,39,128,.1) !important;
}

body.gg-unified-product .custom-preview-pill,
body.cake-product-page-final .custom-preview-pill,
body.cakes-match-flower-product .custom-preview-pill,
body.gg-category-cakes .custom-preview-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #fff !important;
  border: 1.5px solid #f0cedd !important;
  border-radius: 999px !important;
  padding: 6px 12px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #5a1a93 !important;
  min-height: 32px !important;
}

body.gg-unified-product .custom-suggestions,
body.cake-product-page-final .custom-suggestions,
body.cakes-match-flower-product .custom-suggestions,
body.gg-category-cakes .custom-suggestions {
  display: flex !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
  margin-top: 2px !important;
  max-height: none !important;
}

/* ─── 7. VARIANT STRIP — cakes & personalised ───────────────  */
body.cake-product-page-final .cake-variant-final,
body.cake-product-page-final .variant-strip,
body.gg-personalised-product-v23 .variant-strip {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 8px !important;
}
body.cake-product-page-final .cake-variant-final .variant-card,
body.cake-product-page-final .variant-card,
body.gg-personalised-product-v23 .variant-card {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px !important;
  border: 1.5px solid #eedaea !important;
  border-radius: 14px !important;
  background: #fff !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: border-color .18s, background .18s !important;
}
body.cake-product-page-final .variant-card.active,
body.gg-personalised-product-v23 .variant-card.active {
  border-color: #f62780 !important;
  background: #fff6fa !important;
}
body.cake-product-page-final .variant-card img,
body.gg-personalised-product-v23 .variant-card img {
  width: 44px !important;
  height: 44px !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  flex-shrink: 0 !important;
}
body.cake-product-page-final .variant-card span,
body.gg-personalised-product-v23 .variant-card span {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #1a1625 !important;
  flex: 1 !important;
}
body.cake-product-page-final .variant-card strong,
body.gg-personalised-product-v23 .variant-card strong {
  font-size: 13px !important;
  font-weight: 900 !important;
  color: #f62780 !important;
}

/* ─── 8. CTA BUTTONS — unified height and style ─────────────  */
body.cake-product-page-final .cake-add-final,
body.cake-product-page-final .add-cart-premium-btn,
body.gg-personalised-product-v23 .gg-v23-add,
body.gg-personalised-product-v23 .add-cart-premium-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-height: 52px !important;
  background: linear-gradient(135deg, #f62780, #5a1a93) !important;
  color: #fff !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  border-radius: 16px !important;
  border: 0 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 28px rgba(246,39,128,.22) !important;
  cursor: pointer !important;
  transition: transform .2s, box-shadow .2s !important;
}
body.cake-product-page-final .cake-add-final:hover,
body.gg-personalised-product-v23 .gg-v23-add:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 16px 40px rgba(246,39,128,.30) !important;
}

body.gg-personalised-product-v23 .gg-v23-buy {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  margin-top: 8px !important;
  background: #fff !important;
  color: #f62780 !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  border-radius: 16px !important;
  border: 2px solid #f62780 !important;
  text-decoration: none !important;
  transition: background .2s, color .2s !important;
}
body.gg-personalised-product-v23 .gg-v23-buy:hover {
  background: #fff0f6 !important;
}

/* ─── 9. PROMISES ROW — cake & personalised version (2×2) ──── */
body.cake-product-page-final .premium-product-promises,
body.cake-product-page-final .cake-promises-final,
body.gg-personalised-product-v23 .gg-v23-promises {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  margin-top: 4px !important;
}
body.cake-product-page-final .premium-product-promises span,
body.cake-product-page-final .cake-promises-final span,
body.gg-personalised-product-v23 .gg-v23-promises span {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #fff7fb !important;
  border: 1px solid rgba(246,39,128,.12) !important;
  border-radius: 12px !important;
  padding: 9px 11px !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  color: #3d3040 !important;
}

/* ─── 10. DELIVERY INFO ROW ─────────────────────────────────── */
body.cake-product-page-final .gg-v23-delivery,
body.gg-personalised-product-v23 .gg-v23-delivery {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 12px 14px !important;
  background: #f0fff6 !important;
  border: 1px solid rgba(23,154,82,.18) !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  color: #0a5c33 !important;
  font-weight: 700 !important;
}

/* ─── 11. PAYMENTS / BNPL — already hidden by V26, reinforce ── */
body.cake-product-page-final .cake-payments-final,
body.gg-personalised-product-v23 .gg-v23-bnpl,
body.gg-personalised-product-v23 [class*="bnpl"],
body.cake-product-page-final [class*="bnpl"] {
  display: none !important;
}

/* ─── 12. DESCRIPTION TEXT ──────────────────────────────────── */
body.cake-product-page-final .cake-desc-final {
  font-size: 13.5px !important;
  line-height: 1.65 !important;
  color: #5e5267 !important;
  margin: 0 !important;
}

/* ─── 13. REVIEWS ROW — personalised ────────────────────────── */
body.gg-personalised-product-v23 .gg-v23-review-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13px !important;
}
body.gg-personalised-product-v23 .gg-v23-rating {
  font-weight: 900 !important;
  color: #f59e0b !important;
}

/* ─── 14. TABLET — 2-column (no rail) ───────────────────────── */
@media (max-width: 900px) {
  body.gg-unified-product .product-page,
  body.cake-product-page-final .product-page,
  body.cakes-match-flower-product .product-page,
  body.gg-category-cakes.gg-unified-product .product-page,
  body.gg-personalised-product-v23 .product-page,
  body.gg-category-personalized.gg-unified-product .product-page {
    grid-template-columns: 72px 1fr !important;
    gap: 18px !important;
    padding: 20px !important;
  }
  body.gg-unified-product .product-page .gallery-rail,
  body.cake-product-page-final .product-page .gallery-rail,
  body.cakes-match-flower-product .product-page .gallery-rail,
  body.gg-personalised-product-v23 .product-page .gallery-rail {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  body.gg-unified-product .product-page .main-visual,
  body.cake-product-page-final .product-page .main-visual,
  body.cakes-match-flower-product .product-page .main-visual,
  body.gg-personalised-product-v23 .product-page .main-visual {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  body.gg-unified-product .product-page .flower-promises-row,
  body.gg-unified-product .product-page .premium-product-promises,
  body.cake-product-page-final .product-page .flower-promises-row,
  body.cake-product-page-final .product-page .premium-product-promises,
  body.cakes-match-flower-product .product-page .flower-promises-row,
  body.gg-personalised-product-v23 .product-page .flower-promises-row,
  body.gg-personalised-product-v23 .product-page .premium-product-promises {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }
  body.gg-unified-product .product-page .product-summary,
  body.cake-product-page-final .product-page .product-summary,
  body.cakes-match-flower-product .product-page .product-summary,
  body.gg-personalised-product-v23 .product-page .product-summary {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
  }
}

/* ─── 15. MOBILE — single column stack ──────────────────────── */
@media (max-width: 640px) {
  body.gg-unified-product .product-page,
  body.cake-product-page-final .product-page,
  body.cakes-match-flower-product .product-page,
  body.gg-category-cakes.gg-unified-product .product-page,
  body.gg-personalised-product-v23 .product-page,
  body.gg-category-personalized.gg-unified-product .product-page {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    padding: 16px !important;
  }
  body.gg-unified-product .gallery-rail,
  body.cake-product-page-final .gallery-rail,
  body.gg-personalised-product-v23 .gallery-rail {
    flex-direction: row !important;
    overflow-x: auto !important;
    width: 100% !important;
    gap: 8px !important;
  }
  body.gg-unified-product .gallery-rail .gallery-thumb,
  body.cake-product-page-final .gallery-rail .gallery-thumb,
  body.gg-personalised-product-v23 .gallery-rail .gallery-thumb {
    flex: 0 0 68px !important;
  }
  body.gg-unified-product .variant-strip,
  body.cake-product-page-final .variant-strip,
  body.gg-personalised-product-v23 .variant-strip {
    grid-template-columns: 1fr !important;
  }
  body.gg-unified-product .flower-promises-row,
  body.gg-unified-product .premium-product-promises,
  body.cake-product-page-final .premium-product-promises,
  body.cake-product-page-final .cake-promises-final,
  body.gg-personalised-product-v23 .gg-v23-promises {
    grid-template-columns: 1fr !important;
  }
}

/* ─── 16. EXACT CTA BUTTON PARITY — Same layout, color, and padding across all categories ─── */
body.gg-unified-product .premium-product-actions,
body.cake-product-page-final .premium-product-actions,
body.cakes-match-flower-product .premium-product-actions,
body.gg-category-cakes .premium-product-actions,
body.gg-personalised-product-v23 .premium-product-actions,
body.gg-category-personalized .premium-product-actions,
.product-page .premium-product-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  width: 100% !important;
}

body.gg-unified-product .premium-product-actions .buy-now-theme-btn,
body.gg-unified-product .premium-product-actions .whatsapp-order-btn,
body.cake-product-page-final .premium-product-actions .buy-now-theme-btn,
body.cake-product-page-final .premium-product-actions .whatsapp-order-btn,
body.cakes-match-flower-product .premium-product-actions .buy-now-theme-btn,
body.cakes-match-flower-product .premium-product-actions .whatsapp-order-btn,
body.gg-category-cakes .premium-product-actions .buy-now-theme-btn,
body.gg-category-cakes .premium-product-actions .whatsapp-order-btn,
body.gg-personalised-product-v23 .premium-product-actions .buy-now-theme-btn,
body.gg-personalised-product-v23 .premium-product-actions .whatsapp-order-btn,
body.gg-category-personalized .premium-product-actions .buy-now-theme-btn,
body.gg-category-personalized .premium-product-actions .whatsapp-order-btn,
.product-page .premium-product-actions .buy-now-theme-btn,
.product-page .premium-product-actions .whatsapp-order-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 12px 18px !important;
  min-height: 60px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #f62780, #5a1a93) !important;
  border: 0 !important;
  color: #fff !important;
  box-shadow: 0 16px 40px rgba(246,39,128,.22) !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

body.gg-unified-product .premium-product-actions .buy-now-theme-btn:hover,
body.gg-unified-product .premium-product-actions .whatsapp-order-btn:hover,
.product-page .premium-product-actions .buy-now-theme-btn:hover,
.product-page .premium-product-actions .whatsapp-order-btn:hover {
  background: linear-gradient(135deg, #e01f72, #4a1480) !important;
  transform: translateY(-2px) scale(1.012) !important;
  box-shadow: 0 22px 52px rgba(246,39,128,.30) !important;
}

body.gg-unified-product .premium-product-actions .cta-ico,
body.gg-unified-product .premium-product-actions .wa-icon,
.product-page .premium-product-actions .cta-ico,
.product-page .premium-product-actions .wa-icon {
  width: 36px !important;
  height: 36px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.18) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.2) !important;
  color: #fff !important;
  font-size: 16px !important;
  flex-shrink: 0 !important;
  visibility: visible !important;
}

body.gg-unified-product .premium-product-actions strong,
body.gg-unified-product .premium-product-actions .wa-copy strong,
.product-page .premium-product-actions strong,
.product-page .premium-product-actions .wa-copy strong {
  display: block !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  color: #fff !important;
  text-align: left !important;
}

body.gg-unified-product .premium-product-actions em,
body.gg-unified-product .premium-product-actions .wa-copy em,
.product-page .premium-product-actions em,
.product-page .premium-product-actions .wa-copy em {
  display: block !important;
  font-style: normal !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  opacity: 0.88 !important;
  margin-top: 3px !important;
  color: #fff !important;
  text-align: left !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
}

body.gg-unified-product .premium-product-actions .wa-copy,
.product-page .premium-product-actions .wa-copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  text-align: left !important;
}

@media (max-width: 640px) {
  body.gg-unified-product .premium-product-actions,
  .product-page .premium-product-actions {
    grid-template-columns: 1fr !important;
  }
}

