/*
 * QY Product Manager – Corporate Product Detail Layout
 * Frontend-only redesign. All selectors remain scoped to .qy-product-template.
 */
.qy-product-template {
	--qy-accent: #f17c3b;
	--qy-navy: #0b2f55;
	--qy-navy-deep: #071f38;
	--qy-heading: #172230;
	--qy-text: #2f3945;
	--qy-muted: #697481;
	--qy-line: #dfe5ea;
	--qy-line-strong: #c8d2dc;
	--qy-surface: #f5f7f9;
	--qy-surface-alt: #eef2f5;
	--qy-white: #ffffff;
	--qy-max: 1360px;
	--qy-radius: 3px;
	--qy-sticky-offset: 0px;
	--qy-shadow-xs: 0 4px 16px rgba(12, 36, 58, 0.06);
	--qy-shadow-sm: 0 10px 30px rgba(12, 36, 58, 0.08);
	--qy-shadow-md: 0 22px 54px rgba(12, 36, 58, 0.12);

	position: relative;
	width: 100%;
	overflow-x: clip;
	overflow-y: visible;
	background: var(--qy-white);
	color: var(--qy-text);
	font-family: Inter, "Segoe UI", Roboto, Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

.qy-product-template,
.qy-product-template * {
	box-sizing: border-box;
}

.qy-product-template img,
.qy-product-template svg {
	display: block;
}

.qy-product-template a,
.qy-product-template button {
	font: inherit;
}

.qy-product-template a {
	-webkit-tap-highlight-color: transparent;
}

.qy-container {
	width: min(var(--qy-max), calc(100% - 64px));
	margin-inline: auto;
}

.qy-section-pad {
	padding-block: clamp(76px, 7vw, 108px);
}

/* --------------------------------------------------------------------------
   Product overview / hero
   -------------------------------------------------------------------------- */
.qy-product-hero {
	position: relative;
	isolation: isolate;
	border-top: 1px solid #eef1f4;
	background:
		linear-gradient(90deg, rgba(11, 47, 85, 0.035) 1px, transparent 1px),
		linear-gradient(0deg, rgba(11, 47, 85, 0.035) 1px, transparent 1px),
		linear-gradient(180deg, #ffffff 0%, #f7f9fb 100%);
	background-size: 42px 42px, 42px 42px, auto;
}

.qy-product-hero::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0 0 auto;
	height: 6px;
	background: linear-gradient(90deg, var(--qy-navy) 0 72%, var(--qy-accent) 72% 100%);
}

.qy-product-hero::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: -220px;
	top: 70px;
	width: 560px;
	height: 560px;
	border: 1px solid rgba(11, 47, 85, 0.05);
	border-radius: 50%;
	box-shadow:
		0 0 0 72px rgba(11, 47, 85, 0.018),
		0 0 0 144px rgba(11, 47, 85, 0.012);
	pointer-events: none;
}

.qy-hero-grid {
	padding-block: clamp(58px, 6vw, 86px);
	display: grid;
	grid-template-columns: minmax(0, 1.14fr) minmax(410px, 0.86fr);
	gap: clamp(48px, 5.5vw, 86px);
	align-items: center;
}

.qy-gallery {
	min-width: 0;
}

.qy-main-image {
	position: relative;
	width: 100%;
	aspect-ratio: 1.35 / 1;
	overflow: hidden;
	border: 1px solid var(--qy-line-strong);
	border-radius: var(--qy-radius);
	background:
		linear-gradient(135deg, rgba(255,255,255,.96), rgba(242,245,247,.96));
	box-shadow: var(--qy-shadow-md);
}

.qy-main-image::before {
	content: "PRODUCT GALLERY";
	position: absolute;
	z-index: 3;
	left: 0;
	top: 0;
	padding: 9px 15px;
	color: #ffffff;
	background: var(--qy-navy);
	font-size: 10px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: .14em;
}

