/* Opt-in layouts built from ordinary Gutenberg blocks. */
.vrc-category-details:has(.vrc-category-section) { padding: 0; }
.vrc-category-details__inner:has(> .vrc-category-section) { max-width: none; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section {
	--vrc-section-heading-gap: 48px;
	margin: 0;
	padding: clamp(48px, 6vw, 80px) max(24px, calc((100% - 1180px) / 2));
}
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section:not(.has-background) {
	background: var(--vrc-category-background, var(--vrc-category-page-background, #fff));
}
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section--accent:not(.has-background) {
	background: var(--vrc-category-background, #f5f3ec);
}
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section > :first-child { margin-top: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section > :last-child { margin-bottom: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section > h2 { margin-bottom: var(--vrc-section-heading-gap); }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section > h2 + * { margin-top: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-enquiry.vrc-category-section { border: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-explanation-layout {
	display: grid;
	grid-template-columns: 1.1fr .9fr;
	gap: 48px;
	align-items: center;
	margin: 28px 0 0;
}
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-explanation-copy { max-width: 850px; }
.vrc-category-details .vrc-category-explanation-layout:not(:has(.vrc-category-fabric-slot img[src]:not([src=""]))) { grid-template-columns: 1fr; }
.vrc-category-details .vrc-category-fabric-slot:not(:has(img[src]:not([src=""]))) { display: none; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-fabric-image { margin: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-fabric-image img { display: block; width: 100%; height: auto; max-height: 420px; object-fit: contain; border-radius: 4px; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-garments {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 28px;
	margin: 32px 0 0;
}
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-garment-use { min-width: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-garment-illustration { margin: 0 0 20px; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-garment-illustration img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: contain;
}
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-garment-use h3 { margin: 0 0 10px; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-garment-use p { font-size: 15px; line-height: 1.6; margin: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-metrics {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
}
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-metric { min-width: 0; padding: 0 24px; border-left: 1px solid #cbd2c7; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-metric:first-child { padding-left: 0; border-left: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-value { margin: 0 0 12px; color: #193c34; font-size: clamp(28px, 3.4vw, 44px); font-weight: 650; line-height: 1.1; letter-spacing: -.045em; white-space: nowrap; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-label { margin: 0; color: #193c34; font-size: 18px; font-weight: 600; line-height: 1.4; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-note { max-width: 850px; margin: 56px 0 0; color: #536057; font-size: 14px; line-height: 1.65; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-certification-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 56px; align-items: center; margin: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-certification-logo { margin: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-certification-logo img { display: block; width: 100%; height: auto; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-certification-copy > :last-child { margin-bottom: 0; }
:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-certification-link { display: inline-flex; align-items: center; min-height: 44px; color: #193c34; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 900px) {
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 28px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-metric:nth-child(odd) { padding-left: 0; border-left: 0; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-value { font-size: clamp(30px, 6vw, 44px); }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-note { margin-top: 40px; }
}
@media (max-width: 781px) {
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-section { --vrc-section-heading-gap: 36px; padding: 40px 20px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-explanation-layout { grid-template-columns: 1fr; gap: 28px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-garments { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-garment-use h3 { font-size: 18px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-certification-layout { grid-template-columns: 1fr; gap: 28px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-certification-logo { max-width: 240px; }
}
@media (max-width: 480px) {
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-metric { padding-inline: 16px 0; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-metric:nth-child(odd) { padding-right: 12px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-value { font-size: clamp(28px, 8.2vw, 36px); margin-bottom: 8px; }
	:is(.vrc-category-details, .editor-styles-wrapper) .vrc-category-quality-label { font-size: 16px; }
}
