Automatiseerime sinu ettevõtte müügi ja kliendisuhtluse — AI vastab, kvalifitseerib ja koostab pakkumised 24/7. Meiega on see võimalik..

Jäta korduv käsitöö meie meeskonnale kes automatiseerib ka kõige pisemad detailid.


Meist

Growlinee on Eesti ettevõte, mis aitab väikestel ja keskmise suurusega firmadel ehitada päriselt töötavaid AI-süsteeme. Me ei müü lihtsalt chatbote, vaid paneme üheks tervikuks sinu turunduse, kliendisuhtluse, pakkumised ja raportid. Eesmärk on, et korduv käsitöö, ununenud järelkõned ja Exceli kaos liiguksid süsteemi kanda – sina saad keskenduda kasvule. 🇪🇪
Tulemuseks on müügitoru, kus iga päring salvestub, iga vastus läheb õigesse kohta ja juhtkond näeb reaalajas, mis tegelikult toimub.

Video
Video

Automatiseeritud kliendisuhtlus

⚡️ Vastame sinu klientidele koheselt 24/7 - ilma, et peaksid ise kohal olema. Iga päring jõuab õigesse kohta, iga müügivõimalus saab tähelepanu.

🤖 AI, mis töötab sinu tiimi kõrval, mitte sinu asemel

🤖 Loome ja haldame süsteemi, mis leiab potensiaalsed kliendid sinu eest, kasvatades müüke prognoositavalt.

Ärianalüütika ja raportid

📊 Iga süsteem, mille loome, kogub andmeid ja annab sulle ülevaate tulemustest, et teaksid täpselt, mis töötab ja kuhu tähelepanu suunata.



Miks valida AI?

Tehisintellekti töötulemus ei olene ilmast, tujust, tervisest või hoolekusest.
Meie ei asenda inimesi, me asendame ebaeffektiivsust - iga tund mis ettevõte raiskab, AI suudab automatiseerida. Tööta targemalt, mitte rohkem.

Analüüs ja strateegia

Kaardistame sinu ettevõtte praegused töövood, kanalid ja müügitoru. Leiame kohad, kus info kaob, liidid jäävad logimata või müügitöö seisab. Teeme selge tegevusplaani, mis toob mõõdetava muutuse 30–60 päeva jooksul – mitte “kunagi hiljem”.

Täielikult automatiseeritud süsteem

Seome AI, töövood ja kliendisuhtluse üheks süsteemiks. Kliendid saavad vastused, pakkumise ja järelmeeldetuletused automaatselt; sinu tiim näeb ühes vaates, mis staadiumis iga diil on. Sina ei pea iga kord nullist alustama – süsteem teeb korduva töö sinu eest ära.


Kuidas Growlinee AI sinu jaoks tööle hakkab?

Lihtne visuaalne ülevaade: kust päring sisse tuleb, kuhu andmed maanduvad ja mida AI nende peal teeb.

