/* Página de un curso (curso-abecedario.html). Se carga después de
   base.css y componentes.css; solo agrega lo propio de esta página. */

.curso-intro{display:grid; grid-template-columns:1.3fr .7fr; gap:2.5rem; align-items:start}
.curso-intro > *{min-width:0}
.bajada{font-family:Georgia,serif; font-style:italic; font-size:1.25rem; color:var(--ink-soft); margin-top:-.2em}
@media (max-width:760px){ .curso-intro{grid-template-columns:1fr} }

/* video vertical de la invitación: tope de alto para que no ocupe toda la
   pantalla en escritorio */
.video-invitacion{width:100%; max-width:320px; max-height:80vh; aspect-ratio:9/16;
  justify-self:center; border-radius:var(--radius); background:var(--ink); display:block}

.curso-datos{list-style:none; padding:0; margin:1.2rem 0 0; max-width:62ch}
.curso-datos li{padding-left:1.6rem; position:relative; margin-bottom:.5rem}
.curso-datos li::before{content:"✿"; position:absolute; left:0; color:var(--coral)}

/* temario: una ficha por letra */
.abecedario{list-style:none; padding:0; margin:1.8rem 0 0; display:grid; gap:.9rem;
  grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr))}
.abecedario li{background:var(--card); border:1px solid var(--line); border-radius:14px;
  padding:.9rem 1rem; display:grid; gap:.1rem .7rem;
  /* minmax(0,…): con 1fr la columna no baja de su palabra más larga
     ("contemporánea") y al 200% de letra desbordaba la pantalla */
  grid-template-columns:2.4rem minmax(0,1fr)}
.abecedario .letra{grid-row:span 2; font-family:Georgia,serif; font-size:2rem; line-height:1;
  color:var(--coral)}
.abecedario .concepto{font-family:Georgia,serif; font-weight:700; color:var(--ink)}
.abecedario .autor{font-size:.85rem; color:var(--ink-soft)}

.quien{display:flex; gap:1.4rem; align-items:center; flex-wrap:wrap; max-width:40rem}
.quien img{width:140px; height:140px; border-radius:50%; object-fit:cover; flex:none}
.quien > div{flex:1 1 16rem}

/* Curso Relaciones humanas en tiempos líquidos. Mantiene la estructura del
   curso de referencia, pero usa una foto real de Sofía en vez de video. */
.curso-retrato{margin:0; justify-self:center; max-width:320px}
.curso-retrato img{display:block; width:100%; aspect-ratio:4/5; object-fit:cover;
  object-position:center 50%; border-radius:var(--radius)}
.curso-retrato figcaption{margin-top:.7rem; color:var(--ink-soft); font-size:.88rem;
  font-style:italic; text-align:center}
.recorrido-grid{display:grid; gap:1rem; margin-top:1.8rem;
  grid-template-columns:repeat(3,minmax(0,1fr))}
.recorrido-item{background:var(--card); border:1px solid var(--line); border-radius:var(--radius);
  padding:1.25rem 1.2rem}
.recorrido-item span{display:block; margin-bottom:.65rem; color:var(--coral); font-family:Georgia,serif;
  font-size:1.7rem; line-height:1}
.recorrido-item h3{font-size:1.22rem}
.recorrido-item p{margin-bottom:0; color:var(--ink-soft); font-size:.94rem}
.curso-cierre{max-width:760px}
@media (max-width:760px){.curso-retrato{max-width:min(320px,85vw)}.recorrido-grid{grid-template-columns:1fr}}

/* Taller Venus y tu manera de amar. */
.venus-hero{overflow:hidden}
.venus-aprendizajes{grid-template-columns:repeat(3,minmax(0,1fr))}
.venus-casa-siete{max-width:760px}
.venus-dos-columnas{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:1.4rem}
.venus-dos-columnas article{padding:1.2rem; background:var(--card); border:1px solid var(--line); border-radius:var(--radius)}
.venus-dos-columnas h3{color:var(--coral); font-family:Georgia,serif; font-size:1.35rem}
.venus-dos-columnas p{margin-bottom:0; color:var(--ink-soft)}
.venus-ficha-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:1.5rem}
.venus-ficha{padding:1.15rem 1.2rem; background:var(--card); border:1px solid var(--line); border-radius:var(--radius)}
.venus-ficha span,.venus-precios span{display:block; color:var(--ink-soft); font-size:.85rem; margin-bottom:.35rem}
.venus-ficha strong,.venus-precios strong{font-family:Georgia,serif; font-size:1.08rem}
.venus-precios{display:flex; flex-wrap:wrap; gap:1rem; margin:1rem 0 0}
.venus-precios > div{min-width:10rem; padding:1rem 1.15rem; border-left:3px solid var(--coral); background:rgba(215,112,105,.08)}
.venus-contacto{font-weight:700}
@media (max-width:760px){.venus-visual{max-width:280px}.venus-aprendizajes,.venus-dos-columnas,.venus-ficha-grid{grid-template-columns:1fr}.venus-precios{display:grid; grid-template-columns:1fr}}
