/* Vela Our Agents — shared front-end and editor presentation. */
.vela-agents { --agent-text:#0b2233; --agent-muted:#50616d; --agent-line:rgba(11,34,51,.2); box-sizing:border-box; padding-block:clamp(64px,8vw,124px); background:#f7f3eb; color:var(--agent-text); }
.vela-agents--white { background:#fff; }
.vela-agents--navy { --agent-text:#f7f3eb; --agent-muted:#d3dbe0; --agent-line:rgba(247,243,235,.25); background:#0b2233; }
.vela-agents .vela-shell { width:min(calc(100% - 2 * var(--vela-gutter,32px)),var(--vela-max,1440px)); margin-inline:auto; }
.vela-agents__heading { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr); align-items:end; gap:32px 80px; padding-bottom:38px; margin-bottom:clamp(36px,5vw,70px); border-bottom:1px solid var(--agent-line); }
.vela-agents .vela-kicker { color:#826a36; font-size:.7rem; letter-spacing:.17em; }
.vela-agents--navy .vela-kicker { color:#d5bd87; }
.vela-agents .vela-heading { margin:0; max-width:760px; color:var(--agent-text); font-family:var(--vela-serif,Georgia,serif); font-weight:400; font-size:clamp(2.3rem,4vw,4.2rem); line-height:1.08; }
.vela-agents .vela-agents__intro { max-width:480px; margin:0; color:var(--agent-muted); font-size:.96rem; line-height:1.8; }
.vela-agents__list { display:grid; gap:clamp(48px,7vw,100px); }
.vela-agent { min-width:0; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1fr); gap:clamp(30px,6vw,96px); align-items:center; }
.vela-agent__portrait { min-width:0; width:100%; max-width:var(--agent-width,640px); position:relative; }
.vela-agent__image { overflow:hidden; aspect-ratio:var(--agent-ratio,4/5); border-radius:var(--agent-radius,0); background:#e6dfd2; }
.vela-agent__image .vela-agent__photo { display:block; width:100%; height:100%; max-width:none; object-fit:var(--agent-fit,cover); object-position:var(--agent-x,50%) var(--agent-y,35%); transform-origin:var(--agent-x,50%) var(--agent-y,35%); }
.vela-agent__placeholder { display:grid; place-items:center; width:100%; height:100%; color:#a68d5b; font:400 clamp(7rem,16vw,15rem)/1 var(--vela-serif,Georgia,serif); background:linear-gradient(145deg,#e9e1d3,#f7f3eb); }
.vela-agent__copy { min-width:0; padding-block:10px; overflow-wrap:anywhere; }
.vela-agents .vela-agent__role { margin:0 0 18px; color:var(--agent-muted); font-size:.65rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.vela-agents .vela-agent__name { margin:0; color:var(--agent-text); font:400 clamp(2rem,4vw,4.4rem)/1.05 var(--vela-serif,Georgia,serif); letter-spacing:-.025em; }
.vela-agents .vela-agent__intro { margin:26px 0 0; color:var(--agent-text); font:400 clamp(1.2rem,2vw,1.7rem)/1.45 var(--vela-serif,Georgia,serif); }
.vela-agent__bio { margin-top:22px; color:var(--agent-muted); font-size:.94rem; line-height:1.85; }
.vela-agent__bio > :first-child { margin-top:0; }
.vela-agent__bio > :last-child { margin-bottom:0; }
.vela-agent__bio a { color:inherit; }
.vela-agent__details { display:grid; gap:14px; margin:28px 0 0; padding-top:22px; border-top:1px solid var(--agent-line); }
.vela-agent__details dt { margin-bottom:5px; font-size:.6rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.vela-agent__details dd { margin:0; color:var(--agent-muted); font-size:.83rem; }
.vela-agent__contact { display:flex; flex-wrap:wrap; gap:8px 24px; margin-top:26px; font-size:.83rem; }
.vela-agent__contact:empty { display:none; }
.vela-agents .vela-agent__contact a { color:var(--agent-text); text-decoration:underline; text-underline-offset:4px; }
.vela-agents a.vela-agent__cta { display:inline-flex; gap:24px; align-items:center; margin-top:24px; padding:14px 0; border-bottom:1px solid #b39a62; color:var(--agent-text); font-size:.66rem; font-weight:600; line-height:1.5; letter-spacing:.1em; text-transform:uppercase; text-decoration:none; }
.vela-agents a:hover { text-decoration:underline; }
.vela-agents :is(a,button):focus-visible { outline:2px solid currentColor; outline-offset:5px; }
.vela-agent__pause { position:absolute; right:12px; bottom:12px; max-width:calc(100% - 24px); padding:10px 13px; border:1px solid #f7f3eb; border-radius:3px; background:#0b2233; color:#fff; font-size:.7rem; cursor:pointer; }
.vela-agent__pause[hidden] { display:none; }
.vela-agent--motion-ready .vela-agent__photo { animation:vela-agent-ken-burns var(--agent-duration,20s) ease-in-out infinite alternate; }
.vela-agent--paused .vela-agent__photo { animation-play-state:paused; }
@keyframes vela-agent-ken-burns { from { transform:scale(1); } to { transform:scale(var(--agent-scale,1.08)); } }
.vela-agents--grid .vela-agents__list { grid-template-columns:repeat(var(--vela-agent-columns,2),minmax(0,1fr)); gap:44px 32px; }
.vela-agents--grid .vela-agent { display:flex; flex-direction:column; align-items:stretch; gap:28px; }
.vela-agents--grid .vela-agent__name { font-size:clamp(2rem,2.5vw,3rem); }
.vela-agents--grid .vela-agent__copy { flex:1; }
.vela-agents--center .vela-agent__copy { text-align:center; }
.vela-agents--center .vela-agent__contact { justify-content:center; }
.vela-agents--center .vela-agent__portrait { margin-inline:auto; }
.vela-agents--center .vela-agents__heading { display:block; text-align:center; }
.vela-agents--center .vela-agents__heading :is(.vela-heading,.vela-agents__intro) { margin-inline:auto; }
.vela-agents--center .vela-agents__intro { margin-top:24px; }
.front-page-content > .wp-block-vela-our-agents,.generic-page__content > .wp-block-vela-our-agents { width:100%; max-width:none; margin-inline:0; }
.editor-styles-wrapper .wp-block-vela-our-agents { max-width:none; }
.editor-styles-wrapper .vela-agent__photo { animation:none; }
@media(min-width:901px) { .vela-agents--editorial .vela-agent:nth-child(even) .vela-agent__portrait { order:2; justify-self:end; } }
@media(max-width:1000px) { .vela-agents--grid .vela-agents__list { grid-template-columns:repeat(min(var(--vela-agent-columns,2),2),minmax(0,1fr)); } }
@media(max-width:900px) { .vela-agent,.vela-agents__heading { grid-template-columns:1fr; gap:30px; } .vela-agent__portrait { margin-inline:auto; } .vela-agents__heading { margin-bottom:36px; } }
@media(max-width:600px) { .vela-agents--grid .vela-agents__list { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .vela-agent--motion-ready .vela-agent__photo { animation:none; transform:none; } .vela-agent__pause { display:none; } }