.qy-main-image::after {
	content: "";
	position: absolute;
	inset: 0;
	border: 8px solid rgba(255, 255, 255, 0.48);
	pointer-events: none;
}

.qy-main-image img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 24px !important;
	border: 0 !important;
	object-fit: contain;
	object-position: center;
	transition: opacity .22s ease, transform .55s ease;
}

.qy-main-image:hover img {
	transform: scale(1.018);
}

.qy-thumbnails {
	margin-top: 14px;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}

.qy-thumb {
	position: relative;
	width: 100%;
	aspect-ratio: 1.45 / 1;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--qy-line);
	border-radius: 2px;
	background: #ffffff;
	cursor: pointer;
	transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.qy-thumb::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 3px;
	background: var(--qy-accent);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .2s ease;
}

.qy-thumb:hover,
.qy-thumb:focus-visible {
	transform: translateY(-2px);
	border-color: var(--qy-accent);
	box-shadow: var(--qy-shadow-xs);
	outline: none;
}

.qy-thumb.is-active {
	border-color: var(--qy-accent);
	box-shadow: 0 0 0 1px var(--qy-accent);
}

.qy-thumb.is-active::after {
	transform: scaleX(1);
}

.qy-thumb img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 7px !important;
	border: 0 !important;
	object-fit: contain;
	object-position: center;
}

.qy-product-info {
	position: relative;
	min-width: 0;
	padding: clamp(36px, 4vw, 54px);
	border: 1px solid var(--qy-line);
	border-radius: var(--qy-radius);
	background: rgba(255, 255, 255, .97);
	box-shadow: var(--qy-shadow-sm);
}

.qy-product-info::before {
	content: "PRODUCT OVERVIEW";
	display: block;
	width: fit-content;
	margin-bottom: 20px;
	padding-bottom: 9px;
	border-bottom: 2px solid var(--qy-accent);
	color: var(--qy-navy);
	font-size: 11px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: .16em;
}

.qy-product-info::after {
	content: "";
	position: absolute;
	left: -1px;
	top: 46px;
	bottom: 46px;
	width: 4px;
	background: var(--qy-accent);
}

.qy-product-title {
	margin: 0 0 22px;
	color: var(--qy-heading);
	font-size: clamp(40px, 3.4vw, 58px);
	line-height: 1.06;
	letter-spacing: -.045em;
	font-weight: 800;
}

.qy-product-description {
	margin: 0;
	color: var(--qy-muted);
	font-size: 16px;
	line-height: 1.78;
}

.qy-specs {
	margin: 32px 0;
	border-top: 1px solid var(--qy-line-strong);
	border-bottom: 1px solid var(--qy-line-strong);
	display: grid;
}

.qy-spec-row {
	display: grid;
	grid-template-columns: minmax(145px, .72fr) minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	padding: 15px 0;
	border-bottom: 1px solid var(--qy-line);
}

.qy-spec-row:last-child {
	border-bottom: 0;
}

.qy-spec-label {
	color: var(--qy-heading);
	font-size: 13px;
	line-height: 1.45;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .035em;
}

.qy-spec-value {
	color: var(--qy-muted);
	font-size: 15px;
	line-height: 1.5;
	text-align: right;
}

.qy-product-actions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.qy-product-btn {
	min-height: 56px;
	padding: 0 22px;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	border: 1px solid transparent;
	border-radius: 2px;
	color: #ffffff !important;
	text-decoration: none !important;
	font-size: 14px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: .02em;
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}

.qy-product-btn span:last-child {
	font-size: 18px;
	line-height: 1;
	transition: transform .2s ease;
}

.qy-btn-dark {
	background: var(--qy-navy);
	border-color: var(--qy-navy);
}

.qy-btn-accent {
	background: var(--qy-accent);
	border-color: var(--qy-accent);
}

.qy-product-btn:hover,
.qy-product-btn:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 12px 24px rgba(12, 36, 58, .16);
	outline: none;
}

