/* =========================================================
   PENGURUS BANK COMPACT - V34
   Memperbaiki foto yang terlalu besar dan crop posisi atas
   ========================================================= */

.pengurus-list-section{
    padding-top:48px;
}

.pengurus-list-head{
    max-width:720px;
    margin-bottom:24px;
}

.pengurus-people-grid{
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr)) !important;
    gap:18px !important;
}

.pengurus-person-card{
    min-width:0;
    border-radius:16px;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.pengurus-person-card:hover{
    transform:translateY(-3px);
    border-color:#C5D3E9;
    box-shadow:0 18px 34px -28px rgba(11,30,61,.35);
}

.pengurus-person-photo{
    height:auto !important;
    aspect-ratio:4 / 4.6;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:#E9EEF3;
}

.pengurus-person-photo img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover !important;
    object-position:center top !important;
    background:#E9EEF3;
}

.pengurus-person-photo img[src*="user-default.svg"]{
    object-fit:contain !important;
    object-position:center !important;
    padding:48px;
    background:#EAF4FB;
}

.pengurus-person-body{
    padding:16px 15px 17px !important;
}

.pengurus-person-body h3{
    margin:0 0 5px !important;
    font-size:.9rem !important;
    line-height:1.4;
}

.pengurus-person-body p{
    margin:0 !important;
    font-size:.76rem !important;
    line-height:1.45;
}

/* Detail profile */
.pengurus-detail-section{
    padding-top:48px;
}

.pengurus-detail-grid{
    display:grid;
    grid-template-columns:minmax(250px,340px) minmax(0,1fr);
    gap:28px;
    align-items:start;
}

.pengurus-detail-photo-card{
    margin:0;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 18px 36px -30px rgba(11,30,61,.32);
}

.pengurus-detail-photo{
    width:100%;
    aspect-ratio:4 / 5;
    overflow:hidden;
    background:#E9EEF3;
}

.pengurus-detail-photo img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 42%;
}

.pengurus-detail-photo img[src*="user-default.svg"]{
    object-fit:contain;
    object-position:center;
    padding:70px;
    background:#EAF4FB;
}

.pengurus-detail-photo-card figcaption{
    display:flex;
    flex-direction:column;
    gap:4px;
    padding:15px 17px 17px;
    border-top:1px solid var(--line);
}

.pengurus-detail-photo-card figcaption strong{
    color:var(--navy);
    font-size:.9rem;
    line-height:1.4;
}

.pengurus-detail-photo-card figcaption span{
    color:var(--royal);
    font-size:.76rem;
    font-weight:700;
}

.pengurus-profile-panel{
    padding:24px !important;
    border-radius:18px !important;
}

.pengurus-profile-panel h2{
    margin:14px 0 18px;
    font-size:1.35rem;
}

.pengurus-profile-list{
    border-top:1px solid var(--line);
}

.pengurus-profile-row{
    display:grid;
    grid-template-columns:minmax(150px,.9fr) minmax(0,1.25fr);
    gap:18px;
    align-items:start;
    padding:15px 4px;
    border-bottom:1px solid var(--line);
}

.pengurus-profile-row span{
    color:var(--navy);
    font-size:.78rem;
    font-weight:700;
}

.pengurus-profile-row strong{
    color:var(--navy);
    font-size:.84rem;
    font-weight:500;
    text-align:right;
    line-height:1.5;
}

.pengurus-career{
    margin-top:22px;
    padding-top:20px;
}

.pengurus-career h3{
    margin:5px 0 10px;
    font-size:1rem;
}

.pengurus-career-copy{
    color:var(--ink-soft);
    font-size:.84rem;
    line-height:1.7;
}

@media(min-width:1180px){
    .pengurus-people-grid{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    }
}

@media(max-width:900px){
    .pengurus-detail-grid{
        grid-template-columns:minmax(230px,300px) minmax(0,1fr);
        gap:20px;
    }
}

@media(max-width:720px){
    .pengurus-list-section,
    .pengurus-detail-section{
        padding-top:38px;
    }

    .pengurus-people-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .pengurus-detail-grid{
        grid-template-columns:1fr;
    }

    .pengurus-detail-photo-card{
        width:min(100%,340px);
        margin-inline:auto;
    }

    .pengurus-profile-row{
        grid-template-columns:1fr;
        gap:5px;
    }

    .pengurus-profile-row strong{
        text-align:left;
    }
}

@media(max-width:480px){
    .pengurus-people-grid{
        grid-template-columns:1fr !important;
    }

    .pengurus-person-card{
        width:min(100%,330px);
        margin-inline:auto;
    }
}


/* V36 - daftar pengurus: portrait compact, wajah tetap aman */
@media(min-width:1180px){
    .pengurus-person-card{
        max-width:none;
    }
}


/* V36 layout balance */
@media(min-width:901px) and (max-width:1179px){
    .pengurus-people-grid{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    }
}

@media(max-width:900px) and (min-width:721px){
    .pengurus-people-grid{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}


/* V37 - 4 card desktop */
@media(min-width:1180px){
    .pengurus-people-grid{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    }
}


/* =========================================================
   V44 - KOMISARIS & DIREKSI STABLE PORTRAIT FRAME
   Dibangun ulang dari V37 yang stabil.
   Tidak memakai auto-frame JS dan tidak memakai zoom agresif.
   ========================================================= */

.pengurus-board-grid .pengurus-person-photo{
    position:relative;
    display:block;
    width:100%;
    height:auto !important;
    aspect-ratio:4 / 4.6 !important;
    overflow:hidden;
    background:#CDD1D3;
}

.pengurus-board-grid .pengurus-person-photo img{
    display:block;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    object-fit:cover !important;
    object-position:center var(--portrait-y, 0%) !important;
    transform:scale(var(--portrait-scale, 1)) !important;
    transform-origin:center top !important;
    background:#CDD1D3;
}

/* Placeholder/default tidak dicrop atau di-zoom. */
.pengurus-board-grid .pengurus-person-photo img[src*="user-default.svg"]{
    object-fit:contain !important;
    object-position:center !important;
    transform:none !important;
    padding:48px;
    background:#EAF4FB;
}

/*
 * Koreksi ringan saja.
 * Angka dibuat dekat 1 supaya foto tidak membesar berlebihan seperti V43.
 */
.pengurus-board-grid [data-person*="irawan-jayasaputra"]{
    --portrait-scale:1.00;
    --portrait-y:0%;
}

.pengurus-board-grid [data-person*="dwi-aribowo"]{
    --portrait-scale:1.07;
    --portrait-y:0%;
}

.pengurus-board-grid [data-person*="bambang-triatmoko"]{
    --portrait-scale:1.01;
    --portrait-y:0%;
}

.pengurus-board-grid [data-person*="indi-pramono"]{
    --portrait-scale:1.04;
    --portrait-y:0%;
}

.pengurus-board-grid [data-person*="sentot-sujiono"]{
    --portrait-scale:1.00;
    --portrait-y:0%;
}

.pengurus-board-grid [data-person*="bambang-sigit-purnama"]{
    --portrait-scale:1.03;
    --portrait-y:0%;
}

.pengurus-board-grid [data-person*="bagas-waskito-kuncoro"]{
    --portrait-scale:1.02;
    --portrait-y:0%;
}

/* Ukuran card konsisten: 4 per baris pada desktop. */
@media(min-width:901px){
    .pengurus-board-grid{
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        gap:18px !important;
    }
}

@media(max-width:720px){
    .pengurus-board-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

@media(max-width:480px){
    .pengurus-board-grid{
        grid-template-columns:1fr !important;
    }
}
