{"id":3910,"date":"2026-05-08T09:09:30","date_gmt":"2026-05-08T16:09:30","guid":{"rendered":"https:\/\/centricframing.com\/centricphoto\/?page_id=3910"},"modified":"2026-09-01T12:06:19","modified_gmt":"2026-09-01T19:06:19","slug":"upload","status":"publish","type":"page","link":"https:\/\/centricframing.com\/centricphoto\/upload\/","title":{"rendered":"upload"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3910\" class=\"elementor elementor-3910\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-391226e elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"391226e\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1024682\" data-id=\"1024682\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7d6db8d elementor-widget elementor-widget-html\" data-id=\"7d6db8d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"cpfit-wrap\">\n<style>\n.cpfit-wrap{max-width:820px;margin:1.25rem auto;font-family:inherit;color:#2b2b28;}\n.cpfit-wrap *{box-sizing:border-box;}\n.cpfit-card{border:1px solid #e3ddd0;border-radius:12px;background:#ffffff;overflow:hidden;}\n.cpfit-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:#faf8f3;border:0;padding:14px 18px;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;color:#2b2b28;text-align:left;}\n.cpfit-more{font-size:13px;font-weight:500;color:#137a9e;white-space:nowrap;}\n.cpfit-chev{display:inline-block;transition:transform .15s;}\n.cpfit-body{padding:2px 18px 18px;}\n.cpfit-intro{font-size:14px;color:#5c574c;line-height:1.6;margin:12px 0 16px;}\n.cpfit-lab{font-size:13px;color:#6b665a;margin:0 0 6px;}\n.cpfit-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;}\n.cpfit-btn{font-family:inherit;font-size:13px;line-height:1.2;padding:7px 12px;border:1px solid #d8d1c2;border-radius:7px;background:#fff;color:#2b2b28;cursor:pointer;transition:background .12s;}\n.cpfit-btn:hover{background:#f3efe6;}\n.cpfit-btn.on{border-color:#137a9e;border-width:2px;color:#137a9e;font-weight:600;padding:6px 11px;}\n.cpfit-mode{display:flex;gap:16px;align-items:center;background:#f7f4ed;border-radius:10px;padding:12px 16px;margin-bottom:10px;}\n.cpfit-mode.hero{background:#eef7fb;border:1px solid #bfe0ee;}\n.cpfit-dia{flex:0 0 160px;}\n.cpfit-txt{flex:1;min-width:0;}\n.cpfit-mname{font-size:14px;font-weight:600;color:#2b2b28;}\n.cpfit-tag{display:inline-block;font-size:11px;font-weight:600;color:#0d6a8c;background:#d4ecf6;border-radius:20px;padding:1px 9px;margin-left:8px;vertical-align:1px;}\n.cpfit-mdesc{font-size:13px;color:#5c574c;line-height:1.5;margin:3px 0 4px;}\n.cpfit-cap{font-size:12px;color:#8a8478;}\n.cpfit-legend{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:6px;font-size:12px;color:#6b665a;}\n.cpfit-sw{display:inline-block;width:11px;height:11px;border-radius:2px;vertical-align:-1px;margin-right:5px;}\n@media(max-width:430px){.cpfit-dia{flex:0 0 108px;}.cpfit-mode{padding:10px;gap:10px;}}\n<\/style>\n\n<div class=\"cpfit-card\">\n  <button class=\"cpfit-toggle\" id=\"cpfit-toggle\" aria-expanded=\"false\" aria-controls=\"cpfit-body\">\n    <span>Curious how your photo will fit the print?<\/span>\n<span class=\"cpfit-more\">Show me <span class=\"cpfit-chev\" id=\"cpfit-chev\" aria-hidden=\"true\">&#9662;<\/span><\/span>\n  <\/button>\n  <div class=\"cpfit-body\" id=\"cpfit-body\" style=\"display:none;\">\n    <p class=\"cpfit-intro\">Welcome to the <strong>aspect-ratio dance<\/strong>. Your phone shoots photos in one shape, print paper comes in another, and the two almost never line up on their own. So your picture has to either step in close (and lose a sliver at the edges) or keep its distance (and gain a border). Neither move is wrong &mdash; it&rsquo;s just your call. Tap how your photo was taken and a print size to see the three standard ways it can go &mdash; plus a fourth our team can do for you when none of them feel right.<\/p>\n\n    <p class=\"cpfit-lab\">Your photo<\/p>\n    <div class=\"cpfit-row\" id=\"cpfit-photos\">\n      <button class=\"cpfit-btn\" data-photo=\"4:3\">Phone 4:3<\/button>\n      <button class=\"cpfit-btn\" data-photo=\"3:2\">Camera 3:2<\/button>\n      <button class=\"cpfit-btn\" data-photo=\"1:1\">Square<\/button>\n      <button class=\"cpfit-btn\" data-photo=\"20:9\">Full screen 20:9<\/button>\n    <\/div>\n\n    <p class=\"cpfit-lab\">Print size<\/p>\n    <div class=\"cpfit-row\" id=\"cpfit-prints\">\n      <button class=\"cpfit-btn\" data-print=\"4x6\">4 &times; 6<\/button>\n      <button class=\"cpfit-btn\" data-print=\"5x7\">5 &times; 7<\/button>\n      <button class=\"cpfit-btn\" data-print=\"8x10\">8 &times; 10<\/button>\n      <button class=\"cpfit-btn\" data-print=\"11x14\">11 &times; 14<\/button>\n    <\/div>\n\n    <div class=\"cpfit-mode\">\n      <div class=\"cpfit-dia\" id=\"cpfit-m-cover\"><\/div>\n      <div class=\"cpfit-txt\">\n        <div class=\"cpfit-mname\">Cover &mdash; fill it up<\/div>\n        <div class=\"cpfit-mdesc\">Blows your photo up a touch <em>past<\/em> the print&rsquo;s edges, then trims the overhang &mdash; so it fills corner to corner. Watch out: this is where a head or a hand can get clipped.<\/div>\n        <div class=\"cpfit-cap\" id=\"cpfit-c-cover\"><\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"cpfit-mode\">\n      <div class=\"cpfit-dia\" id=\"cpfit-m-strip\"><\/div>\n      <div class=\"cpfit-txt\">\n        <div class=\"cpfit-mname\">Strip borders &mdash; keep it all<\/div>\n        <div class=\"cpfit-mdesc\">Keeps every bit of your photo. Because the shapes differ, two opposite sides pick up a clean white border while the other two run flush.<\/div>\n        <div class=\"cpfit-cap\" id=\"cpfit-c-strip\"><\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"cpfit-mode\">\n      <div class=\"cpfit-dia\" id=\"cpfit-m-four\"><\/div>\n      <div class=\"cpfit-txt\">\n        <div class=\"cpfit-mname\">Four-sided &mdash; framed look<\/div>\n        <div class=\"cpfit-mdesc\">Your whole photo, centered with an even white border on all four sides &mdash; the classic matted look, ready to frame.<\/div>\n        <div class=\"cpfit-cap\" id=\"cpfit-c-four\"><\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"cpfit-mode hero\">\n      <div class=\"cpfit-dia\" id=\"cpfit-m-extend\"><\/div>\n      <div class=\"cpfit-txt\">\n        <div class=\"cpfit-mname\">We make it fit<span class=\"cpfit-tag\">we do this for you<\/span><\/div>\n        <div class=\"cpfit-mdesc\">None of the above quite working &mdash; don&rsquo;t want a head cropped <em>or<\/em> a border? Our team can blend in matching background &mdash; more sky, more scenery &mdash; so your whole photo fills the print with no cropping and no borders. Just ask and we&rsquo;ll make it fit.<\/div>\n        <div class=\"cpfit-cap\" id=\"cpfit-c-extend\"><\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"cpfit-legend\">\n      <span><span class=\"cpfit-sw\" style=\"background:#7ec0dd;\"><\/span>your photo<\/span>\n      <span><span class=\"cpfit-sw\" style=\"background:#a9d8ec;opacity:.45;\"><\/span>trimmed off<\/span>\n      <span><span class=\"cpfit-sw\" style=\"background:#ffffff;border:1px solid #c9c1ad;\"><\/span>white border<\/span>\n      <span><span class=\"cpfit-sw\" style=\"border:1.5px dashed #137a9e;background:transparent;\"><\/span>your photo&rsquo;s edge<\/span>\n    <\/div>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  var photos={'4:3':{w:3,h:4},'3:2':{w:2,h:3},'1:1':{w:1,h:1},'20:9':{w:9,h:20}};\n  var prints={'4x6':{w:4,h:6},'5x7':{w:5,h:7},'8x10':{w:8,h:10},'11x14':{w:11,h:14}};\n  var MIN=0.25, MINPX=4, state={photo:'4:3',print:'4x6'};\n  function R(x){return Math.round(x*100)\/100;}\n  function fit(mode,ph,pr){\n    var ar=ph.w\/ph.h,qr=pr.w\/pr.h,dW,dH,cap;\n    if(mode==='cover'){\n      if(ar>=qr){dH=pr.h;dW=pr.h*ar;var c=(dW-pr.w)\/2;cap=c<0.04?'Fills exactly, no trim':'Trims '+R(c)+'\\u2033 off each side';}\n      else{dW=pr.w;dH=pr.w\/ar;var c2=(dH-pr.h)\/2;cap=c2<0.04?'Fills exactly, no trim':'Trims '+R(c2)+'\\u2033 off top & bottom';}\n      return {dW:dW,dH:dH,cap:cap,cover:true};\n    }\n    if(mode==='strip'){\n      if(ar>=qr){dW=pr.w;dH=pr.w\/ar;var b=(pr.h-dH)\/2;cap=b<0.04?'Exact fit, no border':R(b)+'\\u2033 border top & bottom';}\n      else{dH=pr.h;dW=pr.h*ar;var b2=(pr.w-dW)\/2;cap=b2<0.04?'Exact fit, no border':R(b2)+'\\u2033 border left & right';}\n      return {dW:dW,dH:dH,cap:cap};\n    }\n    if(mode==='four'){\n      if(ar>=qr){dW=pr.w-2*MIN;dH=dW\/ar;var t=(pr.h-dH)\/2;cap=R(MIN)+'\\u2033 sides (min), '+R(t)+'\\u2033 top & bottom';}\n      else{dH=pr.h-2*MIN;dW=dH*ar;var t2=(pr.w-dW)\/2;cap=R(MIN)+'\\u2033 top & bottom (min), '+R(t2)+'\\u2033 sides';}\n      return {dW:dW,dH:dH,cap:cap};\n    }\n    \/\/ extend: whole photo (contain size), background blended out to the edges\n    if(ar>=qr){dW=pr.w;dH=pr.w\/ar;}else{dH=pr.h;dW=pr.h*ar;}\n    return {dW:dW,dH:dH,cap:'Whole photo kept \\u2014 no crop, no borders',extend:true};\n  }\n  function scene(x,y,w,h){\n    var gy=y+h*0.64, sr=Math.min(w,h)*0.13;\n    function f(v){return v.toFixed(1);}\n    return '<rect x=\"'+f(x)+'\" y=\"'+f(y)+'\" width=\"'+f(w)+'\" height=\"'+f(h)+'\" fill=\"#a9d8ec\"\/>'\n         + '<circle cx=\"'+f(x+w*0.74)+'\" cy=\"'+f(y+h*0.27)+'\" r=\"'+f(sr)+'\" fill=\"#f6c659\"\/>'\n         + '<rect x=\"'+f(x)+'\" y=\"'+f(gy)+'\" width=\"'+f(w)+'\" height=\"'+f(y+h-gy)+'\" fill=\"#c9b27e\"\/>';\n  }\n  function render(){\n    var ph=photos[state.photo],pr=prints[state.print];\n    var cov=fit('cover',ph,pr),str=fit('strip',ph,pr),fou=fit('four',ph,pr),ext=fit('extend',ph,pr);\n    var maxExt=Math.max(pr.w,pr.h,cov.dW,cov.dH),sc=100\/maxExt;\n    var vbW=120,vbH=128,cx=vbW\/2,cy=vbH\/2;\n    function box(g,key){\n      var PW=pr.w*sc,PH=pr.h*sc,DW=g.dW*sc,DH=g.dH*sc;\n      var px=cx-PW\/2,py=cy-PH\/2;\n      \/\/ Keep a small border visible even on large prints (the to-scale gap\n      \/\/ can shrink below a pixel). Exact figures stay in the caption.\n      if(!g.cover && !g.extend){\n        if((PW-DW)\/2>0.5 && (PW-DW)\/2<MINPX) DW=PW-2*MINPX;\n        if((PH-DH)\/2>0.5 && (PH-DH)\/2<MINPX) DH=PH-2*MINPX;\n      }\n      var dx=cx-DW\/2,dy=cy-DH\/2;\n      function f(v){return v.toFixed(1);}\n      var s='<svg viewBox=\"0 0 '+vbW+' '+vbH+'\" width=\"100%\" style=\"width:100%;height:auto;display:block;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\"><title>'+key+' preview<\/title>';\n      if(g.cover){\n        s+='<g opacity=\"0.34\">'+scene(dx,dy,DW,DH)+'<\/g>';\n        s+='<rect x=\"'+f(dx)+'\" y=\"'+f(dy)+'\" width=\"'+f(DW)+'\" height=\"'+f(DH)+'\" fill=\"none\" stroke=\"#2f93b8\" stroke-dasharray=\"4 3\"\/>';\n        s+='<clipPath id=\"cpfitclip\"><rect x=\"'+f(px)+'\" y=\"'+f(py)+'\" width=\"'+f(PW)+'\" height=\"'+f(PH)+'\"\/><\/clipPath>';\n        s+='<g clip-path=\"url(#cpfitclip)\">'+scene(dx,dy,DW,DH)+'<\/g>';\n      }else if(g.extend){\n        \/\/ background extended to fill the whole print, aligned to the horizon\n        var hy=dy+DH*0.64, sr=Math.min(DW,DH)*0.13;\n        s+='<rect x=\"'+f(px)+'\" y=\"'+f(py)+'\" width=\"'+f(PW)+'\" height=\"'+f(hy-py)+'\" fill=\"#a9d8ec\"\/>';\n        s+='<rect x=\"'+f(px)+'\" y=\"'+f(hy)+'\" width=\"'+f(PW)+'\" height=\"'+f(py+PH-hy)+'\" fill=\"#c9b27e\"\/>';\n        s+='<circle cx=\"'+f(dx+DW*0.74)+'\" cy=\"'+f(dy+DH*0.27)+'\" r=\"'+f(sr)+'\" fill=\"#f6c659\"\/>';\n        s+='<rect x=\"'+f(dx)+'\" y=\"'+f(dy)+'\" width=\"'+f(DW)+'\" height=\"'+f(DH)+'\" fill=\"none\" stroke=\"#137a9e\" stroke-width=\"1.3\" stroke-dasharray=\"4 3\"\/>';\n      }else{\n        s+='<rect x=\"'+f(px)+'\" y=\"'+f(py)+'\" width=\"'+f(PW)+'\" height=\"'+f(PH)+'\" fill=\"#ffffff\" stroke=\"#c9c1ad\"\/>';\n        s+=scene(dx,dy,DW,DH);\n      }\n      s+='<rect x=\"'+f(px)+'\" y=\"'+f(py)+'\" width=\"'+f(PW)+'\" height=\"'+f(PH)+'\" fill=\"none\" stroke=\"#2b2b28\" stroke-width=\"1.2\"\/><\/svg>';\n      return s;\n    }\n    document.getElementById('cpfit-m-cover').innerHTML=box(cov,'Cover');\n    document.getElementById('cpfit-m-strip').innerHTML=box(str,'Strip borders');\n    document.getElementById('cpfit-m-four').innerHTML=box(fou,'Four-sided');\n    document.getElementById('cpfit-m-extend').innerHTML=box(ext,'We make it fit');\n    document.getElementById('cpfit-c-cover').textContent=cov.cap;\n    document.getElementById('cpfit-c-strip').textContent=str.cap;\n    document.getElementById('cpfit-c-four').textContent=fou.cap;\n    document.getElementById('cpfit-c-extend').textContent=ext.cap;\n    function mark(wrapId,key){\n      var w=document.getElementById(wrapId);\n      Array.prototype.forEach.call(w.querySelectorAll('.cpfit-btn'),function(b){\n        if(b.dataset[key]===state[key])b.classList.add('on');else b.classList.remove('on');\n      });\n    }\n    mark('cpfit-photos','photo');mark('cpfit-prints','print');\n  }\n  var tog=document.getElementById('cpfit-toggle'),body=document.getElementById('cpfit-body'),chev=document.getElementById('cpfit-chev');\n  tog.addEventListener('click',function(){\n    var open=body.style.display!=='none';\n    body.style.display=open?'none':'block';\n    tog.setAttribute('aria-expanded',String(!open));\n    chev.style.transform=open?'':'rotate(180deg)';\n  });\n  Array.prototype.forEach.call(document.querySelectorAll('#cpfit-photos .cpfit-btn'),function(b){b.addEventListener('click',function(){state.photo=b.dataset.photo;render();});});\n  Array.prototype.forEach.call(document.querySelectorAll('#cpfit-prints .cpfit-btn'),function(b){b.addEventListener('click',function(){state.print=b.dataset.print;render();});});\n  render();\n})();\n<\/script>\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a42e053 elementor-widget elementor-widget-html\" data-id=\"a42e053\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\n.cp-quote-notice {\n  background: #3d4147;\n  border: 2px solid #6EC1E4;\n  border-radius: 4px;\n  padding: 16px 20px;\n  margin: 0 0 20px;\n  font-family: 'Open Sans', Arial, sans-serif;\n  display: none;\n}\n.cp-quote-notice.visible { display: block; }\n.cp-quote-notice-title {\n  font-size: 14px;\n  font-weight: 700;\n  color: #6EC1E4;\n  letter-spacing: 0.05em;\n  text-transform: uppercase;\n  margin-bottom: 8px;\n}\n.cp-quote-notice-body {\n  font-size: 13px;\n  color: #e0e0e0;\n  line-height: 1.6;\n}\n.cp-quote-notice-total {\n  font-size: 20px;\n  font-weight: 700;\n  color: #61CE70;\n  margin-top: 8px;\n}\n.cp-quote-notice-items {\n  margin-top: 10px;\n  padding-top: 10px;\n  border-top: 1px solid #5a6068;\n}\n.cp-quote-item {\n  padding: 6px 0;\n  border-bottom: 1px solid #5a6068;\n  font-size: 12px;\n  color: #b0b5ba;\n  display: flex;\n  justify-content: space-between;\n}\n.cp-quote-item:last-child { border-bottom: none; }\n.cp-quote-item-name { color: #e0e0e0; font-weight: 600; }\n.cp-quote-loading {\n  font-size: 13px;\n  color: #b0b5ba;\n  font-style: italic;\n}\n.cp-quote-error {\n  color: #ff6b6b;\n  font-size: 13px;\n}\n\n\/* Style the Ninja Forms success message *\/\n.nf-response-msg,\n.nf-form-errors,\n.nf-form-cont .nf-response-msg p,\n.nf-form-cont .nf-response-msg {\n  color: #ffffff !important;\n  font-size: 16px !important;\n  font-weight: 600 !important;\n  line-height: 1.6 !important;\n}\n.nf-response-msg a {\n  color: #6EC1E4 !important;\n  font-weight: 600 !important;\n  text-decoration: underline !important;\n}\n.nf-response-msg a:hover {\n  color: #5ab0d3 !important;\n}\n<\/style>\n\n<div class=\"cp-quote-notice\" id=\"cp-quote-notice\">\n  <div class=\"cp-quote-notice-title\">&#128722; Quote attached to this order<\/div>\n  <div class=\"cp-quote-loading\" id=\"cp-quote-loading\">Loading your quote details&hellip;<\/div>\n  <div id=\"cp-quote-content\" style=\"display:none;\">\n    <div class=\"cp-quote-notice-body\">\n      Quote <strong id=\"cp-quote-id-display\"><\/strong> has been attached to your upload.\n      The Order Details field below has been pre-filled with your quote summary.\n      Please add any additional notes before submitting.\n    <\/div>\n    <div class=\"cp-quote-notice-items\" id=\"cp-quote-items\"><\/div>\n    <div class=\"cp-quote-notice-total\">Estimated Total: $<span id=\"cp-quote-total-display\">0.00<\/span><\/div>\n  <\/div>\n  <div class=\"cp-quote-error\" id=\"cp-quote-error\" style=\"display:none;\"><\/div>\n<\/div>\n\n<script>\n(function(){\n  var params = new URLSearchParams(window.location.search);\n  var quoteId  = params.get('quote');\n  var quoteKey = params.get('key');\n\n  if (!quoteId) return;\n\n  var notice = document.getElementById('cp-quote-notice');\n  if (notice) notice.classList.add('visible');\n\n  var apiUrl = 'https:\/\/centricframing.com\/centricphoto\/pricing-api\/get-quote.php'\n    + '?quote_id=' + encodeURIComponent(quoteId)\n    + (quoteKey ? '&key=' + encodeURIComponent(quoteKey) : '');\n\n  \/\/ Small helper: escape text before putting it into innerHTML so a stray\n  \/\/ angle bracket in a customer note can never break the markup.\n  function esc(s){\n    return String(s == null ? '' : s)\n      .replace(\/&\/g,'&amp;').replace(\/<\/g,'&lt;').replace(\/>\/g,'&gt;')\n      .replace(\/\"\/g,'&quot;');\n  }\n\n  fetch(apiUrl)\n    .then(function(r){ return r.json(); })\n    .then(function(data){\n      document.getElementById('cp-quote-loading').style.display = 'none';\n\n      if (!data.success) {\n        document.getElementById('cp-quote-error').style.display = 'block';\n        document.getElementById('cp-quote-error').textContent = 'Could not load quote ' + quoteId + '. Please describe your order in the Order Details field below.';\n        return;\n      }\n\n      document.getElementById('cp-quote-content').style.display = 'block';\n      document.getElementById('cp-quote-id-display').textContent = quoteId;\n      document.getElementById('cp-quote-total-display').textContent = parseFloat(data.total).toFixed(2);\n\n      var productNames = {\n        simple:  'Simple Print',\n        mounted: 'Mounted Print',\n        metal:   'Metal Print',\n        plexi:   'Face Mount Plexi',\n        canvas:  'Canvas Print',\n      };\n\n      var itemsHtml = '';\n      data.items.forEach(function(item, idx){\n        var name = (productNames[item.product_type] || item.product_type)\n          + ' - ' + item.width + '\" x ' + item.height + '\"';\n        itemsHtml += '<div class=\"cp-quote-item\">'\n          + '<span class=\"cp-quote-item-name\">Item ' + (idx+1) + ': ' + esc(name) + '<\/span>'\n          + '<span>$' + parseFloat(item.line_total).toFixed(2) + '<\/span>'\n          + '<\/div>';\n        if (item.notes) {\n          itemsHtml += '<div class=\"cp-quote-item\" style=\"color:#7A7A7A;font-style:italic;\">'\n            + '<span>Note: ' + esc(item.notes) + '<\/span><\/div>';\n        }\n      });\n      document.getElementById('cp-quote-items').innerHTML = itemsHtml;\n\n      \/\/ Build plain text summary for form fields\n      var summary = 'QUOTE: ' + quoteId + '\\n';\n      summary += 'Date: ' + new Date().toLocaleDateString() + '\\n';\n      summary += '----------------------------------------\\n';\n      data.items.forEach(function(item, idx){\n        var name = (productNames[item.product_type] || item.product_type);\n        summary += '\\nITEM ' + (idx+1) + ': ' + name + '\\n';\n        summary += 'Size: ' + item.width + '\" x ' + item.height + '\"\\n';\n        if (item.breakdown && item.breakdown.length) {\n          item.breakdown.forEach(function(line){\n            summary += '  ' + line.label + ': $' + parseFloat(line.val || 0).toFixed(2) + '\\n';\n          });\n        }\n        summary += 'Item Total: $' + parseFloat(item.line_total).toFixed(2) + '\\n';\n        if (item.notes) summary += 'Notes: ' + item.notes + '\\n';\n      });\n      summary += '\\n----------------------------------------\\n';\n      summary += 'ESTIMATED TOTAL: $' + parseFloat(data.total).toFixed(2) + '\\n';\n      summary += '(Estimate only - does not include tax or labor)\\n';\n\n      \/\/ Store globally for retry access\n      window.cpQuoteSummary = summary;\n\n      \/\/ Fill both fields - using correct NF internal IDs from DOM inspection\n      \/\/ Order Details textarea: nf-field-52 or order_details_1695134695986\n      \/\/ Hidden field: nf-field-53 (confirmed via console inspection)\n      \/\/\n      \/\/ IMPORTANT: each field is pre-filled exactly ONCE. Ninja Forms can\n      \/\/ render its fields a beat after the page loads, so we keep retrying\n      \/\/ every 500ms until both fields exist - but once a field has been\n      \/\/ filled we never write to it again. That way a customer who starts\n      \/\/ typing additional notes right after the pre-fill does not get their\n      \/\/ text wiped by a later pass. (The earlier version re-filled at 2.5s\n      \/\/ and 5s unconditionally, which could erase those notes.)\n      var orderFilled  = false;\n      var hiddenFilled = false;\n\n      function fillFields(attempts){\n        attempts = attempts || 0;\n        if (attempts > 40) {  \/\/ ~20 seconds of retries\n          console.log('Centric Photo: Giving up after 20 seconds');\n          return;\n        }\n\n        var orderField = document.querySelector('[name=\"order_details_1695134695986\"]')\n          || document.querySelector('textarea[id*=\"order_details\"]')\n          || document.querySelector('#nf-field-52')\n          || document.querySelector('[name=\"nf-field-52\"]');\n\n        \/\/ Use nf-field-53 - confirmed from DOM inspection\n        var hiddenField = document.querySelector('#nf-field-53')\n          || document.querySelector('[name=\"nf-field-53\"]')\n          || document.querySelector('[name=\"hidden_1778288471527\"]');\n\n        if (orderField && !orderFilled) {\n          orderField.value = summary;\n          orderField.dispatchEvent(new Event('input',  {bubbles:true}));\n          orderField.dispatchEvent(new Event('change', {bubbles:true}));\n          orderFilled = true;\n          console.log('Centric Photo: Order Details filled successfully');\n        }\n\n        if (hiddenField && !hiddenFilled) {\n          hiddenField.value = summary;\n          hiddenField.dispatchEvent(new Event('input',  {bubbles:true}));\n          hiddenField.dispatchEvent(new Event('change', {bubbles:true}));\n          hiddenFilled = true;\n          console.log('Centric Photo: Hidden field filled - length: ' + hiddenField.value.length);\n        }\n\n        \/\/ Keep retrying only while something is still unfilled.\n        if (!orderFilled || !hiddenFilled) {\n          setTimeout(function(){ fillFields(attempts + 1); }, 500);\n        }\n      }\n\n      \/\/ Start filling shortly after load; fillFields retries itself until\n      \/\/ both fields have rendered, so a single kickoff is enough.\n      setTimeout(function(){ fillFields(0); }, 800);\n\n    })\n    .catch(function(err){\n      document.getElementById('cp-quote-loading').style.display = 'none';\n      document.getElementById('cp-quote-error').style.display = 'block';\n      document.getElementById('cp-quote-error').textContent = 'Could not load quote details. Please describe your order in the Order Details field below.';\n      console.error('Quote load error:', err);\n    });\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-35767dc elementor-widget elementor-widget-shortcode\" data-id=\"35767dc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><noscript class=\"ninja-forms-noscript-message\">\n\tNotice: JavaScript is required for this content.<\/noscript>\n<div id=\"nf-form-7-cont\" class=\"nf-form-cont\" aria-live=\"polite\" aria-labelledby=\"nf-form-title-7\" aria-describedby=\"nf-form-errors-7\" role=\"form\">\n\n    <div class=\"nf-loading-spinner\"><\/div>\n\n<\/div>\n        <!-- That data is being printed as a workaround to page builders reordering the order of the scripts loaded-->\n        <script>var formDisplay=1;var nfForms=nfForms||[];var form=[];form.id='7';form.settings={\"ninjaForms\":\"Ninja Forms\",\"changeEmailErrorMsg\":\"Please enter a valid email address!\",\"changeDateErrorMsg\":\"Please enter a valid date!\",\"confirmFieldErrorMsg\":\"These fields must match!\",\"fieldNumberNumMinError\":\"Number Min Error\",\"fieldNumberNumMaxError\":\"Number Max Error\",\"fieldNumberIncrementBy\":\"Please increment by \",\"fieldTextareaRTEInsertLink\":\"Insert Link\",\"fieldTextareaRTEInsertMedia\":\"Insert Media\",\"fieldTextareaRTESelectAFile\":\"Select a file\",\"tableInsertRowAbove\":\"Insert Row Above\",\"tableInsertRowBelow\":\"Insert Row Below\",\"tableInsertColumnLeft\":\"Insert Column Left\",\"tableInsertColumnRight\":\"Insert Column Right\",\"tableDeleteRow\":\"Delete Row\",\"tableDeleteColumn\":\"Delete Column\",\"tableDeleteTable\":\"Delete Table\",\"tableLegacyNotice\":\"This content has tables in the old editor format. Custom styles are preserved until converted. Editing will update to the new format.\",\"tableLegacyConvert\":\"Convert Now\",\"tableInsertTable\":\"Insert Table\",\"dismiss\":\"Dismiss\",\"insertLink\":\"Insert Link\",\"formErrorsCorrectErrors\":\"Please correct errors before submitting this form.\",\"formHoneypot\":\"If you are a human seeing this field, please leave it empty.\",\"validateRequiredField\":\"This is a required field.\",\"honeypotHoneypotError\":\"Honeypot Error\",\"fileUploadOldCodeFileUploadInProgress\":\"File Upload in Progress.\",\"fileUploadOldCodeFileUpload\":\"FILE UPLOAD\",\"currencySymbol\":\"&#36;\",\"fieldsMarkedRequired\":\"Fields marked with an <span class=\\\"ninja-forms-req-symbol\\\">*<\\\/span> are required\",\"thousands_sep\":\",\",\"decimal_point\":\".\",\"siteLocale\":\"en_US\",\"dateFormat\":\"m\\\/d\\\/Y\",\"startOfWeek\":\"1\",\"of\":\"of\",\"previousMonth\":\"Previous Month\",\"nextMonth\":\"Next Month\",\"months\":[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],\"monthsShort\":[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],\"weekdays\":[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],\"weekdaysShort\":[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],\"weekdaysMin\":[\"Su\",\"Mo\",\"Tu\",\"We\",\"Th\",\"Fr\",\"Sa\"],\"recaptchaConsentMissing\":\"reCaptcha validation couldn&#039;t load.\",\"recaptchaMissingCookie\":\"reCaptcha v3 validation couldn&#039;t load the cookie needed to submit the form.\",\"recaptchaConsentEvent\":\"Accept reCaptcha cookies before sending the form.\",\"hourPlaceholder\":\"Hour\",\"minutePlaceholder\":\"Minute\",\"am\":\"AM\",\"pm\":\"PM\",\"objectType\":\"Form Setting\",\"editActive\":\"1\",\"title\":\"File Upload\",\"created_at\":\"2023-09-19 07:43:51\",\"form_title\":\"File Upload\",\"default_label_pos\":\"above\",\"show_title\":\"0\",\"clear_complete\":\"1\",\"hide_complete\":\"1\",\"logged_in\":\"0\",\"drawerDisabled\":\"\",\"form_title_heading_level\":\"3\",\"header_position\":\"left\",\"footer_position\":\"left\",\"container_styles_show_advanced_css\":\"0\",\"title_styles_show_advanced_css\":\"0\",\"row_styles_show_advanced_css\":\"0\",\"row-odd_styles_show_advanced_css\":\"0\",\"success-msg_styles_show_advanced_css\":\"0\",\"error_msg_styles_show_advanced_css\":\"0\",\"conditions\":[],\"formContentData\":[{\"order\":1,\"cells\":[{\"order\":0,\"fields\":[\"firstname_1524664565122\"],\"width\":50},{\"order\":1,\"fields\":[\"lastname_1524664567562\"],\"width\":50}]},{\"order\":2,\"cells\":[{\"order\":0,\"fields\":[\"your_email_1524664547370\"],\"width\":\"100\"}]},{\"order\":3,\"cells\":[{\"order\":0,\"fields\":[\"phone_1697577242261\"],\"width\":\"100\"}]},{\"order\":4,\"cells\":[{\"order\":0,\"fields\":[\"allow_centric_photo_to_contact_you_via_text_message_about_this_order_1718568909770\"],\"width\":\"100\"}]},{\"order\":5,\"cells\":[{\"order\":0,\"fields\":[\"text_order_updates_1718667094745\"],\"width\":\"100\"}]},{\"order\":6,\"cells\":[{\"order\":0,\"fields\":[\"hidden_1778288471527\"],\"width\":\"100\"}]},{\"order\":7,\"cells\":[{\"order\":0,\"fields\":[\"order_details_1695134695986\"],\"width\":\"100\"}]},{\"order\":9,\"cells\":[{\"order\":0,\"fields\":[\"file_upload_settings_1524664639884\"],\"width\":\"100\"}]},{\"order\":10,\"cells\":[{\"order\":0,\"fields\":[\"your_files_must_be_jpeg_jpg_jpg_heic_tif_tif_tiff_tiff_psd_png_mp4_pdf_doc_or_docx_zip_mov_dng_1760983380996\"],\"width\":\"100\"}]},{\"order\":11,\"cells\":[{\"order\":0,\"fields\":[\"submit_1524664233742\"],\"width\":\"100\"}]},{\"order\":12,\"cells\":[{\"order\":0,\"fields\":[\"hidden_1778356208279\"],\"width\":\"100\"}]},{\"order\":13,\"cells\":[{\"order\":0,\"fields\":[\"integrate_google_drive_1779661983762\"],\"width\":\"100\"}]}],\"calculations\":[],\"sub_limit_msg\":\"The form has reached its submission limit.\",\"not_logged_in_msg\":\"\",\"currency\":\"\",\"unique_field_error\":\"A form with this value has already been submitted.\",\"key\":\"\",\"add_submit\":\"1\",\"wrapper_class\":\"\",\"element_class\":\"\",\"allow_public_link\":0,\"embed_form\":\"\",\"currency_symbol\":\"\",\"beforeForm\":\"\",\"beforeFields\":\"\",\"afterFields\":\"\",\"afterForm\":\"\"};form.fields=[{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":1,\"idAttribute\":\"id\",\"cellcid\":\"c4127\",\"element_styles_show_advanced_css\":0,\"label_styles_show_advanced_css\":0,\"wrap_styles_show_advanced_css\":0,\"personally_identifiable\":1,\"placeholder\":\"\",\"container_class\":\"one-half first\",\"element_class\":\"\",\"admin_label\":\"\",\"help_text\":\"\",\"custom_name_attribute\":\"fname\",\"field_label\":\"First Name\",\"field_key\":\"firstname_1524664565122\",\"default\":\"\",\"required\":1,\"label_pos\":\"above\",\"key\":\"firstname_1524664565122\",\"label\":\"First Name\",\"type\":\"firstname\",\"element_styles_float\":\"\",\"element_styles_padding\":\"\",\"element_styles_margin\":\"\",\"element_styles_font-size\":\"\",\"element_styles_width\":\"\",\"element_styles_border\":\"\",\"label_styles_float\":\"\",\"label_styles_padding\":\"\",\"label_styles_margin\":\"\",\"label_styles_font-size\":\"\",\"label_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_float\":\"\",\"label_styles_border\":\"\",\"wrap_styles_width\":\"\",\"value\":\"\",\"wrap_styles_border\":\"\",\"manual_key\":true,\"drawerDisabled\":false,\"id\":40,\"beforeField\":\"\",\"afterField\":\"\",\"parentType\":\"firstname\",\"element_templates\":[\"firstname\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":2,\"idAttribute\":\"id\",\"element_styles_float\":\"\",\"element_styles_padding\":\"\",\"element_styles_margin\":\"\",\"element_styles_font-size\":\"\",\"element_styles_width\":\"\",\"label_styles_float\":\"\",\"element_styles_border\":\"\",\"label_styles_padding\":\"\",\"label_styles_font-size\":\"\",\"label_styles_margin\":\"\",\"label_styles_width\":\"\",\"label_styles_border\":\"\",\"wrap_styles_float\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_border\":\"\",\"value\":\"\",\"cellcid\":\"c4130\",\"element_styles_show_advanced_css\":0,\"label_styles_show_advanced_css\":0,\"wrap_styles_show_advanced_css\":0,\"personally_identifiable\":1,\"field_key\":\"lastname_1524664567562\",\"field_label\":\"Last Name\",\"drawerDisabled\":\"\",\"custom_name_attribute\":\"lname\",\"help_text\":\"\",\"element_class\":\"\",\"admin_label\":\"\",\"container_class\":\"one-half\",\"placeholder\":\"\",\"required\":1,\"default\":\"\",\"label_pos\":\"above\",\"key\":\"lastname_1524664567562\",\"type\":\"lastname\",\"label\":\"Last Name\",\"manual_key\":true,\"id\":41,\"beforeField\":\"\",\"afterField\":\"\",\"parentType\":\"lastname\",\"element_templates\":[\"lastname\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":3,\"idAttribute\":\"id\",\"element_styles_show_advanced_css\":0,\"label_styles_show_advanced_css\":0,\"personally_identifiable\":1,\"wrap_styles_show_advanced_css\":0,\"field_key\":\"your_email_1524664547370\",\"field_label\":\"Your Email\",\"drawerDisabled\":\"\",\"custom_name_attribute\":\"email\",\"help_text\":\"\",\"admin_label\":\"\",\"element_class\":\"\",\"container_class\":\"\",\"placeholder\":\"\",\"default\":\"\",\"label_pos\":\"above\",\"required\":1,\"key\":\"your_email_1524664547370\",\"element_styles_float\":\"\",\"type\":\"email\",\"label\":\"Your Email\",\"element_styles_padding\":\"\",\"element_styles_margin\":\"\",\"element_styles_font-size\":\"\",\"element_styles_width\":\"\",\"element_styles_border\":\"\",\"label_styles_float\":\"\",\"label_styles_padding\":\"\",\"label_styles_margin\":\"\",\"label_styles_font-size\":\"\",\"label_styles_width\":\"\",\"label_styles_border\":\"\",\"wrap_styles_float\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_margin\":\"\",\"cellcid\":\"c4133\",\"value\":\"\",\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"id\":42,\"beforeField\":\"\",\"afterField\":\"\",\"parentType\":\"email\",\"element_templates\":[\"email\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":4,\"idAttribute\":\"id\",\"drawerDisabled\":\"\",\"value\":\"\",\"cellcid\":\"c4136\",\"element_styles_show_advanced_css\":0,\"element_styles_float\":\"\",\"element_styles_padding\":\"\",\"element_styles_margin\":\"\",\"element_styles_font-size\":\"\",\"element_styles_width\":\"\",\"element_styles_border\":\"\",\"label_styles_border\":\"\",\"wrap_styles_show_advanced_css\":0,\"wrap_styles_float\":\"\",\"wrap_styles_padding\":\"\",\"input_limit_msg\":\"Character(s) left\",\"manual_key\":true,\"admin_label\":\"\",\"help_text\":\"\",\"mask\":\"\",\"custom_mask\":\"\",\"custom_name_attribute\":\"phone\",\"personally_identifiable\":1,\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"label\":\"Phone\",\"type\":\"phone\",\"key\":\"phone_1697577242261\",\"label_pos\":\"above\",\"required\":1,\"default\":\"\",\"placeholder\":\"\",\"container_class\":\"\",\"element_class\":\"\",\"input_limit\":\"\",\"input_limit_type\":\"characters\",\"label_styles_show_advanced_css\":0,\"label_styles_float\":\"\",\"label_styles_padding\":\"\",\"label_styles_margin\":\"\",\"label_styles_font-size\":\"\",\"label_styles_width\":\"\",\"field_label\":\"Phone\",\"field_key\":\"phone_1697577242261\",\"id\":43,\"beforeField\":\"\",\"afterField\":\"\",\"parentType\":\"textbox\",\"element_templates\":[\"tel\",\"textbox\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":5,\"idAttribute\":\"id\",\"options\":[{\"errors\":[],\"max_options\":0,\"label\":\"Yes\",\"value\":\"yes\",\"calc\":\"\",\"selected\":0,\"order\":0,\"settingModel\":{\"settings\":false,\"hide_merge_tags\":false,\"error\":false,\"name\":\"options\",\"type\":\"option-repeater\",\"label\":\"Options <a href=\\\"#\\\" class=\\\"nf-add-new\\\">Add New<\\\/a> <a href=\\\"#\\\" class=\\\"extra nf-open-import-tooltip\\\"><i class=\\\"fa fa-sign-in\\\" aria-hidden=\\\"true\\\"><\\\/i> Import<\\\/a>\",\"width\":\"full\",\"group\":\"\",\"value\":[{\"label\":\"One\",\"value\":\"one\",\"calc\":\"\",\"selected\":0,\"order\":0},{\"label\":\"Two\",\"value\":\"two\",\"calc\":\"\",\"selected\":0,\"order\":1},{\"label\":\"Three\",\"value\":\"three\",\"calc\":\"\",\"selected\":0,\"order\":2}],\"columns\":{\"label\":{\"header\":\"Label\",\"default\":\"\"},\"value\":{\"header\":\"Value\",\"default\":\"\"},\"calc\":{\"header\":\"Calc Value\",\"default\":\"\"},\"selected\":{\"header\":\"<span class=\\\"dashicons dashicons-yes\\\"><\\\/span>\",\"default\":0}},\"settingKey\":\"options\"}},{\"errors\":[],\"max_options\":0,\"label\":\"No\",\"value\":\"no\",\"calc\":\"\",\"selected\":0,\"order\":1,\"settingModel\":{\"settings\":false,\"hide_merge_tags\":false,\"error\":false,\"name\":\"options\",\"type\":\"option-repeater\",\"label\":\"Options <a href=\\\"#\\\" class=\\\"nf-add-new\\\">Add New<\\\/a> <a href=\\\"#\\\" class=\\\"extra nf-open-import-tooltip\\\"><i class=\\\"fa fa-sign-in\\\" aria-hidden=\\\"true\\\"><\\\/i> Import<\\\/a>\",\"width\":\"full\",\"group\":\"\",\"value\":[{\"label\":\"One\",\"value\":\"one\",\"calc\":\"\",\"selected\":0,\"order\":0},{\"label\":\"Two\",\"value\":\"two\",\"calc\":\"\",\"selected\":0,\"order\":1},{\"label\":\"Three\",\"value\":\"three\",\"calc\":\"\",\"selected\":0,\"order\":2}],\"columns\":{\"label\":{\"header\":\"Label\",\"default\":\"\"},\"value\":{\"header\":\"Value\",\"default\":\"\"},\"calc\":{\"header\":\"Calc Value\",\"default\":\"\"},\"selected\":{\"header\":\"<span class=\\\"dashicons dashicons-yes\\\"><\\\/span>\",\"default\":0}},\"settingKey\":\"options\"}}],\"required\":1,\"label_pos\":\"above\",\"key\":\"allow_centric_photo_to_contact_you_via_text_message_about_this_order_1718568909770\",\"type\":\"listradio\",\"label\":\"Allow Centric Photo to contact you via text message about this order\",\"container_class\":\"\",\"element_class\":\"\",\"admin_label\":\"\",\"help_text\":\"\",\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_float\":\"\",\"wrap_styles_show_advanced_css\":0,\"label_styles_border\":\"\",\"label_styles_width\":\"\",\"label_styles_font-size\":\"\",\"label_styles_margin\":\"\",\"label_styles_padding\":\"\",\"label_styles_float\":\"\",\"label_styles_show_advanced_css\":0,\"element_styles_border\":\"\",\"element_styles_width\":\"\",\"element_styles_font-size\":\"\",\"element_styles_margin\":\"\",\"element_styles_padding\":\"\",\"element_styles_float\":\"\",\"element_styles_show_advanced_css\":0,\"list_item_row_styles_border\":\"\",\"list_item_row_styles_height\":\"\",\"list_item_row_styles_width\":\"\",\"list_item_row_styles_font-size\":\"\",\"list_item_row_styles_margin\":\"\",\"list_item_row_styles_padding\":\"\",\"list_item_row_styles_float\":\"\",\"list_item_row_styles_show_advanced_css\":0,\"list_item_label_styles_border\":\"\",\"list_item_label_styles_height\":\"\",\"list_item_label_styles_width\":\"\",\"list_item_label_styles_font-size\":\"\",\"list_item_label_styles_margin\":\"\",\"list_item_label_styles_padding\":\"\",\"list_item_label_styles_float\":\"\",\"list_item_label_styles_show_advanced_css\":0,\"list_item_element_styles_border\":\"\",\"list_item_element_styles_height\":\"\",\"list_item_element_styles_width\":\"\",\"list_item_element_styles_font-size\":\"\",\"list_item_element_styles_margin\":\"\",\"list_item_element_styles_padding\":\"\",\"list_item_element_styles_float\":\"\",\"list_item_element_styles_show_advanced_css\":0,\"cellcid\":\"c4139\",\"drawerDisabled\":\"\",\"field_label\":\"Allow Centric Photo to contact you via text message about this order\",\"field_key\":\"allow_centric_photo_to_contact_you_via_text_message_about_this_order_1718568909770\",\"id\":44,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"\",\"parentType\":\"list\",\"element_templates\":[\"listradio\",\"input\"],\"old_classname\":\"list-radio\",\"wrap_template\":\"wrap\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":6,\"idAttribute\":\"id\",\"label\":\"Text order updates\",\"type\":\"html\",\"default\":\"<p>By providing a telephone number and submitting this form you are consenting to be contacted by SMS text message. Message &amp; data rates may apply. You can reply STOP to opt-out of further messaging.<br><\\\/p>\",\"container_class\":\"\",\"element_class\":\"\",\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_float\":\"\",\"wrap_styles_show_advanced_css\":0,\"label_styles_border\":\"\",\"label_styles_width\":\"\",\"label_styles_font-size\":\"\",\"label_styles_margin\":\"\",\"label_styles_padding\":\"\",\"label_styles_float\":\"\",\"label_styles_show_advanced_css\":0,\"element_styles_border\":\"\",\"element_styles_width\":\"\",\"element_styles_font-size\":\"\",\"element_styles_margin\":\"\",\"element_styles_padding\":\"\",\"element_styles_float\":\"\",\"element_styles_show_advanced_css\":0,\"key\":\"text_order_updates_1718667094745\",\"cellcid\":\"c4142\",\"drawerDisabled\":\"\",\"admin_label\":\"\",\"field_label\":\"Text order updates\",\"field_key\":\"text_order_updates_1718667094745\",\"id\":45,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"<p>By providing a telephone number and submitting this form you are consenting to be contacted by SMS text message. Message &amp; data rates may apply. You can reply STOP to opt-out of further messaging.<br><\\\/p>\",\"label_pos\":\"above\",\"parentType\":\"html\",\"element_templates\":[\"html\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":7,\"idAttribute\":\"id\",\"label\":\"Hidden\",\"type\":\"hidden\",\"key\":\"hidden_1778288471527\",\"default\":\"\",\"admin_label\":\"\",\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_float\":\"\",\"wrap_styles_show_advanced_css\":0,\"label_styles_border\":\"\",\"label_styles_width\":\"\",\"label_styles_font-size\":\"\",\"label_styles_margin\":\"\",\"label_styles_padding\":\"\",\"label_styles_float\":\"\",\"label_styles_show_advanced_css\":0,\"element_styles_border\":\"\",\"element_styles_width\":\"\",\"element_styles_font-size\":\"\",\"element_styles_margin\":\"\",\"element_styles_padding\":\"\",\"element_styles_float\":\"\",\"element_styles_show_advanced_css\":0,\"cellcid\":\"c4145\",\"manual_key\":true,\"drawerDisabled\":false,\"id\":53,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"\",\"label_pos\":\"above\",\"parentType\":\"hidden\",\"element_templates\":[\"hidden\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap-no-label\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":8,\"idAttribute\":\"id\",\"label\":\"Order details\",\"type\":\"textarea\",\"key\":\"order_details_1695134695986\",\"label_pos\":\"above\",\"required\":1,\"default\":\"\",\"placeholder\":\"\",\"container_class\":\"\",\"element_class\":\"\",\"input_limit\":\"\",\"input_limit_type\":\"characters\",\"input_limit_msg\":\"Character(s) left\",\"manual_key\":1,\"admin_label\":\"\",\"help_text\":\"\",\"textarea_rte\":\"\",\"disable_rte_mobile\":\"\",\"textarea_media\":\"\",\"drawerDisabled\":\"\",\"field_label\":\"Order details\",\"field_key\":\"order_details_1695134695986\",\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_float\":\"\",\"wrap_styles_show_advanced_css\":0,\"label_styles_border\":\"\",\"label_styles_width\":\"\",\"label_styles_font-size\":\"\",\"label_styles_margin\":\"\",\"label_styles_padding\":\"\",\"label_styles_float\":\"\",\"label_styles_show_advanced_css\":0,\"element_styles_border\":\"\",\"element_styles_width\":\"\",\"element_styles_font-size\":\"\",\"element_styles_margin\":\"\",\"element_styles_padding\":\"\",\"element_styles_float\":\"\",\"element_styles_show_advanced_css\":0,\"cellcid\":\"c4148\",\"value\":\"\",\"id\":47,\"beforeField\":\"\",\"afterField\":\"\",\"parentType\":\"textarea\",\"element_templates\":[\"textarea\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":10,\"idAttribute\":\"id\",\"label\":\"File Upload Settings\",\"type\":\"note\",\"default\":\"<p>If you look at the File Upload field below, you'll see several settings we've configured.<\\\/p>\\n<ol>\\n<li> We've restricted the file types to pdf, doc, docx.<\\\/li>\\n<li>We're saving the file to the WordPress media library.<\\\/li>\\n\\n<li>The default file limit is 1.<br><\\\/li>\\n<\\\/ol>\\n  <a href=\\\"https:\\\/\\\/ninjaforms.com\\\/docs\\\/file-uploads\\\/\\\" target=\\\"_blank\\\" class=\\\"nf-button primary\\\">Learn more about File Upload fields<\\\/a>\",\"value_mirror\":\"<p>If you look at the File Upload field below, you'll see several settings we've configured.<\\\/p>\\n<ol>\\n<li> We've restricted the file types to pdf, doc, docx.<\\\/li>\\n<li>We're saving the file to the WordPress media library.<\\\/li>\\n\\n<li>The default file limit is 1.<br><\\\/li>\\n<\\\/ol>\\n  <a href=\\\"https:\\\/\\\/ninjaforms.com\\\/docs\\\/file-uploads\\\/\\\" target=\\\"_blank\\\" class=\\\"nf-button primary\\\">Learn more about File Upload fields<\\\/a>\",\"key\":\"file_upload_settings_1524664639884\",\"drawerDisabled\":\"\",\"field_label\":\"File Upload Settings\",\"field_key\":\"file_upload_settings_1524664639884\",\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_float\":\"\",\"wrap_styles_show_advanced_css\":0,\"label_styles_border\":\"\",\"label_styles_width\":\"\",\"label_styles_font-size\":\"\",\"label_styles_margin\":\"\",\"label_styles_padding\":\"\",\"label_styles_float\":\"\",\"label_styles_show_advanced_css\":0,\"element_styles_border\":\"\",\"element_styles_width\":\"\",\"element_styles_font-size\":\"\",\"element_styles_margin\":\"\",\"element_styles_padding\":\"\",\"element_styles_float\":\"\",\"element_styles_show_advanced_css\":0,\"cellcid\":\"c4151\",\"id\":48,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"<p>If you look at the File Upload field below, you'll see several settings we've configured.<\\\/p>\\n<ol>\\n<li> We've restricted the file types to pdf, doc, docx.<\\\/li>\\n<li>We're saving the file to the WordPress media library.<\\\/li>\\n\\n<li>The default file limit is 1.<br><\\\/li>\\n<\\\/ol>\\n  <a href=\\\"https:\\\/\\\/ninjaforms.com\\\/docs\\\/file-uploads\\\/\\\" target=\\\"_blank\\\" class=\\\"nf-button primary\\\">Learn more about File Upload fields<\\\/a>\",\"label_pos\":\"above\",\"parentType\":\"note\",\"element_templates\":[\"null\",\"hidden\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap-no-label\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":11,\"idAttribute\":\"id\",\"type\":\"file_upload\",\"label\":\"Your files (Must be .jpeg, .jpg, JPG, .heic, .tif, .TIF, .tiff, .TIFF .psd .png .mp4 .pdf, .doc, or .docx), .zip, mov, .dng\",\"key\":\"your_files_must_be_jpeg_jpg_jpg_heic_tif_tif_tiff_tiff_psd_png_mp4_pdf_doc_or_docx_zip_mov_dng_1760983380996\",\"label_pos\":\"above\",\"required\":\"\",\"container_class\":\"\",\"element_class\":\"\",\"manual_key\":\"\",\"help_text\":\"\",\"save_to_server\":1,\"upload_rename\":\"\",\"media_library\":1,\"upload_multi_count\":50,\"max_file_size\":1073741824,\"upload_types\":\".gif,.jpeg,.JEPG,.jpg,.JPG,.heic,.png,.bmp,.tif,.TIF,.tiff,.TIFF,.psd,.pdf,.doc,.docx,.mp4,.zip,.mov,.dng,.DNG,.pages\",\"select_files_text\":\"Select Files\",\"drawerDisabled\":false,\"field_label\":\"Your files (Must be .jpeg, .jpg, JPG, .heic, .tif, .TIF, .tiff, .TIFF .psd .png .mp4 .pdf, .doc, or .docx), .zip, mov, .dng\",\"field_key\":\"your_files_must_be_jpeg_jpg_jpg_heic_tif_tif_tiff_tiff_psd_png_mp4_pdf_doc_or_docx_zip_mov_dng_1760983380996\",\"wrap_styles_show_advanced_css\":0,\"label_styles_show_advanced_css\":0,\"element_styles_show_advanced_css\":0,\"progress_bar_styles_show_advanced_css\":0,\"progress_bar_background_styles_show_advanced_css\":0,\"upload_files_list_styles_show_advanced_css\":0,\"upload_file_delete_styles_show_advanced_css\":0,\"submit_element_hover_styles_show_advanced_css\":0,\"min_file_size\":0,\"cancel_upload_text\":\"Cancel\",\"cellcid\":\"c4154\",\"desc_text\":\"<p><br><\\\/p>\",\"wrap_styles_border\":\"\",\"wrap_styles_width\":\"\",\"wrap_styles_margin\":\"\",\"wrap_styles_padding\":\"\",\"wrap_styles_float\":\"\",\"label_styles_border\":\"\",\"label_styles_width\":\"\",\"label_styles_font-size\":\"\",\"label_styles_margin\":\"\",\"label_styles_padding\":\"\",\"label_styles_float\":\"\",\"element_styles_border\":\"\",\"element_styles_width\":\"\",\"element_styles_font-size\":\"\",\"element_styles_margin\":\"\",\"element_styles_padding\":\"\",\"element_styles_float\":\"\",\"progress_bar_styles_border\":\"\",\"progress_bar_styles_height\":\"\",\"progress_bar_styles_width\":\"\",\"progress_bar_styles_font-size\":\"\",\"progress_bar_styles_margin\":\"\",\"progress_bar_styles_padding\":\"\",\"progress_bar_styles_float\":\"\",\"progress_bar_background_styles_border\":\"\",\"progress_bar_background_styles_height\":\"\",\"progress_bar_background_styles_width\":\"\",\"progress_bar_background_styles_font-size\":\"\",\"progress_bar_background_styles_margin\":\"\",\"progress_bar_background_styles_padding\":\"\",\"progress_bar_background_styles_float\":\"\",\"upload_files_list_styles_border\":\"\",\"upload_files_list_styles_height\":\"\",\"upload_files_list_styles_width\":\"\",\"upload_files_list_styles_font-size\":\"\",\"upload_files_list_styles_margin\":\"\",\"upload_files_list_styles_padding\":\"\",\"upload_files_list_styles_float\":\"\",\"upload_file_delete_styles_border\":\"\",\"upload_file_delete_styles_height\":\"\",\"upload_file_delete_styles_width\":\"\",\"upload_file_delete_styles_font-size\":\"\",\"upload_file_delete_styles_margin\":\"\",\"upload_file_delete_styles_padding\":\"\",\"upload_file_delete_styles_float\":\"\",\"submit_element_hover_styles_border\":\"\",\"submit_element_hover_styles_width\":\"\",\"submit_element_hover_styles_font-size\":\"\",\"submit_element_hover_styles_margin\":\"\",\"submit_element_hover_styles_padding\":\"\",\"submit_element_hover_styles_float\":\"\",\"id\":49,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"\",\"parentType\":\"textbox\",\"element_templates\":[\"file_upload\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap\",\"max_chunk_size\":120795955,\"max_file_size_mb\":1024,\"min_file_size_mb\":0,\"uploadNonce\":\"554666a952\",\"uploadNonceExpiry\":1788376354},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":12,\"idAttribute\":\"id\",\"type\":\"submit\",\"label\":\"Submit\",\"processing_label\":\"Processing\",\"container_class\":\"\",\"element_class\":\"\",\"key\":\"submit_1524664233742\",\"field_label\":\"Submit\",\"field_key\":\"submit_1524664233742\",\"wrap_styles_show_advanced_css\":0,\"element_styles_show_advanced_css\":0,\"submit_element_hover_styles_show_advanced_css\":0,\"cellcid\":\"c4157\",\"admin_label\":\"\",\"id\":50,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"\",\"label_pos\":\"above\",\"parentType\":\"textbox\",\"element_templates\":[\"submit\",\"button\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap-no-label\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":13,\"idAttribute\":\"id\",\"type\":\"hidden\",\"label\":\"Hidden\",\"key\":\"hidden_1778356208279\",\"default\":\"\",\"admin_label\":\"\",\"wrap_styles_show_advanced_css\":0,\"label_styles_show_advanced_css\":0,\"element_styles_show_advanced_css\":0,\"cellcid\":\"c4160\",\"id\":52,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"\",\"label_pos\":\"above\",\"parentType\":\"hidden\",\"element_templates\":[\"hidden\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap-no-label\"},{\"objectType\":\"Field\",\"objectDomain\":\"fields\",\"editActive\":false,\"order\":14,\"idAttribute\":\"id\",\"label\":\"Google Drive\",\"key\":\"integrate_google_drive_1779661983762\",\"type\":\"unknown\",\"message\":\"Field type &quot;integrate_google_drive&quot; not found.\",\"wrap_styles_show_advanced_css\":0,\"label_styles_show_advanced_css\":0,\"element_styles_show_advanced_css\":0,\"cellcid\":\"c4163\",\"id\":54,\"beforeField\":\"\",\"afterField\":\"\",\"value\":\"\",\"label_pos\":\"above\",\"parentType\":\"unknown\",\"element_templates\":[\"null\",\"hidden\",\"input\"],\"old_classname\":\"\",\"wrap_template\":\"wrap-no-label\"}];nfForms.push(form);<\/script>\n                <script id=\"nf-tmpl-cell\" type=\"text\/template\">\n            <nf-fields><\/nf-fields>\n        <\/script>\n\n        <script id=\"nf-tmpl-row\" type=\"text\/template\">\n            <nf-cells><\/nf-cells>\n        <\/script>\n\n        <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Curious how your photo will fit the print? Show me &#9662; Welcome to the aspect-ratio dance. Your phone shoots photos in one shape, print paper comes in another, and the two almost never line up on their own. So your picture has to either step in close (and lose a sliver at the edges) or [&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":{"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-3910","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/pages\/3910","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/comments?post=3910"}],"version-history":[{"count":43,"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/pages\/3910\/revisions"}],"predecessor-version":[{"id":4336,"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/pages\/3910\/revisions\/4336"}],"wp:attachment":[{"href":"https:\/\/centricframing.com\/centricphoto\/wp-json\/wp\/v2\/media?parent=3910"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}