/* Arturo Cuenca: independent profile, scoped to its own page. */
/* Keep the Cuaderno hover image aligned with its article after restoring the original layout. */
.home .entries-thumbnails.active { transform:translateY(0); }
.ac-profile-page #main.site-main { display:block; }
.ac-profile { --ac-muted:#b5b5b5; --ac-line:rgba(255,255,255,.18); width:100%; color:inherit; padding-top:12px; }
.ac-profile *, .ac-profile *::before, .ac-profile *::after { box-sizing:border-box; }
.ac-profile :where(h1,h2,h3,p,figure,ol) { margin:0; padding:0; color:inherit; }
.ac-profile :where(h1,h2,h3) { font-family:inherit; font-weight:500; text-transform:none; }
.ac-profile p { font-size:18px; line-height:1.7; }
.ac-profile p + p { margin-top:18px; }
.ac-profile .ac-profile-eyebrow { color:var(--ac-muted); font-size:12px; line-height:1.5; letter-spacing:.13em; text-transform:uppercase; margin:0 0 24px; }
.ac-profile-hero { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(240px,.8fr); align-items:start; gap:clamp(36px,6vw,94px); padding-bottom:80px; }
.ac-profile h1 { font-size:clamp(48px,6.7vw,84px); line-height:1.05; letter-spacing:-.045em; margin:0 0 26px; }
.ac-profile h1 span { color:#969696; }
.ac-profile .ac-profile-lead { font-size:clamp(26px,3vw,37px); line-height:1.3; letter-spacing:-.025em; max-width:23ch; margin:0 0 24px; }
.ac-profile .ac-profile-intro { color:var(--ac-muted); max-width:58ch; }
.ac-profile-portrait { width:100%; max-width:350px; justify-self:end; margin:0; padding-top:4px; }
.ac-profile-portrait img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:8px; filter:grayscale(1); }
.ac-profile-portrait figcaption { color:var(--ac-muted); font-size:12px; line-height:1.6; margin-top:16px; }
.ac-profile-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 28px; margin-top:32px; }
.ac-profile a.ac-profile-button, .ac-profile a.ac-profile-text-link { display:inline-flex; gap:18px; align-items:center; min-height:44px; font-size:15px; line-height:1.5; text-decoration:none; color:inherit; border-bottom:1px solid currentColor; padding:8px 0; }
.ac-profile a.ac-profile-button { border:1px solid rgba(255,255,255,.6); padding:13px 20px; }
.ac-profile a.ac-profile-text-link { color:var(--ac-muted); }
.ac-profile a:hover { color:#fff; border-color:#fff; }
.ac-profile a:focus-visible { outline:2px solid currentColor; outline-offset:6px; }
.ac-profile-section { border-top:1px solid var(--ac-line); padding:64px 0; }
.ac-profile h2 { font-size:clamp(30px,3.6vw,46px); line-height:1.2; letter-spacing:-.025em; max-width:24ch; margin-bottom:28px; }
.ac-profile h3 { font-size:23px; line-height:1.3; margin-bottom:14px; letter-spacing:-.015em; }
.ac-profile-perspective, .ac-profile-exploration { display:grid; grid-template-columns:minmax(160px,.7fr) minmax(0,1.8fr); gap:44px; }
.ac-profile-perspective > div, .ac-profile-exploration > div { max-width:72ch; }
.ac-profile-perspective p:not(.ac-profile-eyebrow), .ac-profile-exploration p:not(.ac-profile-eyebrow) { color:var(--ac-muted); }
.ac-profile-section-heading { margin-bottom:40px; }
.ac-profile-section-heading h2 { margin-bottom:18px; }
.ac-profile-section-heading > p:last-child:not(.ac-profile-eyebrow) { color:var(--ac-muted); }
.ac-profile-capabilities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:40px; row-gap:40px; }
.ac-profile-capability { border-top:1px solid var(--ac-line); padding-top:20px; }
.ac-profile-number { display:block; font-size:12px; color:var(--ac-muted); margin-bottom:26px; }
.ac-profile-capability p { font-size:16px; line-height:1.7; color:var(--ac-muted); }
.ac-profile-steps { list-style:none; counter-reset:ac-step; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; margin:0; padding:0; }
.ac-profile-steps li { counter-increment:ac-step; list-style:none; padding:0; margin:0; }
.ac-profile-steps li::before { content:"0" counter(ac-step); display:block; margin-bottom:24px; font-size:12px; color:var(--ac-muted); }
.ac-profile-steps h3 { font-size:20px; }
.ac-profile-steps p { color:var(--ac-muted); font-size:16px; }
.ac-profile-job { display:grid; grid-template-columns:minmax(150px,.7fr) minmax(0,1.8fr); gap:44px; border-top:1px solid var(--ac-line); padding:30px 0; }
.ac-profile-job:last-child { padding-bottom:0; }
.ac-profile .ac-profile-job__date { font-size:14px; color:var(--ac-muted); line-height:1.5; }
.ac-profile-job h3 { margin:0 0 7px; }
.ac-profile .ac-profile-job__company { font-size:15px; line-height:1.5; margin:0 0 16px; }
.ac-profile-job > div > p:last-of-type { color:var(--ac-muted); font-size:17px; max-width:65ch; margin-top:0; }
.ac-profile-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:28px; max-width:650px; }
.ac-profile .ac-profile-metrics p { margin:0; }
.ac-profile-metrics strong { display:block; font-size:40px; line-height:1.2; font-weight:400; letter-spacing:-.035em; margin-bottom:8px; }
.ac-profile-metrics span { display:block; max-width:20ch; color:var(--ac-muted); font-size:12px; line-height:1.6; }
.ac-profile-exploration .ac-profile-text-link { margin-top:20px; }
.ac-profile-contact { padding-bottom:30px; }
.ac-profile-contact h2 { font-size:clamp(40px,5.5vw,68px); line-height:1.1; margin-bottom:22px; }
.ac-profile-contact > p:not(.ac-profile-eyebrow) { color:var(--ac-muted); max-width:50ch; }
.ac-profile-page #site-navigation .ac-profile-menu-item > a { border-bottom-color:currentColor; }
@media (max-width:1023px) {
 .ac-profile-hero { grid-template-columns:minmax(0,1.4fr) minmax(210px,.8fr); gap:36px; }
 .ac-profile-capabilities { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
 .ac-profile-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px; }
}
@media (max-width:767px) {
 .ac-profile { padding-top:0; }
 .ac-profile p { font-size:17px; }
 .ac-profile .ac-profile-eyebrow { font-size:11px; margin-bottom:20px; }
 .ac-profile-hero { display:flex; flex-direction:column; gap:32px; padding-bottom:44px; }
 .ac-profile h1 { font-size:clamp(44px,11vw,66px); margin-bottom:22px; }
 .ac-profile .ac-profile-lead { font-size:27px; margin-bottom:20px; }
 .ac-profile .ac-profile-intro { font-size:17px; }
 .ac-profile-portrait { max-width:280px; width:78%; align-self:flex-start; }
 .ac-profile-actions { gap:14px 24px; margin-top:26px; }
 .ac-profile a.ac-profile-button, .ac-profile a.ac-profile-text-link { font-size:14px; }
 .ac-profile-section { padding:42px 0; }
 .ac-profile h2 { font-size:32px; margin-bottom:22px; }
 .ac-profile h3 { font-size:22px; }
 .ac-profile-perspective, .ac-profile-exploration, .ac-profile-job { grid-template-columns:1fr; gap:8px; }
 .ac-profile-section-heading { margin-bottom:30px; }
 .ac-profile-capabilities, .ac-profile-steps { grid-template-columns:1fr; gap:30px; }
 .ac-profile-number, .ac-profile-steps li::before { margin-bottom:16px; }
 .ac-profile-job { padding:26px 0; gap:15px; }
 .ac-profile .ac-profile-job__date { font-size:13px; }
 .ac-profile-job > div > p:last-of-type { font-size:16px; }
 .ac-profile-metrics { gap:16px; margin-top:24px; }
 .ac-profile-metrics strong { font-size:32px; }
 .ac-profile-metrics span { font-size:11px; }
 .ac-profile-contact h2 { font-size:44px; }
 .ac-profile-contact { padding-bottom:22px; }
}
@media (prefers-reduced-motion:reduce) {
 .ac-profile *, .ac-profile *::before, .ac-profile *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
