/*
 * YJCen mobile v2 presentation.
 * Every visual rule is confined to widths below 1024px and to an explicit
 * YJCV2 page/component hook. The database templates, business content and
 * desktop presentation remain the single source of truth.
 */

@media (max-width: 1023.98px) {
	body.yjcv2 {
		--yjcv2-ink: #07142f;
		--yjcv2-ink-soft: #39445b;
		--yjcv2-blue: #1268f3;
		--yjcv2-blue-dark: #081d4f;
		--yjcv2-blue-soft: #eef5ff;
		--yjcv2-canvas: #ffffff;
		--yjcv2-surface: #f6f8fb;
		--yjcv2-line: #dce2ea;
		--yjcv2-gutter: 32px;
		--yjcv2-header-height: 72px;
		--yjcv2-radius: 14px;
		--yjcv2-section-space: 64px;
		background: var(--yjcv2-canvas);
		color: var(--yjcv2-ink);
		text-rendering: optimizeLegibility;
		-webkit-font-smoothing: antialiased;
	}

	body.yjcv2.yjcv2-overlay-open {
		overflow: hidden;
	}

	body.yjcv2 img,
	body.yjcv2 video,
	body.yjcv2 iframe {
		max-width: 100%;
	}

	/* Public header and responsive navigation. */
	body.yjcv2 .yjcv2-c-site-header {
		position: sticky !important;
		top: 0;
		z-index: 1000;
		width: 100%;
		border: 0 !important;
		border-bottom: 1px solid rgba(7, 20, 47, 0.08) !important;
		background: rgba(255, 255, 255, 0.97) !important;
		box-shadow: 0 8px 28px rgba(7, 20, 47, 0.07) !important;
		animation: none !important;
		backdrop-filter: blur(16px);
	}

	body.yjcv2 .yjcv2-c-header-container {
		box-sizing: border-box;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 var(--yjcv2-gutter) !important;
	}

	body.yjcv2 .yjcv2-c-header-inner {
		box-sizing: border-box;
		height: var(--yjcv2-header-height) !important;
		min-height: var(--yjcv2-header-height);
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	body.yjcv2 .yjcv2-c-brand {
		display: inline-flex !important;
		align-items: center;
		gap: 8px;
		min-width: 0;
		margin: 0 !important;
		color: var(--yjcv2-ink) !important;
		text-decoration: none;
		transform: none !important;
	}

	body.yjcv2 .yjcv2-c-brand-logo {
		width: 40px !important;
		height: 46px !important;
		max-width: 40px;
		object-fit: contain;
		filter: none !important;
	}

	body.yjcv2 .yjcv2-c-brand-wordmark {
		display: inline-block !important;
		margin: 0 !important;
		font-size: 24px !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		letter-spacing: 0.035em !important;
		-webkit-text-stroke: 0 !important;
		transform: none !important;
	}

	body.yjcv2 .yjcv2-c-primary-nav,
	body.yjcv2 .yjcv2-c-product-menu {
		display: none !important;
	}

	body.yjcv2 .yjcv2-c-header-controls {
		display: flex;
		align-items: center;
		gap: 8px !important;
		margin-left: auto;
	}

	body.yjcv2 .yjcv2-c-search-toggle,
	body.yjcv2 .yjcv2-c-nav-toggle {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		width: 46px !important;
		height: 46px !important;
		min-width: 46px !important;
		min-height: 46px !important;
		padding: 0 !important;
		border: 1px solid var(--yjcv2-line) !important;
		border-radius: 13px !important;
		background: #fff !important;
		color: var(--yjcv2-ink-soft) !important;
		box-shadow: none !important;
		transform: none !important;
	}

	body.yjcv2 .yjcv2-c-search-toggle svg,
	body.yjcv2 .yjcv2-c-nav-toggle svg {
		width: 23px !important;
		height: 23px !important;
	}

	body.yjcv2 .yjcv2-c-search-toggle [class*="absolute"],
	body.yjcv2 .yjcv2-c-search-toggle .sr-only {
		display: none !important;
	}

	body.yjcv2 .yjcv2-c-search-toggle[aria-expanded="true"],
	body.yjcv2 .yjcv2-c-nav-toggle[aria-expanded="true"] {
		border-color: var(--yjcv2-blue) !important;
		color: var(--yjcv2-blue) !important;
		background: var(--yjcv2-blue-soft) !important;
	}

	body.yjcv2 .yjcv2-c-search-panel,
	body.yjcv2 .yjcv2-c-mobile-nav {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		z-index: 1001;
		box-sizing: border-box;
		width: 100%;
		border-top: 1px solid var(--yjcv2-line) !important;
		background: #fff !important;
		box-shadow: 0 22px 44px rgba(7, 20, 47, 0.13);
	}

	body.yjcv2 .yjcv2-c-search-panel:not(.hidden),
	body.yjcv2 .yjcv2-c-mobile-nav:not(.hidden) {
		display: block !important;
	}

	body.yjcv2 .yjcv2-c-search-panel {
		padding: 16px var(--yjcv2-gutter) 20px !important;
	}

	body.yjcv2 .yjcv2-c-search-row {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px;
		max-width: 720px !important;
		margin: 0 auto;
	}

	body.yjcv2 .yjcv2-c-search-row > .absolute {
		display: none !important;
	}

	body.yjcv2 .yjcv2-c-search-input {
		box-sizing: border-box;
		width: 100%;
		height: 52px;
		padding: 0 16px !important;
		border: 1px solid var(--yjcv2-line) !important;
		border-radius: 12px !important;
		background: var(--yjcv2-surface) !important;
		color: var(--yjcv2-ink);
		font-size: 16px;
		box-shadow: none !important;
	}

	body.yjcv2 .yjcv2-c-search-submit {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		height: 52px;
		padding: 0 20px;
		border: 0;
		border-radius: 12px;
		background: var(--yjcv2-blue-dark);
		color: #fff;
		font-size: 15px;
		font-weight: 700;
	}

	body.yjcv2 .yjcv2-c-mobile-nav {
		max-height: calc(100dvh - var(--yjcv2-header-height));
		overflow-y: auto;
		overscroll-behavior: contain;
	}

	body.yjcv2 .yjcv2-c-mobile-nav-inner {
		box-sizing: border-box;
		max-width: 720px;
		margin: 0 auto;
		padding: 10px var(--yjcv2-gutter) 28px;
	}

	body.yjcv2 .yjcv2-c-mobile-nav-link,
	body.yjcv2 .yjcv2-c-mobile-products > summary {
		display: flex;
		align-items: center;
		box-sizing: border-box;
		min-height: 54px;
		padding: 0;
		border-bottom: 1px solid var(--yjcv2-line);
		color: var(--yjcv2-ink);
		font-size: 17px;
		font-weight: 700;
		line-height: 1.3;
		text-decoration: none;
		box-shadow: none;
	}

	body.yjcv2 .yjcv2-c-mobile-products > summary {
		position: relative;
		cursor: pointer;
		list-style: none;
	}

	body.yjcv2 .yjcv2-c-mobile-products > summary::-webkit-details-marker {
		display: none;
	}

	body.yjcv2 .yjcv2-c-mobile-products > summary::after {
		content: "+";
		position: absolute;
		right: 2px;
		font-size: 24px;
		font-weight: 400;
		color: var(--yjcv2-ink-soft);
	}

	body.yjcv2 .yjcv2-c-mobile-products[open] > summary::after {
		content: "−";
	}

	body.yjcv2 .yjcv2-c-mobile-product-links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0 20px;
		padding: 8px 0 12px;
		border-bottom: 1px solid var(--yjcv2-line);
	}

	body.yjcv2 .yjcv2-c-mobile-product-link {
		display: flex;
		align-items: center;
		min-height: 46px;
		padding: 6px 0;
		color: var(--yjcv2-ink-soft);
		font-size: 14px;
		font-weight: 600;
		line-height: 1.35;
		text-decoration: none;
	}

	body.yjcv2 .yjcv2-c-mobile-product-link--all {
		grid-column: 1 / -1;
		color: var(--yjcv2-blue);
		font-weight: 800;
	}

	body.yjcv2 .yjcv2-c-mobile-nav-cta {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 52px;
		margin-top: 20px;
		padding: 0 18px;
		border-radius: 12px;
		background: var(--yjcv2-blue-dark);
		color: #fff;
		font-size: 16px;
		font-weight: 800;
		text-decoration: none;
	}

	/* Footer keeps every address, link and legal item, but uses a readable stack. */
	body.yjcv2 .yjcv2-c-site-footer {
		box-sizing: border-box;
		padding: 52px var(--yjcv2-gutter) 24px !important;
		border: 0 !important;
		background: var(--yjcv2-blue-dark) !important;
		box-shadow: none !important;
	}

	body.yjcv2 .yjcv2-c-site-footer > .container {
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto !important;
		padding: 0 !important;
	}

	body.yjcv2 .yjcv2-c-footer-main {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 36px 28px !important;
	}

	body.yjcv2 .yjcv2-c-site-footer h2,
	body.yjcv2 .yjcv2-c-site-footer h3 {
		margin: 0 0 14px !important;
		color: #fff !important;
		font-size: 17px !important;
		line-height: 1.3 !important;
	}

	body.yjcv2 .yjcv2-c-site-footer p,
	body.yjcv2 .yjcv2-c-footer-link {
		color: rgba(255, 255, 255, 0.74) !important;
		font-size: 14px !important;
		line-height: 1.65 !important;
	}

	body.yjcv2 .yjcv2-c-footer-link {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		text-decoration: none;
	}

	body.yjcv2 .yjcv2-c-footer-legal {
		margin-top: 38px !important;
		padding-top: 22px !important;
		border-color: rgba(255, 255, 255, 0.18) !important;
	}

	body.yjcv2 .yjcv2-c-footer-legal > .flex {
		display: flex !important;
		flex-wrap: wrap;
		align-items: center;
		gap: 12px 24px !important;
	}

	body.yjcv2 .yjcv2-c-back-to-top {
		width: 48px !important;
		height: 48px !important;
		min-width: 48px !important;
		min-height: 48px !important;
		right: 20px !important;
		bottom: 20px !important;
		border-radius: 50% !important;
		background: var(--yjcv2-blue) !important;
		box-shadow: 0 12px 28px rgba(18, 104, 243, 0.28) !important;
	}

	/* Shared section primitives only apply after a component received a v2 hook. */
	body.yjcv2 .yjcv2-c-section {
		box-sizing: border-box;
		padding-top: var(--yjcv2-section-space) !important;
		padding-bottom: var(--yjcv2-section-space) !important;
	}

	body.yjcv2 .yjcv2-c-section > .container,
	body.yjcv2 .yjcv2-c-section > [class*="max-w-"] {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 760px !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding-right: var(--yjcv2-gutter) !important;
		padding-left: var(--yjcv2-gutter) !important;
	}

	body.yjcv2 .yjcv2-c-section-title {
		max-width: 680px;
		margin-top: 0 !important;
		margin-bottom: 18px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 34px !important;
		font-weight: 800 !important;
		line-height: 1.08 !important;
		letter-spacing: -0.035em !important;
	}

	body.yjcv2 .yjcv2-c-primary-cta,
	body.yjcv2 .yjcv2-c-product-primary-cta,
	body.yjcv2 .yjcv2-c-contact-submit {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		min-height: 52px !important;
		padding: 0 22px !important;
		border: 0 !important;
		border-radius: 10px !important;
		background: var(--yjcv2-blue-dark) !important;
		color: #fff !important;
		font-size: 15px !important;
		font-weight: 800 !important;
		line-height: 1.2 !important;
		text-decoration: none !important;
		box-shadow: none !important;
		transform: none !important;
	}

	/* Home hero retains all six slides, video, arrows, dots and HTMX CTA. */
	body.yjcv2-page--home .yjcv2-c-home-hero,
	body.yjcv2-page--landing .yjcv2-c-landing-hero {
		height: auto !important;
		min-height: min(700px, calc(100dvh - var(--yjcv2-header-height))) !important;
		background: #111827;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .h-screen,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .h-screen,
	body.yjcv2-page--home .yjcv2-c-home-hero > .relative > [data-slide],
	body.yjcv2-page--landing .yjcv2-c-landing-hero > .relative > [data-slide] {
		height: auto !important;
		min-height: min(700px, calc(100dvh - var(--yjcv2-header-height))) !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero [data-slide]:not(button),
	body.yjcv2-page--landing .yjcv2-c-landing-hero [data-slide]:not(button) {
		height: min(700px, calc(100dvh - var(--yjcv2-header-height))) !important;
		min-height: min(700px, calc(100dvh - var(--yjcv2-header-height))) !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero.yjcv2-hero--image-slide,
	body.yjcv2-page--landing .yjcv2-c-landing-hero.yjcv2-hero--image-slide {
		height: clamp(260px, 70vw, 340px) !important;
		min-height: clamp(260px, 70vw, 340px) !important;
		background: #070d18;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero.yjcv2-hero--image-slide .h-screen,
	body.yjcv2-page--landing .yjcv2-c-landing-hero.yjcv2-hero--image-slide .h-screen,
	body.yjcv2-page--home .yjcv2-c-home-hero.yjcv2-hero--image-slide [data-slide]:not(button),
	body.yjcv2-page--landing .yjcv2-c-landing-hero.yjcv2-hero--image-slide [data-slide]:not(button) {
		height: 100% !important;
		min-height: 0 !important;
		background: #070d18;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero.yjcv2-hero--image-slide .yjcv2-c-hero-image,
	body.yjcv2-page--landing .yjcv2-c-landing-hero.yjcv2-hero--image-slide .yjcv2-c-hero-image {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
		object-position: 50% 50% !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .container,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .container {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto !important;
		padding: 104px var(--yjcv2-gutter) 126px !important;
	}

	body.yjcv2-page--home .yjcv2-c-hero-title,
	body.yjcv2-page--landing .yjcv2-c-landing-hero h1 {
		max-width: 640px;
		margin: 0 0 20px !important;
		color: #fff !important;
		font-size: 48px !important;
		font-weight: 800 !important;
		line-height: 1.02 !important;
		letter-spacing: -0.045em !important;
		text-wrap: balance;
	}

	body.yjcv2-page--home .yjcv2-c-hero-lead,
	body.yjcv2-page--landing .yjcv2-c-landing-hero p {
		max-width: 620px;
		margin: 0 0 28px !important;
		color: rgba(255, 255, 255, 0.88) !important;
		font-size: 18px !important;
		line-height: 1.6 !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-carousel-prev,
	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-carousel-next,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-carousel-prev,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-carousel-next {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 46px !important;
		height: 46px !important;
		min-width: 46px !important;
		min-height: 46px !important;
		border: 1px solid rgba(255, 255, 255, 0.5) !important;
		border-radius: 50% !important;
		background: rgba(7, 20, 47, 0.42) !important;
		color: #fff !important;
		backdrop-filter: blur(8px);
		top: auto !important;
		bottom: 92px !important;
		transform: none !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero button[id^="dot-"],
	body.yjcv2-page--landing .yjcv2-c-landing-hero button[id^="dot-"] {
		position: relative;
		box-sizing: border-box;
		display: inline-grid !important;
		place-items: center;
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero button[id^="dot-"]::after,
	body.yjcv2-page--landing .yjcv2-c-landing-hero button[id^="dot-"]::after {
		content: "";
		display: block;
		width: 8px;
		height: 8px;
		border-radius: 999px;
		background: rgba(255, 255, 255, 0.55);
	}

	body.yjcv2-page--home .yjcv2-c-home-hero button[id^="dot-"].bg-white::after,
	body.yjcv2-page--landing .yjcv2-c-landing-hero button[id^="dot-"].bg-white::after {
		width: 24px;
		background: #fff;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-hero-controls-shell,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-hero-controls-shell {
		box-sizing: border-box;
		right: 0 !important;
		bottom: 12px !important;
		left: 0 !important;
		width: 100% !important;
		padding: 0 10px;
		transform: none !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-hero-controls,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-hero-controls {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px !important;
		align-items: center;
		width: 100%;
		min-width: 0;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-hero-dots,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-hero-dots {
		display: flex !important;
		gap: 0 !important;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		min-width: 0;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-hero-dots > button,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-hero-dots > button {
		width: 44px !important;
		min-width: 44px !important;
		margin-left: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-hero-counter,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-hero-counter {
		justify-self: end;
		margin-left: 0 !important;
		white-space: nowrap;
	}

	/* Home product explorer and content sections. */
	body.yjcv2-page--home .yjcv2-c-product-explorer {
		box-sizing: border-box;
		padding: var(--yjcv2-section-space) var(--yjcv2-gutter) !important;
		background: #fff !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer > [class*="max-w-"],
	body.yjcv2-page--home .yjcv2-c-product-explorer > .container {
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto !important;
		padding: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-selector-list {
		display: flex !important;
		gap: 8px !important;
		margin: 24px calc(var(--yjcv2-gutter) * -1) 30px !important;
		padding: 0 var(--yjcv2-gutter) 8px !important;
		overflow-x: auto;
		scroll-snap-type: x proximity;
		scrollbar-width: none;
	}

	body.yjcv2-page--home .yjcv2-c-product-selector-list::-webkit-scrollbar {
		display: none;
	}

	body.yjcv2-page--home .yjcv2-c-product-selector {
		flex: 0 0 auto !important;
		min-height: 44px !important;
		padding: 0 16px !important;
		border: 1px solid var(--yjcv2-line) !important;
		border-radius: 999px !important;
		background: #fff !important;
		color: var(--yjcv2-ink-soft) !important;
		font-size: 14px !important;
		font-weight: 700 !important;
		box-shadow: none !important;
		scroll-snap-align: start;
	}

	body.yjcv2-page--home .yjcv2-c-product-selector.yjcv2-is-selected {
		border-color: #93c5fd !important;
		background: #eff6ff !important;
		box-shadow: inset 3px 0 0 var(--yjcv2-blue);
	}

	body.yjcv2-page--home .yjcv2-c-case-control:not(.dot-indicator) {
		min-width: 44px !important;
		min-height: 44px !important;
	}

	body.yjcv2-page--home button.dot-indicator.yjcv2-c-case-dot {
		position: relative;
		display: inline-grid !important;
		place-items: center;
		box-sizing: border-box;
		width: 28px !important;
		height: 28px !important;
		min-width: 28px !important;
		min-height: 28px !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}

	body.yjcv2-page--home button.dot-indicator.yjcv2-c-case-dot::after {
		content: "";
		display: block;
		width: 12px;
		height: 12px;
		border-radius: 999px;
		background: #d1d5db;
	}

	body.yjcv2-page--home button.dot-indicator.yjcv2-c-case-dot[aria-current="true"]::after {
		background: var(--yjcv2-blue);
	}

	body.yjcv2-page--home .yjcv2-c-news-link {
		display: inline-flex !important;
		align-items: center;
		min-height: 44px !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-selector[aria-current="true"],
	body.yjcv2-page--home .yjcv2-c-product-selector.active {
		border-color: var(--yjcv2-blue) !important;
		background: var(--yjcv2-blue-soft) !important;
		color: var(--yjcv2-blue) !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display {
		box-sizing: border-box;
		width: 100%;
		min-width: 0;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display .grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 28px !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display img {
		width: 100%;
		height: auto !important;
		max-height: 520px;
		object-fit: contain !important;
	}

	/* Keep every download card's file badge and icon in one fixed action column. */
	body.yjcv2-page--home .yjcv2-c-product-explorer-display a[download] {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 64px !important;
		column-gap: 4px !important;
		align-items: center !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display a[download] > div:first-child {
		min-width: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display a[download] > div:first-child > div:first-child {
		box-sizing: border-box;
		flex: 0 0 32px !important;
		width: 32px !important;
		height: 32px !important;
		margin-right: 8px !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display a[download] > div:first-child > span {
		min-width: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display a[download] > div:last-child {
		box-sizing: border-box;
		display: flex !important;
		flex: 0 0 64px !important;
		justify-content: space-between !important;
		width: 64px !important;
		min-width: 64px !important;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display a[download] > div:last-child > span {
		box-sizing: border-box;
		width: 40px !important;
		min-width: 40px !important;
		margin-right: 0 !important;
		text-align: center;
	}

	body.yjcv2-page--home .yjcv2-c-product-explorer-display a[download] > div:last-child > svg {
		flex: 0 0 20px !important;
	}

	body.yjcv2-page--home [data-yjcv2-section="case-studies"] .grid,
	body.yjcv2-page--home [data-yjcv2-section="about"] .grid,
	body.yjcv2-page--home [data-yjcv2-section="news"] .grid,
	body.yjcv2-page--home [data-yjcv2-section="cta"] .grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 28px !important;
	}

	body.yjcv2-page--home [data-yjcv2-section="case-studies"] img,
	body.yjcv2-page--home [data-yjcv2-section="about"] img,
	body.yjcv2-page--home [data-yjcv2-section="news"] img {
		height: auto !important;
		border-radius: var(--yjcv2-radius);
	}

	/* Customer case studies: use a landscape stage with a horizontal thumbnail rail. */
	body.yjcv2-page--home .yjcv2-c-case-viewport {
		display: block !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-case-shell {
		box-sizing: border-box;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-case-gallery {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 14px !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-case-stage {
		position: relative;
		box-sizing: border-box;
		flex: 0 0 auto !important;
		width: 100% !important;
		height: auto !important;
		min-width: 0 !important;
		min-height: 0 !important;
		aspect-ratio: 16 / 9;
		overflow: hidden;
		border: 1px solid rgba(148, 163, 184, 0.24);
		border-radius: 16px;
		background: #eef2f7;
		box-shadow: 0 12px 28px rgba(7, 20, 47, 0.10);
	}

	body.yjcv2-page--home .yjcv2-c-case-main,
	body.yjcv2-page--home .yjcv2-c-case-main > *,
	body.yjcv2-page--home .yjcv2-c-case-media-frame {
		box-sizing: border-box;
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
	}

	body.yjcv2-page--home .yjcv2-c-case-media-frame {
		padding: 0 !important;
		transform: none !important;
	}

	body.yjcv2-page--home .yjcv2-c-section--case-studies img.yjcv2-c-case-image {
		display: block;
		width: 100% !important;
		height: 100% !important;
		max-height: none !important;
		border-radius: 15px !important;
		object-fit: contain !important;
		object-position: center !important;
	}

	body.yjcv2-page--home .yjcv2-c-case-thumbnails {
		box-sizing: border-box;
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 10px !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 4px 68px 10px 2px !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		overscroll-behavior-inline: contain;
		scroll-padding-inline: 2px;
		scroll-snap-type: x proximity;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	body.yjcv2-page--home .yjcv2-c-case-thumbnails::-webkit-scrollbar {
		display: none;
	}

	body.yjcv2-page--home .yjcv2-c-case-thumbnails .yjcv2-c-case-thumbnail {
		box-sizing: border-box;
		flex: 0 0 86px !important;
		width: 86px !important;
		height: 64px !important;
		min-width: 86px !important;
		min-height: 64px !important;
		margin: 0 !important;
		border-radius: 10px !important;
		scroll-snap-align: start;
	}

	body.yjcv2-page--home .yjcv2-c-case-thumbnails .yjcv2-c-case-thumbnail > img.yjcv2-c-case-thumbnail-image {
		display: block;
		width: 100% !important;
		height: 100% !important;
		max-height: none !important;
		border-radius: 8px !important;
		object-fit: cover !important;
		object-position: center !important;
	}

	body.yjcv2-page--home .yjcv2-c-case-dots {
		box-sizing: border-box;
		margin-top: 10px !important;
	}

	body.yjcv2-page--home [data-yjcv2-section="certifications"] .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}

	body.yjcv2-page--home [data-yjcv2-section="news"] .news-item {
		min-height: 52px;
		padding: 16px 0 !important;
		border-bottom: 1px solid var(--yjcv2-line);
		cursor: pointer;
	}

	/* Product archive. */
	body.yjcv2-page--product-archive .yjcv2-c-product-archive-hero {
		height: 220px !important;
		min-height: 220px !important;
		background-position: center !important;
		background-size: cover !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-archive-intro {
		box-sizing: border-box;
		padding: 52px var(--yjcv2-gutter) 34px !important;
		background: #fff !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-archive-intro > .container {
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto !important;
		padding: 0 !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-archive-intro h1 {
		margin: 0 0 18px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 42px !important;
		font-weight: 800 !important;
		line-height: 1.05 !important;
		letter-spacing: -0.04em !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-archive-intro p,
	body.yjcv2-page--product-archive .yjcv2-c-product-archive-intro .intro-text {
		max-width: 680px;
		margin: 0 !important;
		color: var(--yjcv2-ink-soft) !important;
		font-size: 17px !important;
		line-height: 1.7 !important;
		text-align: left !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-feed {
		box-sizing: border-box;
		padding: 24px var(--yjcv2-gutter) 64px !important;
		background: #fff !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-feed > [class*="w-full"],
	body.yjcv2-page--product-archive .yjcv2-c-product-feed > .container {
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto !important;
		padding: 0 !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-feed .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 34px 24px !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card {
		min-width: 0;
		padding: 0 0 30px !important;
		border: 0 !important;
		border-bottom: 1px solid var(--yjcv2-line) !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card > .flex {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 18px !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card-media {
		width: 100% !important;
		max-width: none !important;
		aspect-ratio: 4 / 3;
		padding: 16px;
		border-radius: var(--yjcv2-radius);
		background: var(--yjcv2-surface);
		overflow: hidden;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card-media img {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card-title {
		margin: 0 0 10px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 24px !important;
		line-height: 1.15 !important;
		letter-spacing: -0.025em !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card-summary {
		display: block !important;
		overflow: visible !important;
		-webkit-box-orient: initial !important;
		-webkit-line-clamp: unset !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card-link {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		min-height: 50px !important;
		margin-top: 18px;
		padding: 0 18px !important;
		border-radius: 10px !important;
		background: var(--yjcv2-blue) !important;
		color: #fff !important;
		font-size: 15px !important;
		font-weight: 800 !important;
		text-decoration: none !important;
	}

	body.yjcv2-page--product-archive [data-yjcv2-section="archive-about"] .grid,
	body.yjcv2-page--product-archive [data-yjcv2-section="archive-benefits"] .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 24px !important;
	}

	/* Product detail. */
	body.yjcv2-page--product .yjcv2-c-product-shell {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 820px !important;
		margin: 0 auto !important;
		padding: 42px var(--yjcv2-gutter) 64px !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-layout {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 38px !important;
		width: 100%;
		max-width: 100%;
	}

	body.yjcv2-page--product .yjcv2-c-product-gallery {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	body.yjcv2-page--product .yjcv2-c-product-gallery [class*="swiper-main-"] {
		box-sizing: border-box;
		width: 100% !important;
		aspect-ratio: 4 / 3;
		height: auto !important;
		border: 1px solid var(--yjcv2-line);
		border-radius: var(--yjcv2-radius) !important;
		background: var(--yjcv2-surface);
		overflow: hidden;
	}

	body.yjcv2-page--product .yjcv2-c-product-gallery [class*="swiper-main-"] .swiper-slide {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100% !important;
		height: 100% !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-gallery [class*="swiper-main-"] img {
		width: 100% !important;
		height: 100% !important;
		padding: 14px;
		object-fit: contain !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-gallery [class*="swiper-thumb-"] {
		margin-top: 12px;
	}

	body.yjcv2-page--product .yjcv2-c-product-gallery [class*="swiper-thumb-"] .swiper-slide {
		width: 72px !important;
		height: 72px !important;
		border-radius: 9px !important;
		overflow: hidden;
	}

	body.yjcv2-page--product .yjcv2-c-product-title {
		margin: 0 0 16px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 42px !important;
		font-weight: 800 !important;
		line-height: 1.04 !important;
		letter-spacing: -0.04em !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-info p {
		color: var(--yjcv2-ink-soft) !important;
		font-size: 17px !important;
		line-height: 1.7 !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-info .grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 0 !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-resource {
		display: grid !important;
		grid-template-columns: 48px minmax(0, 1fr) auto !important;
		grid-template-rows: auto auto !important;
		align-items: center !important;
		gap: 12px !important;
		min-height: 72px !important;
		padding: 14px 0 !important;
		border: 0 !important;
		border-bottom: 1px solid var(--yjcv2-line) !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		text-decoration: none !important;
	}

	body.yjcv2-page--product .yjcv2-c-resource-icon {
		grid-column: 1;
		grid-row: 1 / 3;
		align-self: center;
		margin: 0 !important;
	}

	body.yjcv2-page--product .yjcv2-c-resource-title {
		grid-column: 2;
		grid-row: 1;
		align-self: end;
		margin: 0 !important;
	}

	body.yjcv2-page--product .yjcv2-c-resource-description {
		grid-column: 2;
		grid-row: 2;
		align-self: start;
		margin: 4px 0 0 !important;
		font-size: 13px !important;
		line-height: 1.45 !important;
	}

	body.yjcv2-page--product .yjcv2-c-resource-download {
		grid-column: 3;
		grid-row: 1 / 3;
		align-self: center;
	}

	body.yjcv2-page--product .yjcv2-c-product-primary-cta {
		width: 100% !important;
		margin-top: 8px;
	}

	body.yjcv2-page--product [data-yjcv2-section="product-resources"],
	body.yjcv2-page--product [data-yjcv2-section="related-products"] {
		padding-right: var(--yjcv2-gutter) !important;
		padding-left: var(--yjcv2-gutter) !important;
	}

	body.yjcv2-page--product [data-yjcv2-section="product-resources"] .grid,
	body.yjcv2-page--product [data-yjcv2-section="related-products"] .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 20px !important;
	}

	/* Blog index: feed first, complete author/recent-post sidebar afterwards. */
	body.yjcv2-page--blog-index .yjcv2-c-blog-main {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 820px !important;
		margin: 0 auto !important;
		padding: 52px var(--yjcv2-gutter) 72px !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-layout {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 54px !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-feed {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-feed > header h1,
	body.yjcv2-page--blog-index .yjcv2-c-blog-main > header h1 {
		margin: 0 0 16px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 44px !important;
		line-height: 1.04 !important;
		letter-spacing: -0.045em !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-grid {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 42px 24px !important;
		width: 100%;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-card {
		display: flex !important;
		flex-direction: column;
		min-width: 0;
		padding: 0 0 28px !important;
		border: 0 !important;
		border-bottom: 1px solid var(--yjcv2-line) !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-card-media {
		display: block;
		width: 100% !important;
		aspect-ratio: 3 / 2 !important;
		height: auto !important;
		margin-bottom: 18px;
		border-radius: var(--yjcv2-radius);
		overflow: hidden;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-card-media img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-no-clamp {
		display: block !important;
		overflow: visible !important;
		-webkit-box-orient: initial !important;
		-webkit-line-clamp: unset !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-card-title {
		margin: 0 0 12px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 24px !important;
		line-height: 1.18 !important;
		letter-spacing: -0.025em !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-card p {
		color: var(--yjcv2-ink-soft) !important;
		font-size: 15px !important;
		line-height: 1.65 !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-read-more {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		margin-top: auto;
		color: var(--yjcv2-blue);
		font-size: 15px;
		font-weight: 800;
		text-decoration: none;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-read-more::after {
		content: " →";
		margin-left: 6px;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-sidebar {
		display: block !important;
		box-sizing: border-box;
		width: 100% !important;
		max-width: none !important;
		padding: 28px !important;
		border: 1px solid var(--yjcv2-line) !important;
		border-radius: var(--yjcv2-radius) !important;
		background: var(--yjcv2-surface) !important;
		box-shadow: none !important;
	}

	/* Article typography and semantic responsive tables. */
	body.yjcv2-page--article .yjcv2-c-article-shell {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 820px !important;
		margin: 0 auto !important;
		padding: 48px var(--yjcv2-gutter) 72px !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-layout {
		display: block !important;
		width: 100%;
	}

	body.yjcv2-page--article .yjcv2-c-article {
		width: 100% !important;
		max-width: 720px !important;
		margin: 0 auto !important;
		padding: 0 !important;
	}

	body.yjcv2-page--article .yjcv2-c-desktop-toc {
		display: none !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-header {
		margin: 0 0 32px !important;
		padding: 0 !important;
		text-align: left !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-title {
		max-width: 720px !important;
		margin: 18px 0 24px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 48px !important;
		font-weight: 800 !important;
		line-height: 1.04 !important;
		letter-spacing: -0.045em !important;
		text-align: left !important;
		text-wrap: balance;
	}

	body.yjcv2-page--article .yjcv2-c-article-header .flex.flex-wrap {
		justify-content: flex-start !important;
		gap: 10px 14px !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-media {
		width: 100% !important;
		max-width: 720px !important;
		aspect-ratio: 3 / 2;
		height: auto !important;
		margin: 0 auto !important;
		border-radius: var(--yjcv2-radius) !important;
		overflow: hidden;
	}

	body.yjcv2-page--article .yjcv2-c-article-media-shell {
		margin-bottom: 36px !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-media img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc {
		display: block;
		margin: 0 0 36px;
		border: 1px solid var(--yjcv2-line);
		border-radius: 12px;
		background: var(--yjcv2-surface);
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc summary {
		position: relative;
		display: flex;
		align-items: center;
		min-height: 54px;
		padding: 0 48px 0 18px;
		color: var(--yjcv2-ink);
		font-size: 16px;
		font-weight: 800;
		cursor: pointer;
		list-style: none;
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc summary::-webkit-details-marker {
		display: none;
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc summary::after {
		content: "+";
		position: absolute;
		right: 18px;
		font-size: 22px;
		font-weight: 400;
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc[open] summary::after {
		content: "−";
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc ol {
		margin: 0;
		padding: 0 20px 18px 38px;
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc li {
		margin: 9px 0;
	}

	body.yjcv2-page--article .yjcv2-c-mobile-toc a {
		color: var(--yjcv2-blue-dark);
		font-size: 14px;
		line-height: 1.45;
		text-decoration: none;
	}

	body.yjcv2-page--article .yjcv2-c-richtext {
		width: 100% !important;
		max-width: 720px !important;
		color: var(--yjcv2-ink-soft) !important;
		font-size: 18px !important;
		line-height: 1.75 !important;
	}

	body.yjcv2-page--article .yjcv2-c-richtext p,
	body.yjcv2-page--article .yjcv2-c-richtext li {
		color: var(--yjcv2-ink-soft) !important;
		font-size: 18px !important;
		line-height: 1.75 !important;
	}

	body.yjcv2-page--article .yjcv2-c-richtext h2 {
		margin: 54px 0 18px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 34px !important;
		font-weight: 800 !important;
		line-height: 1.14 !important;
		letter-spacing: -0.035em !important;
	}

	body.yjcv2-page--article .yjcv2-c-richtext h3 {
		margin: 38px 0 14px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 25px !important;
		font-weight: 800 !important;
		line-height: 1.2 !important;
		letter-spacing: -0.025em !important;
	}

	body.yjcv2-page--article .yjcv2-c-richtext img {
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		margin-right: auto;
		margin-left: auto;
		border-radius: 10px;
	}

	body.yjcv2-page--article .yjcv2-c-richtext pre,
	body.yjcv2-page--article .yjcv2-c-richtext code {
		max-width: 100%;
		white-space: pre-wrap;
		word-break: break-word;
	}

	body.yjcv2-page--article .yjcv2-c-article-table-shell {
		width: 100%;
		margin: 32px 0 40px;
	}

	body.yjcv2-page--article .yjcv2-c-article-table-hint {
		margin: 0 0 10px !important;
		color: #667085 !important;
		font-size: 13px !important;
		line-height: 1.45 !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-table-scroll {
		width: 100%;
		max-width: 100%;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		-webkit-overflow-scrolling: touch;
	}

	body.yjcv2-page--article .yjcv2-c-article-table {
		border-collapse: collapse !important;
		background: #fff;
		font-size: 15px !important;
		line-height: 1.5 !important;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="scroll"] .yjcv2-c-article-table {
		width: 680px !important;
		min-width: 680px !important;
		table-layout: fixed !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-table th,
	body.yjcv2-page--article .yjcv2-c-article-table td {
		padding: 13px 14px !important;
		border: 1px solid var(--yjcv2-line) !important;
		vertical-align: top;
	}

	/* About preserves the interactive map and offers the same 20 regions as touch-friendly controls. */
	body.yjcv2-page--about .yjcv2-c-section .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 24px !important;
	}

	body.yjcv2-page--about .yjcv2-c-section p,
	body.yjcv2-page--about .yjcv2-c-section li {
		color: var(--yjcv2-ink-soft) !important;
		font-size: 17px !important;
		line-height: 1.72 !important;
	}

	body.yjcv2-page--about .yjcv2-c-about-intro-copy p {
		text-align: left !important;
	}

	body.yjcv2-page--about .yjcv2-c-section--global-network iframe {
		width: 100% !important;
		height: 360px !important;
	}

	body.yjcv2-page--about .yjcv2-c-mobile-country-list {
		display: block;
		max-width: 760px;
		margin: 24px auto 0;
		padding: 0 var(--yjcv2-gutter);
	}

	body.yjcv2-page--about .yjcv2-c-mobile-country-list > summary {
		display: flex;
		align-items: center;
		min-height: 52px;
		padding: 0 16px;
		border: 1px solid var(--yjcv2-line);
		border-radius: 10px;
		background: #fff;
		color: var(--yjcv2-ink);
		font-size: 16px;
		font-weight: 800;
		cursor: pointer;
	}

	body.yjcv2-page--about .yjcv2-c-country-grid {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
		padding: 12px 0 0;
	}

	body.yjcv2-page--about .yjcv2-c-country-grid button {
		min-height: 46px;
		padding: 8px 10px;
		border: 1px solid var(--yjcv2-line);
		border-radius: 9px;
		background: var(--yjcv2-surface);
		color: var(--yjcv2-ink-soft);
		font-size: 13px;
		font-weight: 700;
	}

	/* Contact: same HTMX form and hidden fields, single-column presentation. */
	body.yjcv2-page--contact .yjcv2-c-contact {
		box-sizing: border-box;
		min-height: 0 !important;
		padding: 52px var(--yjcv2-gutter) 72px !important;
		background: var(--yjcv2-surface) !important;
	}

	body.yjcv2-page--contact .yjcv2-c-contact > [class*="max-w-"] {
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto !important;
		padding: 0 !important;
	}

	body.yjcv2-page--contact .yjcv2-c-contact-layout {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 34px !important;
	}

	body.yjcv2-page--contact .yjcv2-c-contact-form-card,
	body.yjcv2-page--contact .yjcv2-c-contact-info {
		box-sizing: border-box;
		padding: 28px !important;
		border: 1px solid var(--yjcv2-line) !important;
		border-radius: var(--yjcv2-radius) !important;
		background: #fff !important;
		box-shadow: none !important;
	}

	body.yjcv2-page--contact .yjcv2-c-contact-form label {
		color: var(--yjcv2-ink) !important;
		font-size: 14px !important;
		font-weight: 700 !important;
	}

	body.yjcv2-page--contact .yjcv2-c-field:not([type="hidden"]):not([name="_zeroy_hp"]) {
		box-sizing: border-box;
		width: 100% !important;
		min-height: 52px !important;
		padding: 13px 14px !important;
		border: 1px solid #cfd6e0 !important;
		border-radius: 9px !important;
		background: #fff !important;
		color: var(--yjcv2-ink) !important;
		font-size: 16px !important;
		box-shadow: none !important;
	}

	body.yjcv2-page--contact .yjcv2-c-contact-form textarea.yjcv2-c-field {
		min-height: 140px !important;
		resize: vertical;
	}

	body.yjcv2-page--contact .yjcv2-c-contact-submit {
		width: 100% !important;
	}

	/* Landing keeps its intentional header/footer exclusion and all page modules. */
	body.yjcv2-page--landing .yjcv2-c-landing {
		width: 100%;
		max-width: 100%;
	}

	body.yjcv2-page--landing .yjcv2-c-section {
		padding-right: var(--yjcv2-gutter) !important;
		padding-left: var(--yjcv2-gutter) !important;
	}

	body.yjcv2-page--landing .yjcv2-c-section > [class*="max-w-"],
	body.yjcv2-page--landing .yjcv2-c-section > .container {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	body.yjcv2-page--landing [data-yjcv2-section="product-range"] .grid,
	body.yjcv2-page--landing [data-yjcv2-section="success-stories"] .grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 24px !important;
	}

	body.yjcv2-page--landing [data-yjcv2-section="about"] .grid,
	body.yjcv2-page--landing [data-yjcv2-section="contact"] .grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 28px !important;
	}

	body.yjcv2-page--landing [data-yjcv2-section="contact"] input:not([type="hidden"]):not([name="_zeroy_hp"]):not([name="_zeroy_success_html"]),
	body.yjcv2-page--landing [data-yjcv2-section="contact"] select,
	body.yjcv2-page--landing [data-yjcv2-section="contact"] textarea:not([name="_zeroy_success_html"]) {
		box-sizing: border-box;
		width: 100% !important;
		min-height: 52px !important;
		font-size: 16px !important;
	}

	body.yjcv2-page--landing .yjcv2-c-landing-action {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		min-height: 44px !important;
		padding-top: 10px !important;
		padding-bottom: 10px !important;
	}

	/* Legal, thank-you, search and 404. */
	body.yjcv2-page--legal .yjcv2-c-legal-content {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto !important;
		padding: 52px var(--yjcv2-gutter) 72px !important;
	}

	body.yjcv2-page--legal .yjcv2-c-legal-title {
		margin: 0 0 30px !important;
		color: #fff !important;
		font-size: 44px !important;
		line-height: 1.05 !important;
		letter-spacing: -0.04em !important;
	}

	body.yjcv2-page--legal .yjcv2-c-legal-content h2 {
		margin: 38px 0 14px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 27px !important;
		line-height: 1.2 !important;
	}

	body.yjcv2-page--legal .yjcv2-c-legal-content p,
	body.yjcv2-page--legal .yjcv2-c-legal-content li {
		color: var(--yjcv2-ink-soft) !important;
		font-size: 17px !important;
		line-height: 1.72 !important;
	}

	body.yjcv2-page--thank-you .yjcv2-c-thank-you,
	body.yjcv2-page--404 .yjcv2-c-404 {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 760px !important;
		min-height: 0 !important;
		margin: 0 auto !important;
		padding: 64px var(--yjcv2-gutter) 80px !important;
	}

	body.yjcv2-page--thank-you .yjcv2-c-thank-you-title,
	body.yjcv2-page--404 .yjcv2-c-404 h1 {
		font-size: 48px !important;
		line-height: 1.04 !important;
		letter-spacing: -0.045em !important;
	}

	body.yjcv2-page--404 .yjcv2-c-404 h1,
	body.yjcv2-page--404 .yjcv2-c-404 h2,
	body.yjcv2-page--404 .yjcv2-c-404 h3 {
		color: #fff !important;
	}

	body.yjcv2-page--404 .yjcv2-c-404 p {
		color: rgba(255, 255, 255, 0.78) !important;
		font-size: 16px !important;
		line-height: 1.65 !important;
	}

	body.yjcv2-page--404 .yjcv2-c-404 a:not([class*="bg-"]) {
		color: rgba(255, 255, 255, 0.9) !important;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-heading,
	body.yjcv2-page--search-empty .yjcv2-c-search-form,
	body.yjcv2-page--search-results .yjcv2-c-search-card,
	body.yjcv2-page--search-empty > article,
	body.yjcv2-page--search-results .yjcv2-c-search-pagination {
		box-sizing: border-box;
		width: calc(100% - (var(--yjcv2-gutter) * 2)) !important;
		max-width: 760px !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-heading {
		padding: 52px 0 28px;
	}

	body.yjcv2-page--search-empty h1 {
		margin: 0 0 18px !important;
		color: var(--yjcv2-ink) !important;
		font-size: 36px !important;
		line-height: 1.12 !important;
		letter-spacing: -0.035em !important;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-heading p {
		margin: 0 0 8px;
		color: var(--yjcv2-blue);
		font-size: 14px;
		font-weight: 800;
		text-transform: uppercase;
		letter-spacing: 0.08em;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-heading h1 {
		margin: 0;
		font-size: 42px;
		line-height: 1.05;
		letter-spacing: -0.04em;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-card {
		padding: 28px 0 !important;
		border-bottom: 1px solid var(--yjcv2-line);
	}

	body.yjcv2-page--search-results .yjcv2-c-search-card h2 {
		margin: 0 0 12px !important;
		font-size: 26px !important;
		line-height: 1.18 !important;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-card p {
		color: var(--yjcv2-ink-soft) !important;
		font-size: 16px !important;
		line-height: 1.65 !important;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-card .entry-footer {
		margin-top: 16px !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-card .entry-footer a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		color: var(--yjcv2-blue) !important;
		font-size: 15px !important;
		font-weight: 800;
		text-decoration: none;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-pagination {
		padding: 32px 0 64px;
	}
}

@media (max-width: 767.98px) {
	body.yjcv2 {
		--yjcv2-gutter: 20px;
		--yjcv2-header-height: 68px;
		--yjcv2-section-space: 56px;
	}

	body.yjcv2 .yjcv2-c-brand-logo {
		width: 36px !important;
		height: 42px !important;
		max-width: 36px;
	}

	body.yjcv2 .yjcv2-c-brand-wordmark {
		font-size: 23px !important;
	}

	body.yjcv2 .yjcv2-c-search-toggle,
	body.yjcv2 .yjcv2-c-nav-toggle {
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
	}

	body.yjcv2 .yjcv2-c-search-row {
		grid-template-columns: minmax(0, 1fr);
	}

	body.yjcv2 .yjcv2-c-search-submit {
		width: 100%;
	}

	body.yjcv2 .yjcv2-c-mobile-product-links {
		grid-template-columns: minmax(0, 1fr);
	}

	body.yjcv2 .yjcv2-c-footer-main {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 30px !important;
	}

	body.yjcv2 .yjcv2-c-footer-legal > .flex {
		flex-direction: column;
		align-items: flex-start !important;
	}

	body.yjcv2 .yjcv2-c-section-title {
		font-size: 31px !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero,
	body.yjcv2-page--landing .yjcv2-c-landing-hero,
	body.yjcv2-page--home .yjcv2-c-home-hero .h-screen,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .h-screen,
	body.yjcv2-page--home .yjcv2-c-home-hero > .relative > [data-slide],
	body.yjcv2-page--landing .yjcv2-c-landing-hero > .relative > [data-slide] {
		min-height: min(660px, calc(100dvh - var(--yjcv2-header-height))) !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero [data-slide]:not(button),
	body.yjcv2-page--landing .yjcv2-c-landing-hero [data-slide]:not(button) {
		height: min(660px, calc(100dvh - var(--yjcv2-header-height))) !important;
		min-height: min(660px, calc(100dvh - var(--yjcv2-header-height))) !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .container,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .container {
		padding-top: 86px !important;
		padding-bottom: 116px !important;
	}

	body.yjcv2-page--home .yjcv2-c-hero-title,
	body.yjcv2-page--landing .yjcv2-c-landing-hero h1 {
		font-size: 40px !important;
	}

	body.yjcv2-page--home .yjcv2-c-hero-lead,
	body.yjcv2-page--landing .yjcv2-c-landing-hero p {
		font-size: 17px !important;
		line-height: 1.58 !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-carousel-prev,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-carousel-prev {
		left: 14px !important;
	}

	body.yjcv2-page--home .yjcv2-c-home-hero .yjcv2-c-carousel-next,
	body.yjcv2-page--landing .yjcv2-c-landing-hero .yjcv2-c-carousel-next {
		right: 14px !important;
	}

	body.yjcv2-page--home [data-yjcv2-section="certifications"] .grid,
	body.yjcv2-page--product-archive .yjcv2-c-product-feed .grid,
	body.yjcv2-page--product-archive [data-yjcv2-section="archive-about"] .grid,
	body.yjcv2-page--product-archive [data-yjcv2-section="archive-benefits"] .grid,
	body.yjcv2-page--product [data-yjcv2-section="product-resources"] .grid,
	body.yjcv2-page--product [data-yjcv2-section="related-products"] .grid,
	body.yjcv2-page--blog-index .yjcv2-c-blog-grid,
	body.yjcv2-page--about .yjcv2-c-section .grid,
	body.yjcv2-page--landing [data-yjcv2-section="product-range"] .grid,
	body.yjcv2-page--landing [data-yjcv2-section="success-stories"] .grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-archive-hero {
		height: 180px !important;
		min-height: 180px !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-archive-intro h1,
	body.yjcv2-page--product .yjcv2-c-product-title,
	body.yjcv2-page--blog-index .yjcv2-c-blog-feed > header h1,
	body.yjcv2-page--blog-index .yjcv2-c-blog-main > header h1,
	body.yjcv2-page--legal .yjcv2-c-legal-title {
		font-size: 36px !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card {
		padding-bottom: 32px !important;
	}

	body.yjcv2-page--product-archive .yjcv2-c-product-card-link {
		width: 100% !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-shell {
		padding-top: 32px !important;
	}

	body.yjcv2-page--product .yjcv2-c-product-resource {
		grid-template-columns: 44px minmax(0, 1fr) auto !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-main {
		padding-top: 42px !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-card-title {
		font-size: 25px !important;
	}

	body.yjcv2-page--blog-index .yjcv2-c-blog-sidebar {
		padding: 22px !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-shell {
		padding-top: 36px !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-title {
		font-size: 36px !important;
		line-height: 1.08 !important;
		letter-spacing: -0.038em !important;
		text-wrap: pretty;
	}

	body.yjcv2-page--article .yjcv2-c-richtext,
	body.yjcv2-page--article .yjcv2-c-richtext p,
	body.yjcv2-page--article .yjcv2-c-richtext li {
		font-size: 17px !important;
		line-height: 1.72 !important;
	}

	body.yjcv2-page--article .yjcv2-c-richtext h2 {
		font-size: 30px !important;
	}

	body.yjcv2-page--article .yjcv2-c-richtext h3 {
		font-size: 23px !important;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table-scroll {
		overflow: visible;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table,
	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table tbody {
		display: block !important;
		width: 100% !important;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table thead {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip: rect(0 0 0 0) !important;
		white-space: nowrap !important;
		border: 0 !important;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table tr {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		margin: 0 0 14px;
		border: 1px solid var(--yjcv2-line);
		border-radius: 12px;
		background: #fff;
		overflow: hidden;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table td {
		display: block !important;
		min-width: 0;
		padding: 14px !important;
		border: 0 !important;
		color: var(--yjcv2-ink-soft);
		font-size: 14px !important;
		line-height: 1.5 !important;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table td:first-child {
		grid-column: 1 / -1;
		padding: 13px 14px !important;
		background: var(--yjcv2-blue-dark);
		color: #fff;
		font-weight: 800;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table td:not(:first-child)::before {
		content: attr(data-yjcv2-column);
		display: block;
		margin-bottom: 6px;
		color: var(--yjcv2-blue);
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	html.yjcv2-js body.yjcv2-page--about .yjcv2-c-section--global-network button.pulse-animation {
		display: none !important;
	}

	body.yjcv2-page--about .yjcv2-c-country-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.yjcv2-page--contact .yjcv2-c-contact-form-card,
	body.yjcv2-page--contact .yjcv2-c-contact-info {
		padding: 22px !important;
	}

	body.yjcv2-page--thank-you .yjcv2-c-thank-you-title,
	body.yjcv2-page--404 .yjcv2-c-404 h1 {
		font-size: 40px !important;
	}

	body.yjcv2-page--search-results .yjcv2-c-search-heading h1 {
		font-size: 36px;
	}
}

@media (max-width: 374.98px) {
	body.yjcv2 {
		--yjcv2-gutter: 16px;
	}

	body.yjcv2 .yjcv2-c-brand-wordmark {
		font-size: 20px !important;
	}

	body.yjcv2 .yjcv2-c-brand-logo {
		width: 32px !important;
		max-width: 32px;
	}

	body.yjcv2 .yjcv2-c-brand {
		min-height: 44px;
	}

	body.yjcv2 .yjcv2-c-header-controls {
		gap: 6px !important;
	}

	body.yjcv2 .yjcv2-c-search-toggle,
	body.yjcv2 .yjcv2-c-nav-toggle {
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
	}

	body.yjcv2-page--home .yjcv2-c-hero-title,
	body.yjcv2-page--landing .yjcv2-c-landing-hero h1 {
		font-size: 36px !important;
	}

	body.yjcv2-page--article .yjcv2-c-article-title {
		font-size: 33px !important;
	}

	body.yjcv2-page--article [data-yjcv2-table-mode="cards"] .yjcv2-c-article-table tr {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* HTMX dialogs keep the original form and endpoint; only the mobile presentation changes. */
@media (max-width: 1023.98px) {
	body.yjcv2.yjcv2-modal-open {
		overflow: hidden !important;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog {
		box-sizing: border-box;
		align-items: center !important;
		justify-content: center !important;
		padding:
			max(16px, env(safe-area-inset-top))
			max(16px, env(safe-area-inset-right))
			max(16px, env(safe-area-inset-bottom))
			max(16px, env(safe-area-inset-left)) !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		z-index: 10000 !important;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog > :first-child {
		box-sizing: border-box;
		position: relative;
		width: min(100%, 560px) !important;
		max-width: 560px !important;
		max-height: calc(100dvh - 32px) !important;
		margin: auto !important;
		padding: 28px 22px 24px !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		border-radius: 18px !important;
		background: #fff;
		box-shadow: 0 24px 80px rgba(15, 23, 42, 0.32);
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog h1,
	body.yjcv2 #modal-overlay.yjcv2-c-dialog h2,
	body.yjcv2 #modal-overlay.yjcv2-c-dialog h3 {
		padding-right: 48px;
		font-size: clamp(25px, 7vw, 32px) !important;
		line-height: 1.16 !important;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog .yjcv2-c-dialog-close {
		position: absolute !important;
		top: 8px !important;
		right: 8px !important;
		display: inline-grid !important;
		place-items: center;
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
		padding: 0 !important;
		border-radius: 999px !important;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog .yjcv2-c-dialog-form {
		display: grid;
		gap: 16px;
		width: 100%;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog .yjcv2-c-dialog-field {
		box-sizing: border-box;
		width: 100% !important;
		min-height: 52px !important;
		padding: 13px 14px !important;
		border: 1px solid #cbd5e1 !important;
		border-radius: 10px !important;
		background: #fff !important;
		color: #0f172a !important;
		font-size: 16px !important;
		line-height: 1.45 !important;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog textarea.yjcv2-c-dialog-field {
		min-height: 140px !important;
		resize: vertical;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog .yjcv2-c-dialog-submit {
		width: 100% !important;
		min-height: 52px !important;
		padding: 14px 18px !important;
		border-radius: 10px !important;
		font-size: 16px !important;
		font-weight: 800 !important;
	}

	body.yjcv2 #modal-overlay.yjcv2-c-dialog .yjcv2-c-dialog-field:focus-visible,
	body.yjcv2 #modal-overlay.yjcv2-c-dialog button:focus-visible,
	body.yjcv2 #modal-overlay.yjcv2-c-dialog a:focus-visible {
		outline: 3px solid rgba(37, 99, 235, 0.36) !important;
		outline-offset: 2px !important;
	}
}
