/* Huilianda B2B — Premium Borderless Design System */
:root {
	--color-primary: #0C1A30;
	--color-primary-container: #0A2540;
	--color-on-primary-container: #8FA3BE;
	--color-secondary: #E55A2B;
	--color-secondary-container: #FF6B35;
	--color-on-secondary: #ffffff;
	--color-surface: #FFFFFF;
	--color-surface-low: #F8F9FA;
	--color-surface-alt: #F4F6F8;
	--color-surface-container: #F0F2F5;
	--color-surface-container-high: #E8ECF0;
	--color-white: #ffffff;
	--color-on-surface: #1A2332;
	--color-on-surface-variant: #5A6578;
	--color-outline: #94A3B8;
	--color-outline-variant: #E2E8F0;
	--font-sans: 'Inter', 'Helvetica Neue', Helvetica, Arial, 'Segoe UI', sans-serif;
	--font-mono: ui-monospace, 'Cascadia Code', 'Segoe UI Mono', Consolas, 'Courier New', monospace;
	--container-max: 1440px;
	--gutter: 24px;
	--margin-mobile: 16px;
	--margin-desktop: 40px;
	--radius-sm: 6px;
	--radius-md: 8px;
	--radius-lg: 12px;
	--radius-xl: 16px;
	--shadow-ambient: 0 4px 30px rgba(0, 0, 0, 0.03);
	--shadow-card: 0 8px 40px rgba(12, 26, 48, 0.06);
	--shadow-hover: 0 12px 48px rgba(12, 26, 48, 0.10);
	--shadow-lg: 0 20px 60px rgba(12, 26, 48, 0.12);
	--transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
	font-size: 16px;
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

body {
	font-family: var(--font-sans);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--color-on-surface);
	background: var(--color-surface);
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-feature-settings: 'kern' 1, 'liga' 1;
	letter-spacing: -0.011em;
}

img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: color var(--transition); }
ul, ol { list-style: none; }
button, input, select, textarea { font-family: inherit; font-size: inherit; }

.container {
	width: 100%;
	max-width: var(--container-max);
	margin: 0 auto;
	padding-left: var(--margin-mobile);
	padding-right: var(--margin-mobile);
}

@media (min-width: 768px) {
	.container { padding-left: var(--margin-desktop); padding-right: var(--margin-desktop); }
}


/* Typography */
.hld-label {
	font-family: var(--font-sans);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.hld-display {
	font-size: 32px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -0.025em;
}

@media (min-width: 768px) {
	.hld-display { font-size: 48px; line-height: 1.15; letter-spacing: -0.02em; }
}

.hld-headline-md {
	font-size: 26px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.022em;
}
@media (min-width: 768px) {
	.hld-headline-md { font-size: 32px; line-height: 1.3; }
}
.hld-headline-sm {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -0.018em;
}
@media (min-width: 768px) {
	.hld-headline-sm { font-size: 22px; }
}
.hld-body-lg { font-size: 18px; line-height: 1.65; font-weight: 400; }
.hld-body-md { font-size: 16px; line-height: 1.65; font-weight: 400; }
.hld-body-sm { font-size: 15px; line-height: 1.6; font-weight: 400; }

/* Buttons */
.hld-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 24px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	border: none;
	border-radius: var(--radius-md);
	cursor: pointer;
	transition: all var(--transition);
	white-space: nowrap;
}

.hld-btn-primary { background: var(--color-primary); color: var(--color-white); box-shadow: var(--shadow-ambient); }
.hld-btn-primary:hover { background: #152238; box-shadow: var(--shadow-card); transform: translateY(-1px); }

.hld-btn-cta { background: var(--color-secondary-container); color: var(--color-on-secondary); box-shadow: 0 4px 20px rgba(255, 107, 53, 0.25); }
.hld-btn-cta:hover { background: #E55A2B; box-shadow: 0 6px 28px rgba(255, 107, 53, 0.35); transform: translateY(-1px); }

.hld-btn-ghost {
	background: rgba(255,255,255,0.08);
	color: var(--color-white);
	border: none;
	backdrop-filter: blur(8px);
}
.hld-btn-ghost:hover { background: rgba(255,255,255,0.16); }

.hld-btn-lg { padding: 16px 32px; font-size: 18px; }

/* Header */
.hld-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-bottom: none;
	box-shadow: 0 1px 0 rgba(12, 26, 48, 0.04);
	overflow: visible;
}

.hld-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 0;
	gap: 16px;
	min-height: 72px;
}

.hld-logo {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 24px;
	font-weight: 700;
	color: var(--color-primary);
	flex-shrink: 0;
}

.hld-logo-img { height: 56px; width: auto; }
.hld-logo-text { display: none; }
.hld-logo-img[style*="display: none"] + .hld-logo-text,
.hld-logo:not(:has(.hld-logo-img)) .hld-logo-text { display: block; }

.hld-nav-toggle {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	width: 32px;
	height: 32px;
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
}

.hld-nav-toggle span {
	display: block;
	width: 100%;
	height: 2px;
	background: var(--color-primary);
	transition: var(--transition);
}

.hld-nav-toggle.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hld-nav-toggle.is-open span:nth-child(2) { opacity: 0; }
.hld-nav-toggle.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.hld-nav-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: var(--color-white);
	border-bottom: none;
	padding: 16px var(--margin-mobile) 24px;
	box-shadow: var(--shadow-card);
}

.hld-nav-menu.is-open { display: block; }

.hld-nav-list { margin-bottom: 16px; }

.hld-nav-item { border-bottom: none; }
.hld-nav-link {
	display: block;
	padding: 12px 0;
	color: var(--color-on-surface-variant);
	font-size: 16px;
	font-weight: 500;
}

.hld-nav-item.is-active .hld-nav-link,
.hld-nav-link:hover { color: var(--color-secondary-container); }

.hld-nav-item.is-active .hld-nav-link {
	display: inline-block;
	padding: 8px 14px;
	color: var(--color-secondary-container);
	background: rgba(255, 107, 53, 0.1);
	border-radius: 6px;
	font-weight: 600;
	position: relative;
}

.hld-nav-item.is-active .hld-nav-link::after {
	content: '';
	position: absolute;
	left: 14px;
	right: 14px;
	bottom: 4px;
	height: 2px;
	border-radius: 2px;
	background: rgba(255, 107, 53, 0.45);
}

.hld-nav-item.has-child > .hld-nav-sub { display: none; }
@media (max-width: 991px) {
	.hld-nav-item.has-child.is-open > .hld-nav-sub { display: block; }
}
.hld-nav-sub { padding-left: 16px; padding-bottom: 8px; }
.hld-nav-sub a { display: block; padding: 8px 0; font-size: 14px; color: var(--color-on-surface-variant); }
.hld-nav-sub a:hover { color: var(--color-primary); }
.hld-nav-item.has-child.is-open > .hld-nav-link .hld-nav-caret { transform: rotate(180deg); }
.hld-nav-caret {
	display: inline-block;
	width: 0;
	height: 0;
	margin-left: 6px;
	vertical-align: middle;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid currentColor;
	opacity: 0.55;
	transition: transform var(--transition);
}
.hld-nav-item.has-child:hover .hld-nav-caret { transform: rotate(180deg); }

.hld-nav-cta { width: 100%; text-align: center; }

@media (min-width: 992px) {
	.hld-header { position: sticky; overflow: visible; }
	.hld-nav { position: relative; overflow: visible; }
	.hld-nav-toggle { display: none; }
	.hld-nav-menu {
		display: flex;
		flex: 1;
		align-items: center;
		gap: 40px;
		min-width: 0;
		margin-left: 32px;
		position: static;
		background: none;
		border: none;
		padding: 0;
		box-shadow: none;
		overflow: visible;
	}
	.hld-nav-list {
		flex: 1;
		display: flex;
		justify-content: space-evenly;
		align-items: center;
		gap: 8px;
		margin-bottom: 0;
		overflow: visible;
	}
	.hld-nav-item { border: none; position: relative; overflow: visible; }
	.hld-nav-item.has-child::after {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		height: 14px;
	}
	.hld-nav-link {
		padding: 8px 14px;
		font-size: 15px;
		font-weight: 500;
		white-space: nowrap;
		text-align: center;
		border-radius: 999px;
		transition: background var(--transition), color var(--transition), box-shadow var(--transition);
	}
	.hld-nav-link:hover {
		background: rgba(255, 107, 53, 0.06);
		color: var(--color-secondary-container);
	}
	.hld-nav-item.is-active .hld-nav-link {
		padding: 8px 14px;
	}
	.hld-nav-sub {
		display: none;
		position: absolute;
		top: calc(100% + 4px);
		left: 50%;
		transform: translateX(-50%);
		min-width: 220px;
		background: var(--color-white);
		border: 1px solid var(--color-outline-variant);
		border-radius: var(--radius-lg);
		padding: 10px 0;
		box-shadow: var(--shadow-card);
		z-index: 1100;
		pointer-events: auto;
	}
	.hld-nav-sub::before {
		content: '';
		position: absolute;
		top: -6px;
		left: 50%;
		transform: translateX(-50%) rotate(45deg);
		width: 10px;
		height: 10px;
		background: var(--color-white);
		border-left: 1px solid var(--color-outline-variant);
		border-top: 1px solid var(--color-outline-variant);
	}
	.hld-nav-sub li { list-style: none; }
	.hld-nav-sub a {
		display: block;
		padding: 11px 20px;
		font-size: 13px;
		font-weight: 500;
		letter-spacing: 0.03em;
		color: var(--color-on-surface-variant);
		white-space: nowrap;
		transition: background var(--transition), color var(--transition);
	}
	.hld-nav-sub a:hover {
		background: var(--color-surface-alt);
		color: var(--color-primary);
	}
	.hld-nav-sub li.is-active a {
		color: var(--color-secondary-container);
		background: rgba(255, 107, 53, 0.06);
	}
	.hld-nav-item:has(> .hld-nav-sub):hover > .hld-nav-sub,
	.hld-nav-item.has-child:hover > .hld-nav-sub,
	.hld-nav-item.is-dropdown-open > .hld-nav-sub {
		display: block;
		position: fixed;
		z-index: 10050;
	}
	.hld-nav-cta {
		width: auto;
		flex-shrink: 0;
		align-self: center;
		padding: 12px 24px;
		font-size: 15px;
	}
}

.hld-header.is-dropdown-active {
	z-index: 10040;
}

#main-content {
	position: relative;
	z-index: 1;
}

/* Hero */
.hld-hero {
	position: relative;
	min-height: 560px;
	background: var(--color-primary-container);
	overflow: hidden;
}

@media (min-width: 768px) { .hld-hero { min-height: 700px; } }

.hld-hero-bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	opacity: 0.92;
	background-size: cover;
	background-position: 72% center;
	will-change: transform;
}

.hld-hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to right,
		rgba(12, 26, 48, 0.94) 0%,
		rgba(10, 37, 64, 0.78) 38%,
		rgba(10, 37, 64, 0.35) 62%,
		rgba(10, 37, 64, 0.15) 100%
	);
	pointer-events: none;
	z-index: 1;
}

.hld-hero-content {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1fr;
	align-items: center;
	min-height: 560px;
	padding-top: 48px;
	padding-bottom: 48px;
}

@media (min-width: 768px) {
	.hld-hero-content {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 48px;
		min-height: 700px;
		padding-top: 64px;
		padding-bottom: 64px;
	}
}

.hld-hero-inner {
	max-width: 620px;
	justify-self: start;
	text-align: left;
}

.hld-hero h1 {
	color: var(--color-white);
	margin-bottom: 24px;
}

.hld-hero-desc {
	color: var(--color-on-primary-container);
	margin-bottom: 32px;
	max-width: 540px;
}

.hld-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	justify-content: flex-start;
}

/* Section common */
.hld-section { padding: 96px 0; }
@media (min-width: 768px) { .hld-section { padding: 128px 0; } }

.hld-section-header { text-align: center; margin-bottom: 72px; }
.hld-section-header .hld-label {
	color: var(--color-secondary-container);
	display: block;
	margin-bottom: 18px;
	font-size: 15px;
	opacity: 1;
}
.hld-section-header .hld-headline-md {
	max-width: 820px;
	margin: 0 auto;
	font-weight: 600;
}
@media (min-width: 768px) {
	.hld-section-header .hld-headline-md { font-size: 32px; line-height: 1.3; }
}

.hld-section-intro {
	max-width: 780px;
	margin: 24px auto 0;
	color: var(--color-on-surface-variant);
	font-size: 17px;
	line-height: 1.7;
}

.hld-section-bg { background: var(--color-surface-low); }

/* ── Bento Grid: Industry Challenges ── */
.hld-bento-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
}

@media (min-width: 768px) {
	.hld-bento-grid { grid-template-columns: repeat(3, 1fr); gap: 24px; }
}

.hld-bento-card {
	background: var(--color-white);
	border: none;
	border-radius: var(--radius-xl);
	padding: 40px 36px 36px;
	box-shadow: var(--shadow-ambient);
	display: flex;
	flex-direction: column;
	gap: 28px;
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.35s ease;
}

.hld-bento-card:hover { transform: translateY(-8px); }

.hld-bento-card--navy:hover {
	box-shadow: 0 20px 60px rgba(10, 37, 64, 0.12), 0 4px 20px rgba(10, 37, 64, 0.06);
}

.hld-bento-card--orange:hover {
	box-shadow: 0 20px 60px rgba(255, 107, 53, 0.14), 0 4px 20px rgba(255, 107, 53, 0.06);
}

