/* ==========================================================================
   TẦNG 4 — SECTIONS
   Ghép component thành mảng nội dung. Chỉ xử lý phần đặc thù của từng
   section; mọi thứ tái dùng được phải nằm ở tầng 3.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */
.dst-section--hero {
	padding-top: var(--sp-8);
	padding-bottom: var(--sp-8);
}

@media (min-width: 992px) {
	.dst-section--hero {
		padding-top: var(--section-y-lg);
		padding-bottom: var(--section-y-lg);
	}
}

/* Hero căn trái ở desktop (2 cột), căn giữa ở mobile (1 cột) */
.dst-hero .dst-eyebrow,
.dst-hero .dst-h1,
.dst-hero .dst-lead {
	text-align: center;
}

@media (min-width: 992px) {
	.dst-hero .dst-eyebrow { justify-content: flex-start; }

	.dst-hero .dst-h1,
	.dst-hero .dst-lead {
		text-align: left;
		margin-inline: 0;
	}

	.dst-hero .wp-block-buttons { justify-content: flex-start; }
}

.dst-hero-note {
	margin-top: var(--sp-3);
	font-size: var(--fs-body-sm);
	color: var(--c-on-navy-muted);
}

/* Điểm nhấn ngắn: luôn giữ một hàng, kể cả mobile. */
.dst-hero__highlights {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--sp-2);
	margin: var(--sp-5) 0;
	padding: 0;
	list-style: none;
}

.dst-hero__highlights > li {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	margin: 0;
	padding: var(--sp-2);
	border-top: 2px solid var(--c-orange);
	text-align: center;
	font-size: var(--fs-body-sm);
	font-weight: var(--fw-semibold);
	line-height: 1.25;
	color: var(--c-on-navy);
}

/* Biến thể hành động của Hero: hai CTA đồng cấp trên cùng một hàng. */
.wp-block-buttons.dst-hero__actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--sp-2);
	align-items: stretch;
}

.dst-hero__actions > .wp-block-button,
.dst-hero__actions > .wp-block-button > .wp-block-button__link {
	width: 100%;
}

.dst-hero__actions > .wp-block-button {
	display: flex;
}

.dst-hero__actions > .wp-block-button > .wp-block-button__link {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	min-height: 44px;
	padding-inline: var(--sp-2);
	font-size: var(--fs-body-sm);
}

/* Ảnh thật không dùng khung placeholder. Giữ đúng tỉ lệ gốc 3:2. */
.dst-hero__media {
	width: 100%;
	padding: 0;
	overflow: hidden;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.dst-hero__media .wp-block-image {
	margin: 0;
}

.dst-hero__media img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

@media (min-width: 768px) {
	.dst-hero__media {
		border-radius: var(--r-img);
	}
}

/* Mô tả dịch vụ là section độc lập ngay sau Hero. */
.dst-section--summary .dst-lead {
	margin-bottom: 0;
}

/* --------------------------------------------------------------------------
   Trust bar
   -------------------------------------------------------------------------- */
.dst-trustbar {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--sp-4);
}

@media (min-width: 992px) {
	.dst-trustbar { grid-template-columns: repeat(4, 1fr); }
}

/* --------------------------------------------------------------------------
   Quy trình (timeline)
   Mobile: 2x2 để không kéo dài trang. Desktop: 1 hàng + đường nối.
   -------------------------------------------------------------------------- */
/* Chain class khoi de thang `body .is-layout-flex` - xem ghi chu o 02-layout. */
.dst-timeline,
.wp-block-columns.dst-timeline {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--sp-6) var(--sp-4);
	position: relative;
}

@media (min-width: 992px) {
	.dst-timeline,
	.wp-block-columns.dst-timeline {
		grid-template-columns: repeat(4, 1fr);
		gap: var(--sp-5);
	}

	/* Đường nối ngang chỉ vẽ ở desktop, khi các bước nằm cùng 1 hàng. */
	.dst-timeline::before {
		content: "";
		position: absolute;
		top: 28px;
		left: 12%;
		right: 12%;
		height: 2px;
		background: linear-gradient(
			90deg,
			rgba(240, 123, 29, 0.12),
			rgba(240, 123, 29, 0.55),
			rgba(240, 123, 29, 0.12)
		);
	}
}

.dst-timeline > * {
	position: relative;
	z-index: var(--z-raised);
}

/* --------------------------------------------------------------------------
   Quy trình dọc — mẫu chuẩn T03
   Biến thể BEM độc lập để nghiệm thu trên Page 1103 trước khi thay block 510.
   -------------------------------------------------------------------------- */
