/*
 * Beranda (Hari 8), mengikuti mockup/a-beranda.html. HP lebih dulu.
 *
 * Halaman disusun dengan container dan widget Elementor biasa (lihat
 * includes/cli-beranda.php). Tata letak dan gaya datang dari kelas lz-b-*
 * di sini, bukan dari pengaturan widget, supaya tetap mengikuti sistem desain.
 * Container Elementor diatur lewat variabel CSS-nya sendiri (--padding-top,
 * --gap, --content-width). Selektor sengaja diawali .elementor supaya
 * menang dari gaya bawaan Elementor dan Kit.
 */

/* ---------- Container Elementor ---------- */

.elementor .e-con.lz-b-bagian,
.elementor .e-con.lz-b-banner {
	--padding-top: var(--lz-bagian); --padding-bottom: var(--lz-bagian);
	--padding-left: var(--lz-gutter); --padding-right: var(--lz-gutter);
	--content-width: calc(var(--lz-lebar) - 2 * var(--lz-gutter));
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
	font-family: var(--lz-fon); color: var(--lz-teks);
}
.elementor .e-con.lz-b-bagian--abu { background: var(--lz-latar-abu); }
/* Dua bagian putih bersebelahan: tanpa pergantian warna latar, jarak bawah dan
   atas penuh (144px di desktop) terasa seperti celah kosong. Jarak atas bagian
   kedua dikecilkan menjadi sepertiganya. */
.elementor .e-con.lz-b-bagian:not(.lz-b-bagian--abu):not(.lz-b-kepala) + .e-con.lz-b-bagian:not(.lz-b-bagian--abu):not(.lz-b-kepala) {
	--padding-top: calc(var(--lz-bagian) / 3);
}

.elementor .e-con.lz-b-judul,
.elementor .e-con.lz-b-kisi,
.elementor .e-con.lz-b-pahlawan__teks {
	--padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px;
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
}
.elementor .e-con[class*="lz-b-"] > .elementor-widget,
.elementor .e-con[class*="lz-b-"] > .e-con-inner > .elementor-widget { margin: 0; }

/* ---------- Judul bagian: judul, keterangan, tautan lihat semua ---------- */

.elementor .e-con.lz-b-judul {
	display: grid; grid-template-columns: 1fr auto; column-gap: var(--lz-jarak-4); align-items: end;
	margin-bottom: var(--lz-jarak-6);
}
.elementor .lz-b-judul > .elementor-widget { width: auto; grid-column: 1; }
.elementor .lz-b-judul > .lz-b-lihat { grid-column: 2; grid-row: 1 / span 2; align-self: end; }

.elementor .elementor-widget.lz-b-judul__h .elementor-heading-title {
	margin: 0; font-family: var(--lz-fon); font-size: var(--lz-teks-h2); font-weight: var(--lz-tebal-judul);
	line-height: var(--lz-baris-judul); letter-spacing: -.01em; color: var(--lz-teks);
}
.elementor .elementor-widget.lz-b-judul__ket { color: var(--lz-teks-redup); font-family: var(--lz-fon); font-size: var(--lz-teks-dasar); }
.elementor .elementor-widget.lz-b-judul__ket p { margin: 6px 0 0; }

.elementor .elementor-widget.lz-b-lihat .elementor-button {
	display: inline-flex; align-items: center; min-height: var(--lz-sentuh); padding: 0; border-radius: 0;
	background: none; color: var(--lz-hijau); font-family: var(--lz-fon); font-size: var(--lz-teks-dasar);
	font-weight: var(--lz-tebal-tebal); white-space: nowrap;
}
.elementor .elementor-widget.lz-b-lihat .elementor-button:hover,
.elementor .elementor-widget.lz-b-lihat .elementor-button:focus { background: none; color: var(--lz-hijau-tua); text-decoration: underline; }

/* ---------- Kisi kartu ---------- */