.hld-bento-body h3 {
	margin-bottom: 14px;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0;
}
@media (min-width: 768px) {
	.hld-bento-body h3 { font-size: 22px; }
}
.hld-bento-body p { color: var(--color-on-surface-variant); line-height: 1.65; font-size: 16px; }

/* Micro-UI widget shell (glassmorphism) */
.hld-micro-ui {
	background: rgba(248, 249, 250, 0.7);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-radius: var(--radius-lg);
	padding: 22px 24px;
	border: none;
	box-shadow: inset 0 1px 0 rgba(255,255,255,0.8), 0 2px 12px rgba(12, 26, 48, 0.04);
}

.hld-micro-ui--dark {
	background: rgba(10, 37, 64, 0.04);
}

.hld-micro-ui--warm {
	background: rgba(255, 107, 53, 0.05);
}

.hld-micro-ui__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
}

.hld-micro-ui__label {
	font-family: var(--font-mono);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--color-on-surface-variant);
	opacity: 0.9;
}

.hld-micro-ui__status {
	font-family: var(--font-mono);
	font-size: 13px;
	color: #16A34A;
	font-weight: 700;
	letter-spacing: 0.03em;
}

/* Pulse dots */
.hld-pulse-dot {
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	flex-shrink: 0;
}

.hld-pulse-dot--green { background: #22C55E; }
.hld-pulse-dot--red { background: #EF4444; opacity: 0.7; }

.hld-pulse-dot--glow {
	animation: hld-pulse-glow 2s ease-in-out infinite;
	box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.5);
}

@keyframes hld-pulse-glow {
	0%, 100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.45); }
	50% { box-shadow: 0 0 0 6px rgba(34, 197, 94, 0); }
}

/* QC Chart mockup */
.hld-qc-badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-family: var(--font-mono);
	font-size: 13px;
	font-weight: 700;
	color: #15803D;
	background: rgba(34, 197, 94, 0.12);
	padding: 5px 12px;
	border-radius: 999px;
}

.hld-qc-chart { position: relative; }

.hld-qc-wave {
	width: 100%;
	height: 84px;
	display: block;
}

.hld-qc-stats {
	display: flex;
	justify-content: space-between;
	font-family: var(--font-mono);
	font-size: 12px;
	font-weight: 500;
	color: var(--color-on-surface-variant);
	opacity: 0.75;
	margin-top: 8px;
}

/* MOQ Slider mockup */
.hld-moq-track {
	position: relative;
	height: 6px;
	background: var(--color-surface-container);
	border-radius: 999px;
	margin: 12px 0 20px;
}

.hld-moq-fill {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 12%;
	background: linear-gradient(90deg, #FF6B35, #FF8F66);
	border-radius: 999px;
}

.hld-moq-thumb {
	position: absolute;
	left: 10%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 18px;
	height: 18px;
	background: #FF6B35;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(255, 107, 53, 0.45);
	border: 3px solid var(--color-white);
}

.hld-moq-markers {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	font-weight: 500;
	color: var(--color-on-surface-variant);
}

.hld-moq-markers .is-active {
	color: #FF6B35;
	font-weight: 700;
	font-size: 15px;
}

.hld-moq-markers .is-faded { opacity: 0.35; }

/* Line toggle mockup */
.hld-line-toggle { display: flex; flex-direction: column; gap: 16px; }

.hld-line-row { display: flex; flex-direction: column; gap: 8px; }

.hld-line-info {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 15px;
	font-weight: 600;
	color: var(--color-on-surface);
}

.hld-line-row--off .hld-line-info { color: var(--color-on-surface-variant); opacity: 0.6; }

.hld-line-bar {
	height: 6px;
	background: var(--color-surface-container);
	border-radius: 999px;
	overflow: hidden;
}

.hld-line-bar span {
	display: block;
	height: 100%;
	border-radius: 999px;
}

.hld-line-bar--gray span { background: #CBD5E1; }

.hld-line-bar--active span.hld-line-progress {
	width: 100%;
	background: linear-gradient(90deg, #22C55E, #4ADE80);
	animation: hld-line-load 2.5s ease-in-out infinite alternate;
}

@keyframes hld-line-load {
	from { width: 72%; opacity: 0.85; }
	to { width: 100%; opacity: 1; }
}

/* ── Console Grid: Dual-Line Solutions ── */
.hld-console-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
}

@media (min-width: 992px) {
	.hld-console-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}

.hld-console-card {
	background: var(--color-white);
	border: none;
	border-radius: var(--radius-xl);
	padding: 36px 32px;
	box-shadow: var(--shadow-ambient);
	display: flex;
	flex-direction: column;
	gap: 28px;
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.35s ease;
	position: relative;
	overflow: hidden;
}

.hld-console-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 2px;
}

.hld-console-card--bulk::before { background: #0A2540; }
.hld-console-card--growth::before { background: #FF6B35; }

.hld-console-card--bulk:hover {
	transform: translateY(-6px);
	box-shadow: 0 24px 64px rgba(10, 37, 64, 0.12);
}

.hld-console-card--growth:hover {
	transform: translateY(-6px);
	box-shadow: 0 24px 64px rgba(255, 107, 53, 0.14);
}

.hld-console-head h3 {
	margin-bottom: 12px;
	font-size: 22px;
	font-weight: 600;
	letter-spacing: -0.01em;
}
@media (min-width: 768px) {
	.hld-console-head h3 { font-size: 24px; }
}

.hld-console-card--bulk .hld-console-head h3 { color: #0A2540; }
.hld-console-card--growth .hld-console-head h3 { color: #FF6B35; }

.hld-console-head > p {
	color: var(--color-on-surface-variant);
	line-height: 1.65;
	font-size: 16px;
}

.hld-console-visual .hld-micro-ui {
	width: 100%;
}

.hld-console-card .hld-benefit-list--grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px 24px;
	margin-top: 4px;
}

@media (min-width: 640px) {
	.hld-console-card .hld-benefit-list--grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

.hld-console-card .hld-benefit-list--grid li {
	padding-left: 18px;
	font-size: 14px;
	line-height: 1.65;
}

/* Feature tags (replaces checklist) */
.hld-feature-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
}

.hld-feature-tags li {
	font-size: 14px;
	font-weight: 600;
	padding: 8px 14px;
	border-radius: 999px;
	background: rgba(10, 37, 64, 0.06);
	color: #0A2540;
}

.hld-feature-tags--orange li {
	background: rgba(255, 107, 53, 0.1);
	color: #C2410C;
}

.hld-benefit-list {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 4px;
}

.hld-benefit-list li {
	position: relative;
	padding-left: 20px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--color-on-surface-variant);
}

.hld-benefit-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 8px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #0A2540;
}

.hld-benefit-list--orange li::before { background: #FF6B35; }

.hld-console-card .hld-btn { width: 100%; margin-top: auto; }

/* Shipment stepper mockup */
.hld-stepper { display: flex; flex-direction: column; gap: 0; }

.hld-stepper--horizontal {
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0;
}

@media (max-width: 639px) {
	.hld-stepper--horizontal {
		flex-direction: column;
	}
	.hld-stepper--horizontal .hld-step-connector {
		width: 2px;
		height: 16px;
		margin: 0 0 0 15px;
		flex: none;
	}
}

.hld-stepper--horizontal .hld-step {
	flex: 1;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 0 8px;
}

.hld-stepper--horizontal .hld-step-content {
	align-items: center;
}

.hld-stepper--horizontal .hld-step-connector {
	width: auto;
	height: 2px;
	flex: 1;
	min-width: 24px;
	margin-top: 16px;
	align-self: flex-start;
}

.hld-step {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 8px 0;
}

.hld-step-icon {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 16px;
}

.hld-step--done .hld-step-icon {
	background: rgba(10, 37, 64, 0.1);
	color: #0A2540;
}


.hld-step--active .hld-step-icon {
	background: rgba(34, 197, 94, 0.12);
	width: 32px;
	height: 32px;
}

.hld-step-content {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.hld-step-content strong {
	font-size: 15px;
	font-weight: 700;
	color: var(--color-on-surface);
	line-height: 1.35;
}

.hld-step-content span {
	font-size: 13px;
	color: var(--color-on-surface-variant);
	opacity: 0.85;
}

.hld-step-connector {
	width: 2px;
	height: 16px;
	margin-left: 13px;
	background: var(--color-surface-container);
	border-radius: 1px;
}

.hld-step-connector.is-done { background: rgba(10, 37, 64, 0.2); }

.hld-step-connector.is-active {
	background: linear-gradient(to bottom, rgba(10, 37, 64, 0.2), rgba(34, 197, 94, 0.4));
	animation: hld-connector-pulse 1.5s ease-in-out infinite;
}

@keyframes hld-connector-pulse {
	0%, 100% { opacity: 0.6; }
	50% { opacity: 1; }
}

/* Pricing calculator mockup */
.hld-pricing-calc { display: flex; flex-direction: column; gap: 8px; }

.hld-pricing-calc--horizontal {
	flex-direction: row;
	gap: 10px;
}

@media (max-width: 639px) {
	.hld-pricing-calc--horizontal { flex-direction: column; }
}

.hld-pricing-calc--horizontal .hld-pricing-row {
	flex: 1;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 16px 12px;
	text-align: center;
}

.hld-pricing-calc--horizontal .hld-pricing-qty {
	font-size: 13px;
}

.hld-pricing-calc--horizontal .hld-pricing-price {
	font-size: 14px;
}

.hld-pricing-calc--horizontal .hld-pricing-row.is-highlight .hld-pricing-price {
	font-size: 15px;
}

.hld-pricing-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 16px;
	border-radius: var(--radius-md);
	font-size: 15px;
	transition: background 0.2s ease;
}

.hld-pricing-qty { color: var(--color-on-surface-variant); font-weight: 600; font-size: 14px; }
.hld-pricing-price { font-weight: 700; color: var(--color-on-surface); font-family: var(--font-mono); font-size: 15px; }

.hld-pricing-row.is-highlight {
	background: rgba(255, 107, 53, 0.12);
}

.hld-pricing-row.is-highlight .hld-pricing-qty { color: #C2410C; font-weight: 700; font-size: 14px; }
.hld-pricing-row.is-highlight .hld-pricing-price { color: #FF6B35; font-size: 16px; }

.hld-pricing-arrow {
	display: inline-block;
	font-size: 16px;
	margin-left: 4px;
	color: #FF6B35;
}

/* Process steps */
.hld-process {
	display: flex;
	flex-direction: column;
	gap: 24px;
	position: relative;
}

@media (min-width: 768px) {
	.hld-process {
		flex-direction: row;
		gap: 28px;
		align-items: stretch;
	}
	.hld-process::before {
		content: '';
		position: absolute;
		top: 52px;
		left: calc(16.66% + 28px);
		right: calc(16.66% + 28px);
		height: 2px;
		background: linear-gradient(90deg, rgba(12, 26, 48, 0.12) 0%, rgba(255, 107, 53, 0.35) 50%, rgba(12, 26, 48, 0.12) 100%);
		z-index: 0;
	}
}

.hld-process-step {
	flex: 1;
	background: var(--color-white);
	border: 1px solid rgba(12, 26, 48, 0.06);
	border-radius: var(--radius-lg);
	padding: 36px 32px 32px;
	position: relative;
	z-index: 1;
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition), transform var(--transition), border-color var(--transition);
}

.hld-process-step--accent {
	border-color: rgba(255, 107, 53, 0.18);
}

.hld-process-step:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-4px);
	border-color: rgba(12, 26, 48, 0.1);
}

.hld-process-step--accent:hover {
	border-color: rgba(255, 107, 53, 0.28);
}

.hld-step-num {
	width: 56px;
	height: 56px;
	background: linear-gradient(145deg, #0C1A30 0%, #152238 100%);
	color: var(--color-white);
	border-radius: 14px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1px;
	margin-bottom: 24px;
	box-shadow: 0 6px 20px rgba(12, 26, 48, 0.22);
	position: relative;
}

.hld-step-num::after {
	content: '';
	position: absolute;
	inset: -4px;
	border-radius: 18px;
	border: 1px solid rgba(12, 26, 48, 0.08);
	pointer-events: none;
}

.hld-step-num--accent {
	background: linear-gradient(145deg, #FF6B35 0%, #E55A2B 100%);
	box-shadow: 0 6px 20px rgba(255, 107, 53, 0.28);
}

.hld-step-num--accent::after {
	border-color: rgba(255, 107, 53, 0.15);
}

.hld-step-num__label {
	font-size: 9px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	opacity: 0.72;
}

.hld-step-num__value {
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.03em;
	font-variant-numeric: tabular-nums;
}

.hld-process-step h4 { margin-bottom: 12px; }
.hld-process-step p { color: var(--color-on-surface-variant); line-height: 1.65; font-size: 15px; }

/* Why Choose Us */
.hld-why-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
	margin-bottom: 48px;
}

@media (min-width: 768px) {
	.hld-why-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }
}

@media (min-width: 1200px) {
	.hld-why-grid { grid-template-columns: repeat(4, 1fr); gap: 20px; }
}

.hld-why-item {
	background: var(--color-white);
	border-radius: var(--radius-xl);
	padding: 36px 28px 32px;
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition), transform var(--transition);
	position: relative;
	overflow: hidden;
}

.hld-why-item::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, #FF6B35, #0A2540);
	opacity: 0;
	transition: opacity var(--transition);
}

.hld-why-item:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-6px);
}

.hld-why-item:hover::after { opacity: 1; }