VORM + JÄRELTEGEVUS
1. Külastaja täidab vormi → kõik liigub ise õigesse tabelisse
Vorm võib olla Growlinee, Carrd või Typeform – vahet pole. Tähtis on see, et ükski päring ei kaoks postkasti põhja ja iga kontakt saab õige järeltegevuse.
📝
Külastaja täidab vormi sinu lehel
📊
Liidid liiguvad Google Sheets’i + sildid “kuum”, “külm” jne
✉️
Automaatne kinnitus + ülesanne müügitiimile
Mida lahendab: kadunud päringud, copy–paste meilidest tabelisse.Tulemus: vastamiskiirus tõuseb mitu korda, kõik liidid ühes vaates.
AI-CHAT + MÜÜGITORU
2. AI-chat → CRM → müügi järeltegevus
Klient küsib, AI vastab, kogub olulisemad andmed ja teeb neist liidi, mille müügitiim õigel ajal üle võtab.
💬
Külastaja räägib assistendiga sinu lehel
🤖
AI vastab, küsib eelarvet, ajaraami ja huvi taset
📂
Liidid liiguvad Google Sheets / Pipedrive / HubSpot
👥
Müügitiim saab teavituse ja helistab õigel hetkel
Mida lahendab: 24/7 korduvad küsimused, “keegi ei jõudnud vastata”.Tulemus: rohkem päriselt huvilisi kõnesid, vähem käsitsi kvalifitseerimist.
EMAIL → PAKKUMINE
3. Klient saadab tavalise meili → 5 minutiga pakkumise mustand
Kui keegi kirjutab otse teie meilile, ei pea keegi pakkumist nullist nikerdama. Te lisate kirjale labeli, süsteem tõmbab selle tabelisse ja AI teeb mustandi valmis.
📨
Klient saadab tavalise meili (info@…)
🏷️
Te lisate Gmailis labeli “Pakkumine”
📊
Lead liigub Google Sheets / CRM-i + logisse
AI loob pakkumise / vastuse mustandi, mida vaid lihvite ja saadate
Mida lahendab: inbox täis eri stiilis päringuid, pakkumised valmivad liiga aeglaselt.Tulemus: kirjast kuni pakkumise mustandini ~5 min, ühtlane stiil ja logi igast case’ist.
// sujuv kerimine customOfferForm vormi juurde, // mailto jääb alles (ei tee preventDefault) document.addEventListener('click', function(e){ const btn = e.target.closest('.gl-scroll-form'); if(!btn) return; const form = document.querySelector('#customOfferForm'); if(form){ form.scrollIntoView({ behavior:'smooth', block:'center' }); } }, true);

Võrdle pakette

Leia oma tiimile sobiv automatiseerimise kiht — alusta tasuta demo­st või mine kohe täislahenduseni.

Funktsioon
Tasuta demo
7 päeva – päris süsteem
€0
Starter
Automaatika esimene kiht
€179 /kuu + €489 seadistus
Täislahendus
Täielik AI-süsteem
€889 seadistus + €589 /kuu
Kellele mõeldud
Ettevõttele, kes tahab riskivabalt näha, kuidas Growlinee päris andmetega tööle hakkab.
1–2 müügiinimesega tiimile, kus liidid juba tulevad, aga logid ja järelkiri on käsi­töö.
Kasvavale tiimile, kes tahab, et iga päring liiguks automaatselt müügitorus järgmise sammuni.
Agentuuridele ja skaleerivatele B2B-tiimidele, kes vajavad ühtset AI-süsteemi üle kõigi kanalite.
AI-chatbot veebilehel 24/7 tugi külastajatele, liidid, korduvad küsimused ja brändi hääl ühes aknas.
— eelvaade demo­lehel
baasvastused
brändi toon + põhisenaariumid
täis koolitus + valvurid ja piirangud
Automaatne e-kiri + logimine Iga päring saab vastuse, logi ja järgmise sammu — ükski liid ei jää inboxi seisma.
— näidismall
lihtne mall
bränditud mallid
mitme kanali tugi (vormid, e-post, chat)
Andmed Google Sheets’i Live-raportid ja logid, mida saad ise filtreerida, jagada ja analüüsida.
demo tabel
live logi päris liidiga
automaatsed kokkuvõtted ja statistika
segmendid + märgised (prioriteet, allikas, staadium)
Töövood & follow-up Automaatne järeltegevus: meeldetuletused, e-kirjad ja taskid müügitiimile.
lihtsad järjestused (nt “uus → kõne → järelkiri”)
mitmeharuline loogika ja erandid
CRM & aruandlus Liidid, müügivõimalused ja tulemusnumbrid ühes vaates.
HubSpot / Pipedrive integratsioon
mitu CRM + BI vaated
Growlinee uuendused Ligipääs uutele AI-funktsioonidele ja jahing testitud parimatele praktikatele.
kureeritud uuendused ja soovitused
uusimad AI tööriistad + automaatika musterlahendused
Projektijuht + tugi Inimene Growlinee poolelt, kes vastab küsimustele ja hoiab projekti liikumises.
e-tugi + 1 kick-off kõne
regulaarne check-in
dedikeeritud PM + regulaarne sync
AI integratsioonid Milliseid mudeleid kasutame ja kui paindlikult saab lahendust kasvatada.
GPT-4o mini (baasautomaatika)
GPT-4o + Claude mini (rohkem mahtu ja kvaliteeti)
GPT-4o + Claude + Llama + RAG teadmusebaas
API ühendused Sinu olemasolevad tööriistad (CRM, BI, sisetööriistad) Growlineega ühendatud.
CRM / Analytics integratsioon
kõik API-d ja kohandatud liidesed