.elementor .e-con.lz-b-kisi { display: grid; grid-template-columns: 1fr; gap: var(--lz-jarak-3); }
.elementor .lz-b-kisi > .elementor-widget { width: auto; min-width: 0; }
.elementor .e-con.lz-b-kisi--program, .elementor .e-con.lz-b-kisi--4 { grid-template-columns: 1fr 1fr; }
.elementor .lz-b-kisi--program > .elementor-widget:last-child:nth-child(odd) { grid-column: 1 / -1; }

/* Kartu berikon (widget Icon Box): seluruh kartu bisa diketuk lewat tautan judul */
.elementor .elementor-widget.lz-b-kartu { position: relative; height: 100%; }
.elementor .lz-b-kartu > .elementor-widget-container { height: 100%; }
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-wrapper {
	display: flex; flex-direction: row; align-items: center; gap: var(--lz-jarak-4); height: 100%;
	padding: 18px; border: 1px solid var(--lz-garis); border-radius: var(--lz-sudut); background: #fff;
	text-align: start; transition: border-color .15s;
}
.elementor .elementor-widget.lz-b-kartu--tegak .elementor-icon-box-wrapper {
	flex-direction: column; align-items: flex-start; gap: var(--lz-jarak-3); padding: 18px 16px;
}
.elementor .elementor-widget.lz-b-kartu:hover .elementor-icon-box-wrapper { border-color: var(--lz-hijau); }
.elementor .elementor-widget.lz-b-kartu:focus-within .elementor-icon-box-wrapper { outline: 3px solid var(--lz-fokus); outline-offset: 2px; }
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-icon { display: flex; flex: none; margin: 0; }
.elementor .elementor-widget.lz-b-kartu .elementor-icon {
	display: grid; place-items: center; width: 52px; height: 52px; border-radius: var(--lz-sudut);
	background: var(--lz-hijau-muda); color: var(--lz-hijau); font-size: 24px;
}
.elementor .elementor-widget.lz-b-kartu .elementor-icon svg { width: 24px; height: 24px; fill: currentColor; }
.elementor .elementor-widget.lz-b-kartu--tegak .elementor-icon { width: auto; height: auto; background: none; }
.elementor .elementor-widget.lz-b-kartu--tegak .elementor-icon svg { width: 32px; height: 32px; }
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-content { min-width: 0; }
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-title {
	margin: 0 0 2px; font-family: var(--lz-fon); font-size: 17px; font-weight: var(--lz-tebal-tebal);
	line-height: 1.3; color: var(--lz-teks);
}
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-title a { color: inherit; text-decoration: none; }
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-title a::after { content: ""; position: absolute; inset: 0; border-radius: var(--lz-sudut); }
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-title a:focus { outline: none; }
.elementor .elementor-widget.lz-b-kartu .elementor-icon-box-description {
	margin: 0; font-family: var(--lz-fon); font-size: 15px; line-height: 1.5; color: var(--lz-teks-redup);
}
.elementor .elementor-widget.lz-b-kartu--tegak .elementor-icon-box-description { font-size: var(--lz-teks-kecil); }

/* Kartu lima pilar program: kotak berwarna penuh, ikon putih, nama program
   huruf kapital (model dari Direktur, 29 Oktober 2026). Satu warna per
   program, semuanya kontras minimal 4,5:1 dengan teks putih. Warna ini
   pengecualian sistem desain atas permintaan pemilik proyek. Kartu dikenali
   dari tautannya, jadi isi Elementor tidak perlu diubah. Peramban tanpa
   :has() tetap menampilkan kartu putih lama. Bila gambar ikon diubah,
   naikkan ?v= supaya peramban tidak memakai salinan lama (cache 7 hari). */
