/* ================================================================
   EXPERTISE / PETA KEAHLIAN (ch-exp)
   Desktop (>=1100px): teks di panel navy kiri gambar, ukuran mengikuti lebar (cqw).
   Di bawah itu: gambar penuh di atas, teks di bawahnya.
================================================================ */
.ch-exp {
    --ch-gold: #eeb592;
    --ch-ink: #fbf7f1;
    --ch-bg: #0e2240;
    position: relative;
    background: var(--ch-bg);
    color: var(--ch-ink);
    overflow: hidden;
}

.ch-exp-stage { position: relative; }
.ch-exp .ch-accent { color: var(--ch-gold); }

/* ---------- Mobile / tablet (default) ---------- */
.ch-exp-art { position: relative; }
.ch-exp-art img { display: block; width: 100%; height: auto; }

.ch-exp-art-fade {
    position: absolute;
    inset: auto 0 0 0;
    height: 35%;
    background: linear-gradient(0deg, var(--ch-bg) 4%, transparent);
}

.ch-exp-copy {
    position: relative;
    width: min(100% - 40px, 640px);
    margin: -8px auto 0;
    padding-bottom: 56px;
}

.ch-exp-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
    color: var(--ch-gold);
    font-size: 12px;
    line-height: 1;
    letter-spacing: .26em;
}

.ch-exp-eyebrow-line { flex: 0 0 30px; height: 1px; background: rgba(238, 181, 146, .85); }

.ch-exp-title {
    margin: 0 0 16px;
    font-size: clamp(26px, 7vw, 40px);
    line-height: 1.12;
    letter-spacing: -.02em;
    color: var(--ch-ink);
    text-wrap: balance;
}

.ch-exp-body p {
    margin: 0 0 .9em;
    color: rgba(251, 247, 241, .9);
    font-size: 14px;
    line-height: 1.65;
}

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

.ch-exp-closing {
    position: relative;
    margin: 22px 0 18px;
    padding-top: 18px;
    color: rgba(251, 247, 241, .9);
    font-size: 14px;
    line-height: 1.55;
}

.ch-exp-closing::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 48px;
    height: 1px;
    background: var(--ch-gold);
}

.ch-exp-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid var(--ch-gold);
    color: var(--ch-ink);
    font-size: 14px;
    line-height: 1.2;
    text-decoration: none;
    transition: gap .25s ease, color .25s ease;
}

.ch-exp-cta svg { color: var(--ch-gold); }
.ch-exp-cta:hover,
.ch-exp-cta:focus-visible { gap: 14px; color: var(--ch-gold); }

/* ---------- Desktop: teks di panel kiri gambar ---------- */
@media (min-width: 1100px) {
    .ch-exp-stage { container-type: inline-size; }
    .ch-exp-art-fade { display: none; }

    .ch-exp-copy {
        position: absolute;
        left: 4.3%;
        top: 0;
        bottom: 0;
        width: 27.5%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .ch-exp-eyebrow { gap: 1.5cqw; margin-bottom: 1.6cqw; font-size: max(11px, .9cqw); }
    .ch-exp-eyebrow-line { flex-basis: 3.2cqw; }
    .ch-exp-title { margin-bottom: 1.8cqw; font-size: 2.45cqw; }
    .ch-exp-body p { margin-bottom: .9cqw; font-size: max(12px, .92cqw); line-height: 1.6; }
    .ch-exp-closing { max-width: 21cqw; margin: 1.6cqw 0 1.5cqw; padding-top: 1.5cqw; font-size: max(12px, .92cqw); }
    .ch-exp-closing::before { width: 3.4cqw; }
    .ch-exp-cta { align-self: flex-start; font-size: max(12px, .95cqw); padding-bottom: .4cqw; }
}

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