.lp-root{ --navy:#0A1636; --sky:#38B6FF; --blue:#2AA5E9; --ink:#2B3A5C; --slate:#7286A6; --mist:#F4F8FF;
  font-family:"Poppins",-apple-system,Segoe UI,Roboto,sans-serif; max-width:1200px; margin:0 auto; }
.lp-root *{ box-sizing:border-box; }
.lp-root .lp-head{ text-align:center; margin-bottom:56px; max-width:820px; margin-left:auto; margin-right:auto; padding:0 20px; }
.lp-root .lp-eyebrow{ font-size:14px; letter-spacing:2.5px; text-transform:uppercase; color:var(--blue); font-weight:600; margin:0 0 12px; }
.lp-root .lp-title{ font-size:40px; line-height:1.12; font-weight:700; color:var(--navy); margin:0; letter-spacing:-0.5px; }
.lp-root .lp-sub{ font-size:17px; color:var(--slate); margin:14px 0 0; }

/* Premium grid card */
.lp-root .lp-card{ position:relative; display:flex; flex-direction:column; align-items:center; text-align:center;
  background:linear-gradient(180deg,#FBFDFF 0%, #FFFFFF 42%); border:1px solid #E7EEF9; border-radius:26px; padding:46px 32px 34px;
  box-shadow:0 18px 50px rgba(10,22,54,.08); overflow:hidden; transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.lp-root .lp-card::before{ content:""; position:absolute; top:-70px; left:50%; transform:translateX(-50%); width:280px; height:180px; background:radial-gradient(ellipse at center, rgba(56,182,255,.18), rgba(56,182,255,0) 70%); pointer-events:none; }
.lp-root .lp-card:hover{ transform:translateY(-8px); box-shadow:0 36px 74px rgba(56,182,255,.20); border-color:#CFE6FB; }
.lp-root .lp-photo{ position:relative; z-index:1; width:160px; height:160px; border-radius:50%; overflow:hidden; border:5px solid #fff; margin-bottom:22px; background:var(--mist); box-shadow:0 0 0 7px rgba(56,182,255,.16), 0 16px 34px rgba(10,22,54,.16); transition:box-shadow .3s ease, transform .3s ease; }
.lp-root .lp-card:hover .lp-photo{ box-shadow:0 0 0 8px rgba(56,182,255,.30), 0 20px 40px rgba(10,22,54,.20); transform:translateY(-2px); }
.lp-root .lp-photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.lp-root .lp-body{ display:flex; flex-direction:column; align-items:center; }
.lp-root .lp-name{ font-size:22px; font-weight:700; color:var(--navy); margin:0 0 6px; line-height:1.25; }
.lp-root .lp-role{ position:relative; font-size:13px; font-weight:600; letter-spacing:.4px; text-transform:uppercase; color:var(--blue); margin:0 0 16px; padding-bottom:14px; }
.lp-root .lp-role::after{ content:""; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:44px; height:3px; border-radius:3px; background:linear-gradient(90deg,var(--blue),var(--sky)); }
.lp-root .lp-bio{ font-size:15px; line-height:1.65; color:var(--slate); margin:0; }
.lp-root .lp-li{ display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:50%;
  background:var(--mist); color:var(--blue); margin-top:auto; transition:background .2s ease, color .2s ease, transform .2s ease; text-decoration:none; }
.lp-root .lp-li:hover{ background:#0A66C2; color:#fff; transform:translateY(-2px); }
.lp-root.lp-grid .lp-card > .lp-li{ margin-top:24px; }

.lp-root .lp-grid{ display:flex; flex-wrap:wrap; justify-content:center; align-items:stretch; gap:28px; padding:0 20px; }
.lp-root.lp-grid .lp-card{ flex:1 1 320px; max-width:380px; }
.lp-root.lp-grid .lp-body{ flex:1 1 auto; }

/* Marquee — TRUE full-bleed, tall colour portrait cards with a light caption bar */
.lp-root.lp-marquee{ max-width:none; }
.lp-root .lp-marquee{ width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent); }
.lp-root .lp-track{ display:flex; gap:26px; width:max-content; padding:10px 0; animation:lpScroll 60s linear infinite; }
.lp-root .lp-marquee:hover .lp-track{ animation-play-state:paused; }
.lp-root .lp-pcard{ width:300px; flex:0 0 auto; }
.lp-root .lp-pcard:first-child{ margin-left:26px; }
.lp-root .lp-pimg{ position:relative; width:100%; aspect-ratio:3/4; border-radius:22px; overflow:hidden; background:var(--mist); box-shadow:0 22px 50px rgba(10,22,54,.16); }
.lp-root .lp-pimg img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease; }
.lp-root .lp-pcard:hover .lp-pimg img{ transform:scale(1.05); }
.lp-root .lp-pcap{ position:absolute; left:12px; right:12px; bottom:12px; padding:13px 16px; border-radius:14px; background:rgba(255,255,255,.86); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); box-shadow:0 8px 24px rgba(10,22,54,.12); }
.lp-root .lp-pname{ color:var(--navy); font-size:19px; font-weight:700; margin:0 0 2px; line-height:1.2; }
.lp-root .lp-prole{ color:var(--blue); font-size:11.5px; font-weight:600; letter-spacing:.5px; text-transform:uppercase; margin:0; }
.lp-root .lp-pli{ position:absolute; top:16px; right:16px; width:42px; height:42px; border-radius:50%; background:rgba(255,255,255,.92); color:#0A66C2; display:flex; align-items:center; justify-content:center; box-shadow:0 8px 20px rgba(6,14,36,.28); transition:background .2s ease, color .2s ease, transform .2s ease; text-decoration:none; z-index:2; }
.lp-root .lp-pli:hover{ background:#0A66C2; color:#fff; transform:translateY(-2px); }
@keyframes lpScroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

@media(max-width:768px){
  .lp-root .lp-title{ font-size:29px; }
  .lp-root.lp-grid .lp-card{ flex-basis:100%; max-width:380px; }
  .lp-root .lp-pcard{ width:250px; }
}
@media(prefers-reduced-motion:reduce){ .lp-root .lp-track{ animation:none; } }
