.kepala-navigasi-about {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 24px 48px;
    background-color: var(--warna-terang);
    z-index: 1000;
    border-bottom: 1px solid var(--warna-gelap);
}

.kepala-navigasi-about .item-menu {
    color: var(--warna-gelap);
}

.kepala-navigasi-about .tombol-dropdown {
    color: var(--warna-gelap);
}

.item-menu.aktif {
    color: var(--warna-accent);
}

.bagian-bio {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding-top: 80px;
}

.wadah-kiri-bio {
    padding: 120px 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 64px;
}

.fragmen-teks {
    font-family: var(--font-judul);
    font-weight: 900;
    font-size: clamp(24px, 3vw, 40px);
    line-height: 1.1;
    text-transform: uppercase;
}

.js-siap .fragmen-teks {
    opacity: 0;
    transform: translateY(30px);
}

.js-siap .fragmen-teks.nongol {
    opacity: 1;
    transform: translateY(0);
    transition: transform 0.8s cubic-bezier(0.2, 0.8, 0.25, 1), opacity 0.6s ease;
}

.wadah-kanan-bio {
    position: relative;
    overflow: hidden;
    border-left: 3px solid var(--warna-gelap);
}

.gambar-bio {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bagian-bode-group {
    padding: 120px 48px;
    background-color: var(--warna-gelap);
}

.wadah-border-tebal {
    border: 3px solid var(--warna-terang);
    padding: 64px;
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
}

.watermark-g {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-judul);
    font-weight: 900;
    font-size: 400px;
    color: rgba(245, 242, 233, 0.05);
    pointer-events: none;
}

.judul-group {
    font-size: clamp(32px, 4vw, 56px);
    color: var(--warna-terang);
    margin-bottom: 32px;
}

.teks-group {
    font-family: var(--font-tubuh);
    font-size: 18px;
    line-height: 1.8;
    color: var(--warna-terang);
    max-width: 800px;
}

.bagian-tim {
    padding: 120px 48px;
    background-color: var(--warna-terang);
}

.wadah-daftar-peran {
    max-width: 800px;
    margin: 0 auto;
}

.item-peran {
    border-bottom: 1px solid var(--warna-gelap);
    transition: background-color 0.3s ease;
}

.item-peran:hover,
.item-peran.terbuka {
    background-color: rgba(171, 58, 32, 0.1);
}

.baris-peran {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 32px 0;
    border: none;
    background: transparent;
    cursor: pointer;
    font-family: inherit;
    color: inherit;
    text-align: left;
    transition: padding-left 0.3s ease, padding-right 0.3s ease;
}

.item-peran:hover .baris-peran,
.item-peran.terbuka .baris-peran {
    padding-left: 24px;
    padding-right: 24px;
}

.label-peran {
    font-family: var(--font-tubuh);
    font-size: 18px;
    font-weight: 600;
    flex: 1 1 auto;
    min-width: 0;
    padding-right: 16px;
}

.wadah-foto {
    width: 120px;
    height: 120px;
    flex-shrink: 0;
    margin-left: auto;
}

.wadah-foto img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--pos);
    display: block;
}

.bentuk-kotak {
    clip-path: none;
}

.bentuk-lingkaran {
    clip-path: circle(50% at 50% 50%);
}

