/* pdl · hoangsa · Template "Single Bài viết" + nội dung Gutenberg (block core).
 * Nội dung bài nằm trong .pdl-hoangsa-Entry (element Post Content của Bricks).
 * Lưới breakout: block thường = cột chữ 720px, .alignwide = 1120px, .alignfull = tràn màn hình.
 * Không phụ thuộc wp-block-library / global-styles (Bricks có thể gỡ hai file này).
 */

/* ========================================================== 1. Hero bài viết */
.pdl-hoangsa-ReadingProgress { z-index: 1000; }
.pdl-hoangsa-PostHero { padding-block: clamp(44px, 6vw, 88px) 0; background: linear-gradient(180deg, var(--pdl-hoangsa-color-paper), var(--pdl-hoangsa-color-ivory)); }
.pdl-hoangsa-PostHero-inner { display: flex; flex-direction: column; align-items: center; text-align: center; }
.pdl-hoangsa-PostHero-inner .pdl-hoangsa-Breadcrumb ol { justify-content: center; }
.pdl-hoangsa-PostHero-title { margin-inline: auto; max-width: 20ch; text-transform: none; }
.pdl-hoangsa-PostMeta { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; margin-top: 24px; }
.pdl-hoangsa-PostMeta-item { display: inline-flex; align-items: center; gap: 22px; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--pdl-hoangsa-color-muted); }
.pdl-hoangsa-PostMeta-item + .pdl-hoangsa-PostMeta-item::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--pdl-hoangsa-color-brand); }
.pdl-hoangsa-PostHero-media { margin-top: clamp(40px, 5vw, 64px); }
.pdl-hoangsa-PostHero-image, .pdl-hoangsa-PostHero-image img { width: 100%; height: auto; max-height: 680px; aspect-ratio: 16 / 9; object-fit: cover; display: block; border-radius: 28px 28px 0 0; }

/* ========================================================== 2. Lưới nội dung (breakout) */
.pdl-hoangsa-PostBody { display: block; width: 100%; background: var(--pdl-hoangsa-color-paper); padding-block: clamp(56px, 7vw, 100px) clamp(64px, 8vw, 120px); }
.pdl-hoangsa-Entry {
	--pdl-hoangsa-Entry-content: 720px;
	--pdl-hoangsa-Entry-wide: 1120px;
	--pdl-hoangsa-Entry-gutter: var(--pdl-hoangsa-space-gutter);
	display: grid;
	grid-template-columns:
		[full-start] minmax(var(--pdl-hoangsa-Entry-gutter), 1fr)
		[wide-start] minmax(0, calc((var(--pdl-hoangsa-Entry-wide) - var(--pdl-hoangsa-Entry-content)) / 2))
		[content-start] min(var(--pdl-hoangsa-Entry-content), 100% - 2 * var(--pdl-hoangsa-Entry-gutter))
		[content-end] minmax(0, calc((var(--pdl-hoangsa-Entry-wide) - var(--pdl-hoangsa-Entry-content)) / 2))
		[wide-end] minmax(var(--pdl-hoangsa-Entry-gutter), 1fr) [full-end];
	width: 100%;
	font-size: 17.5px;
	line-height: 1.85;
	color: var(--pdl-hoangsa-color-body);
}
.pdl-hoangsa-Entry > * { grid-column: content; margin-block: 0; min-width: 0; }
.pdl-hoangsa-Entry > * + * { margin-top: 1.5em; }
.pdl-hoangsa-Entry > .alignwide,
.pdl-hoangsa-Entry > .wp-block-gallery,
.pdl-hoangsa-Entry > .wp-block-cover:not(.alignfull),
.pdl-hoangsa-Entry > .wp-block-media-text,
.pdl-hoangsa-Entry > .wp-block-columns.alignwide { grid-column: wide; }
.pdl-hoangsa-Entry > .alignfull { grid-column: full; }
/* Bricks mặc định .alignwide/.alignfull rộng 120%/100vw + lề âm → lưới đã lo độ rộng */
.pdl-hoangsa-Entry > :is(.alignwide, .alignfull) { width: auto !important; max-width: none !important; margin-inline: 0 !important; }
.pdl-hoangsa-Entry > :is(.alignwide, .alignfull, .wp-block-gallery, .wp-block-cover, .wp-block-media-text) { margin-block: 2.6em; }
.pdl-hoangsa-Entry > :first-child { margin-top: 0; }
.pdl-hoangsa-Entry > p:empty { display: none; }
.pdl-hoangsa-Entry [hidden] { display: none !important; }

