<!DOCTYPE html><html lang="en"> <head><script type="module" src="https://assets.blurb.com/_astro/BaseHead.astro_astro_type_script_index_0_lang.DTOPfZKw.js"></script><script type="module" src="https://assets.blurb.com/_astro/BaseHead.astro_astro_type_script_index_1_lang.Cuie9Elm.js"></script><link rel="preload" href="https://assets.blurb.com/_astro/fonts/19328e3f43ab4ed2.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/045346bd8370b80a.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/902c6ec6193b5f43.woff2" as="font" type="font/woff2" crossorigin><style>@font-face{font-family:"Futura PT-0018ffc6797be622";src:url("https://assets.blurb.com/_astro/fonts/19328e3f43ab4ed2.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/8888fbfc4af5ab54.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/9b9d4c6932eb76a0.otf") format("opentype");font-display:auto;font-weight:500;font-style:normal;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Futura PT-0018ffc6797be622";src:url("https://assets.blurb.com/_astro/fonts/045346bd8370b80a.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/33db102b7b8e179f.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/478bd252a5900d55.otf") format("opentype");font-display:auto;font-weight:400;font-style:normal;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Futura PT-0018ffc6797be622";src:url("https://assets.blurb.com/_astro/fonts/902c6ec6193b5f43.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/07de1f4fca906d45.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/88416edcdf20acd3.otf") format("opentype");font-display:auto;font-weight:600;font-style:normal;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Futura PT-0018ffc6797be622 fallback: Arial";src:local("Arial");font-display:swap;font-weight:500;font-style:normal;size-adjust:90.1748%;ascent-override:103.6875%;descent-override:29.9418%;line-gap-override:0%;}@font-face{font-family:"Futura PT-0018ffc6797be622 fallback: Arial";src:local("Arial");font-display:swap;font-weight:400;font-style:normal;size-adjust:90.1748%;ascent-override:103.6875%;descent-override:29.9418%;line-gap-override:0%;}@font-face{font-family:"Futura PT-0018ffc6797be622 fallback: Arial";src:local("Arial");font-display:swap;font-weight:600;font-style:normal;size-adjust:90.1748%;ascent-override:103.6875%;descent-override:29.9418%;line-gap-override:0%;}:root{--font-futura-pt:"Futura PT-0018ffc6797be622","Futura PT-0018ffc6797be622 fallback: Arial",sans-serif;}</style><link rel="preload" href="https://assets.blurb.com/_astro/fonts/18fadc50cce629f8.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/a146fd340009b27e.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/400006e4c98b5bb1.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/d014358d8cbbedf7.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/9e5f165193baf73b.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/13f5fa199b3bdce3.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/a587ff669d60ac38.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="https://assets.blurb.com/_astro/fonts/a87b9a3b44d0eaa2.woff2" as="font" type="font/woff2" crossorigin><style>@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/18fadc50cce629f8.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/84ef5eb396c01e61.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/ffe299e4a6d39edf.otf") format("opentype");font-display:auto;font-weight:700;font-style:normal;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/a146fd340009b27e.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/bea783b3f6171019.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/c5dcc8e7c1889619.otf") format("opentype");font-display:auto;font-weight:700;font-style:italic;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/400006e4c98b5bb1.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/8e7a3e96b53eddbb.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/5569fc4dae9130f3.otf") format("opentype");font-display:auto;font-weight:600;font-style:normal;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/d014358d8cbbedf7.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/5941d5b27f9d6f56.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/f0131f6441589fe2.otf") format("opentype");font-display:auto;font-weight:600;font-style:italic;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/9e5f165193baf73b.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/7dd87186390057e2.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/4bcc4d135b0977d5.otf") format("opentype");font-display:auto;font-weight:400;font-style:normal;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/13f5fa199b3bdce3.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/f4a08ff1e1ed9a89.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/2b2fc115ac2c8c93.otf") format("opentype");font-display:auto;font-weight:400;font-style:italic;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/a587ff669d60ac38.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/3b14cdab2026ba94.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/b278000b4cc5fb62.otf") format("opentype");font-display:auto;font-weight:500;font-style:normal;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51";src:url("https://assets.blurb.com/_astro/fonts/a87b9a3b44d0eaa2.woff2") format("woff2"), url("https://assets.blurb.com/_astro/fonts/4772cee6485d09a4.woff") format("woff"), url("https://assets.blurb.com/_astro/fonts/c51d4a674857c127.otf") format("opentype");font-display:auto;font-weight:500;font-style:italic;font-feature-settings:'liga' off, 'clig' off;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:700;font-style:normal;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:700;font-style:italic;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:600;font-style:normal;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:600;font-style:italic;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:400;font-style:normal;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:400;font-style:italic;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:500;font-style:normal;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}@font-face{font-family:"Proxima Nova-675122be75578d51 fallback: Arial";src:local("Arial");font-display:swap;font-weight:500;font-style:italic;size-adjust:102.0635%;ascent-override:105.7185%;descent-override:36.056%;line-gap-override:0%;}:root{--font-proxima-nova:"Proxima Nova-675122be75578d51","Proxima Nova-675122be75578d51 fallback: Arial",sans-serif;}</style><style>@font-face{font-family:"Roboto Mono-5b357cbe19a19424";src:url("https://assets.blurb.com/_astro/fonts/314e70ccaf8696af.woff2") format("woff2");font-display:swap;unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;font-weight:400;font-style:normal;}@font-face{font-family:"Roboto Mono-5b357cbe19a19424";src:url("https://assets.blurb.com/_astro/fonts/17fcedc53e4787a2.woff2") format("woff2");font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-weight:400;font-style:normal;}@font-face{font-family:"Roboto Mono-5b357cbe19a19424";src:url("https://assets.blurb.com/_astro/fonts/5b29a9eb18f02bf7.woff2") format("woff2");font-display:swap;unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;font-weight:400;font-style:normal;}@font-face{font-family:"Roboto Mono-5b357cbe19a19424";src:url("https://assets.blurb.com/_astro/fonts/3d8a4d15455e7694.woff2") format("woff2");font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;font-weight:400;font-style:normal;}@font-face{font-family:"Roboto Mono-5b357cbe19a19424";src:url("https://assets.blurb.com/_astro/fonts/63b7655743f0b42e.woff2") format("woff2");font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;font-weight:400;font-style:normal;}@font-face{font-family:"Roboto Mono-5b357cbe19a19424";src:url("https://assets.blurb.com/_astro/fonts/8c795b88d4cc61cb.woff2") format("woff2");font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-weight:400;font-style:normal;}@font-face{font-family:"Roboto Mono-5b357cbe19a19424 fallback: Courier New";src:local("Courier New");font-display:swap;font-weight:400;font-style:normal;size-adjust:100%;ascent-override:104.7852%;descent-override:27.0996%;line-gap-override:0%;}:root{--font-roboto-mono:"Roboto Mono-5b357cbe19a19424","Roboto Mono-5b357cbe19a19424 fallback: Courier New",monospace;}</style><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link href="https://fonts.googleapis.com/css2?family=Just+Another+Hand&display=swap" rel="stylesheet"><title>Custom Book Printing - Professional Book Printing Services | Blurb</title><meta charset="utf-8"><link rel="canonical" href="https://www.blurb.com/"><meta name="description" content="Create and print custom books and magazines with Blurb’s professional book printing services. Perfect for photographers, self-publishers and creators."><meta name="robots" content="index, follow"><meta property="og:title" content="Custom Book Printing - Professional Book Printing Services | Blurb"><meta property="og:type" content="website"><meta property="og:image" content="https://assets.blurb.com/_astro/og-image.DH9E-RZf.png"><meta property="og:url" content="https://www.blurb.com/"><meta property="og:description" content="Create and print custom books and magazines with Blurb’s professional book printing services. Perfect for photographers, self-publishers and creators."><meta property="og:locale" content="en_US"><meta property="og:site_name" content="Blurb"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Custom Book Printing - Professional Book Printing Services | Blurb"><meta name="twitter:image" content="https://assets.blurb.com/_astro/og-image.DH9E-RZf.png"><meta name="twitter:description" content="Create and print custom books and magazines with Blurb’s professional book printing services. Perfect for photographers, self-publishers and creators."><meta name="twitter:creator" content="@blurbbooks"><link rel="icon" href="https://assets.blurb.com/_astro/favicon.DsVwNQ89.ico"><link rel="shortcut icon" href="https://assets.blurb.com/_astro/favicon.D83MDGd3.svg" type="image/svg+xml"><link rel="sitemap" href="/sitemap-index.xml"><meta name="viewport" content="width=device-width, initial-scale=1"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="Custom Book Printing - Professional Book Printing Services | Blurb"><meta name="twitter:description" content="Create and print custom books and magazines with Blurb’s professional book printing services. Perfect for photographers, self-publishers and creators."><meta name="twitter:image"><script type="text/javascript">
  const GTM_ID = 'GTM-MGVL2VK7';
  (function (w, d, s, l, i) {
    let gtmLoaded = false;

    function loadGTM() {
      if (gtmLoaded || !isProduction()) return;
      gtmLoaded = true;

      w[l] = w[l] || [];
      w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' });
      const f = d.getElementsByTagName(s)[0],
        j = d.createElement(s),
        dl = l != 'dataLayer' ? '&l=' + l : '';
      j.async = true;
      j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
      f.parentNode.insertBefore(j, f);

      // Remove event listeners after loading
      d.removeEventListener('mousemove', loadGTM);
      d.removeEventListener('scroll', loadGTM);
      d.removeEventListener('touchstart', loadGTM);
    }

    // Wait 200ms before setting up event listeners
    setTimeout(() => {
      // Add event listeners
      d.addEventListener('mousemove', loadGTM, { once: true, passive: true });
      d.addEventListener('scroll', loadGTM, { once: true, passive: true });
      d.addEventListener('touchstart', loadGTM, { once: true, passive: true });
    }, 200);

    function isProduction() {
      const hostname = window.location.hostname;

      const nonProductionHosts = [
        'localhost',
        '127.0.0.1',
        'master',
        'integration',
        'vercel.app',
      ];

      // Return false if hostname includes any non production hosts
      return !nonProductionHosts.some((nonProdHost) =>
        hostname.includes(nonProdHost),
      );
    }
  })(window, document, 'script', 'dataLayer', GTM_ID);
</script><script>
  (function (m, a, z, e) {
    let t;
    try {
      t = m.sessionStorage.getItem('maze-us');
    } catch {
      void 0;
    }

    if (!t) {
      t = new Date().getTime();
      try {
        m.sessionStorage.setItem('maze-us', t);
      } catch {
        void 0;
      }
    }

    const s = a.createElement('script');
    s.src = z + '?apiKey=' + e;
    s.async = true;
    a.getElementsByTagName('head')[0].appendChild(s);
    m.mazeUniversalSnippetApiKey = e;
  })(
    window,
    document,
    'https://snippet.maze.co/maze-universal-loader.js',
    '2b1f0bf4-0880-4e43-8708-27af9a682e7d',
  );
</script><script type="module" src="https://assets.blurb.com/_astro/BaseHead.astro_astro_type_script_index_2_lang.BZUdC0VX.js"></script><script type="application/ld+json">[{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.blurb.com/#org","name":"Blurb","url":"https://www.blurb.com/","logo":"https://www.blurb.com/assets/images/logos/blurb-logo.svg"},{"@type":"Service","@id":"https://www.blurb.com/#service-pod-printing","name":"Print-on-Demand Book Printing","serviceType":"Print on demand","url":"https://www.blurb.com/","description":"Professional print-on-demand services for photo books, trade books, and magazines with multiple formats, sizes, and paper options.","provider":{"@id":"https://www.blurb.com/#org"},"areaServed":"Global","brand":{"@id":"https://www.blurb.com/#org"},"offers":{"@type":"Offer","url":"https://www.blurb.com/","category":"service","availability":"https://schema.org/InStock"}}]},{"@context":"https://schema.org","@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What book formats can I create with Blurb?","acceptedAnswer":{"@type":"Answer","text":"Blurb offers various book formats for creators, including photo books, trade books, and magazines. Each format provides unique features and is tailored for certain types of content.\n\n• Photo Books: Perfect for fine art books, cookbooks, travel books, family albums, and portfolios, these high-quality books are available in six sizes and photo-quality papers and three cover types.\n• Paperback and Hardcover Books: This format suits novels and poetry books, plus children’s books and graphic novels. Available in four print options to balance cost and quality, paperback and hardcover books are priced to sell and printed with a free ISBN for broader distribution.\n• Magazines: These are available in one standard size and on premium paper. The magazine format is well-suited for serial content, catalogs, work samples, and portfolios intended for promotion.\n• Notebooks and Journals: Whether you’re writing, sketching, journaling, or scheduling, our custom notebooks and journals are available in three sizes and up to 480 pages with six interior paper layout options."}},{"@type":"Question","name":"How do I create my own book with Blurb?","acceptedAnswer":{"@type":"Answer","text":"Blurb offers helpful design tools and software integrations to help you design your book. Here’s a simple breakdown about creating a book with Blurb:\n\n1. Choose a book format: With several options available, choose the book format that best suits your content. For example, a photo book format is best for premium-quality art books.\n2. Select a tool: Blurb enables creators to utilize various tools to create their books. You can use BookWright, which is Blurb's free bookmaking design software, or you can choose an Adobe InDesign plugin, Adobe Lightroom plugin, or Adobe Photoshop plugin, depending on your book's format.\n3. Design your book: Once you have selected a tool, you can start designing your book. You can use Blurb's customizable templates or design each page yourself. You have complete creative liberty over your book's overall look and feel.\n4. Edit your content: Editing is essential in creating your own book. Use high-quality images and organize text to tell a story that engages your readers.\n5. Distribute your book for sale: If you want to sell your book, Blurb offers several options for promotion and distribution, including the Blurb Bookstore, Amazon, and global online outlets like Ingram. You can print one copy at a time or order many copies upfront for a lower price per unit.\nBlurb makes it easy to create your own book while offering flexible design tools and lucrative distribution channels to sell your self-published book online."}},{"@type":"Question","name":"How do I self-publish a book with Blurb?","acceptedAnswer":{"@type":"Answer","text":"The process of self-publishing a book depends on the nature of your book's content and your goals as a creator. In general, the self-publishing process involves the following steps:\n\n1. Choose a book format that suits your content, such as photo books, paperback and hardcover books, or magazines, as well as your book's dimensions, cover, and paper choice.\n2. Select a tool to organize your book's content and design your book using customizable templates or by designing each page yourself.\n3. Edit your book's content to ensure that it's error-free and clear and that images are high resolution.\n4. Design your book cover or have a professional design it for you.\n5. Submit your book for printing. Blurb offers both volume printing and print-on-demand and handles shipping and fulfillment as needed.\nBlurb simplifies self-publishing while taking the guesswork out of creation, pricing, and promotion. In turn, you can create a bookstore-quality finished product that rivals major book publishers."}},{"@type":"Question","name":"How much does it cost to self-publish a book?","acceptedAnswer":{"@type":"Answer","text":"The cost of self-publishing a book varies by book format, number of pages, and number of copies. In addition to your book's chosen format and the quantity of needed copies, your book's paper choice and size also affect the publishing cost. Refer to Blurb's pricing page for a more detailed chart and pricing calculator."}},{"@type":"Question","name":"How long does it take to produce and ship my book?","acceptedAnswer":{"@type":"Answer","text":"When creating and printing a book with Blurb, it takes about five business days to print and bind a book. Shipping can take an additional 1-5 business days, depending on the shipping method you choose at checkout. In total, the time it takes to produce and ship a book with Blurb can range from 6-10 business days. Please note that this is an estimate, and the actual time may vary depending on the book format, the number of copies, and the distribution options. Blurb does not offer expedited production times, so be sure to plan accordingly if you need your book sooner."}},{"@type":"Question","name":"Does Blurb offer volume pricing?","acceptedAnswer":{"@type":"Answer","text":"Blurb offers volume order discounts starting with orders of 10 or more copies of the same book. For orders of 750 copies or more, Blurb offers offset printing for better economies of scale. Blurb charges no distribution fees for printed projects and no commission for print sales. The cost per unit decreases as the number of copies increases, and you can print one copy at a time or buy many copies upfront for a lower price per unit. Learn more about Blurb’s large order services."}}]}]</script><style>@media (min-width: 640px) and (max-width: 768px){a[data-astro-cid-jljnzfye][style*=--bg-wide-image],div[data-astro-cid-jljnzfye][style*=--bg-wide-image]{background-image:var(--bg-wide-image)!important}}
.lazy-fade[data-astro-cid-buiskd3p]{opacity:0;transition:opacity .3s ease-in-out}.lazy-fade[data-astro-cid-buiskd3p][data-loaded=true]{opacity:1}
</style>
<link rel="stylesheet" href="https://assets.blurb.com/_astro/index.Dv94Qiwt.css"></head> <body class="font-body text-blurb-text-bold bg-blurb-bg-surface">  <!-- Embed promo data for runtime access --> <script type="application/json" id="promo-data">{"locale":"en","campaigns":[{"id":"feb-2-to-feb-6","startDate":"2026-02-02T00:00:00-08:00","endDate":"2026-02-06T23:59:59-08:00","homeHero":{"eyebrow":"25% off all book formats*"},"promoBar":{"code":"Code:","codeValue":"SPECIALBOOK25","text":"25% off all book formats* through February 6, 2026.","details":"Details","modal":{"title":"Save 25% on all book formats*","date":"Ends February 6, 2026.","terms":"*Save 25% on photo books, paperback and hardcover books, notebooks, journals, and magazines uploaded to your own account with code: SPECIALBOOK25. Offer valid through February 6, 2026 (11:59 p.m. local time). A 25% discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, and wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":{"photobooks":"Limited-time offer: 25% off","magazines":"Limited-time offer: 25% off","notebooks":"Limited-time offer: 25% off","tradebooks":"Limited-time offer: 25% off"},"shopAllPromo":null},{"id":"feb-8-to-feb-10","startDate":"2026-02-08T00:00:00-08:00","endDate":"2026-02-10T23:59:59-08:00","homeHero":null,"promoBar":{"text":"15% off the Blurb Bookstore* through February 10, 2026.","code":"Code:","codeValue":"BOOKLOVE15","details":"Details","modal":{"title":"Save 15% at the Blurb Bookstore*","date":"Ends February 10, 2026.","terms":"*Save 15% off in the Blurb bookstore with code: BOOKLOVE15. Offer valid through February 10, 2026 (11:59 p.m. local time). Valid only for books purchased through the Blurb bookstore. The discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":null,"shopAllPromo":null},{"id":"feb-12-to-feb-15-5x5","startDate":"2026-02-12T00:00:00-08:00","endDate":"2026-02-15T23:59:59-08:00","homeHero":null,"promoBar":{"code":"","codeValue":"","text":"Make a Mini Square photo book for $7 through February 15, 2026.* No code required.","details":"Details","modal":{"title":"Make a Mini Square photo book for $7.*","date":"Ends February 15, 2026","terms":"*Offer valid through February 15, 2026 (11:59 p.m. local time). Discounted price of $7 applies to 5×5 in. (13×13 cm) Mini Square Softcover Photo Books with Standard Paper, 20 pages, and Matte cover finish only. Additional pages and upgrades available at regular price. Cannot be combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":null,"softcover5x5Eyebrow":"Make a Mini Square for $7*","shopAllPromo":null},{"id":"feb-17-to-feb-24","startDate":"2026-02-17T00:00:00-08:00","endDate":"2026-02-24T23:59:59-08:00","homeHero":null,"promoBar":{"text":"30% off photo books* through February 24, 2026.","code":"Code:","codeValue":"CAPTURE30","details":"Details","modal":{"title":"Save 30% on photo books*","date":"Ends February 24, 2026.","terms":"*Save 30% off photo books with code: CAPTURE30. Offer valid through February 24, 2026 (11:59 p.m. local time). Valid only for photo books uploaded to and purchased through your own account. The discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, and wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":{"photobooks":"Limited-time offer: 30% off","magazines":null,"notebooks":null,"tradebooks":null},"softcover5x5Eyebrow":null,"shopAllPromo":null},{"id":"mar-2-to-mar-7","startDate":"2026-03-02T00:00:00-08:00","endDate":"2026-03-07T23:59:59-08:00","homeHero":null,"promoBar":{"text":"20% off all books* through March 7, 2026.","code":"Code:","codeValue":"PRINTFOCUS20","details":"Details","modal":{"title":"Save 20% on all books*","date":"Ends March 7, 2026.","terms":"*Save 20% on photo books, paperback and hardcover books, notebooks, journals, and magazines uploaded to and purchased through your own account with code: PRINTFOCUS20. Offer valid through March 7, 2026 (11:59 p.m. local time). A 20% discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, and wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":{"photobooks":"Limited-time offer: 20% off","magazines":"Limited-time offer: 20% off","notebooks":"Limited-time offer: 20% off","tradebooks":"Limited-time offer: 20% off"},"softcover5x5Eyebrow":null,"shopAllPromo":{"heading":"Limited-time offer: 20% off"}},{"id":"mar-11-to-mar-18","startDate":"2026-03-11T00:00:00-08:00","endDate":"2026-03-18T23:59:59-08:00","homeHero":null,"promoBar":{"text":"30% off photo books* through March 18, 2026.","code":"Code:","codeValue":"BIGTHANKS30","details":"Details","modal":{"title":"Save 30% on photo books*","date":"Ends March 18, 2026.","terms":"*Save 30% off photo books with code: BIGTHANKS30. Offer valid through March 18, 2026 (11:59 p.m. local time). Valid only for photo books uploaded to and purchased through your own account. The discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, and wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":{"photobooks":"Limited-time offer: 30% off","magazines":null,"notebooks":null,"tradebooks":null},"softcover5x5Eyebrow":null,"shopAllPromo":null},{"id":"mar-21-to-mar-23","startDate":"2026-03-21T00:00:00-08:00","endDate":"2026-03-23T23:59:59-08:00","homeHero":null,"promoBar":{"text":"15% off the Blurb Bookstore* through March 21-23, 2026.","code":"Code:","codeValue":"BOOKFIND15","details":"Details","modal":{"title":"Save 15% at the Blurb Bookstore*","date":"Ends March 23, 2026.","terms":"*Save 15% off in the Blurb bookstore with code: BOOKFIND15. Offer valid through March 23, 2026 (11:59 p.m. local time). Valid only for books purchased through the Blurb bookstore. The discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":null,"softcover5x5Eyebrow":null,"shopAllPromo":null},{"id":"apr-1-to-apr-7","startDate":"2026-04-01T00:00:00-08:00","endDate":"2026-04-07T23:59:59-08:00","homeHero":null,"promoBar":{"text":"20% off all book formats* through April 7, 2026.","code":"Code:","codeValue":"LOOKBOOK20","details":"Details","modal":{"title":"Save 20% on all book formats*","date":"Ends April 7, 2026.","terms":"*Save 20% on photo books, paperback and hardcover books, notebooks, journals, and magazines uploaded to and purchased through your own account: LOOKBOOK20. Offer valid through April 7, 2026 (11:59 p.m. local time). A 20% discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, and wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":{"photobooks":"Limited-time offer: 20% off","magazines":"Limited-time offer: 20% off","notebooks":"Limited-time offer: 20% off","tradebooks":"Limited-time offer: 20% off"},"softcover5x5Eyebrow":null,"shopAllPromo":null},{"id":"apr-10-to-apr-18","startDate":"2026-04-10T00:00:00-08:00","endDate":"2026-04-18T23:59:59-08:00","homeHero":null,"promoBar":{"text":"30% off all photo books* through April 18, 2026.","code":"Code:","codeValue":"LOVING30","details":"Details","modal":{"title":"Save 30% on photo books*","date":"Ends April 18, 2026.","terms":"*Save 30% off photo books with code: LOVING30. Offer valid through April 18, 2026 (11:59 p.m. local time). Valid only for photo books uploaded to and purchased through your own account. The discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, and wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":{"photobooks":"Limited-time offer: 30% off","magazines":null,"notebooks":null,"tradebooks":null},"softcover5x5Eyebrow":null,"shopAllPromo":null},{"id":"apr-20-to-apr-22","startDate":"2026-04-20T00:00:00-08:00","endDate":"2026-04-22T23:59:59-08:00","homeHero":null,"promoBar":{"text":"20% off the Blurb Bookstore* through April 22, 2026.","code":"Code:","codeValue":"BOOKBUY20","details":"Details","modal":{"title":"Save 20% at the Blurb Bookstore*","date":"Ends April 22, 2026.","terms":"*Save 20% off in the Blurb bookstore with code: BOOKBUY20. Offer valid through April 22, 2026 (11:59 p.m. local time). Valid only for books purchased through the Blurb bookstore. The discount is applied toward your product total with no minimum or maximum order amount. This offer has a maximum value of $500. This offer is good for two uses, and cannot be used for ebook or PDF purchases, wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":null,"softcover5x5Eyebrow":null,"shopAllPromo":null},{"id":"apr-23-to-apr-29","startDate":"2026-04-23T00:00:00-08:00","endDate":"2026-04-29T23:59:59-08:00","homeHero":null,"promoBar":{"text":"Save $20 on orders of $50+* through April 29, 2026.","code":"Code:","codeValue":"INDIEBOOK20","details":"Details","modal":{"title":"Save $20 on orders over $50*","date":"Ends April 29, 2026.","terms":"*Save $20 on orders of $50 or more with code: INDIEBOOK20. Offer valid through April 29, 2026 (11:59 p.m. local time). Valid only for photo books, trade books, notebooks, journals, and magazines uploaded to and purchased through your own account (excludes shipping and taxes). A $20 discount is applied toward your product total of $50 or more. This offer has no cash value, is good for two uses, and cannot be used for ebook or PDF purchases, and wall art, or combined with volume discounts, custom orders, other promotional codes, gift cards, or used for adjustments on previous orders."}},"pdpClpEyebrow":{"photobooks":"Save $20 on orders of $50 or more*","magazines":"Save $20 on orders of $50 or more*","notebooks":"Save $20 on orders of $50 or more*","tradebooks":"Save $20 on orders of $50 or more*"},"softcover5x5Eyebrow":null,"shopAllPromo":null}]}</script> <!-- Update promo eyebrows based on active campaign --> <script>
      document.addEventListener('DOMContentLoaded', function () {
        const promoDataElement = document.getElementById('promo-data');
        if (!promoDataElement) return;

        const promoData = JSON.parse(promoDataElement.textContent || '{}');
        const { campaigns } = promoData;

        const currentDate = window.__devPreviewDate ?? Date.now();

        const activePromo = campaigns.find((promo) => {
          const startDate = Date.parse(promo.startDate);
          const endDate = Date.parse(promo.endDate);
          return currentDate >= startDate && currentDate <= endDate;
        });

        if (!activePromo?.pdpClpEyebrow) return;

        const eyebrows = document.querySelectorAll('[data-promo-eyebrow]');

        eyebrows.forEach((eyebrow) => {
          const productType = eyebrow.getAttribute('data-product-type');
          if (!productType) return;

          const eyebrowText = activePromo.pdpClpEyebrow[productType];

          if (eyebrowText) {
            eyebrow.textContent = eyebrowText;
            eyebrow.classList.remove('hidden');
          }
        });
      });
    </script> <div data-vat="hidden" id="promo-bar" class="bg-blurb-bg-brand-hover hidden flex-col justify-center gap-1 py-3 text-sm text-white md:flex-row md:px-20" role="region" aria-labelledby="promo-section"> <h2 id="promo-section" class="sr-only">Promotional Information</h2> <div id="promo-text" class="text-center font-normal"></div> <div class="flex justify-center gap-1"> <div id="promo-separator-left" class="hidden" aria-hidden="true">|</div> <div id="promo-code-container" class="hidden gap-1 text-white"> <span id="promo-code"></span> <div id="promo-code-value" class="font-bold"></div> </div> <div id="promo-separator-right" class="hidden" aria-hidden="true">|</div> <button id="details-button" class="cursor-pointer border-0 bg-transparent p-0 underline" type="button" aria-expanded="false" aria-controls="detailsModal"></button> </div> </div> <dialog id="detailsModal" class="fixed inset-0 z-1 h-auto min-w-screen bg-white px-12.5 py-4 lg:m-auto lg:max-h-min lg:max-w-187.5 lg:min-w-auto" role="dialog" aria-modal="true" aria-labelledby="modal-title" aria-describedby="modal-desc" aria-hidden="true" tabindex="-1"> <div class="flex justify-end"> <button id="close-button" class="cursor-pointer" type="button" aria-label="Close dialog"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-[3rem]" data-icon="material-symbols:close-rounded">   <symbol id="ai:material-symbols:close-rounded" viewBox="0 0 24 24"><path fill="currentColor" d="m12 13.4l-4.9 4.9q-.275.275-.7.275t-.7-.275t-.275-.7t.275-.7l4.9-4.9l-4.9-4.9q-.275-.275-.275-.7t.275-.7t.7-.275t.7.275l4.9 4.9l4.9-4.9q.275-.275.7-.275t.7.275t.275.7t-.275.7L13.4 12l4.9 4.9q.275.275.275.7t-.275.7t-.7.275t-.7-.275z"/></symbol><use href="#ai:material-symbols:close-rounded"></use>  </svg> </button> </div> <div class="flex flex-col gap-6" id="modal-desc"> <h2 id="modal-title" class="text-center text-3xl font-bold md:text-5xl lg:text-9xl"></h2> <div class="text-blurb-bg-gray-subtle-active m-auto"> <p id="modal-code"></p> <p id="modal-date"></p> </div> <div id="modal-terms" class="text-blurb-bg-gray-subtle-active text-xs"></div> </div> </dialog> <script>
  (function () {
    const promoDataElement = document.getElementById('promo-data');
    if (!promoDataElement) return;

    const promoData = JSON.parse(promoDataElement.textContent || '{}');
    const { campaigns } = promoData;

    const currentDate = window.__devPreviewDate ?? Date.now();
    const activePromo = campaigns.find((promo) => {
      const startDate = Date.parse(promo.startDate);
      const endDate = Date.parse(promo.endDate);
      return currentDate >= startDate && currentDate <= endDate;
    });

    const promoBar = document.getElementById('promo-bar');
    if (!promoBar) return;

    // Don't show bar if text is empty or whitespace
    const hasPromoContent = activePromo?.promoBar?.text?.trim().length > 0;

    if (!hasPromoContent) {
      promoBar.style.display = 'none';
      return;
    }

    // Populate promo bar content
    const promoTextEl = document.getElementById('promo-text');
    const promoCodeEl = document.getElementById('promo-code');
    const promoCodeValueEl = document.getElementById('promo-code-value');
    const promoCodeContainer = document.getElementById('promo-code-container');
    const separatorLeft = document.getElementById('promo-separator-left');
    const separatorRight = document.getElementById('promo-separator-right');
    const detailsButton = document.getElementById('details-button');

    if (promoTextEl && activePromo.promoBar.text) {
      promoTextEl.textContent = activePromo.promoBar.text;
    }

    const hasCode = activePromo.promoBar.code && activePromo.promoBar.codeValue;

    // Only show code container and separators if there's a code
    if (hasCode) {
      if (promoCodeEl) {
        promoCodeEl.textContent = activePromo.promoBar.code;
      }
      if (promoCodeValueEl) {
        promoCodeValueEl.textContent = activePromo.promoBar.codeValue;
      }
      if (promoCodeContainer) {
        promoCodeContainer.classList.remove('hidden');
        promoCodeContainer.classList.add('flex');
      }
      if (separatorLeft) {
        separatorLeft.classList.add('md:block');
      }
      if (separatorRight) {
        separatorRight.classList.add('md:block');
      }
    } else {
      // No code - show only one separator before details
      if (separatorRight) {
        separatorRight.classList.add('md:block');
      }
    }

    if (detailsButton && activePromo.promoBar.details) {
      detailsButton.textContent = activePromo.promoBar.details;
    }

    // Populate modal content
    const modalTitle = document.getElementById('modal-title');
    const modalCode = document.getElementById('modal-code');
    const modalDate = document.getElementById('modal-date');
    const modalTerms = document.getElementById('modal-terms');

    if (modalTitle && activePromo.promoBar.modal?.title) {
      modalTitle.innerHTML = activePromo.promoBar.modal.title;
    }
    if (
      modalCode
      && activePromo.promoBar.code
      && activePromo.promoBar.codeValue
    ) {
      modalCode.textContent = `${activePromo.promoBar.code} ${activePromo.promoBar.codeValue}`;
    }
    if (modalDate && activePromo.promoBar.modal?.date) {
      modalDate.textContent = activePromo.promoBar.modal.date;
    }
    if (modalTerms && activePromo.promoBar.modal?.terms) {
      modalTerms.textContent = activePromo.promoBar.modal.terms;
    }

    // Show the promo bar
    promoBar.style.display = 'flex';

    // Dialog handlers
    const modal = document.getElementById('detailsModal');
    const closeButton = document.getElementById('close-button');

    if (detailsButton && modal && closeButton) {
      detailsButton.addEventListener('click', () => {
        modal.showModal();
        detailsButton.setAttribute('aria-expanded', 'true');
        modal.setAttribute('aria-hidden', 'false');
      });

      closeButton.addEventListener('click', () => {
        modal.close();
        detailsButton.setAttribute('aria-expanded', 'false');
        modal.setAttribute('aria-hidden', 'true');
      });

      window.addEventListener('click', (event) => {
        if (event.target !== detailsButton && event.target === modal) {
          modal.close();
          detailsButton.setAttribute('aria-expanded', 'false');
          modal.setAttribute('aria-hidden', 'true');
        }
      });
    }
  })();
</script> <header> <div class="group" id="nav-auth-container" data-state="logged-out" data-support-tools="non-admin"> <div class="hidden xl:block"> <nav id="top-nav-desktop" class="flex justify-center border-blurb-border-nav border-b"> <ul role="list" class="w-full max-w-360 h-16 px-5 2xl:px-10 flex justify-between whitespace-nowrap"> <div class="flex items-center"> <a href="/"> <svg width="1.02em" height="1em" class="shrink-0 grow-0 text-light-brand-500 h-12.5 w-13" data-icon="custom/blurb-logo">   <symbol id="ai:local:custom/blurb-logo" viewBox="0 0 52 51"><path fill="currentColor" d="M52 .333v40.583H19.5L0 50.656V10.074L19.5.334zM6.5 20.622v12.17h2.629V31.79c.585.787 1.538 1.212 2.629 1.212 2.477 0 4.08-2.07 4.08-4.768s-1.625-4.74-4.08-4.74c-1.076 0-2.051.41-2.63 1.212v-4.083zm14.41 3.073v6.053c0 1.825 1.076 3.253 3.004 3.253 1.127 0 2.08-.476 2.629-1.19v.99h2.606v-9.099h-2.606v5.18c0 1.176-.737 1.804-1.69 1.804-1.062 0-1.315-.765-1.315-1.55v-5.441zm16.196-3.073v12.17h2.63V31.79c.584.787 1.538 1.212 2.628 1.212 2.477 0 4.08-2.07 4.08-4.768s-1.624-4.74-4.08-4.74c-1.076 0-2.05.41-2.629 1.212v-4.083zm-20.307.006V32.8h2.629V20.63h-2.63Zm18.705 2.915c-.939 0-1.712.477-2.203 1.278v-1.126h-2.63v9.104h2.63v-4.004c0-1.84.866-2.64 1.942-2.64.275 0 .55.05.752.137l.007-.008.39-2.59c-.174-.086-.614-.15-.888-.15Zm6.231 2.2c1.337 0 1.965 1.162 1.965 2.526s-.636 2.49-1.965 2.49c-1.328-.001-1.993-1.127-1.993-2.49s.658-2.525 1.993-2.525Zm-30.613 0c1.336 0 1.965 1.162 1.965 2.526s-.636 2.488-1.965 2.488-1.993-1.125-1.993-2.488c0-1.364.657-2.525 1.993-2.525Z"/></symbol><use href="#ai:local:custom/blurb-logo"></use>  </svg> </a> <li class="relative h-full" data-submenu-container> <a href="/formats" aria-haspopup="true" aria-expanded="false" class="nav__link-desktop"> Products </a> <ul role="list" data-state="collapsed" class="nav__submenu"> <div class="grid w-full grid-flow-col grid-rows-5"> <li> <a href="/formats" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Shop All </a> </li><li> <a href="/photo-books" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Photo Books </a> </li><li> <a href="/photo-books/layflat-photo-book" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Layflat Books </a> </li><li> <a href="/hardcover-and-paperback-books" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Paperback and Hardcover Books </a> </li><li> <a href="/magazines" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Magazines </a> </li><li> <a href="/custom-notebooks-journals" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Notebooks &amp; Journals </a> </li><li> <a href="/custom-wall-art" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Wall Art </a> </li> </div> </ul> </li><li class="relative h-full" data-submenu-container> <a href="/pricing" aria-haspopup="true" aria-expanded="false" class="nav__link-desktop"> Pricing </a> <ul role="list" data-state="collapsed" class="nav__submenu"> <div class="grid w-full"> <li> <a href="/pricing" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Pricing Calculator </a> </li><li> <a href="/shipping" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Shipping Calculator </a> </li> </div> </ul> </li><li class="relative h-full" data-submenu-container> <a href="/bookmaking-tools" aria-haspopup="true" aria-expanded="false" class="nav__link-desktop"> Design Tools </a> <ul role="list" data-state="collapsed" class="nav__submenu"> <div class="grid w-full"> <li> <a href="/bookwright" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> BookWright </a> </li><li> <a href="/bookmaking-tools/adobe-tools" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Adobe Tools </a> </li><li> <a href="/pdf-to-book" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> PDF to Book </a> </li><li> <a href="/templates" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> BookWright Templates </a> </li> </div> </ul> </li><li class="relative h-full" data-submenu-container> <a href="/sell-and-distribute" aria-haspopup="true" aria-expanded="false" class="nav__link-desktop"> Sell &amp; Self-Publish </a> <ul role="list" data-state="collapsed" class="nav__submenu"> <div class="grid w-full"> <li> <a href="/sell-through-blurb" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Blurb Bookstore </a> </li><li> <a href="/amazon" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Amazon </a> </li><li> <a href="/ingram" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Ingram </a> </li><li> <a href="/large-order-services" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Large Order Services </a> </li><li> <a href="/print-api-software" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> API Printing </a> </li> </div> </ul> </li><li class="relative h-full" data-submenu-container> <a href="/bookstore" aria-haspopup="true" aria-expanded="false" class="nav__link-desktop"> Bookstore </a> <ul role="list" data-state="collapsed" class="nav__submenu"> <div class="grid w-full grid-flow-col grid-rows-5"> <li> <a href="/bookstore/category" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> All Categories </a> </li><li> <a href="/bookstore/c-arts-photography" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Photography </a> </li><li> <a href="/bookstore/c-portfolios" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Portfolios </a> </li><li> <a href="/bookstore/c-cooking" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Cookbooks </a> </li><li> <a href="/bookstore/c-travel" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Travel </a> </li><li> <a href="/bookstore/c-biographies-memoirs" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Biographies &amp; Memoirs </a> </li><li> <a href="/bookstore/c-children" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Children&#39;s Books </a> </li><li> <a href="/bookstore/c-business-economics" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Business &amp; Economics </a> </li><li> <a href="/bookstore/c-literature-fiction" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Literature &amp; Fiction </a> </li> </div> </ul> </li><li class="relative h-full" data-submenu-container> <a href="https://support.blurb.com/" aria-haspopup="true" aria-expanded="false" class="nav__link-desktop"> Resources </a> <ul role="list" data-state="collapsed" class="nav__submenu"> <div class="grid w-full"> <li> <a href="/blog" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Blog </a> </li><li> <a href="/templates" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> BookWright Templates </a> </li><li> <a href="https://support.blurb.com/hc/en-us" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Help Center </a> </li><li> <a href="/large-order-services" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> Large Order Services </a> </li><li> <a href="/print-api-software" class="nav__link-desktop hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> API Printing </a> </li> </div> </ul> </li> </div> <div class="flex items-center"> <a id="sign_up" class="nav__link-desktop group-data-[state=logged-in]:hidden" href="/my/account/register" data-event="sign_up_click"> Sign Up </a> <a class="nav__link-desktop group-data-[state=logged-in]:hidden" href="/my/account/login" data-event="log_in_click"> Log In </a> <a id="support-tools" class="nav__link-desktop group-data-[support-tools=non-admin]:hidden" href="/admin/support" data-event="support_tools_click"> Support Tools </a> <a class="nav__link-desktop group-data-[state=logged-out]:hidden" href="/my/account" data-event="settings_click"> Settings </a> <a class="nav__link-desktop group-data-[state=logged-out]:hidden" href="https://support.blurb.com/hc/en" data-event="help_click"> Help </a> <a class="nav__link-desktop group-data-[state=logged-out]:hidden" href="/my/account/logout" data-event="log_out_click"> Log Out </a> <li class="relative h-full shrink-0" data-submenu-container> <button aria-haspopup="true" aria-expanded="false" class="h-full px-4"> <div> <img src="https://assets.blurb.com/_astro/flag_us.DI1oXf61.svg" width="24" height="18" alt="US Flag"> </div> </button> <ul role="list" data-state="collapsed" class="nav__submenu left-1/2 -translate-x-1/2">  <div class="grid w-max grid-flow-col grid-rows-6"> <li> <a href="https://www.blurb.com/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_us.DI1oXf61.svg" width="24" height="18" alt="US Flag"> </div> <span>United States</span> </a> </li><li> <a href="https://au.blurb.com/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_australia.BpCZtgID.svg" width="24" height="18" alt="Australia Flag"> </div> <span>Australia</span> </a> </li><li> <a href="https://br.blurb.com/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_portugal.CRUH3iMu.svg" width="24" height="18" alt="Portugal Flag"> </div> <span>Portugal</span> </a> </li><li> <a href="https://nl.blurb.com/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_netherlands.rKYC6362.svg" width="24" height="18" alt="Netherlands Flag"> </div> <span>Netherlands</span> </a> </li><li> <a href="https://it.blurb.com/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_italy.Ce0ovv1D.svg" width="24" height="18" alt="Italy Flag"> </div> <span>Italy</span> </a> </li><li> <a href="https://www.blurb.co.uk/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_uk.CI53ydmv.svg" width="24" height="18" alt="UK Flag"> </div> <span>United Kingdom</span> </a> </li><li> <a href="https://www.blurb.fr/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_france.G3R2y_Xm.svg" width="24" height="18" alt="France Flag"> </div> <span>France</span> </a> </li><li> <a href="https://www.blurb.de/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_germany.CJLvQsGU.svg" width="24" height="18" alt="Germany Flag"> </div> <span>Germany</span> </a> </li><li> <a href="https://www.blurb.es/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_spain.DG4ZsqTL.svg" width="24" height="18" alt="Spain Flag"> </div> <span>Spain</span> </a> </li><li> <a href="https://www.blurb.ca/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_canada.C8RP_wOx.svg" width="24" height="18" alt="Canada Flag"> </div> <span>Canada (English)</span> </a> </li><li> <a href="https://fr.blurb.ca/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_canada.C8RP_wOx.svg" width="24" height="18" alt="Canada Flag"> </div> <span>Canada (French)</span> </a> </li><li> <a href="https://www.blurb.com/" class="nav__link-desktop flex items-center gap-2 hover:bg-blurb-bg-gray-subtler-hover rounded-md min-w-55"> <div> <img src="https://assets.blurb.com/_astro/flag_world.C9Tg6vPN.svg" width="24" height="18" alt="World Flag"> </div> <span>Other Countries</span> </a> </li> </div> </ul> </li> <a id="cart-link-desktop" href="/bookstore/cart" class="nav__link-desktop hidden" aria-label="Cart"> <div class="relative"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-3xl" data-icon="material-symbols:shopping-cart-rounded">   <symbol id="ai:material-symbols:shopping-cart-rounded" viewBox="0 0 24 24"><path fill="currentColor" d="M7 22q-.825 0-1.412-.587T5 20t.588-1.412T7 18t1.413.588T9 20t-.587 1.413T7 22m10 0q-.825 0-1.412-.587T15 20t.588-1.412T17 18t1.413.588T19 20t-.587 1.413T17 22M5.2 4h14.75q.575 0 .875.513t.025 1.037l-3.55 6.4q-.275.5-.737.775T15.55 13H8.1L7 15h11q.425 0 .713.288T19 16t-.288.713T18 17H7q-1.125 0-1.7-.987t-.05-1.963L6.6 11.6L3 4H2q-.425 0-.712-.288T1 3t.288-.712T2 2h1.625q.275 0 .525.15t.375.425z"/></symbol><use href="#ai:material-symbols:shopping-cart-rounded"></use>  </svg> <span id="cart-count-desktop" class="bg-light-brand-500 absolute -top-2 -right-2 flex h-5 w-5 items-center justify-center rounded-full text-xs leading-none font-semibold text-white">
0
</span> </div> </a> <div class="pl-4"> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950 h-9 group-data-[state=logged-in]:hidden" href="/getting-started">Start Project </a> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950 h-9 group-data-[state=logged-out]:hidden" href="/my/dashboard">My Dashboard </a> </div> </div> </ul> </nav> <script type="module" src="https://assets.blurb.com/_astro/NavDesktop.astro_astro_type_script_index_0_lang.DhA9CHHm.js"></script> </div> <div class="block xl:hidden"> <div class="flex items-center justify-between p-4"> <a href="/"> <svg width="1.02em" height="1em" viewBox="0 0 52 51" class="shrink-0 grow-0 text-light-brand-500 h-10.5 w-10.5" data-icon="custom/blurb-logo">   <use href="#ai:local:custom/blurb-logo"></use>  </svg> </a> <button type="button" class="p-2" aria-label="Open navigation menu" aria-expanded="false" aria-controls="mobile-menu-overlay" id="mobile-menu-trigger"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-3xl" data-icon="material-symbols:menu-rounded">   <symbol id="ai:material-symbols:menu-rounded" viewBox="0 0 24 24"><path fill="currentColor" d="M4 18q-.425 0-.712-.288T3 17t.288-.712T4 16h16q.425 0 .713.288T21 17t-.288.713T20 18zm0-5q-.425 0-.712-.288T3 12t.288-.712T4 11h16q.425 0 .713.288T21 12t-.288.713T20 13zm0-5q-.425 0-.712-.288T3 7t.288-.712T4 6h16q.425 0 .713.288T21 7t-.288.713T20 8z"/></symbol><use href="#ai:material-symbols:menu-rounded"></use>  </svg> </button> </div> <div id="mobile-menu-overlay" class="fixed inset-0 z-50 flex hidden flex-col bg-white" role="dialog" aria-modal="true" aria-labelledby="mobile-menu-title"> <div class="border-blurb-border-subtle flex flex-shrink-0 items-center justify-between border-b p-4"> <a href="/"> <svg width="1.02em" height="1em" viewBox="0 0 52 51" class="shrink-0 grow-0 text-light-brand-500 h-10 w-10.5" data-icon="custom/blurb-logo">   <use href="#ai:local:custom/blurb-logo"></use>  </svg> </a> <h2 id="mobile-menu-title" class="absolute left-[-10000px] h-px w-px overflow-hidden"> Navigation menu </h2> <button type="button" class="p-2" aria-label="Close navigation menu" id="mobile-menu-close"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-3xl" data-icon="material-symbols:close-rounded">   <use href="#ai:material-symbols:close-rounded"></use>  </svg> </button> </div> <nav class="min-h-0 flex-1 overflow-y-auto"> <div class="p-4"> <div class="accordion border-blurb-border-subtle flex w-full flex-col gap-2"> <details name="mobile-nav-main" class="group select-none"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:bg-blurb-bg-gray-subtler-hover active:bg-blurb-bg-gray-subtler-active focus-visible:bg-blurb-bg-gray-subtler-active rounded-sm px-4"> <div aria-details="mobile-nav-main" class="flex w-full items-center justify-between gap-2"> <span>Products</span> <span class="pointer-events-none"> <svg width="1em" height="1em" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <symbol id="ai:material-symbols:keyboard-arrow-down-rounded" viewBox="0 0 24 24"><path fill="currentColor" d="M12 14.975q-.2 0-.375-.062T11.3 14.7l-4.6-4.6q-.275-.275-.275-.7t.275-.7t.7-.275t.7.275l3.9 3.9l3.9-3.9q.275-.275.7-.275t.7.275t.275.7t-.275.7l-4.6 4.6q-.15.15-.325.213t-.375.062"/></symbol><use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="mobile-nav-main" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm px-4">  <ul role="list" class="space-y-1"> <li> <a href="/formats" class="nav__link-mobile"> Overview </a> </li><li> <a href="/formats" class="nav__link-mobile"> Shop All </a> </li><li> <a href="/photo-books" class="nav__link-mobile"> Photo Books </a> </li><li> <a href="/photo-books/layflat-photo-book" class="nav__link-mobile"> Layflat Books </a> </li><li> <a href="/hardcover-and-paperback-books" class="nav__link-mobile"> Paperback and Hardcover Books </a> </li><li> <a href="/magazines" class="nav__link-mobile"> Magazines </a> </li><li> <a href="/custom-notebooks-journals" class="nav__link-mobile"> Notebooks &amp; Journals </a> </li><li> <a href="/custom-wall-art" class="nav__link-mobile"> Wall Art </a> </li> </ul>  </div> </div> <script type="module">const l=document.querySelectorAll("details"),o=e=>{const t=e.closest(".accordion");Array.from(t?.querySelectorAll("details[name]")||[])?.forEach(n=>{n!==e&&(n.open=!1)})};l.forEach(e=>{e.addEventListener("toggle",()=>{const t=e.nextElementSibling;e.open?(o(e),t?.removeAttribute("inert")):t?.setAttribute("inert","")})});
//# sourceMappingURL=AccordionItem.astro_astro_type_script_index_0_lang.BPDP3QSJ.js.map</script><details name="mobile-nav-main" class="group select-none"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:bg-blurb-bg-gray-subtler-hover active:bg-blurb-bg-gray-subtler-active focus-visible:bg-blurb-bg-gray-subtler-active rounded-sm px-4"> <div aria-details="mobile-nav-main" class="flex w-full items-center justify-between gap-2"> <span>Pricing</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="mobile-nav-main" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm px-4">  <ul role="list" class="space-y-1"> <li> <a href="/pricing" class="nav__link-mobile"> Overview </a> </li><li> <a href="/pricing" class="nav__link-mobile"> Pricing Calculator </a> </li><li> <a href="/shipping" class="nav__link-mobile"> Shipping Calculator </a> </li> </ul>  </div> </div> <details name="mobile-nav-main" class="group select-none"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:bg-blurb-bg-gray-subtler-hover active:bg-blurb-bg-gray-subtler-active focus-visible:bg-blurb-bg-gray-subtler-active rounded-sm px-4"> <div aria-details="mobile-nav-main" class="flex w-full items-center justify-between gap-2"> <span>Design Tools</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="mobile-nav-main" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm px-4">  <ul role="list" class="space-y-1"> <li> <a href="/bookmaking-tools" class="nav__link-mobile"> Overview </a> </li><li> <a href="/bookwright" class="nav__link-mobile"> BookWright </a> </li><li> <a href="/bookmaking-tools/adobe-tools" class="nav__link-mobile"> Adobe Tools </a> </li><li> <a href="/pdf-to-book" class="nav__link-mobile"> PDF to Book </a> </li><li> <a href="/templates" class="nav__link-mobile"> BookWright Templates </a> </li> </ul>  </div> </div> <details name="mobile-nav-main" class="group select-none"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:bg-blurb-bg-gray-subtler-hover active:bg-blurb-bg-gray-subtler-active focus-visible:bg-blurb-bg-gray-subtler-active rounded-sm px-4"> <div aria-details="mobile-nav-main" class="flex w-full items-center justify-between gap-2"> <span>Sell & Self-Publish</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="mobile-nav-main" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm px-4">  <ul role="list" class="space-y-1"> <li> <a href="/sell-and-distribute" class="nav__link-mobile"> Overview </a> </li><li> <a href="/sell-through-blurb" class="nav__link-mobile"> Blurb Bookstore </a> </li><li> <a href="/amazon" class="nav__link-mobile"> Amazon </a> </li><li> <a href="/ingram" class="nav__link-mobile"> Ingram </a> </li><li> <a href="/large-order-services" class="nav__link-mobile"> Large Order Services </a> </li><li> <a href="/print-api-software" class="nav__link-mobile"> API Printing </a> </li> </ul>  </div> </div> <details name="mobile-nav-main" class="group select-none"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:bg-blurb-bg-gray-subtler-hover active:bg-blurb-bg-gray-subtler-active focus-visible:bg-blurb-bg-gray-subtler-active rounded-sm px-4"> <div aria-details="mobile-nav-main" class="flex w-full items-center justify-between gap-2"> <span>Bookstore</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="mobile-nav-main" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm px-4">  <ul role="list" class="space-y-1"> <li> <a href="/bookstore" class="nav__link-mobile"> Overview </a> </li><li> <a href="/bookstore/category" class="nav__link-mobile"> All Categories </a> </li><li> <a href="/bookstore/c-arts-photography" class="nav__link-mobile"> Photography </a> </li><li> <a href="/bookstore/c-portfolios" class="nav__link-mobile"> Portfolios </a> </li><li> <a href="/bookstore/c-cooking" class="nav__link-mobile"> Cookbooks </a> </li><li> <a href="/bookstore/c-travel" class="nav__link-mobile"> Travel </a> </li><li> <a href="/bookstore/c-biographies-memoirs" class="nav__link-mobile"> Biographies &amp; Memoirs </a> </li><li> <a href="/bookstore/c-children" class="nav__link-mobile"> Children&#39;s Books </a> </li><li> <a href="/bookstore/c-business-economics" class="nav__link-mobile"> Business &amp; Economics </a> </li><li> <a href="/bookstore/c-literature-fiction" class="nav__link-mobile"> Literature &amp; Fiction </a> </li> </ul>  </div> </div> <details name="mobile-nav-main" class="group select-none"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:bg-blurb-bg-gray-subtler-hover active:bg-blurb-bg-gray-subtler-active focus-visible:bg-blurb-bg-gray-subtler-active rounded-sm px-4"> <div aria-details="mobile-nav-main" class="flex w-full items-center justify-between gap-2"> <span>Resources</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="mobile-nav-main" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm px-4">  <ul role="list" class="space-y-1"> <li> <a href="https://support.blurb.com/" class="nav__link-mobile"> Overview </a> </li><li> <a href="/blog" class="nav__link-mobile"> Blog </a> </li><li> <a href="/templates" class="nav__link-mobile"> BookWright Templates </a> </li><li> <a href="https://support.blurb.com/hc/en-us" class="nav__link-mobile"> Help Center </a> </li><li> <a href="/large-order-services" class="nav__link-mobile"> Large Order Services </a> </li><li> <a href="/print-api-software" class="nav__link-mobile"> API Printing </a> </li> </ul>  </div> </div>  </div> <div class="border-blurb-border-subtle mt-6 space-y-4 border-t pt-6"> <div class="space-y-2"> <a id="cart-link-mobile" href="/bookstore/cart" class="nav__link-mobile relative flex hidden items-center gap-2" aria-label="Cart"> <div class="relative"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-3xl" data-icon="material-symbols:shopping-cart-rounded">   <use href="#ai:material-symbols:shopping-cart-rounded"></use>  </svg> <span id="cart-count-mobile" class="bg-light-brand-500 absolute -top-2 -right-2 flex h-5 w-5 items-center justify-center rounded-full text-xs leading-none font-semibold text-white">
0
</span> </div> <span>Cart</span> </a> <a id="sign_up" href="/my/account/register" class="nav__link-mobile group-data-[state=logged-in]:hidden" data-event="sign_up_click"> Sign Up </a> <a href="/my/account/login" class="nav__link-mobile group-data-[state=logged-in]:hidden" data-event="log_in_click"> Log In </a> <a href="/my/dashboard" class="nav__link-mobile group-data-[state=logged-out]:hidden" data-event="my_dashboard_click"> My Dashboard </a> <a href="/admin/support" class="nav__link-mobile group-data-[support-tools=non-admin]:hidden" data-event="support_tools_click"> Support Tools </a> <a href="/my/account" class="nav__link-mobile group-data-[state=logged-out]:hidden" data-event="settings_click"> Settings </a> <a href="https://support.blurb.com/hc/en" class="nav__link-mobile group-data-[state=logged-out]:hidden" data-event="help_click"> Help </a> <a href="/my/account/logout" class="nav__link-mobile group-data-[state=logged-out]:hidden" data-event="log_out_click"> Log Out </a> </div> <div class="accordion border-blurb-border-subtle flex w-full flex-col gap-2">  <details name="mobile-nav-language" class="group select-none"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:bg-blurb-bg-gray-subtler-hover active:bg-blurb-bg-gray-subtler-active focus-visible:bg-blurb-bg-gray-subtler-active rounded-sm px-4"> <div aria-details="mobile-nav-language" class="flex w-full items-center justify-between gap-2"> <div class="flex items-center gap-2"> <div class="flex items-center gap-2">  <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_us.DI1oXf61.svg" width="24" height="18" alt="US Flag"> </div> <span>United States</span>  </div> </div> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="mobile-nav-language" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm px-4">   <ul role="list" class="space-y-1"> <li> <a href="https://www.blurb.com/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_us.DI1oXf61.svg" width="20" height="15" alt="US Flag"> </div> <span>United States</span> </a> </li><li> <a href="https://au.blurb.com/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_australia.BpCZtgID.svg" width="20" height="15" alt="Australia Flag"> </div> <span>Australia</span> </a> </li><li> <a href="https://br.blurb.com/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_portugal.CRUH3iMu.svg" width="20" height="15" alt="Portugal Flag"> </div> <span>Portugal</span> </a> </li><li> <a href="https://nl.blurb.com/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_netherlands.rKYC6362.svg" width="20" height="15" alt="Netherlands Flag"> </div> <span>Netherlands</span> </a> </li><li> <a href="https://it.blurb.com/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_italy.Ce0ovv1D.svg" width="20" height="15" alt="Italy Flag"> </div> <span>Italy</span> </a> </li><li> <a href="https://www.blurb.co.uk/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_uk.CI53ydmv.svg" width="20" height="15" alt="UK Flag"> </div> <span>United Kingdom</span> </a> </li><li> <a href="https://www.blurb.fr/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_france.G3R2y_Xm.svg" width="20" height="15" alt="France Flag"> </div> <span>France</span> </a> </li><li> <a href="https://www.blurb.de/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_germany.CJLvQsGU.svg" width="20" height="15" alt="Germany Flag"> </div> <span>Germany</span> </a> </li><li> <a href="https://www.blurb.es/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_spain.DG4ZsqTL.svg" width="20" height="15" alt="Spain Flag"> </div> <span>Spain</span> </a> </li><li> <a href="https://www.blurb.ca/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_canada.C8RP_wOx.svg" width="20" height="15" alt="Canada Flag"> </div> <span>Canada (English)</span> </a> </li><li> <a href="https://fr.blurb.ca/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_canada.C8RP_wOx.svg" width="20" height="15" alt="Canada Flag"> </div> <span>Canada (French)</span> </a> </li><li> <a href="https://www.blurb.com/" class="nav__link-mobile flex items-center gap-2"> <div aria-hidden="true"> <img src="https://assets.blurb.com/_astro/flag_world.C9Tg6vPN.svg" width="20" height="15" alt="World Flag"> </div> <span>Other Countries</span> </a> </li> </ul>  </div> </div>   </div> </div> </div> </nav> </div> <script type="module">const e=document.getElementById("mobile-menu-trigger"),t=document.getElementById("mobile-menu-overlay"),s=document.getElementById("mobile-menu-close");if(e&&t&&s){let n=!1;const i=document.querySelector("main"),o=document.querySelector("footer"),c=()=>{n=!0,t.classList.remove("hidden"),document.body.style.overflow="hidden",i&&i.setAttribute("inert",""),o&&o.setAttribute("inert",""),e.setAttribute("aria-expanded","true"),requestAnimationFrame(()=>{s.focus()})},r=()=>{n=!1,t.classList.add("hidden"),document.body.style.overflow="",i&&i.removeAttribute("inert"),o&&o.removeAttribute("inert"),e.setAttribute("aria-expanded","false"),e.focus()};e.addEventListener("click",c),s.addEventListener("click",r),t.addEventListener("click",d=>{d.target===t&&r()}),document.addEventListener("keydown",d=>{n&&d.key==="Escape"&&(d.preventDefault(),r())}),document.addEventListener("visibilitychange",()=>{document.hidden&&n&&r()})}
//# sourceMappingURL=NavMobile.astro_astro_type_script_index_0_lang.DMeGbvWY.js.map</script> </div> </div> <script>
  function getCookie(name) {
    if (typeof document === 'undefined') return undefined;
    const value = `; ${document.cookie}`;
    const parts = value.split(`; ${name}=`);
    if (parts.length === 2) return parts.pop()?.split(';').shift();
    return undefined;
  }

  function getDynamicMenuData() {
    const cookie = getCookie('dm');
    if (!cookie) return null;

    try {
      const decoded = decodeURIComponent(cookie);
      return JSON.parse(decoded);
    } catch {
      return null;
    }
  }

  function isLoggedIn() {
    const userData = getDynamicMenuData();
    return !!(userData?.username || userData?.user_id);
  }

  function isSupportToolsActive() {
    const userData = getDynamicMenuData();
    return !!userData?.support_tools;
  }

  function getCartCount() {
    const userData = getDynamicMenuData();
    if (!userData?.cart_count) return 0;

    const match = userData.cart_count.match(/^(\d+)/);
    if (match && match[1]) {
      return parseInt(match[1], 10);
    }
    return 0;
  }

  const loggedIn = isLoggedIn();
  const cartCount = getCartCount();
  const supportTools = isSupportToolsActive();

  const authContainer = document.getElementById('nav-auth-container');
  if (authContainer) {
    authContainer.dataset.state = loggedIn ? 'logged-in' : 'logged-out';
  }

  if (supportToolsContainer) {
    authContainer.dataset.supportTools = supportTools ? 'admin' : 'non-admin';
  }

  if (cartCount > 0) {
    const cartLinkDesktop = document.getElementById('cart-link-desktop');
    const cartCountDesktop = document.getElementById('cart-count-desktop');
    if (cartLinkDesktop && cartCountDesktop) {
      cartLinkDesktop.classList.remove('hidden');
      cartCountDesktop.textContent = cartCount.toString();
    }

    const cartLinkMobile = document.getElementById('cart-link-mobile');
    const cartCountMobile = document.getElementById('cart-count-mobile');
    if (cartLinkMobile && cartCountMobile) {
      cartLinkMobile.classList.remove('hidden');
      cartCountMobile.textContent = cartCount.toString();
    }
  }
</script> </header> <main class="@container flex flex-col overflow-x-hidden">  <svg width="0" height="0" style="position:absolute"> <clipPath id="hero-clip" clipPathUnits="objectBoundingBox"> <path d="M1,0.9216C0.8695,0.9700,0.6934,1,0.4995,1C0.3063,1,0.1305,0.9702,0,0.9218V0H1V0.9216Z"></path> </clipPath> </svg> <div class="relative overflow-hidden"> <div class="absolute inset-0 bottom-[calc(min(100vw,700px)*.21)]"> <img src="https://assets.blurb.com/_astro/hero-background-011226.BPI44Cje_vnf7f.webp" srcset="https://assets.blurb.com/_astro/hero-background-011226.BPI44Cje_Z18UK9o.webp 375w, https://assets.blurb.com/_astro/hero-background-011226.BPI44Cje_21miCw.webp 768w, https://assets.blurb.com/_astro/hero-background-011226.BPI44Cje_ZuBEF8.webp 1024w, https://assets.blurb.com/_astro/hero-background-011226.BPI44Cje_1hvSU9.webp 1440w, https://assets.blurb.com/_astro/hero-background-011226.BPI44Cje_msYiv.webp 1920w" alt="Italian Urban Setting" sizes="100vw" loading="lazy" decoding="async" fetchpriority="auto" width="3888" height="2592" class="h-full w-full object-cover [clip-path:url(#hero-clip)]"> </div> <div class="relative px-6 pt-10"> <div class="flex flex-col items-center gap-6 md:gap-8"> <div> <div id="home-hero-eyebrow" data-promo-eyebrow class="text-blurb-text-bold font-heading text-center text-base font-medium md:text-xl hidden">  </div> <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-4"> <h1 class="block w-full text-center text-pretty text-blurb-text-bold">Your story starts here</h1> <div class="text-base not-italic font-normal text-blurb-text-bold text-center max-w-137.5 mx-auto"> Create. Print. Sell. Share. Blurb specializes in custom books and book printing services for photographers, businesses, and creative storytellers alike.  </div> </div> </div> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950 max-md:my-12" href="/formats">Get started  </a> <img src="https://assets.blurb.com/_astro/hero-image-011226.DnTBrpcB_Zp8W1e.webp" srcset="https://assets.blurb.com/_astro/hero-image-011226.DnTBrpcB_24ARvr.webp 375w, https://assets.blurb.com/_astro/hero-image-011226.DnTBrpcB_rwP1w.webp 768w, https://assets.blurb.com/_astro/hero-image-011226.DnTBrpcB_Z2hyw8l.webp 1024w, https://assets.blurb.com/_astro/hero-image-011226.DnTBrpcB_Zp8W1e.webp 1280w" alt="Open photo book displaying images of vintage Vespa scooters in an urban setting, with another closed photo book beside it featuring a white Vespa on the cover." sizes="100vw" loading="lazy" decoding="async" fetchpriority="auto" width="1280" height="640" class="w-full max-w-211.5"> </div> </div> </div> <script>
    (function () {
      // Check for active promo to update eyebrow
      const promoDataElement = document.getElementById('promo-data');
      if (!promoDataElement) return;

      const promoData = JSON.parse(promoDataElement.textContent || '{}');
      const { campaigns } = promoData;
      if (!campaigns) return;

      const currentDate = Date.now();
      const activePromo = campaigns.find((promo) => {
        const startDate = Date.parse(promo.startDate);
        const endDate = Date.parse(promo.endDate);
        return currentDate >= startDate && currentDate <= endDate;
      });

      if (activePromo?.homeHero?.eyebrow) {
        const eyebrow = document.getElementById('home-hero-eyebrow');
        if (eyebrow) {
          eyebrow.textContent = activePromo.homeHero.eyebrow;
          eyebrow.classList.remove('hidden');
        }
      }
    })();
  </script> <div class="flex flex-col gap-12 py-12 lg:gap-12 lg:py-20 2xl:mx-auto 2xl:max-w-screen-2xl"> <div class="flex flex-col gap-4">  <div class="flex w-full flex-row items-end justify-between gap-12 px-6 md:max-lg:px-10 lg:px-20"> <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty basis-full gap-4 md:max-xl:basis-3/4"> <h2 class="block w-full text-left text-pretty">Books and other products for every creative expression</h2>  </div> <div class="embla__controls hidden md:flex">  <div class="embla__buttons flex w-full items-center gap-4" carouselId="5be22def-6860-4e1f-a056-48aa9961a7f7" theme="dark">  <button aria-label="Previous slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__prev text-icon-bold" data-uuid="5be22def-6860-4e1f-a056-48aa9961a7f7">  <svg width="1em" height="1em" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-back-rounded">   <symbol id="ai:material-symbols:arrow-back-rounded" viewBox="0 0 24 24"><path fill="currentColor" d="m7.825 13l4.9 4.9q.3.3.288.7t-.313.7q-.3.275-.7.288t-.7-.288l-6.6-6.6q-.15-.15-.213-.325T4.426 12t.063-.375t.212-.325l6.6-6.6q.275-.275.688-.275t.712.275q.3.3.3.713t-.3.712L7.825 11H19q.425 0 .713.288T20 12t-.288.713T19 13z"/></symbol><use href="#ai:material-symbols:arrow-back-rounded"></use>  </svg>  </button> <button aria-label="Next slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__next text-icon-bold" data-uuid="5be22def-6860-4e1f-a056-48aa9961a7f7">  <svg width="1em" height="1em" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-forward-rounded">   <symbol id="ai:material-symbols:arrow-forward-rounded" viewBox="0 0 24 24"><path fill="currentColor" d="M16.175 13H5q-.425 0-.712-.288T4 12t.288-.712T5 11h11.175l-4.9-4.9q-.3-.3-.288-.7t.313-.7q.3-.275.7-.288t.7.288l6.6 6.6q.15.15.213.325t.062.375t-.062.375t-.213.325l-6.6 6.6q-.275.275-.687.275T11.3 19.3q-.3-.3-.3-.712t.3-.713z"/></symbol><use href="#ai:material-symbols:arrow-forward-rounded"></use>  </svg>  </button>  </div>  </div> </div> </div> <div class="block basis-full"> <div class="embla relative overflow-visible" data-carousel-options="{&#34;loop&#34;:false,&#34;align&#34;:&#34;center&#34;}" data-uuid="5be22def-6860-4e1f-a056-48aa9961a7f7">  <div class="embla__viewport"> <div class="embla__container flex touch-pan-y touch-pinch-zoom items-start"> <div class="embla__slide min-w-0 shrink-0 grow-0 w-80 md:w-102.5 first:ml-6 md:max-lg:first:ml-10 lg:first:ml-20 last:mr-6 md:max-lg:last:mr-10 lg:last:mr-20 mr-6">  <a href="/photo-books" style="background-image: url(https://assets.blurb.com/_astro/photo-books.BFWXs58k_Z2dARYP.webp);" data-astro-cid-jljnzfye="true" class="group flex w-full flex-col gap-4 no-underline md:gap-6 bg-blurb-background aspect-square overflow-clip rounded-lg bg-size-[137%] bg-clip-content bg-bottom bg-no-repeat md:bg-size-[150%]"><div class="flex flex-1 flex-col justify-start gap-3 overflow-x-hidden overflow-y-auto items-start text-left p-6 md:p-10" data-astro-cid-jljnzfye><div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-3"> <h3 class="block w-full text-left text-pretty text-blurb-text-bold">Photo Books</h3> <div class="text-left not-italic text-sm text-blurb-text-subtle font-bold"> From high-end photography albums to keepsake family books, photo books are our most premium format with multiple trim sizes and paper types.  </div> </div><div class="text-blurb-text-subtle font-bold" data-astro-cid-jljnzfye>Starting from US $32.00</div><div class="text-blurb-text-subtle" data-astro-cid-jljnzfye></div><button class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-gray-bold hover:bg-blurb-bg-gray-bold-hover hover:button-shadow-light-gray-800 active:bg-blurb-bg-gray-bold-active active:button-shadow-light-gray-600 hover-always:opacity-100 opacity-0 group-focus-within:opacity-100 group-hover:opacity-100" tabindex="-1" aria-hidden="true" data-astro-cid-jljnzfye="true">Get Started </button></div></a>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 w-80 md:w-102.5 first:ml-6 md:max-lg:first:ml-10 lg:first:ml-20 last:mr-6 md:max-lg:last:mr-10 lg:last:mr-20 mr-6">  <a href="/hardcover-and-paperback-books" style="background-image: url(https://assets.blurb.com/_astro/paperbacks-hardcovers.s4O7V8S__2o6Y8d.webp);" data-astro-cid-jljnzfye="true" class="group flex w-full flex-col gap-4 no-underline md:gap-6 bg-blurb-background aspect-square overflow-clip rounded-lg bg-size-[137%] bg-clip-content bg-bottom bg-no-repeat md:bg-size-[150%]"><div class="flex flex-1 flex-col justify-start gap-3 overflow-x-hidden overflow-y-auto items-start text-left p-6 md:p-10" data-astro-cid-jljnzfye><div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-3"> <h3 class="block w-full text-left text-pretty text-blurb-text-bold">Paperback & Hardcover</h3> <div class="text-left not-italic text-sm text-blurb-text-subtle font-bold"> Ideal for books that combine art with text or just text alone like portfolios, cookbooks, novels, children’s books and the like  </div> </div><div class="text-blurb-text-subtle font-bold" data-astro-cid-jljnzfye>Starting from US $4.99</div><div class="text-blurb-text-subtle" data-astro-cid-jljnzfye></div><button class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-gray-bold hover:bg-blurb-bg-gray-bold-hover hover:button-shadow-light-gray-800 active:bg-blurb-bg-gray-bold-active active:button-shadow-light-gray-600 hover-always:opacity-100 opacity-0 group-focus-within:opacity-100 group-hover:opacity-100" tabindex="-1" aria-hidden="true" data-astro-cid-jljnzfye="true">Get Started </button></div></a>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 w-80 md:w-102.5 first:ml-6 md:max-lg:first:ml-10 lg:first:ml-20 last:mr-6 md:max-lg:last:mr-10 lg:last:mr-20 mr-6">  <a href="/magazines" style="background-image: url(https://assets.blurb.com/_astro/magazines.CX-BzNvj_72eke.webp);" data-astro-cid-jljnzfye="true" class="group flex w-full flex-col gap-4 no-underline md:gap-6 bg-blurb-background aspect-square overflow-clip rounded-lg bg-size-[137%] bg-clip-content bg-bottom bg-no-repeat md:bg-size-[150%]"><div class="flex flex-1 flex-col justify-start gap-3 overflow-x-hidden overflow-y-auto items-start text-left p-6 md:p-10" data-astro-cid-jljnzfye><div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-3"> <h3 class="block w-full text-left text-pretty text-blurb-text-bold">Magazines</h3> <div class="text-left not-italic text-sm text-blurb-text-subtle font-bold"> Great for a series or one-off custom projects. Impressive newsstand quality and easy distribution.  </div> </div><div class="text-blurb-text-subtle font-bold" data-astro-cid-jljnzfye>Starting from US $7.00</div><div class="text-blurb-text-subtle" data-astro-cid-jljnzfye></div><button class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-gray-bold hover:bg-blurb-bg-gray-bold-hover hover:button-shadow-light-gray-800 active:bg-blurb-bg-gray-bold-active active:button-shadow-light-gray-600 hover-always:opacity-100 opacity-0 group-focus-within:opacity-100 group-hover:opacity-100" tabindex="-1" aria-hidden="true" data-astro-cid-jljnzfye="true">Get Started </button></div></a>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 w-80 md:w-102.5 first:ml-6 md:max-lg:first:ml-10 lg:first:ml-20 last:mr-6 md:max-lg:last:mr-10 lg:last:mr-20 mr-6">  <a href="/custom-notebooks-journals" style="background-image: url(https://assets.blurb.com/_astro/notebooks-journals.BpZZqeND_ZfmOGw.webp);" data-astro-cid-jljnzfye="true" class="group flex w-full flex-col gap-4 no-underline md:gap-6 bg-blurb-background aspect-square overflow-clip rounded-lg bg-size-[137%] bg-clip-content bg-bottom bg-no-repeat md:bg-size-[150%]"><div class="flex flex-1 flex-col justify-start gap-3 overflow-x-hidden overflow-y-auto items-start text-left p-6 md:p-10" data-astro-cid-jljnzfye><div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-3"> <h3 class="block w-full text-left text-pretty text-blurb-text-bold">Notebooks & Journals</h3> <div class="text-left not-italic text-sm text-blurb-text-subtle font-bold"> Choose from blank, lined, square, or dot-grid notebook pages, plus easily add photos or illustrations within the pages.  </div> </div><div class="text-blurb-text-subtle font-bold" data-astro-cid-jljnzfye>From US $14.67</div><div class="text-blurb-text-subtle" data-astro-cid-jljnzfye></div><button class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-gray-bold hover:bg-blurb-bg-gray-bold-hover hover:button-shadow-light-gray-800 active:bg-blurb-bg-gray-bold-active active:button-shadow-light-gray-600 hover-always:opacity-100 opacity-0 group-focus-within:opacity-100 group-hover:opacity-100" tabindex="-1" aria-hidden="true" data-astro-cid-jljnzfye="true">Get Started </button></div></a>  </div> </div> </div> <div class="embla__dots flex w-full items-center mt-6 md:max-lg:mt-10 lg:mt-12 justify-center"></div>  </div>  </div> </div> <script type="module" src="https://assets.blurb.com/_astro/CategoryCarousel.astro_astro_type_script_index_0_lang.wqqEfIgN.js"></script> <section class="py-12 lg:py-20 2xl:mx-auto 2xl:max-w-screen-2xl w-full relative px-6 md:max-lg:px-10 lg:px-20">  <div data-astro-cid-buiskd3p> <div class="mx-auto text-center" data-astro-cid-buiskd3p> <div class="mb-8 flex flex-col items-center gap-6 self-stretch" data-astro-cid-buiskd3p> <h2 class="font-heading text-blurb-text-bold text-center text-6xl leading-normal lg:text-9xl" data-astro-cid-buiskd3p>Tools and resources for makers, sellers, and businesses </h2>  </div> <!-- Desktop/Tablet Tabs (md and up) --> <div class="hidden md:block" data-astro-cid-buiskd3p> <div class="tabs" data-tabs-root data-default-value="bookTab" data-variant="tab-pill-h" data-astro-cid-buiskd3p="true">  <div class="mb-8 flex justify-center" data-astro-cid-buiskd3p> <div role="tablist" class="tabs__list inline-flex items-center bg-blurb-bg-neutral text-blurb-text-bold; flex-row gap-2" data-tabs-list data-variant="tab-pill-h" data-astro-cid-buiskd3p="true"> <button type="button" role="tab" class="tabs__trigger tabs__trigger--unselected tabs__trigger--tab-pill-h relative inline-flex items-center whitespace-nowrap focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 justify-center px-4 pb-3 pt-2" data-tabs-trigger="bookTab" data-state="unselected" data-variant="tab-pill-h" aria-selected="false" aria-controls="tabpanel-bookTab" tabindex="-1" data-astro-cid-buiskd3p="true"> Book creation </button><button type="button" role="tab" class="tabs__trigger tabs__trigger--unselected tabs__trigger--tab-pill-h relative inline-flex items-center whitespace-nowrap focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 justify-center px-4 pb-3 pt-2" data-tabs-trigger="printingTab" data-state="unselected" data-variant="tab-pill-h" aria-selected="false" aria-controls="tabpanel-printingTab" tabindex="-1" data-astro-cid-buiskd3p="true"> Printing </button><button type="button" role="tab" class="tabs__trigger tabs__trigger--unselected tabs__trigger--tab-pill-h relative inline-flex items-center whitespace-nowrap focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 justify-center px-4 pb-3 pt-2" data-tabs-trigger="sellingTab" data-state="unselected" data-variant="tab-pill-h" aria-selected="false" aria-controls="tabpanel-sellingTab" tabindex="-1" data-astro-cid-buiskd3p="true"> Selling </button><button type="button" role="tab" class="tabs__trigger tabs__trigger--unselected tabs__trigger--tab-pill-h relative inline-flex items-center whitespace-nowrap focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-blue-500 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 justify-center px-4 pb-3 pt-2" data-tabs-trigger="buisnessTab" data-state="unselected" data-variant="tab-pill-h" aria-selected="false" aria-controls="tabpanel-buisnessTab" tabindex="-1" data-astro-cid-buiskd3p="true"> Business services </button> </div> </div> <div role="tabpanel" class="tabs__content mt-4 focus-visible:outline-none" data-tabs-content="bookTab" data-state="unselected" id="tabpanel-bookTab" tabindex="0" hidden data-astro-cid-buiskd3p="true">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl"><a href=https:&#x2F;&#x2F;build.blurb.com&#x2F;create>Design online</a> or use our free <a data-event=bookwright_download_click href=&#x2F;bookwright>desktop software</a>. We also integrate with several Adobe products.</p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/bookmaking-tools" type="button">Explore free tools </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_1qKVwM.webp" srcset="https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_ZHdkqC.webp 375w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_Z1uTzGG.webp 768w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_Z1dNrci.webp 1024w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_2l3N6X.webp 1280w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_Z1MPhDg.webp 1920w" alt="A double-page photo book spread with layout guides and a travel photo collage." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div><div role="tabpanel" class="tabs__content mt-4 focus-visible:outline-none" data-tabs-content="printingTab" data-state="unselected" id="tabpanel-printingTab" tabindex="0" hidden data-astro-cid-buiskd3p="true">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl">On-demand printing lets you print the quantity you need whether that’s one book or hundreds. We handle all shipping and distribution, too.</p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/getting-started#panel-standard-landscape" type="button">Start your book </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_ZqlQ0R.webp" srcset="https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z2o8v7S.webp 375w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z16RCOF.webp 768w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_2cluKD.webp 1024w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z8LxmI.webp 1280w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z1ge6ud.webp 1920w" alt="A stack of hardcover children's books with illustrated covers and interior pages." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div><div role="tabpanel" class="tabs__content mt-4 focus-visible:outline-none" data-tabs-content="sellingTab" data-state="unselected" id="tabpanel-sellingTab" tabindex="0" hidden data-astro-cid-buiskd3p="true">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl">Set your books up for sale on the Blurb Bookstore, or with Amazon or Ingram, all through one convenient dashboard. </p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/self-publish" type="button">Learn more </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-selling.Bihm600K_YtSAD.webp" srcset="https://assets.blurb.com/_astro/hp-selling.Bihm600K_Z1fxqGr.webp 375w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_ZrOTgN.webp 768w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_Z2vSNb1.webp 1024w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_LkHMG.webp 1280w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_Z11YLfY.webp 1920w" alt="An open cookbook showing rustic bread, with editing and layout tools overlaid." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div><div role="tabpanel" class="tabs__content mt-4 focus-visible:outline-none" data-tabs-content="buisnessTab" data-state="unselected" id="tabpanel-buisnessTab" tabindex="0" hidden data-astro-cid-buiskd3p="true">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl">Customized support, API tools, bulk discounts, and all your print needs fulfilled. Plus, quick quotes and consultations.</p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/large-order-services" type="button">Explore services </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z1NQUYC.webp" srcset="https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z1lyshF.webp 375w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z2ksof6.webp 768w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z2w3hqC.webp 1024w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z1C6FeO.webp 1280w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_2w4fgh.webp 1920w" alt="Icons representing tools and services: API tools, custom support, bulk discounts, print needs, and quick quotes." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div> </div> <script type="module">const _=i=>{document.querySelectorAll("[data-tabs-root]").forEach(l=>{const f=l.dataset.defaultValue,o=l.dataset.variant||"tab-line-h",c=o.includes("-v"),a=l.querySelectorAll("[data-tabs-trigger]"),u=l.querySelectorAll("[data-tabs-content]");let d=f||a[0]?.dataset.tabsTrigger||"";const b=n=>{a.forEach(e=>{const r=e.dataset.tabsTrigger===n,t=e.dataset.variant||o;e.dataset.state=r?"selected":"unselected",e.setAttribute("aria-selected",String(r)),e.tabIndex=r?0:-1,e.classList.remove("tabs__trigger--selected","tabs__trigger--unselected","tabs__trigger--tab-line-h","tabs__trigger--tab-line-vl","tabs__trigger--tab-line-vr","tabs__trigger--tab-pill-h","tabs__trigger--tab-pill-v");const s=r?"tabs__trigger--selected":"tabs__trigger--unselected";e.classList.add(s);const h=`tabs__trigger--${t}`;e.classList.add(h)}),u.forEach(e=>{const r=e.dataset.tabsContent===n;e.dataset.state=r?"selected":"unselected",r?(e.removeAttribute("hidden"),e.hidden=!1):(e.setAttribute("hidden",""),e.hidden=!0)}),d=n,i?.onTabChange?.(n)};b(d),a.forEach(n=>{n.addEventListener("click",()=>{const e=n.dataset.tabsTrigger;e&&e!==d&&b(e)})});const g=l.querySelector("[data-tabs-list]");g&&g.addEventListener("keydown",n=>{const e=n,r=e.target;if(!r.matches("[data-tabs-trigger]"))return;const t=Array.from(a).indexOf(r);let s=t;switch(e.key){case"ArrowRight":c||(e.preventDefault(),s=t<a.length-1?t+1:0);break;case"ArrowLeft":c||(e.preventDefault(),s=t>0?t-1:a.length-1);break;case"ArrowDown":c&&(e.preventDefault(),s=t<a.length-1?t+1:0);break;case"ArrowUp":c&&(e.preventDefault(),s=t>0?t-1:a.length-1);break;case"Home":e.preventDefault(),s=0;break;case"End":e.preventDefault(),s=a.length-1;break}s!==t&&(a[s]?.focus(),a[s]?.click())})})};_(window.location.hostname==="localhost"?{onTabChange:i=>{console.log("Tab changed to:",i)}}:void 0);
//# sourceMappingURL=Tabs.astro_astro_type_script_index_0_lang.DIh120th.js.map</script> </div> <!-- Mobile Accordion (below md) --> <div class="mt-8 md:hidden" data-astro-cid-buiskd3p> <div class="accordion border-blurb-border-subtle flex w-full flex-col border-b"> <details name="responsive-tabs-content" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="responsive-tabs-content" class="flex w-full items-center justify-between gap-2"> <span>Book creation</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="responsive-tabs-content" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl"><a href=https:&#x2F;&#x2F;build.blurb.com&#x2F;create>Design online</a> or use our free <a data-event=bookwright_download_click href=&#x2F;bookwright>desktop software</a>. We also integrate with several Adobe products.</p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/bookmaking-tools" type="button">Explore free tools </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_1qKVwM.webp" srcset="https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_ZHdkqC.webp 375w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_Z1uTzGG.webp 768w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_Z1dNrci.webp 1024w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_2l3N6X.webp 1280w, https://assets.blurb.com/_astro/hp-book-creation.7hSxeBZk_Z1MPhDg.webp 1920w" alt="A double-page photo book spread with layout guides and a travel photo collage." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div> </div> <details name="responsive-tabs-content" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="responsive-tabs-content" class="flex w-full items-center justify-between gap-2"> <span>Printing</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="responsive-tabs-content" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl">On-demand printing lets you print the quantity you need whether that’s one book or hundreds. We handle all shipping and distribution, too.</p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/getting-started#panel-standard-landscape" type="button">Start your book </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_ZqlQ0R.webp" srcset="https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z2o8v7S.webp 375w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z16RCOF.webp 768w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_2cluKD.webp 1024w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z8LxmI.webp 1280w, https://assets.blurb.com/_astro/hp-printing.DiLqSDVo_Z1ge6ud.webp 1920w" alt="A stack of hardcover children's books with illustrated covers and interior pages." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div> </div> <details name="responsive-tabs-content" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="responsive-tabs-content" class="flex w-full items-center justify-between gap-2"> <span>Selling</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="responsive-tabs-content" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl">Set your books up for sale on the Blurb Bookstore, or with Amazon or Ingram, all through one convenient dashboard. </p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/self-publish" type="button">Learn more </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-selling.Bihm600K_YtSAD.webp" srcset="https://assets.blurb.com/_astro/hp-selling.Bihm600K_Z1fxqGr.webp 375w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_ZrOTgN.webp 768w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_Z2vSNb1.webp 1024w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_LkHMG.webp 1280w, https://assets.blurb.com/_astro/hp-selling.Bihm600K_Z11YLfY.webp 1920w" alt="An open cookbook showing rustic bread, with editing and layout tools overlaid." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div> </div> <details name="responsive-tabs-content" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="responsive-tabs-content" class="flex w-full items-center justify-between gap-2"> <span>Business services</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="responsive-tabs-content" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4">  <div class="max-md:space-y-4 max-md:text-left md:mt-8 md:flex md:flex-col md:items-center md:gap-6"> <p class="text-lg text-gray-600 md:max-w-2xl">Customized support, API tools, bulk discounts, and all your print needs fulfilled. Plus, quick quotes and consultations.</p> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/large-order-services" type="button">Explore services </a> <div class="aspect-[1280/700] w-full"> <img src="https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z1NQUYC.webp" srcset="https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z1lyshF.webp 375w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z2ksof6.webp 768w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z2w3hqC.webp 1024w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_Z1C6FeO.webp 1280w, https://assets.blurb.com/_astro/hp-business-service-en.CJfmvcxF_2w4fgh.webp 1920w" alt="Icons representing tools and services: API tools, custom support, bulk discounts, print needs, and quick quotes." sizes="100vw" loading="lazy" onload="this.setAttribute('data-loaded', 'true')" decoding="async" fetchpriority="auto" width="2560" height="1400" class="lazy-fade h-full w-full object-cover"> </div> </div>  </div> </div>  </div> </div> </div> </div>  </section> <section class="py-12 lg:py-20 2xl:mx-auto 2xl:max-w-screen-2xl w-full relative px-6 md:max-lg:px-10 lg:px-20">  <div class="value-props-container flex flex-col gap-12"> <div class="value-props-heading flex flex-col"> <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty max-w-full gap-4 lg:max-w-1/2"> <h2 class="block w-full text-left text-pretty">The Blurb Difference</h2>  </div> </div> <div class="value-props-items flex w-full flex-wrap justify-start gap-10 sm:gap-x-4 lg:flex-nowrap lg:gap-6"> <div class="flex w-full flex-col gap-4 pr-3 pl-3 sm:w-[calc(50%-0.5rem)] md:flex lg:w-full items-start"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-3xl text-icon-brand fill-blurb-text-brand h-12 w-12" data-icon="custom/star-burst">   <symbol id="ai:local:custom/star-burst" viewBox="0 0 48 48"><path fill="currentColor" d="m41.992 37.2-4.78-4.8 1.58-1.58 4.8 4.78zm-6.796-23.635-1.58-1.58 4.78-4.781 1.6 1.58zm-22.8.02-4.78-4.8 1.58-1.581 4.8 4.78zM5.58 37.2 4 35.6l4.78-4.78 1.6 1.58zm9.904.05 8.312-4.989 8.331 5.058-2.197-9.438 7.304-6.327-9.638-.858-3.8-8.88-3.781 8.83-9.638.838 7.303 6.366zM12.063 42l3.096-13.3-10.362-8.969 13.67-1.174L23.795 6l5.35 12.558 13.669 1.173-10.36 8.969L35.55 42l-11.754-7.065z"/></symbol><use href="#ai:local:custom/star-burst"></use>  </svg> <h4 class="text-left"> Professional bookstore-grade quality </h4> <p class="text-left"> Versatile formats and sizes, luxe paper options, and three unique cover types all printed and shipped in-house. </p>  </div><div class="flex w-full flex-col gap-4 pr-3 pl-3 sm:w-[calc(50%-0.5rem)] md:flex lg:w-full items-start"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-3xl text-icon-brand fill-blurb-text-brand h-12 w-12" data-icon="custom/book">   <symbol id="ai:local:custom/book" viewBox="0 0 48 48"><mask id="a" width="48" height="48" x="0" y="0" maskUnits="userSpaceOnUse" style="mask-type:alpha"><path fill="currentColor" d="M0 0h48v48H0z"/></mask><g fill="currentColor" mask="url(#a)"><path d="M12.554 32.769q2.726 0 5.306.644 2.578.645 5.086 1.971V14.515a17.6 17.6 0 0 0-4.952-2.44 18.2 18.2 0 0 0-5.44-.844q-1.88 0-3.475.369a30 30 0 0 0-3.387 1.011q-.231.078-.327.221a.56.56 0 0 0-.096.318v20.315q0 .25.192.375.194.126.423.048 1.281-.565 3.035-.842a23 23 0 0 1 3.635-.277m12.661 2.615q2.52-1.326 4.997-1.97 2.476-.645 5.234-.645 1.881 0 3.675.261 1.794.262 2.994.666a.43.43 0 0 0 .423-.029q.193-.124.193-.394V13.15a.5.5 0 0 0-.096-.308.74.74 0 0 0-.328-.23 16 16 0 0 0-3.321-1.058 18.3 18.3 0 0 0-3.54-.323q-2.757 0-5.378.844a17.5 17.5 0 0 0-4.853 2.44zm-1.144 3.385a20.6 20.6 0 0 0-5.483-2.742 19.4 19.4 0 0 0-6.034-.958q-1.623 0-3.188.335a28 28 0 0 0-3.143.869q-1.155.511-2.189-.217T3 34.026V13.012q0-.788.389-1.45a2.43 2.43 0 0 1 1.127-.996A18.3 18.3 0 0 1 8.432 9.35a22 22 0 0 1 4.122-.389q3.11 0 6.038.87a19.5 19.5 0 0 1 5.489 2.619 18.9 18.9 0 0 1 5.407-2.62q2.896-.869 5.958-.869 2.082 0 4.101.389t3.907 1.215q.738.33 1.142.994.405.664.404 1.452v21.016q0 1.356-1.115 2.083-1.116.729-2.254.124a21 21 0 0 0-3.058-.855 16 16 0 0 0-3.127-.31 18.5 18.5 0 0 0-5.966.973 21.8 21.8 0 0 0-5.409 2.727"/></g></symbol><use href="#ai:local:custom/book"></use>  </svg> <h4 class="text-left"> Trusted printing partner </h4> <p class="text-left"> Backed by 20 years of in-house expertise and full production control, Blurb ensures consistent quality from start to finish. No outsourcing, no compromises. </p>  </div><div class="flex w-full flex-col gap-4 pr-3 pl-3 sm:w-[calc(50%-0.5rem)] md:flex lg:w-full items-start"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-3xl text-icon-brand fill-blurb-text-brand h-12 w-12" data-icon="custom/leaf">   <symbol id="ai:local:custom/leaf" viewBox="0 0 48 48"><mask id="a" width="48" height="48" x="0" y="0" maskUnits="userSpaceOnUse" style="mask-type:alpha"><path fill="#D9D9D9" d="M0 0h48v48H0z"/></mask><g fill="none" mask="url(#a)"><path fill="#107EB1" d="M24.339 39q-2.81 0-5.294-.97a15.3 15.3 0 0 1-4.464-2.672l-3.697 3.627a1.02 1.02 0 0 1-.771.353q-.444 0-.778-.344A1.1 1.1 0 0 1 9 38.216q0-.435.335-.763l3.646-3.677a15.3 15.3 0 0 1-2.685-4.478Q9.339 26.834 9.339 24q0-6.282 4.359-10.641Q18.058 9 24.338 9h15v15q0 6.262-4.359 10.63Q30.619 39 24.339 39m0-2.27q5.304 0 9.017-3.712 3.713-3.714 3.713-9.018V11.269h-12.73q-5.305 0-9.018 3.713T11.608 24q0 2.333.788 4.439a12.8 12.8 0 0 0 2.165 3.757l10.773-10.742q.33-.336.773-.335.443 0 .783.349.33.33.329.78 0 .451-.335.787L16.142 33.758q1.646 1.38 3.759 2.176a12.5 12.5 0 0 0 4.438.797"/></g></symbol><use href="#ai:local:custom/leaf"></use>  </svg> <h4 class="text-left"> Sustainable papers &amp; practices </h4> <p class="text-left"> Our photo books are crafted in the US with Forest Stewardship Council-certified papers and printed at the facility nearest you, reducing emissions and supporting sustainable publishing. </p>  </div><div class="flex w-full flex-col gap-4 pr-3 pl-3 sm:w-[calc(50%-0.5rem)] md:flex lg:w-full items-start"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-3xl text-icon-brand fill-blurb-text-brand h-12 w-12" data-icon="custom/architecture">   <symbol id="ai:local:custom/architecture" viewBox="0 0 48 48"><mask id="a" width="48" height="48" x="0" y="0" maskUnits="userSpaceOnUse" style="mask-type:alpha"><path fill="currentColor" d="M0 0h48v48H0z"/></mask><g fill="currentColor" mask="url(#a)"><path d="m13.854 40.923-.354-2.434L19.407 22.2q.436.396.937.66.502.262 1.06.436l-5.746 15.873zm20.292 0-1.803-1.754-5.809-15.823q.54-.192 1.066-.446a3.7 3.7 0 0 0 .961-.669L34.5 38.489zM24 21.5q-2.289 0-3.894-1.606Q18.501 18.289 18.5 16q0-2.061 1.244-3.552t3.122-1.806V6h2.268v4.643q1.878.315 3.122 1.805Q29.5 13.939 29.5 16q0 2.289-1.606 3.894Q26.289 21.499 24 21.5m0-2.269q1.346 0 2.288-.943.943-.941.943-2.288t-.943-2.289q-.941-.942-2.288-.942t-2.288.942A3.12 3.12 0 0 0 20.769 16q0 1.346.943 2.288.941.943 2.288.943"/></g></symbol><use href="#ai:local:custom/architecture"></use>  </svg> <h4 class="text-left"> Complete creative control  </h4> <p class="text-left"> Choose between our free bookmaking software with flexible templates and page layouts or our plugins that work with Adobe programs. </p>  </div> </div> </div>  </section> <div id="email-capture-section" class="group relative overflow-hidden" data-state="idle"> <!-- Desktop --><picture> <source srcset="https://assets.blurb.com/_astro/email-capture-desktop.DFnncEC6_Z3PlFt.webp" type="image/webp"><source srcset="https://assets.blurb.com/_astro/email-capture-desktop.DFnncEC6_Z26gccB.jpeg" type="image/jpeg">  <img src="https://assets.blurb.com/_astro/email-capture-desktop.DFnncEC6_1DTtcA.png" alt loading="lazy" decoding="async" fetchpriority="auto" width="1920" height="410" class="absolute inset-0 h-full w-full object-cover object-top hidden lg:block"> </picture> <!-- Tablet --> <picture> <source srcset="https://assets.blurb.com/_astro/email-capture-tablet.BpFZPC3j_1d0TbM.webp" type="image/webp"><source srcset="https://assets.blurb.com/_astro/email-capture-tablet.BpFZPC3j_Z1j5N7v.jpeg" type="image/jpeg">  <img src="https://assets.blurb.com/_astro/email-capture-tablet.BpFZPC3j_7lhrP.png" alt loading="lazy" decoding="async" fetchpriority="auto" width="1024" height="600" class="absolute inset-0 h-full w-full object-cover object-top hidden md:block lg:hidden"> </picture> <!-- Mobile --> <picture> <source srcset="https://assets.blurb.com/_astro/email-capture-mobile.DQJdA3VO_MQrKf.webp" type="image/webp"><source srcset="https://assets.blurb.com/_astro/email-capture-mobile.DQJdA3VO_1s2UIh.jpeg" type="image/jpeg">  <img src="https://assets.blurb.com/_astro/email-capture-mobile.DQJdA3VO_ZwxEUs.png" alt loading="lazy" decoding="async" fetchpriority="auto" width="768" height="600" class="absolute inset-0 h-full w-full object-cover object-top md:hidden"> </picture> <div class="lg:py-20 2xl:mx-auto 2xl:max-w-screen-2xl w-full px-6 md:max-lg:px-10 lg:px-20 relative flex flex-col py-6 pb-12 md:py-20 gap-5 lg:gap-10 h-150 lg:h-auto justify-end lg:justify-start items-center lg:items-start">  <div class="relative"> <div id="success-message" class="absolute inset-0 text-blurb-text-inverse flex flex-col gap-4 justify-center text-center lg:text-left hidden group-data-[state=success]:flex"> <h2 class="text-blurb-text-inverse"> Thanks for joining! </h2> <p class="text-lg"> We&#39;re excited to share our latest news and exclusive content with you. </p> </div> <div id="form-content" class="flex flex-col gap-5 lg:gap-10 group-data-[state=success]:invisible"> <div class="flex flex-col gap-3"> <h2 class="text-blurb-text-inverse text-center lg:text-left max-w-150">  Want 30% off? Sign up and save on your first book. </h2>  </div> <form data-email-form novalidate class="flex flex-col w-full max-w-150"> <input type="hidden" name="locale" value="en_US"> <input type="hidden" name="email_signup_source" value="suas"> <div class="flex flex-col md:flex-row gap-8 md:gap-2 justify-center lg:justify-start"> <div class="flex flex-col gap-2"> <label class="flex flex-col gap-2"> <span class="text-blurb-text-inverse font-demi"> Email Address </span> <input data-email-input name="email" type="email" class="bg-blurb-bg-input hover:bg-blurb-bg-input-hover focus:border-blurb-border-focus flex w-full flex-1 rounded border p-2 focus:bg-white group-data-[state=validation-error]:border-blurb-border-danger"> </label> <p class="text-blurb-text-inverse text-sm lg:px-0">By continuing, you agree to our <a href="/terms" target="_blank" rel="noopener noreferrer" class="text-blurb-text-inverse hover:text-light-blue-600">Terms of Service</a> and <a href="/privacy" target="_blank" rel="noopener noreferrer" class="text-blurb-text-inverse hover:text-light-blue-600">Privacy Policy</a>.</p> <div id="email-capture-validation-error" class="hidden group-data-[state=validation-error]:block"> <div class="bg-blurb-bg-danger-subtlest flex items-center gap-1 rounded p-1"> <svg width="1em" height="1em" class="shrink-0 grow-0 text-icon-danger h-4 w-4" data-icon="material-symbols:error-outline-rounded">   <symbol id="ai:material-symbols:error-outline-rounded" viewBox="0 0 24 24"><path fill="currentColor" d="M12 17q.425 0 .713-.288T13 16t-.288-.712T12 15t-.712.288T11 16t.288.713T12 17m0-4q.425 0 .713-.288T13 12V8q0-.425-.288-.712T12 7t-.712.288T11 8v4q0 .425.288.713T12 13m0 9q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4T6.325 6.325T4 12t2.325 5.675T12 20m0-8"/></symbol><use href="#ai:material-symbols:error-outline-rounded"></use>  </svg> <p class="text-sm"> Please enter a valid email </p> </div> </div> <div id="email-capture-server-error" class="hidden group-data-[state=server-error]:block"> <div class="bg-blurb-bg-danger-subtlest flex items-center gap-1 rounded p-1"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-icon-danger h-4 w-4" data-icon="material-symbols:error-outline-rounded">   <use href="#ai:material-symbols:error-outline-rounded"></use>  </svg> <p class="text-sm">Something went wrong, please try again</p> </div> </div> </div> <div class="m-auto group-data-[state=loading]:pointer-events-none md:m-0 md:mt-8">  <div class="[&>*]:!transition-none"> <button class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" data-event="email_click">Join us </button> </div> </div> </div> </form> </div> </div>  </div> </div> <script type="module" src="https://assets.blurb.com/_astro/EmailCapture.astro_astro_type_script_index_0_lang.D6uESPb3.js"></script> <section class="py-12 lg:py-20 2xl:mx-auto 2xl:max-w-screen-2xl w-full relative px-6 md:max-lg:px-10 lg:px-20">  <div class="flex flex-col gap-10 lg:flex-row lg:gap-6"> <div class="flex flex-col gap-12"> <div class="flex flex-col items-start justify-between self-stretch max-lg:gap-4 md:max-lg:items-center lg:flex-row lg:items-end"> <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty basis-1/2"> <h2 class="block w-full text-left text-pretty md:max-lg:text-center">Inspiring examples made with Blurb</h2>  </div> <a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm no-underline gap-2 px-6 min-w-25 text-base/6 text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950" href="/getting-started">Start a project </a> </div> <div class="flex flex-col gap-10 lg:flex-row items-start lg:gap-6"> <div class="flex flex-col items-start gap-4 overflow-hidden lg:basis-1/3"> <div class="embla relative overflow-visible" data-carousel-options="{&#34;loop&#34;:true}" data-uuid="8cdb0a08-cf6d-47b1-aee0-e4eba7d18a69">  <div class="embla__viewport"> <div class="embla__container flex touch-pan-y touch-pinch-zoom items-start"> <div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/building-better-brands.CM3hOj_b_Z1WFOiV.webp" alt="Red book cover with the title “Building Better Brands” by Scott Lerman" loading="lazy" decoding="async" fetchpriority="auto" width="210" height="314" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/einstein.yM1lf7EC_Z2bhpkI.webp" alt="Interior spread with monochrome portrait and article titled “Random Acts of Branding.”" loading="lazy" decoding="async" fetchpriority="auto" width="379" height="280" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/camel.BqmXZYro_FP6Dd.webp" alt="Book spread featuring a vintage ad and headline “Is your brand compelling, actionable, &#38; true?”" loading="lazy" decoding="async" fetchpriority="auto" width="380" height="280" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/choice.BmXsgkKl_Z1fxU9G.webp" alt="Editorial spread with a map and article on retention and strategy titled “The Gates.”" loading="lazy" decoding="async" fetchpriority="auto" width="381" height="280" class="shadow-showcase-card rounded-lg"> </div>  </div> </div> </div> <div class="embla__controls">  <div class="embla__buttons flex w-full items-center" carouselId="8cdb0a08-cf6d-47b1-aee0-e4eba7d18a69" theme="dark">  <button aria-label="Previous slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__prev absolute top-1/2 -translate-y-1/2 text-icon-bold left-2" data-uuid="8cdb0a08-cf6d-47b1-aee0-e4eba7d18a69">  <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-back-rounded">   <use href="#ai:material-symbols:arrow-back-rounded"></use>  </svg>  </button> <button aria-label="Next slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__next absolute top-1/2 -translate-y-1/2 text-icon-bold right-2" data-uuid="8cdb0a08-cf6d-47b1-aee0-e4eba7d18a69">  <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-forward-rounded">   <use href="#ai:material-symbols:arrow-forward-rounded"></use>  </svg>  </button>  </div>  </div> <div class="embla__dots flex w-full items-center absolute bottom-6 h-3 justify-center"></div>  </div> <div class="flex flex-col gap-4 items-start"> <div class="flex flex-col gap-2 self-stretch px-3 items-start">  <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-2"> <h3 class="block w-full text-left text-pretty">Branding at its best</h3> <div class="text-left text-blurb-text-subtle text-base not-italic font-normal"> Already in its second edition, this author put his 30 years of brand consultancy knowledge into a 6x9-inch paperback under US $3.99  </div> </div>  <ul class="flex flex-col gap-2"> <li class="text-blurb-text-bold text-base"> <strong>Creator type:</strong> <div>Mid-size business, agency</div> </li><li class="text-blurb-text-bold text-base">  <div>Scott Lerman, <a href=&#x2F;b&#x2F;12173685-building-better-brands>Building Better Brands</a></div> </li><li class="text-blurb-text-bold text-base"> <strong>Tool:</strong> <div>Blurb plugin for Adobe InDesign</div> </li><li class="text-blurb-text-bold text-base"> <strong>Format:</strong> <div>Paperback</div> </li><li class="text-blurb-text-bold text-base"> <strong>Paper:</strong> <div>Standard Color</div> </li> </ul> </div>  </div> </div> <script type="module" src="https://assets.blurb.com/_astro/ShowcaseCard.astro_astro_type_script_index_0_lang.wqqEfIgN.js"></script><div class="flex flex-col items-start gap-4 overflow-hidden lg:basis-1/3"> <div class="embla relative overflow-visible" data-carousel-options="{&#34;loop&#34;:true}" data-uuid="e594172e-840c-4dfa-8ef4-ff395eefd52e">  <div class="embla__viewport"> <div class="embla__container flex touch-pan-y touch-pinch-zoom items-start"> <div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/door.BJehDc6f_Rcewj.webp" alt="Photo of a grand, ornate double blue door with decorative arch." loading="lazy" decoding="async" fetchpriority="auto" width="259" height="325" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/europe-map.4xtmQNJc_1dbofu.webp" alt="Black and white illustrated map of Europe showing travel paths." loading="lazy" decoding="async" fetchpriority="auto" width="381" height="238" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/man-town-square.jOdeKC55_RLLzD.webp" alt="Full-spread photo of a man sitting at a table in a sunlit European plaza." loading="lazy" decoding="async" fetchpriority="auto" width="381" height="238" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/world-travel.Q9n3S_OX_ZQH9ds.webp" alt="Interior page with a travel article and image of a grand indoor train station." loading="lazy" decoding="async" fetchpriority="auto" width="379" height="237" class="shadow-showcase-card rounded-lg"> </div>  </div> </div> </div> <div class="embla__controls">  <div class="embla__buttons flex w-full items-center" carouselId="e594172e-840c-4dfa-8ef4-ff395eefd52e" theme="dark">  <button aria-label="Previous slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__prev absolute top-1/2 -translate-y-1/2 text-icon-bold left-2" data-uuid="e594172e-840c-4dfa-8ef4-ff395eefd52e">  <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-back-rounded">   <use href="#ai:material-symbols:arrow-back-rounded"></use>  </svg>  </button> <button aria-label="Next slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__next absolute top-1/2 -translate-y-1/2 text-icon-bold right-2" data-uuid="e594172e-840c-4dfa-8ef4-ff395eefd52e">  <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-forward-rounded">   <use href="#ai:material-symbols:arrow-forward-rounded"></use>  </svg>  </button>  </div>  </div> <div class="embla__dots flex w-full items-center absolute bottom-6 h-3 justify-center"></div>  </div> <div class="flex flex-col gap-4 items-start"> <div class="flex flex-col gap-2 self-stretch px-3 items-start">  <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-2"> <h3 class="block w-full text-left text-pretty">A travel treasure</h3> <div class="text-left text-blurb-text-subtle text-base not-italic font-normal"> A layflat book was the go-to format for this travel photographer wanting a coffee-table worthy piece that commanded attention.  </div> </div>  <ul class="flex flex-col gap-2"> <li class="text-blurb-text-bold text-base"> <strong>Creator type:</strong> <div>Photographer, self-published author</div> </li><li class="text-blurb-text-bold text-base">  <div>Adam C. Stuart, <a href=b&#x2F;11303490-europe-in-one-way-tickets>Europe in One-Way Tickets</a></div> </li><li class="text-blurb-text-bold text-base"> <strong>Tool:</strong> <div>Blurb plugin for Adobe InDesign</div> </li><li class="text-blurb-text-bold text-base"> <strong>Format:</strong> <div>Layflat</div> </li><li class="text-blurb-text-bold text-base"> <strong>Paper:</strong> <div>Premium Lustre</div> </li> </ul> </div>  </div> </div> <div class="flex flex-col items-start gap-4 overflow-hidden lg:basis-1/3"> <div class="embla relative overflow-visible" data-carousel-options="{&#34;loop&#34;:true}" data-uuid="0cbc9ed0-9b6a-4d2f-990e-5c021a279479">  <div class="embla__viewport"> <div class="embla__container flex touch-pan-y touch-pinch-zoom items-start"> <div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/Refueled-1.DqQj5T3k_2f327w.webp" alt="Person holding a surfboard looking out onto the ocean." loading="lazy" decoding="async" fetchpriority="auto" width="244" height="314" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/Refueled-2.DT8C7MPa_yCnTN.webp" alt="Life ring holder with the ocean behind. Summer of Love, sand, surf, skate, song written on left page." loading="lazy" decoding="async" fetchpriority="auto" width="483" height="314" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/Refueled-3.CwD0XZi2_Z27fM0x.webp" alt="Surf shack pictured on the left hand page, orange words with a light blue background on the opposite page." loading="lazy" decoding="async" fetchpriority="auto" width="429" height="280" class="shadow-showcase-card rounded-lg"> </div>  </div><div class="embla__slide min-w-0 shrink-0 grow-0 basis-full bg-light-gray-50 rounded-lg flex items-center justify-center max-md:aspect-square mr-6">  <div class="flex items-center justify-center"> <img src="https://assets.blurb.com/_astro/Refueled-4.CkhFZMsH_2whgO8.webp" alt="Paragraphs on the left hand page, a car with wood paneling and a surfboard on top parked in front of a house on the other page." loading="lazy" decoding="async" fetchpriority="auto" width="429" height="280" class="shadow-showcase-card rounded-lg"> </div>  </div> </div> </div> <div class="embla__controls">  <div class="embla__buttons flex w-full items-center" carouselId="0cbc9ed0-9b6a-4d2f-990e-5c021a279479" theme="dark">  <button aria-label="Previous slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__prev absolute top-1/2 -translate-y-1/2 text-icon-bold left-2" data-uuid="0cbc9ed0-9b6a-4d2f-990e-5c021a279479">  <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-back-rounded">   <use href="#ai:material-symbols:arrow-back-rounded"></use>  </svg>  </button> <button aria-label="Next slide" class="border-blurb-border-subtle bg-blurb-bg-neutral flex items-center justify-center rounded-full border p-1.75 box-content cursor-pointer hover:border-transparent hover:button-shadow-blurb-bg-accent-blue embla__next absolute top-1/2 -translate-y-1/2 text-icon-bold right-2" data-uuid="0cbc9ed0-9b6a-4d2f-990e-5c021a279479">  <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 text-base" data-icon="material-symbols:arrow-forward-rounded">   <use href="#ai:material-symbols:arrow-forward-rounded"></use>  </svg>  </button>  </div>  </div> <div class="embla__dots flex w-full items-center absolute bottom-6 h-3 justify-center"></div>  </div> <div class="flex flex-col gap-4 items-start"> <div class="flex flex-col gap-2 self-stretch px-3 items-start">  <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-2"> <h3 class="block w-full text-left text-pretty">Refueling print</h3> <div class="text-left text-blurb-text-subtle text-base not-italic font-normal"> With 32 Blurb-made publications, this artist-publisher used his magazines as a canvas to feature the people and culture that drive his work.   </div> </div>  <ul class="flex flex-col gap-2"> <li class="text-blurb-text-bold text-base"> <strong>Creator type:</strong> <div>Artist, publisher, entrepreneur</div> </li><li class="text-blurb-text-bold text-base">  <div>Chris Brown, <a href=b&#x2F;12060304-refueled-summer-of-love-issue-17>Refueled Magazine</a></div> </li><li class="text-blurb-text-bold text-base"> <strong>Tool:</strong> <div>Blurb plugin for Adobe InDesign</div> </li><li class="text-blurb-text-bold text-base"> <strong>Format:</strong> <div>Magazine</div> </li> </ul> </div>  </div> </div>  </div> </div> </div>  </section> <section class="py-12 lg:py-20 2xl:mx-auto 2xl:max-w-screen-2xl w-full relative px-6 md:max-lg:px-10 lg:px-20">  <div class="accordion-container grid grid-cols-1 gap-10 md:gap-6 md:grid-cols-2"> <div class="accordion-heading flex flex-col md:pr-[5.3125rem]"> <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty max-w-full gap-4"> <h2 class="block w-full text-left text-pretty">Have questions?<br>Get answers.</h2>  </div> </div> <div class="accordion-items flex w-full flex-wrap justify-start gap-10 sm:gap-x-4 lg:flex-nowrap lg:gap-6">  <div class="accordion border-blurb-border-subtle flex w-full flex-col border-b"> <details name="FAQ" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="FAQ" class="flex w-full items-center justify-between gap-2"> <span>What book formats can I create with Blurb?</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="FAQ" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4"> <p>Blurb offers various book formats for creators, including photo books, trade books, and magazines. Each format provides unique features and is tailored for certain types of content.</p><ul class="list-none pl-6"> <li><strong>• Photo Books: </strong> Perfect for fine art books, <a href=&#x2F;cookbooks>cookbooks</a>, travel books, family albums, and <a href=&#x2F;portfolio-books>portfolios</a>, these high-quality books are available in six sizes and photo-quality papers and three cover types. </li><li><strong>• Paperback and Hardcover Books: </strong> This format suits <a href=&#x2F;poetry-books>novels and poetry books</a>, plus children’s books and graphic novels. Available in four print options to balance cost and quality, paperback and hardcover books are priced to sell and printed with a free ISBN for broader distribution. </li><li><strong>• Magazines: </strong> These are available in one standard size and on premium paper. The magazine format is well-suited for serial content, catalogs, work samples, and portfolios intended for promotion. </li><li><strong>• Notebooks and Journals: </strong> Whether you’re writing, sketching, journaling, or scheduling, our custom notebooks and journals are available in three sizes and up to 480 pages with six interior paper layout options. </li> </ul> </div> </div> <details name="FAQ" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="FAQ" class="flex w-full items-center justify-between gap-2"> <span>How do I create my own book with Blurb?</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="FAQ" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4"> <p>Blurb offers helpful design tools and software integrations to help you design your book. Here’s a simple breakdown about creating a book with Blurb:</p><ul class="list-none pl-6"> <li><strong>1. Choose a book format: </strong> With several options available, choose the book format that best suits your content. For example, a photo book format is best for premium-quality art books. </li><li><strong>2. Select a tool: </strong> Blurb enables creators to utilize various tools to create their books. You can use BookWright, which is Blurb's free bookmaking design software, or you can choose an Adobe InDesign plugin, Adobe Lightroom plugin, or Adobe Photoshop plugin, depending on your book's format. </li><li><strong>3. Design your book: </strong> Once you have selected a tool, you can start designing your book. You can use Blurb's customizable templates or design each page yourself. You have complete creative liberty over your book's overall look and feel. </li><li><strong>4. Edit your content: </strong> Editing is essential in creating your own book. Use high-quality images and organize text to tell a story that engages your readers. </li><li><strong>5. Distribute your book for sale: </strong> If you want to sell your book, Blurb offers several options for promotion and distribution, including the Blurb Bookstore, Amazon, and global online outlets like Ingram. You can print one copy at a time or order many copies upfront for a lower price per unit. </li> </ul><p class="text-sm italic">Blurb makes it easy to create your own book while offering flexible design tools and lucrative distribution channels to <a href=&#x2F;self-publish>sell your self-published book online</a>.</p> </div> </div> <details name="FAQ" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="FAQ" class="flex w-full items-center justify-between gap-2"> <span>How do I self-publish a book with Blurb?</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="FAQ" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4"> <p>The process of self-publishing a book depends on the nature of your book's content and your goals as a creator. In general, the self-publishing process involves the following steps:</p><ul class="list-none pl-6"> <li>1. Choose a book format that suits your content, such as photo books, paperback and hardcover books, or magazines, as well as your book's dimensions, cover, and paper choice.</li><li>2. Select a tool to organize your book's content and design your book using customizable templates or by designing each page yourself.</li><li>3. Edit your book's content to ensure that it's error-free and clear and that images are high resolution.</li><li>4. Design your book cover or have a professional design it for you.</li><li>5. Submit your book for printing. Blurb offers both volume printing and print-on-demand and handles shipping and fulfillment as needed.</li> </ul><p class="text-sm italic">Blurb simplifies self-publishing while taking the guesswork out of creation, pricing, and promotion. In turn, you can create a bookstore-quality finished product that rivals major book publishers.</p> </div> </div> <details name="FAQ" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="FAQ" class="flex w-full items-center justify-between gap-2"> <span>How much does it cost to self-publish a book?</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="FAQ" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4"> <p>The cost of self-publishing a book varies by book format, number of pages, and number of copies. In addition to your book's chosen format and the quantity of needed copies, your book's paper choice and size also affect the publishing cost. Refer to Blurb's <a href=&#x2F;pricing>pricing page</a> for a more detailed chart and pricing calculator.</p> </div> </div> <details name="FAQ" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="FAQ" class="flex w-full items-center justify-between gap-2"> <span>How long does it take to produce and ship my book?</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="FAQ" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4"> <p>When creating and printing a book with Blurb, it takes about five business days to print and bind a book. Shipping can take an additional 1-5 business days, depending on the shipping method you choose at checkout. In total, the time it takes to produce and ship a book with Blurb can range from 6-10 business days. Please note that this is an estimate, and the actual time may vary depending on the book format, the number of copies, and the distribution options. Blurb does not offer expedited production times, so be sure to plan accordingly if you need your book sooner.</p> </div> </div> <details name="FAQ" class="group select-none border-blurb-border-subtle border-t"> <summary class="text-blurb-text-bold flex w-full cursor-pointer items-center justify-start gap-2 py-3 transition-colors duration-300 hover:text-blurb-text-link-hover active:text-blurb-text-link-active focus-visible:text-blurb-text-link-active max-md:px-4"> <div aria-details="FAQ" class="flex w-full items-center justify-between gap-2"> <span>Does Blurb offer volume pricing?</span> <span class="pointer-events-none"> <svg width="1em" height="1em" viewBox="0 0 24 24" class="shrink-0 grow-0 fill-blurb-text-bold ease h-6 w-6 rotate-0 transition-transform duration-500 group-open:rotate-180" data-icon="material-symbols:keyboard-arrow-down-rounded">   <use href="#ai:material-symbols:keyboard-arrow-down-rounded"></use>  </svg> </span> </div> </summary> </details> <div id="FAQ" data-details="accordion content" inert> <div class="transition-padding text-blurb-text-bold flex flex-col gap-4 py-2 text-sm mb-4 max-md:px-4"> <p>Blurb offers volume order discounts starting with orders of 10 or more copies of the same book. For orders of 750 copies or more, Blurb offers offset printing for better economies of scale. Blurb charges no distribution fees for printed projects and no commission for print sales. The cost per unit decreases as the number of copies increases, and you can print one copy at a time or buy many copies upfront for a lower price per unit. Learn more about Blurb’s <a href=&#x2F;large-order-services>large order services</a>.</p> </div> </div>  </div>  </div> </div>  </section> <svg width="0" height="0" style="position:absolute"> <clipPath id="cta-clip-mobile" clipPathUnits="objectBoundingBox"> <path d="
      M0.4990,-0.00002
      C0.6707,-0.00002 0.8382,0.0173 1,0.0503
      V0.99998
      H0
      V0.0499
      C0.1612,0.0172 0.3281,-0.00002 0.4990,-0.00002
      Z
    "></path> </clipPath> <clipPath id="cta-clip-tablet" clipPathUnits="objectBoundingBox"> <path d="M0.4987,0.0018
      C0.6751,0.0018 0.8443,0.0286 1,0.0777
      V0.9991
      H0
      V0.0769
      C0.1552,0.0283 0.3233,0.0018 0.4987,0.0018
      Z
    "></path> </clipPath> <clipPath id="cta-clip-desktop" clipPathUnits="objectBoundingBox"> <path d="M1,0.1377C0.8695,0.0523,0.692,0,0.5,0C0.308,0,0.1305,0.0521,0,0.1372V1H1V0.1377Z"></path> </clipPath> </svg> <div class="gradient-duotone-3 [clip-path:url(#cta-clip-mobile)] md:max-lg:[clip-path:url(#cta-clip-tablet)] lg:[clip-path:url(#cta-clip-desktop)] flex w-full flex-col items-center gap-8 p-6 pt-20 pb-12 md:p-10 md:pt-30 md:pb-20 lg:gap-10 lg:pr-20 lg:pl-20"> <div class="lg:text-wrap-normal flex flex-col text-balance text-pretty gap-4"> <h2 class="block w-full text-center text-pretty">Ready to get started?</h2>  </div> <div class="flex gap-6"> <style>astro-island,astro-slot,astro-static-slot{display:contents}</style><script>(()=>{var e=async t=>{await(await t())()};(self.Astro||(self.Astro={})).load=e;window.dispatchEvent(new Event("astro:load"));})();</script><script>(()=>{var A=Object.defineProperty;var g=(i,o,a)=>o in i?A(i,o,{enumerable:!0,configurable:!0,writable:!0,value:a}):i[o]=a;var d=(i,o,a)=>g(i,typeof o!="symbol"?o+"":o,a);{let i={0:t=>m(t),1:t=>a(t),2:t=>new RegExp(t),3:t=>new Date(t),4:t=>new Map(a(t)),5:t=>new Set(a(t)),6:t=>BigInt(t),7:t=>new URL(t),8:t=>new Uint8Array(t),9:t=>new Uint16Array(t),10:t=>new Uint32Array(t),11:t=>1/0*t},o=t=>{let[l,e]=t;return l in i?i[l](e):void 0},a=t=>t.map(o),m=t=>typeof t!="object"||t===null?t:Object.fromEntries(Object.entries(t).map(([l,e])=>[l,o(e)]));class y extends HTMLElement{constructor(){super(...arguments);d(this,"Component");d(this,"hydrator");d(this,"hydrate",async()=>{var b;if(!this.hydrator||!this.isConnected)return;let e=(b=this.parentElement)==null?void 0:b.closest("astro-island[ssr]");if(e){e.addEventListener("astro:hydrate",this.hydrate,{once:!0});return}let c=this.querySelectorAll("astro-slot"),n={},h=this.querySelectorAll("template[data-astro-template]");for(let r of h){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("data-astro-template")||"default"]=r.innerHTML,r.remove())}for(let r of c){let s=r.closest(this.tagName);s!=null&&s.isSameNode(this)&&(n[r.getAttribute("name")||"default"]=r.innerHTML)}let p;try{p=this.hasAttribute("props")?m(JSON.parse(this.getAttribute("props"))):{}}catch(r){let s=this.getAttribute("component-url")||"<unknown>",v=this.getAttribute("component-export");throw v&&(s+=` (export ${v})`),console.error(`[hydrate] Error parsing props for component ${s}`,this.getAttribute("props"),r),r}let u;await this.hydrator(this)(this.Component,p,n,{client:this.getAttribute("client")}),this.removeAttribute("ssr"),this.dispatchEvent(new CustomEvent("astro:hydrate"))});d(this,"unmount",()=>{this.isConnected||this.dispatchEvent(new CustomEvent("astro:unmount"))})}disconnectedCallback(){document.removeEventListener("astro:after-swap",this.unmount),document.addEventListener("astro:after-swap",this.unmount,{once:!0})}connectedCallback(){if(!this.hasAttribute("await-children")||document.readyState==="interactive"||document.readyState==="complete")this.childrenConnectedCallback();else{let e=()=>{document.removeEventListener("DOMContentLoaded",e),c.disconnect(),this.childrenConnectedCallback()},c=new MutationObserver(()=>{var n;((n=this.lastChild)==null?void 0:n.nodeType)===Node.COMMENT_NODE&&this.lastChild.nodeValue==="astro:end"&&(this.lastChild.remove(),e())});c.observe(this,{childList:!0}),document.addEventListener("DOMContentLoaded",e)}}async childrenConnectedCallback(){let e=this.getAttribute("before-hydration-url");e&&await import(e),this.start()}async start(){let e=JSON.parse(this.getAttribute("opts")),c=this.getAttribute("client");if(Astro[c]===void 0){window.addEventListener(`astro:${c}`,()=>this.start(),{once:!0});return}try{await Astro[c](async()=>{let n=this.getAttribute("renderer-url"),[h,{default:p}]=await Promise.all([import(this.getAttribute("component-url")),n?import(n):()=>()=>{}]),u=this.getAttribute("component-export")||"default";if(!u.includes("."))this.Component=h[u];else{this.Component=h;for(let f of u.split("."))this.Component=this.Component[f]}return this.hydrator=p,this.hydrate},e,this)}catch(n){console.error(`[astro-island] Error hydrating ${this.getAttribute("component-url")}`,n)}}attributeChangedCallback(){this.hydrate()}}d(y,"observedAttributes",["props"]),customElements.get("astro-island")||customElements.define("astro-island",y)}})();</script><astro-island uid="XjiLu" prefix="r3" component-url="https://assets.blurb.com/_astro/ReactCta.D0jWoD5c.js" component-export="ReactCta" renderer-url="https://assets.blurb.com/_astro/client.BSMExnCO.js" props="{&quot;intent&quot;:[0,&quot;promo&quot;],&quot;variant&quot;:[0,&quot;filled&quot;],&quot;size&quot;:[0,&quot;large&quot;],&quot;text&quot;:[0,&quot;Create your account&quot;],&quot;href&quot;:[0,&quot;/my/account/register&quot;],&quot;className&quot;:[0,&quot;no-underline&quot;]}" ssr client="load" opts="{&quot;name&quot;:&quot;ReactCta&quot;,&quot;value&quot;:true}" await-children><a class="inline-flex justify-center lg:text-normal font-sans whitespace-nowrap cursor-pointer transition-all duration-150 ease-in-out py-2 items-center rounded-sm gap-2 px-6 min-w-25 text-base/6 max-w-min text-blurb-text-inverse bg-blurb-bg-brand hover:bg-blurb-bg-brand-hover hover:button-shadow-light-blue-800 active:bg-blurb-bg-brand-active active:button-shadow-light-blue-950 no-underline" href="/my/account/register">Create your account</a><!--astro:end--></astro-island>  </div> </div>  </main> <footer> <div class="flex justify-center"> <div class="hidden w-full max-w-screen-2xl justify-around gap-6 md:flex md:p-10 lg:p-20"> <div class="flex flex-1 flex-col gap-6"> <a href="/sell-and-distribute" class="text-blurb-text-subtle hover:text-light-blue-600 font-semibold no-underline"> Self Publishing </a> <div class="flex flex-col gap-2 text-sm"> <a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/bookmaking-tools"> Creation &amp; Layout Tools </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/self-publish"> Self-Publishing Overview </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/large-order-services"> Large Order Services </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/sell-and-distribute"> Sell &amp; Self-Publish </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/sell-through-blurb"> Sell on Blurb&#39;s Bookstore </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/amazon"> Sell on Amazon </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/ingram"> Ingram Distribution </a> </div> </div><div class="flex flex-1 flex-col gap-6"> <a href="/photo-books" class="text-blurb-text-subtle hover:text-light-blue-600 font-semibold no-underline"> Photo Books </a> <div class="flex flex-col gap-2 text-sm"> <a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/photo-books"> Photo Books </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/wedding-books"> Wedding Photo Books </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/family-photo-books"> Family Photo Books </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/travel-photo-books"> Travel Photo Books </a> </div> </div><div class="flex flex-1 flex-col gap-6"> <a href="/self-publish" class="text-blurb-text-subtle hover:text-light-blue-600 font-semibold no-underline"> Popular Books </a> <div class="flex flex-col gap-2 text-sm"> <a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/cookbooks"> Food &amp; Cookbooks </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/photo-books"> Photography </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/memory-books"> Memoirs </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/childrens-books"> Children’s Books </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/portfolio-books"> Portfolios </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/business"> Business Books </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/yearbook-photo-books"> Yearbooks </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/novels-and-poetry"> Novels &amp; Poetry </a> </div> </div><div class="flex flex-1 flex-col gap-6"> <a href="/blog" class="text-blurb-text-subtle hover:text-light-blue-600 font-semibold no-underline"> Get Inspired </a> <div class="flex flex-col gap-2 text-sm"> <a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/blog"> Blog </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/blog/category/promoting-marketing"> Events </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/bookstore"> Bookstore </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/gifts"> Gift Center </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/partner"> Blurb Partners </a> </div> </div><div class="flex flex-1 flex-col gap-6"> <a href="https://support.blurb.com/hc/en-us" class="text-blurb-text-subtle hover:text-light-blue-600 font-semibold no-underline"> Help </a> <div class="flex flex-col gap-2 text-sm"> <a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/pricing"> Pricing </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/dreamteam-collaborators"> Hire an Expert </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="https://support.blurb.com/hc/en-us"> FAQs </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/shipping"> Shipping </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/returns"> Return Policy </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/affiliate-program"> Become an Affiliate </a><a class="text-blurb-text-subtle hover:text-light-blue-600 no-underline" href="/invite?traffic_source=footer"> Refer a friend </a> </div> </div> </div> </div> <div class="text-blurb-text-inverse bg-blurb-bg-surface-bold flex justify-center"> <div class="flex w-full max-w-screen-2xl flex-col-reverse items-center gap-6 px-20 py-6 xl:flex-row xl:justify-between"> <div class="flex flex-wrap justify-center gap-4 text-xs xl:gap-6">
&copy; 2026  Blurb, Inc. All rights reserved. <a class="text-blurb-text-inverse no-underline hover:underline" href="/company-profile"> Company </a><a class="text-blurb-text-inverse no-underline hover:underline" href="/careers"> Work at Blurb </a><a class="text-blurb-text-inverse no-underline hover:underline" href="/pricing"> Pricing </a><a class="text-blurb-text-inverse no-underline hover:underline" href="/privacy"> Privacy Policy </a><a class="text-blurb-text-inverse no-underline hover:underline" href="/privacy#cookies"> Cookie Policy </a><a class="text-blurb-text-inverse no-underline hover:underline" href="https://support.blurb.com/hc/en-us"> Support </a><a class="text-blurb-text-inverse no-underline hover:underline" href="/sitemap"> Sitemap </a> </div> <div class="flex justify-center gap-4 text-3xl"> <a href="https://www.facebook.com/BlurbBooks" class="text-blurb-text-inverse no-underline" data-event="social_media_click"> <svg width="1em" height="1em" class="shrink-0 grow-0" data-icon="ri:facebook-fill">   <symbol id="ai:ri:facebook-fill" viewBox="0 0 24 24"><path fill="currentColor" d="M14 13.5h2.5l1-4H14v-2c0-1.03 0-2 2-2h1.5V2.14c-.326-.043-1.557-.14-2.857-.14C11.928 2 10 3.657 10 6.7v2.8H7v4h3V22h4z"/></symbol><use href="#ai:ri:facebook-fill"></use>  </svg> </a><a href="https://twitter.com/BlurbBooks" class="text-blurb-text-inverse no-underline" data-event="social_media_click"> <svg width="1em" height="1em" class="shrink-0 grow-0" data-icon="ri:twitter-fill">   <symbol id="ai:ri:twitter-fill" viewBox="0 0 24 24"><path fill="currentColor" d="M22.213 5.656a8.4 8.4 0 0 1-2.402.658A4.2 4.2 0 0 0 21.649 4c-.82.488-1.719.83-2.655 1.015a4.182 4.182 0 0 0-7.126 3.814a11.87 11.87 0 0 1-8.621-4.37a4.17 4.17 0 0 0-.566 2.103c0 1.45.739 2.731 1.86 3.481a4.2 4.2 0 0 1-1.894-.523v.051a4.185 4.185 0 0 0 3.355 4.102a4.2 4.2 0 0 1-1.89.072A4.185 4.185 0 0 0 8.02 16.65a8.4 8.4 0 0 1-6.192 1.732a11.83 11.83 0 0 0 6.41 1.88c7.694 0 11.9-6.373 11.9-11.9q0-.271-.012-.541a8.5 8.5 0 0 0 2.086-2.164"/></symbol><use href="#ai:ri:twitter-fill"></use>  </svg> </a><a href="https://www.instagram.com/blurbbooks" class="text-blurb-text-inverse no-underline" data-event="social_media_click"> <svg width="1em" height="1em" class="shrink-0 grow-0" data-icon="mdi:instagram">   <symbol id="ai:mdi:instagram" viewBox="0 0 24 24"><path fill="currentColor" d="M7.8 2h8.4C19.4 2 22 4.6 22 7.8v8.4a5.8 5.8 0 0 1-5.8 5.8H7.8C4.6 22 2 19.4 2 16.2V7.8A5.8 5.8 0 0 1 7.8 2m-.2 2A3.6 3.6 0 0 0 4 7.6v8.8C4 18.39 5.61 20 7.6 20h8.8a3.6 3.6 0 0 0 3.6-3.6V7.6C20 5.61 18.39 4 16.4 4zm9.65 1.5a1.25 1.25 0 0 1 1.25 1.25A1.25 1.25 0 0 1 17.25 8A1.25 1.25 0 0 1 16 6.75a1.25 1.25 0 0 1 1.25-1.25M12 7a5 5 0 0 1 5 5a5 5 0 0 1-5 5a5 5 0 0 1-5-5a5 5 0 0 1 5-5m0 2a3 3 0 0 0-3 3a3 3 0 0 0 3 3a3 3 0 0 0 3-3a3 3 0 0 0-3-3"/></symbol><use href="#ai:mdi:instagram"></use>  </svg> </a><a href="https://www.pinterest.com/blurbbooks" class="text-blurb-text-inverse no-underline" data-event="social_media_click"> <svg width="1em" height="1em" class="shrink-0 grow-0" data-icon="ri:pinterest-fill">   <symbol id="ai:ri:pinterest-fill" viewBox="0 0 24 24"><path fill="currentColor" d="M13.372 2.094a10.003 10.003 0 0 0-5.369 19.074a7.8 7.8 0 0 1 .162-2.292c.185-.839 1.296-5.463 1.296-5.463a3.7 3.7 0 0 1-.324-1.577c0-1.485.857-2.593 1.923-2.593a1.334 1.334 0 0 1 1.342 1.508c0 .9-.578 2.262-.88 3.54a1.544 1.544 0 0 0 1.575 1.923c1.897 0 3.17-2.431 3.17-5.301c0-2.201-1.457-3.847-4.143-3.847a4.746 4.746 0 0 0-4.93 4.793a2.96 2.96 0 0 0 .648 1.97a.48.48 0 0 1 .162.554c-.046.184-.162.623-.208.785a.354.354 0 0 1-.51.253c-1.384-.554-2.036-2.077-2.036-3.816c0-2.847 2.384-6.255 7.154-6.255c3.796 0 6.319 2.777 6.319 5.747c0 3.909-2.176 6.848-5.393 6.848a2.86 2.86 0 0 1-2.454-1.246s-.579 2.316-.692 2.754a8 8 0 0 1-1.019 2.131c.923.28 1.882.42 2.846.416a9.99 9.99 0 0 0 9.996-10.002a10 10 0 0 0-8.635-9.904"/></symbol><use href="#ai:ri:pinterest-fill"></use>  </svg> </a><a href="https://www.youtube.com/user/BlurbBooks" class="text-blurb-text-inverse no-underline" data-event="social_media_click"> <svg width="1em" height="1em" class="shrink-0 grow-0" data-icon="ri:youtube-fill">   <symbol id="ai:ri:youtube-fill" viewBox="0 0 24 24"><path fill="currentColor" d="M12.244 4c.534.003 1.87.016 3.29.073l.504.022c1.429.067 2.857.183 3.566.38c.945.266 1.687 1.04 1.938 2.022c.4 1.56.45 4.602.456 5.339l.001.152v.174c-.007.737-.057 3.78-.457 5.339c-.254.985-.997 1.76-1.938 2.022c-.709.197-2.137.313-3.566.38l-.504.023c-1.42.056-2.756.07-3.29.072l-.235.001h-.255c-1.13-.007-5.856-.058-7.36-.476c-.944-.266-1.687-1.04-1.938-2.022c-.4-1.56-.45-4.602-.456-5.339v-.326c.006-.737.056-3.78.456-5.339c.254-.985.997-1.76 1.939-2.021c1.503-.419 6.23-.47 7.36-.476zM9.999 8.5v7l6-3.5z"/></symbol><use href="#ai:ri:youtube-fill"></use>  </svg> </a> </div> </div> </div> </footer>  <script type="module" src="https://assets.blurb.com/_astro/BaseLayout.astro_astro_type_script_index_0_lang.CMbpc746.js"></script> </body> </html>