/* Cursos: fotografía visible desde el primer pintado, sin partículas. */
.al-cursos-portada { position: relative; isolation: isolate; overflow: hidden; }
/* La fotografía ya tiene su sombra; la capa global tapaba también los enlaces. */
.al-portada.al-cursos-portada::after { display: none; }
.al-cursos-fondo { position: absolute; inset: 0; z-index: 0; pointer-events: none; background: #0b0710; }
.al-cursos-fondo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 65% 58%;
  opacity: .46;
  filter: saturate(.65);
}
.al-cursos-fondo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #0b0710ed 0%, #0b0710c7 44%, #0b07104d 82%, #0b071080), linear-gradient(180deg, #0b071066, transparent 40%, #0b0710a6);
}
.al-cursos-portada .al-portada-grid, .al-cursos-portada .al-portada-datos { position: relative; z-index: 1; }
.al-cursos-portada .al-portada-datos { padding-top: 0; padding-bottom: 40px !important; }
.al-cursos-portada .al-cv-camino { background: #0b071099; }
.al-cv-galeria { position: relative; }
.al-cv-fotos { position: relative; aspect-ratio: 1; border-radius: 20px; overflow: hidden; background: #24192c; }
.al-cv-fotos img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 1.6s ease-in-out; }
.al-cv-fotos img.al-activa { opacity: 1; }
.al-cv-galeria .al-fotos-pausa { position: absolute; right: 12px; bottom: 12px; z-index: 1; min-height: 34px; padding: 6px 12px; border: 1px solid #ffffff66; border-radius: 99px; background: #0b0710b8; color: #fff; font: inherit; font-size: .72rem; cursor: pointer; }
.al-cv-galeria .al-fotos-pausa[hidden] { display: none; }
.al-cv-galeria .al-fotos-pausa:focus-visible { outline: 2px solid #cfa8ef; outline-offset: 3px; }

.al-cv-pasos-ayuda { color: var(--texto-3, #685e70); font-size: .8rem; margin: 0 0 18px; }
.al-cv-valores { min-width: 0; }
.al-cv-valores-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.al-cv-valor { position: relative; isolation: isolate; display: flex; align-items: flex-end; min-width: 0; min-height: 180px; aspect-ratio: 1; overflow: hidden; padding: 18px 16px; border: 0; border-radius: 16px; background: #25162e; color: #fff; text-align: left; font: inherit; cursor: pointer; }
.al-cv-valor img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; transition: transform .65s ease, opacity .4s ease; opacity: .88; }
.al-cv-valor::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,transparent 10%,#0b071040 45%,#0b0710e6); }
.al-cv-valor span { font-weight: 500; font-size: .94rem; line-height: 1.25; }
.al-cv-valor.al-elegido { box-shadow: 0 0 0 2px #b77be0; }
.al-cv-valor.al-elegido img { transform: scale(1.055); opacity: 1; }
.al-cv-valor:focus-visible { outline: 3px solid #8a00c6; outline-offset: 4px; }
.al-cv-valor-panel { min-height: 150px; padding: 22px 2px 0; }
.al-cv-valor-panel > span { color: #8a00c6; font-size: .66rem; letter-spacing: .16em; text-transform: uppercase; }
.al-cv-valor-panel h3 { margin: 9px 0 8px; font: 500 1.4rem/1.2 var(--display,Arial,sans-serif); letter-spacing: -.025em; }
.al-cv-valor-panel p { font-size: .9rem; line-height: 1.65; color: #645a6a; margin: 0; }
.al-cv-valores-ayuda { margin: 15px 0 0; font-size: .68rem; color: #776b7e; }
.al-cv-pasos-tarjetas { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; list-style: none; margin: 0; padding: 0; }
.al-cv-pasos-tarjetas > li { min-width: 0; }
.al-cv-paso { display: grid; width: 100%; min-height: 420px; padding: 0; border: 0; border-radius: 22px; background: transparent; color: var(--tinta, #1a1220); text-align: left; font: inherit; cursor: pointer; perspective: 1400px; }
.al-cv-paso-frente, .al-cv-paso-dorso { grid-area: 1/1; display: flex; flex-direction: column; gap: 17px; padding: clamp(26px,3vw,38px); border-radius: inherit; backface-visibility: hidden; -webkit-backface-visibility: hidden; transition: transform .75s cubic-bezier(.4,0,.2,1); }
.al-cv-paso-frente { background: #f4efe9; border: 1px solid #80668f26; transform: rotateY(0); }
.al-cv-paso-dorso { background: linear-gradient(150deg,#291536,#0b0710); color: #f4efe9; transform: rotateY(-180deg); }
.al-cv-paso-dorso { position: relative; isolation: isolate; overflow: hidden; }
.al-cv-paso-dorso > .al-cv-paso-foto { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; opacity: .4; filter: saturate(.5); }
.al-cv-paso-dorso::after { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg,#0b071099,#0b071066 50%,#0b0710bf); }
.al-cv-paso-dorso > :not(.al-cv-paso-foto) { position: relative; z-index: 2; }
.al-cv-paso[aria-expanded="true"] .al-cv-paso-frente { transform: rotateY(180deg); }
.al-cv-paso[aria-expanded="true"] .al-cv-paso-dorso { transform: rotateY(0); }
.al-cv-paso-n { font: italic 2rem var(--serif,Georgia,serif); color: #8a00c6; }
.al-cv-paso-dorso .al-cv-paso-n { color: #cfa8ef; }
.al-cv-paso-animal { display: block; width: 135px; height: 120px; fill: #8a00c6; margin: 4px 0 10px; }
.al-cv-paso-titulo { font: 500 1.45rem/1.2 var(--display,Arial,sans-serif); letter-spacing: -.025em; }
.al-cv-paso-texto { font-size: .94rem; line-height: 1.65; }
.al-cv-paso-frente .al-cv-paso-texto { color: #645a6a; }
.al-cv-paso-dorso .al-cv-paso-texto { color: #e5dce9; }
.al-cv-paso-pista { margin-top: auto; padding-top: 12px; font-size: .69rem; text-transform: uppercase; letter-spacing: .12em; color: #8a00c6; }
.al-cv-paso-dorso .al-cv-paso-pista { color: #d3b0ea; }
.al-cv-paso:focus-visible { outline: 2px solid #8a00c6; outline-offset: 5px; }

#profesionales { position: relative; isolation: isolate; border-bottom: 0; padding-bottom: clamp(48px,6vw,88px); background: #0b0710; }
#profesionales::after { display: none; }
#profesionales + #programa { background: #0b0710; padding-top: clamp(28px,4vw,56px); }
.al-cv-prof-fondo { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.al-cv-prof-fondo img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 45%; opacity: .5; filter: saturate(.6); }
.al-cv-prof-fondo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 35%,#0b071099 72%,#0b0710 100%),linear-gradient(90deg,#0b0710ed,#0b071099 60%,#0b07104d); }
#profesionales .al-cv-acto-in { position: relative; z-index: 1; }
#profesionales + #por-que-formar { padding-top: clamp(65px,7vw,100px); }
@media (max-width: 760px) {
  .al-cv-pasos-tarjetas { grid-template-columns: 1fr; }
  .al-cv-paso { min-height: 370px; }
  .al-cv-valor { min-height: 160px; padding: 14px 12px; }
}
@media (prefers-reduced-motion: reduce) { .al-cv-fotos img, .al-cv-valor img, .al-cv-paso-frente, .al-cv-paso-dorso { transition: none; } }
@media (max-width: 700px) {
  .al-cursos-fondo img { object-position: 65% 50%; }
  .al-cursos-fondo::after { background: linear-gradient(180deg, #0b071080, #0b0710c7 50%, #0b0710ed); }
}