/* ========================================================== 3. Chữ */
.pdl-hoangsa-Entry > p:nth-child(1 of p:not(:empty)):not(.has-text-align-center) {
	/* Đoạn mở đầu = đoạn dẫn */
	font-family: var(--pdl-hoangsa-font-heading);
	font-size: clamp(19px, 2.1vw, 23px);
	font-weight: 300;
	line-height: 1.6;
	color: var(--pdl-hoangsa-color-ink);
}
.pdl-hoangsa-Entry a:not(.wp-block-button__link):not(.wp-block-file__button) {
	color: var(--pdl-hoangsa-color-brand-700);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.pdl-hoangsa-Entry a:not(.wp-block-button__link):hover { color: var(--pdl-hoangsa-color-ink); }
.pdl-hoangsa-Entry strong { color: var(--pdl-hoangsa-color-ink); font-weight: 600; }
.pdl-hoangsa-Entry mark { background: var(--pdl-hoangsa-color-brand-100); color: inherit; padding: 0 .2em; border-radius: 3px; }
.pdl-hoangsa-Entry .has-drop-cap::first-letter {
	float: left;
	margin: .08em .12em 0 0;
	font-family: var(--pdl-hoangsa-font-heading);
	font-size: 4.6em;
	line-height: .8;
	font-weight: 600;
	color: var(--pdl-hoangsa-color-brand);
}
.pdl-hoangsa-Entry :is(h2, h3, h4, h5, h6) { color: var(--pdl-hoangsa-color-ink); text-wrap: balance; }
.pdl-hoangsa-Entry > :is(h2, h3, h4, h5, h6) { margin-top: 2em; }
.pdl-hoangsa-Entry > :is(h2, h3, h4) + * { margin-top: .8em; }
.pdl-hoangsa-Entry h2 { font-size: clamp(27px, 3.2vw, 37px); line-height: 1.25; }
.pdl-hoangsa-Entry > h2::before { content: ""; display: block; width: 36px; height: 2px; margin-bottom: 22px; background: var(--pdl-hoangsa-color-brand); }
.pdl-hoangsa-Entry > h2.has-text-align-center::before { margin-inline: auto; }
.pdl-hoangsa-Entry h3 { font-size: clamp(21px, 2.4vw, 26px); line-height: 1.3; }
.pdl-hoangsa-Entry h4 { font-family: var(--pdl-hoangsa-font-sans); font-size: 14px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--pdl-hoangsa-color-brand-700); }
.pdl-hoangsa-Entry h5, .pdl-hoangsa-Entry h6 { font-family: var(--pdl-hoangsa-font-sans); font-size: 16px; font-weight: 600; }

