{"id":1284,"date":"2026-09-15T12:26:42","date_gmt":"2026-09-15T16:26:42","guid":{"rendered":"https:\/\/hiropaper.ca\/?page_id=1284"},"modified":"2026-09-29T20:34:27","modified_gmt":"2026-09-30T00:34:27","slug":"1284-2","status":"publish","type":"page","link":"https:\/\/hiropaper.ca\/","title":{"rendered":"Card Printing"},"content":{"rendered":"<div id=\"hpBannerSlider\" class=\"hp-banner-slider-shell\">\r\n\r\n  <!-- LEFT ARROW -->\r\n  <button\r\n    type=\"button\"\r\n    class=\"hp-banner-nav hp-banner-prev\"\r\n    id=\"hpBannerPrev\"\r\n    aria-label=\"Previous banner\">\r\n    <span aria-hidden=\"true\">\u2039<\/span>\r\n  <\/button>\r\n\r\n\r\n  <!-- BANNER AREA -->\r\n  <div class=\"hp-banner-slider\"\r\n       aria-roledescription=\"carousel\"\r\n       aria-label=\"Hiro Paper banner slider\">\r\n\r\n    <div class=\"hp-banner-viewport\">\r\n\r\n      <div class=\"hp-banner-track\" id=\"hpBannerTrack\">\r\n\r\n        <!-- BANNER 1 -->\r\n        <div class=\"hp-banner-slide\">\r\n          <a href=\"https:\/\/www.youtube.com\/@HiroPaper\"\r\n             target=\"_blank\"\r\n             rel=\"noopener noreferrer\">\r\n            <img decoding=\"async\"\r\n              src=\"https:\/\/hiropaper.ca\/wp-content\/uploads\/2026\/09\/youtube.png\"\r\n              alt=\"Hiro Paper YouTube\">\r\n          <\/a>\r\n        <\/div>\r\n\r\n        <!-- BANNER 2 -->\r\n        <div class=\"hp-banner-slide\">\r\n          <a href=\"https:\/\/hiropaper.ca\/?product_cat=flm-cardstock\">\r\n            <img decoding=\"async\"\r\n              src=\"https:\/\/hiropaper.ca\/wp-content\/uploads\/2026\/09\/flm.png\"\r\n              alt=\"Feels Like Magic Paper\">\r\n          <\/a>\r\n        <\/div>\r\n\r\n        <!-- BANNER 3 -->\r\n        <div class=\"hp-banner-slide\">\r\n          <a href=\"https:\/\/hiropaper.ca\/?page_id=1304\">\r\n            <img decoding=\"async\"\r\n              src=\"https:\/\/hiropaper.ca\/wp-content\/uploads\/2026\/09\/creator.png\"\r\n              alt=\"Feels Like Magic Paper\">\r\n          <\/a>\r\n        <\/div>\r\n\r\n        <!--\r\n        TO ADD MORE BANNERS:\r\n\r\n        <div class=\"hp-banner-slide\">\r\n          <a href=\"YOUR-LINK\">\r\n            <img decoding=\"async\"\r\n              src=\"YOUR-728x90-IMAGE.png\"\r\n              alt=\"Banner description\">\r\n          <\/a>\r\n        <\/div>\r\n\r\n        -->\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n\r\n  <!-- RIGHT ARROW -->\r\n  <button\r\n    type=\"button\"\r\n    class=\"hp-banner-nav hp-banner-next\"\r\n    id=\"hpBannerNext\"\r\n    aria-label=\"Next banner\">\r\n    <span aria-hidden=\"true\">\u203a<\/span>\r\n  <\/button>\r\n\r\n<\/div>\r\n\r\n\r\n\r\n<style>\r\n\r\n  \/* ============================================================\r\n     MAIN SLIDER\r\n     ============================================================ *\/\r\n\r\n  #hpBannerSlider{\r\n\r\n    --bannerW: 728px;\r\n    --bannerH: 90px;\r\n\r\n    --arrowW: 34px;\r\n    --arrowGap: 8px;\r\n\r\n    --radius: 8px;\r\n    --shadow: 0 5px 18px rgba(0,0,0,.18);\r\n\r\n\r\n    \/*\r\n       Full desktop width:\r\n\r\n       34px arrow\r\n       + 8px gap\r\n       + 728px banner\r\n       + 8px gap\r\n       + 34px arrow\r\n\r\n       = 812px total\r\n    *\/\r\n\r\n    width: min(812px, 100%);\r\n\r\n    margin: 0 auto;\r\n\r\n\r\n    \/*\r\n       Arrow | Banner | Arrow\r\n    *\/\r\n\r\n    display: grid;\r\n\r\n    grid-template-columns:\r\n      var(--arrowW)\r\n      minmax(0, 728px)\r\n      var(--arrowW);\r\n\r\n    column-gap: var(--arrowGap);\r\n\r\n    align-items: center;\r\n  }\r\n\r\n\r\n  #hpBannerSlider *{\r\n    box-sizing: border-box;\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     CENTER BANNER AREA\r\n     ============================================================ *\/\r\n\r\n  #hpBannerSlider .hp-banner-slider{\r\n\r\n    position: relative;\r\n\r\n    width: 100%;\r\n    min-width: 0;\r\n\r\n    user-select: none;\r\n  }\r\n\r\n\r\n  #hpBannerSlider .hp-banner-viewport{\r\n\r\n    width: 100%;\r\n\r\n    height: var(--bannerH);\r\n\r\n    overflow: hidden;\r\n\r\n    position: relative;\r\n\r\n    border-radius: var(--radius);\r\n\r\n    box-shadow: var(--shadow);\r\n\r\n    background: transparent;\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     SLIDE TRACK\r\n     ============================================================ *\/\r\n\r\n  #hpBannerSlider .hp-banner-track{\r\n\r\n    height: 100%;\r\n\r\n    display: flex;\r\n\r\n    will-change: transform;\r\n\r\n    transform: translate3d(0,0,0);\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     INDIVIDUAL BANNERS\r\n     ============================================================ *\/\r\n\r\n  #hpBannerSlider .hp-banner-slide{\r\n\r\n    flex: 0 0 var(--bannerW);\r\n\r\n    width: var(--bannerW);\r\n\r\n    height: var(--bannerH);\r\n\r\n    overflow: hidden;\r\n\r\n    position: relative;\r\n\r\n    background: transparent;\r\n  }\r\n\r\n\r\n  #hpBannerSlider .hp-banner-slide a{\r\n\r\n    display: block;\r\n\r\n    width: 100%;\r\n\r\n    height: 100%;\r\n  }\r\n\r\n\r\n  #hpBannerSlider .hp-banner-slide img{\r\n\r\n    display: block;\r\n\r\n    width: 100%;\r\n\r\n    height: 100%;\r\n\r\n    object-fit: cover;\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     NAVIGATION ARROWS\r\n     ============================================================ *\/\r\n\r\n  #hpBannerSlider .hp-banner-nav{\r\n\r\n    position: relative;\r\n\r\n    width: var(--arrowW);\r\n\r\n    height: var(--arrowW);\r\n\r\n    padding: 0;\r\n\r\n    border-radius: 999px;\r\n\r\n    border:\r\n      1px solid\r\n      rgba(255,255,255,.22);\r\n\r\n    background:\r\n      rgba(0,0,0,.38);\r\n\r\n    color: #fff;\r\n\r\n    display: grid;\r\n\r\n    place-items: center;\r\n\r\n    cursor: pointer;\r\n\r\n    z-index: 10;\r\n\r\n    backdrop-filter: blur(4px);\r\n\r\n    -webkit-tap-highlight-color:\r\n      transparent;\r\n  }\r\n\r\n\r\n  #hpBannerSlider .hp-banner-nav span{\r\n\r\n    font-size: 27px;\r\n\r\n    line-height: 1;\r\n\r\n    transform: translateY(-1px);\r\n\r\n    user-select: none;\r\n  }\r\n\r\n\r\n  #hpBannerSlider .hp-banner-nav:hover{\r\n\r\n    background:\r\n      rgba(0,0,0,.58);\r\n  }\r\n\r\n\r\n  #hpBannerSlider .hp-banner-nav:active{\r\n\r\n    transform: scale(.96);\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     MOBILE\r\n     ============================================================ *\/\r\n\r\n  @media (max-width: 520px){\r\n\r\n    #hpBannerSlider{\r\n\r\n      --arrowW: 30px;\r\n\r\n      --arrowGap: 5px;\r\n    }\r\n\r\n\r\n    #hpBannerSlider .hp-banner-nav span{\r\n\r\n      font-size: 24px;\r\n    }\r\n\r\n  }\r\n\r\n<\/style>\r\n\r\n\r\n\r\n<script>\r\n\r\n(function(){\r\n\r\n  const root =\r\n    document.getElementById(\r\n      'hpBannerSlider'\r\n    );\r\n\r\n\r\n  if (!root) return;\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     PREVENT DOUBLE INITIALIZATION\r\n     ============================================================ *\/\r\n\r\n  if (\r\n    root.dataset.hpBannerInited === \"1\"\r\n  ){\r\n    return;\r\n  }\r\n\r\n\r\n  root.dataset.hpBannerInited = \"1\";\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     ELEMENTS\r\n     ============================================================ *\/\r\n\r\n  const track =\r\n    root.querySelector(\r\n      '#hpBannerTrack'\r\n    );\r\n\r\n\r\n  const viewport =\r\n    root.querySelector(\r\n      '.hp-banner-viewport'\r\n    );\r\n\r\n\r\n  const btnPrev =\r\n    root.querySelector(\r\n      '#hpBannerPrev'\r\n    );\r\n\r\n\r\n  const btnNext =\r\n    root.querySelector(\r\n      '#hpBannerNext'\r\n    );\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     STATE\r\n     ============================================================ *\/\r\n\r\n  let currentIndex = 1;\r\n\r\n  let isAnimating = false;\r\n\r\n\r\n\r\n  \/*\r\n     Normal automatic scrolling delay\r\n     = 9 seconds\r\n  *\/\r\n\r\n  const AUTOPLAY_MS = 9000;\r\n\r\n\r\n\r\n  \/*\r\n     After manually clicking an arrow,\r\n     wait 12 seconds before autoplay\r\n     resumes.\r\n  *\/\r\n\r\n  const PAUSE_AFTER_INTERACTION_MS =\r\n    12000;\r\n\r\n\r\n\r\n  let autoplayTimer = null;\r\n\r\n  let resumeTimer = null;\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     CREATE CLONES FOR INFINITE LOOP\r\n     ============================================================ *\/\r\n\r\n  function setupClones(){\r\n\r\n    const slides =\r\n      Array.from(\r\n        track.children\r\n      );\r\n\r\n\r\n    \/*\r\n       No need to create clones if\r\n       there is only one banner.\r\n    *\/\r\n\r\n    if (slides.length < 2){\r\n      return;\r\n    }\r\n\r\n\r\n    const first =\r\n      slides[0];\r\n\r\n\r\n    const last =\r\n      slides[\r\n        slides.length - 1\r\n      ];\r\n\r\n\r\n    const firstClone =\r\n      first.cloneNode(true);\r\n\r\n\r\n    const lastClone =\r\n      last.cloneNode(true);\r\n\r\n\r\n    firstClone.setAttribute(\r\n      'data-clone',\r\n      'true'\r\n    );\r\n\r\n\r\n    lastClone.setAttribute(\r\n      'data-clone',\r\n      'true'\r\n    );\r\n\r\n\r\n    track.insertBefore(\r\n      lastClone,\r\n      first\r\n    );\r\n\r\n\r\n    track.appendChild(\r\n      firstClone\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     RESPONSIVE 728 \u00d7 90 LAYOUT\r\n     ============================================================ *\/\r\n\r\n  function updateLayout(){\r\n\r\n\r\n    \/*\r\n       IMPORTANT:\r\n\r\n       We measure ONLY the center banner\r\n       viewport.\r\n\r\n       The arrows are outside the viewport\r\n       and therefore do not affect the\r\n       banner aspect ratio.\r\n    *\/\r\n\r\n    const availableWidth =\r\n      viewport.clientWidth;\r\n\r\n\r\n\r\n    \/*\r\n       Banner cannot exceed 728px.\r\n\r\n       On smaller screens it shrinks\r\n       proportionally.\r\n    *\/\r\n\r\n    const bannerW =\r\n      Math.min(\r\n        728,\r\n        availableWidth\r\n      );\r\n\r\n\r\n\r\n    \/*\r\n       Maintain exact 728 \u00d7 90\r\n       aspect ratio.\r\n    *\/\r\n\r\n    const bannerH =\r\n      bannerW *\r\n      (90 \/ 728);\r\n\r\n\r\n\r\n    root.style.setProperty(\r\n      '--bannerW',\r\n      bannerW + 'px'\r\n    );\r\n\r\n\r\n    root.style.setProperty(\r\n      '--bannerH',\r\n      bannerH + 'px'\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     GET CURRENT BANNER WIDTH\r\n     ============================================================ *\/\r\n\r\n  function getBannerWidth(){\r\n\r\n    const slide =\r\n      track.querySelector(\r\n        '.hp-banner-slide'\r\n      );\r\n\r\n\r\n    if (!slide){\r\n      return 0;\r\n    }\r\n\r\n\r\n    return (\r\n      slide\r\n        .getBoundingClientRect()\r\n        .width\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     CALCULATE TRACK POSITION\r\n     ============================================================ *\/\r\n\r\n  function computeTranslate(index){\r\n\r\n    const bannerWidth =\r\n      getBannerWidth();\r\n\r\n\r\n    return -(\r\n      index *\r\n      bannerWidth\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     MOVE TRACK\r\n     ============================================================ *\/\r\n\r\n  function setTranslate(\r\n    x,\r\n    animate\r\n  ){\r\n\r\n    track.style.transition =\r\n      animate\r\n\r\n        ? 'transform 420ms ease'\r\n\r\n        : 'none';\r\n\r\n\r\n    track.style.transform =\r\n      `translate3d(${x}px, 0, 0)`;\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     GO TO SLIDE\r\n     ============================================================ *\/\r\n\r\n  function goTo(\r\n    index,\r\n    animate = true\r\n  ){\r\n\r\n\r\n    if (isAnimating){\r\n      return;\r\n    }\r\n\r\n\r\n    isAnimating = true;\r\n\r\n\r\n    currentIndex = index;\r\n\r\n\r\n    setTranslate(\r\n      computeTranslate(\r\n        currentIndex\r\n      ),\r\n      animate\r\n    );\r\n\r\n\r\n\r\n    \/*\r\n       If no animation is being used\r\n       there is no transition-end event.\r\n    *\/\r\n\r\n    if (!animate){\r\n\r\n      isAnimating = false;\r\n\r\n      return;\r\n    }\r\n\r\n\r\n\r\n    const onDone = () => {\r\n\r\n\r\n      track.removeEventListener(\r\n        'transitionend',\r\n        onDone\r\n      );\r\n\r\n\r\n\r\n      \/*\r\n         The track contains:\r\n\r\n         clone last\r\n         real slides...\r\n         clone first\r\n\r\n         So subtract 2 to find\r\n         the real banner count.\r\n      *\/\r\n\r\n      const realSlidesCount =\r\n        track.children.length - 2;\r\n\r\n\r\n\r\n      \/*\r\n         We moved onto the fake\r\n         LAST banner at the beginning.\r\n\r\n         Jump instantly to the real\r\n         last banner.\r\n      *\/\r\n\r\n      if (\r\n        currentIndex === 0\r\n      ){\r\n\r\n        currentIndex =\r\n          realSlidesCount;\r\n\r\n\r\n        setTranslate(\r\n          computeTranslate(\r\n            currentIndex\r\n          ),\r\n          false\r\n        );\r\n\r\n      }\r\n\r\n\r\n\r\n      \/*\r\n         We moved onto the fake\r\n         FIRST banner at the end.\r\n\r\n         Jump instantly back to the\r\n         real first banner.\r\n      *\/\r\n\r\n      else if (\r\n        currentIndex ===\r\n        realSlidesCount + 1\r\n      ){\r\n\r\n        currentIndex = 1;\r\n\r\n\r\n        setTranslate(\r\n          computeTranslate(\r\n            currentIndex\r\n          ),\r\n          false\r\n        );\r\n\r\n      }\r\n\r\n\r\n\r\n      isAnimating = false;\r\n\r\n    };\r\n\r\n\r\n\r\n    track.addEventListener(\r\n      'transitionend',\r\n      onDone\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     NEXT \/ PREVIOUS\r\n     ============================================================ *\/\r\n\r\n  function next(){\r\n\r\n    goTo(\r\n      currentIndex + 1,\r\n      true\r\n    );\r\n\r\n  }\r\n\r\n\r\n  function prev(){\r\n\r\n    goTo(\r\n      currentIndex - 1,\r\n      true\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     STOP AUTOPLAY\r\n     ============================================================ *\/\r\n\r\n  function stopAutoplay(){\r\n\r\n\r\n    if (autoplayTimer){\r\n\r\n      clearInterval(\r\n        autoplayTimer\r\n      );\r\n\r\n    }\r\n\r\n\r\n    autoplayTimer = null;\r\n\r\n\r\n\r\n    if (resumeTimer){\r\n\r\n      clearTimeout(\r\n        resumeTimer\r\n      );\r\n\r\n    }\r\n\r\n\r\n    resumeTimer = null;\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     START AUTOPLAY\r\n     ============================================================ *\/\r\n\r\n  function startAutoplay(){\r\n\r\n\r\n    stopAutoplay();\r\n\r\n\r\n\r\n    autoplayTimer =\r\n      setInterval(\r\n        () => {\r\n\r\n\r\n          \/*\r\n             Only advance if the\r\n             banner is currently\r\n             somewhere on screen.\r\n          *\/\r\n\r\n          const rect =\r\n            root.getBoundingClientRect();\r\n\r\n\r\n          const onScreen =\r\n\r\n            rect.bottom > 0\r\n\r\n            &&\r\n\r\n            rect.top <\r\n              window.innerHeight;\r\n\r\n\r\n\r\n          if (!onScreen){\r\n            return;\r\n          }\r\n\r\n\r\n\r\n          next();\r\n\r\n\r\n        },\r\n\r\n        AUTOPLAY_MS\r\n      );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     PAUSE AFTER MANUAL INTERACTION\r\n     ============================================================ *\/\r\n\r\n  function pauseAndResumeAutoplay(){\r\n\r\n\r\n    stopAutoplay();\r\n\r\n\r\n\r\n    resumeTimer =\r\n      setTimeout(\r\n\r\n        startAutoplay,\r\n\r\n        PAUSE_AFTER_INTERACTION_MS\r\n\r\n      );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     INITIAL SETUP\r\n     ============================================================ *\/\r\n\r\n  setupClones();\r\n\r\n\r\n\r\n  function init(){\r\n\r\n\r\n    updateLayout();\r\n\r\n\r\n\r\n    \/*\r\n       Index 0 is the cloned last slide.\r\n\r\n       Index 1 is therefore the actual\r\n       first banner.\r\n    *\/\r\n\r\n    goTo(\r\n      1,\r\n      false\r\n    );\r\n\r\n\r\n    startAutoplay();\r\n\r\n  }\r\n\r\n\r\n\r\n  if (\r\n    document.readyState ===\r\n    \"complete\"\r\n  ){\r\n\r\n    init();\r\n\r\n  }\r\n\r\n  else{\r\n\r\n    window.addEventListener(\r\n      'load',\r\n      init\r\n    );\r\n\r\n  }\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     WINDOW RESIZE\r\n     ============================================================ *\/\r\n\r\n  window.addEventListener(\r\n    'resize',\r\n    () => {\r\n\r\n\r\n      updateLayout();\r\n\r\n\r\n      \/*\r\n         Recalculate the current banner\r\n         position after its responsive\r\n         size changes.\r\n      *\/\r\n\r\n      goTo(\r\n        currentIndex,\r\n        false\r\n      );\r\n\r\n    }\r\n  );\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     RIGHT ARROW\r\n     ============================================================ *\/\r\n\r\n  btnNext.addEventListener(\r\n    'click',\r\n    () => {\r\n\r\n\r\n      next();\r\n\r\n\r\n      pauseAndResumeAutoplay();\r\n\r\n    }\r\n  );\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     LEFT ARROW\r\n     ============================================================ *\/\r\n\r\n  btnPrev.addEventListener(\r\n    'click',\r\n    () => {\r\n\r\n\r\n      prev();\r\n\r\n\r\n      pauseAndResumeAutoplay();\r\n\r\n    }\r\n  );\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     PAUSE WHILE MOUSE IS OVER SLIDER\r\n     ============================================================ *\/\r\n\r\n  root.addEventListener(\r\n    'mouseenter',\r\n    stopAutoplay\r\n  );\r\n\r\n\r\n  root.addEventListener(\r\n    'mouseleave',\r\n    startAutoplay\r\n  );\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     KEYBOARD \/ ACCESSIBILITY FOCUS\r\n     ============================================================ *\/\r\n\r\n  root.addEventListener(\r\n    'focusin',\r\n    stopAutoplay\r\n  );\r\n\r\n\r\n  root.addEventListener(\r\n    'focusout',\r\n    startAutoplay\r\n  );\r\n\r\n\r\n\r\n  \/* ============================================================\r\n     BROWSER TAB VISIBILITY\r\n     ============================================================ *\/\r\n\r\n  document.addEventListener(\r\n    'visibilitychange',\r\n    () => {\r\n\r\n\r\n      if (\r\n        document.hidden\r\n      ){\r\n\r\n        stopAutoplay();\r\n\r\n      }\r\n\r\n      else{\r\n\r\n        startAutoplay();\r\n\r\n      }\r\n\r\n    }\r\n  );\r\n\r\n\r\n})();\r\n\r\n<\/script>\n\n\n        <div class=\"hcp2\" data-hcp2-root>\n            <section class=\"hcp2-panel hcp2-service-overview\">\n                <div class=\"hcp2-service-copy\">\n                    <h2 class=\"hcp2-service-title\">Hiro Paper card printing service.<\/h2>\n                    <p class=\"hcp2-service-description\">Have us print your custom playing cards, trading cards, sports cards, and more on our Feels Like Magic 320GSM playing card cardstock.<\/p>\n                <\/div>\n                <div class=\"hcp2-service-pricing-wrap\">\n                    <h3 class=\"hcp2-service-pricing-title\">Pricing<\/h3>\n                    <div class=\"hcp2-service-pricing\" data-hcp2-service-pricing aria-live=\"polite\">\n                                                    <div class=\"hcp2-service-tier\" data-hcp2-service-tier=\"0\">\n                                <strong data-hcp2-service-tier-label>Tier 1<\/strong>\n                                <span class=\"hcp2-service-tier-range\" data-hcp2-service-tier-range>\u2014<\/span>\n                                <span class=\"hcp2-service-tier-price\" data-hcp2-service-tier-price>\u2014<\/span>\n                            <\/div>\n                                                    <div class=\"hcp2-service-tier\" data-hcp2-service-tier=\"1\">\n                                <strong data-hcp2-service-tier-label>Tier 2<\/strong>\n                                <span class=\"hcp2-service-tier-range\" data-hcp2-service-tier-range>\u2014<\/span>\n                                <span class=\"hcp2-service-tier-price\" data-hcp2-service-tier-price>\u2014<\/span>\n                            <\/div>\n                                                    <div class=\"hcp2-service-tier\" data-hcp2-service-tier=\"2\">\n                                <strong data-hcp2-service-tier-label>Tier 3<\/strong>\n                                <span class=\"hcp2-service-tier-range\" data-hcp2-service-tier-range>\u2014<\/span>\n                                <span class=\"hcp2-service-tier-price\" data-hcp2-service-tier-price>\u2014<\/span>\n                            <\/div>\n                                            <\/div>\n                    <p class=\"hcp2-service-pricing-note\">Tier pricing is graduated: each rate applies only to the cards within that tier. Reaching a lower rate does not change the price of cards in earlier tiers.<\/p>\n                <\/div>\n            <\/section>\n\n            <section class=\"hcp2-panel hcp2-intro\">\n                <div>\n                    <h2 class=\"hcp2-title\">Build your card order<\/h2>\n                    <p class=\"hcp2-subtitle\">Upload the card fronts you want printed. Every uploaded image starts as one card.<\/p>\n                <\/div>\n                <div class=\"hcp2-summary\" aria-live=\"polite\">\n                    <span><strong data-hcp2-total>0<\/strong> cards<\/span>\n                    <span><strong data-hcp2-designs>0<\/strong> designs<\/span>\n                <\/div>\n            <\/section>\n\n            <section class=\"hcp2-panel\">\n                <div class=\"hcp2-section-head\">\n                    <div>\n                        <div class=\"hcp2-step\">1<\/div>\n                        <div>\n                            <h3>Upload card fronts<\/h3>\n                            <p>PNG, JPG, JPEG or WEBP. You can add more files at any time.<\/p>\n                        <\/div>\n                    <\/div>\n                    <button type=\"button\" class=\"hcp2-btn hcp2-btn-primary\" data-hcp2-add-fronts>+ Add cards<\/button>\n                <\/div>\n\n                <input class=\"hcp2-hidden-input\" data-hcp2-front-input type=\"file\" accept=\"image\/png,image\/jpeg,image\/webp\" multiple>\n\n                <button type=\"button\" class=\"hcp2-dropzone\" data-hcp2-dropzone>\n                    <span class=\"hcp2-drop-icon\">\uff0b<\/span>\n                    <strong>Drop card images here<\/strong>\n                    <span>or click to choose files<\/span>\n                <\/button>\n\n                <div class=\"hcp2-upload-status\" data-hcp2-upload-status hidden aria-live=\"polite\"><\/div>\n\n                <details class=\"hcp2-mpc-import\" data-hcp2-mpc-import>\n                    <summary>I have an MPCFill XML file<\/summary>\n                    <div class=\"hcp2-mpc-import-body\">\n                        <p>Import an MPCFill XML file to add its cards to this order. The website will use preview images for editing; the original high-resolution Google Drive files are used when your order is processed.<\/p>\n                        <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-import-mpc>Upload MPCFill XML<\/button>\n                        <input class=\"hcp2-hidden-input\" type=\"file\" accept=\".xml,text\/xml,application\/xml\" data-hcp2-mpc-input>\n                        <div class=\"hcp2-bulk-status\" data-hcp2-mpc-status aria-live=\"polite\"><\/div>\n                    <\/div>\n                <\/details>\n\n                <details class=\"hcp2-bulk-framing\" data-hcp2-bulk-framing hidden>\n                    <summary>My card files include bleed<\/summary>\n                    <div class=\"hcp2-bulk-framing-body\">\n                        <div class=\"hcp2-bulk-copy\">\n                            <strong>My card files include bleed<\/strong>\n                            <span>Select the cards that share the same bleed amount, choose that amount below, and apply it only to those cards. This does not add bleed to your artwork; it tells Hiro how much existing bleed falls outside the finished 63 \u00d7 88 mm card. What you see in the previews is what will be printed. You can also change bleed for one card at a time by clicking its image.<\/span>\n                        <\/div>\n                        <div class=\"hcp2-bleed-selection-actions\">\n                            <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-select-all-bleed>Select all<\/button>\n                            <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-clear-bleed>Clear selection<\/button>\n                        <\/div>\n                        <div class=\"hcp2-bulk-controls\">\n                            <label>\n                                <span>Bleed amount<\/span>\n                                <select data-hcp2-bleed-size aria-label=\"Bleed amount\"><\/select>\n                            <\/label>\n                            <label>\n                                <span>Unit<\/span>\n                                <select data-hcp2-bleed-unit aria-label=\"Bleed unit\">\n                                    <option value=\"mm\" selected>mm<\/option>\n                                    <option value=\"in\">in<\/option>\n                                <\/select>\n                            <\/label>\n                            <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-apply-bleed>Apply to selected<\/button>\n                        <\/div>\n                        <div class=\"hcp2-bulk-status\" data-hcp2-bulk-status aria-live=\"polite\"><\/div>\n                    <\/div>\n                <\/details>\n                <div class=\"hcp2-mpc-bleed-warning\" data-hcp2-mpc-bleed-warning hidden>MPCFill bleed has been automatically adjusted. Review all previews before ordering.<\/div>\n\n                <div class=\"hcp2-empty\" data-hcp2-empty-fronts>No card fronts uploaded yet.<\/div>\n                <div class=\"hcp2-grid\" data-hcp2-grid><\/div>\n            <\/section>\n\n            <section class=\"hcp2-panel\">\n                <div class=\"hcp2-section-head\">\n                    <div>\n                        <div class=\"hcp2-step\">2<\/div>\n                        <div>\n                            <h3>Default card back<\/h3>\n                            <p>This upload is always treated as a back and can never become a card front.<\/p>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <input class=\"hcp2-hidden-input\" data-hcp2-default-back-input type=\"file\" accept=\"image\/png,image\/jpeg,image\/webp\">\n\n                <div class=\"hcp2-back-builder\">\n                    <button type=\"button\" class=\"hcp2-back-upload\" data-hcp2-default-back-button>\n                        <span class=\"hcp2-drop-icon\">\uff0b<\/span>\n                        <strong>Upload card back<\/strong>\n                    <\/button>\n                    <div class=\"hcp2-default-back-preview\" data-hcp2-default-back-preview hidden>\n                        <div class=\"hcp2-back-image-wrap\" data-hcp2-default-back-image-wrap>\n                            <img alt=\"Default card back preview\" data-hcp2-default-back-image>\n                            <button type=\"button\" class=\"hcp2-warning\" data-hcp2-default-back-warning hidden aria-label=\"Low resolution warning\">!<\/button>\n                            <button type=\"button\" class=\"hcp2-possible-bleed\" data-hcp2-default-back-bleed-warning hidden aria-label=\"Possible bleed warning\">!<\/button>\n                            <button type=\"button\" class=\"hcp2-preview-info\" data-hcp2-default-back-info hidden aria-label=\"Preview image information\">\u24d8<\/button>\n                            <button type=\"button\" class=\"hcp2-edit\" data-hcp2-edit-default-back aria-label=\"Adjust card back framing\" title=\"Adjust framing\">\u2922<\/button>\n                        <\/div>\n                        <div class=\"hcp2-back-actions\">\n                            <span data-hcp2-default-back-name><\/span>\n                            <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-change-default-back>Change<\/button>\n                            <button type=\"button\" class=\"hcp2-icon-btn hcp2-danger\" aria-label=\"Remove default card back\" title=\"Remove\" data-hcp2-remove-default-back>\ud83d\uddd1<\/button>\n                        <\/div>\n                    <\/div>\n                <\/div>\n\n                <div class=\"hcp2-back-bleed\" data-hcp2-back-bleed hidden>\n                    <div class=\"hcp2-bulk-copy\">\n                        <strong>My default back includes bleed<\/strong>\n                        <span>If your default card back includes bleed, select the amount below. This does not add bleed to your artwork; it tells Hiro how much existing bleed falls outside the finished card. Review the preview carefully\u2014what you see on this page is what will be printed. You can adjust the back by clicking its image.<\/span>\n                    <\/div>\n                    <div class=\"hcp2-bulk-controls\">\n                        <label>\n                            <span>Bleed amount<\/span>\n                            <select data-hcp2-back-bleed-size aria-label=\"Default back bleed amount\"><\/select>\n                        <\/label>\n                        <label>\n                            <span>Unit<\/span>\n                            <select data-hcp2-back-bleed-unit aria-label=\"Default back bleed unit\">\n                                <option value=\"mm\" selected>mm<\/option>\n                                <option value=\"in\">in<\/option>\n                            <\/select>\n                        <\/label>\n                        <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-apply-back-bleed>Apply bleed setting to back<\/button>\n                    <\/div>\n                    <div class=\"hcp2-bulk-status\" data-hcp2-back-bleed-status aria-live=\"polite\"><\/div>\n                <\/div>\n            <\/section>\n\n            <section class=\"hcp2-panel hcp2-review\">\n                <div class=\"hcp2-review-copy\">\n                    <strong data-hcp2-review-count>0 cards<\/strong>\n                    <span data-hcp2-review-minimum>\u2014<\/span>\n                    <span data-hcp2-review-tier>\u2014<\/span>\n                <\/div>\n                <div class=\"hcp2-review-price\">\n                    <span>Total<\/span>\n                    <strong data-hcp2-review-price>\u2014<\/strong>\n                    <small data-hcp2-review-shipping>\u2014<\/small>\n                <\/div>\n                <button type=\"button\" class=\"hcp2-btn hcp2-btn-primary\" data-hcp2-continue disabled>Continue<\/button>\n            <\/section>\n\n            <template data-hcp2-card-template>\n                <article class=\"hcp2-card\">\n                    <div class=\"hcp2-card-image-wrap\" data-hcp2-card-image-wrap>\n                        <img class=\"hcp2-card-image\" alt=\"Card preview\" data-hcp2-card-image>\n                        <label class=\"hcp2-bleed-select\" data-hcp2-bleed-select-wrap hidden title=\"Select card for bleed adjustment\">\n                            <input type=\"checkbox\" data-hcp2-bleed-select aria-label=\"Select card for bleed adjustment\">\n                            <span aria-hidden=\"true\">\u2713<\/span>\n                        <\/label>\n                        <button type=\"button\" class=\"hcp2-warning\" data-hcp2-warning hidden aria-label=\"Low resolution warning\">!<\/button>\n                        <button type=\"button\" class=\"hcp2-possible-bleed\" data-hcp2-possible-bleed hidden aria-label=\"Possible bleed warning\">!<\/button>\n                        <button type=\"button\" class=\"hcp2-preview-info\" data-hcp2-preview-info hidden aria-label=\"Preview image information\">\u24d8<\/button>\n                        <button type=\"button\" class=\"hcp2-flip\" data-hcp2-flip hidden aria-label=\"Flip card preview\" title=\"Flip front\/back\">\u21bb<\/button>\n                        <button type=\"button\" class=\"hcp2-edit\" data-hcp2-edit aria-label=\"Adjust card framing\" title=\"Adjust framing\">\u2922<\/button>\n                        <span class=\"hcp2-side-label\" data-hcp2-side-label hidden>Back<\/span>\n                    <\/div>\n                    <div class=\"hcp2-card-body\">\n                        <div class=\"hcp2-card-name\" data-hcp2-card-name><\/div>\n                        <div class=\"hcp2-card-controls\">\n                            <div class=\"hcp2-qty\" aria-label=\"Card quantity\">\n                                <button type=\"button\" aria-label=\"Decrease quantity\" data-hcp2-minus>\u2212<\/button>\n                                <span data-hcp2-qty>1<\/span>\n                                <button type=\"button\" aria-label=\"Increase quantity\" data-hcp2-plus>+<\/button>\n                            <\/div>\n                            <button type=\"button\" class=\"hcp2-icon-btn hcp2-danger\" aria-label=\"Remove card\" title=\"Remove card\" data-hcp2-trash>\ud83d\uddd1<\/button>\n                        <\/div>\n                        <button type=\"button\" class=\"hcp2-special-back\" data-hcp2-special-back>+ Add special back<\/button>\n                        <input class=\"hcp2-hidden-input\" type=\"file\" accept=\"image\/png,image\/jpeg,image\/webp\" data-hcp2-special-back-input>\n                        <div class=\"hcp2-special-back-actions\" data-hcp2-special-back-actions hidden>\n                            <span>Special back added<\/span>\n                            <button type=\"button\" data-hcp2-change-special-back>Change<\/button>\n                            <button type=\"button\" data-hcp2-remove-special-back>Remove<\/button>\n                        <\/div>\n                    <\/div>\n                <\/article>\n            <\/template>\n\n            <!-- Crop\/framing editor -->\n            <div class=\"hcp2-modal\" data-hcp2-crop-modal hidden role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"hcp2CropTitle\">\n                <div class=\"hcp2-modal-card\">\n                    <div class=\"hcp2-modal-head\">\n                        <h3 id=\"hcp2CropTitle\" data-hcp2-crop-title>Adjust card framing<\/h3>\n                        <button type=\"button\" class=\"hcp2-modal-close\" data-hcp2-crop-close aria-label=\"Close\">\u00d7<\/button>\n                    <\/div>\n                    <div class=\"hcp2-crop-body\">\n                        <p class=\"hcp2-crop-help\">Drag the image to position it. Use the slider, mouse wheel, or pinch gesture to zoom. The dotted rounded line is the finished 63 \u00d7 88 mm card.<\/p>\n\n                        <div class=\"hcp2-crop-possible-bleed\" data-hcp2-crop-possible-bleed hidden role=\"status\">\n                            <span class=\"hcp2-crop-possible-bleed-icon\" aria-hidden=\"true\">!<\/span>\n                            <span data-hcp2-crop-possible-bleed-text><\/span>\n                        <\/div>\n\n                        <div class=\"hcp2-crop-stage\" data-hcp2-crop-stage>\n                            <div class=\"hcp2-crop-host\" data-hcp2-crop-host>\n                                <img alt=\"Crop preview\" data-hcp2-crop-image>\n                                <div class=\"hcp2-trim-guide\" aria-hidden=\"true\"><\/div>\n                            <\/div>\n                        <\/div>\n\n                        <div class=\"hcp2-crop-bleed-row\">\n                            <label>\n                                <span>Bleed<\/span>\n                                <select data-hcp2-crop-bleed aria-label=\"Bleed\"><\/select>\n                            <\/label>\n                        <\/div>\n\n                        <div class=\"hcp2-crop-status\">\n                            <span class=\"hcp2-dpi-pill\" data-hcp2-crop-dpi>\u2014<\/span>\n                            <span class=\"hcp2-dpi-warning\" data-hcp2-crop-dpi-warning hidden>Below 300 DPI may print blurry<\/span>\n                        <\/div>\n\n                        <div class=\"hcp2-zoom-row\">\n                            <button type=\"button\" data-hcp2-crop-zoom-out aria-label=\"Zoom out\">\u2212<\/button>\n                            <input type=\"range\" min=\"1\" max=\"3\" step=\"0.01\" value=\"1\" data-hcp2-crop-zoom aria-label=\"Zoom\">\n                            <button type=\"button\" data-hcp2-crop-zoom-in aria-label=\"Zoom in\">+<\/button>\n                            <span class=\"hcp2-zoom-label\" data-hcp2-crop-zoom-label>100%<\/span>\n                        <\/div>\n\n                        <div class=\"hcp2-crop-actions\">\n                            <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-crop-reset>Reset<\/button>\n                            <div class=\"hcp2-crop-actions-right\">\n                                <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-crop-cancel>Cancel<\/button>\n                                <button type=\"button\" class=\"hcp2-btn hcp2-btn-primary\" data-hcp2-crop-done>Done<\/button>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n\n            <!-- Final proof \/ low-resolution acknowledgement -->\n            <div class=\"hcp2-modal\" data-hcp2-confirm-modal hidden role=\"dialog\" aria-modal=\"true\">\n                <div class=\"hcp2-modal-card\" style=\"max-width:560px\">\n                    <div class=\"hcp2-modal-head\">\n                        <h3>Confirm your card order<\/h3>\n                    <\/div>\n                    <div class=\"hcp2-crop-body\">\n                        <div class=\"hcp2-confirm-text\">\n                            <p><strong>Please verify every card before continuing.<\/strong><\/p>\n                            <p>I have reviewed every card shown on this screen and confirm that the size, crop, and alignment are correct. I understand that my cards will be printed using the framing shown in these previews.<\/p>\n                            <div class=\"hcp2-confirm-warning\" data-hcp2-confirm-lowres hidden>\n                                <p><strong><span data-hcp2-lowres-count>0<\/span> image(s)<\/strong> are below the recommended 300 DPI at the selected framing and may print blurry.<\/p>\n                                <p>I understand the resolution warning and want those images printed as submitted.<\/p>\n                            <\/div>\n                        <\/div>\n                        <div class=\"hcp2-crop-actions\">\n                            <button type=\"button\" class=\"hcp2-btn hcp2-btn-secondary\" data-hcp2-confirm-back>Go back<\/button>\n                            <button type=\"button\" class=\"hcp2-btn hcp2-btn-primary\" data-hcp2-confirm-continue>I agree<\/button>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n        \n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"iawp_total_views":1439,"footnotes":""},"class_list":["post-1284","page","type-page","status-publish","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"google-site-verification\" content=\"LpUxbRc7jWSQEzPbpeIxyKMMce247X0alXVAZLtMX0E\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/hiropaper.ca\/\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Hiro Paper - THE shop for at home TCG printing.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Card Printing - Hiro Paper\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/hiropaper.ca\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/hiropaper.ca\/wp-content\/uploads\/2025\/07\/cropped-hiro-paper-1.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/hiropaper.ca\/wp-content\/uploads\/2025\/07\/cropped-hiro-paper-1.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"512\" \/>\n\t\t<meta property=\"og:image:height\" content=\"512\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-09-15T16:26:42+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-09-30T00:34:27+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Card Printing - Hiro Paper\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/hiropaper.ca\/wp-content\/uploads\/2025\/07\/cropped-hiro-paper-1.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/hiropaper.ca\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#listItem\",\"name\":\"Card Printing\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#listItem\",\"position\":2,\"name\":\"Card Printing\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#listItem\",\"name\":\"Home\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#organization\",\"name\":\"Hiro Paper Hiro Paper\",\"description\":\"THE shop for at home TCG printing.\",\"url\":\"https:\\\/\\\/hiropaper.ca\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/hiropaper.ca\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/cropped-hiro-paper-1.png\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#organizationLogo\",\"width\":512,\"height\":512,\"caption\":\"hiro paper\"},\"image\":{\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#organizationLogo\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#webpage\",\"url\":\"https:\\\/\\\/hiropaper.ca\\\/\",\"name\":\"Card Printing - Hiro Paper\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#breadcrumblist\"},\"datePublished\":\"2026-09-15T12:26:42-04:00\",\"dateModified\":\"2026-09-29T20:34:27-04:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#website\",\"url\":\"https:\\\/\\\/hiropaper.ca\\\/\",\"name\":\"Hiro Paper\",\"description\":\"THE shop for at home TCG printing.\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/hiropaper.ca\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Card Printing - Hiro Paper","description":"","canonical_url":"https:\/\/hiropaper.ca\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"LpUxbRc7jWSQEzPbpeIxyKMMce247X0alXVAZLtMX0E","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/hiropaper.ca\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/hiropaper.ca\/#listItem","position":1,"name":"Home","item":"https:\/\/hiropaper.ca\/","nextItem":{"@type":"ListItem","@id":"https:\/\/hiropaper.ca\/#listItem","name":"Card Printing"}},{"@type":"ListItem","@id":"https:\/\/hiropaper.ca\/#listItem","position":2,"name":"Card Printing","previousItem":{"@type":"ListItem","@id":"https:\/\/hiropaper.ca\/#listItem","name":"Home"}}]},{"@type":"Organization","@id":"https:\/\/hiropaper.ca\/#organization","name":"Hiro Paper Hiro Paper","description":"THE shop for at home TCG printing.","url":"https:\/\/hiropaper.ca\/","logo":{"@type":"ImageObject","url":"https:\/\/hiropaper.ca\/wp-content\/uploads\/2025\/07\/cropped-hiro-paper-1.png","@id":"https:\/\/hiropaper.ca\/#organizationLogo","width":512,"height":512,"caption":"hiro paper"},"image":{"@id":"https:\/\/hiropaper.ca\/#organizationLogo"}},{"@type":"WebPage","@id":"https:\/\/hiropaper.ca\/#webpage","url":"https:\/\/hiropaper.ca\/","name":"Card Printing - Hiro Paper","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/hiropaper.ca\/#website"},"breadcrumb":{"@id":"https:\/\/hiropaper.ca\/#breadcrumblist"},"datePublished":"2026-09-15T12:26:42-04:00","dateModified":"2026-09-29T20:34:27-04:00"},{"@type":"WebSite","@id":"https:\/\/hiropaper.ca\/#website","url":"https:\/\/hiropaper.ca\/","name":"Hiro Paper","description":"THE shop for at home TCG printing.","inLanguage":"en-US","publisher":{"@id":"https:\/\/hiropaper.ca\/#organization"}}]},"og:locale":"en_US","og:site_name":"Hiro Paper - THE shop for at home TCG printing.","og:type":"article","og:title":"Card Printing - Hiro Paper","og:url":"https:\/\/hiropaper.ca\/","og:image":"https:\/\/hiropaper.ca\/wp-content\/uploads\/2025\/07\/cropped-hiro-paper-1.png","og:image:secure_url":"https:\/\/hiropaper.ca\/wp-content\/uploads\/2025\/07\/cropped-hiro-paper-1.png","og:image:width":512,"og:image:height":512,"article:published_time":"2026-09-15T16:26:42+00:00","article:modified_time":"2026-09-30T00:34:27+00:00","twitter:card":"summary_large_image","twitter:title":"Card Printing - Hiro Paper","twitter:image":"https:\/\/hiropaper.ca\/wp-content\/uploads\/2025\/07\/cropped-hiro-paper-1.png"},"aioseo_meta_data":{"post_id":"1284","title":null,"description":null,"keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"WebPage","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2026-09-15 16:26:43","updated":"2026-09-30 01:27:48","seo_analyzer_scan_date":null,"focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/hiropaper.ca\/\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">\u00bb<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tCard Printing\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/hiropaper.ca\/"},{"label":"Card Printing","link":"https:\/\/hiropaper.ca\/"}],"_links":{"self":[{"href":"https:\/\/hiropaper.ca\/index.php?rest_route=\/wp\/v2\/pages\/1284","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hiropaper.ca\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hiropaper.ca\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hiropaper.ca\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hiropaper.ca\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1284"}],"version-history":[{"count":4,"href":"https:\/\/hiropaper.ca\/index.php?rest_route=\/wp\/v2\/pages\/1284\/revisions"}],"predecessor-version":[{"id":1334,"href":"https:\/\/hiropaper.ca\/index.php?rest_route=\/wp\/v2\/pages\/1284\/revisions\/1334"}],"wp:attachment":[{"href":"https:\/\/hiropaper.ca\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1284"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}