.hld-why-num {
	display: block;
	font-size: clamp(48px, 6vw, 64px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	margin-bottom: 20px;
	background: linear-gradient(135deg, #FF6B35 0%, #0A2540 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-family: var(--font-sans);
}

.hld-why-item p {
	color: var(--color-on-surface-variant);
	line-height: 1.75;
	font-size: 15px;
}

.hld-why-summary {
	max-width: 820px;
	margin: 0 auto;
	text-align: center;
	font-size: 18px;
	line-height: 1.75;
	color: var(--color-on-surface);
	font-weight: 500;
}

/* Cooperation Cases slider */
.hld-case-header {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-bottom: 40px;
}

@media (min-width: 768px) {
	.hld-case-header {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-end;
	}
}

.hld-case-nav {
	display: flex;
	gap: 12px;
	flex-shrink: 0;
}

.hld-case-prev,
.hld-case-next,
.hld-factory-prev,
.hld-factory-next {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	border: none;
	background: var(--color-white);
	box-shadow: var(--shadow-ambient);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--color-primary);
	transition: box-shadow var(--transition), transform var(--transition), background var(--transition);
}

.hld-case-prev:hover,
.hld-case-next:hover,
.hld-factory-prev:hover,
.hld-factory-next:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-2px);
	background: var(--color-primary);
	color: var(--color-white);
}

.hld-case-slider {
	overflow: hidden;
	position: relative;
}

.hld-case-track {
	display: flex;
	transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: transform;
}

.hld-case-slide {
	flex: 0 0 100%;
	min-width: 0;
	background: var(--color-white);
	border-radius: var(--radius-xl);
	padding: 40px 36px;
	box-shadow: var(--shadow-ambient);
	margin-right: 0;
}

@media (min-width: 992px) {
	.hld-case-slide {
		flex: 0 0 calc(50% - 14px);
		margin-right: 28px;
	}
}

.hld-case-slide--orange {
	background: linear-gradient(135deg, rgba(255, 107, 53, 0.05) 0%, var(--color-white) 55%);
}

.hld-case-tag {
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #0A2540;
	background: rgba(10, 37, 64, 0.07);
	padding: 6px 14px;
	border-radius: 999px;
	margin-bottom: 20px;
}

.hld-case-slide--orange .hld-case-tag {
	color: #C2410C;
	background: rgba(255, 107, 53, 0.14);
}

.hld-case-slide h3 { margin-bottom: 16px; }

.hld-case-slide .hld-body-md {
	margin-bottom: 28px;
	line-height: 1.75;
	min-height: 4.5em;
}

.hld-case-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 700;
	font-size: 15px;
	color: var(--color-primary);
	transition: gap var(--transition), color var(--transition);
}

.hld-case-link:hover {
	color: #FF6B35;
	gap: 12px;
}

.hld-case-dots {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 28px;
}

.hld-case-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	border: none;
	padding: 0;
	background: rgba(12, 26, 48, 0.15);
	cursor: pointer;
	transition: transform var(--transition), background var(--transition);
}

.hld-case-dot.is-active {
	background: #FF6B35;
	transform: scale(1.35);
}

/* News & FAQ side by side */
.hld-news-faq-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
	align-items: stretch;
}

@media (min-width: 992px) {
	.hld-news-faq-grid {
		grid-template-columns: 1fr 1fr;
		gap: 56px;
	}
}

.hld-news-col,
.hld-faq-col {
	display: flex;
	flex-direction: column;
}

.hld-module-head { margin-bottom: 32px; flex-shrink: 0; }
.hld-module-head .hld-label { display: block; margin-bottom: 12px; }
.hld-module-head .hld-headline-md {
	margin: 0;
	text-align: left;
	font-weight: 600;
	font-size: 26px;
}
@media (min-width: 768px) {
	.hld-module-head .hld-headline-md { font-size: 32px; }
}

.hld-news-list {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin-bottom: 28px;
	flex: 1;
}

.hld-news-item {
	padding: 0;
	border-bottom: none;
}

.hld-news-card {
	display: flex;
	gap: 18px;
	align-items: stretch;
	padding: 16px;
	background: var(--color-white);
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition), transform var(--transition);
	text-decoration: none;
	color: inherit;
	height: 100%;
}

.hld-news-card:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-3px);
}

.hld-news-thumb {
	flex-shrink: 0;
	width: 120px;
	border-radius: var(--radius-md);
	overflow: hidden;
	background: var(--color-surface-container);
}

.hld-news-thumb img {
	width: 120px;
	height: 90px;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}

.hld-news-card:hover .hld-news-thumb img { transform: scale(1.06); }

.hld-news-content {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.hld-news-date {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: #FF6B35;
	margin-bottom: 6px;
	letter-spacing: 0.02em;
}

.hld-news-title {
	font-size: 16px;
	font-weight: 700;
	color: var(--color-on-surface);
	line-height: 1.45;
	margin-bottom: 6px;
	transition: color var(--transition);
}

.hld-news-card:hover .hld-news-title { color: #FF6B35; }

.hld-news-desc {
	font-size: 13px;
	color: var(--color-on-surface-variant);
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-top: auto;
}

.hld-module-more {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 700;
	font-size: 15px;
	color: var(--color-primary);
	transition: gap var(--transition), color var(--transition);
	margin-top: auto;
	flex-shrink: 0;
}

.hld-module-more:hover {
	color: #FF6B35;
	gap: 12px;
}

.hld-faq-col .hld-faq {
	max-width: none;
	margin: 0;
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.hld-faq-col .hld-faq-item { margin-bottom: 0; }

.hld-faq-num {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: linear-gradient(135deg, rgba(255, 107, 53, 0.15), rgba(10, 37, 64, 0.08));
	color: #0A2540;
	font-weight: 600;
	font-size: 16px;
	font-family: var(--font-sans);
	display: flex;
	align-items: center;
	justify-content: center;
	letter-spacing: 0;
}

.hld-faq-q-text {
	flex: 1;
	text-align: left;
	min-width: 0;
}

/* Legacy case card (unused) */
.hld-case-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
}

@media (min-width: 768px) {
	.hld-case-grid { grid-template-columns: repeat(2, 1fr); gap: 28px; }
}

.hld-case-card {
	background: var(--color-white);
	border-radius: var(--radius-xl);
	padding: 40px 36px;
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition), transform var(--transition);
}

.hld-case-card:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-4px);
}

.hld-case-card--orange {
	background: linear-gradient(135deg, rgba(255, 107, 53, 0.04) 0%, var(--color-white) 60%);
}

.hld-case-tag {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #0A2540;
	background: rgba(10, 37, 64, 0.06);
	padding: 6px 12px;
	border-radius: 999px;
	margin-bottom: 20px;
}

.hld-case-card--orange .hld-case-tag {
	color: #C2410C;
	background: rgba(255, 107, 53, 0.12);
}

.hld-case-card h3 { margin-bottom: 16px; }

.hld-case-card .hld-body-md {
	margin-bottom: 28px;
	line-height: 1.7;
}

.hld-case-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	list-style: none;
	padding-top: 24px;
	border-top: 1px solid rgba(12, 26, 48, 0.06);
}

.hld-case-stats li {
	font-size: 14px;
	color: var(--color-on-surface-variant);
	line-height: 1.4;
}

.hld-case-stats strong {
	display: block;
	font-size: 22px;
	font-weight: 700;
	color: var(--color-primary);
	letter-spacing: -0.02em;
	margin-bottom: 4px;
}

/* Factory section */
.hld-factory {
	background: var(--color-primary);
	color: var(--color-white);
	padding: 96px 0;
}

@media (min-width: 768px) { .hld-factory { padding: 128px 0; } }

.hld-factory-header {
	display: flex;
	flex-direction: column;
	gap: 24px;
	margin-bottom: 48px;
}

@media (min-width: 768px) {
	.hld-factory-header {
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-end;
	}
}

.hld-factory-header h2.hld-headline-md {
	color: var(--color-white);
	font-weight: 600;
	font-size: 28px;
}
@media (min-width: 768px) {
	.hld-factory-header h2.hld-headline-md { font-size: 32px; }
}

.hld-factory-header p { color: var(--color-on-primary-container); max-width: 560px; margin-top: 16px; }

.hld-factory-nav { display: flex; gap: 16px; }
.hld-factory-nav button {
	width: 48px;
	height: 48px;
	border: none;
	border-radius: var(--radius-md);
	background: rgba(255, 255, 255, 0.08);
	color: var(--color-white);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background var(--transition), transform var(--transition);
}

.hld-factory-nav button:hover { background: rgba(255,255,255,0.16); transform: translateY(-2px); }

.hld-factory-track-wrap {
	overflow: hidden;
}

.hld-factory-grid {
	display: flex;
	flex-wrap: nowrap;
	gap: 28px;
	overflow-x: auto;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.hld-factory-grid::-webkit-scrollbar { display: none; }

.hld-factory-item {
	flex: 0 0 calc(50% - 14px);
	min-width: 0;
	overflow: visible;
}

@media (min-width: 768px) {
	.hld-factory-item { flex: 0 0 calc(25% - 21px); }
}

.hld-factory-img {
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.06);
	border-radius: var(--radius-lg);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
}

.hld-factory-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.7s ease;
}

.hld-factory-item:hover .hld-factory-img img { transform: scale(1.1); }

.hld-factory-item figcaption p,
.hld-factory-item p {
	font-family: var(--font-sans);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--color-white);
	margin-top: 16px;
	text-transform: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.hld-factory-item figcaption a {
	display: block;
	color: inherit;
	text-decoration: none;
	transition: opacity var(--transition);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.hld-factory-item figcaption a:hover { opacity: 0.85; }

/* Products */
.hld-products-layout {
	display: flex;
	flex-direction: column;
	gap: var(--gutter);
}

@media (min-width: 992px) {
	.hld-products-layout { flex-direction: row; }
}

.hld-products-sidebar {
	width: 100%;
	flex-shrink: 0;
}

@media (min-width: 992px) { .hld-products-sidebar { width: 256px; } }

.hld-cat-list li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 14px 12px;
	margin-bottom: 4px;
	color: var(--color-on-surface-variant);
	cursor: pointer;
	transition: color var(--transition), background var(--transition);
	border-bottom: none;
	border-radius: var(--radius-md);
}

.hld-cat-list li:hover { background: var(--color-surface-alt); color: var(--color-primary); }
.hld-cat-list li.is-active {
	color: var(--color-primary);
	font-weight: 600;
	background: var(--color-surface-alt);
}

.hld-deal-box {
	margin-top: 32px;
	padding: 28px;
	background: var(--color-white);
	border: none;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-ambient);
}

.hld-deal-box .hld-label { color: var(--color-secondary-container); margin-bottom: 10px; display: block; }
.hld-deal-box p { font-weight: 600; margin-bottom: 16px; line-height: 1.5; }
.hld-deal-box a { color: var(--color-primary); text-decoration: none; font-weight: 600; font-size: 14px; }
.hld-deal-box a:hover { color: var(--color-secondary-container); }

.hld-products-main { flex: 1; min-width: 0; }

.hld-products-toolbar {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	margin-bottom: 32px;
	color: var(--color-on-surface-variant);
	font-size: 14px;
}

.hld-products-toolbar select {
	border: none;
	background: var(--color-surface-alt);
	padding: 10px 16px;
	border-radius: var(--radius-md);
	font-size: 14px;
	box-shadow: var(--shadow-ambient);
	color: var(--color-on-surface);
	cursor: pointer;
}

.hld-product-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
}

@media (min-width: 576px) { .hld-product-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 992px) { .hld-product-grid { grid-template-columns: repeat(3, 1fr); } }

.hld-product-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: transparent;
	border: none;
	padding: 0;
	transition: transform var(--transition);
}

.hld-product-card:hover { transform: translateY(-4px); }

.hld-product-img {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	background: var(--color-surface-container);
	margin-bottom: 20px;
	overflow: hidden;
	position: relative;
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition);
	flex-shrink: 0;
}

.hld-product-card:hover .hld-product-img {
	box-shadow: var(--shadow-hover);
}

.hld-product-img img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 20px;
	box-sizing: border-box;
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.hld-product-card:hover .hld-product-img img { transform: scale(1.04); }

.hld-product-overlay {
	position: absolute;
	inset: 0;
	background: rgba(12, 26, 48, 0.35);
	backdrop-filter: blur(2px);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: opacity var(--transition);
	border-radius: var(--radius-md);
}

.hld-product-card:hover .hld-product-overlay { opacity: 1; }

.hld-product-card h6 {
	font-weight: 600;
	font-size: 16px;
	margin-bottom: 6px;
	letter-spacing: 0;
	transition: color var(--transition);
}
.hld-product-card:hover h6 { color: var(--color-primary); }
.hld-product-card .hld-product-source {
	color: var(--color-on-surface-variant);
	font-size: 13px;
	margin-bottom: 10px;
	opacity: 0.85;
}

.hld-product-meta {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
}

.hld-product-price { color: var(--color-primary); font-weight: 600; font-size: 15px; }
.hld-product-moq { font-size: 12px; color: var(--color-on-surface-variant); opacity: 0.75; }

.hld-cat-list li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	color: inherit;
	text-decoration: none;
}

.hld-product-meta--inquiry {
	margin-top: auto;
	padding-top: 4px;
	align-items: center;
}

.hld-product-link {
	color: var(--color-primary);
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	transition: color var(--transition);
}

.hld-product-link:hover { color: var(--color-secondary-container); }

