/**
 * SEO Profit — Main Styles v1.1
 */

/* Override WP default padding on ALL has-background groups */
.wp-block-group.has-background {
	padding: 0;
}

*, *::before, *::after { box-sizing: border-box; }

:root {
	--header-height: 52px;
}

body {
	margin: 0;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; }

.site-container,
main .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

.alignfull { width: 100%; max-width: none; }

.alignfull[class*="-section"],
.trust-badges {
	padding-left: clamp(1rem, 4vw, 2rem) !important;
	padding-right: clamp(1rem, 4vw, 2rem) !important;
}

.alignfull h2.wp-block-heading {
	margin-bottom: 0.5rem;
	text-align: center;
}

.alignfull > p.has-text-align-center {
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

/* Header */
.site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 1000;
	background: rgba(255, 255, 255, 0.25) !important;
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border-bottom: 1px solid rgba(226, 232, 240, 0.45);
	transition: box-shadow 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.site-header::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, #2563eb 0%, #10b981 100%);
}

.site-header.is-scrolled {
	background: rgba(255, 255, 255, 0.35) !important;
	box-shadow: 0 4px 24px rgba(15, 23, 42, 0.08);
	border-bottom-color: rgba(226, 232, 240, 0.55);
}

.site-header .site-container {
	padding: 0.375rem clamp(1rem, 4vw, 2rem);
}

.header-row {
	display: grid !important;
	grid-template-columns: auto 1fr auto;
	margin: 0 !important;
	gap: 1.25rem;
	align-items: center !important;
}

.header-row > .wp-block-column {
	margin: 0 !important;
	width: auto !important;
	flex-basis: auto !important;
	min-width: 0;
}

.header-nav-col .header-navigation,
.header-nav-col .wp-block-navigation {
	justify-content: flex-start;
	width: 100%;
}

/* Logo */
.site-logo__link {
	display: inline-flex;
	align-items: center;
	gap: 0.625rem;
	text-decoration: none;
	transition: opacity 0.2s;
}

.site-logo__link:hover {
	opacity: 0.9;
}

.site-logo__icon {
	flex-shrink: 0;
	display: block;
	width: 36px;
	height: 36px;
	border-radius: 9px;
	box-shadow: 0 3px 10px rgba(37, 99, 235, 0.22);
	transition: transform 0.2s, box-shadow 0.2s;
}

.site-logo__link:hover .site-logo__icon {
	transform: translateY(-1px);
	box-shadow: 0 5px 14px rgba(37, 99, 235, 0.3);
}

.site-logo__wordmark {
	font-size: 1.0625rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: #0f172a;
	line-height: 1;
	white-space: nowrap;
}

.site-logo__wordmark--light {
	color: #fff;
}

.site-logo__profit {
	background: linear-gradient(135deg, #2563eb 0%, #10b981 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

.site-logo__wordmark--light .site-logo__profit {
	background: linear-gradient(135deg, #60a5fa 0%, #34d399 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

.site-logo__link--footer {
	margin-bottom: 0.25rem;
}

.site-logo__link--footer .site-logo__icon {
	width: 36px;
	height: 36px;
}

/* Navigation */
.header-nav-col .header-navigation,
.header-nav-col .wp-block-navigation {
	justify-content: flex-start;
	width: 100%;
}

.header-nav-col .wp-block-navigation__container {
	gap: 0.125rem !important;
}

.header-nav-col .wp-block-navigation-item__content {
	color: #334155;
	text-decoration: none;
	padding: 0.375rem 0.625rem;
	border-radius: 8px;
	font-weight: 500;
	font-size: 0.875rem;
	white-space: nowrap;
	transition: color 0.2s, background 0.2s;
}

.header-nav-col .wp-block-navigation-item__content:hover {
	color: #2563eb;
	background: rgba(37, 99, 235, 0.06);
}

.header-nav-col .wp-block-navigation__submenu-container {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.1);
	padding: 0.5rem;
	min-width: 200px;
}

.header-nav-col .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 0.625rem 0.875rem;
	border-radius: 8px;
}

/* CTA area */
.header-cta {
	gap: 0.75rem;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
}

.header-phone,
.header-call-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	padding: 0.3125rem 0.75rem;
	border-radius: 999px;
	background: rgba(248, 250, 252, 0.85);
	border: 1px solid rgba(226, 232, 240, 0.8);
	color: #0f172a;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.8125rem;
	white-space: nowrap;
	transition: border-color 0.2s, background 0.2s, color 0.2s;
}

.header-phone:hover,
.header-call-btn:hover {
	border-color: #bfdbfe;
	background: #eff6ff;
	color: #2563eb;
}

.header-phone__icon {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563EB' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Mobile nav toggle */
.header-nav-col .wp-block-navigation__responsive-container-open {
	padding: 0.5rem;
	border-radius: 8px;
	border: 1px solid #e2e8f0;
	background: #f8fafc;
}

.header-nav-col .wp-block-navigation__responsive-container-open:hover {
	background: #eff6ff;
	border-color: #bfdbfe;
}

@media (max-width: 960px) {
	:root {
		--header-height: 48px;
	}

	.header-row {
		grid-template-columns: 1fr auto auto;
		gap: 0.5rem;
	}

	.header-phone {
		display: none;
	}

	.header-cta {
		justify-content: flex-end;
		gap: 0.375rem;
	}

	.header-call-btn {
		padding: 0.3125rem 0.625rem;
		font-size: 0.75rem;
	}

	.header-nav-col .wp-block-navigation:not(.is-menu-open) .wp-block-navigation__container {
		display: none;
	}
}

/* Hero */
.hero-section {
	position: relative;
	overflow: hidden;
	margin-top: calc(-1 * var(--header-height));
	padding-top: calc(var(--header-height) + clamp(2rem, 5vw, 3.5rem)) !important;
	padding-bottom: clamp(2.5rem, 6vw, 4rem) !important;
}

main:not(:has(> .hero-section)) {
	padding-top: var(--header-height);
}

.hero-section::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 15% 50%, rgba(37, 99, 235, 0.25) 0%, transparent 55%),
		radial-gradient(circle at 85% 50%, rgba(16, 185, 129, 0.15) 0%, transparent 55%);
	pointer-events: none;
}

.hero-section > .wp-block-columns {
	position: relative;
	z-index: 1;
	max-width: 1200px;
	margin: 0 auto;
	gap: 2.5rem !important;
	align-items: center !important;
}

.hero-section h1 {
	color: #fff;
	margin-top: 0.75rem;
	margin-bottom: 0;
	line-height: 1.15;
}

.hero-section .hero-benefits {
	list-style: none;
	padding: 0;
	margin: 1.25rem 0 1.75rem;
}

.hero-section .hero-benefits li {
	padding: 0.35rem 0 0.35rem 1.5rem;
	position: relative;
	color: #e2e8f0;
	font-size: 1rem;
}

.hero-section .hero-benefits li::before {
	content: '✓';
	position: absolute;
	left: 0;
	color: #10b981;
	font-weight: 700;
}

.hero-form-card {
	background: #fff !important;
	border-radius: 16px !important;
	padding: 2rem !important;
	box-shadow: 0 24px 64px rgba(0, 0, 0, 0.25);
}

.hero-form-card h3 {
	margin-top: 0;
	margin-bottom: 0.25rem;
	color: #0f172a;
}

.hero-form-card > p {
	margin-bottom: 0;
	color: #64748b;
	font-size: 0.875rem;
}

.hero-section .wp-block-buttons { gap: 0.75rem; flex-wrap: wrap; }

@media (max-width: 960px) {
	.hero-section > .wp-block-columns { flex-direction: column; }
	.hero-section > .wp-block-columns > .wp-block-column { flex-basis: 100% !important; }
}

/* Trust badges */
.trust-badges {
	background: #fff;
	border-bottom: 1px solid #e2e8f0;
	padding-top: 2rem !important;
	padding-bottom: 2rem !important;
}

.trust-badges .wp-block-columns {
	max-width: 1200px;
	margin: 0 auto;
	gap: 1rem;
}

.trust-badges .wp-block-column { text-align: center; padding: 0.5rem; }

.trust-badges .wp-block-column p:first-child {
	margin-bottom: 0.25rem !important;
	font-size: 1rem !important;
}

@media (max-width: 768px) {
	.trust-badges .wp-block-columns {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}
}

/* Sections */
.services-section, .cases-section, .team-section, .why-us-section, .reviews-section,
.pricing-section, .stats-section, .process-section, .faq-section, .cta-section {
	padding-top: clamp(3rem, 6vw, 4.5rem) !important;
	padding-bottom: clamp(3rem, 6vw, 4.5rem) !important;
}

.services-grid, .case-cards, .team-cards, .why-us-grid, .review-cards, .pricing-cards, .stats-grid {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	gap: 1.25rem !important;
}

.services-grid > .wp-block-column,
.case-cards > .wp-block-column,
.team-cards > .wp-block-column,
.why-us-grid > .wp-block-column,
.review-cards > .wp-block-column,
.pricing-cards > .wp-block-column,
.stats-grid > .wp-block-column {
	display: flex;
}

.services-grid .service-card,
.case-cards .case-card,
.team-cards .team-card,
.why-us-grid .why-card,
.review-cards .review-card,
.pricing-cards .pricing-card,
.stats-grid .stat-card {
	flex: 1;
	width: 100%;
}

.service-card, .case-card, .team-card, .why-card, .review-card, .pricing-card, .stat-card {
	height: 100%;
	border-radius: 16px !important;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.service-card {
	background: #fff !important;
	padding: 1.75rem !important;
	box-shadow: 0 2px 16px rgba(15, 23, 42, 0.06);
	border: 1px solid #e2e8f0;
}

.service-card:hover, .case-card:hover, .why-card:hover, .review-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 32px rgba(37, 99, 235, 0.1);
}

.service-card h3, .case-card h3, .why-card h3, .pricing-card h3 {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
	font-size: 1.125rem;
}

.case-card {
	background: #f8fafc !important;
	padding: 1.75rem !important;
	border: 1px solid #e2e8f0 !important;
}

.case-card h3 a {
	color: inherit;
	text-decoration: none;
	transition: color 0.2s;
}

.case-card h3 a:hover {
	color: var(--wp--preset--color--primary);
}

/* Case card — competitor-style layout */
.case-card {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}

.case-card:hover {
	border-color: #bfdbfe !important;
	box-shadow: 0 12px 32px rgba(37, 99, 235, 0.1);
	transform: translateY(-2px);
}

.case-card__tag,
.case-card > p.has-primary-color.has-small-font-size {
	display: inline-block;
	align-self: flex-start;
	background: #eff6ff;
	color: var(--wp--preset--color--primary) !important;
	border-radius: 9999px;
	font-size: 0.75rem !important;
	font-weight: 600;
	line-height: 1;
	padding: 0.4rem 0.75rem;
	margin: 0 0 0.25rem !important;
}

.case-card__title,
.case-card h3 {
	font-size: 1.375rem !important;
	margin: 0;
}

.case-card__services {
	display: grid;
	gap: 0.4rem;
	list-style: none;
	margin: 0.25rem 0 0;
	padding: 0;
}

.case-card__services li {
	color: #475569;
	font-size: 0.875rem;
	line-height: 1.4;
	padding-left: 1.125rem;
	position: relative;
}

.case-card__services li::before {
	background: var(--wp--preset--color--accent);
	border-radius: 9999px;
	content: '';
	height: 5px;
	left: 0;
	position: absolute;
	top: 0.5rem;
	width: 5px;
}

.case-card > p.has-gray-500-color {
	color: #64748b;
	font-size: 0.875rem;
	margin: 0;
}

.case-card__badges {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.5rem;
}

.case-card__badge {
	background: #ecfdf5;
	border: 1px solid #a7f3d0;
	border-radius: 9999px;
	color: #047857;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1;
	padding: 0.45rem 0.85rem;
}

.case-card__link {
	color: var(--wp--preset--color--primary);
	display: inline-flex;
	font-size: 0.9375rem;
	font-weight: 600;
	gap: 0.375rem;
	margin-top: auto;
	text-decoration: none;
}

.case-card__link:hover {
	text-decoration: underline;
}

.case-card__link span {
	transition: transform 0.2s;
}

.case-card__link:hover span {
	transform: translateX(3px);
}

.case-card__chart {
	margin: 1rem 0 0 !important;
}

.case-card__chart--inline svg,
.case-card__chart img {
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 520 / 260;
	min-height: 180px;
	object-fit: contain;
	background: #fff;
}

.case-card .wp-block-columns.is-not-stacked-on-mobile {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.75rem !important;
	margin-top: 1.25rem;
}

.case-card .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
	flex-basis: auto !important;
	width: auto !important;
}

/* Team */
.team-section {
	padding-top: clamp(3rem, 6vw, 4.5rem) !important;
	padding-right: var(--wp--preset--spacing--md) !important;
	padding-bottom: clamp(3rem, 6vw, 4.5rem) !important;
	padding-left: var(--wp--preset--spacing--md) !important;
}

.team-section__lead {
	max-width: 720px;
	margin: 0 auto var(--wp--preset--spacing--lg);
}

.team-card {
	background: #f8fafc !important;
	padding: 1.75rem !important;
	border: 1px solid #e2e8f0 !important;
	text-align: center;
}

.team-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.08);
}

.team-card__media {
	display: flex;
	justify-content: center;
	margin-bottom: 1rem;
}

