Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

617 рядки
21KB

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6. <meta
  7. name="description"
  8. content="Order professional purple ballot envelope addressing, USPS barcode preparation, data processing, and mailing services."
  9. />
  10. <title>Purple Envelope Addressing & Barcoding</title>
  11. <link rel="preconnect" href="https://fonts.googleapis.com">
  12. <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  13. <link
  14. href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"
  15. rel="stylesheet"
  16. />
  17. <link rel="stylesheet" href="styles.css" />
  18. </head>
  19. <body>
  20. <header class="site-header">
  21. <div class="container nav-wrap">
  22. <a class="brand" href="#top" aria-label="Purple Envelope home">
  23. <span class="brand-mark" aria-hidden="true">PE</span>
  24. <span>
  25. <strong>Purple Envelope</strong>
  26. <small>Addressing & Barcoding</small>
  27. </span>
  28. </a>
  29. <nav class="main-nav" aria-label="Primary navigation">
  30. <a href="#services">Services</a>
  31. <a href="#process">Process</a>
  32. <a href="#order">Order</a>
  33. <a href="#faq">FAQ</a>
  34. </nav>
  35. <a class="button button-small button-outline" href="#order">Start an order</a>
  36. </div>
  37. </header>
  38. <main id="top">
  39. <section class="hero">
  40. <div class="container hero-grid">
  41. <div class="hero-copy">
  42. <span class="eyebrow">Election mail production made simple</span>
  43. <h1>Accurate purple envelope addressing and USPS barcode preparation.</h1>
  44. <p class="hero-lead">
  45. Upload your voter or recipient list, select your production options,
  46. and receive a clear order total before submitting your job.
  47. </p>
  48. <div class="hero-actions">
  49. <a class="button button-primary" href="#order">Build your order</a>
  50. <a class="button button-secondary" href="#services">View services</a>
  51. </div>
  52. <ul class="trust-list" aria-label="Service benefits">
  53. <li>Secure data handling</li>
  54. <li>Address formatting and validation</li>
  55. <li>Intelligent Mail barcode preparation</li>
  56. </ul>
  57. </div>
  58. <div class="hero-visual" aria-label="Sample addressed purple envelope">
  59. <div class="envelope-card">
  60. <div class="envelope-top">
  61. <span class="sample-label">ADDRESS SERVICE REQUESTED</span>
  62. <span class="permit">PRESORTED<br>FIRST-CLASS MAIL</span>
  63. </div>
  64. <div class="recipient-block">
  65. <strong>JANE SAMPLE</strong>
  66. <span>1234 EXAMPLE AVENUE</span>
  67. <span>GRAND RAPIDS MI 49503-1234</span>
  68. </div>
  69. <div class="barcode" aria-label="Sample barcode">
  70. <span></span><span></span><span></span><span></span><span></span>
  71. <span></span><span></span><span></span><span></span><span></span>
  72. <span></span><span></span><span></span><span></span><span></span>
  73. <span></span><span></span><span></span><span></span><span></span>
  74. <span></span><span></span><span></span><span></span><span></span>
  75. <span></span><span></span><span></span><span></span><span></span>
  76. <span></span><span></span><span></span><span></span><span></span>
  77. <span></span><span></span><span></span><span></span><span></span>
  78. </div>
  79. <div class="envelope-seal" aria-hidden="true"></div>
  80. </div>
  81. <div class="stat-card stat-card-one">
  82. <strong>99.9%</strong>
  83. <span>production accuracy goal</span>
  84. </div>
  85. <div class="stat-card stat-card-two">
  86. <strong>Fast</strong>
  87. <span>proof approval workflow</span>
  88. </div>
  89. </div>
  90. </div>
  91. </section>
  92. <section class="service-strip" aria-label="Service highlights">
  93. <div class="container service-strip-grid">
  94. <div>
  95. <strong>Address cleanup</strong>
  96. <span>Standardized mailing fields</span>
  97. </div>
  98. <div>
  99. <strong>USPS barcode setup</strong>
  100. <span>IMb-ready production data</span>
  101. </div>
  102. <div>
  103. <strong>Inkjet addressing</strong>
  104. <span>Clear, machine-readable output</span>
  105. </div>
  106. <div>
  107. <strong>Proof approval</strong>
  108. <span>Review before production begins</span>
  109. </div>
  110. </div>
  111. </section>
  112. <section class="section" id="services">
  113. <div class="container">
  114. <div class="section-heading">
  115. <span class="eyebrow">Complete production support</span>
  116. <h2>Everything needed to prepare your ballot envelopes.</h2>
  117. <p>
  118. Choose only the services you need, from basic addressing to a
  119. complete data-processing and mailing workflow.
  120. </p>
  121. </div>
  122. <div class="card-grid">
  123. <article class="feature-card">
  124. <span class="feature-number">01</span>
  125. <h3>Recipient addressing</h3>
  126. <p>
  127. Print recipient names, delivery addresses, city, state, ZIP Code,
  128. return-service endorsements, and optional identifiers.
  129. </p>
  130. </article>
  131. <article class="feature-card">
  132. <span class="feature-number">02</span>
  133. <h3>Barcode preparation</h3>
  134. <p>
  135. Prepare and print Intelligent Mail barcode data using the mailing
  136. fields and identifiers supplied for your project.
  137. </p>
  138. </article>
  139. <article class="feature-card">
  140. <span class="feature-number">03</span>
  141. <h3>List processing</h3>
  142. <p>
  143. Review column structure, remove obvious formatting problems,
  144. standardize capitalization, and identify incomplete records.
  145. </p>
  146. </article>
  147. <article class="feature-card">
  148. <span class="feature-number">04</span>
  149. <h3>Proof and production</h3>
  150. <p>
  151. Receive a digital sample for approval before the full envelope
  152. run enters production.
  153. </p>
  154. </article>
  155. </div>
  156. </div>
  157. </section>
  158. <section class="section section-muted" id="process">
  159. <div class="container">
  160. <div class="section-heading centered">
  161. <span class="eyebrow">Simple four-step workflow</span>
  162. <h2>From uploaded list to completed order.</h2>
  163. </div>
  164. <div class="process-grid">
  165. <div class="process-step">
  166. <span>1</span>
  167. <h3>Enter job details</h3>
  168. <p>Provide quantity, envelope specifications, and due date.</p>
  169. </div>
  170. <div class="process-step">
  171. <span>2</span>
  172. <h3>Upload your files</h3>
  173. <p>Add recipient data, artwork, instructions, or a sample envelope.</p>
  174. </div>
  175. <div class="process-step">
  176. <span>3</span>
  177. <h3>Approve your proof</h3>
  178. <p>Review the address placement and sample barcode before printing.</p>
  179. </div>
  180. <div class="process-step">
  181. <span>4</span>
  182. <h3>Production begins</h3>
  183. <p>Your approved job is addressed, checked, packed, and delivered.</p>
  184. </div>
  185. </div>
  186. </div>
  187. </section>
  188. <section class="section order-section" id="order">
  189. <div class="container">
  190. <div class="section-heading">
  191. <span class="eyebrow">Online order request</span>
  192. <h2>Build your envelope addressing order.</h2>
  193. <p>
  194. This form calculates an estimate. Final pricing can be confirmed
  195. after your data and production requirements are reviewed.
  196. </p>
  197. </div>
  198. <form class="order-layout" id="orderForm">
  199. <div class="form-panel">
  200. <fieldset class="form-section">
  201. <legend>
  202. <span>1</span>
  203. Contact information
  204. </legend>
  205. <div class="form-grid two-columns">
  206. <label>
  207. Full name
  208. <input type="text" name="fullName" autocomplete="name" required />
  209. </label>
  210. <label>
  211. Organization
  212. <input type="text" name="organization" autocomplete="organization" />
  213. </label>
  214. <label>
  215. Email address
  216. <input type="email" name="email" autocomplete="email" required />
  217. </label>
  218. <label>
  219. Phone number
  220. <input type="tel" name="phone" autocomplete="tel" required />
  221. </label>
  222. </div>
  223. </fieldset>
  224. <fieldset class="form-section">
  225. <legend>
  226. <span>2</span>
  227. Job specifications
  228. </legend>
  229. <div class="form-grid two-columns">
  230. <label>
  231. Number of envelopes
  232. <input
  233. id="quantity"
  234. type="number"
  235. name="quantity"
  236. min="100"
  237. step="50"
  238. value="1000"
  239. required
  240. />
  241. <small>Minimum order: 100 envelopes</small>
  242. </label>
  243. <label>
  244. Requested completion date
  245. <input type="date" name="dueDate" required />
  246. </label>
  247. <label>
  248. Envelope size
  249. <select name="envelopeSize" id="envelopeSize">
  250. <option value="standard">Standard ballot envelope</option>
  251. <option value="large">Large ballot envelope</option>
  252. <option value="custom">Custom size</option>
  253. </select>
  254. </label>
  255. <label>
  256. Envelope supply
  257. <select name="envelopeSupply" id="envelopeSupply">
  258. <option value="customer">I will supply the envelopes</option>
  259. <option value="vendor">Please supply the envelopes</option>
  260. </select>
  261. </label>
  262. <label>
  263. Turnaround
  264. <select name="turnaround" id="turnaround">
  265. <option value="standard">Standard — 5 to 7 business days</option>
  266. <option value="rush">Rush — 2 to 3 business days</option>
  267. </select>
  268. </label>
  269. <label>
  270. Ink color
  271. <select name="inkColor">
  272. <option>Black</option>
  273. <option>Blue</option>
  274. <option>Custom color review</option>
  275. </select>
  276. </label>
  277. </div>
  278. </fieldset>
  279. <fieldset class="form-section">
  280. <legend>
  281. <span>3</span>
  282. Services
  283. </legend>
  284. <div class="option-grid">
  285. <label class="option-card">
  286. <input
  287. type="checkbox"
  288. name="services"
  289. value="addressing"
  290. data-label="Envelope addressing"
  291. data-rate="0.12"
  292. checked
  293. />
  294. <span>
  295. <strong>Envelope addressing</strong>
  296. <small>Recipient name and mailing address</small>
  297. </span>
  298. <b>$0.12 each</b>
  299. </label>
  300. <label class="option-card">
  301. <input
  302. type="checkbox"
  303. name="services"
  304. value="barcode"
  305. data-label="IMb barcode preparation"
  306. data-rate="0.045"
  307. checked
  308. />
  309. <span>
  310. <strong>IMb barcode preparation</strong>
  311. <small>Barcode data setup and printing</small>
  312. </span>
  313. <b>$0.045 each</b>
  314. </label>
  315. <label class="option-card">
  316. <input
  317. type="checkbox"
  318. name="services"
  319. value="cleanup"
  320. data-label="Data cleanup"
  321. data-flat="75"
  322. />
  323. <span>
  324. <strong>Data cleanup</strong>
  325. <small>Formatting review and exception report</small>
  326. </span>
  327. <b>$75 flat</b>
  328. </label>
  329. <label class="option-card">
  330. <input
  331. type="checkbox"
  332. name="services"
  333. value="casing"
  334. data-label="Address casing"
  335. data-rate="0.025"
  336. />
  337. <span>
  338. <strong>Insert and seal</strong>
  339. <small>Insert supplied material and seal envelopes</small>
  340. </span>
  341. <b>$0.025 each</b>
  342. </label>
  343. <label class="option-card">
  344. <input
  345. type="checkbox"
  346. name="services"
  347. value="proof"
  348. data-label="Printed production proof"
  349. data-flat="35"
  350. />
  351. <span>
  352. <strong>Printed production proof</strong>
  353. <small>Physical proof shipped before production</small>
  354. </span>
  355. <b>$35 flat</b>
  356. </label>
  357. <label class="option-card">
  358. <input
  359. type="checkbox"
  360. name="services"
  361. value="delivery"
  362. data-label="Local delivery"
  363. data-flat="45"
  364. />
  365. <span>
  366. <strong>Local delivery</strong>
  367. <small>Delivery within the designated service area</small>
  368. </span>
  369. <b>$45 flat</b>
  370. </label>
  371. </div>
  372. </fieldset>
  373. <fieldset class="form-section">
  374. <legend>
  375. <span>4</span>
  376. Files and instructions
  377. </legend>
  378. <div class="upload-grid">
  379. <label class="upload-box">
  380. <input type="file" name="dataFile" accept=".csv,.xlsx,.xls,.txt" />
  381. <span class="upload-icon" aria-hidden="true">↑</span>
  382. <strong>Recipient data file</strong>
  383. <small>CSV, Excel, or tab-delimited text</small>
  384. </label>
  385. <label class="upload-box">
  386. <input type="file" name="artworkFile" accept=".pdf,.jpg,.jpeg,.png" />
  387. <span class="upload-icon" aria-hidden="true">↑</span>
  388. <strong>Artwork or sample</strong>
  389. <small>PDF, JPG, or PNG</small>
  390. </label>
  391. </div>
  392. <label class="full-width">
  393. Special instructions
  394. <textarea
  395. name="instructions"
  396. rows="6"
  397. placeholder="Describe placement requirements, barcode fields, endorsements, sorting, packing, delivery, or other instructions."
  398. ></textarea>
  399. </label>
  400. <label class="agreement">
  401. <input type="checkbox" required />
  402. <span>
  403. I confirm that I am authorized to submit this data and request
  404. production services for this mailing.
  405. </span>
  406. </label>
  407. </fieldset>
  408. </div>
  409. <aside class="summary-panel" aria-label="Order estimate">
  410. <div class="summary-sticky">
  411. <span class="eyebrow">Estimated order</span>
  412. <h3>Order summary</h3>
  413. <div class="summary-line">
  414. <span>Quantity</span>
  415. <strong id="summaryQuantity">1,000</strong>
  416. </div>
  417. <div id="serviceSummary" class="service-summary"></div>
  418. <div class="summary-line">
  419. <span>Setup fee</span>
  420. <strong id="setupFee">$45.00</strong>
  421. </div>
  422. <div class="summary-line rush-line" id="rushLine" hidden>
  423. <span>Rush surcharge</span>
  424. <strong id="rushFee">$0.00</strong>
  425. </div>
  426. <div class="summary-total">
  427. <span>Estimated total</span>
  428. <strong id="estimatedTotal">$210.00</strong>
  429. </div>
  430. <p class="summary-note">
  431. Postage, taxes, shipping, envelope stock, and unusual data work
  432. are not included unless selected or quoted separately.
  433. </p>
  434. <button class="button button-primary button-full" type="submit">
  435. Submit order request
  436. </button>
  437. <p class="secure-note">
  438. Your data should be transmitted using your organization’s
  439. approved secure process before production.
  440. </p>
  441. </div>
  442. </aside>
  443. </form>
  444. </div>
  445. </section>
  446. <section class="section section-muted" id="faq">
  447. <div class="container faq-layout">
  448. <div class="section-heading">
  449. <span class="eyebrow">Frequently asked questions</span>
  450. <h2>Ordering and production details.</h2>
  451. </div>
  452. <div class="faq-list">
  453. <details open>
  454. <summary>What file formats can I upload?</summary>
  455. <p>
  456. CSV and Excel files are preferred. Clearly labeled columns should
  457. include the recipient name, delivery address, city, state, ZIP
  458. Code, and any barcode-related fields required for the project.
  459. </p>
  460. </details>
  461. <details>
  462. <summary>Will I receive a proof?</summary>
  463. <p>
  464. Yes. A digital proof can be provided before production. A printed
  465. physical proof can also be selected as an additional service.
  466. </p>
  467. </details>
  468. <details>
  469. <summary>Does the estimate include postage?</summary>
  470. <p>
  471. No. Postage depends on the mailing class, presort results, entry
  472. location, and current postal requirements. It should be quoted
  473. separately after the mailing data is reviewed.
  474. </p>
  475. </details>
  476. <details>
  477. <summary>Can you supply the purple envelopes?</summary>
  478. <p>
  479. Yes. Select “Please supply the envelopes” in the order form.
  480. Stock, color, size, window configuration, and availability will
  481. be confirmed before production.
  482. </p>
  483. </details>
  484. </div>
  485. </div>
  486. </section>
  487. <section class="cta-section">
  488. <div class="container cta-card">
  489. <div>
  490. <span class="eyebrow">Need a custom production quote?</span>
  491. <h2>Large quantities and special ballot configurations are welcome.</h2>
  492. </div>
  493. <a class="button button-light" href="#order">Request pricing</a>
  494. </div>
  495. </section>
  496. </main>
  497. <footer class="site-footer">
  498. <div class="container footer-grid">
  499. <div>
  500. <a class="brand footer-brand" href="#top">
  501. <span class="brand-mark" aria-hidden="true">PE</span>
  502. <span>
  503. <strong>Purple Envelope</strong>
  504. <small>Addressing & Barcoding</small>
  505. </span>
  506. </a>
  507. <p>
  508. Professional envelope data preparation, addressing, barcode printing,
  509. proofing, and production support.
  510. </p>
  511. </div>
  512. <div>
  513. <strong>Services</strong>
  514. <a href="#services">Addressing</a>
  515. <a href="#services">Barcoding</a>
  516. <a href="#services">Data processing</a>
  517. </div>
  518. <div>
  519. <strong>Ordering</strong>
  520. <a href="#process">How it works</a>
  521. <a href="#order">Get an estimate</a>
  522. <a href="#faq">FAQ</a>
  523. </div>
  524. <div>
  525. <strong>Contact</strong>
  526. <a href="mailto:orders@example.com">orders@example.com</a>
  527. <a href="tel:+15555550100">(555) 555-0100</a>
  528. <span>Monday–Friday, 8:00 AM–5:00 PM</span>
  529. </div>
  530. </div>
  531. <div class="container footer-bottom">
  532. <span>&copy; <span id="year"></span> Purple Envelope Services.</span>
  533. <span>Privacy · Terms · Data security</span>
  534. </div>
  535. </footer>
  536. <dialog id="confirmationDialog">
  537. <div class="dialog-content">
  538. <button class="dialog-close" type="button" aria-label="Close">&times;</button>
  539. <span class="dialog-icon" aria-hidden="true">✓</span>
  540. <h2>Order request ready</h2>
  541. <p>
  542. The front-end form is working. Connect this form to your server-side
  543. order endpoint, payment system, CRM, or email workflow to process live orders.
  544. </p>
  545. <button class="button button-primary dialog-button" type="button">Close</button>
  546. </div>
  547. </dialog>
  548. <script src="script.js"></script>
  549. </body>
  550. </html>

Powered by TurnKey Linux.