
  /* Use site fonts: Nunito (body) + Open Sans (headings) */
  #pc-embed [data-host]{ --font-body:'Nunito','Figtree',system-ui,sans-serif !important; --font-display:'Open Sans',sans-serif !important; }
  #pc-embed [data-host], #pc-embed [data-host] p{ font-family:'Nunito','Figtree',system-ui,sans-serif !important; }

  /* Keep the homepage scroll background transition smooth: the nested design
     section must NOT inherit #pc-embed's --page-bg, or the scroll-blend script
     picks it up as a stray control point (mis-measured offset) and the page
     background jumps instead of easing. */
  /* Product cards must not break the homepage's one continuous scrolling
     background: keep the whole section transparent and out of the color
     transition, so there is no visible boundary above or below it. */
  #pc-embed, #pc-embed [data-host]{ background: transparent !important; }
  #pc-embed section{ --page-bg: initial !important; }

  /* Product modal layout + responsiveness */
  #pc-embed .pcm-top{ display:block; max-width:720px; }
  #pc-embed .pcm-visuals{ display:grid; grid-template-columns:0.92fr 0.92fr 1.3fr; gap:22px; align-items:stretch; }
  #pc-embed .pcm-checklist-card{ order:2; display:flex; flex-direction:column; justify-content:center; gap:17px; min-height:340px; padding:26px; border:1px solid color-mix(in srgb, var(--accent) 18%, #dfe3ee); border-radius:24px; background:#fff; box-shadow:0 12px 28px rgba(1,3,71,.05); }
  #pc-embed .pcm-animation-shell{ order:3; position:relative; display:flex; align-items:center; justify-content:center; min-height:420px; overflow:hidden; border:1px solid color-mix(in srgb, var(--accent) 18%, #dfe3ee); border-radius:24px; background:#fff; box-shadow:0 12px 28px rgba(1,3,71,.06); }
  #pc-embed .pcm-lottie-media{ position:absolute; inset:0; aspect-ratio:auto; max-width:none; border:0; border-radius:inherit; overflow:hidden; background:transparent; box-shadow:none; }
  #pc-embed .pcm-lottie-media .acf-homepage-hero__lottie{ position:absolute; inset:0; margin:0; width:100%; height:100%; }
  #pc-embed .pcm-lottie-media dotlottie-wc{ position:absolute; inset:0; width:100%; height:100%; display:block; border-radius:inherit; overflow:hidden; }
  #pc-embed .pcm-stat-card{ order:1; min-height:340px; box-shadow:0 12px 28px rgba(1,3,71,.08); }
  #pc-embed .pcm-features{ display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
  #pc-embed .pcm-scroll{ min-height:0; -webkit-overflow-scrolling:touch; }
  #pc-embed .pcm-primary-btn{ background:#010347; transition:background .18s; }
  #pc-embed .pcm-primary-btn:hover{ background:#0a0a5c; }
  #pc-embed .pcm-secondary-btn{ background:#F4F4F8; border:1.5px solid rgba(1,3,71,.10); box-shadow:inset 0 2px 5px rgba(1,3,71,.14), inset 0 -1px 1px rgba(255,255,255,.7); transition:border-color .18s, box-shadow .18s, background .18s; }
  #pc-embed .pcm-secondary-btn:hover{ background:#EFEFF5; border-color:rgba(1,3,71,.18); box-shadow:inset 0 2px 6px rgba(1,3,71,.20), inset 0 -1px 1px rgba(255,255,255,.7); }
  @media (max-width:1040px){
    #pc-embed .pcm-visuals{ grid-template-columns:1fr; }
    #pc-embed .pcm-lottie-media{ max-width:380px; }
    #pc-embed .pcm-stat-card{ min-height:260px; }
  }
  @media (max-width:860px){
    #pc-embed .pcm-features{ grid-template-columns:1fr; gap:20px; }
    #pc-embed .pcm-pad{ padding:42px 24px 30px !important; }
    #pc-embed .pcm-top h2{ font-size:27px !important; }
  }

  /* Product modal open/close states (replaces the old inline-style-driven show/hide) */
  #pcmBackdrop{ position:fixed; inset:0; background:rgba(14,10,38,.62); z-index:99999; opacity:0; pointer-events:none; transition:opacity .42s ease; }
  #pcmBackdrop.is-visible{ opacity:1; pointer-events:auto; }
  #pcmPanel{ position:fixed; left:50%; bottom:0; width:min(1180px,94vw); height:min(1040px,95vh); transform:translateX(-50%) translateY(101%); background:#fff; border-radius:30px 30px 0 0; overflow:hidden; z-index:100000; box-shadow:0 -30px 90px rgba(20,10,50,.32); transition:transform .54s cubic-bezier(.16,1,.3,1); will-change:transform; --accent:#6D3CCE; --accent-dark:#410AAC; }
  #pcmPanel.is-open{ transform:translateX(-50%) translateY(0); }
