window[«__codeletBootstrap__»]=JSON.parse(‘{«A»:»A»,»B»:»20260817-05-91af805″,»C»:{«Abril Fatface»:»YACgEZbkUVE,0″,»Alfa Slab One»:»YACgEYS9sJU,0″,»Anton»:»YACgEcYqQ-A,0″,»Archivo»:»YAHO2-t-jNE,0″,»Arial»:»YAGyDvJ_4Ts,0″,»Bebas Neue»:»YACgESME5ew,0″,»Bricolage Grotesque»:»YAFyMcdwzpc,0″,»Canva Sans»:»YAFLd8sKbwc,2″,»Caveat»:»YALBs2ploWQ,0″,»Comic Sans MS»:»YAHO2VMiyZo,0″,»Cormorant Garamond»:»YAFdJhX-538,0″,»Courier New»:»YAGzXiGs0_8,0″,»DM Sans»:»YAD1aU3sLnI,0″,»DM Serif Display»:»YAD1aYG82rc,0″,»Forum»:»YACgEcnnqB4,0″,»Fraunces»:»YAEul-FRQw4,0″,»Georgia»:»YAGzXkO0pEM,0″,»Helvetica Neue»:»YAFcf6CtJfI,0″,»Impact»:»YAFcfnjI7Vk,0″,»Inter»:»YAFdJvSyp_k,3″,»Iowan Old Style»:»YAGNIFa8j9o,0″,»Jacques Francois»:»YAHO2a5g66Q,0″,»JetBrains Mono»:»YAFdJksXcAk,0″,»Libre Baskerville»:»YACgEUFdPdA,0″,»Manrope»:»YAHO2b2feC4,0″,»Merriweather»:»YACgEXvHxxs,0″,»Montserrat»:»YADLjI9qxTA,0″,»Nunito»:»YACgEX8C5Gg,0″,»Oleo Script»:»YACgEQQ14jI,0″,»Phantom Sans»:»YAHO2E8Pb88,0″,»Playfair Display»:»YACgEYmuCJE,0″,»Poppins»:»YAFdJjbTu24,1″,»Press Start 2P»:»YAFyGr-8pmQ,0″,»Quicksand»:»YADWjpfPmdk,0″,»Raleway»:»YACgEVg3xZg,0″,»Segoe UI»:»YAHNdRD1Klw,0″,»Source Sans 3″:»YAG4lO1Mj10,0″,»Spectral»:»YAHO2rVUHIM,0″,»Times New Roman»:»YAGzXW3gftg,0″,»Times»:»YAGzXW3gftg,0″,»Ubuntu»:»YACgERDU–Q,0″,»Work Sans»:»YAGXhLOKv44,0″,»Yellowtail»:»YACgEYG4kG4,0″,»ui-monospace»:»YADlN8CFZ8Q,0″,»ui-sans-serif»:»YACkoN-xg4g,0″}}’);
/_sdk/7949ff62d67710d5.telemetry_sdk.js
Seminario de trading en vivo
https://cdn.tailwindcss.com/3.4.17
https://cdn.jsdelivr.net/npm/lucide@0.263.0/dist/umd/lucide.min.js
/_sdk/0e8d3a91e1c6f495.data_sdk.js
:root {
–ink: #0c1720;
–paper: #f5f7f5;
–muted: #aeb9b7;
–aqua: #b8f0d4;
–line: rgba(229, 238, 232, 0.15);
}
* { box-sizing: border-box; }
body {
width: 100%;
margin: 0;
font-family: «DM Sans», sans-serif;
background: #0c1720;
color: #f5f7f5;
}
.page-shell {
width: 100%;
min-height: calc(100 * min(var(–vh, 1vh), 1vh));
position: relative;
overflow: hidden;
isolation: isolate;
}
.page-shell::before {
content: «»;
position: absolute;
inset: 0;
z-index: -2;
background-image:
linear-gradient(rgba(184, 240, 212, 0.045) 1px, transparent 1px),
linear-gradient(90deg, rgba(184, 240, 212, 0.045) 1px, transparent 1px);
background-size: 68px 68px;
mask-image: linear-gradient(to bottom, black 10%, transparent 86%);
}
.page-shell::after {
content: «»;
position: absolute;
width: 48rem;
height: 48rem;
right: -19rem;
top: -22rem;
z-index: -1;
border-radius: 999px;
background: radial-gradient(circle, rgba(57, 141, 115, 0.28), transparent 66%);
filter: blur(8px);
}
.site-header {
border-bottom: 1px solid var(–line);
}
.brand-mark {
width: 28px;
height: 28px;
display: inline-grid;
place-items: center;
border: 1px solid rgba(184, 240, 212, 0.55);
border-radius: 50%;
font-family: «Fraunces», serif;
font-size: 14px;
color: var(–aqua);
}
.hero-layout {
display: grid;
grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
gap: clamp(2.5rem, 8vw, 8rem);
align-items: center;
padding: clamp(4rem, 9vw, 8rem) 0 clamp(4rem, 7vw, 6rem);
}
.eyebrow {
display: inline-flex;
align-items: center;
gap: 0.6rem;
padding: 0.45rem 0.75rem;
border: 1px solid rgba(184, 240, 212, 0.28);
border-radius: 999px;
letter-spacing: 0.12em;
text-transform: uppercase;
font-size: 0.69rem;
}
.pulse-dot {
width: 7px;
height: 7px;
border-radius: 50%;
background: #b8f0d4;
box-shadow: 0 0 0 0 rgba(184, 240, 212, 0.55);
animation: pulse 1.8s infinite;
}
.display-title {
font-family: «Fraunces», Georgia, serif;
font-size: clamp(3rem, 6.2vw, 5.7rem);
line-height: 0.99;
letter-spacing: -0.055em;
max-width: 760px;
margin: 1.45rem 0 1.1rem;
}
.signature {
font-family: «Fraunces», Georgia, serif;
font-size: clamp(1.2rem, 2vw, 1.55rem);
font-style: italic;
}
.intro-copy {
max-width: 590px;
font-size: 1.08rem;
line-height: 1.65;
margin-top: 2rem;
}
.schedule-card {
max-width: 590px;
display: flex;
gap: 1rem;
margin-top: 2.35rem;
padding: 1.15rem 0;
border-top: 1px solid var(–line);
border-bottom: 1px solid var(–line);
}
.schedule-icon {
flex: 0 0 auto;
color: var(–aqua);
margin-top: 0.15rem;
}
.registration-card {
position: relative;
padding: clamp(1.65rem, 4vw, 2.65rem);
border: 1px solid rgba(233, 241, 237, 0.16);
border-radius: 4px;
box-shadow: 0 26px 90px rgba(0, 0, 0, 0.2);
}
.registration-card::before {
content: «»;
position: absolute;
top: 0;
left: 2.4rem;
right: 2.4rem;
height: 2px;
background: #b8f0d4;
}
.form-field {
width: 100%;
margin-top: 0.45rem;
padding: 0.9rem 0;
border: 0;
border-bottom: 1px solid rgba(12, 23, 32, 0.28);
outline: none;
background: transparent;
color: #0c1720;
font: inherit;
transition: border-color 0.2s ease;
}
.form-field:focus {
border-bottom-color: #176c57;
box-shadow: 0 2px 0 #176c57;
}
.form-field::placeholder { color: #71807a; }
.primary-action {
width: 100%;
display: inline-flex;
justify-content: center;
align-items: center;
gap: 0.65rem;
border: 0;
border-radius: 2px;
padding: 1rem 1.1rem;
cursor: pointer;
transition: transform 0.2s ease, filter 0.2s ease;
}
.primary-action:hover { transform: translateY(-2px); filter: brightness(1.07); }
.primary-action:focus-visible,
.form-field:focus-visible {
outline: 3px solid rgba(23, 108, 87, 0.42);
outline-offset: 3px;
}
.primary-action:disabled { cursor: wait; opacity: 0.72; transform: none; }
.loading-label { display: none; }
.is-loading .button-label { display: none; }
.is-loading .loading-label { display: inline-flex; align-items: center; gap: 0.55rem; }
.small-print {
text-align: center;
font-size: 0.78rem;
line-height: 1.5;
}
.confirmation-panel {
min-height: 385px;
display: flex;
flex-direction: column;
justify-content: center;
}
.check-orb {
width: 50px;
height: 50px;
display: grid;
place-items: center;
border-radius: 50%;
margin-bottom: 1.5rem;
color: #176c57;
background: rgba(184, 240, 212, 0.8);
}
.status-message {
min-height: 1.4rem;
margin-top: 0.9rem;
font-size: 0.85rem;
text-align: center;
color: #a23b2a;
}
.reveal {
animation: rise 0.7s both;
}
.reveal-delay { animation: rise 0.7s 0.12s both; }
@keyframes rise {
from { opacity: 0; transform: translateY(18px); }
to { opacity: 1; transform: translateY(0); }
}
@keyframes pulse {
70% { box-shadow: 0 0 0 8px rgba(184, 240, 212, 0); }
100% { box-shadow: 0 0 0 0 rgba(184, 240, 212, 0); }
}
@media (max-width: 800px) {
.hero-layout { grid-template-columns: 1fr; gap: 3rem; }
.registration-card { max-width: 560px; }
}
/_sdk/eba18683f23e5798.resizing_sdk.js
Seminario de trading en vivo
por Ramón Morell
20 minutos analizando mercados en vivo y explorando posibilidades de trading en tiempo real.
Próximas sesiones
Martes y jueves a las 08:00 (hora peninsular española)
/_sdk/a051f9537983733d.editing_sdk.js
const form = document.getElementById(‘registration-form’);
const submitButton = document.getElementById(‘submit-button’);
const statusMessage = document.getElementById(‘form-status’);
const formView = document.getElementById(‘registration-form-view’);
const confirmationView = document.getElementById(‘confirmation-view’);
let dataReady = false;
function setLoading(isLoading) {
submitButton.disabled = isLoading;
submitButton.classList.toggle(‘is-loading’, isLoading);
}
const dataHandler = {
onDataChanged() {
dataReady = true;
}
};
async function initializeSheet() {
const result = await window.dataSdk.init(dataHandler);
if (!result.isOk) {
statusMessage.textContent = ‘No hemos podido preparar el registro. Inténtalo de nuevo en unos segundos.’;
return;
}
dataReady = true;
}
form.addEventListener(‘submit’, async function(event) {
event.preventDefault();
statusMessage.textContent = »;
const nombre = document.getElementById(‘nombre’).value.trim();
const email = document.getElementById(‘email’).value.trim();
const sesion = document.getElementById(‘sesion’).value;
const mayorEdad = document.getElementById(‘adult-confirmation’).checked;
if (!nombre || !email) {
statusMessage.textContent = ‘Completa tu nombre y email para reservar tu plaza.’;
return;
}
if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) {
statusMessage.textContent = ‘Introduce una dirección de email válida.’;
return;
}
if (!sesion) {
statusMessage.textContent = ‘Elige una sesión para reservar tu plaza.’;
return;
}
if (!mayorEdad) {
statusMessage.textContent = ‘Confirma que eres mayor de edad para reservar tu plaza.’;
return;
}
if (!dataReady) {
statusMessage.textContent = ‘El registro se está preparando. Inténtalo de nuevo en unos segundos.’;
return;
}
setLoading(true);
const result = await window.dataSdk.create({
nombre: nombre,
email: email,
sesion: sesion,
mayor_edad: mayorEdad,
registered_at: new Date().toISOString()
});
setLoading(false);
if (result.isOk) {
formView.classList.add(‘hidden’);
confirmationView.classList.remove(‘hidden’);
} else {
statusMessage.textContent = ‘No hemos podido guardar tu plaza. Revisa la conexión e inténtalo de nuevo.’;
}
});
document.addEventListener(‘DOMContentLoaded’, function() {
lucide.createIcons();
initializeSheet();
});