*{box-sizing:border-box;margin:0;padding:0}
html{overflow-x:hidden}
body{background:#F4F2EF;font-family:Inter,sans-serif;color:#1A1A1A}

/* ── HEADER ── */
.hdr{background:linear-gradient(160deg,#1A0005 0%,#3D0010 55%,#5C0018 100%);padding:2.5rem 1.5rem 2rem;position:relative;overflow:hidden}
.hdr::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 70% 50%,rgba(128,0,0,.3),transparent 70%)}
.hdr::after{content:'EDII';position:absolute;right:-10px;bottom:-20px;font-family:Montserrat,sans-serif;font-weight:900;font-size:10rem;color:rgba(255,215,0,.04);line-height:1;pointer-events:none}
.hi{max-width:1100px;margin:0 auto;position:relative;z-index:1}
.hdr-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem}
.bread{font-size:.58rem;color:rgba(255,255,255,.28);margin-bottom:.5rem;display:flex;gap:.35rem;flex-wrap:wrap}
.bread a{color:rgba(255,255,255,.28);text-decoration:none}
.hdr h1{font-family:Montserrat,sans-serif;font-weight:900;font-size:clamp(1.5rem,4vw,2.3rem);color:#fff;line-height:1.15;margin-bottom:.4rem}
.hdr-sub{font-family:Inter,sans-serif;font-size:.8rem;color:rgba(255,255,255,.5);line-height:1.6;max-width:560px}
.hdr-stats{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:1.2rem}
.hdr-stat{text-align:center}
.hdr-stat-n{font-family:Montserrat,sans-serif;font-weight:900;font-size:1.6rem;color:#FFD700;display:block;line-height:1}
.hdr-stat-l{font-size:.5rem;color:rgba(255,255,255,.38);text-transform:uppercase;letter-spacing:.12em;margin-top:.2rem;display:block}
.register-cta-btn{display:inline-flex;align-items:center;gap:.4rem;background:#FFD700;color:#1A0005;font-family:Montserrat,sans-serif;font-weight:900;font-size:.72rem;padding:.6rem 1.3rem;border-radius:8px;text-decoration:none;flex-shrink:0;white-space:nowrap}

/* ── FILTERS ── */
.filter-bar{background:#fff;border-bottom:1px solid #EDE8E3;padding:.8rem 1.5rem;position:sticky;top:var(--vt-header-h, 0px);z-index:50}
.filter-inner{max-width:1100px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:.65rem}
.filter-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.filter-btn{font-family:Montserrat,sans-serif;font-weight:700;font-size:.58rem;letter-spacing:.08em;padding:.3rem .75rem;border-radius:99px;border:1.5px solid #EDE8E3;background:#fff;cursor:pointer;transition:all .15s;color:#555}
.filter-btn.active,.filter-btn:hover{background:#800000;color:#FFD700;border-color:#800000}
.filter-label{font-family:Montserrat,sans-serif;font-weight:800;font-size:.52rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-right:.3rem;flex-shrink:0}
/* Status segmented control */
.status-seg{display:inline-flex;background:#F4F2EF;border-radius:99px;padding:.2rem;gap:.15rem}
.status-btn{font-family:Montserrat,sans-serif;font-weight:800;font-size:.6rem;letter-spacing:.06em;padding:.4rem 1rem;border-radius:99px;border:none;background:transparent;cursor:pointer;transition:all .18s;color:#777;display:inline-flex;align-items:center;gap:.35rem}
.status-btn .status-count{font-size:.56rem;opacity:.7;font-weight:700}
.status-btn.active{background:#059669;color:#fff}
.status-btn.active .status-count{opacity:.85}
.status-btn[data-status="closed"].active{background:#64748B}
.status-btn[data-status="all"].active{background:#800000}
.status-btn:not(.active):hover{background:#EDE8E3;color:#333}

/* ── MAIN ── */
.wrap{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 5rem}
.empty-state{text-align:center;padding:3.5rem 1.5rem;color:var(--muted);font-family:Inter,sans-serif;font-size:.85rem;display:none}
.empty-state.show{display:block}

/* ── MONTH DIVIDER ── */
.month-head{font-family:Montserrat,sans-serif;font-weight:900;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:#800000;margin:2rem 0 1rem;display:flex;align-items:center;gap:.8rem}
.month-head::after{content:'';flex:1;height:1px;background:#EDE8E3}

/* ── TRAINING GRID ── */
.training-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}

/* ── TRAINING CARD ── */
.t-card{background:#fff;border:1px solid #EDE8E3;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:all .18s;position:relative}
.t-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.1)}
.t-card.closed{opacity:.6}
.t-card.closed .t-date-badge{background:linear-gradient(135deg,#3A3A3E,#26262A)}
.t-card.closed::after{content:'CLOSED';position:absolute;top:12px;right:12px;background:#64748B;color:#fff;font-family:Montserrat,sans-serif;font-weight:900;font-size:.5rem;letter-spacing:.18em;padding:.2rem .55rem;border-radius:99px;z-index:2}
.t-card.closed .t-register{background:#94A3B8;pointer-events:none}
.t-card.soon::before{content:'CLOSING SOON';position:absolute;top:12px;right:12px;background:#DC2626;color:#fff;font-family:Montserrat,sans-serif;font-weight:900;font-size:.48rem;letter-spacing:.14em;padding:.2rem .5rem;border-radius:99px;z-index:2;animation:pulse-badge 2s ease-in-out infinite}
@keyframes pulse-badge{0%,100%{opacity:1}50%{opacity:.65}}

/* Date badge */
.t-date-badge{background:linear-gradient(135deg,#1A0005,#3D0010);padding:.9rem 1.1rem;display:flex;align-items:center;gap:.8rem}
.t-date-nums{font-family:Montserrat,sans-serif;font-weight:900;font-size:1.4rem;color:#FFD700;line-height:1;flex-shrink:0}
.t-date-nums span{font-size:.85rem;color:rgba(255,215,0,.6);font-weight:700}
.t-date-month{font-family:Montserrat,sans-serif;font-size:.52rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.t-date-days{font-family:Inter,sans-serif;font-size:.62rem;color:rgba(255,255,255,.35);margin-top:.18rem}

/* Card body */
.t-body{padding:1rem 1.1rem;flex:1;display:flex;flex-direction:column;gap:.5rem}
.t-category{font-family:Montserrat,sans-serif;font-weight:800;font-size:.48rem;letter-spacing:.14em;text-transform:uppercase;color:#800000}
.t-title{font-family:Montserrat,sans-serif;font-weight:800;font-size:.88rem;color:#1A1A1A;line-height:1.35}
.t-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.2rem}
.t-meta-pill{background:#F4F2EF;border-radius:99px;padding:.18rem .6rem;font-size:.62rem;color:#555;display:inline-flex;align-items:center;gap:.3rem}
.t-fee{background:#FFF8E1;border-radius:99px;padding:.18rem .6rem;font-size:.62rem;color:#92400E;font-weight:700;display:inline-flex;align-items:center;gap:.3rem}
.t-location{font-family:Inter,sans-serif;font-size:.65rem;color:var(--muted);line-height:1.5;margin-top:.3rem}

/* CTA */
.t-footer{padding:.8rem 1.1rem;border-top:1px solid #F5F1ED;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.t-register{display:inline-flex;align-items:center;gap:.35rem;background:#800000;color:#FFD700;font-family:Montserrat,sans-serif;font-weight:700;font-size:.62rem;padding:.35rem .9rem;border-radius:6px;text-decoration:none;transition:all .15s}
.t-register:hover{background:#5C0018}
.t-contact{font-size:.6rem;color:var(--muted)}
.t-contact a{color:#800000;text-decoration:none;font-weight:600}

/* Category color coding */
.cat-ai{color:#7C3AED}.cat-food{color:#059669}.cat-tech{color:#1D4ED8}.cat-business{color:#D97706}.cat-media{color:#DB2777}.cat-energy{color:#EA580C}.cat-other{color:#64748B}

@media(max-width:900px){.training-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.training-grid{grid-template-columns:1fr}.filter-bar{padding:.6rem 1rem}.wrap{padding:1.2rem 1rem 4rem}}
