.obc-catalog,
.obc-single-product,
.obc-blog-index,
.obc-related-articles,
.obc-article-related-products,
.obc-internal-links,
.obc-context-cta {
	--obc-ink: #121212;
	--obc-muted: #666;
	--obc-line: #dedbd5;
	--obc-paper: #f8f6f2;
	--obc-warm: #eee9e1;
	--obc-gold: #8a672c;
	color: var(--obc-ink);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.obc-catalog *,
.obc-single-product *,
.obc-blog-index *,
.obc-related-articles *,
.obc-article-related-products *,
.obc-internal-links *,
.obc-context-cta * {
	box-sizing: border-box;
}

.obc-internal-links,
.obc-context-cta {
	box-sizing: border-box;
}

.obc-catalog :where(h2, h3, p, a, span, label, input, select, button, dt, dd),
.obc-single-product :where(h2, h3, p, a, span, dt, dd),
.obc-blog-index :where(h2, h3, p, a, span),
.obc-related-articles :where(h2, h3, p, a, span),
.obc-article-related-products :where(h2, h3, p, a, span),
.obc-internal-links :where(h2, h3, p, a, span),
.obc-context-cta :where(h2, h3, p, a, span) {
	font-family: inherit;
}

.obc-container,
.obc-single-product {
	width: min(1200px, calc(100% - 48px));
	margin-right: auto;
	margin-left: auto;
}

.obc-catalog {
	margin-top: 96px;
	padding: 104px 0;
	border-top: 1px solid var(--obc-line);
	background: var(--obc-paper);
}

.obc-catalog--compact {
	margin-top: 72px;
	padding-top: 84px;
}

.obc-section-heading {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1.1fr);
	gap: 48px;
	align-items: end;
	margin-bottom: 38px;
}

.obc-section-heading h2,
.obc-product-description h2,
.obc-related-products h2 {
	margin: 0;
	color: var(--obc-ink);
	font-size: clamp(30px, 3.4vw, 50px);
	font-weight: 620;
	letter-spacing: -0.035em;
	line-height: 1.08;
}

.obc-section-heading > p {
	max-width: 620px;
	margin: 0;
	color: var(--obc-muted);
	font-size: 17px;
	line-height: 1.65;
}

.obc-eyebrow {
	margin: 0 0 14px !important;
	color: var(--obc-gold) !important;
	font-size: 12px !important;
	font-weight: 750 !important;
	letter-spacing: 0.14em !important;
	line-height: 1.4 !important;
	text-transform: uppercase;
}

.obc-category-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 28px;
}

.obc-category-nav a {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 9px 15px;
	border: 1px solid var(--obc-line);
	background: #fff;
	color: var(--obc-ink);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.obc-category-nav a:hover,
.obc-category-nav a.is-active {
	border-color: var(--obc-ink);
	background: var(--obc-ink);
	color: #fff;
}

.obc-filter-bar {
	display: grid;
	grid-template-columns: minmax(240px, 1fr) minmax(220px, 0.6fr) auto;
	gap: 12px;
	align-items: end;
	margin: 0 0 38px;
	padding: 22px;
	border: 1px solid var(--obc-line);
	background: #fff;
}

.obc-filter-bar label {
	display: grid;
	gap: 7px;
	color: var(--obc-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.obc-filter-bar input,
.obc-filter-bar select {
	width: 100%;
	min-height: 48px;
	padding: 10px 13px;
	border: 1px solid #cfcac1;
	border-radius: 0;
	background: #fff;
	color: var(--obc-ink);
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}

.obc-filter-bar button,
.obc-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 11px 22px;
	border: 1px solid var(--obc-ink);
	border-radius: 0;
	background: var(--obc-ink);
	color: #fff !important;
	font-size: 14px;
	font-weight: 650;
	line-height: 1.3;
	text-decoration: none;
	cursor: pointer;
}

.obc-button--secondary {
	background: transparent;
	color: var(--obc-ink) !important;
}

.obc-filter-bar button:hover,
.obc-button:hover {
	background: #333;
	color: #fff !important;
}

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

.obc-product-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-width: 0;
	margin: 0;
	border: 1px solid #e5e1da;
	background: #fff;
}

.obc-product-card__image {
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #ece8e1;
	text-decoration: none;
}

.obc-product-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.obc-image-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	min-height: 220px;
	color: #877f74;
	font-size: 12px;
	font-weight: 750;
	letter-spacing: 0.14em;
}

.obc-product-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 22px;
}

.obc-product-card__category {
	margin-bottom: 10px;
	color: var(--obc-gold);
	font-size: 11px;
	font-weight: 750;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.obc-product-card h3 {
	min-height: 2.6em;
	margin: 0;
	font-size: 19px;
	font-weight: 650;
	letter-spacing: -0.02em;
	line-height: 1.3;
}

.obc-product-card h3 a {
	color: var(--obc-ink);
	text-decoration: none;
}

.obc-product-card__model,
.obc-product-card__summary,
.obc-product-card__specs {
	margin: 10px 0 0;
	color: var(--obc-muted);
	font-size: 13px;
	line-height: 1.5;
}

.obc-product-card__model {
	color: #454545;
	font-weight: 600;
}

.obc-product-card__specs {
	min-height: 3em;
}

.obc-product-card__spec-label {
	color: #454545;
	font-weight: 650;
}

.obc-product-card__spec-separator {
	margin: 0 0.35em;
	color: #aaa39a;
}

.obc-text-link {
	align-self: flex-start;
	margin-top: auto;
	padding-top: 18px;
	border-bottom: 1px solid var(--obc-gold);
	color: var(--obc-ink);
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}

.obc-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	margin-top: 42px;
}

.obc-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	padding: 8px 12px;
	border: 1px solid var(--obc-line);
	background: #fff;
	color: var(--obc-ink);
	font-size: 14px;
	text-decoration: none;
}

.obc-pagination .current {
	border-color: var(--obc-ink);
	background: var(--obc-ink);
	color: #fff;
}

.obc-empty-state {
	padding: 64px 28px;
	border: 1px solid var(--obc-line);
	background: #fff;
	text-align: center;
}

.obc-empty-state h3 {
	margin: 0 0 12px;
	font-size: 26px;
}

.obc-empty-state p {
	max-width: 620px;
	margin: 0 auto 24px;
	color: var(--obc-muted);
}

body.single-ousiki_product .wp-block-post-title {
	width: min(1200px, calc(100% - 48px));
	margin: 72px auto 34px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
	font-size: clamp(38px, 5vw, 68px);
	font-weight: 620;
	letter-spacing: -0.045em;
	line-height: 1.04;
}

body.single-ousiki_product .wp-block-post-content {
	max-width: none;
}

.obc-single-product {
	padding-top: 72px;
	padding-bottom: 104px;
}

.obc-single-product__hero {
	display: grid;
	grid-template-columns: minmax(0, 1.06fr) minmax(380px, 0.94fr);
	gap: 48px;
	align-items: start;
}

.obc-product-gallery__main {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	border: 1px solid #e8e4dd;
	border-radius: 20px;
	background: var(--obc-paper);
}

.obc-product-gallery__main img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	image-rendering: auto;
}

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

.obc-product-gallery__thumbs a {
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	border: 1px solid #e8e4dd;
	border-radius: 12px;
	background: var(--obc-paper);
}

.obc-product-gallery__thumbs img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.obc-single-product__summary {
	position: sticky;
	top: 112px;
	padding: 38px;
	border: 1px solid var(--obc-line);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(18, 18, 18, 0.06);
}

.obc-product-title {
	max-width: none;
	margin: 0 0 22px;
	color: var(--obc-ink);
	font-size: clamp(34px, 3.4vw, 50px);
	font-weight: 620;
	letter-spacing: -0.045em;
	line-height: 1.04;
	overflow-wrap: break-word;
	text-wrap: balance;
}

