/* ============================================================
   Tema Embayu — susun atur header, navigasi, laci dan footer.
   Token warna dan gaya kandungan datang dari mu-plugin
   embayu-identity (dicetak lewat dalam <head>).
   ============================================================ */

:root {
	--paper: #ffffff;
	--stone: #f6f5f2;
	--stone-2: #ebe9e4;
	--line: #e2e0da;
	--graphite: #22262a;
	--graphite-2: #2e3439;
	--slate: #55606b;
	--muted: #55606b;
	--sky: #8dafdc;
	--green: #62b200;
	--green-deep: #3f7a00;
	--radius: 6px;
	--wrap: 1080px;
}

* { box-sizing: border-box; }

body {
	margin: 0;
	background: var(--paper);
	color: var(--graphite);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 17px;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
}

.embayu-wrap {
	width: 100%;
	max-width: var(--wrap);
	margin: 0 auto;
	padding: 0 1.25rem;
}

.screen-reader-text,
.embayu-skip {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}

.embayu-skip:focus {
	position: fixed !important;
	top: .5rem;
	left: .5rem;
	width: auto;
	height: auto;
	clip: auto;
	padding: .7rem 1rem;
	background: var(--graphite);
	color: #fff;
	z-index: 200;
	border-radius: 3px;
}

/* ---------- Header ---------- */
.embayu-header {
	position: sticky;
	top: 0;
	z-index: 90;
	background: rgba(255, 255, 255, .97);
	backdrop-filter: saturate(180%) blur(8px);
	border-bottom: 1px solid var(--line);
}

.embayu-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	min-height: 72px;
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.embayu-brand { flex: 0 0 auto; display: flex; align-items: center; }

.custom-logo,
.embayu-brand img {
	max-height: 46px;
	width: auto;
	display: block;
}

.embayu-site-name {
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: -.01em;
	color: var(--graphite);
	text-decoration: none;
}

/* ---------- Navigasi ---------- */
.embayu-nav-wrap {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	margin-left: auto;
}

.embayu-nav,
.embayu-lang {
	display: flex;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.embayu-nav { gap: 1.35rem; }

.embayu-nav > li > a {
	display: inline-block;
	padding: .55rem 0;
	font-size: .82rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--graphite);
	text-decoration: none;
	border-bottom: 2px solid transparent;
}

.embayu-nav > li > a:hover { color: var(--green-deep); }

.embayu-nav > li.current-menu-item > a,
.embayu-nav > li.current_page_item > a {
	color: var(--green-deep);
	border-bottom-color: var(--green);
}

/* Item "Daftar" sebagai butang */
.embayu-nav > li.embayu-cta > a {
	background: var(--green-deep);
	color: #fff !important;
	border: 0;
	border-radius: 3px;
	padding: .55rem 1.05rem;
}

.embayu-nav > li.embayu-cta > a:hover { background: var(--graphite); }

/* ---------- Penukar bahasa ---------- */
.embayu-lang { gap: .15rem; }

.embayu-lang > li > a,
.embayu-lang > li > span {
	display: inline-block;
	padding: .35rem .45rem;
	font-size: .74rem;
	letter-spacing: .1em;
	color: var(--muted);
	text-decoration: none;
	border-radius: 2px;
}

.embayu-lang > li > a:hover { color: var(--green-deep); }

.embayu-lang > li.is-current > span {
	color: var(--graphite);
	font-weight: 700;
	border-bottom: 2px solid var(--green);
}

/* ---------- Butang burger (telefon) ---------- */
.embayu-burger {
	display: none;
	background: none;
	border: 0;
	padding: .5rem;
	margin: 0;
	cursor: pointer;
	color: var(--graphite);
}

.embayu-burger-box {
	display: block;
	width: 26px;
	height: 18px;
	position: relative;
}

.embayu-burger-box span {
	position: absolute;
	left: 0;
	right: 0;
	height: 2px;
	background: currentColor;
	border-radius: 1px;
	transition: transform .2s ease, opacity .2s ease, top .2s ease;
}

.embayu-burger-box span:nth-child(1) { top: 0; }
.embayu-burger-box span:nth-child(2) { top: 8px; }
.embayu-burger-box span:nth-child(3) { top: 16px; }

.embayu-burger[aria-expanded="true"] .embayu-burger-box span:nth-child(1) { top: 8px; transform: rotate(45deg); }
.embayu-burger[aria-expanded="true"] .embayu-burger-box span:nth-child(2) { opacity: 0; }
.embayu-burger[aria-expanded="true"] .embayu-burger-box span:nth-child(3) { top: 8px; transform: rotate(-45deg); }

/* ---------- Laci telefon ---------- */
.embayu-drawer {
	position: fixed;
	inset: 0 0 0 auto;
	width: min(86vw, 340px);
	background: var(--graphite);
	color: var(--stone);
	z-index: 120;
	overflow-y: auto;
	padding: 1rem 1.25rem 2rem;
	box-shadow: -18px 0 48px rgba(0, 0, 0, .35);
}

.embayu-drawer[hidden] { display: none; }

body.embayu-drawer-open { overflow: hidden; }

body.embayu-drawer-open::after {
	content: "";
	position: fixed;
	inset: 0;
	background: rgba(15, 17, 19, .55);
	z-index: 110;
}

.embayu-drawer-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: .9rem;
	margin-bottom: .6rem;
	border-bottom: 1px solid rgba(246, 245, 242, .16);
}

.embayu-drawer-title {
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--sky);
}

.embayu-drawer-close {
	background: none;
	border: 0;
	color: var(--stone);
	font-size: .78rem;
	letter-spacing: .08em;
	text-transform: uppercase;
	cursor: pointer;
	padding: .4rem .2rem;
}

.embayu-drawer-nav {
	list-style: none;
	margin: 0;
	padding: 0;
}

.embayu-drawer-nav > li > a {
	display: flex;
	align-items: center;
	min-height: 52px;
	padding: .4rem .1rem;
	color: var(--stone);
	text-decoration: none;
	font-size: 1.02rem;
	border-bottom: 1px solid rgba(246, 245, 242, .12);
}

.embayu-drawer-nav > li > a:hover { color: var(--green); }

.embayu-drawer .embayu-lang {
	margin-top: 1.5rem;
	padding-top: 1.1rem;
	border-top: 1px solid rgba(246, 245, 242, .16);
	gap: .5rem;
}

.embayu-drawer .embayu-lang > li > a,
.embayu-drawer .embayu-lang > li > span {
	border: 1px solid rgba(246, 245, 242, .25);
	border-radius: 3px;
	padding: .45rem .8rem;
	color: rgba(246, 245, 242, .75);
	font-size: .74rem;
}

.embayu-drawer .embayu-lang > li.is-current > span {
	border-color: var(--green);
	color: var(--green);
}

/* ---------- Kandungan ---------- */
.embayu-main { min-height: 40vh; }

.embayu-title {
	font-size: clamp(1.7rem, 3.6vw, 2.5rem);
	font-weight: 650;
	letter-spacing: -.02em;
	line-height: 1.18;
	margin: 2.25rem 0 1rem;
	color: var(--graphite);
}

.embayu-page .entry-content,
.embayu-post .entry-content {
	max-width: 78ch;
	padding-bottom: 3rem;
}

.embayu-404 { padding: 3rem 0 4rem; }

/* ---------- Footer shell ---------- */
.embayu-footer-shell {
	background: var(--graphite);
	color: rgba(246, 245, 242, .78);
	margin-top: 0;
}

/* ---------- Responsif ---------- */
@media (max-width: 980px) {
	.embayu-nav-wrap { display: none; }
	.embayu-burger { display: block; }
	.embayu-header-inner { min-height: 62px; }
	.custom-logo, .embayu-brand img { max-height: 38px; }
}

/* ---------- Elak menu berbalut pada desktop ---------- */
.embayu-nav > li > a,
.embayu-lang > li > a,
.embayu-lang > li > span {
	white-space: nowrap;
}

.embayu-header-inner,
.wp-block-group.embayu-header {
	flex-wrap: nowrap;
}

.embayu-nav { gap: 1.1rem; }

/* Tajuk laman dalam header mengambil ruang; sembunyikan pada skrin sederhana */
@media (max-width: 1240px) {
	.embayu-brand .wp-block-site-title { display: none; }
	.embayu-nav { gap: .9rem; }
	.embayu-nav > li > a { font-size: .78rem; letter-spacing: .06em; }
}

@media (max-width: 1024px) {
	.embayu-lang > li > a,
	.embayu-lang > li > span { padding: .3rem .3rem; font-size: .7rem; }
}

/* Butang burger kekal sorok di desktop walau tema blok tetapkan display */
@media (min-width: 981px) {
	#embayu-burger { display: none !important; }
}

/* ---------- Pembetulan susun atur (tema blok mengekang kandungan 640px) ---------- */
body { overflow-x: hidden; }

/* Hero keluar dari lajur kandungan supaya penuh lebar skrin.
   !important perlu kerana tema blok mengekang anak .is-layout-constrained. */
