shadcn.io is not affiliated with official shadcn/ui
Custom Quote Pricing Block for React
A quote request for a security platform: the pitch and three ruled points beside a short form whose submit button sits inside the first screen, and a confirmation that takes focus once it's sent.
Installation
Overview
Capture enterprise leads without a sales page in the way: the form is the feature. The page's side rails and one top rule frame the section, and a single hairline splits it in two, meeting the top rule with a plus mark. The left half is a short pitch for a security operations platform, "Security operations, quoted to fit", with the starting price in one sentence, three selling points as ruled rows with small icon tiles and a line of audit badges. The right half is the quote request: company and work email side by side, a Select for how much data you ingest each day, a short Textarea for what you monitor today, each with its own Field label, and a Shine Button in the theme's primary colour that submits it; it is the only coloured control and it sits inside the first screen of a laptop. Once sent, a confirmation fades in over the form in the same space and offers to start a new request. Built with Guides, Field, Input, Select, Textarea, Button, Shine Button and Lucide icons, with CSS transitions only. For enterprise sales pages, custom solution pricing, B2B lead generation and high-touch sales funnels.
FAQ
How do I change the pitch, the selling points and the form's fields?
The headline and sentence are written in the markup. POINTS holds the three ruled rows, each with a title, a description and a Lucide icon, and ASSURANCE the line under them. VOLUMES lists the options of the daily volume select: an array of label and value, also passed to Select as items so it can show the chosen label. To add a field, copy one of the form's Field blocks and give its control a name, so it's part of what the form submits. Keep the form to about five visible fields: each one you add pushes the button toward the fold.
How do I send the request to my CRM?
The form submits company, email, volume and monitoring, by name. In submit, read them with new FormData(event.currentTarget) and post them to your own endpoint, which forwards them to your CRM or sales inbox; show the confirmation once that request succeeds, and an error beside the button if it fails. Use the volume to route larger accounts to senior sales staff.
Is the form accessible?
Yes. Every control has a visible label tied to it, the company and the work email are required and checked by the browser before the form is sent, and the email field is an email input with autocomplete, so phones offer the right keyboard and browsers can fill it in. The form is a named form region. Once the request is sent, focus moves to the "Request received" heading, so screen readers read the confirmation at once; Submit another request brings back an empty form and moves focus to its heading. Focus only moves after the visitor acts, never on page load.
Why doesn't the form's half change size when the confirmation appears?
The form and the confirmation sit in the same grid cell, so the cell is always as tall as the form. When the request is sent, the form stays in place but is hidden and made inert, so it can't be focused or read, and the confirmation fades in over it. Under reduced motion it appears without the fade.
How does the layout adapt to phones?
From the lg breakpoint the pitch and the form sit side by side, split by a vertical hairline, with the headline and sentence at the top of the left half. Below it the order is the headline and sentence, then the form, then the three points and the badges, so the submit button is reached within a screen and a half. Company and work email share a row from the sm breakpoint and stack on a phone, and every field takes the full width.
When should I use a custom quote form instead of fixed tiers?
Use a quote form when the price depends on things a tier can't capture, such as data volume, seat count, compliance or contract terms, and when a conversation with sales is part of buying. Keep fixed tiers for self-serve plans, and link to this form from an Enterprise tier for the rest.
Related
- Pro
Sales Call Scheduler Pricing
Sales and partnersEnterprise pricing by conversation: a scheduler with a strip of the next five working days and a grid of time slots in the visitor's own time zone, then a confirmation.
- Pro
Enterprise Custom Pricing
Sales and partnersAn enterprise pricing band for a cloud that follows the page theme: the title beside a raised card with a Custom price and a call to sales, then three columns of capabilities and customer wordmarks, with the list collapsed on phones.
- Pro
Negotiable Pricing
CalculatorsPricing that starts from a range: seats and contract length produce a per-seat estimate drawn as a band on a scale with the list price marked, and a field for your own target price that sends it to sales.
- 123123Pro
Split Layout Pricing
Single planA product-led split: a mock of the app built from our own components with numbered callouts on it, matching a 'what you get' list, beside the one plan as a card in a card with a monthly and yearly switch.
- Pro
Government Plan Pricing
Comparison tablesGovernment pricing led by its compliance: a strip of large certification cells under the heading, then one table comparing three annual plans, with specialist terms explained on demand.
- Pro
White Label Pricing
Sales and partnersA live brand preview for a white-label program: type a brand name and pick an accent colour, and a mock client dashboard restyles as you go, beside the Partner plan.