/* Capacitación's gallery layout, shared by the operational pages. */
.platform-body { --page-image: url("assets/labforma-cad-technician-hero.png"); }
.platform-calidad, .platform-resumen, .platform-reportes { --page-image: url("assets/labforma-scan-control.jpg"); }
.platform-mantencion { --page-image: url("assets/labforma-cam-milling.jpg"); }
.platform-leccion, .platform-fuentes { --page-image: url("assets/labforma-exocad-workstation.jpg"); }
.platform-body main { padding: 0 0 64px; }
.platform-body main > .section { width: min(1340px, calc(100% - 48px)); max-width: none; margin: 0 auto; padding: 0; border: 0; background: transparent; box-shadow: none; }
.platform-body .section > .section-head { display: flex; position: relative; flex-direction: column; align-items: flex-start; justify-content: center; gap: 20px; width: 100vw; max-width: none; min-height: 392px; margin: 0 calc((100% - 100vw) / 2) 32px; padding: 42px max(34px, calc((100vw - 1340px) / 2)); overflow: hidden; border: 0; border-radius: 0; background: linear-gradient(90deg, rgba(15,20,57,.94) 0%, rgba(15,20,57,.9) 62%, rgba(15,20,57,.15) 62%), var(--page-image) center / cover; color: #fff; }
.platform-body .section > .section-head > div { width: min(60%, 790px); }
.platform-body .section > .section-head h1 { max-width: 790px; margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.8rem, 4.6vw, 4.6rem); font-weight: 500; letter-spacing: -.045em; line-height: 1.03; color: #fff; text-wrap: balance; }
.platform-body .section > .section-head > p { display: block; max-width: min(60%, 680px); margin: 0; color: #e7eaf8; font-size: 1.08rem; line-height: 1.55; }
.platform-body .section > .section-head .eyebrow { margin: 0 0 16px; color: #d9def8; font-size: .78rem; font-weight: 850; letter-spacing: .16em; }
.platform-body .card, .platform-body .next-action, .platform-body .maintenance-academy, .platform-body .easy-start article { border: 1px solid var(--gallery-line); border-radius: 18px; background: #fff; box-shadow: 0 10px 30px rgba(27,32,77,.05); color: var(--gallery-ink); }
.platform-body .card { padding: clamp(20px, 2.4vw, 32px); }
.platform-body .card h2, .platform-body .card h3, .platform-body .stage-heading h2 { font-family: Georgia, "Times New Roman", serif; color: var(--gallery-ink); font-weight: 500; letter-spacing: -.025em; line-height: 1.2; }
.platform-body .card p, .platform-body .card label { color: #424966; line-height: 1.6; }
.platform-body .card .card-label { color: #6256a5; }
.platform-body .primary-button { min-height: 48px; padding: 14px 20px; border: 1px solid var(--gallery-indigo); border-radius: 10px; background: var(--gallery-indigo); color: #fff; font-family: inherit; font-weight: 750; letter-spacing: 0; text-transform: none; }
.platform-body .secondary-button { min-height: 48px; padding: 14px 20px; border: 1px solid #bbc4df; border-radius: 10px; background: #eef1fa; color: #252a66; font-family: inherit; letter-spacing: 0; text-transform: none; }
.platform-body input:not([type="checkbox"]):not([type="radio"]), .platform-body select, .platform-body textarea { border: 1px solid #aeb9d4; border-radius: 10px; min-height: 48px; background: #fff; color: #171b39; font: inherit; }
.platform-body .next-action { margin: 24px 0; padding: 24px; }
.platform-body .section > .page-visual { display: none; }
.platform-body .lesson-breadcrumb { padding: 18px 0; margin: 0; }
.platform-body .hero.panel { display: grid; grid-template-columns: minmax(0, 62fr) minmax(0, 38fr); min-height: 392px; margin: 0; padding: 0; border: 0; border-radius: 0; background: var(--page-image) center / cover; box-shadow: none; }
.platform-body .hero-copy { min-width: 0; padding: 42px max(34px, calc((100vw - 1340px) / 2)); background: rgba(15,20,57,.9); color: #fff; }
.platform-body .hero-copy h1 { margin: 14px 0 22px; color: #fff; font: 500 clamp(3rem,5vw,5rem)/.98 Georgia, "Times New Roman", serif; letter-spacing: -.055em; }
.platform-body .hero-copy .lead, .platform-body .hero-copy .eyebrow { color: #e7eaf8; }
.platform-body .hero-card { align-self: end; margin: 32px; padding: 24px; background: rgba(15,20,57,.88); border: 0; border-radius: 18px; color: #fff; }
.platform-body .hero-card :is(h2,p,.card-label) { color: #fff; }
.platform-body .home-next-action { display: none; }
.platform-body .easy-start { width: min(1340px, calc(100% - 48px)); margin: 32px auto; }
.platform-body :is(.quality-layout,.dashboard-grid,.form-grid,.report-grid) { gap: 24px; }
.platform-body :focus-visible { outline: 3px solid #6689c8; outline-offset: 4px; }
@media (max-width: 760px) {
  .platform-body main > .section, .platform-body .easy-start { width: calc(100% - 32px); }
  .platform-body .section > .section-head { min-height: 330px; padding: 36px 22px; background: linear-gradient(rgba(15,20,57,.87), rgba(15,20,57,.87)), var(--page-image) center / cover; }
  .platform-body .section > .section-head > div, .platform-body .section > .section-head > p { width: 100%; max-width: 100%; }
  .platform-body .section > .section-head h1 { font-size: clamp(2.5rem,10vw,3.5rem); overflow-wrap: anywhere; }
  .platform-body .hero.panel { grid-template-columns: 1fr; }
  .platform-body .hero-copy { padding: 36px 22px; }
  .platform-body .hero-card { display: none; }
  .platform-body .next-action { padding: 20px; }
  .platform-body :is(.quality-layout,.dashboard-grid,.report-grid) { grid-template-columns: minmax(0,1fr); }
}
