/* HOL26 home modules. Preserve section order. Edit module styles in this file after activation. */

/* SOURCE: commitment-v2.css */
/* ==========================================================================
   COMMITMENT V2 — BƯỚC 56D
   Giữ giao diện compact đã chốt ở 56B.
   Đã loại compatibility bridge với index.scss legacy sau khi audit dependency.
   ========================================================================== */

.commitment-v2{
	--commitment-accent:#B91441;
	--commitment-text:#2a2a2a;
	--commitment-muted:#565656;
	--commitment-border:#d2d2d2;
	--commitment-border-strong:#c8c8c8;
	--commitment-bg:#fff;
	width:100%;
	padding:18px 0;
	margin-top:0;
	background:#fff;
}

.commitment-v2__grid{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:14px;
}

.commitment-v2__item{
	position:relative;
	min-width:0;
	min-height:124px;
	display:grid;
	grid-template-columns:44px minmax(0,1fr);
	align-items:start;
	gap:13px;
	padding:16px 18px 14px;
	border:1.5px solid var(--commitment-border);
	border-radius:16px;
	background:var(--commitment-bg);
	box-shadow:0 2px 8px rgba(20,20,20,.035);
	transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}

.commitment-v2__item:hover{
	transform:translateY(-2px);
	border-color:var(--commitment-border-strong);
	box-shadow:0 12px 28px rgba(18,18,18,.07);
}

.commitment-v2__icon{
	width:44px;
	height:44px;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--commitment-accent);
}

.commitment-v2__icon svg{
	width:40px;
	height:40px;
	display:block;
	fill:none;
	stroke:currentColor;
	stroke-width:1.7;
	stroke-linecap:round;
	stroke-linejoin:round;
}

.commitment-v2__icon-img{
	width:40px;
	height:40px;
	display:block;
	object-fit:contain;
	object-position:center;
}

.commitment-v2__icon-fallback{
	display:none!important;
}

.commitment-v2__icon-img[style*="display: none"] + .commitment-v2__icon-fallback{
	display:block!important;
}

.commitment-v2__body{
	min-width:0;
}

.commitment-v2__body h3{
	margin:0 0 6px;
	color:var(--commitment-accent);
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	font-size:18px;
	font-weight:700;
	line-height:1.28;
}

.commitment-v2__body p{
	margin:0;
	color:var(--commitment-muted);
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	font-size:15px;
	font-weight:400;
	line-height:1.48;
}

.commitment-v2__link{
	display:inline-flex;
	align-items:center;
	gap:7px;
	margin-top:7px;
	color:var(--commitment-accent);
	font-size:13px;
	font-weight:700;
	line-height:1.25;
	letter-spacing:.02em;
	text-decoration:none;
	text-transform:none;
}

.commitment-v2__link:hover,
.commitment-v2__link:focus-visible{
	color:#A70B35;
	text-decoration:none;
}

.commitment-v2__link span:last-child{
	transition:transform .2s ease;
}

.commitment-v2__link:hover span:last-child{
	transform:translateX(3px);
}

.commitment-v2__link:focus-visible{
	outline:2px solid currentColor;
	outline-offset:3px;
}

@media(max-width:1199px){
	.commitment-v2__body h3{
		font-size:17px;
	}

	.commitment-v2__body p{
		font-size:14px;
	}
}

@media(max-width:1023px){
	.commitment-v2{
		padding:16px 0;
	}

	.commitment-v2__grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:12px;
	}

	.commitment-v2__item{
		min-height:118px;
		padding:15px 16px 13px;
	}
}

@media(max-width:767px){
	.commitment-v2{
		padding:14px 0;
		margin-top:0;
	}

	.commitment-v2__grid{
		grid-template-columns:1fr;
		gap:10px;
	}

	.commitment-v2__item{
		min-height:0;
		grid-template-columns:42px minmax(0,1fr);
		gap:12px;
		padding:16px 15px;
		border-radius:13px;
	}

	.commitment-v2__icon{
		width:42px;
		height:42px;
	}

	.commitment-v2__icon svg{
		width:36px;
		height:36px;
	}

	.commitment-v2__icon-img{
		width:36px;
		height:36px;
	}

	.commitment-v2__body h3{
		font-size:16px;
		margin-bottom:6px;
	}

	.commitment-v2__body p{
		font-size:13.5px;
		line-height:1.48;
	}

	.commitment-v2__link{
		font-size:12.5px;
		margin-top:8px;
	}
}

@media(prefers-reduced-motion:reduce){
	.commitment-v2__item,
	.commitment-v2__link span:last-child{
		transition:none!important;
	}
}

/* SOURCE: promotion-v2.css */
/* ==========================================================================
   PROMOTION V2
   Desktop: 1 featured + 2 equal cards
   Tablet: featured + 2 equal cards
   Mobile: 1-card carousel
   ========================================================================== */

.home-section-frame:has(> .promotion-v2){
	margin-top:0!important;
	margin-bottom:0!important;
}

/* Khi Cam kết V2 đứng ngay trước Promotion V2, loại bỏ margin-bottom
   của wrapper Cam kết. Khoảng cách thực tế khi đó chỉ còn padding
   của hai module, tạo nhịp ~36px desktop / ~28px mobile. */
.home-section-frame:has(> .commitment-v2):has(+ .home-section-frame > .promotion-v2){
	margin-bottom:0!important;
}

.promotion-v2{
	--promo-accent:#B91441;
	--promo-text:#1f1f1f;
	--promo-muted:#666;
	--promo-border:#e2e2e2;
	--promo-gap:14px;
	width:100%;
	padding:18px 0;
	background:#fff;
}

.promotion-v2[hidden]{display:none!important}

.promotion-v2__head{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:28px;
	margin-bottom:18px;
}

.promotion-v2__heading{
	max-width:720px;
}

.promotion-v2__head h2{
	margin:0;
	color:var(--promo-text);
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	font-size:clamp(25px,2vw,32px);
	font-weight:700;
	line-height:1.16;
	letter-spacing:-.025em;
}

.promotion-v2__description{
	margin:8px 0 0;
	color:var(--promo-muted);
	font-size:14px;
	line-height:1.5;
}

.promotion-v2__all{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	gap:9px;
	padding-bottom:5px;
	border-bottom:1px solid #252525;
	color:#252525;
	font-size:14px;
	font-weight:600;
	line-height:1.2;
	text-decoration:none;
	text-transform:none;
	letter-spacing:0;
}

.promotion-v2__all span:last-child{
	color:var(--promo-accent);
	font-size:18px;
	transition:transform .22s ease;
}

.promotion-v2__cta span:last-child{
	transition:transform .2s ease;
}

.promotion-v2__all:hover span:last-child,
.promotion-v2__card-link:hover .promotion-v2__cta span:last-child{
	transform:translateX(3px);
}

.promotion-v2__viewport{
	overflow:visible;
}

.promotion-v2__grid{
	display:grid;
	grid-template-columns:minmax(0,1.86fr) minmax(310px,1fr);
	grid-template-rows:repeat(2,minmax(0,1fr));
	gap:var(--promo-gap);
	min-height:520px;
}

.promotion-v2__card{
	position:relative;
	min-width:0;
	min-height:0;
	overflow:hidden;
	border:1px solid var(--promo-border);
	border-radius:16px;
	background:#fff;
	box-shadow:0 4px 18px rgba(15,15,15,.055);
}

.promotion-v2__card[hidden]{display:none!important}

.promotion-v2__card--featured,
.promotion-v2__card.is-runtime-featured{
	grid-column:1;
	grid-row:1 / span 2;
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured){
	grid-column:2;
}

.promotion-v2__card-link{
	position:relative;
	width:100%;
	height:100%;
	min-height:250px;
	display:block;
	overflow:hidden;
	color:#fff;
	text-decoration:none;
}

.promotion-v2__picture,
.promotion-v2__image{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
}

.promotion-v2__picture{
	display:block;
	background:#fff;
}

.promotion-v2__image{
	display:block;
	background:#fff;
	object-fit:cover;
	object-position:center;
	transform:scale(1.002);
	transition:transform .75s cubic-bezier(.16,1,.3,1),filter .4s ease;
}

.promotion-v2__card-link:hover .promotion-v2__image{
	transform:scale(1.035);
	filter:saturate(1.03);
}

.promotion-v2__shade{
	position:absolute;
	inset:0;
	background:
		linear-gradient(180deg,rgba(5,5,5,.08) 0%,rgba(5,5,5,.08) 35%,rgba(5,5,5,.70) 100%),
		linear-gradient(90deg,rgba(5,5,5,.38) 0%,rgba(5,5,5,.05) 58%,rgba(5,5,5,0) 78%);
	pointer-events:none;
}

.promotion-v2__card--shade-none .promotion-v2__shade{opacity:0}
.promotion-v2__card--shade-soft .promotion-v2__shade{opacity:.42}
.promotion-v2__card--shade-medium .promotion-v2__shade{opacity:.72}
.promotion-v2__card--shade-strong .promotion-v2__shade{opacity:1}

