/* Article theme 6.5: align the title, cover, body and related stories at 1040px. */
.fit-blog-page, .fit-blog-page * { box-sizing: border-box; }
.fit-blog-page {
	--article-text: var(--text-color, #111);
	--article-muted: var(--dim-6-color, #666);
	--article-border: var(--basic-box-border-color, #e5e5e5);
	--article-blue: #315b98;
	color: var(--article-text);
	font-family: var(--font-family, 'Commissioner', sans-serif);
	padding-block: 28px 56px;
}
.dark .fit-blog-page { --article-blue: #68aaf5; }
.fit-blog-page a { color: var(--article-blue); }
.fit-blog-page a:focus-visible { outline: 3px solid var(--article-blue); outline-offset: 4px; }
.fit-blog-article { min-width: 0; max-width: 1040px; margin: 0 auto; }
.fit-blog-header { margin: 0 0 30px; padding-bottom: 24px; border-bottom: 1px solid var(--article-border); }
.fit-blog-date { display: block; margin-bottom: 10px; color: var(--article-muted); font-size: 13px; line-height: 1.4; }
.fit-blog-header .fit-blog-date { margin: 14px 0 0; }
.fit-blog-page h1 { margin: 0; font: 500 clamp(32px, 3.6vw, 52px)/1.15 Georgia, serif; letter-spacing: -.7px; color: inherit; text-transform: none; overflow-wrap: anywhere; }
.fit-blog-cover { margin: 0 0 36px; }
.fit-blog-cover img { display: block; width: 100%; height: auto; }
.fit-blog-cover img, .fit-blog-content img { border-radius: 10px !important; }
.fit-blog-content { display: flow-root; margin: 0; font-size: 18px; line-height: 1.8; overflow-wrap: anywhere; }
.fit-blog-content > :first-child { margin-top: 0; }
.fit-blog-content p { margin: 0 0 1.25em; font-size: inherit; line-height: inherit; }
.fit-blog-content ul, .fit-blog-content ol { margin: 0 0 1.4em; padding-left: 1.6em; }
.fit-blog-content ul { list-style: disc; }
.fit-blog-content ol { list-style: decimal; }
.fit-blog-content li { margin: .4em 0; }
.fit-blog-content a { text-decoration: underline; text-underline-offset: 3px; }
.fit-blog-content img { max-width: 100%; height: auto; }
.fit-blog-content figure { max-width: 100%; margin: 28px 0; }
.fit-blog-content figure img { display: block; }
.fit-blog-content figcaption { margin-top: 8px; font-size: 14px; line-height: 1.5; color: var(--article-muted); }
.fit-blog-content hr { margin: 32px 0; border: 0; border-top: 1px solid var(--article-border); }
.fit-blog-related { max-width: 1040px; margin: 52px auto 0; padding-top: 30px; border-top: 1px solid var(--article-border); }
.fit-blog-related > h2 { margin: 0 0 24px; font: 500 32px/1.2 Georgia, serif; color: inherit; text-transform: none; }
/* Cards match the homepage blog: whole images, phones stack the text below, wider screens put it beside the image. */
.fit-blog-card-grid { display: grid; gap: 30px; }
.fit-blog-card { min-width: 0; }
.fit-blog-page .fit-blog-card-link { display: block; color: inherit; text-decoration: none; }
.fit-blog-card-media { display: block; overflow: hidden; margin-bottom: 16px; border-radius: 10px; }
.fit-blog-card-media img { display: block; width: 100%; height: auto; }
.fit-blog-card h2, .fit-blog-card h3 { margin: 0; font: 400 20px/1.2 Georgia, serif; letter-spacing: -.3px; color: inherit; text-transform: none; overflow-wrap: anywhere; }
.fit-blog-card p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 12px 0 0; color: var(--article-muted); font-size: 14px; line-height: 1.55; }
.fit-blog-pagination { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 32px; }
.fit-blog-pagination a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width:800px) {
	.fit-blog-page { padding-block: 20px 36px; }
	.fit-blog-header { margin-bottom: 24px; }
	.fit-blog-content { font-size: 17px; line-height: 1.75; }
}
@media (min-width:641px) {
	.fit-blog-page .fit-blog-card-link { display: flex; align-items: flex-start; gap: 24px; }
	.fit-blog-card-media { flex: none; width: 30%; margin-bottom: 0; }
	.fit-blog-card-link > div { flex: 1; min-width: 0; }
	.fit-blog-card p { -webkit-line-clamp: 4; }
}
@media (min-width:1025px) {
	.fit-blog-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 40px; }
	.fit-blog-card-media { width: 45%; }
}
/* Hover effects only on desktop with a mouse. */
@media (hover:hover) and (min-width:1025px) {
	.fit-blog-card-media img { transition: transform 0.3s ease; }
	.fit-blog-card-link:hover .fit-blog-card-media img { transform: scale(1.03); }
	.fit-blog-card-link:hover h2, .fit-blog-card-link:hover h3 { text-decoration: underline; text-underline-offset: 5px; }
}

/* Use the storefront's scrolling list and box styles in articles and previews. */
.fit-blog-site-products { margin: 32px 0; padding: 0; font: 400 14px/1.5 var(--font-family, 'Commissioner', sans-serif); overflow-wrap: normal; }
.fit-blog-site-products .product-list { width: 100%; padding-inline: 10px; -webkit-mask-image: none; mask-image: none; }
.fit-blog-site-products a.product-item { color: var(--text-color); text-decoration: none; }
.fit-blog-site-products .thumb img { margin: 0; }
/* Timer labels must not inherit article paragraph spacing. */
.fit-blog-site-products .product-timer p { margin: 0; }
@media (max-width:650px) {
	/* Extend the scrolling row through the page gutters without widening the page. */
	.fit-blog-page .fit-blog-site-products { width: calc(100% + 2 * var(--side-padding)); margin-inline: calc(-1 * var(--side-padding)); }
}
@media (min-width:651px) {
	.fit-blog-site-products .product-list { gap: 15px; padding: 10px; }
	.fit-blog-site-products .product-item { width: calc((100% - 45px) / 4); }
}