.qy-product-btn:hover span:last-child,
.qy-product-btn:focus-visible span:last-child {
	transform: translate(2px, -2px);
}

.qy-btn-dark:hover,
.qy-btn-dark:focus-visible {
	background: var(--qy-navy-deep);
	border-color: var(--qy-navy-deep);
}

.qy-btn-accent:hover,
.qy-btn-accent:focus-visible {
	filter: brightness(.92);
}

.qy-share {
	margin-top: 24px;
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.qy-share strong {
	margin-right: 5px;
	color: var(--qy-muted);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.qy-share a,
.qy-share button {
	width: 32px;
	height: 32px;
	padding: 0;
	display: grid;
	place-items: center;
	border: 1px solid var(--qy-line);
	border-radius: 2px;
	background: #ffffff;
	color: var(--qy-navy);
	text-decoration: none;
	cursor: pointer;
	font-size: 12px;
	font-weight: 800;
	transition: color .18s ease, border-color .18s ease, transform .18s ease, background .18s ease;
}

.qy-share a:hover,
.qy-share button:hover,
.qy-share a:focus-visible,
.qy-share button:focus-visible {
	transform: translateY(-2px);
	border-color: var(--qy-navy);
	background: var(--qy-navy);
	color: #ffffff;
	outline: none;
}

/* --------------------------------------------------------------------------
   Sticky section navigation
   -------------------------------------------------------------------------- */
.qy-product-anchor-nav {
	position: sticky;
	top: var(--qy-sticky-offset);
	z-index: 90;
	width: 100%;
	border-top: 1px solid rgba(255, 255, 255, .08);
	border-bottom: 1px solid rgba(0, 0, 0, .2);
	background: rgba(7, 31, 56, .98);
	box-shadow: 0 12px 28px rgba(7, 31, 56, .16);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.qy-anchor-nav-inner {
	min-height: 68px;
	display: flex;
	align-items: stretch;
	justify-content: center;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scrollbar-width: none;
}

.qy-anchor-nav-inner::-webkit-scrollbar {
	display: none;
}

.qy-anchor-nav-link {
	position: relative;
	min-height: 68px;
	padding: 0 clamp(24px, 2.7vw, 44px);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-left: 1px solid rgba(255, 255, 255, .09);
	color: rgba(255, 255, 255, .78) !important;
	text-decoration: none !important;
	font-size: 13px;
	line-height: 1;
	font-weight: 750;
	letter-spacing: .035em;
	white-space: nowrap;
	transition: background .2s ease, color .2s ease;
}

.qy-anchor-nav-link:last-child {
	border-right: 1px solid rgba(255, 255, 255, .09);
}

.qy-anchor-nav-link::before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 0;
	height: 4px;
	background: var(--qy-accent);
	transform: translateX(-50%);
	transition: width .2s ease;
}

.qy-anchor-nav-link:hover,
.qy-anchor-nav-link:focus-visible,
.qy-anchor-nav-link.is-active {
	background: rgba(255, 255, 255, .07);
	color: #ffffff !important;
	outline: none;
}

.qy-anchor-nav-link:hover::before,
.qy-anchor-nav-link:focus-visible::before,
.qy-anchor-nav-link.is-active::before {
	width: 54%;
}

.qy-description-section,
.qy-features-section,
.qy-manufacturing-section,
.qy-parameters-section {
	scroll-margin-top: calc(var(--qy-sticky-offset) + 88px);
}

/* --------------------------------------------------------------------------
   Shared section titles
   -------------------------------------------------------------------------- */
.qy-section-title {
	margin: 0;
	color: var(--qy-heading);
	text-align: center;
	font-size: clamp(36px, 3.2vw, 50px);
	line-height: 1.1;
	letter-spacing: -.04em;
	font-weight: 800;
}

.qy-section-title::before {
	display: block;
	margin-bottom: 13px;
	color: var(--qy-accent);
	font-size: 11px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: .17em;
	text-transform: uppercase;
}

.qy-description-section .qy-section-title::before {
	content: "PRODUCT INFORMATION";
}

.qy-features-section .qy-section-title::before {
	content: "PERFORMANCE & BENEFITS";
}

.qy-manufacturing-section .qy-section-title::before {
	content: "PRODUCTION CAPABILITY";
}

.qy-parameters-section .qy-section-title::before {
	content: "TECHNICAL DATA";
}

.qy-align-left {
	text-align: left;
}

.qy-title-line {
	position: relative;
	width: 82px;
	height: 3px;
	margin: 22px auto 46px;
	background: var(--qy-accent);
}

.qy-title-line::after {
	content: "";
	position: absolute;
	left: 82px;
	top: 1px;
	width: 36px;
	height: 1px;
	background: var(--qy-line-strong);
}

.qy-line-left {
	margin-left: 0;
	margin-bottom: 30px;
}

/* --------------------------------------------------------------------------
   Description
   -------------------------------------------------------------------------- */
.qy-description-section {
	position: relative;
	background: var(--qy-white);
}

.qy-description-section::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--qy-line), transparent);
}

