/* Featured Profiles — public styles */
.profile-carousel { position: relative; overflow: hidden; }
.profile-carousel-track-wrap { overflow: hidden; }
.profile-carousel-track { display: flex; transition: transform 0.4s ease; will-change: transform; }
.profile-carousel-slide { flex: 0 0 33.333%; padding: 0 0.5rem; box-sizing: border-box; }
.profile-carousel-btn { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2; background: rgba(0,0,0,.5); color: #fff; border: none; width: 2.5rem; height: 2.5rem; border-radius: 50%; cursor: pointer; }
.profile-carousel-btn--prev { left: .25rem; }
.profile-carousel-btn--next { right: .25rem; }
.profile-carousel-dots { display: flex; justify-content: center; gap: .35rem; margin-top: 1rem; }
.profile-carousel-dot { width: .5rem; height: .5rem; border-radius: 50%; border: none; background: #ccc; cursor: pointer; }
.profile-carousel-dot.is-active { background: var(--primary, #2563eb); }
.profile-card-role, .profile-card-tagline { font-size: .9rem; opacity: .85; }
.profile-detail-hero img { width: 100%; max-height: 420px; object-fit: cover; border-radius: 8px; }
.profile-details-list { display: grid; grid-template-columns: auto 1fr; gap: .35rem 1rem; margin: 1rem 0; }
.profile-social-links { display: flex; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.profile-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: .5rem; margin-top: 1rem; }
.profile-gallery img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 6px; }
