.page-header { padding:160px 64px 60px; background:var(--paper); }
.page-title  { font-size:clamp(32px,4vw,50px); font-weight:800; color:var(--ink); max-width:600px; line-height:1.25; }
.page-sub    { margin-top:16px; font-size:15.5px; color:var(--ink-soft); max-width:540px; line-height:1.85; }

.retraining-wrap  { padding:50px 64px 80px; background:var(--paper-2); }
.retraining-grid  { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; min-height:320px; }

.retraining-card { border-radius:20px; overflow:hidden; background:var(--paper); border:1px solid var(--line); transition:transform .3s; }
.retraining-card:hover { transform:translateY(-5px); }

.retraining-img-wrap { width:100%; height:180px; position:relative; background:linear-gradient(135deg, rgba(30,138,124,0.14), rgba(30,138,124,0.05)); }
.retraining-img { width:100%; height:100%; object-fit:cover; display:none; }
.retraining-img.is-loaded { display:block; }
.retraining-img-placeholder { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:var(--sea-deep); opacity:.55; }
.retraining-img-wrap.has-img .retraining-img-placeholder { display:none; }

.retraining-body { padding:22px 24px; }
.retraining-badge-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
.retraining-badge { display:inline-block; background:rgba(30,138,124,0.10); color:var(--sea-deep); font-size:11px; font-weight:700; letter-spacing:.02em; padding:5px 13px; border-radius:40px; }
.retraining-tag   { display:inline-block; background:var(--paper-2); color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.02em; padding:5px 13px; border-radius:40px; border:1px solid var(--line); }
.retraining-title { font-size:15.5px; font-weight:700; color:var(--ink); line-height:1.7; margin-bottom:12px; }
.retraining-meta { display:flex; align-items:center; gap:6px; font-size:12.5px; color:var(--muted); }
.retraining-meta svg { flex-shrink:0; }

@media (max-width:1024px) {
    .page-header, .retraining-wrap { padding-left:24px; padding-right:24px; }
    .retraining-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:640px) {
    .retraining-grid { grid-template-columns:1fr; }
    .page-header { padding-top:120px; }
}

html[data-theme="dark"] .retraining-card { background: #1c2541 !important; border-color: var(--line); }
html[data-theme="dark"] .retraining-badge { background: rgba(91,224,168,0.14); color: #5BE0A8; }
html[data-theme="dark"] .retraining-tag   { background: rgba(255,255,255,0.04); color: var(--muted); border-color: var(--line); }
@media (max-width: 1024px) {
    nav .nav-cta { display: none; }
}