.qy-description-section .qy-container {
	max-width: 1240px;
}

.qy-description-section .qy-container:has(.qy-description-image) {
	display: grid;
	grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
	column-gap: clamp(46px, 5vw, 80px);
	align-items: center;
}

.qy-description-section .qy-container:has(.qy-description-image) .qy-section-title,
.qy-description-section .qy-container:has(.qy-description-image) .qy-title-line {
	grid-column: 1 / -1;
}

.qy-rich-text {
	max-width: 980px;
	margin-inline: auto;
	color: var(--qy-muted);
	font-size: 17px;
	line-height: 1.9;
	letter-spacing: .002em;
}

.qy-description-section .qy-container:has(.qy-description-image) .qy-rich-text {
	margin: 0;
}

.qy-rich-text p {
	margin: 0 0 20px;
}

.qy-rich-text p:last-child {
	margin-bottom: 0;
}

.qy-rich-text strong,
.qy-rich-text b {
	color: var(--qy-heading);
	font-weight: 750;
}

.qy-rich-text a {
	color: var(--qy-accent);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.qy-rich-text ul,
.qy-rich-text ol {
	margin: 22px 0;
	padding-left: 22px;
}

.qy-rich-text li {
	margin-bottom: 8px;
}

.qy-description-image {
	position: relative;
	margin-top: 42px;
	overflow: hidden;
	border: 1px solid var(--qy-line-strong);
	border-radius: var(--qy-radius);
	background: #f3f5f7;
	box-shadow: var(--qy-shadow-sm);
}

.qy-description-section .qy-container:has(.qy-description-image) .qy-description-image {
	margin-top: 0;
}

.qy-description-image::before {
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	top: 0;
	width: 120px;
	height: 5px;
	background: linear-gradient(90deg, var(--qy-accent), var(--qy-navy));
}

.qy-description-image img {
	width: 100% !important;
	height: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* --------------------------------------------------------------------------
   Product features
   -------------------------------------------------------------------------- */
.qy-features-section {
	position: relative;
	background:
		linear-gradient(135deg, rgba(11,47,85,.035) 25%, transparent 25%) 0 0 / 34px 34px,
		var(--qy-surface);
}

.qy-features-section::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: clamp(5px, .55vw, 9px);
	background: var(--qy-accent);
}

.qy-features-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.04fr) minmax(390px, .96fr);
	gap: clamp(52px, 6vw, 92px);
	align-items: center;
}

.qy-feature-media {
	position: relative;
	min-height: 520px;
	overflow: hidden;
	border: 1px solid #cfd7df;
	border-radius: var(--qy-radius);
	background: #e9edf1;
	box-shadow: var(--qy-shadow-md);
}

