/* Anvil Child — Sector VP profile */
.acm-vp { background: var(--paper); color: var(--p3); padding: 0 40px; }
.acm-vp-y { padding: 100px 0; }
.acm-vp-head { margin-bottom: 40px; }
.acm-vp-eyebrow { display: inline-block; background: var(--s1); color: var(--p3); font-family: var(--f-mono); font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; padding: 7px 12px; margin-bottom: 14px; }
.acm-vp-h2 { font-family: var(--f-display); font-weight: 800; font-size: clamp(32px, 4vw, 52px); letter-spacing: -0.02em; margin: 0; color: var(--p3); }
.acm-vp-grid { display: grid; grid-template-columns: 400px 1fr; gap: 64px; align-items: start; }
/* Headshot cuadrado 400×400 con object-fit: cover (paridad con Vercel .mc-vp-headshot);
   antes 320×270 con fill, que deformaba la foto. */
.acm-vp-headshot { width: 100%; max-width: 400px; aspect-ratio: 1 / 1; }
.acm-vp-headshot img { width: 100%; height: 100%; object-fit: cover; display: block; background: var(--p1-tint); }
.acm-vp-name { font-family: var(--f-display); font-weight: 800; font-size: 32px; letter-spacing: -0.02em; margin: 0; color: var(--p3); }
.acm-vp-role { font-family: var(--f-body); font-size: 16px; color: var(--p1); margin: 8px 0 0; font-weight: 600; }
.acm-vp-location { font-family: var(--f-mono); font-size: 12px; color: var(--ink-soft); margin: 4px 0 0; letter-spacing: 0.04em; }
.acm-vp-bio { font-family: var(--f-body); font-size: 15px; line-height: 1.65; color: var(--ink-soft); margin: 20px 0 0; }
.acm-vp-actions { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; margin-top: 28px; }
.acm-vp-linkedin, .acm-vp-leadership { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font-family: var(--f-display); font-weight: 700; font-size: 13px; letter-spacing: 0.08em; }
.acm-vp-linkedin { background: var(--p2); color: #fff; padding: 12px 18px; }
.acm-in-mark { font-style: normal; font-weight: 800; }
.acm-vp-leadership { color: var(--p2); border-bottom: 2px solid var(--p2); padding-bottom: 4px; text-transform: uppercase; letter-spacing: 0.12em; }
/* Card/Grid con icono (repeater vp_cards de la options page; sin filas no se imprime) */
.acm-vp-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; margin-top: 64px; }
.acm-vp-card { background: #fff; border: 1px solid var(--rule); padding: 28px 24px; display: flex; flex-direction: column; align-items: flex-start; }
.acm-vp-card-icon { display: inline-flex; width: 48px; height: 48px; margin-bottom: 18px; }
.acm-vp-card-icon img { width: 100%; height: 100%; object-fit: contain; display: block; }
.acm-vp-card-title { font-family: var(--f-display); font-weight: 800; font-size: 18px; letter-spacing: -0.01em; margin: 0; color: var(--p3); }
.acm-vp-card-text { font-family: var(--f-body); font-size: 14px; line-height: 1.6; color: var(--ink-soft); margin: 10px 0 0; }
.acm-vp-card-text p { margin: 0 0 8px; }
.acm-vp-card-text p:last-child { margin-bottom: 0; }
.acm-vp-card-link { display: inline-flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 18px; text-decoration: none; font-family: var(--f-display); font-weight: 700; font-size: 13px; letter-spacing: 0.08em; color: var(--p2); }
@media (max-width: 768px) { .acm-vp-grid { grid-template-columns: 1fr; gap: 28px; } .acm-vp-headshot { max-width: 280px; } .acm-vp-y { padding: 64px 0; } .acm-vp-cards { grid-template-columns: 1fr; gap: 16px; margin-top: 40px; } .acm-vp-card-icon { width: 40px; height: 40px; margin-bottom: 14px; } }