.hld-btn-sm {
	font-size: 13px;
	padding: 8px 14px;
	line-height: 1.2;
}

.hld-btn-lg {
	padding: 14px 28px;
	font-size: 16px;
}

.hld-page-hero--products .hld-hero-bg {
	background-position: center 40%;
}

.hld-detail-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 32px;
	font-size: 14px;
	color: var(--color-on-surface-variant);
}

.hld-detail-breadcrumb a {
	color: var(--color-on-surface-variant);
	text-decoration: none;
	transition: color var(--transition);
}

.hld-detail-breadcrumb a:hover { color: var(--color-primary); }

.hld-product-detail-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 40px;
	margin-bottom: 48px;
}

@media (min-width: 992px) {
	.hld-product-detail-grid { grid-template-columns: 1fr 1fr; gap: 56px; }
}

.hld-product-gallery-main {
	aspect-ratio: 1;
	background: var(--color-surface-container);
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-ambient);
	margin-bottom: 16px;
}

.hld-product-gallery-main img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 24px;
}

.hld-product-gallery-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.hld-product-thumb {
	width: 72px;
	height: 72px;
	padding: 0;
	border: 2px solid transparent;
	border-radius: var(--radius-md);
	background: var(--color-surface-alt);
	cursor: pointer;
	overflow: hidden;
	transition: border-color var(--transition), box-shadow var(--transition);
}

.hld-product-thumb.is-active {
	border-color: var(--color-primary);
	box-shadow: 0 0 0 1px var(--color-primary);
}

.hld-product-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hld-product-detail-desc {
	color: var(--color-on-surface-variant);
	line-height: 1.7;
	margin: 16px 0 20px;
}

.hld-product-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	padding: 0;
	margin: 0 0 24px;
}

.hld-product-tags li {
	font-size: 12px;
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--color-surface-alt);
	color: var(--color-on-surface-variant);
}

.hld-product-inquiry-box {
	padding: 28px;
	background: var(--color-surface-alt);
	border-radius: var(--radius-lg);
	margin-top: 8px;
}

.hld-product-inquiry-box .hld-headline-sm { margin-bottom: 12px; }
.hld-product-inquiry-box .hld-body-md { margin-bottom: 20px; color: var(--color-on-surface-variant); }

.hld-product-content {
	margin-bottom: 56px;
	padding-top: 8px;
	border-top: 1px solid var(--color-outline-variant);
}

.hld-product-grid--related {
	grid-template-columns: repeat(2, 1fr);
}

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

.hld-products-toolbar .hld-product-link {
	white-space: nowrap;
}

/* Blog */
.hld-blog-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
}

@media (min-width: 768px) { .hld-blog-grid { grid-template-columns: repeat(3, 1fr); } }

.hld-blog-card {
	background: var(--color-white);
	border: none;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition), transform var(--transition);
	overflow: hidden;
}

.hld-blog-card:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-4px);
}

.hld-blog-img { height: 200px; overflow: hidden; }
.hld-blog-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.hld-blog-card:hover .hld-blog-img img { transform: scale(1.04); }

.hld-blog-body { padding: 32px 28px 36px; }
.hld-blog-body .hld-label { color: var(--color-primary); margin-bottom: 14px; display: block; opacity: 0.8; }
.hld-blog-body h4 { margin-bottom: 14px; letter-spacing: 0; line-height: 1.4; font-weight: 600; }
.hld-blog-body p { color: var(--color-on-surface-variant); font-size: 14px; line-height: 1.65; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.hld-read-more {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 24px;
	color: var(--color-primary);
	font-weight: 700;
	transition: gap var(--transition);
}

.hld-read-more:hover { gap: 12px; }

/* FAQ */
.hld-faq { max-width: 768px; margin: 0 auto; }

.hld-faq-item {
	border: none;
	background: var(--color-white);
	margin-bottom: 12px;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-ambient);
	overflow: hidden;
	transition: box-shadow var(--transition);
}

.hld-faq-item.is-open { box-shadow: var(--shadow-card); }

.hld-faq-q {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 20px;
	text-align: left;
	background: none;
	border: none;
	cursor: pointer;
	font-size: 16px;
	font-weight: 600;
	color: var(--color-on-surface);
	transition: background var(--transition);
	letter-spacing: 0;
}

.hld-faq-q:hover { background: var(--color-surface-low); }

.hld-faq-q .chevron { flex-shrink: 0; transition: transform var(--transition); color: var(--color-on-surface-variant); }
.hld-faq-item.is-open .hld-faq-q .chevron { transform: rotate(180deg); }

.hld-faq-a {
	display: none;
	padding: 0 20px 22px 80px;
	color: var(--color-on-surface-variant);
	border-top: none;
	background: transparent;
	line-height: 1.7;
	font-size: 15px;
}

.hld-faq-item.is-open .hld-faq-a { display: block; }

/* Lead capture */
.hld-lead {
	background: linear-gradient(160deg, var(--color-primary) 0%, var(--color-primary-container) 100%);
	color: var(--color-white);
	padding: 96px 0;
}

@media (min-width: 768px) { .hld-lead { padding: 128px 0; } }

.hld-lead-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 64px;
	align-items: center;
}

@media (min-width: 768px) { .hld-lead-grid { grid-template-columns: 1fr 1fr; } }

.hld-lead-info p { color: var(--color-on-primary-container); margin-bottom: 32px; }

.hld-lead-feature {
	display: flex;
	align-items: center;
	gap: 24px;
	padding: 28px;
	background: rgba(255,255,255,0.06);
	border: none;
	border-radius: var(--radius-lg);
	backdrop-filter: blur(8px);
}

.hld-lead-feature-icon {
	width: 52px;
	height: 52px;
	background: var(--color-secondary-container);
	color: var(--color-on-secondary);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	box-shadow: 0 4px 20px rgba(255, 107, 53, 0.3);
}

.hld-lead-feature p:last-child { color: var(--color-on-primary-container); font-size: 16px; line-height: 1.6; margin-top: 4px; }

.hld-lead-form {
	background: var(--color-white);
	padding: 44px;
	border: none;
	border-radius: var(--radius-xl);
	box-shadow: var(--shadow-lg);
	font-size: 16px;
}

.hld-form-row {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	margin-bottom: 0;
}

@media (min-width: 576px) { .hld-form-row { grid-template-columns: 1fr 1fr; } }

.hld-form-group { margin-bottom: 24px; }
.hld-form-group label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--color-primary);
	margin-bottom: 10px;
}

.hld-form-group input,
.hld-form-group select,
.hld-form-group textarea {
	width: 100%;
	padding: 14px 16px;
	background: var(--color-surface-alt);
	border: 1px solid var(--color-outline-variant);
	color: var(--color-on-surface);
	font-size: 16px;
	line-height: 1.5;
	border-radius: var(--radius-md);
	transition: box-shadow var(--transition), border-color var(--transition), background var(--transition);
}

.hld-form-group input::placeholder,
.hld-form-group textarea::placeholder {
	color: var(--color-on-surface-variant);
	font-size: 16px;
	opacity: 1;
}

.hld-form-group input:focus,
.hld-form-group select:focus,
.hld-form-group textarea:focus {
	outline: none;
	background: var(--color-white);
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(12, 26, 48, 0.08);
}

.hld-lead-form .hld-btn { width: 100%; padding: 16px; font-size: 18px; }

/* Footer */
.hld-footer {
	background: var(--color-primary);
	color: var(--color-white);
	padding-top: 96px;
	border-top: none;
	font-size: 16px;
}

.hld-footer-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 40px;
	margin-bottom: 64px;
}

@media (min-width: 768px) { .hld-footer-grid { grid-template-columns: repeat(4, 1fr); } }

.hld-footer-logo {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 20px;
}
.hld-footer-logo-img { height: 70px; width: auto; }
.hld-footer-logo-text { display: none; }
.hld-footer-logo-img[style*="display: none"] + .hld-footer-logo-text,
.hld-footer-logo:not(:has(.hld-footer-logo-img)) .hld-footer-logo-text { display: block; }
.hld-footer-desc {
	color: var(--color-on-primary-container);
	font-size: 16px;
	max-width: 320px;
	line-height: 1.7;
	opacity: 0.92;
}

.hld-footer-social {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.hld-footer-social-block {
	margin-top: 28px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.hld-footer-social-label {
	font-size: 17px;
	font-weight: 600;
	margin-bottom: 16px;
}
.hld-footer-social a {
	width: 40px;
	height: 40px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: var(--radius-md);
	background: rgba(255, 255, 255, 0.08);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background var(--transition), transform var(--transition);
}
.hld-footer-social a:hover { background: rgba(255,255,255,0.16); transform: translateY(-2px); }

.hld-footer-col h5 { font-size: 17px; font-weight: 600; margin-bottom: 20px; }
.hld-footer-col ul li { margin-bottom: 14px; }
.hld-footer-col a,
.hld-footer-col p {
	color: var(--color-on-primary-container);
	font-size: 16px;
	line-height: 1.7;
	opacity: 0.92;
}
.hld-footer-col a:hover { color: var(--color-white); opacity: 1; text-decoration: underline; }

.hld-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	padding: 32px 0;
	display: flex;
	justify-content: center;
	text-align: center;
	background: rgba(0, 0, 0, 0.12);
	margin-top: 16px;
}

.hld-footer-bottom p {
	color: var(--color-on-primary-container);
	font-size: 15px;
	line-height: 1.6;
	opacity: 0.75;
}

@media (max-width: 767px) {
	.hld-header .container {
		padding-left: 20px;
		padding-right: 20px;
	}

	.hld-nav {
		padding-top: 10px;
		padding-bottom: 10px;
		min-height: 64px;
	}

	.hld-footer {
		padding-top: 40px;
	}

	.hld-footer-grid {
		margin-bottom: 0;
		gap: 0;
	}

	.hld-footer-col {
		display: none;
	}

	.hld-footer-col--contact {
		display: block;
		text-align: center;
		margin-top: 24px;
	}

	.hld-footer-contact-info {
		display: none;
	}

	.hld-footer-social-block {
		margin-top: 0;
		padding-top: 0;
		border-top: none;
	}

	.hld-footer-social {
		justify-content: center;
	}

	.hld-footer-brand {
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.hld-footer-desc {
		display: none;
	}

	.hld-footer-logo {
		margin-bottom: 16px;
	}

	.hld-footer-logo-img {
		height: 40px;
		width: auto;
	}

	.hld-footer-bottom {
		margin-top: 24px;
		padding: 24px 20px;
	}
}

body.hld-modal-open {
	overflow: hidden;
}

/* Privacy consent bar */
.hld-consent {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1200;
	background: rgba(12, 26, 48, 0.96);
	backdrop-filter: blur(10px);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.18);
	transform: translateY(110%);
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.hld-consent.is-visible {
	transform: translateY(0);
}

.hld-consent__inner {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 18px 0 20px;
}

@media (min-width: 768px) {
	.hld-consent__inner {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 24px;
		padding: 16px 0 18px;
	}
}

.hld-consent__text {
	color: rgba(255, 255, 255, 0.88);
	font-size: 14px;
	line-height: 1.65;
	margin: 0;
}

.hld-consent__link {
	background: none;
	border: none;
	padding: 0;
	color: var(--color-secondary-container);
	font: inherit;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
}

.hld-consent__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	flex-shrink: 0;
}

.hld-consent__actions .hld-btn-ghost {
	color: var(--color-white);
	border: 1px solid rgba(255, 255, 255, 0.22);
}

body.hld-consent-open {
	padding-bottom: 96px;
}

@media (min-width: 768px) {
	body.hld-consent-open { padding-bottom: 76px; }
}

/* Privacy policy modal */
.hld-privacy-modal {
	position: fixed;
	inset: 0;
	z-index: 1300;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.hld-privacy-modal[hidden] {
	display: none;
}

.hld-privacy-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(12, 26, 48, 0.55);
}

.hld-privacy-modal__panel {
	position: relative;
	width: 100%;
	max-width: 720px;
	max-height: min(82vh, 760px);
	background: var(--color-white);
	border-radius: var(--radius-xl);
	box-shadow: var(--shadow-lg);
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.hld-privacy-modal__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 22px 28px;
	border-bottom: 1px solid var(--color-outline-variant);
}

.hld-privacy-modal__head h2 {
	font-size: 22px;
	font-weight: 600;
	margin: 0;
	color: var(--color-primary);
}

.hld-privacy-modal__close {
	width: 36px;
	height: 36px;
	border: none;
	background: var(--color-surface-container);
	border-radius: 50%;
	font-size: 24px;
	line-height: 1;
	color: var(--color-on-surface-variant);
	cursor: pointer;
}

.hld-privacy-modal__body {
	padding: 24px 28px 32px;
	overflow-y: auto;
	font-size: 15px;
	line-height: 1.75;
	color: var(--color-on-surface-variant);
}

.hld-privacy-modal__body h3 {
	font-size: 16px;
	font-weight: 600;
	color: var(--color-primary);
	margin: 1.4em 0 0.6em;
}

.hld-privacy-modal__body h3:first-child { margin-top: 0; }

/* Floating WhatsApp */
.hld-float-wa {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 1100;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	padding: 0;
	background: #25D366;
	color: #fff;
	border-radius: 50%;
	box-shadow: 0 8px 28px rgba(37, 211, 102, 0.35);
	text-decoration: none;
	transition: transform var(--transition), box-shadow var(--transition);
}

.hld-float-wa:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 32px rgba(37, 211, 102, 0.42);
	color: #fff;
}

.hld-float-wa .hld-icon {
	width: 26px;
	height: 26px;
}