.wp-block-post-content .embayu-hero,
.embayu-main .embayu-hero,
.embayu-hero {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

/* Kandungan hero kekal sejajar dengan lajur 1080px */
.embayu-hero-inner {
	max-width: 1080px;
	margin: 0 auto;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
}

/* Tajuk 'Home' di atas hero tidak perlu */
body.home .wp-block-post-title,
body.home .embayu-main > h1:first-child {
	display: none;
}

/* Logo header */
.custom-logo { max-height: 56px !important; width: auto !important; }

/* Butang hero: lebar seimbang, lebih mudah ditekan */
.embayu-hero-cta { align-items: stretch; }

.embayu-hero-cta .embayu-btn,
.wp-block-post-content .embayu-hero-cta .embayu-btn {
	flex: 1 1 0;
	min-width: 210px;
	max-width: 260px;
	text-align: center;
	justify-content: center;
	display: inline-flex;
	align-items: center;
}

/* Alamat hero: elak pemecahan janggal */
.embayu-hero-sub {
	text-wrap: pretty;
	max-width: 42ch;
}

@media (max-width: 560px) {
	.embayu-hero-cta { flex-direction: column; align-items: stretch; }
	.embayu-hero-cta .embayu-btn { width: 100%; min-width: 0; }
	.embayu-hero-sub { font-size: .95rem; line-height: 1.55; }
}

/* Lajur kandungan tema blok: lebih lapang daripada 640px */
.wp-block-post-content,
.wp-block-group.embayu-main > .wp-block-post-content {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
}

/* Tema blok mewariskan warna putih kepada butang; ikon burger mesti arang. */
.embayu-burger,
.embayu-burger:focus,
.embayu-burger:active {
	color: var(--graphite) !important;
	background: transparent !important;
	border: 0 !important;
}

.embayu-burger .embayu-burger-box span {
	background-color: var(--graphite) !important;
	background-image: none !important;
}

/* ---------- Header pilihan B: logo di tengah, nav terbahagi ---------- */
.embayu-header-b {
	display: flex;
	align-items: center;
	gap: 1rem;
	min-height: 96px;
	padding: .55rem 1.25rem;
}

.embayu-header-b .embayu-nav-wrap { margin-left: 0; }

.embayu-header-b .embayu-nav-left,
.embayu-header-b .embayu-nav-right {
	flex: 1 1 0;
	display: flex;
	align-items: center;
	gap: 1.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.embayu-header-b .embayu-nav-right {
	justify-content: flex-end;
	margin-left: auto;
}

.embayu-header-b .embayu-nav > li > a {
	white-space: nowrap;
}

/* Lockup jenama */
.embayu-brand-b {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 7px;
	text-decoration: none;
	color: var(--graphite);
	flex: 0 0 auto;
	line-height: 1;
}

.embayu-brand-b .embayu-mark {
	display: block;
	width: 46px;
	height: 46px;
}

.embayu-brand-b .embayu-wm {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
}

.embayu-brand-b .embayu-wm b {
	font-size: 15px;
	letter-spacing: .24em;
	font-weight: 800;
	text-indent: .24em;
}

.embayu-brand-b .embayu-wm i {
	font-style: normal;
	font-size: 7.5px;
	letter-spacing: .3em;
	text-indent: .3em;
	color: var(--muted);
	font-weight: 700;
}

.embayu-brand-b:hover .embayu-wm b { color: var(--green-deep); }

/* Telefon: burger di kiri, logo di tengah, nav tersembunyi */
@media (max-width: 980px) {
	.embayu-header-b {
		min-height: 74px;
		padding: .4rem .9rem;
		justify-content: space-between;
	}

	.embayu-header-b .embayu-nav-left,
	.embayu-header-b .embayu-nav-right { display: none; }

	.embayu-header-b .embayu-burger {
		display: flex;
		order: -1;
		margin: 0 0 0 -.35rem;
	}

	.embayu-header-b .embayu-brand-b {
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
	}

	.embayu-header-b .embayu-brand-b .embayu-mark { width: 34px; height: 34px; }
	.embayu-header-b .embayu-brand-b .embayu-wm b { font-size: 12px; letter-spacing: .2em; text-indent: .2em; }
	.embayu-header-b .embayu-brand-b .embayu-wm i { font-size: 6.5px; letter-spacing: .24em; text-indent: .24em; }

	/* spacer supaya logo kekal di tengah */
	.embayu-header-b::after {
		content: "";
		display: block;
		width: 42px;
		order: 3;
	}
}

/* Telefon: header satu baris — burger kiri, logo tengah, penukar bahasa ke laci */
@media (max-width: 980px) {
	.wp-block-group.embayu-header.embayu-header-b {
		position: relative;
		flex-wrap: nowrap !important;
		align-items: center;
		justify-content: space-between;
		gap: .5rem;
	}

	.embayu-header-b .embayu-lang { display: none !important; }

	.embayu-header-b .embayu-brand-b {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
	}

	.embayu-header-b::after { display: none; }
}

/* Telefon: grid tiga lajur — burger | logo | ruang kosong, satu baris tepat */
@media (max-width: 980px) {
	.wp-block-group.embayu-header.embayu-header-b {
		display: grid !important;
		grid-template-columns: 48px 1fr 48px;
		align-items: center;
		min-height: 74px;
		padding: .4rem .9rem;
	}

	.embayu-header-b .embayu-burger-slot { grid-column: 1; justify-self: start; display: flex; }
	.embayu-header-b .embayu-brand-slot { grid-column: 2; justify-self: center; position: static; }
	.embayu-header-b .embayu-brand-b { position: static; transform: none; }
	.embayu-header-b .embayu-nav-left,
	.embayu-header-b .embayu-nav-right { display: none !important; }
	.embayu-header-b .embayu-lang { display: none !important; }
}

@media (max-width: 980px) {
	.embayu-header-b .embayu-brand-b { gap: 5px; }
	.embayu-header-b .embayu-brand-b .embayu-mark { width: 30px; height: 30px; }
	.embayu-header-b .embayu-brand-b .embayu-wm { gap: 3px; }
	.embayu-header-b .embayu-brand-b .embayu-wm b { font-size: 11px; letter-spacing: .18em; text-indent: .18em; }
	.embayu-header-b .embayu-brand-b .embayu-wm i { font-size: 6px; letter-spacing: .22em; text-indent: .22em; }
}

/* ---------- Chat gaya WhatsApp ---------- */
.embayu-chat.embayu-chat-app {
	max-width: 760px;
	margin: 0 auto;
	padding: 0;
	border: 1px solid var(--line);
	border-radius: 12px;
	overflow: hidden;
	background: #efeae2;
	box-shadow: 0 14px 38px rgba(20, 24, 28, .08);
}

.embayu-chat .wa-top {
	display: flex;
	align-items: center;
	gap: .7rem;
	padding: .7rem .9rem;
	background: var(--graphite);
	color: #fff;
}

.embayu-chat .wa-ava {
	width: 38px; height: 38px; flex: 0 0 38px;
	border-radius: 50%;
	background: rgba(98, 178, 0, .2);
	color: #cbe8a9;
	display: grid; place-items: center;
}

.embayu-chat .wa-ava svg { width: 22px; height: 22px; }

.embayu-chat .wa-id { display: flex; flex-direction: column; line-height: 1.3; min-width: 0; }
.embayu-chat .wa-title { font-size: .95rem; font-weight: 700; }
.embayu-chat .wa-sub { font-size: .72rem; color: rgba(255, 255, 255, .72); }

.embayu-chat .wa-live {
	width: 9px; height: 9px; border-radius: 50%;
	background: var(--green); margin-left: auto;
	box-shadow: 0 0 0 3px rgba(98, 178, 0, .22);
}

.embayu-chat .wa-log {
	height: min(430px, 54vh);
	min-height: 260px;
	overflow-y: auto;
	padding: 1rem .85rem 1.2rem;
	display: flex;
	flex-direction: column;
	gap: .32rem;
	background-color: #efeae2;
	background-image: radial-gradient(rgba(0, 0, 0, .035) 1px, transparent 1px);
	background-size: 18px 18px;
}

.embayu-chat .wa-day {
	align-self: center;
	background: #fff;
	color: var(--slate);
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	padding: .28rem .75rem;
	border-radius: 999px;
	margin: .45rem 0 .55rem;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .09);
}

.embayu-chat .wa-msg { display: flex; }
.embayu-chat .wa-msg.wa-out { justify-content: flex-end; }

.embayu-chat .wa-bubble {
	position: relative;
	max-width: min(78%, 520px);
	padding: .48rem .65rem .38rem;
	border-radius: 10px;
	font-size: .94rem;
	line-height: 1.45;
	box-shadow: 0 1px 1px rgba(0, 0, 0, .09);
	overflow-wrap: anywhere;
}

.embayu-chat .wa-in .wa-bubble { background: #fff; border-top-left-radius: 3px; }
.embayu-chat .wa-out .wa-bubble { background: #dcf8c6; border-top-right-radius: 3px; }

.embayu-chat .wa-from {
	display: block;
	font-size: .72rem;
	font-weight: 800;
	color: var(--green-deep);
	margin-bottom: .12rem;
}

.embayu-chat .wa-text { display: block; white-space: pre-wrap; }

.embayu-chat .wa-time {
	float: right;
	margin: .18rem 0 -.1rem .55rem;
	font-size: .66rem;
	color: #6f7d6f;
	display: inline-flex;
	align-items: center;
	gap: .2rem;
}

.embayu-chat .wa-tick::before { content: "✓✓"; color: #4a9c2a; font-size: .72rem; letter-spacing: -.1em; }

.embayu-chat .wa-form {
	display: none;
	align-items: center;
	gap: .5rem;
	padding: .55rem .65rem;
	background: #f0f2f5;
	border-top: 1px solid rgba(0, 0, 0, .06);
}

.embayu-chat .wa-form.is-live { display: flex; }

.embayu-chat .wa-form input {
	flex: 1;
	min-width: 0;
	border: 0;
	border-radius: 22px;
	padding: .72rem 1rem;
	font-size: 1rem;
	background: #fff;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, .06);
}

.embayu-chat .wa-form input:focus { outline: 2px solid rgba(98, 178, 0, .5); outline-offset: 1px; }

.embayu-chat .wa-form button {
	width: 44px; height: 44px; flex: 0 0 44px;
	border: 0; border-radius: 50%;
	background: var(--green-deep);
	color: #fff;
	display: grid; place-items: center;
	cursor: pointer;
}

.embayu-chat .wa-form button svg { width: 20px; height: 20px; fill: currentColor; }
.embayu-chat .wa-form button:hover { background: var(--graphite); }

.embayu-chat .wa-fine {
	margin: 0;
	padding: .5rem .8rem .7rem;
	font-size: .72rem;
	color: var(--slate);
	background: #f0f2f5;
	text-align: center;
}

.embayu-chat .wa-empty {
	margin: auto;
	max-width: 32ch;
	text-align: center;
	color: #5f6d5f;
	font-size: .9rem;
	line-height: 1.5;
	background: #fff;
	padding: .9rem 1rem;
	border-radius: 10px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .07);
}

@media (max-width: 560px) {
	.embayu-chat .wa-log { height: min(58vh, 460px); min-height: 220px; padding: .8rem .6rem 1rem; }
	.embayu-chat .wa-bubble { max-width: 86%; font-size: .93rem; }
	.embayu-chat .wa-form { padding: .45rem .5rem; }
	.embayu-chat .wa-form button { width: 42px; height: 42px; flex-basis: 42px; }
}

.embayu-chat .wa-form button:disabled {
	background: #b9c3b3;
	cursor: default;
	opacity: .85;
}

/* Telefon: lockup mendatar — ikon di kiri, nama di kanan, satu baris rendah */
@media (max-width: 980px) {
	.embayu-header-b .embayu-brand-b {
		flex-direction: row;
		align-items: center;
		gap: 8px;
	}

	.embayu-header-b .embayu-brand-b .embayu-mark { width: 26px; height: 26px; }

	.embayu-header-b .embayu-brand-b .embayu-wm {
		align-items: flex-start;
		gap: 2px;
	}

	.embayu-header-b .embayu-brand-b .embayu-wm b {
		font-size: 11px;
		letter-spacing: .16em;
		text-indent: 0;
		line-height: 1;
	}

	.embayu-header-b .embayu-brand-b .embayu-wm i {
		font-size: 5.8px;
		letter-spacing: .2em;
		text-indent: 0;
		line-height: 1;
	}

	.wp-block-group.embayu-header.embayu-header-b { min-height: 64px; }
}

@media (max-width: 980px) {
	.embayu-header-b .embayu-brand-b .embayu-mark { width: 23px; height: 23px; }
	.embayu-header-b .embayu-brand-b .embayu-wm b { font-size: 10.5px; }
	.embayu-header-b .embayu-brand-b .embayu-wm i { font-size: 5.5px; }
}

/* Laman hadapan: hero mesti rapat di bawah header.
   Tema blok memberi margin 24px pada .embayu-main dan pada .wp-block-post-content;
   dua margin itu bertindan menjadi ~49px ruang putih di bawah header. */
body.home .wp-block-group.embayu-main,
body.home .wp-block-post-content {
	margin-top: 0 !important;
}

body.home .wp-block-post-content > .embayu-hero:first-child {
	margin-top: 0 !important;
}

/* ---------- Footer gaya A: satu baris + bar halus ---------- */
.embayu-footer.embayu-footer-a {
	background: #fff;
	border-top: 1px solid var(--line);
	padding: 0;
	margin-top: 3rem;
}

.embayu-footer-a .efa-row {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	flex-wrap: wrap;
	max-width: 1140px;
	margin: 0 auto;
	padding: 1.05rem 1.5rem;
}

.embayu-footer-a .efa-brand {
	display: flex;
	align-items: center;
	gap: .5rem;
	text-decoration: none;
	color: var(--graphite);
}

.embayu-footer-a .efa-mark { width: 26px; height: 26px; display: block; }

.embayu-footer-a .efa-word {
	font-size: .74rem;
	letter-spacing: .2em;
	font-weight: 800;
	line-height: 1;
}

.embayu-footer-a .efa-word i {
	display: block;
	font-style: normal;
	font-size: .4rem;
	letter-spacing: .24em;
	color: var(--muted);
	margin-top: 3px;
}

.embayu-footer-a .efa-nav {
	display: flex;
	align-items: center;
	gap: 1.4rem;
	list-style: none;
	margin: 0 0 0 auto;
	padding: 0;
}

.embayu-footer-a .efa-nav li { margin: 0; }

.embayu-footer-a .efa-nav a {
	font-size: .78rem;
	color: var(--slate);
	text-decoration: none;
}

.embayu-footer-a .efa-nav a:hover { color: var(--green-deep); }

.embayu-footer-a .efa-lang { display: flex; gap: .3rem; }

.embayu-footer-a .efa-lang a,
.embayu-footer-a .efa-lang .is-current span {
	font-size: .64rem;
	font-weight: 700;
	letter-spacing: .06em;
	color: var(--muted);
	text-decoration: none;
	padding: .22rem .4rem;
	border-radius: 3px;
}

.embayu-footer-a .efa-lang a:hover { color: var(--green-deep); }

.embayu-footer-a .efa-lang .is-current span {
	background: var(--stone);
	color: var(--graphite);
}

.embayu-footer-a .efa-bar {
	border-top: 1px solid var(--line);
	max-width: 1140px;
	margin: 0 auto;
	padding: .6rem 1.5rem .85rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
	font-size: .7rem;
	color: var(--muted);
}

.embayu-footer-a .efa-legal {
	display: flex;
	gap: .9rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.embayu-footer-a .efa-legal a { color: var(--muted); text-decoration: none; }
.embayu-footer-a .efa-legal a:hover { color: var(--green-deep); }

@media (max-width: 760px) {
	.embayu-footer-a .efa-row {
		flex-direction: column;
		align-items: flex-start;
		gap: .9rem;
		padding: .95rem 1.15rem;
	}

	.embayu-footer-a .efa-nav { margin: 0; flex-wrap: wrap; gap: 1rem; }
	.embayu-footer-a .efa-bar { flex-direction: column; align-items: flex-start; gap: .35rem; padding: .6rem 1.15rem .9rem; }
}

/* ================= Gaya laman hadapan: "Segar" ================= */
.embayu-hero3 { padding: 2.2rem 0 .6rem; background: #fff; }
.embayu-hero3 .embayu-h3-card {
	position: relative;
	max-width: 1160px;
	margin: 0 auto;
	border-radius: 20px;
	overflow: hidden;
	padding: 4rem 3.2rem;
	color: #fff;
	background: linear-gradient(135deg, #16202b 0%, #2b465c 52%, #6f93b8 100%);
}
.embayu-hero3 .embayu-h3-orb {
	position: absolute;
	right: -90px; bottom: -150px;
	width: 420px; height: 420px; border-radius: 50%;
	background: radial-gradient(circle at 30% 30%, rgba(141,175,220,.55), transparent 65%);
}
.embayu-hero3 .embayu-h3-kick {
	margin: 0 0 .9rem; font-size: .7rem; letter-spacing: .24em;
	text-transform: uppercase; font-weight: 800; color: #cfe3f7;
}
.embayu-hero3 h1 {
	margin: 0 0 1rem; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.07;
	letter-spacing: -.025em; max-width: 17ch; color: #fff;
}
.embayu-hero3 .embayu-h3-lede {
	margin: 0 0 1.8rem; max-width: 46ch; color: rgba(255,255,255,.8);
}
.embayu-hero3 .embayu-h3-act { display: flex; gap: .7rem; flex-wrap: wrap; margin: 0; }

.embayu-btn3 {
	display: inline-flex; align-items: center; gap: .5rem;
	font-size: .82rem; font-weight: 700; padding: .8rem 1.35rem;
	border-radius: 999px; text-decoration: none; border: 1px solid transparent;
	transition: transform .12s ease;
}
.embayu-btn3:hover { transform: translateY(-1px); }
.embayu-btn3-solid { background: #fff; color: #16202b !important; }
.embayu-btn3-ghost { background: transparent; border-color: rgba(255,255,255,.45); color: #fff !important; }

.embayu-quick { background: #fff; padding: .6rem 0 .2rem; }
.embayu-quick-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: .9rem; }
.embayu-q3 {
	display: flex; align-items: center; gap: .75rem; padding: 1rem 1.1rem;
	border: 1px solid var(--line); border-radius: 12px; text-decoration: none; color: var(--graphite);
	background: #fff;
}
.embayu-q3:hover { border-color: #c9d4e0; box-shadow: 0 6px 18px rgba(20,26,32,.05); }
.embayu-q3-ico {
	width: 36px; height: 36px; border-radius: 10px; background: var(--stone);
	display: grid; place-items: center; color: var(--slate); font-size: 1rem; flex: 0 0 36px;
}
.embayu-q3 b { display: block; font-size: .84rem; }
.embayu-q3 span span { font-size: .72rem; color: var(--muted); }

.embayu-band3 { background: #fff; padding: 3.4rem 0; }
.embayu-s3-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.4rem; }
.embayu-s3-head h2 { font-size: 1.85rem; margin: 0; letter-spacing: -.02em; }
.embayu-s3-head a { font-size: .8rem; color: var(--green-deep); text-decoration: none; font-weight: 600; }
.embayu-cards3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.embayu-c3 {
	border: 1px solid var(--line); border-radius: 12px; padding: 1.35rem;
	text-decoration: none; color: var(--graphite); background: #fff;
}
.embayu-c3:hover { border-color: #c9d4e0; box-shadow: 0 10px 26px rgba(20,26,32,.06); }
.embayu-tag3 {
	display: inline-block; font-size: .62rem; font-weight: 800; letter-spacing: .12em;
	text-transform: uppercase; color: var(--green-deep); background: #eef7e2;
	padding: .25rem .55rem; border-radius: 999px; margin-bottom: .7rem;
}
.embayu-c3 h3 { margin: 0 0 .4rem; font-size: 1rem; }
.embayu-c3 p { margin: 0; font-size: .82rem; color: var(--slate); }

.embayu-band3-dark { padding: 0; background: #fff; }
.embayu-band3-dark .embayu-wrap { padding-bottom: 3.4rem; }
.embayu-d3-grid {
	background: var(--graphite); color: #fff; border-radius: 20px;
	padding: 2.6rem 2.8rem; display: grid; grid-template-columns: 1.1fr .9fr;
	gap: 2.2rem; align-items: center;
}
.embayu-d3-grid h2 { color: #fff; margin: 0 0 .8rem; font-size: 1.8rem; letter-spacing: -.02em; line-height: 1.2; }
.embayu-d3-grid p { margin: 0; color: rgba(255,255,255,.72); }
.embayu-d3-stats { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; }
.embayu-d3-stats div { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); border-radius: 10px; padding: .9rem; }
.embayu-d3-stats b { display: block; font-size: 1.4rem; }
.embayu-d3-stats span { font-size: .62rem; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.55); }

@media (max-width: 900px) {
	.embayu-hero3 .embayu-h3-card { padding: 2.4rem 1.4rem; border-radius: 16px; }
	.embayu-quick-row { grid-template-columns: 1fr 1fr; }
	.embayu-cards3 { grid-template-columns: 1fr; }
	.embayu-d3-grid { grid-template-columns: 1fr; padding: 1.8rem 1.5rem; border-radius: 16px; }
}
@media (max-width: 560px) {
	.embayu-quick-row { grid-template-columns: 1fr; }
}
/* Rapatkan jalur arang ke footer — elak ruang putih besar */
.embayu-band3-dark .embayu-wrap { padding-bottom: 2.2rem; }
.embayu-footer.embayu-footer-a { margin-top: 0; }

/* Footer template part bawa padding 56px — buang, footer A sudah ada ruang sendiri */
footer.wp-block-template-part,
.wp-block-template-part.embayu-footer-shell,
.embayu-footer-shell { padding-top: 0 !important; }

.wp-block-group.embayu-footer-shell { padding-top: 0 !important; }

/* ================= Gaya "Segar" untuk halaman dalaman ================= */
.embayu-main,
.embayu-main.wp-block-group {
	padding-top: 2.6rem;
}

.embayu-main .wp-block-post-title,
body:not(.home) .wp-block-post-title {
	font-size: clamp(1.9rem, 3.2vw, 2.55rem);
	line-height: 1.12;
	letter-spacing: -.025em;
	margin: 0 0 .5rem;
}

/* perenggan pembuka */
.embayu-main .wp-block-post-content > p:first-child {
	font-size: 1.06rem;
	color: var(--slate);
	max-width: 68ch;
}

.embayu-main .wp-block-post-content h2 {
	margin-top: 2.6rem;
	font-size: 1.45rem;
	letter-spacing: -.015em;
}

.embayu-main .wp-block-post-content h3 {
	margin-top: 1.8rem;
	font-size: 1.08rem;
	letter-spacing: -.005em;
}

.embayu-main .wp-block-post-content p,
.embayu-main .wp-block-post-content li {
	max-width: 72ch;
	color: #3f4a54;
}

/* jadual: garis halus, kepala kelabu */
.embayu-main .wp-block-table table {
	border-collapse: collapse;
	width: 100%;
	font-size: .92rem;
}

.embayu-main .wp-block-table th,
.embayu-main .wp-block-table td {
	border: 1px solid var(--line);
	padding: .6rem .75rem;
	vertical-align: top;
}

.embayu-main .wp-block-table thead th {
	background: var(--stone);
	text-align: left;
	font-size: .78rem;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--slate);
}

/* imej pelan: kad lembut */
.embayu-main .wp-block-image img {
	border: 1px solid var(--line);
	border-radius: 12px;
	background: #fff;
}

.embayu-main .wp-block-image figcaption {
	font-size: .74rem;
	color: var(--muted);
	margin-top: .5rem;
}

/* senarai lipat (FAQ, peraturan) */
.embayu-main details.wp-block-details {
	border: 1px solid var(--line);
	border-radius: 12px;
	padding: .85rem 1.1rem;
	margin: 0 0 .6rem;
	background: #fff;
}

.embayu-main details.wp-block-details[open] {
	border-color: #c9d4e0;
	box-shadow: 0 8px 22px rgba(20,26,32,.05);
}

.embayu-main details.wp-block-details summary {
	cursor: pointer;
	font-weight: 700;
	font-size: .95rem;
	list-style: none;
}

.embayu-main details.wp-block-details summary::-webkit-details-marker { display: none; }

.embayu-main details.wp-block-details summary:before {
	content: "+";
	display: inline-block;
	width: 1.1rem;
	color: var(--green-deep);
	font-weight: 800;
}

.embayu-main details.wp-block-details[open] summary:before { content: "–"; }

/* pautan dalam kandungan */
.embayu-main .wp-block-post-content a {
	color: var(--green-deep);
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

/* jalur arkib kekal tetapi lebih lembut */
.embayu-main .embayu-note,
.embayu-main .embayu-archive-note {
	background: var(--stone);
	border-left: 3px solid var(--green);
	border-radius: 0 10px 10px 0;
	padding: .9rem 1.1rem;
	font-size: .88rem;
	color: var(--slate);
}

@media (max-width: 760px) {
	.embayu-main { padding-top: 1.6rem; }
	.embayu-main .wp-block-post-content h2 { margin-top: 2rem; }
}

/* ================= Laman hadapan: "Manual" (design 1) ================= */
.embayu-hero-d1 { background: #fff; border-bottom: 1px solid var(--line); padding: 3.6rem 0 2.8rem; }
.embayu-d1-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 3.4rem; align-items: start; }
.embayu-d1-kick { font-size: .7rem; letter-spacing: .22em; text-transform: uppercase; color: #3b5a74; font-weight: 800; margin: 0 0 .9rem; }
.embayu-d1-h1 {
	font-family: "Source Serif 4", Georgia, "Times New Roman", serif;
	font-size: clamp(2.1rem, 4.2vw, 3.25rem); line-height: 1.06; letter-spacing: -.02em;
	margin: 0 0 1.1rem; color: #101820;
}
.embayu-d1-lede { font-size: 1.02rem; color: #414c57; max-width: 52ch; margin: 0 0 1.6rem; }
.embayu-d1-act { display: flex; gap: .7rem; flex-wrap: wrap; margin: 0; }
.embayu-d1-btn {
	display: inline-block; font-size: .78rem; letter-spacing: .1em; text-transform: uppercase;
	font-weight: 700; padding: .85rem 1.4rem; text-decoration: none;
	border: 1px solid #101820; color: #101820;
}
.embayu-d1-btn:hover { background: #101820; color: #fff !important; }
.embayu-d1-btn-solid { background: #3b5a74; border-color: #3b5a74; color: #fff !important; }
.embayu-d1-btn-solid:hover { background: #101820; border-color: #101820; }

.embayu-toc { border: 1px solid var(--line); }
.embayu-toc h2 {
	margin: 0; padding: .85rem 1.1rem; border-bottom: 1px solid var(--line);
	font-size: .66rem; letter-spacing: .2em; text-transform: uppercase; color: #55606b; font-weight: 800;
}
.embayu-toc ol { list-style: none; margin: 0; padding: .3rem 0; }
.embayu-toc li { border-bottom: 1px solid #f0efec; }
.embayu-toc li:last-child { border-bottom: 0; }
.embayu-toc a { display: flex; justify-content: space-between; gap: .9rem; padding: .7rem 1.1rem; text-decoration: none; color: #101820; font-size: .88rem; }
.embayu-toc a em { font-style: normal; color: #7b8794; font-size: .74rem; }
.embayu-toc a:hover { background: #f7f7f5; }

.embayu-sec-d1 { background: #fff; border-bottom: 1px solid var(--line); padding: 3.2rem 0; }
.embayu-shead-d1 { display: flex; align-items: baseline; gap: 1.1rem; margin-bottom: 1.5rem; }
.embayu-shead-d1 span { font-size: .72rem; letter-spacing: .16em; color: #8dafdc; font-weight: 800; }
.embayu-shead-d1 h2 {
	font-family: "Source Serif 4", Georgia, serif; font-size: 1.6rem; margin: 0; letter-spacing: -.01em; color: #101820;
}
.embayu-cards-d1 { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.embayu-cd1 { padding: 1.5rem 1.4rem 1.7rem; border-right: 1px solid var(--line); text-decoration: none; color: inherit; }
.embayu-cd1:last-child { border-right: 0; }
.embayu-cd1:hover { background: #f7f7f5; }
.embayu-cd1 h3 { margin: 0 0 .45rem; font-size: 1rem; color: #101820; }
.embayu-cd1 p { margin: 0; font-size: .86rem; color: #4a5764; line-height: 1.6; }

.embayu-dark-d1 { background: #101820; color: #fff; padding: 3.2rem 0; }
.embayu-dark-d1 h2 {
	font-family: "Source Serif 4", Georgia, serif; font-size: 1.85rem; margin: 0 0 .8rem;
	letter-spacing: -.015em; color: #fff;
}
.embayu-dark-d1 p { margin: 0; color: rgba(255,255,255,.86); max-width: 62ch; }

@media (max-width: 900px) {
	.embayu-d1-grid { grid-template-columns: 1fr; gap: 2rem; }
	.embayu-cards-d1 { grid-template-columns: 1fr; }
	.embayu-cd1 { border-right: 0; border-bottom: 1px solid var(--line); }
	.embayu-cd1:last-child { border-bottom: 0; }
	.embayu-hero-d1 { padding: 2.2rem 0 2rem; }
}
/* Kontras butang hero design 1 — `.wp-block-post-content a` (0,3,1) mengalahkan
   `.embayu-d1-btn` (0,1,0), menyebabkan teks hijau atas latar biru. */
.embayu-hero-d1 .embayu-d1-btn {
	background: #fff !important;
	color: #101820 !important;
	border-color: #101820 !important;
}
.embayu-hero-d1 .embayu-d1-btn:hover {
	background: #101820 !important;
	color: #fff !important;
}
.embayu-hero-d1 .embayu-d1-btn-solid {
	background: #3b5a74 !important;
	border-color: #3b5a74 !important;
	color: #fff !important;
}
.embayu-hero-d1 .embayu-d1-btn-solid:hover {
	background: #101820 !important;
	border-color: #101820 !important;
}

/* Kontras: peraturan kandungan global (0,3,1) mengalahkan komponen; naikkan spesifisiti */
.wp-block-post-content .embayu-dark-d1 p,
.embayu-dark-d1 p { color: rgba(255,255,255,.9) !important; }
.wp-block-post-content .embayu-toc a em { color: #55606b !important; }
.wp-block-post-content .embayu-shead-d1 span { color: #3b5a74 !important; }

/* ---------- Pembetulan kontras (audit WCAG) ---------- */
/* 1. Butang muat turun PDF: teks hijau atas latar hijau */
.wp-block-post-content .wp-block-file__button,
.wp-block-file__button {
	background: var(--green-deep) !important;
	color: #fff !important;
}

/* 2. Sel kepala jadual: teks putih atas latar putih */
.embayu-main .wp-block-table th,
.wp-block-post-content .wp-block-table th {
	background: var(--stone) !important;
	color: var(--graphite) !important;
	font-weight: 700;
}

/* 3. Kepala senarai forum bbPress: teks gelap atas latar arang */
#bbpress-forums li.bbp-header,
#bbpress-forums li.bbp-header li,
#bbpress-forums .bbp-header .bbp-forum-info,
#bbpress-forums .bbp-header .bbp-forum-topic-count,
#bbpress-forums .bbp-header .bbp-forum-reply-count,
#bbpress-forums .bbp-header .bbp-forum-freshness {
	color: #fff !important;
}

#bbpress-forums li.bbp-header a { color: #fff !important; }

/* 4. Teks keterangan forum terlalu cerah */
#bbpress-forums div.bbp-forum-content { color: #55606b !important; }
#bbpress-forums .bbp-topic-freshness-author,
#bbpress-forums .bbp-forum-freshness .bbp-topic-freshness-author,
#bbpress-forums .bbp-topic-meta,
#bbpress-forums .bbp-topic-freshness-author a { color: #55606b !important; }
.embayu-brand-b span, .embayu-brand-b small, .embayu-brand-b em {
	color: #55606b !important;
}
.embayu-brand-b span:last-child, .embayu-brand-b small {
	font-size: 7.5px !important;
	letter-spacing: .22em !important;
}

/* ================= LEBAR PENUH SEKSYEN (desktop) =================
   `.is-layout-constrained > *` mengehadkan setiap blok kepada lebar kandungan
   lalai (~640px), jadi seksyen laman hadapan terapung di tengah skrin lebar.
   Lepaskan had itu untuk seksyen kita sahaja; teks masih terhad kepada 72ch. */
.entry-content.is-layout-constrained > .embayu-hero-d1,
.entry-content.is-layout-constrained > .embayu-sec-d1,
.entry-content.is-layout-constrained > .embayu-dark-d1,
.entry-content > .embayu-hero-d1,
.entry-content > .embayu-sec-d1,
.entry-content > .embayu-dark-d1 {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

@media (min-width: 981px) {
	.embayu-hero-d1 { padding: 4.4rem 0 3.6rem; }
	.embayu-sec-d1 { padding: 4rem 0; }
	.embayu-dark-d1 { padding: 4rem 0; }
	.embayu-d1-grid { gap: 4.5rem; }
	.embayu-d1-h1 { font-size: clamp(2.6rem, 3.6vw, 3.6rem); }
	.embayu-d1-lede { font-size: 1.08rem; }
	.embayu-cd1 { padding: 2rem 1.9rem 2.2rem; }
	.embayu-cd1 h3 { font-size: 1.12rem; }
	.embayu-cd1 p { font-size: .92rem; line-height: 1.65; }
	.embayu-shead-d1 { margin-bottom: 1.9rem; }
	.embayu-shead-d1 h2 { font-size: 1.85rem; }
	.embayu-dark-d1 h2 { font-size: 2.1rem; }
	.embayu-toc a { padding: .85rem 1.25rem; font-size: .92rem; }
	.embayu-toc h2 { padding: 1rem 1.25rem; }
}

/* ================= POLISH DESKTOP ================= */
@media (min-width: 981px) {
	/* Header: 171px terlalu tebal untuk desktop */
	.embayu-header-b {
		min-height: 0 !important;
		padding: .85rem 1.25rem !important;
		gap: 1.25rem !important;
	}

	.embayu-header-b .embayu-brand-b { gap: 5px !important; }
	.embayu-header-b .embayu-brand-b .embayu-mark { width: 36px !important; height: 36px !important; }
	.embayu-header-b .embayu-brand-b .embayu-wm b { font-size: 14px !important; letter-spacing: .24em !important; }
	.embayu-header-b .embayu-brand-b .embayu-wm i { font-size: 7px !important; letter-spacing: .26em !important; }

	/* Jalur gelap: biar penuh dari tepi ke tepi, bukan blok terapung */
	.embayu-dark-d1 {
		width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		padding: 4.6rem 0 !important;
	}

	.embayu-dark-d1 .embayu-wrap {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}

	.embayu-sec-d1 { padding: 3.4rem 0 !important; }
}

html { overflow-x: clip; }

/* JALUR GELAP PENUH: naikkan spesifisiti melebihi `.entry-content.is-layout-constrained > *` */
@media (min-width: 981px) {
	.entry-content > .embayu-dark-d1,
	.entry-content.is-layout-constrained > .embayu-dark-d1,
	.wp-block-post-content > .embayu-dark-d1 {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(50% - 50vw) !important;
		margin-right: calc(50% - 50vw) !important;
		padding: 4.6rem 0 !important;
	}

	.entry-content > .embayu-dark-d1 .embayu-wrap,
	.wp-block-post-content > .embayu-dark-d1 .embayu-wrap {
		max-width: 1080px;
		margin: 0 auto;
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}
}

/* ================= HALAMAN DALAMAN: LEBAR =================
   `.is-layout-constrained > *` (0,2,1) mengehadkan setiap blok kepada 640px.
   Peraturan di bawah mesti guna spesifisiti yang sama atau lebih tinggi,
   jika tidak `max-width:none !important` akan mengalahkannya. */
@media (min-width: 981px) {
	/* Lepaskan had 640px untuk semua blok dalam kandungan */
	.entry-content.is-layout-constrained > *,
	.wp-block-post-content.is-layout-constrained > * {
		max-width: none !important;
	}

	/* Teks: ukuran bacaan yang selesa, rata kiri */
	.entry-content.is-layout-constrained > p,
	.entry-content.is-layout-constrained > ul,
	.entry-content.is-layout-constrained > ol,
	.entry-content.is-layout-constrained > h2,
	.entry-content.is-layout-constrained > h3,
	.entry-content.is-layout-constrained > h4,
	.entry-content.is-layout-constrained > blockquote,
	.entry-content.is-layout-constrained > .wp-block-details,
	.wp-block-post-content.is-layout-constrained > p,
	.wp-block-post-content.is-layout-constrained > h2,
	.wp-block-post-content.is-layout-constrained > h3 {
		max-width: 74ch !important;
		margin-left: 0 !important;
		margin-right: auto !important;
	}

	/* Imej pelan/dokumen: besar tetapi tidak melimpah */
	.entry-content.is-layout-constrained > .wp-block-image,
	.wp-block-post-content.is-layout-constrained > .wp-block-image {
		max-width: 860px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	.entry-content.is-layout-constrained > .wp-block-image img,
	.wp-block-post-content.is-layout-constrained > .wp-block-image img {
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
	}

	/* Jadual: penuh bekas supaya lajur tidak berhimpit */
	.entry-content.is-layout-constrained > .wp-block-table,
	.wp-block-post-content.is-layout-constrained > .wp-block-table {
		max-width: 100% !important;
	}

	.entry-content.is-layout-constrained > .wp-block-table table,
	.wp-block-post-content.is-layout-constrained > .wp-block-table table {
		width: 100% !important;
	}

	/* Tajuk halaman: dalam `.embayu-main`, bukan dalam `.entry-content` */
	.embayu-main.is-layout-constrained > .wp-block-post-title,
	.embayu-main.is-layout-constrained > .wp-block-group > .wp-block-post-title {
		max-width: 1080px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	/* Tajuk halaman dalaman: sama lebar dengan bekas kandungan (1080px) */
	.embayu-main .wp-block-post-title {
		max-width: 1080px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}

/* bbPress: baris forum guna flex supaya latar kepala dan baris mengisi 100%
   (float + tiada clearfix menyebabkan baris berhenti pada ~700px daripada 1080px). */
@media (min-width: 981px) {
	#bbpress-forums ul.forum-titles,
	#bbpress-forums li.bbp-body > ul {
		display: flex !important;
		align-items: center !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	#bbpress-forums ul.forum-titles li,
	#bbpress-forums li.bbp-body > ul > li {
		float: none !important;
		display: block !important;
		width: auto !important;
		padding: .85rem 1rem !important;
		box-sizing: border-box !important;
	}

	#bbpress-forums li.bbp-forum-info,
	#bbpress-forums li.bbp-topic-title { flex: 1 1 auto !important; min-width: 0 !important; }

	#bbpress-forums li.bbp-forum-topic-count,
	#bbpress-forums li.bbp-forum-reply-count,
	#bbpress-forums li.bbp-topic-voice-count,
	#bbpress-forums li.bbp-topic-reply-count { flex: 0 0 84px !important; text-align: center !important; }

	#bbpress-forums li.bbp-forum-freshness,
	#bbpress-forums li.bbp-topic-freshness { flex: 0 0 190px !important; text-align: right !important; }

	#bbpress-forums #bbp-search-form { float: right; width: 320px; }
	#bbpress-forums #bbp-search-form #bbp_search { width: 210px; }
}

/* bbPress: li pembalut (.bbp-header / .bbp-body) sendiri ada lebar 63% */
@media (min-width: 981px) {
	#bbpress-forums li.bbp-header,
	#bbpress-forums li.bbp-body,
	#bbpress-forums ul.bbp-forums,
	#bbpress-forums ul.bbp-topics,
	#bbpress-forums ul.bbp-search-results {
		width: 100% !important;
		max-width: 100% !important;
		clear: both !important;
	}
}

/* Kad peraturan/FAQ: sedikit lebih lebar daripada teks supaya tidak terasa sempit */
@media (min-width: 981px) {
	.entry-content.is-layout-constrained > .wp-block-details,
	.wp-block-post-content.is-layout-constrained > .wp-block-details,
	.entry-content > .wp-block-details {
		max-width: 860px !important;
	}

	/* Kandungan dalam laci kad kekal pada ukuran bacaan */
	.entry-content .wp-block-details p,
	.entry-content .wp-block-details li { max-width: 72ch; }
}

/* ================= KAD CHATBOX DUA KOLUM (desktop) =================
   Versi pertama guna `grid-template-areas` dengan dua item berkongsi satu
   kawasan ("text"), jadi perenggan dan baris status bertindih. Kini:
   semua teks di lajur 1 (baris automatik), tindakan di lajur 2. */
@media (min-width: 981px) {
	.embayu-chat.embayu-chat-guest {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 320px !important;
		column-gap: 3.2rem !important;
		row-gap: .85rem !important;
		align-items: start !important;
		padding: 2.2rem 2.4rem !important;
	}

	.embayu-chat.embayu-chat-guest > :not(.embayu-chat-actions) {
		grid-column: 1 !important;
	}

	.embayu-chat.embayu-chat-guest > .embayu-chat-title {
		margin: 0 !important;
	}

	.embayu-chat.embayu-chat-guest > p {
		margin: 0 !important;
		max-width: 56ch !important;
	}

	.embayu-chat.embayu-chat-guest > .embayu-chat-actions {
		grid-column: 2 !important;
		grid-row: 1 / span 12 !important;
		margin: 0 !important;
		padding-left: 3.2rem !important;
		border-left: 1px solid var(--line) !important;
		display: flex !important;
		flex-wrap: wrap !important;
		gap: .7rem !important;
		align-content: start !important;
	}

	.embayu-chat.embayu-chat-guest > .embayu-chat-actions .embayu-chat-btn {
		flex: 1 1 auto !important;
		text-align: center !important;
	}
}

/* Butir peraturan: penanda bulat halus, inden bergantung */
.embayu-main .embayu-rule-bullet {
	position: relative;
	padding-left: 1.15rem;
	margin: 0 0 .7rem !important;
}

.embayu-main .embayu-rule-bullet::before {
	content: "";
	position: absolute;
	left: .1rem;
	top: .62em;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #3b5a74;
}

/* Sub-tajuk dalam peraturan rumah */
.embayu-main details .wp-block-heading {
	margin: 1.5rem 0 .55rem !important;
	font-size: .95rem !important;
	letter-spacing: .02em;
	color: #101820;
}

.embayu-main details > p:first-of-type { margin-top: .3rem; }

/* Senarai fasiliti/servis dalam peraturan: rapat dan berinden, bukan perenggan jarang */
.embayu-main details ul.wp-block-list {
	margin: .25rem 0 1rem !important;
	padding-left: 1.15rem !important;
	list-style: disc;
}

.embayu-main details ul.wp-block-list li {
	margin: 0 0 .12rem !important;
	line-height: 1.42 !important;
	font-size: .92rem;
	padding: 0;
}

.embayu-main details ul.wp-block-list li::marker { color: #3b5a74; }

/* Label senarai (cth. "Common Facilities") */
.embayu-main details h4.wp-block-heading {
	margin: 1.3rem 0 .45rem !important;
	font-size: .92rem !important;
	letter-spacing: .02em;
	color: #101820;
}

/* Tajuk seksyen dalam Peraturan Rumah (INTRODUCTION, PREAMBLE, …) */
.embayu-main details h2.wp-block-heading {
	margin: 2.2rem 0 .9rem !important;
	padding-top: 1.2rem !important;
	border-top: 1px solid var(--line);
	font-size: .76rem !important;
	font-weight: 800 !important;
	letter-spacing: .14em !important;
	text-transform: uppercase;
	color: #4d5b68 !important;
}

.embayu-main details h2.wp-block-heading:first-child {
	margin-top: .4rem !important;
	padding-top: 0 !important;
	border-top: 0;
}

/* Ritma perenggan dalam butir peraturan */
.embayu-main details p { margin: 0 0 .85rem !important; }
.embayu-main details p:last-child { margin-bottom: 0 !important; }
.embayu-main details ul.wp-block-list + p { margin-top: .9rem !important; }

/* Nombor klausa Peraturan Rumah (1.2.1, 1.2.2 …) */
.embayu-main details p .embayu-clause {
	display: inline-block;
	min-width: 3.6em;
	font-weight: 700;
	font-size: .86em;
	color: #3b5a74;
	font-variant-numeric: tabular-nums;
	letter-spacing: .01em;
}

@media (max-width: 640px) {
	.embayu-main details p .embayu-clause { min-width: 3.2em; }
}

/* Penanda (a), (b), (c) Peraturan Rumah */
.embayu-main details p .embayu-marker {
	display: inline-block;
	min-width: 2.2em;
	font-weight: 700;
	font-size: .88em;
	color: #3b5a74;
}

/* ===== Iklan bilik (Rooms for Rent) ===== */
.embayu-listing-card{
	background:#fff;
	border:1px solid #dfe4ea;
	border-radius:14px;
	padding:1.15rem 1.25rem 1.25rem;
	margin:1.2rem 0 0;
	box-shadow:0 1px 2px rgba(16,24,32,.06);
	max-width:640px;
}
.embayu-listing-h{
	margin:0 0 .85rem;
	font-size:.78rem;
	letter-spacing:.13em;
	text-transform:uppercase;
	color:#55606b;
	font-weight:700;
}
.embayu-listing-dl{
	display:grid;
	grid-template-columns:auto 1fr;
	gap:.45rem 1.4rem;
	margin:0 0 1rem;
}
.embayu-listing-dl dt{
	color:#55606b;
	font-size:.86rem;
	margin:0;
}
.embayu-listing-dl dd{
	margin:0;
	color:#101820;
	font-weight:600;
	font-size:.95rem;
}
.embayu-listing-contact{margin:0}
.embayu-listing-card a.embayu-listing-btn,
.embayu-dm-guest a.embayu-listing-btn{
	display:inline-block;
	background:#3b5a74 !important;
	color:#fff !important;
	text-decoration:none !important;
	font-weight:600;
	font-size:.9rem;
	padding:.62rem 1.1rem;
	border-radius:999px;
}
.embayu-listing-card a.embayu-listing-btn:hover{background:#101820 !important;color:#fff !important}

/* Borang iklan */
.embayu-listing-fields{
	background:#f7f8fa;
	border:1px solid #e3e8ee;
	border-radius:12px;
	padding:1rem 1.1rem;
	margin:0 0 1.2rem;
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
	gap:.75rem 1rem;
}
.embayu-listing-legend{
	grid-column:1/-1;
	margin:0 0 .2rem;
	font-size:.78rem;
	letter-spacing:.13em;
	text-transform:uppercase;
	color:#55606b;
}
.embayu-listing-field{display:flex;flex-direction:column;gap:.28rem;margin:0}
.embayu-listing-field label{font-size:.82rem;color:#3f4a54;font-weight:600}
.embayu-listing-field input,.embayu-listing-field select{
	border:1px solid #cfd6de;
	border-radius:8px;
	padding:.5rem .6rem;
	font-size:.9rem;
	background:#fff;
	color:#101820;
}
.embayu-listing-note{
	grid-column:1/-1;
	margin:.2rem 0 0;
	font-size:.8rem;
	color:#55606b;
}

/* Tapisan senarai iklan */
.embayu-listing-filter{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
	gap:.8rem 1rem;
	align-items:end;
	background:#f7f8fa;
	border:1px solid #e3e8ee;
	border-radius:12px;
	padding:.9rem 1rem;
	margin:.9rem 0 1.2rem;
	flex:0 0 100%;
	width:100%;
	order:99;
	box-sizing:border-box;
}
.embayu-listing-filter label{
	display:flex;
	flex-direction:column;
	gap:.3rem;
	font-size:.8rem;
	color:#3f4a54;
	font-weight:600;
	margin:0;
}
.embayu-listing-filter input,
.embayu-listing-filter select{
	border:1px solid #cfd6de !important;
	border-radius:8px !important;
	padding:0 .6rem !important;
	height:40px !important;
	line-height:40px !important;
	font-size:.9rem !important;
	background:#fff !important;
	color:#101820 !important;
	width:100% !important;
	max-width:none !important;
	box-sizing:border-box;
	margin:0 !important;
}
.embayu-listing-filter button{
	background:#3b5a74 !important;
	color:#fff !important;
	border:0 !important;
	border-radius:999px !important;
	padding:0 1.3rem !important;
	height:40px !important;
	font-weight:600;
	font-size:.9rem;
	cursor:pointer;
	white-space:nowrap;
}
.embayu-listing-filter button:hover{background:#101820 !important}
.embayu-listing-reset{
	font-size:.85rem;
	color:#3b5a74 !important;
	text-decoration:underline !important;
	align-self:center;
}
@media (max-width:640px){
	.embayu-listing-filter{grid-template-columns:1fr 1fr}
}

/* ===== Direktori handbook ===== */
.embayu-dir-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
	gap:.9rem;
	margin:0 0 1.6rem;
}
.embayu-dir-card{
	background:#fff;
	border:1px solid #dfe4ea;
	border-radius:12px;
	padding:.95rem 1.1rem;
	box-shadow:0 1px 2px rgba(16,24,32,.05);
}
.embayu-dir-name{
	margin:0 0 .45rem;
	font-weight:700;
	font-size:.95rem;
	color:#101820;
	line-height:1.35;
}
.embayu-dir-lines{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:.22rem;
}
.embayu-dir-lines li{
	margin:0;
	font-size:.92rem;
	color:#3f4a54;
}
.embayu-dir-lines a{
	color:#3b5a74 !important;
	text-decoration:none !important;
	font-weight:600;
}
.embayu-dir-lines a:hover{
	color:#101820 !important;
	text-decoration:underline !important;
}
.embayu-dir-note{
	font-size:.8rem;
	color:#55606b;
	font-weight:400;
}
@media (max-width:560px){
	.embayu-dir-grid{grid-template-columns:1fr}
}

/* Direktori: menang atas peraturan pautan/teks identiti (0,2,1 + !important) */
.entry-content .embayu-dir-grid{align-items:stretch}
.entry-content .embayu-dir-card{height:100%;display:flex;flex-direction:column;justify-content:flex-start}
.entry-content .embayu-dir-card .embayu-dir-name{color:#101820 !important;margin:0 0 .45rem}
.entry-content .embayu-dir-lines a{color:#3b5a74 !important;text-decoration:none !important}
.entry-content .embayu-dir-lines a:hover,
.entry-content .embayu-dir-lines a:focus-visible{color:#101820 !important;text-decoration:underline !important}
.entry-content .embayu-dir-lines li{color:#3f4a54 !important}

/* ===== Halaman log masuk (dua panel) ===== */
.embayu-login{
	display:grid;
	grid-template-columns:1.05fr 1fr;
	max-width:940px;
	margin:1.5rem auto 2.5rem;
	background:#fff;
	border:1px solid #dfe4ea;
	border-radius:18px;
	overflow:hidden;
	box-shadow:0 8px 30px rgba(16,24,32,.08);
}
.embayu-login-panel{
	background:#22262a;
	color:#f2efe8;
	padding:2.4rem 2.2rem;
	display:flex;
	flex-direction:column;
	justify-content:center;
	gap:.9rem;
}
.embayu-login-kicker{
	font-size:.74rem;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:#9fb0c0;
	font-weight:700;
}
.embayu-login-panel-title{
	margin:0;
	font-size:1.55rem;
	line-height:1.25;
	color:#fff !important;
	font-weight:750;
	letter-spacing:-.01em;
}
.embayu-login-list{
	list-style:none;
	margin:.4rem 0 .2rem;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:.6rem;
}
.embayu-login-list li{
	display:flex;
	gap:.6rem;
	align-items:flex-start;
	font-size:.95rem;
	line-height:1.45;
	color:#e6e2d9 !important;
}
.embayu-login-tick{
	flex:0 0 20px;
	width:20px;
	height:20px;
	border-radius:50%;
	background:#3b5a74;
	color:#fff;
	font-size:.72rem;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	margin-top:.15rem;
}
.embayu-login-note{
	margin:.6rem 0 0;
	font-size:.8rem;
	line-height:1.5;
	color:#9fb0c0;
	border-top:1px solid rgba(255,255,255,.12);
	padding-top:.9rem;
}
.embayu-login-form{
	padding:2.4rem 2.2rem;
	display:flex;
	flex-direction:column;
	justify-content:center;
}
.embayu-login-title{
	margin:0 0 .3rem;
	font-size:1.7rem;
	color:#101820;
	letter-spacing:-.02em;
}
.embayu-login-sub{
	margin:0 0 1.4rem;
	color:#55606b;
	font-size:.94rem;
}
.embayu-login-form form{
	margin:0;
}
.embayu-login-form label{
	display:block;
	font-size:.85rem;
	font-weight:600;
	color:#3f4a54;
	margin:0 0 .3rem;
}
.embayu-login-form input[type="text"],
.embayu-login-form input[type="password"],
.embayu-login-form input[type="email"]{
	width:100%;
	box-sizing:border-box;
	border:1px solid #cfd6de;
	border-radius:10px;
	padding:.72rem .85rem;
	font-size:1rem;
	background:#fff;
	color:#101820;
	margin:0 0 1rem;
}
.embayu-login-form input[type="text"]:focus,
.embayu-login-form input[type="password"]:focus,
.embayu-login-form input[type="email"]:focus{
	outline:none;
	border-color:#3b5a74;
	box-shadow:0 0 0 3px rgba(59,90,116,.18);
}
.embayu-login-form .login-remember label{
	display:flex;
	align-items:center;
	gap:.5rem;
	font-weight:500;
	font-size:.88rem;
	color:#3f4a54;
	margin:0 0 1.1rem;
}
.embayu-login-form .login-remember input{
	width:16px;
	height:16px;
	margin:0;
}
.embayu-login-form input[type="submit"],
.embayu-login-btn{
	width:100%;
	border:0;
	border-radius:999px;
	background:#3b5a74 !important;
	color:#fff !important;
	font-size:1rem;
	font-weight:700;
	padding:.8rem 1.2rem;
	cursor:pointer;
	text-align:center;
	display:inline-block;
	text-decoration:none !important;
}
.embayu-login-form input[type="submit"]:hover,
.embayu-login-btn:hover{background:#101820 !important;color:#fff !important}
.embayu-login-btn-ghost{
	background:transparent !important;
	color:#3b5a74 !important;
	border:1px solid #cfd6de !important;
}
.embayu-login-links{
	margin:1rem 0 .2rem;
	text-align:center;
	font-size:.88rem;
}
.embayu-login-forgot{color:#3b5a74 !important;text-decoration:underline !important}
.embayu-login-register{
	margin-top:1.1rem;
	padding-top:1.1rem;
	border-top:1px solid #e3e8ee;
	text-align:center;
	font-size:.9rem;
	color:#55606b;
}
.embayu-login-register a{
	color:#3b5a74 !important;
	font-weight:700;
	text-decoration:underline !important;
}
.embayu-login-done{
	max-width:560px;
	margin:2rem auto;
	padding:1.6rem;
	background:#fff;
	border:1px solid #dfe4ea;
	border-radius:14px;
	text-align:center;
}
@media (max-width:820px){
	.embayu-login{grid-template-columns:1fr;margin:1rem auto 2rem;border-radius:14px}
	.embayu-login-panel{padding:1.6rem 1.4rem;gap:.6rem}
	.embayu-login-panel-title{font-size:1.25rem}
	.embayu-login-list{display:none}
	.embayu-login-note{border-top:0;padding-top:.2rem;margin-top:.2rem}
	.embayu-login-form{padding:1.6rem 1.4rem}
	.embayu-login-title{font-size:1.4rem}
}

/* Log masuk: buang tajuk halaman bertindih + rapatkan jarak atas */
.page-id-1303 .entry-title,
.page-id-56 .entry-title,
.page-id-1304 .entry-title,
.page-id-1305 .entry-title,
.page-id-1303 .wp-block-post-title,
.page-id-56 .wp-block-post-title,
.page-id-1304 .wp-block-post-title,
.page-id-1305 .wp-block-post-title{
	display:none !important;
}
.page-id-1303 .embayu-main,
.page-id-56 .embayu-main,
.page-id-1304 .embayu-main,
.page-id-1305 .embayu-main{
	padding-top:.4rem !important;
}
.embayu-login-note{color:#c3cfd9 !important;font-size:.82rem !important}
.embayu-login-kicker{color:#b3c2d0 !important}

/* Kad log masuk mesti kekal 940px walaupun entry-content membebaskan lebar anak-anaknya */
.entry-content > .embayu-login,
.entry-content.is-layout-constrained > .embayu-login{
	max-width:940px !important;
	margin-left:auto !important;
	margin-right:auto !important;
}

/* Butang log masuk semasa menunggu Turnstile: jangan nampak seolah-olah boleh ditekan */
.embayu-login-form input[type="submit"]:disabled,
.embayu-login-form input[type="submit"][disabled]{
	background:#9aa7b1 !important;
	cursor:not-allowed;
	opacity:.9;
}


/* ---------- Gerakan laci menu (2026-11) ---------- */
@keyframes embayu-drawer-in  { from { transform: translateX(100%); } to { transform: translateX(0); } }
@keyframes embayu-drawer-out { from { transform: translateX(0); } to { transform: translateX(100%); } }
@keyframes embayu-veil-in    { from { opacity: 0; } to { opacity: 1; } }
@keyframes embayu-veil-out   { from { opacity: 1; } to { opacity: 0; } }
@keyframes embayu-item-in    { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: translateX(0); } }

.embayu-drawer:not([hidden]) {
  animation: embayu-drawer-in .26s cubic-bezier(.22, .9, .28, 1) both;
  will-change: transform;
}
.embayu-drawer.embayu-closing { animation: embayu-drawer-out .2s ease-in both; }

body.embayu-drawer-open::after { animation: embayu-veil-in .22s ease-out both; }
body.embayu-drawer-closing::after { animation: embayu-veil-out .18s ease-in both; }

/* item menu masuk satu demi satu */
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li,
.embayu-drawer:not([hidden]) .embayu-drawer-search,
.embayu-drawer:not([hidden]) .embayu-lang {
  animation: embayu-item-in .3s ease-out both;
}
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(1) { animation-delay: .04s; }
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(2) { animation-delay: .08s; }
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(3) { animation-delay: .12s; }
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(4) { animation-delay: .16s; }
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(5) { animation-delay: .20s; }
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(6) { animation-delay: .24s; }
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(7) { animation-delay: .28s; }
.embayu-drawer:not([hidden]) .embayu-drawer-nav > li:nth-child(n+8) { animation-delay: .32s; }
.embayu-drawer:not([hidden]) .embayu-drawer-search { animation-delay: .34s; }
.embayu-drawer:not([hidden]) .embayu-lang { animation-delay: .38s; }

/* butang garis tiga: tekan sedikit, dan bar bergerak lebih hidup */
.embayu-burger { transition: transform .16s ease, opacity .16s ease; }
.embayu-burger:active { transform: scale(.9); }
.embayu-burger-box span { transition: transform .22s cubic-bezier(.22,.9,.28,1), opacity .16s ease, top .22s cubic-bezier(.22,.9,.28,1), width .22s ease; }
.embayu-burger[aria-expanded="true"] .embayu-burger-box span:nth-child(1),
.embayu-burger[aria-expanded="true"] .embayu-burger-box span:nth-child(3) { width: 100%; }

@media (prefers-reduced-motion: reduce) {
  .embayu-drawer:not([hidden]),
  .embayu-drawer.embayu-closing,
  body.embayu-drawer-open::after,
  body.embayu-drawer-closing::after,
  .embayu-drawer:not([hidden]) .embayu-drawer-nav > li,
  .embayu-drawer:not([hidden]) .embayu-drawer-search,
  .embayu-drawer:not([hidden]) .embayu-lang { animation: none !important; }
  .embayu-burger, .embayu-burger-box span { transition: none; }
}


/* ---------- Gerakan kecil di seluruh portal ---------- */
.embayu-nav a,
.embayu-nav-left a,
.embayu-nav-right a,
.embayu-lang a,
.embayu-drawer-nav > li > a,
.embayu-footer a {
  transition: color .16s ease, background-color .16s ease, opacity .16s ease, border-color .16s ease;
}

.embayu-dir-card,
.embayu-dir-card a,
.embayu-card,
.wp-block-group.embayu-dir-card {
  transition: box-shadow .2s ease, border-color .2s ease, transform .2s ease;
}
.embayu-dir-card:hover {
  border-color: #c9d3dd;
  box-shadow: 0 8px 22px rgba(16, 24, 32, .09);
}

/* butang & pautan umum: tekan sedikit, berubah warna perlahan */
button, .button, input[type="submit"] { transition: background-color .16s ease, color .16s ease, border-color .16s ease, transform .12s ease, box-shadow .16s ease; }
button:active, .button:active, input[type="submit"]:active { transform: translateY(1px); }

/* jadual & senarai forum: baris menyala perlahan */
.entry-content table tr, #bbpress-forums li.bbp-body li.bbp-topic, #bbpress-forums li.bbp-body li.bbp-forum {
  transition: background-color .16s ease;
}

@media (prefers-reduced-motion: reduce) {
  .embayu-nav a, .embayu-lang a, .embayu-drawer-nav > li > a, .embayu-footer a,
  .embayu-dir-card, button, .button, input[type="submit"] { transition: none; }
  .embayu-dir-card:hover { transform: none; }
  button:active, .button:active, input[type="submit"]:active { transform: none; }
}


/* Widget pembantu mesti mengalah kepada laci menu: dulu butang hijau itu
   terapung DI ATAS laci yang terbuka. */
#embayu-ai { transition: opacity .18s ease, visibility .18s ease; }
body.embayu-drawer-open #embayu-ai,
body.embayu-drawer-closing #embayu-ai {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
@media (prefers-reduced-motion: reduce) {
  #embayu-ai { transition: none; }
}


/* ---------- Kad hero: trek grid mesti boleh mengecil ----------
   Tamil mempunyai kata majmuk panjang tanpa ruang. Trek grid lalai
   (`min-width:auto`) membesar mengikut perkataan terpanjang, jadi kotak
   teks terkeluar 3 px melepasi padding 20 px. `overflow-wrap:anywhere`
   mengecilkan saiz min-content, jadi perkataan itu dipatah bila perlu
   dan bukan menolak kotak keluar. */
.embayu-d1-grid > * { min-width: 0; }
.embayu-hero-d1,
.embayu-hero-d1 h1,
.embayu-hero-d1 h2,
.embayu-hero-d1 p,
.embayu-d1-h1,
.embayu-d1-lede,
.embayu-toc,
.embayu-toc li {
  overflow-wrap: anywhere;
  word-break: normal;
}
html[lang^="ta"] .embayu-d1-h1 { letter-spacing: 0; line-height: 1.34; }


/* ---------- Gambar dalam figure tidak boleh melebihi kotak ----------
   <figure class="wp-block-image"> → <a> (inline-block) → <img>. Pautan
   inline-block itu mengecil-mengikut-kandungan, jadi `max-width:100%` pada
   <img> dikira terhadap lebar 3002 px milik pautan itu sendiri — gambar
   terkeluar 2.6 ribu piksel. Jadikan pautan blok supaya ia ikut lebar figure. */
.wp-block-image { max-width: 100%; }
.wp-block-image > a,
.wp-block-image > p > a {
  display: block;
  max-width: 100%;
}
.wp-block-image img,
.entry-content img,
.entry-content video,
.entry-content iframe {
  max-width: 100%;
  height: auto;
}
.entry-content figure { max-width: 100%; }


/* Gambar yang hilang: kecilkan ruang, jangan biar kosong memanjang. */
.wp-block-image.embayu-img-broken-box,
figure.embayu-img-broken-box { min-height: 0 !important; height: auto !important; }
/* Figura yang tiada fail: sembunyikan terus, jangan tunjuk kotak rosak.
   Kandungan kekal dalam pangkalan data dan boleh dipulihkan bila-bila. */
.wp-block-image.embayu-img-broken-box,
figure.embayu-img-broken-box { display: none !important; }

img.embayu-img-broken {
  height: auto !important;
  max-height: 96px !important;
  width: auto !important;
  max-width: 100% !important;
  padding: 10px 14px;
  border: 1px dashed #c9d3dd;
  border-radius: 8px;
  background: #f7f9fb;
  color: #6b7885;
  font-size: .8rem;
  opacity: .9;
}
