:root{
  --n900:#05192B; --n700:#0A3D62; --n500:#0C6E88; --n200:#1ECAD3;
  --putih:#FFFFFF; --kabut:#FBFBFD; --g050:#F5F5F7; --g100:#E8E8ED; --g200:#D2D2D7;
  --g500:#6E6E73; --g900:#1D1D1F;
  --latar:var(--kabut); --permukaan:var(--putih); --garis:var(--g100);
  --tinta:var(--g900); --tinta-2:var(--g500);
  --interaktif:#0C6E88; --aksen:#1ECAD3; --aksen-samar:rgba(30,202,211,.12);
  --grad-induk:linear-gradient(118deg,#0A3D62 0%,#0A5570 22%,#0C6E88 42%,#0E8FA1 62%,#10A5B3 76%,#14B1BD 88%,#1ECAD3 100%);
  --grad-nebula:linear-gradient(135deg,#0A3D62 0%,#4A3FB0 55%,#6D4AED 100%);
  --huruf:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  --huruf-naratif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-penuh:999px;
  --e1:0 1px 2px rgba(5,25,43,.06),0 1px 3px rgba(5,25,43,.04);
  --e3:0 16px 40px -12px rgba(5,25,43,.22),0 4px 12px rgba(5,25,43,.06);
  --cahaya:0 8px 24px -6px rgba(12,110,136,.45);
  --kurva:cubic-bezier(.32,.72,0,1); --d1:160ms; --d2:280ms;
  --baca:640px; --halaman:clamp(1320px,78vw,1560px); --sentuh:44px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--latar);color:var(--tinta);font-family:var(--huruf);
  font-size:15.5px;line-height:1.62;letter-spacing:-.006em;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--interaktif);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(12,110,136,.4);border-radius:8px}
.lewati{position:absolute;left:-9999px}
.lewati:focus{position:static;display:inline-flex;align-items:center;min-height:var(--sentuh);margin:12px;padding:8px 14px;background:var(--putih);border:1px solid var(--garis);border-radius:var(--r-sm)}

.wadah{width:100%;max-width:var(--halaman);margin:0 auto;padding:0 clamp(22px,3.2vw,44px)}
.overline{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--interaktif)}
.naratif{font-family:var(--huruf-naratif);font-weight:400;font-style:italic;
  font-size:clamp(26px,3.6vw,40px);line-height:1.14;letter-spacing:-.02em}
.naratif.besar{font-size:clamp(30px,5.6vw,74px);line-height:1.05}
.title{font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.2}
.heading{font-size:17px;font-weight:800;letter-spacing:-.02em}
.cap{font-size:13px;font-weight:500;color:var(--tinta-2)}
.sekunder{color:var(--tinta-2)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:inherit;font-size:15px;font-weight:700;border:1px solid transparent;
  border-radius:var(--r-md);padding:11px 20px;min-height:var(--sentuh);cursor:pointer;
  transition:all var(--d1) var(--kurva);text-decoration:none}