.obc-model-number {
	margin: 0 0 18px;
	color: var(--obc-ink);
	font-size: 16px;
	font-weight: 700;
}

.obc-b2b-positioning {
	margin: 0 0 26px;
	color: var(--obc-muted);
	font-size: 15px;
	line-height: 1.6;
}

.obc-spec-list {
	margin: 0;
	border-top: 1px solid var(--obc-line);
}

.obc-spec-list > div {
	display: grid;
	grid-template-columns: minmax(130px, 0.42fr) 1fr;
	gap: 20px;
	padding: 15px 0;
	border-bottom: 1px solid var(--obc-line);
}

.obc-spec-list dt,
.obc-spec-list dd {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
}

.obc-spec-list dt {
	color: var(--obc-muted);
	font-weight: 600;
}

.obc-spec-list dd {
	color: var(--obc-ink);
	font-weight: 600;
}

.obc-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 28px;
}

.obc-actions .obc-button {
	min-height: 54px;
	border-radius: 999px;
}

.obc-button--quote {
	flex: 1 1 190px;
	padding-right: 26px;
	padding-left: 26px;
	font-size: 15px;
}

.obc-button--quote span {
	margin-left: 5px;
	font-size: 17px;
}

.obc-response-note {
	margin: 16px 0 0;
	color: var(--obc-muted);
	font-size: 12px;
	line-height: 1.55;
}

.obc-product-description,
.obc-related-products {
	margin-top: 92px;
	padding-top: 80px;
	border-top: 1px solid var(--obc-line);
}

.obc-rich-text {
	max-width: none;
	margin-top: 30px;
	color: #363636;
	font-size: 17px;
	line-height: 1.75;
}

.obc-rich-text > :first-child {
	margin-top: 0;
}

.obc-rich-text :where(h2, h3, p, li, a, strong, figcaption) {
	font-family: inherit;
}

.obc-rich-text h2 {
	max-width: 900px;
	margin: 88px 0 24px;
	color: var(--obc-ink);
	font-size: clamp(30px, 3.4vw, 48px);
	font-weight: 620;
	letter-spacing: -0.035em;
	line-height: 1.08;
	text-wrap: balance;
}

.obc-rich-text h3 {
	max-width: 820px;
	margin: 52px 0 18px;
	color: var(--obc-ink);
	font-size: clamp(22px, 2.2vw, 30px);
	font-weight: 650;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.obc-rich-text p,
.obc-rich-text > ul,
.obc-rich-text > ol {
	max-width: 820px;
}

.obc-rich-text p {
	margin: 0 0 22px;
}

.obc-rich-text ul,
.obc-rich-text ol {
	margin-top: 20px;
	margin-bottom: 30px;
	padding-left: 1.35em;
}

.obc-rich-text li {
	margin-bottom: 10px;
	padding-left: 0.25em;
}

.obc-single-product .obc-rich-text .obc-feature-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 28px;
	max-width: 900px;
	margin: 22px 0 42px;
	padding: 0;
	border-bottom: 1px solid var(--obc-line);
	list-style: none;
}

.obc-single-product .obc-rich-text .obc-feature-list li {
	position: relative;
	margin: 0;
	padding: 15px 8px 15px 24px;
	border-top: 1px solid var(--obc-line);
	color: var(--obc-ink);
	font-weight: 560;
}

.obc-single-product .obc-rich-text .obc-feature-list li::before {
	position: absolute;
	top: 1.3em;
	left: 3px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--obc-gold);
	content: "";
}

.obc-rich-text figure,
.obc-rich-text .wp-block-image,
.obc-rich-text .wp-block-gallery,
.obc-rich-text .wp-block-columns,
.obc-rich-text .wp-block-buttons {
	margin-top: 48px;
	margin-bottom: 48px;
}

.obc-rich-text .wp-block-image,
.obc-rich-text .wp-block-gallery,
.obc-rich-text .alignwide,
.obc-rich-text .alignfull {
	width: 100%;
	max-width: 100%;
	margin-right: 0;
	margin-left: 0;
}

.obc-rich-text .wp-block-image img,
.obc-rich-text .wp-block-gallery img {
	display: block;
	max-width: 100%;
	height: auto;
	border-radius: 18px;
	image-rendering: auto;
}

.obc-rich-text .wp-block-image.aligncenter img {
	margin-right: auto;
	margin-left: auto;
}

.obc-rich-text .wp-block-gallery {
	gap: 16px;
}

.obc-rich-text .wp-block-gallery figure {
	margin: 0;
}

.obc-rich-text figcaption {
	margin-top: 12px;
	color: var(--obc-muted);
	font-size: 13px;
	line-height: 1.55;
	text-align: left;
}

.obc-rich-text .wp-block-columns {
	gap: 22px;
	align-items: stretch;
}

.obc-rich-text .wp-block-column {
	min-width: 0;
}

.obc-rich-text .wp-block-column > :first-child {
	margin-top: 0;
}

.obc-rich-text .wp-block-column > :last-child {
	margin-bottom: 0;
}

/* Keep direct product images visually consistent across equal Gutenberg columns. */
.obc-single-product .obc-rich-text .wp-block-columns > .wp-block-column > .wp-block-image,
.obc-single-product .obc-rich-text .wp-block-columns > .wp-block-column > figure.wp-block-image {
	width: 100%;
	max-width: 100%;
}

.obc-single-product .obc-rich-text .wp-block-columns > .wp-block-column > .wp-block-image img,
.obc-single-product .obc-rich-text .wp-block-columns > .wp-block-column > figure.wp-block-image img {
	width: 100% !important;
	height: auto;
}

.obc-rich-text .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.obc-rich-text .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 12px 24px;
	border: 1px solid var(--obc-ink);
	border-radius: 999px;
	background: var(--obc-ink);
	color: #fff;
	font-size: 14px;
	font-weight: 650;
	line-height: 1.3;
	text-decoration: none;
}

.obc-rich-text .wp-block-button__link:hover,
.obc-rich-text .wp-block-button__link:focus-visible {
	background: #333;
	color: #fff;
}

.obc-single-product .obc-rich-text .obc-product-quote-section {
	max-width: 100%;
	margin: 92px 0 0;
	padding: 58px 60px;
	border-radius: 20px;
	background: var(--obc-ink);
	color: #fff;
}

.obc-single-product .obc-rich-text .obc-product-quote-section h2 {
	max-width: 760px;
	margin: 0 0 22px;
	color: #fff;
}

.obc-single-product .obc-rich-text .obc-product-quote-section p {
	color: #d4d4d4;
}

.obc-single-product .obc-rich-text .obc-product-quote-section strong {
	color: #fff;
}

.obc-single-product .obc-rich-text .obc-product-quote-section .wp-block-buttons {
	margin-top: 30px;
	margin-bottom: 0;
}

.obc-single-product .obc-rich-text .obc-product-quote-section .wp-block-button__link {
	border-color: #fff;
	background: #fff;
	color: var(--obc-ink);
}

.obc-single-product .obc-rich-text .obc-product-quote-section .wp-block-button__link:hover,
.obc-single-product .obc-rich-text .obc-product-quote-section .wp-block-button__link:focus-visible {
	border-color: #e7e7e7;
	background: #e7e7e7;
	color: var(--obc-ink);
}

.obc-single-product .obc-context-cta[data-ousiki-internal-links="product-oem"] {
	border: 1px solid var(--obc-line);
	background: var(--obc-paper);
	color: var(--obc-ink);
}

.obc-single-product .obc-context-cta[data-ousiki-internal-links="product-oem"] h2 {
	color: var(--obc-ink);
}

.obc-single-product .obc-context-cta[data-ousiki-internal-links="product-oem"] > div > p:last-child {
	color: var(--obc-muted);
}

