/*
Theme Name: Xe Bus Yêu Thương
Template: kadence
Description: Child theme của Kadence cho website Xe Bus Yêu Thương. Design system: docs/design-system.md
Version: 0.3.0
Text Domain: xebus-child
*/

/* ==========================================================================
   1. Tokens
   ========================================================================== */
:root {
	--xb-primary: #6B3F1D;        /* nâu trầm — 8:1 trên nền giấy dó */
	--xb-primary-dark: #4A2A12;
	--xb-primary-soft: #EFE3D0;
	--xb-green: #3F6B4E;          /* xanh lá sen — nút đặt hàng, 6.1:1 với chữ trắng */
	--xb-green-dark: #2F5240;
	--xb-green-soft: #E3EDE4;
	--xb-gold: #C98A1B;           /* vàng nghệ — chỉ dùng trang trí */
	--xb-focus: #A16207;
	--xb-bg: #F7F2E8;             /* nền giấy dó */
	--xb-surface: #FFFDF8;
	--xb-text: #2E2A24;           /* 12.8:1 */
	--xb-muted: #5E554A;          /* 6.5:1 trên nền */
	--xb-border: #E6DCC9;
	--xb-on-dark: #EFE3D0;        /* chữ trên nền tối */
	--xb-on-dark-accent: #D9B98C; /* 7.6:1 trên nền tối */
	--xb-radius-sm: 6px;
	--xb-radius: 8px;
	--xb-radius-lg: 12px;
	--xb-shadow: 0 1px 2px rgba(46, 42, 36, .05), 0 6px 18px rgba(46, 42, 36, .05);
	--xb-shadow-hover: 0 2px 4px rgba(46, 42, 36, .06), 0 14px 32px rgba(46, 42, 36, .10);
	--xb-ease: cubic-bezier(.2, .7, .2, 1);
	--xb-font: 'Be Vietnam Pro', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--xb-font-head: 'Lora', Georgia, 'Times New Roman', serif;

	/* Map sang bảng màu của Kadence để toàn theme đồng bộ. */
	--global-palette1: var(--xb-primary);
	--global-palette2: var(--xb-primary-dark);
	--global-palette3: var(--xb-text);
	--global-palette4: #3F3A32;
	--global-palette5: var(--xb-muted);
	--global-palette6: #857A6C;
	--global-palette7: var(--xb-border);
	--global-palette8: var(--xb-bg);
	--global-palette9: var(--xb-surface);
	--global-body-font-family: var(--xb-font);
	--global-heading-font-family: var(--xb-font-head);
	--global-palette-highlight: var(--xb-primary);
	--global-palette-highlight-alt: var(--xb-primary-dark);
	--global-palette-btn-bg: var(--xb-green);
	--global-palette-btn-bg-hover: var(--xb-green-dark);
}

/* ==========================================================================
   2. Base
   ========================================================================== */
