order: payment-first express checkout + fix dead Tawk chat widget

Conversion fix for the checkout drop-off (54 sessions reached an /order/ page
over 3 days, 0 advanced to payment). Root cause was friction, not a bug: every
order page dropped a cold email-click straight into a 28-field intake Wizard
before showing any payment option.

- New ExpressCheckout.astro: payment-first entry. Shows price + the minimal
  fields the API needs (prefilled from public records: ?dot= FMCSA census for
  trucking, ?npi= NPPES lookup for healthcare) + Continue to payment. Creates a
  single-service batch-of-one (POST /compliance-orders/batch, which does NOT
  gate Stripe on intake_data_validated) then create-session -> Stripe. Full
  intake is collected AFTER payment via the per-service 'Complete Your Intake
  Form' email the webhook already sends (links to /order/<slug>?order=CO-xxx,
  which re-enters the Wizard in paid-intake mode).

- New OrderFlow.astro: single source of truth replacing ~50 near-identical thin
  Wizard wrappers. Trucking + healthcare default to payment-first (express on
  top, marketing hero moved BELOW the CTA). Telecom + corporate keep Wizard-first
  (rich pre-payment FCC/499 intake, no public-records prefill). Paid-intake
  re-entry (?order=/?token=) always renders the full Wizard.

