.courses-page { color: #f7f4fa; background: #09060f; }
.courses-page .nav__menu .is-active { color: var(--hub-yellow); }
.courses-hero { position: relative; isolation: isolate; overflow: hidden; min-height: calc(100svh - 66px); padding: 62px 0 86px; background: radial-gradient(circle at 85% 4%,rgba(91,28,160,.2),transparent 30%),linear-gradient(145deg,#09060f,#0d0715 65%,#09060f); }
.courses-hero::before { content: ""; position: absolute; z-index: -2; inset: 0; opacity: .25; background-image: linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px); background-size: 52px 52px; mask-image: linear-gradient(#000,transparent 78%); }
.courses-glow { position: absolute; z-index: -1; border-radius: 50%; filter: blur(110px); pointer-events: none; }
.courses-glow--one { width: 340px; height: 340px; top: 12%; left: -170px; background: rgba(135,44,234,.18); }
.courses-glow--two { width: 300px; height: 300px; right: -140px; bottom: 10%; background: rgba(255,209,47,.08); }
.courses-heading { display: flex; align-items: end; justify-content: space-between; gap: 60px; margin-bottom: 34px; }
.courses-heading > div > span { color: var(--hub-yellow); font-size: .61rem; font-weight: 900; letter-spacing: .16em; }
.courses-heading h1 { margin: 8px 0 0; color: #fff; font-size: clamp(2.7rem,5.3vw,5.2rem); line-height: .92; letter-spacing: -.06em; }
.courses-heading h1 em { color: var(--hub-purple-bright); font-family: Georgia,serif; font-weight: 500; }
.courses-heading > p { max-width: 440px; margin: 0 0 6px; color: #aaa0b1; font-size: .9rem; line-height: 1.65; }
.course-catalog { display: grid; gap: 16px; }
.course-feature,.course-tile { border: 1px solid var(--hub-line); background: rgba(18,13,26,.9); box-shadow: 0 22px 64px rgba(0,0,0,.24); transition: transform .2s,border-color .2s,background .2s; }
.course-feature { display: grid; grid-template-columns: 1.25fr .75fr; min-height: 340px; overflow: hidden; border-color: rgba(255,209,47,.35); border-radius: 20px; background: linear-gradient(115deg,rgba(49,34,24,.92),rgba(18,13,26,.96) 48%); }
.course-feature:hover { transform: translateY(-3px); border-color: rgba(255,209,47,.66); }
.course-feature__content { display: flex; flex-direction: column; align-items: flex-start; padding: 40px 42px; }
.course-label { display: block; font-size: .53rem; font-weight: 900; letter-spacing: .14em; }
.course-label--yellow { color: var(--hub-yellow); }
.course-label--cyan { color: #65dddf; }
.course-label--blue { color: #72d8ff; }
.course-label--purple { color: #c56cff; }
.course-label--orange { color: #ffad54; }
.course-feature h2 { max-width: 720px; margin: 12px 0 13px; color: #fff; font-size: clamp(2rem,3.7vw,3.55rem); line-height: .98; letter-spacing: -.05em; }
.course-feature p { max-width: 710px; margin: 0; color: #b4aab9; font-size: .89rem; line-height: 1.58; }
.course-feature ul { display: flex; flex-wrap: wrap; gap: 7px; margin: 20px 0 0; padding: 0; list-style: none; }
.course-feature li { padding: 6px 9px; border: 1px solid rgba(255,209,47,.17); border-radius: 999px; color: #beb3a0; background: rgba(255,209,47,.045); font-size: .6rem; font-weight: 750; }
.course-feature__content > b { margin-top: auto; padding-top: 22px; color: var(--hub-yellow); font-size: .76rem; }
.course-feature b i,.course-tile b i { margin-left: 7px; font-style: normal; }
.course-feature__visual { position: relative; display: grid; min-height: 340px; place-items: center; overflow: hidden; background: radial-gradient(circle at 50% 50%,rgba(130,41,231,.42),transparent 47%),linear-gradient(145deg,#160a24,#0a0710); }
.course-feature__visual::before { content: ""; position: absolute; inset: 0; opacity: .36; background-image: linear-gradient(rgba(184,92,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(184,92,255,.08) 1px,transparent 1px); background-size: 26px 26px; }
.course-feature__visual > span { position: absolute; z-index: 2; top: 18px; right: 18px; padding: 6px 9px; border: 1px solid rgba(255,209,47,.3); border-radius: 999px; color: var(--hub-yellow); background: rgba(9,6,15,.72); font-size: .48rem; font-weight: 900; letter-spacing: .11em; }
.course-feature__visual img { position: relative; z-index: 1; width: min(76%,330px); border-radius: 18px; box-shadow: 0 28px 60px rgba(0,0,0,.45); transform: rotate(2deg); transition: transform .25s; }
.course-feature:hover .course-feature__visual img { transform: rotate(0) scale(1.025); }
.course-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.course-tile { display: grid; grid-template-rows: auto 1fr; min-height: 390px; overflow: hidden; border-radius: 17px; }
a.course-tile:hover { transform: translateY(-3px); border-color: rgba(184,92,255,.48); background: #171020; }
.course-tile__visual { aspect-ratio: 16/7.15; overflow: hidden; border-bottom: 1px solid var(--hub-line); background: #0e0a14; }
.course-tile__visual img { width: 100%; height: 100%; object-fit: cover; }
.course-tile__visual--tfg-course { background: #eef2f5; }
.course-tile__visual--tfg-course img { object-fit: contain; }
.course-tile__visual--jamovi img { filter: saturate(.82) brightness(.78); }
.course-tile__content { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; min-height: 195px; padding: 24px 27px 25px; }
.course-tile h2 { margin: 9px 0 10px; color: #fff; font-size: clamp(1.2rem,2vw,1.65rem); line-height: 1.08; letter-spacing: -.035em; }
.course-tile p { margin: 0; color: #9f95a5; font-size: .72rem; line-height: 1.5; }
.course-tile b { margin-top: auto; padding-top: 18px; color: var(--hub-yellow); font-size: .67rem; }
.course-tile--disabled { position: relative; border-color: rgba(101,221,223,.16); background: rgba(15,23,30,.86); cursor: not-allowed; }
.course-tile--disabled::after { content: ""; position: absolute; inset: 0; background: linear-gradient(110deg,transparent,rgba(101,221,223,.025)); pointer-events: none; }
.coming-soon { margin-top: auto; padding: 7px 10px; border: 1px solid rgba(101,221,223,.26); border-radius: 7px; color: #7ce3e5; background: rgba(101,221,223,.07); font-size: .57rem; letter-spacing: .12em; }
.course-art { position: relative; isolation: isolate; display: grid; min-height: 235px; place-content: center; overflow: hidden; text-align: center; }
.course-art::before { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .65; background-image: linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px); background-size: 21px 21px; }
.course-art span { display: grid; width: 72px; height: 72px; place-items: center; margin: auto; border: 1px solid rgba(255,255,255,.24); border-radius: 18px; color: #fff; background: rgba(9,6,15,.25); font-size: 1.55rem; font-weight: 900; box-shadow: 0 20px 40px rgba(0,0,0,.26); }
.course-art small { margin-top: 12px; color: rgba(255,255,255,.75); font-size: .5rem; font-weight: 900; letter-spacing: .18em; }
.course-art--copilot { background: radial-gradient(circle at 30% 20%,#ec62cb,transparent 42%),linear-gradient(135deg,#202e84,#6d238c); }
.course-art--work { background: radial-gradient(circle at 65% 20%,#ffb94b,transparent 37%),linear-gradient(135deg,#7e2a60,#401078); }
.courses-help { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 22px; padding: 22px 25px; border: 1px solid rgba(184,92,255,.2); border-radius: 14px; background: rgba(141,53,242,.055); }
.courses-help span,.courses-help strong { display: block; }
.courses-help span { margin-bottom: 4px; color: var(--hub-purple-bright); font-size: .5rem; font-weight: 900; letter-spacing: .14em; }
.courses-help strong { color: #eee8f1; font-size: .86rem; }
.courses-help a { flex: 0 0 auto; padding: 9px 12px; border: 1px solid rgba(255,209,47,.24); border-radius: 8px; color: var(--hub-yellow); background: rgba(255,209,47,.05); font-size: .66rem; font-weight: 850; }

@media (max-width: 900px) {
  .courses-heading { align-items: flex-start; flex-direction: column; gap: 18px; }
  .course-feature { grid-template-columns: 1fr .7fr; }
}

@media (max-width: 720px) {
  .courses-hero { padding: 38px 0 58px; }
  .courses-heading { margin-bottom: 24px; }
  .courses-heading h1 { font-size: clamp(2.55rem,13vw,4rem); }
  .course-feature { grid-template-columns: 1fr; }
  .course-feature__visual { min-height: 250px; grid-row: 1; }
  .course-feature__content { padding: 27px 23px 29px; }
  .course-feature__content > b { margin-top: 26px; }
  .course-row { grid-template-columns: 1fr; }
  .course-tile { grid-template-columns: 1fr; grid-template-rows: auto 1fr; min-height: 0; }
  .course-tile__visual { aspect-ratio: 16/8; min-height: 0; }
  .course-tile__content { min-height: 205px; }
  .course-tile__content { padding: 22px 19px; }
  .courses-help { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 430px) {
  .course-feature__visual { min-height: 220px; }
  .course-feature h2 { font-size: 2rem; }
  .course-tile { grid-template-columns: 1fr; min-height: 0; }
  .course-tile__visual { min-height: 0; }
  .course-art span { width: 58px; height: 58px; border-radius: 14px; font-size: 1.25rem; }
  .course-tile__content { padding: 19px 15px; }
  .course-tile h2 { font-size: 1.1rem; }
  .course-tile p { font-size: .66rem; }
}

/* Catálogo 2026: mismo lenguaje visual que la agenda de talleres. */
:root{--courses-bg:#1b1424;--courses-panel:#2a2033;--courses-panel-strong:#342740;--courses-text:#f8f4fa;--courses-muted:#c4bac8;--courses-purple:#b85cff;--courses-yellow:#ffd12f;--courses-green:#91d1ae;--courses-line:rgba(255,255,255,.13)}
.courses-page{color:var(--courses-text);background:var(--courses-bg)}
.courses-page .site-header{background:rgba(15,10,21,.9)}
.courses-page .nav__menu .is-active{color:var(--courses-yellow)}
.courses-page .courses-hero{position:relative;isolation:isolate;overflow:hidden;min-height:calc(100svh - 66px);padding:28px 0 72px;background:var(--courses-bg)}
.courses-page .courses-hero::before{content:"";position:absolute;z-index:-2;inset:0 0 auto;height:210px;opacity:.32;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(135deg,#181020,#24172f 58%,#1b1424);background-size:52px 52px,52px 52px,auto;mask-image:linear-gradient(#000,transparent)}
.courses-page .courses-glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(100px);pointer-events:none}
.courses-page .courses-glow--one{width:260px;height:260px;right:8%;top:-170px;left:auto;background:rgba(157,71,245,.24)}
.courses-page .courses-glow--two{width:180px;height:180px;left:-100px;right:auto;bottom:-120px;background:rgba(255,209,47,.1)}
.courses-page .courses-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.78fr);align-items:center;gap:48px;margin:0;padding-bottom:27px;border-bottom:1px solid var(--courses-line)}
.courses-page .courses-heading>div:first-child>span{display:block;margin-bottom:8px;color:var(--courses-yellow);font-size:.72rem;font-weight:900;letter-spacing:.15em}
.courses-page .courses-heading h1{max-width:760px;margin:0;color:#fff;font-size:clamp(2rem,3.25vw,3.35rem);line-height:1.02;letter-spacing:-.045em}
.courses-page .courses-heading h1 em{color:var(--courses-purple);font-family:Georgia,serif;font-weight:500;white-space:nowrap}
.courses-intro{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.courses-intro p{max-width:410px;margin:0;color:var(--courses-muted);font-size:.92rem;line-height:1.45}
.courses-intro>span{display:inline-flex;flex:0 0 auto;align-items:center;gap:9px;padding:8px 12px;border:1px solid rgba(145,209,174,.25);border-radius:999px;color:#dce8df;background:rgba(44,87,67,.2);font-size:.82rem;font-weight:750}
.courses-intro i,.course-label i{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--courses-green);box-shadow:0 0 14px rgba(145,209,174,.5)}
.courses-page .course-catalog{display:grid;gap:18px;padding-top:32px}
.course-card{display:grid;grid-template-columns:130px minmax(0,1fr) 245px;min-height:315px;overflow:hidden;border:1px solid var(--courses-line);border-radius:22px;background:linear-gradient(135deg,var(--courses-panel-strong),var(--courses-panel));box-shadow:0 20px 54px rgba(0,0,0,.16)}
.course-number{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid rgba(255,209,47,.18);color:var(--courses-yellow);background:rgba(255,209,47,.06);text-align:center;text-decoration:none}
.course-number span{font-size:.76rem;font-weight:900;letter-spacing:.16em}.course-number strong{margin:8px 0 7px;color:#fff;font-size:4rem;line-height:.95;letter-spacing:-.07em}.course-number small{padding:0 12px;font-size:.64rem;font-weight:850;line-height:1.45;letter-spacing:.08em}
.course-card__content{display:flex;flex-direction:column;justify-content:center;padding:34px 36px}.course-label{display:flex;align-items:center;gap:9px;color:var(--courses-green);font-size:.72rem;font-weight:900;letter-spacing:.12em}
.course-card h2{margin:13px 0 12px;color:#fff;font-size:clamp(1.55rem,2.6vw,2.25rem);line-height:1.12;letter-spacing:-.04em}.course-card__content>p{max-width:700px;margin:0;color:var(--courses-muted);font-size:.96rem;line-height:1.6}
.course-details{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:25px;padding-top:20px;border-top:1px solid var(--courses-line)}.course-details b,.course-details small{display:block}.course-details b{color:#fff;font-size:.88rem}.course-details small{margin-top:3px;color:#a99eaf;font-size:.75rem}
.course-card__visual{display:flex;flex-direction:column;padding:14px;border-left:1px solid var(--courses-line);background:rgba(12,8,17,.18)}.course-card__visual img{width:100%;min-height:0;flex:1;object-fit:cover;border-radius:13px}.course-card__visual a{display:flex;min-height:52px;align-items:center;justify-content:space-between;margin-top:10px;padding:0 15px;border-radius:10px;color:#17101f;background:var(--courses-yellow);font-size:.88rem;font-weight:900;text-decoration:none}.course-card__visual a:hover{background:#ffdd61}
.course-card--tfg .course-number{border-color:rgba(184,92,255,.28);color:#d899ff;background:rgba(139,44,255,.09)}.course-card--tfg .course-label{color:#d4a1f7}.course-card--tfg .course-label i{background:#c57cff;box-shadow:0 0 14px rgba(197,124,255,.5)}.course-card--tfg .course-card__visual img{object-position:center 43%}.courses-page .footer{background:#0d0912}
.course-card--jamovi .course-number{border-color:rgba(72,125,181,.35);color:#9ec7ee;background:rgba(72,125,181,.11)}.course-card--jamovi .course-label{color:#9ec7ee}.course-card--jamovi .course-label i{background:#63a5df;box-shadow:0 0 14px rgba(99,165,223,.5)}.course-card--jamovi .course-card__visual img{object-position:center}
@media(max-width:980px){.courses-page .courses-heading{grid-template-columns:1fr;gap:14px}.courses-intro{justify-content:space-between}.course-card{grid-template-columns:105px minmax(0,1fr) 205px}.course-card__content{padding:28px}.course-details{grid-template-columns:1fr 1fr}.course-details span:last-child{grid-column:1/-1}}
@media(max-width:720px){.courses-page .site-header{background:rgba(15,10,21,.96)}.courses-page .courses-hero{padding:22px 0 48px}.courses-page .courses-heading{gap:12px}.courses-page .courses-heading h1{font-size:clamp(1.9rem,9vw,2.65rem)}.courses-page .courses-heading h1 em{display:block;margin-top:3px;white-space:normal}.courses-intro{gap:12px}.courses-intro p{flex:1;font-size:.88rem;line-height:1.4}.courses-intro>span{padding:7px 10px;font-size:.75rem}.courses-page .course-catalog{padding-top:26px}.course-card{grid-template-columns:1fr}.course-number{min-height:92px;flex-direction:row;gap:9px;border-right:0;border-bottom:1px solid rgba(255,209,47,.18)}.course-number strong{margin:0 2px;font-size:2.7rem}.course-card__content{padding:25px 22px}.course-details{grid-template-columns:1fr}.course-details span:last-child{grid-column:auto}.course-card__visual{min-height:285px;border-top:1px solid var(--courses-line);border-left:0}.course-card__visual img{max-height:235px;object-fit:cover}.course-card--tfg .course-card__visual img{object-position:center 38%}}

@media(max-width:720px){
  .courses-intro>span{display:none}
  .courses-page .course-catalog{gap:14px;padding-top:22px}
  .courses-page .course-card{grid-template-columns:104px minmax(0,1fr);min-height:0;align-items:stretch}
  .courses-page .course-number{display:none}
  .courses-page .course-card__content{grid-column:2;grid-row:1;min-height:218px;padding:17px 16px 16px}
  .courses-page .course-label{font-size:.58rem;letter-spacing:.09em}
  .courses-page .course-card h2{margin:9px 0 8px;font-size:1.16rem;line-height:1.12}
  .courses-page .course-card__content>p{display:-webkit-box;overflow:hidden;font-size:.75rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}
  .courses-page .course-details{grid-template-columns:1fr 1fr;gap:8px 12px;margin-top:12px;padding-top:11px}
  .courses-page .course-details span:last-child{grid-column:1/-1}
  .courses-page .course-details b{font-size:.7rem}.courses-page .course-details small{margin-top:1px;font-size:.61rem}
  .courses-page .course-card__visual{grid-column:1;grid-row:1;min-height:0;padding:9px;border-top:0;border-right:1px solid var(--courses-line);border-left:0}
  .courses-page .course-card__visual img{width:100%;height:auto;max-height:none;flex:0 0 auto;aspect-ratio:1;object-fit:cover;border-radius:9px}
  .courses-page .course-card__visual a{min-height:42px;justify-content:center;margin-top:8px;padding:5px 6px;text-align:center;font-size:.68rem;line-height:1.2}
  .courses-page .course-card__visual a span{display:none}
}
