/* -------------------------------------------------------------
   Faculty / Case Study relationship modules
   Compact three-card fading rotation for large category datasets.
------------------------------------------------------------- */
.bams-ppg-relationship-modules{margin:0 0 24px;display:grid;gap:16px}
.bams-ppg-rel-module{border:1px solid #deddd8;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(35,35,35,.035)}
.bams-ppg-rel-heading{display:flex;gap:11px;align-items:center;padding:13px 14px 12px;background:#f7f6f2;border-bottom:1px solid #deddd8;border-top:2px solid #c19a4b}
.bams-ppg-rel-heading>div{min-width:0;flex:1}
.bams-ppg-rel-kicker{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:25px;background:#303236;color:#fff;font-size:9px;letter-spacing:.08em}
.bams-ppg-rel-eyebrow{display:block;margin:0 0 3px;color:#987126;font-size:8px;line-height:1.2;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.bams-ppg-rel-heading h3{margin:0;color:#242424;font-size:14px;line-height:1.25;font-weight:650;letter-spacing:-.01em}
.bams-ppg-rel-count{display:inline-flex;align-items:center;justify-content:center;min-width:27px;height:21px;padding:0 6px;border:1px solid #d9c8a5;background:#fff;color:#987126;font-size:8px;font-weight:750;letter-spacing:.06em}

.bams-ppg-rel-scroll{position:relative;height:var(--bams-ppg-rel-height,300px);overflow:hidden;background:#fbfaf7}
.bams-ppg-rel-slide{position:absolute;inset:0;padding:9px;opacity:0;visibility:hidden;transform:translateY(7px);transition:opacity .58s ease,transform .58s ease,visibility 0s linear .58s}
.bams-ppg-rel-slide.is-active{opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s}
.bams-ppg-rel-list{height:100%;margin:0;padding:0;list-style:none;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:8px}
.bams-ppg-rel-item{min-height:0;margin:0}
.bams-ppg-rel-item-link{height:100%;box-sizing:border-box;display:grid;grid-template-columns:26px minmax(0,1fr) 16px;gap:9px;align-items:start;padding:11px 11px;color:#303236;text-decoration:none;background:#fff;border:1px solid #e5e2db;border-left:2px solid #d0b16c;box-shadow:0 2px 8px rgba(35,35,35,.025);transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.bams-ppg-rel-item-link:hover{background:#fffdf8;color:#171717;border-color:#d8c49a;transform:translateX(2px);box-shadow:0 5px 12px rgba(35,35,35,.06)}
.bams-ppg-rel-number{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border:1px solid #d9c8a5;border-radius:50%;color:#987126;background:#faf7ef;font-size:8px;line-height:1;font-weight:750;letter-spacing:.04em}
.bams-ppg-rel-copy{min-width:0;display:block;overflow:hidden}
.bams-ppg-rel-copy strong{display:block;margin:0 0 3px;color:#303236;font-size:12px;line-height:1.28;font-weight:650;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bams-ppg-rel-role{display:block;margin-bottom:3px;color:#666b6f;font-size:10px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bams-ppg-rel-expertise{display:-webkit-box;color:#777b7e;font-size:9.5px;line-height:1.4;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bams-ppg-rel-meta{display:block;margin-top:3px;color:#987126;font-size:8.5px;line-height:1.25;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bams-ppg-rel-arrow{align-self:center;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:#b18a3c;font-size:12px;line-height:1;transition:transform .18s ease}
.bams-ppg-rel-item-link:hover .bams-ppg-rel-arrow{transform:translate(2px,-2px)}

.bams-ppg-rel-progress{display:flex;align-items:center;gap:9px;padding:7px 12px;border-top:1px solid #ece9e2;background:#faf9f6}
.bams-ppg-rel-progress-label{flex:0 0 auto;color:#8a7a5d;font-size:8px;line-height:1;font-weight:700;letter-spacing:.04em;white-space:nowrap}
.bams-ppg-rel-progress-track{position:relative;display:block;flex:1;height:2px;background:#e5e0d6;overflow:hidden}
.bams-ppg-rel-progress-bar{display:block;width:0;height:100%;background:#c19a4b;transition:width .58s ease}

.bams-ppg-rel-viewall{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-top:1px solid #deddd8;background:#fff;color:#987126;font-size:9px;line-height:1.2;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.bams-ppg-rel-viewall:hover{background:#faf8f2;color:#242424}
.bams-ppg-rel-viewall span{font-size:13px;font-weight:400;letter-spacing:0}

@media(max-width:1000px){
    .bams-ppg-relationship-modules{gap:14px}
    .bams-ppg-rel-scroll{height:min(var(--bams-ppg-rel-height,300px),300px)}
}

@media(max-width:520px){
    .bams-ppg-rel-scroll{height:285px}
    .bams-ppg-rel-slide{padding:8px}
    .bams-ppg-rel-list{gap:7px}
    .bams-ppg-rel-item-link{padding:10px;grid-template-columns:24px minmax(0,1fr) 14px;gap:8px}
    .bams-ppg-rel-number{width:23px;height:23px}
    .bams-ppg-rel-copy strong{font-size:11.5px}
}

@media(prefers-reduced-motion:reduce){
    .bams-ppg-rel-slide,.bams-ppg-rel-progress-bar,.bams-ppg-rel-item-link,.bams-ppg-rel-arrow{transition:none!important}
}