body.hld-consent-open .hld-float-wa {
	bottom: 96px;
}

@media (max-width: 767px) {
	.hld-float-wa {
		right: 16px;
		bottom: 16px;
	}

	body.hld-consent-open .hld-float-wa {
		bottom: 108px;
	}
}

/* WOW animation overrides */
.wow { visibility: hidden; }

/* Utility */
.text-center { text-align: center; }
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

/* Article / detail pages */
.hld-article { max-width: 800px; margin: 0 auto; }

.hld-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 32px;
	font-size: 14px;
}

.hld-breadcrumb a {
	color: var(--color-on-surface-variant);
	transition: color var(--transition);
}

.hld-breadcrumb a:hover { color: #FF6B35; }

.hld-breadcrumb-sep { color: rgba(12, 26, 48, 0.25); }

.hld-article-head { margin-bottom: 36px; }
.hld-article-head .hld-label { display: block; margin-bottom: 14px; }
.hld-article-head h1 { margin-bottom: 16px; }

.hld-article-meta {
	color: var(--color-on-surface-variant);
	font-size: 15px;
}

.hld-article-body {
	font-size: 17px;
	line-height: 1.8;
	color: var(--color-on-surface-variant);
	margin-bottom: 40px;
}

.hld-article-body p { margin-bottom: 1.2em; }

.hld-article-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	padding-top: 32px;
	border-top: 1px solid rgba(12, 26, 48, 0.08);
}

.hld-news-list--page { max-width: 800px; margin: 0 auto; }

/* Inner pages — Supply & Growth */
.hld-page-hero {
	min-height: 520px;
}
@media (min-width: 768px) {
	.hld-page-hero { min-height: 620px; }
}
.hld-page-hero .hld-hero-inner { max-width: 680px; }
.hld-page-hero-content {
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end;
	grid-template-columns: unset !important;
	min-height: 520px;
	padding-top: 32px;
	padding-bottom: 0;
}
@media (min-width: 768px) {
	.hld-page-hero-content {
		display: flex !important;
		grid-template-columns: unset !important;
		min-height: 580px;
		padding-top: 32px;
		padding-bottom: 0;
	}
}
.hld-page-hero-body {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
	max-width: 760px;
	padding-bottom: 28px;
}
.hld-page-hero .hld-hero-bg {
	background-position: center right;
}
.hld-hero-overlay--page {
	background: linear-gradient(90deg, rgba(8, 18, 36, 0.94) 0%, rgba(8, 18, 36, 0.72) 42%, rgba(8, 18, 36, 0.2) 100%);
}
.hld-hero-overlay--warm {
	background: linear-gradient(105deg, rgba(8, 18, 36, 0.88) 0%, rgba(40, 20, 12, 0.55) 45%, rgba(8, 18, 36, 0.28) 100%);
}
.hld-page-hero-mesh {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 15% 20%, rgba(255, 107, 53, 0.18) 0%, transparent 42%),
		radial-gradient(circle at 85% 80%, rgba(10, 37, 64, 0.35) 0%, transparent 40%);
	pointer-events: none;
}
.hld-page-hero-mesh--warm {
	background:
		radial-gradient(circle at 20% 30%, rgba(255, 107, 53, 0.28) 0%, transparent 45%),
		radial-gradient(circle at 80% 70%, rgba(255, 180, 120, 0.12) 0%, transparent 38%);
}
.hld-page-breadcrumb {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	margin: 0;
	padding: 14px 0 18px;
	font-size: 13px;
	color: rgba(255,255,255,0.55);
	border-top: 1px solid rgba(255,255,255,0.12);
}
.hld-page-breadcrumb a {
	color: rgba(255,255,255,0.85);
	transition: color var(--transition);
}
.hld-page-breadcrumb a:hover { color: var(--color-secondary-container); }
.hld-page-breadcrumb .hld-icon {
	width: 14px;
	height: 14px;
	opacity: 0.6;
}
.hld-page-hero-badge {
	display: inline-flex;
	align-items: center;
	padding: 8px 16px;
	margin-bottom: 20px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #fff;
	background: rgba(255,255,255,0.1);
	border: 1px solid rgba(255,255,255,0.18);
	backdrop-filter: blur(8px);
}
.hld-page-hero-badge--warm {
	background: rgba(255, 107, 53, 0.22);
	border-color: rgba(255, 107, 53, 0.35);
}
.hld-page-stats {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	margin-top: 32px;
	width: 100%;
	max-width: 680px;
	padding: 18px 20px;
	border-radius: var(--radius-lg);
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(255,255,255,0.12);
	backdrop-filter: blur(12px);
}
@media (min-width: 768px) {
	.hld-page-stats {
		grid-template-columns: repeat(4, 1fr);
		gap: 16px;
		padding: 24px 28px;
	}
}
.hld-page-stat {
	text-align: center;
	padding: 12px 8px;
	border-right: 1px solid rgba(255,255,255,0.08);
}
.hld-page-stat:last-child { border-right: none; }
@media (max-width: 767px) {
	.hld-page-stat:nth-child(2) { border-right: none; }
	.hld-page-stat:nth-child(1),
	.hld-page-stat:nth-child(2) {
		border-bottom: 1px solid rgba(255,255,255,0.08);
	}
}
.hld-page-stat strong {
	display: block;
	font-size: 22px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 4px;
}
.hld-page-stat span {
	font-size: 13px;
	color: rgba(255,255,255,0.72);
	line-height: 1.4;
}
.hld-page-stats--warm {
	background: rgba(255, 107, 53, 0.12);
	border-color: rgba(255, 107, 53, 0.22);
}

.hld-section-dark {
	background: linear-gradient(160deg, #081224 0%, var(--color-primary-container) 100%);
	color: var(--color-white);
}
.hld-section-dark .hld-headline-md,
.hld-section-dark .hld-headline-sm { color: #fff; }
.hld-section-header--light .hld-section-intro { color: rgba(255,255,255,0.72); }
.hld-label--light { color: rgba(255, 107, 53, 0.95); }

.hld-section-accent {
	position: relative;
	overflow: hidden;
	background: linear-gradient(180deg, #fff 0%, #f4f7fb 100%);
}
.hld-section-accent--warm {
	background: linear-gradient(180deg, #fff8f4 0%, #fff 100%);
}
.hld-section-accent-bg {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 10% 20%, rgba(10, 37, 64, 0.06) 0%, transparent 35%),
		radial-gradient(circle at 90% 80%, rgba(255, 107, 53, 0.08) 0%, transparent 38%);
	pointer-events: none;
}
.hld-section-accent > .container { position: relative; z-index: 1; }

.hld-section-split { padding-top: 80px; padding-bottom: 80px; }
@media (min-width: 768px) {
	.hld-section-split { padding-top: 112px; padding-bottom: 112px; }
}
.hld-split-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
	align-items: center;
}
@media (min-width: 992px) {
	.hld-split-grid { grid-template-columns: 1fr 1fr; gap: 64px; }
	.hld-split-grid--reverse .hld-split-media { order: 2; }
	.hld-split-grid--reverse .hld-split-content { order: 1; }
}
.hld-split-media {
	position: relative;
	border-radius: var(--radius-xl);
	overflow: hidden;
	box-shadow: var(--shadow-lg);
}
.hld-split-media img {
	width: 100%;
	height: 100%;
	min-height: 320px;
	object-fit: cover;
}
.hld-split-media-badge {
	position: absolute;
	left: 24px;
	bottom: 24px;
	padding: 16px 20px;
	border-radius: var(--radius-lg);
	background: rgba(12, 26, 48, 0.88);
	color: #fff;
	backdrop-filter: blur(8px);
	border: 1px solid rgba(255,255,255,0.1);
}
.hld-split-media-badge strong {
	display: block;
	font-size: 18px;
	margin-bottom: 4px;
}
.hld-split-media-badge span {
	font-size: 13px;
	color: rgba(255,255,255,0.72);
}
.hld-split-media-badge--warm {
	background: rgba(255, 107, 53, 0.9);
}
.hld-split-content .hld-label { margin-bottom: 12px; display: block; }
.hld-split-content .hld-headline-md { margin-bottom: 20px; }

.hld-page-prose {
	color: var(--color-on-surface-variant);
	font-size: 18px;
	line-height: 1.75;
}
.hld-page-prose--left { text-align: left; }
.hld-page-prose p + p { margin-top: 1em; }

.hld-growth-summary {
	margin-top: 28px;
	padding: 24px 28px;
	background: linear-gradient(135deg, rgba(255, 107, 53, 0.08) 0%, rgba(12, 26, 48, 0.04) 100%);
	border-radius: var(--radius-lg);
	border-left: 4px solid var(--color-secondary-container);
}
.hld-growth-summary--inline { text-align: left; }
.hld-growth-summary p { color: var(--color-on-surface); margin: 0; }

.hld-compare-table { display: flex; flex-direction: column; gap: 20px; }
.hld-compare-head { display: none; }
@media (min-width: 768px) {
	.hld-compare-head {
		display: grid;
		grid-template-columns: 72px 1fr 1fr;
		gap: 24px;
		padding: 0 28px 8px 28px;
		font-size: 13px;
		font-weight: 600;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: rgba(255,255,255,0.55);
	}
	.hld-compare-head span:first-of-type { grid-column: 2; }
}
.hld-compare-row--premium {
	position: relative;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.1);
	border-radius: var(--radius-xl);
	overflow: hidden;
	backdrop-filter: blur(8px);
	transition: transform var(--transition), border-color var(--transition);
}
.hld-compare-row--premium:hover {
	transform: translateY(-2px);
	border-color: rgba(255, 107, 53, 0.35);
}
.hld-compare-index {
	position: absolute;
	top: 24px;
	left: 24px;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	background: linear-gradient(135deg, var(--color-secondary-container), #c94a1f);
	box-shadow: 0 4px 16px rgba(255, 107, 53, 0.35);
}
.hld-compare-row--premium .hld-compare-title {
	padding: 24px 28px 0 84px;
	color: #fff;
}
.hld-compare-row--premium .hld-compare-col--problem {
	background: rgba(0,0,0,0.15);
	border-color: rgba(255,255,255,0.08);
}
.hld-compare-row--premium .hld-compare-col--solution {
	background: rgba(255,255,255,0.04);
}
.hld-compare-row--premium .hld-compare-text { color: rgba(255,255,255,0.88); }
.hld-compare-row--premium .hld-compare-col--problem .hld-compare-label { color: rgba(255,255,255,0.5); }

.hld-compare-cols {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
}
@media (min-width: 768px) {
	.hld-compare-cols { grid-template-columns: 1fr 1fr; }
}
.hld-compare-col { padding: 24px 28px 28px; }
.hld-compare-col--problem {
	border-bottom: 1px solid rgba(255,255,255,0.08);
}
@media (min-width: 768px) {
	.hld-compare-col--problem {
		border-bottom: none;
		border-right: 1px solid rgba(255,255,255,0.08);
	}
}
.hld-compare-label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-secondary-container);
	margin-bottom: 12px;
}
.hld-compare-text { line-height: 1.7; font-size: 16px; }
.hld-compare-text p { margin: 0; }

