/*
 * SEDCO article-page performance and accessibility overrides.
 * Loaded only on single blog posts; all rules are scoped to avoid changing
 * product, archive, homepage, or other page templates.
 */

/* Keep the visual dot unchanged while giving its interactive hit target
   the WCAG 2.2 minimum 24px target dimensions. */
body.single-post .sedco-article-product-nav .swiper-pagination-bullet {
	box-sizing: border-box !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 24px !important;
	width: 24px !important;
	min-width: 24px !important;
	height: 24px !important;
	min-height: 24px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: transparent !important;
	opacity: 1 !important;
}

body.single-post .sedco-article-product-nav .swiper-pagination-bullet::before {
	display: block;
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: #c5cec9;
	content: "";
}

body.single-post .sedco-article-product-nav .swiper-pagination-bullet-active::before {
	width: 16px;
	height: 6px;
	background: var(--sedco-green, #078a4b);
}

/* The recommendation rail remains scrollable even before its deferred
   Swiper enhancement arrives or if JavaScript is unavailable. */
body.single-post .sedco-article-recommendation .sedco-swiper--article-products:not(.swiper-initialized) {
	overflow-x: auto !important;
	overflow-y: hidden !important;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

body.single-post .sedco-article-recommendation .sedco-swiper--article-products:not(.swiper-initialized)::-webkit-scrollbar {
	display: none;
}

body.single-post .sedco-article-recommendation .sedco-swiper--article-products:not(.swiper-initialized) > .swiper-wrapper {
	transform: none !important;
	transition: none !important;
}

body.single-post .sedco-article-recommendation .sedco-swiper--article-products:not(.swiper-initialized) .swiper-slide {
	scroll-snap-align: start;
}

/* The measured failing text is the footer legal line. Use AA contrast in
   both theme modes without changing the footer surface or link color. */
body.single-post .sedco-footer-bottom .sedco-footer-shell > span:first-child {
	color: #59645d !important;
}

html[data-theme="dark"] body.single-post .sedco-footer-bottom .sedco-footer-shell > span:first-child {
	color: #b6c2ba !important;
}

/* Responsive images should never exceed their article column. */
body.single-post .sedco-article-content img,
body.single-post .sedco-article-related-card__media img {
	max-width: 100%;
}