Tasuta demo = päris Growlinee süsteem ühe liidivoo peal: vorm → automaatne vastus → logid Google Sheets’is. Ei mingit kaardinumbrit ega peidetud tasusid.

Võta ühendust Growlinee tiimiga 🚀

Kas soovid konsultatsiooni või lisainfot e-posti teel?

document.addEventListener('click',function(e){ const popup=document.getElementById('gl-popup'); if(e.target.classList && e.target.classList.contains('popup-trigger')){ e.preventDefault(); popup.classList.add('active'); } if(e.target.id==='gl-close'||e.target===popup){ popup.classList.remove('active'); } if(e.target.classList && e.target.classList.contains('mail-btn')){ e.preventDefault(); popup.classList.remove('active'); const t=document.querySelector('#customOfferForm'); if(t) t.scrollIntoView({behavior:'smooth',block:'center'}); } },true);

Ühekordsed projektid

Kui sul on konkreetne projekt (kampaania, uus veeb või süsteemi korrastamine) ja tahad selget tulemust ilma kuutasuta.

Reklaam + liidid

Videokampaania, mis toob päringud ja järgneb ise

Vajad lühivideoid, mis ei kao ära pärast esimest postitust? Teeme kampaania, kus iga uus vaataja saab võimaluse jätta kontakti ja süsteem tegeleb ülejäänuga automaatselt.

  • 1–3 põhiklipi loomine + AI variatsioonid (Meta / TikTok / YouTube Shorts)
  • Liidid liiguvad automaatselt Google Sheets / CRM-i ühte kohta
  • Automaatne vastus + meeldetuletused müügitiimile (keegi ei unune)

Kuidas projekt töötab

  • Arutame läbi pakkumise, sihtgrupi ja sõnumi – mitte lihtsalt “teeme mõned videod”.
  • Kirjutame skriptid ja toodame klipid; AI abil teeme neist variatsioone ja testime nurki.
  • Seome kampaania vormid / DM-id / Messenger’i sinu CRM-i või Google Sheets lahendusega.
  • Lisame automaatse vastuse ja meeldetuletused, et iga uus liid saaks kindla järgmise sammu.

Mis muutub

  • Iga kampaaniast tulnud kontakt jõuab ühte süsteemi koos staatuse ja vastutajaga.
  • Müügitiimil on selge järjekord: kellega rääkida täna, kellega homme.
  • Sa näed numbrites, mitu liidi ja müüki kampaania tegelikult tõi ja mis hinnaga.
AI tööriistad (vajadusel): OpusClip, Pika, Descript, Synthesia – kasutame seal, kus need müüki ja protsessi päriselt kiirendavad.
Veeb + funnel

Veebileht, mis toob päringud (Carrd + automaatika)

Tahad lehte, mis ei ole lihtsalt visiitkaart? Ehitasime sinu ideele Carrd’i peale veebilehe, mis võtab päringud vastu, logib need ja käivitab järeltegevuse ise.

  • Veeb Growlinee valmis-mallide pealt (kümned Carrd näidised, kuhu idee sisse istutada)
  • Formid → Google Sheets / CRM + automaatne vastus ja logimine
  • Soovi korral makselahendus, pakkumise PDF-id ja AI-chatbot samas süsteemis

