/* Seminario PSI Dallas 2026 — tema azul PSI sobre la base de styles.css */
body.tema-psi {
  --negro: #061a3d;
  --negro-2: #041330;
  --linea: #16305f;
  --oro: #4da3ff;
  --oro-claro: #8cc4ff;
  --cafe: #0a2a6b;
  --crema: #eef4fc;
  --gris: #8ea3c4;
  --texto-suave: #c9d6ea;
  --psi-marino: #0a2a6b;
  --psi-azul: #1565d8;
  --psi-rojo: #c8202a;
  background: var(--negro);
}
.tema-psi .btn-oro { background: var(--oro); color: #04122b; }
.tema-psi .btn-oro:hover { background: var(--oro-claro); color: #04122b; }
.tema-psi .btn-negro { background: var(--psi-marino); }
.tema-psi .btn-negro:hover { background: var(--psi-azul); }
.tema-psi .btn-wa:hover { border-color: var(--oro); }
.tema-psi .contacto-btn.oscuro { background: var(--psi-marino); }
.tema-psi .contacto-btn.oscuro small { color: var(--oro-claro); }
.tema-psi .contacto-btn.oscuro:hover { background: var(--psi-azul); }
.tema-psi .contacto-btn.claro { border-color: var(--psi-marino); color: var(--psi-marino); }
.tema-psi .contacto-btn.claro small { color: var(--psi-azul); }
.tema-psi .check a, .tema-psi .registro-contacto a:hover { color: var(--psi-azul); }
.tema-psi .form { border-color: #d3e0f3; }

.psi-eyebrow { color: var(--oro); }
.psi-eyebrow-oscuro { color: var(--psi-azul); }
.psi-titulo { font-family: var(--display); font-weight: 900; font-size: clamp(34px, 3.6vw, 52px); line-height: 1.05; margin: 10px 0 36px; color: var(--psi-marino); }
.psi-titulo.claro { color: var(--texto); }

/* Hero */
.psi-hero { padding: 80px 0; background: linear-gradient(180deg, #061a3d 0%, #0a2a6b 100%); }
.psi-hero-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 72px; align-items: center; }
.psi-hero-texto { display: flex; flex-direction: column; gap: 24px; }
.psi-hero h1 { font-family: var(--display); font-weight: 900; font-size: clamp(42px, 5vw, 72px); line-height: 1; letter-spacing: -0.01em; }
.psi-hero .lead { color: var(--texto-suave); max-width: 560px; }
.psi-hero-cta { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.psi-link { color: var(--oro-claro); font-weight: 600; text-decoration: none; }
.psi-link:hover { color: #fff; }
.psi-datos { margin: 16px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.psi-datos div { padding: 16px 18px; border: 1px solid #25457f; border-radius: 6px; background: rgba(4, 19, 48, 0.5); }
.psi-datos dt { font-size: 12px; letter-spacing: 0.18em; color: var(--oro); margin-bottom: 6px; }
.psi-datos dd { margin: 0; font-size: 18px; font-weight: 700; line-height: 1.3; }
.psi-datos dd span { font-size: 14px; font-weight: 500; color: var(--texto-suave); }
.psi-hero-visual { display: flex; flex-direction: column; gap: 16px; }
.psi-logo-card { aspect-ratio: 2.2 / 1; border-radius: 6px; border: 1px solid #2f73d6; border-top: 6px solid var(--oro); background: #4a7c95 url('../img/expo-cihac-2026/psi-fondo.webp') center 40% / cover no-repeat; }
.psi-hero-visual img { width: 100%; border-radius: 6px; border: 1px solid #25457f; aspect-ratio: 596 / 262; object-fit: cover; }

/* Programa */
.psi-seminario { background: #fff; color: var(--tinta); padding: 88px 0; }
.psi-temas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.psi-tema { border: 1px solid #d3e0f3; border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; background: #fff; }
.psi-tema img { width: 100%; aspect-ratio: 16 / 7; object-fit: cover; border-bottom: 4px solid var(--psi-azul); }
.psi-tema-texto { padding: 28px; display: flex; flex-direction: column; gap: 14px; }
.psi-tema h3 { margin: 0; font-family: var(--display); font-size: 28px; color: var(--psi-marino); }
.psi-tema p { color: var(--tinta-suave); font-size: 18px; }
.psi-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.psi-chips li { padding: 8px 14px; background: #e6effc; color: var(--psi-marino); border-radius: 999px; font-weight: 600; font-size: 15px; }

/* Sistemas */
.psi-sistemas { background: var(--negro); padding: 88px 0; }
.psi-sistemas-grid { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 64px; align-items: start; }
.psi-lista { display: flex; flex-direction: column; }
.psi-lista li { display: flex; flex-direction: column; gap: 6px; padding: 22px 0 22px 28px; border-top: 1px solid #1d3a70; position: relative; }
.psi-lista li:last-child { border-bottom: 1px solid #1d3a70; }
.psi-lista li::before { content: ""; position: absolute; left: 0; top: 30px; width: 10px; height: 10px; border-radius: 50%; background: var(--oro); }
.psi-lista strong { font-size: 20px; }
.psi-lista span { color: var(--texto-suave); font-size: 17px; line-height: 1.5; }

/* Logística */
.psi-logistica { background: var(--crema); color: var(--tinta); padding: 88px 0; }
.psi-log-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.psi-card { background: #fff; border: 1px solid #d3e0f3; border-top: 5px solid var(--psi-azul); border-radius: 8px; padding: 28px; display: flex; flex-direction: column; gap: 12px; }
.psi-card.destacada { border-top-color: var(--psi-rojo); }
.psi-card h3 { margin: 0; font-family: var(--display); font-size: 22px; color: var(--psi-marino); }
.psi-card .psi-card-sub { margin-top: 12px; font-size: 18px; }
.psi-card p, .psi-card li { font-size: 17px; line-height: 1.5; color: var(--tinta-suave); }
.psi-card ul { display: flex; flex-direction: column; gap: 10px; }
.psi-card li { padding-left: 18px; position: relative; }
.psi-card li::before { content: ""; position: absolute; left: 0; top: 10px; width: 7px; height: 7px; border-radius: 50%; background: var(--psi-azul); }
.psi-card strong { color: var(--tinta); }
.psi-card a { color: var(--psi-azul); }

/* Flyers */
.psi-flyers { background: var(--negro-2); padding: 88px 0; }
.psi-flyers-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; max-width: 1040px; }
.psi-flyers-grid a { display: block; border-radius: 6px; overflow: hidden; border: 1px solid #1d3a70; transition: transform .2s ease; }
.psi-flyers-grid a:hover { transform: translateY(-3px); }
.psi-flyers-grid img { width: 100%; }

/* Registro */
.tema-psi .registro { background: var(--crema); }
.tema-psi .registro h2 { color: var(--psi-marino); }

@media (max-width: 1100px) {
  .psi-hero-grid, .psi-sistemas-grid { grid-template-columns: 1fr; gap: 48px; }
  .psi-log-grid { grid-template-columns: 1fr; }
}
@media (max-width: 800px) {
  .psi-temas, .psi-flyers-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .psi-hero, .psi-seminario, .psi-sistemas, .psi-logistica, .psi-flyers { padding: 56px 0; }
  .psi-datos { grid-template-columns: 1fr; }
}

/* Ajustes de ancho */
.psi-hero-texto, .psi-hero-visual { min-width: 0; }
.psi-hero h1 { font-size: clamp(34px, 4.1vw, 60px); overflow-wrap: break-word; hyphens: auto; }
.psi-flyers-grid { align-items: start; }
@media (max-width: 640px) {
  .psi-hero h1 { font-size: 34px; }
  .psi-titulo { font-size: 32px; }
  .psi-hero-cta .btn { width: 100%; }
}
.psi-hero h1 { font-size: clamp(44px, 5.6vw, 84px); hyphens: none; }
.psi-hero h1 span { color: var(--oro); }
.psi-subtitulo { font-family: var(--display); font-weight: 800; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.2; color: #fff; max-width: 560px; }
@media (max-width: 640px) { .psi-hero h1 { font-size: 44px; } }

/* Dos fechas */
.psi-fecha { font-size: 14px !important; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--psi-azul) !important; }
.psi-listas { display: flex; flex-direction: column; gap: 14px; }
.psi-lista-titulo { margin: 18px 0 0; font-family: var(--display); font-size: 16px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--oro); }
.psi-lista-titulo:first-child { margin-top: 0; }
.psi-datos dt { line-height: 1.3; }

/* Selección de curso */
.psi-cursos { border: 0; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.psi-cursos legend { padding: 0; margin-bottom: 10px; font-size: 16px; font-weight: 700; color: var(--tinta); }
.form .psi-curso { flex-direction: row; align-items: flex-start; gap: 10px; padding: 14px; border: 2px solid #d3e0f3; border-radius: 8px; cursor: pointer; background: #fbfdff; font-weight: 500; }
.psi-curso input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--psi-azul); flex-shrink: 0; }
.psi-curso span { display: flex; flex-direction: column; gap: 3px; }
.psi-curso strong { font-size: 16px; color: var(--psi-marino); }
.psi-curso small { font-size: 14px; color: var(--tinta-suave); }
.psi-curso:has(input:checked) { border-color: var(--psi-azul); background: #eaf2fe; }
.psi-curso:focus-within { outline: 3px solid var(--psi-azul); outline-offset: 2px; }
@media (max-width: 800px) { .psi-cursos { grid-template-columns: 1fr; } }