.hld-vertical-grid--premium {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}
@media (min-width: 640px) { .hld-vertical-grid--premium { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .hld-vertical-grid--premium { grid-template-columns: repeat(4, 1fr); } }
.hld-vertical-card--premium {
	position: relative;
	padding: 32px 24px 28px;
	background: var(--color-white);
	border-radius: var(--radius-xl);
	box-shadow: var(--shadow-card);
	border: 1px solid rgba(12, 26, 48, 0.06);
	overflow: hidden;
	transition: transform var(--transition), box-shadow var(--transition);
}
.hld-vertical-card--premium::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--color-primary), var(--color-secondary-container));
}
.hld-vertical-card--premium:hover {
	transform: translateY(-4px);
	box-shadow: var(--shadow-hover);
}
.hld-vertical-card--premium:nth-child(2)::before {
	background: linear-gradient(90deg, #1a4a7a, #2d7dd2);
}
.hld-vertical-card--premium:nth-child(3)::before {
	background: linear-gradient(90deg, #c94a1f, #ff8c42);
}
.hld-vertical-card--premium:nth-child(4)::before {
	background: linear-gradient(90deg, #2d6a4f, #52b788);
}
.hld-vertical-num {
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-primary);
	color: #fff;
	border-radius: var(--radius-md);
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 18px;
}

.hld-pillar-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}
@media (min-width: 768px) { .hld-pillar-grid { grid-template-columns: repeat(3, 1fr); } }
.hld-pillar-card {
	padding: 36px 28px;
	border-radius: var(--radius-xl);
	background: linear-gradient(160deg, #fff 0%, var(--color-surface-low) 100%);
	border: 1px solid rgba(12, 26, 48, 0.06);
	box-shadow: var(--shadow-ambient);
	transition: transform var(--transition), box-shadow var(--transition);
}
.hld-pillar-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-card);
}
.hld-pillar-icon {
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	border-radius: 14px;
	font-size: 15px;
	font-weight: 700;
	color: #fff;
	background: linear-gradient(135deg, var(--color-primary), var(--color-primary-container));
}
.hld-pillar-card:nth-child(2) .hld-pillar-icon {
	background: linear-gradient(135deg, #1a5276, #2e86c1);
}
.hld-pillar-card:nth-child(3) .hld-pillar-icon {
	background: linear-gradient(135deg, var(--color-secondary-container), #c94a1f);
}
.hld-pillar-card .hld-headline-sm { margin-bottom: 12px; }
.hld-pillar-card p { color: var(--color-on-surface-variant); line-height: 1.65; }

.hld-page-cta { padding-top: 64px; padding-bottom: 96px; }
.hld-page-cta-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 32px;
	padding: 56px;
	background:
		linear-gradient(135deg, rgba(255, 107, 53, 0.15) 0%, transparent 50%),
		linear-gradient(160deg, var(--color-primary) 0%, #0a1e38 100%);
	border-radius: var(--radius-xl);
	color: #fff;
	box-shadow: var(--shadow-lg);
	position: relative;
	overflow: hidden;
}
.hld-page-cta-inner::after {
	content: '';
	position: absolute;
	right: -60px;
	top: -60px;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: rgba(255, 107, 53, 0.12);
	pointer-events: none;
}
@media (min-width: 768px) {
	.hld-page-cta-inner {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
}
.hld-page-cta-copy { position: relative; z-index: 1; max-width: 560px; }
.hld-page-cta-copy p { color: rgba(255,255,255,0.78); margin: 12px 0 0; }
.hld-page-cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	position: relative;
	z-index: 1;
}
.hld-page-cta .hld-btn-ghost {
	border-color: rgba(255,255,255,0.35);
	color: #fff;
}
.hld-page-cta .hld-btn-ghost:hover {
	background: rgba(255,255,255,0.1);
	border-color: rgba(255,255,255,0.5);
}

.hld-model-cards {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}
@media (min-width: 768px) { .hld-model-cards { grid-template-columns: 1fr 1fr; } }
.hld-model-card {
	border-radius: var(--radius-xl);
	overflow: hidden;
	border: 1px solid rgba(255,255,255,0.1);
	background: rgba(255,255,255,0.05);
	backdrop-filter: blur(8px);
}
.hld-model-card-head {
	padding: 28px 28px 20px;
	border-bottom: 1px solid rgba(255,255,255,0.08);
}
.hld-model-card-tag {
	display: inline-block;
	padding: 4px 12px;
	margin-bottom: 12px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	background: rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.8);
}
.hld-model-card--growth .hld-model-card-tag {
	background: rgba(255, 107, 53, 0.25);
	color: #ffb899;
}
.hld-model-card-head .hld-headline-sm { color: #fff; margin: 0; }
.hld-model-card-body { padding: 8px 0; }
.hld-model-item {
	padding: 20px 28px;
	border-bottom: 1px solid rgba(255,255,255,0.06);
}
.hld-model-item:last-child { border-bottom: none; }
.hld-model-item span {
	display: block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(255, 107, 53, 0.9);
	margin-bottom: 8px;
}
.hld-model-item p {
	margin: 0;
	color: rgba(255,255,255,0.85);
	line-height: 1.65;
	font-size: 15px;
}

.hld-benefits-grid--premium {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}
@media (min-width: 768px) { .hld-benefits-grid--premium { grid-template-columns: repeat(2, 1fr); } }
.hld-benefit-card--premium {
	padding: 32px 28px;
	background: var(--color-white);
	border-radius: var(--radius-xl);
	box-shadow: var(--shadow-card);
	border: 1px solid rgba(12, 26, 48, 0.06);
	position: relative;
	overflow: hidden;
	transition: transform var(--transition), box-shadow var(--transition);
}
.hld-benefit-card--premium::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background: linear-gradient(90deg, var(--color-secondary-container), #ffb088);
}
.hld-benefit-card--premium:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-hover);
}
.hld-benefit-num {
	font-size: 13px;
	font-weight: 700;
	color: var(--color-secondary-container);
	letter-spacing: 0.06em;
	margin-bottom: 12px;
}
.hld-benefit-card--premium .hld-headline-sm { margin-bottom: 20px; }
.hld-benefit-split {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
@media (min-width: 640px) { .hld-benefit-split { grid-template-columns: 1fr 1fr; gap: 20px; } }
.hld-benefit-part {
	padding: 18px;
	border-radius: var(--radius-md);
	font-size: 15px;
	line-height: 1.65;
}
.hld-benefit-part--pain {
	background: var(--color-surface-low);
	color: var(--color-on-surface-variant);
}
.hld-benefit-part--gain {
	background: linear-gradient(135deg, rgba(255, 107, 53, 0.08), rgba(255, 107, 53, 0.03));
	color: var(--color-on-surface);
	border: 1px solid rgba(255, 107, 53, 0.12);
}
.hld-benefit-part p { margin: 0; }

.hld-path-track {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	position: relative;
}
@media (min-width: 992px) {
	.hld-path-track {
		grid-template-columns: repeat(4, 1fr);
		gap: 24px;
	}
}
.hld-path-step {
	position: relative;
	padding: 0 0 32px 0;
}
@media (min-width: 992px) {
	.hld-path-step { padding: 0; }
}
.hld-path-step-marker {
	margin-bottom: 20px;
}
.hld-path-step .hld-step-num {
	width: 56px;
	height: 56px;
	font-size: 20px;
	background: linear-gradient(135deg, var(--color-secondary-container), #c94a1f);
	box-shadow: 0 8px 24px rgba(255, 107, 53, 0.3);
}
.hld-path-step-body {
	padding: 24px;
	border-radius: var(--radius-lg);
	background: var(--color-white);
	border: 1px solid rgba(12, 26, 48, 0.06);
	box-shadow: var(--shadow-ambient);
}
.hld-path-step-body .hld-headline-sm { margin-bottom: 10px; }
.hld-path-step-body p { color: var(--color-on-surface-variant); margin: 0; }

.hld-faq-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
	align-items: start;
}
@media (min-width: 992px) {
	.hld-faq-layout { grid-template-columns: 340px 1fr; gap: 64px; }
}
.hld-faq-intro .hld-headline-md { margin: 12px 0 16px; }
.hld-faq--page { max-width: none; margin: 0; }

.hld-lead--growth {
	background:
		radial-gradient(circle at 80% 20%, rgba(255, 107, 53, 0.18) 0%, transparent 40%),
		linear-gradient(160deg, var(--color-primary) 0%, var(--color-primary-container) 100%);
}
.hld-lead--compact { padding: 80px 0; }
@media (min-width: 768px) { .hld-lead--compact { padding: 96px 0; } }
.hld-lead--compact .hld-headline-md { font-size: 28px; }

.hld-page-growth .hld-hero-actions {
	margin-top: 32px;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}
.hld-page-growth .hld-btn-ghost {
	border-color: rgba(255,255,255,0.35);
	color: #fff;
}
.hld-page-growth .hld-btn-ghost:hover {
	background: rgba(255,255,255,0.1);
}

/* Inner pages — spread layout & real product imagery */
.hld-page-hero--spread .hld-page-hero-content {
	padding-top: 40px;
}
@media (min-width: 768px) {
	.hld-page-hero--spread .hld-page-hero-content { min-height: 640px; padding-top: 48px; }
}
@media (min-width: 1200px) {
	.hld-page-hero--spread .hld-page-hero-content { min-height: 720px; }
}

.hld-page-supply .hld-page-hero,
.hld-page-growth .hld-page-hero,
.hld-page-products .hld-page-hero {
	min-height: 560px;
}
@media (min-width: 768px) {
	.hld-page-supply .hld-page-hero,
	.hld-page-growth .hld-page-hero,
	.hld-page-products .hld-page-hero { min-height: 680px; }
}
@media (min-width: 1200px) {
	.hld-page-supply .hld-page-hero,
	.hld-page-growth .hld-page-hero,
	.hld-page-products .hld-page-hero { min-height: 740px; }
}

.hld-page-hero--spread .hld-page-hero-body {
	max-width: 920px;
	padding-bottom: 44px;
}
.hld-page-hero--spread .hld-hero-inner { max-width: 860px; }
.hld-page-hero--spread .hld-page-hero-badge { margin-bottom: 28px; }
.hld-page-hero--spread .hld-display { margin-bottom: 24px; }
.hld-page-hero--spread .hld-hero-desc {
	max-width: 720px;
	font-size: 18px;
	line-height: 1.75;
	opacity: 0.92;
}
.hld-page-hero--spread .hld-page-stats {
	max-width: 100%;
	margin-top: 44px;
	padding: 28px 32px;
}
@media (min-width: 992px) {
	.hld-page-hero--spread .hld-page-stats { padding: 32px 40px; }
}
.hld-page-hero--spread .hld-page-stat { padding: 16px 12px; }
.hld-page-hero--spread .hld-page-stat strong { font-size: 26px; margin-bottom: 8px; }

.hld-page-supply .hld-split-grid,
.hld-page-growth .hld-split-grid { gap: 48px; }
@media (min-width: 992px) {
	.hld-page-supply .hld-split-grid,
	.hld-page-growth .hld-split-grid { gap: 88px; }
}
.hld-page-supply .hld-section,
.hld-page-growth .hld-section { padding: 88px 0; }
@media (min-width: 768px) {
	.hld-page-supply .hld-section,
	.hld-page-growth .hld-section { padding: 120px 0; }
}

.hld-page-hero--products .hld-hero-bg { background-position: center 35%; }

/* Product catalog — aligned with site container */
.hld-catalog {
	padding: 48px 0 88px;
	background: var(--color-surface);
	overflow-x: hidden;
}
@media (min-width: 768px) {
	.hld-catalog { padding: 72px 0 104px; }
}

.hld-catalog-top {
	margin-bottom: 36px;
	padding-bottom: 28px;
	border-bottom: 1px solid var(--color-outline-variant);
}
@media (min-width: 768px) {
	.hld-catalog-top { margin-bottom: 40px; padding-bottom: 32px; }
}

.hld-catalog-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0;
	margin-bottom: 14px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-on-surface-variant);
}
.hld-catalog-breadcrumb a {
	color: var(--color-on-surface-variant);
	text-decoration: none;
	transition: color var(--transition);
}
.hld-catalog-breadcrumb a:hover { color: var(--color-secondary-container); }
.hld-catalog-breadcrumb__sep {
	margin: 0 12px;
	opacity: 0.35;
	user-select: none;
}
.hld-catalog-breadcrumb span[itemprop="name"]:not(a span) {
	color: var(--color-primary);
}

.hld-catalog-title {
	font-size: clamp(26px, 3vw, 34px);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.01em;
	color: var(--color-primary);
}

.hld-catalog-bar {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 32px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--color-outline-variant);
}
@media (min-width: 992px) {
	.hld-catalog-bar {
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
		gap: 32px;
		margin-bottom: 36px;
	}
}

.hld-catalog-cats {
	flex: 1;
	min-width: 0;
	border-bottom: none;
	position: static;
	background: none;
	backdrop-filter: none;
	margin: 0;
	padding: 0;
}
.hld-catalog-cats__track {
	display: flex;
	align-items: stretch;
	gap: 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
.hld-catalog-cats__track::-webkit-scrollbar { display: none; }
.hld-catalog-cats__item {
	flex-shrink: 0;
	padding: 12px 0;
	margin-right: 28px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--color-on-surface-variant);
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: color var(--transition), border-color var(--transition);
	white-space: nowrap;
}
.hld-catalog-cats__item:last-child { margin-right: 0; }
.hld-catalog-cats__item:hover { color: var(--color-primary); }
.hld-catalog-cats__item.is-active {
	color: var(--color-primary);
	border-bottom-color: var(--color-primary);
	font-weight: 600;
}

.hld-catalog-bar__side {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-shrink: 0;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--color-on-surface-variant);
}
.hld-catalog-bar__link {
	color: var(--color-on-surface);
	text-decoration: none;
	border-bottom: 1px solid currentColor;
	padding-bottom: 1px;
	transition: color var(--transition);
}
.hld-catalog-bar__link:hover { color: var(--color-secondary-container); }

.hld-catalog-empty {
	text-align: center;
	padding: 72px 24px;
	margin-top: 8px;
	border: 1px dashed var(--color-outline-variant);
	border-radius: var(--radius-lg);
	background: var(--color-surface-low);
}
.hld-catalog-empty__title {
	font-size: 18px;
	font-weight: 600;
	color: var(--color-primary);
	margin-bottom: 12px;
}
.hld-catalog-empty__desc {
	max-width: 480px;
	margin: 0 auto 24px;
	font-size: 15px;
	line-height: 1.7;
	color: var(--color-on-surface-variant);
}

.hld-empty-state {
	text-align: center;
	padding: 32px 20px;
	color: var(--color-on-surface-variant);
	font-size: 14px;
}
.hld-empty-state--inline { padding: 16px 0; }

.hld-catalog-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px 10px;
}
@media (min-width: 768px) {
	.hld-catalog-grid {
		grid-template-columns: repeat(4, 1fr);
		gap: 32px 12px;
	}
}

.hld-catalog-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
}
.hld-catalog-card__media {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 1;
	background: #f4f4f5;
	overflow: hidden;
	margin-bottom: 10px;
	flex-shrink: 0;
}
.hld-catalog-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity var(--transition);
}
.hld-catalog-card:hover .hld-catalog-card__media img { transform: scale(1.03); }

.hld-catalog-card__body {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
}
.hld-catalog-card__title {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	margin: 0;
	flex: 1;
	min-width: 0;
	letter-spacing: 0.01em;
}
.hld-catalog-card__title a {
	color: var(--color-on-surface);
	text-decoration: none;
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: color var(--transition);
}
.hld-catalog-card:hover .hld-catalog-card__title a { color: var(--color-secondary-container); }
.hld-catalog-card__inquiry {
	flex-shrink: 0;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--color-on-surface-variant);
	text-decoration: none;
	padding-top: 2px;
	opacity: 0;
	transition: opacity var(--transition), color var(--transition);
}
.hld-catalog-card:hover .hld-catalog-card__inquiry,
.hld-catalog-card__inquiry:focus { opacity: 1; }
.hld-catalog-card__inquiry:hover { color: var(--color-secondary-container); }
@media (max-width: 767px) {
	.hld-catalog-card__inquiry { opacity: 1; }
}