.btn:hover{text-decoration:none}
.btn-utama{background-image:var(--grad-induk);background-size:220%;color:#fff;box-shadow:var(--e1)}
.btn-utama:hover{transform:translateY(-1px);box-shadow:var(--cahaya)}
.btn-kedua{background:var(--permukaan);border-color:var(--garis);color:var(--tinta)}
.btn-kedua:hover{border-color:var(--interaktif);color:var(--interaktif)}
.btn-terang{background:#fff;color:var(--n700)}
.btn-terang:hover{transform:translateY(-1px)}
.btn-garis-terang{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.btn-garis-terang:hover{border-color:#fff}

.tanda-ai{display:inline-flex;align-items:center;gap:5px;border-radius:var(--r-penuh);
  padding:3px 10px;font-size:11px;font-weight:800;background:var(--grad-nebula);color:#fff}
.tanda-ai::before{content:"\2726"}

/* Kepala */
.kepala{position:sticky;top:0;z-index:40;background:rgba(251,251,253,.86);
  backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--garis)}
.kepala-isi{display:flex;align-items:center;justify-content:space-between;gap:16px;height:66px}
.logo{display:inline-flex;align-items:center;min-height:var(--sentuh)}
.logo img{height:32px;width:auto}
.kepala-aksi{display:flex;align-items:center;gap:8px}
.kepala-nav{display:flex;align-items:center;gap:2px}
.tautan-induk{font-size:13px;font-weight:700;color:var(--tinta-2);padding:8px 10px;border-radius:var(--r-sm)}
.tautan-induk:hover{color:var(--interaktif);text-decoration:none}
.tautan-induk.aktif{color:var(--tinta)}
.kepala .btn{padding:8px 15px;min-height:38px}
@media(max-width:760px){.kepala-nav{display:none}}
@media(max-width:520px){.logo img{height:27px}.kepala .btn{min-height:var(--sentuh)}}

/* Menu mobile */
.kepala-hamburger{display:none;align-items:center;justify-content:center;flex:0 0 auto;
  width:38px;height:38px;padding:0;border:1px solid var(--garis);border-radius:var(--r-sm);
  background:var(--permukaan);cursor:pointer}
.kepala-hamburger span{position:relative;display:block;width:16px;height:2px;border-radius:2px;
  background:var(--tinta);transition:background var(--d1) var(--kurva)}
.kepala-hamburger span::before,.kepala-hamburger span::after{content:"";position:absolute;left:0;
  width:16px;height:2px;border-radius:2px;background:var(--tinta);
  transition:transform var(--d1) var(--kurva)}
.kepala-hamburger span::before{top:-5px}
.kepala-hamburger span::after{top:5px}
.kepala-hamburger[aria-expanded="true"] span{background:transparent}
.kepala-hamburger[aria-expanded="true"] span::before{transform:translateY(5px) rotate(45deg)}
.kepala-hamburger[aria-expanded="true"] span::after{transform:translateY(-5px) rotate(-45deg)}
@media(max-width:760px){.kepala-hamburger{display:inline-flex}}

.menu-mobile{border-top:1px solid var(--garis);background:var(--permukaan)}
.menu-mobile[hidden]{display:none}
.menu-mobile .wadah{display:flex;flex-direction:column;padding:6px clamp(22px,3.2vw,44px) 10px}
.menu-mobile a{display:flex;align-items:center;min-height:var(--sentuh);font-size:15px;
  font-weight:700;color:var(--tinta-2);border-bottom:1px solid var(--garis)}
.menu-mobile a:last-child{border-bottom:none}
.menu-mobile a.aktif{color:var(--tinta)}
.menu-mobile a:hover{color:var(--interaktif);text-decoration:none}
@media(min-width:761px){.menu-mobile{display:none!important}}

/* Hero */
.hero{padding:74px 0 70px}
.hero-grid{display:grid;gap:32px}
.hero-visual{display:none}
@media(min-width:900px){
  .hero-grid{grid-template-columns:1.15fr 1fr;align-items:center;gap:24px}
  .hero-visual{display:block}
  .hero-visual svg{width:100%;height:auto;max-width:440px;margin:0 auto;display:block}
  .hero-visual .cincin{transform-origin:260px 260px;animation:heroPutar 60s linear infinite}
  .hero-visual .orb{animation:heroNafas 7s ease-in-out infinite alternate}
  .hero-visual .titik circle{animation:heroKedip 4s ease-in-out infinite alternate;opacity:.35}
  @keyframes heroPutar{to{transform:rotate(360deg)}}
  @keyframes heroNafas{from{opacity:.8}to{opacity:1}}
  @keyframes heroKedip{from{opacity:.2}to{opacity:.75}}
}
.hero h1{margin:14px 0 0;max-width:17ch}
.hero h1 em{font-style:italic;color:var(--interaktif)}
.hero p{margin-top:20px;max-width:var(--baca);font-size:17px;line-height:1.6;color:var(--tinta-2)}
.hero-aksi{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.hero-status{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:38px;padding-top:22px;border-top:1px solid var(--garis)}
.status-butir{display:flex;align-items:baseline;gap:9px;font-size:13px;color:var(--tinta-2)}
.status-butir b{color:var(--tinta);font-weight:700}
.titik{width:6px;height:6px;border-radius:50%;flex:0 0 auto;align-self:center}
.titik-jalan{background:var(--aksen)}
.titik-belum{background:var(--g200)}

/* Bagian */
.bagian{padding:70px 0}
.bagian-kepala{max-width:var(--baca)}
.bagian-kepala h2{margin:12px 0 0}
.bagian-kepala p{margin-top:16px;color:var(--tinta-2)}
.nomor{font-size:11.5px;font-weight:800;letter-spacing:.14em;color:var(--g200)}

.tiga{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:36px;
  background:var(--garis);border:1px solid var(--garis);border-radius:var(--r-lg);overflow:hidden}
.tiga>div{background:var(--permukaan);padding:26px 28px}
.tiga h3{margin-bottom:8px;display:flex;align-items:center;gap:9px}
.tiga p{font-size:14.5px;color:var(--tinta-2)}
@media(max-width:760px){.tiga{grid-template-columns:1fr}}

/* Produk */
.tera{background:var(--permukaan)}
.tera-kartu{background:var(--permukaan);margin-top:36px;border:1px solid var(--garis);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--e1)}
.tera-atas{padding:30px 28px;border-bottom:1px solid var(--garis);
  display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}
.tera-peran{font-size:14.5px;color:var(--tinta-2)}
.tera-catatan{font-size:12.5px;color:var(--tinta-2);margin-top:4px}
.lencana{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-penuh);
  padding:3px 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;
  background:rgba(180,83,9,.12);color:#8A4008}
.lencana::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.tera-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:28px;background:var(--permukaan)}
.tera-grid>div{background:var(--permukaan);border:1px solid var(--garis);border-radius:var(--r-lg);
  box-shadow:var(--e1);padding:30px 32px}
.tera-grid h4{font-size:15.5px;font-weight:800;letter-spacing:-.02em;margin-bottom:6px}
.tera-grid p{font-size:14.5px;color:var(--tinta-2)}
.tera-ikon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;
  border-radius:var(--r-md);background:var(--aksen-samar);color:var(--interaktif);margin-bottom:14px}
.tera-ikon svg{width:20px;height:20px}
.anotasi{display:block;margin-top:14px;font-family:ui-monospace,'SF Mono','Cascadia Code','Roboto Mono',Menlo,Consolas,monospace;
  font-size:11.5px;letter-spacing:.01em;color:var(--tinta-2)}
.tera-kaki{padding:22px 28px;background:var(--g050);display:flex;flex-wrap:wrap;
  align-items:center;justify-content:space-between;gap:14px}
@media(max-width:760px){.tera-grid{grid-template-columns:1fr;padding-left:22px;padding-right:22px}.tera-atas,.tera-kaki{padding-left:22px;padding-right:22px}}

/* Cara kerja */
.diagram-kartu{margin-top:36px;background:var(--kabut);border:1px solid var(--garis);border-radius:var(--r-lg);padding:24px}
.diagram-kartu svg{display:block;width:100%;height:auto}
.diagram-kartu p{margin-top:14px;font-size:13px;font-weight:500;color:var(--tinta-2);text-align:center}
.cara-kaki{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
@media(max-width:760px){.diagram-kartu{padding:18px}}

/* Daftar poin */
.belum{margin-top:36px;max-width:var(--baca);border-left:3px solid var(--g200);padding-left:22px}
.belum li{list-style:none;padding:13px 0;border-bottom:1px solid var(--garis);font-size:15px;color:var(--tinta-2)}
.belum li:last-child{border-bottom:none}
.belum li b{color:var(--tinta);font-weight:700}

/* Ekosistem */
.ekosistem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px}
.ekosistem-grid a,.ekosistem-grid .ini{display:flex;align-items:center;gap:12px;padding:16px 18px;
  border:1px solid var(--garis);background:var(--permukaan);border-radius:var(--r-lg);color:var(--tinta)}
.ekosistem-grid a:hover{border-color:var(--interaktif);text-decoration:none;box-shadow:var(--e1)}
.ekosistem-grid .ini{background:var(--n700);border-color:var(--n700);color:#fff}
.ekosistem-monogram{display:flex;align-items:center;justify-content:center;flex:0 0 auto;
  width:38px;height:38px;border-radius:var(--r-md);font-family:var(--huruf-naratif);font-style:italic;
  font-size:18px;background:var(--aksen-samar);color:var(--interaktif)}
.ekosistem-grid .ini .ekosistem-monogram{background:rgba(255,255,255,.16);color:#fff}
.ekosistem-teks{display:flex;flex-direction:column;gap:1px;min-width:0}
.ekosistem-nama{font-size:14.5px;font-weight:700;line-height:1.3}
.ekosistem-tag{font-size:12px;color:var(--tinta-2)}
.ekosistem-grid .ini .ekosistem-tag{color:rgba(255,255,255,.72)}
@media(max-width:900px){.ekosistem-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.ekosistem-grid{grid-template-columns:1fr}}

/* Ajakan */
.ajakan{background-image:linear-gradient(rgba(5,25,43,.3),rgba(5,25,43,.3)),var(--grad-induk);color:#fff;padding:70px 0;text-align:left}
.ajakan img{height:38px;width:auto;margin-bottom:26px;filter:brightness(0) invert(1)}
.ajakan h2{max-width:22ch}
.ajakan p{margin-top:16px;max-width:var(--baca);color:#fff}
.ajakan-aksi{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}

/* Kaki */
.kaki{background:var(--permukaan);padding:70px 0 34px}
.kaki-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:36px}
.kaki h5{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta-2);margin-bottom:14px}
.kaki li{list-style:none;font-size:14.5px}
.kaki li a{display:inline-flex;align-items:center;min-height:36px}
.kaki-alamat{font-size:14.5px;color:var(--tinta-2);line-height:1.72}
.kaki-alamat b{color:var(--tinta);font-weight:700;display:block;margin-bottom:6px}
.kaki-bawah{margin-top:40px;padding-top:22px;border-top:1px solid var(--garis);
  display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;font-size:13px;color:var(--tinta-2)}
@media(max-width:760px){.kaki-grid{grid-template-columns:1fr;gap:30px}
  .kaki li a{min-height:var(--sentuh)}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