.lz-b-kartu:has(a[href*="/program-pendidikan/"]) { --lz-ikon-program: url(../img/program/pendidikan.svg?v=2); --lz-warna-program: #2563C9; }
.lz-b-kartu:has(a[href*="/program-dakwah/"]) { --lz-ikon-program: url(../img/program/dakwah.svg?v=2); --lz-warna-program: #0E7C71; }
.lz-b-kartu:has(a[href*="/program-kesehatan/"]) { --lz-ikon-program: url(../img/program/kesehatan.svg?v=2); --lz-warna-program: #C8323A; }
.lz-b-kartu:has(a[href*="/program-sosial-kemanusiaan/"]) { --lz-ikon-program: url(../img/program/sosial.svg?v=2); --lz-warna-program: #B8520F; }
.lz-b-kartu:has(a[href*="/program-pemberdayaan/"]) { --lz-ikon-program: url(../img/program/pemberdayaan.svg?v=2); --lz-warna-program: #367D1F; }
.elementor .elementor-widget.lz-b-kartu:is(:has(a[href*="/program-pendidikan/"]), :has(a[href*="/program-dakwah/"]), :has(a[href*="/program-kesehatan/"]), :has(a[href*="/program-sosial-kemanusiaan/"]), :has(a[href*="/program-pemberdayaan/"])) {
	& .elementor-icon-box-wrapper {
		align-items: center; justify-content: center; gap: var(--lz-jarak-3); min-height: 148px; padding: var(--lz-jarak-5) var(--lz-jarak-3);
		border: 0; text-align: center; box-shadow: var(--lz-bayangan-kecil);
		background: radial-gradient(circle at 50% 30%, rgba(255, 255, 255, .14), transparent 65%), var(--lz-warna-program);
		transition: transform .15s, box-shadow .15s;
	}
	&:hover .elementor-icon-box-wrapper { transform: translateY(-2px); box-shadow: var(--lz-bayangan); }
	& .elementor-icon-box-icon { align-self: stretch; justify-content: center; }
	& .elementor-icon { width: 64px; height: 64px; border-radius: 0; background: var(--lz-ikon-program) center / 100% no-repeat; }
	& .elementor-icon svg { display: none; }
	& .elementor-icon-box-content { text-align: center; }
	& .elementor-icon-box-title { margin: 0; font-size: 16px; font-weight: var(--lz-tebal-judul); line-height: 1.25; letter-spacing: .03em; text-transform: uppercase; color: #fff; }
	/* Keterangan singkat tetap terbaca pembaca layar, tidak tampil di kotak. */
	& .elementor-icon-box-description { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}
@media (min-width: 1024px) {
	.elementor .elementor-widget.lz-b-kartu:is(:has(a[href*="/program-pendidikan/"]), :has(a[href*="/program-dakwah/"]), :has(a[href*="/program-kesehatan/"]), :has(a[href*="/program-sosial-kemanusiaan/"]), :has(a[href*="/program-pemberdayaan/"])) {
		& .elementor-icon-box-wrapper { min-height: 196px; gap: var(--lz-jarak-4); }
		& .elementor-icon { width: 80px; height: 80px; }
		& .elementor-icon-box-title { font-size: 17px; }
	}
}

/* ---------- Banner geser ---------- */

/* HP: selebar layar tanpa jarak. Layar lebar: mengikuti lebar wadah, bersudut. */
.elementor .e-con.lz-b-banner { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; }
.lz-banner { position: relative; }
.lz-banner__jalur {
	display: flex; align-items: flex-start; overflow-x: auto; scroll-snap-type: x mandatory;
	scroll-behavior: smooth; scrollbar-width: none; overscroll-behavior-x: contain;
}
.lz-banner__jalur::-webkit-scrollbar { display: none; }
.lz-banner__slide { flex: 0 0 100%; scroll-snap-align: center; }
.lz-banner__slide a { display: block; }
.lz-banner__slide img { display: block; width: 100%; height: auto; background: var(--lz-latar-abu); }
@media (prefers-reduced-motion: reduce) {
	.lz-banner__jalur { scroll-behavior: auto; }
}

.lz-banner .lz-banner__geser.lz-banner__geser {
	display: none; position: absolute; top: 50%; transform: translateY(-50%); place-items: center;
	width: var(--lz-sentuh); height: var(--lz-sentuh); padding: 0; border: 0; border-radius: 50%;
	background: rgb(255 255 255 / .92); color: var(--lz-hijau-tua); box-shadow: var(--lz-bayangan-kecil); cursor: pointer;
}
.lz-banner .lz-banner__geser.lz-banner__geser:hover, .lz-banner .lz-banner__geser.lz-banner__geser:focus { background: #fff; color: var(--lz-hijau); }
.lz-banner__geser svg { width: 22px; height: 22px; }
.lz-banner__geser--kiri { left: 16px; }
.lz-banner__geser--kanan { right: 16px; }

/* Titik penanda di tepi bawah banner, area sentuh tetap 44px */
.lz-banner__titik { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: center; pointer-events: none; }
.lz-banner .lz-banner__titik button {
	display: grid; place-items: center; width: var(--lz-sentuh); height: var(--lz-sentuh); padding: 0; border: 0;
	border-radius: 0; background: none; cursor: pointer; pointer-events: auto;
}
.lz-banner .lz-banner__titik button:hover, .lz-banner .lz-banner__titik button:focus { background: none; }
.lz-banner__titik button::before {
	content: ""; width: 8px; height: 8px; border-radius: var(--lz-sudut-bulat);
	background: rgb(255 255 255 / .7); box-shadow: 0 1px 4px rgb(0 0 0 / .35); transition: width .2s, background-color .2s;
}
.lz-banner__titik button[aria-current="true"]::before { width: 24px; background: #fff; }
.lz-banner button:focus-visible { outline: 3px solid var(--lz-fokus); outline-offset: -4px; }

/* ---------- Judul utama dan kotak donasi ---------- */

.elementor .e-con.lz-b-pahlawan { --padding-top: var(--lz-jarak-6); }
.elementor .e-con.lz-b-pahlawan__teks { margin-bottom: var(--lz-jarak-5); }
.elementor .elementor-widget.lz-b-h1 .elementor-heading-title {
	margin: 0 0 var(--lz-jarak-3); font-family: var(--lz-fon); font-size: var(--lz-teks-h1); font-weight: var(--lz-tebal-judul);
	line-height: var(--lz-baris-judul); letter-spacing: -.01em; color: var(--lz-teks);
}
.elementor .elementor-widget.lz-b-pengantar { font-family: var(--lz-fon); font-size: 17px; line-height: var(--lz-baris-dasar); color: var(--lz-teks-redup); }
.elementor .elementor-widget.lz-b-pengantar p { margin: 0; }

/* ---------- Kabar, mitra, galeri ---------- */

.lz-b-kabar { gap: var(--lz-jarak-5); }
.lz-b-kabar .lz-kartu-artikel { align-items: start; }

.lz-b-mitra, .lz-b-galeri { display: grid; margin: 0; padding: 0; list-style: none; }
.lz-b-mitra { grid-template-columns: repeat(3, 1fr); gap: 10px; }

/* Bagian rata tengah (Mitra kami): judul di tengah, baris logo terakhir yang
   tidak penuh ikut ke tengah, bukan menempel di kiri. */
.elementor .e-con.lz-b-tengah .e-con.lz-b-judul { grid-template-columns: 1fr; justify-items: center; text-align: center; }
.elementor .e-con.lz-b-tengah .lz-b-judul > .lz-b-lihat { grid-column: 1; grid-row: auto; align-self: auto; }
.lz-b-tengah .lz-b-mitra { display: flex; flex-wrap: wrap; justify-content: center; }
.lz-b-tengah .lz-b-mitra li { flex: 0 0 calc((100% - 2 * 10px) / 3); }
.lz-b-mitra li, .lz-b-mitra a { display: block; }
.lz-b-mitra li img {
	display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; padding: 10px;
	border: 1px solid var(--lz-garis); border-radius: 12px; background: #fff;
}
.lz-b-mitra li a:hover img { border-color: var(--lz-hijau); }
/* Versi ringkas di beranda: 12 logo di HP (4 baris x 3), 14 di layar lebar */
@media (max-width: 767px) {
	.lz-b-mitra--ringkas li:nth-child(n+13) { display: none; }
}
.lz-b-mitra__semua { margin: var(--lz-jarak-5) 0 0; text-align: center; }

.lz-b-galeri { grid-template-columns: 1fr 1fr; gap: var(--lz-jarak-2); }
.lz-b-galeri a { display: block; border-radius: var(--lz-sudut-kecil); overflow: hidden; }
.lz-b-galeri img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; transition: transform .3s; }
.lz-b-galeri a:hover img { transform: scale(1.04); }
.lz-b-galeri a:focus-visible, .lz-b-mitra a:focus-visible { outline: 3px solid var(--lz-fokus); outline-offset: 2px; }

/* ---------- Tablet ---------- */

@media (min-width: 768px) {
	.elementor .e-con.lz-b-banner { --padding-top: var(--lz-jarak-5); --padding-left: var(--lz-gutter); --padding-right: var(--lz-gutter); }
	.lz-banner__jalur { gap: var(--lz-gutter); border-radius: 18px; }
	.lz-banner__slide img { border-radius: 18px; }
	.lz-banner .lz-banner__geser.lz-banner__geser { display: grid; }

	.elementor .e-con.lz-b-kisi--2,
	.elementor .e-con.lz-b-kisi--3 { grid-template-columns: repeat(2, 1fr); gap: var(--lz-jarak-4); }
	.elementor .e-con.lz-b-kisi--program { gap: var(--lz-jarak-4); }
	.lz-b-mitra { grid-template-columns: repeat(5, 1fr); gap: 14px; }
	.lz-b-tengah .lz-b-mitra li { flex-basis: calc((100% - 4 * 14px) / 5); }
	.lz-b-galeri { grid-template-columns: repeat(4, 1fr); gap: var(--lz-jarak-3); }
	.lz-b-galeri a { border-radius: var(--lz-sudut); }
	.lz-b-kabar { gap: var(--lz-jarak-6); }
}

/* ---------- Desktop ---------- */

@media (min-width: 1024px) {
	.elementor .e-con.lz-b-pahlawan { --padding-top: var(--lz-jarak-12); --padding-bottom: var(--lz-jarak-12); }
	.elementor .e-con.lz-b-pahlawan > .e-con-inner {
		display: grid; grid-template-columns: 1fr 500px; gap: 64px; align-items: center;
	}
	.elementor .e-con.lz-b-pahlawan__teks { margin-bottom: 0; }
	/* Halaman Kalkulator Zakat: judul sejajar atas kalkulator yang tinggi */
	.elementor .e-con.lz-b-pahlawan--atas > .e-con-inner { align-items: start; }
	.elementor .e-con.lz-b-pahlawan--atas .lz-b-pahlawan__teks { padding-top: var(--lz-jarak-8); }
	.elementor .elementor-widget.lz-b-pengantar { font-size: 19px; }

	.elementor .e-con.lz-b-kisi--3 { grid-template-columns: repeat(3, 1fr); }
	.elementor .e-con.lz-b-kisi--program { grid-template-columns: repeat(5, 1fr); }
	.elementor .lz-b-kisi--program > .elementor-widget:last-child:nth-child(odd) { grid-column: auto; }
	.lz-b-mitra { grid-template-columns: repeat(7, 1fr); }
	.lz-b-tengah .lz-b-mitra li { flex-basis: calc((100% - 6 * 14px) / 7); }
}

/* ==========================================================================
   Halaman lain (Hari 10): Tentang Kami, Program, sub-program, Rekening
   ZISWAF, Laporan, Link Bio. Disusun includes/cli-halaman.php.
   ========================================================================== */

/* Kepala halaman: judul dan pengantar di atas latar hijau muda */
.elementor .e-con.lz-b-kepala { --padding-top: var(--lz-jarak-8); --padding-bottom: var(--lz-jarak-8); background: var(--lz-hijau-muda); }
.elementor .e-con.lz-b-kepala .elementor-widget { max-width: 760px; }
.elementor .e-con.lz-b-kepala .lz-b-h1 .elementor-heading-title { margin-bottom: var(--lz-jarak-2); }

/* Wadah bantu tanpa jarak bawaan Elementor */
.elementor .e-con.lz-b-dua, .elementor .e-con.lz-b-tumpuk, .elementor .e-con.lz-b-lini,
.elementor .e-con.lz-b-tombol-baris, .elementor .e-con.lz-b-ajakan, .elementor .e-con.lz-b-kotak-wadah,
.elementor .e-con.lz-b-linkbio__tautan {
	--padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px;
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
}
.elementor .e-con.lz-b-dua { display: grid; gap: var(--lz-jarak-8); }
.elementor .e-con.lz-b-lini { display: grid; gap: var(--lz-jarak-3); align-content: start; }
.elementor .lz-b-tumpuk > .lz-b-judul__h { margin-bottom: var(--lz-jarak-4); }

/* Teks panjang yang enak dibaca */
.elementor .elementor-widget.lz-b-teks { max-width: var(--lz-lebar-baca); font-family: var(--lz-fon); font-size: 17px; line-height: var(--lz-baris-artikel); color: var(--lz-teks); }
.elementor .elementor-widget.lz-b-teks p { margin: 0 0 1em; }
.elementor .elementor-widget.lz-b-teks p:last-child { margin-bottom: 0; }

/* Kartu tanpa tautan (lini masa, kegiatan program): tidak berubah saat disorot */
.elementor .elementor-widget.lz-b-kartu:not(:has(.elementor-icon-box-title a)):hover .elementor-icon-box-wrapper { border-color: var(--lz-garis); }

/* Kotak isi (widget teks): visi dan misi */
.elementor .e-con.lz-b-kisi--visi { grid-template-columns: 1fr; }
.elementor .elementor-widget.lz-b-kotak {
	height: 100%; padding: var(--lz-jarak-6); border: 1px solid var(--lz-garis); border-radius: var(--lz-sudut);
	background: #fff; font-family: var(--lz-fon); font-size: var(--lz-teks-dasar); line-height: var(--lz-baris-dasar); color: var(--lz-teks);
}
.elementor .elementor-widget.lz-b-kotak h3 { margin: 0 0 var(--lz-jarak-2); font-family: var(--lz-fon); font-size: var(--lz-teks-h3); font-weight: var(--lz-tebal-tebal); color: var(--lz-hijau-tua); }
.elementor .elementor-widget.lz-b-kotak p { margin: 0; }
.elementor .elementor-widget.lz-b-kotak ul { margin: 0; padding-left: 20px; }
.elementor .elementor-widget.lz-b-kotak li + li { margin-top: var(--lz-jarak-2); }
.elementor .elementor-widget.lz-b-kotak--hijau { border-color: transparent; background: var(--lz-hijau-muda); }
.elementor .elementor-widget.lz-b-kotak--hijau p { font-size: var(--lz-teks-besar); font-weight: var(--lz-tebal-sedang); line-height: 1.5; color: var(--lz-hijau-tua); }

/* Wadah kotak (container berisi beberapa widget): QRIS, konfirmasi */
.elementor .e-con.lz-b-kotak-wadah {
	--padding-top: var(--lz-jarak-6); --padding-bottom: var(--lz-jarak-6); --padding-left: var(--lz-jarak-6); --padding-right: var(--lz-jarak-6);
	border: 1px solid var(--lz-garis); border-radius: var(--lz-sudut); background: #fff;
}
.elementor .e-con.lz-b-kotak-wadah--hijau { border-color: transparent; background: var(--lz-hijau-muda); }
.elementor .elementor-widget.lz-b-kotak__h .elementor-heading-title {
	margin: 0; font-family: var(--lz-fon); font-size: 20px; font-weight: var(--lz-tebal-tebal); line-height: 1.3; color: var(--lz-teks);
}
.elementor .elementor-widget.lz-b-qris { margin-top: var(--lz-jarak-4); }
.elementor .elementor-widget.lz-b-qris img { width: 100%; max-width: 320px; height: auto; border: 1px solid var(--lz-garis); border-radius: var(--lz-sudut); }

/* Kotak ajakan: hijau tua, tulisan putih */
.elementor .e-con.lz-b-ajakan {
	--padding-top: var(--lz-jarak-8); --padding-bottom: var(--lz-jarak-8); --padding-left: var(--lz-jarak-6); --padding-right: var(--lz-jarak-6);
	border-radius: var(--lz-sudut-besar); background: var(--lz-hijau-tua);
}
.elementor .lz-b-ajakan .elementor-widget.lz-b-judul__h .elementor-heading-title { color: #fff; }
.elementor .lz-b-ajakan .elementor-widget.lz-b-judul__ket { max-width: 640px; color: rgb(255 255 255 / .85); }

/* Baris tombol */
.elementor .e-con.lz-b-tombol-baris { flex-direction: row; flex-wrap: wrap; gap: var(--lz-jarak-3); margin-top: var(--lz-jarak-5); }
.elementor .lz-b-tombol-baris > .elementor-widget { width: auto; }

/* Tombol Elementor bergaya sistem desain (lihat .lz-tombol di sistem-desain.css) */
.elementor .elementor-widget.lz-b-tombol .elementor-button {
	display: inline-flex; align-items: center; justify-content: center; min-height: var(--lz-tinggi-tombol); padding: 0 22px;
	border: 0; border-radius: var(--lz-sudut-bulat); font-family: var(--lz-fon); font-size: var(--lz-teks-dasar);
	font-weight: var(--lz-tebal-tebal); line-height: 1.2; text-decoration: none;
}
.elementor .elementor-widget.lz-b-tombol--emas .elementor-button, .elementor .elementor-widget.lz-b-tombol--emas .elementor-button:focus { background: var(--lz-emas); color: var(--lz-hijau-tua); }
.elementor .elementor-widget.lz-b-tombol--emas .elementor-button:hover { background: var(--lz-emas-terang); color: var(--lz-hijau-tua); }
.elementor .elementor-widget.lz-b-tombol--hijau .elementor-button, .elementor .elementor-widget.lz-b-tombol--hijau .elementor-button:focus { background: var(--lz-hijau); color: #fff; }
.elementor .elementor-widget.lz-b-tombol--hijau .elementor-button:hover { background: var(--lz-hijau-tua); color: #fff; }
.elementor .elementor-widget.lz-b-tombol--garis .elementor-button, .elementor .elementor-widget.lz-b-tombol--garis .elementor-button:focus { background: #fff; color: var(--lz-hijau); box-shadow: inset 0 0 0 2px var(--lz-garis); }
.elementor .elementor-widget.lz-b-tombol--garis .elementor-button:hover { background: #fff; color: var(--lz-hijau-tua); box-shadow: inset 0 0 0 2px var(--lz-hijau); }
.elementor .elementor-widget.lz-b-tombol .elementor-button:focus-visible { outline: 3px solid var(--lz-fokus); outline-offset: 2px; }

/* Ikon sosial media [laznas_sosial] */
.lz-sosial { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--lz-jarak-2); margin: 0; padding: 0; list-style: none; }
.lz-sosial a {
	display: grid; place-items: center; width: var(--lz-sentuh); height: var(--lz-sentuh); border: 1px solid var(--lz-garis);
	border-radius: var(--lz-sudut-bulat); background: #fff; color: var(--lz-hijau);
}
.lz-sosial a:hover { border-color: var(--lz-hijau); color: var(--lz-hijau-tua); }
.lz-sosial a:focus-visible { outline: 3px solid var(--lz-fokus); outline-offset: 2px; }
.lz-sosial svg { width: 20px; height: 20px; }

/* ---------- Link Bio (template Canvas) ---------- */

body.elementor-template-canvas:has(.lz-b-linkbio) { background: var(--lz-latar-abu); }
.elementor .e-con.lz-b-linkbio {
	--padding-top: var(--lz-jarak-12); --padding-bottom: var(--lz-jarak-12); --padding-left: var(--lz-gutter); --padding-right: var(--lz-gutter);
	--content-width: 480px; --gap: 0px; text-align: center; font-family: var(--lz-fon);
}
.elementor .e-con.lz-b-linkbio > .e-con-inner > .elementor-widget { margin: 0; }
.elementor .elementor-widget.lz-b-linkbio__logo img { width: 96px; height: 96px; object-fit: contain; padding: 6px; border-radius: 50%; background: #fff; box-shadow: var(--lz-bayangan-kecil); }
.elementor .elementor-widget.lz-b-linkbio__nama .elementor-heading-title { margin: var(--lz-jarak-4) 0 var(--lz-jarak-1); font-family: var(--lz-fon); font-size: 26px; font-weight: var(--lz-tebal-judul); color: var(--lz-teks); }
.elementor .elementor-widget.lz-b-linkbio__tagline { color: var(--lz-teks-redup); }
.elementor .elementor-widget.lz-b-linkbio__tagline p { margin: 0 0 var(--lz-jarak-4); }
.elementor .e-con.lz-b-linkbio__tautan { gap: var(--lz-jarak-3); margin: var(--lz-jarak-6) 0; }
.elementor .elementor-widget.lz-b-tautan .elementor-button {
	display: flex; align-items: center; justify-content: center; width: 100%; min-height: 56px; padding: 0 20px;
	border: 1px solid var(--lz-garis); border-radius: var(--lz-sudut); background: #fff; color: var(--lz-teks);
	font-family: var(--lz-fon); font-size: var(--lz-teks-dasar); font-weight: var(--lz-tebal-tebal); text-decoration: none;
}
.elementor .elementor-widget.lz-b-tautan .elementor-button:hover, .elementor .elementor-widget.lz-b-tautan .elementor-button:focus { border-color: var(--lz-hijau); background: #fff; color: var(--lz-hijau-tua); }
.elementor .elementor-widget.lz-b-tautan--utama .elementor-button, .elementor .elementor-widget.lz-b-tautan--utama .elementor-button:focus { border-color: transparent; background: var(--lz-emas); color: var(--lz-hijau-tua); }
.elementor .elementor-widget.lz-b-tautan--utama .elementor-button:hover { border-color: transparent; background: var(--lz-emas-terang); color: var(--lz-hijau-tua); }
.elementor .elementor-widget.lz-b-tautan .elementor-button:focus-visible { outline: 3px solid var(--lz-fokus); outline-offset: 2px; }
.elementor .elementor-widget.lz-b-linkbio__kaki { font-size: var(--lz-teks-mini); color: var(--lz-teks-redup); }
.elementor .elementor-widget.lz-b-linkbio__kaki p { margin: 0; }

@media (min-width: 768px) {
	.elementor .e-con.lz-b-kisi--visi { grid-template-columns: 1fr 1.4fr; gap: var(--lz-jarak-4); }
	.elementor .e-con.lz-b-kisi--4 { grid-template-columns: repeat(2, 1fr); gap: var(--lz-jarak-4); }
	.elementor .e-con.lz-b-ajakan { --padding-left: var(--lz-jarak-12); --padding-right: var(--lz-jarak-12); }
}
@media (min-width: 1024px) {
	.elementor .e-con.lz-b-kepala { --padding-top: var(--lz-jarak-12); --padding-bottom: var(--lz-jarak-12); }
	.elementor .e-con.lz-b-dua { grid-template-columns: 1.5fr 1fr; gap: var(--lz-jarak-12); align-items: start; }
	.elementor .e-con.lz-b-kisi--4 { grid-template-columns: repeat(4, 1fr); }
}
