/**
 * Case study overrides — loaded in footer to win over inline <style> in Shopify case templates.
 */

/* --- Hero: readable on light background --- */

main.contacts-page.case-page .cases-subtitle,
main.contacts-page.case-page .case-hero__description,
main.contacts-page.case-page .case-hero__stat-label {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

main.contacts-page.case-page .case-hero__title {
	color: var(--case-ink, #16161a) !important;
}

main.contacts-page.case-page .case-hero__category,
main.contacts-page.case-page .case-hero__platform,
main.contacts-page.case-page .case-hero__duration {
	background: var(--case-card-bg, #fff) !important;
	color: var(--case-ink, #16161a) !important;
	border: 1px solid var(--case-card-border, rgba(22, 22, 26, 0.09)) !important;
	backdrop-filter: none !important;
}

main.contacts-page.case-page .case-gallery__title,
main.contacts-page.case-page .case-gallery__description {
	color: var(--case-ink, #16161a) !important;
}

main.contacts-page.case-page .case-gallery__description {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

/* --- Page title (mobile overflow) --- */

main.contacts-page.case-page .top__title.top-title-contact {
	font-size: clamp(1.125rem, 4.8vw, 2rem) !important;
	line-height: 1.22 !important;
	letter-spacing: -0.02em;
	max-width: 100%;
	word-break: break-word;
	overflow-wrap: anywhere;
	hyphens: auto;
}

main.contacts-page.case-page .top__container,
main.contacts-page.case-page .top__inner,
main.contacts-page.case-page .top__content {
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

/* --- Shopify: page stability + section titles --- */

main.contacts-page.case-page {
	overflow-x: clip;
	max-width: 100%;
	box-sizing: border-box;
}

main.contacts-page.case-page .top,
main.contacts-page.case-page .top__container,
main.contacts-page.case-page .top__inner,
main.contacts-page.case-page .top__content,
main.contacts-page.case-page .case-hero,
main.contacts-page.case-page .case-solution,
main.contacts-page.case-page .case-solution__content,
main.contacts-page.case-page .case-gallery,
main.contacts-page.case-page .case-gallery__wrapper {
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

main.contacts-page.case-page .case-challenge__title,
main.contacts-page.case-page .case-results__title,
main.contacts-page.case-page .case-solution__title,
main.contacts-page.case-page .case-solution__step-content h4 {
	color: var(--case-ink, #16161a) !important;
}

main.contacts-page.case-page .case-solution__description,
main.contacts-page.case-page .case-results__description,
main.contacts-page.case-page .case-challenge__description {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

/* --- Technologies: compact on mobile --- */

main.contacts-page.case-page .case-technologies__title,
main.contacts-page.case-page .case-technologies__description,
main.contacts-page.case-page .case-technologies__category h4 {
	color: var(--case-ink, #16161a) !important;
}

main.contacts-page.case-page .case-technologies__description {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

main.contacts-page.case-page .case-technologies__item {
	background: var(--case-bg2, #f5efe3) !important;
	color: var(--case-ink, #16161a) !important;
	border: 1px solid var(--case-line, rgba(22, 22, 26, 0.1)) !important;
}

@media (max-width: 768px) {
	main.contacts-page.case-page {
		overflow-x: clip;
	}

	main.contacts-page.case-page .top {
		padding-top: 24px !important;
	}

	main.contacts-page.case-page .top__container {
		padding-top: 0 !important;
	}

	main.contacts-page.case-page .case-hero__device--desktop {
		width: min(100%, 280px) !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 160px;
	}

	main.contacts-page.case-page .case-hero__meta {
		justify-content: center;
		flex-wrap: wrap;
	}

	.case-page--v2 .case-hero-badges,
	.case-page--v2 .case-hero-badges--four {
		justify-content: center;
		margin-left: auto;
		margin-right: auto;
	}

	main.contacts-page.case-page .case-solution__content {
		min-width: 0;
	}

	main.contacts-page.case-page .case-solution__steps {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto;
		overflow-y: hidden;
		grid-template-columns: unset !important;
		gap: 12px;
		margin-left: -20px;
		margin-right: -20px;
		padding: 0 20px 8px;
		width: calc(100% + 40px);
		max-width: none;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: 20px;
		-webkit-overflow-scrolling: touch;
	}

	main.contacts-page.case-page .case-solution__step {
		flex: 0 0 min(82vw, 280px);
		min-width: min(82vw, 280px);
		scroll-snap-align: start;
	}

	main.contacts-page.case-page .case-technologies__content {
		gap: 20px;
	}

	main.contacts-page.case-page .case-technologies__list {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px 10px;
	}

	main.contacts-page.case-page .case-technologies__category h4 {
		font-size: 13px !important;
		margin-bottom: 8px !important;
	}

	main.contacts-page.case-page .case-technologies__items {
		display: flex;
		flex-wrap: wrap;
		gap: 6px;
	}

	main.contacts-page.case-page .case-technologies__item {
		padding: 5px 10px !important;
		font-size: 11px !important;
		border-radius: 999px !important;
	}

	main.contacts-page.case-page .case-cta {
		width: 100% !important;
		max-width: 100% !important;
		margin: 24px 0 !important;
		padding: 28px 0 !important;
		border-radius: 16px !important;
		box-sizing: border-box;
	}

	main.contacts-page.case-page .case-cta__container {
		padding: 0 20px !important;
		max-width: 100%;
	}

	main.contacts-page.case-page .case-cta__title {
		font-size: clamp(1.1rem, 4.5vw, 1.5rem) !important;
		margin-bottom: 10px !important;
	}

	main.contacts-page.case-page .case-cta__description {
		font-size: 0.9rem !important;
		margin-bottom: 20px !important;
	}

	main.contacts-page.case-page .case-cta__buttons {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
		width: 100% !important;
	}

	main.contacts-page.case-page .case-cta__button {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
		transform: none !important;
	}
}

/* --- CTA: match redesign buttons --- */

main.contacts-page.case-page .case-cta {
	background: var(--case-card-bg, #fff) !important;
	border: 1px solid var(--case-card-border, rgba(22, 22, 26, 0.09)) !important;
	box-shadow: 0 8px 28px color-mix(in srgb, var(--case-ink, #16161a) 6%, transparent) !important;
	backdrop-filter: none !important;
	max-width: min(600px, 100%) !important;
	width: 100%;
	box-sizing: border-box;
}

main.contacts-page.case-page .case-cta__title {
	color: var(--case-ink, #16161a) !important;
}

main.contacts-page.case-page .case-cta__description {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

main.contacts-page.case-page .case-cta__button--primary {
	background: var(--case-accent, #d6603d) !important;
	color: var(--case-on-accent, #fff) !important;
	border: none !important;
	border-radius: 999px !important;
	box-shadow: none !important;
}

main.contacts-page.case-page .case-cta__button--primary:hover {
	background: var(--case-accent-deep, #b0522f) !important;
	color: var(--case-on-accent, #fff) !important;
}

main.contacts-page.case-page .case-cta__button--secondary {
	background: transparent !important;
	color: var(--case-ink, #16161a) !important;
	border: 1px solid var(--case-line, rgba(22, 22, 26, 0.1)) !important;
	border-radius: 999px !important;
	backdrop-filter: none !important;
}

main.contacts-page.case-page .case-cta__button--secondary:hover {
	border-color: var(--case-accent, #d6603d) !important;
	color: var(--case-accent, #d6603d) !important;
	background: transparent !important;
}

/* --- «Примеры кейсов» --- */

main.contacts-page.case-page .cases-examples__title {
	color: var(--case-ink, #16161a) !important;
}

main.contacts-page.case-page .cases-examples__subtitle {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

main.contacts-page.case-page .cases-examples__header-right > .cases-examples__button {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	color: var(--case-accent, #d6603d) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	backdrop-filter: none !important;
	box-shadow: none !important;
}

main.contacts-page.case-page .cases-examples__header-right > .cases-examples__button:hover {
	color: color-mix(in srgb, var(--case-accent, #d6603d) 82%, #000 18%) !important;
	background: transparent !important;
	transform: none !important;
}

main.contacts-page.case-page a.cases-examples__item,
main.contacts-page.case-page a.cases-examples__item:hover,
main.contacts-page.case-page a.cases-examples__item:focus,
main.contacts-page.case-page a.cases-examples__item *,
main.contacts-page.case-page a.cases-examples__item:hover * {
	text-decoration: none !important;
	color: inherit;
}

main.contacts-page.case-page .cases-examples__item-title {
	color: var(--case-ink, #16161a) !important;
}

main.contacts-page.case-page .cases-examples__item-description,
main.contacts-page.case-page .cases-examples__stat-label {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

main.contacts-page.case-page .cases-examples__stat-number {
	color: var(--case-accent, #d6603d) !important;
}

main.contacts-page.case-page .cases-examples__item .cases-examples__button {
	background: color-mix(in srgb, var(--case-accent, #d6603d) 8%, var(--case-card-bg, #fff)) !important;
	color: var(--case-accent, #d6603d) !important;
	border: 1px solid color-mix(in srgb, var(--case-accent, #d6603d) 24%, var(--case-line, rgba(22, 22, 26, 0.1))) !important;
	border-radius: 999px !important;
}

main.contacts-page.case-page .cases-examples__item .cases-examples__button:hover {
	background: var(--case-accent, #d6603d) !important;
	color: var(--case-on-accent, #fff) !important;
	border-color: var(--case-accent, #d6603d) !important;
}

main.contacts-page.case-page .cases-examples__category {
	background: color-mix(in srgb, var(--case-accent-2, #b8893a) 92%, #000 8%) !important;
	color: #fff !important;
}

@media (max-width: 768px) {
	main.contacts-page.case-page .cases-examples__title {
		font-size: clamp(1.25rem, 5vw, 1.75rem) !important;
	}

	main.contacts-page.case-page .cases-examples__header-right {
		align-self: flex-start;
	}
}

/* --- Site footer: keep dark theme on case pages --- */

body.shodrop-home-redesign .shodrop-redesign__footer {
	background: var(--shod-footer, #101013) !important;
	color: var(--shod-inset-mut, rgba(255, 255, 255, 0.62)) !important;
}

body.shodrop-home-redesign .shodrop-redesign__footer a {
	text-decoration: none;
}

body.shodrop-home-redesign .shodrop-redesign__footer-col-title,
body.shodrop-home-redesign .shodrop-redesign__footer-accordion-trigger {
	color: var(--shod-inset-text, rgba(255, 255, 255, 0.92)) !important;
}

body.shodrop-home-redesign .shodrop-redesign__footer-links a,
body.shodrop-home-redesign .shodrop-redesign__footer-desc,
body.shodrop-home-redesign .shodrop-redesign__footer-hours,
body.shodrop-home-redesign .shodrop-redesign__footer-email a,
body.shodrop-home-redesign .shodrop-redesign__footer-company p,
body.shodrop-home-redesign .shodrop-redesign__footer-copy,
body.shodrop-home-redesign .shodrop-redesign__footer-copy span,
body.shodrop-home-redesign .shodrop-redesign__footer-copy p {
	color: var(--shod-inset-mut, rgba(255, 255, 255, 0.62)) !important;
}

body.shodrop-home-redesign .shodrop-redesign__footer-links a:hover,
body.shodrop-home-redesign .shodrop-redesign__footer-email a:hover {
	color: var(--shod-inset-text, rgba(255, 255, 255, 0.92)) !important;
}

/* Yandex Kit v2 — other cases links without underline */

.case-page--v2 .other-case-item,
.case-page--v2 .other-case-item:hover,
.case-page--v2 .other-case-item *,
.case-page--v2 .other-cases-grid--scroll-all .other-case-item,
.case-page--v2 .other-cases-grid--scroll-all .other-case-item * {
	text-decoration: none !important;
}

/* --- Yandex Kit v2: readable text + clean marketplace screenshots --- */

.case-page--v2 .case-marketplace-proof__subtitle,
.case-page--v2 .case-brand-intro__subtitle {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

.case-page--v2 .case-brand-intro__quote {
	color: var(--case-ink, #16161a) !important;
}

.case-page--v2 .case-mp-stat__label,
.case-page--v2 .case-marketplace-card__note,
.case-page--bronext .case-marketplace-card__note,
.case-page--vestiseven .case-marketplace-card__note {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

.case-page--v2 .case-other-cases--dellwell-v2 .other-case-item__excerpt,
.case-page--v2 .case-other-cases--dellwell-v2 .other-case-item__more {
	color: var(--case-mut, rgba(22, 22, 26, 0.58)) !important;
}

.case-page--v2 .case-marketplace-card__media,
.case-page--v2 .case-marketplace-card--ozon .case-marketplace-card__media,
.case-page--v2 .case-marketplace-card--wb .case-marketplace-card__media,
.case-page--v2 .case-marketplace-card--yandex-market .case-marketplace-card__media {
	background: transparent !important;
	border-top: 1px solid var(--case-line, rgba(22, 22, 26, 0.1)) !important;
}

.case-page--v2 .case-marketplace-card__image {
	background: transparent !important;
	border: 1px solid var(--case-line, rgba(22, 22, 26, 0.1)) !important;
	box-shadow: none !important;
}

.case-page--v2 .case-marketplace-card__actions {
	background: transparent !important;
	border-top: 1px solid var(--case-line, rgba(22, 22, 26, 0.1)) !important;
}

.case-page--v2 .case-marketplace-card__link:hover {
	color: var(--case-on-accent, #fff) !important;
}

.case-page--v2 .case-brand-intro__col--banner {
	background: var(--case-bg2, #f5efe3) !important;
}

@media (max-width: 640px) {
	.case-page--v2 .top__title,
	.case-page--v2 .top-title-case {
		font-size: clamp(1.05rem, 4.8vw, 1.35rem) !important;
		line-height: 1.25 !important;
		max-width: 100%;
		word-break: break-word;
		overflow-wrap: anywhere;
	}
}