.hld-catalog-pagination { margin-top: 48px; }
.hld-catalog-pagination .pager,
.hld-catalog-pagination .hld-pagination-nav {
	margin-top: 0;
	display: flex;
	justify-content: center;
}

.hld-catalog-pagination .pagination,
.hld-catalog-pagination ul.pagination,
.hld-pagination-nav .pagination,
.hld-pagination-nav ul.pagination {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hld-catalog-pagination .pagination > li,
.hld-pagination-nav .pagination > li {
	display: inline-flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hld-catalog-pagination .pagination > li > a,
.hld-catalog-pagination .pagination > li > span,
.hld-pagination-nav .pagination > li > a,
.hld-pagination-nav .pagination > li > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 14px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	color: var(--color-on-surface-variant);
	text-decoration: none;
	background: var(--color-white);
	border: 1px solid var(--color-outline-variant);
	border-radius: var(--radius-md);
	transition: color var(--transition), background var(--transition), border-color var(--transition), box-shadow var(--transition);
}

.hld-catalog-pagination .pagination > li > a:hover,
.hld-pagination-nav .pagination > li > a:hover {
	color: var(--color-primary);
	border-color: rgba(12, 26, 48, 0.18);
	background: var(--color-surface-alt);
	box-shadow: var(--shadow-ambient);
}

.hld-catalog-pagination .pagination > li.active > span,
.hld-pagination-nav .pagination > li.active > span {
	color: var(--color-white);
	background: var(--color-primary);
	border-color: var(--color-primary);
	box-shadow: var(--shadow-ambient);
}

.hld-catalog-pagination .pagination > li.disabled > span,
.hld-pagination-nav .pagination > li.disabled > span {
	color: var(--color-outline);
	background: var(--color-surface-low);
	border-color: var(--color-outline-variant);
	cursor: not-allowed;
	opacity: 0.65;
}

.hld-catalog-pagination .pagination > li:first-child > a,
.hld-catalog-pagination .pagination > li:first-child > span,
.hld-catalog-pagination .pagination > li:last-child > a,
.hld-catalog-pagination .pagination > li:last-child > span,
.hld-pagination-nav .pagination > li:first-child > a,
.hld-pagination-nav .pagination > li:first-child > span,
.hld-pagination-nav .pagination > li:last-child > a,
.hld-pagination-nav .pagination > li:last-child > span {
	min-width: 42px;
	font-size: 18px;
	font-weight: 400;
}

@media (max-width: 575px) {
	.hld-catalog-pagination .pagination > li > a,
	.hld-catalog-pagination .pagination > li > span,
	.hld-pagination-nav .pagination > li > a,
	.hld-pagination-nav .pagination > li > span {
		min-width: 38px;
		height: 38px;
		padding: 0 10px;
		font-size: 13px;
	}
}

.hld-btn-loadmore {
	padding: 12px 28px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.hld-page-product-detail .hld-product-gallery-main {
	aspect-ratio: 1;
	background: #f6f7f9;
}
.hld-page-product-detail .hld-product-gallery-main img {
	object-fit: cover;
	padding: 0;
}

/* Product detail page */
.hld-pd {
	padding: 48px 0 96px;
	background: var(--color-surface);
}
@media (min-width: 768px) {
	.hld-pd { padding: 72px 0 112px; }
}

.hld-pd-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 36px;
	margin-bottom: 56px;
}
@media (min-width: 992px) {
	.hld-pd-grid {
		grid-template-columns: minmax(0, 1.5fr) minmax(0, 0.75fr);
		gap: 40px;
		align-items: start;
	}
}

.hld-pd-gallery {
	display: flex;
	flex-direction: column;
	gap: 12px;
	max-width: 100%;
	width: 100%;
}
@media (min-width: 576px) {
	.hld-pd-gallery {
		flex-direction: row;
		align-items: flex-start;
	}
}

.hld-pd-gallery__main {
	flex: 1;
	min-width: 0;
	width: 100%;
	order: 1;
}
.hld-pd-gallery__thumbs-wrap { order: 2; }
@media (min-width: 576px) {
	.hld-pd-gallery__thumbs-wrap { order: 1; }
	.hld-pd-gallery__main { order: 2; }
}

.hld-pd-gallery__stage {
	position: relative;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 1;
	max-height: 420px;
	background: #f4f4f5;
	overflow: hidden;
}
@media (min-width: 576px) {
	.hld-pd-gallery__stage { max-height: 480px; }
}
@media (min-width: 992px) {
	.hld-pd-gallery__stage { max-height: 560px; }
}
.hld-pd-gallery__viewer {
	display: block;
	width: 100%;
	height: 100%;
	cursor: zoom-in;
}
.hld-pd-gallery__viewer img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;
	transition: transform 0.4s ease;
}
.hld-pd-gallery__viewer:hover img { transform: scale(1.02); }

.hld-pd-gallery__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	width: 40px;
	height: 40px;
	border: none;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
	color: var(--color-primary);
	box-shadow: var(--shadow-ambient);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background var(--transition), transform var(--transition);
}
.hld-pd-gallery__arrow:hover {
	background: #fff;
	transform: translateY(-50%) scale(1.05);
}
.hld-pd-gallery__arrow--prev { left: 14px; }
.hld-pd-gallery__arrow--next { right: 14px; }
.hld-pd-gallery__arrow .hld-icon { width: 18px; height: 18px; }

.hld-pd-gallery__thumbs-wrap {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
}
@media (min-width: 576px) {
	.hld-pd-gallery__thumbs-wrap {
		flex-direction: column;
		width: 72px;
		height: 480px;
		max-height: 480px;
	}
}
@media (min-width: 992px) {
	.hld-pd-gallery__thumbs-wrap {
		height: 560px;
		max-height: 560px;
	}
}

.hld-pd-gallery__thumbs-arrow {
	flex-shrink: 0;
	border: none;
	border-radius: var(--radius-sm);
	background: #f4f4f5;
	color: var(--color-primary);
	cursor: pointer;
	display: none;
	align-items: center;
	justify-content: center;
	transition: background var(--transition), color var(--transition);
}
.hld-pd-gallery__thumbs-arrow.is-visible { display: flex; }
.hld-pd-gallery__thumbs-arrow:hover {
	background: #ebebed;
	color: var(--color-secondary-container);
}
.hld-pd-gallery__thumbs-arrow .hld-icon { width: 16px; height: 16px; }
.hld-icon--flip { transform: rotate(180deg); }

.hld-pd-gallery__thumbs-arrow--up,
.hld-pd-gallery__thumbs-arrow--down {
	width: 72px;
	height: 28px;
}
.hld-pd-gallery__thumbs-arrow--prev,
.hld-pd-gallery__thumbs-arrow--next {
	width: 28px;
	height: 64px;
}
@media (min-width: 576px) {
	.hld-pd-gallery__thumbs-arrow--prev,
	.hld-pd-gallery__thumbs-arrow--next { display: none !important; }
}
@media (max-width: 575px) {
	.hld-pd-gallery__thumbs-arrow--up,
	.hld-pd-gallery__thumbs-arrow--down { display: none !important; }
}

.hld-pd-gallery__thumbs {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 8px;
	flex: 1;
	min-height: 0;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	max-width: calc(100vw - 80px);
}
.hld-pd-gallery__thumbs::-webkit-scrollbar { display: none; }
@media (min-width: 576px) {
	.hld-pd-gallery__thumbs {
		flex-direction: column;
		flex-wrap: nowrap;
		width: 72px;
		max-width: 72px;
		overflow-x: hidden;
		overflow-y: auto;
	}
}
.hld-pd-gallery__thumb {
	width: 64px;
	height: 64px;
	padding: 0;
	border: 2px solid transparent;
	border-radius: var(--radius-sm);
	background: #f4f4f5;
	cursor: pointer;
	overflow: hidden;
	flex-shrink: 0;
	transition: border-color var(--transition);
}
@media (min-width: 576px) {
	.hld-pd-gallery__thumb {
		width: 72px;
		height: 72px;
	}
}
.hld-pd-gallery__thumb.is-active { border-color: var(--color-primary); }
.hld-pd-gallery__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.hld-pd-info {
	min-width: 0;
}

.hld-pd-title {
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--color-primary);
	margin-bottom: 16px;
}
.hld-pd-desc {
	font-size: 15px;
	line-height: 1.75;
	color: var(--color-on-surface-variant);
	margin-bottom: 20px;
}
.hld-pd-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	padding: 0;
	margin: 0 0 28px;
}
.hld-pd-tags li {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--color-surface-alt);
	color: var(--color-on-surface-variant);
}
.hld-pd-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 24px;
	padding-top: 8px;
}
.hld-pd-back {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--color-on-surface-variant);
	text-decoration: none;
	border-bottom: 1px solid currentColor;
	padding-bottom: 1px;
	transition: color var(--transition);
}
.hld-pd-back:hover { color: var(--color-secondary-container); }

.hld-pd-content {
	margin-bottom: 64px;
	padding-top: 32px;
	border-top: 1px solid var(--color-outline-variant);
}
.hld-pd-content__title {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--color-primary);
	margin-bottom: 20px;
}

.hld-pd-related {
	padding-top: 48px;
	border-top: 1px solid var(--color-outline-variant);
	margin-bottom: 16px;
}
.hld-pd-related__head { margin-bottom: 32px; }
.hld-pd-related__title {
	font-size: clamp(20px, 2.5vw, 26px);
	font-weight: 600;
	color: var(--color-primary);
	margin-top: 8px;
}
.hld-pd-related .hld-catalog-grid { margin-bottom: 0; }

#products .hld-catalog-grid {
	grid-template-columns: repeat(2, 1fr);
	gap: 24px 10px;
}
@media (min-width: 768px) {
	#products .hld-catalog-grid {
		grid-template-columns: repeat(4, 1fr);
		gap: 32px 12px;
	}
}

/* Inner list pages — shared page head */
.hld-page-head {
	margin-bottom: 48px;
	padding-bottom: 36px;
	border-bottom: 1px solid var(--color-outline-variant);
}
@media (min-width: 768px) {
	.hld-page-head { margin-bottom: 56px; padding-bottom: 44px; }
}
.hld-page-head__body { max-width: 720px; }
.hld-page-head .hld-label { display: block; margin-bottom: 14px; }
.hld-page-head__title {
	font-size: clamp(32px, 4vw, 44px);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--color-primary);
	margin-bottom: 18px;
}
.hld-page-head__desc {
	font-size: 17px;
	line-height: 1.75;
	color: var(--color-on-surface-variant);
	max-width: 640px;
}

/* Partner manufacturers list */
.hld-partners,
.hld-cases,
.hld-news-page,
.hld-contact {
	padding: 48px 0 96px;
	background: var(--color-surface);
}
@media (min-width: 768px) {
	.hld-partners,
	.hld-cases,
	.hld-news-page,
	.hld-contact { padding: 72px 0 112px; }
}

.hld-partners-intro,
.hld-cases-intro {
	max-width: 640px;
	margin-top: 12px;
	font-size: 16px;
	line-height: 1.75;
	color: var(--color-on-surface-variant);
}

.hld-partners-stats {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	background: var(--color-outline-variant);
	border-radius: var(--radius-lg);
	overflow: hidden;
	margin-bottom: 56px;
	box-shadow: var(--shadow-card);
}
@media (min-width: 768px) {
	.hld-partners-stats { grid-template-columns: repeat(4, 1fr); margin-bottom: 72px; }
}
.hld-partners-stat {
	background: var(--color-primary);
	padding: 32px 20px;
	text-align: center;
}
.hld-partners-stat strong {
	display: block;
	font-size: clamp(22px, 2.5vw, 30px);
	font-weight: 700;
	color: var(--color-secondary-container);
	margin-bottom: 8px;
	line-height: 1.1;
}
.hld-partners-stat span {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-on-primary-container);
}

.hld-partners-list {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.hld-partner-row {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	gap: 36px;
	align-items: center;
	padding: 56px 0;
	border-bottom: 1px solid var(--color-outline-variant);
}
@media (min-width: 992px) {
	.hld-partner-row {
		grid-template-columns: 1.05fr 0.95fr;
		gap: 72px;
		padding: 72px 0;
	}
	.hld-partner-row--reverse .hld-partner-row__visual { order: 2; }
	.hld-partner-row--reverse .hld-partner-row__body { order: 1; }
}
.hld-partner-row:first-child { padding-top: 16px; }
.hld-partner-row:last-child { border-bottom: none; }

.hld-partner-row__num {
	position: absolute;
	top: 48px;
	left: -4px;
	font-family: var(--font-mono);
	font-size: clamp(56px, 8vw, 88px);
	font-weight: 700;
	line-height: 1;
	color: rgba(12, 26, 48, 0.05);
	pointer-events: none;
	user-select: none;
	z-index: 0;
}
@media (min-width: 992px) {
	.hld-partner-row__num { top: 56px; }
}

.hld-partner-visual {
	position: relative;
	aspect-ratio: 16 / 10;
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-card);
	background: var(--color-surface-low);
}
.hld-partner-visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.65s cubic-bezier(0.4, 0, 0.2, 1);
}
.hld-partner-row:hover .hld-partner-visual img { transform: scale(1.04); }
.hld-partner-visual__shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 55%, rgba(12, 26, 48, 0.18) 100%);
	pointer-events: none;
}