Kuidas projekt töötab

  • Valime sinu ideele sobiva Carrd layout’i või ühe olemasolevatest Growlinee veebinäidistest.
  • Kirjutame AI abil veebitekstid, mis on lihtsad, selged ja müügile suunatud.
  • Seome vormid Google Apps Scripti / AI-ga, et päringud, logid ja CRM-kirjed tekiksid automaatselt.
  • Vajadusel lisame makselahenduse ja AI-chatboti, mis juhendab külastajat õige sammuni (broneering, ost või päring).

Mis muutub

  • Veeb ei “lihtsalt räägi sinust”, vaid toob iga kuu reaalseid päringuid ja müügivõimalusi.
  • Sa ei pea pakkumisi käsitsi kokku panema – süsteem annab ise märku, kellega tegeleda.
  • Pärast projekti on sul struktuur, mida saab hiljem kuupakettidega edasi ehitada.
Stack: Carrd, Google Sheets, Apps Script, OpenAI (GPT-4o mini) + vajadusel makselahendused ja CRM-integratsioonid.
Aruta oma veebiprojekti
Audit

AI-süsteemi audit ja 90 päeva tegevusplaan

Ei saa aru, kuhu müügipäringud tegelikult ära kaovad? Teeme ühe korra ausa ülevaate ja kirjutame 60–90 päeva plaani, mis kaose ühest funnelist läbi jooksma paneb.

  • Praeguste töövoogude ja tööriistade kaardistus (meil, veeb, CRM, tabelid)
  • Kaos → üks selge funnel: kust liidid tulevad ja kuhu nad liiguvad
  • 3–5 konkreetset automatiseerimise sammu koos prioriteetide ja ärimõjuga

Kuidas projekt töötab

  • Räägime läbi, kuidas täna liiguvad päringud, müük ja järeltegevused (reaalne pilt, mitte “ideaaldiagramm”).
  • Vaatame üle kanalid: e-post, veeb, CRM, sotsiaalmeedia, sisetööriistad.
  • Kaardistame kitsaskohad: kus kaob aeg, kus läheb info kaduma, kus tehakse topelttööd.
  • Paneme kirja 60–90 päeva plaani: millises järjekorras automatiseerida ja mida see sinu äris numbrites muudab.

Mis muutub

  • Sul on üks konkreetne dokument, mis näitab: mis seis praegu on ja mis on järgmised sammud.
  • Otsused ei sünni enam “tunnetuse pealt”, vaid tegelike andmete ja voogude pealt.
  • Saad selgelt otsustada, kas teed plaani järgi ise või võtad hiljem mõne Growlinee paketi appi.
AI vaade: kasutame sinu andmeid (logid, raportid, funnelid) + AI-analüüsi, et leida kiiremad ja mõistlikumad võidud ilma üleliigse hype’ita.
Broneeri auditikõne

Ei leidnud täpselt sobivat? Kasuta all olevat vormi ja kirjelda oma ideed – paneme projekti eraldi kokku.

function growOneoffToggle(btn){ try{ var card = btn.closest(".oneoff-card"); if(!card) return; card.classList.toggle("open"); var label = btn.querySelector(".label"); if(label){ label.textContent = card.classList.contains("open") ? "Peida" : "Loe lisaks"; } }catch(err){ console.log("growOneoffToggle error", err); } } function growScrollToForm(){ try{ var form = document.querySelector("#customOfferForm"); if(form){ form.scrollIntoView({behavior:"smooth", block:"center"}); } }catch(err){ console.log("growScrollToForm error", err); } }

Koosta endale ise täislahendus ⚙️

Meie tiim koostab personaalse AI-lahenduse ja pakub 30-päevast tasuta demo, et kogeda tulemusi enne otsustamist.

💼 Ettevõtte töövood ja automaatika

📊 CRM ja juhtpaneelid

📈 Turundus ja nähtavus

🎁 Tasuta periood


