CURSO BARISTA,PASO A PASO PARA PRINCIPIANTES

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Curso de Barista para Principiantes | Curso digital en video</title>
<meta name="description" content="Curso digital de barista en video para principiantes. Aprendé técnicas prácticas paso a paso. Acceso por correo electrónico y garantía de 7 días.">
<style>
  :root{
    --negro:#14110F; --espresso:#382319; --tostado:#65432F; --crema:#F6F0E7;
    --dorado:#C99A4A; --blanco:#FFFFFF; --radio:14px;
    --sombra:0 10px 30px rgba(20,17,15,.18);
  }
  *,*::antes,*::después{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--negro);background:var(--negro);line-height:1.6;overflow-x:hidden}
  img{max-width:100%;height:auto;display:block}
  a{color:inherit}
  h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.15;margin:0 0 .5em}
  p{margin:0 0 1em}
  .wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 20px;position:relative;z-index:1}
  .narrow{max-width:820px}
  .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  :focus-visible{outline:3px solid var(--dorado);outline-offset:3px}

  /* Granos de café decorativos */
  :root{--beans:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cg fill='%23C99A4A'%3E%3Cg transform='rotate(25 22 22)'%3E%3Cellipse cx='22' cy='22' rx='8' ry='11'/%3E%3C/g%3E%3Cg transform='rotate(-30 66 60)'%3E%3Cellipse cx='66' cy='60' rx='8' ry='11'/%3E%3C/g%3E%3C/g%3E%3Cpath d='M22 13 C18 20 26 26 22 33 M66 51 C62 58 70 64 66 71' stroke='%2314110F' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}
  .sec,.final{position:relative;overflow:hidden}
  .sec::before,.final::before{content:"";position:absolute;inset:0;background-image:var(--beans);background-size:120px 120px;opacity:.06;pointer-events:none;z-index:0}
  .hero::before{content:"";position:absolute;inset:0;background-image:var(--beans);background-size:140px 140px;opacity:.22;pointer-events:none;z-index:1}

  /* Vapor de café en el hero */
  .steam{position:absolute;right:8%;top:14%;width:220px;height:260px;z-index:1;pointer-events:none;filter:blur(12px);display:none}
  .steam span{position:absolute;bottom:0;width:38px;height:200px;border-radius:50%;background:linear-gradient(to top,rgba(246,240,231,.45),transparent);opacity:0;animation:bl-rise 7s ease-in infinite}
  .steam span:nth-child(1){left:0;animation-delay:0s}
  .steam span:nth-child(2){left:40%;animation-delay:2.3s}
  .steam span:nth-child(3){left:80%;animation-delay:4.6s}
  @keyframes bl-rise{0%{transform:translateY(40px);opacity:0}30%{opacity:.6}100%{transform:translateY(-220px) scaleX(1.6);opacity:0}}

  .topbar{background:var(--espresso);color:var(--dorado);text-align:center;font-size:.78rem;letter-spacing:.14em;padding:8px 0;font-weight:600}
  .topbar p{margin:0}

  .sec{padding:64px 0}
  .dark{background:#5a4032;color:#FFFFFF}
  .dark p{color:#E9DFD0}
  .cream{background:linear-gradient(180deg,#F6F0E7 0%,#EFE3D0 100%);color:var(--negro)}
  .cream p{color:#4a3d35}
  .offer{background:radial-gradient(circle at 80% 20%,#7a5440 0%,#5a4032 70%);color:#FFFFFF}
  .offer p{color:#E9DFD0}

  .eyebrow{display:inline-block;margin:0 0 14px;color:var(--dorado);font-size:.8rem;letter-spacing:.18em;font-weight:700;text-transform:uppercase}
  .h1{font-size:clamp(2rem,6vw,3.6rem);color:#14110F;font-weight:700}
  .barista-badge{aspect-ratio:1/1;width:100%;max-width:320px;margin:0 auto;border-radius:50%;background:radial-gradient(circle,#7a5440,#382319);color:#E0B56A;display:grid;place-items:center;font-family:Georgia,serif;font-size:3.5rem;font-weight:700;letter-spacing:.08em;border:4px solid #C99A4A;box-shadow:var(--sombra)}
  .h2{font-size:clamp(1.6rem,4vw,2.6rem);font-weight:700}
  .h3{font-size:1.2rem;font-weight:700}
  .lead{font-size:clamp(1.02rem,2.4vw,1.2rem);color:#EFE6D8;max-width:640px}
  .sub{max-width:680px;color:#5b4a40}
  .dark .sub,.offer .sub{color:#E9DFD0}
  .micro{font-size:.85rem;opacity:.85}

  /* HERO */
  .hero{position:relative;min-height:88vh;display:flex;align-items:center;background:#5a4032;color:var(--crema);overflow:hidden;padding:56px 0 40px}
  .hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;background:radial-gradient(circle at 72% 35%,rgba(201,154,74,.35) 0%,rgba(101,67,47,.65) 25%,#382319 50%,#14110F 85%)}
  .hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(246,240,231,.05) 0%,rgba(246,240,231,.15) 100%);z-index:1}
  .hero__in{position:relative;z-index:2}
  .benefits{list-style:none;padding:0;margin:22px 0;display:grid;gap:10px}
  .benefits li{font-weight:600}
  .benefits li span{color:var(--dorado)}
  .buybox{margin-top:26px;display:grid;gap:18px}
  .hero__in{color:#14110F;background:rgba(246,240,231,.95);border-radius:18px;padding:28px 22px;box-shadow:0 14px 40px rgba(20,17,15,.25);max-width:680px}
  .hero__in .eyebrow
  {color:#65432F} .hero__in .lead{color:#3a2d26}
  .hero__in .benefits li span{color:#65432F}
  .hero__in .price{background:#fff}
  .hero__in .price__label{color:#65432F}
  .hero__in .price__now{color:#14110F}
  .hero__in .price__note{color:#4a3d35}
  .hero__in .price--hl{background:#fff;border-color:#C99A4A}
  .hero__in .price--hl .price__now{color:#65432F}
  .hero__in .price--hl .price__label{color:#65432F}

  .price{background:rgba(255,255,255,.04);border:1px solid rgba(201,154,74,.5);border-radius:var(--radio);padding:16px 20px;max-width:360px}
  .price__label{display:block;color:var(--dorado);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
  .price__row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
  .price__now{font-size:clamp(2.2rem,6vw,2.8rem);color:var(--blanco);line-height:1.1}
  .price__old{color:#bfb3a6;font-size:1.1rem}
  .price__note{margin:6px 0 0;font-size:.82rem;color:#d9cdbd}
  .price--center{margin:0 auto;text-align:center}
  .price--hl{border:2px solid var(--dorado);background:linear-gradient(135deg,rgba(201,154,74,.20),rgba(255,255,255,.04));box-shadow:0 0 0 4px rgba(201,154,74,.14),var(--sombra);max-width:420px}
  .price--hl .price__label{font-size:.85rem;color:#E0B56A}
  .price--hl .price__now{font-size:clamp(2.6rem,7vw,3.4rem);color:var(--dorado);font-weight:700}
  .price--hl .price__old{font-size:1.2rem}

  .incluye{margin:0 0 22px;padding:18px 20px;border:1px solid rgba(201,154,74,.5);border-radius:var(--radio);background:rgba(255,255,255,.05);max-width:420px}
  .incluye__big{font-size:1.15rem;margin:0 0 10px;color:#FFFFFF}
  .incluye__big strong{color:var(--dorado);font-size:1.4rem}
  .incluye__t{font-size:.9rem;font-weight:700;margin:0 0 8px;color:#E9DFD0}
  .incluye__list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-size:.9rem;color:#F6F0E7}
  .incluye__list li{padding-left:20px;position:relative}
  .incluye__list li::before{content:"✓";position:absolute;left:0;color:var(--dorado);font-weight:800}

  .btn{display:inline-block;width:100%;max-width:420px;padding:16px 22px;border:0;border-radius:999px;font:inherit;font-weight:800;letter-spacing:.05em;text-align:center;text-decoration:none;cursor:pointer;background:linear-gradient(135deg,#E0B56A,var(--dorado));color:var(--negro);box-shadow:0 10px 28px rgba(201,154,74,.35);transition:transform .2s ease,filter .2s ease}
  .btn:hover{transform:translateY(-2px);filter:brightness(1.05)}
  .btn--sm{max-width:none;width:auto;padding:12px 18px;font-size:.88rem}
  .link{color:var(--dorado);text-decoration:underline;text-underline-offset:3px}
  .cream .link{color:var(--tostado)}

  /* Tarjetas */
  .grid{display:grid;gap:18px;margin-top:28px}
  .card{height:100%;background:#6b4a3a;position:relative;z-index:2;border:1px solid rgba(201,154,74,.25);border-radius:var(--radio);padding:24px;box-shadow:var(--sombra)}
  .card--light{background:var(--blanco);border-color:#E4D8C6;color:var(--negro)}
  .cream .card--light{border-left:4px solid var(--dorado)}
  .icon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(201,154,74,.15);font-size:1.3rem;margin-bottom:12px}
  .closing{margin-top:28px;font-family:Georgia,serif;font-size:clamp(1.1rem,2.6vw,1.5rem);color:var(--dorado);text-align:center;font-weight:700}

  .split{display:grid;gap:28px;align-items:center}
  .img-round{border-radius:var(--radio);box-shadow:var(--sombra);width:100%;height:auto}
  .vid{display:block;width:100%;height:auto;border-radius:var(--radio);box-shadow:var(--sombra);background:#14110F;aspect-ratio:16/10;object-fit:cover}
  .mockup{aspect-ratio:16/10;border-radius:18px;background:radial-gradient(circle at 30% 20%,#65432F,#382319);border:10px solid #2b2521;display:grid;place-items:center;box-shadow:var(--sombra)}
  .mockup__play{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:rgba(246,240,231,.15);color:var(--crema);font-size:1.6rem}
  .list{list-style:none;padding:0;margin:18px 0 24px;display:grid;gap:10px}
  .list li{padding-left:28px;position:relative}
  .list li::before{content:"✓";position:absolute;left:0;color:var(--dorado);font-weight:800}

  .steps{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:18px}
  .step{background:rgba(255,255,255,.04);border:1px solid rgba(201,154,74,.25);border-radius:var(--radio);padding:22px;display:grid;gap:6px}
  .step__num{width:40px;height:40px;border-radius:50%;background:var(--dorado);color:var(--negro);display:grid;place-items:center;font-weight:800}
  .note{font-size:.9rem;opacity:.85;margin-top:18px}

  .quote{margin:26px 0 18px;font-style:italic;color:#3a2d26}
  .badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;padding:4px 10px;border-radius:999px;background:var(--espresso);color:var(--crema);margin:0 6px 6px 0}
  .empty{border:1px dashed var(--dorado);border-radius:var(--radio);padding:24px;text-align:center;color:#5b4a40}

  .guarantee{display:grid;gap:22px;align-items:center}
  .seal{width:150px;height:150px;margin:0 auto;border-radius:50%;border:3px solid var(--dorado);display:grid;place-content:center;text-align:center;color:var(--dorado);box-shadow:0 0 0 6px rgba(201,154,74,.12)}
  .seal strong{font-family:Georgia,serif;font-size:3.6rem;line-height:1}
  .seal span{font-size:.9rem;letter-spacing:.25em;font-weight:700}

  .faq{margin-top:24px;display:grid;gap:10px}
  .faq details{background:var(--blanco);border:1px solid #E4D8C6;border-radius:12px;overflow:hidden;color:var(--negro)}
  .faq summary{cursor:pointer;padding:16px 52px 16px 18px;font-weight:700;position:relative;list-style:none}
  .faq summary::-webkit-details-marker{display:none}
  .faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--tostado)}
  .faq details[open] summary::after{content:"−"}
  .faq__a{padding:0 18px 18px;color:#4a3d35}
  .faq__a p{margin:0}

  .final{padding:72px 0;text-align:center;background:radial-gradient(circle at 50% 0%,#7a5440,#5a4032 70%);color:#FFFFFF}
  .final__in{display:grid;justify-items:center;gap:14px}
  .final .lead{margin:0 auto}

  footer{background:var(--negro);color:#E9DFD0;padding:40px 0 110px;border-top:1px solid rgba(201,154,74,.25);font-size:.9rem}
  .foot{display:grid;gap:18px}
  .foot nav{display:flex;flex-wrap:wrap;gap:14px 22px}

  /* Burbujas informativas */
  .bubbles{position:fixed;left:16px;bottom:96px;z-index:40;pointer-events:none;width:min(300px,calc(100vw - 32px))}
  .bubble{position:absolute;left:0;bottom:0;margin:0;background:var(--blanco);color:var(--negro);border-radius:999px;padding:10px 16px;font-size:.86rem;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.25);border-left:4px solid var(--dorado);opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s facilidad;espacio-en-blanco:ahora-desbordamiento;desbordamiento:oculto;desbordamiento-de-texto:elipsis;ancho-máximo:100%}


  .burbuja.activada{opacidad:1;transformación:ninguna}

  /* Globitos de testimonios (abajo a la derecha) */
  .rbubbles{position:fixed;right:12px;bottom:96px;z-index:39;pointer-events:none;width:min(280px,calc(100vw - 24px));height:110px}
  .rbubble{position:absolute;right:0;bottom:0;margin:0;background:var(--blanco);color:var(--negro);border-radius:18px;padding:10px 14px;box-shadow:0 8px 24px rgba(0,0,0,.25);border-right:4px solid var(--dorado);opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease;width:100%}
  .rbubble.on{opacity:1;transform:none}
  .rbubble blockquote{margin:6px 0 4px;font-size:.84rem;font-style:italic;color:#3a2d26}
  .rbubble__name{font-size:.75rem;font-weight:700}
  .rbubble .badge{font-size:.6rem;margin:0}

  /* CTA fijo móvil */
  .sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:rgba(20,17,15,.96);color:var(--crema);box-shadow:0 -6px 20px rgba(0,0,0,.25);transform:translateY(110%);transition:transform .35s ease}
  .sticky.on{transform:none}
  .sticky strong{font-size:1.2rem;color:var(--blanco);display:block;line-height:1.2}
  .sticky small{opacity:.8;font-size:.72rem}
  .sticky form{margin:0}

  .badge--warn{background:#B3541E;color:#FFFFFF}
  .review{margin:0;background:var(--blanco);border:1px solid #E4D8C6;border-left:4px solid var(--dorado);border-radius:var(--radio);padding:24px;box-shadow:var(--sombra);color:var(--negro)}
  .review__q{margin:12px 0 16px;font-style:italic;color:#3a2d26}
  .review__a{display:grid;gap:2px;font-size:.95rem}
  .review__a small{opacity:.7}
  .reveal{opacity:1;transform:none}
  .motion .reveal{transition:none}
  .motion .reveal.in{opacity:1;transform:none}

  @media (max-width:749px){
    .incluye__list{grid-template-columns:1fr}
    .card,.review,.step{padding:20px}
    .bubbles{display:none}
    .rbubbles{width:min(240px,calc(100vw - 24px));height:96px;bottom:84px;right:10px}
    .rbubble{padding:8px 12px}
    .rbubble blockquote{font-size:.78rem;margin:4px 0 2px}
    .hero__in{padding:22px 18px}
  }
  @media (min-width:750px){
    .sec{padding:96px 0}
    .hero{padding:90px 0 70px}
    .grid--2{grid-template-columns:repeat(2,1fr)}
    .grid--3{grid-template-columns:repeat(3,1fr)}
    .split{grid-template-columns:1fr 1fr;gap:56px}
    .guarantee{grid-template-columns:auto 1fr;gap:40px}
    .seal{margin:0}
    .foot{grid-template-columns:1.2fr 1fr auto;align-items:center}
    .foot{padding-bottom:0}
    .sticky{display:none}
    .bubbles{bottom:24px;left:24px}
    .rbubbles{bottom:24px;right:24px;height:130px}
    .steam{display:block}
  }
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{transition:none!important;animation:none!important}
    .motion .reveal{opacity:1;transform:none}
    .bubble{transform:none}
    .rbubble{transform:none}
  }
</style>
</head>
<body>

<!-- ============ CONFIGURACIÓN: REEMPLAZAR CON DATOS REALES ============ -->
<script>
  window.LANDING_CONFIG = {
    etiquetaPrecio: "Solo por tiempo limitado", // Texto sobre el precio
    cantidadVideos: "28", // Cantidad real de videos del curso. Vacío = no se muestra.
    variablesPreparacion: [ // Temas reales del curso. Vacío = no se muestra. Confirmalos con el material.
      "Molienda",
      "Dosis de café",
      "Temperatura del agua",
      "Tiempo de extracción",
      "Presión y extracción",
      "Textura y temperatura de la leche"
    ],
    precioActual: "$9999", // Ej.: "US$ 00,00". Dejar vacío = no se muestra precio.
    precioAnterior: "$50000", // Solo si es un precio real y verificable. Vacío = no se muestra.
    finPromocion: "", // Fecha o condición REAL de la promoción. Vacío = "PRECIO PROMOCIONAL DISPONIBLE ACTUALMENTE"
    urlCheckout: "", // URL real del producto/checkout de Shopify. Vacío = botones deshabilitados.
    temasConfirmados: false, // true solo cuando los temas estén verificados con el material real
    mostrarBurbujas: true,
    mostrarCtaMovil: true,
    emailContacto: "", // Dato real del vendedor
    vendedor: "", // Dato real del vendedor
    urlPrivacidad: "",
    urlTerminos: "",
    urlReembolso: "",
    resenias: [], // Reseñas REALES y autorizadas: {: "...", nombre: "texto...", fecha: "..." }. Sin foto.
    mostrarDemoResenias: false // Solo para vista previa con ejemplos marcados como DEMO. Poner falso antes de publicar.
  };
</script>

<div class="topbar"><p class="wrap">☕ DESCUBRÍ EL ARTE DEL BARISMO DESDE CERO</p></div>

<!-- ============ BIENVENIDA ============ -->
<section class="sec cream" aria-labelledby="t-bienvenida">
  <div class="wrap estrecho" style="text-align:center">
    <div class="barista-badge" aria-hidden="true" style="margin-bottom:24px">WMH</div>
    <p class="eyebrow" style="color:#65432F">BIENVENIDO</p>
    <h2 class="h2" id="t-bienvenida">Te damos la bienvenida a tu camino en el café</h2>
    <p class="sub" style="margin:0 auto">Acá vas a encontrar un curso pensado para que comiences a aprender técnicas de barista de forma clara, visual y práctica, aunque nunca hayas preparado un café profesional.</p>
    <video class="vid" controles de estilo="margen:28px auto 0;ancho máximo:720px" muted loopplaysinline preload="metadata" aria-label="Bienvenida de Will Mateo Huertas al curso de barista">
      <source src="https://cdn.shopify.com/videos/c/o/v/bab8dfe187b44752b734085969e48adc.mp4" type="video/mp4">
      Tu navegador no puede reproducir este video.
    </vídeo>
  </div>
</sección>

<!-- ============ HÉROE ============ -->
<header class="hero">
  <div class="hero__bg" role="img" aria-label="Curso digital de barista: preparación de café" style="background-image:url('https://cdn.shopify.com/s/files/1/1038/8766/7476/files/CursodeBarista_CafePerfecto_562e41c0-469a-4971-9c07-3ccaf3ec703c.png?v=1792611421');background-size:cover;background-position:center"></div>
  <div class="hero__shade" aria-hidden="true"></div>
  <div class="steam" aria-hidden="true"><span></span><span></span><span></span></div>
  <div class="wrap hero__in">
    <p class="eyebrow">CURSO DIGITAL DE BARISTA</p>
    <h1 class="h1">EL ARTE DE PREPARAR UN BUEN CAFÉ PUEDE EMPEZAR HOY.</h1>
    <p class="lead">Aprendé técnicas de barista paso a paso y descubre nuevas formas de disfrutar, preparar y compartir el café, incluso si estás empezando desde cero.</p>
    <ul class="benefits">
      <li><span aria-hidden="true">UU</span> Técnicas prácticas en video</li>
      <li><span aria-hidden="true">UU</span> Ideal para amantes del café y principiantes</li>
      <li><span aria-hidden="true">UU</span> Acceso digital después de la compra</li>
    </ul>
    <div class="buybox" data-cta-hero>
      <div data-precio-bloque></div>
      <div data-boton-hero></div>
    </div>
    <p class="micro" style="margin-top:18px">Curso digital en video · Acceso por correo electrónico · Garantía de 7 días</p>
  </div>
</header>

<!-- ============ DOLOR ============ -->
<section class="sec dark" aria-labelledby="t-dolor">
  <div class="wrap">
    <h2 class="h2 revela" id="t-dolor">¿TE ENCANTA EL CAFÉ, PERO SENTÍS QUE TODAVÍA TE FALTA ALGO PARA PREPARARLO COMO TE ¿GUSTARÍA?</h2>
    <div class="grid grid--3">
      <article class="card revelación"><span class="icon" aria-hidden="true">☕</span><h3 class="h3">Te encanta el café</h3><p>Pero no sabes por dónde empezar para preparar mejores bebidas.</p></article>
      <article class="card revelación"><span class="icon" aria-hidden="true">🔍</span><h3 class="h3">Ves preparaciones profesionales</h3><p>Y te gustaría aprender las técnicas que hay detrás.</p></article>
      <article class="card revelación"><span class="icon" aria-hidden="true">🍽️</span><h3 class="h3">Trabajás en gastronomía</h3><p>Y quieres ampliar tus conocimientos sobre café.</p></article>
      <article class="card revelación"><span class="icon" aria-hidden="true">💡</span><h3 class="h3">Tenés una idea de emprendimiento</h3><p>Relacionada con el café y quieres empezar a aprender.</p></article>
      <article class="card revelación"><span class="icon" aria-hidden="true">👥</span><h3 class="h3">Querés sorprender a los tuyos</h3><p>Disfrutar una experiencia diferente con amigos o familia.</p></article>
      <article class="card revela"><span class="icon" aria-hidden="true">📚</span><h3 class="h3">Buscás algo nuevo y simple</h3><p>Las explicaciones técnicas te parecen complicadas.</p></article>
    </div>
    <p class="closing revelación">NO NECESITÁS SABERLO TODO PARA EMPEZAR. SOLO NECESITÁS DAR EL PRIMER PASO.</p>
  </div>
</section>

<!-- ============ DESEO ============ -->
<section class="sec cream" aria-labelledby="t-deseo">
  <div class="wrap">
    <h2 class="h2 reveal" id="t-deseo">IMAGINÁ TODO LO QUE PODÉS DESCUBRIR CUANDO APRENDÉS A PREPARAR CAFÉ.</h2>
    <p class="sub reveal">Convertí tu curiosidad en nuevas habilidades y disfrutá el proceso de aprender el arte del barismo.</p>
    <div class="grid grid--2">
      <article class="card card--light reveal"><span class="icon" aria-hidden="true">🌱</span><h3 class="h3">Para los amantes del café</h3><p>Descubrí técnicas y preparaciones que te permitan profundizar tu pasión por el café.</p></article>
      <article class="card card--light reveal"><span class="icon" aria-hidden="true">🚀</span><h3 class="h3">Para los emprendedores</h3><p>Empezá a familiarizarte con el mundo del barismo y sumá conocimientos útiles para tus proyectos.</p></article>
      <article class="card card--light reveal"><span class="icon" aria-hidden="true">🍽️</span><h3 class="h3">Para quienes trabajan en gastronomía</h3><p>Ampliá tus conocimientos sobre preparación de café y bebidas, según las técnicas que incluya el curso.</p></article>
      <article class="card card--light reveal"><span class="icon" aria-hidden="true">🥂</span><h3 class="h3">Para compartir momentos</h3><p>Preparar café y compartir nuevas experiencias con amigos y familiares.</p></article>
    </div>
  </div>
</section>

<!-- ============ EL BARISTA ============ -->
<section class="sec cream" aria-labelledby="t-barista">
  <div class="wrap split">
    <div class="reveal">
      <p class="eyebrow" style="color:#65432F">QUIÉN SOY YO</p>
      <video class="vid" controls muted loop playsinline preload="metadata" aria-label="Quién soy yo: presentación de Will Mateo Huertas">
        <source src="https://cdn.shopify.com/videos/c/o/v/32a34f02167441b5bdd6e8fc6e389315.mp4" type="video/mp4">
        Tu navegador no puede reproducir este video.
      </video>
    </div>
    <div class="reveal">
      <p class="eyebrow" style="color:#65432F">TU INSTRUCTOR</p>
      <h2 class="h2" id="t-barista">WILL MATEO HUERTAS</h2>
      <p class="sub"><strong>Barista profesional y bartender</strong>, con más de 10 años de experiencia en el mundo del café y la barra.</p>
      <p class="sub">Apasionado por el café, comparte en este curso su forma de trabajar, explicada de manera sencilla para que puedas empezar desde cero.</p>
      <ul class="list">
        <li>Más de 10 años de experiencia profesional</li>
        <li>Barista profesional y bartender</li>
        <li>Pasión por el café y por enseñarlo</li>
      </ul>
    </div>
  </div>
</section>

<!-- ============ PRESENTACIÓN ============ -->
<section class="sec dark" aria-labelledby="t-curso">
  <div class="wrap split">
    <div class="reveal">
      <div class="mockup" role="img" aria-label="Ilustración de un curso en video en un dispositivo"><span class="mockup__play" aria-hidden="true">▶</span></div>
    </div>
    <div class="reveal">
      <h2 class="h2" id="t-curso">CONOCÉ EL CURSO DE BARISTA QUE PODÉS EMPEZAR A VER DESDE CASA</h2>
      <p>Un curso digital en video diseñado para ayudarte a conocer técnicas de barista de forma visual y práctica. Podés acceder al material siguiendo las instrucciones que recibís por email después de realizar tu compra.</p>
      <ul class="list">
        <li>Aprendés viendo técnicas paso a paso.</li>
        <li>Podés volver a mirar cada video cuando quieras.</li>
        <li>Se accede desde computadora, tablet o celular.</li>
      </ul>
      <div data-boton-curso></div>
    </div>
  </div>
</section>

<!-- ============ TEMAS (solo si están confirmados) ============ -->
<section class="sec cream" id="temas" aria-labelledby="t-temas" hidden>
  <div class="wrap">
    <h2 class="h2 reveal" id="t-temas">QUÉ VAS A APRENDER</h2>
    <div class="grid grid--3">
      <article class="card card--light reveal"><h3 class="h3">Introducción al barismo</h3><p>Reemplazar con la descripción real del módulo.</p></article>
      <article class="card card--light reveal"><h3 class="h3">Fundamentos del café</h3><p>Reemplazar con la descripción real del módulo.</p></article>
      <article class="card card--light reveal"><h3 class="h3">Preparación de espresso</h3><p>Reemplazar con la descripción real del módulo.</p></article>
      <article class="card card--light reveal"><h3 class="h3">Técnicas de extracción</h3><p>Reemplazar con la descripción real del módulo.</p></article>
      <article class="card card--light reveal"><h3 class="h3">Trabajo con leche</h3><p>Reemplazar con la descripción real del módulo.</p></article>
      <article class="card card--light reveal"><h3 class="h3">Introducción al latte art</h3><p>Reemplazar con la descripción real del módulo.</p></article>
    </div>
  </div>
</section>

<!-- ============ ENTREGA ============ -->
<section class="sec dark" aria-labelledby="t-entrega">
  <div class="wrap">
    <h2 class="h2 reveal" id="t-entrega">LO COMPRÁS ONLINE Y LO RECIBÍS POR EMAIL.</h2>
    <ol class="steps reveal">
      <li class="step"><span class="step__num" aria-hidden="true">1</span><h3 class="h3">Realizá tu compra</h3><p>Elegí el curso y completá el pago mediante el checkout seguro de la tienda.</p></li>
      <li class="step"><span class="step__num" aria-hidden="true">2</span><h3 class="h3">Revisá tu correo</h3><p>Recibí las instrucciones de acceso en la dirección de email utilizada durante la compra.</p></li>
      <li class="step"><span class="step__num" aria-hidden="true">3</span><h3 class="h3">Accedé al contenido</h3><p>Abrí el enlace de Google Drive indicado en el correo y seguí las instrucciones para ver los videos.</p></li>
    </ol>
    <p class="note reveal">Revisá también las carpetas de spam o promociones si no encontrás el correo. El producto es digital y no tiene envío postal.</p>
  </div>
</section>

<!-- ============ TESTIMONIOS (sin reseñas ficticias) ============ -->
<section class="sec cream" id="testimonios" aria-labelledby="t-testi" hidden>
  <div class="wrap">
    <h2 class="h2 reveal" id="t-testi">LA EXPERIENCIA DE APRENDER Y DISFRUTAR MÁS DEL CAFÉ</h2>
    <div class="grid grid--3" data-resenias></div>
  </div>
</section>

<!-- ============ OFERTA ============ -->
<section class="sec offer" id="oferta" aria-labelledby="t-oferta">
  <div class="wrap split">
    <div class="reveal">
      <div class="mockup" role="img" aria-label="Imagen del curso digital de barista"><span class="mockup__play" aria-hidden="true">☕</span></div>
    </div>
    <div class="reveal">
      <h2 class="h2" id="t-oferta">APROVECHÁ EL PRECIO PROMOCIONAL DEL CURSO</h2>
      <p class="sub">Una oportunidad para empezar a descubrir el mundo del barismo con acceso a un curso digital en video.</p>
      <div data-incluye></div>
      <div data-precio-bloque></div>
      <ul class="list">
        <li>Acceso a videos formativos sobre técnicas de barista.</li>
        <li>Entrega digital por email con enlace a Google Drive.</li>
        <li>Garantía de 7 días sujeta a la política publicada.</li>
      </ul>
      <div data-boton-oferta></div>
    </div>
  </div>
</section>

<!-- ============ GARANTÍA ============ -->
<section class="sec dark" aria-labelledby="t-garantia">
  <div class="wrap guarantee reveal">
    <div class="seal" aria-hidden="true"><strong>7</strong><span>DÍAS</span></div>
    <div>
      <h2 class="h2" id="t-garantia">COMPRÁ CON TRANQUILIDAD: 7 DÍAS DE GARANTÍA</h2>
      <p>Queremos que conozcas las condiciones de tu compra con claridad. Este producto cuenta con una garantía de 7 días, sujeta a las condiciones de reembolso publicadas para el curso.</p>
      <p data-link-reembolso></p>
    </div>
  </div>
</section>

<!-- ============ FAQ ============ -->
<section class="sec cream" id="faq" aria-labelledby="t-faq">
  <div class="wrap narrow">
    <h2 class="h2 reveal" id="t-faq">PREGUNTAS FRECUENTES</h2>
    <div class="faq reveal">
      <details><summary>¿Necesito experiencia previa?</summary><div class="faq__a"><p>No. El curso está pensado para quienes empiezan desde cero y también para quienes ya disfrutan del café.</p></div></details>
      <details><summary>¿Qué tipo de producto estoy comprando?</summary><div class="faq__a"><p>Un curso digital compuesto por videos formativos sobre técnicas de barista. No es un producto físico y no hay envío postal.</p></div></details>
      <details><summary>¿Cómo recibo el curso?</summary><div class="faq__a"><p>Después de la compra recibís un email, en la dirección que usaste para pagar, con las instrucciones y el enlace de Google Drive donde están los videos.</p></div></details>
      <details><summary>¿Puedo ver los videos desde el celular?</summary><div class="faq__a"><p>Podés acceder desde computadora, tablet o celular, siempre que tu dispositivo pueda abrir los enlaces de Google Drive.</p></div></details>
      <details><summary>¿Qué hago si no recibo el email?</summary><div class="faq__a"><p>Revisá las carpetas de spam o promociones. Si no aparece, contactanos al email de la tienda indicando la dirección usada en la compra.</p></div></details>
      <details><summary>¿Cómo funciona la garantía de 7 días?</summary><div class="faq__a"><p>Está sujeta a la política de reembolso publicada en la tienda. Revisala antes de comprar.</p></div></details>
    </div>
  </div>
</section>

<!-- ============ CTA FINAL ============ -->
<section class="final" aria-labelledby="t-final">
  <div class="wrap final__in reveal">
    <h2 class="h2" id="t-final">TU PASIÓN POR EL CAFÉ PUEDE LLEVARTE A APRENDER ALGO NUEVO.</h2>
    <p class="lead">Descubrí el curso de barista en video y empezá a explorar nuevas técnicas para disfrutar el café de una manera diferente.</p>
    <div data-precio-bloque></div>
    <p class="micro">Entrega por email · Garantía de 7 días</p>
    <div data-boton-final></div>
    <p><a class="link" href="#faq">Ver preguntas frecuentes</a></p>
  </div>
</section>

<!-- ============ FOOTER ============ -->
<footer>
  <div class="wrap foot">
    <div>
      <p data-vendedor></p>
      <p data-contacto></p>
      <p class="micro">Producto digital. No hay envío postal. El acceso se entrega por email.</p>
    </div>
    <nav aria-label="Legal" data-legal></nav>
    <p class="micro" data-copy></p>
  </div>
</footer>

<!-- Burbujas informativas (sin datos de compras falsos) -->
<div class="bubbles" data-burbujas aria-hidden="true">
  <p class="bubble">☕ Curso digital de barista</p>
  <p class="bubble">🎥 Aprendé con contenido en video</p>
  <p class="bubble">✉️ Acceso enviado por email</p>
  <p class="bubble">🛡️ Garantía de 7 días</p>
</div>

<!-- Globitos de testimonios -->
<div class="rbubbles" data-rbubbles aria-hidden="true"></div>

<!-- CTA fijo móvil -->
<div class="sticky" data-sticky>
  <div><strong data-sticky-precio></strong><small>Garantía de 7 días</small></div>
  <div data-boton-sticky></div>
</div>

<script>
(function () {
  'use strict';
  var C = window.LANDING_CONFIG || {};
  var reduce = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
  var mobile = window.matchMedia('(max-width: 749px)').matches;
  var hasIO = 'IntersectionObserver' in window;
  var $ = function (s) { return document.querySelector(s); };
  var $$ = function (s) { return document.querySelectorAll(s); };

  function esc(t) { return String(t).replace(/[&<>"']/g, function (c) {
    return { '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;', "'": '&#39;' }[c];
  }); }

  /* Precio */
  var nota = C.finPromocion ? esc(C.finPromocion) : 'PRECIO PROMOCIONAL DISPONIBLE ACTUALMENTE';
  if (C.precioActual) {
    var viejo = C.precioAnterior ? '<s class="price__old"><span class="sr">Precio anterior: </span>' + esc(C.precioAnterior) + '</s>' : '';
    var bloque = '<div class="price price--hl"><span class="price__label">' + esc(C.etiquetaPrecio || 'Precio promocional') + '</span>' +
      '<div class="price__row">' + viejo + '<strong class="price__now">' + esc(C.precioActual) + '</strong></div>' +
      '<p class="price__note">' + nota + '</p></div>';
    $$('[data-precio-bloque]').forEach(function (el) { el.innerHTML = bloque; });
    var st = $('[data-sticky-precio]'); if (st) st.textContent = C.precioActual;
  } else {
    $$('[data-precio-bloque]').forEach(function (el) {
      el.innerHTML = '<p class="micro">Precio disponible próximamente. Completá precioActual en la configuración.</p>';
    });
  }

  /* Valor del curso: cantidad de videos y temas */
  var nVid = C.cantidadVideos ? String(C.cantidadVideos) : '';
  var vars = C.variablesPreparacion || [];
  if (nVid || vars.length) {
    var inc = '<div class="incluye">';
    if (nVid) inc += '<p class="incluye__big"><strong>' + esc(nVid) + ' videos</strong> formativos</p>';
    if (vars.length) inc += '<p class="incluye__t">Variables de preparación que vas a dominar:</p><ul class="incluye__list">' + vars.map(function (v) { return '<li>' + esc(v) + '</li>'; }).join('') + '</ul>';
    inc += '</div>';
    $$('[data-incluye]').forEach(function (el) { el.innerHTML = inc; });
  }

  /* Botones de compra */
  var btn = function (cls, texto) {
    if (!C.urlCheckout) return '<button type="button" class="btn ' + cls + '" disabled>' + texto + '</button>';
    return '<a class="btn ' + cls + '" href="' + esc(C.urlCheckout) + '">' + texto + '</a>';
  };
  var ids = { '[data-boton-hero]': ['btn', 'QUIERO APRENDER BARISMO'], '[data-boton-curso]': ['btn', 'QUIERO APRENDER BARISMO'],
    '[data-boton-oferta]': ['btn', 'QUIERO APRENDER BARISMO'], '[data-boton-final]': ['btn', 'QUIERO ACCEDER AL CURSO'],
    '[data-boton-sticky]': ['btn btn--sm', 'QUIERO APRENDER BARISMO'] };
  Object.keys(ids).forEach(function (sel) {
    var el = $(sel); if (el) el.innerHTML = btn(ids[sel][0], ids[sel][1]);
  });
  if (!C.urlCheckout) {
    var aviso = $('[data-boton-hero]');
    if (aviso) aviso.insertAdjacentHTML('beforeend', '<p class="micro">Configurá urlCheckout para activar la compra.</p>');
  }

  /* Enlaces legales y contacto */
  var legal = [];
  if (C.urlPrivacidad) legal.push('<a class="link" href="' + esc(C.urlPrivacidad) + '">Política de privacidad</a>');
  if (C.urlTerminos) legal.push('<a class="link" href="' + esc(C.urlTerminos) + '">Términos y condiciones</a>');
  if (C.urlReembolso) legal.push('<a class="link" href="' + esc(C.urlReembolso) + '">Política de reembolso</a>');
  var nav = $('[data-legal]'); if (nav) nav.innerHTML = legal.join('');
  var lr = $('[data-link-reembolso]');
  if (lr && C.urlReembolso) lr.innerHTML = '<a class="link" href="' + esc(C.urlReembolso) + '">Ver la política de reembolso completa</a>';
  if (C.vendedor) { var v = $('[data-vendedor]'); v.innerHTML = '<strong>' + esc(C.vendedor) + '</strong>'; }
  if (C.emailContacto) { var c = $('[data-contacto]'); c.innerHTML = 'Contacto: <a class="link" href="mailto:' + esc(C.emailContacto) + '">' + esc(C.emailContacto) + '</a>'; }
  if (C.copyright) { var cp = $('[data-copy]'); if (cp) cp.textContent = C.copyright; }

  /* Reseñas sin foto: reales desde config; ejemplos DEMO solo en vista previa */
  var demo = [
    { texto: 'Texto de ejemplo: explicaciones claras y paso a paso, fáciles de seguir.', nombre: 'Nombre de ejemplo', fecha: '' },
    { texto: 'Texto de ejemplo: lo vi desde el celular y pude practicar en casa.', nombre: 'Nombre de ejemplo', fecha: '' },
    { texto: 'Texto de ejemplo: un enfoque sencillo, sin tecnicismos complicados.', nombre: 'Nombre de ejemplo', fecha: '' }
  ];
  var hayReales = !!(C.resenias && C.resenias.length);
  var lista = hayReales ? C.resenias : (C.mostrarDemoResenias ? demo : []);
  var rg = $('[data-resenias]');
  if (lista.length && rg) {
    rg.innerHTML = lista.map(function (r) {
      return '<figure class="review reveal">' + (!hayReales ? '<span class="badge badge--warn">DEMO – NO PUBLICAR</span>' : '') +
        '<blockquote class="review__q">“' + esc(r.texto) + '”</blockquote>' +
        '<figcaption class="review__a"><strong>' + esc(r.nombre) + '</strong>' + (r.fecha ? '<small>' + esc(r.fecha) + '</small>' : '') + '</figcaption></figure>';
    }).join('');
    var ts = $('#testimonios'); if (ts) ts.hidden = false;
  }

  /* Globitos de testimonios: reales desde config; demostración solo en vista previa */
  var rb = $('[data-rbubbles]');
  if (rb) {
    if (lista.length) {
      rb.innerHTML = lista.map(function (r) {
        return '<figure class="rbubble">' + (!hayReales ? '<span class="badge badge--warn">DEMO – NO PUBLICAR</span>' : '') +
          '<blockquote>“' + esc(r.texto) + '”</blockquote>' +
          '<figcaption class="rbubble__name">' + esc(r.nombre) + '</figcaption></figure>'
      }).join('');
      var rbs = $$('.rbubble');
      if (reducir) {
        rbs[0].classList.add('on');
      } más {
        var ri = 0;
        var rt = function () {
          rbs.forEach(function (x) { x.classList.remove('on'); });
          rbs[ri].classList.add('on');
          ri = (ri + 1) % rbs.length;
          setTimeout(rt, mobile ? 9000 : 6000);
        };
        setTimeout(rt, 4000);
      }
    } else {
      rb.remove();
    }
  }

  /* Temas: solo si están confirmados */
  if (C.temasConfirmados) { var t = $('#temas'); si (t) t.oculto = falso; }

  /* Burbujas y CTA móvil: ocultos si se desactivan */
  if (!C.mostrarBurbujas) { var b = $('[data-burbujas]'); si (b) b.remove(); }
  if (!C.mostrarCtaMovil) { var s = $('[data-sticky]'); si (s) s.remove(); }

  /* Animaciones */
  if (!reduce && hasIO) {
    document.body.classList.add('motion');
    var obs = new IntersectionObserver(function (entries) {
      entries.forEach(function (e) {
        if (e.isIntersecting) { e.target.classList.add('in'); obs.unobserve(e.target); }
      });
    }, { threshold: 0.12 });
    $$('.reveal').forEach(function (el) { obs.observe(el); });
  }

  /* CTA fijo en móvil: aparece cuando el hero no está visible y la oferta tampoco */
  var sticky = $('[data-sticky]'), heroCta = $('[data-cta-hero]'), oferta = $('#oferta');
  if (sticky && hasIO && heroCta) {
    var heroVis = true, ofVis = false;
    var upd = function () { sticky.classList.toggle('on', móvil && !heroVis && !ofVis); };
    new IntersectionObserver(function (es) { heroVis = en[0].isIntersecting; upd(); }).observe(heroCta);
    if (oferta) new IntersectionObserver(function (es) { ofVis = en[0].isIntersecting; upd(); }).observe(oferta);
  }

  /* Burbujas informativas: rotación suave, menos frecuencia en móvil */
  var bubbles = $$('.bubble');
  if (bubbles.length) {
    if (reduce) {
      bubbles[0].classList.add('on');
    } else {
      var idx = 0, count = 0, max = mobile ? 3 : 6;
      var tick = function () {
        bubbles.forEach(function (x) { x.classList.remove('on'); });
        if (count >= max) return;
        var cur = idx;
        bubbles[cur].classList.add('on');
        idx = (idx + 1) % bubbles.length;
        count++;
        setTimeout(function () { bubbles[cur].classList.remove('on'); }, 4200);
        setTimeout(tick, mobile ? 14000 : 8000);
      };
      setTimeout(tick, 2500);
    }
  }
})();
</script>
</body>
</html>