.hld-partner-row__body { position: relative; z-index: 1; }

.hld-partner-tag {
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--color-secondary-container);
	margin-bottom: 12px;
}
.hld-partner-title {
	font-size: clamp(22px, 2.5vw, 28px);
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: 14px;
}
.hld-partner-title a {
	color: var(--color-primary);
	text-decoration: none;
	transition: color var(--transition);
}
.hld-partner-title a:hover { color: var(--color-secondary-container); }
.hld-partner-desc {
	font-size: 16px;
	line-height: 1.75;
	color: var(--color-on-surface-variant);
	margin-bottom: 22px;
	max-width: 540px;
}
.hld-partner-points {
	margin: 0 0 28px;
	padding: 0;
}
.hld-partner-points li {
	position: relative;
	padding-left: 18px;
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--color-on-surface-variant);
}
.hld-partner-points li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 9px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--color-secondary-container);
}
.hld-partner-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-primary);
	text-decoration: none;
	transition: color var(--transition), gap var(--transition);
}
.hld-partner-link:hover {
	color: var(--color-secondary-container);
	gap: 12px;
}
.hld-partner-link .hld-icon { width: 14px; height: 14px; }

/* Cooperation cases list */
.hld-cases-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
}
@media (min-width: 768px) {
	.hld-cases-grid { grid-template-columns: repeat(2, 1fr); gap: 36px; }
}

.hld-case-card {
	display: flex;
	flex-direction: column;
	background: var(--color-white);
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition), transform var(--transition);
}
.hld-case-card:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-3px);
}
.hld-case-card--growth {
	border-top: 3px solid var(--color-secondary-container);
}

.hld-case-card__media {
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: var(--color-surface-container);
}
.hld-case-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}
.hld-case-card:hover .hld-case-card__media img { transform: scale(1.04); }

.hld-case-card__body {
	padding: 28px;
	flex: 1;
	display: flex;
	flex-direction: column;
}
.hld-case-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
	font-size: 12px;
	color: var(--color-on-surface-variant);
}
.hld-case-card__tag {
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--color-primary);
}
.hld-case-card--growth .hld-case-card__tag { color: var(--color-secondary-container); }
.hld-case-card__title {
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: 12px;
}
.hld-case-card__title a {
	color: var(--color-primary);
	text-decoration: none;
	transition: color var(--transition);
}
.hld-case-card:hover .hld-case-card__title a { color: var(--color-secondary-container); }
.hld-case-card__desc {
	font-size: 14px;
	line-height: 1.7;
	color: var(--color-on-surface-variant);
	margin-bottom: 20px;
	flex: 1;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.hld-case-card__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-primary);
	text-decoration: none;
	margin-top: auto;
	transition: color var(--transition), gap var(--transition);
}
.hld-case-card__link:hover {
	color: var(--color-secondary-container);
	gap: 12px;
}
.hld-case-card__link .hld-icon { width: 14px; height: 14px; }

/* News list — 4-column grid */
.hld-news-mag {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}
@media (min-width: 576px) {
	.hld-news-mag {
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;
	}
}
@media (min-width: 992px) {
	.hld-news-mag {
		grid-template-columns: repeat(4, 1fr);
		gap: 24px;
	}
}

.hld-news-mag-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--color-white);
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow-ambient);
	transition: box-shadow var(--transition), transform var(--transition);
	text-decoration: none;
	color: inherit;
}
.hld-news-mag-card:hover {
	box-shadow: var(--shadow-hover);
	transform: translateY(-3px);
}

.hld-news-mag-card__media {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: var(--color-surface-low);
}
.hld-news-mag-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.65s cubic-bezier(0.4, 0, 0.2, 1);
}
.hld-news-mag-card:hover .hld-news-mag-card__media img { transform: scale(1.05); }

.hld-news-mag-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 18px 18px 22px;
}

.hld-news-mag-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--color-on-surface-variant);
}
.hld-news-mag-card__read {
	color: var(--color-secondary-container);
	opacity: 0;
	transform: translateX(-6px);
	transition: opacity var(--transition), transform var(--transition);
	white-space: nowrap;
}
.hld-news-mag-card:hover .hld-news-mag-card__read {
	opacity: 1;
	transform: translateX(0);
}

.hld-news-mag-card__title {
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--color-primary);
	margin-bottom: 8px;
	transition: color var(--transition);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.hld-news-mag-card:hover .hld-news-mag-card__title { color: var(--color-secondary-container); }

.hld-news-mag-card__desc {
	font-size: 13px;
	line-height: 1.6;
	color: var(--color-on-surface-variant);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Contact page */
.hld-contact-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 48px;
	align-items: start;
}
@media (min-width: 992px) {
	.hld-contact-grid {
		grid-template-columns: 0.95fr 1.05fr;
		gap: 64px;
	}
}

.hld-contact-info {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.hld-contact-card {
	padding: 28px 28px 26px;
	background: var(--color-surface-low);
	border-radius: var(--radius-lg);
	border: 1px solid var(--color-outline-variant);
}
.hld-contact-card--muted {
	background: var(--color-white);
}
.hld-contact-card__icon {
	display: block;
	width: 24px;
	height: 24px;
	color: var(--color-secondary-container);
	margin-bottom: 16px;
}
.hld-contact-card__title {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-primary);
	margin-bottom: 10px;
}
.hld-contact-card__text {
	font-size: 15px;
	line-height: 1.7;
	color: var(--color-on-surface-variant);
}
.hld-contact-card__text a {
	color: var(--color-primary);
	text-decoration: none;
	transition: color var(--transition);
}
.hld-contact-card__text a:hover { color: var(--color-secondary-container); }

.hld-contact-trust {
	margin-top: 8px;
	padding: 24px 0 0;
	border-top: 1px solid var(--color-outline-variant);
}
.hld-contact-trust li {
	position: relative;
	padding-left: 22px;
	margin-bottom: 12px;
	font-size: 14px;
	line-height: 1.65;
	color: var(--color-on-surface-variant);
}
.hld-contact-trust li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 8px;
	width: 8px;
	height: 8px;
	border-radius: 2px;
	background: var(--color-secondary-container);
	opacity: 0.85;
}

.hld-contact-form-box {
	background: var(--color-white);
	padding: 40px 36px;
	border-radius: var(--radius-xl);
	box-shadow: var(--shadow-lg);
	border: 1px solid var(--color-outline-variant);
}
@media (min-width: 768px) {
	.hld-contact-form-box { padding: 48px 44px; }
}
.hld-contact-form-box__title {
	font-size: clamp(22px, 2.5vw, 28px);
	font-weight: 600;
	color: var(--color-primary);
	margin-bottom: 12px;
}
.hld-contact-form-box__desc {
	font-size: 15px;
	line-height: 1.7;
	color: var(--color-on-surface-variant);
	margin-bottom: 32px;
}
.hld-lead-form--light { padding: 0; box-shadow: none; border-radius: 0; }

.hld-contact-band {
	background: var(--color-primary);
	color: var(--color-white);
	padding: 48px 0;
}
.hld-contact-band__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
}
@media (min-width: 768px) {
	.hld-contact-band__inner { grid-template-columns: repeat(3, 1fr); gap: 40px; }
}
.hld-contact-band__inner > div {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.hld-contact-band__inner strong {
	font-size: 18px;
	font-weight: 600;
	color: var(--color-white);
}
.hld-contact-band__inner span {
	font-size: 14px;
	line-height: 1.6;
	color: var(--color-on-primary-container);
}

.hld-page-contact { padding-bottom: 0; }

/* Case study detail */
.hld-case-detail,
.hld-news-detail {
	padding: 48px 0 96px;
	background: var(--color-surface);
}
@media (min-width: 768px) {
	.hld-case-detail,
	.hld-news-detail { padding: 72px 0 112px; }
}

.hld-case-detail__hero {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
	margin-bottom: 48px;
	padding-bottom: 48px;
	border-bottom: 1px solid var(--color-outline-variant);
}
@media (min-width: 992px) {
	.hld-case-detail__hero {
		grid-template-columns: 1.05fr 0.95fr;
		gap: 48px;
		align-items: center;
	}
}

.hld-case-detail__tag {
	display: inline-block;
	margin-bottom: 16px;
	padding: 6px 12px;
	border-radius: 999px;
	background: rgba(12, 26, 48, 0.06);
	color: var(--color-primary);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.hld-case-detail__tag--growth {
	background: rgba(255, 107, 53, 0.12);
	color: var(--color-secondary-container);
}

.hld-case-detail__title {
	font-size: clamp(32px, 4vw, 44px);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -0.02em;
	color: var(--color-primary);
	margin-bottom: 18px;
}

.hld-case-detail__lead {
	font-size: 18px;
	line-height: 1.75;
	color: var(--color-on-surface-variant);
	max-width: 640px;
}

.hld-case-detail__meta {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 20px;
	margin-top: 28px;
}
.hld-case-detail__meta dt {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(12, 26, 48, 0.45);
	margin-bottom: 6px;
}
.hld-case-detail__meta dd {
	margin: 0;
	font-size: 15px;
	font-weight: 600;
	color: var(--color-primary);
}

.hld-case-detail__visual {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border-radius: var(--radius-xl);
	background: var(--color-surface-container);
	box-shadow: var(--shadow-ambient);
}
.hld-case-detail__visual img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hld-case-detail__story {
	margin-bottom: 48px;
}
.hld-case-detail__story-title {
	font-size: clamp(22px, 2.5vw, 28px);
	font-weight: 600;
	color: var(--color-primary);
	margin-bottom: 24px;
}

.hld-case-detail__cta {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 36px 32px;
	margin-bottom: 56px;
	border-radius: var(--radius-xl);
	background: linear-gradient(135deg, rgba(12, 26, 48, 0.96), rgba(12, 26, 48, 0.88));
	color: var(--color-white);
}
@media (min-width: 768px) {
	.hld-case-detail__cta {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		padding: 40px 44px;
	}
}
.hld-case-detail__cta .hld-label { color: rgba(255, 255, 255, 0.72); }
.hld-case-detail__cta-title {
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 600;
	line-height: 1.2;
	margin: 10px 0 14px;
}
.hld-case-detail__cta-body p {
	margin: 0;
	max-width: 560px;
	font-size: 15px;
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.82);
}
.hld-case-detail__cta-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	flex-shrink: 0;
}
.hld-case-detail__cta .hld-btn-ghost {
	border-color: rgba(255, 255, 255, 0.28);
	color: var(--color-white);
}

.hld-case-related,
.hld-news-related {
	padding-top: 48px;
	border-top: 1px solid var(--color-outline-variant);
}
.hld-cases-grid--related {
	margin-bottom: 0;
}

/* News detail */
.hld-news-detail__article {
	max-width: 820px;
	margin: 0 auto 56px;
}

.hld-news-detail__head {
	margin-bottom: 32px;
}
.hld-news-detail__head .hld-label {
	display: block;
	margin-bottom: 14px;
}
.hld-news-detail__title {
	font-size: clamp(32px, 4vw, 42px);
	font-weight: 600;
	line-height: 1.14;
	letter-spacing: -0.02em;
	color: var(--color-primary);
	margin-bottom: 18px;
}

.hld-news-detail__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 20px;
	margin-bottom: 18px;
	font-size: 14px;
	color: var(--color-on-surface-variant);
}
.hld-news-detail__topics {
	padding-left: 20px;
	border-left: 1px solid var(--color-outline-variant);
}

.hld-news-detail__summary {
	font-size: 18px;
	line-height: 1.75;
	color: var(--color-on-surface-variant);
}

.hld-news-detail__figure {
	margin: 0 0 36px;
	overflow: hidden;
	border-radius: var(--radius-xl);
	background: var(--color-surface-container);
}
.hld-news-detail__figure img {
	width: 100%;
	height: auto;
	display: block;
}

.hld-news-detail__body {
	font-size: 17px;
	line-height: 1.85;
	color: var(--color-on-surface-variant);
	margin-bottom: 40px;
}

.hld-news-detail__foot {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	padding-top: 32px;
	border-top: 1px solid var(--color-outline-variant);
}

.hld-news-related__list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}
@media (min-width: 768px) {
	.hld-news-related__list { grid-template-columns: repeat(2, 1fr); }
}

.hld-news-related__card {
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 16px;
	align-items: start;
	padding: 16px;
	border: 1px solid var(--color-outline-variant);
	border-radius: var(--radius-lg);
	background: var(--color-surface-bright);
	text-decoration: none;
	transition: border-color var(--transition), box-shadow var(--transition), transform var(--transition);
}
.hld-news-related__card:hover {
	border-color: rgba(255, 107, 53, 0.35);
	box-shadow: var(--shadow-ambient);
	transform: translateY(-2px);
}

.hld-news-related__media {
	aspect-ratio: 3 / 2;
	overflow: hidden;
	border-radius: var(--radius-md);
	background: var(--color-surface-container);
}
.hld-news-related__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hld-news-related__body time {
	display: block;
	font-size: 12px;
	color: var(--color-on-surface-variant);
	margin-bottom: 8px;
}
.hld-news-related__body h3 {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--color-primary);
	margin: 0 0 8px;
	transition: color var(--transition);
}
.hld-news-related__card:hover h3 { color: var(--color-secondary-container); }
.hld-news-related__body p {
	margin: 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--color-on-surface-variant);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