body {
	font-family: var(--xb-font);
	font-size: 17px;
	line-height: 1.6;
	color: var(--xb-text);
	background: var(--xb-bg);
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, .entry-title {
	font-family: var(--xb-font-head);
	color: var(--xb-text);
	letter-spacing: -.01em;
}
a { color: var(--xb-primary); }
a:hover { color: var(--xb-primary-dark); }
:focus-visible {
	outline: 3px solid var(--xb-focus);
	outline-offset: 2px;
	border-radius: 6px;
}
.content-bg, body.content-style-unboxed .site { background: var(--xb-bg); }
.xebus-icon { flex: none; vertical-align: middle; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* ==========================================================================
   3. Header
   ========================================================================== */
.site-header .site-main-header-wrap .site-header-row-container-inner,
.site-header .site-mobile-header-wrap .site-header-row-container-inner {
	background: rgba(247, 242, 232, .94);
	backdrop-filter: saturate(1.4) blur(10px);
	border-bottom: 1px solid var(--xb-border);
}
.site-branding .site-title {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: var(--xb-font-head);
	font-weight: 700;
	font-size: 22px;
	color: var(--xb-text);
}
.site-branding .site-title::before {
	content: "";
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--xb-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E") center / 22px no-repeat;
	box-shadow: none;
}
.main-navigation .primary-menu-container > ul > li.menu-item > a {
	font-weight: 600;
	font-size: 16px;
	color: var(--xb-text);
	padding-top: 10px;
	padding-bottom: 10px;
}
.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a {
	color: var(--xb-primary);
}
.header-cart-button, .header-mobile-cart-wrap .header-cart-button {
	min-width: 44px;
	min-height: 44px;
	border-radius: 999px;
	background: var(--xb-primary-soft) !important;
	color: var(--xb-primary-dark) !important;
}
.header-cart-total { background: var(--xb-primary) !important; color: #fff !important; }

/* Banner tiêu đề trang (cửa hàng, giỏ hàng…) */
.entry-hero .entry-hero-container-inner {
	background: var(--xb-bg);
	border-bottom: 1px solid var(--xb-border);
}
.entry-hero .entry-header { min-height: 160px; }
.entry-hero .entry-title { font-size: clamp(28px, 4vw, 42px); font-weight: 600; }
.entry-hero .entry-header { text-align: center; }

/* ==========================================================================
   4. Buttons
   ========================================================================== */
.xb-btn,
.woocommerce .button, .woocommerce button.button, .woocommerce a.button,
.woocommerce #respond input#submit, .wp-block-button__link, button.single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 12px 22px;
	border-radius: var(--xb-radius) !important;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none !important;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .2s var(--xb-ease), transform .2s var(--xb-ease), box-shadow .2s var(--xb-ease);
}
.xb-btn--primary,
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .wp-block-button__link {
	background: var(--xb-green);
	color: #fff !important;
	border: 0;
	box-shadow: none;
}
.xb-btn--primary:hover,
.woocommerce .button:hover, .woocommerce button.button:hover, .woocommerce a.button:hover, .wp-block-button__link:hover {
	background: var(--xb-green-dark);
	color: #fff !important;
	transform: translateY(-1px);
}
.xb-btn--ghost {
	background: transparent;
	color: var(--xb-primary) !important;
	border: 1.5px solid var(--xb-primary);
}
.xb-btn--ghost:hover { background: var(--xb-primary-soft); }
.xb-btn--light { background: var(--xb-surface); color: var(--xb-primary-dark) !important; border: 1.5px solid var(--xb-border); }
.xb-btn--light:hover { background: var(--xb-primary-soft); }
.woocommerce a.added_to_cart { display: none; } /* giỏ hàng đã có trên header */
.woocommerce .button.loading { opacity: .7; }

/* ==========================================================================
   5. Trang chủ — các khối
   ========================================================================== */
.home .entry-content-wrap { padding: 0; background: transparent; box-shadow: none; }
.home .content-container { max-width: 1200px; }
.home .entry-content > * + * { margin-top: 0; }
.home .entry-content > .wp-block-group, .home .entry-content > section,
.home .entry-content > div, .home .entry-content > ul, .home .entry-content > dl, .home .entry-content > ol {
	margin-bottom: clamp(48px, 7vw, 88px);
}

.xb-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 12px;
	padding: 6px 14px;
	border-radius: 999px;
	background: var(--xb-primary-soft);
	color: var(--xb-primary-dark);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* Hero — căn giữa, hoa sen, ảnh thật khung vòm */
.xb-hero {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: clamp(36px, 6vw, 72px) clamp(4px, 3vw, 24px) 0;
	margin-top: 8px;
}
.xb-hero__lotus { color: var(--xb-green); margin-bottom: 14px; }
.xb-hero__title {
	margin: 0 0 16px;
	max-width: 16em;
	font-family: var(--xb-font-head);
	font-size: clamp(32px, 5vw, 56px);
	line-height: 1.18;
	font-weight: 600;
	text-wrap: balance;
}
.xb-hero__lead { margin: 0 auto 28px; font-size: clamp(17px, 1.6vw, 19px); color: var(--xb-muted); max-width: 36em; }
.xb-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.xb-hero__note {
	display: flex; align-items: center; justify-content: center; gap: 8px;
	margin: 20px 0 0; font-size: 15px; font-weight: 600; color: var(--xb-green);
}
.xb-hero__art {
	width: 100%; max-width: 900px; margin-top: clamp(28px, 4vw, 44px);
	aspect-ratio: 16 / 8; overflow: hidden;
	border-radius: 240px 240px var(--xb-radius-lg) var(--xb-radius-lg);
	border: 8px solid var(--xb-surface);
	outline: 1px solid var(--xb-border);
}
.xb-hero__art img { width: 100%; height: 100%; object-fit: cover; display: block; }
/* Kadence đặt margin mặc định cho h1/p trong .entry-content — ghi đè cho các khối của mình. */
.entry-content .xb-hero .xb-eyebrow,
.entry-content .xb-section-head .xb-eyebrow { margin: 0 0 14px; }
.entry-content .xb-hero__title { margin: 0 0 16px; }
.entry-content .xb-hero__lead { margin: 0 auto 28px; }
.entry-content .xb-section-head h2 { margin: 0; }
.entry-content .xb-section-head__text { margin: 8px 0 0; }

/* Kadence thêm padding-left 32px cho mọi ul/ol trong .entry-content → các khối lưới bị đẩy lệch sang phải và tràn ở màn hẹp. */
.entry-content .xb-trust, .entry-content .xb-steps,
.entry-content .xebus-don-vi-list, .entry-content .xebus-info { padding-left: 0; padding-right: 0; margin-left: 0; margin-right: 0; }

/* Trust strip */
.xb-trust {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px;
}
.xb-trust li {
	display: flex; gap: 14px; align-items: flex-start;
	padding: 20px; border-radius: var(--xb-radius);
	background: var(--xb-surface); border: 1px solid var(--xb-border);
}
.xb-trust__icon {
	display: grid; place-items: center; width: 48px; height: 48px; flex: none;
	border-radius: 50%; background: var(--xb-green-soft); color: var(--xb-green);
}
.xb-trust li:nth-child(even) .xb-trust__icon { background: var(--xb-primary-soft); color: var(--xb-primary); }
.xb-trust strong { display: block; font-size: 17px; margin-bottom: 2px; }
.xb-trust li > span:last-child > span { display: block; font-size: 15px; color: var(--xb-muted); line-height: 1.5; }

/* Stats */
.xb-stats {
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 0;
	margin: 0; padding: 28px clamp(16px, 3vw, 40px);
	border-radius: var(--xb-radius-lg);
	background: var(--xb-text); color: var(--xb-on-dark);
}
.xb-stats > div { display: flex; flex-direction: column-reverse; padding: 8px 20px; border-left: 1px solid rgba(255,255,255,.14); }
.xb-stats > div:first-child { border-left: 0; }
.xb-stats dt { font-size: 15px; color: var(--xb-on-dark); font-weight: 500; }
.xb-stats dd { margin: 0; font-size: clamp(26px, 3.4vw, 40px); font-family: var(--xb-font-head); font-weight: 600; color: var(--xb-on-dark-accent); line-height: 1.15; font-variant-numeric: tabular-nums; }

/* Section head */
.xb-section-head {
	display: flex; align-items: flex-end; justify-content: space-between; gap: 16px;
	margin-bottom: 24px !important;
}
.xb-section-head h2 { margin: 0; font-size: clamp(26px, 3.2vw, 36px); font-weight: 600; }
.xb-section-head__text { margin: 8px 0 0; color: var(--xb-muted); max-width: 40em; }
.xb-link {
	display: inline-flex; align-items: center; gap: 6px; min-height: 44px;
	font-weight: 700; text-decoration: none; white-space: nowrap;
}
.xb-link svg { transition: transform .2s var(--xb-ease); }
.xb-link:hover svg { transform: translateX(3px); }

/* Steps */
.xb-steps {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; counter-reset: none;
}
.xb-steps li {
	position: relative; display: flex; flex-direction: column; gap: 8px;
	padding: 28px 22px 24px; border-radius: var(--xb-radius);
	background: var(--xb-surface); border: 1px solid var(--xb-border);
}
.xb-steps__num {
	position: absolute; top: 16px; right: 18px;
	font-family: var(--xb-font-head); font-size: 44px; font-weight: 600; line-height: 1; color: var(--xb-primary-soft);
}
.xb-steps__icon {
	display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: 8px;
	border-radius: 50%; background: transparent; color: var(--xb-primary);
	border: 1.5px solid var(--xb-primary);
}
.xb-steps strong { font-size: 18px; }
.xb-steps li > span:last-child { color: var(--xb-muted); font-size: 15px; line-height: 1.55; }

/* Story band */
.xb-story {
	display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px;
	padding: clamp(28px, 5vw, 48px);
	border-radius: var(--xb-radius-lg);
	background: var(--xb-primary-soft);
	color: var(--xb-primary-dark);
	border: 1px solid var(--xb-border);
}
.xb-story__icon { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: var(--xb-surface); color: var(--xb-green); }
.xb-story blockquote { margin: 0; padding: 0; border: 0; }
.xb-story blockquote p { margin: 0 0 6px; font-family: var(--xb-font-head); font-size: clamp(19px, 2.2vw, 26px); font-weight: 500; line-height: 1.5; color: var(--xb-primary-dark); font-style: italic; }
.xb-story blockquote footer { color: var(--xb-muted); font-size: 15px; }

/* Thẻ đơn vị (plugin) — viền lá sen bên trái, tên đơn vị font có chân */
.xebus-don-vi-card a { background: var(--xb-surface); border-left: 4px solid var(--xb-green); }
.xebus-don-vi-card strong { font-family: var(--xb-font-head); font-weight: 600; font-size: 19px; }
.xebus-don-vi-card__icon { border-radius: 50% !important; }

/* ==========================================================================
   6. Thẻ sản phẩm
   ========================================================================== */
.woocommerce ul.products { gap: 20px; }
.woocommerce ul.products li.product {
	position: relative;
	display: flex; flex-direction: column;
	background: var(--xb-surface);
	border: 1px solid var(--xb-border);
	border-radius: var(--xb-radius);
	overflow: hidden;
	box-shadow: none;
	transition: box-shadow .25s var(--xb-ease), transform .25s var(--xb-ease);
}
.woocommerce ul.products li.product:hover { box-shadow: var(--xb-shadow-hover); transform: translateY(-2px); }
.woocommerce ul.products li.product .woocommerce-loop-image-link { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: var(--xb-primary-soft); }
.woocommerce ul.products li.product .woocommerce-loop-image-link img { width: 100%; height: 100%; object-fit: cover; margin: 0; }
.woocommerce ul.products li.product .product-details { display: flex; flex-direction: column; flex: 1; padding: 14px 16px 16px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--xb-font); font-size: 17px; font-weight: 600; line-height: 1.35; padding: 0; margin: 0 0 6px;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title a { color: var(--xb-text); }
.woocommerce ul.products li.product .price {
	font-size: 19px; font-weight: 800; color: var(--xb-primary); margin: 4px 0 12px;
	font-variant-numeric: tabular-nums;
}
.woocommerce ul.products li.product .product-action-wrap { margin-top: auto; }
.woocommerce ul.products li.product .button { width: 100%; min-height: 46px; font-size: 15px; box-shadow: none; }
.woocommerce ul.products li.product .button svg { display: none; }
/* Sau khi thêm vào giỏ: Kadence thu nút về cao 0 và hiện link "Xem giỏ hàng" (mình đã ẩn link đó).
   Thay bằng nút "Đã thêm vào giỏ" có dấu tích, bấm tiếp vẫn thêm được. */
.woocommerce ul.products li.product .button.added,
.woocommerce ul.products.woo-archive-btn-button li.product .button.added {
	height: auto; min-height: 46px; padding: 10px 14px; overflow: visible;
	font-size: 0; background: var(--xb-green-dark);
}
.woocommerce ul.products li.product .button.added .kadence-svg-iconset { display: none; }
.woocommerce ul.products li.product .button.added::before {
	content: "Đã thêm vào giỏ";
	display: inline-flex; align-items: center; gap: 6px;
	font-size: 15px; line-height: 1.2; color: #fff;
	padding-left: 24px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") left center / 18px no-repeat;
}
.woocommerce ul.products li.product .button.loading .kadence-spinner-svg { display: inline-block; margin-left: 6px; }
.xebus-don-vi {
	align-self: flex-start;
	display: inline-flex; align-items: center;
	font-size: 13px; font-weight: 600; line-height: 1.3;
	color: var(--xb-green); background: var(--xb-green-soft);
	border-radius: 999px; padding: 4px 10px; margin: 0 0 6px;
	text-decoration: none;
}
.xebus-don-vi:hover { color: #fff; background: var(--xb-green); }
.xb-tag-ship {
	position: absolute; top: 10px; left: 10px; z-index: 2;
	font-size: 12px; font-weight: 700; color: var(--xb-primary-dark);
	background: rgba(255,253,248,.94); border-radius: var(--xb-radius-sm); padding: 4px 10px;
	box-shadow: 0 2px 8px rgba(46,42,36,.1);
}
.woocommerce ul.products li.product .out-of-stock, .woocommerce span.onsale { border-radius: 999px; }

/* Chip lọc danh mục */
.xb-chips { margin: 0 0 24px; }
.xb-chips ul {
	list-style: none; margin: 0; padding: 0 0 4px;
	display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none;
}
.xb-chips ul::-webkit-scrollbar { display: none; }
.xb-chips a {
	display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 8px 16px;
	border-radius: 999px; border: 1px solid var(--xb-border); background: var(--xb-surface);
	color: var(--xb-text); font-weight: 600; font-size: 15px; white-space: nowrap; text-decoration: none;
	transition: border-color .2s, background-color .2s, color .2s;
}
.xb-chips a span { font-size: 13px; color: var(--xb-muted); }
.xb-chips a:hover { border-color: var(--xb-primary); color: var(--xb-primary); }
.xb-chips a[aria-current="page"] { background: var(--xb-primary); border-color: var(--xb-primary); color: #fff; }
.xb-chips a[aria-current="page"] span { color: var(--xb-on-dark); }
.woocommerce .woocommerce-ordering select { min-height: 44px; border-radius: var(--xb-radius); border-color: var(--xb-border); padding: 0 16px; }

/* ==========================================================================
   7. Trang chi tiết sản phẩm
   ========================================================================== */
.single-product div.product .product_title { font-size: clamp(26px, 3.4vw, 36px); font-weight: 600; }
.single-product div.product p.price { font-size: 28px; font-weight: 800; color: var(--xb-primary); }
.single-product div.product .woocommerce-product-gallery { border-radius: var(--xb-radius); overflow: hidden; }
.single-product div.product form.cart .quantity .qty { min-height: 48px; border-radius: var(--xb-radius); }
.single-product .woocommerce-product-details__short-description { color: var(--xb-muted); }
.xebus-ship-badge strong {
	display: inline-block; padding: 4px 12px; border-radius: 999px;
	background: var(--xb-primary-soft); color: var(--xb-primary-dark); font-size: 14px;
}

/* ==========================================================================
   8. Giỏ hàng & đặt hàng
   ========================================================================== */
.woocommerce-cart .entry-content-wrap, .woocommerce-checkout .entry-content-wrap { border-radius: var(--xb-radius); }
.woocommerce form .form-row label { font-weight: 600; font-size: 16px; margin-bottom: 6px; }
.woocommerce form .form-row .input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
	min-height: 50px; padding: 12px 14px; font-size: 17px;
	border: 1.5px solid #D9CDB7; border-radius: var(--xb-radius-sm); background: var(--xb-surface);
	transition: border-color .2s, box-shadow .2s;
}
.woocommerce form .form-row textarea { min-height: 110px; }
.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus {
	border-color: var(--xb-green); box-shadow: 0 0 0 4px rgba(63, 107, 78, .18); outline: none;
}
.woocommerce form .form-row.woocommerce-invalid .input-text,
.woocommerce form .form-row.woocommerce-invalid select { border-color: #B91C1C; }
#order_review_heading { font-size: 22px; font-weight: 600; }
.woocommerce-checkout-review-order {
	padding: 20px; border-radius: var(--xb-radius); background: var(--xb-surface); border: 1px solid var(--xb-border);
}
.woocommerce-checkout #payment { background: var(--xb-bg); border-radius: var(--xb-radius-sm); }
#place_order { width: 100%; min-height: 56px; font-size: 18px; }

/* ==========================================================================
   9. Footer
   ========================================================================== */
.xb-footer { background: var(--xb-text); color: var(--xb-on-dark); margin-top: 64px; }
.xb-footer a { color: #fff; }
.xb-footer a:hover { color: var(--xb-on-dark-accent); }
.xb-footer__inner {
	max-width: 1200px; margin: 0 auto; padding: 56px 24px 40px;
	display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 40px;
}
.xb-footer__logo { display: flex; align-items: center; gap: 10px; font-family: var(--xb-font-head); font-size: 22px; font-weight: 600; color: #fff; margin: 0 0 12px; }
.xb-footer__logo svg { color: var(--xb-on-dark-accent); }
.xb-footer__brand p:last-child { font-size: 15px; line-height: 1.65; margin: 0; }
.xb-footer__title { font-size: 15px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--xb-on-dark-accent); margin: 0 0 16px; }
.xb-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; font-size: 15px; }
.xb-footer__list li { display: flex; gap: 10px; align-items: flex-start; }
.xb-footer__list svg { margin-top: 3px; color: var(--xb-on-dark-accent); }
.xb-footer__list--plain a { display: inline-block; padding: 2px 0; }
.xb-footer__bottom { border-top: 1px solid rgba(255,255,255,.1); }
.xb-footer__bottom p { max-width: 1200px; margin: 0 auto; padding: 18px 24px 96px; font-size: 14px; color: #C9B8A0; }

/* ==========================================================================
   10. Responsive
   ========================================================================== */
@media (max-width: 1024px) {
	.xb-trust, .xb-steps { grid-template-columns: repeat(2, 1fr); }
	.xb-footer__inner { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
	body { font-size: 16px; }
	.entry-hero .entry-header { min-height: 96px; }
	.xb-hero__art { aspect-ratio: 4 / 3; border-radius: 160px 160px var(--xb-radius) var(--xb-radius); border-width: 6px; }
	.site-branding .site-title { font-size: 19px; gap: 8px; white-space: nowrap; }
	.site-branding .site-title::before { width: 34px; height: 34px; background-size: 20px; border-radius: 10px; }
	.xb-stats > div { padding: 8px 12px; }
	.xb-stats dd { font-size: 26px; }
	.xb-stats > div:last-child dd { font-size: 19px; white-space: nowrap; }
	.xb-hero__actions .xb-btn { flex: 1 1 100%; }
	.xb-stats { grid-template-columns: 1fr 1fr; row-gap: 16px; }
	.xb-stats > div:nth-child(odd) { border-left: 0; }
	.xb-story { grid-template-columns: 1fr; text-align: left; }
	.xb-section-head { flex-direction: column; align-items: flex-start; }
	.xb-footer__inner { grid-template-columns: 1fr; gap: 28px; padding-top: 40px; }

	/* 2 sản phẩm mỗi hàng */
	.woocommerce ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}
	.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; }
	.woocommerce ul.products li.product .product-details { padding: 10px 12px 12px; }
	.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 15px; }
	.woocommerce ul.products li.product .price { font-size: 17px; margin-bottom: 10px; }
	.woocommerce ul.products li.product .button { font-size: 14px; padding: 10px 8px; }
	.woocommerce ul.products li.product .button.added { font-size: 0; }
	.woocommerce ul.products li.product .button.added::before { font-size: 14px; }
	.xebus-don-vi { font-size: 12px; }
}
@media (max-width: 480px) {
	.xb-trust, .xb-steps { grid-template-columns: 1fr; }
}