.obc-single-product .obc-context-cta[data-ousiki-internal-links="product-oem"] .obc-button--light {
	border-color: var(--obc-ink);
	background: transparent;
	color: var(--obc-ink) !important;
}

.obc-single-product .obc-context-cta[data-ousiki-internal-links="product-oem"] .obc-button--light:hover,
.obc-single-product .obc-context-cta[data-ousiki-internal-links="product-oem"] .obc-button--light:focus-visible {
	background: var(--obc-ink);
	color: #fff !important;
}

.obc-related-products .obc-section-heading {
	grid-template-columns: 1fr;
}

.obc-blog-index {
	width: min(1200px, calc(100% - 48px));
	margin: 20px auto 112px;
	color: var(--obc-ink);
}

body.page-id-253 .wp-block-post-content {
	max-width: none;
}

.obc-blog-hero {
	max-width: 900px;
	padding: 76px 0 54px;
}

.obc-blog-hero h2 {
	margin: 0;
	color: var(--obc-ink);
	font-size: clamp(42px, 6vw, 76px);
	font-weight: 620;
	letter-spacing: -0.05em;
	line-height: 1.02;
}

.obc-blog-hero > p:last-child {
	max-width: 690px;
	margin: 28px 0 0;
	color: var(--obc-muted);
	font-size: 18px;
	line-height: 1.65;
}

.obc-blog-category-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 52px;
	padding: 0 0 28px;
	border-bottom: 1px solid var(--obc-line);
}

.obc-blog-category-nav a {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 9px 15px;
	border: 1px solid var(--obc-line);
	background: #fff;
	color: var(--obc-ink);
	font-size: 14px;
	font-weight: 650;
	text-decoration: none;
}

.obc-blog-category-nav a:hover,
.obc-blog-category-nav a.is-active {
	border-color: var(--obc-ink);
	background: var(--obc-ink);
	color: #fff;
}

.obc-article-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.obc-article-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	margin: 0;
	border: 1px solid #e5e1da;
	background: #fff;
}

.obc-article-card__image {
	display: block;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: var(--obc-warm);
}

.obc-article-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.45s ease;
}

.obc-article-card:hover .obc-article-card__image img {
	transform: scale(1.025);
}

.obc-article-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 27px 26px 28px;
}

.obc-article-card__meta {
	margin: 0 0 12px !important;
	color: var(--obc-gold) !important;
	font-size: 11px !important;
	font-weight: 750 !important;
	letter-spacing: 0.12em !important;
	line-height: 1.35 !important;
	text-transform: uppercase;
}

.obc-article-card h3 {
	margin: 0;
	font-size: 22px;
	font-weight: 650;
	letter-spacing: -0.03em;
	line-height: 1.22;
}

.obc-article-card h3 a {
	color: var(--obc-ink);
	text-decoration: none;
}

.obc-article-card__body > p:not(.obc-article-card__meta) {
	margin: 15px 0 0;
	color: var(--obc-muted);
	font-size: 14px;
	line-height: 1.65;
}

.obc-blog-legacy,
.obc-related-articles,
.obc-article-related-products {
	margin-top: 92px;
	padding-top: 80px;
	border-top: 1px solid var(--obc-line);
}

.obc-blog-legacy .obc-section-heading,
.obc-related-articles .obc-section-heading,
.obc-article-related-products .obc-section-heading {
	grid-template-columns: 1fr;
}

.obc-related-articles h2,
.obc-article-related-products h2,
.obc-blog-legacy h2 {
	margin: 0;
	color: var(--obc-ink);
	font-size: clamp(30px, 3.4vw, 50px);
	font-weight: 620;
	letter-spacing: -0.035em;
	line-height: 1.08;
}

.obc-blog-empty {
	padding: 42px;
	border: 1px solid var(--obc-line);
	background: var(--obc-paper);
	color: var(--obc-muted);
	font-size: 16px;
	line-height: 1.6;
	text-align: center;
}

.obc-internal-links {
	width: min(1200px, calc(100% - 48px));
	margin: 92px auto 0;
	padding: 80px 0 0;
	border-top: 1px solid var(--obc-line);
}

.obc-single-product .obc-internal-links {
	width: 100%;
}

.obc-internal-links .obc-section-heading h2 {
	margin: 0;
	color: var(--obc-ink);
	font-size: clamp(30px, 3.4vw, 50px);
	font-weight: 620;
	letter-spacing: -0.035em;
	line-height: 1.08;
}

.obc-link-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.obc-internal-links--manufacturing-hub .obc-link-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.obc-link-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 230px;
	padding: 28px 26px;
	border: 1px solid #e1ddd5;
	background: #fff;
	color: var(--obc-ink);
	text-decoration: none;
}

.obc-link-card:hover {
	border-color: #9e978d;
	background: var(--obc-paper);
}

.obc-link-card h3 {
	margin: 0;
	color: inherit;
	font-size: 21px;
	font-weight: 650;
	letter-spacing: -0.025em;
	line-height: 1.25;
}

.obc-link-card p {
	margin: 15px 0 24px;
	color: var(--obc-muted);
	font-size: 14px;
	line-height: 1.65;
}

.obc-link-card span {
	margin-top: auto;
	color: var(--obc-gold);
	font-size: 13px;
	font-weight: 720;
}

.obc-inline-links {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 28px;
	margin-top: 30px;
}

.obc-inline-links a {
	border-bottom: 1px solid var(--obc-gold);
	color: var(--obc-ink);
	font-size: 14px;
	font-weight: 680;
	text-decoration: none;
}

.obc-context-cta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 44px;
	align-items: center;
	width: min(1200px, calc(100% - 48px));
	margin: 92px auto 0;
	padding: 48px 52px;
	background: #111;
	color: #fff;
}

.obc-single-product .obc-context-cta {
	width: 100%;
}

.obc-context-cta h2 {
	max-width: 760px;
	margin: 0;
	color: #fff;
	font-size: clamp(30px, 3.4vw, 48px);
	font-weight: 620;
	letter-spacing: -0.04em;
	line-height: 1.08;
}

.obc-context-cta > div > p:last-child {
	max-width: 720px;
	margin: 20px 0 0;
	color: #c9c9c9;
	font-size: 15px;
	line-height: 1.65;
}

.obc-context-cta .obc-eyebrow {
	color: #d9ba7c !important;
}

.obc-button--light {
	border-color: #fff;
	background: #fff;
	color: #111 !important;
	white-space: nowrap;
}

.obc-button--light:hover {
	border-color: #e7e7e7;
	background: #e7e7e7;
	color: #111 !important;
}