.dst-process {
	position: relative;
	max-width: 960px;
	margin-inline: auto;
	padding: clamp(var(--sp-6), 5vw, var(--sp-9));
	overflow: hidden;
	background:
		radial-gradient(circle at 82% 10%, rgba(240, 123, 29, 0.10), transparent 30%),
		linear-gradient(145deg, var(--c-navy), var(--c-navy-2));
	border: 1px solid var(--c-on-navy-border);
	border-radius: clamp(20px, 3vw, 32px);
	box-shadow: 0 24px 60px rgba(13, 33, 55, 0.18);
}

.dst-process::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 180px;
	pointer-events: none;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
	background-size: 24px 24px;
	-webkit-mask-image: linear-gradient(to bottom, transparent, #000);
	mask-image: linear-gradient(to bottom, transparent, #000);
}

.dst-process__head {
	position: relative;
	z-index: var(--z-raised);
	max-width: 720px;
	margin-inline: auto;
	text-align: center;
}

.dst-process__head .dst-h2 {
	margin-bottom: var(--sp-3);
	color: var(--c-on-navy);
}

.dst-process__head .dst-lead {
	max-width: 620px;
	margin: 0 auto;
	color: var(--c-on-navy-muted);
}

.dst-process__rail {
	position: relative;
	z-index: var(--z-raised);
	display: grid;
	gap: var(--sp-4);
	margin-top: clamp(var(--sp-6), 5vw, var(--sp-8));
}

.dst-process__rail::before {
	content: "";
	position: absolute;
	top: 32px;
	bottom: 32px;
	left: 31px;
	width: 2px;
	background: linear-gradient(
		to bottom,
		rgba(255, 255, 255, 0.28),
		var(--c-orange),
		rgba(255, 255, 255, 0.28)
	);
}

.dst-process__item {
	--dst-process-icon: none;
	position: relative;
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	align-items: center;
	gap: var(--sp-4);
	min-width: 0;
}

.dst-process__item--survey {
	--dst-process-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 3h9a2 2 0 0 1 2 2v7'/%3E%3Cpath d='M8 3V2h5v1M8 8h5M8 12h3M5 3v18h7'/%3E%3Ccircle cx='17' cy='17' r='4'/%3E%3Cpath d='m20 20 2.5 2.5'/%3E%3C/svg%3E");
}

.dst-process__item--quote {
	--dst-process-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 2h9l5 5v14H5zM14 2v5h5M8 11h5M8 15h3'/%3E%3Ccircle cx='17' cy='17' r='4'/%3E%3Cpath d='M17 14.8v4.4M18.3 15.6c-.4-.5-2.1-.7-2.1.4s2.6.7 2.6 2c0 1.1-1.8 1-2.4.4'/%3E%3C/svg%3E");
}

.dst-process__item--build {
	--dst-process-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5-5L12 3.6 8.4 7.2 6.1 4.9a4 4 0 0 0 5 5l8.6 8.6a2.1 2.1 0 1 1-3 3L8.1 12.9'/%3E%3Cpath d='m3 21 6.4-6.4M5 15l4 4M15 3l6 6'/%3E%3C/svg%3E");
}

.dst-process__item--warranty {
	--dst-process-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2 20 6v6c0 5-3.4 8.7-8 10-4.6-1.3-8-5-8-10V6z'/%3E%3Cpath d='m8.5 12 2.3 2.3 4.7-5'/%3E%3C/svg%3E");
}

.dst-process__marker {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	margin: 0;
	background: var(--c-orange-strong);
	border: 6px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--r-pill);
	color: var(--c-white);
	font-family: var(--font-display);
	font-size: var(--fs-h3);
	font-weight: var(--fw-bold);
	line-height: 1;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.22), var(--sh-float);
}

.dst-process__card {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	align-items: center;
	gap: var(--sp-4);
	min-width: 0;
	min-height: 144px;
	padding: clamp(var(--sp-4), 3vw, var(--sp-6));
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(22, 50, 80, 0.74));
	border: 1px solid rgba(255, 255, 255, 0.13);
	border-radius: calc(var(--r-card) + 4px);
	box-shadow: 0 12px 32px rgba(4, 18, 31, 0.22);
}

.dst-process__card::before {
	content: "";
	display: block;
	width: 56px;
	height: 56px;
	background: var(--c-orange);
	-webkit-mask: var(--dst-process-icon) center / contain no-repeat;
	mask: var(--dst-process-icon) center / contain no-repeat;
}

