/* Perfil de un docente (/docente/{slug}) — usa los tokens y clases base de plantilla.css. */
.dc-hero{background:#F4F8F9;padding:56px 0}
.dc-hero-grid{display:grid;grid-template-columns:320px 1fr;gap:48px;align-items:center}
.dc-hero-grid:not(:has(.dc-photo)){grid-template-columns:1fr}
.dc-photo{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:24px;box-shadow:0 20px 50px rgba(12,110,130,.15)}
.dc-intro{display:flex;flex-direction:column;gap:14px}
.dc-intro .tag{align-self:flex-start}
.dc-intro h1{font-size:clamp(28px,3.6vw,42px);font-weight:800;line-height:1.15}
.dc-role{font-size:16px;color:var(--ink-2)}
.dc-stats{display:flex;gap:16px;flex-wrap:wrap;margin-top:6px}
.dc-stats div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 18px;min-width:150px}
.dc-stats b{display:block;font-size:24px;font-weight:800;color:var(--primary)}
.dc-stats span{font-size:12px;color:var(--ink-2)}
.dc-act{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}

.dc-body{padding:64px 0 80px;background:#fff}
.dc-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;align-items:start}
.dc-main{display:flex;flex-direction:column;gap:40px;min-width:0}
.dc-block .h2{font-size:clamp(24px,2.6vw,30px)}
.dc-block p{font-size:16px;line-height:1.7;color:var(--ink-2);margin-bottom:14px;max-width:720px}
.dc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.dc-list li{display:flex;gap:12px;align-items:flex-start;font-size:15px}
.dc-list svg{flex:none;color:var(--primary);margin-top:4px}
.dc-list b{display:block;font-weight:600}
.dc-timeline{list-style:none;margin:0;padding:0 0 0 22px;border-left:2px solid var(--primary-soft);display:flex;flex-direction:column;gap:18px}
.dc-timeline li{position:relative}
.dc-timeline li::before{content:"";position:absolute;left:-29px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px #fff}
.dc-timeline b{font-size:15px;font-weight:600;display:block}

.dc-side{display:flex;flex-direction:column;gap:18px;position:sticky;top:100px}
.dc-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:12px}
.dc-card .eyebrow{margin:0}
.dc-card .chips .tag{padding:6px 12px;background:var(--primary-soft);color:var(--primary)}
.dc-course{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;color:var(--ink);padding:8px 0;border-top:1px solid var(--line)}
.dc-card .eyebrow + .dc-course{border-top:0}
.dc-course span{display:block;aspect-ratio:1;border-radius:10px;background:var(--primary-soft) center 20%/cover no-repeat}
.dc-course b{display:block;font-size:14px;line-height:1.3}
.dc-course small{font-size:12px;color:var(--ink-2)}
.dc-course:hover b{color:var(--primary)}
.dc-vacio{font-size:14px;color:var(--ink-2)}
.dc-cta{background:linear-gradient(160deg,#12586B,#000D13);color:#fff;border:0}
.dc-cta h3{font-size:18px;font-weight:800}
.dc-cta p{font-size:14px;color:#DCEFF1}
.dc-cta .btn{align-self:flex-start}

@media (max-width:960px){
  .dc-hero-grid,.dc-grid{grid-template-columns:1fr}
  .dc-photo{max-width:320px}
  .dc-side{position:static}
}
@media (max-width:640px){
  .dc-hero{padding:40px 0}
  .dc-photo{max-width:260px;margin:0 auto}
  .dc-body{padding:48px 0 56px}
}