/* Danh sách */
.pdl-hoangsa-Entry :is(ul, ol):not([class*="wp-block-"]):not(.blocks-gallery-grid),
.pdl-hoangsa-Entry .wp-block-list { padding-left: 0; list-style: none; }
.pdl-hoangsa-Entry :is(ul, ol):not([class*="wp-block-"]) li, .pdl-hoangsa-Entry .wp-block-list li { position: relative; padding-left: 32px; }
.pdl-hoangsa-Entry :is(ul, ol) li + li { margin-top: .55em; }
.pdl-hoangsa-Entry ul:not([class*="wp-block-"]) > li::before, .pdl-hoangsa-Entry ul.wp-block-list > li::before {
	content: "✦";
	position: absolute;
	left: 4px;
	top: .05em;
	font-size: 12px;
	color: var(--pdl-hoangsa-color-brand);
}
.pdl-hoangsa-Entry ol:not([class*="wp-block-"]), .pdl-hoangsa-Entry ol.wp-block-list { counter-reset: pdl-hoangsa-entry-list; }
.pdl-hoangsa-Entry ol:not([class*="wp-block-"]) > li, .pdl-hoangsa-Entry ol.wp-block-list > li { counter-increment: pdl-hoangsa-entry-list; }
.pdl-hoangsa-Entry ol:not([class*="wp-block-"]) > li::before, .pdl-hoangsa-Entry ol.wp-block-list > li::before {
	content: counter(pdl-hoangsa-entry-list, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: -.05em;
	font-family: var(--pdl-hoangsa-font-heading);
	font-size: 16px;
	font-variant-numeric: lining-nums;
	color: var(--pdl-hoangsa-color-brand-700);
}
.pdl-hoangsa-Entry li > :is(ul, ol) { margin-top: .55em; }

/* Trích dẫn */
.pdl-hoangsa-Entry .wp-block-quote, .pdl-hoangsa-Entry > blockquote {
	margin-inline: 0;
	padding: 6px 0 6px 30px;
	border-left: 2px solid var(--pdl-hoangsa-color-brand);
	font-family: var(--pdl-hoangsa-font-heading);
	font-size: clamp(18px, 2vw, 21px);
	line-height: 1.5;
	color: var(--pdl-hoangsa-color-ink);
	font-weight: 300;
}
.pdl-hoangsa-Entry .wp-block-quote p + p { margin-top: .6em; }
.pdl-hoangsa-Entry :is(.wp-block-quote, .wp-block-pullquote) cite {
	display: block;
	margin-top: 16px;
	font-family: var(--pdl-hoangsa-font-sans);
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--pdl-hoangsa-color-muted);
}
.pdl-hoangsa-Entry .wp-block-quote.is-style-large { border-left: 0; padding-left: 0; font-size: clamp(28px, 3vw, 38px); }
.pdl-hoangsa-Entry .wp-block-pullquote {
	grid-column: wide;
	margin-block: 2.6em;
	padding: clamp(40px, 5vw, 64px) clamp(24px, 6vw, 96px);
	text-align: center;
	border-block: 1px solid var(--pdl-hoangsa-color-line-strong);
	position: relative;
}
.pdl-hoangsa-Entry .wp-block-pullquote::before {
	content: "“";
	position: absolute;
	top: -.42em;
	left: 50%;
	transform: translateX(-50%);
	padding-inline: 18px;
	background: var(--pdl-hoangsa-color-paper);
	font-family: var(--pdl-hoangsa-font-heading);
	font-size: 79px;
	line-height: 1;
	color: var(--pdl-hoangsa-color-brand);
}
.pdl-hoangsa-Entry .wp-block-pullquote blockquote { margin: 0; padding: 0; border: 0; background: none; }
.pdl-hoangsa-Entry .wp-block-pullquote p { font-family: var(--pdl-hoangsa-font-heading); font-size: clamp(23px, 3.2vw, 34px); line-height: 1.3; color: var(--pdl-hoangsa-color-ink);  font-weight: 300; }

