/* Casa — CSS nền: chỉ những gì theme.json không làm được. */

/*
 * Thang chữ thân bài dùng chung cho mọi đoạn văn dài (trang, bài viết, sự
 * kiện, khối Montessori): 18px máy tính, 17px máy tính bảng, 16px điện thoại.
 * Không có đoạn "lead" cỡ riêng: mọi đoạn thân bài cùng một cỡ.
 */
:root {
	--casa-text: 18px;
}

@media (max-width: 1023px) {

	:root {
		--casa-text: 17px;
	}
}

@media (max-width: 599px) {

	:root {
		--casa-text: 16px;
	}
}

/* Skip link: ẩn, hiện khi nhận focus bàn phím. */
.skip-link.screen-reader-text:focus {
	position: fixed;
	z-index: 100000;
	inset-block-start: 8px;
	inset-inline-start: 8px;
	clip-path: none;
	width: auto;
	height: auto;
	padding: 12px 24px;
	background: var(--wp--preset--color--teal-800, #1b6269);
	color: var(--wp--preset--color--surface, #fff);
	font-weight: 700;
	text-decoration: none;
	line-height: normal;
}

/* Focus nhìn rõ: vòng teal-800 (7:1 trên trắng), viền teal-300 ngoài. */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible,
.wp-element-button:focus-visible,
.wp-block-button__link:focus-visible {
	outline: 3px solid var(--wp--preset--color--teal-800, #1b6269);
	outline-offset: 2px;
	box-shadow: 0 0 0 6px var(--wp--preset--color--teal-300, #3cc);
}

/* Nút: vùng chạm tối thiểu 44px. */
.wp-element-button,
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	min-width: 44px;
	box-sizing: border-box;
}

img,
video {
	max-width: 100%;
	height: auto;
}

@media (prefers-reduced-motion: reduce) {

	:where(*, *::before, *::after) {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