.dst-process__copy {
	min-width: 0;
}

.dst-process__title {
	margin: 0 0 var(--sp-2);
	color: var(--c-on-navy);
	font-family: var(--font-display);
	font-size: var(--fs-h3);
	font-weight: var(--fw-bold);
	line-height: 1.2;
}

.dst-process__desc {
	margin: 0;
	color: var(--c-on-navy-muted);
	font-size: var(--fs-body);
	line-height: 1.65;
}

@media (max-width: 767px) {
	.dst-process {
		padding: var(--sp-6) var(--sp-3);
		border-radius: 20px;
	}

	.dst-process__rail {
		gap: var(--sp-3);
	}

	.dst-process__rail::before {
		top: 24px;
		bottom: 24px;
		left: 23px;
	}

	.dst-process__item {
		grid-template-columns: 48px minmax(0, 1fr);
		gap: var(--sp-2);
		align-items: start;
	}

	.dst-process__marker {
		width: 48px;
		height: 48px;
		border-width: 4px;
		font-size: var(--fs-h4);
	}

	.dst-process__card {
		display: grid;
		grid-template-columns: 40px minmax(0, 1fr);
		gap: var(--sp-2) var(--sp-3);
		min-height: 0;
		padding: var(--sp-4);
	}

	.dst-process__card::before {
		width: 40px;
		height: 40px;
		margin: 0;
	}

	.dst-process__copy {
		display: contents;
	}

	.dst-process__title {
		align-self: center;
		margin: 0;
		font-size: var(--fs-h4);
	}

	.dst-process__desc {
		grid-column: 1 / -1;
		font-size: var(--fs-body-sm);
	}
}

/* --------------------------------------------------------------------------
   Bảng giá
   -------------------------------------------------------------------------- */
.dst-section--pricing .dst-lead {
	margin-bottom: var(--sp-5);
}

.dst-price-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--sp-3);
	margin-top: var(--sp-4);
}

.dst-price-disclaimer {
	margin-top: var(--sp-3);
	font-size: var(--fs-body-sm);
	color: var(--c-muted);
	text-align: center;
}

/* --------------------------------------------------------------------------
   Khu vực phục vụ
   -------------------------------------------------------------------------- */
.dst-area-header {
	max-width: var(--container-narrow);
	margin-inline: auto;
	text-align: center;
}

.dst-area-list,
.wp-block-columns.dst-area-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--sp-4);
	max-width: 980px;
	margin: var(--sp-6) auto 0;
}

.dst-area-list > .wp-block-column {
	min-width: 0;
	margin: 0;
}

.dst-area-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	gap: var(--sp-4);
	height: 100%;
	padding: var(--sp-5);
	background: var(--c-white);
	border: var(--bd-1);
	border-radius: var(--r-card);
	box-shadow: var(--sh-1);
}

.dst-area-card::before {
	content: "";
	display: block;
	width: var(--control-h);
	height: var(--control-h);
	border: 1px solid var(--c-orange-strong);
	border-radius: var(--r-pill);
	background-color: var(--c-surface);
	background-repeat: no-repeat;
	background-position: center;
	background-size: var(--sp-5);
}

.dst-area-card--city::before {
	background-image: url("../icons/location.svg");
}

.dst-area-card--nearby::before {
	background-image: url("../icons/clock.svg");
}

.dst-area-card__body {
	display: grid;
	gap: var(--sp-2);
}

.dst-area-card__title,
.dst-area-card__text {
	margin: 0;
}

.dst-area-card__title {
	color: var(--c-navy);
	font-size: var(--fs-h4);
	font-weight: var(--fw-bold);
	line-height: var(--lh-tight);
}

.dst-area-card__text {
	color: var(--c-muted);
	font-size: var(--fs-body);
	line-height: var(--lh-body);
}

.dst-area-actions {
	justify-content: center;
	margin-top: var(--sp-5);
}

@media (min-width: 768px) {
	.dst-area-list,
	.wp-block-columns.dst-area-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--sp-5);
	}

	.dst-area-card {
		padding: var(--sp-6);
	}
}

/* --------------------------------------------------------------------------
   Quote + Form (section navy)
   -------------------------------------------------------------------------- */
.dst-quote-section {
	background: var(--c-navy);
}

.dst-quote-section .dst-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--sp-6);
	align-items: start;
}

@media (min-width: 992px) {
	.dst-quote-section--split .dst-container {
		grid-template-columns: 1fr 1fr;
	}
}

/* Biến thể căn giữa: form hẹp lại, đặt chính giữa. */
.dst-quote-section--centered .dst-container {
	grid-template-columns: 1fr;
	text-align: center;
}