@media (max-width: 980px) {
	.obc-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

	.obc-link-grid,
	.obc-internal-links--manufacturing-hub .obc-link-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.obc-single-product__hero {
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.obc-single-product__summary {
		position: static;
	}

	.obc-product-title {
		max-width: 18ch;
	}
}

@media (max-width: 760px) {
	.obc-product-grid {
		grid-template-columns: 1fr;
	}

	.obc-product-card h3,
	.obc-product-card__specs {
		min-height: 0;
	}

	/* Keep the retained legacy page CTAs inside the mobile viewport. */
	.osk-btn {
		box-sizing: border-box;
		max-width: 100%;
	}

	/* Retain the original Elementor Blog content without its legacy over-width. */
	body.page-id-253 .elementor-element-a5d3b60 {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.obc-container,
	.obc-single-product,
	.obc-blog-index,
	body.single-ousiki_product .wp-block-post-title {
		width: min(1200px, calc(100% - 32px));
	}

	.obc-single-product {
		padding-top: 48px;
		padding-bottom: 80px;
	}

	.obc-product-gallery__main,
	.obc-single-product__summary {
		border-radius: 16px;
	}

	.obc-product-title {
		font-size: clamp(34px, 7vw, 48px);
	}

	.obc-catalog {
		margin-top: 70px;
		padding: 78px 0;
	}

	.obc-section-heading {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.obc-filter-bar {
		grid-template-columns: 1fr;
	}

	.obc-filter-bar button {
		width: 100%;
	}

	.obc-product-gallery__thumbs {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.obc-actions {
		flex-direction: column;
	}

	.obc-button {
		width: 100%;
		min-height: 52px;
	}

	.obc-product-description,
	.obc-related-products,
	.obc-blog-legacy,
	.obc-related-articles,
	.obc-article-related-products {
		margin-top: 68px;
		padding-top: 58px;
	}

	.obc-rich-text h2 {
		margin-top: 68px;
	}

	.obc-rich-text h3 {
		margin-top: 42px;
	}

	.obc-rich-text figure,
	.obc-rich-text .wp-block-image,
	.obc-rich-text .wp-block-gallery,
	.obc-rich-text .wp-block-columns,
	.obc-rich-text .wp-block-buttons {
		margin-top: 38px;
		margin-bottom: 38px;
	}

	.obc-rich-text .wp-block-columns {
		gap: 18px;
	}

	.obc-single-product .obc-rich-text .obc-feature-list {
		grid-template-columns: 1fr;
	}

	.obc-single-product .obc-rich-text .obc-product-quote-section {
		margin-top: 68px;
		padding: 46px 38px;
		border-radius: 16px;
	}

	.obc-blog-hero {
		padding: 58px 0 42px;
	}

	.obc-internal-links {
		width: min(1200px, calc(100% - 32px));
		margin-top: 68px;
		padding-top: 58px;
	}

	.obc-context-cta {
		grid-template-columns: 1fr;
		gap: 30px;
		width: min(1200px, calc(100% - 32px));
		max-width: calc(100vw - 32px);
		margin-top: 68px;
		padding: 38px 34px;
	}

	.obc-single-product .obc-context-cta {
		width: 100%;
	}

	.obc-context-cta .obc-button {
		width: fit-content;
	}
}

@media (max-width: 540px) {
	.obc-product-grid {
		grid-template-columns: 1fr;
	}

	.obc-article-grid {
		grid-template-columns: 1fr;
	}

	.obc-link-grid,
	.obc-internal-links--manufacturing-hub .obc-link-grid {
		grid-template-columns: 1fr;
	}

	.obc-category-nav {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.obc-category-nav a {
		justify-content: center;
		text-align: center;
	}

	.obc-single-product__summary {
		padding: 24px 20px;
	}

	.obc-single-product {
		padding-top: 32px;
		padding-bottom: 64px;
	}

	.obc-single-product__hero {
		gap: 28px;
	}

	.obc-product-title {
		max-width: none;
		margin-bottom: 18px;
		font-size: clamp(30px, 8.2vw, 34px);
	}

	.obc-spec-list > div {
		grid-template-columns: 1fr;
		gap: 5px;
	}

	.obc-rich-text {
		font-size: 16px;
		line-height: 1.7;
	}

	.obc-rich-text h2 {
		margin-top: 56px;
		font-size: 30px;
	}

	.obc-rich-text h3 {
		margin-top: 36px;
		font-size: 23px;
	}

	.obc-rich-text .wp-block-image img,
	.obc-rich-text .wp-block-gallery img {
		border-radius: 14px;
	}

	.obc-rich-text .wp-block-buttons,
	.obc-rich-text .wp-block-button,
	.obc-rich-text .wp-block-button__link {
		width: 100%;
	}

	.obc-single-product .obc-rich-text .obc-product-quote-section {
		padding: 38px 24px;
	}

	.obc-single-product .obc-context-cta[data-ousiki-internal-links="product-oem"] .obc-button--light {
		width: 100%;
	}

	.obc-blog-category-nav {
		display: grid;
		grid-template-columns: 1fr;
	}

	.obc-blog-category-nav a {
		justify-content: center;
		text-align: center;
	}

	.obc-article-card__body {
		padding: 23px 21px 24px;
	}

	.obc-link-card {
		min-height: 0;
		padding: 24px 22px;
	}

	.obc-context-cta {
		padding: 32px 24px;
	}

	.obc-context-cta .obc-button {
		width: 100%;
		white-space: normal;
		text-align: center;
	}
}

.osk-seo-category,
.osk-seo-section,
.osk-seo-final-cta {
	--osk-ink: #0b0b0c;
	--osk-muted: #656565;
	--osk-line: #dedbd5;
	--osk-paper: #f7f5f1;
	--osk-gold: #8a672c;
	box-sizing: border-box;
	color: var(--osk-ink);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.osk-seo-category *,
.osk-seo-section *,
.osk-seo-final-cta * {
	box-sizing: border-box;
}

.entry-content > .osk-seo-category {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.osk-seo-hero,
.osk-seo-section,
.osk-seo-final-cta,
.obc-catalog--landing {
	position: relative;
	left: auto;
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.osk-seo-shell {
	width: min(1200px, calc(100% - 48px));
	margin-right: auto;
	margin-left: auto;
}

.osk-seo-hero {
	padding: 132px 0 112px;
	background:
		radial-gradient(circle at 78% 18%, rgba(255, 255, 255, 0.9), transparent 34%),
		linear-gradient(135deg, #f1ede6 0%, #faf9f7 68%, #eee9e1 100%);
}

.osk-seo-hero .osk-seo-shell {
	max-width: 1180px;
}

.osk-seo-eyebrow {
	margin: 0 0 20px !important;
	color: var(--osk-gold) !important;
	font-size: 12px !important;
	font-weight: 760 !important;
	letter-spacing: 0.16em !important;
	line-height: 1.45 !important;
	text-transform: uppercase;
}

.osk-seo-hero h1 {
	max-width: 1040px;
	margin: 0;
	color: var(--osk-ink);
	font-size: clamp(48px, 6.5vw, 86px);
	font-weight: 620;
	letter-spacing: -0.055em;
	line-height: 0.98;
}

.osk-seo-lead {
	max-width: 810px;
	margin: 32px 0 0 !important;
	color: #4e4e50;
	font-size: clamp(19px, 2vw, 25px) !important;
	line-height: 1.5 !important;
}

.osk-seo-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 38px;
}

.osk-seo-actions--center {
	justify-content: center;
}

.osk-seo-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 14px 24px;
	border: 1px solid var(--osk-ink);
	border-radius: 3px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none !important;
	transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.osk-seo-button:hover {
	transform: translateY(-1px);
}

.osk-seo-button--primary {
	background: var(--osk-ink);
	color: #fff !important;
}

.osk-seo-button--secondary {
	background: transparent;
	color: var(--osk-ink) !important;
}

.osk-seo-section {
	padding: 112px 0;
	background: #fff;
}

.osk-seo-section--soft {
	background: var(--osk-paper);
}

.osk-seo-two-column {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(380px, 1.08fr);
	gap: 80px;
	align-items: start;
}

.osk-seo-section h2,
.osk-seo-final-cta h2 {
	max-width: 920px;
	margin: 0;
	font-size: clamp(34px, 4.3vw, 58px);
	font-weight: 620;
	letter-spacing: -0.045em;
	line-height: 1.05;
}

.osk-seo-copy p {
	margin: 0 0 20px !important;
	color: var(--osk-muted);
	font-size: 18px !important;
	line-height: 1.72 !important;
}

.osk-oem-hero {
	background:
		radial-gradient(circle at 76% 18%, rgba(255, 255, 255, 0.98), transparent 32%),
		linear-gradient(135deg, #eee9e1 0%, #faf9f7 62%, #e8e1d6 100%);
}

.osk-oem-section-lead {
	max-width: 800px;
	margin: 28px 0 0 !important;
	color: var(--osk-muted);
	font-size: 18px !important;
	line-height: 1.72 !important;
}

.osk-seo-card-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	margin-top: 48px;
}

.osk-seo-card {
	min-height: 210px;
	padding: 30px 26px;
	border: 1px solid var(--osk-line);
	background: rgba(255, 255, 255, 0.78);
}

.osk-seo-card h3,
.osk-seo-process h3 {
	margin: 0 0 12px;
	font-size: 20px;
	font-weight: 680;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.osk-seo-card p,
.osk-seo-process p {
	margin: 0 !important;
	color: var(--osk-muted);
	font-size: 15px !important;
	line-height: 1.62 !important;
}

.osk-oem-options .osk-seo-card {
	display: flex;
	flex-direction: column;
}

.osk-oem-option-number {
	display: block;
	margin-bottom: 40px;
	color: var(--osk-gold);
	font-size: 12px;
	font-weight: 780;
	letter-spacing: 0.14em;
}

.osk-oem-card-link {
	margin-top: auto;
	padding-top: 26px;
	color: var(--osk-ink) !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none !important;
}

.osk-mfg-page {
	--osk-steel: #9aa5aa;
	--osk-steel-dark: #253039;
}

.osk-mfg-page figure {
	margin: 0;
}

.osk-mfg-page figure img {
	display: block;
	width: 100%;
	object-fit: cover;
}

.osk-mfg-page figcaption {
	margin-top: 12px;
	color: #777d80;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.45;
	text-transform: uppercase;
}

.osk-mfg-hero {
	padding: 72px 0;
	background: #0b0d0f;
	color: #fff;
}

.osk-mfg-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.86fr) minmax(480px, 1.14fr);
	gap: 72px;
	align-items: center;
}

.osk-mfg-hero .osk-seo-eyebrow {
	color: #aab5ba !important;
}

.osk-mfg-hero h1 {
	max-width: 690px;
	color: #fff;
	font-size: clamp(52px, 5.9vw, 82px);
	letter-spacing: -0.06em;
}

.osk-mfg-hero .osk-seo-lead {
	max-width: 660px;
	color: #c3c7c9;
	font-size: clamp(18px, 1.65vw, 23px) !important;
}

.osk-mfg-hero .osk-seo-button--primary {
	border-color: #fff;
	background: #fff;
	color: #0b0d0f !important;
}

.osk-mfg-hero .osk-seo-button--secondary {
	border-color: #596166;
	color: #fff !important;
}

.osk-mfg-hero-media img {
	aspect-ratio: 1.18 / 1;
	filter: saturate(0.72) contrast(1.06);
}

.osk-mfg-hero-media figcaption {
	color: #91999d;
}

.osk-mfg-hero-index {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 58px;
	border-top: 1px solid #3a4044;
}

.osk-mfg-hero-index span {
	padding: 17px 12px 0 0;
	color: #a8afb2;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.osk-mfg-overview-gallery {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
	gap: 18px;
	margin-top: 72px;
}

.osk-mfg-overview-gallery img {
	aspect-ratio: 4 / 3;
	filter: saturate(0.78) contrast(1.04);
}

.osk-mfg-workflow {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 54px;
	border-top: 1px solid var(--osk-line);
	border-left: 1px solid var(--osk-line);
}

.osk-mfg-workflow > div {
	min-height: 250px;
	padding: 30px 28px;
	border-right: 1px solid var(--osk-line);
	border-bottom: 1px solid var(--osk-line);
	background: rgba(255, 255, 255, 0.54);
}

.osk-mfg-workflow span,
.osk-mfg-material-grid span,
.osk-mfg-quality-list span {
	display: block;
	margin-bottom: 48px;
	color: var(--osk-gold);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
}

.osk-mfg-workflow h3,
.osk-mfg-material-grid h3 {
	margin: 0 0 12px;
	font-size: 21px;
	font-weight: 680;
	letter-spacing: -0.025em;
}

.osk-mfg-workflow p,
.osk-mfg-material-grid p {
	margin: 0 !important;
	color: var(--osk-muted);
	font-size: 15px !important;
	line-height: 1.65 !important;
}

.osk-mfg-dark {
	background: #111416;
	color: #fff;
}

.osk-mfg-dark .osk-seo-eyebrow {
	color: #aeb8bd !important;
}

.osk-mfg-dark h2 {
	color: #fff;
}

.osk-mfg-dark-lead {
	max-width: 760px;
	margin: 28px 0 0 !important;
	color: #b7bdc0;
	font-size: 18px !important;
	line-height: 1.7 !important;
}

.osk-mfg-material-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 58px;
	border-top: 1px solid #394044;
	border-bottom: 1px solid #394044;
}

.osk-mfg-material-grid article {
	display: flex;
	min-height: 300px;
	padding: 30px 25px;
	border-right: 1px solid #394044;
	flex-direction: column;
}

.osk-mfg-material-grid article:last-child {
	border-right: 0;
}

.osk-mfg-material-grid span {
	color: #95a5ad;
}

.osk-mfg-material-grid h3 {
	color: #fff;
}

.osk-mfg-material-grid p {
	color: #aeb5b8;
}

.osk-mfg-material-grid a {
	margin-top: auto;
	padding-top: 28px;
	color: #fff !important;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
}

.osk-mfg-equipment-grid,
.osk-mfg-quality-grid,
.osk-mfg-packaging-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.78fr) minmax(520px, 1.22fr);
	gap: 78px;
	align-items: center;
}

.osk-mfg-equipment-copy > p:not(.osk-seo-eyebrow) {
	margin: 28px 0 0 !important;
	color: var(--osk-muted);
	font-size: 18px !important;
	line-height: 1.72 !important;
}

.osk-mfg-spec-list {
	margin: 36px 0 0;
	padding: 0;
	border-top: 1px solid var(--osk-line);
	list-style: none;
}

.osk-mfg-spec-list li {
	padding: 17px 0;
	border-bottom: 1px solid var(--osk-line);
	color: var(--osk-ink);
	font-size: 15px;
	font-weight: 660;
}

.osk-mfg-equipment-media {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(190px, 0.65fr);
	gap: 16px;
	align-items: end;
}

.osk-mfg-equipment-main img {
	aspect-ratio: 4 / 3;
}

.osk-mfg-equipment-detail img {
	aspect-ratio: 3 / 4;
}

.osk-mfg-equipment-media img,
.osk-mfg-quality-grid img,
.osk-mfg-packaging-grid img {
	filter: saturate(0.72) contrast(1.04);
}

.osk-mfg-quality-grid {
	grid-template-columns: minmax(460px, 1fr) minmax(0, 1fr);
}

.osk-mfg-quality-grid > figure img {
	aspect-ratio: 4 / 3;
}

.osk-mfg-quality-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 40px;
	border-top: 1px solid var(--osk-line);
	border-left: 1px solid var(--osk-line);
}

.osk-mfg-quality-list > div {
	min-height: 190px;
	padding: 22px;
	border-right: 1px solid var(--osk-line);
	border-bottom: 1px solid var(--osk-line);
}

.osk-mfg-quality-list span {
	margin-bottom: 24px;
}

.osk-mfg-quality-list strong,
.osk-mfg-packaging-points strong {
	display: block;
	margin-bottom: 9px;
	font-size: 16px;
	letter-spacing: -0.015em;
}

.osk-mfg-quality-list p,
.osk-mfg-packaging-points p {
	margin: 0 !important;
	color: var(--osk-muted);
	font-size: 14px !important;
	line-height: 1.6 !important;
}

.osk-mfg-packaging-grid {
	grid-template-columns: minmax(0, 1.06fr) minmax(420px, 0.94fr);
}

.osk-mfg-packaging-grid > figure img {
	aspect-ratio: 1 / 1;
}

.osk-mfg-packaging-points {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 40px;
	border-top: 1px solid var(--osk-line);
}

.osk-mfg-packaging-points > div {
	padding: 24px 18px 0 0;
}

.osk-seo-process {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin-top: 52px;
	border-top: 1px solid var(--osk-line);
	border-bottom: 1px solid var(--osk-line);
}

.osk-seo-process > div {
	min-height: 230px;
	padding: 28px 24px 32px;
	border-right: 1px solid var(--osk-line);
}

.osk-seo-process > div:last-child {
	border-right: 0;
}

.osk-seo-process span {
	display: block;
	margin-bottom: 44px;
	color: var(--osk-gold);
	font-size: 12px;
	font-weight: 780;
	letter-spacing: 0.14em;
}

.osk-seo-text-link {
	margin: 34px 0 0 !important;
}

.osk-seo-text-link a {
	color: var(--osk-ink) !important;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none !important;
}

.obc-catalog--landing {
	margin-top: 0;
	padding: 108px 0;
	background: #f7f5f1;
}

.osk-seo-faq {
	border-top: 1px solid var(--osk-line);
}

.osk-seo-faq-list {
	max-width: 920px;
	margin-top: 48px;
	border-top: 1px solid var(--osk-line);
}

.osk-seo-faq details {
	border-bottom: 1px solid var(--osk-line);
}

.osk-seo-faq summary {
	position: relative;
	padding: 25px 54px 25px 0;
	cursor: pointer;
	font-size: 19px;
	font-weight: 680;
	letter-spacing: -0.015em;
	line-height: 1.35;
	list-style: none;
}

.osk-seo-faq summary::-webkit-details-marker {
	display: none;
}

.osk-seo-faq summary::after {
	position: absolute;
	top: 23px;
	right: 4px;
	content: "+";
	color: var(--osk-gold);
	font-size: 26px;
	font-weight: 400;
}

.osk-seo-faq details[open] summary::after {
	content: "–";
}

.osk-seo-faq details p {
	max-width: 760px;
	margin: -3px 0 25px !important;
	color: var(--osk-muted);
	font-size: 16px !important;
	line-height: 1.68 !important;
}

.osk-seo-final-cta {
	padding: 112px 0;
	background: #0b0b0c;
	color: #fff;
	text-align: center;
}

.osk-seo-final-cta .osk-seo-eyebrow {
	color: #c7a66a !important;
}

.osk-seo-final-cta h2 {
	margin-right: auto;
	margin-left: auto;
	color: #fff;
}

.osk-seo-final-cta > .osk-seo-shell > p:not(.osk-seo-eyebrow) {
	max-width: 720px;
	margin: 24px auto 0 !important;
	color: #c8c8c8;
	font-size: 18px !important;
	line-height: 1.65 !important;
}

.osk-seo-final-cta .osk-seo-button--primary {
	border-color: #fff;
	background: #fff;
	color: #0b0b0c !important;
}

.osk-seo-final-cta .osk-seo-button--secondary {
	border-color: #666;
	color: #fff !important;
}

.osk-qc-page {
	--osk-qc-steel: #9ba8ae;
	--osk-qc-dark: #101315;
}

.osk-qc-page figure {
	margin: 0;
}

.osk-qc-page figure img {
	display: block;
	width: 100%;
	object-fit: cover;
	filter: saturate(0.68) contrast(1.05);
}

.osk-qc-page figcaption {
	margin-top: 12px;
	color: #777d80;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.45;
	text-transform: uppercase;
}

.osk-qc-hero {
	padding: 76px 0;
}

.osk-qc-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(500px, 1.1fr);
	gap: 72px;
	align-items: center;
}

.osk-qc-hero h1 {
	max-width: 720px;
	font-size: clamp(48px, 5.1vw, 72px);
}

.osk-qc-hero-media img {
	aspect-ratio: 4 / 3;
}

.osk-qc-hero-media figcaption {
	color: #91999d;
}

.osk-qc-flow {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 60px;
	border-top: 1px solid var(--osk-line);
	border-bottom: 1px solid var(--osk-line);
}

.osk-qc-flow article {
	position: relative;
	min-height: 290px;
	padding: 30px 28px;
	border-right: 1px solid var(--osk-line);
}

.osk-qc-flow article:last-child {
	border-right: 0;
}

.osk-qc-flow article:not(:last-child)::after {
	position: absolute;
	top: 33px;
	right: -7px;
	z-index: 2;
	width: 13px;
	height: 13px;
	border-top: 1px solid var(--osk-gold);
	border-right: 1px solid var(--osk-gold);
	background: #fff;
	content: "";
	transform: rotate(45deg);
}

.osk-qc-flow span,
.osk-qc-check-grid span,
.osk-qc-standards > article > span {
	display: block;
	margin-bottom: 48px;
	color: var(--osk-gold);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.14em;
}

.osk-qc-flow h3,
.osk-qc-standards h3 {
	margin: 0 0 13px;
	font-size: 21px;
	font-weight: 690;
	letter-spacing: -0.025em;
	line-height: 1.2;
}

.osk-qc-flow p,
.osk-qc-standards p {
	margin: 0 !important;
	color: var(--osk-muted);
	font-size: 15px !important;
	line-height: 1.66 !important;
}

.osk-qc-reference {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 22px;
	padding: 18px 20px;
	background: #111416;
	color: #fff;
}

.osk-qc-reference strong {
	margin-right: auto;
	font-size: 13px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.osk-qc-reference span {
	padding: 8px 12px;
	border: 1px solid #464e52;
	color: #c3c9cc;
	font-size: 12px;
	font-weight: 650;
}

.osk-qc-split {
	display: grid;
	grid-template-columns: minmax(440px, 0.92fr) minmax(0, 1.08fr);
	gap: 80px;
	align-items: center;
}

.osk-qc-split > figure img {
	aspect-ratio: 4 / 3;
}

.osk-qc-lead,
.osk-qc-section-lead {
	max-width: 850px;
	margin: 28px 0 0 !important;
	color: var(--osk-muted);
	font-size: 18px !important;
	line-height: 1.72 !important;
}

.osk-qc-checklist {
	margin: 38px 0 0;
	padding: 0;
	border-top: 1px solid var(--osk-line);
	list-style: none;
}

.osk-qc-checklist li {
	display: grid;
	grid-template-columns: minmax(150px, 0.72fr) minmax(0, 1.28fr);
	gap: 24px;
	padding: 17px 0;
	border-bottom: 1px solid var(--osk-line);
}

.osk-qc-checklist strong {
	font-size: 15px;
	line-height: 1.5;
}

.osk-qc-checklist span {
	color: var(--osk-muted);
	font-size: 14px;
	line-height: 1.6;
}

.osk-qc-dark {
	background: var(--osk-qc-dark);
	color: #fff;
}

.osk-qc-dark h2 {
	color: #fff;
}

.osk-qc-dark .osk-seo-eyebrow {
	color: #aeb8bd !important;
}

.osk-qc-dark .osk-qc-lead {
	color: #b9c0c3;
}

.osk-qc-dark figure img {
	filter: saturate(0.58) contrast(1.08);
}

.osk-qc-dark figcaption {
	color: #8f999e;
}

.osk-qc-check-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 42px;
	border-top: 1px solid #3a4246;
	border-left: 1px solid #3a4246;
}

.osk-qc-check-grid > div {
	min-height: 180px;
	padding: 24px;
	border-right: 1px solid #3a4246;
	border-bottom: 1px solid #3a4246;
}

.osk-qc-check-grid span {
	margin-bottom: 24px;
	color: var(--osk-qc-steel);
}

.osk-qc-check-grid strong {
	display: block;
	margin-bottom: 9px;
	font-size: 16px;
	letter-spacing: -0.015em;
}

.osk-qc-check-grid p {
	margin: 0 !important;
	color: #aeb6ba;
	font-size: 14px !important;
	line-height: 1.6 !important;
}

.osk-qc-standards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 54px;
	border-top: 1px solid var(--osk-line);
	border-left: 1px solid var(--osk-line);
}

.osk-qc-standards article {
	display: flex;
	min-height: 290px;
	padding: 28px;
	border-right: 1px solid var(--osk-line);
	border-bottom: 1px solid var(--osk-line);
	flex-direction: column;
}

.osk-qc-standards small {
	display: block;
	margin-top: auto;
	padding-top: 26px;
	color: #6f7476;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.45;
	text-transform: uppercase;
}

.osk-qc-standards .osk-qc-standards-note {
	background: #111416;
}

.osk-qc-standards-note h3,
.osk-qc-standards-note p {
	color: #fff;
}

.osk-qc-standards-note p {
	color: #bcc2c5 !important;
}

.osk-qc-standards-note > span {
	color: var(--osk-qc-steel) !important;
}

@media (max-width: 980px) {
	.osk-mfg-hero-grid,
	.osk-mfg-equipment-grid,
	.osk-mfg-quality-grid,
	.osk-mfg-packaging-grid {
		grid-template-columns: 1fr;
		gap: 50px;
	}

	.osk-mfg-hero-media img {
		aspect-ratio: 16 / 9;
	}

	.osk-mfg-material-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.osk-mfg-material-grid article:nth-child(2) {
		border-right: 0;
	}

	.osk-mfg-material-grid article:nth-child(-n + 2) {
		border-bottom: 1px solid #394044;
	}

	.osk-seo-two-column {
		grid-template-columns: 1fr;
		gap: 32px;
	}

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

	.osk-seo-process {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.osk-seo-process > div:nth-child(2n) {
		border-right: 0;
	}

	.osk-seo-process > div:last-child {
		grid-column: 1 / -1;
		border-top: 1px solid var(--osk-line);
	}

	.osk-qc-hero-grid,
	.osk-qc-split {
		grid-template-columns: 1fr;
		gap: 50px;
	}

	.osk-qc-flow {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		border-left: 1px solid var(--osk-line);
	}

	.osk-qc-flow article {
		border-bottom: 1px solid var(--osk-line);
	}

	.osk-qc-flow article:not(:last-child)::after {
		display: none;
	}

	.osk-qc-standards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.osk-mfg-hero {
		padding: 72px 0 64px;
	}

	.osk-mfg-hero h1 {
		font-size: clamp(42px, 12vw, 58px);
	}

	.osk-mfg-overview-gallery {
		grid-template-columns: 1fr;
		margin-top: 48px;
	}

	.osk-mfg-workflow {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.osk-mfg-packaging-points {
		grid-template-columns: 1fr;
	}

	.osk-mfg-packaging-points > div {
		padding: 20px 0;
		border-bottom: 1px solid var(--osk-line);
	}

	.osk-seo-shell {
		width: calc(100% - 32px);
	}

	.osk-seo-hero {
		padding: 92px 0 76px;
	}

	.osk-seo-hero h1 {
		font-size: clamp(42px, 12vw, 58px);
		line-height: 1.01;
	}

	.osk-seo-section,
	.osk-seo-final-cta,
	.obc-catalog--landing {
		padding: 78px 0;
	}

	.osk-seo-actions {
		flex-direction: column;
	}

	.osk-seo-button {
		width: 100%;
	}

	.osk-qc-hero {
		padding: 72px 0 64px;
	}

	.osk-qc-reference {
		align-items: stretch;
		flex-direction: column;
	}

	.osk-qc-reference strong {
		margin: 0 0 6px;
	}
}

@media (max-width: 540px) {
	.osk-mfg-hero-index,
	.osk-mfg-workflow,
	.osk-mfg-material-grid,
	.osk-mfg-equipment-media,
	.osk-mfg-quality-list {
		grid-template-columns: 1fr;
	}

	.osk-mfg-hero-index {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.osk-mfg-material-grid article {
		min-height: 0;
		border-right: 0;
		border-bottom: 1px solid #394044;
	}

	.osk-mfg-material-grid article:nth-child(2) {
		border-right: 0;
	}

	.osk-mfg-material-grid article:last-child {
		border-bottom: 0;
	}

	.osk-mfg-workflow > div {
		min-height: 0;
	}

	.osk-mfg-equipment-detail img {
		aspect-ratio: 4 / 3;
	}

	.osk-mfg-quality-list > div {
		min-height: 0;
	}

	.osk-seo-card-grid,
	.osk-seo-process {
		grid-template-columns: 1fr;
	}

	.osk-seo-card {
		min-height: 0;
	}

	.osk-seo-process > div {
		min-height: 0;
		border-right: 0;
		border-bottom: 1px solid var(--osk-line);
	}

	.osk-seo-process > div:last-child {
		grid-column: auto;
		border-top: 0;
		border-bottom: 0;
	}

	.osk-seo-process span {
		margin-bottom: 24px;
	}

	.osk-seo-faq summary {
		font-size: 17px;
	}

	.osk-qc-flow,
	.osk-qc-check-grid,
	.osk-qc-standards {
		grid-template-columns: 1fr;
	}

	.osk-qc-flow article,
	.osk-qc-check-grid > div,
	.osk-qc-standards article {
		min-height: 0;
	}

	.osk-qc-checklist li {
		grid-template-columns: 1fr;
		gap: 7px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.obc-catalog *,
	.obc-single-product *,
	.obc-blog-index *,
	.obc-related-articles *,
	.obc-article-related-products *,
	.obc-internal-links *,
	.obc-context-cta *,
	.osk-seo-category *,
	.osk-seo-section *,
	.osk-seo-final-cta * {
		scroll-behavior: auto !important;
		transition: none !important;
	}
}

/* Visual unification: shared page rhythm, headings and responsive proportions. */

/*
 * Shared site header.
 * Keep the WordPress/Hostinger header identical across Home, Products,
 * Private Label, Sourcing Partner, About, Blog and Contact.
 */
body .site-header .hostinger-ai-menu-wrapper {
	box-sizing: border-box !important;
	width: min(1100px, calc(100% - 48px)) !important;
	min-height: 72px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	padding: 24px 0 !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 40px !important;
}

body .site-header .wp-block-site-title,
body .site-header .wp-block-site-title a,
body .site-header .wp-block-navigation,
body .site-header .wp-block-navigation a {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
}

body .site-header .wp-block-site-title,
body .site-header .wp-block-site-title a {
	margin: 0 !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	letter-spacing: -0.02em !important;
	line-height: 1.5 !important;
	text-decoration: none !important;
}

body .site-header .wp-block-navigation {
	font-size: 16px !important;
	line-height: 1.5 !important;
}

body .site-header .wp-block-navigation__container {
	column-gap: 40px !important;
	row-gap: 14px !important;
}

body.page-id-231 main > .wp-block-group:first-child,
body.page-id-786 main > .wp-block-group:first-child,
body.page-id-787 main > .wp-block-group:first-child,
body.page-id-966 main > .wp-block-group:first-child,
body.page-id-971 main > .wp-block-group:first-child,
body.page-id-973 main > .wp-block-group:first-child,
body.page-id-979 main > .wp-block-group:first-child {
	display: none !important;
}

body.page-id-231 main > .entry-content,
body.page-id-786 main > .entry-content,
body.page-id-787 main > .entry-content,
body.page-id-966 main > .entry-content,
body.page-id-971 main > .entry-content,
body.page-id-973 main > .entry-content,
body.page-id-979 main > .entry-content {
	margin-top: 0 !important;
}

/*
 * The theme prints an empty title group plus a default 40px entry margin on
 * custom landing pages. Remove both so the first visual section begins
 * immediately below the shared header.
 */
body.page-id-786 main,
body.page-id-787 main,
body.page-id-966 main,
body.page-id-971 main,
body.page-id-973 main,
body.page-id-979 main,
body.page-id-786 main > .entry-content,
body.page-id-787 main > .entry-content,
body.page-id-966 main > .entry-content,
body.page-id-971 main > .entry-content,
body.page-id-973 main > .entry-content,
body.page-id-979 main > .entry-content,
body.page-id-786 .entry-content > .osk-seo-category,
body.page-id-787 .entry-content > .osk-seo-category,
body.page-id-966 .entry-content > .osk-seo-category,
body.page-id-971 .entry-content > .osk-seo-category,
body.page-id-973 .entry-content > .osk-seo-category,
body.page-id-979 .entry-content > .osk-seo-category {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.page-id-230 main > .wp-block-group:first-child,
body.page-id-232 main > .wp-block-group:first-child,
body.page-id-253 main > .wp-block-group:first-child {
	box-sizing: border-box;
	width: min(1200px, calc(100% - 48px));
	margin-right: auto !important;
	margin-left: auto !important;
	padding: 64px 0 38px !important;
}

body.page-id-230 main > .wp-block-group:first-child h1,
body.page-id-232 main > .wp-block-group:first-child h1,
body.page-id-253 main > .wp-block-group:first-child h1,
body.page-id-231 .osk-hero h1,
body .osk-seo-category .osk-seo-hero h1,
body .osk-seo-category .osk-mfg-hero h1 {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
	font-weight: 620 !important;
	letter-spacing: -0.045em !important;
	line-height: 1.03 !important;
}

body.page-id-230 main > .wp-block-group:first-child h1,
body.page-id-232 main > .wp-block-group:first-child h1,
body.page-id-253 main > .wp-block-group:first-child h1 {
	max-width: 980px;
	margin: 0 !important;
	font-size: clamp(40px, 4.6vw, 64px) !important;
}

.entry-content > .osk-seo-category {
	width: min(1320px, calc(100% - 48px)) !important;
	max-width: 1320px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

body .osk-seo-category .osk-seo-hero h1,
body .osk-seo-category .osk-mfg-hero h1 {
	font-size: clamp(48px, 5vw, 72px) !important;
}

body.page-id-231 .entry-content > .osk-hero,
body.page-id-231 .entry-content > .osk-wrap,
body.page-id-231 .entry-content > .osk-band {
	box-sizing: border-box;
	width: min(1200px, calc(100% - 48px)) !important;
	max-width: 1200px !important;
	margin-right: auto !important;
	margin-left: auto !important;
}

body.page-id-231 .entry-content > .osk-hero {
	min-height: 0 !important;
	margin-top: 0 !important;
	padding: 58px 48px !important;
}

body.page-id-231 .entry-content > .osk-hero h1 {
	max-width: 820px;
	font-size: clamp(42px, 4.35vw, 58px) !important;
}

body.page-id-231 .entry-content > .osk-wrap.osk-section {
	padding-top: 80px !important;
	padding-bottom: 80px !important;
}

body.page-id-231 .entry-content > .osk-band {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

body.home .ohv2-blog {
	background: #f7f5f1 !important;
}

body.home .ohv2-blog .ohv2-wrap {
	width: min(1200px, calc(100% - 48px)) !important;
}

body.home .ohv2-blog .ohv2-headrow {
	align-items: end !important;
	margin-bottom: 38px !important;
}

body.home .ohv2-blog .ohv2-cards {
	align-items: stretch !important;
	gap: 20px !important;
}

body.home .ohv2-blog .ohv2-card {
	display: flex !important;
	height: 100% !important;
	min-height: 0 !important;
	flex-direction: column !important;
	overflow: hidden !important;
	border: 1px solid #e2ddd4 !important;
	background: #fff !important;
	box-shadow: none !important;
}

body.home .ohv2-blog .ohv2-card__image {
	display: block !important;
	width: 100% !important;
	aspect-ratio: 16 / 10 !important;
	overflow: hidden !important;
	background: #e9e5de !important;
}

body.home .ohv2-blog .ohv2-card__image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
}

body.home .ohv2-blog .ohv2-card__body {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
	padding: 24px !important;
}

body.home .ohv2-blog .ohv2-card h3 {
	display: -webkit-box;
	min-height: 2.64em;
	margin: 0 !important;
	overflow: hidden;
	font-size: 20px !important;
	line-height: 1.32 !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

body.home .ohv2-blog .ohv2-card p {
	display: -webkit-box;
	margin: 12px 0 0 !important;
	overflow: hidden;
	color: #666 !important;
	font-size: 14px !important;
	line-height: 1.58 !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

@media (max-width: 900px) {
	body .site-header .hostinger-ai-menu-wrapper {
		width: 100% !important;
		min-height: 74px !important;
		padding: 0 24px !important;
		gap: 24px !important;
	}

	body .site-header .wp-block-navigation__container {
		column-gap: 24px !important;
	}

	body.page-id-230 main > .wp-block-group:first-child,
	body.page-id-232 main > .wp-block-group:first-child,
	body.page-id-253 main > .wp-block-group:first-child,
	.entry-content > .osk-seo-category,
	body.page-id-231 .entry-content > .osk-hero,
	body.page-id-231 .entry-content > .osk-wrap,
	body.page-id-231 .entry-content > .osk-band,
	body.home .ohv2-blog .ohv2-wrap {
		width: calc(100% - 32px) !important;
	}

	body.page-id-231 .entry-content > .osk-hero {
		padding: 56px 34px !important;
	}

	body.home .ohv2-blog .ohv2-headrow {
		align-items: flex-start !important;
	}

	body.home .ohv2-blog .ohv2-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 620px) {
	body .site-header .hostinger-ai-menu-wrapper {
		padding-right: 18px !important;
		padding-left: 18px !important;
	}

	body.page-id-230 main > .wp-block-group:first-child,
	body.page-id-232 main > .wp-block-group:first-child,
	body.page-id-253 main > .wp-block-group:first-child {
		padding: 48px 0 28px !important;
	}

	body .osk-seo-category .osk-seo-hero h1,
	body .osk-seo-category .osk-mfg-hero h1,
	body.page-id-231 .entry-content > .osk-hero h1 {
		font-size: clamp(38px, 11vw, 48px) !important;
	}

	body.page-id-231 .entry-content > .osk-hero {
		padding: 50px 22px !important;
	}

	body.page-id-231 .entry-content > .osk-wrap.osk-section {
		padding-top: 64px !important;
		padding-bottom: 64px !important;
	}

	body.home .ohv2-blog .ohv2-cards {
		grid-template-columns: 1fr !important;
	}

	body.home .ohv2-blog .ohv2-card__image {
		aspect-ratio: 4 / 3 !important;
	}
}

/* Product-to-contact inquiry context. */
body.page-id-232 .wpcf7 .obc-inquiry-context {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 26px;
	padding: 20px 22px;
	border: 1px solid #e5e2dc;
	border-radius: 10px;
	background: #f7f6f3;
	color: #111;
}

body.page-id-232 .wpcf7 .obc-inquiry-context p {
	margin: 0;
}

body.page-id-232 .wpcf7 .obc-inquiry-context__label {
	color: #7a5a23;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.4;
	text-transform: uppercase;
}

body.page-id-232 .wpcf7 .obc-inquiry-context__product {
	margin-top: 7px !important;
	font-size: clamp(20px, 2vw, 26px);
	font-weight: 650;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

body.page-id-232 .wpcf7 .obc-inquiry-context__model {
	margin-top: 7px !important;
	color: #5f5f5f;
	font-size: 14px;
	line-height: 1.5;
}

body.page-id-232 .wpcf7 .obc-inquiry-context__model span {
	color: #2b2b2b;
	font-weight: 600;
}

@media (max-width: 620px) {
	body.page-id-232 .wpcf7 .obc-inquiry-context {
		margin-bottom: 22px;
		padding: 17px 18px;
		border-radius: 8px;
	}
}