.qy-feature-media::before {
	content: "";
	position: absolute;
	z-index: 3;
	left: 0;
	top: 0;
	width: 38%;
	height: 5px;
	background: var(--qy-accent);
	pointer-events: none;
}

.qy-feature-media img {
	width: 100% !important;
	height: 100% !important;
	min-height: 520px;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	object-fit: cover;
	object-position: center;
	transition: transform .6s ease;
}

.qy-feature-media--image img {
	object-fit: contain;
	padding: 20px !important;
	background: #ffffff;
}

.qy-feature-media:hover img {
	transform: scale(1.02);
}

.qy-feature-media--video::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(7,31,56,.05), rgba(7,31,56,.52));
}

.qy-play {
	position: absolute;
	z-index: 4;
	top: 50%;
	left: 50%;
	width: 88px;
	height: 88px;
	border: 2px solid rgba(255,255,255,.72);
	border-radius: 50%;
	background: var(--qy-accent);
	box-shadow: 0 16px 42px rgba(0,0,0,.28);
	transform: translate(-50%, -50%);
	transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.qy-play::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: 4px;
	transform: translate(-50%, -50%);
	border-top: 11px solid transparent;
	border-bottom: 11px solid transparent;
	border-left: 18px solid #ffffff;
}

.qy-play:hover,
.qy-play:focus-visible {
	filter: brightness(.94);
	box-shadow: 0 20px 48px rgba(0,0,0,.34);
	transform: translate(-50%, -50%) scale(1.06);
	outline: none;
}

.qy-features-grid > div:last-child {
	min-width: 0;
	padding: 8px 0;
}

.qy-feature-intro {
	margin: 0;
	color: var(--qy-muted);
	font-size: 17px;
	line-height: 1.82;
}

.qy-feature-list {
	margin: 30px 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	list-style: none;
}

.qy-feature-list li {
	position: relative;
	min-height: 58px;
	padding: 16px 14px 16px 46px;
	border: 1px solid #d9e0e6;
	border-radius: 2px;
	background: rgba(255,255,255,.88);
	color: #34404b;
	font-size: 14px;
	line-height: 1.55;
	font-weight: 650;
	box-shadow: 0 4px 14px rgba(11,47,85,.035);
}

.qy-feature-list li::before {
	content: "✓";
	position: absolute;
	left: 15px;
	top: 16px;
	width: 22px;
	height: 22px;
	display: grid;
	place-items: center;
	border: 1px solid var(--qy-accent);
	border-radius: 2px;
	color: var(--qy-accent);
	font-size: 12px;
	line-height: 1;
	font-weight: 900;
}

/* --------------------------------------------------------------------------
   Manufacturing features
   -------------------------------------------------------------------------- */
.qy-manufacturing-section {
	position: relative;
	background: var(--qy-white);
}

