{"id":21,"date":"2026-10-26T17:50:05","date_gmt":"2026-10-26T17:50:05","guid":{"rendered":"https:\/\/johnnyverse.us\/Embroidery\/?page_id=21"},"modified":"2026-10-26T17:58:02","modified_gmt":"2026-10-26T17:58:02","slug":"homepage","status":"publish","type":"page","link":"https:\/\/johnnyverse.us\/Embroidery\/","title":{"rendered":"Homepage"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"21\" class=\"elementor elementor-21\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-40b9078 e-con e-atomic-element e-flexbox-base e-default-div e-0428fd6 \" data-id=\"40b9078\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"40b9078\">\n    \t\t<div class=\"elementor-element elementor-element-64ca30f elementor-widget__width-inherit elementor-widget elementor-widget-text-editor\" data-id=\"64ca30f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n<title>Custom Embroidery &#038; Prints in St. Petersburg, FL | Johnnyverse Embroidery &#038; Prints<\/title>\n<meta name=\"description\" content=\"Custom embroidery and custom apparel in St. Petersburg, FL. Hats, polos, uniforms and personalized pieces from your logo, art or photo. Request a quote.\">\n<link rel=\"canonical\" href=\"https:\/\/johnnyverse.us\/embroideryprints\">\n<meta property=\"og:type\" content=\"website\">\n<meta property=\"og:title\" content=\"Custom Embroidery &#038; Prints in St. Petersburg, FL | Johnnyverse Embroidery &#038; Prints\">\n<meta property=\"og:description\" content=\"Custom embroidery and custom apparel in St. Petersburg, FL for individuals, businesses and teams. Request a quote.\">\n<meta property=\"og:url\" content=\"https:\/\/johnnyverse.us\/embroideryprints\">\n<!-- OG IMAGE PLACEHOLDER: add <meta property=\"og:image\" content=\"https:\/\/johnnyverse.us\/images\/og.jpg\"> once the image exists -->\n<meta name=\"twitter:card\" content=\"summary_large_image\">\n<meta name=\"twitter:title\" content=\"Custom Embroidery &#038; Prints in St. Petersburg, FL | Johnnyverse\">\n<meta name=\"twitter:description\" content=\"Custom embroidery and custom apparel in St. Petersburg, FL. Request a quote.\">\n<link rel=\"icon\" href=\"images\/favicon.png\" type=\"image\/png\">\n<meta name=\"theme-color\" content=\"#1a2f5c\">\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"LocalBusiness\",\n  \"name\": \"Johnnyverse Embroidery & Prints\",\n  \"description\": \"Custom embroidery, personalized apparel and custom printing in St. Petersburg, Florida for individuals, businesses and teams.\",\n  \"url\": \"https:\/\/johnnyverse.us\/embroideryprints\",\n  \"logo\": \"https:\/\/johnnyverse.us\/images\/logo.png\",\n  \"image\": \"https:\/\/johnnyverse.us\/images\/logo.png\",\n  \"telephone\": \"+1-656-952-1072\",\n  \"email\": \"johnnyverseembroideryprints@gmail.com\",\n  \"address\": {\n    \"@type\": \"PostalAddress\",\n    \"streetAddress\": \"826 Newton Ave S\",\n    \"addressLocality\": \"Saint Petersburg\",\n    \"addressRegion\": \"FL\",\n    \"postalCode\": \"33701\",\n    \"addressCountry\": \"US\"\n  },\n  \"openingHoursSpecification\": [\n    {\"@type\": \"OpeningHoursSpecification\", \"dayOfWeek\": [\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\"], \"opens\": \"08:00\", \"closes\": \"19:00\"},\n    {\"@type\": \"OpeningHoursSpecification\", \"dayOfWeek\": [\"Saturday\",\"Sunday\"], \"opens\": \"11:00\", \"closes\": \"17:00\"}\n  ],\n  \"areaServed\": [{\"@type\": \"City\", \"name\": \"Saint Petersburg\"}, {\"@type\": \"AdministrativeArea\", \"name\": \"Pinellas County\"}, {\"@type\": \"Place\", \"name\": \"Tampa Bay area\"}]\n}\n<\/script>\n\n<style>\n\/* ===== 1. THEME TOKENS \u2014 change colors\/fonts here ===== *\/\n:root{\n  --ink:#0f1a33;          \/* deep navy-black *\/\n  --paper:#f5f2ec;        \/* warm off-white *\/\n  --paper-2:#ebe6dc;      \/* secondary neutral *\/\n  --line:#cfc8ba;\n  --muted:#5d574d;\n  --navy:#1a2f5c;         \/* logo navy *\/\n  --gold:#b98a2f;         \/* logo gold *\/\n  --gold-lt:#d9b25c;      \/* gold for dark backgrounds *\/\n  --accent:var(--navy);\n  --accent-ink:#fff;\n  --serif:\"Iowan Old Style\",\"Palatino Linotype\",Palatino,Georgia,serif;\n  --sans:system-ui,-apple-system,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;\n  --max:1500px;\n  --stitch:2px dashed var(--gold);\n}\n*{box-sizing:border-box;margin:0}\nhtml{scroll-behavior:smooth;scroll-padding-top:96px}\nbody{font:17px\/1.6 var(--sans);color:var(--ink);background:var(--paper);overflow-x:hidden;padding-bottom:64px}\nimg,svg{max-width:100%;display:block}\na{color:inherit}\nh1,h2,h3{font-family:var(--serif);line-height:1.12;font-weight:600;letter-spacing:-.01em}\nh1{font-size:clamp(2.3rem,6vw,4.1rem)}\nh2{font-size:clamp(1.8rem,4vw,2.7rem);margin-bottom:.5em}\nh3{font-size:1.3rem;margin-bottom:.35em}\np+p{margin-top:.8em}\n.wrap{width:calc(100% - 40px);max-width:var(--max);margin:0 auto;padding:0}\nsection{padding:72px 0}\n.lead{font-size:1.15rem;color:var(--muted);max-width:60ch}\n:focus-visible{outline:3px solid var(--accent);outline-offset:3px}\n.dark :focus-visible,footer :focus-visible,.mbar :focus-visible{outline-color:var(--gold-lt)}\n.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}\n\n\/* buttons *\/\n.btn{display:inline-block;padding:14px 24px;border:2px solid var(--ink);background:var(--ink);color:var(--paper);font:700 .9rem var(--sans);letter-spacing:.06em;text-decoration:none;cursor:pointer;transition:transform .15s,background .15s}\n.btn:hover{transform:translateY(-2px)}\n.btn.accent{background:var(--gold);border-color:var(--gold);color:var(--ink)}\n.btn.accent:hover{background:var(--gold-lt);border-color:var(--gold-lt)}\n.btn.ghost{background:transparent;color:var(--ink)}\n.btn.ghost:hover{background:var(--ink);color:var(--paper)}\n.dark .btn.ghost{color:var(--paper);border-color:var(--paper)}\n.dark .btn.ghost:hover{background:var(--paper);color:var(--ink)}\n.row{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}\n\n\/* placeholders *\/\n.ph{position:relative;display:grid;place-items:center;text-align:center;padding:16px;background:repeating-linear-gradient(135deg,var(--paper-2) 0 12px,#e2dccf 12px 24px);border:var(--stitch);outline:6px solid var(--paper);outline-offset:-10px;color:var(--muted);font-size:.85rem;font-weight:600;width:100%}\n.ph small{display:block;font-weight:400;margin-top:4px}\n\n\/* ===== 2. HEADER ===== *\/\nheader{position:sticky;top:0;z-index:50;background:rgba(245,242,236,.97);border-bottom:1px solid var(--line)}\n.bar{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}\n.logo{display:block;flex:none}.logo img{height:56px;width:auto}\n.footlogo{display:inline-block;background:var(--paper);padding:10px 16px}.footlogo img{height:84px;width:auto}\nnav ul{display:none;list-style:none;padding:0;gap:22px}\nnav a{text-decoration:none;font-weight:600;font-size:.95rem;padding:6px 0;border-bottom:2px solid transparent}\nnav a.on,nav a:hover{border-color:var(--gold)}\n.burger{background:none;border:2px solid var(--ink);padding:9px 11px;cursor:pointer;font-weight:700}\n.hdr-cta{display:none}\nnav ul.open{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:68px;background:var(--paper);padding:14px 20px 22px;border-bottom:1px solid var(--line)}\n@media(min-width:960px){.logo img{height:76px}.bar{height:88px}nav ul{display:flex;position:static!important;flex-direction:row!important;padding:0!important;background:none!important;border:0!important}.burger{display:none}.hdr-cta{display:inline-block;padding:11px 18px}}\n\n\/* ===== 3. HERO ===== *\/\n.hero{padding:48px 0 64px}\n.hero .wrap{display:grid;gap:40px;align-items:center}\n.hero p.lead{margin-top:20px}\n@media(min-width:900px){.hero .wrap{grid-template-columns:1.05fr .95fr}.hero{padding:72px 0 88px}}\n.stitched{border-bottom:var(--stitch);padding-bottom:.1em}\n\n.strip{background:var(--ink);color:var(--paper);padding:20px 0}\n.strip ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px 20px;font-weight:600;font-size:.95rem}\n.strip li::before{content:\"\";display:inline-block;width:18px;border-top:2px dashed var(--gold-lt);vertical-align:middle;margin-right:10px}\n\n\/* ===== 4. SERVICES ===== *\/\n.cards{display:grid;gap:20px;margin-top:36px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}\n.card{background:#fff;border:1px solid var(--line);padding:26px;display:flex;flex-direction:column;transition:border-color .2s}\n.card:hover{border-color:var(--accent)}\n.card.feature{border:var(--stitch)}\n.card svg{width:34px;height:34px;stroke:var(--accent);fill:none;stroke-width:1.6;margin-bottom:14px}\n.card p{color:var(--muted);font-size:.97rem}\n.card .more{display:none;margin-top:.8em;font-size:.93rem}\n.card.open .more{display:block}\n.card .tools{margin-top:auto;padding-top:18px;display:flex;gap:16px;font-weight:700;font-size:.9rem}\n.card button.lm{background:none;border:0;padding:0;font:inherit;color:var(--accent);cursor:pointer;text-decoration:underline}\n.card a.q{color:var(--ink)}\n\n\/* ===== 5. PERSONAL ===== *\/\n.personal{background:var(--paper-2)}\n.split{display:grid;gap:40px;align-items:center}\n@media(min-width:900px){.split{grid-template-columns:1fr 1fr}.split.rev>:first-child{order:2}}\n.ba{position:relative;aspect-ratio:1;overflow:hidden;border:var(--stitch);background:#fff;touch-action:pan-y}\n.ba .ph{position:absolute;inset:0;aspect-ratio:auto;height:100%;border:0}\n.ba .after{clip-path:inset(0 0 0 50%);background:repeating-linear-gradient(135deg,#f1e6c9 0 12px,#e8d9b0 12px 24px)}\n.ba input{position:absolute;inset:auto 0 12px 0;width:calc(100% - 24px);margin:0 12px;z-index:3;accent-color:var(--accent)}\n.ba .knob{position:absolute;top:0;bottom:0;left:50%;border-left:3px dashed var(--gold);z-index:2;pointer-events:none}\n.ticks{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}\n.ticks li{border:1px dashed var(--ink);padding:5px 12px;font-size:.9rem}\n.note{font-size:.9rem;color:var(--muted)}\n\n\/* ===== 6. BUSINESS ===== *\/\n.dark{background:var(--ink);color:var(--paper)}\n.dark .lead,.dark .note{color:#bdb6a8}\n.dark .ph{background:repeating-linear-gradient(135deg,#25221d 0 12px,#2d2a24 12px 24px);color:#bdb6a8;outline-color:var(--ink);border-color:var(--gold-lt)}\n.dark .ticks li{border-color:var(--gold-lt)}\n\n\/* ===== 7. GALLERY ===== *\/\n.gal{display:grid;gap:14px;margin-top:32px;grid-template-columns:repeat(2,1fr)}\n@media(min-width:760px){.gal{grid-template-columns:repeat(4,1fr)}}\n.gal button{border:0;padding:0;background:none;cursor:pointer;position:relative;overflow:hidden}\n.gal .ph{aspect-ratio:1;font-size:.72rem;transition:transform .3s}\n.gal button:hover .ph,.gal button:focus-visible .ph{transform:scale(1.04)}\ndialog{border:0;padding:0;background:transparent;max-width:min(92vw,720px);width:100%;margin:auto}\ndialog::backdrop{background:rgba(10,9,7,.88)}\n.lb{background:var(--paper);padding:16px}\n.lb .ph{aspect-ratio:1}\n.lb-ctl{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}\n.lb-ctl button{padding:10px 16px;border:2px solid var(--ink);background:#fff;font-weight:700;cursor:pointer}\n\n\/* ===== 8. WHY ===== *\/\n.why{display:grid;gap:0;margin-top:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));border-top:var(--stitch)}\n.why div{padding:26px 24px 26px 0;border-bottom:1px dashed var(--line)}\n.why p{color:var(--muted)}\n\n\/* ===== 9. HOW IT WORKS ===== *\/\n.steps{list-style:none;padding:0;margin-top:36px;position:relative;display:grid;gap:22px}\n.steps::before{content:\"\";position:absolute;left:25px;top:10px;bottom:10px;border-left:var(--stitch)}\n.steps li{position:relative;padding-left:72px;opacity:.35;transition:opacity .5s}\n.steps li.in{opacity:1}\n.steps .n{position:absolute;left:0;top:0;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font:700 1rem var(--sans)}\n.steps p{color:var(--muted)}\n@media(min-width:900px){.steps{grid-template-columns:repeat(5,1fr);gap:20px}.steps::before{left:26px;right:26px;top:26px;bottom:auto;border-left:0;border-top:var(--stitch)}.steps li{padding:70px 0 0}}\n\n\/* ===== 10. AREA ===== *\/\n.area{background:var(--paper-2)}\naddress{font-style:normal;margin:14px 0;font-weight:600}\n.map{aspect-ratio:3\/2}\n\n\/* ===== 11. REVIEWS ===== *\/\n.rev{display:grid;gap:18px;margin:32px 0;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}\n.rev blockquote{border:var(--stitch);padding:22px;color:var(--muted);font-size:.95rem}\n\n\/* ===== 12. FAQ ===== *\/\n.faq{max-width:780px;margin-top:28px}\n.faq details{border-bottom:1px solid var(--line)}\n.faq summary{list-style:none;cursor:pointer;padding:18px 36px 18px 0;font-weight:700;position:relative}\n.faq summary::-webkit-details-marker{display:none}\n.faq summary::after{content:\"+\";position:absolute;right:6px;top:14px;font-size:1.5rem;color:var(--accent)}\n.faq details[open] summary::after{content:\"\u2013\"}\n.faq details p{padding:0 0 18px;color:var(--muted)}\n\n\/* ===== 13. FINAL CTA ===== *\/\n.final{text-align:center}\n.final .row{justify-content:center}\n.final p{margin:0 auto;max-width:56ch}\n\n\/* ===== 14. FOOTER + FORM ===== *\/\nfooter{background:var(--ink);color:var(--paper);padding:64px 0 24px}\nfooter .grid{display:grid;gap:44px}\n@media(min-width:960px){footer .grid{grid-template-columns:1.2fr 1fr}}\nform{display:grid;gap:16px;background:var(--paper);color:var(--ink);padding:26px;border:var(--stitch);grid-template-columns:1fr 1fr}\nform .full{grid-column:1\/-1}\nform label,form legend{font-weight:700;font-size:.92rem;display:block;margin-bottom:5px}\nform input,form select,form textarea{width:100%;padding:12px;font:inherit;border:1.5px solid #8a8274;background:#fff;border-radius:0}\nform textarea{min-height:120px;resize:vertical}\nform fieldset{border:0;padding:0}\nform fieldset label{display:inline-block;font-weight:500;margin-right:16px}\nform fieldset input{width:auto}\n.err{color:#b00020;font-size:.85rem;min-height:1em;margin-top:3px}\n[aria-invalid=\"true\"]{border-color:#b00020!important}\n.status{padding:14px;font-weight:600}.status.ok{background:#dff3e3}.status.bad{background:#fbe0e0}\n@media(max-width:640px){form{grid-template-columns:1fr}}\nfooter ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;margin:16px 0}\nfooter .legal{margin-top:44px;padding-top:18px;border-top:1px solid #3a362f;font-size:.85rem;color:#bdb6a8}\nfooter a{color:var(--paper)}\n\n\/* mobile action bar + to top *\/\n.mbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1fr}\n.mbar a{padding:18px;text-align:center;font-weight:700;text-decoration:none;background:var(--ink);color:var(--paper)}\n.mbar a+a{background:var(--gold);color:var(--ink)}\n.top{position:fixed;right:14px;bottom:78px;z-index:55;width:44px;height:44px;border:2px solid var(--ink);background:var(--paper);font-weight:700;cursor:pointer;display:none}\n@media(min-width:960px){.mbar{display:none}body{padding-bottom:0}.top{bottom:20px}}\n\n\/* ===== WIDE-SCREEN FLUID LAYOUT ===== *\/\n@media(min-width:1400px){\n  :root{--max:1600px}\n  .wrap{width:calc(100% - 64px)}\n  section{padding:88px 0}\n  .hero{padding-top:92px;padding-bottom:104px}\n  .cards{grid-template-columns:repeat(3,1fr)}\n  .gal{grid-template-columns:repeat(4,1fr);gap:18px}\n  footer .grid{grid-template-columns:1.1fr 1fr}\n}\n@media(min-width:1800px){\n  :root{--max:1740px}\n  .wrap{width:calc(100% - 96px)}\n}\n\n\/* motion: one reveal for section headings only *\/\n.rv{opacity:0;transform:translateY(14px);transition:opacity .5s,transform .5s}.rv.in{opacity:1;transform:none}\n@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.rv,.steps li{opacity:1;transform:none}}\n<\/style>\n<\/head>\n<body>\n<a class=\"skip\" href=\"#main\">Skip to content<\/a>\n\n<!-- ===== NAV ===== -->\n<header>\n  <div class=\"wrap bar\">\n    <a class=\"logo\" href=\"#home\" aria-label=\"Johnnyverse Embroidery &amp; Prints, home\"><img fetchpriority=\"high\" decoding=\"async\" src=\"images\/logo.png\" width=\"1151\" height=\"678\" alt=\"Johnnyverse Embroidery &amp; Prints logo\"><\/a>\n    <nav aria-label=\"Main\">\n      <ul id=\"menu\">\n        <li><a href=\"#home\">Home<\/a><\/li>\n        <li><a href=\"#services\">Services<\/a><\/li>\n        <li><a href=\"#work\">Our Work<\/a><\/li>\n        <li><a href=\"#how\">How It Works<\/a><\/li>\n        <li><a href=\"#about\">About<\/a><\/li>\n        <li><a href=\"#faq\">FAQ<\/a><\/li>\n        <li><a href=\"#contact\">Contact<\/a><\/li>\n      <\/ul>\n    <\/nav>\n    <a class=\"btn accent hdr-cta\" href=\"#contact\">GET A QUOTE<\/a>\n    <button class=\"burger\" aria-expanded=\"false\" aria-controls=\"menu\" aria-label=\"Menu\">Menu<\/button>\n  <\/div>\n<\/header>\n\n<main id=\"main\">\n<!-- ===== HERO ===== -->\n<section class=\"hero\" id=\"home\">\n  <div class=\"wrap\">\n    <div>\n      <h1>Custom Embroidery &amp; Prints in <span class=\"stitched\">St. Petersburg, FL<\/span><\/h1>\n      <p class=\"lead\">Turn your logo, artwork, favorite photo, or meaningful idea into something you can wear, gift, and keep. Johnnyverse makes custom embroidery, personalized apparel, and business apparel right here in St. Pete.<\/p>\n      <div class=\"row\">\n        <a class=\"btn accent\" href=\"#contact\">GET A QUOTE<\/a>\n        <a class=\"btn ghost\" href=\"tel:+16569521072\">CALL (656) 952-1072<\/a>\n      <\/div>\n      <p class=\"note\" style=\"margin-top:18px\"><a href=\"#personal\">Create something personal<\/a> or <a href=\"#business\">request a business quote<\/a>.<\/p>\n    <\/div>\n    <div class=\"ph\" style=\"aspect-ratio:1;max-width:720px\" role=\"img\" aria-label=\"Placeholder for a close-up photograph of detailed embroidery on a premium garment\">\n      <span>HERO IMAGE \u2014 Replace with high-quality embroidery\/product photograph<small>Shows 720 \u00d7 650 px \u00b7 export 1200 \u00d7 1200<\/small><\/span>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== TRUST STRIP ===== -->\n<div class=\"strip\"><div class=\"wrap\"><ul>\n  <li>Local St. Petersburg business<\/li><li>Custom orders<\/li><li>Fast turnaround<\/li><li>Low \/ no minimums<\/li><li>Pickup &amp; shipping<\/li>\n<\/ul><\/div><\/div>\n\n<!-- ===== SERVICES ===== -->\n<section id=\"services\">\n  <div class=\"wrap\">\n    <h2 class=\"rv\">What We Create<\/h2>\n    <p class=\"lead\">Bring a logo, an idea, artwork, a photograph, or a garment you already own. We&#8217;ll talk through your project and recommend the right approach.<\/p>\n    <div class=\"cards\" id=\"cards\"><\/div>\n    <div class=\"row\"><a class=\"btn accent\" href=\"#contact\">GET A QUOTE<\/a><\/div>\n    <p class=\"note\" style=\"margin-top:14px\">Products include hats, polo shirts, t-shirts, hoodies, jackets, work uniforms, bags, and towels.<\/p>\n  <\/div>\n<\/section>\n\n<!-- ===== PERSONAL ===== -->\n<section class=\"personal\" id=\"personal\">\n  <div class=\"wrap split\">\n    <div>\n      <h2>Turn Memories Into Something You Can Keep<\/h2>\n      <p>Have a drawing from your child that you want to keep forever? Have a favorite photo that deserves to become something tangible? We can help turn meaningful ideas and memories into custom embroidered pieces.<\/p>\n      <ul class=\"ticks\"><li>Children&#8217;s drawings<\/li><li>Family artwork<\/li><li>Favorite photographs<\/li><li>Line-art portraits<\/li><li>Special memories<\/li><li>Personalized gifts<\/li><li>Names and dates<\/li><\/ul>\n      <p class=\"note\">Not every photo or drawing converts perfectly. We review each piece of artwork for embroidery suitability first and tell you what will work.<\/p>\n      <div class=\"row\"><a class=\"btn accent\" href=\"#contact\" data-type=\"Personalized \/ Memory Embroidery\">ASK ABOUT CUSTOM MEMORY EMBROIDERY<\/a><\/div>\n    <\/div>\n    <div>\n      <div class=\"ba\" id=\"ba\">\n        <div class=\"ph\"><span>ORIGINAL ART \/ PHOTO<small>600 \u00d7 600 px<\/small><\/span><\/div>\n        <div class=\"ph after\" id=\"after\"><span>FINAL EMBROIDERED RESULT<small>600 \u00d7 600 px<\/small><\/span><\/div>\n        <div class=\"knob\" id=\"knob\"><\/div>\n        <input type=\"range\" min=\"0\" max=\"100\" value=\"50\" id=\"slider\" aria-label=\"Compare original with embroidered result\">\n      <\/div>\n      <p class=\"note\" style=\"margin-top:8px\">Drag the slider to compare. Example images coming soon.<\/p>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== BUSINESS ===== -->\n<section class=\"dark\" id=\"business\">\n  <div class=\"wrap split rev\">\n    <div>\n      <h2>Professional Embroidery for Your Business<\/h2>\n      <p>Small businesses are welcome here. We embroider company logos on employee uniforms, branded polos, workwear, team apparel, and hats, in single pieces or bulk orders.<\/p>\n      <ul class=\"ticks\"><li>Restaurants<\/li><li>Contractors &amp; construction<\/li><li>Real estate teams<\/li><li>Medical offices<\/li><li>Salons &amp; barbers<\/li><li>Hotels<\/li><li>Schools &amp; sports teams<\/li><li>Churches &amp; organizations<\/li><li>Corporate teams<\/li><\/ul>\n      <div class=\"row\"><a class=\"btn accent\" href=\"#contact\" data-type=\"Business \/ Bulk Order\">REQUEST A BUSINESS QUOTE<\/a><\/div>\n    <\/div>\n    <div class=\"ph\" style=\"aspect-ratio:3\/2\" role=\"img\" aria-label=\"Placeholder for a photo of embroidered business uniforms and hats\"><span>BUSINESS APPAREL PHOTO<small>1200 \u00d7 800 px<\/small><\/span><\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== GALLERY ===== -->\n<section id=\"work\">\n  <div class=\"wrap\">\n    <h2>Our Work<\/h2>\n    <p class=\"lead\">A look at the hats, shirts, polos, uniforms, and personal pieces we stitch. Real project photos are coming soon.<\/p>\n    <div class=\"gal\" id=\"gal\"><\/div>\n    <div class=\"row\"><a class=\"btn accent\" href=\"#contact\">GET A QUOTE<\/a><\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== WHY ===== -->\n<section id=\"about\" style=\"background:var(--paper-2)\">\n  <div class=\"wrap\">\n    <h2>Why Choose Johnnyverse?<\/h2>\n    <div class=\"why\">\n      <div><h3>Personal Service<\/h3><p>Every project gets individual attention.<\/p><\/div>\n      <div><h3>Quality Stitching<\/h3><p>We focus on clean, professional-looking embroidery.<\/p><\/div>\n      <div><h3>Flexible Orders<\/h3><p>Small projects are welcome, and so are business and bulk orders.<\/p><\/div>\n      <div><h3>Fast Turnaround<\/h3><p>We work to complete projects efficiently. Rush orders may be available, so ask.<\/p><\/div>\n      <div><h3>Local St. Pete Business<\/h3><p>Serving customers in St. Petersburg and the surrounding Tampa Bay area.<\/p><\/div>\n      <div><h3>Pickup &amp; Shipping<\/h3><p>Choose local pickup or shipping when available.<\/p><\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== HOW IT WORKS ===== -->\n<section id=\"how\">\n  <div class=\"wrap\">\n    <h2>How It Works<\/h2>\n    <ol class=\"steps\">\n      <li><span class=\"n\">01<\/span><h3>Send Your Design<\/h3><p>Send your logo, artwork, photo, drawing, or describe what you want.<\/p><\/li>\n      <li><span class=\"n\">02<\/span><h3>Get Your Quote<\/h3><p>We&#8217;ll review your project and provide a custom quote based on your requirements.<\/p><\/li>\n      <li><span class=\"n\">03<\/span><h3>Approve the Design<\/h3><p>Review and approve the design before production.<\/p><\/li>\n      <li><span class=\"n\">04<\/span><h3>We Create It<\/h3><p>Your embroidery or custom printing project goes into production.<\/p><\/li>\n      <li><span class=\"n\">05<\/span><h3>Pickup or Shipping<\/h3><p>Pick up locally or have your completed order shipped.<\/p><\/li>\n    <\/ol>\n  <\/div>\n<\/section>\n\n<!-- ===== SERVICE AREA ===== -->\n<section class=\"area\" id=\"area\">\n  <div class=\"wrap split\">\n    <div>\n      <h2>Custom Embroidery in St. Petersburg, Florida<\/h2>\n      <p>Johnnyverse is a local embroidery shop serving St. Pete, Pinellas County, and the Tampa Bay area. Stop by for pickup, or contact us to ask about shipping and service availability.<\/p>\n      <address>Johnnyverse Embroidery &amp; Prints<br>826 Newton Ave S<br>Saint Petersburg, FL 33701<\/address>\n      <p>Monday\u2013Friday: 8:00 AM\u20137:00 PM<br>Saturday\u2013Sunday: 11:00 AM\u20135:00 PM<\/p>\n      <!-- Replace # with the real Google Maps link when available -->\n      <div class=\"row\"><a class=\"btn ghost\" href=\"#\" id=\"dir\" rel=\"noopener\">GET DIRECTIONS<\/a><\/div>\n    <\/div>\n    <div class=\"ph map\" role=\"img\" aria-label=\"Map placeholder for 826 Newton Ave S, Saint Petersburg\"><span>GOOGLE MAP<small>600 \u00d7 400 px \u00b7 embed once a map URL is supplied<\/small><\/span><\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== REVIEWS ===== -->\n<section id=\"reviews\">\n  <div class=\"wrap\">\n    <h2>What Customers Say<\/h2>\n    <div class=\"rev\">\n      <blockquote>REAL GOOGLE REVIEW \u2014 Replace with verified customer review<\/blockquote>\n      <blockquote>REAL GOOGLE REVIEW \u2014 Replace with verified customer review<\/blockquote>\n      <blockquote>REAL GOOGLE REVIEW \u2014 Replace with verified customer review<\/blockquote>\n    <\/div>\n    <a class=\"btn ghost\" href=\"https:\/\/share.google\/6BL1UpGyLamVMVphx\" target=\"_blank\" rel=\"noopener\">READ MORE REVIEWS<\/a>\n  <\/div>\n<\/section>\n\n<!-- ===== FAQ ===== -->\n<section id=\"faq\" style=\"background:var(--paper-2)\">\n  <div class=\"wrap\">\n    <h2>Frequently Asked Questions<\/h2>\n    <div class=\"faq\" id=\"faqs\"><\/div>\n  <\/div>\n<\/section>\n\n<!-- ===== FINAL CTA ===== -->\n<section class=\"dark final\">\n  <div class=\"wrap\">\n    <h2>Have an Idea? Let&#8217;s Stitch It Into Reality.<\/h2>\n    <p>Whether it&#8217;s one meaningful piece, custom hats for your team, or branded apparel for your business, tell us what you have in mind.<\/p>\n    <div class=\"row\"><a class=\"btn accent\" href=\"#contact\">GET A QUOTE<\/a><a class=\"btn ghost\" href=\"tel:+16569521072\">CALL (656) 952-1072<\/a><\/div>\n  <\/div>\n<\/section>\n<\/main>\n\n<!-- ===== FOOTER + QUOTE FORM ===== -->\n<footer id=\"contact\">\n  <div class=\"wrap grid\">\n    <div>\n      <h2>Request a Custom Quote<\/h2>\n      <p style=\"margin-bottom:22px;color:#bdb6a8\">Tell us about your project and we&#8217;ll get back to you with the next steps.<\/p>\n      <form id=\"qf\" method=\"POST\" enctype=\"multipart\/form-data\" novalidate>\n        <div><label for=\"name\">Full name *<\/label><input id=\"name\" name=\"name\" autocomplete=\"name\" required><div class=\"err\" id=\"e-name\"><\/div><\/div>\n        <div><label for=\"email\">Email *<\/label><input id=\"email\" name=\"email\" type=\"email\" autocomplete=\"email\" required><div class=\"err\" id=\"e-email\"><\/div><\/div>\n        <div><label for=\"phone\">Phone *<\/label><input id=\"phone\" name=\"phone\" type=\"tel\" autocomplete=\"tel\" required><div class=\"err\" id=\"e-phone\"><\/div><\/div>\n        <div><label for=\"ptype\">Project type *<\/label>\n          <select id=\"ptype\" name=\"project_type\" required><option value=\"\">Select one<\/option>\n          <option>Custom Embroidery<\/option><option>Hat Embroidery<\/option><option>Shirt \/ Polo Embroidery<\/option><option>Jacket Embroidery<\/option><option>Uniform \/ Workwear<\/option><option>Patch Embroidery<\/option><option>Personalized \/ Memory Embroidery<\/option><option>Custom Printing<\/option><option>Business \/ Bulk Order<\/option><option>Other<\/option><\/select><div class=\"err\" id=\"e-ptype\"><\/div><\/div>\n        <div><label for=\"company\">Company \/ organization<\/label><input id=\"company\" name=\"company\" autocomplete=\"organization\"><\/div>\n        <div><label for=\"qty\">Estimated quantity<\/label><select id=\"qty\" name=\"quantity\"><option value=\"\">Select one<\/option><option>1<\/option><option>2\u20135<\/option><option>6\u201324<\/option><option>25\u201349<\/option><option>50\u201399<\/option><option>100+<\/option><option>Not sure<\/option><\/select><\/div>\n        <div><label for=\"date\">Desired completion date<\/label><input id=\"date\" name=\"desired_date\" type=\"date\"><\/div>\n        <fieldset><legend>Do you have artwork or a logo?<\/legend><label><input type=\"radio\" name=\"has_art\" value=\"Yes\"> Yes<\/label><label><input type=\"radio\" name=\"has_art\" value=\"No\"> No<\/label><label><input type=\"radio\" name=\"has_art\" value=\"I need help\"> I need help<\/label><\/fieldset>\n        <div class=\"full\"><label for=\"file\">Upload artwork \/ photo<\/label><input id=\"file\" name=\"file\" type=\"file\" accept=\".jpg,.jpeg,.png,.pdf,.svg,.webp\"><p class=\"note\">JPG, JPEG, PNG, PDF, SVG or WEBP. Maximum 10 MB.<\/p><div class=\"err\" id=\"e-file\"><\/div><\/div>\n        <div class=\"full\"><label for=\"msg\">Project details *<\/label><textarea id=\"msg\" name=\"message\" placeholder=\"Tell us what you'd like embroidered or printed...\" required><\/textarea><div class=\"err\" id=\"e-msg\"><\/div><\/div>\n        <div class=\"full\"><button class=\"btn accent\" type=\"submit\" id=\"sub\">REQUEST MY QUOTE<\/button><\/div>\n        <div class=\"full status\" id=\"status\" role=\"status\" aria-live=\"polite\" hidden><\/div>\n      <\/form>\n    <\/div>\n    <div>\n      <div class=\"footlogo\"><img loading=\"lazy\" src=\"images\/logo.png\" width=\"1151\" height=\"678\" alt=\"Johnnyverse Embroidery &amp; Prints logo\" loading=\"lazy\" decoding=\"async\"><\/div>\n      <h3 style=\"margin-top:22px\">Johnnyverse Embroidery &amp; Prints<\/h3>\n      <address>826 Newton Ave S<br>Saint Petersburg, FL 33701<\/address>\n      <p><a href=\"tel:+16569521072\">(656) 952-1072<\/a><br><a href=\"mailto:johnnyverseembroideryprints@gmail.com\">johnnyverseembroideryprints@gmail.com<\/a><\/p>\n      <p style=\"margin-top:14px\"><strong>Hours<\/strong><br>Monday\u2013Friday: 8 AM\u20137 PM<br>Saturday\u2013Sunday: 11 AM\u20135 PM<\/p>\n      <ul><li><a href=\"#home\">Home<\/a><\/li><li><a href=\"#services\">Services<\/a><\/li><li><a href=\"#work\">Our Work<\/a><\/li><li><a href=\"#how\">How It Works<\/a><\/li><li><a href=\"#faq\">FAQ<\/a><\/li><li><a href=\"#contact\">Contact<\/a><\/li><\/ul>\n      <ul><!-- Replace with the real profile URLs -->\n        <li><a href=\"https:\/\/www.instagram.com\" rel=\"noopener\">Instagram<\/a><\/li><li><a href=\"https:\/\/www.facebook.com\" rel=\"noopener\">Facebook<\/a><\/li><li><a href=\"https:\/\/www.tiktok.com\" rel=\"noopener\">TikTok<\/a><\/li><\/ul>\n      <ul><li><a href=\"#\">Privacy Policy<\/a><\/li><li><a href=\"#\">Terms<\/a><\/li><\/ul>\n    <\/div>\n  <\/div>\n  <div class=\"wrap legal\">\u00a9 2026 Johnnyverse Embroidery &amp; Prints. All rights reserved.<\/div>\n<\/footer>\n\n<div class=\"mbar\"><a href=\"tel:+16569521072\">CALL<\/a><a href=\"#contact\">GET A QUOTE<\/a><\/div>\n<button class=\"top\" id=\"top\" aria-label=\"Back to top\">\u2191<\/button>\n<dialog id=\"lb\" aria-label=\"Gallery image\"><div class=\"lb\"><div class=\"ph\" id=\"lbph\"><\/div><p id=\"lbcap\" style=\"margin-top:10px;font-weight:600\"><\/p><div class=\"lb-ctl\"><button id=\"prev\">Previous<\/button><button id=\"close\">Close<\/button><button id=\"next\">Next<\/button><\/div><\/div><\/dialog>\n\n<script>\n(() => {\n\/* ===== CONFIG: point this at a Vercel API route or form service (no secrets in this file) ===== *\/\nconst FORM_ENDPOINT = \"YOUR_FORM_ENDPOINT_HERE\";\nconst MAX_MB = 10, OK_EXT = [\"jpg\",\"jpeg\",\"png\",\"pdf\",\"svg\",\"webp\"];\nconst $ = s => document.querySelector(s), $$ = s => [...document.querySelectorAll(s)];\n\n\/* Service cards *\/\nconst icon = d => `<svg viewBox=\"0 0 24 24\" aria-hidden=\"true\">${d}<\/svg>`;\nconst services = [\n [\"Custom Embroidery\",\"Logos, artwork, names, designs, and personalized embroidery.\",\"Includes custom logo embroidery, monogramming, names and numbers, patches, and 3D \/ puff embroidery.\",\"Custom Embroidery\",'<path d=\"M4 20 20 4M14 4l6 6M4 14l6 6\"\/>'],\n [\"Hats & Headwear\",\"Custom embroidered hats and other headwear.\",\"Great for teams, events, and gifts. Ask about 3D \/ puff embroidery on caps.\",\"Hat Embroidery\",'<path d=\"M4 16c0-6 4-9 8-9s8 3 8 9M2 16h20l-2 3H4z\"\/>'],\n [\"Shirts & Polos\",\"Personalized shirts, polos, and apparel.\",\"Embroidered polos and shirts, plus hoodies and jackets. Bring your own garment or ask us about options.\",\"Shirt \/ Polo Embroidery\",'<path d=\"M8 3 3 6l2 4 2-1v12h10V9l2 1 2-4-5-3c-1 2-3 2-4 2s-3 0-4-2z\"\/>'],\n [\"Business & Uniform Embroidery\",\"Professional branded apparel for teams and businesses.\",\"Employee uniforms, workwear, and team apparel for small businesses, schools, and organizations.\",\"Uniform \/ Workwear\",'<rect x=\"3\" y=\"8\" width=\"18\" height=\"12\"\/><path d=\"M9 8V5h6v3\"\/>'],\n [\"Personalized & Memory Embroidery\",\"Turn meaningful artwork, children's drawings, photographs, or personal ideas into custom embroidered pieces.\",\"We review your art or photo and recommend how it can best be embroidered.\",\"Personalized \/ Memory Embroidery\",'<path d=\"M12 20s-8-5-8-11a4.5 4.5 0 0 1 8-2.5A4.5 4.5 0 0 1 20 9c0 6-8 11-8 11z\"\/>',1],\n [\"Custom Printing\",\"Screen printing, DTF, DTG, heat transfer\/vinyl, and sublimation.\",\"The best method depends on your design, garment, and quantity. Request a quote and we'll review your project.\",\"Custom Printing\",'<rect x=\"6\" y=\"3\" width=\"12\" height=\"6\"\/><rect x=\"3\" y=\"9\" width=\"18\" height=\"8\"\/><rect x=\"7\" y=\"14\" width=\"10\" height=\"7\"\/>']\n];\n$(\"#cards\").innerHTML = services.map((s,i)=>`<article class=\"card${s[5]?\" feature\":\"\"}\">${icon(s[4])}<h3>${s[0]}<\/h3><p>${s[1]}<\/p><p class=\"more\" id=\"m${i}\">${s[2]}<\/p><div class=\"tools\"><button class=\"lm\" aria-expanded=\"false\" aria-controls=\"m${i}\">Learn more<\/button><a class=\"q\" href=\"#contact\" data-type=\"${s[3]}\">Request a quote<\/a><\/div><\/article>`).join(\"\");\n$$(\".lm\").forEach(b=>b.onclick=()=>{const c=b.closest(\".card\"),o=c.classList.toggle(\"open\");b.setAttribute(\"aria-expanded\",o);b.textContent=o?\"Show less\":\"Learn more\"});\n\n\/* Preselect project type from CTA *\/\ndocument.addEventListener(\"click\",e=>{const a=e.target.closest(\"[data-type]\");if(a)$(\"#ptype\").value=a.dataset.type});\n\n\/* Mobile menu + active nav *\/\nconst burger=$(\".burger\"),menu=$(\"#menu\");\nburger.onclick=()=>{const o=menu.classList.toggle(\"open\");burger.setAttribute(\"aria-expanded\",o)};\nmenu.onclick=e=>{if(e.target.tagName===\"A\"){menu.classList.remove(\"open\");burger.setAttribute(\"aria-expanded\",\"false\")}};\nconst links=$$(\"#menu a\");\nconst spy=new IntersectionObserver(es=>es.forEach(en=>{if(en.isIntersecting)links.forEach(l=>l.classList.toggle(\"on\",l.getAttribute(\"href\")===\"#\"+en.target.id))}),{rootMargin:\"-45% 0px -50% 0px\"});\n$$(\"main section[id]\").forEach(s=>spy.observe(s));\n\n\/* Reveal: headings fade in, process steps light up in sequence *\/\nconst rv=new IntersectionObserver(es=>es.forEach(en=>{if(en.isIntersecting){en.target.classList.add(\"in\");rv.unobserve(en.target)}}),{threshold:.3});\n$$(\".rv,.steps li\").forEach(el=>rv.observe(el));\n\n\/* Before \/ after slider *\/\n$(\"#slider\").oninput=e=>{const v=e.target.value;$(\"#after\").style.clipPath=`inset(0 0 0 ${v}%)`;$(\"#knob\").style.left=v+\"%\"};\n\n\/* Gallery + lightbox *\/\nconst items=[\"Hat embroidery\",\"Shirt embroidery\",\"Polo embroidery\",\"Uniforms\",\"Personal embroidery\",\"Custom artwork\",\"Business branding\",\"Close-up embroidery\"];\n$(\"#gal\").innerHTML=items.map((t,i)=>`<button data-i=\"${i}\" aria-label=\"Enlarge: ${t}\"><div class=\"ph\"><span>IMAGE 0${i+1} \u2014 ${t.toUpperCase()}<small>800 \u00d7 800 px<\/small><\/span><\/div><\/button>`).join(\"\");\nlet cur=0;const lb=$(\"#lb\");\nconst show=i=>{cur=(i+items.length)%items.length;$(\"#lbph\").innerHTML=`<span>IMAGE 0${cur+1} \u2014 ${items[cur].toUpperCase()}<small>800 \u00d7 800 px<\/small><\/span>`;$(\"#lbcap\").textContent=items[cur]};\n$$(\"#gal button\").forEach(b=>b.onclick=()=>{show(+b.dataset.i);lb.showModal()});\n$(\"#prev\").onclick=()=>show(cur-1);$(\"#next\").onclick=()=>show(cur+1);$(\"#close\").onclick=()=>lb.close();\nlb.addEventListener(\"click\",e=>{if(e.target===lb)lb.close()});\nlb.addEventListener(\"keydown\",e=>{if(e.key===\"ArrowLeft\")show(cur-1);if(e.key===\"ArrowRight\")show(cur+1)});\n\n\/* FAQ *\/\nconst faq=[\n[\"How much does custom embroidery cost?\",\"Pricing depends on the design, garment, quantity, and project requirements. Every project is different, so request a quote and we'll review your artwork, quantity, and garment.\"],\n[\"Can you embroider my logo?\",\"Yes. Send your logo or artwork through the quote form and we'll review it.\"],\n[\"Can you embroider a photograph or child's drawing?\",\"We can review your artwork or photo and recommend the best approach for embroidery. Suitability varies from piece to piece.\"],\n[\"Do you have a minimum order?\",\"Low or no minimums may be available depending on the project. Ask us about yours.\"],\n[\"Can I order just one item?\",\"Yes. Individual custom projects are welcome.\"],\n[\"Do you embroider hats?\",\"Yes.\"],[\"Do you embroider shirts and polos?\",\"Yes.\"],[\"Do you make business uniforms?\",\"Yes.\"],\n[\"Do you offer custom printing?\",\"Yes, including screen printing, DTF, DTG, heat transfer\/vinyl, and sublimation.\"],\n[\"Do you offer rush orders?\",\"Yes, when available. Contact us to confirm timing for your project.\"],\n[\"Can I pick up my order?\",\"Yes, local pickup is available at 826 Newton Ave S, Saint Petersburg.\"],\n[\"Do you ship?\",\"Yes, shipping is available.\"],\n[\"How do I get started?\",\"Send your design or artwork and project details through the quote form below.\"]];\n$(\"#faqs\").innerHTML=faq.map(f=>`<details><summary>${f[0]}<\/summary><p>${f[1]}<\/p><\/details>`).join(\"\");\n\n\/* Back to top *\/\nconst backToTop=$(\"#top\");\naddEventListener(\"scroll\",()=>backToTop.style.display=scrollY>700?\"block\":\"none\",{passive:true});\nbackToTop.onclick=()=>scrollTo({top:0});\n\n\/* ===== Quote form ===== *\/\nconst f=$(\"#qf\");let sending=false;\nconst setErr=(id,msg,field)=>{$(\"#e-\"+id).textContent=msg;const el=field||$(\"#\"+({msg:\"msg\"}[id]||id));if(msg){el.setAttribute(\"aria-invalid\",\"true\");el.setAttribute(\"aria-describedby\",\"e-\"+id)}else el.removeAttribute(\"aria-invalid\")};\nfunction validate(){\n  let bad=null;const chk=(id,ok,msg)=>{setErr(id,ok?\"\":msg);if(!ok&&!bad)bad=$(\"#\"+id)};\n  chk(\"name\",f.name.value.trim().length>1,\"Enter your full name.\");\n  chk(\"email\",\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]{2,}$\/.test(f.email.value.trim()),\"Enter a valid email address.\");\n  chk(\"phone\",f.phone.value.replace(\/\\D\/g,\"\").length>=10,\"Enter a phone number with at least 10 digits.\");\n  chk(\"ptype\",!!f.project_type.value,\"Choose a project type.\");\n  chk(\"msg\",f.message.value.trim().length>4,\"Tell us a bit about your project.\");\n  const file=f.file.files[0];let fm=\"\";\n  if(file){const ext=file.name.split(\".\").pop().toLowerCase();if(!OK_EXT.includes(ext))fm=\"Upload a JPG, PNG, PDF, SVG or WEBP file.\";else if(file.size>MAX_MB*1048576)fm=`File is over ${MAX_MB} MB. Upload a smaller file.`}\n  setErr(\"file\",fm,f.file);if(fm&&!bad)bad=f.file;\n  if(bad)bad.focus();return !bad;\n}\nf.addEventListener(\"submit\",async e=>{\n  e.preventDefault();if(sending||!validate())return;\n  const st=$(\"#status\"),btn=$(\"#sub\");st.hidden=true;\n  if(FORM_ENDPOINT.startsWith(\"YOUR_\")){st.className=\"full status bad\";st.textContent=\"The form isn't connected yet. Please call (656) 952-1072 or email johnnyverseembroideryprints@gmail.com.\";st.hidden=false;return}\n  sending=true;btn.disabled=true;btn.textContent=\"Sending...\";\n  try{\n    const r=await fetch(FORM_ENDPOINT,{method:\"POST\",body:new FormData(f),headers:{Accept:\"application\/json\"}});\n    if(!r.ok)throw 0;\n    st.className=\"full status ok\";st.textContent=\"Thanks! We received your request and will follow up with next steps.\";f.reset();\n  }catch(_){st.className=\"full status bad\";st.textContent=\"Something went wrong sending your request. Try again, or call (656) 952-1072.\";}\n  st.hidden=false;sending=false;btn.disabled=false;btn.textContent=\"REQUEST MY QUOTE\";\n});\n})();\n<\/script>\n<\/body>\n<\/html>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Custom Embroidery &#038; Prints in St. Petersburg, FL | Johnnyverse Embroidery &#038; Prints Skip to content Home Services Our Work How It Works About FAQ Contact GET A QUOTE Menu Custom Embroidery &amp; Prints in St. Petersburg, FL Turn your logo, artwork, favorite photo, or meaningful idea into something you can wear, gift, and keep. [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-21","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=\/wp\/v2\/pages\/21","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=21"}],"version-history":[{"count":10,"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=\/wp\/v2\/pages\/21\/revisions"}],"predecessor-version":[{"id":34,"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=\/wp\/v2\/pages\/21\/revisions\/34"}],"wp:attachment":[{"href":"https:\/\/johnnyverse.us\/Embroidery\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=21"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}