This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<style> /* ================================ TOP BUTTON — #edi-xaagran ONLY ================================== */ /* Keep the widget wrapper neutral and centered */ #edi-xaagran{ background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 auto !important; width: auto !important; text-align: center !important; } /* The editor injects an empty <a> around the button. Make sure it doesn't clip or size the button. */ #edi-xaagran a{ display: inline-block !important; padding: 0 !important; margin: 0 !important; background: transparent !important; border: 0 !important; width: auto !important; height: auto !important; overflow: visible !important; /* ← prevents the “half-pill” clipping */ text-decoration: none !important; } /* Actual pill button */ #edi-xaagran button{ display: inline-block !important; position: relative !important; -webkit-appearance: none !important; appearance: none !important; font-family: "Merriweather Sans", Arial, sans-serif !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.2 !important; padding: 12px 28px !important; border: 2px solid #F0504F !important; border-radius: 9999px !important; background: #092A33 !important; /* solid fill */ color: #F9F9F9 !important; /* white text */ background-clip: padding-box !important; /* avoid odd outline rendering */ box-shadow: 0 2px 6px rgba(0,0,0,.12) !important; cursor: pointer !important; text-align: center !important; margin: 0 !important; height: auto !important; min-height: 0 !important; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease, transform .15s ease !important; } /* Inner <div> shouldn’t affect sizing */ #edi-xaagran button > div{ display: inline !important; white-space: nowrap !important; padding: 0 !important; margin: 0 !important; } /* States */ #edi-xaagran button:hover{ background: #F9F9F9 !important; color: #092A33 !important; box-shadow: 0 4px 12px rgba(0,0,0,.18) !important; transform: translateY(-1px); } #edi-xaagran button:active{ transform: translateY(0); box-shadow: 0 2px 6px rgba(0,0,0,.12) !important; } #edi-xaagran button:focus-visible{ outline: none !important; box-shadow: 0 0 0 3px rgba(240,80,79,.25), 0 2px 6px rgba(0,0,0,.12) !important; } #edi-xaagran button{ background: transparent !important; color: #F9F9F9 !important; border: 2px solid #F9F9F9 !important; } #edi-xaagran button:hover{ background: #F9F9F9 !important; color: #092A33 !important; } #edi-xaagran#edi-xaagran a[role="button"], #edi-xaagran#edi-xaagran a[role="button"]:hover, #edi-xaagran#edi-xaagran a[role="button"]:active{ background: transparent !important; color: #F9F9F9 !important; border: 2px solid #F9F9F9 !important; box-shadow: 0 2px 6px rgba(0,0,0,.12) !important; } #edi-xaagran#edi-xaagran a[role="button"]:focus-visible{ outline: none !important; box-shadow: 0 0 0 3px rgba(240,80,79,.25), 0 2px 6px rgba(0,0,0,.12) !important; } </style>
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<script> // Smooth scroll outside buttons to the section that contains the LAST form document.addEventListener("DOMContentLoaded", function () { // Find all webinar form widgets, pick the last one (your bottom form) const forms = Array.from(document.querySelectorAll('[data-editable="webinarNew"][data-mode="form"]')); const bottomForm = forms.length ? forms[forms.length - 1] : null; if (!bottomForm) return; // Find the whole section that wraps that bottom form const targetSection = bottomForm.closest('[data-section="section"]') || bottomForm; // Collect outside "button" widgets (exclude any buttons inside forms) const outsideButtons = Array.from(document.querySelectorAll('[data-editable="button"] button')) .filter(btn => !btn.closest('[data-editable="webinarNew"]')); // Helper: smooth-scroll to the section top (with a tiny offset for breathing room) const scrollToSection = (el) => { const y = el.getBoundingClientRect().top + window.pageYOffset - 12; // offset by 12px window.scrollTo({ top: y, behavior: "smooth" }); }; // Attach listeners outsideButtons.forEach(btn => { btn.addEventListener("click", function (e) { e.preventDefault(); scrollToSection(targetSection); }); }); }); </script>
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<style> /* ================================ TOP FORM (#edi-i35d1oo) ONLY Fields + Submit button ===================================*/ /* Spacing between field groups */ #edi-i35d1oo [data-editable="webformNewItem"]{ margin-bottom: 24px !important; } /* Labels */ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="label"], #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="label"] label{ padding: 0 !important; margin: 0 !important; } #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="label"] label{ display: block; font-size: 14px; font-weight: 600; color: #092A33 !important; line-height: 1.25; margin-bottom: 12px !important; /* gap between label & field */ text-align: left !important; } /* Field wrapper reset (so shadows/borders show cleanly) */ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"]{ margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; overflow: visible !important; } #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"]::before, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"]::after{ content: none !important; display: none !important; } /* Inputs / selects / textareas */ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] input, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] textarea, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] select{ display: block; width: 100% !important; max-width: 480px; /* top form width */ margin: 0; border: 1px solid #092A33 !important; border-radius: 6px !important; background: #fff !important; padding: 16px 14px !important; /* vertical height */ box-shadow: 0 1px 0 rgba(9,42,51,0.06), 0 2px 6px rgba(9,42,51,0.12) !important; outline: none !important; box-sizing: border-box !important; -webkit-appearance: none; appearance: none; } /* Focus state */ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] input:focus, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] textarea:focus, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] select:focus{ border-color: #092A33 !important; box-shadow: 0 0 0 3px rgba(9,42,51,0.12), 0 2px 6px rgba(9,42,51,0.18) !important; } /* Keep normal look in editor even if disabled */ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] input[disabled], #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] textarea[disabled], #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] select[disabled]{ opacity: 1 !important; color: #092A33 !important; } /* Submit button wrapper: center & spacing */ #edi-i35d1oo [data-ats-form-button="submit"]{ display: flex !important; justify-content: center !important; text-align: center !important; padding: 0 !important; margin-top: 16px !important; /* space above button */ margin-bottom: 48px !important; /* space below button (adjust if needed) */ } /* Submit button style (matches your global look) */ #edi-i35d1oo [data-ats-form-button="submit"] button{ background: #F0504F !important; color: #F9F9F9 !important; font-family: "Merriweather Sans", Arial, sans-serif !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.2 !important; border: 2px solid #F0504F !important; border-radius: 9999px !important; padding: 12px 28px !important; box-shadow: 0 2px 6px rgba(0,0,0,0.12) !important; cursor: pointer; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease, transform .15s ease !important; margin: 0 !important; /* prevent odd offsets */ } /* Button inner <div> fix */ #edi-i35d1oo [data-ats-form-button="submit"] button div{ display: inline !important; white-space: nowrap !important; padding: 0 !important; margin: 0 !important; } /* Hover / Active / Focus */ #edi-i35d1oo [data-ats-form-button="submit"] button:hover{ background: #F9F9F9 !important; color: #F0504F !important; box-shadow: 0 4px 12px rgba(0,0,0,0.18) !important; transform: translateY(-1px); } #edi-i35d1oo [data-ats-form-button="submit"] button:active{ transform: translateY(0); box-shadow: 0 2px 6px rgba(0,0,0,0.12) !important; } #edi-i35d1oo [data-ats-form-button="submit"] button:focus-visible{ outline: none !important; box-shadow: 0 0 0 3px rgba(240,80,79,0.25), 0 2px 6px rgba(0,0,0,0.12) !important; } /* Mobile: let inputs use full width */ @media (max-width: 480px){ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] input, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] textarea, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] select{ max-width: 100%; } } I agree to VeraContent's privacy policy* /* Submit button — fondo azul + texto blanco + flecha */ #edi-i35d1oo [data-ats-form-button="submit"] button{ background: #092A33 !important; /* fondo azul */ color: #fff !important; /* texto blanco */ font-family: "Roboto", Arial, sans-serif !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.2 !important; border: 2px solid #092A33 !important; /* borde azul */ border-radius: 9999px !important; padding: 12px 28px !important; cursor: pointer; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease, transform .15s ease !important; margin: 0 !important; position: relative; /* para la flecha */ } /* Flecha → a la derecha */ #edi-i35d1oo [data-ats-form-button="submit"] button::after{ content: "→"; font-size: 18px; margin-left: 10px; transition: transform .25s ease; display: inline-block; } /* Hover: azul un pelín más claro + flecha se mueve */ #edi-i35d1oo [data-ats-form-button="submit"] button:hover{ background: #0c3a46 !important; color: #fff !important; border-color: #0c3a46 !important; transform: translateY(-1px); } #edi-i35d1oo [data-ats-form-button="submit"] button:hover::after{ transform: translateX(4px); } /* Active / Focus */ #edi-i35d1oo [data-ats-form-button="submit"] button:active{ transform: translateY(0); } #edi-i35d1oo [data-ats-form-button="submit"] button:focus-visible{ outline: none !important; box-shadow: 0 0 0 3px rgba(9,42,51,.25) !important; } /* Submit button style — fondo azul + texto blanco + flecha */ #edi-i35d1oo [data-ats-form-button="submit"] button{ background: #092A33 !important; /* fondo azul */ color: #fff !important; /* texto blanco */ font-family: "Roboto", Arial, sans-serif !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.2 !important; border: 2px solid #092A33 !important; /* borde azul */ border-radius: 9999px !important; padding: 12px 28px !important; cursor: pointer; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease, transform .15s ease !important; margin: 0 !important; position: relative; /* para la flecha */ } /* Flecha → */ #edi-i35d1oo [data-ats-form-button="submit"] button::after{ content: "→"; font-size: 18px; margin-left: 10px; transition: transform .25s ease; display: inline-block; } /* Hover: azul más claro + flecha se mueve */ #edi-i35d1oo [data-ats-form-button="submit"] button:hover{ background: #F9F9F9 !important; /* azul más claro en hover */ color: #092A33 !important; border-color: #0c3a46 !important; transform: translateY(-1px); } I agree to VeraContent's privacy policy* #edi-i35d1oo [data-ats-form-button="submit"] button:hover::after{ transform: translateX(4px); } /* Active / Focus */ #edi-i35d1oo [data-ats-form-button="submit"] button:active{ transform: translateY(0); } #edi-i35d1oo [data-ats-form-button="submit"] button:focus-visible{ outline: none !important; box-shadow: 0 0 0 3px rgba(9,42,51,.25) !important; } /* ✅ Casilla obligatoria: sin borde rojo hasta que se intente enviar */ input[type="checkbox"]:required:user-invalid { outline: 2px solid #F0504F; outline-offset: 2px; } input[type="checkbox"]:required:valid { outline: none; } /* Inputs / selects / textareas (EXCLUYE checkbox y radio) */ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] input:not([type="checkbox"]):not([type="radio"]), #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] textarea, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] select{ display: block; width: 100% !important; max-width: 480px; margin: 0; border: 1px solid #092A33 !important; border-radius: 6px !important; background: #fff !important; padding: 16px 14px !important; box-shadow: 0 1px 0 rgba(9,42,51,0.06), 0 2px 6px rgba(9,42,51,0.12) !important; outline: none !important; box-sizing: border-box !important; -webkit-appearance: none; appearance: none; } /* Focus de los campos de texto (no checkbox/radio) */ #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] input:not([type="checkbox"]):not([type="radio"]):focus, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] textarea:focus, #edi-i35d1oo [data-editable="webformNewItem"] [data-editable-item="field"] select:focus{ border-color: #092A33 !important; box-shadow: 0 0 0 3px rgba(9,42,51,0.12), 0 2px 6px rgba(9,42,51,0.18) !important; } /* ✅ Checkbox/radio: vuelve a su look nativo y sin borde forzado */ #edi-i35d1oo input[type="checkbox"], #edi-i35d1oo input[type="radio"]{ -webkit-appearance: checkbox; appearance: checkbox; width: auto !important; height: auto !important; margin: 0 8px 0 0 !important; border: none !important; box-shadow: none !important; outline: none; /* se controlará con validación */ } /* ✅ Casilla obligatoria: SIN borde rojo hasta intentar enviar */ #edi-i35d1oo input[type="checkbox"]:required:user-invalid { outline: 2px solid #F0504F; outline-offset: 2px; } #edi-i35d1oo input[type="checkbox"]:required:valid { outline: none; } </style>
International 
SEO in the 
age of AI
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<style> /* Remove the inner border we tried before */ #edi-llvq4y1 [data-editable="countdownTimerDigit"] { border: 0 !important; box-shadow: none !important; } /* Put the white border on the actual tiles */ #edi-llvq4y1 [data-editable="countdownTimerBox"] { border: 2px solid #F9F9F9 !important; /* your off-white */ border-radius: 10px !important; /* match the tile’s rounding */ padding: 6px 10px !important; /* keep space between numbers & border */ box-sizing: border-box !important; } /* Keep numbers nicely centered */ #edi-llvq4y1 [data-editable="countdownTimerDigit"] .text-content { display: flex; align-items: center; justify-content: center; line-height: 1; } </style>
Don't just keep up 
with global SEO. 
Get ahead of it.
29 OCT
      2025
