1<!DOCTYPE html> 2<html lang="es"> 3<head> 4<meta charset="utf-8"/> 5<meta content="width=device-width, initial-scale=1.0" name="viewport"/> 6<title>Contacto | Convergente Radio</title> 7<meta content="Contacta a Convergente Radio por formulario, WhatsApp, correo o ubicación en Guadalajara." name="description"/> 8<link href="https://convergenteradio.com/contacto.html" rel="canonical"/> 9<link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;600;800;900&display=swap" rel="stylesheet"/>
10<script src="https://cdn.jsdelivr.net/npm/@hotwired/[email protected]/dist/turbo.es2017-umd.js"></script>
10 11<link href="css/style.css" rel="stylesheet"/> 12<link href="css/tailwind.css" rel="stylesheet"/> 13<!-- Open Graph --> 14<meta content="website" property="og:type"/> 15<meta content="Contacto | Convergente Radio" property="og:title"/> 16<meta content="EscrÃbenos tus dudas, sugerencias o mensajes para Convergente Radio." property="og:description"/> 17<meta content="assets/og-image.png" property="og:image"/> 18<meta content="https://convergenteradio.com/contacto.html" property="og:url"/> 19<meta content="summary_large_image" name="twitter:card"/>
19<script type="application/ld+json">{"@context": "https://schema.org", "@type": "Organization", "name": "Contacto | Convergente Radio", "url": "https://convergente.mx/contacto.html", "description": "Explora el contenido exclusivo de Contacto | Convergente Radio en Convergente. Descubre nuestra programación, locutores y más."}</script>
19</head> 20<body> 21<!-- DECORATIVE BLOBS --> 22<div class="glass-blob blob-1"></div> 23<div class="glass-blob blob-2"></div> 24<!-- FLOATING WHATSAPP --> 25<a aria-label="WhatsApp" class="floating-ws" href="https://wa.me/3321178297" rel="noopener noreferrer" target="_blank"> 26<img alt="" class="invert" loading="lazy" src="https://cdn.jsdelivr.net/gh/simple-icons/simple-icons/icons/whatsapp.svg"/> 27</a> 28<!-- MOBILE HEADER --> 29<header class="mobile-header"> 30<a href="index.html"> 31<img alt="C" class="w-10 h-10" loading="lazy" src="assets/logo.svg"/> 32</a> 33<button aria-label="Menu" class="nav-toggle" onclick="toggleMenu()"> 34<span></span> 35<span></span> 36<span></span> 37</button> 38</header> 39<!-- NAVIGATION (Side) --> 40<nav class="nav-dock"> 41<a class="mb-0" href="index.html"> 42<img alt="C" class="w-10 h-10" loading="lazy" src="assets/logo.svg"/> 43</a> 44<a class="nav-link" href="index.html#hero">Inicio</a> 45<a class="nav-link" href="index.html#programas">Programación</a> 46<a class="nav-link" href="index.html#nosotros">Nosotros</a> 47<a class="nav-link" href="index.html#locutores">Voces</a> 48<a class="nav-link active" href="contacto.html">Contacto</a> 49</nav> 50<!-- MOBILE OVERLAY --> 51<div class="nav-overlay" id="mobileNav"> 52<div class="nav-overlay-content"> 53<a class="nav-link" href="index.html#hero">Inicio</a> 54<a class="nav-link" href="index.html#programas">Programación</a> 55<a class="nav-link" href="index.html#nosotros">Nosotros</a> 56<a class="nav-link" href="index.html#locutores">Voces</a> 57<a class="nav-link" href="contacto.html">Contacto</a> 58</div> 59</div> 60<!-- MAIN CONTENT --> 61<main class="max-w-nexus mx-auto px-6 py-16 md:py-32 reveal"> 62<!-- 1. HEADER TEXT --> 63<div class="mb-20 text-center"> 64<h2 class="text-accent text-xs font-black uppercase tracking-[0.5em] mb-4">ESCRÃBENOS</h2> 65<h1 class="text-white md:text-8xl font-black mb-8 leading-none uppercase" style="font-size: clamp(2.75rem, 10vw, 6rem); overflow-wrap: anywhere;">DUDAS O<br/><span class="text-accent">SUGERENCIAS</span></h1> 66<p class="text-white/40 text-lg md:text-xl max-w-2xl mx-auto leading-relaxed"> 67 Completa el formulario y nos pondremos en contacto contigo a la brevedad posible. Tu opinión es fundamental para nosotros. 68 </p> 69</div> 70<!-- 2. CONTACT CARDS --> 71<div class="grid grid-cols-1 md:grid-cols-3 gap-8 mb-24"> 72<!-- WhatsApp / Tel --> 73<a class="nexus-card-style hover:scale-[1.02] transition-all group p-8 text-center flex flex-col items-center" href="https://wa.me/3321178297" rel="noopener noreferrer" target="_blank"> 74<div class="mb-6 w-12 h-12 bg-green-500/20 rounded-xl flex items-center justify-center group-hover:bg-green-500/30 transition-colors"> 75<img alt="WA" class="w-6 h-6 invert opacity-80" loading="lazy" src="https://cdn.jsdelivr.net/gh/simple-icons/simple-icons/icons/whatsapp.svg"/> 76</div> 77<h3 class="text-white text-xl font-bold mb-1 uppercase tracking-tight">WhatsApp</h3> 78<p class="text-white/60 font-bold mb-4">Tel. 33 2117 8297</p> 79<span class="text-accent font-black text-[10px] uppercase tracking-widest">Atención Inmediata</span> 80</a> 81<!-- Email --> 82<a class="nexus-card-style hover:scale-[1.02] transition-all group p-8 text-center flex flex-col items-center" href="#" onclick="window.location.href='mailto:'+['contacto','convergenteradio.com'].join('@'); return false;"> 83<div class="mb-6 w-12 h-12 bg-accent/20 rounded-xl flex items-center justify-center group-hover:bg-accent/30 transition-colors"> 84<img alt="Email" class="w-6 h-6 invert opacity-80" loading="lazy" src="https://cdn.jsdelivr.net/gh/simple-icons/simple-icons/icons/maildotru.svg"/> 85</div> 86<h3 class="text-white text-xl font-bold mb-1 uppercase tracking-tight">Email</h3> 87<p class="text-white/60 font-bold mb-4"> 88<span id="email-obf">contacto [arroba] convergenteradio.com</span>
89<script> 90 document.getElementById('email-obf').textContent = ['contacto', 'convergenteradio.com'].join('@'); 91 </script>
91 92</p> 93<span class="text-accent font-black text-[10px] uppercase tracking-widest">Escribir Ahora</span> 94</a> 95<!-- Location --> 96<a class="nexus-card-style hover:scale-[1.02] transition-all group p-8 text-center flex flex-col items-center" href="https://www.google.com/maps/search/?api=1&query=Av+de+Las+Rosas+46+Chapalita+Guadalajara+Jal" rel="noopener noreferrer" target="_blank"> 97<div class="mb-6 w-12 h-12 bg-white/10 rounded-xl flex items-center justify-center group-hover:bg-accent/20 transition-colors"> 98<span class="text-2xl">ð</span> 99</div> 100<h3 class="text-white text-xl font-bold mb-1 uppercase tracking-tight">Ubicación</h3> 101<p class="text-white/60 font-medium mb-4 leading-relaxed">Av de Las Rosas 46-int. 7, Chapalita,<br/>45040 Guadalajara, Jal.</p> 102<span class="text-accent font-black text-[10px] uppercase tracking-widest">Abrir en Google Maps</span> 103</a> 104</div> 105<!-- 3. FORM SECTION --> 106<div class="max-w-3xl mx-auto reveal"> 107<div class="nexus-card-style !p-10 border border-white/5"> 108<form action="./send-email.php" class="space-y-6" data-turbo="false" id="contact-official-form" method="POST"> 109<div class="grid grid-cols-1 md:grid-cols-2 gap-6"> 110<div class="space-y-2"> 111<label class="text-[10px] font-black text-white/30 uppercase tracking-widest ml-2" for="contact-name">Nombre</label> 112<input autocomplete="name" class="input-nexus" id="contact-name" name="name" required="" type="text"/> 113</div> 114<div class="space-y-2"> 115<label class="text-[10px] font-black text-white/30 uppercase tracking-widest ml-2" for="contact-phone">Whatsapp / Tel.</label> 116<input autocomplete="tel" class="input-nexus" id="contact-phone" name="phone" required="" type="tel"/> 117</div> 118</div> 119<div class="space-y-2"> 120<label class="text-[10px] font-black text-white/30 uppercase tracking-widest ml-2" for="contact-email">Email</label> 121<input autocomplete="email" class="input-nexus" id="contact-email" name="email" required="" type="email"/> 122</div> 123<div class="space-y-2"> 124<label class="text-[10px] font-black text-white/30 uppercase tracking-widest ml-2" for="contact-message">Mensaje</label> 125<textarea class="input-nexus" id="contact-message" name="message" required="" rows="5"></textarea> 126</div> 127<!-- Status --> 128<div class="hidden text-sm font-bold uppercase tracking-widest p-4 rounded-xl text-center" id="form-status"></div> 129<button class="btn-nexus btn-nexus-accent w-full py-6" id="contact-submit" type="submit"> 130<span class="btn-text">Enviar Mensaje</span> 131<span class="btn-loader hidden"> 132<svg class="animate-spin h-5 w-5 text-white mx-auto" fill="none" viewbox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> 133<circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle> 134<path class="opacity-75" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" fill="currentColor"></path> 135</svg> 136</span> 137</button> 138<p class="text-[10px] text-white/20 text-center uppercase tracking-widest"> 139 Seguridad por reCAPTCHA v3 140 </p> 141</form> 142<!-- Processing Script -->
vendor: 61 bytes, lines 142-143
142 143<script src="https://www.google.com/recaptcha/api.js?render=
1436LdFm8EsAAAAAOReZUTIxJusl52g3MTBxQTzmKta
vendor: 12 bytes, line 143
143"></script>
144<script> 145 (function() { 146 const form = document.getElementById('contact-official-form'); 147 if (!form) return; 148 149 form.addEventListener('submit', function(e) { 150 e.preventDefault(); 151 const statusEl = document.getElementById('form-status'); 152 const submitBtn = document.getElementById('contact-submit'); 153 const btnText = submitBtn.querySelector('.btn-text'); 154 const btnLoader = submitBtn.querySelector('.btn-loader'); 155 const SITE_KEY = '6LdFm8EsAAAAAOReZUTIxJusl52g3MTBxQTzmKta'; 156 157 // UI reset 158 statusEl.classList.add('hidden'); 159 submitBtn.disabled = true; 160 if (btnText) btnText.classList.add('hidden'); 161 if (btnLoader) btnLoader.classList.remove('hidden'); 162 163 const sendData = (token) => { 164 const controller = new AbortController(); 165 const timeoutId = setTimeout(() => controller.abort(), 15000); 166 167 const formData = new FormData(form); 168 formData.append('g-recaptcha-response', token); 169 170 fetch(form.getAttribute('action'), { 171 method: 'POST', 172 body: formData, 173 headers: { 'Accept': 'application/json' }, 174 signal: controller.signal 175 }) 176 .then(r => r.json()) 177 .then(result => { 178 clearTimeout(timeoutId); 179 if (result.status === 'success') { 180 statusEl.textContent = result.message; 181 statusEl.className = 'text-sm font-bold uppercase p-4 rounded-xl text-center bg-green-500/20 text-green-400'; 182 form.reset(); 183 } else { 184 let errorInfo = result.message || 'Error'; 185 throw new Error(errorInfo); 186 } 187 }) 188 .catch(err => { 189 let errMsg = err.message; 190 if (err.name === 'AbortError') errMsg = "Tiempo agotado."; 191 statusEl.textContent = "Error: " + errMsg; 192 statusEl.className = 'text-sm font-bold uppercase p-4 rounded-xl text-center bg-red-500/20 text-red-100'; 193 }) 194 .finally(() => { 195 statusEl.classList.remove('hidden'); 196 submitBtn.disabled = false; 197 if (btnText) btnText.classList.remove('hidden'); 198 if (btnLoader) btnLoader.classList.add('hidden'); 199 }); 200 }; 201 202 if (typeof grecaptcha !== 'undefined' && grecaptcha.execute) { 203 grecaptcha.ready(() => { 204 grecaptcha.execute(SITE_KEY, { action: 'submit' }).then(sendData); 205 }); 206 } else { 207 statusEl.textContent = "Cargando reCAPTCHA..."; 208 statusEl.classList.remove('hidden'); 209 submitBtn.disabled = false; 210 } 211 }); 212 })(); 213 </script>
213 214</div> 215</div> 216</main> 217<!-- FOOTER --> 218<div id="footer-placeholder"></div> 219<!-- PLAYER --> 220<div class="player-nexus" data-turbo-permanent="" id="main-player"> 221<audio id="audio" preload="none"></audio> 222<div class="player-info"> 223<span class="en-vivo-badge">En Vivo</span> 224<span class="station-name">Convergente Radio</span> 225<span class="now-playing" id="now-playing-text"></span> 226</div> 227<div id="spectrum-bars"> 228<div class="spectrum-bar"></div> 229<div class="spectrum-bar"></div> 230<div class="spectrum-bar"></div> 231<div class="spectrum-bar"></div> 232<div class="spectrum-bar"></div> 233</div> 234<div class="player-btn-container"> 235<button aria-label="Reproducir" class="play-btn-nexus" id="play-btn" onclick="togglePlay()"><svg fill="currentColor" height="22" style="margin-left: 2px;" viewbox="0 0 24 24" width="22"><path d="M8 5v14l11-7z"></path></svg></button> 236</div> 237</div>
238<script defer="" src="https://cdn.jsdelivr.net/npm/[email protected]/dist/hls.min.js"></script>
vendor: 1 bytes, line 238
238
239<script defer="" src="js/versiculos.js"></script>
vendor: 1 bytes, line 239
239
240<script defer="" src="js/footer.js?v=1.2"></script>
vendor: 1 bytes, line 240
240
241<script defer="" src="js/main.js?v=1.2"></script>
241 242</body> 243</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.