/* ================================================================
   WHO IS TEH CAHYA? (ch-who)
================================================================ */
.ch-who {
    --ch-gold: #e9b78d;
    --ch-ink: #fbf7f1;
    --ch-bg: #0b1e38;
    position: relative;
    background: var(--ch-bg);
    color: var(--ch-ink);
    overflow: hidden;
}

.ch-who-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left center;
}

.ch-who-inner {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: flex-end;
    box-sizing: border-box;
    min-height: clamp(720px, 56vw, 940px);
    padding: clamp(56px, 7vw, 100px) clamp(20px, 6.2vw, 118px);
}

.ch-who-content {
    align-self: center;
    width: min(41vw, 680px);
}

.ch-who-eyebrow {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0 0 20px;
    color: var(--ch-gold);
    font-size: clamp(11px, .85vw, 14px);
    line-height: 1;
    letter-spacing: .26em;
}

.ch-who-eyebrow-line {
    flex: 0 0 clamp(32px, 3vw, 56px);
    height: 1px;
    background: rgba(233, 183, 141, .85);
}

.ch-who-title {
    margin: 0 0 clamp(18px, 2.6vh, 26px);
    font-size: clamp(28px, min(2.8vw, 5.4vh), 50px);
    line-height: 1.1;
    letter-spacing: -.02em;
    color: var(--ch-ink);
    text-wrap: balance;
}

.ch-accent { color: var(--ch-gold); }

.ch-who-body p {
    margin: 0 0 1em;
    max-width: 600px;
    color: rgba(251, 247, 241, .9);
    font-size: clamp(13px, min(.98vw, 2vh), 16px);
    line-height: 1.6;
}

.ch-who-body strong,
.ch-who-quote strong {
    color: var(--ch-gold);
    font-weight: inherit;
}

/* Quote */
.ch-who-quote {
    margin: clamp(18px, 3vh, 30px) 0;
    padding: 4px 0 4px 22px;
    border-left: 2px solid rgba(233, 183, 141, .7);
}

.ch-who-quote blockquote {
    margin: 0;
    max-width: 560px;
    font-size: clamp(15px, min(1.2vw, 2.4vh), 20px);
    line-height: 1.45;
    color: var(--ch-ink);
}

.ch-who-quote figcaption {
    margin-top: 12px;
    color: rgba(251, 247, 241, .8);
    font-size: clamp(12px, .86vw, 14px);
}

/* Highlights */
.ch-who-stats {
    display: grid;
    grid-template-columns: repeat(3, auto);
    justify-content: start;
    margin: 0 0 clamp(20px, 3.4vh, 32px);
}

.ch-who-stats > div {
    padding: 0 clamp(16px, 2vw, 32px);
    border-left: 1px solid rgba(255, 255, 255, .25);
}

.ch-who-stats > div:first-child { padding-left: 0; border-left: 0; }

.ch-who-stats dt { margin: 0 0 8px; color: var(--ch-gold); }
.ch-who-stat-num { font-size: clamp(30px, min(2.7vw, 5vh), 46px); line-height: 1; }
.ch-who-stat-label { font-size: clamp(12px, .95vw, 15px); line-height: 1.2; letter-spacing: .14em; padding-top: clamp(4px, .7vw, 12px); }
.ch-who-stats dd { margin: 0; max-width: 170px; color: rgba(251, 247, 241, .88); font-size: clamp(12px, .85vw, 14px); line-height: 1.4; }

/* CTA */
.ch-who-cta {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 28px;
    border: 1.5px solid rgba(233, 183, 141, .85);
    border-radius: 999px;
    background: rgba(255, 255, 255, .04);
    box-shadow: 0 0 24px rgba(233, 167, 138, .18), inset 0 1px 0 rgba(255, 255, 255, .12);
    color: var(--ch-ink);
    font-size: clamp(14px, 1.02vw, 17px);
    line-height: 1;
    text-decoration: none;
    transition: background .25s ease, transform .25s ease, box-shadow .25s ease;
}

.ch-who-cta:hover,
.ch-who-cta:focus-visible {
    background: rgba(233, 183, 141, .16);
    transform: translateY(-2px);
    box-shadow: 0 0 32px rgba(233, 167, 138, .3), inset 0 1px 0 rgba(255, 255, 255, .18);
}

.ch-who-cta svg { transition: transform .25s ease; }
.ch-who-cta:hover svg { transform: translateX(3px); }

/* Tablet */
@media (max-width: 1024px) {
    .ch-who-content { width: min(52vw, 560px); }
    .ch-who-inner { padding-inline: clamp(20px, 4vw, 48px); }
}

/* Mobile: foto di atas, teks di bawah di atas warna dasar navy */
@media (max-width: 767px) {
    .ch-who-img {
        position: relative;
        display: block;
        height: 62vw;
        min-height: 240px;
        object-position: 22% 30%;
    }

    .ch-who-fade {
        position: absolute;
        left: 0;
        right: 0;
        top: calc(62vw - 90px);
        height: 90px;
        background: linear-gradient(0deg, var(--ch-bg), transparent);
    }

    .ch-who-inner {
        min-height: 0;
        padding: 8px 20px 56px;
    }

    .ch-who-content { width: 100%; }

    .ch-who-stats { grid-template-columns: 1fr 1fr 1fr; gap: 0; }
    .ch-who-stats > div { padding: 0 12px; }
    .ch-who-stats dd { font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
    .ch-who-cta, .ch-who-cta svg { transition: none; }
}