/* ========================================================== 4. Ảnh */
.pdl-hoangsa-Entry figure { margin-inline: 0; }
.pdl-hoangsa-Entry img { max-width: 100%; height: auto; }
.pdl-hoangsa-Entry .wp-block-image img { display: block; border-radius: 14px; }
.pdl-hoangsa-Entry .wp-block-image.alignfull img { border-radius: 0; width: 100%; }
.pdl-hoangsa-Entry .wp-block-image.alignwide img { width: 100%; }
.pdl-hoangsa-Entry .wp-block-image.is-style-rounded img { border-radius: 1000px 1000px 14px 14px; } /* kiểu "Bo tròn" = khung vòm */
.pdl-hoangsa-Entry :is(.wp-block-image, .wp-block-video, .wp-block-embed, .wp-block-table, .wp-block-audio) figcaption,
.pdl-hoangsa-Entry .blocks-gallery-caption {
	margin-top: 12px;
	font-size: 13.5px;
	font-style: italic;
	line-height: 1.5;
	text-align: center;
	color: var(--pdl-hoangsa-color-muted);
}
.pdl-hoangsa-Entry .wp-block-image.alignfull figcaption { padding-inline: var(--pdl-hoangsa-space-gutter); }
.pdl-hoangsa-Entry .wp-block-image a { display: block; overflow: hidden; border-radius: 14px; }
.pdl-hoangsa-Entry .wp-block-image a img { transition: transform .9s var(--pdl-hoangsa-ease); }
.pdl-hoangsa-Entry .wp-block-image a:hover img { transform: scale(1.03); }
.pdl-hoangsa-Entry .wp-block-image.aligncenter { text-align: center; }
.pdl-hoangsa-Entry .wp-block-image.aligncenter img { margin-inline: auto; }
@media (min-width: 992px) {
	/* Ảnh căn trái/phải: lấn ra lề rộng, chữ chạy quanh */
	.pdl-hoangsa-Entry .alignleft { float: left; max-width: 46%; margin: .4em 36px 1em calc((var(--pdl-hoangsa-Entry-content) - var(--pdl-hoangsa-Entry-wide)) / 4); }
	.pdl-hoangsa-Entry .alignright { float: right; max-width: 46%; margin: .4em calc((var(--pdl-hoangsa-Entry-content) - var(--pdl-hoangsa-Entry-wide)) / 4) 1em 36px; }
}
@media (max-width: 991px) { .pdl-hoangsa-Entry .alignleft, .pdl-hoangsa-Entry .alignright { float: none; margin-inline: 0; } }

/* Gallery: lưới, mặc định 3 cột; ảnh đầu mỗi nhóm 6 to gấp đôi khi "Cắt ảnh" bật và cột mặc định */
.pdl-hoangsa-Entry .wp-block-gallery {
	--pdl-hoangsa-Gallery-columns: 3;
	display: grid !important;
	grid-template-columns: repeat(var(--pdl-hoangsa-Gallery-columns), minmax(0, 1fr));
	gap: 14px !important;
	align-items: stretch;
}
.pdl-hoangsa-Entry .wp-block-gallery.columns-1 { --pdl-hoangsa-Gallery-columns: 1; }
.pdl-hoangsa-Entry .wp-block-gallery.columns-2 { --pdl-hoangsa-Gallery-columns: 2; }
.pdl-hoangsa-Entry .wp-block-gallery.columns-4 { --pdl-hoangsa-Gallery-columns: 4; }
.pdl-hoangsa-Entry .wp-block-gallery.columns-5 { --pdl-hoangsa-Gallery-columns: 5; }
.pdl-hoangsa-Entry .wp-block-gallery.columns-6 { --pdl-hoangsa-Gallery-columns: 6; }
.pdl-hoangsa-Entry .wp-block-gallery > .wp-block-image { width: 100% !important; margin: 0 !important; position: relative; }
.pdl-hoangsa-Entry .wp-block-gallery > .wp-block-image :is(a, img) { width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 12px; }
.pdl-hoangsa-Entry .wp-block-gallery.is-cropped > .wp-block-image img { aspect-ratio: 4 / 3; }
.pdl-hoangsa-Entry .wp-block-gallery.is-cropped.columns-default > .wp-block-image:nth-child(6n + 1) { grid-column: span 2; grid-row: span 2; }
.pdl-hoangsa-Entry .wp-block-gallery.is-cropped.columns-default > .wp-block-image:nth-child(6n + 1) img { aspect-ratio: auto; }
.pdl-hoangsa-Entry .wp-block-gallery > .wp-block-image figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
	padding: 28px 14px 12px;
	border-radius: 0 0 12px 12px;
	background: linear-gradient(transparent, rgba(34, 25, 20, .75));
	color: var(--pdl-hoangsa-color-on-dark);
	font-size: 13px;
	text-align: left;
}
.pdl-hoangsa-Entry .wp-block-gallery .blocks-gallery-caption { grid-column: 1 / -1; }
/* Gallery không cắt ảnh → dàn kiểu masonry theo cột */
.pdl-hoangsa-Entry .wp-block-gallery:not(.is-cropped) { display: block !important; columns: var(--pdl-hoangsa-Gallery-columns); column-gap: 14px; }
.pdl-hoangsa-Entry .wp-block-gallery:not(.is-cropped) > .wp-block-image { break-inside: avoid; margin-bottom: 14px !important; }
.pdl-hoangsa-Entry .wp-block-gallery:not(.is-cropped) > .wp-block-image :is(a, img) { height: auto !important; }