.promotion-v2__card.is-no-image{
	background:#fff;
}

.promotion-v2__card.is-no-image .promotion-v2__shade{
	display:none;
}

.promotion-v2__card.is-no-image .promotion-v2__content h3{
	color:var(--promo-text);
	text-shadow:none;
}

.promotion-v2__card.is-no-image .promotion-v2__content p{
	color:var(--promo-muted);
}

.promotion-v2__card.is-no-image .promotion-v2__badge{
	border-color:rgba(185,20,65,.25);
	background:rgba(185,20,65,.05);
	color:var(--promo-accent);
	-webkit-backdrop-filter:none;
	backdrop-filter:none;
}

.promotion-v2__card.is-no-image .promotion-v2__cta{
	color:var(--promo-accent);
}

.promotion-v2__content{
	position:absolute;
	z-index:3;
	left:24px;
	right:24px;
	bottom:22px;
	max-width:620px;
}

.promotion-v2__badge{
	display:inline-flex;
	align-items:center;
	min-height:25px;
	margin-bottom:10px;
	padding:0 9px;
	border:1px solid var(--promo-card-badge-border,#fff);
	border-radius:999px;
	background:var(--promo-card-badge-bg,#0f0f0f);
	background:color-mix(in srgb,var(--promo-card-badge-bg,#0f0f0f) 28%,transparent);
	color:var(--promo-card-badge-text,#fff);
	backdrop-filter:blur(7px);
	font-size:10px;
	font-weight:700;
	line-height:1;
	letter-spacing:.08em;
	text-transform:uppercase;
}

.promotion-v2__content h3{
	max-width:18ch;
	margin:0;
	color:var(--promo-card-title,#fff);
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	font-size:clamp(27px,2.5vw,40px);
	font-weight:600;
	line-height:1.08;
	letter-spacing:-.025em;
	text-shadow:0 3px 18px rgba(0,0,0,.25);
}

.promotion-v2__content p{
	max-width:54ch;
	margin:10px 0 0;
	color:var(--promo-card-description,#fff);
	font-size:14px;
	line-height:1.5;
}

.promotion-v2__cta{
	display:inline-flex;
	align-items:center;
	gap:9px;
	margin-top:15px;
	color:var(--promo-card-cta,#fff);
	font-size:12px;
	font-weight:700;
	line-height:1.2;
	letter-spacing:.045em;
	text-transform:uppercase;
}

.promotion-v2__timer{
	position:absolute;
	z-index:4;
	top:18px;
	right:18px;
	display:flex;
	align-items:center;
	gap:8px;
	min-height:38px;
	padding:6px 10px;
	border:1px solid var(--promo-card-timer-border,#fff);
	border-radius:10px;
	background:var(--promo-card-timer-bg,#111);
	background:color-mix(in srgb,var(--promo-card-timer-bg,#111) 82%,transparent);
	color:var(--promo-card-timer-text,#fff);
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	-webkit-backdrop-filter:blur(8px);
	backdrop-filter:blur(8px);
	box-shadow:0 4px 14px rgba(0,0,0,.20);
}

.promotion-v2__timer[hidden]{display:none!important}

.promotion-v2__timer-label{
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	font-size:10px;
	font-weight:700;
	line-height:1;
	letter-spacing:.03em;
	text-transform:uppercase;
	opacity:.92;
	white-space:nowrap;
}

.promotion-v2__time{
	display:grid;
	grid-template-columns:auto auto auto auto auto auto auto;
	align-items:baseline;
	gap:3px;
	white-space:nowrap;
}

.promotion-v2__time strong{
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	font-size:14px;
	font-weight:700;
	line-height:1;
	font-variant-numeric:tabular-nums;
	letter-spacing:0;
}

.promotion-v2__time small{
	display:none;
}

.promotion-v2__time i{
	font-family:var(--font-base,'Roboto',Arial,sans-serif);
	font-style:normal;
	font-size:12px;
	font-weight:500;
	opacity:.72;
}

/* Small cards */
.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__content{
	left:18px;
	right:18px;
	bottom:17px;
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__content h3{
	max-width:20ch;
	font-size:clamp(19px,1.45vw,24px);
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__content p{
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
	margin-top:7px;
	font-size:12.5px;
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__badge{
	margin-bottom:7px;
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__cta{
	margin-top:9px;
	font-size:11px;
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__timer{
	top:12px;
	right:12px;
	min-height:34px;
	padding:5px 9px;
	border-radius:9px;
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__timer-label{
	display:inline;
	font-size:9px;
}

.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__time strong{
	font-size:12px;
}

/* Runtime layout when campaigns expire */
.promotion-v2__grid[data-active-count="2"]{
	grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);
}

.promotion-v2__grid[data-active-count="2"] .promotion-v2__card:not(.is-runtime-featured){
	grid-column:2;
	grid-row:1 / span 2;
}

.promotion-v2__grid[data-active-count="1"]{
	display:block;
	min-height:430px;
}

.promotion-v2__grid[data-active-count="1"] .promotion-v2__card{
	width:100%;
	height:430px;
}

/* Tablet */
@media(max-width:1023px){
	.promotion-v2{
		padding:16px 0;
	}

	.promotion-v2__head{
		margin-bottom:16px;
	}

	.promotion-v2__grid,
	.promotion-v2__grid[data-active-count="2"]{
		grid-template-columns:repeat(2,minmax(0,1fr));
		grid-template-rows:minmax(330px,1.25fr) minmax(220px,.8fr);
		min-height:0;
	}

	.promotion-v2__card--featured,
	.promotion-v2__card.is-runtime-featured{
		grid-column:1 / -1;
		grid-row:1;
	}

	.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured){
		grid-column:auto;
		grid-row:2;
	}

	.promotion-v2__grid[data-active-count="2"] .promotion-v2__card:not(.is-runtime-featured){
		grid-column:1 / -1;
		grid-row:2;
	}

	.promotion-v2__grid[data-active-count="1"]{
		min-height:380px;
	}

	.promotion-v2__grid[data-active-count="1"] .promotion-v2__card{
		height:380px;
	}

	.promotion-v2__content h3{
		font-size:clamp(25px,4vw,34px);
	}
}

/* Mobile: one card per view */
@media(max-width:767px){
	.promotion-v2{
		padding:14px 0;
	}

	.promotion-v2__head{
		align-items:flex-start;
		margin-bottom:14px;
	}

	.promotion-v2__description{
		font-size:13px;
	}

	.promotion-v2__all{
		display:none;
	}

	.promotion-v2__viewport{
		overflow:hidden;
		margin-inline:calc(var(--site-gutter,16px) * -1);
		padding-inline:var(--site-gutter,16px);
	}

	.promotion-v2__grid,
	.promotion-v2__grid[data-active-count="2"],
	.promotion-v2__grid[data-active-count="1"]{
		min-height:0;
		display:flex;
		gap:var(--promo-mobile-gap,12px);
		transform:translate3d(0,0,0);
		transition:transform .55s cubic-bezier(.16,1,.3,1);
		will-change:transform;
	}

	.promotion-v2__card,
	.promotion-v2__grid[data-active-count="1"] .promotion-v2__card{
		flex:0 0 100%;
		width:100%;
		height:390px;
		min-height:390px;
		grid-column:auto!important;
		grid-row:auto!important;
		border-radius:14px;
	}

	.promotion-v2__card-link{
		min-height:390px;
	}

	.promotion-v2__content,
	.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__content{
		left:18px;
		right:18px;
		bottom:19px;
	}

	.promotion-v2__content h3,
	.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__content h3{
		max-width:18ch;
		font-size:26px;
		line-height:1.08;
	}

	.promotion-v2__content p,
	.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__content p{
		display:-webkit-box;
		-webkit-line-clamp:2;
		-webkit-box-orient:vertical;
		overflow:hidden;
		margin-top:8px;
		font-size:13px;
		line-height:1.45;
	}

	.promotion-v2__timer,
	.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__timer{
		top:13px;
		right:13px;
		min-height:33px;
		padding:5px 9px;
	}

	.promotion-v2__timer-label{
		display:inline;
	}

	.promotion-v2__mobile-nav{
		display:flex;
		align-items:center;
		justify-content:center;
		gap:7px;
		min-height:20px;
		margin-top:10px;
	}

	.promotion-v2__mobile-nav[hidden]{
		display:none!important;
	}

	.promotion-v2__dot{
		width:6px;
		height:6px;
		padding:0;
		border:0;
		border-radius:999px;
		background:#c9c9c9;
		transition:background .25s ease;
	}

	.promotion-v2__dot.is-active{
		width:22px;
		background:var(--promo-accent);
	}
}

@media(max-width:420px){
	.promotion-v2__card,
	.promotion-v2__card-link,
	.promotion-v2__grid[data-active-count="1"] .promotion-v2__card{
		height:370px;
		min-height:370px;
	}

	.promotion-v2__content h3,
	.promotion-v2__card:not(.promotion-v2__card--featured):not(.is-runtime-featured) .promotion-v2__content h3{
		font-size:24px;
	}
}

@media(prefers-reduced-motion:reduce){
	.promotion-v2__image,
	.promotion-v2__grid,
	.promotion-v2__dot,
	.promotion-v2__all span:last-child,
	.promotion-v2__cta span:last-child{
		transition:none!important;
	}
}

/* SOURCE: product-categories-v2.css */
/* ==========================================================================
   HAFELE OL 2026 — PRODUCT CATEGORIES V2
   Desktop: 1 feature + 9 cards / 3x3.
   Height of 3 small rows = height of feature card.
   Tablet/mobile: feature + horizontal category rail.
   ========================================================================== */

.home-section-frame:has(> .categories-v2){
	margin-top:0!important;
	margin-bottom:0!important;
}

.categories-v2{
	--cat-accent:#B91441;
	--cat-text:#1f1f1f;
	--cat-muted:#686868;
	--cat-border:#e2e2e2;
	--cat-gap:12px;
	width:100%;
	padding:18px 0;
	background:#fff;
}

.categories-v2__head{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:28px;
	margin-bottom:18px;
}

.categories-v2__heading{
	max-width:760px;
}

.categories-v2__head h2{
	margin:0;
	color:var(--cat-text);
	font-size:clamp(28px,2.25vw,36px);
	font-weight:700;
	line-height:1.14;
	letter-spacing:-.03em;
}

.categories-v2__heading p{
	margin:8px 0 0;
	max-width:700px;
	color:var(--cat-muted);
	font-size:14px;
	line-height:1.55;
}

.categories-v2__all{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	gap:9px;
	padding-bottom:5px;
	border-bottom:1px solid #252525;
	color:#252525;
	font-size:14px;
	font-weight:600;
	line-height:1.2;
	text-decoration:none;
}

.categories-v2__all span:last-child{
	color:var(--cat-accent);
	font-size:18px;
	transition:transform .22s ease;
}

.categories-v2__all:hover span:last-child{
	transform:translateX(3px);
}

.categories-v2__layout{
	display:grid;
	grid-template-columns:minmax(340px,.86fr) minmax(0,1.64fr);
	gap:var(--cat-gap);
	height:clamp(560px,42vw,610px);
}

.categories-v2--no-feature .categories-v2__layout{
	grid-template-columns:1fr;
}

.categories-v2__feature,
.categories-v2__card{
	position:relative;
	min-width:0;
	overflow:hidden;
	border:1px solid var(--cat-border);
	border-radius:15px;
	background:#fff;
}

.categories-v2__feature{
	height:100%;
}

.categories-v2__feature-link,
.categories-v2__card-link{
	position:relative;
	display:block;
	width:100%;
	height:100%;
	overflow:hidden;
	color:#fff;
	text-decoration:none;
}

.categories-v2__media,
.categories-v2__image{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
}

.categories-v2__media{
	background:#fff;
}

.categories-v2__image{
	display:block;
	object-fit:cover;
	object-position:center;
	background:#fff;
	transform:scale(1.002);
	transition:transform .75s cubic-bezier(.16,1,.3,1),filter .35s ease;
}

.categories-v2__feature-link:hover .categories-v2__image,
.categories-v2__card-link:hover .categories-v2__image{
	transform:scale(1.045);
	filter:saturate(1.04);
}

.categories-v2__overlay{
	position:absolute;
	inset:0;
	background:
		linear-gradient(180deg,rgba(7,7,7,.02) 12%,rgba(7,7,7,.10) 42%,rgba(7,7,7,.82) 100%),
		linear-gradient(90deg,rgba(7,7,7,.24) 0%,rgba(7,7,7,0) 65%);
	pointer-events:none;
}

.categories-v2__overlay--small{
	background:linear-gradient(180deg,rgba(8,8,8,.02) 25%,rgba(8,8,8,.70) 100%);
}

.categories-v2__feature-content{
	position:absolute;
	z-index:2;
	left:26px;
	right:26px;
	bottom:25px;
}

.categories-v2__badge{
	display:inline-flex;
	align-items:center;
	min-height:28px;
	margin-bottom:12px;
	padding:0 11px;
	border:1px solid rgba(255,255,255,.48);
	border-radius:999px;
	background:rgba(14,14,14,.20);
	color:#fff;
	-webkit-backdrop-filter:blur(7px);
	backdrop-filter:blur(7px);
	font-size:10px;
	font-weight:700;
	line-height:1;
	letter-spacing:.055em;
	text-transform:uppercase;
}

.categories-v2__feature-content h3{
	max-width:13ch;
	margin:0;
	color:#fff;
	font-size:clamp(32px,3vw,46px);
	font-weight:600;
	line-height:1.08;
	letter-spacing:-.03em;
	text-shadow:0 3px 18px rgba(0,0,0,.22);
}

.categories-v2__feature-content p{
	max-width:38ch;
	margin:12px 0 0;
	color:rgba(255,255,255,.9);
	font-size:14px;
	line-height:1.55;
}

.categories-v2__feature-cta{
	display:inline-flex;
	align-items:center;
	gap:12px;
	margin-top:18px;
	color:#fff;
	font-size:14px;
	font-weight:600;
}

.categories-v2__arrow{
	width:42px;
	height:42px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	border-radius:50%;
	background:var(--cat-accent);
	color:#fff;
	font-size:20px;
	line-height:1;
	transition:transform .22s ease,background .22s ease;
}

.categories-v2__feature-link:hover .categories-v2__arrow,
.categories-v2__card-link:hover .categories-v2__arrow{
	transform:translateX(3px);
}

.categories-v2__small-wrap{
	min-width:0;
	height:100%;
}

.categories-v2__small-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	grid-template-rows:repeat(3,minmax(0,1fr));
	gap:var(--cat-gap);
	height:100%;
}

.categories-v2__card-content{
	position:absolute;
	z-index:2;
	left:16px;
	right:13px;
	bottom:13px;
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:10px;
}

.categories-v2__card-content h3{
	margin:0;
	max-width:72%;
	color:#fff;
	font-size:clamp(16px,1.2vw,20px);
	font-weight:600;
	line-height:1.18;
	letter-spacing:-.015em;
	text-shadow:0 2px 10px rgba(0,0,0,.28);
}

.categories-v2__card-action{
	flex:0 0 auto;
	display:flex;
	align-items:center;
	gap:8px;
	color:rgba(255,255,255,.92);
	font-size:11px;
	font-weight:500;
}

.categories-v2__card .categories-v2__arrow--small{
	width:30px;
	height:30px;
	border:1px solid rgba(255,255,255,.75);
	background:rgba(255,255,255,.94);
	color:var(--cat-accent);
	font-size:14px;
}

.categories-v2__card-action > span:first-child{
	display:none;
}

/* Clean fallback when an image is missing or broken */
.categories-v2__feature.is-no-image .categories-v2__overlay,
.categories-v2__card.is-no-image .categories-v2__overlay{
	display:none;
}

.categories-v2__feature.is-no-image .categories-v2__feature-content h3,
.categories-v2__card.is-no-image .categories-v2__card-content h3{
	color:var(--cat-text);
	text-shadow:none;
}

.categories-v2__feature.is-no-image .categories-v2__feature-content p{
	color:var(--cat-muted);
}

.categories-v2__feature.is-no-image .categories-v2__badge{
	border-color:rgba(185,20,65,.25);
	background:rgba(185,20,65,.06);
	color:var(--cat-accent);
}

.categories-v2__feature.is-no-image .categories-v2__feature-cta{
	color:var(--cat-text);
}

.categories-v2__card.is-no-image .categories-v2__arrow--small{
	border-color:rgba(185,20,65,.20);
	background:rgba(185,20,65,.06);
}

.categories-v2__mobile-controls{
	display:none;
}

/* Tablet: feature + one horizontal rail, avoiding a very tall page */
@media(max-width:1023px){
	.categories-v2{
		padding:16px 0;
	}

	.categories-v2__head{
		margin-bottom:16px;
	}

	.categories-v2__layout{
		display:block;
		height:auto;
	}

	.categories-v2__feature{
		height:430px;
		margin-bottom:12px;
	}

	.categories-v2--no-feature .categories-v2__feature{
		display:none;
	}

	.categories-v2__small-wrap{
		height:auto;
	}

	.categories-v2__small-grid{
		height:auto;
		display:flex;
		gap:12px;
		overflow-x:auto;
		overflow-y:hidden;
		padding:0 0 4px;
		scroll-snap-type:x mandatory;
		scroll-behavior:smooth;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:none;
	}

	.categories-v2__small-grid::-webkit-scrollbar{
		display:none;
	}

	.categories-v2__card{
		flex:0 0 min(42vw,320px);
		height:205px;
		scroll-snap-align:start;
	}

	.categories-v2__mobile-controls{
		display:flex;
		align-items:center;
		justify-content:space-between;
		margin-top:10px;
	}

	.categories-v2__mobile-controls[hidden]{
		display:none!important;
	}

	.categories-v2__counter{
		display:flex;
		align-items:center;
		gap:5px;
		color:#777;
		font-size:12px;
		font-variant-numeric:tabular-nums;
	}

	.categories-v2__buttons{
		display:flex;
		gap:7px;
	}

	.categories-v2__nav{
		width:36px;
		height:36px;
		display:inline-flex;
		align-items:center;
		justify-content:center;
		padding:0;
		border:1px solid #d7d7d7;
		border-radius:50%;
		background:#fff;
		color:#222;
		font-size:17px;
		line-height:1;
		cursor:pointer;
		transition:border-color .2s ease,color .2s ease,transform .2s ease;
	}

	.categories-v2__nav:hover{
		border-color:var(--cat-accent);
		color:var(--cat-accent);
	}

	.categories-v2__nav:disabled{
		opacity:.35;
		cursor:default;
	}
}

/* Mobile */
@media(max-width:767px){
	.categories-v2{
		padding:14px 0;
	}

	.categories-v2__head{
		align-items:flex-start;
		gap:12px;
		margin-bottom:14px;
	}

	.categories-v2__head h2{
		font-size:27px;
	}

	.categories-v2__heading p{
		font-size:13px;
		line-height:1.5;
	}

	.categories-v2__all{
		display:none;
	}

	.categories-v2__feature{
		height:410px;
		border-radius:14px;
	}

	.categories-v2__feature-content{
		left:19px;
		right:19px;
		bottom:19px;
	}

	.categories-v2__feature-content h3{
		max-width:15ch;
		font-size:31px;
	}

	.categories-v2__feature-content p{
		font-size:13px;
		line-height:1.48;
	}

	.categories-v2__feature-cta{
		margin-top:14px;
		font-size:13px;
	}

	.categories-v2__arrow{
		width:38px;
		height:38px;
	}

	.categories-v2__small-wrap{
		margin-inline:calc(var(--site-gutter,16px) * -1);
	}

	.categories-v2__small-grid{
		padding-inline:var(--site-gutter,16px);
		scroll-padding-inline:var(--site-gutter,16px);
	}

	.categories-v2__card{
		flex-basis:78vw;
		max-width:310px;
		height:190px;
		border-radius:13px;
	}

	.categories-v2__card-content h3{
		font-size:18px;
	}

	.categories-v2__mobile-controls{
		padding-inline:var(--site-gutter,16px);
	}
}

@media(max-width:420px){
	.categories-v2__feature{
		height:390px;
	}

	.categories-v2__feature-content h3{
		font-size:29px;
	}

	.categories-v2__card{
		flex-basis:82vw;
		height:185px;
	}
}



/* ==========================================================================
   CATEGORY TRUST STRIP
   ========================================================================== */
.categories-v2__trust{
	margin-top:22px;
	padding:18px 0 2px;
	border-top:1px solid var(--cat-trust-border,#B91441);
	display:grid;
	grid-template-columns:repeat(5,minmax(0,1fr));
}

.categories-v2__trust-item{
	position:relative;
	min-width:0;
	display:grid;
	grid-template-columns:48px minmax(0,1fr);
	align-items:center;
	gap:12px;
	padding:0 22px;
}

.categories-v2__trust-item:first-child{
	padding-left:10px;
}

.categories-v2__trust-item:last-child{
	padding-right:10px;
}

.categories-v2__trust-item:not(:last-child)::after{
	content:"";
	position:absolute;
	top:10px;
	right:0;
	width:1px;
	height:38px;
	background:var(--cat-trust-divider,#fff);
	opacity:.30;
}

.categories-v2__trust-icon{
	width:48px;
	height:48px;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--cat-trust-icon,#fff);
}

.categories-v2__trust-icon img{
	width:42px;
	height:42px;
	display:block;
	object-fit:contain;
	object-position:center;
}

.categories-v2--trust-icons-white .categories-v2__trust-icon img{
	filter:brightness(0) invert(1);
	opacity:.96;
}

.categories-v2--trust-icons-original .categories-v2__trust-icon img{
	filter:none;
}

.categories-v2__trust-fallback{
	width:42px;
	height:42px;
	display:none;
	fill:none;
	stroke:currentColor;
	stroke-width:1.65;
	stroke-linecap:round;
	stroke-linejoin:round;
}

.categories-v2__trust-copy{
	min-width:0;
	display:flex;
	flex-direction:column;
	gap:3px;
}

.categories-v2__trust-copy strong{
	color:var(--cat-trust-title,#fff);
	font-size:15px;
	font-weight:700;
	line-height:1.3;
}

.categories-v2__trust-copy span{
	color:var(--cat-trust-desc,#fff);
	font-size:13px;
	font-weight:400;
	line-height:1.4;
}

@media(max-width:1199px){
	.categories-v2__trust{
		grid-template-columns:repeat(5,minmax(0,1fr));
	}

	.categories-v2__trust-item{
		grid-template-columns:40px minmax(0,1fr);
		gap:9px;
		padding:0 12px;
	}

	.categories-v2__trust-icon{
		width:40px;
		height:40px;
	}

	.categories-v2__trust-icon img,
	.categories-v2__trust-fallback{
		width:36px;
		height:36px;
	}

	.categories-v2__trust-copy strong{
		font-size:13.5px;
	}

	.categories-v2__trust-copy span{
		font-size:12px;
	}
}

@media(max-width:1023px){
	.categories-v2__trust{
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:18px 0;
		padding-top:18px;
	}

	.categories-v2__trust-item{
		padding:0 16px;
	}

	.categories-v2__trust-item:nth-child(3)::after,
	.categories-v2__trust-item:last-child::after{
		display:none;
	}
}

@media(max-width:767px){
	.categories-v2__trust{
		display:flex;
		gap:0;
		overflow-x:auto;
		overflow-y:hidden;
		margin-top:18px;
		padding:15px 0 3px;
		scroll-snap-type:x mandatory;
		scrollbar-width:none;
		-webkit-overflow-scrolling:touch;
	}

	.categories-v2__trust::-webkit-scrollbar{
		display:none;
	}

	.categories-v2__trust-item{
		flex:0 0 76%;
		max-width:280px;
		grid-template-columns:42px minmax(0,1fr);
		gap:11px;
		padding:0 20px;
		scroll-snap-align:start;
	}

	.categories-v2__trust-item:first-child{
		padding-left:0;
	}

	.categories-v2__trust-item:not(:last-child)::after{
		top:5px;
		height:42px;
	}

	.categories-v2__trust-icon{
		width:42px;
		height:42px;
	}

	.categories-v2__trust-copy strong{
		font-size:14px;
	}

	.categories-v2__trust-copy span{
		font-size:12.5px;
	}
}

@media(prefers-reduced-motion:reduce){
	.categories-v2__image,
	.categories-v2__arrow,
	.categories-v2__all span:last-child,
	.categories-v2__small-grid{
		transition:none!important;
		scroll-behavior:auto!important;
	}
}

/* ==========================================================================
   CATEGORY TRUST STRIP - BƯỚC 50D: THÊM KHUNG RÕ RÀNG
   ========================================================================== */
.categories-v2__trust{
	margin-top:22px;
	padding:18px 18px;
	border:1px solid var(--cat-trust-border,#B91441);
	border-radius:18px;
	background:var(--cat-trust-bg,#B91441);
	box-shadow:0 8px 24px rgba(0,0,0,.06);
}

.categories-v2__trust-item:first-child{
	padding-left:6px;
}

.categories-v2__trust-item:last-child{
	padding-right:6px;
}

@media (max-width: 991.98px){
	.categories-v2__trust{
		padding:16px 14px;
		border-radius:16px;
	}
}

@media (max-width: 767.98px){
	.categories-v2__trust{
		padding:14px 12px;
		border-radius:14px;
		background:var(--cat-trust-bg,#B91441);
	}
}

/* ==========================================================================
   BƯỚC 50E — FIX MOBILE DANH MỤC + DẢI GIÁ TRỊ
   ========================================================================== */
@media(max-width:767px){
	/* 1 card danh mục nhỏ / 1 màn hình, không còn card kế bên bị cắt */
	.categories-v2__small-wrap{
		margin-inline:0;
	}

	.categories-v2__small-grid{
		padding-inline:0;
		scroll-padding-inline:0;
		gap:10px;
	}

	.categories-v2__card{
		flex:0 0 100%;
		width:100%;
		max-width:none;
		height:190px;
		box-sizing:border-box;
	}

	.categories-v2__mobile-controls{
		padding-inline:0;
		margin-top:10px;
	}

	/* Dải giá trị: mỗi lần hiển thị trọn 1 mục, không lộ/chồng chữ mục kế bên */
	.categories-v2__trust{
		display:flex;
		gap:0;
		overflow-x:auto;
		overflow-y:hidden;
		padding:14px 12px;
		scroll-snap-type:x mandatory;
		scroll-padding-inline:12px;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:none;
	}

	.categories-v2__trust::-webkit-scrollbar{
		display:none;
	}

	.categories-v2__trust-item{
		flex:0 0 100%;
		width:100%;
		max-width:none;
		box-sizing:border-box;
		grid-template-columns:42px minmax(0,1fr);
		gap:12px;
		padding:0 6px;
		scroll-snap-align:start;
	}

	.categories-v2__trust-item:first-child,
	.categories-v2__trust-item:last-child{
		padding-left:6px;
		padding-right:6px;
	}

	.categories-v2__trust-item::after{
		display:none!important;
	}

	.categories-v2__trust-copy{
		min-width:0;
	}

	.categories-v2__trust-copy strong,
	.categories-v2__trust-copy span{
		white-space:normal;
		overflow-wrap:anywhere;
	}

	.categories-v2__trust-copy strong{
		font-size:14px;
		line-height:1.35;
	}

	.categories-v2__trust-copy span{
		font-size:12.5px;
		line-height:1.4;
	}
}

/* ==========================================================================
   BƯỚC 50F — TỐI ƯU TABLET 768–1023
   ========================================================================== */
@media(min-width:768px) and (max-width:1023px){
	/* Ô lớn chiếm trọn chiều ngang */
	.categories-v2__feature{
		height:430px;
		margin-bottom:12px;
	}

	/* Danh mục nhỏ: đúng 2 card / 1 khung nhìn */
	.categories-v2__small-grid{
		display:flex;
		gap:12px;
		overflow-x:auto;
		overflow-y:hidden;
		padding:0 0 4px;
		scroll-snap-type:x mandatory;
		scroll-padding-inline:0;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:none;
	}

	.categories-v2__small-grid::-webkit-scrollbar{
		display:none;
	}

	.categories-v2__card{
		flex:0 0 calc((100% - 12px)/2);
		width:calc((100% - 12px)/2);
		max-width:none;
		height:220px;
		scroll-snap-align:start;
		box-sizing:border-box;
	}

	.categories-v2__mobile-controls{
		display:flex;
		padding-inline:0;
		margin-top:10px;
	}

	/* Dải giá trị: 3 mục / 1 khung nhìn, vuốt ngang cho 2 mục còn lại */
	.categories-v2__trust{
		display:flex;
		gap:0;
		overflow-x:auto;
		overflow-y:hidden;
		padding:16px 14px;
		scroll-snap-type:x mandatory;
		-webkit-overflow-scrolling:touch;
		scrollbar-width:none;
	}

	.categories-v2__trust::-webkit-scrollbar{
		display:none;
	}

	.categories-v2__trust-item{
		flex:0 0 33.3333%;
		width:33.3333%;
		max-width:none;
		box-sizing:border-box;
		grid-template-columns:40px minmax(0,1fr);
		gap:10px;
		padding:0 16px;
		scroll-snap-align:start;
	}

	.categories-v2__trust-item:first-child{
		padding-left:8px;
	}

	.categories-v2__trust-item:last-child{
		padding-right:8px;
	}

	.categories-v2__trust-item:not(:last-child)::after{
		display:block;
		top:6px;
		height:40px;
	}

	.categories-v2__trust-copy strong{
		font-size:13.5px;
		line-height:1.3;
	}

	.categories-v2__trust-copy span{
		font-size:12px;
		line-height:1.4;
	}
}

/* SOURCE: new-products-v2.css */
/* ==========================================================================
   NEW PRODUCTS V2
   Desktop/Laptop: 4 columns. 8 items = exactly 2 rows.
   Tablet: 3 columns. Mobile: 2 columns.
   ========================================================================== */

.home-section-frame:has(> .new-products-v2){
	margin-top:0!important;
	margin-bottom:0!important;
}

.new-products-v2{
	--np-accent:#B91441;
	--np-text:#1f1f1f;
	--np-muted:#747474;
	--np-border:#e3e3e3;
	--np-surface:#fff;
	width:100%;
	padding:18px 0;
	background:#fff;
}

.new-products-v2__head{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:28px;
	margin-bottom:18px;
}

.new-products-v2__heading{
	max-width:760px;
}

.new-products-v2__head h2{
	position:relative;
	margin:0;
	padding-bottom:11px;
	color:var(--np-text);
	font-size:clamp(28px,2.25vw,36px);
	font-weight:700;
	line-height:1.14;
	letter-spacing:-.03em;
}

.new-products-v2__head h2::after{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:44px;
	height:2px;
	background:var(--np-accent);
}

.new-products-v2__heading p{
	margin:8px 0 0;
	color:var(--np-muted);
	font-size:14px;
	line-height:1.55;
}

.new-products-v2__all{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	gap:9px;
	padding-bottom:5px;
	border-bottom:1px solid #252525;
	color:#252525;
	font-size:14px;
	font-weight:600;
	line-height:1.2;
	text-decoration:none;
}

.new-products-v2__all span:last-child{
	color:var(--np-accent);
	font-size:18px;
	transition:transform .2s ease;
}

.new-products-v2__all:hover span:last-child{
	transform:translateX(3px);
}

.new-products-v2__grid{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:18px;
}

.new-products-v2__card{
	position:relative;
	min-width:0;
	overflow:hidden;
	border:1px solid var(--np-border);
	border-radius:14px;
	background:var(--np-surface);
	transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease;
}

.new-products-v2__card:hover{
	transform:translateY(-2px);
	border-color:#d2d2d2;
	box-shadow:0 10px 26px rgba(18,18,18,.06);
}

.new-products-v2__card-link{
	display:flex;
	height:100%;
	flex-direction:column;
	color:inherit;
	text-decoration:none;
}

.new-products-v2__media{
	position:relative;
	aspect-ratio:1 / 1;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
	padding:14px;
	background:#fff;
	border-bottom:1px solid #efefef;
}

.new-products-v2__image{
	width:100%;
	height:100%;
	display:block;
	object-fit:contain;
	object-position:center;
	background:#fff;
	transform:scale(1);
	transition:transform .4s cubic-bezier(.16,1,.3,1);
}

.new-products-v2__card:hover .new-products-v2__image{
	transform:scale(1.035);
}

.new-products-v2__image-placeholder{
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#fafafa;
	color:#c4c4c4;
}

.new-products-v2__image-placeholder svg{
	width:52px;
	height:52px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.5;
	stroke-linecap:round;
	stroke-linejoin:round;
}

.new-products-v2__discount{
	position:absolute;
	z-index:2;
	top:12px;
	right:12px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:30px;
	padding:0 9px;
	border-radius:8px;
	background:var(--np-accent);
	color:#fff;
	font-size:12px;
	font-weight:700;
	line-height:1;
	box-shadow:0 4px 12px rgba(185,20,65,.16);
}

.new-products-v2__content{
	flex:1;
	display:flex;
	flex-direction:column;
	padding:16px 16px 15px;
}

.new-products-v2__content h3{
	display:-webkit-box;
	min-height:2.8em;
	margin:0;
	overflow:hidden;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	color:var(--np-text);
	font-size:16px;
	font-weight:600;
	line-height:1.4;
	letter-spacing:-.01em;
}

.new-products-v2__sku{
	margin:8px 0 0;
	color:#8a8a8a;
	font-size:12px;
	line-height:1.35;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}

.new-products-v2__price-row{
	min-height:42px;
	display:flex;
	flex-wrap:wrap;
	align-items:baseline;
	gap:5px 9px;
	margin-top:10px;
}

.new-products-v2__price{
	color:var(--np-accent);
	font-size:18px;
	font-weight:700;
	line-height:1.2;
}

.new-products-v2__price--contact{
	color:var(--np-text);
}

.new-products-v2__compare{
	color:#999;
	font-size:12.5px;
	font-weight:400;
	line-height:1.2;
	text-decoration-thickness:1px;
}

.new-products-v2__cta{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	margin-top:auto;
	padding-top:12px;
	border-top:1px solid #efefef;
	color:#292929;
	font-size:12.5px;
	font-weight:600;
	line-height:1.25;
}

.new-products-v2__cta span:last-child{
	color:var(--np-accent);
	font-size:17px;
	transition:transform .2s ease;
}

.new-products-v2__card:hover .new-products-v2__cta span:last-child{
	transform:translateX(3px);
}

/* Tablet: 3 columns */
@media(min-width:768px) and (max-width:1023px){
	.new-products-v2{
		padding:16px 0;
	}

	.new-products-v2__head{
		margin-bottom:16px;
	}

	.new-products-v2__grid{
		grid-template-columns:repeat(3,minmax(0,1fr));
		gap:14px;
	}

	.new-products-v2__media{
		padding:12px;
	}

	.new-products-v2__content{
		padding:14px;
	}

	.new-products-v2__content h3{
		font-size:15px;
	}

	.new-products-v2__price{
		font-size:17px;
	}
}

/* Mobile: 2 columns */
@media(max-width:767px){
	.new-products-v2{
		padding:14px 0;
	}

	.new-products-v2__head{
		align-items:flex-start;
		margin-bottom:14px;
	}

	.new-products-v2__head h2{
		font-size:27px;
		padding-bottom:9px;
	}

	.new-products-v2__heading p{
		font-size:13px;
		line-height:1.5;
	}

	.new-products-v2__all{
		display:none;
	}

	.new-products-v2__grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:10px;
	}

	.new-products-v2__card{
		border-radius:12px;
	}

	.new-products-v2__media{
		padding:9px;
	}

	.new-products-v2__discount{
		top:8px;
		right:8px;
		min-height:25px;
		padding:0 7px;
		border-radius:7px;
		font-size:10.5px;
	}

	.new-products-v2__content{
		padding:11px 10px 10px;
	}

	.new-products-v2__content h3{
		min-height:2.72em;
		font-size:13.5px;
		line-height:1.36;
	}

	.new-products-v2__sku{
		margin-top:6px;
		font-size:10.5px;
	}

	.new-products-v2__price-row{
		min-height:38px;
		gap:3px 6px;
		margin-top:8px;
	}

	.new-products-v2__price{
		font-size:14.5px;
	}

	.new-products-v2__compare{
		font-size:10.5px;
	}

	.new-products-v2__cta{
		padding-top:9px;
		font-size:11px;
	}

	.new-products-v2__cta span:last-child{
		font-size:15px;
	}
}

@media(max-width:420px){
	.new-products-v2__grid{
		gap:8px;
	}

	.new-products-v2__media{
		padding:7px;
	}

	.new-products-v2__content{
		padding:10px 8px 9px;
	}

	.new-products-v2__content h3{
		font-size:13px;
	}

	.new-products-v2__sku{
		display:none;
	}

	.new-products-v2__price{
		font-size:14px;
	}

	.new-products-v2__cta{
		font-size:10.5px;
	}
}

@media(prefers-reduced-motion:reduce){
	.new-products-v2__card,
	.new-products-v2__image,
	.new-products-v2__cta span:last-child,
	.new-products-v2__all span:last-child{
		transition:none!important;
	}
}

/* SOURCE: innovation-v2.css */
/* ==========================================================================
   HAFELE OL 2026 — INNOVATION V2
   Xu hướng & Công nghệ Häfele
   Left: editorial content. Right: image / lazy YouTube / interactive demo.
   ========================================================================== */

.home-section-frame:has(> .innovation-v2),
.home-section-frame--innovation{
	margin-top:0!important;
	margin-bottom:0!important;
}

.innovation-v2{
	width:100%;
	padding:28px 0;
	background:var(--innovation-bg,#fff);
	color:var(--innovation-text,#171717);
}

.innovation-v2__head{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);
	align-items:end;
	gap:40px;
	margin-bottom:22px;
}

.innovation-v2__eyebrow,
.innovation-v2__kicker{
	margin:0 0 9px;
	color:var(--innovation-accent,#B91441);
	font-size:11px;
	font-weight:800;
	line-height:1.25;
	letter-spacing:.13em;
	text-transform:uppercase;
}

.innovation-v2__head h2{
	margin:0;
	font-size:clamp(28px,2.4vw,38px);
	font-weight:700;
	line-height:1.12;
	letter-spacing:-.035em;
}

.innovation-v2__lead{
	max-width:620px;
	margin:0;
	color:var(--innovation-muted,#686868);
	font-size:14px;
	line-height:1.65;
}

.innovation-v2__shell{
	overflow:hidden;
	border:1px solid var(--innovation-accent,#B91441);
	border-radius:22px;
	background:#fff;
	box-shadow:0 16px 44px rgba(0,0,0,.06);
}

.innovation-v2__panels{
	min-height:520px;
}

.innovation-v2__panel{
	display:grid;
	grid-template-columns:minmax(320px,.76fr) minmax(0,1.24fr);
	min-height:520px;
}

.innovation-v2__panel[hidden]{
	display:none!important;
}

.innovation-v2__copy{
	display:flex;
	align-items:center;
	padding:46px 46px 42px;
	background:
		radial-gradient(circle at 0 0,color-mix(in srgb,var(--innovation-accent,#B91441) 8%,transparent),transparent 40%),
		#fff;
}

.innovation-v2__copy-inner{
	width:100%;
	max-width:490px;
}

.innovation-v2__copy h3{
	margin:0;
	font-size:clamp(32px,3.25vw,50px);
	font-weight:650;
	line-height:1.06;
	letter-spacing:-.045em;
}

.innovation-v2__description{
	max-width:48ch;
	margin:18px 0 0;
	color:var(--innovation-muted,#686868);
	font-size:15px;
	line-height:1.66;
}

.innovation-v2__features{
	display:grid;
	gap:10px;
	margin:24px 0 0;
	padding:0;
	list-style:none;
}

.innovation-v2__features li{
	display:grid;
	grid-template-columns:18px minmax(0,1fr);
	align-items:start;
	gap:10px;
	color:var(--innovation-text,#171717);
	font-size:13.5px;
	font-weight:550;
	line-height:1.45;
}

.innovation-v2__features li > span{
	width:18px;
	height:2px;
	margin-top:.65em;
	background:var(--innovation-accent,#B91441);
}

.innovation-v2__cta{
	display:inline-flex;
	align-items:center;
	gap:12px;
	margin-top:28px;
	padding-bottom:5px;
	border-bottom:1px solid currentColor;
	color:var(--innovation-text,#171717);
	font-size:14px;
	font-weight:700;
	text-decoration:none;
}

.innovation-v2__cta span:last-child{
	color:var(--innovation-accent,#B91441);
	font-size:18px;
	transition:transform .2s ease;
}

.innovation-v2__cta:hover span:last-child{
	transform:translateX(4px);
}

.innovation-v2__media{
	position:relative;
	min-width:0;
	min-height:520px;
	overflow:hidden;
	background:var(--innovation-panel,#111);
}

.innovation-v2__picture,
.innovation-v2__image,
.innovation-v2__youtube,
.innovation-v2__demo,
.innovation-v2__demo-stage{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
}

.innovation-v2__image,
.innovation-v2__poster,
.innovation-v2__demo-image{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center;
}

.innovation-v2__image{
	transition:transform .8s cubic-bezier(.16,1,.3,1);
}

.innovation-v2__panel:hover .innovation-v2__image{
	transform:scale(1.025);
}

/* YouTube */
.innovation-v2__youtube{
	display:flex;
	align-items:center;
	justify-content:center;
	background:
		radial-gradient(circle at 70% 30%,rgba(185,20,65,.15),transparent 34%),
		var(--innovation-panel,#111);
}

.innovation-v2__poster{
	position:absolute;
	inset:0;
}

.innovation-v2__youtube.is-no-poster::before{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(135deg,#0d0d0d,#242424);
}

.innovation-v2__media-shade{
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.28));
	pointer-events:none;
}

.innovation-v2__play{
	position:relative;
	z-index:3;
	display:inline-flex;
	align-items:center;
	gap:12px;
	min-height:52px;
	padding:0 19px 0 8px;
	border:1px solid rgba(255,255,255,.54);
	border-radius:999px;
	background:rgba(10,10,10,.62);
	color:#fff;
	font:inherit;
	font-size:13px;
	font-weight:700;
	cursor:pointer;
	-webkit-backdrop-filter:blur(10px);
	backdrop-filter:blur(10px);
	transition:transform .22s ease,background .22s ease;
}

.innovation-v2__play:hover{
	transform:translateY(-2px);
	background:rgba(10,10,10,.76);
}

.innovation-v2__play-icon{
	width:36px;
	height:36px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:var(--innovation-accent,#B91441);
	font-size:12px;
	padding-left:2px;
}

.innovation-v2__video-frame{
	position:absolute;
	inset:0;
	z-index:4;
	display:none;
}

.innovation-v2__youtube.is-playing .innovation-v2__video-frame{
	display:block;
}

.innovation-v2__youtube.is-playing .innovation-v2__play,
.innovation-v2__youtube.is-playing .innovation-v2__poster,
.innovation-v2__youtube.is-playing .innovation-v2__media-shade{
	display:none;
}

.innovation-v2__video-frame iframe{
	width:100%;
	height:100%;
	border:0;
}

/* Interactive demo */
.innovation-v2__demo{
	background:#111;
}

.innovation-v2__demo-image{
	position:absolute;
	inset:0;
	opacity:0;
	transform:scale(1.015);
	transition:opacity .75s ease,transform 1.2s cubic-bezier(.16,1,.3,1);
}

.innovation-v2__demo-image.is-active{
	opacity:1;
	transform:scale(1);
}

.innovation-v2__media-shade--demo{
	background:linear-gradient(180deg,rgba(0,0,0,.03) 0%,rgba(0,0,0,.06) 58%,rgba(0,0,0,.58) 100%);
}

.innovation-v2__demo-controls{
	position:absolute;
	z-index:3;
	left:auto;
	right:20px;
	top:auto;
	bottom:20px;
	display:inline-flex;
	gap:3px;
	padding:3px;
	border:1px solid var(--innovation-accent,#B91441);
	border-radius:999px;
	background:var(--innovation-accent,#B91441);
	box-shadow:0 8px 22px rgba(0,0,0,.16);
	-webkit-backdrop-filter:blur(9px);
	backdrop-filter:blur(9px);
}

.innovation-v2__demo-controls button{
	min-width:72px;
	height:32px;
	padding:0 12px;
	border:0;
	border-radius:999px;
	background:transparent;
	color:rgba(255,255,255,.86);
	font:inherit;
	font-size:10px;
	font-weight:700;
	cursor:pointer;
	transition:background .2s ease,color .2s ease;
}

.innovation-v2__demo-controls button.is-active{
	background:#fff;
	color:var(--innovation-accent,#B91441);
}

/* Nếu có dải thông số kỹ thuật, nút ON/OFF tự nâng lên để không chồng nội dung. */
.innovation-v2__demo:has(.innovation-v2__tech-strip > div) .innovation-v2__demo-controls{
	bottom:96px;
}

.innovation-v2__tech-strip{
	position:absolute;
	z-index:3;
	left:20px;
	right:20px;
	bottom:20px;
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	border:1px solid rgba(255,255,255,.22);
	border-radius:14px;
	background:rgba(13,13,13,.60);
	-webkit-backdrop-filter:blur(10px);
	backdrop-filter:blur(10px);
	overflow:hidden;
}

.innovation-v2__tech-strip > div{
	min-width:0;
	padding:13px 14px;
}

.innovation-v2__tech-strip > div + div{
	border-left:1px solid rgba(255,255,255,.18);
}

.innovation-v2__tech-strip strong,
.innovation-v2__tech-strip span{
	display:block;
}

.innovation-v2__tech-strip strong{
	color:#fff;
	font-size:15px;
	font-weight:750;
	line-height:1.2;
}

.innovation-v2__tech-strip span{
	margin-top:3px;
	color:rgba(255,255,255,.68);
	font-size:10px;
	line-height:1.25;
}

/* Navigation */
.innovation-v2__nav{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	border-top:1px solid rgba(0,0,0,.08);
	background:#fff;
}

.innovation-v2__nav-item{
	position:relative;
	display:flex;
	align-items:center;
	gap:10px;
	min-height:58px;
	padding:0 22px;
	border:0;
	border-right:1px solid rgba(0,0,0,.08);
	background:transparent;
	color:#6b6b6b;
	font:inherit;
	font-size:12px;
	font-weight:650;
	text-align:left;
	cursor:pointer;
}

.innovation-v2__nav-item:last-child{
	border-right:0;
}

.innovation-v2__nav-item::before{
	content:"";
	position:absolute;
	left:22px;
	right:22px;
	top:-1px;
	height:2px;
	background:var(--innovation-accent,#B91441);
	transform:scaleX(0);
	transform-origin:left center;
	transition:transform .25s ease;
}

.innovation-v2__nav-item.is-active{
	color:var(--innovation-text,#171717);
}

.innovation-v2__nav-item.is-active::before{
	transform:scaleX(1);
}

.innovation-v2__nav-number{
	color:var(--innovation-accent,#B91441);
	font-size:10px;
	font-weight:800;
	letter-spacing:.08em;
}

@media(max-width:1023px){
	.innovation-v2{
		padding:24px 0;
	}

	.innovation-v2__head{
		grid-template-columns:1fr;
		gap:10px;
		margin-bottom:18px;
	}

	.innovation-v2__lead{
		max-width:720px;
	}

	.innovation-v2__panel{
		grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);
		min-height:480px;
	}

	.innovation-v2__panels,
	.innovation-v2__media{
		min-height:480px;
	}

	.innovation-v2__copy{
		padding:34px 30px;
	}

	.innovation-v2__copy h3{
		font-size:clamp(29px,4vw,40px);
	}

	.innovation-v2__tech-strip{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.innovation-v2__tech-strip > div:nth-child(3){
		border-left:0;
		border-top:1px solid rgba(255,255,255,.18);
	}

	.innovation-v2__tech-strip > div:nth-child(4){
		border-top:1px solid rgba(255,255,255,.18);
	}
}

@media(max-width:767px){
	.innovation-v2{
		padding:20px 0;
	}

	.innovation-v2__head h2{
		font-size:27px;
	}

	.innovation-v2__lead{
		font-size:13px;
		line-height:1.55;
	}

	.innovation-v2__shell{
		border-radius:16px;
	}

	.innovation-v2__panels{
		min-height:0;
	}

	.innovation-v2__panel{
		display:flex;
		flex-direction:column;
		min-height:0;
	}

	.innovation-v2__copy{
		order:1;
		padding:26px 20px 28px;
	}

	.innovation-v2__media{
		order:0;
		min-height:0;
		height:auto;
		aspect-ratio:4/3;
	}

	.innovation-v2__picture,
	.innovation-v2__youtube,
	.innovation-v2__demo,
	.innovation-v2__demo-stage{
		position:absolute;
		inset:0;
	}

	.innovation-v2__copy h3{
		font-size:31px;
	}

	.innovation-v2__description{
		margin-top:14px;
		font-size:13.5px;
		line-height:1.58;
	}

	.innovation-v2__features{
		margin-top:18px;
	}

	.innovation-v2__features li{
		font-size:13px;
	}

	.innovation-v2__cta{
		margin-top:22px;
	}

	.innovation-v2__demo-controls{
		left:auto;
		right:12px;
		top:auto;
		bottom:12px;
	}

	.innovation-v2__demo-controls button{
		min-width:64px;
		height:30px;
		padding-inline:10px;
		font-size:9.5px;
	}

	.innovation-v2__demo:has(.innovation-v2__tech-strip > div) .innovation-v2__demo-controls{
		bottom:88px;
	}

	.innovation-v2__tech-strip{
		left:12px;
		right:12px;
		bottom:12px;
	}

	.innovation-v2__tech-strip > div{
		padding:9px 10px;
	}

	.innovation-v2__tech-strip strong{
		font-size:13px;
	}

	.innovation-v2__tech-strip span{
		font-size:9px;
	}

	.innovation-v2__nav{
		display:flex;
		overflow-x:auto;
		scroll-snap-type:x mandatory;
		scrollbar-width:none;
	}

	.innovation-v2__nav::-webkit-scrollbar{
		display:none;
	}

	.innovation-v2__nav-item{
		flex:0 0 76%;
		min-height:54px;
		padding-inline:18px;
		scroll-snap-align:start;
	}

	.innovation-v2__nav-item::before{
		left:18px;
		right:18px;
	}
}

@media(prefers-reduced-motion:reduce){
	.innovation-v2__image,
	.innovation-v2__demo-image,
	.innovation-v2__cta span:last-child,
	.innovation-v2__nav-item::before{
		transition:none!important;
	}
}

/* SOURCE: news-editorial-v2.css */
/* ==========================================================================
   NEWS & INSPIRATION V2 — Editorial Story Navigator
   ========================================================================== */

.home-section-frame:has(> .news-v2){
	margin-top:0!important;
	margin-bottom:0!important;
}

.news-v2{
	--news-accent:#B91441;
	--news-text:#202020;
	--news-muted:#777;
	--news-border:#e5e5e5;
	width:100%;
	padding:18px 0;
	background:#fff;
}

.news-v2__head{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:32px;
	margin-bottom:24px;
}

.news-v2__heading{
	max-width:820px;
}

.news-v2__eyebrow{
	margin:0 0 7px;
	color:var(--news-accent);
	font-size:12px;
	font-weight:700;
	line-height:1.2;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.news-v2__head h2{
	margin:0;
	max-width:800px;
	color:var(--news-text);
	font-size:clamp(28px,2.25vw,36px);
	font-weight:600;
	line-height:1.16;
	letter-spacing:-.03em;
}

.news-v2__description{
	margin:9px 0 0;
	max-width:650px;
	color:var(--news-muted);
	font-size:14px;
	line-height:1.55;
}

.news-v2__all{
	flex:0 0 auto;
	display:inline-flex;
	align-items:center;
	gap:10px;
	padding-bottom:5px;
	color:#252525;
	font-size:14px;
	font-weight:600;
	line-height:1.2;
	text-decoration:none;
}

.news-v2__all span:last-child{
	color:var(--news-accent);
	font-size:20px;
	transition:transform .22s ease;
}

.news-v2__all:hover span:last-child{
	transform:translateX(4px);
}

.news-v2__body{
	display:grid;
	grid-template-columns:minmax(340px,.82fr) minmax(0,1.42fr);
	gap:28px;
	align-items:stretch;
}

.news-v2__list{
	min-width:0;
	border-top:1px solid var(--news-border);
}

.news-v2__item{
	position:relative;
	min-height:88px;
	display:grid;
	grid-template-columns:76px minmax(0,1fr) 26px;
	align-items:center;
	gap:14px;
	padding:13px 4px 13px 14px;
	border-bottom:1px solid var(--news-border);
	color:inherit;
	text-decoration:none;
	transition:background .2s ease;
}

.news-v2__item::before{
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	width:3px;
	background:var(--news-accent);
	transform:scaleY(0);
	transform-origin:center;
	transition:transform .22s ease;
}

.news-v2__item:hover{
	background:#fafafa;
}

.news-v2__item.is-active{
	background:#fff;
}

.news-v2__item.is-active::before{
	transform:scaleY(1);
}

.news-v2__number{
	color:#b7b7b7;
	font-size:42px;
	font-weight:300;
	line-height:1;
	letter-spacing:-.045em;
	transition:color .22s ease;
}

.news-v2__item.is-active .news-v2__number{
	color:var(--news-accent);
}

.news-v2__item-copy{
	min-width:0;
	display:block;
}

.news-v2__category{
	display:block;
	margin-bottom:4px;
	color:#999;
	font-size:10px;
	font-weight:700;
	line-height:1.2;
	letter-spacing:.08em;
	text-transform:uppercase;
}

.news-v2__item h3{
	display:-webkit-box;
	margin:0;
	overflow:hidden;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	color:var(--news-text);
	font-size:16px;
	font-weight:500;
	line-height:1.35;
	letter-spacing:-.01em;
	transition:color .2s ease;
}

.news-v2__item.is-active h3{
	font-size:18px;
	font-weight:650;
}

.news-v2__item time{
	display:block;
	margin-top:5px;
	color:#9a9a9a;
	font-size:11px;
	line-height:1.2;
}

.news-v2__item-arrow{
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--news-accent);
	font-size:20px;
	transition:transform .22s ease;
}

.news-v2__item:hover .news-v2__item-arrow,
.news-v2__item.is-active .news-v2__item-arrow{
	transform:translateX(3px);
}

.news-v2__stage{
	min-width:0;
	display:flex;
	flex-direction:column;
}

.news-v2__visuals{
	position:relative;
	aspect-ratio:3 / 2;
	overflow:hidden;
	border-radius:16px;
	background:#f5f5f5;
}

.news-v2__visual{
	position:absolute;
	inset:0;
	opacity:0;
	visibility:hidden;
	transform:scale(1.015);
	transition:opacity .38s ease,transform .55s cubic-bezier(.16,1,.3,1),visibility 0s linear .38s;
}

.news-v2__visual.is-active{
	opacity:1;
	visibility:visible;
	transform:scale(1);
	transition-delay:0s;
}

.news-v2__visual-link{
	position:relative;
	display:block;
	width:100%;
	height:100%;
	color:#fff;
	text-decoration:none;
}

.news-v2__image,
.news-v2__placeholder{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
}

.news-v2__image{
	display:block;
	object-fit:cover;
	object-position:center;
}

.news-v2__placeholder{
	display:flex;
	align-items:center;
	justify-content:center;
	background:#f4f4f4;
	color:#bdbdbd;
}

.news-v2__placeholder svg{
	width:64px;
	height:64px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.35;
	stroke-linecap:round;
	stroke-linejoin:round;
}

.news-v2__shade{
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,rgba(5,5,5,0) 42%,rgba(5,5,5,.72) 100%);
	pointer-events:none;
}

.news-v2__visual-caption{
	position:absolute;
	z-index:2;
	left:24px;
	right:110px;
	bottom:22px;
}

.news-v2__visual-category{
	display:block;
	margin-bottom:8px;
	color:rgba(255,255,255,.8);
	font-size:10px;
	font-weight:700;
	line-height:1.2;
	letter-spacing:.09em;
	text-transform:uppercase;
}

.news-v2__visual-caption p{
	display:-webkit-box;
	max-width:670px;
	margin:0;
	overflow:hidden;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:2;
	color:#fff;
	font-size:18px;
	font-weight:400;
	line-height:1.42;
	text-shadow:0 2px 14px rgba(0,0,0,.26);
}

.news-v2__read{
	display:inline-flex;
	align-items:center;
	gap:9px;
	margin-top:13px;
	padding:8px 13px;
	border:1px solid rgba(255,255,255,.48);
	border-radius:999px;
	background:rgba(20,20,20,.18);
	color:#fff;
	font-size:12px;
	font-weight:600;
	line-height:1;
	-webkit-backdrop-filter:blur(6px);
	backdrop-filter:blur(6px);
}

.news-v2__stage-footer{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:14px;
	margin-top:10px;
}

.news-v2__counter{
	display:none;
	align-items:center;
	gap:4px;
	margin-right:auto;
	color:#777;
	font-size:12px;
	font-variant-numeric:tabular-nums;
}

.news-v2__navs{
	display:flex;
	gap:7px;
}

.news-v2__nav{
	width:38px;
	height:38px;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:0;
	border:1px solid #d8d8d8;
	border-radius:50%;
	background:#fff;
	color:#222;
	font-size:17px;
	line-height:1;
	cursor:pointer;
	transition:border-color .2s ease,color .2s ease,transform .2s ease;
}

.news-v2__nav:hover{
	border-color:var(--news-accent);
	color:var(--news-accent);
	transform:translateY(-1px);
}

.news-v2__nav:focus-visible,
.news-v2__item:focus-visible,
.news-v2__all:focus-visible{
	outline:2px solid var(--news-accent);
	outline-offset:3px;
}

/* Tablet keeps the editorial two-column idea */
@media(min-width:768px) and (max-width:1023px){
	.news-v2{
		padding:16px 0;
	}

	.news-v2__head{
		margin-bottom:18px;
	}

	.news-v2__body{
		grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);
		gap:18px;
	}

	.news-v2__item{
		min-height:78px;
		grid-template-columns:56px minmax(0,1fr) 22px;
		gap:10px;
		padding:11px 4px 11px 11px;
	}

	.news-v2__number{
		font-size:34px;
	}

	.news-v2__item h3{
		font-size:14px;
	}

	.news-v2__item.is-active h3{
		font-size:15.5px;
	}

	.news-v2__visual-caption{
		left:18px;
		right:80px;
		bottom:18px;
	}

	.news-v2__visual-caption p{
		font-size:15px;
	}
}

/* Mobile: visual first, list below */
@media(max-width:767px){
	.news-v2{
		padding:14px 0;
	}

	.news-v2__head{
		align-items:flex-start;
		gap:14px;
		margin-bottom:14px;
	}

	.news-v2__eyebrow{
		font-size:10px;
	}

	.news-v2__head h2{
		font-size:27px;
	}

	.news-v2__description{
		font-size:13px;
		line-height:1.5;
	}

	.news-v2__all{
		display:none;
	}

	.news-v2__body{
		display:flex;
		flex-direction:column;
		gap:12px;
	}

	.news-v2__stage{
		order:1;
	}

	.news-v2__list{
		order:2;
	}

	.news-v2__visuals{
		border-radius:14px;
	}

	.news-v2__visual-caption{
		display:none;
	}

	.news-v2__stage-footer{
		margin-top:9px;
	}

	.news-v2__counter{
		display:flex;
	}

	.news-v2__nav{
		width:36px;
		height:36px;
	}

	.news-v2__item{
		min-height:74px;
		grid-template-columns:50px minmax(0,1fr) 22px;
		gap:9px;
		padding:10px 2px 10px 9px;
	}

	.news-v2__number{
		font-size:31px;
	}

	.news-v2__category{
		font-size:9px;
	}

	.news-v2__item h3,
	.news-v2__item.is-active h3{
		font-size:14px;
		line-height:1.35;
	}

	.news-v2__item time{
		font-size:10.5px;
	}
}

@media(max-width:420px){
	.news-v2__head h2{
		font-size:25px;
	}

	.news-v2__item{
		grid-template-columns:45px minmax(0,1fr) 20px;
	}

	.news-v2__number{
		font-size:28px;
	}
}

@media(prefers-reduced-motion:reduce){
	.news-v2__visual,
	.news-v2__item::before,
	.news-v2__item-arrow,
	.news-v2__all span:last-child,
	.news-v2__nav{
		transition:none!important;
	}
}

/* ==========================================================================
   BƯỚC 53E — CHỈ CÂN CHIỀU CAO KHỐI ẢNH THEO DANH SÁCH 5 BÀI
   Giữ nguyên toàn bộ tỷ lệ cột, font, spacing, caption và responsive đã chốt.
   ========================================================================== */
@media(min-width:768px){
	.news-v2__body{
		align-items:stretch;
	}

	.news-v2__stage{
		height:100%;
		min-height:0;
	}

	.news-v2__visuals{
		flex:1 1 auto;
		min-height:0;
		aspect-ratio:auto;
	}

	.news-v2__visual{
		height:100%;
	}
}