:root { --ink:#15363e; --teal:#137b78; --paper:#f7f7f2; --line:#d9e2df; --muted:#5f6e70; --card-bg:#ffffff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.6; }
main { max-width:1100px; margin:0 auto; padding:7rem 2rem 4rem; }

/* Nuevo layout de la cabecera (Grid) */
.hero { display:grid; grid-template-columns: 1fr 320px; gap:4rem; align-items:center; border-bottom:1px solid var(--line); padding-bottom:4.5rem; }
.hero-content { display:flex; flex-direction:column; }

/* Estilos de la tarjeta de perfil */
.author-profile { background:var(--card-bg); padding:2rem; border-radius:16px; border:1px solid var(--line); box-shadow:0 10px 30px rgba(0,0,0,0.04); text-align:center; display:flex; flex-direction:column; align-items:center; }
.profile-pic { width:140px; height:140px; border-radius:50%; object-fit:cover; margin-bottom:1.25rem; border:4px solid var(--paper); box-shadow:0 4px 10px rgba(19, 123, 120, 0.15); }
.author-profile h3 { font-family:Inter,sans-serif; font-size:1.3rem; margin:0 0 0.5rem; color:var(--ink); }
.author-profile .dept { font-size:0.9rem; color:var(--muted); margin:0 0 1.5rem; line-height:1.4; }
.contact-info { margin-top:auto; }
.email-link { background:#e8f3f1; color:var(--teal); text-decoration:none; padding:0.6rem 1.2rem; border-radius:999px; font-weight:600; font-size:0.9rem; transition:background 0.2s; display:inline-block; }
.email-link:hover { background:#d1e9e6; }

.eyebrow,.section-label { color:var(--teal); font-size:.76rem; font-weight:750; letter-spacing:.13em; margin:0 0 1rem; text-transform:uppercase; }
h1,h2 { font-family:Georgia,"Times New Roman",serif; letter-spacing:-.035em; line-height:1.07; }
h1 { font-size:clamp(2.4rem,6vw,4.5rem); margin:0; max-width:940px; }
h2 { font-size:clamp(2rem,4vw,3.25rem); margin:0; }
.lead { font-size:clamp(1.1rem,2vw,1.4rem); max-width:700px; margin:2rem 0 1rem; color:var(--muted); }

.actions { display:flex; flex-wrap:wrap; gap:.85rem; margin-top:2.2rem; }
.button { border:1px solid var(--teal); border-radius:999px; font-weight:700; padding:.7rem 1.15rem; text-decoration:none; transition:transform .15s ease,background .15s ease; }
.button:hover { transform:translateY(-2px); }
.primary { background:var(--teal); color:white; }
.secondary { color:var(--teal); }
.secondary:hover { background:#e8f3f1; }

.references { padding-top:4.5rem; }
.section-heading { align-items:end; display:flex; justify-content:space-between; gap:2rem; margin-bottom:2.25rem; }
.section-heading > p { color:var(--muted); margin:0; white-space:nowrap; }
ol { counter-reset:references; list-style:none; margin:0; padding:0; }
li { border-top:1px solid var(--line); color:#33494d; counter-increment:references; padding:1.25rem 0 1.25rem 3rem; position:relative; }
li::before { color:var(--teal); content:"[" counter(references) "]"; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.85rem; font-weight:700; left:0; position:absolute; top:1.5rem; }
li a { color:var(--teal); text-decoration-color:#9bc9c4; text-underline-offset:3px; }
li a:hover { color:#095b5a; }
footer { border-top:1px solid var(--line); color:var(--muted); font-size:.86rem; margin:0 auto; max-width:1100px; padding:2rem; }

/* Adaptabilidad para dispositivos móviles */
@media (max-width:950px) { 
  .hero { grid-template-columns:1fr; gap:3rem; } 
  .author-profile { max-width: 400px; margin: 0 auto; width: 100%; }
}
@media (max-width:680px) { 
  main { padding:4.5rem 1.25rem 3rem; } 
  .hero { padding-bottom:3.5rem; } 
  .references { padding-top:3.5rem; } 
  .section-heading { align-items:start; flex-direction:column; gap:.8rem; } 
  .section-heading > p { white-space:normal; } 
  li { padding-left:2.65rem; } 
  footer { padding:1.5rem 1.25rem; } 
}
