:root{
  --ungu:#9168a2;        /* dari logo */
  --ungu-tua:#3b2449;
  --ungu-ink:#2a1a34;
  --ungu-muda:#efe7f3;
  --oranye:#ef9a49;      /* dari logo */
  --oranye-tua:#b8621a;
  --kertas:#fbf9fc;
  --putih:#ffffff;
  --teks:#2a1a34;
  --teks-2:#5d4b68;
  --garis:#e4dae9;
  --serif:"Newsreader", Georgia, serif;
  --sans:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --wrap:1160px;
  --r:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--kertas);color:var(--teks);font-family:var(--sans);font-size:17px;line-height:1.65}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0;color:var(--ungu-ink);letter-spacing:-.01em}
h2{font-size:clamp(30px,4vw,44px)}
h3{font-size:22px}
p{margin:0}
.skip{position:absolute;left:-999px}
.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px;border-radius:8px}
:focus-visible{outline:3px solid var(--oranye);outline-offset:3px;border-radius:6px}

/* ---------- Bar darurat + keluar cepat ---------- */
.darurat{background:var(--ungu-ink);color:#eadff0;font-size:14px}
.darurat .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.darurat b{color:#fff;font-weight:600}
.darurat a{color:#fff;white-space:nowrap}
.exit{appearance:none;border:0;background:var(--oranye);color:var(--ungu-ink);font:600 14px var(--sans);padding:8px 14px;border-radius:999px;cursor:pointer;white-space:nowrap}
.exit:hover{background:#f5ad66}
.exit small{font-weight:500;opacity:.8}

/* ---------- Header ---------- */
header.nav{position:sticky;top:0;z-index:20;background:rgba(251,249,252,.94);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--garis)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:58px;height:auto}
.brand span{display:flex;flex-direction:column;line-height:1.15}
.brand b{font-family:var(--serif);font-weight:600;font-size:19px;color:var(--ungu-ink);white-space:nowrap}
.brand small{font-size:12.5px;color:var(--teks-2)}
.menu{display:flex;gap:26px;align-items:center;font-size:15px;font-weight:500}
.menu a{text-decoration:none;color:var(--teks-2)}
.menu a:hover{color:var(--ungu-ink)}
.menu a.btn{color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font:600 16px var(--sans);border-radius:999px;padding:14px 24px;transition:background .15s,transform .15s}
.btn svg{width:20px;height:20px;flex:none}
.btn-utama{background:var(--ungu-tua);color:#fff}
.btn-utama:hover{background:var(--ungu-ink)}
.btn-garis{border:1.5px solid var(--ungu-tua);color:var(--ungu-tua);background:transparent}
.btn-garis:hover{background:var(--ungu-muda)}
.btn-kecil{padding:10px 18px;font-size:14.5px}
@media (max-width:900px){.menu a:not(.btn){display:none}.brand small{display:none}}
@media (max-width:560px){.menu{display:none}.hero .wrap .fakta{gap:14px;grid-template-columns:repeat(3,1fr)}.fakta b{font-size:28px}}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;padding:64px 0 72px}
.hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
.hero-arc{position:absolute;right:-180px;top:-120px;width:760px;height:760px;pointer-events:none;opacity:.55}
.hero h1{font-size:clamp(34px,4.6vw,56px);font-weight:500;line-height:1.1}
.hero h1 em{font-style:italic;color:var(--ungu)}
.hero .lead{margin-top:22px;font-size:19px;color:var(--teks-2);max-width:34em}
.hero .aksi{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.hero .fakta{display:grid;grid-template-columns:auto auto 1fr;gap:32px;margin-top:40px;padding-top:24px;border-top:1px solid var(--garis);flex-wrap:wrap}
.fakta div{display:flex;flex-direction:column}
.fakta b{font-family:var(--serif);font-size:34px;font-weight:500;color:var(--ungu-ink);line-height:1}
.fakta span{font-size:14px;color:var(--teks-2);margin-top:6px}
.foto-hero{position:relative;z-index:1;margin:0}
.foto-hero img{border-radius:22px 22px 22px 120px;aspect-ratio:4/3.4;object-fit:cover;object-position:62% 50%;width:100%;box-shadow:0 30px 60px -30px rgba(59,36,73,.45)}
.foto-hero figcaption{position:absolute;left:-18px;bottom:26px;background:#fff;border:1px solid var(--garis);padding:12px 16px;border-radius:12px;font-size:13.5px;color:var(--teks-2);max-width:260px;line-height:1.4}
.foto-hero figcaption b{display:block;color:var(--ungu-ink);font-size:14.5px}
@media (max-width:900px){
  .hero{padding:36px 0 56px}
  .hero .wrap{grid-template-columns:1fr;gap:36px}
  .foto-hero figcaption{left:12px;bottom:12px}
  .hero-arc{right:-320px;top:-200px}
}

/* ---------- Pita jaminan ---------- */
.pita{background:var(--ungu-tua);color:#efe6f4}
.pita .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.pita .wrap>div{padding:26px 24px 26px 0;display:flex;gap:14px;align-items:flex-start}
.pita .wrap>div + div{padding-left:24px;border-left:1px solid rgba(255,255,255,.14)}
.pita b{display:block;color:#fff;font-weight:600;font-size:16px}
.pita p{font-size:14.5px;line-height:1.5;opacity:.85}
.pita i{flex:none;width:34px;height:34px;border-radius:50%;background:var(--oranye);color:var(--ungu-ink);display:grid;place-items:center;font:600 15px var(--serif);font-style:normal}
@media (max-width:800px){.pita .wrap{grid-template-columns:1fr}.pita .wrap>div,.pita .wrap>div+div{padding:18px 0;border-left:0}.pita .wrap>div+div{border-top:1px solid rgba(255,255,255,.14)}}

/* ---------- Seksi umum ---------- */
section.blok{padding:96px 0}
.kepala{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:48px}
.kepala p{color:var(--teks-2);font-size:17.5px}
.kicker{font-size:14px;font-weight:600;color:var(--oranye-tua);margin-bottom:14px;display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:26px;height:2px;background:var(--oranye)}
@media (max-width:800px){section.blok{padding:68px 0}.kepala{grid-template-columns:1fr;gap:16px;margin-bottom:32px}}

/* ---------- Tentang ---------- */
.tentang{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px}
.visi{background:var(--putih);border:1px solid var(--garis);border-radius:var(--r);padding:36px;position:relative;overflow:hidden}
.visi .label{font-size:13px;font-weight:600;color:var(--teks-2)}
.visi blockquote{margin:10px 0 0;font-family:var(--serif);font-size:clamp(26px,3vw,34px);line-height:1.2;color:var(--ungu-ink)}
.visi blockquote span{color:var(--ungu)}
.visi svg{position:absolute;right:-60px;bottom:-70px;width:240px;opacity:.9}
.visi .since{margin-top:28px;display:flex;gap:12px;align-items:center;font-size:14.5px;color:var(--teks-2);position:relative}
.visi .since b{font-family:var(--serif);font-size:30px;color:var(--oranye-tua);font-weight:500}
.misi ol{list-style:none;margin:0;padding:0;counter-reset:m}
.misi li{counter-increment:m;display:grid;grid-template-columns:56px 1fr;gap:8px;padding:24px 0;border-top:1px solid var(--garis)}
.misi li:last-child{border-bottom:1px solid var(--garis)}
.misi li::before{content:"0" counter(m);font-family:var(--serif);font-size:28px;color:var(--ungu);line-height:1}
.misi h3{margin-bottom:6px}
.misi p{color:var(--teks-2)}
.pimpinan{margin-top:28px;font-size:15px;color:var(--teks-2)}
.pimpinan b{color:var(--ungu-ink)}
@media (max-width:900px){.tentang{grid-template-columns:1fr;gap:36px}}

/* ---------- Layanan ---------- */
.bg-ungu-muda{background:var(--ungu-muda)}
.layanan{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d9cbe1;border:1px solid #d9cbe1;border-radius:var(--r);overflow:hidden}
.layanan article{background:var(--kertas);padding:32px 28px 30px;display:flex;flex-direction:column;gap:10px}
.layanan article.utama{grid-column:span 2;background:var(--putih)}
.layanan .no{font-size:13px;font-weight:600;color:var(--oranye-tua)}
.layanan p{color:var(--teks-2);font-size:16px}
.aspek{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.aspek span{font-size:14px;font-weight:500;padding:6px 12px;border-radius:999px;background:var(--ungu-muda);color:var(--ungu-tua)}
@media (max-width:900px){.layanan{grid-template-columns:1fr}.layanan article.utama{grid-column:auto}}

/* ---------- Alur ---------- */
.alur{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative;list-style:none;margin:0;padding:0}
.alur::before{content:"";position:absolute;left:24px;right:24px;top:24px;height:2px;background:repeating-linear-gradient(90deg,var(--ungu) 0 8px,transparent 8px 14px);opacity:.5}
.alur li{position:relative}
.alur .titik{width:50px;height:50px;border-radius:50%;background:var(--kertas);border:2px solid var(--ungu);display:grid;place-items:center;font:500 20px var(--serif);color:var(--ungu-ink);position:relative;margin-bottom:20px}
.alur li:first-child .titik{background:var(--oranye);border-color:var(--oranye)}
.alur h3{font-size:20px;margin-bottom:8px}
.alur p{color:var(--teks-2);font-size:15.5px}
@media (max-width:900px){
  .alur{grid-template-columns:1fr;gap:0}
  .alur::before{left:24px;right:auto;top:24px;bottom:24px;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--ungu) 0 8px,transparent 8px 14px)}
  .alur li{display:grid;grid-template-columns:50px 1fr;gap:18px;padding-bottom:28px}
  .alur .titik{margin:0}
}

/* ---------- Jejaring & advokasi ---------- */
.dua{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.jejaring{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.sub{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--teks-2);margin:28px 0 0}
.jejaring span{border:1px solid var(--garis);background:#fff;border-radius:10px;padding:10px 14px;font-size:15px;font-weight:500}
.jejaring span small{display:block;font-weight:400;color:var(--teks-2);font-size:12.5px}
.perda{list-style:none;margin:24px 0 0;padding:0}
.perda li{display:grid;grid-template-columns:84px 1fr;gap:16px;padding:16px 0;border-top:1px solid var(--garis);align-items:baseline}
.perda li:last-child{border-bottom:1px solid var(--garis)}
.perda b{font-family:var(--serif);font-size:24px;font-weight:500;color:var(--ungu)}
.perda span{font-size:16px}
.perda.jaringan{margin-top:12px}
.perda.jaringan li{grid-template-columns:104px 1fr}
.perda.jaringan b{font-size:19px}
.perda small{display:block;color:var(--teks-2);font-size:14px}
@media (max-width:900px){.dua{grid-template-columns:1fr;gap:56px}}

/* ---------- Kegiatan ---------- */
.gelap{background:var(--ungu-ink);color:#e9deef}
.gelap h2,.gelap h3{color:#fff}
.gelap .kepala p{color:#cdbdd7}
.gelap .kicker{color:var(--oranye)}
.kegiatan{display:grid;grid-template-columns:1.1fr .9fr;gap:56px}
.linimasa{list-style:none;margin:0;padding:0;border-left:1px solid rgba(255,255,255,.18)}
.linimasa li{position:relative;padding:0 0 30px 28px}
.linimasa li::before{content:"";position:absolute;left:-6px;top:8px;width:11px;height:11px;border-radius:50%;background:var(--oranye)}
.linimasa time{font-size:13.5px;font-weight:600;color:var(--oranye)}
.linimasa h3{font-size:20px;margin:4px 0 6px}
.linimasa p{font-size:15.5px;color:#cdbdd7}
.linimasa .angka{display:inline-block;margin-top:8px;font-size:13.5px;border:1px solid rgba(255,255,255,.22);padding:3px 10px;border-radius:999px;color:#f3ecf7}
.gaspol{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:28px;margin-bottom:22px}
.gaspol b{font-family:var(--serif);font-size:44px;font-weight:500;color:#fff;line-height:1}
.gaspol p{color:#cdbdd7;font-size:15.5px;margin-top:8px}
.gaspol b.kecil{font-size:24px}
.mitra{list-style:none;margin:0;padding:0}
.mitra li{display:flex;flex-direction:column;gap:2px;padding:14px 0;border-top:1px solid rgba(255,255,255,.14)}
.mitra li:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.mitra b{color:#fff;font-weight:600;font-size:15.5px}
.mitra span{color:#b9a6c6;font-size:14.5px}
.media h3{font-size:14px;font-family:var(--sans);font-weight:600;color:#cdbdd7;margin:28px 0 10px}
.media a{display:block;text-decoration:none;padding:16px 0;border-top:1px solid rgba(255,255,255,.14)}
.media a:last-child{border-bottom:1px solid rgba(255,255,255,.14)}
.media a span{display:block;font-family:var(--serif);font-size:19px;color:#fff;line-height:1.3}
.media a small{font-size:13.5px;color:#b9a6c6}
.media a:hover span{text-decoration:underline;text-decoration-color:var(--oranye);text-underline-offset:4px}
@media (max-width:900px){.kegiatan{grid-template-columns:1fr;gap:40px}}

/* ---------- Tim ---------- */
.tim{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tim figure{margin:0}
.tim img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;border-radius:var(--r);background:var(--ungu-muda)}
.tim-grid{display:grid;grid-template-columns:.8fr 1.4fr;gap:48px;align-items:start}
.roster{list-style:none;margin:12px 0 0;padding:0}
.roster li{padding:16px 0;border-top:1px solid var(--garis);display:flex;flex-direction:column}
.roster b{font-family:var(--serif);font-size:20px;font-weight:500;color:var(--ungu-ink);line-height:1.25}
.roster span{font-size:14.5px;color:var(--teks-2)}
.roster li:last-child{border-bottom:1px solid var(--garis)}
@media (max-width:900px){.tim-grid{grid-template-columns:1fr;gap:28px}.tim-grid .tim{order:-1}}
.tim figcaption b{display:block;font-family:var(--serif);font-size:21px;font-weight:500;color:var(--ungu-ink)}
.tim figcaption span{font-size:14.5px;color:var(--teks-2)}
@media (max-width:800px){.tim{grid-template-columns:1fr 1fr;gap:18px}.tim figure:first-child{grid-column:span 2}.tim figure:first-child img{aspect-ratio:4/3.6}}

/* ---------- Kontak ---------- */
.kontak{display:grid;grid-template-columns:1.1fr .9fr;gap:0;background:#fff;border:1px solid var(--garis);border-radius:22px;overflow:hidden}
.kontak .kiri{padding:52px}
.kontak .kiri h2{font-size:clamp(30px,3.6vw,42px)}
.kontak .kiri > p{color:var(--teks-2);margin-top:14px;max-width:32em}
.kontak .aksi{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.kontak dl{margin:36px 0 0;display:grid;grid-template-columns:auto 1fr;gap:12px 22px;font-size:15.5px}
.kontak dt{color:var(--teks-2)}
.kontak dd{margin:0;font-weight:500}
.kontak dd a{text-decoration-color:var(--oranye);text-underline-offset:3px}
.kontak .kanan{background:var(--ungu-tua);color:#eadff0;padding:52px;display:flex;flex-direction:column;justify-content:space-between;gap:28px;position:relative;overflow:hidden}
.kontak .kanan h3{color:#fff;font-size:24px}
.kontak .kanan p{font-size:15.5px;color:#d8c9e0}
.nomor{display:grid;gap:10px;position:relative}
.nomor a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:14px 16px}
.nomor a:hover{background:rgba(255,255,255,.14)}
.nomor b{font-family:var(--serif);font-size:24px;font-weight:500;color:#fff}
.nomor span{font-size:13.5px;color:#d8c9e0;text-align:right}
@media (max-width:900px){.kontak{grid-template-columns:1fr}.kontak .kiri,.kontak .kanan{padding:32px 24px}}

footer{padding:40px 0 48px;font-size:14px;color:var(--teks-2)}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
footer .brand img{width:44px}


.layanan a{color:var(--ungu-tua)}
.terpadu{margin-top:40px;background:var(--putih);border:1px solid #d9cbe1;border-radius:var(--r);padding:36px}
.terpadu-kepala{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:24px}
.terpadu-kepala p{color:var(--teks-2);font-size:15.5px}
.tiga{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.tiga > div{border-top:3px solid var(--ungu);padding-top:18px}
.tiga > div:nth-child(2){border-top-color:var(--oranye)}
.tiga b{font-family:var(--serif);font-size:22px;font-weight:500;color:var(--ungu-ink)}
.tiga ul{margin:12px 0 0;padding-left:18px;color:var(--teks-2);font-size:15.5px}
.tiga li{margin-bottom:6px}
.tiga li::marker{color:var(--ungu)}
.tiga small{display:block;margin-top:10px;font-size:13.5px;color:var(--oranye-tua);line-height:1.5}
@media (max-width:900px){.tiga{grid-template-columns:1fr;gap:24px}.terpadu{padding:24px 20px}}
.alur{grid-template-columns:repeat(5,1fr)!important;gap:22px!important}
.catatan-prinsip{margin-top:36px;padding:18px 22px;border-left:3px solid var(--oranye);background:var(--ungu-muda);border-radius:0 10px 10px 0;color:var(--teks-2);font-size:15.5px;max-width:52em}
.catatan-prinsip b{color:var(--ungu-ink)}
@media (max-width:900px){.alur{grid-template-columns:1fr!important;gap:0!important}}
.prog{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start;margin-bottom:72px}
.prog.balik{grid-template-columns:1.2fr .8fr}
.prog.balik .prog-foto{order:2}
.prog-foto{margin:0}
.prog-foto img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r) var(--r) var(--r) 90px}
.prog.balik .prog-foto img{border-radius:var(--r) var(--r) 90px var(--r)}
.prog-foto figcaption{font-size:13.5px;color:var(--teks-2);margin-top:10px}
.prog-isi .no,.prog-dua .no{font-size:13px;font-weight:600;color:var(--oranye-tua)}
.prog-isi h3{font-size:clamp(26px,3vw,34px);margin:6px 0 14px}
.prog-isi > p{color:var(--teks-2)}
.prog-isi h4{font-size:14px;font-weight:600;color:var(--ungu-ink);margin:26px 0 10px}
.aspek span{background:#fff}
.bg-ungu-muda .layanan .aspek span{background:var(--ungu-muda)}
.materi{margin:0;padding:0;list-style:none;display:grid;gap:0 24px;font-size:15px}
.materi li{padding:9px 0;border-top:1px solid #d9cbe1}
.dua-kol{grid-template-columns:1fr 1fr}
.tiga-kol{grid-template-columns:repeat(3,1fr);counter-reset:t}
.tiga-kol li{counter-increment:t;display:flex;gap:8px}
.tiga-kol li::before{content:counter(t);font-family:var(--serif);color:var(--ungu);min-width:18px}
.prog-dua{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.prog-dua article{background:#fff;border:1px solid #d9cbe1;border-radius:var(--r);padding:32px}
.prog-dua h3{margin:6px 0 10px}
.prog-dua article > p{color:var(--teks-2);font-size:15.5px}
.modul{display:grid;grid-template-columns:auto 1fr;gap:0 18px;margin:20px 0 0;font-size:14.5px}
.modul dt,.modul dd{padding:9px 0;border-top:1px solid var(--garis);margin:0}
.modul dt{font-weight:600;color:var(--ungu-ink)}
.modul dd{color:var(--teks-2)}
.kanal{display:grid;gap:12px;margin-top:20px}
.kanal div{border:1px solid var(--garis);border-radius:12px;padding:16px 18px;background:var(--kertas)}
.kanal b{display:block;font-family:var(--serif);font-size:20px;font-weight:500;color:var(--ungu-ink)}
.kanal span{font-size:14.5px;color:var(--teks-2)}
@media (max-width:900px){.prog,.prog.balik{grid-template-columns:1fr;gap:24px;margin-bottom:52px}.prog.balik .prog-foto{order:0}.prog-foto img{aspect-ratio:4/3.4}.prog-dua{grid-template-columns:1fr}.prog-dua article{padding:24px 20px}.tiga-kol{grid-template-columns:1fr 1fr}.dua-kol{grid-template-columns:1fr}}
.mitra-list{list-style:none;margin:20px 0 0;padding:0}
.mitra-list li{display:grid;grid-template-columns:1fr 1.1fr;gap:16px;padding:12px 0;border-top:1px solid #d9cbe1;font-size:15px}
.mitra-list li:last-child{border-bottom:1px solid #d9cbe1}
.mitra-list b{font-weight:600;color:var(--ungu-ink)}
.mitra-list span{color:var(--teks-2);font-size:14.5px}
@media (max-width:560px){.mitra-list li{grid-template-columns:1fr;gap:2px}}
.uu{margin-top:18px;font-size:15.5px;color:var(--teks-2)}
.uu b{color:var(--ungu-ink)}
footer a{color:inherit}

.prog-foto img{aspect-ratio:auto!important}
.galeri{margin-top:56px}
.galeri-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:14px}
.galeri-grid figure{margin:0}
.galeri-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r)}
.galeri-grid figcaption{font-size:13.5px;color:var(--teks-2);margin-top:8px}
@media (max-width:700px){.galeri-grid{grid-template-columns:1fr 1fr}.galeri-grid figure:first-child{grid-column:span 2}.galeri-grid figure:first-child img{aspect-ratio:4/3.2}}
.struktur{margin-top:64px;background:var(--putih);border:1px solid var(--garis);border-radius:22px;padding:44px 24px 52px;position:relative;overflow:hidden}
.struktur h3{text-align:center;margin-bottom:36px;font-size:26px}
.bagan{display:grid;gap:40px;justify-items:center;position:relative}
.lv{position:relative;display:flex;gap:28px;justify-content:center}
.node{position:relative;background:var(--kertas);border:1px solid #d9cbe1;border-radius:14px;padding:16px 18px;width:260px;text-align:center;display:flex;flex-direction:column;gap:4px;z-index:1}
.node span{font-size:12.5px;font-weight:600;color:var(--oranye-tua)}
.node b{font-family:var(--serif);font-size:18.5px;font-weight:500;color:var(--ungu-ink);line-height:1.25}
.node.ketua{background:var(--ungu-tua);border-color:var(--ungu-tua);width:300px;padding:20px}
.node.ketua span{color:var(--oranye)}
.node.ketua b{color:#fff;font-size:21px}
.node.konselor{border-top:3px solid var(--ungu)}
.lv-ks{gap:16px}
.lv-ks .node{width:236px;padding:16px 12px}
.lv-ks .node b{font-size:17px}
.lv.lv-ks::after{left:118px;right:118px}
@media (max-width:760px){
  .lv-ks{flex-wrap:wrap;row-gap:22px;max-width:100%}
  .lv-ks .node{width:calc(50vw - 42px)}
  .lv-ks .node:nth-child(n+4)::before{display:none}
  .lv.lv-ks::after{left:25%;right:25%}
}
.node.konsultan{border-top:3px solid var(--oranye);background:#fff}
.kontak dt small{font-size:12.5px;color:var(--oranye-tua)}
.lv1{display:grid;grid-template-columns:1fr 300px 1fr;gap:36px;width:100%;max-width:940px;align-items:center}
.lv1 .penasihat{justify-self:start;border-style:dashed;background:#fff}
.lv1 .penasihat::before{content:"";position:absolute;right:100%;top:50%;width:36px;border-top:2px dashed #c4b0d0}
/* garis antar level */
.lv2::after,.lv3::after{content:"";position:absolute;top:-20px;left:130px;right:130px;border-top:2px solid #c4b0d0}
.lv2 .node::before,.lv3 .node::before{content:"";position:absolute;left:50%;top:-21px;height:20px;border-left:2px solid #c4b0d0}
.trunk{position:absolute;left:50%;top:-40px;bottom:-20px;border-left:2px solid #c4b0d0}
@media (max-width:760px){
  .struktur{padding:32px 16px 36px}
  .lv1{grid-template-columns:1fr;gap:22px;justify-items:center}
  .lv1 .spacer{display:none}
  .lv1 .penasihat{justify-self:center;order:-1}
  .lv1 .penasihat::before{right:auto;left:50%;top:100%;width:0;height:22px;border-top:0;border-left:2px dashed #c4b0d0}
  .node,.node.ketua{width:min(300px,100%)}
  .lv2,.lv3{gap:12px}
  .lv2 .node,.lv3 .node{width:calc(50vw - 42px);padding:12px 10px}
  .lv2 .node b,.lv3 .node b{font-size:15.5px}
  .lv2::after,.lv3::after{left:25%;right:25%}
}
.wa-mengambang{position:fixed;right:18px;bottom:18px;z-index:30;display:none}
@media (max-width:700px){.wa-mengambang{display:inline-flex;box-shadow:0 10px 30px -8px rgba(42,26,52,.55)}}

/* ===== menu HP ===== */
.menu-toggle{display:none;appearance:none;border:1.5px solid var(--ungu-tua);background:transparent;color:var(--ungu-tua);font:600 15px var(--sans);padding:9px 16px;border-radius:999px;cursor:pointer}
@media (max-width:900px){
  .menu-toggle{display:inline-flex}
  .nav .wrap{position:relative}
  .menu,.menu a:not(.btn){display:none}
  .nav.buka .menu{display:flex;flex-direction:column;align-items:stretch;gap:0;position:absolute;left:0;right:0;top:72px;background:var(--kertas);border-bottom:1px solid var(--garis);padding:8px 20px 20px;box-shadow:0 20px 30px -20px rgba(42,26,52,.35)}
  .nav.buka .menu a:not(.btn){display:block;padding:14px 0;border-bottom:1px solid var(--garis);font-size:17px}
  .nav.buka .menu a.btn{margin-top:16px}
}
/* ===== multi-halaman ===== */
.menu a[aria-current="page"]:not(.btn){color:var(--ungu-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--oranye);text-decoration-thickness:2px;text-underline-offset:8px}
.page-head{position:relative;overflow:hidden;padding:56px 0 52px;border-bottom:1px solid var(--garis)}
.page-head .crumb{font-size:14px;color:var(--teks-2);margin-bottom:18px}
.page-head .crumb a{color:var(--teks-2);text-decoration:none}
.page-head .crumb a:hover{color:var(--ungu-ink)}
.page-head h1{font-size:clamp(36px,5vw,58px);max-width:15em}
.page-head p.lead{margin-top:16px;font-size:18.5px;color:var(--teks-2);max-width:40em}
.page-head .hero-arc{right:-260px;top:-300px;opacity:.45}
.halaman-lain{border-top:1px solid var(--garis);padding:48px 0 16px}
.halaman-lain .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.halaman-lain a{display:block;text-decoration:none;border:1px solid var(--garis);background:#fff;border-radius:var(--r);padding:20px}
.halaman-lain a:hover{border-color:var(--ungu)}
.halaman-lain small{font-size:13px;color:var(--oranye-tua);font-weight:600}
.halaman-lain b{display:block;font-family:var(--serif);font-weight:500;font-size:21px;color:var(--ungu-ink);margin-top:4px}
.halaman-lain span{font-size:14.5px;color:var(--teks-2)}
@media (max-width:900px){.halaman-lain .wrap{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.halaman-lain .wrap{grid-template-columns:1fr}}
/* beranda */
.ringkas{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d9cbe1;border:1px solid #d9cbe1;border-radius:var(--r);overflow:hidden}
.ringkas article{background:var(--kertas);padding:28px 24px;display:flex;flex-direction:column;gap:8px}
.ringkas .no{font-size:13px;font-weight:600;color:var(--oranye-tua)}
.ringkas h3{font-size:21px}
.ringkas p{font-size:15.5px;color:var(--teks-2)}
.lanjut{display:inline-flex;align-items:center;gap:8px;margin-top:28px;font-weight:600;color:var(--ungu-tua);text-decoration:none;border-bottom:2px solid var(--oranye);padding-bottom:2px}
.lanjut:hover{color:var(--ungu-ink)}
@media (max-width:900px){.ringkas{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ringkas{grid-template-columns:1fr}}
.teaser{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.teaser a{display:grid;grid-template-rows:auto 1fr;text-decoration:none;background:#fff;border:1px solid #d9cbe1;border-radius:var(--r);overflow:hidden}
.teaser a:hover{border-color:var(--ungu)}
.teaser img{width:100%;aspect-ratio:16/10;object-fit:cover}
.teaser div{padding:24px 26px 28px}
.teaser small{font-size:13px;font-weight:600;color:var(--oranye-tua)}
.teaser h3{margin:6px 0 8px;font-size:24px}
.teaser p{color:var(--teks-2);font-size:15.5px}
@media (max-width:800px){.teaser{grid-template-columns:1fr}}
.kabar{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.kabar li{border-top:2px solid var(--oranye);padding-top:16px}
.kabar time{font-size:13.5px;font-weight:600;color:var(--oranye)}
.kabar h3{font-size:20px;margin:6px 0 6px;color:#fff}
.kabar p{font-size:15px;color:#cdbdd7}
@media (max-width:800px){.kabar{grid-template-columns:1fr}}
.cta-band{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center;background:#fff;border:1px solid var(--garis);border-radius:22px;padding:48px}
.cta-band h2{font-size:clamp(28px,3.4vw,40px)}
.cta-band p{color:var(--teks-2);margin-top:12px}
.cta-band .aksi{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.cta-band .nomor a{background:var(--ungu-muda);border-color:#d9cbe1}
.cta-band .nomor b{color:var(--ungu-ink)}
.cta-band .nomor span{color:var(--teks-2)}
.cta-band h4{font-size:14px;font-weight:600;color:var(--teks-2);margin:0 0 10px}
@media (max-width:900px){.cta-band{grid-template-columns:1fr;padding:28px 22px}}