.dst-quote-section--centered .dst-form-card {
	max-width: 720px;
	margin-inline: auto;
	width: 100%;
	text-align: left;
}

.dst-quote-header {
	margin-bottom: var(--sp-5);
}

/* --------------------------------------------------------------------------
   CTA cuối trang
   -------------------------------------------------------------------------- */
.dst-cta-final {
	background: var(--c-navy);
	text-align: center;
}

.dst-cta-final .wp-block-buttons {
	justify-content: center;
	margin-top: var(--sp-5);
}

/* --------------------------------------------------------------------------
   Lưới thẻ liên quan (Công trình / Dịch vụ / Kiến thức)
   Dùng chung 1 lớp cho cả 3 nhóm — không tách 3 hệ như trước.
   -------------------------------------------------------------------------- */
/* Chain class khối: lưới này có khi đặt trên wp-block-columns, phải thắng
   `body .is-layout-flex` — xem ghi chú độ ưu tiên ở 02-layout. */
.dst-related-grid,
.wp-block-columns.dst-related-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--sp-5);
}

@media (min-width: 768px) {
	.dst-related-grid,
	.wp-block-columns.dst-related-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 992px) {
	.dst-related-grid,
	.wp-block-columns.dst-related-grid { grid-template-columns: repeat(3, 1fr); }
}

.dst-related-actions {
	display: flex;
	justify-content: center;
	margin-top: var(--sp-5);
}

/* --------------------------------------------------------------------------
   Bỏ section khỏi mục lục
   -------------------------------------------------------------------------- */
.dst-toc-skip { /* đánh dấu ngữ nghĩa cho JS/TOC, không có style */ }


/* ==========================================================================
   SITE CHROME - HEADER / FOOTER
   --------------------------------------------------------------------------
   Astra dat NEN cua top bar (#0D2137) va footer (#070F1A) qua Customizer.
   Phan nay CHI lo mau chu/lien ket doc duoc tren nen toi do. KHONG dat lai
   nen o day - nen van do Astra Customizer quan ly (mot nguon su that).
   ========================================================================== */

/* --- Header dinh (sticky) ----------------------------------------------
   #masthead dinh khi cuon de giu Menu + Hotline/CTA luon trong tam tay.
   Khong dung tinh nang Sticky Header cua Astra Pro (chua cai) - lam bang
   CSS + JS cua child theme. Chieu cao thuc do header-height.js do va ghi
   vao --header-h (dung cho .dst-toc-bar va scroll-margin-top xep chong
   dung thu tu, khong hard-code mot con so co dinh vi top bar co the xuong
   dong o mobile). #page dung overflow-x: clip (khong phai hidden) de sticky
   khong bi vo - xem ghi chu tai 02-layout.css. */
#masthead {
	position: sticky;
	top: 0;
	z-index: var(--z-header);
}

/* --- Nhan dien thuong hieu trong Off-Canvas mobile -------------------- */
.dst-mobile-menu-branding {
	display: flex;
	align-items: center;
	min-height: var(--tap-min);
	padding-block: var(--sp-2);
	border-bottom: 1px solid var(--c-border);
}

.dst-mobile-menu-branding .custom-logo-link {
	display: inline-flex;
}

.dst-mobile-menu-branding .custom-logo {
	display: block;
	width: auto;
	max-width: 160px;
	height: auto;
}

/* --- Thanh tren cung: bo cuc rieng cua ta --------------------------------
   Astra chi giu phan NEN cua thanh (Customizer). Bo cuc va icon thuoc ve
   `.dst-topbar*` de khong phu thuoc ten class noi bo cua theme cha.
   Icon dung chung file o assets/icons/, to mau bang currentColor. */
.dst-topbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--sp-2) var(--sp-4);
	font-size: var(--fs-caption);
}

.dst-topbar-l,
.dst-topbar-r {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--sp-2) var(--sp-4);
}

.dst-topbar-item {
	display: inline-flex;
	align-items: center;
	gap: var(--sp-2);
}

.dst-topbar-icon {
	flex: none;
	display: inline-block;
	width: 16px;
	height: 16px;
	background-color: currentColor;
	-webkit-mask: center / contain no-repeat;
	mask: center / contain no-repeat;
}

.dst-topbar-icon--area {
	-webkit-mask-image: url("../icons/location.svg");
	mask-image: url("../icons/location.svg");
}

.dst-topbar-icon--hours {
	-webkit-mask-image: url("../icons/clock.svg");
	mask-image: url("../icons/clock.svg");
}