const form = document.getElementById("customOfferForm"); form.addEventListener("submit", async (e) => { e.preventDefault(); const formData = new FormData(form); const payload = { action: "custom_offer", name: formData.get("name") || "", email: formData.get("email") || "", company: formData.get("company") || "", message: formData.get("message") || "", services: [...form.querySelectorAll("input[type=checkbox]:checked")].map(x => x.value) }; const resultEl = document.getElementById("customResult"); resultEl.textContent = "⏳ Töötleme sinu päringut..."; try { await fetch("https://kevin.growlinee.workers.dev/lead", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }); resultEl.innerHTML = "✅ Päring saadetud!
Broneeri konsultatsioon"; form.reset(); } catch (err) { console.error("Fetch error:", err); resultEl.textContent = "⚠️ Midagi läks valesti. Palun proovi uuesti."; } });

KKK — Growlinee

(function growlineeFAQFix(){ const root = document.getElementById('kkk') || document.querySelector('.gl-faq'); if (!root) return; /* Guard: kui juba init, ära topelt seondu */ if (root.dataset.faqInit === '1') return; root.dataset.faqInit = '1'; const items = Array.from(root.querySelectorAll('.gl-faq-item')); const single = (root.getAttribute('data-accordion') || 'single') !== 'multi'; function openItem(item){ const btn = item.querySelector('.gl-faq-question'); const panel = item.querySelector('.gl-faq-answer'); if (!btn || !panel) return; if (single) items.forEach(i => { if (i !== item) closeItem(i); }); item.classList.add('gl-open'); btn.setAttribute('aria-expanded','true'); /* reflow + täpne kõrgus */ panel.style.maxHeight = panel.scrollHeight + 'px'; } function closeItem(item){ const btn = item.querySelector('.gl-faq-question'); const panel = item.querySelector('.gl-faq-answer'); if (!btn || !panel) return; item.classList.remove('gl-open'); btn.setAttribute('aria-expanded','false'); panel.style.maxHeight = '0px'; } /* Delegatsioon: üks kuulaja juurel, mitte n klikki iga elemendi külge */ root.addEventListener('click', e => { const btn = e.target.closest('.gl-faq-question'); if (!btn || !root.contains(btn)) return; const item = btn.closest('.gl-faq-item'); if (!item) return; if (item.classList.contains('gl-open')) closeItem(item); else openItem(item); }); /* ARIA + id-sidumine (kui mõni puudub) */ items.forEach((item, i) => { const btn = item.querySelector('.gl-faq-question'); const panel = item.querySelector('.gl-faq-answer'); if (!btn || !panel) return; if (!btn.id) btn.id = 'gl-faq-q-' + (i+1); if (!panel.id) panel.id = 'gl-faq-a-' + (i+1); btn.setAttribute('aria-controls', panel.id); panel.setAttribute('aria-labelledby', btn.id); btn.setAttribute('aria-expanded','false'); }); /* Hash-tugi (#faq-3 avab vastuse) */ function openFromHash(){ const id = (location.hash || '').slice(1); if (!id) return; const target = document.getElementById(id); const item = target && (target.classList.contains('gl-faq-item') ? target : target.closest('.gl-faq-item')); if (item){ openItem(item); item.scrollIntoView({behavior:'smooth', block:'start'}); } } window.addEventListener('hashchange', openFromHash); window.addEventListener('load', () => { setTimeout(() => { root.querySelectorAll('.gl-faq-item.gl-open .gl-faq-answer') .forEach(p => p.style.maxHeight = p.scrollHeight + 'px'); }, 350); openFromHash(); }); /* Resize: uuenda avatud paneelid */ window.addEventListener('resize', () => { root.querySelectorAll('.gl-faq-item.gl-open .gl-faq-answer') .forEach(p => p.style.maxHeight = p.scrollHeight + 'px'); }); })();

Võtame sinu sisendi (teenused, korduvad küsimused, kanalid) ja paneme kokku mini-lahenduse: nt veebichat + e-posti automaatika + logimine Sheets/CRM-i.

Seadistame testkeskkonnas, jooksutame pärisliiklust ja näitame tulemusi (päringute hulk/kiirus, kvaliteet). Kohustusi ei teki. Kui näed väärtust, valime paketi ja viime tootmisse.

Esimene versioon: 3–7 tööpäeva pärast lähteinfot. Täislahendus: tavaliselt 2–4 nädalat (sõltub integratsioonidest).

Sinu kulu: 30–60 min lähteülesande ja ligipääsude jaoks + vahepealsed kinnitused. Ülejäänu teeme ise.

Kasutame ainult vajalikke andmeid, piirame ligipääse ja logime tegevused. Sõlmime vajadusel andmetöötluslepingu, hoiame andmeid EL-is kui võimalik ning austame subjektide õigusi (päring, parandamine, kustutamine).

Integratsioonid valime nii, et kontroll jääb sinu ettevõttele.

Muudame töövooge, sõnumeid ja sihtimisi, kuni numbrid liiguvad. Kui ei liigu, lõpetame koostöö. Lõksulepinguid ei ole; fookus on reaalsel ROI-l, mitte arvel.

(function growlineeFAQ(){ const root = document.getElementById('kkk') || document.querySelector('.gl-faq'); if (!root) return; // Guard: ära init’ i kaks korda if (root.dataset.faqInit === '1') return; root.dataset.faqInit = '1'; const items = Array.from(root.querySelectorAll('.gl-faq-item')); const single = (root.getAttribute('data-accordion') || 'single') !== 'multi'; function openItem(item){ const btn = item.querySelector('.gl-faq-question'); const panel = item.querySelector('.gl-faq-answer'); if (!btn || !panel) return; if (single) items.forEach(i => { if (i !== item) closeItem(i); }); item.classList.add('gl-open'); btn.setAttribute('aria-expanded','true'); panel.style.maxHeight = panel.scrollHeight + 'px'; } function closeItem(item){ const btn = item.querySelector('.gl-faq-question'); const panel = item.querySelector('.gl-faq-answer'); if (!btn || !panel) return; item.classList.remove('gl-open'); btn.setAttribute('aria-expanded','false'); panel.style.maxHeight = '0px'; } // Delegatsioon: üks kuulaja juurel root.addEventListener('click', e => { const btn = e.target.closest('.gl-faq-question'); if (!btn || !root.contains(btn)) return; const item = btn.closest('.gl-faq-item'); if (item.classList.contains('gl-open')) closeItem(item); else openItem(item); }); // ARIA sidumine (kui id’d puuduvad) items.forEach((item, i) => { const btn = item.querySelector('.gl-faq-question'); const panel = item.querySelector('.gl-faq-answer'); if (!btn || !panel) return; if (!btn.id) btn.id = 'gl-faq-q-' + (i+1); if (!panel.id) panel.id = 'gl-faq-a-' + (i+1); btn.setAttribute('aria-controls', panel.id); panel.setAttribute('aria-labelledby', btn.id); btn.setAttribute('aria-expanded','false'); }); // Hash-tugi (#faq-2 avab teise) function openFromHash(){ const id = (location.hash || '').slice(1); if (!id) return; const target = document.getElementById(id); const item = target && (target.classList.contains('gl-faq-item') ? target : target.closest('.gl-faq-item')); if (item){ openItem(item); item.scrollIntoView({behavior:'smooth', block:'start'}); } } window.addEventListener('hashchange', openFromHash); window.addEventListener('load', () => { setTimeout(() => { root.querySelectorAll('.gl-faq-item.gl-open .gl-faq-answer') .forEach(p => p.style.maxHeight = p.scrollHeight + 'px'); }, 300); openFromHash(); }); // Resize: korrigeeri avatud paneelide kõrgus window.addEventListener('resize', () => { root.querySelectorAll('.gl-faq-item.gl-open .gl-faq-answer') .forEach(p => p.style.maxHeight = p.scrollHeight + 'px'); }); })();

Tehtud tööd / LIVE edenemine

Reaalsed AI-lahendused – siit näed, kus projektid hetkel teekonnal on.

LIVE PILOOT

In Nomine – pakkumise süsteem

AI + CRM + pakkumise mustandid

0%
  • Leads_raw → CRM → AI pakkumise mustand
  • Gmail label → automaatne leadi loomine
  • PDF-pakkumise genereerimine Workflows’i kaudu
Uuendatud: 3 min tagasi
LIVE

Juuksurisalong – veeb + süsteem

Uus veeb + broneerimise funnel + AI

0%
  • Veebilehe struktuur + kujundus Carrdis
  • Broneerimisvorm → Google Sheets + kalender
  • Automaatne meeldetuletus kliendile ja salongile
Uuendatud: 18 min tagasi
🔥 Piloot

Greenest.ee – nutikad soovitused

E-poe soovitused + “täiskasti” loogika

0%
  • Andmepõhine soovitusblokk tootelehel
  • Retseptid + “Lisa vajalikud tooted korvi”
  • Ostukorvi täiskast / bundle loogika piloodis
Uuendatud: 7 min tagasi
// seab protsendi ja täidab "patarei" laiuse vastavalt data-prog väärtusele (function(){ var cards = document.querySelectorAll('.gl-progress-card'); cards.forEach(function(card){ var target = parseInt(card.getAttribute('data-prog') || '0', 10); var fill = card.querySelector('.fill'); var pct = card.querySelector('.percent'); if(!fill || !pct) return; requestAnimationFrame(function(){ fill.style.width = target + '%'; }); pct.textContent = target + '%'; }); })();
document.querySelectorAll(".gl-progress-card").forEach(card => { const target = Number(card.dataset.prog); const bar = card.querySelector(".fill"); const num = card.querySelector(".percent"); setTimeout(() => bar.style.width = target + "%", 300); let current = 0; const animate = () => { if(current <= target){ num.textContent = current + "%"; current++; requestAnimationFrame(animate); } }; animate(); });

Leia meid sotsiaalmeediast

Jälgi meie tegemisi TikTokis, Instagramis ja Facebookis

TikTokInstagramFacebook

© Growlinee. All rights reserved.

document.addEventListener("DOMContentLoaded", () => { // Leia kõik lingid, mis viitavad meie kontaktankrule const links = document.querySelectorAll('a[href="#contact"], a[href="#contact-section"], a[href="#contact-anchor"]'); links.forEach(link => { link.addEventListener("click", e => { e.preventDefault(); const target = document.querySelector("#contact-anchor"); if (target) { // Pehme ja ühekordne kerimine target.scrollIntoView({ behavior: "smooth", block: "start" }); // Peata Carrdi sisseehitatud automaatne scroll setTimeout(() => { window.scrollTo({ top: target.getBoundingClientRect().top + window.scrollY - 10, behavior: "instant" }); }, 500); } }); }); });
(async ()=>{ const form = document.getElementById("growlinee-form"); if (!form) { console.warn("❌ Vorm growlinee-form ei leitud."); return; } const statusEl = document.getElementById("gl-status"); const FORM_ENDPOINT = "https://kevin.growlinee.workers.dev/lead"; form.addEventListener("submit", async (e) => { e.preventDefault(); // ära lase Carrdil lehte värskendada e.stopImmediatePropagation(); // katkestab Carrdi sisemise submiti statusEl.textContent = "⏳ Töötlen päringut..."; const checked = [...form.querySelectorAll('input[type="checkbox"]:checked')].map(x => x.value); const payload = { action: "custom_offer", source: "custom_offer", name: form.name?.value || "", email: form.email?.value || "", company: form.company?.value || "", message: form.message?.value || "", services: checked, lang: "et" }; try { const res = await fetch(FORM_ENDPOINT, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload), mode: "cors" }); if (!res.ok) throw new Error("HTTP " + res.status); statusEl.innerHTML = ` ✅ Päring saadetud!
Broneeri tasuta konsultatsioon `; form.reset(); statusEl.scrollIntoView({behavior:"smooth",block:"center"}); } catch(err) { console.error("❌ Fetch error:", err); statusEl.innerHTML = "⚠️ Viga serveriga või ühendus katkestatud."; } }); })();