.xvht{padding:125px 5.5vw;background:#FBF8F3;color:#15202F;overflow:hidden}
.xvht-wrap{max-width:1380px;margin:0 auto}
.xvht-head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:8vw;align-items:end;margin-bottom:58px}
.xvht-overline{display:inline-flex;align-items:center;gap:9px;margin:0;color:#3C7ABC;font-size:11px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase}
.xvht-overline:before{content:"";width:28px;height:1px;background:#D4A24C}
.xvht-head h2{max-width:760px;margin:16px 0 0;color:#15202F;font-family:"DM Serif Display",Georgia,serif;font-size:clamp(44px,5.1vw,76px);font-weight:400;line-height:1.02;letter-spacing:-.045em}
.xvht-intro{max-width:560px;margin:0 0 3px;color:#5C636D;font-size:17px;line-height:1.75}
.xvht-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.xvht-card{position:relative;min-width:0;padding:24px;border:1px solid #DBDFE7;border-radius:24px;background:#fff;box-shadow:0 12px 35px rgba(21,32,47,.045);overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}
.xvht-card:before{content:"";position:absolute;left:24px;right:24px;top:0;height:3px;background:#D4A24C;transform:scaleX(.2);transform-origin:left center;transition:transform .35s ease}
.xvht-card:hover{transform:translateY(-8px);border-color:#8FBEEE;box-shadow:0 28px 60px rgba(21,32,47,.11)}
.xvht-card:hover:before{transform:scaleX(1)}
.xvht-avatar-wrap{padding:4px;border-radius:21px;background:#FBF8F3}
.xvht-avatar{position:relative;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border-radius:17px;background:linear-gradient(145deg,#fff 5%,#8FBEEE 100%);overflow:hidden}
.xvht-card:nth-child(2) .xvht-avatar{background:linear-gradient(145deg,#FBF8F3 5%,#8FBEEE 100%)}
.xvht-card:nth-child(3) .xvht-avatar{background:linear-gradient(145deg,#fff 5%,#3C7ABC 100%)}
.xvht-card:nth-child(4) .xvht-avatar{background:linear-gradient(145deg,#FBF8F3 5%,#3C7ABC 100%)}
.xvht-avatar:after{content:"";position:absolute;width:76%;height:76%;border:1px solid rgba(255,255,255,.75);border-radius:50%}
.xvht-avatar span{position:relative;z-index:1;display:flex;width:94px;height:94px;align-items:center;justify-content:center;border:5px solid rgba(255,255,255,.9);border-radius:50%;background:#fff;color:#3C7ABC;font-size:25px;font-weight:800;letter-spacing:.02em;box-shadow:0 14px 30px rgba(21,32,47,.12)}
.xvht-focus{margin:22px 0 8px;color:#D4A24C;font-size:9px;font-weight:800;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}
.xvht-card h3{margin:0;color:#15202F;font-family:"DM Serif Display",Georgia,serif;font-size:26px;font-weight:400;line-height:1.08;letter-spacing:-.025em}
.xvht-role{margin:9px 0 0;color:#5C636D;font-size:12px;font-weight:700;line-height:1.5}
.xvht-footer{display:flex;justify-content:center;margin-top:42px}
.xvht-link{display:inline-flex;align-items:center;gap:10px;padding:14px 20px;border:1px solid #15202F;border-radius:999px;background:#15202F;color:#fff;font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 12px 25px rgba(21,32,47,.12);transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.xvht-link span{font-size:18px;line-height:1;color:#8FBEEE;transition:transform .25s ease}
.xvht-link:hover{background:#3C7ABC;transform:translateY(-2px);box-shadow:0 17px 32px rgba(21,32,47,.16);color:#fff}
.xvht-link:hover span{transform:translateX(3px)}
@media(max-width:1050px){
  .xvht-head{grid-template-columns:1fr;gap:24px}
  .xvht-intro{max-width:680px}
  .xvht-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
  .xvht{padding:82px 24px}
  .xvht-head{margin-bottom:44px}
  .xvht-head h2{font-size:clamp(40px,10vw,54px)}
}
@media(max-width:560px){
  .xvht-grid{grid-template-columns:1fr}
  .xvht-card{padding:22px}
  .xvht-avatar span{width:86px;height:86px;font-size:23px}
  .xvht-footer{margin-top:34px}
}
@media(prefers-reduced-motion:reduce){
  .xvht-card,.xvht-link,.xvht-card:before,.xvht-link span{transition:none!important}
}
/* Team photo (Theme Settings > Team Content). Falls back to initials when no photo is set. */
.xvht-avatar .xvht-photo{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;object-fit:cover}
.xvht-avatar.has-photo:after{display:none}
