/* ==========================================================================
   TU SEMANA DE RENDIMIENTO — landing del lead magnet
   Estilos específicos de esta página. Reutiliza los tokens (colores,
   tipografías, radios) definidos en /css/styles.css; no lo sustituye.
   ========================================================================== */

/* ---- Hero del recurso ---- */
.lm-hero{ background:var(--dark); padding:56px 0 0; overflow:hidden; }
.lm-hero-grid{ display:grid; gap:44px; padding-bottom:56px; }
@media(min-width:960px){ .lm-hero-grid{ grid-template-columns:1.05fr 0.95fr; align-items:center; gap:56px; padding-bottom:72px; } }
.lm-hero-copy .eyebrow{ color:var(--dark-muted); }
.lm-hero-copy h1{
  font-size:clamp(2rem, 4.4vw, 3rem);
  color:var(--dark-text);
  margin:18px 0 18px;
  max-width:16ch;
}
.lm-hero-copy p.lead{
  font-size:clamp(1rem, 1.6vw, 1.1rem);
  color:var(--dark-muted);
  max-width:48ch;
  margin:0 0 16px;
}
.lm-hero-copy p.lm-support{
  font-size:14.5px;
  color:var(--dark-muted);
  max-width:46ch;
  margin:0 0 30px;
  padding-left:16px;
  border-left:2px solid var(--accent);
}
.lm-hero-actions{ display:flex; flex-wrap:wrap; gap:16px; }

/* Representación visual del PDF (sin inventar una portada distinta al recurso real) */
.lm-pdf-card{
  position:relative;
  max-width:340px;
  margin-inline:auto;
  border-radius:var(--radius-lg);
  padding:30px;
  background:linear-gradient(155deg, var(--dark) 0%, var(--dark-2) 60%, #16202f 100%);
  border:1px solid var(--dark-line);
  isolation:isolate;
}
.lm-pdf-card::before{
  content:"";
  position:absolute; inset:0;
  background-image:
    linear-gradient(var(--dark-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--dark-line) 1px, transparent 1px);
  background-size:28px 28px;
  opacity:.18;
  border-radius:inherit;
  z-index:0;
}
.lm-pdf-stack{ position:relative; z-index:1; }
.lm-pdf-sheet{
  position:relative;
  aspect-ratio:900/1273;
  border-radius:12px;
  background:var(--surface);
  box-shadow:0 24px 48px -18px rgba(0,0,0,.55);
  overflow:hidden;
}
.lm-pdf-sheet::before,
.lm-pdf-sheet::after{
  content:"";
  position:absolute; inset:0;
  border-radius:12px;
  background:var(--surface);
  border:1px solid var(--dark-line);
}
.lm-pdf-sheet::before{ transform:translate(10px,10px); z-index:-1; opacity:.55; }
.lm-pdf-sheet::after{ transform:translate(20px,20px); z-index:-2; opacity:.3; }
.lm-pdf-sheet picture{ position:relative; z-index:2; display:block; height:100%; border:1px solid var(--border); border-radius:12px; overflow:hidden; }
.lm-pdf-sheet img{ width:100%; height:100%; object-fit:cover; object-position:50% 0%; display:block; }
.lm-pdf-badge{
  position:absolute; top:-12px; left:24px; z-index:3;
  font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--dark);
  background:var(--accent);
  padding:6px 12px;
  border-radius:100px;
}
.lm-pdf-caption{
  position:relative; z-index:1;
  margin-top:22px; text-align:center;
  font-size:12px; color:var(--dark-muted);
}

/* ---- Beneficios ---- */
.lm-benefits-grid{ display:grid; gap:20px; margin-top:36px; }
@media(min-width:800px){ .lm-benefits-grid{ grid-template-columns:repeat(3,1fr); } }
.lm-benefit{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  padding:28px 26px;
}
.lm-benefit .lm-benefit-num{
  font-family:var(--font-display); font-weight:700; font-size:13px;
  color:var(--accent); display:block; margin-bottom:14px;
}
.lm-benefit h3{ font-size:16.5px; margin-bottom:8px; }
.lm-benefit p{ font-size:14px; color:var(--text-muted); margin:0; }

/* ---- Qué incluye ---- */
.lm-includes{ display:grid; gap:14px; margin-top:36px; }
@media(min-width:640px){ .lm-includes{ grid-template-columns:1fr 1fr; } }
@media(min-width:1040px){ .lm-includes{ grid-template-columns:repeat(4,1fr); } }
.lm-includes li{
  display:flex; flex-direction:column; gap:10px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  padding:22px 20px;
}
.lm-include-num{
  font-family:var(--font-display); font-weight:700; font-size:13px;
  color:var(--accent);
}
.lm-include-txt{ font-size:14.5px; color:var(--text); line-height:1.4; }

/* ---- Formulario ---- */
.lm-form-section{ background:var(--surface-2); }
.lm-form-wrap{ max-width:640px; margin-inline:auto; }
.lm-form-head{ text-align:center; margin-bottom:36px; }
.lm-form-head h2{ font-size:clamp(1.5rem,3vw,2rem); margin-top:14px; }
.lm-form-head p{ margin-top:12px; color:var(--text-muted); font-size:15px; }
.lm-form-card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:32px;
}
@media(min-width:600px){ .lm-form-card{ padding:40px; } }

/* ---- Bloque Élite Juvenil (discreto) ---- */
.lm-secondary{ padding:56px 0; }
.lm-secondary-inner{
  max-width:640px; margin-inline:auto; text-align:center;
  padding-top:44px; border-top:1px solid var(--border);
}
.lm-secondary-inner h3{
  font-family:var(--font-display); font-size:16.5px; font-weight:700;
  margin:0 0 10px;
}
.lm-secondary-inner p{ font-size:14px; color:var(--text-muted); margin:0 0 16px; max-width:52ch; margin-inline:auto; }
.lm-secondary-link{
  display:inline-flex; align-items:center; gap:8px;
  font-size:14px; font-weight:600; color:var(--accent);
}
.lm-secondary-link svg{ width:15px; height:15px; }

/* ---- Estado de error del aviso de envío (variante de .form-note) ---- */
.form-note.is-error{ border-left-color:#DC2626; }
.form-note.is-error strong{ color:#DC2626; }