.bentuk-heksagon {
    clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.bentuk-pentagon {
    clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
}

/* Custom properties for manual tuning of team member face crops */
.foto-semmanta {
    --pos: center 20%;
}

.foto-mudrika {
    --pos: center 20%;
}

.foto-alvian {
    --pos: center 20%;
}

.foto-ayu {
    --pos: center 20%;
}

.panel-peran {
    display: grid;
    grid-template-rows: 1fr;
    opacity: 1;
}

.isi-panel {
    overflow: hidden;
    min-height: 0;
    padding: 0 0 32px 0;
    transition: padding-left 0.3s ease, padding-right 0.3s ease;
}

.item-peran:hover .isi-panel,
.item-peran.terbuka .isi-panel {
    padding-left: 24px;
    padding-right: 24px;
}

.teks-peran {
    font-family: var(--font-tubuh);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6;
    color: var(--warna-gelap);
    max-width: 60ch;
}

/* Collapsible state when JS is active */
.bagian-tim.js-tim .panel-peran {
    grid-template-rows: 0fr;
    opacity: 0;
    transition: grid-template-rows 250ms ease, opacity 250ms ease;
}

.bagian-tim.js-tim .item-peran.terbuka .panel-peran {
    grid-template-rows: 1fr;
    opacity: 1;
}

@media (max-width: 639px) {
    .bagian-tim {
        padding: 64px 24px;
    }

    .wadah-foto {
        width: 88px;
        height: 88px;
    }
}

.bagian-nilai {
    padding: 120px 48px;
    background-color: var(--warna-gelap);
}

.grid-nilai {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2px;
    max-width: 1000px;
    margin: 0 auto;
}

.kotak-nilai {
    width: 100%;
    height: 300px;
    position: relative;
    transform-style: preserve-3d;
    transition: transform 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    cursor: pointer;
    border: 1px solid var(--warna-terang);
}

.kotak-nilai.kebalik {
    transform: rotateY(180deg);
}

@media (hover: hover) and (pointer: fine) {
    .kotak-nilai:hover {
        transform: rotateY(180deg);
    }
}

.sisi-depan, .sisi-belakang {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    backface-visibility: hidden;
    padding: 32px;
}

.sisi-depan {
    background-color: var(--warna-gelap);
}

.sisi-belakang {
    background-color: var(--warna-accent);
    transform: rotateY(180deg);
}

.teks-nilai, .teks-definisi {
    font-family: var(--font-judul);
    font-weight: 900;
    font-size: clamp(24px, 3vw, 36px);
    color: var(--warna-terang);
    text-transform: uppercase;
    text-align: center;
}

.teks-definisi {
    font-family: var(--font-tubuh);
    font-weight: 600;
    font-size: 16px;
    text-transform: none;
    line-height: 1.6;
}

.bagian-cta-about {
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: var(--warna-terang);
    border-top: 3px solid var(--warna-gelap);
    cursor: pointer;
}

.teks-cta-about {
    font-size: clamp(48px, 8vw, 96px);
    color: var(--warna-gelap);
}

.panah-animasi {
    font-family: var(--font-judul);
    font-weight: 900;
    font-size: 64px;
    color: var(--warna-accent);
    margin-top: 24px;
}

.kaki-about {
    background-color: var(--warna-gelap);
    padding: 48px;
    border-top: 1px solid var(--warna-terang);
}

.kaki-about .logowadah {
    mix-blend-mode: normal;
}

.kaki-about .logogambar {
    filter: brightness(0) invert(1);
}

.kaki-about .logopemisah,
.kaki-about .logoteks {
    color: var(--warna-terang);
}

.kaki-about .link-kaki,
.kaki-about .link-sosial {
    color: var(--warna-terang);
}

.kaki-about .link-kaki:hover,
.kaki-about .link-sosial:hover {
    color: #d65434;
}

@media (max-width: 1024px) {
    .bagian-bio {
        grid-template-columns: 1fr;
    }
    
    .wadah-kanan-bio {
        border-left: none;
        border-top: 3px solid var(--warna-gelap);
        height: 400px;
    }
    
    .grid-nilai {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .kepala-navigasi-about {
        padding: 16px 24px;
    }
    
    .wadah-menu {
        gap: 24px;
    }
    
    .wadah-kiri-bio {
        padding: 64px 24px;
        gap: 32px;
    }
    
    .wadah-border-tebal {
        padding: 32px;
    }
    
    .watermark-g {
        font-size: 200px;
    }
}

.panah-animasi {
    transition: transform 0.3s ease;
}

.panah-animasi.melesat {
    transform: translateX(24px);
}

.baris-peran:focus-visible,
.kotak-nilai:focus-visible,
.bagian-cta-about:focus-visible {
    outline: 1px solid var(--warna-accent);
    outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    .js-siap .fragmen-teks {
        opacity: 1;
        transform: none;
    }

    .bagian-tim.js-tim .panel-peran {
        transition: none;
    }

    .kotak-nilai,
    .panah-animasi {
        transition: none;
    }
}