/* Cover, media & text, columns, group */
.pdl-hoangsa-Entry .wp-block-cover { border-radius: 22px; overflow: hidden; min-height: 420px; padding: clamp(28px, 5vw, 64px); }
.pdl-hoangsa-Entry .wp-block-cover.alignfull { border-radius: 0; }
.pdl-hoangsa-Entry .wp-block-cover :is(h2, h3, p) { color: inherit; }
.pdl-hoangsa-Entry .wp-block-cover h2::before { display: none; }
.pdl-hoangsa-Entry .wp-block-media-text { gap: clamp(24px, 4vw, 56px); align-items: center; }
.pdl-hoangsa-Entry .wp-block-media-text__media img { border-radius: 18px; }
.pdl-hoangsa-Entry .wp-block-media-text__content { padding: 0 !important; }
.pdl-hoangsa-Entry .wp-block-columns { gap: clamp(20px, 3vw, 40px); }
.pdl-hoangsa-Entry .wp-block-column > * + * { margin-top: 1em; }
.pdl-hoangsa-Entry :is(.wp-block-group, .wp-block-columns, .wp-block-column).has-background { padding: clamp(24px, 3.5vw, 44px); border-radius: 18px; }
.pdl-hoangsa-Entry .wp-block-group > * + * { margin-top: 1em; }

/* Video / nhúng */
.pdl-hoangsa-Entry .wp-block-embed__wrapper, .pdl-hoangsa-Entry .wp-block-video video { border-radius: 16px; overflow: hidden; }
.pdl-hoangsa-Entry .wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper { position: relative; }
.pdl-hoangsa-Entry .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper { aspect-ratio: 16 / 9; }
.pdl-hoangsa-Entry .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper { aspect-ratio: 4 / 3; }
.pdl-hoangsa-Entry .wp-block-embed.wp-has-aspect-ratio iframe { position: absolute; inset: 0; width: 100%; height: 100%; }
.pdl-hoangsa-Entry .wp-block-video video { width: 100%; display: block; }

/* ========================================================== 5. Khối khác */
/* Nút */
.pdl-hoangsa-Entry .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 12px 18px; }
.pdl-hoangsa-Entry .wp-block-buttons.is-content-justification-center { justify-content: center; }
.pdl-hoangsa-Entry .wp-block-button__link, .pdl-hoangsa-Entry .wp-block-file__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 0 28px;
	border-radius: 999px;
	border: 1px solid transparent;
	background: var(--pdl-hoangsa-color-brand-600);
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	text-decoration: none;
	transition: background-color .3s var(--pdl-hoangsa-ease), color .3s, transform .3s var(--pdl-hoangsa-ease);
}
.pdl-hoangsa-Entry .wp-block-button__link:hover, .pdl-hoangsa-Entry .wp-block-file__button:hover { background: var(--pdl-hoangsa-color-brand-700); color: #fff; transform: translateY(-2px); }
.pdl-hoangsa-Entry .is-style-outline .wp-block-button__link { background: transparent; color: var(--pdl-hoangsa-color-ink); border-color: var(--pdl-hoangsa-color-line-strong); }
.pdl-hoangsa-Entry .is-style-outline .wp-block-button__link:hover { background: var(--pdl-hoangsa-color-ink); color: var(--pdl-hoangsa-color-paper); }

/* Đường phân cách = hoa văn */
.pdl-hoangsa-Entry hr, .pdl-hoangsa-Entry .wp-block-separator {
	position: relative;
	height: 1px;
	margin-block: 3em;
	border: 0;
	background: linear-gradient(90deg, transparent, var(--pdl-hoangsa-color-line-strong) 30%, var(--pdl-hoangsa-color-line-strong) 70%, transparent);
	overflow: visible;
	opacity: 1;
}
.pdl-hoangsa-Entry hr::after, .pdl-hoangsa-Entry .wp-block-separator::after {
	content: "✦";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	padding-inline: 14px;
	background: var(--pdl-hoangsa-color-paper);
	font-size: 13px;
	color: var(--pdl-hoangsa-color-brand);
}
.pdl-hoangsa-Entry .wp-block-separator.is-style-dots { background: none; }
.pdl-hoangsa-Entry .wp-block-separator.is-style-dots::after { content: "✦  ✦  ✦"; }

/* Bảng */
.pdl-hoangsa-Entry .wp-block-table { overflow-x: auto; }
.pdl-hoangsa-Entry table { width: 100%; border-collapse: collapse; font-size: 15px; }
.pdl-hoangsa-Entry th, .pdl-hoangsa-Entry td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--pdl-hoangsa-color-line); vertical-align: top; }
.pdl-hoangsa-Entry thead th { background: var(--pdl-hoangsa-color-espresso); color: var(--pdl-hoangsa-color-on-dark); font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; border: 0; }
.pdl-hoangsa-Entry thead th:first-child { border-radius: 10px 0 0 0; }
.pdl-hoangsa-Entry thead th:last-child { border-radius: 0 10px 0 0; }
.pdl-hoangsa-Entry tbody td { background: transparent; }
.pdl-hoangsa-Entry .is-style-stripes tbody tr:nth-child(odd) td { background: var(--pdl-hoangsa-color-ivory); }
.pdl-hoangsa-Entry .is-style-stripes :is(td, th) { border: 0; }

