.gcnm-pricing{max-width:1100px;margin:0 auto;padding:56px 20px;color:#0f172a}.gcnm-pricing *{box-sizing:border-box}.gcnm-pricing-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:14px;color:#516274;margin:0 0 18px}.gcnm-pricing-breadcrumbs a{color:#0f766e;text-decoration:none;font-weight:700}.gcnm-pricing h1{font-size:clamp(2.2rem,4.8vw,4rem);line-height:1.04;margin:0 0 16px}.gcnm-pricing .lead{font-size:1.08rem;line-height:1.78;color:#516274;max-width:72ch;margin:0 0 26px}.gcnm-pricing .context,.gcnm-pricing .note{padding:14px 16px;border-radius:16px;background:#f4f8fb;border:1px solid #d9e3ec;color:#365066}.gcnm-pricing .context[hidden]{display:none}.gcnm-pricing .note.success{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.gcnm-pricing .note.cancelled{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.gcnm-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 20px}.gcnm-pricing-card{background:rgba(255,255,255,.94);border:1px solid #d9e3ec;border-radius:22px;padding:22px;box-shadow:0 16px 48px rgba(15,23,42,.08)}.gcnm-pricing-card h2{margin:0 0 10px;font-size:1.45rem}.gcnm-pricing-card .price{font-size:1.8rem;font-weight:800;color:#0f766e;margin:0 0 12px}.gcnm-pricing-card p,.gcnm-pricing-card li,.gcnm-pricing p{color:#516274;line-height:1.75}.gcnm-pricing-card ul{margin:0 0 18px;padding-left:18px}.gcnm-pricing-card.featured{border-color:#7dd3c7}.gcnm-pricing-card.premium{border-color:#f59e0b;background:linear-gradient(180deg,#fffdf7,#ffffff)}
/* Buttons inside cards */
.gcnm-tier-btn{display:block;width:100%;padding:13px 18px;border-radius:14px;font-size:1rem;font-weight:700;text-align:center;cursor:pointer;border:none;transition:background .15s,opacity .15s;text-decoration:none}.gcnm-tier-btn.free{background:#f4f8fb;color:#0f766e;border:1.5px solid #7dd3c7}.gcnm-tier-btn.featured{background:#0f766e;color:#fff}.gcnm-tier-btn.premium{background:#f59e0b;color:#fff}.gcnm-tier-btn:hover{opacity:.88}.gcnm-tier-btn:disabled{opacity:.55;cursor:not-allowed}
/* test mode badge */
.gcnm-stripe-test-badge{display:inline-flex;align-items:center;gap:6px;background:#fef9c3;border:1px solid #fde047;color:#713f12;font-size:.78rem;font-weight:700;padding:4px 10px;border-radius:20px;margin:0 0 18px}
@media (max-width:860px){.gcnm-pricing{padding:44px 16px}.gcnm-pricing-grid{grid-template-columns:1fr}}
Golf Cart Near Me listing tiers
Simple public tiering for businesses that want to claim a listing, improve the profile, and request stronger placement as Golf Cart Near Me grows.
π§ͺ Test mode β no real charges
β Subscription activated β thank you! Check your email for confirmation. Manage your listing β
π No problem β you can upgrade any time from the owner portal.
Free
$0
- Claim your listing through the owner portal
- Core business details, logo, and contact links
- Issue reporting and trust status support
Featured
$99/mo
- Priority placement in the right city or category context
- Richer profile presentation and stronger CTA visibility
- Requestable directly inside the owner portal
Premium
Custom
- Top-tier visibility and higher-touch profile support
- Designed for stronger market presence and lead flow
- Requestable through the owner portal for manual review
(function () {
// — URL param context (listing name passed from listing page) —
var params = new URLSearchParams(window.location.search || ”);
var listingName = params.get(‘listing_name’) || params.get(‘q’) || ”;
var wpPostId = params.get(‘wp_post_id’) || params.get(‘wpPostId’) || ”;
// Owner portal links β pass intent + listing context
document.querySelectorAll(‘[data-owner-portal-link]’).forEach(function (link) {
var url = new URL(‘https://owners.golfcartnearme.com/’);
var intent = link.getAttribute(‘data-portal-intent’) || params.get(‘intent’) || ‘upgrade’;
url.searchParams.set(‘intent’, intent);
if (listingName) url.searchParams.set(‘q’, listingName);
if (wpPostId) url.searchParams.set(‘wpPostId’, wpPostId);
link.href = url.toString();
});
// Context banner
if (listingName) {
var ctx = document.getElementById(‘gcnm-pricing-context’);
if (ctx) {
var requested = params.get(‘intent’) || ‘upgrade’;
var label = requested.charAt(0).toUpperCase() + requested.slice(1);
ctx.hidden = false;
ctx.textContent = ‘Reviewing ‘ + label + ‘ options for ‘ + listingName + ‘.’;
}
}
// Checkout success/cancel banners
var checkout = params.get(‘checkout’);
if (checkout === ‘success’) { var el = document.getElementById(‘gcnm-checkout-success’); if (el) el.hidden = false; }
if (checkout === ‘cancelled’) { var el = document.getElementById(‘gcnm-checkout-cancelled’); if (el) el.hidden = false; }
// — Stripe checkout —
var btn = document.getElementById(‘gcnm-featured-btn’);
if (!btn) return;
// Show test badge if Stripe is in test mode
function maybeShowTestBadge() {
var stripeConfig = window.gcnmStripe || {};
if (stripeConfig.mode === ‘test’ && stripeConfig.configured) {
var badge = document.getElementById(‘gcnm-test-badge’);
if (badge) badge.hidden = false;
}
if (!stripeConfig.configured) {
btn.disabled = true;
btn.textContent = ‘Checkout coming soon’;
}
}
// Wait for gcnmStripe to be set by footer script
if (document.readyState === ‘loading’) {
document.addEventListener(‘DOMContentLoaded’, maybeShowTestBadge);
} else {
maybeShowTestBadge();
}
btn.addEventListener(‘click’, function () {
var stripeConfig = window.gcnmStripe || {};
if (!stripeConfig.configured) return;
var errEl = document.getElementById(‘gcnm-featured-error’);
btn.disabled = true;
btn.textContent = ‘Preparing checkoutβ¦’;
if (errEl) errEl.style.display = ‘none’;
fetch(‘/wp-json/gcnm/v1/stripe/checkout’, {
method: ‘POST’,
headers: { ‘Content-Type’: ‘application/json’ },
body: JSON.stringify({
tier: ‘featured’,
listing_name: listingName,
wp_post_id: wpPostId,
}),
})
.then(function (r) { return r.json(); })
.then(function (data) {
if (data && data.url) {
window.location.href = data.url;
} else {
throw new Error((data && data.message) || ‘Unexpected response from checkout.’);
}
})
.catch(function (err) {
btn.disabled = false;
btn.textContent = ‘Get Featured β $99/mo’;
if (errEl) { errEl.textContent = ‘Checkout error: ‘ + err.message; errEl.style.display = ‘block’; }
});
});
})();
