/* ==========================================================================
   Trang chủ – các section + card sản phẩm
   ========================================================================== */
.hp-sec, .hp-pcard {
	--hm-primary: var(--hp-primary, #006ead);
	--hm-primary-700: var(--hp-primary-700, #004a75);
	--hm-primary-50: var(--hp-primary-50, #e8f3fa);
	--hm-accent: var(--hp-accent, #ffd200);
	--hm-red: #e0262d;
	--hm-ink: var(--hp-ink, #1b2430);
	--hm-muted: var(--hp-muted, #6b7684);
	--hm-line: var(--hp-line, #e5e9ef);
	--hm-soft: #f4f6f9;
	--hm-radius: 12px;
	--hm-shadow: 0 10px 30px -14px rgba(16, 38, 64, .28);
	font-family: var(--hp-font, Roboto, "Segoe UI", Arial, sans-serif);
	color: var(--hm-ink);
	-webkit-font-smoothing: antialiased;
}
.hp-sec { font-size: 14px; line-height: 1.5; padding: 28px 0; width: 100%; }

/* Widget Shortcode của Elementor co theo nội dung -> carousel (độ rộng %) bị bóp. Ép full width. */
.e-con > .elementor-widget-shortcode:has(.hp-sec, .hp-hero),
.e-con-inner > .elementor-widget-shortcode:has(.hp-sec, .hp-hero) { width: 100%; max-width: 100%; align-self: stretch; }
.elementor-widget-shortcode .elementor-shortcode:has(> .hp-sec, > .hp-hero) { width: 100%; }
.hp-carousel { width: 100%; min-width: 0; }
.hp-sec *, .hp-pcard *, .hp-sec *::before, .hp-sec *::after { box-sizing: border-box; }
.hp-sec span, .hp-sec p, .hp-pcard span, .hp-pcard p { line-height: inherit; font-family: inherit; }
.hp-sec ul { list-style: none; margin: 0; padding: 0; }
.hp-sec a, .hp-pcard a { text-decoration: none; transition: color .2s, background-color .2s, border-color .2s; }
.hp-sec img, .hp-pcard img { display: block; max-width: 100%; height: auto; }
.hp-sec .hp-container { width: 100%; max-width: var(--hp-container, 1430px); margin: 0 auto; padding: 0 16px; }
.hp-sec .hp-ico, .hp-pcard .hp-ico { width: 1em; height: 1em; flex: none; display: inline-block; vertical-align: middle; }
.hp-sec h2, .hp-sec h3, .hp-pcard h3 { margin: 0; padding: 0; font-family: inherit; }
.hp-sec h2::before, .hp-sec h2::after, .hp-sec h3::before, .hp-sec h3::after { display: none; }
.hp-sec button, .hp-sec button:hover, .hp-sec button:focus {
	font: inherit; color: inherit; background: none; border: 0; border-radius: 0;
	padding: 0; margin: 0; cursor: pointer; box-shadow: none; text-transform: none;
}
.hp-sec :focus-visible, .hp-pcard :focus-visible { outline: 2px solid var(--hm-primary); outline-offset: 2px; }
.hp-empty { margin: 0; padding: 24px; text-align: center; color: var(--hm-muted); background: #fff; border-radius: var(--hm-radius); }

/* Tiêu đề section chung */
.hp-sec__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.hp-sec .hp-sec__title {
	position: relative; padding-left: 14px;
	font-size: 22px; font-weight: 800; line-height: 1.25; text-transform: uppercase; letter-spacing: .2px;
	color: var(--hm-ink);
}
.hp-sec .hp-sec__title::before {
	display: block; content: ""; position: absolute; left: 0; top: 3px; bottom: 3px; width: 4px;
	border-radius: 4px; background: linear-gradient(180deg, var(--hm-primary), #0a86c9);
}
.hp-sec__more, .hp-cat__more, .hp-best__more {
	display: inline-flex; align-items: center; gap: 4px; flex: none;
	font-size: 14px; font-weight: 600; color: var(--hm-primary); white-space: nowrap;
}
.hp-sec__more .hp-ico, .hp-cat__more .hp-ico, .hp-best__more .hp-ico { transform: rotate(-90deg); font-size: 15px; transition: transform .2s; }
.hp-sec__more:hover .hp-ico, .hp-cat__more:hover .hp-ico, .hp-best__more:hover .hp-ico { transform: rotate(-90deg) translateY(3px); }

/* --------------------------------------------------------------------------
   Card sản phẩm
   -------------------------------------------------------------------------- */
.hp-pcard {
	position: relative; height: 100%;
	display: flex; flex-direction: column;
	background: #fff;
	border: 1px solid var(--hm-line);
	border-radius: var(--hm-radius);
	overflow: hidden;
	font-size: 14px; line-height: 1.45;
	transition: box-shadow .25s, border-color .25s, transform .25s;
}
.hp-pcard:hover { border-color: transparent; box-shadow: var(--hm-shadow); transform: translateY(-3px); }

.hp-pcard__media {
	position: relative; display: block;
	aspect-ratio: 1 / 1; overflow: hidden; background: #fff;
}
.hp-pcard .hp-pcard__img {
	width: 100%; height: 100% !important; object-fit: contain; padding: 10px;
	transition: transform .5s cubic-bezier(.2, .7, .2, 1);
}
.hp-pcard:hover .hp-pcard__img { transform: scale(1.06); }
.hp-pcard__badge {
	position: absolute; top: 10px; left: 10px;
	padding: 3px 8px; border-radius: 6px;
	background: var(--hm-red); color: #fff;
	font-size: 12px; font-weight: 700; line-height: 1.3 !important;
}
.hp-pcard__quick {
	position: absolute; left: 50%; bottom: 12px;
	display: inline-flex; align-items: center; gap: 6px;
	padding: 7px 14px; border-radius: 999px;
	background: rgba(27, 36, 48, .85); color: #fff;
	font-size: 12.5px; font-weight: 600; line-height: 1.2 !important; white-space: nowrap;
	opacity: 0; transform: translate(-50%, 8px);
	transition: opacity .25s, transform .25s;
	backdrop-filter: blur(4px);
}
.hp-pcard:hover .hp-pcard__quick { opacity: 1; transform: translate(-50%, 0); }

.hp-pcard__body { flex: 1; display: flex; flex-direction: column; gap: 6px; padding: 12px 14px 14px; border-top: 1px solid #f1f3f6; }
.hp-pcard .hp-pcard__title { font-size: 14.5px; font-weight: 600; line-height: 1.4; min-height: calc(1.4em * 2); }
.hp-pcard__title a {
	color: var(--hm-ink);
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.hp-pcard .hp-pcard__title a:hover { color: var(--hm-primary) !important; }

.hp-pcard__meta { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--hm-muted); line-height: 1 !important; }
.hp-pcard__views { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; }
.hp-pcard__views .hp-ico { font-size: 13px; }
.hp-stars {
	position: relative; display: inline-block; width: 70px; height: 13px; flex: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 13'%3E%3Cpath fill='%23d9dee5' d='M7 0l2.1 4.3 4.7.7-3.4 3.3.8 4.7L7 10.8 2.8 13l.8-4.7L.2 5l4.7-.7z'/%3E%3C/svg%3E") repeat-x 0 0 / 14px 13px;
}
.hp-stars__fill {
	position: absolute; left: 0; top: 0; bottom: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 13'%3E%3Cpath fill='%23ffb400' d='M7 0l2.1 4.3 4.7.7-3.4 3.3.8 4.7L7 10.8 2.8 13l.8-4.7L.2 5l4.7-.7z'/%3E%3C/svg%3E") repeat-x 0 0 / 14px 13px;
}

.hp-pcard__foot { margin-top: auto; padding-top: 4px; display: flex; align-items: flex-end; justify-content: space-between; gap: 8px; }
.hp-pcard__price { display: flex; flex-direction: column-reverse; gap: 1px; min-width: 0; line-height: 1.25 !important; }
.hp-pcard__price, .hp-pcard__price ins, .hp-pcard__price > .amount, .hp-pcard__price > .woocommerce-Price-amount {
	color: var(--hm-red); font-size: 16.5px; font-weight: 800; text-decoration: none; background: none;
}
.hp-pcard__price del { color: #9aa3ae; font-size: 12.5px; font-weight: 400; opacity: 1; }
.hp-pcard__price del .amount { color: inherit; font-size: inherit; font-weight: inherit; }
.hp-pcard__price ins .amount { color: inherit; }
.hp-pcard__price .screen-reader-text { position: absolute !important; }
.hp-pcard__price.is-contact { color: var(--hm-primary); font-size: 15px; }
.hp-pcard__price.is-contact .amount { color: var(--hm-primary); }

.hp-pcard__cart {
	flex: none; width: 38px; height: 38px; border-radius: 50%;
	display: grid; place-items: center; font-size: 18px;
	background: var(--hm-primary-50); color: var(--hm-primary);
	transition: background-color .2s, color .2s, transform .2s;
}
.hp-pcard .hp-pcard__cart:hover { background: var(--hm-primary); color: #fff !important; transform: scale(1.06); }
.hp-pcard__cart.is-call { background: #fff2f2; color: var(--hm-red); }
.hp-pcard .hp-pcard__cart.is-call:hover { background: var(--hm-red); }
.hp-pcard__cart.loading { opacity: .6; pointer-events: none; }
.hp-pcard__cart.added { background: #e7f7ec; color: #1f9d4c; }
.hp-pcard .added_to_cart { display: none !important; }

/* --------------------------------------------------------------------------
   Carousel sản phẩm
   -------------------------------------------------------------------------- */
.hp-carousel { position: relative; --hm-per: 5; --hm-gap: 16px; }
.hp-carousel__track {
	display: grid; grid-auto-flow: column;
	grid-auto-columns: calc((100% - var(--hm-gap) * (var(--hm-per) - 1)) / var(--hm-per));
	gap: var(--hm-gap);
	overflow-x: auto; overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory; scroll-behavior: smooth;
	scrollbar-width: none;
	padding: 6px 2px 14px; margin: -6px -2px -14px;
}
.hp-carousel__track::-webkit-scrollbar { display: none; }
.hp-carousel__item { scroll-snap-align: start; min-width: 0; }
.hp-carousel__nav {
	position: absolute; top: calc(50% - 40px); z-index: 2;
	width: 42px; height: 42px; border-radius: 50% !important;
	display: grid !important; place-items: center; font-size: 20px;
	background: #fff !important; color: var(--hm-ink) !important;
	border: 1px solid var(--hm-line) !important;
	box-shadow: 0 6px 18px -6px rgba(16, 38, 64, .3) !important;
	transition: opacity .2s, background-color .2s, color .2s;
}
.hp-carousel__nav--prev { left: -18px; }
.hp-carousel__nav--prev .hp-ico { transform: rotate(90deg); }
.hp-carousel__nav--next { right: -18px; }
.hp-carousel__nav--next .hp-ico { transform: rotate(-90deg); }
.hp-sec .hp-carousel__nav:hover { background: var(--hm-primary) !important; color: #fff !important; border-color: var(--hm-primary) !important; }
.hp-carousel__nav[disabled] { opacity: 0; pointer-events: none; }
.hp-carousel.is-static .hp-carousel__nav { display: none !important; }

/* --------------------------------------------------------------------------
   Tìm nhiều
   -------------------------------------------------------------------------- */
.hp-kw { padding: 14px 0 4px; }
.hp-kw__in { display: flex; align-items: center; gap: 12px; }
.hp-kw__label { flex: none; display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--hm-ink); }
.hp-kw__label .hp-ico { color: var(--hm-primary); font-size: 16px; }
.hp-kw__list { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 2px; }
.hp-kw__list::-webkit-scrollbar { display: none; }
.hp-kw__list a {
	display: block; white-space: nowrap;
	padding: 6px 14px; border-radius: 999px;
	background: #fff; border: 1px solid var(--hm-line);
	color: #3a4552; font-size: 13.5px;
}
.hp-sec .hp-kw__list a:hover { color: var(--hm-primary) !important; border-color: var(--hm-primary); background: var(--hm-primary-50); }

/* --------------------------------------------------------------------------
   Giải pháp theo công trình
   -------------------------------------------------------------------------- */
.hp-sol__head { text-align: center; margin-bottom: 22px; }
.hp-sol .hp-sec__title { display: inline-block; padding: 0; text-transform: none; font-size: 24px; }
.hp-sol .hp-sec__title::before { display: none; }
.hp-sol__desc { margin: 6px 0 0; color: var(--hm-muted); }
.hp-sol__list { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 14px; }
.hp-sol__item {
	height: 100%;
	display: flex; flex-direction: column; align-items: center; gap: 12px;
	padding: 22px 10px 18px;
	background: #fff; border: 1px solid var(--hm-line); border-radius: var(--hm-radius);
	text-align: center;
	transition: transform .25s, box-shadow .25s, border-color .25s;
}
a.hp-sol__item:hover { transform: translateY(-4px); box-shadow: var(--hm-shadow); border-color: transparent; }
.hp-sol__ico {
	width: 76px; height: 76px; border-radius: 50%;
	display: grid; place-items: center;
	background: radial-gradient(circle at 30% 30%, #fff, var(--hm-primary-50));
	box-shadow: inset 0 0 0 1px rgba(0, 110, 173, .12);
	transition: background-color .25s, transform .25s;
}
.hp-sol__ico img { width: 46px; height: 46px; object-fit: contain; }
a.hp-sol__item:hover .hp-sol__ico { transform: scale(1.06); }
.hp-sol__txt { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.hp-sol__name { font-size: 15px; font-weight: 700; color: var(--hm-ink); line-height: 1.3; }
.hp-sol__count { font-size: 12.5px; color: var(--hm-muted); }
.hp-sec a.hp-sol__item:hover .hp-sol__name { color: var(--hm-primary); }

/* Thẻ có ảnh thật: ảnh phủ kín, chữ trên lớp mờ ở đáy */
.hp-sol__item.has-photo {
	position: relative; overflow: hidden; padding: 0; gap: 0;
	aspect-ratio: 3 / 4; justify-content: flex-end; border: 0; background: #dfe5ec;
}
.hp-sol__item.has-photo .hp-sol__photo {
	position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover;
	transition: transform .6s cubic-bezier(.2, .7, .2, 1);
}
.hp-sol__item.has-photo::after {
	content: ""; position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(8, 24, 42, 0) 45%, rgba(8, 24, 42, .78) 100%);
	transition: background-color .3s;
}
.hp-sol__item.has-photo .hp-sol__txt { position: relative; z-index: 1; width: 100%; padding: 14px 10px 16px; }
.hp-sol__item.has-photo .hp-sol__name { color: #fff; font-size: 16px; text-shadow: 0 1px 4px rgba(0, 0, 0, .35); }
.hp-sol__item.has-photo .hp-sol__count { color: rgba(255, 255, 255, .85); }
.hp-sec a.hp-sol__item.has-photo:hover .hp-sol__name { color: var(--hm-accent); }
a.hp-sol__item.has-photo:hover .hp-sol__photo { transform: scale(1.07); }

/* --------------------------------------------------------------------------
   Top bán chạy
   -------------------------------------------------------------------------- */
.hp-best__panel {
	position: relative;
	padding: 20px 22px 24px;
	border-radius: 16px;
	background: linear-gradient(135deg, var(--hm-primary-700) 0%, var(--hm-primary) 55%, #0a8fd4 100%);
	overflow: hidden;
}
.hp-best__panel::before {
	content: ""; position: absolute; right: -60px; top: -90px; width: 300px; height: 300px; border-radius: 50%;
	background: rgba(255, 255, 255, .07); pointer-events: none;
}
.hp-best__head { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.hp-sec .hp-best__title {
	display: flex; align-items: center; gap: 10px;
	font-size: 22px; font-weight: 800; text-transform: uppercase; letter-spacing: .3px; color: #fff;
}
.hp-best__fire {
	width: 38px; height: 38px; border-radius: 50%;
	display: grid; place-items: center; font-size: 20px;
	background: var(--hm-accent); color: var(--hm-red);
	animation: hp-flame 1.6s ease-in-out infinite;
}
@keyframes hp-flame { 50% { transform: scale(1.1) rotate(-6deg); } }
.hp-best__more { color: #fff; padding: 7px 14px; border-radius: 999px; background: rgba(255, 255, 255, .14); }
.hp-sec .hp-best__more:hover { background: #fff; color: var(--hm-primary) !important; }
.hp-best .hp-pcard { border-color: transparent; }
.hp-best .hp-carousel__nav--prev { left: -12px; }
.hp-best .hp-carousel__nav--next { right: -12px; }

/* --------------------------------------------------------------------------
   Khối danh mục
   -------------------------------------------------------------------------- */
/* .hp-catsec – không dùng .hp-cat vì trùng với nút danh mục ở header */
.hp-catsec { padding: 22px 0; }
.hp-catsec:nth-of-type(even) { background: var(--hm-soft); }
.hp-cat__head {
	display: flex; align-items: center; gap: 20px;
	margin-bottom: 18px; padding-bottom: 12px;
	border-bottom: 2px solid var(--hm-line);
	position: relative;
}
.hp-cat__head::after {
	content: ""; position: absolute; left: 0; bottom: -2px; width: 90px; height: 2px; background: var(--hm-primary);
}
.hp-sec .hp-cat__title { flex: none; font-size: 21px; font-weight: 800; text-transform: uppercase; letter-spacing: .2px; }
.hp-cat__title a { color: var(--hm-ink); }
.hp-sec .hp-cat__title a:hover { color: var(--hm-primary) !important; }
.hp-cat__subs { display: flex; gap: 8px; flex: 1; min-width: 0; overflow-x: auto; scrollbar-width: none; padding: 2px; }
.hp-cat__subs::-webkit-scrollbar { display: none; }
.hp-cat__subs a {
	display: block; white-space: nowrap;
	padding: 6px 14px; border-radius: 999px;
	background: #fff; border: 1px solid var(--hm-line);
	color: #3a4552; font-size: 13.5px;
}
.hp-sec .hp-cat__subs a:hover { color: #fff !important; background: var(--hm-primary); border-color: var(--hm-primary); }
.hp-cat__more { margin-left: auto; }

/* --------------------------------------------------------------------------
   Tin tức + Thành tựu
   -------------------------------------------------------------------------- */
.hp-news { padding: 36px 0 44px; }
.hp-news__grid { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(0, 1fr); gap: 32px; }
.hp-news__list { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); grid-auto-rows: auto; gap: 14px 22px; }
.hp-post { display: grid; grid-template-columns: 150px 1fr; gap: 14px; align-items: start; }
.hp-post--lead { grid-row: span 3; grid-template-columns: 1fr; gap: 14px; }
.hp-post__thumb { display: block; overflow: hidden; border-radius: 10px; aspect-ratio: 16 / 10; background: var(--hm-soft); }
.hp-post__thumb img { width: 100%; height: 100% !important; object-fit: cover; transition: transform .5s; }
.hp-post:hover .hp-post__thumb img { transform: scale(1.05); }
.hp-post__body { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.hp-post__date { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--hm-muted); }
.hp-post__date .hp-ico { font-size: 13px; }
.hp-sec .hp-post__title { font-size: 15px; font-weight: 700; line-height: 1.4; }
.hp-post--lead .hp-post__title { font-size: 19px; }
.hp-post__title a { color: var(--hm-ink); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.hp-sec .hp-post__title a:hover { color: var(--hm-primary) !important; }
.hp-post__excerpt { margin: 0; color: var(--hm-muted); font-size: 14px; line-height: 1.6; }

.hp-ach__card {
	border-radius: 14px; overflow: hidden;
	background: #fff; border: 1px solid var(--hm-line);
	box-shadow: 0 8px 26px -18px rgba(16, 38, 64, .35);
}
.hp-ach__img { width: 100%; aspect-ratio: 1024 / 640; object-fit: cover; height: auto; }
.hp-ach__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hp-ach__stats li { padding: 18px 8px; text-align: center; display: flex; flex-direction: column; gap: 2px; }
.hp-ach__stats li + li { border-left: 1px solid var(--hm-line); }
.hp-ach__stats strong { font-size: 28px; font-weight: 800; color: var(--hm-primary); line-height: 1.1; letter-spacing: -.5px; font-variant-numeric: tabular-nums; }
.hp-ach__stats small { font-size: 13px; color: var(--hm-muted); }

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 1280px) {
	.hp-carousel { --hm-per: 4; }
	.hp-sol__list { grid-template-columns: repeat(7, minmax(120px, 1fr)); overflow-x: auto; scrollbar-width: none; padding-bottom: 6px; }
	.hp-carousel__nav--prev, .hp-best .hp-carousel__nav--prev { left: -6px; }
	.hp-carousel__nav--next, .hp-best .hp-carousel__nav--next { right: -6px; }
}

@media (max-width: 1023px) {
	.hp-sec { padding: 22px 0; }
	.hp-carousel { --hm-per: 3; --hm-gap: 12px; }
	.hp-carousel__nav { display: none !important; }
	.hp-cat__head { flex-wrap: wrap; gap: 10px 16px; }
	.hp-cat__subs { order: 3; flex-basis: 100%; }
	.hp-news__grid { grid-template-columns: 1fr; gap: 28px; }
}

@media (max-width: 767px) {
	.hp-carousel { --hm-per: 2.15; --hm-gap: 10px; }
	.hp-carousel__track { margin: -6px -16px -14px; padding: 6px 16px 14px; scroll-padding: 0 16px; }
	.hp-sec .hp-sec__title, .hp-sec .hp-best__title, .hp-sec .hp-cat__title { font-size: 18px; }
	.hp-sol .hp-sec__title { font-size: 19px; }
	.hp-sol__list { grid-template-columns: repeat(7, 136px); gap: 10px; margin: 0 -16px; padding: 0 16px 6px; scroll-snap-type: x mandatory; }
	.hp-sol__list li { scroll-snap-align: start; }
	.hp-sol__item.has-photo .hp-sol__name { font-size: 14.5px; }
	.hp-sol__item { padding: 16px 8px 14px; gap: 8px; }
	.hp-sol__ico { width: 58px; height: 58px; }
	.hp-sol__ico img { width: 34px; height: 34px; }
	.hp-sol__name { font-size: 13.5px; }
	.hp-best__panel { padding: 16px 0 18px; border-radius: 0; margin: 0 -16px; }
	.hp-best__head { padding: 0 16px; }
	.hp-best .hp-carousel__track { margin: -6px 0 -14px; }
	.hp-best__fire { width: 32px; height: 32px; font-size: 17px; }
	.hp-best__more { padding: 5px 10px; font-size: 13px; }
	.hp-pcard__body { padding: 10px 10px 12px; }
	.hp-pcard .hp-pcard__title { font-size: 13.5px; }
	.hp-pcard__price, .hp-pcard__price ins, .hp-pcard__price > .amount { font-size: 15px; }
	.hp-pcard__cart { width: 34px; height: 34px; font-size: 16px; }
	.hp-pcard__quick { display: none; }
	.hp-pcard__views { display: none; }
	.hp-news__list { grid-template-columns: 1fr; }
	.hp-post--lead { grid-row: auto; }
	.hp-post { grid-template-columns: 120px 1fr; }
	.hp-post--lead { grid-template-columns: 1fr; }
	.hp-ach__stats strong { font-size: 22px; }
}

@media (prefers-reduced-motion: reduce) {
	.hp-sec *, .hp-pcard * { animation: none !important; transition: none !important; }
	.hp-carousel__track { scroll-behavior: auto; }
}