.qy-card-grid {
	counter-reset: qy-card;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.qy-make-card {
	counter-increment: qy-card;
	position: relative;
	min-height: 280px;
	padding: 34px 27px 30px;
	overflow: hidden;
	border: 1px solid var(--qy-line);
	border-radius: var(--qy-radius);
	background: #ffffff;
	box-shadow: var(--qy-shadow-xs);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.qy-make-card::before {
	content: counter(qy-card, decimal-leading-zero);
	position: absolute;
	right: 20px;
	top: 18px;
	color: #e7ecf0;
	font-size: 40px;
	line-height: 1;
	font-weight: 800;
	letter-spacing: -.07em;
}

.qy-make-card::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 4px;
	background: linear-gradient(90deg, var(--qy-accent) 0 35%, var(--qy-navy) 35% 100%);
	transform: scaleX(.22);
	transform-origin: left;
	transition: transform .28s ease;
}

.qy-make-card:hover {
	transform: translateY(-6px);
	border-color: #cdd7df;
	box-shadow: var(--qy-shadow-sm);
}

.qy-make-card:hover::after {
	transform: scaleX(1);
}

.qy-make-card svg {
	position: relative;
	z-index: 1;
	width: 56px;
	height: 56px;
	margin: 0 0 28px;
	padding: 10px;
	border: 1px solid #d9e2e9;
	border-radius: 2px;
	background: #f7f9fb;
	fill: none;
	stroke: var(--qy-accent);
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.qy-make-card h3 {
	position: relative;
	z-index: 1;
	margin: 0;
	color: var(--qy-heading);
	font-size: 17px;
	line-height: 1.5;
	font-weight: 750;
}

.qy-make-card p {
	position: relative;
	z-index: 1;
	margin: 13px 0 0;
	color: var(--qy-muted);
	font-size: 14px;
	line-height: 1.68;
}

/* --------------------------------------------------------------------------
   Parameters table
   -------------------------------------------------------------------------- */
.qy-parameters-section {
	position: relative;
	background: var(--qy-surface);
}

.qy-parameters-section::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	width: min(var(--qy-max), calc(100% - 64px));
	height: 1px;
	background: var(--qy-line-strong);
	transform: translateX(-50%);
}

.qy-table-wrap {
	width: 100%;
	overflow-x: auto;
	border: 1px solid #cbd5de;
	border-top: 5px solid var(--qy-navy);
	border-radius: var(--qy-radius);
	background: #ffffff;
	box-shadow: var(--qy-shadow-sm);
	-webkit-overflow-scrolling: touch;
}

.qy-table-wrap:focus-visible {
	outline: 3px solid var(--qy-accent);
	outline-offset: 3px;
}

.qy-param-table {
	width: 100%;
	min-width: 760px;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
	background: #ffffff;
}

.qy-param-table th,
.qy-param-table td {
	padding: 19px 24px;
	border: 0;
	border-bottom: 1px solid var(--qy-line);
	color: #33404c;
	font-size: 15px;
	line-height: 1.55;
	text-align: left;
	vertical-align: middle;
	background: #ffffff;
	transition: background .16s ease;
}

.qy-param-table th {
	position: sticky;
	left: 0;
	z-index: 1;
	width: 34%;
	border-right: 1px solid var(--qy-line-strong);
	color: var(--qy-heading);
	background: #f4f7f9;
	font-weight: 750;
}

.qy-param-table td {
	color: var(--qy-muted);
	font-weight: 450;
}

.qy-param-table tr:nth-child(even) th {
	background: #edf2f5;
}

.qy-param-table tr:nth-child(even) td {
	background: #fafbfc;
}

.qy-param-table tr:last-child th,
.qy-param-table tr:last-child td {
	border-bottom: 0;
}

.qy-param-table tr:hover th,
.qy-param-table tr:hover td {
	background: #fff8f2;
}

/* HTML-only anchors created when a native section is empty. */
.qypm-html-anchor {
	display: block;
	position: relative;
	top: calc((var(--qy-sticky-offset) + 88px) * -1);
	width: 0;
	height: 0;
	visibility: hidden;
	pointer-events: none;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 1180px) {
	.qy-container {
		width: min(1060px, calc(100% - 48px));
	}

	.qy-hero-grid {
		grid-template-columns: minmax(0, 1fr) minmax(380px, .88fr);
		gap: 44px;
	}

	.qy-features-grid {
		grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
		gap: 48px;
	}

	.qy-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 920px) {
	.qy-container {
		width: min(780px, calc(100% - 36px));
	}

	.qy-section-pad {
		padding-block: 72px;
	}

	.qy-hero-grid {
		padding-block: 52px 60px;
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.qy-main-image {
		aspect-ratio: 1.45 / 1;
	}

	.qy-product-info {
		padding: 38px;
	}

	.qy-anchor-nav-inner {
		justify-content: flex-start;
		padding-inline: 8px;
	}

	.qy-anchor-nav-link {
		min-height: 62px;
		padding: 0 22px;
		font-size: 12px;
	}

	.qy-description-section .qy-container:has(.qy-description-image) {
		grid-template-columns: 1fr;
		row-gap: 34px;
	}

	.qy-description-section .qy-container:has(.qy-description-image) .qy-description-image {
		margin-top: 0;
	}

	.qy-features-grid {
		grid-template-columns: 1fr;
		gap: 42px;
	}

	.qy-feature-media,
	.qy-feature-media img {
		min-height: 0;
	}

	.qy-feature-media {
		aspect-ratio: 16 / 10;
	}
}

@media (max-width: 640px) {
	.qy-container {
		width: calc(100% - 24px);
	}

	.qy-section-pad {
		padding-block: 54px;
	}

	.qy-product-hero::after {
		display: none;
	}

	.qy-hero-grid {
		padding-block: 34px 42px;
		gap: 26px;
	}

	.qy-main-image {
		aspect-ratio: 4 / 3;
	}

	.qy-main-image::before {
		padding: 8px 11px;
		font-size: 9px;
	}

	.qy-main-image img {
		padding: 14px !important;
	}

	.qy-thumbnails {
		gap: 7px;
		margin-top: 9px;
	}

	.qy-thumb {
		aspect-ratio: 1.18 / 1;
	}

	.qy-thumb img {
		padding: 4px !important;
	}

	.qy-product-info {
		padding: 30px 22px;
	}

	.qy-product-info::after {
		top: 32px;
		bottom: 32px;
		width: 3px;
	}

	.qy-product-info::before {
		margin-bottom: 17px;
	}

	.qy-product-title {
		font-size: 35px;
	}

	.qy-product-description {
		font-size: 15px;
		line-height: 1.72;
	}

	.qy-specs {
		margin: 27px 0;
	}

	.qy-spec-row {
		grid-template-columns: 1fr;
		gap: 4px;
		padding: 13px 0;
	}

	.qy-spec-value {
		text-align: left;
	}

	.qy-product-actions {
		grid-template-columns: 1fr;
	}

	.qy-product-btn {
		min-height: 53px;
	}

	.qy-product-anchor-nav {
		box-shadow: 0 8px 20px rgba(7,31,56,.15);
	}

	.qy-anchor-nav-link {
		min-height: 58px;
		padding: 0 18px;
	}

	.qy-section-title {
		font-size: 33px;
	}

	.qy-section-title::before {
		font-size: 10px;
	}

	.qy-title-line {
		width: 66px;
		height: 3px;
		margin: 18px auto 31px;
	}

	.qy-title-line::after {
		left: 66px;
		width: 25px;
	}

	.qy-line-left {
		margin-left: 0;
		margin-bottom: 24px;
	}

	.qy-rich-text,
	.qy-feature-intro {
		font-size: 15px;
		line-height: 1.75;
	}

	.qy-description-image {
		margin-top: 28px;
	}

	.qy-feature-media {
		aspect-ratio: 4 / 3;
	}

	.qy-feature-media--image img {
		padding: 10px !important;
	}

	.qy-play {
		width: 70px;
		height: 70px;
	}

	.qy-feature-list {
		grid-template-columns: 1fr;
		gap: 9px;
		margin-top: 24px;
	}

	.qy-card-grid {
		grid-template-columns: 1fr;
		gap: 13px;
	}

	.qy-make-card {
		min-height: 0;
		padding: 28px 23px;
	}

	.qy-table-wrap {
		border-radius: 2px;
	}

	.qy-param-table {
		min-width: 680px;
	}

	.qy-param-table th,
	.qy-param-table td {
		padding: 15px 14px;
		font-size: 14px;
	}

	.qy-parameters-section::before {
		width: calc(100% - 24px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.qy-product-template *,
	.qy-product-template *::before,
	.qy-product-template *::after {
		scroll-behavior: auto !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}