.team-card__photo,
.team-card__portrait,
.team-card__avatar svg {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.team-card__meta {
	font-weight: 600;
	margin: 0 0 0.35rem !important;
}

.team-card__name {
	margin: 0 0 0.5rem !important;
	font-size: 1.125rem !important;
}

.team-card__bio {
	margin: 0 0 0.75rem !important;
	line-height: 1.55;
}

.team-card__email {
	margin: 0 !important;
}

.team-card__email a {
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

.team-card__email a:hover {
	text-decoration: underline;
}

.stats-grid .wp-block-columns {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem !important;
}

.stats-grid .wp-block-columns > .wp-block-column {
	flex-basis: auto !important;
}

@media (max-width: 781px) {
	.stats-grid .wp-block-columns {
		grid-template-columns: repeat(2, 1fr);
	}
}

.why-card {
	background: #fff !important;
	padding: 1.5rem !important;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.05);
}

.stats-section { background: #0f172a !important; }
.stats-section h2, .stats-section > p { color: #fff; }

.stat-card {
	text-align: center;
	padding: 2rem 1rem !important;
	border: 1px solid #334155 !important;
	background: transparent !important;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 140px;
}

.stat-card .stat-number,
.stat-card p.has-accent-color {
	font-size: 2.5rem !important;
	font-weight: 800;
	line-height: 1.1;
	margin-bottom: 0.5rem !important;
}

.pricing-card {
	padding: 2rem 1.5rem !important;
	border: 1px solid #e2e8f0 !important;
	background: #fff !important;
}

.pricing-card--featured {
	border: 2px solid #2563eb !important;
	background: #f8fafc !important;
	box-shadow: 0 8px 32px rgba(37, 99, 235, 0.12);
}

.review-card {
	padding: 1.75rem !important;
	border: 1px solid #e2e8f0 !important;
	background: #fff !important;
}

.process-steps { max-width: 800px; margin: 0 auto; }

.process-step {
	display: flex !important;
	align-items: flex-start;
	gap: 1rem;
	padding: 1.25rem 1.5rem !important;
	margin-bottom: 0.75rem;
	background: #f8fafc !important;
	border-radius: 12px !important;
	border-left: 4px solid #2563eb !important;
}

.process-step > p:first-child { flex-shrink: 0; margin: 0 !important; min-width: 2rem; }
.process-step h3 { margin: 0 0 0.35rem !important; font-size: 1.0625rem; }
.process-step p:last-child { margin-bottom: 0 !important; color: #64748b; font-size: 0.9375rem; }

@media (max-width: 781px) {
	.services-grid, .case-cards, .team-cards, .why-us-grid, .review-cards, .pricing-cards, .stats-grid {
		flex-direction: column !important;
	}
	.services-grid > .wp-block-column, .case-cards > .wp-block-column,
	.team-cards > .wp-block-column,
	.why-us-grid > .wp-block-column, .review-cards > .wp-block-column,
	.pricing-cards > .wp-block-column, .stats-grid > .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
	}
}

/* Forms */
.cta-form { display: flex; flex-direction: column; gap: 0.75rem; margin-top: 1.25rem; }
.cta-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; }

@media (max-width: 600px) {
	.cta-form__row { grid-template-columns: 1fr; }
}

.cta-form__input {
	width: 100%;
	padding: 0.875rem 1rem;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	font-size: 1rem;
	font-family: inherit;
	background: #fff;
	color: #0f172a;
}

.cta-form__input:focus {
	outline: none;
	border-color: #2563eb;
	box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.cta-form__submit {
	width: 100%;
	padding: 1rem;
	background: #10b981;
	color: #fff;
	border: none;
	border-radius: 9999px;
	font-size: 1rem;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
}

.cta-form__submit:hover { background: #059669; }

.cta-section { text-align: center; }
.cta-section h2, .cta-section > p { color: #fff; }

.cta-form__privacy {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.65);
	margin: 0.5rem 0 0;
}

/* FAQ */
.faq-section .faq-list { max-width: 800px; margin: 0 auto; }

.faq-item {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	margin-bottom: 0.625rem;
	overflow: hidden;
}

.faq-item summary {
	padding: 1.125rem 1.25rem;
	font-weight: 600;
	font-size: 0.9375rem;
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
}

.faq-item summary::-webkit-details-marker { display: none; }

.faq-item summary::after {
	content: '+';
	font-size: 1.375rem;
	color: #2563eb;
	flex-shrink: 0;
}

.faq-item[open] summary::after { content: '−'; }

.faq-item p {
	padding: 0 1.25rem 1.125rem;
	margin: 0;
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.65;
}

/* Buttons */
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: transform 0.2s;
}

.hero-section .is-style-outline .wp-block-button__link {
	border: 2px solid rgba(255, 255, 255, 0.8) !important;
	color: #fff !important;
}

/* Footer */
.site-footer {
	background: #0f172a !important;
	padding-top: 3.5rem !important;
	padding-bottom: 2rem !important;
}

.site-footer .wp-block-columns { max-width: 1200px; margin: 0 auto; gap: 2rem; }

.site-footer h4 { margin-top: 0; margin-bottom: 0.75rem; color: #fff; font-size: 1rem; }

.site-footer p { margin-bottom: 0.5rem; color: #94a3b8; font-size: 0.875rem; line-height: 1.7; }

.site-footer a { color: #94a3b8; text-decoration: none; }
.site-footer a:hover { color: #fff; }

@media (max-width: 781px) {
	.site-footer .wp-block-columns { flex-direction: column; }
}

html { scroll-behavior: smooth; }

::selection { background: #2563eb; color: #fff; }

.pricing-card .has-gray-500-color {
	line-height: 2;
}

.pricing-card .has-gray-500-color br {
	display: block;
	content: '';
	margin-top: 0.25rem;
}

.cases-section .wp-block-buttons {
	margin-top: 2rem;
	justify-content: center;
}

/* Cases carousel (Webolution-style teaser) */
.cases-carousel-section {
	background: #f1f5f9;
	overflow: hidden;
	padding: clamp(3rem, 6vw, 4.5rem) clamp(1rem, 4vw, 2rem);
}

.cases-carousel-section__inner {
	margin: 0 auto;
	max-width: 1200px;
}

.cases-carousel-section__head {
	margin-bottom: 2rem;
	position: relative;
}

.cases-carousel-section__watermark {
	color: rgba(148, 163, 184, 0.24);
	font-family: Manrope, Inter, sans-serif;
	font-size: clamp(3.5rem, 11vw, 6rem);
	font-weight: 800;
	left: 0;
	line-height: 0.9;
	pointer-events: none;
	position: absolute;
	top: -0.35rem;
	user-select: none;
	z-index: 0;
}

.cases-carousel-section__head-row {
	align-items: flex-end;
	display: flex;
	gap: 1.5rem;
	justify-content: space-between;
	position: relative;
	z-index: 1;
}

.cases-carousel-section__title {
	color: #0f172a;
	font-family: Manrope, Inter, sans-serif;
	font-size: clamp(1.5rem, 3vw, 2.125rem);
	font-weight: 800;
	line-height: 1.2;
	margin: 0 0 0.625rem;
	text-align: left;
}

.cases-carousel-section__lead {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.65;
	margin: 0;
	max-width: 640px;
	text-align: left;
}

.cases-carousel__nav {
	display: flex;
	flex-shrink: 0;
	gap: 0.625rem;
}

.cases-carousel__btn {
	align-items: center;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 9999px;
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
	color: #2563eb;
	cursor: pointer;
	display: inline-flex;
	height: 2.75rem;
	justify-content: center;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
	width: 2.75rem;
}

.cases-carousel__btn span {
	border-right: 2px solid currentcolor;
	border-top: 2px solid currentcolor;
	display: block;
	height: 0.55rem;
	width: 0.55rem;
}

.cases-carousel__btn--prev span {
	transform: rotate(-135deg);
}

.cases-carousel__btn--next span {
	transform: rotate(45deg);
}

.cases-carousel__btn:hover:not(:disabled) {
	border-color: #93c5fd;
	box-shadow: 0 6px 18px rgba(37, 99, 235, 0.15);
	transform: translateY(-1px);
}

.cases-carousel__btn:disabled {
	cursor: default;
	opacity: 0.35;
}

.cases-carousel__track {
	display: flex;
	gap: 1.25rem;
	overflow-x: auto;
	padding-bottom: 0.25rem;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.cases-carousel__track::-webkit-scrollbar {
	display: none;
}

/* Front page: static grid hidden, big carousel shown instead */
.home .case-cards {
	display: none;
}

/* Large branded case slide */
.ccase {
	background:
		radial-gradient(circle at 15% 20%, rgba(255, 255, 255, 0.14) 0%, transparent 45%),
		radial-gradient(circle at 85% 90%, rgba(255, 255, 255, 0.08) 0%, transparent 40%),
		linear-gradient(135deg, #1d4ed8 0%, #1e3a8a 60%, #0f172a 100%);
	border-radius: 24px;
	color: #fff;
	display: flex;
	gap: 1.5rem;
	min-height: 420px;
	overflow: hidden;
	padding: 2rem 2.25rem;
	text-decoration: none;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.ccase--b { background: linear-gradient(135deg, #065f46 0%, #052e26 60%, #022c22 100%); }
.ccase--c { background: linear-gradient(135deg, #4338ca 0%, #1e1b4b 60%, #171130 100%); }
.ccase--d { background: linear-gradient(135deg, #9a3412 0%, #431407 60%, #2a0d05 100%); }
.ccase--e { background: linear-gradient(135deg, #0e7490 0%, #082f49 60%, #05202f 100%); }
.ccase--f { background: linear-gradient(135deg, #7e22ce 0%, #2e1065 60%, #1d0b43 100%); }

.ccase:hover {
	box-shadow: 0 20px 48px rgba(15, 23, 42, 0.35);
	transform: translateY(-3px);
}

.ccase__main {
	display: flex;
	flex: 1 1 58%;
	flex-direction: column;
}

.ccase__head {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.ccase__logo {
	align-items: center;
	display: inline-flex;
	font-size: 0.9375rem;
	font-weight: 700;
	gap: 0.5rem;
}

.ccase__logo-circle {
	align-items: center;
	background: #fff;
	border-radius: 9999px;
	color: #0f172a;
	display: inline-flex;
	font-size: 0.875rem;
	height: 2rem;
	justify-content: center;
	width: 2rem;
}

.ccase__geo {
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 9999px;
	font-size: 0.75rem;
	font-weight: 600;
	padding: 0.35rem 0.75rem;
}

.ccase__title {
	color: #fff;
	font-size: clamp(1.375rem, 2.4vw, 1.875rem);
	font-weight: 800;
	line-height: 1.25;
	margin: 1.25rem 0 0;
}

.ccase__facts {
	display: grid;
	gap: 0.75rem 1.5rem;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 1.25rem;
}

.ccase__fact {
	color: rgba(255, 255, 255, 0.85);
	font-size: 0.8125rem;
	line-height: 1.5;
}

.ccase__fact b {
	color: #fff;
	display: block;
	font-size: 0.8125rem;
	margin-bottom: 0.25rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.ccase__metrics {
	display: flex;
	flex-wrap: wrap;
	gap: 2.25rem;
	margin-top: 1.5rem;
}

.ccase__metric strong {
	display: block;
	font-size: 1.75rem;
	font-weight: 800;
	line-height: 1.1;
}

.ccase__metric span {
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.8125rem;
}

.ccase__btn {
	align-items: center;
	align-self: flex-start;
	background: #fff;
	border-radius: 9999px;
	color: #0f172a;
	display: inline-flex;
	font-size: 0.9375rem;
	font-weight: 700;
	gap: 0.5rem;
	margin-top: auto;
	padding: 0.875rem 1.75rem;
	transition: background 0.2s ease, color 0.2s ease;
}

.ccase:hover .ccase__btn {
	background: #facc15;
}

.ccase__inset {
	background: #fff;
	border-radius: 16px;
	color: #0f172a;
	display: flex;
	flex: 0 0 36%;
	flex-direction: column;
	padding: 1.25rem 1.375rem;
}

.ccase__inset-title {
	font-size: 1.0625rem;
	font-weight: 800;
	margin: 0;
}

.ccase__inset-sub {
	color: #64748b;
	font-size: 0.75rem;
	margin: 0.25rem 0 1rem;
}

.ccase-pos__row {
	align-items: center;
	border-bottom: 1px solid #e2e8f0;
	display: flex;
	gap: 0.625rem;
	padding: 0.625rem 0;
}

.ccase-pos__query {
	color: #334155;
	flex: 1;
	font-size: 0.8125rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ccase-pos__tile {
	align-items: center;
	border-radius: 8px;
	display: inline-flex;
	font-size: 0.8125rem;
	font-weight: 700;
	justify-content: center;
	min-width: 2.25rem;
	padding: 0.3rem 0.5rem;
}

.ccase-pos__tile--before {
	background: #f1f5f9;
	color: #64748b;
}

.ccase-pos__tile--after {
	background: #ecfdf5;
	border: 1px solid #a7f3d0;
	color: #047857;
	gap: 0.375rem;
}

.ccase-pos__tile--after i {
	background: #059669;
	border-radius: 9999px;
	color: #fff;
	font-size: 0.5625rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	padding: 0.2rem 0.375rem;
}

.ccase-pos__arrow {
	color: #94a3b8;
	font-size: 0.75rem;
}

.ccase__legend {
	align-items: center;
	color: #64748b;
	display: flex;
	font-size: 0.6875rem;
	gap: 0.5rem;
	margin: auto 0 0;
	padding-top: 0.875rem;
}

.ccase__dot {
	border-radius: 9999px;
	display: inline-block;
	height: 8px;
	width: 8px;
}

.ccase__dot--before {
	background: #cbd5e1;
}

.ccase__dot--after {
	background: #059669;
	margin-left: 0.75rem;
}

@media (max-width: 768px) {
	.ccase {
		flex-direction: column;
		min-height: 0;
		padding: 1.5rem;
	}

	.ccase__facts {
		grid-template-columns: 1fr;
	}

	.ccase__inset {
		flex-basis: auto;
	}
}

.cases-carousel__slide {
	flex: 0 0 min(100%, 1060px);
	min-width: min(100%, 340px);
	scroll-snap-align: start;
}

.cases-carousel-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 20px;
	box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
	color: inherit;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	height: 100%;
	overflow: hidden;
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

@media (max-width: 640px) {
	.cases-carousel-card {
		flex-direction: column;
	}
}

.cases-carousel-card:hover {
	border-color: #93c5fd;
	box-shadow: 0 14px 36px rgba(37, 99, 235, 0.12);
	transform: translateY(-3px);
}

.cases-carousel-card__visual {
	background:
		radial-gradient(circle at 20% 30%, rgba(37, 99, 235, 0.35) 0%, transparent 50%),
		radial-gradient(circle at 80% 70%, rgba(16, 185, 129, 0.25) 0%, transparent 45%),
		linear-gradient(135deg, #0f172a 0%, #1e3a8a 55%, #2563eb 100%);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 0.375rem;
	min-height: 260px;
	padding: 1.25rem 1.375rem;
	position: relative;
	width: 45%;
}

.cases-carousel-card__visual--b {
	background:
		radial-gradient(circle at 75% 25%, rgba(16, 185, 129, 0.4) 0%, transparent 50%),
		radial-gradient(circle at 15% 80%, rgba(59, 130, 246, 0.3) 0%, transparent 45%),
		linear-gradient(135deg, #052e26 0%, #065f46 55%, #10b981 100%);
}

.cases-carousel-card__visual--c {
	background:
		radial-gradient(circle at 25% 75%, rgba(244, 114, 182, 0.3) 0%, transparent 50%),
		radial-gradient(circle at 85% 20%, rgba(99, 102, 241, 0.35) 0%, transparent 45%),
		linear-gradient(135deg, #1e1b4b 0%, #4338ca 55%, #818cf8 100%);
}

.cases-carousel-card__visual--d {
	background:
		radial-gradient(circle at 80% 80%, rgba(251, 191, 36, 0.3) 0%, transparent 50%),
		radial-gradient(circle at 20% 20%, rgba(239, 68, 68, 0.3) 0%, transparent 45%),
		linear-gradient(135deg, #431407 0%, #9a3412 55%, #f97316 100%);
}

.cases-carousel-card__visual--e {
	background:
		radial-gradient(circle at 70% 30%, rgba(56, 189, 248, 0.35) 0%, transparent 50%),
		radial-gradient(circle at 20% 75%, rgba(14, 165, 233, 0.3) 0%, transparent 45%),
		linear-gradient(135deg, #082f49 0%, #0e7490 55%, #22d3ee 100%);
}

.cases-carousel-card__visual--f {
	background:
		radial-gradient(circle at 30% 20%, rgba(167, 139, 250, 0.35) 0%, transparent 50%),
		radial-gradient(circle at 80% 80%, rgba(236, 72, 153, 0.25) 0%, transparent 45%),
		linear-gradient(135deg, #2e1065 0%, #7e22ce 55%, #c084fc 100%);
}

.cases-carousel-card__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.375rem;
}

.cases-carousel-card__tag {
	backdrop-filter: blur(4px);
	background: rgba(15, 23, 42, 0.45);
	border-radius: 9999px;
	color: #fff;
	font-size: 0.6875rem;
	font-weight: 600;
	line-height: 1;
	padding: 0.375rem 0.625rem;
}

.cases-carousel-card__logo {
	background: rgba(255, 255, 255, 0.14);
	backdrop-filter: blur(4px);
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 10px;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.25);
	color: #fff;
	font-size: 0.9375rem;
	font-weight: 700;
	align-self: flex-start;
	max-width: 100%;
	overflow: hidden;
	padding: 0.5rem 0.875rem;
	text-overflow: ellipsis;
	white-space: nowrap;
}

@media (max-width: 640px) {
	.cases-carousel-card__visual {
		min-height: 190px;
		width: 100%;
	}
}

.cases-carousel-card__domain {
	color: rgba(255, 255, 255, 0.75);
	font-size: 0.8125rem;
}

.cases-carousel-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.625rem;
	padding: 1.375rem 1.5rem 1.5rem;
}

.cases-carousel-card__body .case-card__link {
	margin-top: auto;
	padding-top: 0.5rem;
}

.cases-carousel-card__title {
	color: #0f172a;
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1.25;
	margin: 0;
}

.cases-carousel-card__metrics {
	border-top: 1px solid #e2e8f0;
	color: #64748b;
	display: flex;
	flex-wrap: wrap;
	font-size: 0.75rem;
	gap: 0.75rem 1rem;
	margin-top: auto;
	padding-top: 0.875rem;
}

.cases-carousel-card__metrics strong {
	color: #2563eb;
	font-size: 0.875rem;
	font-weight: 800;
	margin-right: 0.2rem;
}

.cases-carousel-section__footer {
	display: flex;
	justify-content: center;
	margin-top: 1.75rem;
}

.cases-carousel-section__all {
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
	border-radius: 9999px;
	box-shadow: 0 4px 14px rgba(37, 99, 235, 0.3);
	color: #fff;
	font-size: 0.9375rem;
	font-weight: 600;
	padding: 0.875rem 1.5rem;
	text-decoration: none;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.cases-carousel-section__all:hover {
	background: linear-gradient(135deg, #10b981 0%, #059669 100%);
	box-shadow: 0 6px 18px rgba(16, 185, 129, 0.35);
	color: #fff;
	transform: translateY(-1px);
}

@media (max-width: 782px) {
	.cases-carousel-section__head-row {
		align-items: flex-start;
		flex-direction: column;
	}

	.cases-carousel__slide {
		flex-basis: 85%;
	}

	.cases-carousel__nav {
		align-self: flex-end;
	}
}

/* SEO text sections */
.seo-text-section {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.seo-text-section p {
	line-height: 1.75;
	color: #334155;
	margin-bottom: 1rem;
}

.seo-text-section .wp-block-list {
	margin: 1rem 0 1.5rem 1.25rem;
	line-height: 1.8;
	color: #334155;
}

.seo-text-section .wp-block-list li {
	margin-bottom: 0.5rem;
}

/* What is SEO section */
.what-is-seo-section .what-is-seo-header {
	text-align: center;
	margin-bottom: 0.5rem;
}

.seo-section-badge {
	display: inline-block;
	background: rgba(37, 99, 235, 0.1);
	padding: 0.35rem 1rem;
	border-radius: 999px;
	margin-bottom: 0.75rem !important;
}

.what-is-seo-main {
	align-items: stretch;
}

.seo-intro-card {
	border: 1px solid #e2e8f0;
	box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
	border-left: 4px solid var(--wp--preset--color--primary) !important;
	height: 100%;
}

.seo-intro-card p:last-child {
	margin-bottom: 0;
}

.seo-factors-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.75rem;
	height: 100%;
}

.seo-factor-item {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1rem;
	transition: box-shadow 0.2s, transform 0.2s;
}

.seo-factor-item:hover {
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
	transform: translateY(-2px);
}

.seo-factor-item strong {
	display: block;
	font-size: 0.9375rem;
	color: #0f172a;
	margin-bottom: 0.25rem;
}

.seo-factor-item p {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.45;
	color: #64748b;
}

.seo-factor-icon {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
}

.seo-factor-icon--content { background-color: #dbeafe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563EB' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z'/%3E%3C/svg%3E"); }
.seo-factor-icon--tech   { background-color: #d1fae5; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2310B981' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15 12a3 3 0 11-6 0 3 3 0 016 0z'/%3E%3C/svg%3E"); }
.seo-factor-icon--links  { background-color: #fef3c7; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23D97706' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.828 10.172a4 4 0 00-5.656 0l-4 4a4 4 0 105.656 5.656l1.102-1.101m-.758-4.899a4 4 0 005.656 0l4-4a4 4 0 00-5.656-5.656l-1.1 1.1'/%3E%3C/svg%3E"); }
.seo-factor-icon--ux     { background-color: #ede9fe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%237C3AED' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0z'/%3E%3C/svg%3E"); }

.what-is-seo-compare {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.what-is-seo-compare > .wp-block-column {
	width: 100% !important;
	flex-basis: auto !important;
}

.seo-compare-card {
	border: 1px solid #e2e8f0;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
	height: 100%;
	transition: box-shadow 0.2s, transform 0.2s;
}

.seo-compare-card:hover {
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
	transform: translateY(-3px);
}

.seo-compare-card h3 {
	margin-top: 0.75rem;
	margin-bottom: 0.5rem;
}

.seo-compare-icon {
	display: block;
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px;
}

.seo-compare-icon--ads     { background-color: #fee2e2; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23DC2626' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M11 5.882V19.24a1.76 1.76 0 01-3.417.592l-2.147-6.15M18 13a3 3 0 100-6M5.436 13.683A4.001 4.001 0 017 6h1.832c4.1 0 7.625-1.234 9.168-3v14c-1.543-1.766-5.067-3-9.168-3H7a3.988 3.988 0 01-1.564-.317z'/%3E%3C/svg%3E"); }
.seo-compare-icon--organic { background-color: #d1fae5; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2310B981' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13 7h8m0 0v8m0-8l-8 8-4-4-6 6'/%3E%3C/svg%3E"); }
.seo-compare-icon--search  { background-color: #dbeafe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563EB' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z'/%3E%3C/svg%3E"); }

.seo-compare-tag {
	font-weight: 600;
	margin-top: 0.75rem !important;
	margin-bottom: 0 !important;
}

@media (max-width: 960px) {
	.what-is-seo-main {
		flex-direction: column;
	}

	.what-is-seo-main > .wp-block-column {
		flex-basis: 100% !important;
	}

	.what-is-seo-compare {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.seo-factors-grid {
		grid-template-columns: 1fr;
	}
}

/* Technical SEO section */
.technical-seo-header {
	text-align: center;
	margin-bottom: 0.5rem;
}

.technical-seo-intro {
	align-items: stretch;
}

.tech-intro-card {
	border: 1px solid #e2e8f0;
	height: 100%;
}

.tech-intro-card p:last-child {
	margin-bottom: 0;
}

.tech-tools-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.75rem;
	height: 100%;
}

.tech-tool-item {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1rem;
	transition: box-shadow 0.2s, transform 0.2s, border-color 0.2s;
}

.tech-tool-item:hover {
	border-color: #bfdbfe;
	box-shadow: 0 8px 20px rgba(37, 99, 235, 0.08);
	transform: translateY(-2px);
}

.tech-tool-item strong {
	display: block;
	font-size: 0.8125rem;
	color: #0f172a;
	margin-bottom: 0.2rem;
	line-height: 1.3;
}

.tech-tool-item p {
	margin: 0;
	font-size: 0.75rem;
	line-height: 1.4;
	color: #64748b;
}

.tech-tool-icon {
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px;
}

.tech-tool-icon--robots  { background-color: #dbeafe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563EB' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 3v2m6-2v2M9 19v2m6-2v2M5 9H3m2 6H3m18-6h-2m2 6h-2M7 19h10a2 2 0 002-2V7a2 2 0 00-2-2H7a2 2 0 00-2 2v10a2 2 0 002 2zM9 9h6v6H9V9z'/%3E%3C/svg%3E"); }
.tech-tool-icon--sitemap { background-color: #d1fae5; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2310B981' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 20l-5.447-2.724A1 1 0 013 16.382V5.618a1 1 0 011.447-.894L9 7m0 13l6-3m-6 3V7m6 10l4.553 2.276A1 1 0 0021 18.382V7.618a1 1 0 00-.553-.894L15 4m0 13V4m0 0L9 7'/%3E%3C/svg%3E"); }
.tech-tool-icon--gsc     { background-color: #fef3c7; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23D97706' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z'/%3E%3C/svg%3E"); }
.tech-tool-icon--yandex  { background-color: #fee2e2; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23DC2626' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z'/%3E%3C/svg%3E"); }

.technical-seo-features {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.technical-seo-features > .wp-block-column {
	width: 100% !important;
	flex-basis: auto !important;
}

.tech-feature-card {
	border: 1px solid #e2e8f0;
	height: 100%;
	transition: box-shadow 0.2s, transform 0.2s;
}

.tech-feature-card:hover {
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
	transform: translateY(-3px);
}

.tech-feature-card h3 {
	margin-top: 0.75rem;
	margin-bottom: 0.5rem;
}

.tech-feature-icon {
	display: block;
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px;
}

.tech-feature-icon--speed  { background-color: #dbeafe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563EB' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13 10V3L4 14h7v7l9-11h-7z'/%3E%3C/svg%3E"); }
.tech-feature-icon--mobile { background-color: #ede9fe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%237C3AED' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M12 18h.01M8 21h8a2 2 0 002-2V5a2 2 0 00-2-2H8a2 2 0 00-2 2v14a2 2 0 002 2z'/%3E%3C/svg%3E"); }
.tech-feature-icon--index  { background-color: #d1fae5; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2310B981' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M4 7v10c0 2 1 3 3 3h10c2 0 3-1 3-3V7c0-2-1-3-3-3H7C5 4 4 5 4 7z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 12h6M12 9v6'/%3E%3C/svg%3E"); }
.tech-feature-icon--vitals { background-color: #fef3c7; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23D97706' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z'/%3E%3C/svg%3E"); }

.tech-summary-banner {
	text-align: center;
}

.tech-summary-banner p {
	margin: 0;
	max-width: 820px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 960px) {
	.technical-seo-intro {
		flex-direction: column;
	}

	.technical-seo-intro > .wp-block-column {
		flex-basis: 100% !important;
	}

	.technical-seo-features {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.tech-tools-grid,
	.technical-seo-features {
		grid-template-columns: 1fr;
	}
}

/* Content SEO section */
.content-seo-header {
	text-align: center;
	margin-bottom: 0.5rem;
}

.content-seo-intro {
	align-items: stretch;
}

.content-intro-card {
	border: 1px solid #e2e8f0;
	box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
	border-left: 4px solid var(--wp--preset--color--accent) !important;
	height: 100%;
}

.content-intro-card p:last-child {
	margin-bottom: 0;
}

.content-workflow {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	height: 100%;
}

.content-workflow-step {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 0.875rem 1rem;
	transition: box-shadow 0.2s, transform 0.2s;
}

.content-workflow-step:hover {
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.07);
	transform: translateX(4px);
}

.content-workflow-num {
	flex-shrink: 0;
	font-size: 0.875rem;
	font-weight: 800;
	color: var(--wp--preset--color--primary);
	background: rgba(37, 99, 235, 0.1);
	width: 32px;
	height: 32px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.content-workflow-step strong {
	display: block;
	font-size: 0.875rem;
	color: #0f172a;
	margin-bottom: 0.15rem;
}

.content-workflow-step p {
	margin: 0;
	font-size: 0.75rem;
	line-height: 1.4;
	color: #64748b;
}

.content-seo-features {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.content-seo-features > .wp-block-column {
	width: 100% !important;
	flex-basis: auto !important;
}

.content-feature-card {
	border: 1px solid #e2e8f0;
	height: 100%;
	transition: box-shadow 0.2s, transform 0.2s;
}

.content-feature-card:hover {
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
	transform: translateY(-3px);
}

.content-feature-card h3 {
	margin-top: 0.75rem;
	margin-bottom: 0.5rem;
}

.content-feature-icon {
	display: block;
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px;
}

.content-feature-icon--meta  { background-color: #dbeafe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%232563EB' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M7 7h.01M7 3h5c.512 0 1.024.195 1.414.586l7 7a2 2 0 010 2.828l-7 7a2 2 0 01-2.828 0l-7-7A2 2 0 013 12V7a4 4 0 014-4z'/%3E%3C/svg%3E"); }
.content-feature-icon--links { background-color: #d1fae5; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2310B981' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.828 10.172a4 4 0 00-5.656 0l-4 4a4 4 0 105.656 5.656l1.102-1.101m-.758-4.899a4 4 0 005.656 0l4-4a4 4 0 00-5.656-5.656l-1.1 1.1'/%3E%3C/svg%3E"); }
.content-feature-icon--alt   { background-color: #fef3c7; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23D97706' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z'/%3E%3C/svg%3E"); }
.content-feature-icon--eeat  { background-color: #ede9fe; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%237C3AED' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z'/%3E%3C/svg%3E"); }

.content-summary-banner {
	border: 1px solid #e2e8f0;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
	text-align: center;
}

.content-summary-banner p {
	margin: 0;
	max-width: 820px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 960px) {
	.content-seo-intro {
		flex-direction: column;
	}

	.content-seo-intro > .wp-block-column {
		flex-basis: 100% !important;
	}

	.content-seo-features {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.content-seo-features {
		grid-template-columns: 1fr;
	}
}

/* ============================================================
   Semantic landing pages (/napravleniya/...)
   ============================================================ */

.semantic-landing-page main .wp-block-post-content {
	padding-top: 0;
}

/* Full-bleed hero blocks inside constrained page template */
.semantic-landing-page main .wp-block-post-content > .alignfull,
.semantic-landing-page main .wp-block-post-content .semantic-page > .alignfull.hero-section,
.semantic-landing-page main .wp-block-post-content .semantic-page > .alignfull.semantic-hero {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}

.semantic-landing-page .semantic-page {
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
	width: 100%;
}

.semantic-landing-page .semantic-page > .alignfull.hero-section,
.semantic-landing-page .semantic-page > .alignfull.semantic-hero {
	max-width: 100vw;
	width: 100vw;
}

.semantic-landing-page .semantic-section,
.semantic-landing-page .semantic-section--cards {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: 1200px;
	width: 100%;
}

.semantic-landing-page .hero-section.semantic-hero--direction,
.semantic-landing-page .hero-section.semantic-hero--cluster {
	padding-bottom: clamp(2.5rem, 6vw, 4rem) !important;
}

.semantic-landing-page .hero-section.semantic-hero--direction .semantic-hero__title,
.semantic-landing-page .hero-section.semantic-hero--cluster .semantic-hero__title {
	color: #fff !important;
	font-size: clamp(1.75rem, 4vw, 2.75rem) !important;
	line-height: 1.15 !important;
	margin: 0.75rem 0 1rem !important;
	max-width: none;
}

.semantic-landing-page .hero-section.semantic-hero--direction .semantic-hero__lead,
.semantic-landing-page .hero-section.semantic-hero--cluster .semantic-hero__lead {
	color: #e2e8f0 !important;
	margin-bottom: 0 !important;
	max-width: none;
}

.semantic-landing-page .hero-section.semantic-hero--direction .semantic-breadcrumbs,
.semantic-landing-page .hero-section.semantic-hero--cluster .semantic-breadcrumbs {
	margin-bottom: 1rem;
}

.semantic-section--topics {
	background: #f8fafc;
	margin-top: 0 !important;
	padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.semantic-landing-page .hero-section.semantic-hero--root {
	min-height: auto;
	padding-bottom: clamp(2.5rem, 6vw, 4rem) !important;
}

.semantic-landing-page .hero-section.semantic-hero--root .semantic-hero__title {
	color: #fff !important;
	font-size: clamp(1.875rem, 4.5vw, 3rem) !important;
	line-height: 1.15 !important;
	margin: 0.75rem 0 1rem !important;
	max-width: none;
}

.semantic-landing-page .hero-section.semantic-hero--root .semantic-hero__lead {
	color: #e2e8f0 !important;
	margin-bottom: 1.25rem !important;
	max-width: none;
}

.semantic-landing-page .semantic-hero:not(.hero-section) {
	margin-top: calc(-1 * var(--header-height));
	padding-top: calc(clamp(2rem, 5vw, 3.5rem) + var(--header-height)) !important;
}

.semantic-page {
	padding-bottom: 2rem;
}

.semantic-hero {
	background:
		radial-gradient(circle at 85% 15%, rgba(16, 185, 129, 0.25) 0%, transparent 45%),
		linear-gradient(135deg, #0f172a 0%, #1e3a8a 55%, #0f766e 100%);
	color: #fff;
	padding: clamp(2rem, 5vw, 3.5rem) clamp(1rem, 4vw, 2rem) clamp(2.5rem, 6vw, 4rem) !important;
	margin-bottom: 0;
	position: relative;
	overflow: hidden;
}

.semantic-hero::after {
	background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
	content: "";
	inset: 0;
	opacity: 0.6;
	pointer-events: none;
	position: absolute;
}

.semantic-hero > * {
	position: relative;
	z-index: 1;
}

.semantic-hero--root {
	min-height: clamp(320px, 42vw, 420px);
	padding-bottom: clamp(3.5rem, 8vw, 5rem) !important;
}

.semantic-hero--root .semantic-hero__title {
	font-size: clamp(2rem, 5vw, 3.25rem) !important;
	letter-spacing: -0.02em;
	max-width: 820px;
}

.semantic-hero--root .semantic-hero__lead {
	font-size: clamp(1.0625rem, 2.2vw, 1.2rem) !important;
	max-width: 640px;
}

.semantic-hero__inner {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}

.semantic-hero__glow {
	border-radius: 50%;
	filter: blur(60px);
	opacity: 0.45;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.semantic-hero__glow--one {
	background: #2563eb;
	height: 280px;
	right: 8%;
	top: -40px;
	width: 280px;
}

.semantic-hero__glow--two {
	background: #10b981;
	bottom: -60px;
	height: 220px;
	left: 12%;
	width: 220px;
}

.semantic-hero--compact {
	padding-bottom: clamp(1.75rem, 4vw, 2.5rem) !important;
}

.semantic-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.5rem;
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
	font-size: 0.8125rem;
}

.semantic-breadcrumbs li:not(:last-child)::after {
	content: "›";
	margin-left: 0.5rem;
	opacity: 0.55;
}

.semantic-breadcrumbs a {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
}

.semantic-breadcrumbs a:hover {
	color: #fff;
	text-decoration: underline;
}

.semantic-breadcrumbs span {
	color: rgba(255, 255, 255, 0.65);
}

.semantic-hero__eyebrow {
	color: #6ee7b7 !important;
	font-size: 0.75rem !important;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 0.75rem !important;
	text-transform: uppercase;
}

.semantic-hero__title {
	color: #fff !important;
	font-size: clamp(1.75rem, 4vw, 2.75rem) !important;
	line-height: 1.15 !important;
	margin: 0 0 1rem !important;
	max-width: 900px;
}

.semantic-hero__lead {
	color: rgba(255, 255, 255, 0.88) !important;
	font-size: clamp(1rem, 2vw, 1.125rem) !important;
	line-height: 1.65 !important;
	margin: 0 0 1.25rem !important;
	max-width: 720px;
}

.semantic-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
}

.semantic-meta__item {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	color: #fff;
	font-size: 0.8125rem;
	padding: 0.375rem 0.875rem;
}

.semantic-meta__item strong {
	color: #6ee7b7;
	font-weight: 700;
}

.semantic-section {
	padding: clamp(2rem, 4vw, 3rem) clamp(1rem, 4vw, 2rem) !important;
}

.semantic-section--cards {
	background: #f8fafc;
	margin-top: -2.5rem;
	padding-top: 0.5rem !important;
	position: relative;
	z-index: 2;
}

.semantic-section__title {
	color: #0f172a;
	font-size: clamp(1.25rem, 2.5vw, 1.5rem) !important;
	margin-bottom: 1.25rem !important;
	text-align: left !important;
}

.semantic-keywords-section {
	background: #f8fafc;
	border-top: 1px solid #e2e8f0;
	border-bottom: 1px solid #e2e8f0;
}

.semantic-keywords-section h2,
.semantic-benefits h2,
.semantic-cta-section h2 {
	font-size: clamp(1.375rem, 3vw, 1.75rem);
	margin-bottom: 1.25rem;
	text-align: left;
}

.semantic-keywords {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.semantic-keyword {
	background: #f1f5f9;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	color: #334155;
	display: inline-block;
	font-size: 0.875rem;
	line-height: 1.35;
	padding: 0.4375rem 0.875rem;
	transition: border-color 0.2s, background 0.2s;
}

.semantic-keyword:hover {
	background: #eff6ff;
	border-color: #bfdbfe;
	color: #1d4ed8;
}

.semantic-benefits-grid {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem !important;
}

.semantic-benefits-grid > .wp-block-column {
	flex-basis: auto !important;
	width: auto !important;
}

.semantic-benefit-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	box-shadow: 0 4px 20px rgba(15, 23, 42, 0.05);
	height: 100%;
	padding: 1.5rem !important;
	position: relative;
}

.semantic-benefit-card::before {
	align-items: center;
	background: linear-gradient(135deg, #2563eb 0%, #10b981 100%);
	border-radius: 12px;
	color: #fff;
	content: "01";
	display: flex;
	font-size: 0.8125rem;
	font-weight: 700;
	height: 2.5rem;
	justify-content: center;
	margin-bottom: 1rem;
	width: 2.5rem;
}

.semantic-benefit-card--tech::before {
	content: "02";
}

.semantic-benefit-card--growth::before {
	content: "03";
}

.semantic-benefit-card h3 {
	margin-top: 0 !important;
}

.semantic-benefit-card p {
	color: #64748b;
	margin-bottom: 0;
}

.semantic-card-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.semantic-card-grid--directions {
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}

.semantic-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
	color: inherit;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 1.25rem 1.375rem;
	text-decoration: none;
	transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.semantic-card:hover {
	border-color: #93c5fd;
	box-shadow: 0 10px 28px rgba(37, 99, 235, 0.12);
	transform: translateY(-2px);
}

.semantic-card--direction {
	background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
	border-left: 3px solid #2563eb;
	min-height: 7.5rem;
}

.semantic-card--direction .semantic-card__link {
	margin-top: auto;
}

.semantic-card__title {
	color: #0f172a;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.35;
}

.semantic-card__meta {
	color: #64748b;
	font-size: 0.8125rem;
}

.semantic-card__link {
	color: #2563eb;
	font-size: 0.875rem;
	font-weight: 600;
	margin-top: auto;
}

/* ── Services hub page ── */
.services-hub-page main .wp-block-post-content {
	padding-top: 0;
}

.services-hub-page .services-page > .alignfull.hero-section,
.services-hub-page .services-page > .alignfull.semantic-hero {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}

.services-hub-page .hero-section.semantic-hero--services {
	padding-bottom: clamp(3rem, 6vw, 4.5rem) !important;
	padding-top: clamp(3.5rem, 7vw, 5rem) !important;
}

.services-hub-page .hero-section.semantic-hero--services .semantic-hero__title {
	font-size: clamp(1.875rem, 4vw, 2.75rem);
	line-height: 1.15;
	max-width: 18ch;
}

.services-hub-section {
	padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding-top: clamp(2.5rem, 5vw, 3.5rem) !important;
}

.services-hub-section__lead {
	margin-bottom: 2rem !important;
	margin-top: -0.5rem;
	max-width: 42rem;
	margin-left: auto;
	margin-right: auto;
}

.service-hub-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.service-hub-grid--top {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

.service-landing-details {
	padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.service-landing-price h3 {
	margin: 0.25rem 0 0;
}

.service-landing-intro {
	padding-bottom: clamp(1.5rem, 3vw, 2rem) !important;
	padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.service-landing-intro p {
	margin-left: auto;
	margin-right: auto;
	max-width: 42rem;
}

.service-landing-includes {
	padding-bottom: clamp(2rem, 4vw, 3rem) !important;
	padding-top: clamp(1rem, 2vw, 1.5rem) !important;
}

.service-includes-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.service-include-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1.25rem 1.5rem;
}

.service-include-card__title {
	color: #0f172a;
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 0.5rem;
}

.service-include-card__text {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0;
}

.service-landing-deliverables {
	margin-bottom: 0 !important;
	padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.service-landing-deliverables .wp-block-columns {
	align-items: stretch;
	gap: clamp(1.5rem, 3vw, 2.5rem) !important;
}

.service-landing-deliverables h2 {
	color: #0f172a;
	font-size: clamp(1.375rem, 2.5vw, 1.75rem);
	margin-bottom: 1.25rem;
}

.service-deliverables-list {
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.service-deliverables-list li {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	color: #334155;
	font-size: 0.9375rem;
	line-height: 1.5;
	margin-bottom: 0;
	padding: 0.875rem 1rem 0.875rem 2.75rem;
	position: relative;
}

.service-deliverables-list li::before {
	background: #ecfdf5;
	border-radius: 9999px;
	color: #10b981;
	content: "✓";
	font-size: 0.75rem;
	font-weight: 700;
	height: 1.375rem;
	left: 0.875rem;
	line-height: 1.375rem;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 1.375rem;
}

.service-deliverables-price-col {
	display: flex;
}

.service-price-card {
	background: linear-gradient(160deg, #fff 0%, #f8fafc 100%);
	border: 1px solid #dbeafe;
	border-radius: 20px;
	box-shadow:
		0 4px 6px rgba(15, 23, 42, 0.04),
		0 20px 40px rgba(37, 99, 235, 0.1);
	display: flex;
	flex: 1;
	flex-direction: column;
	overflow: hidden;
	padding: 2rem 1.75rem 1.75rem;
	position: relative;
}

.service-price-card::before {
	background: linear-gradient(90deg, #2563eb 0%, #38bdf8 100%);
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.service-price-card__label {
	color: #64748b;
	display: block;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.service-price-card__amount {
	background: linear-gradient(135deg, #1d4ed8 0%, #2563eb 50%, #0ea5e9 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-family: Manrope, Inter, sans-serif;
	font-size: clamp(1.875rem, 4vw, 2.375rem);
	font-weight: 800;
	line-height: 1.1;
	margin: 0.875rem 0 0.5rem;
}

.service-price-card__note {
	color: #64748b;
	font-size: 0.8125rem;
	line-height: 1.5;
	margin: 0 0 1.25rem;
}

.service-price-card__features {
	border-top: 1px solid #e2e8f0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 1rem 0 0;
}

.service-price-card__features li {
	color: #475569;
	font-size: 0.8125rem;
	line-height: 1.4;
	padding-left: 1.125rem;
	position: relative;
}

.service-price-card__features li::before {
	color: #2563eb;
	content: "•";
	font-weight: 700;
	left: 0;
	position: absolute;
}

.service-price-card__btn {
	align-items: center;
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
	border-radius: 12px;
	box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35);
	color: #fff;
	display: inline-flex;
	font-size: 0.9375rem;
	font-weight: 600;
	justify-content: center;
	margin-top: auto;
	padding: 0.875rem 1.25rem;
	text-align: center;
	text-decoration: none;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.service-price-card__btn:hover {
	background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%);
	box-shadow: 0 6px 20px rgba(37, 99, 235, 0.45);
	color: #fff;
	transform: translateY(-1px);
}

.service-landing-price h3 {
	margin: 0.25rem 0 0;
}

@media (max-width: 782px) {
	.service-landing-deliverables .wp-block-columns {
		flex-direction: column;
	}

	.service-deliverables-price-col {
		order: -1;
	}

	.service-price-card {
		max-width: 420px;
	}
}

.service-landing-steps {
	padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.service-steps-list {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.service-step {
	align-items: flex-start;
	background: #f8fafc;
	border-left: 4px solid #2563eb;
	border-radius: 12px;
	display: flex;
	gap: 1rem;
	padding: 1rem 1.25rem;
}

.service-step__num {
	color: #2563eb;
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1;
	min-width: 1.5rem;
}

.service-step__title {
	color: #0f172a;
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 0.25rem;
}

.service-step__text {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.5;
	margin: 0;
}

.service-landing-faq {
	margin-top: 0;
}

.service-landing-stat {
	padding-bottom: 0 !important;
	padding-top: clamp(1.5rem, 3vw, 2rem) !important;
}

.service-landing-stat__inner {
	align-items: center !important;
	gap: 1.25rem !important;
}

.service-landing-stat__value {
	font-size: clamp(2rem, 4vw, 2.75rem) !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	margin: 0 !important;
	min-width: 5rem;
}

.service-landing-stat__inner p:last-child {
	margin: 0;
}

.service-landing-journey {
	padding-bottom: clamp(2rem, 4vw, 3rem) !important;
	padding-top: clamp(1rem, 2vw, 1.5rem) !important;
}

.service-journey-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
	margin-top: 1.5rem;
}

.service-journey__step {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	flex: 1 1 200px;
	max-width: 240px;
	padding: 1.25rem;
}

.service-journey__arrow {
	align-self: center;
	color: #94a3b8;
	display: none;
	font-size: 1.25rem;
	font-weight: 700;
}

.service-journey__num {
	color: #2563eb;
	display: block;
	font-size: 0.75rem;
	font-weight: 800;
	margin-bottom: 0.375rem;
}

.service-journey__title {
	color: #0f172a;
	font-size: 0.9375rem;
	font-weight: 700;
	margin: 0 0 0.375rem;
}

.service-journey__text {
	color: #64748b;
	font-size: 0.8125rem;
	line-height: 1.5;
	margin: 0;
}

.service-landing-consultation h2 {
	margin-top: 0;
}

.service-landing-consultation p {
	opacity: 0.92;
}

/* Premium CTA band — brand colors (blue + green + dark) */
.premium-cta-band {
	overflow: hidden;
	padding: clamp(2.75rem, 5vw, 4.5rem) clamp(1rem, 4vw, 2rem);
	position: relative;
}

.premium-cta-band__bg {
	background:
		radial-gradient(circle at 15% 50%, rgba(37, 99, 235, 0.28) 0%, transparent 55%),
		radial-gradient(circle at 85% 50%, rgba(16, 185, 129, 0.18) 0%, transparent 55%),
		linear-gradient(135deg, #0f172a 0%, #1e3a8a 50%, #2563eb 100%);
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.premium-cta-band__bg::after {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 200' opacity='0.06'%3E%3Cpath fill='%2310b981' d='M0 120 Q100 60 200 100 T400 80 L400 200 L0 200Z'/%3E%3C/svg%3E") no-repeat right bottom / 45% auto;
	content: "";
	inset: 0;
	opacity: 0.8;
	position: absolute;
}

.premium-cta-band__inner {
	align-items: center;
	display: grid;
	gap: clamp(1.5rem, 4vw, 3rem);
	grid-template-columns: minmax(0, 42%) 1px minmax(0, 1fr);
	margin: 0 auto;
	max-width: 1200px;
	position: relative;
	z-index: 1;
}

.premium-cta-band__title {
	color: #fff;
	font-family: Manrope, Inter, sans-serif;
	font-size: clamp(1.375rem, 2.8vw, 2.125rem);
	font-weight: 700;
	line-height: 1.28;
	margin: 0 0 1.5rem;
	text-align: left;
}

.premium-cta-band__accent {
	color: #10b981;
	font-weight: 800;
	text-transform: uppercase;
}

.premium-cta-band__btn {
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
	border-radius: 9999px;
	box-shadow:
		0 0 24px rgba(37, 99, 235, 0.35),
		0 6px 20px rgba(15, 23, 42, 0.25);
	color: #fff;
	display: inline-flex;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.3;
	padding: 1rem 1.625rem;
	text-align: center;
	text-decoration: none;
	transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.premium-cta-band__btn:hover {
	background: linear-gradient(135deg, #10b981 0%, #059669 100%);
	box-shadow:
		0 0 28px rgba(16, 185, 129, 0.4),
		0 8px 24px rgba(15, 23, 42, 0.3);
	color: #fff;
	transform: translateY(-2px);
}

.premium-cta-band__divider {
	align-self: stretch;
	background: rgba(255, 255, 255, 0.16);
	min-height: 140px;
	width: 1px;
}

.premium-cta-band__right p {
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.9375rem;
	line-height: 1.7;
	margin: 0 0 1rem;
}

.premium-cta-band__right p:last-child {
	margin-bottom: 0;
}

@media (max-width: 782px) {
	.premium-cta-band__inner {
		grid-template-columns: 1fr;
	}

	.premium-cta-band__divider {
		display: none;
	}

	.premium-cta-band__btn {
		width: 100%;
	}
}

.service-pricing-note {
	color: #64748b;
	font-size: 0.8125rem;
	margin-top: 1rem;
	text-align: center;
}

@media (min-width: 900px) {
	.service-journey__arrow {
		display: block;
	}

	.service-includes-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 899px) {
	.service-tiers-grid {
		grid-template-columns: 1fr;
	}
}

.service-landing-highlights {
	margin-top: -1.5rem;
	padding-bottom: 1.5rem !important;
	padding-top: 0 !important;
}

.service-highlights-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
}

.service-highlight {
	align-items: center;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 9999px;
	display: inline-flex;
	gap: 0.5rem;
	padding: 0.5rem 1rem;
}

.service-highlight__text {
	color: #334155;
	font-size: 0.875rem;
	font-weight: 600;
}

.service-tiers-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.service-tier-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	padding: 1.75rem;
}

.service-tier-card--featured {
	background: linear-gradient(180deg, #f8fafc 0%, #eff6ff 100%);
	border: 2px solid #2563eb;
	box-shadow: 0 12px 32px rgba(37, 99, 235, 0.12);
}

.service-tier-card__badge {
	color: #10b981;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	margin-bottom: 0.5rem;
	text-transform: uppercase;
}

.service-tier-card__name {
	color: #0f172a;
	font-size: 1.25rem;
	font-weight: 700;
	margin: 0 0 0.375rem;
}

.service-tier-card__desc {
	color: #64748b;
	font-size: 0.875rem;
	line-height: 1.5;
	margin: 0 0 1rem;
}

.service-tier-card__price {
	color: #2563eb;
	font-size: 1.75rem;
	font-weight: 800;
	margin: 0;
}

.service-tier-card__term {
	color: #64748b;
	font-size: 0.8125rem;
	margin: 0.25rem 0 1rem;
}

.service-tier-card__features {
	color: #475569;
	flex: 1;
	font-size: 0.875rem;
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
}

.service-tier-card__features li {
	margin-bottom: 0.375rem;
	padding-left: 1.125rem;
	position: relative;
}

.service-tier-card__features li::before {
	color: #10b981;
	content: "✓";
	font-size: 0.75rem;
	font-weight: 700;
	left: 0;
	position: absolute;
}

.service-tier-card__btn {
	border: 1px solid #2563eb;
	border-radius: 9999px;
	color: #2563eb;
	display: block;
	font-size: 0.9375rem;
	font-weight: 600;
	padding: 0.75rem 1rem;
	text-align: center;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease;
}

.service-tier-card__btn:hover {
	background: #eff6ff;
}

.service-tier-card__btn--primary {
	background: #2563eb;
	border-color: #2563eb;
	color: #fff;
}

.service-tier-card__btn--primary:hover {
	background: #1d4ed8;
	color: #fff;
}

.service-signals-list {
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 1.5rem auto 0;
	max-width: 900px;
	padding: 0;
}

.service-signals-list li {
	align-items: center;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	break-inside: avoid;
	color: #334155;
	display: flex;
	font-size: 0.9rem;
	gap: 0.75rem;
	line-height: 1.5;
	margin-bottom: 0;
	padding: 0.875rem 1rem;
	position: relative;
}

.service-signals__num {
	align-items: center;
	background: linear-gradient(135deg, #2563eb, #10b981);
	border-radius: 50%;
	color: #fff;
	display: flex;
	flex-shrink: 0;
	font-size: 0.6875rem;
	font-weight: 700;
	height: 1.75rem;
	justify-content: center;
	line-height: 1;
	min-width: 1.75rem;
	padding: 0;
	text-align: center;
	width: 1.75rem;
}

.service-report-section {
	padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.service-report-section__grid {
	align-items: center;
	display: grid;
	gap: clamp(1.5rem, 3vw, 2.5rem);
	grid-template-columns: 0.95fr 1.05fr;
}

.service-report-preview__doc {
	background: linear-gradient(145deg, #0f172a 0%, #1e3a5f 55%, #2563eb 100%);
	border-radius: 20px;
	box-shadow: 0 24px 48px rgba(15, 23, 42, 0.2);
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	min-height: auto;
	overflow: hidden;
	padding: 1.5rem;
	position: relative;
}


.service-report-preview__doc::before {
	background: radial-gradient(circle, rgba(16, 185, 129, 0.2) 0%, transparent 70%);
	content: '';
	height: 80%;
	position: absolute;
	right: -15%;
	top: -30%;
	width: 60%;
}

.service-report-preview__header {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	position: relative;
}

.service-report-preview__brand {
	color: #10b981;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.service-report-preview__type {
	color: rgba(255, 255, 255, 0.55);
	font-size: 0.75rem;
}

.service-report-preview__badge {
	align-items: center;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	color: #fff;
	display: inline-flex;
	font-size: 0.85rem;
	font-weight: 700;
	justify-content: center;
	padding: 0.45rem 1rem;
	position: relative;
	text-align: center;
	width: fit-content;
}

.service-report-preview__chart {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	padding: 0.75rem;
	position: relative;
}

.report-chart__head {
	align-items: center;
	color: #64748b;
	display: flex;
	font-size: 0.72rem;
	font-weight: 600;
	justify-content: space-between;
	margin-bottom: 0.65rem;
}

.report-chart__head strong {
	color: #10b981;
	font-size: 0.72rem;
	font-weight: 700;
}

.report-chart__plot {
	align-items: flex-end;
	border-bottom: 1px solid #e2e8f0;
	display: flex;
	gap: 0.45rem;
	height: 120px;
	padding-bottom: 0.35rem;
}

.report-chart__bar {
	border-radius: 4px 4px 0 0;
	flex: 1;
	max-width: 2rem;
	min-width: 0;
}

.report-chart__bar--search {
	background: linear-gradient(180deg, #8b5cf6 0%, #c4b5fd 100%);
}

.report-chart__bar--direct {
	background: linear-gradient(180deg, #ec4899 0%, #fbcfe8 100%);
}

.report-chart__bar--ads {
	background: linear-gradient(180deg, #14b8a6 0%, #99f6e4 100%);
}

.report-chart__days {
	color: #94a3b8;
	display: flex;
	font-size: 0.62rem;
	justify-content: space-between;
	margin-top: 0.35rem;
	padding: 0 0.15rem;
}

.report-chart__legend {
	color: #64748b;
	display: flex;
	flex-wrap: wrap;
	font-size: 0.62rem;
	gap: 0.65rem;
	margin-top: 0.5rem;
}

.report-chart__legend span {
	align-items: center;
	display: inline-flex;
	gap: 0.25rem;
}

.report-chart__dot {
	border-radius: 50%;
	display: inline-block;
	height: 0.45rem;
	width: 0.45rem;
}

.report-chart__dot--search { background: #8b5cf6; }
.report-chart__dot--direct { background: #ec4899; }
.report-chart__dot--ads { background: #14b8a6; }

.report-chart--cwv .report-chart__plot,
.report-chart--anchors .report-chart__plot {
	display: none;
}

.report-cwv-list {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	margin-bottom: 0.5rem;
}

.report-cwv-item {
	align-items: center;
	display: grid;
	gap: 0.45rem;
	grid-template-columns: 2.25rem 1fr 2.5rem;
}

.report-cwv-item__label {
	color: #475569;
	font-size: 0.68rem;
	font-weight: 700;
}

.report-cwv-item__track {
	background: #f1f5f9;
	border-radius: 999px;
	height: 0.45rem;
	overflow: hidden;
}

.report-cwv-item__fill {
	border-radius: 999px;
	height: 100%;
}

.report-cwv-item--good .report-cwv-item__fill {
	background: linear-gradient(90deg, #10b981 0%, #34d399 100%);
}

.report-cwv-item--warn .report-cwv-item__fill {
	background: linear-gradient(90deg, #f59e0b 0%, #fbbf24 100%);
}

.report-cwv-item--bad .report-cwv-item__fill {
	background: linear-gradient(90deg, #ef4444 0%, #f87171 100%);
}

.report-cwv-item__val {
	color: #0f172a;
	font-size: 0.68rem;
	font-weight: 700;
	text-align: right;
}

.report-chart__dot--good { background: #10b981; }
.report-chart__dot--warn { background: #f59e0b; }
.report-chart__dot--bad { background: #ef4444; }

.report-anchor-list {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	margin-bottom: 0.5rem;
}

.report-anchor-row {
	align-items: center;
	display: grid;
	gap: 0.45rem;
	grid-template-columns: 4.5rem 1fr 2rem;
}

.report-anchor-row__label {
	color: #475569;
	font-size: 0.68rem;
	font-weight: 600;
}

.report-anchor-row__track {
	background: #f1f5f9;
	border-radius: 999px;
	height: 0.45rem;
	overflow: hidden;
}

.report-anchor-row__fill {
	border-radius: 999px;
	height: 100%;
}

.report-anchor-row__fill--brand {
	background: linear-gradient(90deg, #6366f1 0%, #818cf8 100%);
}

.report-anchor-row__fill--url {
	background: linear-gradient(90deg, #8b5cf6 0%, #c4b5fd 100%);
}

.report-anchor-row__fill--exact {
	background: linear-gradient(90deg, #ec4899 0%, #f9a8d4 100%);
}

.report-anchor-row__fill--partial {
	background: linear-gradient(90deg, #14b8a6 0%, #5eead4 100%);
}

.report-anchor-row__pct {
	color: #0f172a;
	font-size: 0.68rem;
	font-weight: 700;
	text-align: right;
}

.report-chart__dot--brand { background: #6366f1; }
.report-chart__dot--url { background: #8b5cf6; }
.report-chart__dot--exact { background: #ec4899; }

.service-metrics {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem) !important;
	padding-top: clamp(1.5rem, 3vw, 2.5rem) !important;
}

.services-page--audit-technical .service-about-section__watermark,
.services-page--audit-links .service-about-section__watermark {
	font-size: clamp(4rem, 12vw, 7rem);
}

.service-report-preview__chart img {
	display: none;
}

.service-report-preview__lines {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	position: relative;
}

.service-report-preview__lines span {
	background: rgba(255, 255, 255, 0.15);
	border-radius: 4px;
	height: 8px;
	width: 100%;
}

.service-report-preview__lines--short {
	width: 65% !important;
}

.service-report-preview__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	position: relative;
}

.service-report-preview__tags span {
	background: rgba(16, 185, 129, 0.2);
	border: 1px solid rgba(16, 185, 129, 0.35);
	border-radius: 6px;
	color: #a7f3d0;
	font-size: 0.7rem;
	font-weight: 600;
	padding: 0.25rem 0.5rem;
}

.service-report-preview__footer {
	color: rgba(255, 255, 255, 0.5);
	font-size: 0.75rem;
	margin-top: auto;
	position: relative;
}

.service-report-section__title {
	color: #0f172a;
	font-size: clamp(1.375rem, 2.5vw, 1.75rem);
	font-weight: 800;
	line-height: 1.25;
	margin: 0 0 0.75rem;
}

.service-report-section__lead {
	color: #64748b;
	font-size: 1rem;
	line-height: 1.6;
	margin: 0 0 1.25rem;
}

.service-report-section__list {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.service-report-section__item {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	color: #334155;
	font-size: 0.9rem;
	line-height: 1.5;
	padding: 0.75rem 1rem 0.75rem 2.25rem;
	position: relative;
}

.service-report-section__item::before {
	color: #2563eb;
	content: "→";
	font-weight: 700;
	left: 0.85rem;
	position: absolute;
}

.service-about-section-wrap {
	background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
	padding: clamp(2.5rem, 5vw, 4rem) 0 !important;
}

.service-about-section {
	margin: 0 auto;
	max-width: var(--wp--style--global--content-size, 1100px);
	padding: 0 clamp(1rem, 3vw, 1.5rem);
}

.service-about-section__inner {
	position: relative;
}

.service-about-section__watermark {
	color: rgba(37, 99, 235, 0.06);
	display: block;
	font-size: clamp(3.5rem, 10vw, 6rem);
	font-weight: 800;
	line-height: 0.85;
	margin-bottom: -1.5rem;
	pointer-events: none;
	user-select: none;
}

.service-about-section__grid {
	align-items: stretch;
	display: grid;
	gap: clamp(1.5rem, 3vw, 2.5rem);
	grid-template-columns: 1.05fr 0.95fr;
}

.service-about-section__title {
	color: #0f172a;
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 800;
	line-height: 1.25;
	margin: 0 0 1rem;
	max-width: 20ch;
}

.service-about-section__lead {
	color: #64748b;
	font-size: 1.05rem;
	line-height: 1.65;
	margin: 0 0 1.5rem;
	max-width: 52ch;
}

.service-about-section__chips {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.service-about-chip {
	align-items: center;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
	color: #334155;
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: 600;
	gap: 0.6rem;
	padding: 0.65rem 1rem;
	transition: border-color 0.2s, box-shadow 0.2s;
	width: fit-content;
}

.service-about-chip:hover {
	border-color: #2563eb;
	box-shadow: 0 4px 16px rgba(37, 99, 235, 0.1);
}

.service-about-chip__icon {
	font-size: 1.1rem;
	line-height: 1;
}

.service-about-price__card {
	background: linear-gradient(145deg, #0f172a 0%, #1e3a5f 55%, #2563eb 100%);
	border-radius: 24px;
	box-shadow:
		0 24px 48px rgba(15, 23, 42, 0.22),
		0 0 0 1px rgba(255, 255, 255, 0.08) inset;
	color: #fff;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	padding: clamp(1.5rem, 3vw, 2rem);
	position: relative;
}

.service-about-price__card::before {
	background: radial-gradient(circle, rgba(16, 185, 129, 0.25) 0%, transparent 70%);
	content: '';
	height: 80%;
	pointer-events: none;
	position: absolute;
	right: -20%;
	top: -40%;
	width: 60%;
}

.service-about-price__label {
	color: rgba(255, 255, 255, 0.65);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	margin-bottom: 0.5rem;
	position: relative;
	text-transform: uppercase;
}

.service-about-price__value {
	align-items: baseline;
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	margin-bottom: 1rem;
	position: relative;
}

.service-about-price__amount {
	background: linear-gradient(135deg, #fff 0%, #a5f3fc 100%);
	background-clip: text;
	color: transparent;
	font-size: clamp(2.75rem, 6vw, 3.75rem);
	font-weight: 800;
	line-height: 1;
	-webkit-background-clip: text;
}

.service-about-price__amount--percent {
	font-size: clamp(3rem, 7vw, 4rem);
}

.service-about-price__stat-label {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.3;
	max-width: 16ch;
}

.service-about-price__note {
	color: rgba(255, 255, 255, 0.72);
	flex: 1;
	font-size: 0.88rem;
	line-height: 1.55;
	margin: 0 0 1.25rem;
	position: relative;
}

.service-about-price__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	position: relative;
}

.service-about-price__pill {
	backdrop-filter: blur(4px);
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.72rem;
	font-weight: 600;
	padding: 0.35rem 0.65rem;
}

@media (max-width: 900px) {
	.service-about-section__grid,
	.service-report-section__grid {
		grid-template-columns: 1fr;
	}

	.service-about-section__title,
	.service-about-section__lead {
		max-width: none;
	}

	.service-signals-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.service-about-chip {
		width: 100%;
	}
}

.service-report-mock {
	min-height: 12rem;
}

.service-landing-pricing {
	padding-bottom: clamp(2.5rem, 5vw, 3.5rem) !important;
	padding-top: clamp(2rem, 4vw, 3rem) !important;
}

.service-hub-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	color: inherit;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	min-height: 100%;
	padding: 1.75rem;
	text-decoration: none;
	transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.service-hub-card:hover {
	border-color: #93c5fd;
	box-shadow: 0 12px 32px rgba(37, 99, 235, 0.12);
	transform: translateY(-3px);
}

.service-hub-card__icon {
	color: #2563eb;
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1;
}

.service-hub-card__title {
	color: #0f172a;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
}

.service-hub-card__desc {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
}

.service-hub-card__price {
	color: #2563eb;
	font-size: 0.9375rem;
	font-weight: 700;
	margin-top: 0.25rem;
}

.service-hub-card__features {
	color: #475569;
	display: flex;
	flex-wrap: wrap;
	gap: 0.375rem 0.75rem;
	list-style: none;
	margin: 0.5rem 0 0;
	padding: 0;
}

.service-hub-card__features li {
	font-size: 0.8125rem;
	padding-left: 1rem;
	position: relative;
}

.service-hub-card__features li::before {
	color: #10b981;
	content: "✓";
	font-size: 0.75rem;
	font-weight: 700;
	left: 0;
	position: absolute;
	top: 0;
}

.service-hub-card__link {
	color: #2563eb;
	font-size: 0.875rem;
	font-weight: 600;
	margin-top: auto;
	padding-top: 0.75rem;
}

.services-hub-topics {
	padding-bottom: clamp(2rem, 4vw, 3rem) !important;
	padding-top: 0 !important;
}

.services-hub-topics__inner {
	align-items: center !important;
	gap: 1.25rem !important;
}

.services-hub-topics__inner h3 {
	margin: 0 0 0.375rem;
}

.services-hub-topics__inner p {
	margin: 0;
}

.semantic-cta-section {
	background: linear-gradient(180deg, #f8fafc 0%, #eff6ff 100%);
	border-top: 1px solid #e2e8f0;
}

.semantic-cta-section .cta-form {
	margin-left: auto;
	margin-right: auto;
	max-width: 640px;
}

.semantic-cta-section .cta-form__privacy {
	color: #64748b;
}

.semantic-section__lead {
	color: #64748b;
	font-size: 1.0625rem;
	line-height: 1.65;
	margin: -0.5rem 0 1.5rem;
	max-width: 720px;
}

.semantic-stats {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(4, 1fr);
}

.semantic-stat {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
	padding: 1.25rem 1rem;
	text-align: center;
}

.semantic-stat__value {
	color: #2563eb;
	display: block;
	font-size: 1.375rem;
	font-weight: 800;
	line-height: 1.2;
	margin-bottom: 0.35rem;
}

.semantic-stat__label {
	color: #64748b;
	display: block;
	font-size: 0.8125rem;
	line-height: 1.4;
}

.semantic-stats-section {
	background: #fff;
	border-bottom: 1px solid #e2e8f0;
	padding-top: 1.5rem !important;
}

.semantic-stats-section--dark {
	background: #0f172a !important;
	border-bottom: none;
	padding-bottom: var(--wp--preset--spacing--xl, 3rem) !important;
	padding-top: var(--wp--preset--spacing--xl, 3rem) !important;
}

.semantic-stats-section--dark .semantic-section__title,
.semantic-stats-section--dark .semantic-section__lead {
	color: #fff;
}

.semantic-stats-section--dark .semantic-section__lead {
	margin-left: auto;
	margin-right: auto;
	opacity: 0.75;
}

.semantic-stats--dark .semantic-stat--dark {
	background: rgba(255, 255, 255, 0.04);
	border-color: #334155;
}

.semantic-stats--dark .semantic-stat--dark .semantic-stat__value {
	color: #38bdf8;
}

.semantic-stats--dark .semantic-stat--dark .semantic-stat__label {
	color: #94a3b8;
}

.semantic-features-section {
	background: #fff;
}

.semantic-features-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
}

.semantic-feature-card {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.5rem;
}

.semantic-feature-card__num {
	color: #2563eb;
	display: block;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	margin-bottom: 0.75rem;
}

.semantic-feature-card__title {
	color: #0f172a;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 0.625rem;
}

.semantic-feature-card__text {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin: 0;
}

.semantic-includes-section {
	background: #f8fafc;
}

.semantic-includes {
	display: grid;
	gap: 0.625rem 1.5rem;
	grid-template-columns: repeat(2, 1fr);
	list-style: none;
	margin: 0;
	padding: 0;
}

.semantic-includes__item {
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2310b981'%3E%3Cpath fill-rule='evenodd' d='M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z' clip-rule='evenodd'/%3E%3C/svg%3E") no-repeat 0.875rem 0.875rem;
	background-size: 1.125rem;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	color: #334155;
	font-size: 0.9375rem;
	line-height: 1.45;
	padding: 0.75rem 0.875rem 0.75rem 2.5rem;
}

.semantic-process-section {
	background: #fff;
}

.semantic-process-steps {
	display: grid;
	gap: 0.75rem;
	max-width: 900px;
}

.semantic-process-step {
	align-items: flex-start;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-left: 4px solid #2563eb;
	border-radius: 12px;
	display: flex;
	gap: 1rem;
	padding: 1.125rem 1.25rem;
}

.semantic-process-step__num {
	color: #2563eb;
	flex-shrink: 0;
	font-size: 1.75rem;
	font-weight: 800;
	line-height: 1;
}

.semantic-process-step__body h3 {
	color: #0f172a;
	font-size: 1.0625rem;
	margin: 0 0 0.375rem;
}

.semantic-process-step__body p {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0;
}

.semantic-why-section {
	background: #f8fafc;
}

.semantic-why-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, 1fr);
}

.semantic-why-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
	padding: 1.5rem;
}

.semantic-why-card h3 {
	color: #0f172a;
	font-size: 1.0625rem;
	margin: 0 0 0.5rem;
}

.semantic-why-card p {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0;
}

.semantic-seo-group {
	background: #fff;
	padding-bottom: 0.5rem !important;
	padding-top: 2.5rem !important;
}

.semantic-seo-group .semantic-section__title {
	margin-bottom: 0.5rem !important;
	text-align: center !important;
}

.semantic-seo-group .semantic-section__lead {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.semantic-seo-group .semantic-seo-section {
	background: transparent;
	padding: 0 !important;
}

.semantic-seo-section {
	background: #fff;
}

.semantic-seo-section--alt .semantic-seo-article {
	background: #f8fafc;
}

.semantic-seo-article {
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	display: grid;
	gap: 1.25rem 1.5rem;
	grid-template-columns: auto 1fr auto;
	margin-bottom: 1rem;
	padding: 1.5rem 1.75rem;
}

.semantic-seo-article__num {
	align-self: start;
	background: linear-gradient(135deg, #2563eb, #1d4ed8);
	border-radius: 10px;
	color: #fff;
	display: inline-flex;
	flex-shrink: 0;
	font-size: 0.875rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	line-height: 1;
	padding: 0.5rem 0.625rem;
}

.semantic-seo-article__body {
	min-width: 0;
}

.semantic-seo-section__title {
	color: #0f172a;
	font-size: clamp(1.125rem, 2.5vw, 1.375rem) !important;
	margin-bottom: 0.75rem !important;
	text-align: left !important;
}

.semantic-seo-highlights {
	align-self: start;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	min-width: 140px;
}

.semantic-seo-highlight {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 0.75rem 0.875rem;
	text-align: center;
}

.semantic-seo-section--alt .semantic-seo-highlight {
	background: #fff;
}

.semantic-seo-highlight__value {
	color: #2563eb;
	display: block;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1.2;
	margin-bottom: 0.2rem;
}

.semantic-seo-highlight__label {
	color: #64748b;
	display: block;
	font-size: 0.75rem;
	line-height: 1.35;
}

.semantic-seo-prose {
	color: #334155;
	font-size: 1rem;
	line-height: 1.75;
	max-width: 820px;
}

.semantic-seo-prose p {
	margin: 0 0 1rem;
}

.semantic-seo-prose p:last-child {
	margin-bottom: 0;
}

.semantic-seo-prose strong {
	color: #0f172a;
	font-weight: 600;
}

.semantic-faq-list {
	max-width: 800px;
}

@media (max-width: 900px) {
	.semantic-benefits-grid {
		grid-template-columns: 1fr;
	}

	.semantic-stats {
		grid-template-columns: repeat(2, 1fr);
	}

	.semantic-features-grid,
	.semantic-why-grid {
		grid-template-columns: 1fr;
	}

	.semantic-includes {
		grid-template-columns: 1fr;
	}

	.semantic-seo-article {
		grid-template-columns: 1fr;
	}

	.semantic-seo-highlights {
		flex-direction: row;
		flex-wrap: wrap;
		min-width: 0;
	}

	.semantic-seo-highlight {
		flex: 1 1 calc(50% - 0.5rem);
		min-width: 120px;
	}

	.semantic-audience-grid,
	.semantic-cases-grid {
		grid-template-columns: 1fr;
	}

	.semantic-results {
		columns: 1;
	}
}

@media (max-width: 600px) {
	.semantic-meta {
		flex-direction: column;
		align-items: flex-start;
	}

	.semantic-card-grid,
	.semantic-card-grid--directions,
	.service-hub-grid,
	.service-includes-grid {
		grid-template-columns: 1fr;
	}

	.semantic-audience-grid,
	.semantic-cases-grid {
		grid-template-columns: 1fr;
	}
}
.semantic-audience-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.semantic-audience-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.5rem;
}

.semantic-audience-card__num {
	color: #2563eb;
	display: block;
	font-size: 0.8125rem;
	font-weight: 700;
	margin-bottom: 0.75rem;
}

.semantic-audience-card__title {
	color: #0f172a;
	font-size: 1.0625rem;
	font-weight: 700;
	margin: 0 0 0.5rem;
}

.semantic-audience-card__text {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0;
}

.semantic-results {
	column-gap: 1.5rem;
	columns: 2;
	list-style: none;
	margin: 1.5rem auto 0;
	max-width: 900px;
	padding: 0;
}

.semantic-results__item {
	break-inside: avoid;
	color: #334155;
	font-size: 0.9375rem;
	line-height: 1.5;
	margin-bottom: 0.75rem;
	padding-left: 1.25rem;
	position: relative;
}

.semantic-results__item::before {
	color: #10b981;
	content: "✓";
	font-size: 0.875rem;
	font-weight: 700;
	left: 0;
	position: absolute;
}

.semantic-cases-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.semantic-case-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 1.5rem;
}

.semantic-case-card__problem,
.semantic-case-card__solution {
	color: #475569;
	font-size: 0.875rem;
	line-height: 1.5;
	margin: 0;
}

.semantic-case-card__metrics {
	border-top: 1px solid #e2e8f0;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	margin-top: auto;
	padding-top: 1rem;
}

.semantic-case-metric {
	align-items: center;
	display: grid;
	font-size: 0.8125rem;
	gap: 0.5rem;
	grid-template-columns: 1fr auto auto auto;
}

.semantic-case-metric__label {
	color: #64748b;
}

.semantic-case-metric__before {
	color: #94a3b8;
	text-decoration: line-through;
}

.semantic-case-metric__arrow {
	color: #cbd5e1;
}

.semantic-case-metric__after {
	color: #2563eb;
	font-weight: 700;
}

.semantic-pricing-section .service-pricing-note {
	color: #64748b;
	font-size: 0.875rem;
	margin-top: 1rem;
	text-align: center;
}

.semantic-gallery-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.semantic-gallery-item {
	margin: 0;
}

.semantic-gallery-item img {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	display: block;
	height: auto;
	width: 100%;
}

.semantic-gallery-item__caption {
	color: #64748b;
	font-size: 0.8125rem;
	line-height: 1.4;
	margin-top: 0.5rem;
	text-align: center;
}

.semantic-howto-list {
	counter-reset: howto;
	list-style: none;
	margin: 1.5rem 0 0;
	padding: 0;
}

.semantic-howto-step {
	display: flex;
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.semantic-howto-step__num {
	align-items: center;
	background: #2563eb;
	border-radius: 9999px;
	color: #fff;
	display: flex;
	flex-shrink: 0;
	font-size: 0.875rem;
	font-weight: 700;
	height: 2rem;
	justify-content: center;
	width: 2rem;
}

.semantic-howto-step__body h3 {
	color: #0f172a;
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 0.375rem;
}

.semantic-howto-step__body p {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0;
}

@media (max-width: 900px) {
	.semantic-gallery-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.semantic-gallery-grid {
		grid-template-columns: 1fr;
	}
}

/* Context ads landing (/services/context/) */

.context-section {
	padding-bottom: clamp(2rem, 4vw, 3rem);
	padding-top: clamp(2rem, 4vw, 3rem);
}

.context-types-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.context-type-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	box-shadow: 0 2px 12px rgba(15, 23, 42, 0.04);
	padding: 1.75rem;
	transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.context-type-card:hover {
	border-color: #93c5fd;
	box-shadow: 0 12px 32px rgba(37, 99, 235, 0.1);
	transform: translateY(-2px);
}

.context-type-card__icon {
	display: block;
	font-size: 2rem;
	line-height: 1;
	margin-bottom: 1rem;
}

.context-type-card__title {
	color: #0f172a;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 0.625rem;
}

.context-type-card__text {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin: 0;
}

.context-platforms-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.5rem;
}

.context-platform-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-left: 4px solid #fc3f1d;
	border-radius: 16px;
	padding: 1.75rem;
}

.context-platform-card--google {
	border-left-color: #4285f4;
}

.context-platform-card--telegram {
	border-left-color: #229ed9;
}

.context-platform-card--vk {
	border-left-color: #0077ff;
}

.context-platform-card--mytarget {
	border-left-color: #2563eb;
}

.context-platform-card__title {
	color: #0f172a;
	font-size: 1.25rem;
	font-weight: 700;
	margin: 0 0 0.75rem;
}

.context-platform-card__lead {
	color: #475569;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin: 0 0 1rem;
}

.context-platform-card__list {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0;
	padding-left: 1.25rem;
}

.context-platform-card__list li {
	margin-bottom: 0.375rem;
}

a.context-platform-card {
	text-decoration: none;
	color: inherit;
	cursor: pointer;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

a.context-platform-card:hover {
	border-color: var(--wp--preset--color--primary, #2563eb);
	box-shadow: 0 8px 24px rgba(37, 99, 235, 0.1);
}

.context-platform-card__cta {
	display: inline-block;
	margin-top: 0.75rem;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--wp--preset--color--primary, #2563eb);
}

.context-platforms-note {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.65;
	margin: 1.5rem auto 0;
	max-width: 720px;
	text-align: center;
}

.context-compare-table-wrap {
	margin-top: 1.5rem;
	overflow-x: auto;
}

.context-compare-table {
	border-collapse: collapse;
	min-width: 520px;
	width: 100%;
}

.context-compare-table th,
.context-compare-table td {
	border: 1px solid #e2e8f0;
	font-size: 0.9375rem;
	line-height: 1.45;
	padding: 0.875rem 1rem;
	text-align: left;
}

.context-compare-table thead th {
	background: #f8fafc;
	color: #0f172a;
	font-weight: 700;
}

.context-compare-table tbody td:first-child {
	color: #334155;
	font-weight: 600;
}

.context-compare-table tbody td:not(:first-child) {
	color: #64748b;
}

.context-setup-list {
	display: grid;
	gap: 1rem;
	margin-top: 1.5rem;
	max-width: 820px;
}

.context-setup-step {
	align-items: flex-start;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-left: 4px solid #2563eb;
	border-radius: 12px;
	display: flex;
	gap: 1rem;
	padding: 1.25rem 1.5rem;
}

.context-setup-step__num {
	align-items: center;
	background: #2563eb;
	border-radius: 9999px;
	color: #fff;
	display: flex;
	flex-shrink: 0;
	font-size: 0.875rem;
	font-weight: 700;
	height: 2rem;
	justify-content: center;
	width: 2rem;
}

.context-setup-step__title {
	color: #0f172a;
	font-size: 1.0625rem;
	font-weight: 700;
	margin: 0 0 0.375rem;
}

.context-setup-step__text {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0;
}

.context-metrics {
	padding-bottom: 0 !important;
	padding-top: 0 !important;
}

.context-metrics-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.context-metric {
	background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
	border-radius: 14px;
	color: #fff;
	padding: 1.25rem 1rem;
	text-align: center;
}

.context-metric strong {
	color: #38bdf8;
	display: block;
	font-size: clamp(1.125rem, 2.5vw, 1.5rem);
	font-weight: 800;
	line-height: 1.2;
	margin-bottom: 0.35rem;
}

.context-metric span {
	color: #94a3b8;
	display: block;
	font-size: 0.8125rem;
	line-height: 1.4;
}

.context-seo-wrap {
	padding: 0 !important;
}

.context-seo-section {
	background: #fff;
	padding: clamp(3rem, 6vw, 5rem) 0;
}

.context-seo-section--alt {
	background: #eef2f7;
}

.context-seo-section__inner {
	margin: 0 auto;
	max-width: 960px;
	padding: 0 clamp(1rem, 4vw, 2rem);
}

.context-seo-section__head {
	margin-bottom: 2rem;
	overflow: hidden;
	position: relative;
}

.context-seo-section__watermark {
	color: rgba(148, 163, 184, 0.22);
	font-family: Manrope, Inter, sans-serif;
	font-size: clamp(3.5rem, 12vw, 6.5rem);
	font-weight: 800;
	left: -0.15rem;
	line-height: 0.9;
	pointer-events: none;
	position: absolute;
	top: -0.35rem;
	user-select: none;
	white-space: nowrap;
	z-index: 0;
}

.context-seo-section__title {
	line-height: 1.2;
	margin: 0;
	max-width: 720px;
	position: relative;
	z-index: 1;
}

.context-seo-section__title-lead {
	color: #475569;
	display: block;
	font-size: clamp(1.125rem, 2.5vw, 1.375rem);
	font-weight: 400;
	margin-bottom: 0.15rem;
}

.context-seo-section__title-bold {
	color: #0f172a;
	display: block;
	font-family: Manrope, Inter, sans-serif;
	font-size: clamp(1.5rem, 3.5vw, 2.125rem);
	font-weight: 800;
	letter-spacing: -0.02em;
}

.context-seo-cards {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.context-seo-card {
	align-items: flex-start;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	box-shadow: 0 2px 10px rgba(15, 23, 42, 0.05);
	display: flex;
	gap: 1rem;
	padding: 1.25rem 1.5rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.context-seo-section--alt .context-seo-card {
	border-color: #dbeafe;
}

.context-seo-card:hover {
	border-color: #93c5fd;
	box-shadow: 0 10px 28px rgba(37, 99, 235, 0.1);
	transform: translateY(-2px);
}

.context-seo-card__icon {
	align-items: center;
	background: #eff6ff;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	gap: 4px;
	height: 2.5rem;
	justify-content: center;
	padding: 0.5rem;
	width: 2.5rem;
}

.context-seo-card__icon span {
	background: #2563eb;
	border-radius: 1px;
	display: block;
	height: 2px;
	width: 14px;
}

.context-seo-card__content {
	flex: 1;
	min-width: 0;
}

.context-seo-card__title {
	color: #0f172a;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 0.5rem;
}

.context-seo-card__text {
	color: #64748b;
	font-size: 0.9375rem;
	line-height: 1.65;
}

.context-seo-card__text p {
	margin: 0 0 0.625rem;
}

.context-seo-card__text p:last-child {
	margin-bottom: 0;
}

.context-seo-card__text strong {
	color: #334155;
	font-weight: 600;
}

.context-seo-article {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.context-seo-block__title {
	color: #0f172a;
	font-size: clamp(1.25rem, 2.5vw, 1.5rem);
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 1rem;
}

.context-seo-block__body {
	color: #334155;
	font-size: 1rem;
	line-height: 1.75;
}

.context-seo-block__body h3 {
	color: #0f172a;
	font-size: 1.0625rem;
	font-weight: 700;
	margin: 1.25rem 0 0.625rem;
}

.context-seo-block__body h3:first-child {
	margin-top: 0;
}

.context-seo-block__body p {
	margin: 0 0 1rem;
}

.context-seo-block__body p:last-child {
	margin-bottom: 0;
}

.context-seo-block__body strong {
	color: #0f172a;
	font-weight: 600;
}

.services-page--context .service-landing-faq {
	padding-top: clamp(2rem, 4vw, 3rem);
}

@media (max-width: 900px) {
	.context-types-grid,
	.context-platforms-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.context-metrics-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.context-metrics-grid {
		grid-template-columns: 1fr;
	}
}

/* ── Context trust blocks (Webolution-style) ── */

.context-hero-trust {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.context-hero-trust__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.15rem;
	padding: 0.75rem 1rem;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 12px;
	backdrop-filter: blur(6px);
}

.context-hero-trust__icon {
	font-size: 1.1rem;
	line-height: 1;
	opacity: 0.9;
}

.context-hero-trust__value {
	font-size: 1.05rem;
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
}

.context-hero-trust__label {
	font-size: 0.72rem;
	color: rgba(255, 255, 255, 0.75);
	line-height: 1.3;
}

/* Shared carousel */
.sp-carousel__nav {
	display: flex;
	gap: 0.5rem;
	flex-shrink: 0;
}

.sp-carousel__btn {
	width: 44px;
	height: 44px;
	border: 1px solid #e2e8f0;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: border-color 0.2s, box-shadow 0.2s;
}

.sp-carousel__btn span {
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #334155;
	border-right: 2px solid #334155;
}

.sp-carousel__btn--prev span {
	transform: rotate(-135deg);
	margin-left: 3px;
}

.sp-carousel__btn--next span {
	transform: rotate(45deg);
	margin-right: 3px;
}

.sp-carousel__btn:hover:not(:disabled) {
	border-color: #2563eb;
	box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
}

.sp-carousel__btn:disabled {
	opacity: 0.35;
	cursor: default;
}

.sp-carousel__track {
	display: flex;
	gap: 1.25rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding-bottom: 0.25rem;
}

.sp-carousel__track::-webkit-scrollbar {
	display: none;
}

.sp-carousel__slide {
	flex: 0 0 calc(33.333% - 0.85rem);
	min-width: 260px;
	scroll-snap-align: start;
}

.sp-carousel--team .sp-carousel__slide,
.sp-carousel--reviews .sp-carousel__slide {
	flex: 0 0 calc(33.333% - 0.85rem);
	min-width: 280px;
}

/* When needed / segments */
.context-when-section__head {
	margin-bottom: 1.5rem;
}

.context-when-section__watermark,
.context-process-section__watermark,
.context-team-section__watermark {
	display: block;
	font-size: clamp(3rem, 8vw, 5rem);
	font-weight: 800;
	color: rgba(37, 99, 235, 0.07);
	line-height: 1;
	margin-bottom: -0.5rem;
	user-select: none;
}

.context-when-section__head-row,
.context-team-section__head-row,
.context-why-section__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.5rem;
}

.context-when-section__title,
.context-tasks-section__title,
.context-formats-section__title,
.context-process-section__title,
.context-why-section__title,
.context-team-section__title,
.context-reviews-section__title {
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 800;
	color: #0f172a;
	margin: 0 0 0.75rem;
	line-height: 1.2;
}

.context-process-section__title span {
	color: #10b981;
}

.context-when-section__lead,
.context-tasks-section__lead,
.context-formats-section__lead,
.context-process-section__lead,
.context-team-section__lead,
.context-reviews-section__lead {
	color: #64748b;
	font-size: 1rem;
	line-height: 1.6;
	margin: 0;
	max-width: 640px;
}

.context-segment-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.5rem;
	height: 100%;
	transition: box-shadow 0.2s, border-color 0.2s;
}

.context-segment-card:hover {
	border-color: #2563eb;
	box-shadow: 0 8px 24px rgba(37, 99, 235, 0.1);
}

.context-segment-card__icon {
	font-size: 2rem;
	display: block;
	margin-bottom: 0.75rem;
}

.context-segment-card__title {
	font-size: 1.1rem;
	font-weight: 700;
	color: #0f172a;
	margin: 0 0 0.5rem;
}

.context-segment-card__text {
	font-size: 0.9rem;
	color: #64748b;
	line-height: 1.55;
	margin: 0;
}

/* Accordion tasks */
.context-tasks-section {
	max-width: 800px;
	margin: 0 auto;
}

.context-accordion {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-top: 1.5rem;
}

.context-accordion__item {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	overflow: hidden;
}

.context-accordion__trigger {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1rem 1.25rem;
	cursor: pointer;
	list-style: none;
	font-weight: 600;
	color: #0f172a;
}

.context-accordion__trigger::-webkit-details-marker {
	display: none;
}

.context-accordion__num {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #2563eb, #10b981);
	color: #fff;
	border-radius: 8px;
	font-size: 0.85rem;
	font-weight: 700;
}

.context-accordion__title {
	flex: 1;
	text-align: left;
	font-size: 1rem;
}

.context-accordion__chevron {
	width: 10px;
	height: 10px;
	border-right: 2px solid #64748b;
	border-bottom: 2px solid #64748b;
	transform: rotate(45deg);
	transition: transform 0.2s;
	flex-shrink: 0;
}

.context-accordion__item[open] .context-accordion__chevron {
	transform: rotate(-135deg);
}

.context-accordion__panel {
	padding: 0 1.25rem 1.25rem 4.25rem;
}

.context-accordion__panel p {
	margin: 0;
	color: #64748b;
	line-height: 1.6;
	font-size: 0.95rem;
}

/* Tabs */
.context-tabs__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 1.5rem;
}

.context-tabs__list--scroll {
	flex-wrap: nowrap;
	overflow-x: auto;
	scrollbar-width: none;
	padding-bottom: 0.25rem;
}

.context-tabs__list--scroll::-webkit-scrollbar {
	display: none;
}

.context-tabs__tab {
	padding: 0.55rem 1rem;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	background: #fff;
	color: #475569;
	font-size: 0.875rem;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
	transition: all 0.2s;
}

.context-tabs__tab:hover {
	border-color: #2563eb;
	color: #2563eb;
}

.context-tabs__tab.is-active {
	background: linear-gradient(135deg, #2563eb, #1d4ed8);
	border-color: transparent;
	color: #fff;
}

.context-tabs__tab--step {
	border-radius: 10px;
}

.context-tabs__panel {
	display: none;
}

.context-tabs__panel.is-active {
	display: block;
	animation: contextTabFade 0.25s ease;
}

@keyframes contextTabFade {
	from { opacity: 0; transform: translateY(6px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Ad format panels */
.context-format-panel,
.context-process-panel {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	align-items: center;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 20px;
	padding: 2rem;
}

.context-format-panel__title,
.context-process-panel__title {
	font-size: 1.25rem;
	font-weight: 700;
	color: #0f172a;
	margin: 0 0 0.75rem;
}

.context-format-panel__text,
.context-process-panel__text {
	color: #64748b;
	line-height: 1.6;
	margin: 0;
	font-size: 0.95rem;
}

/* Ad preview mocks */
.context-ad-preview,
.context-process-preview {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 1.25rem;
	min-height: 180px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.context-ad-preview__bar {
	height: 8px;
	width: 40%;
	background: #cbd5e1;
	border-radius: 4px;
	margin-bottom: 0.75rem;
}

.context-ad-preview__line {
	height: 10px;
	background: #e2e8f0;
	border-radius: 4px;
	margin-bottom: 0.5rem;
}

.context-ad-preview__line--title {
	width: 85%;
	background: #2563eb;
	opacity: 0.7;
	height: 14px;
}

.context-ad-preview__line--short {
	width: 55%;
}

.context-ad-preview__badge {
	align-self: flex-start;
	margin-top: 0.5rem;
	font-size: 0.65rem;
	padding: 0.15rem 0.4rem;
	background: #fef3c7;
	color: #92400e;
	border-radius: 4px;
}

.context-ad-preview__banner {
	height: 100px;
	background: linear-gradient(135deg, #2563eb33, #10b98133);
	border-radius: 8px;
}

.context-ad-preview__product {
	display: inline-block;
	width: 28%;
	height: 80px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	margin-right: 3%;
}

.context-ad-preview--shopping {
	flex-direction: row;
	align-items: center;
}

.context-ad-preview__feed {
	height: 36px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	margin-bottom: 0.5rem;
}

.context-ad-preview__feed--alt {
	width: 70%;
}

.context-ad-preview__retarget {
	height: 70px;
	background: linear-gradient(90deg, #2563eb22, #10b98122);
	border-radius: 8px;
}

.context-ad-preview__tag {
	align-self: flex-end;
	font-size: 0.7rem;
	background: #2563eb;
	color: #fff;
	padding: 0.2rem 0.5rem;
	border-radius: 4px;
	margin-top: -1.5rem;
	margin-right: 0.5rem;
}

.context-ad-preview__ai {
	width: 48px;
	height: 48px;
	background: linear-gradient(135deg, #2563eb, #10b981);
	color: #fff;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	margin-bottom: 0.75rem;
}

.context-ad-preview__channels span {
	display: inline-block;
	width: 24%;
	height: 8px;
	background: #cbd5e1;
	border-radius: 4px;
	margin-right: 2%;
}

.context-ad-preview__play {
	width: 48px;
	height: 48px;
	margin: 0 auto;
	background: #2563eb;
	border-radius: 50%;
	position: relative;
}

.context-ad-preview__play::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 54%;
	transform: translate(-50%, -50%);
	border: 10px solid transparent;
	border-left: 16px solid #fff;
}

.context-ad-preview__logo {
	width: 40px;
	height: 40px;
	background: #2563eb;
	border-radius: 8px;
	margin-bottom: 0.75rem;
}

.context-ad-preview__wizard {
	display: flex;
	gap: 0.5rem;
}

.context-ad-preview__wizard span {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #e2e8f0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.8rem;
	font-weight: 700;
	color: #475569;
}

.context-ad-preview__wizard span:first-child {
	background: #2563eb;
	color: #fff;
}

.context-ad-preview__social-card {
	height: 100px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
}

/* Process preview mocks */
.context-process-preview__chart {
	height: 80px;
	background: linear-gradient(180deg, transparent 60%, #2563eb33 60%);
	border-bottom: 2px solid #2563eb;
	border-radius: 4px;
	margin-bottom: 0.75rem;
}

.context-process-preview__metrics span {
	display: inline-block;
	width: 30%;
	height: 24px;
	background: #e2e8f0;
	border-radius: 4px;
	margin-right: 3%;
}

.context-process-preview__doc {
	height: 120px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	position: relative;
}

.context-process-preview__doc::before {
	content: '';
	position: absolute;
	top: 1rem;
	left: 1rem;
	right: 1rem;
	height: 8px;
	background: #2563eb;
	border-radius: 4px;
	opacity: 0.5;
}

.context-process-preview__table {
	height: 100px;
	background: repeating-linear-gradient(180deg, #e2e8f0 0, #e2e8f0 1px, transparent 1px, transparent 24px);
	border: 1px solid #e2e8f0;
	border-radius: 8px;
}

.context-process-preview__ad {
	height: 40px;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	margin-bottom: 0.5rem;
}

.context-process-preview__status {
	text-align: center;
	color: #10b981;
	font-weight: 700;
	font-size: 0.95rem;
}

.context-process-preview__ab {
	text-align: center;
	font-size: 2rem;
	font-weight: 800;
	color: #2563eb;
}

.context-process-preview__growth {
	height: 80px;
	background: linear-gradient(135deg, #10b98144, #2563eb22);
	border-radius: 8px;
}

.context-process-section {
	position: relative;
	max-width: var(--wp--style--global--content-size, 1100px);
	margin: 0 auto;
	padding: 0 1rem;
}

/* Why us carousel cards */
.context-why-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.5rem;
	height: 100%;
}

.context-why-card__num {
	display: block;
	font-size: 2rem;
	font-weight: 800;
	color: #2563eb;
	line-height: 1;
	margin-bottom: 0.75rem;
}

.context-why-card__title {
	font-size: 1.05rem;
	font-weight: 700;
	color: #0f172a;
	margin: 0 0 0.5rem;
}

.context-why-card__text {
	font-size: 0.9rem;
	color: #64748b;
	line-height: 1.55;
	margin: 0;
}

.context-why-section__head {
	margin-bottom: 1.25rem;
	align-items: center;
}

/* Team carousel */
.context-team-section {
	max-width: var(--wp--style--global--content-size, 1100px);
	margin: 0 auto;
	padding: 0 1rem;
}

.context-team-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.25rem;
	height: 100%;
	text-align: center;
}

.context-team-card__media {
	margin-bottom: 0.75rem;
}

.context-team-card__media img,
.context-team-card__media .team-card__avatar {
	width: 96px;
	height: 96px;
	border-radius: 50%;
	object-fit: cover;
	margin: 0 auto;
}

.context-team-card__media .team-card__avatar svg {
	width: 96px;
	height: 96px;
}

.context-team-card__meta {
	font-size: 0.75rem;
	color: #2563eb;
	font-weight: 600;
	margin: 0 0 0.35rem;
}

.context-team-card__name {
	font-size: 1rem;
	font-weight: 700;
	color: #0f172a;
	margin: 0 0 0.35rem;
}

.context-team-card__bio {
	font-size: 0.85rem;
	color: #64748b;
	line-height: 1.5;
	margin: 0;
}

.context-team-section__more {
	text-align: center;
	margin-top: 1.25rem;
}

.context-team-section__more a {
	color: #2563eb;
	font-weight: 600;
	text-decoration: none;
}

.context-team-section__more a:hover {
	text-decoration: underline;
}

/* Reviews */
.context-reviews-carousel-wrap {
	position: relative;
}

.context-reviews-carousel-wrap .sp-carousel__nav {
	position: absolute;
	top: -3.5rem;
	right: 0;
}

.context-review-card {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	padding: 1.5rem;
	height: 100%;
	min-height: 200px;
	display: flex;
	flex-direction: column;
}

.context-review-card__quote,
.context-review-card__letter-text {
	flex: 1;
	color: #475569;
	font-size: 0.95rem;
	line-height: 1.6;
	margin: 0 0 1rem;
}

.context-review-card__name {
	font-weight: 700;
	color: #0f172a;
	font-size: 0.9rem;
	margin: 0 0 0.25rem;
}

.context-review-card__role {
	color: #94a3b8;
	font-size: 0.8rem;
	margin: 0;
}

.context-review-card--letter {
	text-align: center;
}

.context-review-card__letter-icon {
	font-size: 2rem;
	display: block;
	margin-bottom: 0.75rem;
}

.context-review-card--video {
	align-items: center;
	text-align: center;
}

.context-review-card__video-thumb {
	width: 100%;
	height: 120px;
	background: linear-gradient(135deg, #0f172a, #2563eb);
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.75rem;
	position: relative;
}

.context-review-card__play {
	width: 40px;
	height: 40px;
	background: rgba(255, 255, 255, 0.9);
	border-radius: 50%;
	position: relative;
}

.context-review-card__play::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 54%;
	transform: translate(-50%, -50%);
	border: 8px solid transparent;
	border-left: 12px solid #2563eb;
}

.context-review-card__video-title {
	font-weight: 600;
	color: #0f172a;
	margin: 0 0 0.25rem;
	font-size: 0.95rem;
}

.context-review-card__duration {
	font-size: 0.8rem;
	color: #94a3b8;
}

@media (max-width: 900px) {
	.context-hero-trust {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.context-format-panel,
	.context-process-panel {
		grid-template-columns: 1fr;
	}

	.sp-carousel__slide,
	.sp-carousel--team .sp-carousel__slide,
	.sp-carousel--reviews .sp-carousel__slide {
		flex: 0 0 calc(50% - 0.65rem);
		min-width: 240px;
	}

	.context-when-section__head-row,
	.context-team-section__head-row,
	.context-why-section__head {
		flex-direction: column;
	}
}

/* Context about + price block (replaces ugly stat + intro) */
.context-about-section-wrap {
	padding: clamp(2.5rem, 5vw, 4rem) 0 !important;
	background: linear-gradient(180deg, #f8fafc 0%, #fff 100%);
}

.context-about-section {
	max-width: var(--wp--style--global--content-size, 1100px);
	margin: 0 auto;
	padding: 0 clamp(1rem, 3vw, 1.5rem);
}

.context-about-section__inner {
	position: relative;
}

.context-about-section__watermark {
	display: block;
	font-size: clamp(3.5rem, 10vw, 6rem);
	font-weight: 800;
	color: rgba(37, 99, 235, 0.06);
	line-height: 0.85;
	margin-bottom: -1.5rem;
	user-select: none;
	pointer-events: none;
}

.context-about-section__grid {
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: clamp(1.5rem, 3vw, 2.5rem);
	align-items: stretch;
}

.context-about-section__title {
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 800;
	color: #0f172a;
	line-height: 1.25;
	margin: 0 0 1rem;
	max-width: 18ch;
}

.context-about-section__lead {
	color: #64748b;
	font-size: 1.05rem;
	line-height: 1.65;
	margin: 0 0 1.5rem;
	max-width: 52ch;
}

.context-about-section__chips {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.context-about-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.65rem 1rem;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	font-size: 0.9rem;
	font-weight: 600;
	color: #334155;
	width: fit-content;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
	transition: border-color 0.2s, box-shadow 0.2s;
}

.context-about-chip:hover {
	border-color: #2563eb;
	box-shadow: 0 4px 16px rgba(37, 99, 235, 0.1);
}

.context-about-chip__icon {
	font-size: 1.1rem;
	line-height: 1;
}

.context-about-price__card {
	background: linear-gradient(145deg, #0f172a 0%, #1e3a5f 55%, #2563eb 100%);
	border-radius: 24px;
	padding: clamp(1.5rem, 3vw, 2rem);
	color: #fff;
	height: 100%;
	display: flex;
	flex-direction: column;
	box-shadow:
		0 24px 48px rgba(15, 23, 42, 0.22),
		0 0 0 1px rgba(255, 255, 255, 0.08) inset;
	position: relative;
	overflow: hidden;
}

.context-about-price__card::before {
	content: '';
	position: absolute;
	top: -40%;
	right: -20%;
	width: 60%;
	height: 80%;
	background: radial-gradient(circle, rgba(16, 185, 129, 0.25) 0%, transparent 70%);
	pointer-events: none;
}

.context-about-price__label {
	font-size: 0.8rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.65);
	margin-bottom: 0.5rem;
	position: relative;
}

.context-about-price__value {
	display: flex;
	align-items: baseline;
	gap: 0.35rem;
	margin-bottom: 1.25rem;
	position: relative;
}

.context-about-price__prefix {
	font-size: 1rem;
	font-weight: 600;
	color: #10b981;
}

.context-about-price__amount {
	font-size: clamp(2.75rem, 6vw, 3.75rem);
	font-weight: 800;
	line-height: 1;
	background: linear-gradient(135deg, #fff 0%, #a5f3fc 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

.context-about-price__range {
	margin-bottom: 1rem;
	position: relative;
}

.context-about-price__range-label {
	display: block;
	font-size: 0.78rem;
	color: rgba(255, 255, 255, 0.55);
	margin-bottom: 0.5rem;
}

.context-about-price__range-bar {
	position: relative;
	height: 6px;
	background: rgba(255, 255, 255, 0.15);
	border-radius: 999px;
	margin-bottom: 0.35rem;
}

.context-about-price__range-bar span {
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 10px;
	height: 10px;
	background: #10b981;
	border-radius: 50%;
	box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.3);
}

.context-about-price__range-values {
	display: flex;
	justify-content: space-between;
	font-size: 0.85rem;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.85);
}

.context-about-price__note {
	font-size: 0.88rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.72);
	margin: 0 0 1.25rem;
	flex: 1;
	position: relative;
}

.context-about-price__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	position: relative;
}

.context-about-price__pill {
	font-size: 0.72rem;
	font-weight: 600;
	padding: 0.35rem 0.65rem;
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(4px);
}

.services-page--context .service-landing-includes {
	padding-top: clamp(1.5rem, 3vw, 2rem) !important;
}

@media (max-width: 900px) {
	.context-about-section__grid {
		grid-template-columns: 1fr;
	}

	.context-about-section__title {
		max-width: none;
	}

	.context-about-section__lead {
		max-width: none;
	}
}

@media (max-width: 600px) {
	.context-hero-trust {
		grid-template-columns: 1fr 1fr;
	}

	.sp-carousel__slide,
	.sp-carousel--team .sp-carousel__slide,
	.sp-carousel--reviews .sp-carousel__slide {
		flex: 0 0 85%;
		min-width: 0;
	}

	.context-accordion__panel {
		padding-left: 1.25rem;
	}

	.context-reviews-carousel-wrap .sp-carousel__nav {
		position: static;
		margin-bottom: 1rem;
		justify-content: flex-end;
	}

	.context-about-chip {
		width: 100%;
	}
}

/* Marketing platform cards (hub + related) */
.marketing-platforms-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--wp--preset--spacing--md, 1.25rem);
	margin-top: var(--wp--preset--spacing--lg, 2rem);
}

.marketing-platforms-grid--hub {
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.marketing-platform-card {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	padding: 1.5rem;
	border-radius: 16px;
	background: var(--wp--preset--color--white, #fff);
	border: 1px solid var(--wp--preset--color--gray-200, #e5e7eb);
	text-decoration: none;
	color: inherit;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.marketing-platform-card:hover {
	border-color: var(--wp--preset--color--primary, #2563eb);
	box-shadow: 0 12px 32px rgba(37, 99, 235, 0.12);
	transform: translateY(-2px);
}

.marketing-platform-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 3rem;
	height: 3rem;
	border-radius: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	background: linear-gradient(135deg, #2563eb 0%, #10b981 100%);
	color: #fff;
}

.marketing-platform-card__icon--google {
	background: linear-gradient(135deg, #4285f4 0%, #34a853 100%);
}

.marketing-platform-card__icon--vk {
	background: linear-gradient(135deg, #0077ff 0%, #5b9dff 100%);
}

.marketing-platform-card__icon--telegram {
	background: linear-gradient(135deg, #229ed9 0%, #0088cc 100%);
}

.marketing-platform-card__title {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
}

.marketing-platform-card__desc {
	font-size: 0.875rem;
	color: var(--wp--preset--color--gray-500, #6b7280);
	line-height: 1.5;
	flex: 1;
}

.marketing-platform-card__price {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--primary, #2563eb);
}

.marketing-platform-card__features {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.75rem;
	font-size: 0.8125rem;
	color: var(--wp--preset--color--gray-500, #6b7280);
}

.marketing-platform-card__link {
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--wp--preset--color--primary, #2563eb);
	margin-top: 0.25rem;
}

.services-page--context-hub .service-landing-pricing,
.services-page--marketing-hub .service-landing-pricing,
.services-page--marketing .context-seo-wrap {
	margin-top: var(--wp--preset--spacing--xl, 3rem);
}

.services-page--marketing .service-landing-deliverables .wp-block-columns {
	gap: clamp(1.25rem, 3vw, 2rem);
	margin: 0 auto;
	max-width: 1080px;
}

.services-page--marketing .context-seo-wrap {
	overflow: hidden;
}

.services-page--marketing .service-metrics.context-metrics {
	margin-top: -1.5rem;
	padding-bottom: clamp(1rem, 2vw, 1.5rem);
	padding-top: clamp(0.5rem, 1.5vw, 1rem);
	position: relative;
	z-index: 2;
}

.services-page--marketing .context-metrics-grid {
	margin: 0 auto;
	max-width: 1100px;
}

.services-page--marketing .marketing-formats .context-types-grid {
	margin-top: 1.5rem;
}

.services-page--marketing .marketing-process .context-setup-list {
	margin-left: auto;
	margin-right: auto;
	max-width: 880px;
}

.services-page--marketing .service-about-section-wrap {
	margin-top: 0;
}

.services-page--marketing .service-landing-includes {
	padding-top: clamp(2rem, 4vw, 3rem);
}

.services-page--marketing .service-landing-pricing {
	padding-bottom: clamp(2rem, 4vw, 3rem);
	padding-top: clamp(2rem, 4vw, 3rem);
}

.services-page--marketing .marketing-section--related {
	padding-bottom: clamp(2rem, 4vw, 3rem);
	padding-top: clamp(2rem, 4vw, 3rem);
}

.services-page--yandex-direct .service-about-section__watermark {
	opacity: 0.06;
}

@media (max-width: 900px) {
	.marketing-platforms-grid {
		grid-template-columns: 1fr;
	}
}
