/* GripSockSource — OEM & ODM Grip Socks page.
 * Loaded only on /oem-odm-grip-socks/. Keep page-specific rules here,
 * never in the post content.
 */

/* Hero: image occupies the right column, replacing the generic hero note. */
.gss-page-odm .gss-page-hero-grid > figure.gss-hero-visual,
.gss-page-odm.gss-page-hero .gss-page-hero-grid > figure.gss-hero-visual {
	margin: 0;
	overflow: hidden;
	background: #12355b;
}
.gss-page-odm .gss-hero-visual img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}
.gss-page-odm .gss-hero-visual figcaption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: grid;
	gap: 4px;
	padding: 18px 20px;
	color: #fff;
	background: linear-gradient(to top, rgba(11, 36, 59, .92), rgba(11, 36, 59, 0));
}
.gss-page-odm .gss-hero-visual span {
	color: #ff9871;
	font: 700 .6rem "Manrope", sans-serif;
	letter-spacing: .13em;
}
.gss-page-odm .gss-hero-visual strong {
	font: 700 .95rem "Manrope", sans-serif;
	line-height: 1.4;
}
.gss-page-odm .gss-page-hero-grid { position: relative; }
.gss-page-odm .gss-page-hero-grid > figure.gss-hero-visual { position: relative; }

/* Comparison table */
.gss-page-odm .gss-table-wrap {
	margin: 0;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.gss-page-odm .gss-table-4col { min-width: 760px; }
.gss-page-odm .gss-table-4col th:first-child { width: 22%; }

/* Inline note under a table or image grid */
.gss-page-odm .gss-note {
	margin: 26px 0 0;
	color: #5e6b78;
	font-size: .92rem;
	line-height: 1.6;
}

/* Six-step development sequence: 3 columns x 2 rows on desktop. */
.gss-page-odm .gss-process-grid { grid-template-columns: repeat(3, 1fr); }
.gss-page-odm .gss-process-grid li:nth-child(3) { border-right: 1px solid #dde6ee; }
.gss-page-odm .gss-process-grid li:nth-child(3)::after { display: none; }
.gss-page-odm .gss-process-grid li:nth-child(n + 4) { border-top: 0; }

/* Compact checklist variant used by the sample / pre-production blocks. */
.gss-page-odm .gss-checks-compact li { padding: 15px 0 15px 30px; }
.gss-page-odm .gss-checks-compact li strong { color: #172433; }

/* White closing CTA. */
.gss-page-odm.gss-final-cta { background: #fff; }
.gss-page-odm.gss-final-cta .gss-heading-split { align-items: end; margin-bottom: 34px; }
.gss-page-odm.gss-final-cta h2 { margin: 0; color: #0b243b; }
.gss-page-odm.gss-final-cta .gss-eyebrow { color: #d95324; }
.gss-page-odm .gss-btn-onlight {
	border: 1px solid #0b243b;
	color: #0b243b;
	background: transparent;
}
.gss-page-odm .gss-btn-onlight:hover { color: #fff; background: #0b243b; }

/* Neutralise the global .gss-entry-content h2 top margin inside this page. */
.gss-page-odm .gss-entry-content h2,
.gss-page-odm h2 { margin-top: 0; }

/* The footer CTA is no longer printed on this page (see footer.php conditional),
 * so no CSS fallback is needed here. */


/* Wide blocks must scroll inside their own container, never widen the page. */
.gss-entry-content { min-width: 0; }
.gss-page-odm .gss-table-wrap { max-width: 100%; }

@media (max-width: 900px) {
	.gss-page-odm .gss-hero-visual img { aspect-ratio: 16 / 10; }
	.gss-page-odm .gss-process-grid { grid-template-columns: repeat(2, 1fr); }
	.gss-page-odm .gss-process-grid li:nth-child(2n) { border-right: 1px solid #dde6ee; }
	.gss-page-odm .gss-process-grid li:nth-child(2)::after { display: none; }
	.gss-page-odm .gss-process-grid li:nth-child(n + 3) { border-top: 0; }
}

@media (max-width: 600px) {
	.gss-page-odm .gss-process-grid { grid-template-columns: 1fr; }
	.gss-page-odm .gss-process-grid li { border-right: 1px solid #dde6ee; }
	.gss-page-odm .gss-process-grid li::after { display: none; }
	.gss-page-odm .gss-process-grid li + li { border-top: 0; }
	.gss-page-odm .gss-process-grid h3 { margin-top: 22px; }
}
