3 konkrétne GEO tipy
Každý tip môžete aplikovať ešte ten istý deň. Žiadne rozsiahle tutoriály, len akcie.
.mbg-lp,
.mbg-lp *,
.mbg-lp *::before,
.mbg-lp *::after { box-sizing: border-box; }
.mbg-lp { all: initial; display: block; }
.mbg-lp * { margin: 0; padding: 0; font-family: inherit; }
.mbg-lp {
–magenta: #a607cf;
–magenta-deep: #5a0470;
–navy: #001242;
–cream: #e2e1b9;
–ink: #0a0a14;
–ink-soft: #4a4a5e;
–line: #ececf2;
–bg: #ffffff;
–bg-soft: #faf9f6;
–pill-bg: #f6e4fb;
–display: ‘Bricolage Grotesque’, system-ui, sans-serif;
–body: ‘Manrope’, system-ui, sans-serif;
–max: 1200px;
–pad: clamp(20px, 5vw, 80px);
–radius: 18px;
font-family: var(–body);
color: var(–ink);
background: var(–bg);
line-height: 1.6;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
font-size: 16px;
}
.mbg-lp img { max-width: 100%; display: block; height: auto; border: 0; }
.mbg-lp a { color: inherit; text-decoration: none; }
.mbg-lp button { font-family: inherit; cursor: pointer; border: 0; background: none; }
.mbg-lp h1, .mbg-lp h2, .mbg-lp h3, .mbg-lp h4 { font-weight: 700; }
.mbg-lp p { margin: 0; }
.mbg-lp .wrap { max-width: var(–max); margin: 0 auto; padding: 0 var(–pad); }
/* NAV */
.mbg-lp .lp-nav {
position: sticky; top: 0; z-index: 50;
background: rgba(255,255,255,.85);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border-bottom: 1px solid var(–line);
}
.mbg-lp .lp-nav-inner {
display: flex; align-items: center; justify-content: space-between;
padding: 14px var(–pad); max-width: var(–max); margin: 0 auto;
}
.mbg-lp .lp-nav-logo {
font-family: var(–display); font-weight: 700; font-size: 18px;
color: var(–ink); letter-spacing: -.02em;
}
.mbg-lp .lp-nav-logo span { color: var(–magenta); }
.mbg-lp .lp-nav-cta {
display: inline-flex; align-items: center; gap: 8px;
background: var(–magenta); color: #fff;
padding: 12px 22px; border-radius: 999px;
font-weight: 600; font-size: 14px; letter-spacing: -.01em;
transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
box-shadow: 0 6px 18px -8px rgba(166,7,207,.55);
}
.mbg-lp .lp-nav-cta:hover { background: var(–magenta-deep); transform: translateY(-1px); }
.mbg-lp .lp-nav-cta .arrow { transition: transform .2s ease; }
.mbg-lp .lp-nav-cta:hover .arrow { transform: translateX(3px); }
/* HERO */
.mbg-lp .hero {
padding: clamp(60px,8vw,110px) 0 clamp(50px,7vw,90px);
position: relative; overflow: hidden;
}
.mbg-lp .hero::before {
content: “”; position: absolute; inset: 0;
background:
radial-gradient(60% 50% at 0% 0%, rgba(166,7,207,.06), transparent 70%),
radial-gradient(40% 50% at 100% 100%, rgba(0,18,66,.04), transparent 70%);
pointer-events: none;
}
.mbg-lp .hero-grid {
display: grid; grid-template-columns: 1.1fr 1fr;
gap: clamp(40px,6vw,80px); align-items: center; position: relative;
}
@media (max-width: 900px) { .mbg-lp .hero-grid { grid-template-columns: 1fr; gap: 48px; } }
.mbg-lp .pill {
display: inline-flex; align-items: center; gap: 8px;
background: var(–pill-bg); color: var(–magenta-deep);
padding: 8px 18px; border-radius: 999px;
font-weight: 600; font-size: 14px; margin-bottom: 24px;
}
.mbg-lp .pill-dot {
width: 8px; height: 8px; border-radius: 50%; background: var(–magenta);
animation: mbgPulse 2s ease-in-out infinite;
}
@keyframes mbgPulse {
0%,100% { opacity: 1; transform: scale(1); }
50% { opacity: .5; transform: scale(1.3); }
}
.mbg-lp .hero h1 {
font-family: var(–display); font-weight: 700;
font-size: clamp(36px,5.4vw,68px);
line-height: 1.04; letter-spacing: -.035em; color: var(–ink);
}
.mbg-lp .hero h1 .accent { color: var(–magenta); }
.mbg-lp .hero p.lede {
margin-top: 24px; max-width: 520px;
font-size: clamp(16px,1.4vw,18px); color: var(–ink-soft); line-height: 1.6;
}
.mbg-lp .hero-form {
margin-top: 36px;
display: flex; gap: 10px; flex-wrap: wrap; max-width: 500px;
}
.mbg-lp .hero-form input[type=”email”] {
flex: 1; min-width: 200px;
background: var(–bg-soft); border: 1.5px solid var(–line); border-radius: 999px;
padding: 16px 22px; font-family: var(–body); font-size: 15px; color: var(–ink); outline: none;
transition: border-color .2s;
}
.mbg-lp .hero-form input[type=”email”]::placeholder { color: var(–ink-soft); opacity: .7; }
.mbg-lp .hero-form input[type=”email”]:focus { border-color: var(–magenta); }
.mbg-lp .btn-cta {
display: inline-flex; align-items: center; gap: 10px;
background: var(–magenta); color: #fff;
padding: 16px 28px; border-radius: 999px;
font-family: var(–body); font-weight: 700; font-size: 15px; letter-spacing: -.01em;
box-shadow: 0 14px 30px -10px rgba(166,7,207,.55);
transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
border: 0; cursor: pointer; white-space: nowrap;
}
.mbg-lp .btn-cta:hover { background: var(–magenta-deep); transform: translateY(-2px); box-shadow: 0 20px 40px -10px rgba(166,7,207,.6); }
.mbg-lp .btn-cta .arrow { transition: transform .2s ease; }
.mbg-lp .btn-cta:hover .arrow { transform: translateX(4px); }
.mbg-lp .hero-meta {
display: flex; align-items: center; gap: 16px; flex-wrap: wrap;
margin-top: 18px; font-size: 13px; color: var(–ink-soft);
}
.mbg-lp .hero-meta .dot { width: 4px; height: 4px; border-radius: 50%; background: var(–ink-soft); opacity: .4; }
.mbg-lp .success-msg {
display: none; margin-top: 16px;
background: #f0fdf4; border: 1.5px solid #86efac; border-radius: var(–radius);
padding: 14px 20px; font-size: 14px; font-weight: 600; color: #166534;
}
/* EMAIL MOCKUP */
.mbg-lp .hero-visual { position: relative; }
.mbg-lp .email-mockup {
background: #fff; border: 1px solid var(–line); border-radius: var(–radius); overflow: hidden;
box-shadow: 0 40px 80px -30px rgba(0,18,66,.22), 0 16px 32px -16px rgba(0,18,66,.12);
}
.mbg-lp .em-bar {
background: var(–bg-soft); border-bottom: 1px solid var(–line);
padding: 12px 18px; display: flex; align-items: center; gap: 8px;
}
.mbg-lp .em-dot { width: 10px; height: 10px; border-radius: 50%; }
.mbg-lp .em-dot-r { background: #ff5f57; }
.mbg-lp .em-dot-y { background: #febc2e; }
.mbg-lp .em-dot-g { background: #28c840; }
.mbg-lp .em-subject { margin-left: auto; font-size: 11px; color: var(–ink-soft); font-weight: 600; }
.mbg-lp .em-body { padding: 28px 28px 24px; }
.mbg-lp .em-issue {
font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
color: var(–magenta); margin-bottom: 14px;
}
.mbg-lp .em-headline {
font-family: var(–display); font-weight: 700; font-size: 18px;
line-height: 1.25; letter-spacing: -.02em; color: var(–ink); margin-bottom: 20px;
}
.mbg-lp .em-tip {
background: var(–pill-bg); border-left: 3px solid var(–magenta);
border-radius: 0 10px 10px 0; padding: 14px 16px; margin-bottom: 10px;
}
.mbg-lp .em-tip-label {
font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
color: var(–magenta); margin-bottom: 6px;
}
.mbg-lp .em-tip-text { font-size: 13px; color: var(–ink); line-height: 1.55; }
.mbg-lp .em-more { margin-top: 16px; font-size: 12px; color: var(–ink-soft); font-style: italic; }
.mbg-lp .hero-badge {
position: absolute; right: -12px; bottom: 28px;
background: #fff; border-radius: 14px; padding: 12px 16px;
display: flex; align-items: center; gap: 12px;
box-shadow: 0 14px 28px -10px rgba(0,18,66,.25);
}
.mbg-lp .hero-badge-icon {
width: 38px; height: 38px; border-radius: 10px;
background: var(–pill-bg); color: var(–magenta-deep);
display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.mbg-lp .hero-badge-text { line-height: 1.25; }
.mbg-lp .hero-badge-text strong {
display: block; font-family: var(–display); font-weight: 700; font-size: 14px;
color: var(–ink); letter-spacing: -.01em;
}
.mbg-lp .hero-badge-text span { font-size: 11px; color: var(–ink-soft); }
/* SECTIONS */
.mbg-lp .lp-section { padding: clamp(60px,8vw,110px) 0; position: relative; }
.mbg-lp .section-head { text-align: center; max-width: 760px; margin: 0 auto clamp(40px,5vw,64px); }
.mbg-lp .eyebrow {
display: inline-block; font-size: 13px; font-weight: 600; letter-spacing: .12em;
text-transform: uppercase; color: var(–magenta); margin-bottom: 14px;
}
.mbg-lp h2 {
font-family: var(–display); font-weight: 700;
font-size: clamp(32px,4.5vw,56px); line-height: 1.05; letter-spacing: -.03em; color: var(–ink);
}
.mbg-lp h2 .accent { color: var(–magenta); }
.mbg-lp .section-sub {
margin-top: 18px; font-size: clamp(16px,1.4vw,18px);
color: var(–ink-soft); line-height: 1.55; max-width: 580px; margin-left: auto; margin-right: auto;
}
/* NUMBERS BAR */
.mbg-lp .numbers-bar {
background: var(–bg-soft); border-top: 1px solid var(–line); border-bottom: 1px solid var(–line);
padding: 36px 0;
}
.mbg-lp .numbers-inner {
display: flex; justify-content: center; gap: clamp(32px,6vw,80px); flex-wrap: wrap;
max-width: var(–max); margin: 0 auto; padding: 0 var(–pad);
}
.mbg-lp .num-item { text-align: center; }
.mbg-lp .num-val {
font-family: var(–display); font-weight: 700; font-size: 36px;
color: var(–magenta); line-height: 1; letter-spacing: -.03em;
}
.mbg-lp .num-lbl { font-size: 13px; color: var(–ink-soft); margin-top: 6px; font-weight: 500; }
/* BENEFITS */
.mbg-lp .what { background: var(–bg-soft); }
.mbg-lp .benefits-grid {
display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px;
}
@media (max-width: 640px) { .mbg-lp .benefits-grid { grid-template-columns: 1fr; } }
.mbg-lp .benefit-card {
background: #fff; border: 1px solid var(–line); border-radius: var(–radius); padding: 32px 28px;
transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.mbg-lp .benefit-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -20px rgba(0,18,66,.18); border-color: transparent; }
.mbg-lp .benefit-icon {
width: 54px; height: 54px; border-radius: 14px; background: var(–pill-bg); color: var(–magenta-deep);
display: flex; align-items: center; justify-content: center; margin-bottom: 20px; font-size: 22px;
}
.mbg-lp .benefit-card h3 {
font-family: var(–display); font-weight: 700; font-size: 22px;
letter-spacing: -.02em; line-height: 1.2; margin-bottom: 10px; color: var(–ink);
}
.mbg-lp .benefit-card p { color: var(–ink-soft); font-size: 15px; line-height: 1.55; }
/* FOR WHO */
.mbg-lp .audience-list { max-width: 820px; margin: 0 auto; }
.mbg-lp .audience-item {
display: flex; align-items: flex-start; gap: 18px;
padding: 24px 0; border-bottom: 1px solid var(–line);
}
.mbg-lp .audience-item:last-child { border-bottom: 0; }
.mbg-lp .aud-check {
width: 26px; height: 26px; flex-shrink: 0; margin-top: 2px;
background: var(–pill-bg); border-radius: 8px;
display: flex; align-items: center; justify-content: center;
}
.mbg-lp .aud-body h3 {
font-family: var(–display); font-weight: 700; font-size: 20px;
letter-spacing: -.02em; color: var(–ink); margin-bottom: 4px;
}
.mbg-lp .aud-body p { font-size: 15px; color: var(–ink-soft); line-height: 1.55; }
/* OBJECTION */
.mbg-lp .objection { background: var(–navy); color: #fff; border-radius: var(–radius); padding: clamp(40px,6vw,72px); }
.mbg-lp .objection-wrap { max-width: var(–max); margin: 0 auto; padding: 0 var(–pad); }
.mbg-lp .objection-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
@media (max-width: 860px) { .mbg-lp .objection-grid { grid-template-columns: 1fr; gap: 32px; } }
.mbg-lp .objection .question {
font-family: var(–display); font-weight: 700;
font-size: clamp(28px,3.5vw,42px); line-height: 1.15; letter-spacing: -.02em;
color: #fff; margin-bottom: 20px;
}
.mbg-lp .objection .question .quote { color: var(–magenta); font-size: 1.4em; line-height: 0; vertical-align: -.15em; margin-right: 6px; }
.mbg-lp .objection .answer { font-size: 17px; line-height: 1.6; color: rgba(255,255,255,.78); }
.mbg-lp .objection .answer strong { color: #fff; }
.mbg-lp .compare-card {
background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.12);
border-radius: var(–radius); padding: 28px;
}
.mbg-lp .compare-row { display: flex; justify-content: space-between; align-items: baseline; padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,.08); }
.mbg-lp .compare-row:last-child { border-bottom: 0; }
.mbg-lp .compare-label { color: rgba(255,255,255,.7); font-size: 14px; }
.mbg-lp .compare-price { font-family: var(–display); font-weight: 600; font-size: 22px; letter-spacing: -.02em; color: #fff; }
.mbg-lp .compare-price.big { font-size: 28px; color: var(–magenta); font-weight: 700; }
/* ABOUT */
.mbg-lp .about-card {
background: var(–bg-soft); border: 1px solid var(–line); border-radius: var(–radius);
padding: clamp(32px,5vw,56px); display: flex; gap: 32px; align-items: flex-start; flex-wrap: wrap;
max-width: 820px; margin: 0 auto;
}
.mbg-lp .about-avatar {
width: 72px; height: 72px; border-radius: 50%; flex-shrink: 0;
background: linear-gradient(135deg, var(–magenta-deep), var(–magenta));
display: flex; align-items: center; justify-content: center;
font-family: var(–display); font-size: 26px; font-weight: 800; color: #fff;
}
.mbg-lp .about-name { font-family: var(–display); font-weight: 700; font-size: 22px; letter-spacing: -.02em; color: var(–ink); margin-bottom: 4px; }
.mbg-lp .about-role { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(–magenta); margin-bottom: 16px; }
.mbg-lp .about-text { font-size: 16px; color: var(–ink-soft); line-height: 1.65; max-width: 540px; }
/* SUMMARY */
.mbg-lp .summary-bg { background: var(–cream); border-radius: var(–radius); padding: clamp(60px,8vw,100px) 0; }
.mbg-lp .summary-card {
background: #fff; border-radius: var(–radius);
padding: clamp(32px,5vw,56px); box-shadow: 0 30px 60px -30px rgba(0,18,66,.18);
max-width: 780px; margin: 0 auto;
}
.mbg-lp .summary-row {
display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center;
padding: 22px 0; border-bottom: 1px solid var(–line);
}
.mbg-lp .summary-row:last-child { border-bottom: 0; padding-bottom: 0; }
.mbg-lp .summary-row:first-child { padding-top: 0; }
.mbg-lp .summary-label { font-size: 15px; color: var(–ink-soft); font-weight: 500; }
.mbg-lp .summary-value { font-family: var(–display); font-weight: 700; font-size: 20px; letter-spacing: -.02em; color: var(–ink); text-align: right; }
.mbg-lp .summary-value.tag { background: var(–pill-bg); color: var(–magenta-deep); font-family: var(–body); font-weight: 600; font-size: 14px; padding: 6px 14px; border-radius: 999px; }
/* FINAL CTA */
.mbg-lp .contact-block {
text-align: center;
background: linear-gradient(160deg, #1a0729 0%, var(–navy) 100%);
color: #fff; border-radius: var(–radius);
padding: clamp(60px,8vw,100px) clamp(24px,5vw,60px);
position: relative; overflow: hidden;
}
.mbg-lp .contact-block::before {
content: “”; position: absolute; inset: 0;
background:
radial-gradient(40% 50% at 20% 100%, rgba(166,7,207,.25), transparent 60%),
radial-gradient(40% 50% at 80% 0%, rgba(166,7,207,.18), transparent 60%);
pointer-events: none;
}
.mbg-lp .contact-inner { position: relative; max-width: 760px; margin: 0 auto; }
.mbg-lp .contact-block .pill { background: rgba(255,255,255,.08); color: #fff; border: 1px solid rgba(255,255,255,.15); }
.mbg-lp .contact-block .pill-dot { background: var(–magenta); }
.mbg-lp .contact-block h2 { color: #fff; margin-bottom: 16px; }
.mbg-lp .contact-block h2 .accent { color: var(–magenta); }
.mbg-lp .contact-block .lead { color: rgba(255,255,255,.75); font-size: 18px; line-height: 1.6; max-width: 520px; margin: 0 auto 40px; }
.mbg-lp .final-form { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; max-width: 480px; margin: 0 auto 14px; }
.mbg-lp .final-form input[type=”email”] {
flex: 1; min-width: 200px;
background: rgba(255,255,255,.1); border: 1.5px solid rgba(255,255,255,.2); border-radius: 999px;
padding: 16px 22px; font-family: var(–body); font-size: 15px; color: #fff; outline: none;
transition: border-color .2s;
}
.mbg-lp .final-form input[type=”email”]::placeholder { color: rgba(255,255,255,.5); }
.mbg-lp .final-form input[type=”email”]:focus { border-color: var(–magenta); }
.mbg-lp .final-note { font-size: 13px; color: rgba(255,255,255,.45); margin-bottom: 36px; }
.mbg-lp .success-dark {
display: none; margin: 0 auto 24px;
background: rgba(255,255,255,.08); border: 1px solid rgba(134,239,172,.4); border-radius: var(–radius);
padding: 14px 20px; font-size: 14px; font-weight: 600; color: #86efac; max-width: 420px;
}
.mbg-lp .btn-secondary {
display: inline-flex; align-items: center; gap: 8px;
background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.2); color: #fff;
padding: 14px 26px; border-radius: 999px; font-family: var(–body); font-weight: 600; font-size: 14px;
transition: background .2s, border-color .2s, transform .2s; cursor: pointer;
}
.mbg-lp .btn-secondary:hover { background: rgba(166,7,207,.2); border-color: rgba(166,7,207,.5); transform: translateY(-2px); }
.mbg-lp .btn-secondary .arrow { transition: transform .2s; }
.mbg-lp .btn-secondary:hover .arrow { transform: translateX(3px); }
/* FAQ */
.mbg-lp .faq-list { display: flex; flex-direction: column; gap: 14px; max-width: 820px; margin: 0 auto; }
.mbg-lp .faq-item { background: #fff; border: 1px solid var(–line); border-radius: var(–radius); overflow: hidden; transition: border-color .2s ease, box-shadow .2s ease; }
.mbg-lp .faq-item[open] { border-color: rgba(166,7,207,.35); box-shadow: 0 14px 36px -18px rgba(0,18,66,.18); }
.mbg-lp .faq-item summary { padding: 22px 28px; cursor: pointer; font-family: var(–display); font-weight: 600; font-size: 18px; letter-spacing: -.01em; color: var(–ink); display: flex; justify-content: space-between; align-items: center; gap: 16px; list-style: none; transition: color .2s ease; }
.mbg-lp .faq-item summary:hover { color: var(–magenta-deep); }
.mbg-lp .faq-item summary::-webkit-details-marker { display: none; }
.mbg-lp .faq-item summary::after { content: “+”; font-family: var(–display); font-weight: 500; font-size: 28px; color: var(–magenta); flex-shrink: 0; width: 28px; text-align: center; line-height: .8; transition: transform .25s ease; }
.mbg-lp .faq-item[open] summary::after { transform: rotate(45deg); }
.mbg-lp .faq-answer { padding: 0 28px 26px; color: var(–ink-soft); font-size: 16px; line-height: 1.65; }
/* FOOTER */
.mbg-lp .lp-footer { padding: 48px var(–pad) 64px; text-align: center; border-top: 1px solid var(–line); margin-top: 60px; }
.mbg-lp .footer-brand { font-family: var(–display); font-weight: 700; font-size: 20px; letter-spacing: -.02em; color: var(–ink); margin-bottom: 12px; display: block; }
.mbg-lp .footer-brand span { color: var(–magenta); }
.mbg-lp .footer-text { color: var(–ink-soft); font-size: 13px; }
.mbg-lp .footer-text a { color: var(–magenta); }
/* REVEAL */
.mbg-lp .reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s ease, transform .8s ease; }
.mbg-lp .reveal.in { opacity: 1; transform: translateY(0); }
html { scroll-behavior: smooth; }
html, body { margin: 0; padding: 0; width: 100%; overflow-x: hidden; }
.mbg-lp { width: 100%; }
GEO Weekly je bezplatný newsletter o Generative Engine Optimization –
ako sa umiestniť v ChatGPT, Perplexity a Google AI Overviews,
kým konkurencia ešte tuší, čo GEO je.
Nie teória pre teóriu. Každá sekcia je navrhnutá tak, aby ste mohli niečo urobiť ešte dnes.
Každý tip môžete aplikovať ešte ten istý deň. Žiadne rozsiahle tutoriály, len akcie.
Prefiltrované novinky z AI search sveta – len to, čo skutočne mení pravidlá hry.
Jeden jav z AI vyhľadávania pod lupou – s kontextom, príkladmi a závermi.
Jeden krok, ktorý urobíte hneď po prečítaní. Nič na odkladanie na neskôr.
Vaši zákazníci čoraz viac hľadajú cez AI – a vy nechcete byť neviditeľní.
Chcete budovať autoritu v odvetví ešte predtým, než to urobia vaši konkurenti.
Potrebujete prehľad o tom, čo mení pravidlá digitálneho vyhľadávania skôr ako klienti.
Potrebujete byť krok napred a vedieť, čo odporučiť klientom ako ďalší krok v digitále.
ChatGPT, Perplexity a Google AI Overviews odpovedajú namiesto vás –
bez kliknutia na váš web. GEO rieši, ako sa dostať do týchto odpovedí.
Klasické SEO to nerieši a organické kliknutia dlhodobo klesajú.
Pomáham firmám získavať klientov cez digitálne kanály – Google Ads, SEO, obsah
a automatizáciu marketingu. GEO Weekly je môj spôsob, ako sledovať posun AI
vyhľadávania a zdieľať to, čo skutočne funguje v praxi – nie len v teórii.
Zadarmo. Bez záväzkov. Odhlásenie jedným klikom.
Zadarmo · Bez spamu · Odhlásenie kedykoľvek
function subscribe(inputId, successId, formId) {
var input = document.getElementById(inputId);
var success = document.getElementById(successId);
var email = input.value.trim();
if (!email || !/^[^s@]+@[^s@]+.[^s@]+$/.test(email)) {
input.style.borderColor = ‘#ef4444’;
setTimeout(function(){ input.style.borderColor = ”; }, 1600);
input.focus();
return;
}
var btn = document.getElementById(formId).querySelector(‘button’);
var originalHTML = btn.innerHTML;
btn.innerHTML = ‘Pridávam…’;
btn.disabled = true;
fetch(‘https://marketbrandgrow.app.n8n.cloud/webhook/geo-newsletter-subscribe’, {
method: ‘POST’,
headers: { ‘Content-Type’: ‘application/json’ },
body: JSON.stringify({ email: email })
})
.then(function(res) {
if (res.ok) {
return res.json().then(function(data) {
if (data && data.success) {
document.getElementById(formId).style.display = ‘none’;
success.style.display = ‘block’;
} else {
throw new Error(‘Chyba’);
}
});
} else {
throw new Error(‘Chyba servera’);
}
})
.catch(function() {
btn.innerHTML = originalHTML;
btn.disabled = false;
input.style.borderColor = ‘#ef4444’;
setTimeout(function(){ input.style.borderColor = ”; }, 2500);
});
}
document.addEventListener(‘DOMContentLoaded’, function(){
document.querySelectorAll(‘.hero-form input, .final-form input’).forEach(function(input){
input.addEventListener(‘keydown’, function(e){
if (e.key === ‘Enter’) { var btn = input.parentElement.querySelector(‘button’); if (btn) btn.click(); }
});
});
var els = document.querySelectorAll(‘.mbg-lp .lp-section .wrap > *, .mbg-lp .lp-section .objection-wrap, .mbg-lp .numbers-bar’);
els.forEach(function(el){ el.classList.add(‘reveal’); });
if (‘IntersectionObserver’ in window) {
var io = new IntersectionObserver(function(entries){
entries.forEach(function(e){ if (e.isIntersecting){ e.target.classList.add(‘in’); io.unobserve(e.target); } });
}, { threshold: 0.12, rootMargin: ‘0px 0px -40px 0px’ });
els.forEach(function(el){ io.observe(el); });
} else {
els.forEach(function(el){ el.classList.add(‘in’); });
}
});
Bezplatná konzultácia
15 minút s majiteľom agentúry — bez záväzku.
Chcem bezplatnú konzultáciu →