FREE LIVE WEBINAR
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<style> /* Full-bleed para el box #edi-vupd6oy */ #edi-hjxnogp{ background: 53DFCA !important; /* color de la franja */ min-height: 120px; /* alto de la franja; ajusta a tu gusto */ /* full-bleed sin importar el contenedor centrado */ width: 100vw !important; position: relative !important; left: 50% !important; right: 50% !important; margin-left: -50vw !important; margin-right: -50vw !important; } </style>
4PM CET
11AM EDT
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<div style="margin-top: 12px;"> <label style="font-family: 'DM Sans', sans-serif; font-size:14px; color:#092A33;"> <input type="checkbox" name="privacy_consent" value="accepted" required style="margin-right: 8px;"> I agree to VeraContent's <a href="https://policies.google.com/privacy" target="_blank" style="color:#092A33; text-decoration: underline;">privacy policy*</a> </label> </div>
00
DAYS
00
HOURS
00
MINUTES
00
SECONDS
With Google’s AI Overviews 
and algorithm updates, international search is changing in real time. 
If your brand doesn’t adapt, you risk losing visibility in critical markets.

This free live webinar is 
designed for global marketing leaders seeking actionable strategies to stay competitive, visible and relevant worldwide.

Is your international SEO 
strategy ready  for AI
What you'll take away
Clarity on the biggest shifts in global 
search: AI Overviews, algorithm updates 
and emerging discovery channels
Key tactics to apply immediately to  
boost visibility, authority and trust 
Strategies to scale SEO effectively 
across languages, cultures and 
markets with proven frameworks
Real-world examples of brands 
thriving  in the new SEO landscape
Actionable ways to future-proof your 
global SEO strategy, keeping you 
competitive and ahead of AI   trends
An exclusive, free downloadable 
resource packed with insights, tips 
and tools for global SEO success
Meet your speakers
Naomi Bleackley
Moderator | Account Manager 
& AI Specialist at VeraContent
Naomi Bleackley combines expertise in multilingual communication with a forward-thinking approach to AI in marketing. As an Account Manager and AI Specialist at VeraContent, she manages global client relationships  while  driving innovation through AI-integrated content  strategies.With a background in translation, localization, and project management, Naomi delivers practical  solutions that connect creativity and technology.
Irene Morcilo
Joshua Saxon
Speaker | International SEO Specialist 
& Project Manager at VeraContent
Speaker | Managing Editor 
at Relate Content Marketing
Irene Morcillo specializes in helping brands navigate the complexities of international SEO and multilingual content strategies.As a Project Manager  and SEO Specialist at VeraContent, she works with global clients to boost visibility and ensure localized content aligns with ever-changing search engine requirements. Irene combines deep technical knowledge with a strategic understanding of cultural nuances across European markets.
Josh Saxon is a content strategist and SEO specialist with over 20 years of experience helping brands like Semrush, StubHub, and VeraContent grow through high-performing content. As Managing Editor at Relate Content Marketing, he combines SEO expertise with a journalist’s instinct for storytelling to scale audiences, build trust, and deliver content that ranks and converts.
Register to 
future-proof
your global 
SEO strategy
Save your spot.
Stay visible 
globally
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<style> /* ===== Bottom form (wider) — ONLY #edi-z338mj8 ===== */ /* Center each field group and set the wider column */ #edi-z338mj8 [data-editable="webformNewItem"]{ max-width: 620px; margin: 0 auto 24px !important; } /* Labels */ #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="label"], #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="label"] label{ padding: 0 !important; margin: 0 !important; } #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="label"] label{ display:block; font-size:14px; font-weight:600; color:#092A33 !important; line-height:1.25; margin-bottom:12px !important; text-align:left !important; } /* Field wrapper reset */ #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"]{ margin:0 !important; padding:0 !important; border:0 !important; box-shadow:none !important; overflow:visible !important; } #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"]::before, #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"]::after{ content:none !important; display:none !important; } /* Inputs */ #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] input, #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] textarea, #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] select{ display:block; width:100% !important; max-width:620px; margin:0 auto; border:1px solid #092A33 !important; border-radius:6px !important; background:#fff !important; padding:16px 14px !important; box-shadow: 0 1px 0 rgba(9,42,51,.06), 0 2px 6px rgba(9,42,51,.12) !important; outline:none !important; box-sizing:border-box !important; -webkit-appearance:none; appearance:none; } /* Focus */ #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] input:focus, #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] textarea:focus, #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] select:focus{ border-color:#092A33 !important; box-shadow: 0 0 0 3px rgba(9,42,51,.12), 0 2px 6px rgba(9,42,51,.18) !important; } /* Submit button — azul con texto blanco; hover blanco con texto azul + flecha */ #edi-z338mj8 [data-ats-form-button="submit"] button, #edi-z338mj8 [data-ats-form-button="submit"] a{ background: #092A33 !important; color: #fff !important; border: 2px solid #092A33 !important; border-radius: 9999px !important; padding: 12px 28px !important; font-family: "Merriweather Sans", Arial, sans-serif !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.2 !important; display: inline-block !important; text-decoration: none !important; cursor: pointer !important; position: relative !important; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease, transform .15s ease !important; } /* Flecha → */ #edi-z338mj8 [data-ats-form-button="submit"] button::after, #edi-z338mj8 [data-ats-form-button="submit"] a::after{ content: "→"; font-size: 18px; margin-left: 10px; display: inline-block; transition: transform .25s ease; } /* Hover */ #edi-z338mj8 [data-ats-form-button="submit"] button:hover, #edi-z338mj8 [data-ats-form-button="submit"] a:hover{ background: #fff !important; color: #092A33 !important; border-color: #092A33 !important; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,0,0,.18) !important; } #edi-z338mj8 [data-ats-form-button="submit"] button:hover::after, #edi-z338mj8 [data-ats-form-button="submit"] a:hover::after{ transform: translateX(4px); } /* Active / Focus */ #edi-z338mj8 [data-ats-form-button="submit"] button:active, #edi-z338mj8 [data-ats-form-button="submit"] a:active{ transform: translateY(0); box-shadow: 0 2px 6px rgba(0,0,0,.12) !important; } #edi-z338mj8 [data-ats-form-button="submit"] button:focus-visible, #edi-z338mj8 [data-ats-form-button="submit"] a:focus-visible{ outline: none !important; box-shadow: 0 0 0 3px rgba(9,42,51,.25) !important; } /* Mobile */ @media (max-width: 480px){ #edi-z338mj8 [data-editable="webformNewItem"], #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] input, #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] textarea, #edi-z338mj8 [data-editable="webformNewItem"] [data-editable-item="field"] select{ max-width:100%; } } </style>
29th October
4PM CET | 11AM EDT
Live Webinar
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<div style="margin-top: 12px;"> <label style="font-family: 'DM Sans', sans-serif; font-size:14px; color:#092A33;"> <input type="checkbox" name="privacy_consent" value="accepted" required style="margin-right: 8px;"> I agree to VeraContent's <a href="https://policies.google.com/privacy" target="_blank" style="color:#092A33; text-decoration: underline;">privacy policy*</a> </label> </div>
This is a custom code placeholder.
Switch to Preview or publish the page
to see how your code works.
Double-click to edit
<style> /* Smooth scroll even without JS-driven scrolling */ html { scroll-behavior: smooth; } /* If the button widget injects an empty <a href=""> wrapper, don't let it steal clicks */ [data-editable="button"] a[href=""] { pointer-events: none; } </style> <script> (function () { const OUTSIDE_BTN_SEL = '[data-editable="button"] a, [data-editable="button"] button, ' + '[data-editable="webinarButton"] a, [data-editable="webinarButton"] button'; // Where to scroll (prefers the known bottom-form section id) function getTargetSection() { const explicit = document.querySelector('#section-my1tyyn'); if (explicit) return explicit; const forms = Array.from(document.querySelectorAll('[data-editable="webinarNew"][data-mode="form"]')); const bottomForm = forms.length ? forms[forms.length - 1] : null; return bottomForm ? (bottomForm.closest('[data-section="section"]') || bottomForm) : null; } function ensureTargetId(el) { if (!el) return null; if (!el.id) el.id = 'vc-scroll-target'; return el.id; } function scrollToEl(el, offset = 12) { const y = el.getBoundingClientRect().top + window.pageYOffset - offset; window.scrollTo({ top: y, behavior: 'smooth' }); } // Wire direct click handler (in case anchors are empty or JS needs to handle) function wireButtons(target) { const outsides = Array.from(document.querySelectorAll(OUTSIDE_BTN_SEL)) .filter(el => !el.closest('[data-editable="webinarNew"]')); // exclude buttons inside forms if (outsides.length === 0) return false; const id = ensureTargetId(target); // Progressive enhancement: make <a> tags work even if JS fails outsides.forEach(el => { if (el.tagName === 'A') { const href = el.getAttribute('href') || ''; if (!href || href === '#') el.setAttribute('href', `#${id}`); } // Remove previous handlers before adding (rebinding safe) el._vcBound && el.removeEventListener('click', el._vcBound, { passive:false }); const handler = function (e) { // If it's our in-page hash, prevent default and do smooth scroll with offset if (el.tagName !== 'A' || (el.getAttribute('href') || '').startsWith('#')) { e.preventDefault(); scrollToEl(target, 12); } }; el.addEventListener('click', handler, { passive: false }); el._vcBound = handler; }); return outsides.length > 0; } // Event delegation (covers late-injected buttons on the live page) function delegateClicks(target) { if (document._vcDelegated) return; document.addEventListener('click', function (e) { const el = e.target.closest && e.target.closest(OUTSIDE_BTN_SEL); if (!el || el.closest('[data-editable="webinarNew"]')) return; const href = el.tagName === 'A' ? (el.getAttribute('href') || '') : ''; if (href === '' || href.startsWith('#')) { e.preventDefault(); scrollToEl(target, 12); } }, true); document._vcDelegated = true; } function bindAll() { const target = getTargetSection(); if (!target) return false; wireButtons(target); delegateClicks(target); return true; } // Try after DOM is interactive, after full load, and watch for mutations function robustBind() { let bound = bindAll(); // Retry for a few seconds in case live injects widgets late const start = Date.now(); const retry = setInterval(() => { bound = bindAll() || bound; if (bound && Date.now() - start > 500) { clearInterval(retry); } if (Date.now() - start > 8000) { clearInterval(retry); } // stop after 8s }, 200); // Mutation observer catches late widget loads/re-renders const mo = new MutationObserver(() => bindAll()); mo.observe(document.documentElement, { childList: true, subtree: true }); // Keep the observer; it's cheap and handles editor/platform swaps. } if (document.readyState === 'complete' || document.readyState === 'interactive') { robustBind(); } else { document.addEventListener('DOMContentLoaded', robustBind); } window.addEventListener('load', bindAll); })(); </script>
©2025 VeraContent - hello@veracontent.com