Public Access
feat: add Bring Your Business wizard, replace final CTA
- Replace .final-cta section with .biz-wizard section - Three textarea fields: Business Description, My Goals, Current Challenges - On submit, POSTs to webhook endpoint that triggers AI Agent to generate a personalized Odoo project plan PDF - On success, shows download button if webhook returns download_url - Inline + external CSS: midnight background, brass-accented form fields - Scroll animation observer updated to target .biz-wizard .container - Remove all .final-cta CSS from style.css and inline critical styles
This commit is contained in:
+39
-5
@@ -75,6 +75,19 @@
|
|||||||
@media(max-width:576px){.server-grid{grid-template-columns:repeat(2,1fr)}.server-banner-header{flex-direction:column;align-items:flex-start}}
|
@media(max-width:576px){.server-grid{grid-template-columns:repeat(2,1fr)}.server-banner-header{flex-direction:column;align-items:flex-start}}
|
||||||
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--brass);display:inline-block;animation:statusPulse 1.2s ease-in-out infinite}
|
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--brass);display:inline-block;animation:statusPulse 1.2s ease-in-out infinite}
|
||||||
@keyframes statusPulse{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
|
@keyframes statusPulse{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
|
||||||
|
.biz-wizard{padding:4rem 0;background:var(--midnight);text-align:center;position:relative;overflow:hidden}
|
||||||
|
.biz-wizard::after{content:'';position:absolute;inset:0;background:url('images/city-amsterdam.jpg') center/cover no-repeat;opacity:.04;z-index:0}
|
||||||
|
.biz-wizard .container{position:relative;z-index:1;max-width:700px}
|
||||||
|
.biz-wizard h2{font-size:clamp(1.6rem,3.2vw,2.4rem);color:#fff;margin-bottom:.75rem}
|
||||||
|
.biz-sub{font-size:1rem;color:rgba(255,255,255,.6);max-width:520px;margin:0 auto 2rem;line-height:1.7}
|
||||||
|
.biz-form{text-align:left}.biz-field{margin-bottom:1.25rem}
|
||||||
|
.biz-field label{display:block;font-family:Marcellus,Georgia,serif;font-size:.95rem;color:#fff;margin-bottom:.4rem;font-weight:400}
|
||||||
|
.biz-field textarea{width:100%;padding:.8rem 1rem;border-radius:var(--radius);border:1px solid var(--line-brass);background:rgba(255,255,255,.05);color:#fff;font-family:Inter,sans-serif;font-size:.88rem;line-height:1.6;min-height:90px;outline:none;transition:border-color .2s,background .2s;resize:vertical}
|
||||||
|
.biz-field textarea:focus{border-color:var(--brass);background:rgba(255,255,255,.08)}
|
||||||
|
.biz-field textarea::placeholder{color:rgba(255,255,255,.3)}
|
||||||
|
.biz-form .btn-lg{margin-top:.5rem;width:100%}
|
||||||
|
.biz-success{margin-top:1.5rem}.biz-success i{font-size:2.5rem;color:var(--success);margin-bottom:.75rem}
|
||||||
|
.biz-success h3{color:#fff;margin-bottom:.5rem}.biz-success p{color:rgba(255,255,255,.65);font-size:.95rem;max-width:480px;margin:0 auto 1.25rem;line-height:1.7}
|
||||||
</style>
|
</style>
|
||||||
<link rel="stylesheet" href="style.css" media="print" onload="this.media='all'" />
|
<link rel="stylesheet" href="style.css" media="print" onload="this.media='all'" />
|
||||||
<noscript><link rel="stylesheet" href="style.css" /></noscript>
|
<noscript><link rel="stylesheet" href="style.css" /></noscript>
|
||||||
@@ -372,12 +385,33 @@
|
|||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<!-- Final CTA -->
|
<!-- Business Wizard -->
|
||||||
<section class="final-cta">
|
<section class="biz-wizard">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h2>Ready to check in?</h2>
|
<p class="section-kicker">Bring Your Business</p>
|
||||||
<p>Pick a plan, choose your region, and your instance is live in under 5 minutes. No DevOps required.</p>
|
<h2>Your Personalized Odoo Project Plan</h2>
|
||||||
<a href="#pricing" class="btn btn-brass btn-lg">See Plans & Pricing →</a>
|
<p class="biz-sub">Tell us about your business. AI prepares a custom project plan with recommended modules, timeline, and roadmap. Download your PDF in minutes.</p>
|
||||||
|
<form class="biz-form" id="bizForm">
|
||||||
|
<div class="biz-field">
|
||||||
|
<label for="bizDescription">Business Description</label>
|
||||||
|
<textarea id="bizDescription" placeholder="Describe your business — industry, size, current software, team structure..." required></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="biz-field">
|
||||||
|
<label for="bizGoals">My Goals</label>
|
||||||
|
<textarea id="bizGoals" placeholder="What do you want to achieve with Odoo? Automate sales, manage inventory, financial reporting, CRM..." required></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="biz-field">
|
||||||
|
<label for="bizChallenges">Current Challenges</label>
|
||||||
|
<textarea id="bizChallenges" placeholder="What problems are you facing? Manual processes, data silos, growth pains, lack of visibility..." required></textarea>
|
||||||
|
</div>
|
||||||
|
<button type="submit" class="btn btn-brass btn-lg" id="bizSubmitBtn">Generate My Project Plan →</button>
|
||||||
|
</form>
|
||||||
|
<div class="biz-success" id="bizSuccess" style="display:none">
|
||||||
|
<i class="fas fa-check-circle"></i>
|
||||||
|
<h3>Your project plan is being prepared</h3>
|
||||||
|
<p>Download your personalized PDF below — a custom Odoo implementation roadmap tailored to your business.</p>
|
||||||
|
<a class="btn btn-brass btn-lg" id="bizDownloadBtn" style="display:none" download>Download Your Project Plan ↓</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|||||||
@@ -568,7 +568,7 @@ var si = 0,
|
|||||||
}, { threshold: 0.12, rootMargin: '0px 0px -40px 0px' });
|
}, { threshold: 0.12, rootMargin: '0px 0px -40px 0px' });
|
||||||
|
|
||||||
var grids = document.querySelectorAll(
|
var grids = document.querySelectorAll(
|
||||||
'.features-grid, .faq-grid, .pricing-grid, .blog-grid, .final-cta .container'
|
'.features-grid, .faq-grid, .pricing-grid, .blog-grid, .biz-wizard .container'
|
||||||
);
|
);
|
||||||
grids.forEach(function (g) {
|
grids.forEach(function (g) {
|
||||||
g.dataset.section = g.className || 'anon';
|
g.dataset.section = g.className || 'anon';
|
||||||
@@ -577,3 +577,46 @@ var si = 0,
|
|||||||
observer.observe(g);
|
observer.observe(g);
|
||||||
});
|
});
|
||||||
})();
|
})();
|
||||||
|
|
||||||
|
/* ---- Business Wizard Form ---- */
|
||||||
|
(function () {
|
||||||
|
var form = document.getElementById('bizForm');
|
||||||
|
if (!form) return;
|
||||||
|
var success = document.getElementById('bizSuccess');
|
||||||
|
var downloadBtn = document.getElementById('bizDownloadBtn');
|
||||||
|
var submitBtn = document.getElementById('bizSubmitBtn');
|
||||||
|
|
||||||
|
form.addEventListener('submit', function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var description = document.getElementById('bizDescription').value.trim();
|
||||||
|
var goals = document.getElementById('bizGoals').value.trim();
|
||||||
|
var challenges = document.getElementById('bizChallenges').value.trim();
|
||||||
|
if (!description || !goals || !challenges) return;
|
||||||
|
|
||||||
|
submitBtn.textContent = 'Generating...';
|
||||||
|
submitBtn.disabled = true;
|
||||||
|
|
||||||
|
fetch('https://002-001-5dd6e535-4d1c-46bc-9bd9-42ad4bc5f082.odoo4projects.com/webhook/7e3a2e80-8f1c-4c1a-a5d2-6b8e9f0c1d2e', {
|
||||||
|
method: 'POST',
|
||||||
|
headers: { 'Content-Type': 'application/json' },
|
||||||
|
body: JSON.stringify({
|
||||||
|
description: description,
|
||||||
|
goals: goals,
|
||||||
|
challenges: challenges
|
||||||
|
})
|
||||||
|
})
|
||||||
|
.then(function (r) { return r.json().catch(function () { return {}; }); })
|
||||||
|
.then(function (data) {
|
||||||
|
form.style.display = 'none';
|
||||||
|
success.style.display = 'block';
|
||||||
|
if (data.download_url) {
|
||||||
|
downloadBtn.href = data.download_url;
|
||||||
|
downloadBtn.style.display = 'inline-block';
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(function () {
|
||||||
|
submitBtn.textContent = 'Generate My Project Plan \u2192';
|
||||||
|
submitBtn.disabled = false;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
})();
|
||||||
|
|||||||
@@ -743,25 +743,61 @@ img { max-width: 100%; height: auto; vertical-align: middle; }
|
|||||||
@media (max-width: 992px) { .blog-grid { grid-template-columns: repeat(2, 1fr); } }
|
@media (max-width: 992px) { .blog-grid { grid-template-columns: repeat(2, 1fr); } }
|
||||||
@media (max-width: 576px) { .blog-grid { grid-template-columns: 1fr; } }
|
@media (max-width: 576px) { .blog-grid { grid-template-columns: 1fr; } }
|
||||||
|
|
||||||
/* ---- Final CTA ---- */
|
/* ---- Business Wizard ---- */
|
||||||
.final-cta {
|
.biz-wizard {
|
||||||
padding: 4rem 0;
|
padding: 4rem 0;
|
||||||
background: var(--midnight);
|
background: var(--midnight);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
position: relative;
|
position: relative;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
.final-cta::after {
|
.biz-wizard::after {
|
||||||
content: '';
|
content: '';
|
||||||
position: absolute;
|
position: absolute;
|
||||||
inset: 0;
|
inset: 0;
|
||||||
background: url('images/city-amsterdam.jpg') center/cover no-repeat;
|
background: url('images/city-amsterdam.jpg') center/cover no-repeat;
|
||||||
opacity: 0.06;
|
opacity: 0.04;
|
||||||
z-index: 0;
|
z-index: 0;
|
||||||
}
|
}
|
||||||
.final-cta .container { position: relative; z-index: 1; }
|
.biz-wizard .container { position: relative; z-index: 1; max-width: 700px; }
|
||||||
.final-cta h2 { font-size: clamp(1.6rem, 3.2vw, 2.4rem); color: #fff; margin-bottom: 0.75rem; }
|
.biz-wizard h2 { font-size: clamp(1.6rem, 3.2vw, 2.4rem); color: #fff; margin-bottom: 0.75rem; }
|
||||||
.final-cta p { font-size: 1.05rem; color: rgba(255,255,255,0.7); max-width: 520px; margin: 0 auto 1.5rem; line-height: 1.7; }
|
.biz-sub { font-size: 1rem; color: rgba(255,255,255,0.6); max-width: 520px; margin: 0 auto 2rem; line-height: 1.7; }
|
||||||
|
.biz-form { text-align: left; }
|
||||||
|
.biz-field { margin-bottom: 1.25rem; }
|
||||||
|
.biz-field label {
|
||||||
|
display: block;
|
||||||
|
font-family: Marcellus, Georgia, serif;
|
||||||
|
font-size: 0.95rem;
|
||||||
|
color: #fff;
|
||||||
|
margin-bottom: 0.4rem;
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
.biz-field textarea {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0.8rem 1rem;
|
||||||
|
border-radius: var(--radius);
|
||||||
|
border: 1px solid var(--line-brass);
|
||||||
|
background: rgba(255,255,255,0.05);
|
||||||
|
color: #fff;
|
||||||
|
font-family: Inter, sans-serif;
|
||||||
|
font-size: 0.88rem;
|
||||||
|
line-height: 1.6;
|
||||||
|
min-height: 90px;
|
||||||
|
outline: none;
|
||||||
|
transition: border-color 0.2s, background 0.2s;
|
||||||
|
resize: vertical;
|
||||||
|
}
|
||||||
|
.biz-field textarea:focus {
|
||||||
|
border-color: var(--brass);
|
||||||
|
background: rgba(255,255,255,0.08);
|
||||||
|
}
|
||||||
|
.biz-field textarea::placeholder { color: rgba(255,255,255,0.3); }
|
||||||
|
.biz-form .btn-lg { margin-top: 0.5rem; width: 100%; }
|
||||||
|
.biz-success { margin-top: 1.5rem; }
|
||||||
|
.biz-success i { font-size: 2.5rem; color: var(--success); margin-bottom: 0.75rem; }
|
||||||
|
.biz-success h3 { color: #fff; margin-bottom: 0.5rem; }
|
||||||
|
.biz-success p { color: rgba(255,255,255,0.65); font-size: 0.95rem; max-width: 480px; margin: 0 auto 1.25rem; line-height: 1.7; }
|
||||||
|
.biz-success .btn-lg { width: auto; }
|
||||||
|
|
||||||
/* ---- Footer ---- */
|
/* ---- Footer ---- */
|
||||||
.footer {
|
.footer {
|
||||||
|
|||||||
Reference in New Issue
Block a user