/* Chi tiết (details), mã, tệp */
.pdl-hoangsa-Entry .wp-block-details { padding: 18px 22px; border: 1px solid var(--pdl-hoangsa-color-line); border-radius: 14px; background: var(--pdl-hoangsa-color-ivory); }
.pdl-hoangsa-Entry .wp-block-details summary { cursor: pointer; font-family: var(--pdl-hoangsa-font-heading); font-size: 18px; font-weight: 600; color: var(--pdl-hoangsa-color-ink); }
.pdl-hoangsa-Entry .wp-block-details[open] summary { margin-bottom: 10px; }
.pdl-hoangsa-Entry :is(pre, .wp-block-code) { padding: 22px 24px; border-radius: 14px; background: var(--pdl-hoangsa-color-espresso); color: var(--pdl-hoangsa-color-on-dark); font-size: 14px; line-height: 1.7; overflow-x: auto; }
.pdl-hoangsa-Entry :not(pre) > code { padding: .1em .4em; border-radius: 5px; background: var(--pdl-hoangsa-color-ivory); font-size: .9em; }
.pdl-hoangsa-Entry .wp-block-file { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; padding: 18px 22px; border: 1px solid var(--pdl-hoangsa-color-line); border-radius: 14px; }
.pdl-hoangsa-Entry .has-background:not(.wp-block-cover):not(.wp-block-button__link) { border-radius: 14px; }
.pdl-hoangsa-Entry p.has-background { padding: 22px 26px; }