.dst-topbar-icon--phone {
	-webkit-mask-image: url("../icons/phone.svg");
	mask-image: url("../icons/phone.svg");
}

/* Mobile: xep can giua cho can, khong de lech mot ben. */
@media (max-width: 767.98px) {
	.dst-topbar,
	.dst-topbar-l,
	.dst-topbar-r {
		justify-content: center;
		text-align: center;
	}
}

/* --- Thanh tren cung (nen navy) --------------------------------------- */
.ast-above-header-bar,
.ast-above-header-bar p,
.ast-above-header-bar span,
.ast-above-header-bar div {
	color: var(--c-on-navy-muted);
}

.ast-above-header-bar a {
	color: var(--c-white);
	font-weight: var(--fw-semibold);
}

.ast-above-header-bar a:hover,
.ast-above-header-bar a:focus {
	color: var(--c-orange);
}

/* --- Footer (nen #070F1A) --------------------------------------------- */
.site-primary-footer-wrap,
.site-below-footer-wrap,
.site-primary-footer-wrap p,
.site-below-footer-wrap p,
.site-primary-footer-wrap li,
.site-below-footer-wrap li {
	color: var(--c-on-navy-muted);
}

.site-primary-footer-wrap h2,
.site-primary-footer-wrap h3,
.site-primary-footer-wrap h4,
.site-primary-footer-wrap .widget-title {
	color: var(--c-orange);
	font-family: var(--font-body);
	font-size: var(--fs-h5);
	font-weight: var(--fw-semibold);
}

.site-primary-footer-wrap a,
.site-below-footer-wrap a {
	color: var(--c-on-navy-muted);
}

.site-primary-footer-wrap a:hover,
.site-primary-footer-wrap a:focus,
.site-below-footer-wrap a:hover,
.site-below-footer-wrap a:focus {
	color: var(--c-orange);
}

/* Cỡ chữ danh sách/liên hệ ở footer — trước đây là <style> nhắm riêng
   #custom_html-5 trong widget block-6. Nay áp dụng đồng nhất cho cả footer. */
.site-primary-footer-wrap li,
.site-primary-footer-wrap li a {
	font-size: clamp(15px, 4.4vw, 17px);
	line-height: 1.65;
}

/* Email dài không được xuống dòng giữa chừng. */
.site-primary-footer-wrap a[href^="mailto:"] {
	display: inline-block;
	max-width: 100%;
	white-space: nowrap;
}

/* Tỉ lệ 4 cột của Astra Footer Builder — đưa về breakpoint chuẩn 992px. */
@media (min-width: 992px) {
	.site-primary-footer-inner-wrap.ast-builder-grid-row {
		grid-template-columns:
			minmax(0, 0.95fr) minmax(0, 0.9fr) minmax(0, 0.9fr) minmax(0, 1.25fr);
	}
}

.site-below-footer-wrap {
	border-top: 1px solid var(--c-on-navy-border);
}

/* --- Trang tắt tiêu đề ------------------------------------------------
   Astra vẫn in .entry-header rỗng — ẩn để không tạo
   khoảng trắng đầu trang. Trước đây nằm trong <style> của block 811. */
.entry-header.ast-no-title {
	display: none;
}

/* Breadcrumb la section nhip ngan, khong dung khoang dem cua section noi dung. */
.dst-section--breadcrumb {
	--dst-section-padding-y: var(--section-y-sm);
}

/* --------------------------------------------------------------------------
   T05 — KNOWLEDGE ARTICLE
   Trinh bay rieng cua template; layout rong/hep nam o 02-layout.css.
   -------------------------------------------------------------------------- */
body.single-post.dst-template-article .entry-header {
	padding-block: var(--section-y-sm) var(--sp-5);
	text-align: center;
	background: var(--c-white);
}

body.single-post.dst-template-article .entry-title {
	margin: 0 0 var(--sp-2);
	color: var(--c-navy);
}

body.single-post.dst-template-article .entry-meta {
	font-size: var(--fs-body-sm);
	line-height: var(--lh-tight);
	color: var(--c-muted);
}

body.single-post.dst-template-article .entry-meta a {
	color: inherit;
	text-decoration: none;
}

.dst-article-intro .dst-lead {
	margin: 0;
	text-align: center;
}

.dst-article-body {
	font-size: var(--fs-body);
	line-height: var(--lh-body);
}

.dst-article-body > :first-child {
	margin-top: 0;
}

.dst-article-body > :last-child {
	margin-bottom: 0;
}
