/**
 * LTS Content Grid — front-end and editor preview styles.
 */

.wp-block-lts-content-grid.lts-content-grid {
	display: block !important;
	width: 100%;
	min-width: 0;
	padding: var(--lts-block-padding, 0) !important;
	border-width: var(--lts-block-border-width, 0) !important;
	border-style: var(--lts-block-border-style, solid) !important;
	border-color: var(--lts-block-border-color, #2b2b2b) !important;
	border-radius: var(--lts-block-radius, 0) !important;
	background: var(--lts-block-background, transparent) !important;
	background-clip: padding-box;
	box-shadow: none !important;
	outline: 0 !important;
}

.lts-content-grid,
.lts-content-grid *,
.lts-content-grid *::before,
.lts-content-grid *::after {
	box-sizing: border-box;
}

.wp-block-lts-content-grid.lts-content-grid > .lts-content-grid__viewport {
	position: relative;
	display: block;
	width: 100%;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	isolation: isolate;
}

.lts-content-grid__results {
	display: grid;
	grid-template-columns: repeat(var(--lts-columns-desktop, 3), minmax(0, 1fr));
	column-gap: var(--lts-column-gap, 24px);
	row-gap: var(--lts-row-gap, 32px);
	align-items: stretch;
	width: 100%;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	opacity: 1;
	transition:
		opacity var(--lts-transition-duration, 180ms) ease,
		filter var(--lts-transition-duration, 180ms) ease;
}

.lts-content-grid.is-loading .lts-content-grid__results {
	opacity: 0.42;
	filter: saturate(0.72);
	pointer-events: none;
}

.lts-content-grid__loading-label {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 3;
	padding: 9px 15px;
	border: 1px solid var(--lts-pagination-border-color, #343434);
	border-color: color-mix(in srgb, var(--lts-pagination-border-color, #343434) 78%, transparent);
	border-radius: 999px;
	background: var(--lts-pagination-background, #171717);
	background: color-mix(in srgb, var(--lts-pagination-background, #171717) 94%, transparent);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.24);
	color: var(--lts-pagination-text-color, #f4f4f4);
	font-family: var(--lts-pagination-font-family, inherit);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1;
	text-transform: uppercase;
	white-space: nowrap;
	opacity: 0;
	transform: translate(-50%, -44%);
	transition:
		opacity var(--lts-transition-duration, 180ms) ease,
		transform var(--lts-transition-duration, 180ms) ease;
	pointer-events: none;
}

.lts-content-grid.is-loading .lts-content-grid__loading-label,
.lts-content-grid.has-error .lts-content-grid__loading-label {
	opacity: 1;
	transform: translate(-50%, -50%);
}

.lts-content-grid.has-error .lts-content-grid__loading-label {
	border-color: #b32d2e;
	background: #3a1516;
	color: #fff;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__card {
	position: relative;
	display: flex !important;
	flex-direction: column !important;
	min-width: 0;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: var(--lts-card-border-width, 0) solid var(--lts-card-border-color, #2b2b2b) !important;
	border-radius: var(--lts-card-radius, 0) !important;
	background: var(--lts-card-background, transparent) !important;
	box-shadow: var(--lts-card-shadow, none) !important;
	outline: 0 !important;
	overflow: hidden !important;
	background-clip: padding-box;
	isolation: isolate;
	transform: translateY(0);
	transition:
		transform var(--lts-transition-duration, 180ms) ease,
		box-shadow var(--lts-transition-duration, 180ms) ease;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__card--framed {
	border: 0 !important;
	background: transparent !important;
	overflow: visible !important;
}

/*
 * The outer article owns elevation and motion. This inner frame owns the card
 * surface and clipping mask. Keeping those responsibilities separate prevents
 * transformed images, theme editor styles, and WebKit overflow quirks from
 * leaving the lower corners square while preserving the outer card shadow.
 */
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__card-frame {
	position: relative;
	display: flex !important;
	flex: 1 1 auto;
	flex-direction: column !important;
	align-self: stretch;
	min-width: 0;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: var(--lts-card-border-width, 0) solid var(--lts-card-border-color, #2b2b2b) !important;
	border-radius: var(--lts-card-radius, 0) !important;
	border-start-start-radius: var(--lts-card-radius, 0) !important;
	border-start-end-radius: var(--lts-card-radius, 0) !important;
	border-end-start-radius: var(--lts-card-radius, 0) !important;
	border-end-end-radius: var(--lts-card-radius, 0) !important;
	border-top-left-radius: var(--lts-card-radius, 0) !important;
	border-top-right-radius: var(--lts-card-radius, 0) !important;
	border-bottom-right-radius: var(--lts-card-radius, 0) !important;
	border-bottom-left-radius: var(--lts-card-radius, 0) !important;
	background: var(--lts-card-background, transparent) !important;
	background-clip: padding-box;
	overflow: hidden !important;
	-webkit-clip-path: inset(0 round var(--lts-card-radius, 0)) !important;
	clip-path: inset(0 round var(--lts-card-radius, 0)) !important;
	isolation: isolate;
}

.lts-content-grid__card--placeholder {
	visibility: hidden;
	pointer-events: none;
}

.lts-content-grid__media {
	position: relative;
	width: 100%;
	aspect-ratio: var(--lts-image-ratio, 16 / 9);
	border-radius: var(--lts-image-radius, 0px);
	background: var(--lts-image-background, #111111);
	overflow: hidden;
	isolation: isolate;
}

/*
 * When the card surface and border are both transparent, the lower card
 * corners have no painted area from which to show a curve. In that mode the
 * card radius is also applied to the visible media frame, making all four
 * corners respond while the independent Image radius can still increase it.
 */
.lts-content-grid.is-card-surface-transparent .lts-content-grid__media {
	border-radius: max(var(--lts-image-radius, 0px), var(--lts-card-radius, 0px));
}

.lts-content-grid.is-image-natural .lts-content-grid__media {
	aspect-ratio: auto;
}

.lts-content-grid.is-image-natural .lts-content-grid__media--placeholder {
	aspect-ratio: 16 / 9;
}

.lts-content-grid__media-link {
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
}

.lts-content-grid.is-image-natural .lts-content-grid__media-link {
	height: auto;
}

.lts-content-grid__image,
.lts-content-grid__image-placeholder {
	display: block;
	width: 100%;
	height: 100%;
}

.lts-content-grid__image {
	object-fit: var(--lts-image-fit, cover);
	object-position: var(--lts-image-position, 50% 50%);
	transform: scale(1);
	transition: transform var(--lts-transition-duration, 180ms) ease;
}

.lts-content-grid.is-image-natural .lts-content-grid__image {
	height: auto;
	object-fit: contain;
}

.lts-content-grid__image-placeholder {
	position: relative;
	display: grid;
	place-items: center;
	min-height: 100%;
	background:
		radial-gradient(circle at 18% 12%, rgba(255, 106, 0, 0.18), transparent 35%),
		linear-gradient(135deg, #171717, #2b2b2b 58%, #111);
}

.lts-content-grid__image-placeholder::before,
.lts-content-grid__image-placeholder::after {
	position: absolute;
	content: "";
	border: 1px solid rgba(255, 255, 255, 0.07);
	inset: 12%;
}

.lts-content-grid__image-placeholder::after {
	inset: 18%;
	border-color: rgba(255, 106, 0, 0.16);
}

.lts-content-grid__placeholder-mark {
	position: relative;
	z-index: 1;
	color: rgba(255, 255, 255, 0.5);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: clamp(20px, 4vw, 42px);
	font-weight: 800;
	letter-spacing: 0.16em;
	line-height: 1;
}

.lts-content-grid__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
	padding: var(--lts-card-padding, 0);
	text-align: var(--lts-text-align, center);
}

.lts-content-grid__title {
	display: -webkit-box;
	min-height: 0;
	margin: var(--lts-title-margin-top, 16px) 0 var(--lts-title-margin-bottom, 0);
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: var(--lts-title-lines, 2);
	color: var(--lts-title-color, #ff6a00);
	font-family: var(--lts-title-font-family, inherit);
	font-size: var(--lts-title-font-size, 24px);
	font-weight: var(--lts-title-font-weight, 700);
	letter-spacing: var(--lts-title-letter-spacing, 0);
	line-height: var(--lts-title-line-height, 1.15);
	text-transform: var(--lts-title-text-transform, none);
	text-wrap: balance;
}

.lts-content-grid.is-equal-height .lts-content-grid__title {
	min-height: var(--lts-title-min-height, 0);
}

.lts-content-grid__title-link {
	color: inherit;
	text-decoration: none;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
	transition: color var(--lts-transition-duration, 180ms) ease;
}

.lts-content-grid__title-link:hover,
.lts-content-grid__title-link:focus-visible {
	color: var(--lts-title-hover-color, #ff8733);
}

.lts-content-grid__meta {
	min-width: 0;
	margin-top: var(--lts-meta-margin-top, 10px);
	overflow: hidden;
	color: var(--lts-meta-color, #a9a9a9);
	font-family: var(--lts-meta-font-family, inherit);
	font-size: var(--lts-meta-font-size, 13px);
	font-weight: var(--lts-meta-font-weight, 600);
	letter-spacing: 0.035em;
	line-height: var(--lts-meta-line-height, 1.4);
	text-overflow: ellipsis;
	text-transform: var(--lts-meta-text-transform, uppercase);
	white-space: nowrap;
}

.lts-content-grid__meta a {
	color: inherit;
	text-decoration: none;
}

.lts-content-grid__meta a:hover,
.lts-content-grid__meta a:focus-visible {
	color: var(--lts-title-hover-color, #ff8733);
}

.lts-content-grid__meta-separator {
	margin: 0 0.55em;
	color: var(--lts-pagination-accent-color, #ff6a00);
	opacity: 0.72;
}

.lts-content-grid__excerpt {
	display: -webkit-box;
	min-height: 0;
	margin-top: var(--lts-excerpt-margin-top, 12px);
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: var(--lts-excerpt-lines, 3);
	color: var(--lts-excerpt-color, #d7d7d7);
	font-family: var(--lts-excerpt-font-family, inherit);
	font-size: var(--lts-excerpt-font-size, 16px);
	font-weight: var(--lts-excerpt-font-weight, 400);
	line-height: var(--lts-excerpt-line-height, 1.6);
}

.lts-content-grid.is-equal-height .lts-content-grid__excerpt {
	min-height: var(--lts-excerpt-min-height, 0);
}

.lts-content-grid__read-more {
	display: inline-flex;
	align-items: center;
	align-self: var(--lts-item-align, center);
	justify-content: center;
	gap: 0.5em;
	margin-top: auto;
	padding-top: var(--lts-read-more-margin-top, 18px);
	color: var(--lts-read-more-color, #ff6a00);
	font-family: var(--lts-read-more-font-family, inherit);
	font-size: var(--lts-read-more-font-size, 14px);
	font-weight: var(--lts-read-more-font-weight, 700);
	letter-spacing: 0.035em;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	transition:
		color var(--lts-transition-duration, 180ms) ease,
		background-color var(--lts-transition-duration, 180ms) ease,
		transform var(--lts-transition-duration, 180ms) ease;
}

.lts-content-grid__read-more-arrow {
	font-size: 1.18em;
	line-height: 1;
	transition: transform var(--lts-transition-duration, 180ms) ease;
}

.lts-content-grid__read-more:hover,
.lts-content-grid__read-more:focus-visible {
	color: var(--lts-read-more-hover-color, #ff8733);
}

.lts-content-grid__read-more:hover .lts-content-grid__read-more-arrow,
.lts-content-grid__read-more:focus-visible .lts-content-grid__read-more-arrow {
	transform: translateX(0.18em);
}

.lts-content-grid__read-more--button {
	margin-top: auto;
	padding: 11px 16px;
	border: 1px solid var(--lts-read-more-border-color, #ff6a00);
	border-radius: var(--lts-read-more-radius, 6px);
	background: var(--lts-read-more-background, transparent);
}

.lts-content-grid__read-more--button:hover,
.lts-content-grid__read-more--button:focus-visible {
	background: var(--lts-read-more-hover-background, transparent);
}

.lts-content-grid__empty {
	grid-column: 1 / -1;
	padding: clamp(28px, 5vw, 64px);
	border: 1px solid var(--lts-card-border-color, #2b2b2b);
	border-radius: max(8px, var(--lts-card-radius, 0));
	background: var(--lts-card-background, transparent);
	background: color-mix(in srgb, var(--lts-card-background, transparent) 88%, transparent);
	color: var(--lts-excerpt-color, #d7d7d7);
	font-family: var(--lts-excerpt-font-family, inherit);
	font-size: var(--lts-excerpt-font-size, 16px);
	line-height: 1.5;
	text-align: center;
}

/*
 * Theme and editor-style hardening.
 *
 * These values are explicitly controlled by the block inspector. WordPress
 * themes commonly target headings, article elements, and links with selectors
 * that are more specific than a single plugin class. The scoped declarations
 * below ensure that every saved typography and surface control is visible in
 * both the editor preview and the front end.
 */
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__media,
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__media-link,
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__image {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__image {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
}

.wp-block-lts-content-grid.lts-content-grid.is-image-natural .lts-content-grid__image {
	height: auto !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__title {
	margin: var(--lts-title-margin-top, 16px) 0 var(--lts-title-margin-bottom, 0) !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--lts-title-color, #ff6a00) !important;
	font-family: var(--lts-title-font-family, inherit) !important;
	font-size: var(--lts-title-font-size, 24px) !important;
	font-style: normal !important;
	font-weight: var(--lts-title-font-weight, 700) !important;
	letter-spacing: var(--lts-title-letter-spacing, 0) !important;
	line-height: var(--lts-title-line-height, 1.15) !important;
	text-align: var(--lts-text-align, center) !important;
	text-transform: var(--lts-title-text-transform, none) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__title-link {
	color: inherit !important;
	font: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
	text-transform: inherit !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__title-link:hover,
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__title-link:focus-visible {
	color: var(--lts-title-hover-color, #ff8733) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__excerpt {
	margin: var(--lts-excerpt-margin-top, 12px) 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--lts-excerpt-color, #d7d7d7) !important;
	font-family: var(--lts-excerpt-font-family, inherit) !important;
	font-size: var(--lts-excerpt-font-size, 16px) !important;
	font-style: normal !important;
	font-weight: var(--lts-excerpt-font-weight, 400) !important;
	line-height: var(--lts-excerpt-line-height, 1.6) !important;
	text-align: var(--lts-text-align, center) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__meta {
	margin: var(--lts-meta-margin-top, 10px) 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: var(--lts-meta-color, #a9a9a9) !important;
	font-family: var(--lts-meta-font-family, inherit) !important;
	font-size: var(--lts-meta-font-size, 13px) !important;
	font-style: normal !important;
	font-weight: var(--lts-meta-font-weight, 600) !important;
	line-height: var(--lts-meta-line-height, 1.4) !important;
	text-align: var(--lts-text-align, center) !important;
	text-transform: var(--lts-meta-text-transform, uppercase) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__meta a {
	color: inherit !important;
	font: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
	text-transform: inherit !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__meta a:hover,
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__meta a:focus-visible {
	color: var(--lts-title-hover-color, #ff8733) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__read-more {
	color: var(--lts-read-more-color, #ff6a00) !important;
	font-family: var(--lts-read-more-font-family, inherit) !important;
	font-size: var(--lts-read-more-font-size, 14px) !important;
	font-style: normal !important;
	font-weight: var(--lts-read-more-font-weight, 700) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__read-more:hover,
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__read-more:focus-visible {
	color: var(--lts-read-more-hover-color, #ff8733) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__read-more--button {
	border-color: var(--lts-read-more-border-color, #ff6a00) !important;
	border-radius: var(--lts-read-more-radius, 6px) !important;
	background: var(--lts-read-more-background, transparent) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__read-more--button:hover,
.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__read-more--button:focus-visible {
	background: var(--lts-read-more-hover-background, transparent) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__empty {
	color: var(--lts-excerpt-color, #d7d7d7) !important;
	font-family: var(--lts-excerpt-font-family, inherit) !important;
	font-size: var(--lts-excerpt-font-size, 16px) !important;
}

/* LTS Signature Pagination */
.wp-block-lts-content-grid.lts-content-grid > .lts-content-grid__pagination {
	position: static !important;
	inset: auto !important;
	display: flex !important;
	float: none !important;
	clear: none !important;
	align-self: stretch !important;
	justify-content: var(--lts-pagination-justify, center);
	width: 100% !important;
	min-width: 0;
	min-height: 0 !important;
	max-width: none !important;
	max-height: none !important;
	height: auto !important;
	margin: var(--lts-pagination-gap, var(--lts-pagination-top-margin, 24px)) 0 0 !important;
	margin-block-start: var(--lts-pagination-gap, var(--lts-pagination-top-margin, 24px)) !important;
	margin-block-end: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	transform: none !important;
}

.wp-block-lts-content-grid.lts-content-grid.is-pagination-above > .lts-content-grid__pagination {
	margin: 0 0 var(--lts-pagination-gap, var(--lts-pagination-top-margin, 24px)) !important;
	margin-block-start: 0 !important;
	margin-block-end: var(--lts-pagination-gap, var(--lts-pagination-top-margin, 24px)) !important;
}

.lts-pagination__bar {
	position: relative;
	display: inline-flex;
	align-items: stretch;
	justify-content: center;
	width: auto;
	max-width: min(100%, var(--lts-pagination-max-width, 780px));
	margin: 0 !important;
	padding: 0 !important;
	min-height: var(--lts-pagination-height, 58px);
	border: 1px solid var(--lts-pagination-border-color, #343434);
	border-radius: var(--lts-pagination-radius, 10px);
	background: var(--lts-pagination-background, #171717);
	box-shadow: var(--lts-pagination-shadow, 0 12px 34px rgba(0, 0, 0, 0.22));
	color: var(--lts-pagination-text-color, #f4f4f4);
	font-family: var(--lts-pagination-font-family, inherit);
	font-size: var(--lts-pagination-font-size, 14px);
	font-weight: var(--lts-pagination-font-weight, 700);
	letter-spacing: var(--lts-pagination-letter-spacing, 0.6px);
	line-height: 1;
	text-transform: var(--lts-pagination-text-transform, uppercase);
	overflow: hidden;
	isolation: isolate;
}

.lts-content-grid.is-pagination-full-width .lts-pagination__bar {
	width: min(100%, var(--lts-pagination-max-width, 780px));
}

.lts-pagination__bar::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
	width: 100%;
	height: var(--lts-pagination-accent-thickness, 3px);
	background: var(--lts-pagination-accent-color, #ff6a00);
	background: color-mix(in srgb, var(--lts-pagination-accent-color, #ff6a00) 72%, transparent);
	content: "";
	pointer-events: none;
}

.lts-pagination__progress {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 4;
	width: 36%;
	height: var(--lts-pagination-accent-thickness, 3px);
	background: var(--lts-pagination-accent-color, #ff6a00);
	box-shadow: 0 0 12px rgba(255, 106, 0, 0.45);
	box-shadow: 0 0 12px color-mix(in srgb, var(--lts-pagination-accent-color, #ff6a00) 68%, transparent);
	opacity: 0;
	transform: translateX(-120%);
	pointer-events: none;
}

.lts-content-grid.is-loading .lts-pagination__progress {
	opacity: 1;
	animation: lts-pagination-progress 1.05s ease-in-out infinite;
}

@keyframes lts-pagination-progress {
	0% { transform: translateX(-120%); }
	60% { transform: translateX(225%); }
	100% { transform: translateX(350%); }
}

.lts-pagination__direction,
.lts-pagination__page {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	line-height: 1;
	text-decoration: none;
	text-transform: inherit;
	transition:
		color var(--lts-transition-duration, 180ms) ease,
		background-color var(--lts-transition-duration, 180ms) ease;
}

.lts-pagination__direction {
	gap: 7px;
	min-width: 132px;
	padding: 0 22px;
	white-space: nowrap;
}

.lts-pagination__direction:hover,
.lts-pagination__direction:focus-visible,
.lts-pagination__page:hover,
.lts-pagination__page:focus-visible {
	background: rgba(255, 106, 0, 0.1);
	background: color-mix(in srgb, var(--lts-pagination-accent-color, #ff6a00) 10%, transparent);
	color: var(--lts-pagination-hover-color, #ff8733);
}

.lts-pagination__direction.is-disabled {
	color: var(--lts-pagination-disabled-color, #737373);
	cursor: default;
}

.lts-pagination__direction.is-disabled:hover {
	background: transparent;
}

.lts-pagination__icon {
	flex: 0 0 auto;
}

.lts-pagination__divider {
	align-self: stretch;
	width: 1px;
	margin: 13px 0;
	background: var(--lts-pagination-border-color, #343434);
	opacity: 0.92;
}

.lts-pagination__pages {
	display: flex;
	align-items: stretch;
	justify-content: center;
	gap: 2px;
	padding: 0 12px;
}

.lts-pagination__page {
	min-width: 38px;
	padding: 0 8px;
	font-variant-numeric: tabular-nums;
}

.lts-pagination__page--current {
	color: var(--lts-pagination-accent-color, #ff6a00);
	font-weight: 800;
	cursor: default;
}

.lts-pagination__page--current::after {
	position: absolute;
	right: 9px;
	bottom: 9px;
	left: 9px;
	height: 3px;
	border-radius: 999px;
	background: var(--lts-pagination-accent-color, #ff6a00);
	box-shadow: 0 0 10px rgba(255, 106, 0, 0.34);
	box-shadow: 0 0 10px color-mix(in srgb, var(--lts-pagination-accent-color, #ff6a00) 48%, transparent);
	content: "";
}

.lts-pagination__ellipsis {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 27px;
	color: var(--lts-pagination-disabled-color, #737373);
	font-size: 1.08em;
	letter-spacing: 0.08em;
}

.lts-pagination__mobile-status {
	display: none;
	align-items: center;
	justify-content: center;
	padding: 0 14px;
	color: var(--lts-pagination-text-color, #f4f4f4);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.wp-block-lts-content-grid.lts-content-grid .lts-pagination__bar {
	border-color: var(--lts-pagination-border-color, #343434) !important;
	border-radius: var(--lts-pagination-radius, 10px) !important;
	background: var(--lts-pagination-background, #171717) !important;
	box-shadow: var(--lts-pagination-shadow, 0 12px 34px rgba(0, 0, 0, 0.22)) !important;
	color: var(--lts-pagination-text-color, #f4f4f4) !important;
	font-family: var(--lts-pagination-font-family, inherit) !important;
	font-size: var(--lts-pagination-font-size, 14px) !important;
	font-style: normal !important;
	font-weight: var(--lts-pagination-font-weight, 700) !important;
	letter-spacing: var(--lts-pagination-letter-spacing, 0.6px) !important;
	line-height: 1 !important;
	text-transform: var(--lts-pagination-text-transform, uppercase) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-pagination__direction,
.wp-block-lts-content-grid.lts-content-grid .lts-pagination__page,
.wp-block-lts-content-grid.lts-content-grid .lts-pagination__mobile-status {
	font: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
	text-transform: inherit !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-pagination__direction,
.wp-block-lts-content-grid.lts-content-grid .lts-pagination__page {
	border: 0 !important;
	background: transparent !important;
	color: inherit !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-pagination__direction:hover,
.wp-block-lts-content-grid.lts-content-grid .lts-pagination__direction:focus-visible,
.wp-block-lts-content-grid.lts-content-grid .lts-pagination__page:hover,
.wp-block-lts-content-grid.lts-content-grid .lts-pagination__page:focus-visible {
	background: rgba(255, 106, 0, 0.1) !important;
	background: color-mix(in srgb, var(--lts-pagination-accent-color, #ff6a00) 10%, transparent) !important;
	color: var(--lts-pagination-hover-color, #ff8733) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-pagination__direction.is-disabled {
	background: transparent !important;
	color: var(--lts-pagination-disabled-color, #737373) !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-pagination__page--current {
	background: transparent !important;
	color: var(--lts-pagination-accent-color, #ff6a00) !important;
	font-weight: 800 !important;
}

.wp-block-lts-content-grid.lts-content-grid .lts-pagination__mobile-status {
	color: var(--lts-pagination-text-color, #f4f4f4) !important;
}

.lts-content-grid a:focus-visible,
.lts-content-grid [tabindex]:focus-visible {
	outline: 2px solid var(--lts-pagination-accent-color, #ff6a00);
	outline-offset: 3px;
}

.lts-content-grid__visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

@media (hover: hover) and (pointer: fine) {
	.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__card:hover {
		transform: translateY(calc(var(--lts-card-hover-lift, 0px) * -1));
	}

	.wp-block-lts-content-grid.lts-content-grid .lts-content-grid__card:hover .lts-content-grid__image {
		transform: scale(var(--lts-image-hover-zoom, 1.02));
	}
}

@media (max-width: 1024px) {
	.lts-content-grid__results {
		grid-template-columns: repeat(var(--lts-columns-tablet, 2), minmax(0, 1fr));
	}

	.lts-pagination__direction {
		min-width: 112px;
		padding-inline: 16px;
	}

	.lts-pagination__pages {
		padding-inline: 8px;
	}

	.lts-pagination__page {
		min-width: 34px;
		padding-inline: 6px;
	}
}

@media (max-width: 700px) {
	.lts-pagination__bar {
		width: min(100%, var(--lts-pagination-max-width, 780px));
		justify-content: space-between;
	}

	.lts-content-grid.has-mobile-page-status .lts-pagination__pages,
	.lts-content-grid.has-mobile-page-status .lts-pagination__ellipsis {
		display: none;
	}

	.lts-content-grid.has-mobile-page-status .lts-pagination__mobile-status {
		display: inline-flex;
		flex: 1 1 auto;
	}

	.lts-pagination__direction {
		flex: 0 0 auto;
		min-width: 104px;
		padding-inline: 14px;
	}

	.lts-content-grid:not(.has-mobile-page-status) .lts-pagination__direction {
		min-width: 46px;
		padding-inline: 11px;
	}

	.lts-content-grid:not(.has-mobile-page-status) .lts-pagination__direction-label {
		display: none;
	}

	.lts-content-grid:not(.has-mobile-page-status) .lts-pagination__pages {
		flex: 1 1 auto;
		min-width: 0;
		padding-inline: 4px;
	}

	.lts-content-grid:not(.has-mobile-page-status) .lts-pagination__page {
		min-width: 30px;
		padding-inline: 4px;
	}
}

@media (max-width: 600px) {
	.lts-content-grid__results {
		grid-template-columns: repeat(var(--lts-columns-mobile, 1), minmax(0, 1fr));
	}
}

@media (max-width: 420px) {
	.lts-pagination__direction {
		min-width: 82px;
		padding-inline: 10px;
		font-size: 11px;
	}

	.lts-pagination__direction-label {
		max-width: 54px;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.lts-pagination__mobile-status {
		padding-inline: 7px;
		font-size: 11px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lts-content-grid *,
	.lts-content-grid *::before,
	.lts-content-grid *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
	}
}