/* ========================================================== 6. Cuối bài: chia sẻ, CTA, bài trước/sau */
.pdl-hoangsa-PostEnd {
	width: min(1120px, 100% - 2 * var(--pdl-hoangsa-space-gutter));
	margin: clamp(56px, 7vw, 96px) auto 0;
	display: grid;
	gap: 28px;
}
.pdl-hoangsa-PostEnd-share { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px 22px; padding-bottom: 28px; border-bottom: 1px solid var(--pdl-hoangsa-color-line); }
.pdl-hoangsa-PostEnd-label { margin: 0; font-size: 12px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--pdl-hoangsa-color-muted); }
.pdl-hoangsa-PostShare { display: flex; gap: 10px; margin: 0; padding: 0; list-style: none; }
.pdl-hoangsa-PostShare li { margin: 0; }
.pdl-hoangsa-PostShare a {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid var(--pdl-hoangsa-color-line-strong);
	color: var(--pdl-hoangsa-color-ink);
	background: transparent;
	transition: all .3s var(--pdl-hoangsa-ease);
}
.pdl-hoangsa-PostShare a:hover { background: var(--pdl-hoangsa-color-brand-600); border-color: var(--pdl-hoangsa-color-brand-600); color: #fff; }
.pdl-hoangsa-PostShare svg { width: 17px; height: 17px; fill: currentColor; }

.pdl-hoangsa-PostEnd-cta {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px 40px;
	padding: clamp(30px, 4vw, 48px) clamp(26px, 4vw, 56px);
	border-radius: 24px;
	background: var(--pdl-hoangsa-color-espresso);
	color: var(--pdl-hoangsa-color-on-dark-muted);
}
.pdl-hoangsa-PostEnd-cta::after {
	content: "";
	position: absolute;
	right: -80px;
	top: -120px;
	width: 300px;
	height: 300px;
	border-radius: 50%;
	border: 1px solid rgba(248, 192, 0, .2);
	box-shadow: 0 0 0 40px rgba(248, 192, 0, .03);
	pointer-events: none;
}
.pdl-hoangsa-PostEnd-ctaTitle { margin: 0; font-family: var(--pdl-hoangsa-font-heading); font-size: clamp(23px, 3vw, 31px); line-height: 1.1; color: var(--pdl-hoangsa-color-on-dark); }
.pdl-hoangsa-PostEnd-ctaText { margin: 8px 0 0; grid-column: 1; }
.pdl-hoangsa-PostEnd-cta .pdl-hoangsa-ButtonRow { grid-column: 2; grid-row: 1 / span 2; margin: 0; position: relative; z-index: 1; }

.pdl-hoangsa-PostNav { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; width: 100%; }
.pdl-hoangsa-PostNav :is(.prev-post, .next-post) { min-width: 0; }
.pdl-hoangsa-PostNav a {
	display: flex;
	align-items: center;
	gap: 16px;
	height: 100%;
	padding: 16px;
	border: 1px solid var(--pdl-hoangsa-color-line);
	border-radius: 18px;
	text-decoration: none;
	color: var(--pdl-hoangsa-color-ink);
	transition: border-color .3s, box-shadow .3s, transform .3s var(--pdl-hoangsa-ease);
}
.pdl-hoangsa-PostNav a:hover { border-color: transparent; box-shadow: var(--pdl-hoangsa-shadow-soft); transform: translateY(-3px); }
.pdl-hoangsa-PostNav .next-post a { flex-direction: row-reverse; text-align: right; }
.pdl-hoangsa-PostNav img { width: 76px; height: 76px; flex-shrink: 0; object-fit: cover; border-radius: 12px; }
.pdl-hoangsa-PostNav .label { display: block; font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--pdl-hoangsa-color-brand-700); }
.pdl-hoangsa-PostNav .title { display: block; margin-top: 4px; font-family: var(--pdl-hoangsa-font-heading); font-size: 17px; font-weight: 600; line-height: 1.25; }
.pdl-hoangsa-PostNav .swiper-button, .pdl-hoangsa-PostNav svg { display: none; }

/* ========================================================== 7. Responsive */
@media (max-width: 767px) {
	.pdl-hoangsa-Entry { font-size: 16.5px; }
	.pdl-hoangsa-PostHero-image, .pdl-hoangsa-PostHero-image img { aspect-ratio: 4 / 3; border-radius: 18px 18px 0 0; }
	.pdl-hoangsa-Entry .wp-block-gallery { --pdl-hoangsa-Gallery-columns: 2 !important; gap: 8px !important; }
	.pdl-hoangsa-Entry .wp-block-gallery:not(.is-cropped) { column-gap: 8px; }
	.pdl-hoangsa-Entry .wp-block-gallery.columns-1 { --pdl-hoangsa-Gallery-columns: 1 !important; }
	.pdl-hoangsa-Entry .wp-block-media-text { grid-template-columns: 1fr !important; }
	.pdl-hoangsa-Entry .wp-block-media-text > * { grid-column: 1 !important; grid-row: auto !important; }
	.pdl-hoangsa-PostEnd-cta { grid-template-columns: 1fr; }
	.pdl-hoangsa-PostEnd-cta .pdl-hoangsa-ButtonRow { grid-column: 1; grid-row: auto; }
	.pdl-hoangsa-PostNav { grid-template-columns: 1fr; }
	.pdl-hoangsa-PostNav img { width: 60px; height: 60px; }
}