- Rewrote all 50 /order/*.astro pages to use OrderFlow (foreign-qualification
  keeps its multi-state toggle via slotted content).

- Fixed the dead Tawk.to live-chat widget site-wide: the snippet set an invalid
  crossorigin='*' attribute, forcing the browser into anonymous CORS mode and
  blocking the script (0 chat requests fired anywhere). Removed it to match
  Tawk's official snippet (footer partial + 73 static public/*.html files).

Verified: build clean; express on top with hero below; ?dot=/?npi= prefill;
paid-intake re-entry swaps to Wizard; telecom stays wizard-first; batch-of-one
-> live Stripe URL; both POST endpoints allow the prod origin via CORS.
This commit is contained in:
justin 2026-06-25 11:32:48 -05:00
parent ae68edbc58
commit 618fafe1d5
126 changed files with 766 additions and 1518 deletions

View file

@ -0,0 +1,363 @@
---
/**
* ExpressCheckout — payment-first order entry.
*
* The high-friction problem this solves: every /order/<slug> page used to drop a
* cold email-click straight into a 28-field intake Wizard BEFORE the visitor
* saw a payment option. Funnel data showed 100% drop at that step (54 reached
* the order page over 3 days, 0 advanced to payment). Asking a stranger to do
* 10 minutes of data entry before earning the sale is the classic conversion
* killer.
*
* The fix (modeled on the batch / compliance-check flow): collect only the
* minimal fields the API needs to CREATE the order + charge, then go straight to
* Stripe. The full intake is collected AFTER payment via the per-service
* "Complete Your Intake Form" email the webhook already sends (links back into
* the Wizard in paid-intake mode at /order/<slug>?order=CO-xxx).
*
* Implementation: creates a single-service "batch of one" via
* POST /api/v1/compliance-orders/batch (which, unlike the single-order create +
* /validate path, does NOT gate Stripe checkout on intake_data_validated), then
* POST /api/v1/checkout/create-session with order_type=compliance_batch and
* redirects to the returned checkout_url.
*
* Prefill: the minimal fields auto-populate from public records exactly like the
* Wizard does — ?dot=NNNN pulls the FMCSA census (trucking), ?npi=NNNN runs an
* NPPES lookup (healthcare). The visitor confirms a couple of numbers and pays.
*
* Verticals with rich pre-payment intake that the API genuinely needs up front
* (telecom 499 / corporate, which have no public-records prefill and many
* conditional fields) keep the Wizard-first flow — those are gated by the
* `express` prop the page sets (see OrderFlow.astro).
*/
import { SERVICE_META, formatUSD, slugVertical } from "../../lib/intake_manifest";
import OrderPriceBanner from "../OrderPriceBanner.astro";
import CheckoutTrustBand from "../CheckoutTrustBand.astro";
export interface Props {
service_slug: string;
/** Optional override of the human service name (e.g. foreign-qualification). */
name?: string;
}
const { service_slug, name } = Astro.props;
const meta = SERVICE_META[service_slug];
const vertical = slugVertical(service_slug);
const serviceName = name || meta?.name || service_slug;
// Which minimal fields to show, per vertical. These are the smallest set the
// API's create-order path needs; everything else is collected after payment.
type FieldKind = "trucking" | "healthcare" | "generic";
const kind: FieldKind =
vertical === "trucking" ? "trucking"
: vertical === "healthcare" ? "healthcare"
: "generic";
const interval = meta?.billing_interval;
const intervalLabel = interval === "month" ? "month" : interval === "year" ? "year" : null;
const ALL_METHODS = [
{ value: "card", label: "Credit / Debit card" },
{ value: "ach", label: "ACH (US bank)" },
{ value: "paypal", label: "PayPal" },
{ value: "klarna", label: "Klarna (pay over time)" },
{ value: "crypto", label: "Cryptocurrency" },
];
const allowed = meta?.allowed_methods;
const methods = allowed ? ALL_METHODS.filter(m => allowed.includes(m.value as any)) : ALL_METHODS;
---
<section
class="pw-express"
data-slug={service_slug}
data-vertical={vertical}
data-kind={kind}
data-price-cents={meta?.price_cents ?? ""}
>
<OrderPriceBanner
priceCents={meta?.price_cents}
govFeeLabel={meta?.gov_fee_label}
serviceSlug={service_slug}
note={kind === "trucking"
? "Pay now and we'll email you a short form to finish the details. Choose card, ACH, or PayPal at payment."
: kind === "healthcare"
? "Pay now and we'll email you a quick form to finish the details. Choose card, ACH, or PayPal at payment."
: "Choose card, ACH, or PayPal at payment."}
/>
<form class="pw-express-form" id="pw-express-form" novalidate>
<h2 class="pw-express-h2">Start your {serviceName}</h2>
<p class="pw-express-sub">
Just a few details to get started — you'll complete the full intake form
after payment (we'll email you a link).
</p>
{kind === "trucking" && (
<div class="pw-express-grid">
<label class="pw-xf">Business name <span class="pw-req">*</span>
<input type="text" id="xf-legal-name" autocomplete="organization" required placeholder="As registered with FMCSA" /></label>
<label class="pw-xf">USDOT number <span class="pw-req">*</span>
<input type="text" id="xf-dot" inputmode="numeric" required placeholder="e.g. 1234567" /></label>
<label class="pw-xf">Email <span class="pw-req">*</span>
<input type="email" id="xf-email" autocomplete="email" required placeholder="you@company.com" /></label>
<label class="pw-xf">Phone
<input type="tel" id="xf-phone" autocomplete="tel" placeholder="(555) 123-4567" /></label>
<label class="pw-xf">Base state <span class="pw-req">*</span>
<select id="xf-base-state" required>
<option value="">Select…</option>
{["AL","AK","AZ","AR","CA","CO","CT","DE","FL","GA","HI","ID","IL","IN","IA","KS","KY","LA","ME","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","OH","OK","OR","PA","RI","SC","SD","TN","TX","UT","VT","VA","WA","WV","WI","WY","DC"].map(s => <option value={s}>{s}</option>)}
</select></label>
<label class="pw-xf">Power units (trucks) <span class="pw-req">*</span>
<input type="number" id="xf-power-units" min="0" required placeholder="e.g. 5" /></label>
</div>
)}
{kind === "healthcare" && (
<div class="pw-express-grid">
<label class="pw-xf">Provider / practice name <span class="pw-req">*</span>
<input type="text" id="xf-provider-name" autocomplete="organization" required placeholder="As registered in NPPES" /></label>
<label class="pw-xf">NPI number <span class="pw-req">*</span>
<input type="text" id="xf-npi" inputmode="numeric" maxlength="10" required placeholder="e.g. 1234567893" />
<span id="xf-npi-status" class="pw-xf-status" hidden></span></label>
<label class="pw-xf">Email <span class="pw-req">*</span>
<input type="email" id="xf-email" autocomplete="email" required placeholder="you@practice.com" /></label>
<label class="pw-xf">Phone
<input type="tel" id="xf-phone" autocomplete="tel" placeholder="(555) 123-4567" /></label>
</div>
)}
{kind === "generic" && (
<div class="pw-express-grid">
<label class="pw-xf">Business / legal name <span class="pw-req">*</span>
<input type="text" id="xf-legal-name" autocomplete="organization" required placeholder="Your legal entity name" /></label>
<label class="pw-xf">Email <span class="pw-req">*</span>
<input type="email" id="xf-email" autocomplete="email" required placeholder="you@company.com" /></label>
<label class="pw-xf">Phone
<input type="tel" id="xf-phone" autocomplete="tel" placeholder="(555) 123-4567" /></label>
</div>
)}
<label class="pw-xf pw-xf-method">Payment method
<select id="xf-pay-method">
{methods.map(m => <option value={m.value}>{m.label}</option>)}
</select></label>
<div id="pw-express-error" class="pw-express-error" hidden></div>
<button type="submit" id="pw-express-submit" class="pw-express-btn">
Continue to payment{meta ? ` — ${intervalLabel ? `${formatUSD(meta.price_cents)}/${intervalLabel}` : formatUSD(meta.price_cents)}` : ""} &rarr;
</button>
<p class="pw-express-fineprint">
Secure checkout by Stripe. You'll review the total before you pay.
{kind !== "generic" && " The full intake form is emailed to you after payment."}
</p>
<CheckoutTrustBand variant="compact" vertical={vertical} />
</form>
</section>
<style>
.pw-express { max-width: 820px; margin: 0 auto; }
.pw-express-form {
background: #fff; border: 1px solid #e2e8f0; border-radius: 12px;
padding: 1.5rem 1.5rem 1.75rem; margin-top: 0.5rem;
box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}
.pw-express-h2 { margin: 0 0 0.35rem; color: var(--pw-navy, #1a2744); font-size: 1.35rem; }
.pw-express-sub { margin: 0 0 1.25rem; color: var(--pw-muted, #64748b); font-size: 0.95rem; line-height: 1.5; }
.pw-express-grid {
display: grid; grid-template-columns: 1fr 1fr; gap: 0.9rem 1.1rem;
}
.pw-xf { display: flex; flex-direction: column; gap: 0.3rem; font-size: 0.85rem; font-weight: 600; color: #334155; }
.pw-xf input, .pw-xf select {
padding: 0.6rem 0.7rem; border: 1px solid #cbd5e1; border-radius: 7px;
font-size: 0.95rem; font-weight: 400; color: #0f172a; background: #fff;
}
.pw-xf input:focus, .pw-xf select:focus { outline: 2px solid #2563eb; outline-offset: 0; border-color: #2563eb; }
.pw-req { color: #dc2626; }
.pw-xf-status { font-size: 0.78rem; font-weight: 500; color: #059669; }
.pw-xf-status[data-state="error"] { color: #b45309; }
.pw-xf-method { margin-top: 1.1rem; max-width: 22rem; }
.pw-express-error {
margin: 1rem 0 0; padding: 0.7rem 0.9rem; border-radius: 8px;
background: #fef2f2; border: 1px solid #fecaca; color: #b91c1c; font-size: 0.88rem;
}
.pw-express-btn {
margin-top: 1.25rem; width: 100%; padding: 0.95rem 1.4rem; border: 0;
border-radius: 9px; background: #059669; color: #fff; font-weight: 800;
font-size: 1.05rem; cursor: pointer; transition: background 0.15s;
}
.pw-express-btn:hover { background: #047857; }
.pw-express-btn:disabled { opacity: 0.6; cursor: not-allowed; }
.pw-express-fineprint { margin: 0.7rem 0 0; text-align: center; color: #94a3b8; font-size: 0.78rem; line-height: 1.5; }
@media (max-width: 560px) {
.pw-express-grid { grid-template-columns: 1fr; }
}
</style>
<script>
// ── ExpressCheckout client logic ────────────────────────────────────────
const root = document.querySelector<HTMLElement>(".pw-express");
if (root) {
const slug = root.dataset.slug!;
const kind = root.dataset.kind!;
const API = (window as any).__PW_API || "";
const form = document.getElementById("pw-express-form") as HTMLFormElement;
const errBox = document.getElementById("pw-express-error")!;
const submitBtn = document.getElementById("pw-express-submit") as HTMLButtonElement;
const params = new URLSearchParams(location.search);
const $ = (id: string) => document.getElementById(id) as HTMLInputElement | HTMLSelectElement | null;
const val = (id: string) => ($(id)?.value || "").trim();
const setVal = (id: string, v: string) => { const el = $(id); if (el && !el.value && v) el.value = v; };
// ── Public-records prefill (same sources the Wizard uses) ──────────────
async function prefill() {
if (kind === "trucking") {
const dot = (params.get("dot") || "").replace(/\D/g, "");
if (dot) {
setVal("xf-dot", dot);
try {
const r = await fetch(`${API}/api/v1/dot/census?dot=${dot}`);
if (r.ok) {
const c = await r.json();
setVal("xf-legal-name", c.legal_name || "");
setVal("xf-email", (c.email || "").toLowerCase());
setVal("xf-phone", c.telephone || "");
setVal("xf-base-state", c.phy_state || "");
setVal("xf-power-units", c.power_units != null ? String(c.power_units) : "");
}
} catch { /* prefill is best-effort */ }
}
} else if (kind === "healthcare") {
const npi = (params.get("npi") || "").replace(/\D/g, "").slice(0, 10);
if (npi) {
setVal("xf-npi", npi);
await npiLookup(npi);
}
}
}
async function npiLookup(npi: string) {
const status = document.getElementById("xf-npi-status");
if (status) { status.hidden = false; status.removeAttribute("data-state"); status.textContent = "Looking up NPI…"; }
try {
const r = await fetch(`${API}/api/v1/npi/lookup?npi=${encodeURIComponent(npi)}`, { headers: { Accept: "application/json" } });
if (r.ok) {
const d = await r.json();
const nm = d.provider_name || d.organization_name || d.name || "";
setVal("xf-provider-name", nm);
if (status) { status.removeAttribute("data-state"); status.textContent = nm ? `\u2713 ${nm}` : "Found"; }
} else {
if (status) { status.setAttribute("data-state", "error"); status.textContent = "NPI not found — you can still continue"; }
}
} catch {
if (status) { status.hidden = true; }
}
}
// Re-run NPI lookup when the user edits the field manually.
if (kind === "healthcare") {
const npiEl = document.getElementById("xf-npi") as HTMLInputElement | null;
npiEl?.addEventListener("blur", () => {
const n = (npiEl.value || "").replace(/\D/g, "").slice(0, 10);
if (n.length === 10) npiLookup(n);
});
}
function collect(): { ok: boolean; email: string; name: string; phone: string; intake: Record<string, any>; missing: string[] } {
const email = val("xf-email");
const phone = val("xf-phone");
const missing: string[] = [];
let name = "", intake: Record<string, any> = {};
if (kind === "trucking") {
name = val("xf-legal-name");
intake = {
legal_name: name, entity_name: name, dot_number: val("xf-dot").replace(/\D/g, ""),
email, phone, base_state: val("xf-base-state"), power_units: val("xf-power-units"),
};
if (!name) missing.push("Business name");
if (!intake.dot_number) missing.push("USDOT number");
if (!email) missing.push("Email");
if (!intake.base_state) missing.push("Base state");
if (!intake.power_units) missing.push("Power units");
} else if (kind === "healthcare") {
name = val("xf-provider-name");
intake = {
provider_name: name, organization_name: name, npi: val("xf-npi").replace(/\D/g, ""),
email, phone,
};
if (!name) missing.push("Provider / practice name");
if (!intake.npi || intake.npi.length !== 10) missing.push("Valid 10-digit NPI");
if (!email) missing.push("Email");
} else {
name = val("xf-legal-name");
intake = { legal_name: name, entity_name: name, email, phone };
if (!name) missing.push("Business / legal name");
if (!email) missing.push("Email");
}
if (email && !/^[^@\s]+@[^@\s]+\.[^@\s]+$/.test(email)) missing.push("Valid email address");
return { ok: missing.length === 0, email, name, phone, intake, missing };
}
form.addEventListener("submit", async (e) => {
e.preventDefault();
errBox.hidden = true;
const c = collect();
if (!c.ok) {
errBox.hidden = false;
errBox.textContent = "Please complete: " + c.missing.join(", ") + ".";
return;
}
submitBtn.disabled = true;
const origLabel = submitBtn.innerHTML;
submitBtn.textContent = "Starting secure checkout…";
try {
const code = (params.get("code") || "").toUpperCase().trim();
// 1) Create a single-service "batch of one" — this path does NOT gate
// Stripe checkout on intake_data_validated, so we can charge first
// and collect the full intake after payment.
const createResp = await fetch(`${API}/api/v1/compliance-orders/batch`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
services: [slug],
customer_email: c.email,
customer_name: c.name,
customer_phone: c.phone || undefined,
intake_data: c.intake,
discount_code: code || undefined,
}),
});
if (!createResp.ok) {
const err = await createResp.json().catch(() => ({}));
throw new Error(err.error || `Could not create order (HTTP ${createResp.status})`);
}
const created = await createResp.json();
const batchId = created.batch_id;
if (!batchId) throw new Error("Order created but no batch id returned.");
// 2) Start checkout for the batch.
const paymentMethod = ($("xf-pay-method") as HTMLSelectElement)?.value || "card";
const checkoutResp = await fetch(`${API}/api/v1/checkout/create-session`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ order_id: batchId, order_type: "compliance_batch", payment_method: paymentMethod }),
});
if (!checkoutResp.ok) throw new Error(`Could not start checkout (HTTP ${checkoutResp.status})`);
const { checkout_url } = await checkoutResp.json();
if (!checkout_url) throw new Error("No checkout URL returned.");
// Fire a funnel event so we can see express conversions in Umami.
try { (window as any).pwTrack?.("express-checkout-start", { slug, method: paymentMethod }); } catch {}
window.location.href = checkout_url;
} catch (e: any) {
errBox.hidden = false;
errBox.textContent = e?.message || "Could not start checkout. Please try again or call (888) 411-0383.";
submitBtn.disabled = false;
submitBtn.innerHTML = origLabel;
}
});
prefill();
}
</script>

View file

@ -0,0 +1,157 @@
---
/**
* OrderFlow — the single source of truth for every /order/<slug> page.
*
* Replaces ~50 near-identical thin Wizard wrappers. It picks the right flow:
*
* 1. PAYMENT-FIRST (default for trucking + healthcare): show ExpressCheckout
* (price + minimal prefillable fields + "Continue to payment") at the TOP,
* with the marketing hero BELOW it. The full intake is collected after
* payment via the per-service email link the webhook already sends.
*
* 2. WIZARD-FIRST (telecom / corporate, express=false): these have rich
* pre-payment intake the API genuinely needs up front (FCC 499 conditional
* fields, de minimis, LNPA) and no public-records prefill, so the full
* Wizard stays first. Hero stays on top as before.
*
* 3. PAID-INTAKE re-entry (?order=CO-xxx or ?token=JWT): ALWAYS render the
* full Wizard (it self-detects paid-intake mode, strips the payment step,
* and hides the price). This is where the post-payment email lands so the
* customer finishes the details. Detected client-side; both the express UI
* and the wizard are rendered, and a tiny inline script shows the right one
* (avoids a server round-trip / flash since Astro is static-built).
*/
import VerticalOrderHeader from "../VerticalOrderHeader.astro";
import Wizard from "./Wizard.astro";
import TaxDeductibilityNotice from "../TaxDeductibilityNotice.astro";
import TruckingValueNotice from "../TruckingValueNotice.astro";
import ExpressCheckout from "./ExpressCheckout.astro";
import { INTAKE_MANIFEST, SERVICE_META, slugVertical } from "../../lib/intake_manifest";
export interface Props {
slug: string;
/** Human title + description for the intro + <Base>. */
title?: string;
description?: string;
/** Override the service display name passed to ExpressCheckout. */
name?: string;
/** Fallback step list when the manifest has none. */
fallbackSteps?: string[];
/**
* Force the flow. Default: trucking + healthcare = payment-first ("express"),
* telecom + corporate = wizard-first ("wizard"). Pages can override.
*/
flow?: "express" | "wizard";
/** Which value-notice to show below the hero. */
notice?: "tax" | "trucking" | "none";
}
const {
slug,
title,
description,
name,
fallbackSteps,
flow,
notice,
} = Astro.props;
const meta = SERVICE_META[slug];
const steps = INTAKE_MANIFEST[slug] ?? fallbackSteps ?? ["review", "payment"];
const vertical = slugVertical(slug) ?? "telecom";
const displayName = name || meta?.name || slug;
const introTitle = title || (meta ? meta.name : "Order");
// Default flow per vertical. Trucking + healthcare go payment-first because they
// prefill from public records (DOT census / NPPES) and the rest of the intake
// can be finished after payment. Telecom + corporate keep the Wizard first.
const resolvedFlow: "express" | "wizard" =
flow ?? (vertical === "trucking" || vertical === "healthcare" ? "express" : "wizard");
// Default notice per vertical (matches the previous per-page choices).
const resolvedNotice: "tax" | "trucking" | "none" =
notice ?? (vertical === "trucking"
? (slug.startsWith("dot-") || slug === "state-trucking-bundle" || slug === "state-dot-registration"
|| slug === "intrastate-authority" || slug === "mc-authority" || slug === "boc3-filing"
|| slug === "osow-permit" || slug === "dot-audit-prep"
? "tax" : "trucking")
: "none");
---
<main class="pw-order-main" data-flow={resolvedFlow}>
{resolvedFlow === "express" ? (
<>
{/* PAYMENT-FIRST: express checkout on top, hero + details below. */}
<section class="pw-order-intro">
<h1>{introTitle}</h1>
{description && <p class="pw-desc">{description}</p>}
</section>
<div id="pw-express-region">
<ExpressCheckout service_slug={slug} name={displayName} />
</div>
{/* Marketing hero + value notice moved BELOW the CTA. */}
<div class="pw-below-fold">
<VerticalOrderHeader vertical={vertical} />
{resolvedNotice === "tax" && <TaxDeductibilityNotice />}
{resolvedNotice === "trucking" && <TruckingValueNotice slug={slug} />}
</div>
{/* PAID-INTAKE re-entry: full wizard, hidden until ?order=/?token= detected. */}
<div id="pw-wizard-region" hidden>
<Wizard service_slug={slug} steps={steps} title={displayName} />
</div>
</>
) : (
<>
{/* WIZARD-FIRST (telecom / corporate). */}
<section class="pw-order-intro">
<h1>{introTitle}</h1>
{description && <p class="pw-desc">{description}</p>}
</section>
<VerticalOrderHeader vertical={vertical} />
{resolvedNotice === "tax" && <TaxDeductibilityNotice />}
{resolvedNotice === "trucking" && <TruckingValueNotice slug={slug} />}
<Wizard service_slug={slug} steps={steps} title={displayName} />
</>
)}
<slot />
</main>
<script>
// In paid-intake re-entry (?order=CO-xxx or ?token=JWT), the customer arrived
// from the post-payment "Complete Your Intake Form" email. Swap the express
// CTA for the full Wizard so they finish the details. Only relevant on
// express-flow pages (wizard-flow pages already render the Wizard first; the
// Wizard itself strips the payment step + price in paid-intake mode).
(function () {
const main = document.querySelector<HTMLElement>(".pw-order-main");
if (!main || main.dataset.flow !== "express") return;
const p = new URLSearchParams(location.search);
const paidIntake = p.has("order") || p.has("token");
if (!paidIntake) return;
const express = document.getElementById("pw-express-region");
const below = main.querySelector<HTMLElement>(".pw-below-fold");
const wizard = document.getElementById("pw-wizard-region");
if (express) express.hidden = true;
if (below) below.hidden = true;
if (wizard) wizard.hidden = false;
})();
</script>
<style>
.pw-order-main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.25rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
.pw-below-fold { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid #eef2f7; }
.pw-below-fold::before {
content: "Why Performance West";
display: block; font-size: 0.75rem; font-weight: 800; letter-spacing: 0.08em;
text-transform: uppercase; color: #94a3b8; margin-bottom: 1rem; text-align: center;
}
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "bdc-broadband";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Availability data only (no voice subscription). For broadband-focused ISPs and fixed wireless providers.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "bdc-filing";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Both BDC blocks in one order — broadband deployment + voice subscription. For carriers with both.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "bdc-voice";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Voice subscriber counts only — the part of the legacy Form 477 that now files through BDC. For VoIP resellers + CLECs.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "boc3-filing";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Designate a process agent in all 48 states plus DC.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ca-mcp-carb";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "California Motor Carrier Permit (MCP) plus CARB Clean Truck Check compliance for carriers operating in California.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "calea-ssi";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "System Security and Integrity plan required of every common carrier under 47 USC § 229 / 47 CFR § 1.20003. Kept internally, provided to DOJ on subpoena.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "cdr-analysis";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Classified traffic study from your CDRs — feeds the 499-A with actual interstate/international percentages instead of the 64.9% safe harbor.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,35 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "clia-renewal";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Renew your CLIA laboratory certificate with CMS before it expires. CLIA certificates run on a 2-year cycle; an expired certificate stops you from legally performing or billing for lab testing.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="healthcare" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<Wizard service_slug={slug} steps={steps ?? ["npi-intake", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["npi-intake", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "cores-frn-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Register your carrier in FCC CORES and obtain your FRN. Required before any other FCC filing.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "cpni-certification";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "47 CFR § 64.2009 annual CPNI certification filed at FCC ECFS docket 06-36. Due March 1.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Always hide price + tax on intake pages — if the user is here, they've
// already paid via the order page or batch checkout.
const price = document.getElementById("pw-price");
const tax = document.getElementById("pw-tax-notice");
if (price) price.style.display = "none";
if (tax) tax.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ct-highway-use-fee";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Connecticut Highway Use Fee registration for heavy multi-unit carriers operating in Connecticut.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "dc-agent";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Your required D.C. registered agent for service of process (47 CFR § 413). Uses Northwest Registered Agent wholesale.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="corporate" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "dot-audit-prep";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Prepare for your 18-month FMCSA safety audit.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "dot-drug-alcohol";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Consortium enrollment, written policy, and DER designation.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "dot-full-compliance";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "MCS-150 + BOC-3 + UCR + Drug & Alcohol + Audit Prep.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "dot-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Register a new USDOT number with FMCSA.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "fcc-499-initial";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "New carrier registration with USAC — obtain your Filer ID (812xxx) and unlock all future 499-A filings.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "fcc-499a-499q";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Annual 499-A plus the four quarterly 499-Q filings — one bundle, full year covered.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "fcc-499a";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Annual Telecommunications Reporting Worksheet. Due April 1 for the prior year's revenue.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "fcc-63-11-notification";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "47 CFR § 63.11 notification filed with the FCC International Bureau. Required when U.S. carriers are affiliated with a foreign carrier serving the same route.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "fcc-compliance-checkup";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Diagnostic check — CORES, RMD, STIR/SHAKEN, CPNI, 499-A status. No filing, just a report.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "fcc-full-compliance";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "RMD + CPNI + STIR/SHAKEN + 499-A + 499-Q in one order. Every annual filing, 15% bundle discount.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,14 +1,11 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
// URL param ?multi=1 selects the multi-state discounted SKU.
const isMulti = Astro.url.searchParams.get("multi") === "1";
const slug = isMulti ? "foreign-qualification-multi" : "foreign-qualification-single";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = "Foreign Qualification (Certificate of Authority)";
const description =
@ -18,49 +15,32 @@ const description =
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{title}</h1>
<p class="pw-desc">{description}</p>
{!isMulti && (
<p class="pw-multi-cta">
Registering in multiple states?
<a href="/order/foreign-qualification?multi=1">
Switch to multi-state pricing ($99/state)
</a>
</p>
)}
{isMulti && (
<p class="pw-multi-cta">
Only need one state?
<a href="/order/foreign-qualification">
Switch to single-state pricing ($149)
</a>
</p>
)}
</section>
<VerticalOrderHeader vertical="corporate" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "foreign_qual", "review", "payment"]} title={title} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow
slug={slug}
title={title}
description={description}
fallbackSteps={["entity", "foreign_qual", "review", "payment"]}
>
{!isMulti && (
<p class="pw-multi-cta">
Registering in multiple states?
<a href="/order/foreign-qualification?multi=1">
Switch to multi-state pricing ($99/state)
</a>
</p>
)}
{isMulti && (
<p class="pw-multi-cta">
Only need one state?
<a href="/order/foreign-qualification">
Switch to single-state pricing ($149)
</a>
</p>
)}
</OrderFlow>
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.5rem; }
.pw-price-note { font-size: 0.9rem; font-weight: 400; color: #64748b; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
.pw-multi-cta { font-size: 0.9rem; color: #475569; margin-top: 0.5rem; }
.pw-multi-cta { font-size: 0.9rem; color: #475569; margin-top: 1rem; }
.pw-multi-cta a { color: #2563eb; text-decoration: underline; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "hazmat-phmsa";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "PHMSA hazardous-materials registration for carriers transporting placardable quantities of hazmat.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ifta-application";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "International Fuel Tax Agreement (IFTA) license and decals — one fuel-tax credential covering all your operating jurisdictions.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ifta-quarterly";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Quarterly IFTA fuel-tax return preparation and filing through your base state.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "intrastate-authority";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Intrastate operating authority application for carriers hauling for-hire within their home state.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "irp-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Apportioned (IRP) registration for interstate carriers — we file with your base state and obtain your apportioned plates and cab cards.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ky-kyu-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Kentucky KYU weight-distance tax license for carriers operating in Kentucky.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "mc-authority";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Apply for common or contract carrier operating authority.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "mcs150-update";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "FMCSA biennial update of company profile, fleet size, and mileage.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,40 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "medicare-enrollment";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Complete your Medicare enrollment in PECOS (CMS-855), including taxonomy, practice location, and authorized official.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="healthcare" />
<Wizard service_slug={slug} steps={steps ?? ["npi-intake", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Hide price + tax on intake pages — if the user is here, they've
// already paid via the order page or batch checkout.
const price = document.getElementById("pw-price");
const tax = document.getElementById("pw-tax-notice");
if (price) price.style.display = "none";
if (tax) tax.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["npi-intake", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,43 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "new-carrier-bundle";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Start-to-finish for a brand-new VoIP carrier: FRN + 499 Initial + RMD + CPNI + CALEA SSI. Everything you need to legally start billing customers.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "nm-weight-distance";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "New Mexico Weight-Distance Tax permit and account setup.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,40 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "npi-reactivation";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Reactivate a deactivated NPI in NPPES so you can resume billing, with a full record re-certification.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="healthcare" />
<Wizard service_slug={slug} steps={steps ?? ["npi-intake", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Hide price + tax on intake pages — if the user is here, they've
// already paid via the order page or batch checkout.
const price = document.getElementById("pw-price");
const tax = document.getElementById("pw-tax-notice");
if (price) price.style.display = "none";
if (tax) tax.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["npi-intake", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,40 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "npi-revalidation";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Prepare and file your Medicare revalidation in CMS PECOS. Revalidation is required every 5 years; missing it deactivates your billing privileges.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="healthcare" />
<Wizard service_slug={slug} steps={steps ?? ["npi-intake", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Hide price + tax on intake pages — if the user is here, they've
// already paid via the order page or batch checkout.
const price = document.getElementById("pw-price");
const tax = document.getElementById("pw-tax-notice");
if (price) price.style.display = "none";
if (tax) tax.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["npi-intake", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,40 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "nppes-update";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Update and re-attest your NPPES record. CMS requires updates within 30 days of any change.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="healthcare" />
<Wizard service_slug={slug} steps={steps ?? ["npi-intake", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Hide price + tax on intake pages — if the user is here, they've
// already paid via the order page or batch checkout.
const price = document.getElementById("pw-price");
const tax = document.getElementById("pw-tax-notice");
if (price) price.style.display = "none";
if (tax) tax.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["npi-intake", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ny-hut-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "New York Highway Use Tax (HUT) registration and decal for carriers operating in New York.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ocn-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Obtain an Operating Company Number from NECA. Required for STIR/SHAKEN signing authority and direct numbering access.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,40 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "oig-sam-screening";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Monthly OIG LEIE and SAM exclusion screening for you and your staff, with an audit-ready compliance certificate each month. $79/month, cancel anytime.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="healthcare" />
<Wizard service_slug={slug} steps={steps ?? ["npi-intake", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Hide price + tax on intake pages — if the user is here, they've
// already paid via the order page or batch checkout.
const price = document.getElementById("pw-price");
const tax = document.getElementById("pw-tax-notice");
if (price) price.style.display = "none";
if (tax) tax.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["npi-intake", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "or-weight-mile-tax";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Oregon Weight-Mile Tax enrollment and account setup for carriers operating in Oregon.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "osow-permit";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Oversize / Overweight (OS/OW) trip permit acquisition for non-standard loads.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,40 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "provider-compliance-bundle";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Annual provider compliance bundle: revalidation monitoring & filing, NPPES upkeep, and your first OIG/SAM exclusion screening in one package.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="healthcare" />
<Wizard service_slug={slug} steps={steps ?? ["npi-intake", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Hide price + tax on intake pages — if the user is here, they've
// already paid via the order page or batch checkout.
const price = document.getElementById("pw-price");
const tax = document.getElementById("pw-tax-notice");
if (price) price.style.display = "none";
if (tax) tax.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["npi-intake", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,43 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "rmd-filing";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Robocall Mitigation Database filing. Annual recertification required March 1 (March 2 in 2026).";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
// Always hide price + tax + FCC fee note on intake pages — if the user
// is here, they've already paid via the order page or batch checkout.
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
const f = document.querySelector(".pw-order-intro p[style*='fefce8']") as HTMLElement;
if (p) p.style.display = "none";
if (t) t.style.display = "none";
if (f) f.style.display = "none";
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "state-dot-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Intrastate (state) DOT number registration for carriers operating within a single state.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "state-emissions";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "State clean-truck / emissions compliance (NY, CO, MD, NJ, MA Advanced Clean Trucks programs) — fleet reporting and certification.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "state-trucking-bundle";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "State Compliance Bundle — IRP, IFTA, state weight-distance taxes, and state permits handled together for one price.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TaxDeductibilityNotice />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,41 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import TaxDeductibilityNotice from "../../components/TaxDeductibilityNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META, formatUSD } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "stir-shaken";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Posture update + RMD refresh + STI-CA vendor coordination. For carriers moving from robocall-mitigation to partial implementation.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="telecom" />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<script>
if (new URLSearchParams(window.location.search).has("token")) {
const p = document.getElementById("pw-price");
const t = document.getElementById("pw-tax-notice");
if (p) p.style.display = "none";
if (t) t.style.display = "none";
}
</script>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,39 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "ucr-registration";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Unified Carrier Registration for interstate carriers.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["entity", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["entity", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-price { font-size: 1.5rem; font-weight: 700; color: var(--pw-green, #059669); margin: 0 0 0.75rem; }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -1,38 +1,14 @@
---
import Base from "../../layouts/Base.astro";
import VerticalOrderHeader from "../../components/VerticalOrderHeader.astro";
import Wizard from "../../components/intake/Wizard.astro";
import OrderPriceBanner from "../../components/OrderPriceBanner.astro";
import TruckingValueNotice from "../../components/TruckingValueNotice.astro";
import { INTAKE_MANIFEST, SERVICE_META } from "../../lib/intake_manifest";
import OrderFlow from "../../components/intake/OrderFlow.astro";
import { SERVICE_META } from "../../lib/intake_manifest";
const slug = "usdot-reactivation";
const steps = INTAKE_MANIFEST[slug];
const meta = SERVICE_META[slug];
const title = meta ? `Order ${meta.name}` : "Order";
const description = "Reactivate an inactive or revoked USDOT number and bring your registration back into good standing.";
---
<Base title={title} description={description}>
<main>
<section class="pw-order-intro">
<h1>{meta?.name}</h1>
<p class="pw-desc">{description}</p>
</section>
<VerticalOrderHeader vertical="trucking" />
<OrderPriceBanner priceCents={meta?.price_cents} govFeeLabel={meta?.gov_fee_label} serviceSlug={slug} note="Choose card, ACH, or PayPal at payment." />
<TruckingValueNotice slug={slug} />
<Wizard service_slug={slug} steps={steps ?? ["state-trucking", "review", "payment"]} title={meta?.name ?? slug} />
</main>
<OrderFlow slug={slug} description={description} fallbackSteps={["state-trucking", "review", "payment"]} />
</Base>
<style>
main { max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.pw-order-intro { margin-bottom: 1.5rem; }
.pw-order-intro h1 { margin: 0 0 0.25rem; color: var(--pw-navy, #1a2744); }
.pw-desc { color: var(--pw-muted, #64748b); max-width: 48rem; }
</style>

View file

@ -46,7 +46,6 @@ Send reset link
s1.async=true;
s1.src='https://embed.tawk.to/69d5a9ca0d1c3f1c37998081/1jll9ufph';
s1.charset='UTF-8';
s1.setAttribute('crossorigin','*');
s0.parentNode.insertBefore(s1,s0);
})();
</script>